Image processing 如何识别扫描图像中的文本存在模式并对其进行裁剪? 扫描文档的智能裁剪
最近我接手了一个旧书/手稿的保存项目。它们数量巨大,几乎有10000页。我不得不用便携式扫描仪手动扫描它们,因为它们不适合用自动书籍扫描仪扫描 当我开始在Photoshop中编辑它们时,真正的问题就出现了。请注意,它们基本上都是文档(JPG格式),这些文档中绝对没有图像。他们使用不同的语言(Oriya),我相信在不久的将来不会有任何OCR软件可用。(如果有,请告诉我。) 为了使这些图像(文档)看起来干净优雅,我必须裁剪它们,定位它们,增加一点对比度,用橡皮擦清除不必要的斑点,等等。我能够在Photoshop中自动化这些过程中的大部分,但是裁剪是我陷入困境的地方。我无法自动裁剪,因为软件无法在img(doc)的某个区域识别文本或内容的存在;它只是将给定的值应用于裁剪 我想要一个解决方案来自动化这个裁剪过程。我已经想出了一个想法,我不知道它是否足够实用,以我所知,目前市场上还没有做这种事情的软件 可能的解决方案是:如果工具能够识别图像中的文本(这不是很关键,因为它们都是普通文档图像,没有图像,没有模式,只有普通矩形),那么这可能是可能的然后从每一面文本的边框处裁剪出来,这样它就可以输出一个文档图像而不留任何边距。在这之后,剩下的任务可以使用Photoshop自动完成,比如在页边空白处添加空白,调整对比度和颜色使其更具可读性等等 这里有一个指向图库的相册链接。如果有用的话,我可以发布更多的示例图片-请告诉我 以下是通过上述链接获得的更大图像样本中的一个示例:Image processing 如何识别扫描图像中的文本存在模式并对其进行裁剪? 扫描文档的智能裁剪,image-processing,imagemagick,photoshop,photoshop-cs4,Image Processing,Imagemagick,Photoshop,Photoshop Cs4,最近我接手了一个旧书/手稿的保存项目。它们数量巨大,几乎有10000页。我不得不用便携式扫描仪手动扫描它们,因为它们不适合用自动书籍扫描仪扫描 当我开始在Photoshop中编辑它们时,真正的问题就出现了。请注意,它们基本上都是文档(JPG格式),这些文档中绝对没有图像。他们使用不同的语言(Oriya),我相信在不久的将来不会有任何OCR软件可用。(如果有,请告诉我。) 为了使这些图像(文档)看起来干净优雅,我必须裁剪它们,定位它们,增加一点对比度,用橡皮擦清除不必要的斑点,等等。我能够在Pho
从背景中分割文本的一种技术是笔划宽度变换。您可以在这里找到关于Stack Overflow的几篇文章,其中包括: 如果Wikipedia页面中显示的文本是书面Oriya的代表,那么我相信SWT(或您的自定义版本)将表现良好。在查看图像后,您可能仍然需要进行一些手动调整,但基于SWT的方法应该可以为您做很多工作 虽然SWT可能无法识别每一个笔划,但它应该可以很好地估计笔划(和字符)所占空间的大小。最简单的方法 一种可能适合您的新算法是“内容感知调整大小”算法,如“接缝雕刻”,它会自动删除低信息内容像素(例如背景像素)的路径。下面是一段关于接缝雕刻的视频: GIMP有一个接缝雕刻插件(“液体大小调整”): 这篇博文报道了Photoshop的一个插件: 关于OCR技术的概述,我推荐Cheriet、Kharma、Liu和Suen的书《字符识别系统》。那本书中的参考资料会让你忙上一段时间
最后,考虑加入LinkedIn上的光学字符识别组来发布更具体的问题。业内有学者、研究人员和工程师可以非常详细地回答问题,您也可以通过电子邮件与正在为类似Oriya的语言开发OCR的印度研究人员联系,尽管他们可能尚未发布该软件。使用tinypic的样本, 使用ImageMagick,我将按照以下思路构建一个算法:
convert \
http://i46.tinypic.com/21lppac.jpg \
-contrast-stretch 1%x10% \
contrast-stretched.jpg
convert \
trimmmed.jpg \
-distort perspective '0,0 0,0 1300,0 1300,0 0,720 0,720 1300,720 1300,770' \
distort.jpg
结果:
convert \
http://i46.tinypic.com/21lppac.jpg \
-contrast-stretch 1%x10% \
contrast-stretched.jpg
convert \
trimmmed.jpg \
-distort perspective '0,0 0,0 1300,0 1300,0 0,720 0,720 1300,720 1300,770' \
distort.jpg
结果:
convert \
http://i46.tinypic.com/21lppac.jpg \
-contrast-stretch 1%x10% \
contrast-stretched.jpg
convert \
trimmmed.jpg \
-distort perspective '0,0 0,0 1300,0 1300,0 0,720 0,720 1300,720 1300,770' \
distort.jpg
结果:
convert \
http://i46.tinypic.com/21lppac.jpg \
-contrast-stretch 1%x10% \
contrast-stretched.jpg
convert \
trimmmed.jpg \
-distort perspective '0,0 0,0 1300,0 1300,0 0,720 0,720 1300,720 1300,770' \
distort.jpg
结果:
identify-格式“%Wx%H”21lppac.jpg
确定原始图像的尺寸为1536x835
像素
命令:
convert \
http://i46.tinypic.com/21lppac.jpg \
-contrast-stretch 1%x10% \
contrast-stretched.jpg
convert \
trimmmed.jpg \
-distort perspective '0,0 0,0 1300,0 1300,0 0,720 0,720 1300,720 1300,770' \
distort.jpg
结果:
(注意,这一步只是可选的。它的目的是回到原始图像的尺寸,如果你想从这里开始,将结果与原始图像叠加,或者其他任何东西……)convert \
http://i46.tinypic.com/21lppac.jpg \
-contrast-stretch 1%x10% \
contrast-stretched.jpg
convert \
trimmmed.jpg \
-distort perspective '0,0 0,0 1300,0 1300,0 0,720 0,720 1300,720 1300,770' \
distort.jpg
结果:
-trim
操作符来实现
命令:
convert \
http://i46.tinypic.com/21lppac.jpg \
-contrast-stretch 1%x10% \
contrast-stretched.jpg
convert \
trimmmed.jpg \
-distort perspective '0,0 0,0 1300,0 1300,0 0,720 0,720 1300,720 1300,770' \
distort.jpg
结果:
- 在图像的底部边缘仍然存在一些随机的人工制品,并且
- 由于其他极小的瑕疵,最终的修剪没有从边缘移除所有的空白
- 还有,我还没有收到