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
Matlab 重新调整小字体扫描阿拉伯单词的大小和阈值_Matlab_Image Processing_Ocr_Scaling_Adaptive Threshold - Fatal编程技术网

Matlab 重新调整小字体扫描阿拉伯单词的大小和阈值

Matlab 重新调整小字体扫描阿拉伯单词的大小和阈值,matlab,image-processing,ocr,scaling,adaptive-threshold,Matlab,Image Processing,Ocr,Scaling,Adaptive Threshold,我正在为打印的扫描文档开发阿拉伯语OCR。。。一些扫描文件可能使用高度为8的字体书写,这是非常小的。。。我想将高度调整为60像素,但由于阿拉伯语字符的性质,可能会出现一些瑕疵。。有些字符可能会重叠。我在调整大小后使用了局部阈值方法,但结果仍然不可接受。。。有什么想法吗 这是一个示例图像: 这与使用50作为窗口大小调整和应用局部自适应阈值后的示例相同: 正如你所看到的,像这样的一些字符中存在一些不连续性: 有没有什么方法可以在保留文本形状的同时调整图像的大小 我修复字符不连续性的方法: 使

我正在为打印的扫描文档开发阿拉伯语OCR。。。一些扫描文件可能使用高度为8的字体书写,这是非常小的。。。我想将高度调整为60像素,但由于阿拉伯语字符的性质,可能会出现一些瑕疵。。有些字符可能会重叠。我在调整大小后使用了局部阈值方法,但结果仍然不可接受。。。有什么想法吗

这是一个示例图像:

这与使用50作为窗口大小调整和应用局部自适应阈值后的示例相同:

正如你所看到的,像这样的一些字符中存在一些不连续性:

有没有什么方法可以在保留文本形状的同时调整图像的大小

我修复字符不连续性的方法:

  • 使用窗口大小为16的局部自适应阈值(这将解决字符的不连续性,但字符中的孔已填充)在调整大小之前对原始图像设置阈值称之为
    smallbw

  • 使用
    imresize(smallbw,[nh nw],“最近的”)
    调整
    smallbw
    的大小,并使用
    imfill

  • 使用
    imresize(originalIm,[nh nw],'nearest')将原始图像调整到60像素的高度
    称之为
    largebw

  • 使用
    imfill
    填充
    largebw
    中的孔,并将其命名为
    bwfill

  • 通过
    bwholes=bwfill-largebw

  • 最后,从
    smallbw
    中减去
    bwholes
    ,得到该值

您可以在这里看到,在字符@Image 3中发现的不连续性已经解决。。。但这里提出了另一个问题,如图所示,某些字符可能会重叠

这是迄今为止我能取得的最好成绩。。。有没有其他办法可以解决这些问题?? 如果您认为这个问题没有解决方案,我将如何解决它,而不是使用调整大小?用12字体大小的文本而不是8字体大小的文本怎么样

有用链接:

操作系统:Windows7


编程环境:Matlab 2013a-图像处理工具箱

我已经添加了Matlab标记,并删除了其他标记之一。如果您希望MATLAB追随者查看您的问题,您需要添加该标记以获得更好的可见性@谢谢你,先生!!这个问题更适合于dsp.stackexchange.com尝试调整大小的双三次选项-更适合放大-我认为这个问题可能是离题的,因为它属于dsp.stackexchange.com