CN107610061B - 一种基于二维投影的保边点云孔洞修补方法 - Google Patents
一种基于二维投影的保边点云孔洞修补方法 Download PDFInfo
- Publication number
- CN107610061B CN107610061B CN201710763883.5A CN201710763883A CN107610061B CN 107610061 B CN107610061 B CN 107610061B CN 201710763883 A CN201710763883 A CN 201710763883A CN 107610061 B CN107610061 B CN 107610061B
- Authority
- CN
- China
- Prior art keywords
- point
- points
- projection
- point cloud
- cloud hole
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
Abstract
本发明一种基于二维投影的保边点云孔洞修补方法,将确定的有序点云孔洞边界点采用保边长度投影法,向点云孔洞边界点的拟合平面上保边长度投影,然后将投影点依次连接,形成以保边长度投影点为顶点的平面多边形投影区域;然后对投影区域进行区域分解和点集化填充,根据点云孔洞边界点使用径向基函数插值映射技术构造点云孔洞曲面,再将填充点反映射到构造的点云孔洞曲面上,完成点云孔洞的修补;本方法用于三维点云模型上的孔洞修补时,保持孔洞尖锐特征的修补,提高了修补的精度。
Description
技术领域
本发明属于计算机图像修复方法技术领域,涉及一种基于二维投影的保边点云孔洞修补方法。
背景技术
三维点云模型广泛的应用于文化遗产保护、医学模型修复及虚拟漫游等领域,也是逆向工程建模应用的基础工作,如何精确获取三维点云模型是计算机图形学和虚拟现实的一个重要研究领域。
随着三维扫描设备测量精度的不断提高,由实物获取数字化三维点云模型的工作越来越精确,然而由于模型自身缺陷、测量中遮挡及反光等因素,导致所测点云数据有缺失和表面孔洞的存在,从而影响三维模型的视觉效果、识别的准确度以及曲面重建后的质量,给三维点云模型研究及应用造成了不可逾越的障碍。因此,孔洞修补成为基于点云的三维物体识别、曲面重构等研究和应用的基础性工作,具有重要价值。
对于孔洞修补技术国内外学者进行了大量的研究,并取得了一定的成果。残缺点云数据修补有很多方法。目前比较常用的方法有两种:第一种方法是先将点云进行三角化等处理得到网格模型,然后再对网格模型上的孔洞进行修补,然而点云模型的网格化本来就是一个难题,其对点云的空间分布规则要求比较高,稍微“不规整”的点云就会导致该方法的不能适应。如果网格化处理的不得当,则会改变原有点云模型的分布以及形状,这种情况下即使很好的网格化补洞修补方法,对点云孔洞修补也是不理想,因此该方法很难保证点云模型能够正确的网格化,特别是散乱点云。第二种方法是直接对点云上的孔洞进行修补,例如:先建立无序点集的空间关系,接着采用相关算法得到孔洞边界特征,最后利用拟合孔洞曲面等方法完成孔洞的修补,因为该方法不需要对点云模型进行网格化,因此孔洞修补效率得到一定的改善,但在修补点与孔洞边界点分布的一致性、如何保持孔洞处尖锐特征等问题上仍有待提高。
发明内容
本发明的目的是提供一种基于二维投影的保边点云孔洞修补方法,解决在三维点云模型上的孔洞修补时,如何保持孔洞尖锐特征的技术问题。
本发明所采用的技术方案是,一种基于二维投影的保边点云孔洞修补方法,具体按照以下步骤实施:
步骤1:确定点云孔洞的边界点;
步骤2:对步骤1得到的点云孔洞边界点进行排序并连线,形成以有序点云孔洞边界点为顶点的空间多边形;
步骤3:对由步骤2得到的空间多边形,求解其每个顶点所对应的夹角,选择最小夹角处所对应的点云孔洞边界点作为点云孔洞边界点的起始边界点;
步骤4:将步骤2形成的有序点云孔洞边界点,从步骤3确定的起始边界点开始,将与起始边界点相邻排列且与起始边界点距离最近的点云孔洞边界点定义为第二个点云孔洞边界点,依次类推,采用保边长度投影法,向点云孔洞边界点的拟合平面上保边长度投影,然后将投影点按顺序连接,形成以保边长度投影点为顶点的平面多边形投影区域;
步骤5:将经步骤4得到的以保边长度投影点为顶点的平面多边形投影区域,进行区域分解,确定分解后各小区域边线的顶点位置坐标信息;再用填充点对各小区域点集化填充,并计算填充点的坐标信息;
步骤6:根据点云孔洞边界点使用径向基函数插值映射技术构造点云孔洞曲面,将步骤5得到的填充点坐标信息反映射到构造的点云孔洞曲面上,完成点云孔洞的修补。
本发明的特点还在于:
步骤1具体按照以下步骤实施:
步骤1.1:对于模型点集合M中的每一个点p,采用K-近邻法求点p的近邻点集合N(p);再利用基于最小二乘法平面拟合的点云法矢算法计算出点p的法矢,将点p及其近邻点集合N(p)中的所有点投影到通过点p并与点p法矢垂直的切平面Sp上,得到近邻点集合N(p)中所有点的投影点集合N′(p);
步骤1.2:以点p为坐标原点,在步骤1.1中的切平面Sp上建立平面坐标系,并将投影点集合N′(p)中的投影点划分到平面坐标系的四个象限中;
步骤1.3:在步骤1.2建立的平面坐标系中,若有一个象限没有投影点集合N′(p)中的投影点存在,则确定点p为点云孔洞的边界点,同时将点p加入集合A;若在步骤1.2建立的平面坐标系的四个象限中都有投影点集合N′(p)中的投影点pi(i=0,1,……,n)存在,则依据下述步骤1.4和步骤1.5继续判断点p是否为点云孔洞的边界点;
步骤1.4:将投影点集合N′(p)中的投影点按照顺时针排序,对于投影点集合N′(p)中的相邻点pi(i=0,1,…,n)和pi+1(i=0,1,…,n),按式(1)计算其对应向量间的夹角θi,并将夹角θi保存在集合C中,式(1)具体如下:
步骤1.5:对于步骤1.4获取的集合C中的夹角θi(i=0,1,…,n),选取最大角度θmax,若θmax>β,β为给定角度阈值,则判断点p为点云孔洞的边界点,加入集合A;
步骤1.6:重复步骤1.1~步骤1.5,直到模型点集合M中所有点都遍历完,得到点云孔洞边界点集合A,集合A中的点即为确定的点云孔洞的边界点。
步骤2具体按照以下步骤实施:
步骤2.1:从步骤1得到的点云孔洞边界点集合A中任取一个点云孔洞边界点p,将p加入有序点云孔洞边界点集合B,并作为有序点云孔洞边界点集合B中的第一个点;
步骤2.2:使用搜索最近邻点算法按照顺时针方向找到点p的最近邻点q,q∈A,并将点q加入有序点云孔洞边界点集合B,作为有序点云孔洞边界点集合B中的第二个点,并将下一搜索点置为点q,继续使用搜索最近邻点算法按照顺时针方向找到点q的近邻点,并将点q的近邻点作为有序点云孔洞边界点集合B中的第三个点,依次类推;
步骤2.3:重复步骤2.2,直到点云孔洞边界点集合A中的所有点云孔洞边界点排序完,得到有序点云孔洞边界点集合B,并按第一个点、第二个点、第三个点、……、第n个点、第一个点的顺序依次连线形成空间多边形D,空间多边形D即为以有序点云孔洞边界点为顶点的空间多边形。
步骤4具体按照以下步骤实施:
步骤4.1:将步骤3确定的点云孔洞边界点的起始边界点pm,记作起始边界点p0;找到步骤2得到的有序点云孔洞边界点集合B中,与记作起始边界点p0相连的,并且与记作起始边界点p0距离最近的点云孔洞边界点,记作点p1,并将点p0到点p1的方向标记为方向Direction;再将有序点云孔洞边界点集合B中和记作点p1的点相连的点,记作点p2,依次类推,将有序点云孔洞边界点集合B中的其余点按顺序分别记作点p3、p4、……、pn;
步骤4.2:用最小二乘法求得步骤1确定的点云孔洞边界点的拟合平面,记作:拟合平面S;将步骤4.1中的点p0和点p1正视投影在拟合平面S上,点p0的正视投影点用p′0表示,当点p0和点p1的连线和拟合平面S平行时,点p1的正视投影点用p′1表示,当点p0和点p1的连线和拟合平面S不平行时,点p1的正视投影点用点p″1表示;若点p0和点p1的连线和拟合平面S平行,就将p′1作为点p1在拟合平面S上的保边长度投影点;若点p0和点p1的连线和拟合平面S不平行,则依据步骤4.3计算点p1在拟合平面S上的保边长度投影点p′1;
步骤4.3:经步骤4.2后,计算点p0到点p1的距离d(p0,p1),具体算法如下:
在点p′0和点p″1的延长线上,取点p′1,使得:
d(p0,p1)=d(p′0,p′1) (3);
其中:
则点p′1为点p1在拟合平面S上的保边长度投影点;
步骤4.4:步骤4.2和步骤4.3确定了点p0和点p1的保边长度投影点p′0和p′1,并加入保边长度投影点集合BP中,进一步确定步骤4.1中的点p2的保边长度投影点p′2,具体方法如下:
以点p′0为圆心,以d(p0,p2)为半径画圆以点p1的保边长度投影点p′1为圆心,以d(p1,p2)为半径画圆圆和的交点分别是点p′2和点p″2,选择与步骤4.1标记方向Direction相同方向的点p′2作为步骤4.1中的点p2在拟合平面S上的保边长度投影点,并将其加入到保边长度投影点集合BP中;
步骤4.5:重复步骤4.4,分别将步骤4.1中的点p3、p4、……、pn的保边长度投影点求解出来,记作p′3、p′4、……、p′n,分别加入到保边长度投影点集合BP中;将投影点p′0、p′1、p′3、p′4、……、p′n、p′0依次连接,形成以保边长度投影点为顶点的平面多边形投影区域D′。
步骤5具体按照以下步骤实施:
步骤5.1:计算点云孔洞边界点投影在二维平面上的投影点的平均密度avg;
根据步骤1求出的点云孔洞边界点,用K-近邻法求得点云孔洞边界点的k个近邻点;利用基于最小二乘法平面拟合的点云法矢算法计算出点云孔洞边界点的法矢,将通过点云孔洞边界点并与点云孔洞边界点法矢垂直的平面,称为点云孔洞边界点的切平面;将点云孔洞边界点和它的k个近邻点投影在点云孔洞边界点的切平面上,形成点集A′,求解点集A′的平均密度avg;
步骤5.2:投影区域分解;
将步骤4得到的以保边长度投影点为顶点的平面多边形投影区域D′,对平面多边形投影区域D′进行分解,确定分解后各小区域边线的顶点位置坐标信息;
步骤5.3:投影区域点集化;
使用步骤5.1中求得的点集A′的平均密度avg,用点来填充步骤5.2中投影区域分解后的小区域,并计算填充点的坐标信息。
步骤6具体按照以下步骤实施:
步骤6.1:根据点云孔洞边界点使用径向基函数插值映射技术构造点云孔洞曲面,根据径向基函数的插值理论,径向基函数f(x)表示为如下形式:
x是曲面上的任意点,N是给定的点个数,g(x)是线性多项式的函数,可表示为:
g(x)=c1+c2x+c3y+c4z (7);
其中c1,c2,c3,c4为未知系数,dj的选取应当满足正交条件:
求解权值dj,选取的插值约束点是三维空间点云孔洞边界点和其周围的k个近邻点,附加约束点就是三维点云孔洞边界点在点云孔洞边界点的拟合平面S上的保边长度投影点,联立公式(5),得到bi=f(bi P),即:
则式(10)修改为如下形式:
式(5)的系数矩阵是对称矩阵,径向基函数的适当选取可以保证系数矩阵是正定的,使得方程有解并且是唯一的;
式(10)变形为如下形式:
由此解出dj和g(x)的系数,解出隐式曲面方程
步骤6.2:将步骤5.3得到的填充点反映射到步骤6.1构造的点云孔洞曲面上,完成点云孔洞的修补。
步骤5.1中k的值为6。
本发明的有益效果在于:
(1)采用一种在二维投影时,保持投影前后边界点连线长度不变的投影方法,进行点云孔洞修补,针对在三维点云模型上的孔洞修补时,如何保持孔洞尖锐特征的技术问题给出了一种新的解决方案;
(2)用基于二维投影的保边点云孔洞修补方法进行点云孔洞修补,提高了点云孔洞修补的精度;
(3)本发明解决了在三维点云模型上的孔洞修补时,保持孔洞尖锐特征的技术问题。
附图说明
图1(a)是本发明方法中点p及其临近点投影到通过点p并与点p法矢垂直的切平面上的投影点的结构示意图;
图1(b)是本发明方法中基于夹角大小确定点云孔洞边界点的结构示意图;
图2是本发明方法中table模型点云孔洞边界点三维效果图;
图3是本发明方法中table模型中有序点云孔洞边界点连线形成空间多边形的三维效果图;
图4(a)是本发明方法中当点p0和点p1的连线和点云孔洞边界点的拟合平面S平行时,确定点p1的保边长度投影点p′1的结构示意图;
图4(b)是本发明方法中当点p0和点p1的连线和点云孔洞边界点的拟合平面S不平行时,确定点p1的保边长度投影点p′1的结构示意图;
图5(a)是本发明方法中三维空间点云孔洞边界点的结构示意图;
图5(b)是本发明方法中点云孔洞边界点在点云孔洞边界点的拟合平面S上的保边长度投影点在二维空间中的结构示意图;
图5(c)是本发明方法中确定点p2在点云孔洞边界点的拟合平面S上的保边长度投影点p′2的结构示意图;
图5(d)是本发明方法中确定点p3在点云孔洞边界点的拟合平面S上的保边长度投影点p′3 ′的结构示意图;
图5(e)是本发明方法中确定点p4在点云孔洞边界点的拟合平面S上的保边长度投影点p′4的结构示意图;
图6是本发明方法中table模型中有序点云孔洞边界点在点云孔洞边界点的拟合平面S上的保边长度投影点,按顺序依次连线,形成以保边长度投影点为顶点的平面多边形投影区域的三维效果图;
图7(a)是本发明方法中以有序点云孔洞边界点在点云孔洞边界点的拟合平面S上的保边长度投影点为多边形顶点,围成平面多边形投影区域的结构示意图;
图7(b)是本发明方法中以有序点云孔洞边界点在点云孔洞边界点的拟合平面S上的保边长度投影点为多边形顶点,围成平面多边形投影区域,对该投影区域进行区域分解的结构示意图;
图7(c)是本发明方法中以有序点云孔洞边界点在点云孔洞边界点的拟合平面S上的保边长度投影点为多边形顶点,围成平面多边形投影区域,对该投影区域进行区域分解后,进行点集化填充的结构示意图;
图8(a)是本发明方法中table模型的原始模型的三维效果图;
图8(b)是本发明方法中table模型的待修补模型的三维效果图;
图8(c)是本发明方法中table模型的修补后模型的三维效果图。
具体实施方式
下面结合附图和具体实施方式对本发明进行详细说明。
本发明一种基于二维投影的保边点云孔洞修补方法,具体按照以下步骤实施:
步骤1:确定点云孔洞的边界点,具体按照以下步骤实施:
步骤1.1:对于模型点集合M中的每一个点p,采用K-近邻法求点p的近邻点集合N(p);再利用基于最小二乘法平面拟合的点云法矢算法计算出点p的法矢,将点p及其近邻点集合N(p)中的所有点投影到通过点p并与点p法矢垂直的切平面Sp上,得到近邻点集合N(p)中所有点的投影点集合N′(p);
步骤1.2:以点p为坐标原点,在步骤1.1中的切平面Sp上建立平面坐标系,并将投影点集合N′(p)中的投影点划分到平面坐标系的四个象限中,如图1(a)所示;
步骤1.3:在图1(a)所示的平面坐标系中,若有一个象限没有投影点集合N′(p)中的投影点存在,则确定点p为点云孔洞的边界点,同时将点p加入集合A;若图1(a)所示的平面坐标系的四个象限中都有投影点集合N′(p)中的投影点pi(i=0,1,……,n)存在,则依据下述步骤1.4和步骤1.5继续判断点p是否为点云孔洞的边界点;
步骤1.4:将投影点集合N′(p)中的投影点按照顺时针排序,如图1(b)所示,对于投影点集合N′(p)中的相邻点pi(i=0,1,…,n)和pi+1(i=0,1,…,n),按式(1)计算其对应向量间的夹角θi,并将夹角θi保存在集合C中,式(1)具体如下:
步骤1.5:对于步骤1.4获取的集合C中的夹角θi(i=0,1,…,n),选取最大角度θmax,若θmax>β(β为给定角度阈值),则判断点p为点云孔洞的边界点,加入集合A;
步骤1.6:重复步骤1.1~步骤1.5,直到模型点集合M中所有点都遍历完,得到点云孔洞边界点集合A。
在table模型具有尖锐特征的一个尖角处挖孔洞,图2是本发明方法中table模型点云孔洞边界点三维效果图,从图上可以看出点云孔洞边界点的分布。
步骤2:对步骤1得到的点云孔洞边界点进行排序并连线,形成以有序点云孔洞边界点为顶点的空间多边形,具体按照以下步骤实施:
步骤2.1:从步骤1得到的点云孔洞边界点集合A中任取一个点云孔洞边界点p,将p加入有序点云孔洞边界点集合B,并作为有序点云孔洞边界点集合B中的第一个点;
步骤2.2:使用搜索最近邻点算法按照顺时针方向找到点p的最近邻点q(q∈A),并将点q加入有序点云孔洞边界点集合B,作为有序点云孔洞边界点集合B中的第二个点,并将下一搜索点置为点q,继续使用搜索最近邻点算法按照顺时针方向找到点q的近邻点,并将点q的近邻点作为有序点云孔洞边界点集合B中的第三个点,依次类推;
步骤2.3:重复步骤2.2,直到点云孔洞边界点集合A中的所有点云孔洞边界点排序完,得到有序点云孔洞边界点集合B,并按第一个点、第二个点、第三个点、……、第n个点、第一个点的顺序依次连线形成空间多边形D,如图3所示。
步骤3:对由步骤2得到的空间多边形D,求解其每个顶点所对应的夹角,选择最小夹角处所对应的点云孔洞边界点作为起始边界点,具体按照以下步骤实施:
步骤3.1:对步骤2的有序点云孔洞边界点集合B中的每一个点pi(i=0,1,…,n),计算步骤2.3中形成的空间多边形D中顶点pi处所对应的夹角θi(i=0,1,2,…,n);
步骤3.2:比较经步骤3.1得到的θi(i=0,1,2,…,n),找到最小的夹角θm,m∈(0,1…,n);θm所对应的点云孔洞边界点pm,m∈(0,1…,n)就作为点云孔洞边界点的起始边界点,从而得到点云孔洞边界点的起始边界点。
步骤4:将步骤2形成的有序点云孔洞边界点,从步骤3确定的起始边界点开始,将与起始边界点相邻排列且与起始边界点距离最近的点云孔洞边界点定义为第二个点云孔洞边界点,依次类推,采用保边长度投影法,向点云孔洞边界点的拟合平面上保边长度投影,再将投影点按顺序连接,形成以保边长度投影点为顶点的平面多边形投影区域,如图6所示,具体按照以下步骤实施:
步骤4.1:将步骤3确定的点云孔洞边界点的起始边界点pm,记作起始边界点p0;找到步骤2得到的有序点云孔洞边界点集合B中,与记作起始边界点p0相连的,并且与记作起始边界点p0距离最近的点云孔洞边界点,记作点p1,并将点p0到点p1的方向标记为方向Direction;再将有序点云孔洞边界点集合B中和记作点p1的点相连的点,记作点p2,依次类推,将有序点云孔洞边界点集合B中的其余点按顺序分别记作点p3、p4、……、pn;
步骤4.2:用最小二乘法求得步骤1确定的点云孔洞边界点的拟合平面,记作:拟合平面S;将步骤4.1中的点p0和点p1正视投影在拟合平面S上,点p0的正视投影点用p′0表示,当点p0和点p1的连线和拟合平面S平行时,点p1的正视投影点用p′1表示,当点p0和点p1的连线和拟合平面S不平行时,点p1的正视投影点用点p″1表示;若点p0和点p1的连线和拟合平面S平行,就将p′1作为点p1在拟合平面S上的保边长度投影点;若点p0和点p1的连线和拟合平面S不平行,则依据步骤4.3计算点p1在拟合平面S上的保边长度投影点p′1;
步骤4.3:经步骤4.2后,计算点p0到点p1的距离d(p0,p1),具体算法如下:
在点p′0和点p″1的延长线上,取点p′1,使得:
d(p0,p1)=d(p′0,p′1) (3);
其中:
则点p′1为点p1在拟合平面S上的保边长度投影点;
步骤4.4:步骤4.2和步骤4.3确定了点p0和点p1的保边长度投影点p′0和p′1,并加入保边长度投影点集合BP中,进一步确定步骤4.1中的点p2的保边长度投影点p′2,具体方法如下:
以点p′0为圆心,以d(p0,p2)为半径画圆以点p1的保边长度投影点p′1为圆心,以d(p1,p2)为半径画圆圆和的交点分别是点p′2和点p″2,选择与步骤4.1标记方向Direction相同方向的点p′2作为步骤4.1中的点p2在拟合平面S上的保边长度投影点,并将其加入到保边长度投影点集合BP中,如图5(c)所示;
步骤4.5:重复步骤4.4,分别将步骤4.1中的点p3、p4、……、pn的保边长度投影点求解出来,记作p′3、p′4、……、p′n,分别加入到保边长度投影点集合BP中;将投影点p′0、p′1、p′3、p′4、……、p′n、p′0依次连接,形成以保边长度投影点为顶点的平面多边形投影区域D′。
步骤5:将经步骤4得到的以保边长度投影点为顶点的平面多边形投影区域D′,进行区域分解,确定分解后各小区域边线的顶点位置坐标信息;再用填充点对各小区域点集化填充,并计算填充点的坐标信息,具体按照以下步骤实施:
步骤5.1:计算点云孔洞边界点投影在二维平面上的投影点的平均密度avg;
根据步骤1求出的点云孔洞边界点,用K-近邻法求得点云孔洞边界点的k个近邻点,通过实验,k的优选值为6;利用基于最小二乘法平面拟合的点云法矢算法计算出点云孔洞边界点的法矢,将通过点云孔洞边界点并与点云孔洞边界点法矢垂直的平面,称为点云孔洞边界点的切平面;将点云孔洞边界点和它的k个近邻点投影在点云孔洞边界点的切平面上,形成点集A′,求解点集A′的平均密度avg;
步骤5.2:投影区域分解;
将步骤4得到的以保边长度投影点为顶点的平面多边形投影区域D′,如图7(a)所示,对平面多边形投影区域D′进行分解,确定分解后各小区域边线的顶点位置坐标信息,如图7(b)所示;
步骤5.3:投影区域点集化;
使用步骤5.1中求得的点集A′的平均密度avg,用点来填充步骤5.2中投影区域分解后的小区域,并计算填充点的坐标信息,如图7(c)所示。
步骤6:根据点云孔洞边界点使用径向基函数插值映射技术构造点云孔洞曲面,将步骤5得到的填充点坐标信息反映射到构造的点云孔洞曲面上,完成点云孔洞的修补,具体按照以下步骤实施:
步骤6.1:根据点云孔洞边界点使用径向基函数插值映射技术构造点云孔洞曲面,根据径向基函数的插值理论,径向基函数f(x)表示为如下形式:
x是曲面上的任意点,N是给定的点个数,g(x)是线性多项式的函数,可表示为:
g(x)=c1+c2x+c3y+c4z (7);
其中c1,c2,c3,c4为未知系数,dj的选取应当满足正交条件:
求解权值dj,选取的插值约束点是三维空间点云孔洞边界点和其周围的k个近邻点,附加约束点就是三维点云孔洞边界点在点云孔洞边界点的拟合平面S上的保边长度投影点,联立公式(5),得到bi=f(bi P),即:
则式(10)修改为如下形式:
式(5)的系数矩阵是对称矩阵,径向基函数的适当选取可以保证系数矩阵是正定的,使得方程有解并且是唯一的;
式(10)变形为如下形式:
由此解出dj和g(x)的系数,解出隐式曲面方程
步骤6.2:将步骤5.3得到的填充点反映射到步骤6.1构造的点云孔洞曲面上,完成点云孔洞的修补。
图8(c)是本发明方法中table模型的修补后模型的三维效果图,从图上可以看出用基于二维投影的保边投影方法,修补点云孔洞后的修补效果。
本发明一种基于二维投影的保边点云孔洞修补方法,针对在三维点云模型上的孔洞修补时,如何保持孔洞尖锐特征的技术问题给出了一种新的解决方案;保边长度投影方式进一步提高了点云孔洞修补的精度。
Claims (7)
1.一种基于二维投影的保边点云孔洞修补方法,其特征在于,该方法包括下列步骤:
步骤1:确定点云孔洞的边界点;
步骤2:对步骤1得到的点云孔洞边界点进行排序并连线,形成以有序点云孔洞边界点为顶点的空间多边形;
步骤3:对由步骤2得到的空间多边形,求解其每个顶点所对应的夹角,选择最小夹角处所对应的点云孔洞边界点作为点云孔洞边界点的起始边界点;
步骤4:将步骤2形成的有序点云孔洞边界点,从步骤3确定的起始边界点开始,将与起始边界点相邻排列且与起始边界点距离最近的点云孔洞边界点定义为第二个点云孔洞边界点,依次类推,采用保边长度投影法,向点云孔洞边界点的拟合平面上保边长度投影,然后将投影点按顺序连接,形成以保边长度投影点为顶点的平面多边形投影区域;
步骤5:将经步骤4得到的以保边长度投影点为顶点的平面多边形投影区域,进行区域分解,确定分解后各小区域边线的顶点位置坐标信息;再用点来填充各小区域,并计算填充点的坐标信息;
步骤6:根据点云孔洞边界点使用径向基函数插值映射技术构造点云孔洞曲面,将步骤5得到的填充点坐标信息反映射到构造的点云孔洞曲面上,完成点云孔洞的修补。
2.根据权利要求1所述的一种基于二维投影的保边点云孔洞修补方法,其特征在于,所述步骤1具体按照以下步骤实施:
步骤1.1:对于模型点集合M中的每一个点p,采用K-近邻法求点p的近邻点集合N(p);再利用基于最小二乘法平面拟合的点云法矢算法计算出点p的法矢,将点p及其近邻点集合N(p)中的所有点投影到通过点p并与点p法矢垂直的切平面Sp上,得到近邻点集合N(p)中所有点的投影点集合N′(p);
步骤1.2:以点p为坐标原点,在步骤1.1中的切平面Sp上建立平面坐标系,并将投影点集合N′(p)中的投影点划分到平面坐标系的四个象限中;
步骤1.3:在步骤1.2建立的平面坐标系中,若有一个象限没有投影点集合N′(p)中的投影点存在,则确定点p为点云孔洞的边界点,同时将点p加入集合A;若在步骤1.2建立的平面坐标系的四个象限中都有投影点集合N′(p)中的投影点pi,i=0,1,…,n,存在,则依据下述步骤1.4和步骤1.5继续判断点p是否为点云孔洞的边界点;
步骤1.4:将投影点集合N′(p)中的投影点按照顺时针排序,对于投影点集合N′(p)中的相邻点pi和pi+1,i=0,1,…,n,按式(1)计算其对应向量间的夹角θi,并将夹角θi保存在集合C中,式(1)具体如下:
步骤1.5:对于步骤1.4获取的集合C中的夹角θi,i=0,1,…,n,选取最大角度θmax,若θmax>β,β为给定角度阈值,则判断点p为点云孔洞的边界点,加入集合A;
步骤1.6:重复步骤1.1~步骤1.5,直到模型点集合M中所有点都遍历完,得到点云孔洞边界点集合A,集合A中的点即为确定的点云孔洞的边界点。
3.根据权利要求1所述的一种基于二维投影的保边点云孔洞修补方法,其特征在于,所述步骤2具体按照以下步骤实施:
步骤2.1:从步骤1得到的点云孔洞边界点集合A中任取一个点云孔洞边界点p,将p加入有序点云孔洞边界点集合B,并作为有序点云孔洞边界点集合B中的第一个点;
步骤2.2:使用搜索最近邻点算法按照顺时针方向找到点p的最近邻点q,q∈A,并将点q加入有序点云孔洞边界点集合B,作为有序点云孔洞边界点集合B中的第二个点,并将下一搜索点置为点q,继续使用搜索最近邻点算法按照顺时针方向找到点q的近邻点,并将点q的近邻点作为有序点云孔洞边界点集合B中的第三个点,依次类推;
步骤2.3:重复步骤2.2,直到点云孔洞边界点集合A中的所有点云孔洞边界点排序完,得到有序点云孔洞边界点集合B,并按第一个点、第二个点、第三个点、……、第n个点、第一个点的顺序依次连线形成空间多边形D,空间多边形D即为以有序点云孔洞边界点为顶点的空间多边形。
4.根据权利要求1所述的一种基于二维投影的保边点云孔洞修补方法,其特征在于,所述步骤4具体按照以下步骤实施:
步骤4.1:将步骤3确定的点云孔洞边界点的起始边界点pm,记作起始边界点p0;找到步骤2得到的有序点云孔洞边界点集合B中,与记作起始边界点p0相连的,并且与记作起始边界点p0距离最近的点云孔洞边界点,记作点p1,并将点p0到点p1的方向标记为方向Direction;再将有序点云孔洞边界点集合B中和记作点p1的点相连的点,记作点p2,依次类推,将有序点云孔洞边界点集合B中的其余点按顺序分别记作点p3、p4、……、pn;
步骤4.2:用最小二乘法求得步骤1确定的点云孔洞边界点的拟合平面,记作:拟合平面S;将步骤4.1中的点p0和点p1正视投影在拟合平面S上,点p0的正视投影点用p′0表示,当点p0和点p1的连线和拟合平面S平行时,点p1的正视投影点用p′1表示,当点p0和点p1的连线和拟合平面S不平行时,点p1的正视投影点用点p″1表示;若点p0和点p1的连线和拟合平面S平行,就将p′1作为点p1在拟合平面S上的保边长度投影点;若点p0和点p1的连线和拟合平面S不平行,则依据步骤4.3计算点p1在拟合平面S上的保边长度投影点p′1;
在点p′0和点p″1的延长线上,取点p′1,使得:
d(p0,p1)=d(p′0,p′1) (3);
其中:
则点p′1为点p1在拟合平面S上的保边长度投影点;
步骤4.4:步骤4.2和步骤4.3确定了点p0和点p1的保边长度投影点p′0和p′1,并加入保边长度投影点集合BP中,进一步确定步骤4.1中的点p2的保边长度投影点p′2,具体方法如下:
以点p′0为圆心,以d(p0,p2)为半径画圆以点p1的保边长度投影点p′1为圆心,以d(p1,p2)为半径画圆圆和的交点分别是点p′2和点p″2,选择与步骤4.1标记方向Direction相同方向的点p′2作为步骤4.1中的点p2在拟合平面S上的保边长度投影点,并将其加入到保边长度投影点集合BP中;
步骤4.5:重复步骤4.4,分别将步骤4.1中的点p3、p4、……、pn的保边长度投影点求解出来,记作p′3、p′4、……、p′n,分别加入到保边长度投影点集合BP中;将投影点p′0、p′1、p′3、p′4、……、p′n、p′0依次连接,形成以保边长度投影点为顶点的平面多边形投影区域D′。
5.根据权利要求1所述的一种基于二维投影的保边点云孔洞修补方法,其特征在于,所述步骤5具体按照以下步骤实施:
步骤5.1:计算点云孔洞边界点投影在二维平面上的投影点的平均密度avg;
根据步骤1求出的点云孔洞边界点,用K-近邻法求得点云孔洞边界点的k个近邻点;利用基于最小二乘法平面拟合的点云法矢算法计算出点云孔洞边界点的法矢,将通过点云孔洞边界点并与点云孔洞边界点法矢垂直的平面,称为点云孔洞边界点的切平面;将点云孔洞边界点和它的k个近邻点投影在点云孔洞边界点的切平面上,形成点集A′,求解点集A′的平均密度avg;
步骤5.2:投影区域分解;
将步骤4得到的以保边长度投影点为顶点的平面多边形投影区域D′,对平面多边形投影区域D′进行分解,确定分解后各小区域边线的顶点位置坐标信息;
步骤5.3:投影区域点集化;
使用步骤5.1中求得的点集A′的平均密度avg,用点来填充步骤5.2中投影区域分解后的小区域,并计算填充点的坐标信息。
6.根据权利要求1所述的一种基于二维投影的保边点云孔洞修补方法,其特征在于,所述步骤6具体按照以下步骤实施:
步骤6.1:根据点云孔洞边界点使用径向基函数插值映射技术构造点云孔洞曲面,根据径向基函数的插值理论,径向基函数f(x)表示为如下形式:
x是曲面上的任意点,N是给定的点个数,g(x)是线性多项式的函数,可表示为:
g(x)=c1+c2x+c3y+c4z (7);
其中c1,c2,c3,c4为未知系数,dj的选取应当满足正交条件:
则式(10)修改为如下形式:
式(5)的系数矩阵是对称矩阵,径向基函数的适当选取可以保证系数矩阵是正定的,使得方程有解并且是唯一的;
式(10)变形为如下形式:
即
由此解出dj和g(x)的系数,解出隐式曲面方程
步骤6.2:将步骤5.3得到的填充点反映射到步骤6.1构造的点云孔洞曲面上,完成点云孔洞的修补。
7.根据权利要求5所述的一种基于二维投影的保边点云孔洞修补方法,其特征在于,所述k的值为6。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710763883.5A CN107610061B (zh) | 2017-08-30 | 2017-08-30 | 一种基于二维投影的保边点云孔洞修补方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710763883.5A CN107610061B (zh) | 2017-08-30 | 2017-08-30 | 一种基于二维投影的保边点云孔洞修补方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107610061A CN107610061A (zh) | 2018-01-19 |
CN107610061B true CN107610061B (zh) | 2020-02-14 |
Family
ID=61056241
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710763883.5A Active CN107610061B (zh) | 2017-08-30 | 2017-08-30 | 一种基于二维投影的保边点云孔洞修补方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107610061B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109147040B (zh) * | 2018-08-28 | 2020-06-30 | 浙江大学 | 基于模板的人体点云孔洞修补方法 |
CN109509174A (zh) * | 2018-10-12 | 2019-03-22 | 桂林电子科技大学 | 一种自动识别真实缺陷孔洞的度量方法 |
US11334969B2 (en) | 2019-03-19 | 2022-05-17 | Sony Group Corporation | Point cloud geometry padding |
CN110415210B (zh) * | 2019-06-14 | 2022-12-02 | 中国电建集团昆明勘测设计研究院有限公司 | 一种基于点云贪婪三角投影构建模型的孔洞检测和修补方法 |
CN112184564A (zh) * | 2020-08-21 | 2021-01-05 | 湖北三江航天红峰控制有限公司 | 一种基于半边排序法的三维孔洞补偿方法 |
CN113542756B (zh) * | 2021-07-04 | 2023-02-10 | 西北工业大学 | 基于平面拟合中心坐标投影的点云空间可伸缩编码几何重构方法 |
CN114266798B (zh) * | 2021-12-14 | 2023-09-22 | 上海应用技术大学 | 基于边界点迭代的点云修复方法 |
CN114219381A (zh) * | 2022-02-23 | 2022-03-22 | 成都工业学院 | 基于空间分解增强的多价值链协同评价系统与方法 |
CN114742723A (zh) * | 2022-03-30 | 2022-07-12 | 河南中原动力智能制造有限公司 | 一种点云孔洞的修补方法、装置、移动终端及存储介质 |
CN116523941B (zh) * | 2022-08-10 | 2023-10-20 | 苏州浩辰软件股份有限公司 | 含孔洞多边形的简化方法、装置 |
CN117274116B (zh) * | 2023-11-22 | 2024-03-05 | 广州中望龙腾软件股份有限公司 | 点云修补方法、装置、存储介质及计算机设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1858801A (zh) * | 2006-06-08 | 2006-11-08 | 东南大学 | 三维扫描的点云孔洞填补方法 |
CN1885349A (zh) * | 2006-07-05 | 2006-12-27 | 东南大学 | 三维扫描的点云孔洞填补方法 |
CN101127123A (zh) * | 2007-09-11 | 2008-02-20 | 东南大学 | 三维扫描点云中基于神经网络的标志点孔洞的填补方法 |
US9007422B1 (en) * | 2014-09-03 | 2015-04-14 | Center Of Human-Centered Interaction For Coexistence | Method and system for mutual interaction using space based augmentation |
CN105631936A (zh) * | 2014-10-31 | 2016-06-01 | 富泰华工业(深圳)有限公司 | 点云修补方法及系统 |
CN107016658A (zh) * | 2017-04-21 | 2017-08-04 | 中北大学 | 基于回溯双向波前法的青铜器点云孔洞修补方法 |
-
2017
- 2017-08-30 CN CN201710763883.5A patent/CN107610061B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1858801A (zh) * | 2006-06-08 | 2006-11-08 | 东南大学 | 三维扫描的点云孔洞填补方法 |
CN1885349A (zh) * | 2006-07-05 | 2006-12-27 | 东南大学 | 三维扫描的点云孔洞填补方法 |
CN101127123A (zh) * | 2007-09-11 | 2008-02-20 | 东南大学 | 三维扫描点云中基于神经网络的标志点孔洞的填补方法 |
US9007422B1 (en) * | 2014-09-03 | 2015-04-14 | Center Of Human-Centered Interaction For Coexistence | Method and system for mutual interaction using space based augmentation |
CN105631936A (zh) * | 2014-10-31 | 2016-06-01 | 富泰华工业(深圳)有限公司 | 点云修补方法及系统 |
CN107016658A (zh) * | 2017-04-21 | 2017-08-04 | 中北大学 | 基于回溯双向波前法的青铜器点云孔洞修补方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107610061A (zh) | 2018-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107610061B (zh) | 一种基于二维投影的保边点云孔洞修补方法 | |
US8711143B2 (en) | System and method for interactive image-based modeling of curved surfaces using single-view and multi-view feature curves | |
Zha et al. | Geometric approaches to input file modification for part quality improvement in additive manufacturing | |
Xu et al. | Reconstruction of scaffolds from a photogrammetric point cloud of construction sites using a novel 3D local feature descriptor | |
CN113178009B (zh) | 一种利用点云分割和网格修补的室内三维重建方法 | |
Di Angelo et al. | A new mesh-growing algorithm for fast surface reconstruction | |
CN108171780A (zh) | 一种基于激光雷达构建室内真实三维地图的方法 | |
US9953110B2 (en) | Apparatus and method for interactively extracting shapes from a point cloud | |
CN108305289B (zh) | 基于最小二乘法的三维模型对称性特征检测方法及系统 | |
Kwok et al. | Efficient optimization of common base domains for cross parameterization | |
CN110838115B (zh) | 运用轮廓线提取和四维曲面拟合的古文物三维模型变化检测方法 | |
US20160138914A1 (en) | System and method for analyzing data | |
CN103279989A (zh) | 一种三维激光成像系统平面点云数据三角化处理方法 | |
CN111581776B (zh) | 一种基于几何重建模型的等几何分析方法 | |
CN111932669A (zh) | 一种基于边坡岩体特征对象的变形监测方法 | |
CN110047133A (zh) | 一种面向点云数据的列车边界提取方法 | |
CN109102535B (zh) | 一种基于构件提取的室内场景重建方法 | |
Nieser et al. | Patch layout from feature graphs | |
CN107895398A (zh) | 结合视觉显著性的浮雕编辑方法 | |
Dyshkant | Comparison of point clouds acquired by 3d scanner | |
Cajthaml | Old maps georeferencing-overview and a new method for map series | |
WO2021154273A1 (en) | Generating 3d printing points using an approximate mathematical expression of a rqb curve | |
Wu et al. | Consistent correspondence between arbitrary manifold surfaces | |
Lv et al. | Point-based integration for 3D object reconstruction from Ladar range images | |
CN117557617B (zh) | 一种基于平面先验优化的多视密集匹配方法、系统及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |