一、整體矯正
1. 針對(duì)邊緣比較明顯的圖片,使用基于輪廓提取的矯正方法。
基本步驟:
1)變?yōu)榛叶葓D;
2)Canny邊緣檢測(cè):
Canny算法的基本思想是尋找一張圖片中灰度強(qiáng)度變化最強(qiáng)(梯度方向)的位置;
3)使用 OpenCV 的 findcontours()?提取輪廓(一個(gè)輪廓對(duì)應(yīng)一組點(diǎn)集);
4)根據(jù)輪廓求最小外包四邊形(一個(gè)四邊形對(duì)應(yīng)四個(gè)點(diǎn)坐標(biāo));
5)篩選得到的四邊形(面積最大、各角接近90°等),存儲(chǔ)四個(gè)頂點(diǎn)坐標(biāo);
6)根據(jù)頂點(diǎn)變換得到矯正后的圖片。?
2. 針對(duì)邊緣不明顯,但排列相對(duì)整齊的文本圖片,使用基于霍夫直線探測(cè)的矯正方法。
?
基本步驟:
1)變?yōu)榛叶葓D;
2)Canny邊緣檢測(cè);
3)使用 OpenCV 的 HoughLines() 函數(shù)檢測(cè)直線(在極坐標(biāo)系下用??和 ?表示);
4)計(jì)算傾斜角度的平均值,根據(jù)傾斜角度進(jìn)行變換。
二、部分矯正
與整體矯正部分相同。
基本步驟:
1)變?yōu)榛叶葓D;
2)Canny 邊緣檢測(cè);
3)輪廓提??;
4)根據(jù)輪廓求最小外包矩形;
文章來源:http://www.zghlxwxcb.cn/news/detail-439317.html
5)矯正每個(gè)矩形(單詞)并覆蓋原矩形(單詞)。文章來源地址http://www.zghlxwxcb.cn/news/detail-439317.html
到了這里,關(guān)于OpenCV圖像矯正的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!