图像处理小字典——SWT

Posted fcyblogs

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了图像处理小字典——SWT相关的知识,希望对你有一定的参考价值。

算法名称:Stroke Width Transform(SWT)笔画宽度变换
算法出处:《Detecting Text in Natural Scenes with Stroke Width Transform》
http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=5540041&tag=1
算法用途:自然场景文本检测
算法思想
算法步骤

The Stroke Width Transform
输入:待检测图像的灰度图
输出:与输入图像同样大小的笔画宽度图像,每个像素位置记录其笔画宽度
the first pass
1. Canny算子提取灰度图边缘;
2. 计算每个边缘像素点的梯度方向;
3. 分别以每个边缘像素点p作为起点发出射线,射线方向为该像素点的梯度方向dp,射线的最大寻找宽度预先指定 。r=p+n?dp, maxSearchWidth>n>0;
4. 如果p发出的射线寻找到另一个边界像素点q,且q的梯度方向与p大致相反(dq = -dp±π/6)。那么p与q之间的距离即为射线路径上所有点的笔画宽度。如果射线没有找到满足的条件q(最大寻找宽度内,梯度方向大致相反)那么废弃掉该射线;
5. 如果一个点被多条路径经过,那么其笔画宽度取这些笔画宽度的最小值。如图(a),水平和垂直方向上均检测到该点,取最小值。
(第一趟检测存在的问题是,对于图像拐点处,可能取值不符合实际。如图(b),拐点在水平和垂直方向上的笔画宽度取值都比较大,显然不是想要的结果。)
the second pass
1. 对于第一趟未废弃的射线,计算该路径上所有像素点笔画宽度的中值,对于路径上大于该值的像素点全部赋予中值。

技术分享图片

算法实现






以上是关于图像处理小字典——SWT的主要内容,如果未能解决你的问题,请参考以下文章

JFace和SWT有啥区别

使用 swt 处理按键

文本小部件的 SWT 拖放支持

SWT一个入门问题

SWT 独立滚动条小部件

Eclipse中如何配置SWT