2013-03-11 57 views
0
I = imread('TEST_2.JPG'); 
Igray = rgb2gray(I); 
Ibw = im2bw(Igray,graythresh(Igray)); 
Iedge = edge(uint8(Ibw)); 
se = strel('square',2); 
Iedge2 = imdilate(Iedge, se); 
Ifill= imfill(Iedge2,'holes'); 
imshow(Ifill) 

大多数数字是分开和识别的,但是有几个数字非常接近,因此它被识别为一个数字。有什么办法可以将这些混合数字分开吗? 对不起,我是新来的,不允许发布图片,直到10声望。单独的字母 - 图像处理OCR

+0

你可以尝试在imdilate之前调用imerode?还张贴imgur上的图片链接或其他东西。一个国防部可能会来和编辑您的帖子。 – Justin 2013-03-11 21:44:48

+0

尝试过......它会返回所有黑色图像 – aahmed325 2013-03-11 21:49:01

+0

您是否在Ibw而不是Iedge2上使用imerode?如果您在Iedge2上使用腐蚀,它将返回全部黑色。 – Justin 2013-03-11 22:34:36

回答

0

最后,我得到它的工作。 ,而不是在matlab中编写OCR代码,我用matlab进行图像预处理并将其细化到最大值。然后使用MS-OneNote从图像中获取文本。

到目前为止一切都很好...

谢谢大家的帮助!