我的代码
private void button1_Click(object sender, EventArgs e)
{
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
textBox1.Clear();
var img = new Bitmap(openFileDialog1.FileName);
//var ocr = new TesseractEngine("./tessdata", "eng", EngineMode.TesseractAndCube);
var ocr = new TesseractEngine("./rus", "rus", EngineMode.TesseractAndCube);
var page = ocr.Process(img);
textBox1.Text = page.GetText();
}
}
代码可以很好地处理英语训练的数据,但是当我将其更改为俄语时会抛出错误。
这是错误:
Tesseract.TesseractException:“无法初始化tesseract引擎。 有关详情,请参见https://github.com/charlesw/tesseract/wiki/Error-1。
我的Tesseract版本是3.0.2。
我已经从https://github.com/tesseract-ocr/tesseract/wiki/Data-Files#data-files-for-version-302下载了俄罗斯tessdata文件
答案 0 :(得分:2)
为我工作
Tesseract tesseract = new Tesseract();
tesseract.setLanguage("rus");
try {
tesseract.setDatapath("/home/test/tessdata");
String text = tesseract.doOCR(new File("/home/test/Pictures/photo.jpg"));
System.out.print(text);
} catch (TesseractException e) {
e.printStackTrace();
}