C#利用Tesseract进行OCR文字识别

安装Nuget包

Install-Package Tesseract

下载训练好的数据

下载地址:https://github.com/tesseract-ocr/tessdata/
简体中文下载:chi_sim.traineddata

创建tessdata文件夹

把前面下载好的chi_sim.traineddata文件放到tessdata文件夹里面

代码

private void OnSelectFile()
{
    var dialog = new OpenFileDialog();
    dialog.Filter = "所有文件(*.*)|*.*";
    if (dialog.ShowDialog() == true)
    {
        var fileName = dialog.FileName;

        var language = "chi_sim";
        var engine = new TesseractEngine(FileSystemHelper.GetFullPath("tessdata"), language, EngineMode.Default);
        using (var img = Pix.LoadFromFile(fileName))
        {
            using (var page = engine.Process(img))
            {
                RecognizedText = page.GetText();
                MeanConfidence = page.GetMeanConfidence();
            }
        }
    }
}

不过测试下来,识别率不是特别理想,不知道是不是训练数据的缘故。截屏下来的比较规则的文字也有很多错的。

posted @ 2024-01-24 14:43  wzwyc  阅读(47)  评论(0编辑  收藏  举报