Java のカラー ヒストグラムに基づいて画像を比較する必要があります。JavaのJAIを使用して作成した画像のヒストグラムがあります。
しかし、ヒストグラムを使用してそれらを比較する方法がわかりません。
Java のカラー ヒストグラムに基づいて画像を比較する必要があります。JavaのJAIを使用して作成した画像のヒストグラムがあります。
しかし、ヒストグラムを使用してそれらを比較する方法がわかりません。
ヒストグラムの類似性を測定するには、さまざまな方法があります。そのような方法の 1 つにバッタチャリヤ係数法があります。
この類似度を計算するには、次のコードを使用できます。
float similarity = 0;
float[] targetHistogramData = ...//histogram1.getData();
float[] targetCandidateHistogramData = ...//histogram2.getData();
if( targetHistogramData.length != targetCandidateHistogramData.length){
throw new IncompatibleHistogramsException();
}
for(int i = 0; i < targetHistogramData.length; i++){
similarity += Math.sqrt(targetHistogramData[i]*targetCandidateHistogramData[i]);
}
return similarity;