solvepnp与solvePnPRansac求头部姿态之二:取点策略

solvepnp与solvePnPRansac求头部姿态之二:取点策略

采用68点

采用solvepnp,将脸模project到原图上,不是特别的准(下图中绿色为标注或者刷库出来的landmark,蓝色为3d脸模经过solvepnp得到的R、T投影得到的):
请添加图片描述
68点看也还可以:
请添加图片描述
看810张图片的68点都感觉还可以啊:
请添加图片描述
请添加图片描述

采用ransac,将脸模project到原图上,经常性地更大的误差:
绿色为标注的landmark,蓝色为project的脸模的landmark
从68点投影看,主要是脸小了一圈,会导致距离计算不准:
请添加图片描述
即使将ransac的参数也改为cv2.SOLVEPNP_ITERATIVE,照样不准:

请添加图片描述

采用6点

采用solvepnp,将脸模project到原图上,效果要好很多:
请添加图片描述
但其实从68点的复原看,效果不行:
请添加图片描述
感觉像是这个角度了:
请添加图片描述

810张图片只有1张出现异常,其他的都基本吻合:
请添加图片描述
请添加图片描述

采用ransac,将脸模project到原图上,也比68点的好,从6点看比solvepnp的差:
请添加图片描述
但看68点好一些:请添加图片描述

ransac还是会出现下面这种:
请添加图片描述
再例如:
请添加图片描述

耗时

采用68点solve pnp的时间(0.45ms)大约是6点solvepnp(0.32ms)的1.4倍
采用68点solve pnpRansac的时间(3.6ms)大约是6点solvepnpRansac(0.6ms)的6倍

结论

1、采用68点的风险在于人脸yaw比较大时,不可见的一侧脸的标注一般与实际脸模不符,可能导致偏差交大

2、从整体效果看,solvepnp比solvepnpRansac要好

3、建议采用68点的solvepnp,刷完之后要project过来,逐个结果地校验

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值