OpenCV图像矫正
基本步骤:1)变为灰度图;2)Canny边缘检测:Canny算法的基本思想是寻找一张图片中灰度强度变化最强(梯度方向)的位置;3)使用 OpenCV 的 findcontours() 提取轮廓(一个轮廓对应一组点集);4)根据轮廓求最小外包四边形(一个四边形对应四个点坐标);5)筛选得到的四边形(面积最大、各角接近90°等),存储四个顶点坐标;6)根据顶点变换得到矫正后的图片。
·
一、整体矫正
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)矫正每个矩形(单词)并覆盖原矩形(单词)。
更多推荐



所有评论(0)