• 点集序列:曲线可以离散化为一个有序的点集序列。
概要算法
Frechet 距离用于衡量两条曲线(或路径)的相似度,考虑了曲线的顺序和形状。
1. 给定两条曲线 P 和 Q,分别由点集序列 P={p1,p2,…,pn} 和 Q={q1,q2,…,qm} 表示。
2. 定义一个匹配函数 δ(i,j) 表示从曲线 P 中的点 pi 到曲线 Q 中的点 qj 的距离。
3. Frechet 距离通过动态规划计算最小化的最大距离,即找到一条路径,使得路径上的最大距离最小。
适用场景:广泛用于路径、曲线的相似度比较,特别适合于需要考虑顺序的情况。
3.形状上下文(Shape Contexts)
数据结构
• 极坐标直方图:用于表示每个点相对于其他点的空间分布。
• 点集:表示几何图形的轮廓或关键点。
概要算法
形状上下文用于描述图形轮廓点的分布,捕捉形状的整体特征。
1. 对几何图形的轮廓或特征点集进行采样,选择若干个关键点。
2. 对于每个关键点,计算其相对于其他点的极坐标(距离和角度),并构建直方图。
3. 通过比较不同图形的形状上下文直方图来度量它们的相似度。通常采用 χ2 距离或 Earth Mover's Distance (EMD) 来比较直方图。
4. 通过最优匹配算法(如匈牙利算法)找到两组点之间的最佳对应关系,计算总相似度。
适用场景:适用于轮廓和形状的整体相似度比较,能够处理形变和噪声。
4.Zernike 矩(Zernike Moments)
数据结构
• 极坐标系:用于将图形转换到极坐标系中,计算其在不同阶次下的矩。
• 特征向量:Zernike 矩形成的特征向量用于表示图形。
概要算法
Zernike 矩是一组正交多项式,能够捕捉图形的旋转不变特征。
1. 将图形二值化,并将其中心对齐到坐标系的原点。
2. 使用极坐标系表达图形,并计算 Zernike 矩。Zernike 矩由一系列复数构成,其绝对值构成旋转不变的特征向量。
3. 比较两个图形的 Zernike 矩特征向量,常用欧氏距离或余弦相似度来度量相似性。
适用场景:适用于图像和二维几何形状的相似度比较,特别是需要旋转不变性的场景。
5.傅里叶描述符(Fourier Descriptors)
数据结构
• 频域表示:通过傅里叶变换,将图形的轮廓表示为频域特征。
• 特征系数:傅里叶系数作为特征向量表示图形。
数学联邦政治世界观提示您:看后求收藏(同人小说网http://tongren.me),接着再看更方便。