2014-10-10 3 views
0

Correlogram을 사용하여 두 이미지 사이의 유사성을 찾으려고합니다. 나는 이미 두 이미지 모두 Correlograms (2D)를 만들었습니다.두 이미지의 Correlograms 일치하기

작업 : 이제이 두 가지 Correlograms가 얼마나 비슷한 지 알고 싶습니다.

문제점 : 나는이 두 Correlograms와 어떻게 일치합니까? two histograms과 비슷한 방식으로 일치시킬 수 있습니까?

비교 공식 : 연구 논문에 따르면, 히스토그램 매칭과 Correlogram 매칭의 수학 공식은 다음과 같습니다. 히스토그램의 경우, 합계는 색상 빈의 해당 값 사이의 차이에 대해서만 취해진다는 것을 분명하게 알 수 있습니다. 반면, Correlogram 매칭의 경우, 합계는 거리, 컬러 빈 (color bins)의 2 가지 차원으로 취해진 다.

image

내 코드 : 나는 두 개의 이미지, 즉 및 Mat correlogram1Mat correlogram2이있는 난 두 이미지 Correlogram의 값을 저장하고있다. 그런 다음 위의 수식을 기반으로 다음 코드를 사용하여 일치 시키려고합니다.

double correlogramMatching(Mat correlogram1, Mat correlogram2) 
{ 
    double confidenceValue = 0; 
    for(int i=0; i<ColorBins; i++) 
    { 
     for(int j=0; j<DistanceRange; j++) 
     {  
      double value = (std::abs) ((correlogram1.at<double>(i,j) - correlogram2.at<double>(i,j))/(1 + correlogram1.at<double>(i,j) + correlogram1.at<double>(i,j))); 
      confidenceValue = confidenceValue + value; 
     } 
    } 
    return confidenceValue; 
} 

혼란 : 두 이미지에 대해서는 동일한는 confidanceValue의 값은 제로되어 두 때문에 일반적이지 이미지 값 등등 .... 66, 88과 같다. 그래서, 두 개의 이미지가 유사하거나 유사한 경우 어떤 값을 예측해야합니까?

PS : OpenCV (C++)로 프로그래밍하고 있습니다.

+0

correlogram에 대해 들어 본 적이 없습니다.히스토그램과의 차이점은 무엇입니까? – memecs

+0

@memecs : 히스토그램은 색상에 대한 전역 정보 만 유지합니다. 히스토그램이 그 이미지에서 특정 색상의 확률이 얼마인지 알려줍니다. 반면에, correlogram은 확장이며 매우 강력한 기술입니다. 색상 및 공간 분포에 대한 정보를 유지합니다. – skm

+0

제로를 사용하여 Correlogram을 만들면 정규 상관 관계를 의미하므로 문제없이 비교할 수 있습니다. 음, 왜 제로 평균 정규화 상관 관계가 어쨌든 사용됩니다 thats. –

답변

1

또한 correlogram은 동시 발생 행렬/히스토그램입니다. 귀하의 질문에 대답하기 위해 간단한 대답은 '예'입니다. 히스토그램을 자체적으로 비교할 때 두 이미지/패치 사이의 회색 음영/색상 내용을 비교하고 있음을 기억하십시오. 이것을 correllograms/co-occurrence 매트릭스로 확장함으로써,의 공간 분포도 과 비교합니다.이 분포는 히스토그램의 세 번째 차원 인 거리에 의해 처리됩니다. 동일한 색상 분포를 지니지 만 공간 분포가 다른 두 개의 이미지가있는 경우 히스토그램 측정 값도이를 고려하여 높은 차이/낮은 유사성을보고합니다.

이와 같이, 당신은 완벽하게 2 개의 correlogram 사이의 표준 히스토그램 비교 측정 값을 사용할 수 있습니다 (그리고 나는 또한 경험으로부터 말하고 있습니다). 따라서 히스토그램을 함께 비교하는 표준 기술을 사용하면됩니다. 예 : 히스토그램 교차, L_p 표준, 카이 제곱 거리, Bhattacharyya 거리 등이 있습니다.

자세한 내용은 다음 링크를 참조하십시오. 두 가지 히스토그램 사이를 비교하는 데 사용할 수있는 훌륭한 히스토그램 유사성/비 차이 성 측정법이 있습니다. 각각의 장점과 단점이 있습니다. 또한 Ander Biguri는 좋은 지적을했습니다. 히스토그램 사이의 내용을 약간의 대비와 조명 독립적으로 만들려면 각보기 간의 대비를 표준화해야합니다.

링크 : http://pi-virtualworld.blogspot.ca/2013/09/histogram-similarity.html

+0

답변 해 주셔서 감사합니다. 나는 내 질문을 업데이트했으며 친절하게 살펴 본다. 내 질문에 언급 된 수식에 따라 색상 빈과 거리 차원에서 합계를 수행해야합니다. 제 짧은 코드를보고 제 의견이 맞는지 말해 주시겠습니까? 또한, 우리는 두 개의 이미지가 비슷하다고 말할 수있는 값을 확신 할 수 없습니다. 이미지가 더 비슷하지 않기 때문에 cofidenceValue의 값이 더 많을 것입니다. – skm