一、背景知識
目標定位是計算機視覺的重要應用場景之一。在工業生產、航空航海、農產品包裝等眾多領域內均已得到廣泛應用。在工業生產中,通過目標定位可以實現精準地完成自動抓取、自動上料等操作;在航空航海中,利用目標定位可以為海上打撈等工作提供可靠的位置服務;在交通運輸中,借助目標定位可以準確獲取車輛的位置資訊。
由於上述領域相關的資訊都具有十分複雜的背景,對待識別目標干擾性強,且通常存在目標重疊、相似度高、部分遮擋等問題,進行目標定位具有相當大的難度。
二、傳統演算法
傳統的目標定位演算法通常使用滑動窗的方法,主要可分為以下三個步驟:
(1)候選框:利用不同尺寸的滑動窗,在中標記一塊區域作為候選區;
(2)特徵提取:針對輸入的候選區域,提取視覺特徵(例如人臉檢測常用的harr特徵、行人檢測和普通目標檢測常用的hog特徵等);
(3)分類器識別:利用分類器進行目標和背景的判定,比如常用的svm模型等。
上述傳統演算法在一些特定的應用方面已經取得了不錯的成績,但仍有不少缺點。首先,其需要手動提取影象特徵,提取方法需要不斷嘗試比較才能得到好的特徵;其次,提取的特徵與模型效能的優劣直接相關,導致模型針對性強,不能靈活應用於其他情景;此外,有些演算法中還涉及到複雜的邊緣檢測過程,包括閾值分割、分水嶺演算法等。繁雜的處理過程導致模型檢測效率較低,無法滿足在工業生產中的廣泛應用。
三、深度學習
在2023年的imagenet競賽中,alexnet神經網路一舉成名,也使cnn成為了計算機視覺研究的中心,同時再一次掀起了深度學習的研究熱潮。
3.1 r-cnn [1]
r-cnn是先進的視覺物件檢測系統,它將自下而上的候選區域提取與卷積神經網路的豐富功能結合在一起。r-cnn在不使用上下文記錄或要素型別整合的情況下實現了檢測精度的大幅提公升。
r-cnn演算法的具體實現方法如下:
本方法使用cnn網路自動提取特徵,避免了手動提取特徵的複雜操作,提公升了工作效率。但由於每個候選區域都需要送入cnn模型計算特徵向量,會耗費一定的時間。
3.2 faster r-cnn[2]
faster r-cnn是目標檢測領域最經典的演算法之一。它主要由用於生成候選區域框的深度全卷積網路和fast r-cnn 檢測模型兩部分構成。
faster r-cnn的網路結構如上圖所示,由圖中可以看出其由四部分組成:
region proposal networks:用於推薦候選區域(通過softmax判斷anchors屬於前景還是後景,並借助boxregression修正anchors,輸出多個候選區域);
roi pooling:將不同大小的輸入轉換為固定長度的輸出,送入後續的全連線層判定目標類別;
classification:輸出候選區域所屬的類別及其精確的位置。
rpn層是faster r-cnn網路最大的亮點,使用rpn代替啟發式候選區域的方法,極大的加快了訓練的速度和精度。
3.3 yolo v3 [3,4]
前面介紹的兩種演算法均為two-stage,而yolo屬於one-stage,它不需要提取候選區域,可以直接產生物體的類別概率和位置座標值,這裡將針對目前更受歡迎的yolo v3展開介紹。
yolo v3的具體實現可以分為三步,分別為:
同樣作為one-stage方法,ssd採用cnn直接檢測的方法替代yolo在全連線層之後做檢測的方法提公升了訓練速度。此外,ssd提取不同尺寸的特徵圖,分別用來檢測大小不同的物體;還使用不同尺度和長寬比的anchors提公升了定位準確度,實現了在高速執行的同時保持高精度的重大突破。
四、總結
本文參考前沿文獻,總結了部分目前應用較為廣泛的部分目標定位演算法框架及具體思路。總的來說,目標定位檢測可分為two-stage(產生候選區+確定位置)和one-stage(直接產生物體的位置座標值)兩大類,均可以實現快速準確且魯棒性好的目標定位,且可以靈活的應用於建築業、航天工程以及工業生產等眾多行業。
五、公司介紹
[1] girshick r, donahue j, darrell t, et al. region-based convolutional networks for accurate object detection and segmentation[j]. ieee transactions on pattern analysis and machine intelligence, 2015.
[2] ren s, he k, girshick r, et al. faster r-cnn: towards real-time object detection with region proposal networks[c]//advances in neural information processing systems. 2015.
[3] redmon j, farhadi a. yolov3: an incremental improvement[j]. arxiv preprint arxiv:1804.02767, 2018.
[4]
[5] liu w, anguelov d, erhan d, et al. ssd: single shot multibox detector[c]//european conference on computer vision. springer, cham, 2016.
深度學習筆記(32) 目標定位
分類任務已經熟悉了,就是演算法遍歷,判斷其中的物件是不是汽車 定位分類問題,這意味著不僅要用演算法判斷中是不是一輛汽車 還要在中標記出它的位置 如果正在構建汽車自動駕駛系統,那麼物件可能包括以下幾類 行人 汽車 電單車和背景 這意味著中沒有行人 電單車和背景,輸出結果會是汽車 如果還想定位中汽車的位...
吳恩達深度學習 目標定位
這一周我們學習的主要內容是物件檢測,它是計算機視覺領域中乙個新興的應用方向,相比前兩年,它的效能越來越好。在構建物件檢測之前,我們先了解一下物件定位,首先我們看看它的定義。分類任務我們已經熟悉了,就是演算法遍歷,判斷其中的物件是不是汽車,這就是分類。這節課我們要學習構建神經網路的另乙個問題,即定位分...
複雜的中國駕駛場景,正是深度學習的優勢
深度學習十分適合高度複雜場景下的自動駕駛應用,尤其與增強學習相配合,能讓從感知到執行的過程變得簡單。谷歌和李世石的人機大戰引爆了公眾對於人工智慧的關注,也讓基於深度學習的人工智慧成為汽車業界關注的重點,那麼深度學習在智慧型駕駛的應用場景下有什麼幫助呢?自動駕駛最先出現在美國,而不是歐洲或者日本,更不...