卷積神經網路可以用於小目標檢測嗎?
cnn在目標檢測領域已經有了飛速的發展,據我了解,它更多的是檢測出圖像中較大的目標。然而我現在的課題需要檢測出天空中的飛機、無人機、飛鳥等物體,由於本身距離較遠,這些物體在圖像中可能只佔有20-30個像素(甚至更低,這裡指的是一個方向上的尺度,比如水平方向或者垂直方向),請問現在有沒有有效的演算法能夠檢測出這些小目標的具體位置呢?
當然,如果有深度學習以外的合適的演算法,也不吝賜教。
你把圖放大一倍,它就不是小物體了啊
瀉藥。題主現在的問題是在天空背景下的目標檢測,背景相對簡單,物體比較小。如果沒有遮擋的話可以試試傳統boosting,超像素分割等類似的方法,沒有必要一開始就deep。
大目標小目標只跟receptive field有關,cnn本身可以檢測任何尺度的物體。
天空這麼乾淨的背景下,其實隨便上個演算法都行吧,例如hog+svm(任意線性分類器)我覺得就足夠了。為什麼只跟receptive field有關請參見評論。
其實,題主的任務較為簡單,並不適合用那些龐大的模型,反而關注點應該放在如何利用少量數據來實現更多的invariance,尤其是旋轉不變性,可以考慮stn[1]或者deepmind icml16的那篇在中間層做augment的方法[2]。
[1] stn:http://arxiv.org/abs/1506.02025[2] cyclic symmetry:http://arxiv.org/abs/1602.02660題主的目標似乎都是moving object, 從另外一個角度,如果能基於video進行檢測,可以考慮moving object detection的方法。近些年頂會上也有相關文章,比如Learning to Segment Moving Objects in Videos。
二三十個像素也不算太小了。
Combining deep features for object detection at various scales: finding small birds in landscape images
導師前幾天發給我的,CNN和FCN檢測小鳥。雖然我不是搞這塊的,也不清楚為什麼導師發給我這個,但我覺得這可能是題主要的。我目前的工作內容也是CNN進行目標檢測。任務目標主要是在嵌入式設備上做到實時。
1. 如果你課題目標不在意實時性或者可以用GPU,二十到三十像素的目標檢測用CNN是沒有問題的,稍微有點勉強。再小點,說實話你換什麼方法也不會太好了。
2. 如果本身課題的時間緊或者不是你需要深入的,CNN是沒問題的。你自己設計feature的話這課題你要玩到哪一年?無底坑,也沒什麼意思。
3. Cascade也是可選項,前提是目標類型單一。或者不單一的話,你訓練多個Cascade。天空中識別飛行器一類的算是識別難度不算大的,畢竟背景單一。
4. 如果沒有GPU的話,優先Cascade。
是否可以這樣想:類似於人腦機制,當目標物體較大時,人可以識別該物體。若在此基礎上,不斷縮小目標物體,人依舊能識別該目標。是否可以說,在目標較大時,人腦已經記憶(存儲)了目標物體的主要信息(特徵),而這些信息,並不因為尺度的變化而大幅度改變,因此人能夠識別。另外,在目標實在特別小的時候,如果不藉助於其他一些先驗信息,人也是很難識別該目標的吧(疑問?),所以,放大目標可能是比較可取的方法。
雖然我很鄙視sailency,但這裡我覺得可以用來試試。另外,有人說boosting,我覺得這個問題不適用,畢竟像素太小,又加了旋轉。
樓主現在找到合適的演算法了嗎?我也在搞無人機和衛星中車輛的檢測,如果有較好的演算法,可以一起共享下!或者好用的論文!
最近在做羽毛球(小目標)檢測,YOLO的效果很好。題主可以試試增加YOLO回歸網格的方法看看效果如何。
請問樓主前輩這一問題是如何解決的,現在面臨類似的問題不知所措
題主所說的背景很簡單,可以考慮用cascade,最初的cascade是2001年violajones的人臉檢測器,應用很廣,變體很多,也很成熟。現在也有一些將其與CNN結合的工作。你可以系統的研究一下。
深度學習網路用到視頻跟蹤中,訓練好的網路分類,輸入的一幅圖片要化成不同的塊輸入網路,找出最匹配的的塊 是不是這樣的思想?
歡迎參加本周四晚免費線上分享
深度學習在智能駕駛中的應用,同濟大學管林挺博士將從目標檢測,語義分割和強化學習來分析。https://zhuanlan.zhihu.com/p/23840528推薦閱讀:
※深度學習與重整化群有什麼關係?
※從事深度學習等人工智慧研究在未來的職業發展前景如何?
※如何獲得Bengio的《Deep Learning》的pdf版?
※怎麼評判卷積神經網路訓練得差不多了?
※如何理解卷積神經網路中的權值共享?
TAG:機器學習 | 深度學習DeepLearning |