摘" 要: 為解決無人機在自動多目標靶定位領域計算資源有限、實時性要求高、定位準確率有限等問題,提出一種基于FastestDet的多目標靶定位方法。首先,通過輕量級目標檢測算法(FastestDet算法)實現(xiàn)目標靶檢測;其次,對所獲得的目標靶圖像進行透視變換,并截取僅含目標靶的透視變換圖像;再對圖像進行去噪、灰度化等處理,通過輪廓檢測獲得目標靶心圓輪廓后,計算透視變換后的靶心坐標;最后,通過逆變換計算原采集圖像實際目標靶心坐標。實驗結果表明:所提方法采用的目標檢測算法網絡參數(shù)最小,單張圖像處理時間最短,占用計算資源少,實時性高,識別準確率達到90.4%,目標靶識別準確率較高;與其他方法相比,該方法的綜合定位誤差最大可降低92.09%,定位準確率高,可行性強。
關鍵詞: 無人機; 目標靶定位; FastestDet算法; 目標檢測; 透視變換; 輪廓檢測
中圖分類號: TN820.4?34; TP271+.5" " " " " " " " " "文獻標識碼: A" " " " " " " " 文章編號: 1004?373X(2024)16?0097?06
Method of multi?target precision positioning based on FastestDet
YI Lei, YI Yawen
(School of Electrical amp; Electronic Engineering, Huazhong University of Science and Technology, Wuhan 430074, China)
Abstract: In order to solve the problems of limited computing resources, high real?time requirements, and limited positioning accuracy of UAVs in the field of automatic multi?target precision positioning, a multi?target precision positioning method based on FastestDet is proposed. The target detection is realized by means of the lightweight target detection algorithm?(FastestDet algorithm). The perspective transformation is conducted on the obtained target image and the perspective transformation image containing only the target image is captured. The denoising, grayscale processing, etc. are performed on the image to obtain the target center circle contour by means of the contour detection, and calculate the target center coordinates after perspective transformation. The actual target center coordinates of the original captured image are calculated by means of the inverse transformation. The experimental results show that the target detection algorithm used by the proposed method has the smallest network parameter, the shortest single image processing time, less computing resources, high real?time performance, and a recognition accuracy of 90.4%. The target recognition accuracy is relatively high. In comparison with other methods, this method can reduce the maximum error of comprehensive positioning by 92.09%, and has high positioning accuracy and strong feasibility.
Keywords: unmanned aerial vehicles; target precision positioning; FastestDet algorithm; target detection; perspective transformation; contour detection
0" 引" 言
無人機具有快速響應以及精確打擊等優(yōu)點,在軍事等領域的相關技術已成為研究熱點。其中,靶標識別技術是軍事訓練中一種必不可少的技術,可以通過其進行打靶訓練、監(jiān)控邊境安全、搜尋救援目標等任務,為人類提供更安全、高效的服務。目前,靶標識別技術領域已有大量研究。
當前研究主要包括基于激波技術[1?3]、紅外熱成像技術[4?5]以及計算機視覺技術[6?8]的靶標識別。其中,激波技術與紅外熱成像技術較為復雜,常用于夜間或天氣條件惡劣的情況,且成本較高;計算機視覺技術通過使用計算機算法,如圖像處理、機器學習等獲取特定信息來實現(xiàn)靶標的識別,具有成本低、高效、實時性強等特點,是當前的研究熱點。文獻[9]中使用樹莓派結合圖像識別技術實現(xiàn)智能靶標識別,獲得了較為精確的靶標識別效果,但是傳統(tǒng)圖像處理方法無法實時跟蹤靶標?;诖?,文獻[10]中設計一個基于YOLOv5n的目標檢測算法,實現(xiàn)了靶面目標檢測及跟蹤,進而實現(xiàn)了具有自動追蹤靶標功能的精確靶標識別;同時其采用改進霍夫圓檢測方法來確定靶環(huán),獲得了較為準確的靶環(huán)。但是該方法對噪聲較為敏感,且實際圖像中靶標形狀常常不為規(guī)則圓形。上述文獻研究對象均為固定單目標靶,未考慮實際運用中存在多種目標靶的情況,以及在無人機行進過程中環(huán)境復雜導致定位難度較大的問題。
針對無人機硬件處理單元資源緊缺的問題,以及其對實時性的高要求,本文提出一種基于FastestDet的多目標靶定位方法。首先,通過輕量級目標檢測算法(FastestDet算法)實現(xiàn)目標靶檢測;獲得目標靶坐標后對其進行透視變換,并截取僅含目標靶的透視變換圖像;進而對圖像進行去噪、灰度化等處理和輪廓檢測,獲得滿足條件的目標靶心圓輪廓,計算透視變換后的靶心坐標;最終,通過逆變換計算在原圖像中的實際靶心坐標。該多目標靶定位算法實現(xiàn)了對靶心坐標的精準求解,在節(jié)省資源的同時提升了定位效率,具有高效性、實時性及較好的魯棒性。
1" 多目標靶定位技術
1.1" FastestDet算法
常見的目標檢測算法如YOLO系列 [11]算法檢測精度高,但是網絡結構復雜,模型參數(shù)量大,占用大量計算資源;且運行時間長,難以滿足復雜環(huán)境中的無人機運行實時性要求。基于上述問題,本文引入FastestDet輕量級目標檢測算法[12],實現(xiàn)對目標靶的識別。該算法針對無人機通常使用的計算資源緊缺的ARM平臺進行設計,在有效降低網絡參數(shù)大小與運行時間的同時,保證了較高的目標靶檢測精度。
FastestDet算法對原YOLO網絡進行優(yōu)化,模型結構如圖1所示。
具體而言,F(xiàn)astestDet算法采用5×5分組卷積并行網絡結構,融合不同感受野特征,通過單輕量化檢測頭自適應地對不同尺寸物體進行檢測。同時,該算法采用無錨算法,直接回歸目標的位置與尺寸,有利于簡化模型處理。除此之外,該算法采用跨網格多候選目標的方法,將圖像中心點所在網格當作候選目標的同時計入相鄰三個網格,從而增加正樣本候選框數(shù)量。在模型訓練過程中,該算法采用動態(tài)正負樣本分配方法,具有自適應動態(tài)效果。為了降低數(shù)據增強復雜度,保證模型輕量級特性,其也可以采用簡單的數(shù)據增強方法,如隨機平移與縮放等。
針對本文的多目標靶檢測,F(xiàn)astestDet使用分組并行的卷積神經網絡(Convolutional Neural Network, CNN)提取目標靶數(shù)據集中各樣本特征,并據此使用分類方法支持向量機(Support Vector Machine, SVM)分類不同靶標。關鍵計算公式如下。
卷積層運算公式為:
[Yij=m=0P-1n=0Q-1k=1K-1X(iL+m),(jL+n),k?Am,n,k+B] (1)
式中:[Yij]表示輸出特征圖坐標為(i,j)的像素值;K表示輸入特征圖的通道數(shù);P與Q表示卷積核的高與寬;[X(iL+m),(jL+n),k]為輸入特征圖處于((iL+m),(jL+n))坐標的第k個通道對應的像素值;L代表卷積步長;[Am,n,k]為坐標為(m,n)的第k個通道對應的像素值;B表示偏置值。
支持向量機對不同靶標進行分類的公式為:
[f(a)=sgni=1NωiλiM(a,ai)+bias] (2)
式中:[f(a)]表示輸入目標靶圖像樣本a的預測標簽;[ωi]表示拉格朗日乘子;[λi]表示支持向量乘子;[M(a,ai)]表示核函數(shù)運算;bias為偏置值。
1.2" 透視變換
本文所采集圖像中的目標靶非正投影,難以直接識別靶心坐標,因此引入透視變換對采集圖像中的目標靶圖像進行校正,以獲得目標靶正投影圖像,便于后續(xù)處理。透視變換[13]基本原理如圖2所示。
對目標靶圖像變換的步驟如下。
確定變換前后的4個對應點:選擇變換前采集圖像中通過目標檢測所得目標靶所處位置框4個頂點[(x1,y1)]、[(x2,y2)]、[(x3,y3)]、[(x4,y4)],期望變換平面中的4個頂點[(x′1,y′1)]、[(x′2,y′2)]、[(x′3,y′3)]、[(x′4,y′4)]。
假設透視變換矩陣為M,則M可表示為:
[M=a11a12a13a21a22a23a31a32a33] (3)
M計算公式為:
[x′1=a11x1+a21y1+a31a13x1+a23y1+1y′1=a12x1+a22y1+a32a13x1+a23y1+1," "x′2=a11x2+a21y2+a31a13x2+a23y2+1y′2=a12x2+a22y2+a32a13x2+a23y2+1x′3=a11x3+a21y3+a31a13x3+a23y3+1y′3=a12x3+a22y3+a32a13x3+a23y3+1," "x′4=a11x4+a21y4+a31a13x4+a23y4+1y′4=a12x4+a22y4+a32a13x4+a23y4+1] (4)
式中:[a33]為1;其余8個變量為未知變量。
計算透視變換后像素點坐標:假設原始圖像像素坐標為(u,v,w),變換后對應像素點坐標為(x,y,z)。透視變換公式為:
[xyz=uvw?M=uvw?a11a12a13a21a22a23a31a32a33] (5)
1.3" 輪廓檢測
經過透視變換后的目標靶圖像噪點較多,同時檢測實時性要求高,因此本文引入輪廓檢測技術,保證精確提取目標輪廓的同時縮短運行時間。輪廓檢測主要步驟如下。
首先,載入目標靶圖像并進行高斯濾波與灰度化后,使用THRESH_BINARY方法進行二值化處理:
[dst(x,y)=maxval," "src(x,y)gt;thresh0," " " " " " " otherwise] (6)
式中:[dst(x,y)]為二值化后圖像像素點坐標;[src(x,y)]為原圖像像素點坐標;maxval為二值化最大閾值;thresh為二值化最小閾值。
其次,基于上述二值化圖像,使用RETR_CCOMP算法多層次分割二值化圖像,快速檢測其中外部及內部空洞輪廓。最終,根據特定面積條件篩選輪廓,并據此提取目標靶中心最內環(huán)輪廓。
[100lt;arealt;6 000100lt;center_xlt;30030lt;center_ylt;360N′=1] (7)
式中:area為封閉輪廓所圍的面積;center_x為目標靶心橫坐標;center_y為目標靶心縱坐標;[N′]為目標輪廓個數(shù)。
2" 基于FastestDet的多目標靶定位方法
針對無人機運行環(huán)境復雜導致目標靶識別困難、實際環(huán)境中目標靶類型多樣、硬件平臺常使用樹莓派等計算資源有限的ARM平臺,以及無人機實時性要求較高的問題,本文提出一種基于FastestDet的多目標靶定位方法,該方法的具體實現(xiàn)步驟如下。
1) 采集圖像并利用輕量級目標檢測算法(FastestDet)來確定目標靶種類,定位目標靶所在方位,依據初步定位方位在原采集圖像中框出目標靶。
2) 將原圖像中目標靶透視變換成大小為400×400的校正圖像,并截取該校正目標靶圖像。
3) 對校正圖像進行高斯濾波、灰度化、二值化等傳統(tǒng)圖像處理,此時二值化處理根據所識別的目標靶種類自適應設置二值化閾值。
4) 對二值化圖像進行輪廓檢測,根據特定條件提取目標靶內環(huán)輪廓,進而求解變換后的目標靶心坐標。
5) 根據透視變換矩陣對初步求解靶心坐標進行逆變換,最終獲取原采集圖像中的目標靶靶心坐標。
本文方法整體流程如圖3所示。
3" 實驗與結果分析
3.1" 實驗平臺
目前在靶標識別領域并無合適公開數(shù)據集,因此本實驗通過實地采集構建靶標數(shù)據集,包括紅色、綠色、紫色三種靶標各80張圖像,共240張圖像。使用軟件Labelimg對該數(shù)據集打標簽,每一張圖像對應生成一個標簽坐標文件。整理上述圖像與對應坐標文件,構成實際實驗中使用的數(shù)據集。該數(shù)據集按訓練集∶驗證集∶測試集=8∶1∶1進行劃分。
本實驗使用英特爾 i7?8850H CPU 和NVIDIA Quadro P1000 GPU進行模型訓練,并使用CUDA11.2對GPU加速。目標靶定位硬件平臺為樹莓派4B ARM Cortex?A72 1.5 GHz CPU。模型訓練所用軟件平臺為基于Python 3.9的PyTorch框架。軟件平臺主要安裝庫及版本信息如表1所示。
3.2" 模型參數(shù)設置
本實驗中FastestDet模型參數(shù)設置如表2所示。
3.3" 評價指標
在評價目標檢測模型時,評價指標為多個類別平均精度均值(mAP)[14]、運行時間與參數(shù)大小。mAP的公式為:
[mAP=1Ni=1NAPi] (8)
式中:N表示分類類別數(shù)量;AP表示某個目標類別的平均精度。
在進行靶心坐標定位時,評價指標為水平定位誤差(Horizontal Position Error, HPE)、垂直定位誤差(Vertical Position Error, VPE)以及綜合定位誤差(Position Error, PE),計算公式如下:
[HPE=xm-xa] (9)
[VPE=ym-ya] (10)
[PE=HPE2+VPE2] (11)
式中:[xm]為測量水平坐標值;[xa]為實際水平坐標值;[ym]為測量垂直坐標值;[ya]為實際垂直坐標值。
3.4" 實驗結果分析
3.4.1" 目標檢測算法分析
實驗使用FastestDet模型對訓練集進行訓練,訓練過程的損失曲線如圖4所示。由圖4可知,當?shù)螖?shù)達到200時模型開始收斂,收斂速度較快,且收斂誤差較小,表明FastestDet模型效果良好。
為了驗證FastestDet模型的優(yōu)越性,將FastestDet模型與其他相關目標檢測模型進行對比,對比結果如表3所示。
為了直觀展示不同模型對比效果,并以各評價指標的最大值為基值對各值歸一化,繪制如圖5a)所示雷達圖;為了突出FastestDet與YOLO?fastestv1.1與YOLO?fastestv2的對比,單獨繪制如圖5b)所示雷達圖。
由表3與圖5可得,與YOLOv5s與YOLOv6n相比,本文所使用的FastestDet算法雖然mAP存在一定程度降低,但仍保持較高水平,同時其運行時間與參數(shù)大小都有顯著降低。具體而言,與YOLOv5s相比,F(xiàn)astestDet運行時間降低94.2%,參數(shù)大小降低96.7%;與YOLOv6n相比,運行時間降低79.3%,參數(shù)大小降低94.4%,適用于本文無人機所用計算機資源有限的硬件平臺。與YOLO?fastest系列輕量級目標檢測算法相比,F(xiàn)astestDet算法運行時間與參數(shù)大小均有所降低,與YOLO?fastestv1.1相比,分別降低15.9%與31.4%,同時mAP提高了7.4%;與YOLO?fastestv2相比,分別降低6.0%和4.0%,同時mAP提高了3.3%。上述對比表明本文所采用的FastestDet算法有效提高了目標靶檢測實時性、輕量性以及準確性,相較其他目標檢測算法具有一定優(yōu)越性。
3.4.2" 多目標靶定位方法分析
通過目標檢測算法獲取目標靶方位后,對圖像進行透視變換并截取。以測試集中的3幅不同種類目標靶圖像為例,進行透視變換后的圖像如圖6所示。
高斯濾波、灰度化與二值化處理結果如圖7所示。
對圖像進行輪廓檢測的結果如圖8所示。
最終,得到透視變換的靶心坐標后對其進行逆變換,可獲得原采集圖像中的靶心坐標,結果如圖9所示。
為了證明本文所提方法的有效性與優(yōu)越性,嚴格控制變量,保證目標檢測算法FastestDet參數(shù)一致,使用測試集進行實驗,并對比三種不同方法對目標靶靶心定位的效果,如表4所示。
為了直觀展示不同方法的對比結果,繪制直方圖,如圖10所示。
由表4和圖10可得,本文提出的FastestDet結合輪廓檢測方法與直接使用FastestDet相比,靶心定位誤差顯著降低,水平誤差(HPE)降低93.06%,垂直定位誤差(VPE)降低77.67%,綜合定位誤差(PE)降低92.09%;與FastestDet結合霍夫圓檢測方法相比,水平誤差(HPE)均保持較低水平,垂直定位誤差(VPE)降低76.33%,綜合定位誤差(PE)降低53.63%。綜上所述,本文提出的多目標靶定位方法定位準確率高,具有一定的優(yōu)越性。
4" 結" 論
針對無人機目標靶定位領域硬件平臺計算資源有限、實時性要求高、準確率要求高等問題,本文提出一種基于FastestDet的多目標靶定位方法,主要結論如下。
1) 基于輕量級目標檢測算法(FastestDet),與其他目標檢測算法相比,在保證高準確率的情況下,網絡參數(shù)大小和單張圖像處理時間均有所降低,有效解決了硬件平臺計算資源有限的問題,同時保證了多目標靶檢測的高實時性。
2) FastestDet結合輪廓檢測方法定位目標靶心的綜合定位誤差與僅使用FastestDet相比降低92.09%,與FastestDet結合霍夫圓檢測方法相比降低53.63%,有效降低了定位誤差,提升了定位精度。
本文提出的多目標靶定位方法實時性較高,且占用計算資源小,有效保證了模型的輕量性,但是其檢測與定位的準確率仍有待提升。后續(xù)工作將致力于在保證前述優(yōu)點的同時優(yōu)化目標檢測模型結構與結合方法,進一步提升目標靶檢測與定位的準確率。
注:本文通訊作者為易磊。
參考文獻
[1] 彭曉云,索雪松,閆世杰.激波傳感器T型排列的智能檢測報靶系統(tǒng)[J].自動化技術與應用,2023,42(10):10?14.
[2] 徐靖倫.一種基于激波定位的自動報靶系統(tǒng)研制[D].青島:青島科技大學,2022.
[3] 曹冬月.基于彈丸激波的仿人形立體靶標自動報靶系統(tǒng)研究[D].哈爾濱:哈爾濱工業(yè)大學,2021.
[4] 王浩,王勁松,高奔,等.基于近紅外圖像的自動報靶方法研究[J].長春理工大學學報(自然科學版),2023,46(2):55?62.
[5] 王奇,劉廣文,王勁松.一種基于紅外圖像的彈孔識別方法[J].長春理工大學學報(自然科學版),2020,43(6):89?94.
[6] 張泉斌.基于機器視覺的自動報靶系統(tǒng)設計與關鍵技術研究[D].蘭州:蘭州大學,2020.
[7] 林木泉,陳逸凡,林千龍.基于opencv的激光打靶自動報靶系統(tǒng)設計[J].信息技術與信息化,2021(10):7?9.
[8] 李釗.基于三維機器視覺的自動報靶系統(tǒng)[D].濟南:山東大學,2023.
[9] 王會月.圖像識別技術在智能報靶中的應用與研究[D].保定:華北電力大學,2020.
[10] 韓恒.基于目標檢測的智能報靶系統(tǒng)研究與實現(xiàn)[D].揚州:揚州大學,2023.
[11] REDMON J, DIVVALA S, GIRSHICK R, et al. You only look once: unified, real?time object detection [C]// Proceedings of the 2016 IEEE Conference on Computer Vision and Pattern Recognition. [S.l.]: IEEE, 2016: 779?788.
[12] MA X. FastestDet: Ultra lightweight anchor?free real?time object detection algorithm [EB/OL]. [2023?07?19]. https://github.com/superbayes/FastestDet.
[13] 山毓俊.基于透視變換標定法的證書分揀機器人空間識別與定位系統(tǒng)設計[J].中國檢驗檢測,2023,31(6):45?47.
[14] GONG L, HUANG X, CHEN J, et al. Multiscale leapfrog structure: an efficient object detector architecture designed for unmanned aerial vehicles [J]. Engineering applications of artificial intelligence, 2024, 127(1): 107270.