我试图实现朴素贝叶斯最近邻(NBNN)的图像分类。在算法中,它要求属于不同图像的两个像素之间的欧几里德距离。欧几里德距离两个像素,每个属于不同的图像
我有1)m×40,000矩阵(其中40,000是一个图像中的像素数)中的一组m图像和2)n乘40,000的另一组n图像矩阵。
1)是训练集,2)是验证集。
为了让我应用NBNN,从我的理解中,我需要找到2)中的每个像素与1)中相应像素之间的欧几里德距离。
我的问题是,给出两个灰度值,一个来自1),另一个来自2),我将如何找到它们之间的欧几里德距离以应用k-NN?
只是一个快速的实际问题:距离的输出矩阵的预期维数是多少? – chappjc
从我对朴素贝叶斯最近邻的理解中,应该是40,000乘以40,000的测试图像和40,000乘以m的训练集。从那里,我会寻找每个像素(列)的最小值来找到最近的邻居。请让我知道,如果我不正确地理解这一点。 – viviboox3
@ viviboox3,我也试图在MATLAB中使用这个方法。我已经阅读了博曼关于NBNN的论文,但我仍然很难理解这种方法。我认为NBNN的全部要点是提出类描述符,然后计算图像到类的距离。这是你在这里做的?另外,如果你能指出我对算法的一个很好的解释,我将不胜感激! –