2011-03-21 98 views
6

我想執行一個分類任務,在該分類任務中,我將對象的給定圖像映射到對象可以在其中的預定義星座列表之一(即找到最可能的匹配)。 爲了得到圖像的描述符(我將運行機器學習算法),我建議使用帶有VLFeat實現的SIFT。帶SIFT/VLFEAT的圖像描述符

首先我的主要問題 - 我想忽略篩選的關鍵點發現部分,並只用它的描述符。在本教程中我看到有做正是一個選項,通過調用

[f,d] = vl_sift(I,'frames',fc) ;

其中fc指定的關鍵點。我的問題是我想明確指定圍繞框的邊界框,我想計算關鍵點周圍的描述符 - 但似乎我只能指定一個縮放參數,它現在對我來說有點神祕,並且不會允許我明確指定邊界框。有沒有辦法做到這一點?

第二個問題是沒有手動設置規模和獲得描述這樣有意義嗎? (即導致一個好的描述符?)。有關獲取描述符的更好方法的任何其他建議? (在其他實現中使用SIFT或其他非SIFT描述符)。我應該提到,我的對象始終是圖像中的唯一對象,以中心爲中心,具有持續的照明,並通過其內部部件的某種旋轉而發生變化 - 這就是爲什麼我認爲SIFT會按照我理解的重點隨着物體的旋轉相應地改變的方向梯度。

謝謝

回答

2

一致認爲描述符尺度看起來有點神祕。

看到VLFeat SIFT tutorial第三圖像,他們覆蓋在圖像上提取的描述符使用以下命令

h3 = vl_plotsiftdescriptor(d(:,sel),f(:,sel)) ; 
set(h3,'color','g') ; 

可以因此與規模玩,看看那裏的直方圖提取jives有什麼區你的預期。

SIFT聽起來像它可能如果你有在成像環境,太多的控制,但它應該適用於您的應用程序是矯枉過正。

0

嘿。 這可能有助於期待通過本文的背景章: http://www.cs.bris.ac.uk/Publications/pub_master.jsp?id=2001260

這需要時間對我來說,有關比例解釋那麼嘗試閱讀,並請參閱相關的引用。順便說一下在工作中的描述符的基本分辨率,即規模〜1

希望這有助於使用。