欧氏距离两个像素,每个属于不同的图像

时间:2013-12-17 00:27:36

标签: matlab image-processing machine-learning nearest-neighbor

我正在尝试实施朴素贝叶斯最近邻(NBNN)进行图像分类。在算法中,它要求属于不同图像的两个像素之间的欧几里德距离。

我有1)m-by-40,000矩阵中的一组m-图像(其中40,000是一个图像中的像素数)和2)n×40,000矩阵中的另一组n图像

1)是训练集,2)是验证集。

为了让我申请NBNN,根据我的理解,我需要找到2)的每个像素与1)的相应像素之间的欧几里德距离。

我的问题是,给定两个灰度值,一个来自1),另一个来自2),为了应用k-NN,我如何找到它们之间的欧几里德距离?

2 个答案:

答案 0 :(得分:3)

设x,y为两个200×200的灰度图像。像素级别为x1,x2,...x40000y1, y2,...y40000。 x和y之间的欧氏距离为d(x,y)=sqrt(sum_i((xi-yi)^2))

答案 1 :(得分:0)

我将参考wikipedia

中给出的符号和定义

您有1d数据,因此p=(p1)q=(q1)e(p,q)=sqrt((p1-q1)^2)=abs(p1-q1)

对于1d情形,欧氏距离是灰度值的绝对差值。