2011-09-29 65 views
1

我知道最常見的對象檢測涉及Haar級聯,並且有很多用於特徵檢測的技術,如SIFT,SURF,STAR,ORB等......但是如果我的最終目標是承認物體不是兩種方式最終都會給我相同的結果?我理解在簡單的形狀和模式上使用特徵技術,但對於複雜的對象,這些特徵算法似乎也可以工作。特徵檢測和對象檢測的區別

我不需要知道它們在功能上的差異,但是不管它們中的一個是否足以排除另一個。如果我使用Haar級聯,是否需要打擾SIFT?何必?

感謝

編輯:我的目的,我想實現在廣泛類的東西物體識別。這意味着任何形狀類似杯子的杯子都將被拿來作爲杯子的一部分。但我也想指定實例,這意味着紐約杯將作爲紐約杯的一個實例。

+0

您是否熟悉分類算法是如何工作的?我看到它的方式,特徵檢測僅僅是對象檢測的一部分。看到我的答案。 –

+0

@PeterO。你知道涉及我提到的檢測技術的物體檢測技術嗎?據我所知,哈爾並沒有參與其中。或者,這些功能更強大的檢測功能僅限於開發人員自行整合機器學習功能嗎? – mugetsu

回答

4

對象檢測通常由兩個步驟組成:特徵檢測和分類。 在特徵檢測步驟中,收集待檢測對象的相關特徵。 這些功能被輸入到第二步,分類。 (就我所知,甚至可以使用Haar級聯可以使用 進行特徵檢測。)分類包括算法 ,如神經網絡,K最近鄰居等等。分類的目標是找出 瞭解檢測到的特徵是否與要檢測的對象 具有的特徵相對應。分類一般屬於機器學習的領域。例如,人臉檢測是對象檢測的一個例子。

1

通常,對象是要素的集合。功能往往是一個非常低級的原始事物。一個對象意味着將對場景的理解轉移到下一個層次。

一個功能可能像一個角落,一個邊緣等,而一個對象可能像書,盒子,桌子。這些對象全部由多個特徵組成,其中一些特徵可能在任何給定的場景中可見。

+0

那麼人們使用功能檢測功能是什麼?指定對象的實例? – mugetsu

+0

所以爲了我的目的,你會說對象檢測可以用於實例定義,並且可以使用特徵檢測來定義類?我知道哈爾在特定對象方面非常擅長,但在定義一個廣泛的類時很不好。使用特徵檢測不應該能夠找到同一類中的對象的共同特徵,然後將它們確定爲同一類? – mugetsu

0

不變性,速度,存儲;有幾個理由,我能想到我的頭腦。另一種方法是保留完整的圖像,然後檢查給定的圖像是否與數據庫中的玻璃圖像相似。但是,如果你有一個壓縮的玻璃表示,它將需要較少的計算(因此更快),將需要較少的存儲空間,並且這些功能會告訴你圖像之間的不變性。

您提到的兩種方法基本上都是相同的,只是略有不同。在哈爾的情況下,你檢測到哈爾特徵,然後你提高它們以增加信心。 Boosting不過是一個元分類器,它巧妙地選擇將所有Harr特徵包含在最終的元分類中,以便能夠提供更好的估計。另一種方法,或多或少都是這樣做的,除了你有更復雜的功能。主要區別在於,您不直接使用boosting。您傾向於使用某種分類或聚類,例如MoG(混合高斯)或K均值或其他啓發式來聚類數據。您的羣集很大程度上取決於您的功能和應用程序。

什麼會在你的情況下工作:這是一個棘手的問題。如果我是你,我會和哈爾玩耍,如果它不起作用,會嘗試其他方法(obs:>)。請注意,您可能想要分割圖像並給出某種邊界來檢測眼鏡。