?

基于無人機的攝像機標定模板的改進?

2019-03-26 08:44陸雅婷
計算機與數字工程 2019年3期
關鍵詞:角點自動識別圓點

陸雅婷

(南京理工大學 南京 210094)

1 引言

基于無人機的高速公路應急車道管理系統通過無人機上搭載攝像機,對高速公路的應急車道進行連續拍攝,識別應急車道上是否存在車輛,從而方便進行對應急車道的管理。由于無人機續航能力差,因此需要及時充電,本文旨在通過研究攝像機標定算法,求出充電樁與無人機的相對位置,控制無人機自動定點降落,實現無人機長時間連續巡航的目的。為了求出攝像機的內外參數,必須從多個角度拍攝標定板,目前已知的攝像機標定工具箱 ,如 Camera Calibration Toolbox[1],以 及 通 過Opencv[2]實現的攝像機標定,均是采用棋盤格的標定板,精準獲得棋盤格角點的亞像素坐標。棋盤格標定板在X軸和Y軸方向都是上下或左右對稱的,當無人機飛在空中時,面對完全對稱的棋盤格標定板,是無法辨認空中的方向,找準標定板方位的。同時,Camera Calibration Toolbox[1]工具箱在使用的過程中,需要人為的指定標定板的4個頂角[3],這對于無人機航行時自動定點降落是不適用的;OpenCV[2]雖然不需要人為指定,能夠自動識別角點坐標,但是當棋盤格出現缺損某個格子或者圖像造成部分遮擋時,無法識別出圖像中的角點與標定板上角點的一一對應關系,將不能正確求解出攝像機的參數。

文獻[4]提出采用矩形標記方法[5]的基準點標記ARTag(Augmented Reality Tag),具有高可靠性,它有效地解決了興趣點檢測和匹配問題。文獻[3]在此基礎上,提出的標定模板基于矩形編碼ART-ag,進行攝像機標定,精度優于ARTag,且標定點密度高、算法魯棒性好、能夠自動識別。文獻[6]利用周圍圖案對稱和灰度值對比明顯的獨特性質,設計了由對稱算子S和方差算子V組合而成的角點檢測算子——對稱方差算子(Symm Etry and Variance),簡稱SV算子。該算法對棋盤格圖像的旋轉變換和亮度變換具有魯棒性和抗噪能力強的優點。但以上都方法較為繁瑣,針對本項目的工程應用需求,需要方便快捷地自動識別角點坐標,且對于標定精度要求不高,本文提出的全新的模板,將解決上述問題,可以自動識別圖像的角點坐標,以及圖像缺損時如何求解圖像中角點坐標的問題,可以方便、全自動地實現攝像機標定。

2 模板設計

為了使得標定板在本系統中使用,本文改進了傳統的攝像機標定板,將原來的棋盤格改成了不對稱的圓點,其中第一列第一個圓點直徑9mm,第一列最后一個圓點直徑6mm,其余圓點直徑3mm,圓與圓之間間隔1.5cm,制成10行×6列的模板(本文中9mm×6mm×3mm的數據可適用于標定板和攝像機相距1m左右的情況,若標定板和攝像機相距較遠,可相應地按比例放大),通過不同圓的大小,即使在空中,也能確定圖像中正確的x和y軸方向,使得圖像中的圓點圓心坐標與標定板一一對應。如圖1所示。

本項目主要應用于野外,因此標定板會出現一些點的模糊、缺損等現象,如圖2所示,下一節將詳細介紹如何方便求出缺損點坐標的方法。

圖1 改進的攝像機標定板

圖2 圖像出現缺損

3 基于全新的攝像機標定板的識別方法

傳統的標定板是棋盤格,求取的是直線角點坐標,大致方法分為兩類[7]:一是通過提取直線相交的交點,獲得角點坐標,二是基于灰度圖像的角點檢測方法[8~16],考慮像素鄰域點的灰度變化,將與鄰點灰度對比足夠大的點定義為角點?;诒疚闹刑岢龅臉硕ò?,我們采用如下方法:1)讀取圖像,并轉為二值圖像,掃描并跟蹤圖像中的圓點,獲得圓的半徑r,提取每一個圓點的鏈碼,求取每個圓的中心坐標,即是把求取棋盤格角點坐標轉化為求取圓點的中心坐標。但是通過此方法求取出來的點坐標是雜亂無序的;2)在獲得各圓點圓心坐標后,可以根據數學規律將所有點坐標排序,達到與標定板角點一一對應的目的。

3.1 確定每列圓點的圓心坐標

因為第一列第一個圓點和最后一個圓點半徑都大于其他圓點,可以很方便地從80個圓心坐標中找出這兩個點的坐標A00和A90(下標數字代表第X行第X列),就可以確定第一列從點A00到點A90的向量,如圖3所示,再根據每個圓心間距一樣,通過(X90-X00)/9 和(Y90-Y00)/9(X90、Y90分別表示點 A90的橫、縱坐標)可以近似求得相鄰點間的橫縱坐標的ΔX和ΔY,因此每一行的圓點圓心坐標都可以根據前一個圓點的圓心坐標,加上ΔX和ΔY,再給定一定的誤差范圍,就可以確定下一個圓點圓心坐標。這樣只要確定了每一列的第一個點的坐標,就可以依此類推確定整列圓點的圓心坐標。

3.2 確定第一行圓點的圓心坐標

我們已經知道了如何根據每列第一個圓點的圓心坐標求取整列的圓心坐標,那么我們必須先確定每列的第一個點的坐標,即第一行圓點的圓心坐標。如圖3所示,已經能夠確定從點A00到點A90的向量,那么將該向量逆時針旋轉一定角度,如圖中的α和β角度,當旋轉的角度最大時,即為第一行圓點A00到A07向量的方向,再根據A00到A01的距離比A01到第一行其他圓點距離短,可以確定A01的圓點圓心坐標,依此類推根據前一個圓心坐標求下一個圓心坐標。

根據以上方法即可確定圖像上圓點圓心坐標的順序,并將它們重新排序,使之與標定板坐標一一對應。

3.3 確定缺損點坐標

由于本項目對于標定結果的精度要求不高,當標定板出現如圖2所示的部分缺損時,圖像中的圓心坐標無法與實際標定板一一對應時,我們仍然可以用上述的方法,即使未掃描到該點的坐標,也可以根據ΔX和ΔY,推算出下一個點的坐標,從而進一步進行運算。

圖3 確定圓點坐標順序

通過上述介紹的方法,只要程序讀入圖片,即可自動求取出圖像中圓點的圓心坐標,即角點坐標。

4 實驗分析

針對本文提出的方法進行試驗,分別從不同的角度和高度拍攝標定板,求取角點坐標,為了方便比對,本文將圓點提取出來,按照求出的圓心坐標在相應的圓點上畫十字來標記圓心坐標,能夠直觀地看出求出的點是否在圓心,如圖4所示,圖像中每個圓點的圓心坐標均被求出,且誤差在本項目的精度范圍內,基本滿足使用需求。

圖4 標記圓點的圓心坐標

當拍攝的圖像出現缺損時,通過推算出下一個點的坐標,我們也能獲得當前缺損點理論上的坐標值,如圖5所示,截取了缺損部分的實驗結果圖像,根據推算出的圓點圓心坐標,達到與標定板上圓點一一對應的關系,能很好地符合工程應用的需要。

圖5 缺損部分實驗結果

5 結語

本文提出的全新的攝像機標定板,可以有效地解決自動識別角點坐標和標定板角點缺失的問題,使之能夠應用在無人機自動定點降落的工程問題中,方法簡便,實現較易,能夠很好地應用在相應的工程問題中。

猜你喜歡
角點自動識別圓點
一種改進的自適應FAST 角點檢測算法
小麥面條和面過程不同階段面絮的劃分與自動識別
基于數據挖掘的船舶航跡自動識別系統
基于VR技術的X射線圖像安檢危險品自動識別
多支撐區域模式化融合角點檢測算法仿真
基于點云聚類的垛型角點檢測方法
角點檢測技術綜述①
洛斯警長的終極挑戰⑩
船舶自動識別系統對船舶救助的影響
洛斯警長的終極挑戰
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合