一、整体矫正
1. 针对边缘比较明显的图片,使用基于轮廓提取的矫正方法。
基本步骤:
1)变为灰度图;
2)Canny边缘检测:
Canny算法的基本思想是寻找一张图片中灰度强度变化最强(梯度方向)的位置;
3)使用 OpenCV 的 findcontours() 提取轮廓(一个轮廓对应一组点集);
4)根据轮廓求最小外包四边形(一个四边形对应四个点坐标);
5)筛选得到的四边形(面积最大、各角接近90°等),存储四个顶点坐标;
6)根据顶点变换得到矫正后的图片。
2. 针对边缘不明显,但排列相对整齐的文本图片,使用基于霍夫直线探测的矫正方法。
基本步骤:
1)变为灰度图;
2)Canny边缘检测;
3)使用 OpenCV 的 HoughLines() 函数检测直线(在极坐标系下用
和
表示);
4)计算倾斜角度的平均值,根据倾斜角度进行变换。
二、部分矫正
与整体矫正部分相同。
基本步骤:
1)变为灰度图;
2)Canny 边缘检测;
3)轮廓提取;
4)根据轮廓求最小外包矩形;
5)矫正每个矩形(单词)并覆盖原矩形(单词)。
版权声明:本文为qq_40206924原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。