2012-03-28 28 views
0

我目前要求將某些圖像相互比較(使用嵌套for循環),並確定哪些圖像彼此最接近(不特別完全相同)和2圖像或者通過使用線性相關或者定位,這是最不相同的。如何使用線性相關來比較使用MATLAB的圖像

由於所有圖像都是完全相同的尺寸2D matricies,我唯一能想出現在(如果使用的相關性),做到以下幾點:

a = imread('image_1.jpg'); 
b = imread('image_2.jpg'); 
c = corr2(a,b);   
if c==1 
disp('The images are same') 

的問題是,上面的,只有在比較與自己完全相同的圖像時才起作用,任何其他看起來類似的圖像都不起作用。我怎麼解決這個問題。謝謝

回答

1

corr2是你的相關函數,並會給出一個值。值越大,匹配度越高。您可以將c的值存儲在單獨的矩陣C中,然後選取最大的c來獲得彼此最接近的兩張圖像。

0

使圖像標準化,然後使用conv2代替並找到最大值。它可能會更慷慨的註冊問題。如果您上傳了您認爲相似且不相似的示例圖片,我們可能會更好地爲您提供幫助。

3

您需要使用功能*xcorr2