您好,登錄后才能下訂單哦!
本篇文章為大家展示了ModelArts與HiLens是如何讓車自己跑起來的,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
(可選,忽略亦可,取決于攝像頭質量,對于相機畸變較大的需要先計算相機的畸變矩陣和失真系數,對圖片進行校正)圖片校正;
截取感興趣區域,僅對包含車道線信息的圖像區域進行處理;
對感興趣區域使用透視變換;
針對不同顏色的車道線,不同光照條件下的車道線,不同清晰度的車道線,根據不同的顏色空間使用不同的梯度閾值,顏色閾值進行不同的處理。并將每一種處理方式進行融合,得到車道線的二進制圖;
提取二進制圖中屬于車道線的像素;
對二進制圖片的像素進行直方圖統計,統計左右兩側的峰值點作為左右車道線的起始點坐標進行曲線擬合;
使用二次多項式分別擬合左右車道線的像素點(對于噪聲較大的像素點,可以進行濾波處理,或者使用隨機采樣一致性算法進行曲線擬合);
計算車道曲率及車輛相對車道中央的偏離位置;
效果顯示(可行域顯示,曲率和位置顯示)。
檢測駕駛過程中道路中其他車輛狀態,顯示車輛類別、置信度,并通過YOLOv3進行檢測車輛,然后返回的車輛檢測框的坐標與當前坐標進行透視變換獲取大約的距離作為車輛之間的距離dis。
說明:
本Demo的主體框架基于HiLens Kit已經基本開發完成,模型的選擇為基于DarkNet53的YOLOv3模型,權重為基于COCO2014訓練的數據集,而車道線的檢測是基于OpenCV的傳統方法實現的,所以計算量較大,導致整體速度較慢。
1)考慮到部署,已經測試過部署到HiLens Kit了,對了,也支持在HiLens Stuido運行模擬測試,更推薦在HiLens Studio哦,比較方便,而且不需要硬件支持,只需要在HiLens Kit或HiLens Studio上安裝pillow庫就行了,關于如何在HiLens Kit和HiLens Studio上安裝第三方庫,非常簡單的哦,可參考:
在HiLens Kit上:https://bbs.huaweicloud.com/forum/thread-94316-1-1.html
在HiLens Studio上:https://bbs.huaweicloud.com/forum/thread-94317-1-1.html
2)如果想訓練或優化,由沒有硬件(比如GPU),那么很推薦使用ModelArts了,一站式開發,無縫銜接到HiLens Kit哦, 關于ModelArts的介紹可參考:https://www.huaweicloud.com/product/modelarts.html
同時也許還能提升下運行速度,這里介紹三種算法,親測都可以部署到HiLens Kit推理使用哦,就在最新的AI Gallery(原AI市場)中哦,這里除了有算法,還有模型、數據集等等,很豐富,大家可以自己探索一下,同時還可以分享自己的算法給其他開發者,開發者訂閱即可創建訓練使用,很方便,相比于GitHub,不僅提供了源代碼,還提供了用于訓練的硬件資源,強大的Tesla V100 32GB版本哦。
(1)YOLOv3_Darknet53,沒錯,就是著名的YOLOv3,經典的目標檢測網絡,后續又推出了YOLOv4、YOLOv5(暫稱此名吧),AI Gallery也推出了YOLOv5的,不過由于PyTorch框架暫不支持模 型轉換,所以暫時放棄了。
關于YOLOv3_Darknet53的使用方法,算法界面介紹很詳細,這里就不贅述了,可以參考使用,注意模型轉換部分請參考這篇博文中模型轉換部分哦:https://bbs.huaweicloud.com/blogs/199870
算法備用鏈接為:https://marketplace.huaweicloud.com/markets/aihub/modelhub/detail/?id=2d52a07e-ccbd-420f-8999-2ea7b4bdd691
(2)YOLOv3_Resnet18(GPU),如果我們只想做車輛的檢測或者為了簡化模型,提高速度,可以選用主干網絡為Resnet18的YOLOv3,網絡更輕量,速度會快一些哦。
同樣給上鏈接:https://marketplace.huaweicloud.com/markets/aihub/modelhub/detail/?id=948196c8-3e7a-4729-850b-069101d6e95c
(3)YOLOv3_Resnet18(Ascend 910),和上面(2)版本差異不大,主要改為由GPU換為Ascend 910訓練的,大家可自由選擇哦。
鏈接為:https://marketplace.huaweicloud.com/markets/aihub/modelhub/detail/?id=7087008a-7eec-4977-8b66-3a7703e9fd22
好了,算法部分解決了,數據怎么辦呢?ModelArts的AI Gallery同樣想到了,提供了數據集哦,免費訂閱,下載到自己的OBS導入就能用了(注意OBS需要一定花費),這里我也提供了開源數據集的5164張人車圖片,供大家使用哦,上鏈接:https://marketplace.huaweicloud.com/markets/aihub/datasets/detail/?content_id=a337272b-6918-4282-83d6-2b15e2a4c716
那么數據集和算法都有了,該訓練了吧,在ModelArts上可以很好完成,憑借強大的Tesla V100 32GB或Ascend 910可以很快完成哦。
完成執行如視頻中所示處理的一幀需要約300ms,也就是FPS約為3,不較慢,需要優化。我覺得還有很大優化空間,比如:
(1)預處理和后處理很費時間,真正推理很快,可以從這方面加速,不知道開啟多線程是否有提升,應該有吧;
(2)應該可以更好發揮專用硬件,記得好像有DVPP和AIPP吧,可以用來做色域轉換的操作;
(3) YOLOv3的后處理解析比較麻煩,這里用的是COCO的80類,但可以只用person、car兩類,或者再加一點,同時nms也比較費時間,如果能用算子實現,融合到om模型中,會提速很多;
(4)這里使用的是Python,如果用C++應該會提升一些,執行效率會高很多吧。
上述內容就是ModelArts與HiLens是如何讓車自己跑起來的,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。