从扫描的纸张中提取单词的图像

时间:2012-04-10 07:27:36

标签: image-processing image-segmentation scanning

我想要获得许多扫描书中的每个单词的小图像(以波斯语(阿拉伯语 - 脚本))。 我没有进行图像处理的实验 我怎样才能以最有效的方式做到这一点?

1 个答案:

答案 0 :(得分:3)

我建议你在MATLAB中写一个这样的脚本。
a:字母之间最大距离的一半(以像素为单位)
b:单词之间最小距离的一半(以像素为单位)
(希望a< b)

阈值扫描页面的图像。

I(I < Th) = 0;I(I > Th) = 1;  

通过实验选择'Th'。你应该得到一个二进制图像'我'有1个字母。 扩张图像。

imdilate(I,a); 

这会将字母连接在一起 消除噪音。

I = bwareaopen(I,n); 

这将删除少于n个像素的所有连接组件 进行连通分量分析。

CC = bwconncomp(I);  
Rect = regionprops(I,'BoundingBox');  

这将返回包含单个单词的矩形的坐标列表。 从原始副本中提取子矩阵并使用imwrite()写入图像。