2015-12-10 52 views
2

我試圖執行圖像配準沒有太多運氣。相對沒有特色的對象的圖像配準技術

下圖是我的'參考'圖像。我使用網絡攝像頭以不同方向獲取同一對象的圖像,然後需要對這些圖像執行轉換,以使它們看起來儘可能接近參考圖像。

object to detect

我爲了解決這個問題被同時使用Aforge.NETAccord.NET庫。

特徵檢測/提取

到目前爲止,我已經試過在this文章中使用的圖像拼接方法。它適用於某些類型的圖像,但不幸的是它似乎不適用於我的示例圖像。該對象本身非常平淡,並且沒有很多特徵,所以該算法沒有找到許多相關點。我已經嘗試了上述方法的兩個版本,一個使用Harris角點探測器,另一個使用SURF,這兩個版本都沒有爲我提供我需要的結果。

一種選擇可能是「人爲地」向對象添加更多特徵(即貼紙,標記),但如果可能的話,我想避免這種情況。

形狀檢測

我也試過在this文章所用的形狀檢測方法的幾個變化。理想情況下,我想檢測物體上四個明確定義的圓/孔。然後,我可以使用這些座標來創建一個轉換矩陣(單應性?),我可以使用它來轉換圖像。

不幸的是,我無法可靠地檢測到所有四個圓圈。爲了獲得更好的圓檢測,我嘗試了無數種不同的方式對圖像進行預處理,但無法完全找到完美的序列。我的正常操作是:

  • 轉彎圖像灰度
  • 應用過濾器(均值,中位數,保守平滑,自適應平滑等)
  • 應用邊緣檢測(均勻性,索貝爾,差異,Canny算子等)
  • 應用顏色過濾
  • 運行形狀/圓檢測

我只是不能完全找到合適的系列過濾器在鄰申請以便可靠地檢測四個圓圈。

圖像/模板匹配

同樣,我想檢測在對象中的四個圓圈/孔,所以我嘗試的圖像/模板匹配技術收效甚微。我創建了一個模板(其中一個圓圈的小圖像),然後運行Exhaustive Template Matching算法,但沒有取得多大成功。通常它只檢測其中一個孔,通常是模板創建的那個孔!

總之

我覺得我用正確的方法來解決這個問題,我只是不知道挺我要去哪裏錯了,或者我應該進一步集中了我的注意。

任何幫助或指針將不勝感激。

+0

你能提供一個運動圖像的例子嗎?你正在處理哪些類型的轉換?剛性?仿射?投影? – eigenchris

回答

1

如果你已經添加了轉換的例子,你試圖不變 - 我們可以更具體。但通常,您可以嘗試使用HOG來檢測此結構,因爲它具有相當豐富的漸變效果。

HOG主要用於檢測行人,另外它還可以檢測不同的標識。

我不確定HOG的旋轉不變性,但在不同的光照和適度的透視變形下它非常強大。如果旋轉不變性很重要,您可以嘗試在旋轉後的物體版本上訓練分類器,儘管您的檢測器可能會變得不太有效。

在大致檢測到結構的比例和位置後,您可以嘗試通過檢測其邊界的橢圓來改進它。之後,您將會對洞的粗略估計,您可以使用此附近的最大值normalized cross correlation進一步精簡。

1

我知道它已經一段時間,但只有很短的潛在的解決方案:

我只想生成原始圖像上的網格點(比方說,16×16),然後用盧卡斯金出武雄(或其他)特徵檢測器來查找第二個圖像上的這些點。當然,你可能不會找到所有的點,但你可以排序並選擇最佳的相關性。比方說,最好的四個?然後你可以很容易地計算一個變換矩陣。另外,如果你在第一個網格上沒有很好的相關性,那麼你可以創建其他網格(移位等),直到找到好的匹配爲止。

希望能幫助任何人。