如何简单规避冗余参数对曲面方程拟合的影响

原链接: https://community.bwbot.org/topic/92
运行测试平台:小强ROS机器人

曲面方程(可以是高维)的参数通常都满足这样一个条件

参数同时放大一个倍数,曲面方程不变,以平面方程为例:
A*x+B*y+C*z+D=0
让A、B 、C 、D同时放大两倍,原方程表示的平面显然不变

用多个点来拟合一个曲面时,因为上述性质,会导致参数空间存在一个稳定的平凡解,用迭代法求解时,算法容易陷入这个无意义的平凡解,因而拟合失败。

平凡解:所有参数为零

规避这个平凡解的办法是,将平凡解从参数空间中消除,通常的实现方式是修改算法,增加参数限制条件。
本文要介绍的一个小技巧是:

直接固定一个参数,因为参数的绝对值没有意义,相对大小才是有意义的,所以可以直接将一个参数固定为1

这个技巧需要注意的地方是:参数有多个,我们需要固定的参数的真实值不能为零(零值没有比值,所以不能用)。在实际运用时,我们虽然不知道参数的真实值(知道了就不求了),但可以确定某个参数肯定不能为零,因此固定参数的选择还是很容易实现的,本方法的可行性也就得到了保障。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值