如何两张图片的特征分布的相似度,佬们求解

能用什么指标或者什么方法来判断两张图片的特征分布的相似度?
怎么比较两张图片在低频信息上的相似度?

目的:想通过比较两张图或者一组图的特征分布的差异,然后做特征对齐。

佬们求解!

百度有智能识别接口!

https://ask.csdn.net/questions/7639938

cv2.absdiff():
absdiff 获取差分图 就是将两幅图像作差
参数说明
src1:第一个输入数组或标量。
src2:第二个输入数组或标量。
dst:与输入数组具有相同大小和类型的输出数组。
两张图片进行对比,返回的结果代表他们的差异之处。


float Similar(Mat src, Mat src2)
        {
            Mat gray1 = new Mat(src.Size(), src.Type()),
                gray2 = new Mat(src2.Size(), src2.Type());
            Cv2.CvtColor(src, gray1, ColorConversionCodes.BGR2GRAY);
            Cv2.CvtColor(src2, gray2, ColorConversionCodes.BGR2GRAY);
 
            var size = new OpenCvSharp.Size(512, 512);
            using (var scaledImg1 = gray1.Resize(size))
            using (var scaledImg2 = gray2.Resize(size))
            {
                Cv2.Threshold(scaledImg1, scaledImg1, 128, 255, ThresholdTypes.BinaryInv);
                Cv2.Threshold(scaledImg2, scaledImg2, 128, 255, ThresholdTypes.BinaryInv);
                Mat res = new Mat(size, scaledImg1.Type());
                Cv2.Absdiff(scaledImg1, scaledImg2, res);
                var all = (float)scaledImg1.Sum();
                var result = (float)res.Sum();
                return (1 - result / all);
            }
        }