之前做幻觉脸的时候需要计算两幅人脸图像的近似度,想了好久没有想出来办法,也忘了在哪个论坛发了一封求助贴,n久之后没人回,一咬牙又凭着自己的想法解决了。虽然没人帮助解决,遇到同样苦难的童鞋们倒不少,现把我的解决方法置此,供需要的童鞋们参考:
两幅图像的近似度,说白了就是能够描述的图像的各种特征间的距离问题,可能不同类型的图像,能够描述图像的有效特征的类型差别较大,有的图像灰度信息就不错,有的则需要复杂的纹理、颜色、各种直方图之类的来描述,但是都具有一定的共性,我现在仅拿我使用过的特征作为参考,其他的特征近似可以举一反三:
1,图像像素灰度直接比对,计算两幅图像的所有像素灰度差的绝对值的和 P=sum( |gray1 - gray2| ),或者是欧式距离;
2,图像的梯度比对,计算两幅图像的梯度图像,然后后计算两幅梯度图像所有像素的差的绝对值和 P = sum( | grad1 - grad2| ),或者是欧式距离;
3,在特征空间内比对,利用相同的一组样本作为训练数据,构造某种空间,然后计算两幅图像在空间内的投影向量,保留两个投影向量相同的长度,然后计算两个投影向量的欧式距离。
希望此文对需要的人能有所帮助!