2011-02-15 100 views
1

我使用圖像顏色直方圖中的偏度和峯度函數作爲統計顏色特徵,然後使用這些特徵比較兩個圖像以檢索相似圖像....但我得到'南的一些結果是值導致圖像檢索過程中出現錯誤:在圖像匹配中使用偏度和峯度函數

 
S=double(imread('im.jpg'); 
     R=S(:,:,1)/64;  R1=floor(R); 
     G=S(:,:,2)/64;  G1=floor(G); 
     B=S(:,:,3)/64;  B1=floor(B); 
[rr cc c]=size(R1); 
     ImageHist = zeros(4,4,4); 
       for row = 1 :rr 
         for col = 1:cc 
          ImageHist(R1(row,col)+1, G1(row,col)+1,B1(row,col)+1)= ImageHist(R1(row,col)+1, G1(row,col)+1,B1(row,col)+1)+1;     
        end 
       end 

      ImageHist = ImageHist/(rr*cc); 

然後我計算峯度爲:

QKurColHis = kurtosis(ImageHist); 

我做出第二個功能相同的事情(偏度)

用這個函數對顏色直方圖進行顏色特徵提取是否合適?然後在圖像檢索中使用它?

如果它是好的,我該如何糾正這個錯誤,我怎樣才能從我的mat.file中刪除NaN值?

我想用這些函數作爲圖像特徵來匹配彩色圖像......任何人都可以幫我解決這個問題嗎?

+3

確實,你問的問題,採取的答案,但什麼都不放回 – 2011-02-15 22:10:28

回答

1

我不知道內置峯度功能是如何工作的,但它可能是你必須從NaN的問題,峯度爲它供給一個載體,而不是3D矩陣作爲輸入

kurtosis(ImageHist(:)) 

除了和偏度給你一些關於ImageHist數據統計分佈的信息,所以它們可以被當作一些圖像特徵。但是他們在圖像匹配方面的表現有多好,這很難說。