智能駕駛開發的幾個問題
近距離檢測問題
1)FOV視場角太小
2)幀率太低
3)增加樣本數據
波動問題
1)深度學習網絡模型太小,增加車道線網絡模型層數,修改每層卷積核的個數。
2)增加不同場景訓練樣本數據。
3)增加車道線檢測跟蹤。
4)修改曲線擬合特徵點的帥選方法。
5)修改和矯正攝像頭標定參數。
A)攝像機外參:決定攝像機座標與世界座標系之間相對位置關係。
其中Pw爲世界座標,Pc是攝像機座標,他們之間關係爲Pc = RPw + T
式中,T= (Tx,Ty,Tz),是平移向量,R = R(α,β,γ)是旋轉矩陣,分別是繞攝像機座標系z軸旋轉角度爲γ,繞y軸旋轉角度爲β,繞x軸旋轉角度爲α。6個參數組成(α,β,γ,Tx,Ty,Tz)爲攝像機外參。
B)攝像機內參:確定攝像機從三維空間到二維圖像的投影關係。
針孔攝像機模型爲6個參數(f,κ,Sx,Sy,Cx,Cy);遠心攝像機模型爲5個參數(f,Sx,Sy,Cx,Cy)。
線陣攝像機爲9個參數(f,κ,Sx,Sy,Cx,Cy,width.highth)。
其中,f爲焦距;
κ表示徑向畸變量級,如果κ爲負值,畸變爲桶型畸變,如果爲正值,那畸變爲枕型畸變。Sx,Sy是縮放比例因子。對針孔攝像機來講,表示圖像傳感器上水平和垂直方向上相鄰像素之間的距離;對於遠心攝像機模型,表示像素在世界座標系中的尺寸。Cx,Cy是圖像的主點。對針孔攝像機來講,這個點是投影中心在成像平面上的垂直投影,同時也是徑向畸變的中心。對於遠心攝像機模型,只表示畸變的中心。Vx,Vy,Vz:線陣攝像機必須與被拍攝物體之間有相對移動才能拍攝到一幅有用的圖像。這是運動向量。
sx和sy是相鄰像元的水平和垂直距離。
2.項目開發前期如何選擇合適算力的嵌入式平臺?項目中後期如何針對嵌入式平臺進行算法的性能優化?
平臺選擇
1)車規級(安全性)
2)算力大小
3)開發週期(SOC/FPGA/ASIC/AMBA/2X等)
4)功耗(芯片的適應溫度也有嚴格要求。工業級芯片的工作溫度範圍是-40攝氏度至85攝氏度,而車規級芯片工作溫度範圍是-40攝氏度至125攝氏度。按照溫度適應能力以及可靠性分爲四類:商業級(070攝氏度)、工業級(-4085攝氏度)、車規級(-40120攝氏度)、軍工級(-55150攝氏度))
5)功能模塊(感知/控制/決策等)。
性能優化
1)軟件硬件是一個整體,共同優化。
2)ARM,DSP和DPU上各自優化,引入neon指令等。
3)網絡模型輕量化。
模型輕量化的一些方法:
卷積核分解:使用1xN和NX1卷積核代替NXN卷積核;
使用深度壓縮deep
compression方法:網絡剪枝、量化、哈弗曼編碼;
奇異值分解;
硬件加速器;
低精度浮點數保存;
小模型的好處有哪些:
在分佈式訓練中,與服務器通信需求小;
參數少,從雲端下載模型的數據量小;
更適合在FPGA等內存首先的嵌入式、移動端設備上部署;
4)統一輸入輸出和軟硬件接口參數。
5)公用模塊統一調用。
6)多線程調度。
7)增加跟蹤模算法。
達成目標
1)需求明確。
2)項目開發計劃,時間節點把握。
3)適當留有時間,防止突發事件干擾,造成項目延期。
4)統一軟件架構,統一輸入輸出和軟硬件接口。
5)執行嚴格調試和測試計劃。
測試計劃
1)用科學的指標,比如mAP來量化性能指標。
2)現場場景測試,GPU和嵌入式測試同步。
3)與整車廠各個相關功能模塊長期聯調和現場測試。
4.主機廠是否需要進行圖像處理等相關算法產品的自主開發,相比採用供應商成熟產品有哪些優劣?
優劣
1) 主機廠有自主算法,提高主機廠的核心競爭力。
2) 內部算法,方便車廠測試,優化,修改,更新。
3) 增加人力物力成本開銷。
若是自主開發,如何趕超當前市面成熟產品?有哪些具體措施?
如何趕超
1) 引進優秀人才,提高核心競爭力。
2) 自主開發也要堅持對外交流與合作。
3) 用最先進的方法開發。比如,深度學習代替傳統算法;開發自動駕駛與輔助駕駛相結合。
4) 充分利用服務器,雲計算等高效設備。
5) 採購先進的軟/硬件開發工具和測試工具。