要比对两个图片的相似度,是以比对RGB、像素做为基础。不过出现的相似度数值跟实际肉眼看的感觉有点误差,我举个例子,像一张水质清澈的清水图片和一张土黄色的水的图片做比对,相似度跑出来只有10.xx%这OK,只是我再拿另一个水质也一样清澈的图片来跟原本的清水图片来比对,结果相似度还是只有10.xx%,照理说相似度出来应该是要9x.xx%才对,询问一下先进们要怎麼修正。
private void cmdCompared_Click(object sender, EventArgs e)//开始比对
{
int rc, bc, gc;
float cc = 0, hc = 0;
for (int i = 0; i < y; i++)
{
for (int j = 0; j < x; j++)
{
rc = Math.Abs(clarityR[i, j] - checkR[i, j]);
bc = Math.Abs(clarityB[i, j] - checkB[i, j]);
gc = Math.Abs(clarityG[i, j] - checkG[i, j]);
cc = (float)(rc + bc + gc);
hc = cc / (765 * x * y) + hc;
}
}
hc = hc * 100;
textBox1.Text = Convert.ToString(hc);
}
你hi我 我给你