过去几个小时我一直在试验PyTesser,它是一个非常好的工具。关于PyTesser的准确性,我注意到几件事:包含图标、图片和文本的文件-5-10%的准确度只有文本的文件(图像和图标已删除)-50-60%准确拉伸(stretch)文件(这是最好的部分)-拉伸(stretch)文件在2)以上的x或y轴上,精度提高了10-20%很明显,Pytesser不处理字体尺寸或图像拉伸(stretch)。尽管有很多关于图像处理和OCR的理论需要阅读,但在应用PyTesser或其他库之前,是否有任何标准的图像清理程序(除了删除图标和图像)需要完成,无论语言如何?......哇,这篇文章现在已经很老了。
我需要对一大块文本进行一些OCR,并检查它是否包含特定字符串,但由于OCR的不准确性,我需要它来检查它是否包含大约85%匹配的字符串。例如,我可能对一段文本进行OCR以确保它不包含无可用信息,但OCR可能会看到n0informationavailable或误解了一些字符。有没有在Python中执行此操作的简单方法? 最佳答案 正如gauden所言,difflib中的SequenceMatcher是一个简单的方法。使用ratio(),返回一个介于0和1之间的值,对应于两个字符串之间的相似性,来自文档:WhereTisthetotaln
我需要对一大块文本进行一些OCR,并检查它是否包含特定字符串,但由于OCR的不准确性,我需要它来检查它是否包含大约85%匹配的字符串。例如,我可能对一段文本进行OCR以确保它不包含无可用信息,但OCR可能会看到n0informationavailable或误解了一些字符。有没有在Python中执行此操作的简单方法? 最佳答案 正如gauden所言,difflib中的SequenceMatcher是一个简单的方法。使用ratio(),返回一个介于0和1之间的值,对应于两个字符串之间的相似性,来自文档:WhereTisthetotaln
我整个星期都在尝试这个,所以这有点像冰雹玛丽。我正在尝试将TesseractOCR打包到运行在Python上的AWSLambda中(我还使用PILLOW进行图像预处理,因此选择了Python)。我了解如何使用virtualenv将Python包部署到AWS,但是我似乎找不到将实际的TesseractOCR部署到环境中的方法(例如/env/)执行pipinstallpy-tesseract可以将python包装器成功部署到/env/,但这依赖于单独(本地)安装Tesseract执行pipinstalltesseract-ocr只让我在一定距离内出错,如下所示,我假设这是由于缺少lepto
我整个星期都在尝试这个,所以这有点像冰雹玛丽。我正在尝试将TesseractOCR打包到运行在Python上的AWSLambda中(我还使用PILLOW进行图像预处理,因此选择了Python)。我了解如何使用virtualenv将Python包部署到AWS,但是我似乎找不到将实际的TesseractOCR部署到环境中的方法(例如/env/)执行pipinstallpy-tesseract可以将python包装器成功部署到/env/,但这依赖于单独(本地)安装Tesseract执行pipinstalltesseract-ocr只让我在一定距离内出错,如下所示,我假设这是由于缺少lepto
我有一张table的图片(如下所示)。我正在尝试从表格中获取数据,类似于这种形式(表格图像的第一行):rows[0]=[x,x,,,,,x,,x,x,,x,,x,,,,,x,,,,x,x,x,,x,,x,,,,]我需要x的数量以及空格的数量。还会有其他与此类似的表格图像(都具有x和相同的列数)。到目前为止,我能够使用x的图像检测所有x。而且我可以在某种程度上检测到线条。我正在为python使用opencv2。我还使用houghTransform来检测水平线和垂直线(效果非常好)。我正在尝试弄清楚如何逐行并将信息存储在列表中。这些是训练图像:用于检测x(代码中的train1.png)用于
我有一张table的图片(如下所示)。我正在尝试从表格中获取数据,类似于这种形式(表格图像的第一行):rows[0]=[x,x,,,,,x,,x,x,,x,,x,,,,,x,,,,x,x,x,,x,,x,,,,]我需要x的数量以及空格的数量。还会有其他与此类似的表格图像(都具有x和相同的列数)。到目前为止,我能够使用x的图像检测所有x。而且我可以在某种程度上检测到线条。我正在为python使用opencv2。我还使用houghTransform来检测水平线和垂直线(效果非常好)。我正在尝试弄清楚如何逐行并将信息存储在列表中。这些是训练图像:用于检测x(代码中的train1.png)用于
我一直在尝试使用Python实现一个OCR程序,该程序读取具有特定格式XXX-XXX的数字。我使用了Google的CloudVisionAPI文本识别,但结果并不可靠。在30张高对比度1280x1024bmp图像中,只有少数图像输出正确,或者至少在结果中包含了正确的输出。该程序往往会省略一些数字、以非英语语言输出或潜入一些特殊字符。目标是至少连续输出正确的数字,如果结果中散布着其他垃圾也没关系。有没有办法帮助程序更好地识别数字,例如将结果限制为特定格式,或仅限于数字? 最佳答案 我无法告诉你为什么会这样,也许这与语言的阅读方式有关,
我一直在尝试使用Python实现一个OCR程序,该程序读取具有特定格式XXX-XXX的数字。我使用了Google的CloudVisionAPI文本识别,但结果并不可靠。在30张高对比度1280x1024bmp图像中,只有少数图像输出正确,或者至少在结果中包含了正确的输出。该程序往往会省略一些数字、以非英语语言输出或潜入一些特殊字符。目标是至少连续输出正确的数字,如果结果中散布着其他垃圾也没关系。有没有办法帮助程序更好地识别数字,例如将结果限制为特定格式,或仅限于数字? 最佳答案 我无法告诉你为什么会这样,也许这与语言的阅读方式有关,
我有一个包含PDF文件(图像)的大目录,如何从目录中的所有文件中有效地提取文本?。到目前为止,我尝试:importmultiprocessingimporttextractdefextract_txt(file_path):text=textract.process(file_path,method='tesseract')p=multiprocessing.Pool(2)file_path=['/Users/user/Desktop/sample.pdf']list(p.map(extract_txt,file_path))但是,它不起作用……它需要很多时间(我有一些文档有600页)