您好,登錄后才能下訂單哦!
本篇文章為大家展示了Python中如何進(jìn)行攝像頭標(biāo)定,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。
扭曲可以用下面的來解決:
類似的,另一個切向畸變是因為成像的光線不是完全平行的到達(dá)鏡像平面。所以有些區(qū)域比期望的要看上去離的近??梢杂孟旅娴姆绞浇鉀Q:
由于徑向畸變,直線會顯示成曲線,當(dāng)直線離圖像中心越遠(yuǎn)時越明顯。比如下面顯示的這張圖,棋盤的兩個用紅色標(biāo)出來的邊緣,你可以看到棋盤不是直線,也不和紅線匹配。所有的直線都凸了。
除此之外,我們需要找到更多的信息,比如攝像頭的內(nèi)部和外部參數(shù),內(nèi)部參數(shù)是攝像頭特定的參數(shù)。包括焦距(fx,fy)。光學(xué)中心(cx,cy)。也叫攝像機矩陣。它只依賴攝像頭本身。一旦算出來就可以保存下來為以后使用,它應(yīng)該是一個3x3的矩陣:
要找到棋盤的模式,我們用函數(shù)cv2.findChessboardCorners()。我們也需要傳我們要找的模式的類型,比如8x8網(wǎng)格,5x5網(wǎng)格等,在這個例子里,我們使用7x6網(wǎng)格(一般來說棋盤都是8x8的方塊7x7的內(nèi)角),它返回角點。這些角點會按照從左到右,從上到下的順序放好。
這個函數(shù)可能沒法在所有圖像里找到需要的模式,所以一個號的選擇是寫代碼,啟動攝像機,然后檢查每幀,找需要的模式,當(dāng)取得了模式,找到角點,并存在列表里。同時提供一些間隔,然后在讀下面的幀的時候我們可以調(diào)整我們的棋盤的方向。不斷進(jìn)行這個過程知道需要的好的模式都獲取到了。即使在這個例子里,我們也不知道多少是好的,所以我們讀入所有的圖像取里面好的。
對于立體的應(yīng)用,這些扭曲需要首先被矯正。要找到所有的這些參數(shù),我們得做的是提供一些有良好定義模式的樣例圖像(比如棋盤)。我們找到特定的點(棋盤的四個角),我們知道他們的真實世界的坐標(biāo),我們知道他們在圖像里的坐標(biāo)。通過這些數(shù)據(jù),后臺就能解決一些數(shù)學(xué)問題以得到畸變參數(shù)。
上述內(nèi)容就是Python中如何進(jìn)行攝像頭標(biāo)定,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。