Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.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
Image processing 在此分析的基础上对图像进行分析和变换,以获得更好的OCR效果_Image Processing_Ocr - Fatal编程技术网

Image processing 在此分析的基础上对图像进行分析和变换,以获得更好的OCR效果

Image processing 在此分析的基础上对图像进行分析和变换,以获得更好的OCR效果,image-processing,ocr,Image Processing,Ocr,我有一个OCR项目,但它只适用于文本相当笔直的图像,而不是颠倒的图像。(未旋转文本) 所以我想让OCR能够识别任何类型的图像,甚至是倒置的。但我不知道解决这个问题的方法是什么 我需要一些类似于分析字母行的东西,但即使这样,我也无法确定这行字母是否颠倒 我对你的回答将非常高,因为这并不像你想象的那样简单。您可能正在进行某种图像分割,即对文本中的每个字符进行分割。但为了识别字符,即使在旋转时,也需要使用具有旋转不变特征的特征向量。为了做到这一点,一些人正在使用 泽尼克时刻 -广泛用于书写 我不认为这

我有一个OCR项目,但它只适用于文本相当笔直的图像,而不是颠倒的图像。(未旋转文本) 所以我想让OCR能够识别任何类型的图像,甚至是倒置的。但我不知道解决这个问题的方法是什么


我需要一些类似于分析字母行的东西,但即使这样,我也无法确定这行字母是否颠倒

我对你的回答将非常高,因为这并不像你想象的那样简单。您可能正在进行某种图像分割,即对文本中的每个字符进行分割。但为了识别字符,即使在旋转时,也需要使用具有旋转不变特征的特征向量。为了做到这一点,一些人正在使用

泽尼克时刻

-广泛用于书写


我不认为这是一项简单的任务

如果您正在执行OCR的图像来自多行上有大量文本的杂志或书籍,我建议尝试查找页面的旋转

可能最简单的方法是对直线应用hough变换。由于每行文本之间的空白应为宽白线,因此无需对图像进行任何预处理。否则,请尝试模糊它或使用“关闭”形态学操作将文本行变成不透明块


使用hough变换找到图像中的线条后,只需提取主要旋转角度(如所有线条的平均角度)并将其旋转回来。

不确定您是在创建OCR引擎还是在使用OCR引擎。大多数商业OCR引擎可以检测到页面倒置(或旋转90度)并自动旋转。例如,我的公司可以做到这一点

一个简单的解决方案是取图像的一部分,从四个角度在引擎中运行,直到返回大量可识别的文本。您可以使用字典查看您得到的是否是单词和置信水平,以查看引擎对其识别的确定程度

如果您的引擎可以报告置信度级别,并且它们报告的置信度始终低于某个阈值,那么您应该停止并查看文档是否旋转

对于90和270,hough变换将告诉您图像中的线条是水平的还是垂直的。它还可以告诉你它们是否只是稍微偏离水平方向旋转,这样你也可以纠正这一点