专栏简介 | ||
💒个人主页 |
📖心灵鸡汤📖 我们唯一拥有的就是今天,唯一能把握的也是今天 建议把本文当作笔记来看,据说专栏目录里面有相应视频🤫 |
📰专栏目录 |
一、拟合直线
1.字段
列举部分,更多请查看官方文档。
DIST_L1 | 这是L1距离度量。它计算两点之间的绝对差值之和 |
DIST_L12 | 这是加权L1距离度量。它结合了L1和L2距离的特性 |
DIST_L2 | 这是欧几里得距离,也就是L2距离度量。它计算两点之间的平方差之和的平方根 |
2.方法说明
1.拟合给定点集的直线
fitLine(Mat points, Mat line, int distType, double param, double reps, double aeps) | |
参数: | |
points | 输入的2D或3D点向量 |
line | 输出参数,表示拟合得到的直线的参数。在2D拟合的情况下,它应该是一个4个元素的向量(如Vec4f) - (vx,vy,x0,y0),其中(vx,vy)是与直线共线的归一化向量,(x0,y0)是直线上的点。在3D拟合的情况下,它应该是一个6个元素的向量(如Vec6f) - (vx,vy,vz,x0,y0,z0),其中(vx,vy,vz)是与直线共线的归一化向量,(x0,y0,z0)是直线上的点 |
distType | 距离度量方式,用于M估计。参见DIST_* |
param | 可选参数,对于某些距离类型,它表示数值参数C。如果为0,则选择最优值 |
reps | 足够精度下的半径(坐标原点到直线的距离) |
aeps | 对于角度的足够精度。对于reps和aeps,0.01是一个不错的默认值 |
拟合给定点集的直线,该函数通过最小化
∑ i ρ ( r i ) \sum_i \rho(r_i) i∑ρ(ri)
来拟合一条直线到2D或3D点集,其中
r i 是第 i t h 个点到线和 ρ ( r ) 的距离函数 , r_i 是第 i^{th}个点到线和 \rho(r) 的距离函数, ri是第ith个点到线和ρ(r)的距离函数,
可以是以下之一:
DIST_L2
ρ ( r ) = r 2 / 2 (最简单且最快的最小二乘法方法) \rho (r) = r^2/2 \quad \text{(最简单且最快的最小二乘法方法)} ρ(r)=r2/2(最简单且最快的最小二乘法方法)
DIST_L1
ρ ( r ) = r \rho (r) = r ρ(r)=r
DIST_L12
ρ ( r ) = 2 ⋅ ( 1 + r 2 2 − 1 ) \rho (r) = 2 \cdot ( \sqrt{1 + \frac{r^2}{2}} - 1) ρ(r)=2⋅(1+2r2