郭景涛
用最小熵原理分割字符
2022-8-28 18:33
阅读:1578

最近帮同事做一个仪器数显值的视觉识别程序,遇到了一个分割数字、逗号、小数点的问题。

试了几段流行的 python 代码,效果不甚理想。主要原因是逗号和小数点离数字太近了,经常误读。


现成的库不好用,也懒得找其他库了,干脆自己开发新方法。

试了几种,发现只要把坐标系旋转大约 5° ,然后将像素投影到横轴上,就自然形成了字符的分割。

啊.jpg

接下来是要让程序自动计算出坐标系的旋转角度。

如果把分割字符看作是像素点的无监督分类问题,那么线性判别算法(LDA)正好可以用上。LDA 的常规用法是做分类器,这里不是用作分类器,而是用的 LDA 分类的副产品——确定投影轴。

除了 LDA 还想到一种方法,不知道有没有人用过。首先计算字符沿轴的像素累积值,也就得到一个像素的分布函数,并计算这个分布的熵。接下来找到使熵最小的投影轴。

理由是:均匀分布熵最大,对应字符投影相互重叠的情况;集中分布使熵减小,对应字符投影分离的情况。

啊.jpg

转载本文请联系原作者获取授权,同时请注明本文来自郭景涛科学网博客。

链接地址:https://wap.sciencenet.cn/blog-504131-1353021.html?mobile=1

收藏

分享到:

当前推荐数:1
推荐人:
推荐到博客首页
网友评论0 条评论
确定删除指定的回复吗?
确定删除本博文吗?