本發(fā)明涉及目標(biāo)檢測,具體而言,涉及一種基于點云數(shù)據(jù)的目標(biāo)檢測方法及系統(tǒng)。
背景技術(shù):
1、隨著自動駕駛技術(shù)的不斷發(fā)展,目標(biāo)檢測技術(shù)作為確保安全行駛的重要基礎(chǔ),已經(jīng)成為自動駕駛和智能交通系統(tǒng)中的關(guān)鍵技術(shù)之一。準(zhǔn)確的目標(biāo)檢測能夠有效識別道路上的障礙物、行人以及其他交通參與者,從而提升車輛的安全性和行駛效率。目前,點云三維目標(biāo)檢測模型被廣泛應(yīng)用于自動駕駛系統(tǒng)。
2、然而,現(xiàn)有的點云三維檢測模型在處理正后向目標(biāo)時表現(xiàn)不佳,在目標(biāo)距離較遠(yuǎn)的情況下,模型往往失去了召回能力,無法準(zhǔn)確檢測遠(yuǎn)距離目標(biāo)。
3、其次,現(xiàn)有模型在對于單面目標(biāo)的標(biāo)注依賴于標(biāo)注員的主觀判斷,容易導(dǎo)致標(biāo)注的不一致性,會由于缺乏準(zhǔn)確的標(biāo)注而影響模型的學(xué)習(xí)效果。
4、此外,現(xiàn)有的lidar傳感器在識別遠(yuǎn)處的單面目標(biāo)時性能較弱,容易發(fā)生漏檢現(xiàn)象,影響系統(tǒng)的整體精度。
技術(shù)實現(xiàn)思路
1、本發(fā)明的主要目的在于提供一種基于點云數(shù)據(jù)的目標(biāo)檢測方法及系統(tǒng),以解決現(xiàn)有的點云三維檢測模型在處理正后向目標(biāo)時表現(xiàn)不佳,在目標(biāo)距離較遠(yuǎn)的情況下,失去了召回能力,無法準(zhǔn)確檢測遠(yuǎn)距離目標(biāo),在對于單面目標(biāo)的標(biāo)注依賴于標(biāo)注員的主觀判斷,容易導(dǎo)致標(biāo)注的不一致性,會由于缺乏準(zhǔn)確的標(biāo)注而影響模型的學(xué)習(xí)效果,且現(xiàn)有的lidar傳感器在識別遠(yuǎn)處的單面目標(biāo)時性能較弱,容易發(fā)生漏檢現(xiàn)象,影響系統(tǒng)的整體精度的技術(shù)問題。
2、為了實現(xiàn)上述目的,根據(jù)本發(fā)明的一個方面,提供了一種基于點云數(shù)據(jù)的目標(biāo)檢測方法,包括:
3、s1:獲取點云數(shù)據(jù),所述點云數(shù)據(jù)包括三維目標(biāo)點云數(shù)據(jù)和平面目標(biāo)點云數(shù)據(jù);
4、s2:分別構(gòu)建三維目標(biāo)點云數(shù)據(jù)檢測模型和平面目標(biāo)點云數(shù)據(jù)檢測模型;
5、s3:確定所述三維目標(biāo)點云數(shù)據(jù)檢測模型和所述平面目標(biāo)點云數(shù)據(jù)檢測模型的損失函數(shù);
6、s4:以最小化所述三維目標(biāo)點云數(shù)據(jù)檢測模型和所述平面目標(biāo)點云數(shù)據(jù)檢測模型的損失函數(shù)值為目標(biāo),通過adamw優(yōu)化器,分別對所述三維目標(biāo)點云數(shù)據(jù)檢測模型和所述平面目標(biāo)點云數(shù)據(jù)檢測模型進(jìn)行優(yōu)化;
7、s5:將所述三維目標(biāo)點云數(shù)據(jù)和所述平面目標(biāo)點云數(shù)據(jù)分別輸入至優(yōu)化后的三維目標(biāo)點云數(shù)據(jù)檢測模型和平面目標(biāo)點云數(shù)據(jù)檢測模型進(jìn)行目標(biāo)檢測,輸出三維目標(biāo)點云數(shù)據(jù)檢測結(jié)果和平面目標(biāo)點云數(shù)據(jù)檢測結(jié)果;
8、s6:分別對所述三維目標(biāo)點云數(shù)據(jù)檢測結(jié)果和所述平面目標(biāo)點云數(shù)據(jù)檢測結(jié)果進(jìn)行解碼操作,得到三維目標(biāo)列表和二維平面列表;
9、s7:將所述三維目標(biāo)列表和所述二維平面列表進(jìn)行融合,得到包括多個檢測目標(biāo)的融合目標(biāo)列表。
10、進(jìn)一步地,所述三維目標(biāo)點云數(shù)據(jù)檢測模型的損失函數(shù)包括第一置信度損失函數(shù)、第一分類損失函數(shù)以及第一定位損失函數(shù);
11、所述第一置信度損失函數(shù)具體為:
12、
13、其中,h[i,j]表示第i行第j列網(wǎng)格的第一置信度損失函數(shù),α表示正樣本比例系數(shù),t[i,j]表示第i行第j列網(wǎng)格的三維目標(biāo)點云數(shù)據(jù)熱圖數(shù)值,p[i,j]表示第i行第j列網(wǎng)格的三維目標(biāo)點云數(shù)據(jù)置信度預(yù)測值,γ表示難例調(diào)節(jié)因子;
14、所述第一分類損失函數(shù)具體為:
15、f(ptarget)=-αtarget(1-ptarget)γln(ptarget)
16、
17、其中,f()表示第一分類損失函數(shù),ptarget表示目標(biāo)類別的預(yù)測概率,αtarget表示目標(biāo)類別的第一類別比例系數(shù),total表示三維目標(biāo)點云數(shù)據(jù)的總量,quantity(c)表示第c個目標(biāo)類別的三維目標(biāo)點云數(shù)據(jù)的總量;
18、所述第一定位損失函數(shù)具體為:
19、
20、其中,l表示第一定位損失函數(shù),i(bboxp,bboxt)表示預(yù)測三維包圍框與真實三維包圍框之間的交集體積,bboxp表示預(yù)測三維包圍框,bboxt表示真實三維包圍框,u()表示預(yù)測三維包圍框與真實三維包圍框之間的并集體積。
21、進(jìn)一步地,所述平面目標(biāo)點云數(shù)據(jù)檢測模型的損失函數(shù)包括第二置信度損失函數(shù)、第二分類損失函數(shù)以及第二定位損失函數(shù):
22、所述第二置信度損失函數(shù)具體為:
23、
24、其中,h'[i,j]表示第i行第j列網(wǎng)格的第二置信度損失函數(shù),t'[i,j]表示第i行第j列網(wǎng)格的平面目標(biāo)點云數(shù)據(jù)熱圖數(shù)值,p'[i,j]表示第i行第j列網(wǎng)格的平面目標(biāo)點云數(shù)據(jù)置信度預(yù)測值;
25、所述第二分類損失函數(shù)具體為:
26、f'(ptarget)=-α′target(1-ptarget)γln(ptarget)
27、
28、其中,f()表示第二分類損失函數(shù),α′target表示目標(biāo)類別的第二類別比例系數(shù),total'表示平面目標(biāo)點云數(shù)據(jù)的總量,quantity'(c)表示第c個目標(biāo)類別的平面目標(biāo)點云數(shù)據(jù)的總量;
29、所述第二定位損失函數(shù)具體為:
30、l'=|aa|+|bb|+|cc|+|dd|
31、其中,l'表示第二定位損失函數(shù),aa表示真實平面的頂點a與預(yù)測平面的頂點a之間的距離,bb表示真實平面的頂點b與預(yù)測平面的頂點b之間的距離,cc表示真實平面的頂點c與預(yù)測平面的頂點c之間的距離,dd表示真實平面的頂點d與預(yù)測平面的頂點d之間的距離。
32、進(jìn)一步地,所述三維目標(biāo)點云數(shù)據(jù)檢測結(jié)果具體包括:三維目標(biāo)熱圖、三維目標(biāo)包圍框和三維目標(biāo)類別矩陣;
33、所述平面目標(biāo)點云數(shù)據(jù)檢測結(jié)果具體包括:平面目標(biāo)熱圖、平面目標(biāo)包圍框和平面目標(biāo)類別矩陣。
34、進(jìn)一步地,所述s6具體包括:
35、s601:通過sigmoid函數(shù),分別對所述三維目標(biāo)熱圖和所述平面目標(biāo)熱圖進(jìn)行解碼,得到三維目標(biāo)激活值和平面目標(biāo)激活值:
36、
37、其中,sigmoid()表示sigmoid函數(shù),x表示模型預(yù)測的置信度值;
38、s602:分別對三維目標(biāo)激活值大于第一預(yù)設(shè)值的三維目標(biāo)類別矩陣和三維目標(biāo)包圍框進(jìn)行解碼,得到具有多個三維目標(biāo)的三維目標(biāo)列表,所述三維目標(biāo)列表包括三維類別序號、三維目標(biāo)中心點、三維目標(biāo)尺寸以及三維目標(biāo)航向角;
39、s603:分別對平面目標(biāo)激活值大于第二預(yù)設(shè)值的平面目標(biāo)類別矩陣和平面目標(biāo)包圍框進(jìn)行解碼,得到具有多個二維平面目標(biāo)的二維平面列表,所述二維平面列表包括平面類別序號、平面目標(biāo)中心點、平面目標(biāo)尺寸以及平面目標(biāo)航向角。
40、進(jìn)一步地,所述s602中對三維目標(biāo)激活值大于第一預(yù)設(shè)值的三維目標(biāo)包圍框進(jìn)行解碼具體包括:
41、計算所述三維目標(biāo)熱圖中前景網(wǎng)格的中心點坐標(biāo):
42、xgrid=-xrange+(col+0.5)*d
43、ygrid=-yrange+(row+0.5)*d
44、zgrid=0
45、其中,xgrid表示三維目標(biāo)熱圖中前景網(wǎng)格的中心點的x軸坐標(biāo),xrange表示三維目標(biāo)熱圖中前景網(wǎng)格的x軸方向的半徑范圍,col表示三維目標(biāo)熱圖中前景網(wǎng)格的列編號,d表示三維目標(biāo)熱圖中bev空間網(wǎng)格的大小,ygrid表示三維目標(biāo)熱圖中前景網(wǎng)格的中心點的y軸坐標(biāo),yrange表示三維目標(biāo)熱圖中前景網(wǎng)格的y軸方向的半徑范圍,row表示三維目標(biāo)熱圖中前景網(wǎng)格的行編號,zgrid表示三維目標(biāo)熱圖中前景網(wǎng)格的中心點的z軸坐標(biāo);
46、根據(jù)所述三維目標(biāo)熱圖中前景網(wǎng)格的中心點坐標(biāo),計算三維目標(biāo)中心點:
47、x=xgrid+sigmoid(bboxtensor[0])*d
48、y=y(tǒng)grid+sigmoid(bboxtensor[1])*d
49、z=zgrid+sigmoid(bboxtensor[2])*d
50、其中,x表示三維目標(biāo)中心點的x軸坐標(biāo),bboxtensor[0]表示三維目標(biāo)中心點在網(wǎng)格內(nèi)的x方向偏移,y表示三維目標(biāo)中心點的y軸坐標(biāo),bboxtensor[1]表示三維目標(biāo)中心點在網(wǎng)格內(nèi)的y方向偏移,z表示三維目標(biāo)中心點的z軸坐標(biāo),bboxtensor[2]表示三維目標(biāo)中心點在網(wǎng)格內(nèi)的z方向偏移;
51、通過指數(shù)函數(shù)激活三維尺度通道,生成三維目標(biāo)尺寸:
52、l=exp(bboxtensor[3])
53、w=exp(bboxtensor[4])
54、h=exp(bboxtensor[5])
55、其中,l表示三維目標(biāo)的長度,exp()表示指數(shù)函數(shù),bboxtensor[3]表示三維目標(biāo)的長度預(yù)測值,w表示三維目標(biāo)的寬度,bboxtensor[4]表示三維目標(biāo)的寬度預(yù)測值,h表示三維目標(biāo)的高度,bboxtensor[5]表示三維目標(biāo)的高度預(yù)測值;
56、通過sigmoid函數(shù),計算三維目標(biāo)航向角:
57、
58、其中,θ表示三維目標(biāo)航向角,bboxtensor[7]表示三維目標(biāo)在當(dāng)前180°子區(qū)間內(nèi)的預(yù)測角度,sign()表示符號函數(shù),bboxtensor[6]表示三維目標(biāo)區(qū)間的預(yù)測值。
59、進(jìn)一步地,所述s603中對平面目標(biāo)激活值大于第二預(yù)設(shè)值的平面目標(biāo)包圍框進(jìn)行解碼具體包括:
60、計算所述平面目標(biāo)熱圖中前景網(wǎng)格的中心點坐標(biāo):
61、x'grid=-x'range+(col'+0.5)*d
62、y'grid=-y'range+(row'+0.5)*d
63、z'grid=0
64、其中,x'grid表示平面目標(biāo)熱圖中前景網(wǎng)格的中心點的x軸坐標(biāo),x'range表示平面目標(biāo)熱圖中前景網(wǎng)格的x軸方向的半徑范圍,col'表示平面目標(biāo)熱圖中前景網(wǎng)格的列編號,d'表示平面目標(biāo)熱圖中bev空間網(wǎng)格的大小,y'grid表示平面目標(biāo)熱圖中前景網(wǎng)格的中心點的y軸坐標(biāo),y'range表示平面目標(biāo)熱圖中前景網(wǎng)格的y軸方向的半徑范圍,row'表示平面目標(biāo)熱圖中前景網(wǎng)格的行編號,z'grid表示平面目標(biāo)熱圖中前景網(wǎng)格的中心點的z軸坐標(biāo);
65、根據(jù)所述平面目標(biāo)熱圖中前景網(wǎng)格的中心點坐標(biāo),計算平面目標(biāo)中心點:
66、x'=x'grid+sigmoid(bbox′tensor[0])*d'
67、y'=y(tǒng)'grid+sigmoid(bbox′tensor[1])*d'
68、z'=z'grid+sigmoid(bbox′tensor[2])*d'
69、其中,x'表示平面目標(biāo)中心點的x軸坐標(biāo),bbox′tensor[0]表示平面目標(biāo)中心點在網(wǎng)格內(nèi)的x方向偏移,y'表示平面目標(biāo)中心點的y軸坐標(biāo),bbox′tensor[1]表示平面目標(biāo)中心點在網(wǎng)格內(nèi)的y方向偏移,z'表示平面目標(biāo)中心點的z軸坐標(biāo),bbox′tensor[2]表示平面目標(biāo)中心點在網(wǎng)格內(nèi)的z方向偏移;
70、通過指數(shù)函數(shù)激活平面尺度通道,生成平面目標(biāo)尺寸:
71、w'=exp(bbox′tensor[4])
72、h'=exp(bbox′tensor[5])
73、其中,w'表示平面目標(biāo)的寬度,bbox′tensor[4]表示平面目標(biāo)的寬度預(yù)測值,h'表示平面目標(biāo)的高度,bbox′tensor[5]表示平面目標(biāo)的高度預(yù)測值;
74、通過sigmoid函數(shù),計算平面目標(biāo)航向角:
75、
76、其中,θ'表示平面目標(biāo)航向角,bbox′tensor[7]表示平面目標(biāo)在當(dāng)前180°子區(qū)間內(nèi)的預(yù)測角度,bbox′tensor[6]表示平面目標(biāo)區(qū)間的預(yù)測值。
77、進(jìn)一步地,所述s7具體包括:
78、s701:計算所述三維目標(biāo)中心點與所述平面目標(biāo)中心點之間的距離,得到距離矩陣:
79、
80、其中,d[m,n]表示第m個三維目標(biāo)中心點與第n個平面目標(biāo)中心點之間的距離,distance()表示三維目標(biāo)中心點與平面目標(biāo)中心點之間的距離,||?||表示歐幾里得范數(shù),表示第m個三維目標(biāo)中心點的x軸坐標(biāo),表示第n個平面目標(biāo)中心點的x軸坐標(biāo),表示第m個三維目標(biāo)中心點的y軸坐標(biāo),表示第n個平面目標(biāo)中心點的y軸坐標(biāo),表示第m個三維目標(biāo)中心點的z軸坐標(biāo),表示第n個平面目標(biāo)中心點的z軸坐標(biāo);
81、s702:根據(jù)所述距離矩陣,通過匈牙利算法,進(jìn)行目標(biāo)匹配,得到目標(biāo)匹配結(jié)果;
82、s703:根據(jù)所述目標(biāo)匹配結(jié)果,將所述三維目標(biāo)列表和所述二維平面列表進(jìn)行融合,得到包括多個檢測目標(biāo)的融合目標(biāo)列表。
83、進(jìn)一步地,所述s703具體為:
84、根據(jù)所述目標(biāo)匹配結(jié)果,保留所述三維目標(biāo)列表中的所有三維目標(biāo),將成功匹配到三維目標(biāo)的所述二維平面列表中的二維平面目標(biāo)刪除,將未成功匹配到三維目標(biāo)的所述二維平面列表中的二維平面目標(biāo)保留,得到包括多個檢測目標(biāo)的融合目標(biāo)列表。
85、根據(jù)本發(fā)明的一個方面,提供了一種基于點云數(shù)據(jù)的目標(biāo)檢測系統(tǒng),包括:存儲器和一個或多個處理器;
86、所述存儲器中存儲有一個或多個應(yīng)用程序,所述一個或多個應(yīng)用程序適于由所述一個或多個處理器執(zhí)行以實現(xiàn)權(quán)利要求1至9任一項所述的基于點云數(shù)據(jù)的目標(biāo)檢測方法。
87、應(yīng)用本發(fā)明的技術(shù)方案,可以通過確定三維目標(biāo)點云數(shù)據(jù)檢測模型和平面目標(biāo)點云數(shù)據(jù)檢測模型的損失函數(shù),并以最小化三維目標(biāo)點云數(shù)據(jù)檢測模型和平面目標(biāo)點云數(shù)據(jù)檢測模型的損失函數(shù)值為目標(biāo),通過adamw優(yōu)化器,分別對三維目標(biāo)點云數(shù)據(jù)檢測模型和平面目標(biāo)點云數(shù)據(jù)檢測模型進(jìn)行優(yōu)化,在處理正后向目標(biāo)時表現(xiàn)優(yōu)秀,在目標(biāo)距離較近的情況下,召回能力較強(qiáng),能夠準(zhǔn)確檢測遠(yuǎn)距離目標(biāo),且在單面目標(biāo)的標(biāo)注過程中不再依賴標(biāo)注員的主觀判斷,確保了標(biāo)注的一致性,不會由于缺乏準(zhǔn)確的標(biāo)注而影響模型的學(xué)習(xí)效果,通過分別對三維目標(biāo)點云數(shù)據(jù)檢測結(jié)果和平面目標(biāo)點云數(shù)據(jù)檢測結(jié)果進(jìn)行解碼操作,得到三維目標(biāo)列表和二維平面列表,并將三維目標(biāo)列表和二維平面列表進(jìn)行融合,得到包括多個檢測目標(biāo)的融合目標(biāo)列表,避免了現(xiàn)有的lidar傳感器在識別遠(yuǎn)處的單面目標(biāo)時性能較弱,不容易發(fā)生漏檢現(xiàn)象,提高了系統(tǒng)的整體精度。
88、除了上面所描述的目的、特征和優(yōu)點之外,本發(fā)明還有其它的目的、特征和優(yōu)點。下面將參照圖,對本發(fā)明作進(jìn)一步詳細(xì)的說明。