Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 字符识别的最佳算法_Python_Opencv_Ocr - Fatal编程技术网

Python 字符识别的最佳算法

Python 字符识别的最佳算法,python,opencv,ocr,Python,Opencv,Ocr,我正试图创建一个硬编码字幕翻录从视频 到目前为止,我已经做了一些预处理 获取字幕框 裁剪字幕行 分开的字幕行 单独的字符 主要的部分,即字符识别,仍然没有完成。我尝试使用tesseract,但准确率约为60%。我还试着训练角色图像,然后比较它们。但当我在不同分辨率的视频上运行时,它严重失败 以下是迄今为止的结果。(原始图像、阈值、文本增强、分隔字符) 我确实通过了K均值和使用结构相似性比较图像。但对我来说什么都不管用。正如您在上面看到的,图像文本非常清晰 编辑: 问题:我想将准确率提高到

我正试图创建一个硬编码字幕翻录从视频

到目前为止,我已经做了一些预处理

  • 获取字幕框
  • 裁剪字幕行
  • 分开的字幕行
  • 单独的字符
  • 主要的部分,即字符识别,仍然没有完成。我尝试使用tesseract,但准确率约为60%。我还试着训练角色图像,然后比较它们。但当我在不同分辨率的视频上运行时,它严重失败

    以下是迄今为止的结果。(原始图像、阈值、文本增强、分隔字符)

    我确实通过了K均值和使用结构相似性比较图像。但对我来说什么都不管用。正如您在上面看到的,图像文本非常清晰

    编辑:

    问题:我想将准确率提高到95%或以上,因为所有视频中的文本都相似,我能够获得如上所示的清晰文本或字符。在我的案例中,我能尝试的最佳方法是什么


    注:语言是克罗地亚语

    我建议两件事:

  • 在图像清理中多玩一点
  • 获得更好的OCR。Tesseract是免费的,但不是最好的。如果你的预算允许,你可以考虑一些商业性的。例如:这一个有一些免费的识别,至少足够玩,看看它是否适合你
  • 我试了一下你的最新照片(所有清洗后的照片),在上,它几乎完全被认出来了-见下文。比60%的错误要好得多。我相信,通过更好的图像预处理,您可以进一步提高准确性


    免责声明:我为ABBYY工作。

    看起来你得到了不错的结果!你还没有问过一个问题-你在问什么?@ChristopherShroba:编辑过的问题。你试过tesseract吗?@Miki:是的,正如问题中提到的,tesseract不适合我的情况。哦,我错过了。。。然而,有了适当的预处理和正确的字典,应该比60%更好,我正在开发一个开源应用程序。它能够从视频中提取硬sub并生成srt文件,然后将其翻译成目标语言。这就是为什么付费sdk不是一个选项。另外,我需要准确度,否则翻译会搞砸。这就是为什么我的观点是..有没有像K-Mean或SVM这样的算法可以用于二进制文本图像?(如上所示的明文)如果是,那么在二进制文本图像上实现的任何指导原则?。通过这种方式,我将能够在所有语言SBTW上使用ML实现OCR,+1表示ABBYY。我试过多个二进制图像…精度很好。很抱歉这么说,但好的东西你得付钱。如果高精度的光学字符识别像你想的那样简单,那么它已经可以使用了。ABBYY已经投入了数百人-年的工程技术来达到现在的精度。Tesseract曾经也是HP的商业产品,后来他们决定将其开源。我认为几十位非常聪明的工程师alrady投入了大量的时间来完善它,但它还远远不够完美。你认为你能做得更好吗?单独地好的,祝你好运。