Использование функций асимметрии и эксцесса в сопоставлении изображений - PullRequest
1 голос
/ 15 февраля 2011

Я использую функции асимметрии и кратности для цветовой гистограммы изображения в системе поиска изображений в качестве статистических цветовых признаков, а затем использую эти функции для сравнения двух изображений для получения изображений сходства .... но я получаю значение 'NaN' внекоторые результаты, которые вызывают ошибку в процессе поиска изображения:

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);

Я делаю то же самое для второй функции (асимметрия)

Целесообразно ли использовать эту функцию для цветовой гистограммы, чтобы извлечь цветовой признак?затем использовать его в поиске изображений?

Если все в порядке, как я могу исправить эту ошибку, как я могу удалить значения NaN из моего mat.file?

Я хочу использоватьони функционируют как функции изображения при сопоставлении между цветными изображениями ... кто-нибудь может помочь мне решить эту проблему?

1 Ответ

1 голос
/ 12 мая 2011

Я не знаю, как работает встроенная функция kurtosis, но, возможно, вам придется предоставить ей вектор вместо 3D-матрицы в качестве входа

kurtosis(ImageHist(:))

Помимо проблемы NaN, kurtosisа асимметрия дает вам некоторую информацию о статистическом распределении данных в ImageHist, чтобы их можно было рассматривать как некоторые функции изображения.Но насколько хорошо они будут работать при сопоставлении изображений, сказать сложно.

...