Tôi có tài liệu được quét dưới dạng ảnh .jpg trong một thư mục và tôi muốn làm OCR trong C# serially cho từng tài liệu của tôi trong thư mục đó. cho đến nay ive làm điều này:Làm thế nào để OCR serially với MODI (Microsoft Office Document Imaging) trong C#
public string CheckFilesAndDoOCR(string directoryPath)
{
directoryPath = Environment.SpecialFolder.MyPictures + "\\OCRTempPictures\\";
IEnumerator files = Directory.GetFiles(directoryPath).GetEnumerator();
string TheTxt = "";
while (files.MoveNext())
{
// FileInfo
FileInfo nfo = new FileInfo(Convert.ToString(files.Current));
// Get new file name
string fileName = AlltoJPG(nfo);
// FileInfo (New File)
FileInfo foo = new FileInfo(fileName);
// Check for JPG File Format
if (foo.Extension == ".jpg" || foo.Extension == ".JPG")
// or // ImageFormat.Jpeg.ToString()
{
try
{
// OCR Operations...
MODI.Document md = new MODI.Document();
md.Create(foo.FullName);
md.OCR(MODI.MiLANGUAGES.miLANG_ENGLISH, false, false); // OCR();
MODI.Image image = (MODI.Image)md.Images[0];
TheTxt = image.Layout.Text;
md.Close(false);
// Create text file with the same Image file name
FileStream createFile = new FileStream(foo.DirectoryName + "\\" + foo.Name.Replace(foo.Extension,string.Empty) + ".txt", FileMode.CreateNew);
// Save the image text in the text file
StreamWriter writeFile = new StreamWriter(createFile);
writeFile.Write(TheTxt);
writeFile.Close();
}
catch (Exception ex)
{
// Expected errors
string LogPath = System.Environment.SpecialFolder.MyPictures + "\\OCRTempPictures\\OCRInfo.txt";
Logger(LogPath, "| Exception: Source[" + ex.Source + "] Message[" + ex.Message + "] InnerException[" + ex.InnerException + "] StackTrace[" + ex.StackTrace + "] | ");
// MessageBox.Show(ex.Message, "OCR Exception", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
}
return TheTxt;
}
nhưng MODI cung cấp cho các OCR running!
hoặc Cant reach file.File is in use.
lỗi ..
Tùy thuộc vào tình hình:
Làm thế nào tôi có thể tránh được những lỗi?
Có cách nào để dừng hoạt động OCR và làm cạn kiệt tất cả các đối tượng đang sử dụng không?
Nếu bất kỳ ai có thể trả lời bất kỳ câu hỏi nào ở trên, nó sẽ được đánh giá cao.
Bạn đã kiểm tra chủ đề này ? http://stackoverflow.com/questions/6699740/ocr-running-error-when-using-modi-2003-with-c-sharp Đây là lỗi chung có nghĩa là MODI gặp sự cố khi nhận dạng bitmap –
@PanagiotisKanavos yes i đã làm! nhưng những câu trả lời đó không giải quyết được vấn đề của tôi .. nó nhận ra tất cả các ký tự và sử dụng các tập tin jpeg và sau khi làm việc trên nó trong một thời gian dài tôi phát hiện ra hầu hết các vấn đề nhưng vẫn tồn tại vấn đề điên rồ nhất. Nó không cho phép tôi di chuyển-xóa tập tin mà tôi đã có kết quả ocr. idk tại sao nó làm điều đó. cho biết tệp vẫn đang được sử dụng. câu hỏi cập nhật bệnh. –
Lý do bạn nhận được lỗi này là do bạn đang cố gắng xử lý nhiều hình ảnh cùng một lúc. Triển khai mã để ngăn chặn điều này. –