国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

圖片矯正

這篇具有很好參考價值的文章主要介紹了圖片矯正。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

一、透視變換? ? ? ?

????????在平面圖片處理時,因為鏡頭角度等原因,容易導(dǎo)致圖像出現(xiàn)傾斜、變形等情況。為了方便后續(xù)處理常常需要進(jìn)行圖像矯正,其中主要技術(shù)原理是兩種變換類型--仿射變換(Affine Transformation)和透視變換(Perspective Transformation)。

????????仿射變換是二維坐標(biāo)間的線性變換, 故而變換后的圖像仍然具有原圖的一些性質(zhì),包括“平直性”以及“平行性”,常用于圖像翻轉(zhuǎn)(Flip)、旋轉(zhuǎn)(Rotations)、平移(Translations)、縮放(Scale operations)等,具體到代碼應(yīng)用可以參見OpenCV官方介紹。

????????但是仿射變換不能矯正一些變形,如矩形區(qū)域的部分發(fā)生變化最終變成梯形,這時候矯正就需要用到透視變換。透視變換(Perspective Transformation),又稱投影映射(Projective Mapping)、投射變換等,是三維空間上的非線性變換,可看作是仿射變換的更一般形式,簡單講即通過一個3x3的變換矩陣將原圖投影到一個新的視平面(Viewing Plane),在視覺上的直觀表現(xiàn)就是產(chǎn)生或消除了遠(yuǎn)近感。落實到OpenCV,圖像的透視變換由以下函數(shù)完成(該函數(shù)是針對圖像的包裝,其本質(zhì)調(diào)用cv.perspectiveTransform()? 進(jìn)行向量坐標(biāo)的變換)。

1. 透視變換測試:

1)梯形矯正

圖像矯正,OCR,opencv,計算機視覺,人工智能

2)任意形狀矯正

圖像矯正,OCR,opencv,計算機視覺,人工智能

2. 兩個關(guān)鍵函數(shù):

1)cv2.findHomography(src[] ,?dst[])

????????返回一個 3 × 3 的變換矩陣。其中, src[] 是原圖片的頂點坐標(biāo),dst[] 是處理后圖片的頂點坐標(biāo));

2)dstD = cv2.warpPerspective(imD, H, ( dstD.shape[1] , dstD.shape[0] ) )?

????????得到矯正后的圖片。其中,imD 是原始圖片,H 是變換矩陣,?dstD.shape[1] 和 dstD.shape[0] 是輸出圖片的寬和高。

3. 問題

????????原始圖片頂點和輸出圖片的頂點是手動指定的,不能自動識別。

4. 目的

????????得到變換所需要的原始圖片中的四個頂點的坐標(biāo)。

5. 提出想法

1)用凸包多邊形擬合為外接四邊形,然后求四邊形的頂點;

2)角點檢測,篩選最上(下、左、右)的頂點作為變換的頂點;

3)霍夫線檢測求交點:檢測圖片文本的邊界直線,求到交點作為變換的頂點。

二、將文本區(qū)域輪廓擬合為四邊形

1. 思路

1)二值化圖像;

2)邊緣檢測;

3)篩選輪廓;

4)輪廓擬合。

2. 測試一

1)邊緣檢測:

圖像矯正,OCR,opencv,計算機視覺,人工智能

2)輪廓收集:

圖像矯正,OCR,opencv,計算機視覺,人工智能

3)輪廓繪制:?

圖像矯正,OCR,opencv,計算機視覺,人工智能

4)輪廓擬合:

圖像矯正,OCR,opencv,計算機視覺,人工智能

3. 測試二

1)邊緣檢測:

圖像矯正,OCR,opencv,計算機視覺,人工智能

2) 輪廓收集:圖像矯正,OCR,opencv,計算機視覺,人工智能

3)?輪廓繪制:圖像矯正,OCR,opencv,計算機視覺,人工智能

4) 輪廓擬合:圖像矯正,OCR,opencv,計算機視覺,人工智能

4. 問題:

1)擬合四邊形不成功;

2)邊界不明顯和邊界不完整對效果影響較大。

三、角點檢測

????????角點通常被定義為兩條邊的交點,或者說,角點的局部鄰域應(yīng)該具有兩個不同區(qū)域的不同方向的邊界。角點檢測(Corner?Detection)是計算機視覺系統(tǒng)中獲取圖像特征的一種方法,廣泛應(yīng)用于運動檢測、圖像匹配、視頻跟蹤、三維重建和目標(biāo)識別等,也可稱為特征點檢測。

圖像矯正,OCR,opencv,計算機視覺,人工智能?

1. 角點檢測算法的基本思想

????????使用一個固定窗口在圖像上進(jìn)行任意方向上的滑動,比較滑動前與滑動后兩種情況,窗口中的像素灰度變化程度,如果存在任意方向上的滑動,都有著較大灰度變化,那么我們可以認(rèn)為該窗口中存在角點。

? ? ? ? 目前,角點檢測算法還不是十分完善,許多算法需要依賴大量的訓(xùn)練集和冗余數(shù)據(jù)來防止和減少錯誤的特征的出現(xiàn)。對于角點檢測算法的重要評價標(biāo)準(zhǔn)是:其對多幅圖像中相同或者相似特征的檢測能力,并且能夠應(yīng)對光照變化、或者圖像旋轉(zhuǎn)等影響。
?

2. 關(guān)于角點的具體描述可以有幾種:

1)一階導(dǎo)數(shù)(即灰度的梯度)的局部最大所對應(yīng)的像素點;

2)兩條及兩條以上邊緣的交點;

3)圖像中梯度值和梯度方向的變化速率都很高的點;?

4)角點處的一階導(dǎo)數(shù)最大,二階導(dǎo)數(shù)為零,指示物體邊緣變化不連續(xù)的方向。 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

3. 角點檢測算法:

1)基于二值圖像的角點檢測;

2)基于輪廓曲線的角點檢測;

3)基于灰度圖像的角點檢測:基于梯度、基于模板和基于模板和梯度組合三類方法;常見的基于模板的角點檢測算法有:Kitchen-Rosenfeld角點檢測算法,Harris角點檢測算法,KLT角點檢測算法及SUSAN角點檢測算法?;谀0宓姆椒ㄖ饕强紤]像素領(lǐng)域點灰度的變化,即亮度的變化。

4. API:

cornerHarris( InputArray src,                //輸入8bit單通道灰度Mat矩陣
		      OutputArray dst,               //用于保存Harris角點檢測結(jié)果,32位單通道,大小與src相同
	      	  int blockSize,                 //滑塊窗口的尺寸,一般取 2
			  int ksize,                     //Sobel邊緣檢測濾波器大小,一般取 3
			  double k,                      //Harris中間參數(shù),一般取 0.04~0.06
			  int borderType=BORDER_DEFAULT  //插值類型
			 );

5. 測試:

1)有完整邊界

圖像矯正,OCR,opencv,計算機視覺,人工智能?

2)邊界不完整

?圖像矯正,OCR,opencv,計算機視覺,人工智能?

6. 問題:

1)角點檢測的精度不高,尤其是邊界不明顯的時候;

2)邊界不完整的時候,角點檢測結(jié)果無法滿足圖片矯正的需求。

四、總結(jié)

????????基于頂點矯正的思路對于原始圖片的邊界有較高的要求(完整且清晰)。

? ? ? ? 上面測試的兩張圖片在有邊界(雖然邊界不完美)的情況下不能矯正圖片,并且還要考慮以下類型圖片,可能要改變一下思路。

圖像矯正,OCR,opencv,計算機視覺,人工智能

圖像矯正,OCR,opencv,計算機視覺,人工智能文章來源地址http://www.zghlxwxcb.cn/news/detail-656242.html

到了這里,關(guān)于圖片矯正的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包