采样模型外表面点云之曲线救国方法

目标

昨天突然有小伙伴要我给一个杯子的完整点云,之前是partical 点云,大概是这样的(如上图),最终要如下图
采样模型外表面点云之曲线救国方法_第1张图片

采样模型外表面点云之曲线救国方法_第2张图片

问题

于是我想到了trimesh,meshlab啥啥啥的。首先打开了meshlab,采样,然而事情并没有那么愉快。好比上面的杯子,模型如下图,那么它是有一定的厚度的,除了外表面,还有内表面。采样的时候,内表面的图也会采到。最终如下图所示。
采样模型外表面点云之曲线救国方法_第3张图片
采样模型外表面点云之曲线救国方法_第4张图片
内表面是存在的,所以个人猜想通常的从面上采点,或者选取顶点,都会保留了内表面的点。要怎样才才能得到外表面的点呢?

骚操作

上面的部分点云,是从深度图转来了。那么只要围着物体外面拍一圈,就可以得到属于物体外表面点云。
懒人于是直接想着,直接拍物体的正面,反面,直接一拼,就可以把物体拼出来了,结果如下。两个面在拼合出点云十分稀疏甚至是哪个地方没有点云。这里个人理解是虽然被子是圆的,但其实是一段一段的短短的直线连接起来了,恰巧在正反两面的拼接处,是一个平行于相机拍摄方向的面,故中间那里没有拍到,只得到面的两条边缘

采样模型外表面点云之曲线救国方法_第5张图片

采样模型外表面点云之曲线救国方法_第6张图片

采样模型外表面点云之曲线救国方法_第7张图片

最终是用了三个面去恢复完整的点云。
这种方法要求对渲染有一定的了解,采样出来点云也不能保证是符合某种分布采样得到的。

你可能感兴趣的:(采样模型外表面点云之曲线救国方法)