Skip to main content
 首页 » 编程设计

python之在Python中测量两个RGB图像之间的相似性

2025年05月04日13yyy_WW

我有两个大小相同的rgb图像,我想计算一个相似性指标。我想到了以欧几里得距离开始:

import scipy.spatial.distance as dist 
import cv2 
 
im1 = cv2.imread("im1.jpg") 
im2 = cv2.imread("im2.jpg") 
 
>> im1.shape 
(820, 740, 3) 
 
>> dist.euclidean(im1,im2) 
 
ValueError: Input vector should be 1-D. 


我知道 dist.euclidean期望一维数组,而 im1和 im2是3-D,但是有没有一个函数可以用于3-D数组,或者可以转换 im1和< cc>进入一维数组,以保留图像中的信息?

请您参考如下方法:

你可以试试

import scipy.spatial.distance as dist 
import cv2 
import numpy as np 
 
im1 = cv2.imread("im1.jpg") 
im2 = cv2.imread("im2.jpg") 
 
dist.euclidean(im1.flatten(), im2.flatten())