999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

艦載機(jī)位姿實(shí)時(shí)視覺(jué)測(cè)量算法研究

2021-11-27 00:48:28朱齊丹李小銅鄭天昊
智能系統(tǒng)學(xué)報(bào) 2021年6期
關(guān)鍵詞:模型

朱齊丹,李小銅,鄭天昊

(哈爾濱工程大學(xué) 智能科學(xué)與工程學(xué)院,黑龍江 哈爾濱 150001)

艦載機(jī)作為航空母艦的主要裝備,是海上戰(zhàn)場(chǎng)的重要武器。艦載機(jī)起飛和著艦的安全性和高效性是衡量航母作戰(zhàn)和綜合支援能力的重要技術(shù)指標(biāo)。航空母艦上艦載機(jī)數(shù)量較多,姿態(tài)不一,因此獲取甲板上艦載機(jī)的實(shí)時(shí)位置與姿態(tài)信息對(duì)于艦載機(jī)起飛和著艦過(guò)程中的避碰與軌跡規(guī)劃具有重大意義。對(duì)于三維空間中目標(biāo)位姿的測(cè)量,常根據(jù)目標(biāo)的距離而采用不同的位姿測(cè)量方法。對(duì)于距離較遠(yuǎn)的目標(biāo),常采用激光雷達(dá)技術(shù)進(jìn)行位姿測(cè)量,而對(duì)于距離相對(duì)較近的目標(biāo),通常采用機(jī)器視覺(jué)的方法進(jìn)行位姿測(cè)量。航空母艦上艦載機(jī)的位姿測(cè)量屬于近距離目標(biāo)位姿測(cè)量,故采用機(jī)器視覺(jué)的方法對(duì)艦載機(jī)進(jìn)行位姿測(cè)量。

基于視覺(jué)的位姿測(cè)量方法主要分為傳統(tǒng)方法與深度學(xué)習(xí)方法兩類(lèi)。基于視覺(jué)的傳統(tǒng)位姿測(cè)量方法根據(jù)相機(jī)的數(shù)目可分為單目、雙目以及多目。基于單目相機(jī)獲取的視覺(jué)圖像信息缺少目標(biāo)的深度信息,因此若想基于普通單目相機(jī)進(jìn)行位姿測(cè)量必須事先獲取目標(biāo)模型的三維信息。文獻(xiàn)[1-2]提出了基于三維模型的單目位姿測(cè)量方法,設(shè)置了一系列的虛擬投影點(diǎn)將目標(biāo)的三維模型投影到二維平面上構(gòu)成目標(biāo)的二維模板庫(kù),之后將相機(jī)獲取到的二維圖像與模板庫(kù)進(jìn)行匹配,將匹配度最高的二維模板對(duì)應(yīng)的三維位姿作為待測(cè)目標(biāo)的位姿。基于此方法可以準(zhǔn)確地解算出目標(biāo)的三維位姿,但因搜索過(guò)程極其耗時(shí),因此該方法的實(shí)時(shí)性較差。雙目立體視覺(jué)是視覺(jué)感知中實(shí)現(xiàn)的一種重要方法,通過(guò)左右相機(jī)獲取含視差的圖像即可進(jìn)行三維重建,獲取目標(biāo)的深度信息,進(jìn)而進(jìn)行位姿解算。文獻(xiàn)[3]提出了一種基于雙目視覺(jué)的空間非合作目標(biāo)位姿測(cè)量方法,對(duì)左右相機(jī)獲取到的圖像進(jìn)行SIFT 特征提取與匹配,基于雙目三維重建原理即可獲取所有特征點(diǎn)的三維坐標(biāo),從而得到目標(biāo)的三維點(diǎn)云,之后利用SAC-IA 與ICP 兩步對(duì)目標(biāo)位姿進(jìn)行求解。基于該方法可以獲取較為精確的目標(biāo)位姿,但由于三維重建以及ICP 迭代過(guò)程復(fù)雜,位姿解算實(shí)時(shí)性較低。多目視覺(jué)是雙目視覺(jué)的一種延伸,其在雙目視覺(jué)的基礎(chǔ)上增加一臺(tái)或者多臺(tái)相機(jī)作為輔助測(cè)量裝備。解決了復(fù)雜環(huán)境因視野被遮擋和局部信息不精細(xì)帶來(lái)的問(wèn)題,但存在系統(tǒng)復(fù)雜、實(shí)時(shí)性低等缺點(diǎn)。自2015 年開(kāi)始隨著Faster-RCNN、SSD、YOLO 等網(wǎng)絡(luò)的提出,深度學(xué)習(xí)在二維圖像目標(biāo)識(shí)別領(lǐng)域達(dá)到了巔峰[4-5],基于此類(lèi)算法能夠精準(zhǔn)快速地對(duì)目標(biāo)進(jìn)行識(shí)別。基于深度學(xué)習(xí)在二維圖像目標(biāo)識(shí)別領(lǐng)域的優(yōu)良性能,國(guó)內(nèi)外大量的研究人員迅速將深度學(xué)習(xí)引入到了6D 位姿估計(jì)中,迄今為止提出了許多的網(wǎng)絡(luò)結(jié)構(gòu)對(duì)三維世界中的目標(biāo)進(jìn)行6D 位姿估計(jì)。文獻(xiàn)[6]提出了一種基于密集迭代融合的目標(biāo)6D 位姿估計(jì)方法,用于從RGB-D 圖像中估計(jì)出已知對(duì)象的6D 位姿。文獻(xiàn)[7]提出了一種實(shí)時(shí)6D 位姿估計(jì)方法,該方法的關(guān)鍵技術(shù)在于設(shè)計(jì)一個(gè)網(wǎng)絡(luò),直接預(yù)測(cè)待測(cè)目標(biāo)三維預(yù)測(cè)框3D 頂點(diǎn)坐標(biāo)對(duì)應(yīng)的2D 圖像坐標(biāo),進(jìn)而構(gòu)建2D-3D 坐標(biāo)點(diǎn)對(duì),最后通過(guò)解PNP 即可獲取待測(cè)目標(biāo)的位置姿態(tài)信息。文獻(xiàn)[8]提出了基于物體點(diǎn)云6D 位姿估計(jì)的深度學(xué)習(xí)方法,該方法基于三維點(diǎn)云信息對(duì)三維場(chǎng)景中的目標(biāo)進(jìn)行位姿估計(jì)。文獻(xiàn)[9]提出了一種先驗(yàn)形狀變形用于對(duì)類(lèi)別6D 對(duì)象進(jìn)行姿態(tài)與大小估計(jì),該方法能從RGB-D 圖像中恢復(fù)出未見(jiàn)實(shí)例對(duì)象的6D 位姿與大小。但此類(lèi)方法仍存在缺少訓(xùn)練數(shù)據(jù),訓(xùn)練過(guò)程極其耗時(shí),測(cè)量精度較傳統(tǒng)方法低等問(wèn)題。

針對(duì)上述位姿測(cè)量方法實(shí)時(shí)性與精度低下的問(wèn)題,本文提出了一種基于線框模板匹配的艦載機(jī)位姿解算算法。引入了基于YOLO-V4 網(wǎng)絡(luò)以及Canny 邊緣提取算法的多目標(biāo)分割算法、線框匹配算法以及GPU 加速算法,基于該算法對(duì)多艦載機(jī)目標(biāo)進(jìn)行位姿估計(jì),獲得了較高的精度和較好的實(shí)時(shí)性。

1 艦載機(jī)位姿實(shí)時(shí)測(cè)量系統(tǒng)

本文提出的艦載機(jī)位姿實(shí)時(shí)測(cè)量算法主要包含兩個(gè)部分:1)基于YOLO-V4 網(wǎng)絡(luò)以及Canny邊緣提取算法實(shí)現(xiàn)多艦載機(jī)目標(biāo)識(shí)別與分割;2)基于線框邊緣匹配實(shí)現(xiàn)艦載機(jī)目標(biāo)位姿測(cè)量,利用類(lèi)似模板匹配的方法在航母甲板平面的3 個(gè)自由度內(nèi)尋找線框模板與目標(biāo)邊緣信息匹配度最高的位置信息與航向角信息,并以此作為艦載機(jī)的實(shí)時(shí)位姿。圖1 為艦載機(jī)位姿實(shí)時(shí)測(cè)量算法的流程。

圖1 艦載機(jī)實(shí)時(shí)位姿測(cè)量算法流程Fig.1 Meatruement of airplane position flow

2 基于深度學(xué)習(xí)的目標(biāo)檢測(cè)與分割

近年來(lái),深度學(xué)習(xí)在目標(biāo)檢測(cè)和圖像語(yǔ)義分割等計(jì)算機(jī)視覺(jué)領(lǐng)域取得了巨大的成就。與傳統(tǒng)的方法相比,深度學(xué)習(xí)方法避免了手工設(shè)計(jì)特征,這使得模型具有良好的自適應(yīng)能力,提升了模型的泛化能力[10]。目前基于深度學(xué)習(xí)的目標(biāo)檢測(cè)算法主要分為3 類(lèi)[11]:1)基于Two-stage 的檢測(cè)模型,代表性網(wǎng)絡(luò)為R-CNN 系列;2) 基于Onestage 的檢測(cè)模型,代表性網(wǎng)絡(luò)為YOLO、SSD;3) 基于Anchor-free 的檢測(cè)模型,代表性網(wǎng)絡(luò)為CornerNet[12]、FSAF[13]、ExtremeNet[14]、FCOS[15]。基于此類(lèi)算法能夠精準(zhǔn)快速地對(duì)目標(biāo)進(jìn)行識(shí)別。本文選擇2020 年提出的YOLO-V4 網(wǎng)絡(luò)作為多艦載機(jī)目標(biāo)的識(shí)別算法,YOLO-V4 網(wǎng)絡(luò)是YOLOV3 網(wǎng)絡(luò)的改進(jìn)版,它是將最近幾年的一些優(yōu)秀的網(wǎng)絡(luò)算法加入到V 3 中進(jìn)行堆疊改進(jìn)而成,YOLO-V4 網(wǎng)絡(luò)在檢測(cè)速度與精度方面都有極好的性能[16]。本文不涉及對(duì)YOLO-V4 網(wǎng)絡(luò)的改進(jìn)工作,在文獻(xiàn)[16]的基礎(chǔ)上直接復(fù)現(xiàn)YOLO-V4作為多艦載機(jī)目標(biāo)的識(shí)別算法。本文采集了500張艦載機(jī)目標(biāo)數(shù)量以及角度各異的訓(xùn)練樣本,其中部分樣本的截圖如圖2 所示。

圖2 YOLO-V4 網(wǎng)絡(luò)訓(xùn)練樣本Fig.2 YOLO-V4 network training sample

用500 張訓(xùn)練樣本對(duì)YOLO-V4 網(wǎng)絡(luò)進(jìn)行訓(xùn)練,訓(xùn)練完成的網(wǎng)絡(luò)識(shí)別結(jié)果如圖3 所示。

圖3 YOLO-V4 網(wǎng)絡(luò)識(shí)別結(jié)果Fig.3 Result of YOLO-V4 network

任意選取50 個(gè)測(cè)試樣本對(duì)網(wǎng)絡(luò)進(jìn)行測(cè)試,統(tǒng)計(jì)測(cè)試結(jié)果,其中準(zhǔn)確識(shí)別的樣本個(gè)數(shù)為49 個(gè),出現(xiàn)錯(cuò)誤的樣本個(gè)數(shù)僅有1 個(gè)。由測(cè)試結(jié)果可以看出,YOLO-V4 網(wǎng)絡(luò)對(duì)于艦載機(jī)的目標(biāo)檢測(cè)準(zhǔn)確率可達(dá)到95%以上,可以較好地完成目標(biāo)檢測(cè)工作。

3 線框模板匹配位姿測(cè)量算法

3.1 線框模板匹配算法

模板匹配是一種最原始、最基本的模式識(shí)別方法,研究某一特定目標(biāo)的圖案位于圖像的什么地方,進(jìn)而識(shí)別目標(biāo)。它是圖像處理中最基本、最常用的匹配方法[17-19]。傳統(tǒng)模板匹配算法主要利用像素信息進(jìn)行匹配,模板是一幅已知圖像,而模板匹配就是在一幅大圖像中搜索目標(biāo),在該圖中有要尋找的目標(biāo),且目標(biāo)同模板有相同的尺寸、方向和圖像元素,通過(guò)一定算法可以在圖中找到目標(biāo),確定其坐標(biāo)位置。傳統(tǒng)模板匹配方法具有自身的局限性,主要表現(xiàn)在:1)它只能進(jìn)行平行移動(dòng),若原圖像中的匹配目標(biāo)發(fā)生旋轉(zhuǎn)或大小變化,該算法無(wú)效;2)匹配耗時(shí),實(shí)時(shí)性低。而本文所需測(cè)量的艦載機(jī)目標(biāo)數(shù)量較多且姿態(tài)各異,固傳統(tǒng)的模板匹配算法不適用于航母上艦載機(jī)目標(biāo)的位姿測(cè)量。本文提出了一種三維邊緣線框模板匹配算法,是傳統(tǒng)模板匹配算法基礎(chǔ)上的一個(gè)改進(jìn)算法,與傳統(tǒng)的模板匹配相比:一是將模板的旋轉(zhuǎn)考慮在內(nèi),使得其匹配自由度具有3 個(gè),分別對(duì)應(yīng)艦載機(jī)的x軸位置、y軸位置和航向角;二是只用模板的線框和目標(biāo)圖像的邊緣進(jìn)行匹配度計(jì)算,使得計(jì)算量大幅下降,能夠滿足實(shí)時(shí)性要求。除此之外,本文還采用了基于CUDA 技術(shù)的GPU 加速計(jì)算,使得位姿測(cè)量系統(tǒng)的計(jì)算速度能夠達(dá)到8 Hz。傳統(tǒng)模板匹配算法與本文提出的三維線框模板匹配算法如圖4 所示。

圖4 模板匹配算法Fig.4 Template matching algorithm

3.2 Canny 邊緣提取算法及其優(yōu)化

邊緣提取是圖像處理的常用手段與步驟之一,它通過(guò)對(duì)原始圖像施加某種算子使得邊緣信息的像素值不同于其周?chē)钠渌沁吘壪袼兀瑥亩沟眠吘壨癸@出來(lái)。常用的邊緣提取算子包括Sobel 算子、拉普拉斯算子、Canny 算子等。Canny算法作為一種常用的邊緣提取算法,近些年在圖像處理中運(yùn)用得越來(lái)越廣泛[20-22],其主要包括以下4 步:

1)高斯濾波

直接對(duì)原始圖像計(jì)算梯度求取極值必定會(huì)嚴(yán)重受到噪音的干擾,故在求取導(dǎo)數(shù)前需對(duì)圖像進(jìn)行濾波;高斯濾波是一種常見(jiàn)的降噪算法,應(yīng)用高斯模糊去除噪聲,降低了偽邊緣的識(shí)別。高斯算子是一個(gè)類(lèi)似于正態(tài)分布的、中間增益較大、周?chē)鲆孑^小的算子。經(jīng)過(guò)濾波后的像素灰度值如式(1)所示:

2)計(jì)算梯度幅值與方向

在圖像中,可以將灰度值變化較大的點(diǎn)看作邊緣的點(diǎn),而邊緣即是上述幅值變化較大的點(diǎn)的集合。梯度是表示圖像變化幅值與方向的常用方式,其可以通過(guò)點(diǎn)乘Sobel 算子計(jì)算,幅值與方向的計(jì)算如式(2)、(3)所示:

3)過(guò)濾非最大值

在第一步高斯濾波中,由于邊緣信息也被模糊放大,可能導(dǎo)致計(jì)算梯度值所得到的邊緣信息也同樣被放大,使得邊緣變得不準(zhǔn)確;為了減小邊緣的寬度,可以采用過(guò)濾非最大值的方式,使得邊緣寬度盡可能地縮小,直至其接近1 像素。具體來(lái)說(shuō),即某個(gè)像素點(diǎn),如果它是邊緣,那么它在該方向上的梯度則為最大值,否則其灰度值應(yīng)為0。

4)上下閾值過(guò)濾

設(shè)定上下兩個(gè)閾值,并將大于上閾值的可能為邊緣點(diǎn)的部分直接判定為邊緣點(diǎn),低于下閾值的點(diǎn)直接判定為非邊緣點(diǎn);對(duì)于介于上下閾值之間的點(diǎn),若其與確定為邊緣的像素點(diǎn)相鄰,則判定其為邊緣點(diǎn),否則為非邊緣點(diǎn)。

任意選取一幀含艦載機(jī)目標(biāo)的圖像進(jìn)行Canny 邊緣提取,得到結(jié)果如圖5 所示。

圖5 Canny 算法邊緣提取效果Fig.5 Result of Canny process

通過(guò)圖5 可以看到,邊緣提取結(jié)果中有許多不屬于艦載機(jī)目標(biāo)的邊緣特征,主要包括兩個(gè)部分:一是甲板背景邊緣,二是由于光照變化問(wèn)題帶來(lái)的噪點(diǎn)。在本文中相機(jī)是固定不動(dòng)的,同時(shí)還需要對(duì)所得圖像進(jìn)行邊緣提取,則微弱的光照變化也可忽略,這樣就可以認(rèn)為拍攝到的圖像背景始終不會(huì)變化。故可以提前采集好背景的邊緣圖像,為了進(jìn)一步提升背景減除的強(qiáng)度,用以對(duì)抗微弱光照變化引起的噪點(diǎn),可在提取背景邊緣后額外進(jìn)行一步膨脹操作。經(jīng)以上步驟可得最終的背景邊緣圖,如圖6 所示。

圖6 膨脹后背景邊緣圖片F(xiàn)ig.6 Background edge picture after expansion

對(duì)相機(jī)拍攝得到的目標(biāo)圖像進(jìn)行實(shí)時(shí)Canny 邊緣提取,之后將Canny 邊緣提取結(jié)果與膨脹后的背景邊緣圖片進(jìn)行背景減除操作,即可得到較為純凈的只含有艦載機(jī)邊緣特征的圖像,如圖7 所示。由圖7 可以看出經(jīng)背景減除的結(jié)果中存在一些由于光照變化帶來(lái)的的噪點(diǎn),固采用閉操作加輪廓查找的方式來(lái)優(yōu)化結(jié)果;閉操作是基本形態(tài)學(xué)操作的一種,其主要目的是對(duì)得到的二值化邊緣信息進(jìn)行處理,連接有微小斷痕的邊緣信息,去除不屬于邊緣的點(diǎn)狀噪聲。其主要步驟包括膨脹與腐蝕,在這之后通過(guò)尋找所得圖像中的輪廓,計(jì)算每條輪廓的長(zhǎng)短并去除較短的輪廓,即可得到效果良好的邊緣特征圖像,如圖8所示。

圖7 背景減除處理結(jié)果Fig.7 Result of background removal

圖8 優(yōu)化后的邊緣特征圖像Fig.8 Optimized edge feature image

通過(guò)以上步驟,可以得到較為清晰準(zhǔn)確的只含有艦載機(jī)目標(biāo)邊緣信息的圖像。

3.3 艦載機(jī)線框模板的建立

要實(shí)現(xiàn)艦載機(jī)線框模板與艦載機(jī)邊緣信息的匹配過(guò)程,除了要得到清晰完整的邊緣信息外,還需要建立恰當(dāng)?shù)木€框模板。為了建立用于匹配的線框模板,需要獲取艦載機(jī)模型的幾何信息,本文通過(guò)對(duì)艦載機(jī)模型進(jìn)行了掃描,獲取包含艦載機(jī)模型幾何信息的STL 文件。艦載機(jī)模型的掃描結(jié)果如圖9 所示。

圖9 艦載機(jī)模型掃描結(jié)果Fig.9 Shipborne aircraft model scan results

用三維軟件solidworks 打開(kāi)掃描得到的STL 文件,選取具有代表性的關(guān)鍵點(diǎn)與關(guān)鍵邊即可構(gòu)建艦載機(jī)模型的線框模板。在選取的過(guò)程中,需要按照“邊緣提取最可能出現(xiàn)的邊”作為首要原則,并注意:1)優(yōu)先選擇外圍輪廓;2)盡量選擇棱角邊,盡量避開(kāi)圓弧面;3)盡量保證邊的數(shù)量分布均勻。在考慮了以上幾點(diǎn)后,我們選擇了機(jī)翼、尾翼和小部分機(jī)首共計(jì)47 個(gè)關(guān)鍵點(diǎn)與40 條關(guān)鍵邊建立起線框模板,如圖10~12 所示。

圖10 線框模板Z 軸方向的投影Fig.10 Z-axis projection of wireframe template

圖11 線框模板X(qián) 軸方向的投影Fig.11 X-axis projection of wireframe template

3.4 基于鳥(niǎo)瞰算法的多目標(biāo)去重與初始解估計(jì)

本文提出的位姿測(cè)量算法支持多相機(jī)系統(tǒng),且不涉及圖像拼接,那么就必然存在著由于視野重合所帶來(lái)的目標(biāo)重復(fù)問(wèn)題,即存在不同的相機(jī)拍攝到同一目標(biāo),而基于深度學(xué)習(xí)的目標(biāo)分割將其分割為兩個(gè)不同目標(biāo)的情況。為解決這個(gè)問(wèn)題,本文提出了一種基于鳥(niǎo)瞰算法的艦載機(jī)目標(biāo)初始解估計(jì),不僅解決了艦載機(jī)目標(biāo)重復(fù)的問(wèn)題,還為后續(xù)匹配算法提供了一個(gè)初始解,大大提高了算法的實(shí)時(shí)性。

圖12 線框模板Y 軸方向的投影Fig.12 Y-axis projection of wireframe template

假設(shè)所有相機(jī)均經(jīng)過(guò)內(nèi)外參標(biāo)定,則任意一點(diǎn)的世界坐標(biāo)與像素坐標(biāo)之間滿足式(4)的關(guān)系:

式中:(Xw,Yw,Zw) 為世界坐標(biāo);(u,v) 為像素坐標(biāo);M1為內(nèi)參矩陣;M2為外參矩陣。相機(jī)的內(nèi)外參數(shù)由相機(jī)標(biāo)定可以獲取,因此式(4)中含有3 個(gè)等式方程4 個(gè)未知參數(shù)。由于缺少深度信息Zc,特征點(diǎn)的像素坐標(biāo)無(wú)法求解出特征點(diǎn)的世界坐標(biāo)。但對(duì)于艦載機(jī)來(lái)說(shuō),其機(jī)翼、部分尾翼、機(jī)身、頭部基本都處于一個(gè)平面中,只有部分尾翼不在該平面上。基于此,不妨假設(shè)飛機(jī)為一平面圖形(在本項(xiàng)目中高度為0.034 m 的平面圖形),其世界坐標(biāo)中的高度信息均在某一固定高度,由此便可以將式(4)變?yōu)楹? 個(gè)等式方程3 個(gè)未知參數(shù)的方程組,從而由任意特征點(diǎn)的像素坐標(biāo)均可以求解出對(duì)應(yīng)的世界坐標(biāo)。

對(duì)于3.2 節(jié)中得到的所有Canny 邊緣特征點(diǎn),根據(jù)其像素坐標(biāo)即可求解出對(duì)應(yīng)的世界坐標(biāo)。對(duì)所有求解得到的世界坐標(biāo)進(jìn)行統(tǒng)計(jì),獲取橫、縱坐標(biāo)的均值,即可將其作為艦載機(jī)位置的初始解;將艦載機(jī)的姿態(tài)角設(shè)為0°,即可得到艦載機(jī)位置和姿態(tài)的初始解,從而加快整個(gè)位姿解算算法的實(shí)時(shí)性。同時(shí),將初始位置距離低于某一閾值的兩個(gè)艦載機(jī)判定為同一架艦載機(jī),從而達(dá)到多目標(biāo)去重的效果。

3.5 匹配度算法的選擇與優(yōu)化

模板匹配使用的搜索方法為遍歷法,遍歷法也叫蠻力法,是指在一定范圍內(nèi)計(jì)算每一個(gè)位姿的重合程度,尋找其中最大重合度的位姿作為當(dāng)前的位姿;但遍歷法的時(shí)間效率較差,實(shí)時(shí)性與精度成反比,為了滿足實(shí)時(shí)性要求,可以做兩方面優(yōu)化:1)可以將該過(guò)程移植到GPU 進(jìn)行運(yùn)算,大大加速計(jì)算過(guò)程(GPU 在計(jì)算大規(guī)模重復(fù)的運(yùn)算時(shí)具有巨大優(yōu)勢(shì),例如在本項(xiàng)目的遍歷過(guò)程中,同價(jià)位的GPU 計(jì)算速度是CPU 的30~50 倍);2)可以優(yōu)化重合度的計(jì)算。在文獻(xiàn)[23]中采用了與本文相似的方法,對(duì)艦載機(jī)建立其完全的模型,并在計(jì)算某個(gè)位姿下的線框投影圖時(shí),考慮該模型的直角邊界、弧面邊界以及遮擋關(guān)系,得到準(zhǔn)確的投影圖。該種方法雖然得到的模板圖像更加準(zhǔn)確,但是在計(jì)算模型的空間變換以及遮擋關(guān)系時(shí)會(huì)消耗掉大量的時(shí)間。這種方式在遍歷每個(gè)姿態(tài)時(shí)對(duì)完整的邊緣模擬需要巨大的計(jì)算過(guò)程,包括空間曲線的計(jì)算、各個(gè)面的相互覆蓋等,其在i7-2600 上的速度僅為500 次/秒;假設(shè)遍歷步長(zhǎng)為x方向每次0.01 m,y方向每次0.01 m,航向角方向每次1°,遍歷范圍為0.5 m×0.5 m×360°,則其計(jì)算速度為0.000556 f/s,完全不可能滿足實(shí)時(shí)性要求;所以,本文采用線框模型關(guān)鍵邊的算法。先將三維線框模型投影到二維像素平面,得到47 個(gè)關(guān)鍵點(diǎn)與40 條關(guān)鍵邊在二維像素平面上的投影。再計(jì)算3.2 節(jié)得到的Canny 邊緣特征點(diǎn)到關(guān)鍵邊的距離,若距離小于指定閾值則認(rèn)為該特征點(diǎn)位于關(guān)鍵邊上,也就是該特征點(diǎn)位于線框模板上,計(jì)算在線框模板上的Canny 邊緣特征點(diǎn)數(shù)量與Canny 邊緣特征點(diǎn)總量的比值作為重合度。其中點(diǎn)到線段的距離計(jì)算分為2 種情況:

1)點(diǎn)投影在線段上;

2)點(diǎn)投影不在線段上。

對(duì)此,需要分2 種情況處理:1)計(jì)算值為點(diǎn)到直線的距離;2) 點(diǎn)到線段兩端點(diǎn)較小的一段的值。這種計(jì)算重合度的方法其時(shí)間代價(jià)幾乎完全取決于計(jì)算點(diǎn)到線段距離的算法性能,且利用GPU 編譯器其對(duì)算法執(zhí)行步驟的優(yōu)化較為薄弱,這里需要額外考慮點(diǎn)到線段距離計(jì)算方法的代價(jià)問(wèn)題。表1 列舉了3 種算法并進(jìn)行了比較。

表1 點(diǎn)到線段的算法性能比較Table 1 Point-to-line distance algorithm performance comparison

實(shí)際測(cè)試中發(fā)現(xiàn)海倫公式法時(shí)間代價(jià)最小,固采用海倫公式法作為最終方法。

3.6 算法并行化及GPU 加速

經(jīng)過(guò)優(yōu)化的匹配算法對(duì)于單個(gè)相機(jī)、單個(gè)目標(biāo)已經(jīng)有了較好的識(shí)別效果,在參數(shù)選擇得當(dāng)?shù)那闆r下,其計(jì)算效率可達(dá)0.8~1.2 Hz/s。但對(duì)于本文中的多相機(jī)、多艦載機(jī)目標(biāo)系統(tǒng),隨著相機(jī)數(shù)量與目標(biāo)數(shù)量的增加,深度學(xué)習(xí)與模板匹配的時(shí)間消耗也會(huì)成倍增加;為了滿足實(shí)時(shí)性要求,基于CUDA的GPU 加速必不可少。GPU 的架構(gòu)與CPU 采用了不同的設(shè)計(jì)思路,前者使用較多的計(jì)算單元和較精簡(jiǎn)的指令集,而后者則采用較少的計(jì)算單元和較為復(fù)雜的指令集,這使得GPU 相對(duì)與CPU在大規(guī)模、不具有復(fù)雜結(jié)構(gòu)的線程處理上具有極大的優(yōu)勢(shì)[24],而這種情況正適用于模板匹配算法。

基于3.5 節(jié)可以獲得艦載機(jī)的初始位姿解,由這個(gè)初始解出發(fā),遍歷一定范圍內(nèi)的所有可能解,分別計(jì)算每個(gè)位姿下的線框模板與Canny 邊緣特征點(diǎn)集的重合度,最大重合度對(duì)應(yīng)的線框模板的位姿即為艦載機(jī)位姿的最優(yōu)解。

在遍歷的過(guò)程中,所需要考慮的維度一共有3 個(gè):1)代表位置信息的x軸坐標(biāo);2) 代表位置信息的y軸坐標(biāo);3)代表姿態(tài)信息的航向角 α。正是由于3.2 節(jié)獲取得到了一個(gè)初始解,而姿態(tài)信息有一個(gè)較小的遍歷范圍(即0°~360°),才使得我們能夠在有限的時(shí)間內(nèi)計(jì)算所有可能解的重合度并找出其中最優(yōu)的結(jié)果。由此可以將線程組織成32 個(gè)為一組的線程束,充分利用每個(gè)CUDA大核的常量?jī)?nèi)存和高速緩存(其存取速度大大高于讀取GPU 全局內(nèi)存的速度),來(lái)加速運(yùn)算過(guò)程。于此同時(shí),用常量?jī)?nèi)存存儲(chǔ)艦載機(jī)線框模板,即在整個(gè)程序開(kāi)始時(shí)將線框模板數(shù)據(jù)從主機(jī)內(nèi)存通過(guò)GPU 內(nèi)存再到常量?jī)?nèi)存拷貝一次,之后處理其他幀的時(shí)候就不需要從主機(jī)內(nèi)存讀取模板信息;并用高速緩存存儲(chǔ)Canny 邊緣特征圖像的特征點(diǎn)信息,即每幀圖像的特征點(diǎn)從主機(jī)內(nèi)存拷貝到GPU 內(nèi)存,再由GPU 內(nèi)存同步發(fā)送給所有大核的高速緩存,這樣在每個(gè)線程束讀取特征點(diǎn)信息時(shí),就大幅度減少了資源沖突的可能。

4 算法驗(yàn)證與性能測(cè)試

4.1 硬件環(huán)境搭建與算法測(cè)試軟件編寫(xiě)

4.1.1 硬件環(huán)境搭建

根據(jù)上文中的算法需要,搭建了相應(yīng)的實(shí)物環(huán)境,使用的甲板與艦載機(jī)模型均與實(shí)物成1∶70比例,甲板由鋼板和圖層構(gòu)成,如圖13 所示(因保密協(xié)議要求,此處只給出整套設(shè)備的部分圖像):艦載機(jī)模型采用的是殲-12 模型,模型包含黃色與灰色2 種,其幾何參數(shù)完全一致。其中黃色艦載機(jī)模型內(nèi)置了動(dòng)力系統(tǒng),用來(lái)實(shí)現(xiàn)模擬運(yùn)動(dòng)中的艦載機(jī)位姿檢測(cè)。

圖13 硬件實(shí)驗(yàn)環(huán)境Fig.13 Hardware environment

搭建的硬件環(huán)境中共有7 臺(tái)相機(jī),其中5 臺(tái)側(cè)方位相機(jī)用于對(duì)艦載機(jī)目標(biāo)進(jìn)行位姿測(cè)量,另外2 臺(tái)相機(jī)位于整個(gè)甲板正上方豎直向下,用于對(duì)5 臺(tái)側(cè)方位相機(jī)進(jìn)行外參標(biāo)定。上方相機(jī)已完成視野拼接、焦距測(cè)定、甲板距離測(cè)定等內(nèi)容。這樣得到上方相機(jī)的像素坐標(biāo)即可求解其在甲板上的世界坐標(biāo)。

相機(jī)的內(nèi)參標(biāo)定采用經(jīng)典的張正友相機(jī)標(biāo)定方法,其外參標(biāo)定采用棋盤(pán)格與PNP 解算進(jìn)行標(biāo)定[25-26],對(duì)于棋盤(pán)格上的任意角點(diǎn),通過(guò)上方相機(jī)均可得到其像素坐標(biāo)對(duì)應(yīng)的世界坐標(biāo),同時(shí)可以獲取對(duì)應(yīng)角點(diǎn)在側(cè)方相機(jī)像素平面的像素坐標(biāo)。對(duì)側(cè)方位相機(jī)獲取的像素坐標(biāo)與世界坐標(biāo)點(diǎn)對(duì)進(jìn)行PNP 解算即可得到側(cè)方相機(jī)的外參矩陣。

4.1.2 算法測(cè)試軟件編寫(xiě)

根據(jù)算法測(cè)試需求,基于QT 開(kāi)發(fā)了相應(yīng)的測(cè)試軟件,軟件功能主要包括:

1)相機(jī)視野實(shí)時(shí)檢測(cè);

2)相機(jī)內(nèi)外參標(biāo)定;

3)實(shí)時(shí)Canny 邊緣提取結(jié)果顯示;

4)艦載機(jī)位姿數(shù)據(jù)顯示;

5)艦載機(jī)位姿圖像化顯示。

4.2 算法性能測(cè)試

為驗(yàn)證算法的性能,對(duì)算法的魯棒性、實(shí)用性、實(shí)時(shí)性以及精度進(jìn)行相應(yīng)的測(cè)試。

4.2.1 魯棒性測(cè)試

光照變化以及多艦載機(jī)目標(biāo)之間分割范圍出現(xiàn)重疊是影響艦載機(jī)位姿解算結(jié)果的主要因素,因此分別對(duì)以上兩個(gè)因素進(jìn)行了測(cè)試。

1)光照因素

分別在清晨、正午、傍晚無(wú)燈光、傍晚有燈光4 種情況下對(duì)艦載機(jī)位姿測(cè)量結(jié)果進(jìn)行了測(cè)試,其結(jié)果如圖14 所示。

圖14 光照因素測(cè)試Fig.14 Light factor test

2)多艦載機(jī)目標(biāo)分割范圍重疊

在存在多個(gè)目標(biāo)的情形中,極有可能出現(xiàn)分割范圍重疊,從而導(dǎo)致一個(gè)目標(biāo)的分割結(jié)果中出現(xiàn)其他目標(biāo)的邊緣信息,使得一般算法位姿求取十分困難。對(duì)存在互相遮擋的情形進(jìn)行了多次測(cè)試,其測(cè)試結(jié)果如圖15 所示。對(duì)測(cè)試結(jié)果進(jìn)行統(tǒng)計(jì),得到結(jié)果如表2 所示。

圖15 多艦載機(jī)情形測(cè)試Fig.15 Multi-shipborne aircraft situation test

表2 艦載機(jī)魯棒性測(cè)試Table 2 Robustness test of shipborne aircraft

由測(cè)試結(jié)果可以看出,對(duì)于光照變化以及多個(gè)艦載機(jī)目標(biāo)分割范圍重疊的情形,基于該算法都能得到準(zhǔn)確的位姿測(cè)量結(jié)果。因?yàn)椋惴ǖ聂敯粜暂^高。

4.2.2 實(shí)用性測(cè)試

4.2.1 節(jié)所進(jìn)行的算法測(cè)試是在室內(nèi)進(jìn)行的,無(wú)外界強(qiáng)烈陽(yáng)光的影響,并且對(duì)應(yīng)的艦載機(jī)模型都是1∶72 的模型。而在實(shí)際的應(yīng)用中,一方面,應(yīng)用場(chǎng)景是在海上,本文提出的艦載機(jī)位姿解算算法必然會(huì)受到室外光照的影響;另一方面,實(shí)際應(yīng)用場(chǎng)景中對(duì)應(yīng)的待測(cè)目標(biāo)是用于作戰(zhàn)的艦載機(jī),其大小并不是1∶72 的艦載機(jī)模型的大小。因此,本文提出的算法要想具有實(shí)用性,能應(yīng)用到實(shí)際的場(chǎng)景中,一方面必須得適應(yīng)室外的陽(yáng)光,另一方面還必須具有能適應(yīng)不同大小艦載機(jī)模型的能力。為了驗(yàn)證本文提出的算法具有實(shí)用性,我們將實(shí)驗(yàn)環(huán)境換到具有強(qiáng)烈陽(yáng)光的室外,并將艦載機(jī)模型換為1∶14 的殲-12 模型,得到測(cè)試結(jié)果如圖16 所示。

圖16 實(shí)用性測(cè)試結(jié)果Fig.16 Usability test results

由測(cè)試結(jié)果可看出,本文提出的算法同樣適用于室外環(huán)境且具有不同尺寸的待測(cè)目標(biāo),具有較好的實(shí)用性。

4.2.3 精度測(cè)試

對(duì)于精度測(cè)試,關(guān)鍵在于如何獲取用于參考的艦載機(jī)準(zhǔn)確位姿信息。而在搭建的艦載機(jī)甲板上恰好有許多可供參考的規(guī)定停機(jī)位,如圖17所示。

圖17 甲板指定位姿的停機(jī)位Fig.17 Decks with designated positions

圖17 中的十字線位置即為規(guī)定停機(jī)位,其較長(zhǎng)的線段一端和對(duì)稱(chēng)的線段的兩端恰好對(duì)應(yīng)艦載機(jī)機(jī)身上的輪胎位置。手動(dòng)將艦載機(jī)放置于停機(jī)位上,而該停機(jī)位的位置、航向角都已規(guī)定好,在忽略微小的手動(dòng)誤差后,只需通過(guò)等比縮放即可得到該位置艦載機(jī)的參考位姿。通過(guò)比較算法測(cè)試軟件所得到的測(cè)量位姿與參考位姿,即可得到艦載機(jī)的位姿測(cè)量算法的精度。進(jìn)行10 次實(shí)驗(yàn),得到結(jié)果如表3 所示。

表3 算法精度測(cè)試表Table 3 Algorithmic accuracy test table

由測(cè)量可以看出,在10 次的測(cè)量結(jié)果中,位置信息最大絕對(duì)偏差不超過(guò)0.0079 m,航向角絕對(duì)值偏差不超過(guò)0.612°,因此該算法具有較高的精度。

4.2.4 實(shí)時(shí)性測(cè)試

采用幀率來(lái)描述算法的實(shí)時(shí)性,即每秒可以返回檢測(cè)到的艦載機(jī)位姿數(shù)據(jù)次數(shù)。現(xiàn)準(zhǔn)備20 張存在2~3 個(gè)艦載機(jī)目標(biāo)的圖片,并利用上文提到的算法對(duì)圖片中的艦載機(jī)模型進(jìn)行位姿檢測(cè),其統(tǒng)計(jì)數(shù)據(jù)如圖18 所示。由測(cè)量結(jié)果可知,算法的實(shí)時(shí)性較高,其速度可達(dá)到8 f/s。

圖18 算法實(shí)時(shí)性測(cè)量結(jié)果Fig.18 Algorithm real-time measurement results

5 結(jié)束語(yǔ)

本文通過(guò)結(jié)合深度學(xué)習(xí)與模板匹配兩種方法,提出了一種基于線框邊緣匹配的艦載機(jī)位姿實(shí)時(shí)檢測(cè)算法,引入了基于YOLO-V4 網(wǎng)絡(luò)以及Canny 邊緣提取算法的多目標(biāo)識(shí)別與分割算法、GPU 加速算法、線框匹配算法,并通過(guò)鳥(niǎo)瞰算法、基于距離代價(jià)的重合度算法等方法優(yōu)化該匹配算法,使該算法既保留了模板匹配耐噪聲、精度高的優(yōu)點(diǎn),又克服了其計(jì)算量大、難以應(yīng)用于實(shí)時(shí)系統(tǒng)的缺點(diǎn)。算法驗(yàn)證與性能測(cè)試結(jié)果表明,該算法具有較好的魯棒性、實(shí)時(shí)性、實(shí)用性以及精度,該算法識(shí)別率在95%以上,位置精度在8 mm以內(nèi),姿態(tài)精度在0.7°以內(nèi),速度可達(dá)8 Hz。

猜你喜歡
模型
一半模型
一種去中心化的域名服務(wù)本地化模型
適用于BDS-3 PPP的隨機(jī)模型
提煉模型 突破難點(diǎn)
函數(shù)模型及應(yīng)用
p150Glued在帕金森病模型中的表達(dá)及分布
函數(shù)模型及應(yīng)用
重要模型『一線三等角』
重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
3D打印中的模型分割與打包
主站蜘蛛池模板: 亚洲福利一区二区三区| 国产福利在线免费| 国产在线精品人成导航| 亚洲色图欧美在线| 8090成人午夜精品| 国产亚洲欧美在线专区| 好紧好深好大乳无码中文字幕| 亚洲色图欧美在线| 欧美a网站| 露脸真实国语乱在线观看| 无码aaa视频| 精品少妇人妻av无码久久| 啪啪免费视频一区二区| 91在线一9|永久视频在线| 99爱在线| 国产成人啪视频一区二区三区 | 国产欧美视频一区二区三区| 日本免费福利视频| 国产真实自在自线免费精品| 久久婷婷五月综合色一区二区| 啊嗯不日本网站| 国语少妇高潮| 日韩在线视频网站| 波多野结衣亚洲一区| 精品视频在线观看你懂的一区| 99久久国产精品无码| 亚洲中文在线视频| 欧美日韩综合网| 国产欧美日韩91| 91精品专区国产盗摄| 制服丝袜亚洲| 青青青伊人色综合久久| 国产精品久久久久无码网站| 中文字幕亚洲无线码一区女同| 亚洲人在线| 99在线视频精品| 中文字幕66页| 亚洲一区网站| 99热这里只有免费国产精品| 欧美特黄一级大黄录像| 国产中文一区a级毛片视频 | 日本不卡免费高清视频| 国产午夜在线观看视频| 欧美成人aⅴ| 色综合激情网| 日韩欧美国产精品| 国产国产人成免费视频77777 | 久久精品亚洲中文字幕乱码| 亚洲高清在线天堂精品| 乱人伦视频中文字幕在线| 91成人在线观看| 亚洲精品成人福利在线电影| 国产综合网站| 91娇喘视频| 国产精品亚洲专区一区| 欧美国产三级| 亚洲黄色视频在线观看一区| 一级香蕉人体视频| 欧美狠狠干| 亚洲日韩精品伊甸| 亚洲视频影院| 久久综合色天堂av| 国产偷国产偷在线高清| 欧洲免费精品视频在线| 少妇精品网站| 福利在线一区| 久久综合九九亚洲一区| 国产精品久久自在自2021| 九色视频最新网址 | 国产成人一二三| 亚洲国产精品成人久久综合影院| 精久久久久无码区中文字幕| 免费aa毛片| 亚洲av无码人妻| 91网址在线播放| 玖玖精品在线| 国产成人禁片在线观看| 国产成人在线无码免费视频| 中日无码在线观看| 国产福利小视频在线播放观看| 国产高清色视频免费看的网址| 精品国产美女福到在线直播|