CN109801223A - 一种点云去噪及空洞修补方法 - Google Patents
一种点云去噪及空洞修补方法 Download PDFInfo
- Publication number
- CN109801223A CN109801223A CN201711152983.0A CN201711152983A CN109801223A CN 109801223 A CN109801223 A CN 109801223A CN 201711152983 A CN201711152983 A CN 201711152983A CN 109801223 A CN109801223 A CN 109801223A
- Authority
- CN
- China
- Prior art keywords
- point
- boundary
- cloud
- point cloud
- empty
- 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.)
- Pending
Links
Landscapes
- Image Processing (AREA)
Abstract
本公开涉及一种图像处理技术,特别涉及一种点云去噪及空洞修补方法,包括:去噪:对散乱的点云通过滤波消除噪声点和毛刺,突出点云的特征信息;点云空洞边缘提取:找到经过滤波去噪后的点云的内外边缘,确定内边缘为空洞边缘,进行空洞边缘提取;点云空洞修补:在提取的空洞边缘内部,找到小于设定阈值的点的位置,以该位置为中心设定两层窗口,利用局部邻域信息进行空洞修补。本公开通过对点云进行去噪和填补空洞,利于获取更准确的三维点云,对点云的配准、三维重建有着重要的作用。
Description
技术领域
本发明属于图像处理领域,具体涉及一种点云去噪及空洞修补方法。
背景技术
近年来,随着三维图像扫描技术取得的巨大发展,点云模型的优势也越来越明显。以点云为研究对象的图形学越来越受到关注,它在医学、现代卫星遥感测量、多媒体、机器视觉、智能监控、三维重建、体感交互及3D打印等领域都有非常广泛的应用。数据测量的完整性是三维重建成功的基础,在实际测量和数据采集过程中,所采集的三维点云会存在噪声,或者由于样件局部的遮挡、样件本身的损坏和测量手段的限制,使获得的点云数据有缺失,即存在空洞。
现有的空洞修补算法,对空洞区域内部的修补进行了研究,通过建立Kd_tree自动提取出点云数据的全部边界,利用二次曲面特征参数化边界点列,最后通过径向基函数表示的插值曲面计算位于残缺区域的内部数据点,实现空洞的修补。然而,该算法在具体实施过程中会存在可能因为二次曲面逼近点列误差过大而导致参数化失败的问题,从而不利于点云的配准和三维重建。
发明内容
针对以上不足,本发明提供一种点云去噪及空洞修补方法,通过对散乱的点云进行去噪和空洞修补,可以获取更准确的三维点云,对点云的配准、三维重建有重要作用。
一种点云去噪及空洞修补方法,包括:
S1:去噪:对散乱的点云通过滤波消除噪声点和毛刺,突出点云的特征信息;
S2:点云空洞边缘提取:找到经过滤波去噪后的点云的内外边缘,确定内边缘为空洞边缘,进行空洞边缘提取;
S3:点云空洞修补:在提取的空洞边缘内部,找到小于设定阈值的点的位置,以该位置为中心设定两层窗口,利用局部邻域信息进行空洞修补;
进一步地,所述S1包括:
S11:选择M*N模板窗口,将所述模板窗口沿深度图进行行或列方向的位移滑动,在模板窗口里按照行、列等间距选取n个像素点,其中,n=1,2,3…;
S12:对所述S11中选取的n个像素点的值进行排序并确定中值;
S13:用所述S12中获得的中值替代窗口中心位置原始深度值;
S14:对所述S11~S13进行n次滤波循环,完成点云去噪,其中,n>=2;
进一步地,所述S2包括:
S21:计算三维点云中各数据点的K邻域点,顺序选取三维点云的数据点P作为待测点;
S22:将数据点P的K邻域点投影到其法矢平面内,连接数据点P与邻域点得到向量集;
S23:对边界点进行检测;
S24:将无序的点连成边界线;
S25:对边界线相邻的边界进行叉乘,根据Z轴分量的正负关系和边界线的时针方向确定点云空洞的内外边界;
进一步地,所述S3包括:
S31:记录空洞边界内深度值为0的位置0(x,y);
S32:以0(x,y)为中心,定义一个分内外层的两层窗口;
S33:分别记录内、外层深度值非零像素点的个数Num_in和Num_out;
S34:设定内层阈值th_in和外层阈值th_out;
S35:根据Num_in与th_in或者Num_out与th_out的大小关系确定是否进行空洞修补;
进一步地,所述S23包括:
S231:将数据点P的k邻域点选取距离最近的点作为基准向量;
S232:计算S22中所述向量集中各向量与基准向量之间的夹角,并对夹角值进行升序排列得到夹角集S;
S233:计算夹角集S的序列差得到向量集中相邻向量夹角集L,若L中的最大角度差Lmax>ω,则数据点P为边界点,其中,ω为弧度角,一般取
进一步地,所述点P若为边界点,其K邻域点的分布偏向一侧;所述点P若为内部点,其K邻域点将均匀地分布在点P的周围;
进一步的,所述Z轴分量小于0,则边界线的方向为顺时针且边界线为外边界;反之,Z轴分量大于0,则边界线的方向为逆时针且边界线为内边界;
进一步地,所述外层窗口大于内层窗口;
进一步地,所述S35中的Num_in>th_in或者Num_out>th_out时,计算出内外层中所有深度值非零的像素中数目最多的一个值,并令0(x,y)等于该值,完成空洞修补;反之,Num_in<th_in或者Num_out<th_out时,不需要对0(x,y)位置的点进行修补。
附图说明
图1是本发明实施例的点云去噪及空洞修补方法流程图;
图2是本发明实施例的点云去噪流程图;
图3是本发明实施例的点云空洞边界提取流程图;
图4是本发明实施例的点云空洞修补流程图;
图5(a)-图5(b)是本发明实施例的边界点位置关系示意图;
图6是本发明实施例的两层窗口示意图;
图7是本发明实施例的空洞修补示意图。
具体实施方式
下面结合附图和实施例对本发明的技术方案进行详细说明。
参照图1,一种点云去噪及空洞修补方法,包括:S1:去噪:对散乱的点云通过滤波消除孤立的噪声点和毛刺,以突出点云的特征信息。S2:点云空洞边缘提取:经过滤波去噪后的点云,存在一些空洞,找到点云的内外边缘,确定内边缘为空洞边缘,进行空洞边缘提取。S3:点云空洞修补:在提取的空洞边缘内部,找到小于设定阈值的点的位置,以该位置为中心设定两层窗口,利用局部邻域信息进行空洞修补。
需要说明的是,通过对点云进行去噪、空洞边缘提取和空洞修补等步骤处理,可以有效解决点云数据丢失的问题,从而利于点云的配准和三维重建。
参照图2至图7,对本发明实施例的技术方案和技术效果做进一步的详细描述。
未经处理的三维点云,存在大量的噪声,且深度信息不完整,存在一些空洞,不利于三维重建。因此,本实施例首先进行去噪处理,具体如图2所示:选择一个M*N模板窗口,将该模板窗口沿着深度图进行行或列方向的位移滑动。在模板窗口里按照行、列等间距选取n(其中n=1,2,3…)个像素点,并对n个像素点的值进行排序。排序后所得中值替代窗口中心位置原始深度值。遍历所有散乱三维点云后,首次滤波完成,一部分噪声点和毛刺被消除,但深度图还存在大量的毛刺,因此需要进行n(n>=2)次滤波,直至深度图中所有噪声点和毛刺被消除,点云的特征信息得以显示。
滤波后的三维点云存在空洞,因此需要对点云空洞边缘进行提取,具体如图3所示:计算三维点云中各数据点的K邻域点,顺序选取三维点云的数据点P作为待测点,将数据点P的K邻域点投影到其法矢平面内,连接数据点P与邻域点得到一个向量集。在待输入数据点P的k邻域点选取距离最近的点作为基准向量,记为Qj。计算向量集中各向量与基准向量之间的夹角,对夹角值进行升序排列得到夹角集S,计算S的序列差得到向量集中相邻向量夹角集L,若L中的最大角度差Lmax>ω(ω为弧度角,一般取),则数据点P为边界点。将无序的点连成边界线,有利于后面的空洞修补。通过对边界线某相邻的边界进行叉乘对内、外边界线进行识别:如果Z轴的分量小于0,则边界线的方向为顺时针且边界线为外边界;若Z轴的分量大于0,则边界线的方向为逆时针且边界线为内边界。
图5(a)-图5(b)是本实施例边界点位置关系示意图,如果点云数据中点P是边界点,其K邻域点的分布将偏向一侧;如果点P是内部点,则其K邻域点将均匀地分布在点P的周围。
对点云空洞边缘提取完成后,需要对空洞进行修补,具体如图4所示:找到空洞边界内深度值为0的位置,记录为0(x,y),以0(x,y)为中心并根据它周围的点云定义一个分内层和外层的两层窗口。通过观察两层窗口内深度值非零的像素点,记录内层非零像素的个数Num_in和外层非零像素的个数Num_out。根据所定义的两层窗口的大小,由经验值设定内层阈值th_in和外层阈值th_out,如果Num_in>th_in或者Num_out>th_out,计算出内外层中所有深度值非零的像素中数目最多的一个depth_max,并令0(x,y)=depth_max;反之,如果Num_in<th_in或者Num_out<th_out,该0(x,y)位置的点是一个孤立点不需要修补。待遍历完所有点,更新为depth_max,即完成空洞的修补。
图6为本实施例的两层窗口示意图,窗口的大小根据经验进行定义,一般来讲,外窗口比内窗口大,两层窗口将深度值非零的像素进行分布,并关注每层框内非零像素的数量,然后将每层内的非零像素个数与事先确定的阈值进行比较,进而决定这个非零像素是否应该填充。
图7是本实施例空洞修补示意图,如图所示,如果内、外任意层内的非零像素的数目超过了阈值,就要将所有非零像素深度值对应的统计众数(数目最多一个深度值)应用到空洞上,使其深度值不为0,图7中深度值30的数目最多,因此,选择0(x,y)=30并应用到空洞上完成修补。
本实施例通过对点云进行去噪和填补空洞,利于获取更准确的三维点云,对点云的配准、三维重建有着重要的作用。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制:尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或全部技术特征进行等同替换;而这些修改或替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (9)
1.一种点云去噪及空洞修补方法,包括:
S1:去噪:对散乱的点云通过滤波消除噪声点和毛刺,突出点云的特征信息;
S2:点云空洞边缘提取:找到经过滤波去噪后的点云的内外边缘,确定内边缘为空洞边缘,进行空洞边缘提取;
S3:点云空洞修补:在提取的空洞边缘内部,找到小于设定阈值的点的位置,以该位置为中心设定两层窗口,利用局部邻域信息进行空洞修补。
2.根据权利要求1所述的方法,其特征在于:优选的,所述S1包括:
S11:选择M*N模板窗口,将所述模板窗口沿深度图进行行或列方向的位移滑动,在模板窗口里按照行、列等间距选取n个像素点,其中n=1,2,3…;
S12:对所述S11中选取的n个像素点的值进行排序并确定中值;
S13:用所述S12中获得的中值替代窗口中心位置原始深度值;
S14:对所述S11~S13进行n次滤波循环,完成点云去噪,其中n>=2。
3.根据权利要求1所述的方法,其特征在于:所述S2包括:
S21:计算三维点云中各数据点的K邻域点,顺序选取三维点云的数据点P作为待测点;
S22:将数据点P的K邻域点投影到其法矢平面内,连接数据点P与邻域点得到向量集;
S23:对边界点进行检测;
S24:将无序的点连成边界线;
S25:内外边界线识别:对边界线相邻的边界进行叉乘,根据Z轴分量的正负关系和边界线的时针方向确定点云空洞的内、外边界。
4.根据权利要求1所述的方法,其特征在于:所述S3包括:
S31:记录空洞边界内深度值为0的位置0(x,y);
S32:以0(x,y)为中心,定义一个分内、外层的两层窗口;
S33:分别记录内、外层深度值非零像素点的个数Num_in和Num_out;
S34:设定内层阈值th_in和外层阈值th_out;
S35:根据Num_in与th_in或者Num_out与th_out的大小关系确定是否进行空洞修补。
5.根据权利要求3所述的方法,其特征在于:所述S23包括:
S231:将数据点P的k邻域点选取距离最近的点作为基准向量;
S232:计算S22中所述向量集中各向量与基准向量之间的夹角,并对夹角值进行升序排列得到夹角集S;
S233:计算夹角集S的序列差得到向量集中相邻向量夹角集L,若L中的最大角度差Lmax>ω,则数据点P为边界点;反之,点P为内部点,其中,ω为弧度角,一般取
6.根据权利要求5所述的方法,其特征在于:所述点P若为边界点,其K邻域点的分布偏向一侧;所述点P若为内部点,其K邻域点将均匀地分布在点P的周围。
7.根据权利要求3所述的方法,其特征在于:所述Z轴分量小于0,则边界线的方向为顺时针且边界线为外边界;反之,Z轴分量大于0,则边界线的方向为逆时针且边界线为内边界。
8.根据权利要求4所述的方法,其特征在于:所述外层窗口大于内层窗口。
9.根据权利要求4所述的方法,其特征在于:所述S35中的Num_in>th_in或者Num_out>th_out时,计算出内外层中所有深度值非零的像素中数目最多的一个值,并令0(x,y)等于该值,完成空洞修补;反之,Num_in<th_in或者Num_out<th_out时,不需要对0(x,y)位置的点进行修补。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711152983.0A CN109801223A (zh) | 2017-11-17 | 2017-11-17 | 一种点云去噪及空洞修补方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711152983.0A CN109801223A (zh) | 2017-11-17 | 2017-11-17 | 一种点云去噪及空洞修补方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109801223A true CN109801223A (zh) | 2019-05-24 |
Family
ID=66555066
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711152983.0A Pending CN109801223A (zh) | 2017-11-17 | 2017-11-17 | 一种点云去噪及空洞修补方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109801223A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110517193A (zh) * | 2019-06-28 | 2019-11-29 | 西安理工大学 | 一种海底声呐点云数据处理方法 |
CN113610726A (zh) * | 2021-08-05 | 2021-11-05 | 华南农业大学 | 一种区域限定的改进三次b样条插值修补方法 |
CN114648450A (zh) * | 2020-12-21 | 2022-06-21 | 北京的卢深视科技有限公司 | 深度图的空洞修复方法、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103581648A (zh) * | 2013-10-18 | 2014-02-12 | 清华大学深圳研究生院 | 绘制新视点中的空洞填补方法 |
CN104463973A (zh) * | 2014-12-01 | 2015-03-25 | 林志均 | 一种基于面数据的空洞填补方法 |
CN105627992A (zh) * | 2015-12-28 | 2016-06-01 | 桂林电子科技大学 | 一种快速高精度非接触测绘古建筑的方法 |
CN106548520A (zh) * | 2016-11-16 | 2017-03-29 | 湖南拓视觉信息技术有限公司 | 一种点云数据去噪的方法和系统 |
CN107274422A (zh) * | 2017-05-08 | 2017-10-20 | 燕山大学 | 一种基于法线信息和k邻域搜索结合的点云边缘提取方法 |
-
2017
- 2017-11-17 CN CN201711152983.0A patent/CN109801223A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103581648A (zh) * | 2013-10-18 | 2014-02-12 | 清华大学深圳研究生院 | 绘制新视点中的空洞填补方法 |
CN104463973A (zh) * | 2014-12-01 | 2015-03-25 | 林志均 | 一种基于面数据的空洞填补方法 |
CN105627992A (zh) * | 2015-12-28 | 2016-06-01 | 桂林电子科技大学 | 一种快速高精度非接触测绘古建筑的方法 |
CN106548520A (zh) * | 2016-11-16 | 2017-03-29 | 湖南拓视觉信息技术有限公司 | 一种点云数据去噪的方法和系统 |
CN107274422A (zh) * | 2017-05-08 | 2017-10-20 | 燕山大学 | 一种基于法线信息和k邻域搜索结合的点云边缘提取方法 |
Non-Patent Citations (2)
Title |
---|
KARL SANFORD: ""Smoothing Kinect Depth Frames in Real-Time"", 《HTTPS://WWW.CODEPROJECT.COM/ARTICLES/317974/KINECTDEPTHSMOOTHING》 * |
晏海平: ""散乱点云边界提取及孔洞修复算法研究",", 《中国优秀硕士论文全文数据库》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110517193A (zh) * | 2019-06-28 | 2019-11-29 | 西安理工大学 | 一种海底声呐点云数据处理方法 |
CN110517193B (zh) * | 2019-06-28 | 2022-04-12 | 西安理工大学 | 一种海底声呐点云数据处理方法 |
CN114648450A (zh) * | 2020-12-21 | 2022-06-21 | 北京的卢深视科技有限公司 | 深度图的空洞修复方法、电子设备及存储介质 |
CN113610726A (zh) * | 2021-08-05 | 2021-11-05 | 华南农业大学 | 一种区域限定的改进三次b样条插值修补方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110363858B (zh) | 一种三维人脸重建方法及系统 | |
CN102567979B (zh) | 车载红外夜视系统及其多源图像融合方法 | |
CN109658515A (zh) | 点云网格化方法、装置、设备及计算机存储介质 | |
CN105674993A (zh) | 基于双目相机的高精度视觉定位地图生成系统及方法 | |
CN105528785A (zh) | 一种双目视觉图像立体匹配方法 | |
CN106558072A (zh) | 一种基于改进sift特征在遥感图像上配准的方法 | |
CN107590825A (zh) | 一种基于sfm的点云孔洞修补方法 | |
CN109583365B (zh) | 基于成像模型约束非均匀b样条曲线拟合车道线检测方法 | |
CN103994786B (zh) | 圆弧标尺线指针式仪表刻度的图像检测方法 | |
CN107895375B (zh) | 基于视觉多特征的复杂道路线提取方法 | |
CN109801223A (zh) | 一种点云去噪及空洞修补方法 | |
CN104408772A (zh) | 一种基于网格投影的自由曲面三维重建方法 | |
CN102096915B (zh) | 一种基于精准图像拼接的摄像机镜头去污方法 | |
CN113706591B (zh) | 一种基于点云的表面弱纹理卫星三维重建方法 | |
CN106127258B (zh) | 一种目标匹配方法 | |
CN103557792A (zh) | 一种空中加油锥套目标的视觉跟踪与位置测量方法 | |
CN111105452B (zh) | 基于双目视觉的高低分辨率融合立体匹配方法 | |
CN107680137A (zh) | 一种基于球体投影公切线的多相机标定及参数优化方法 | |
CN105608703A (zh) | 一种变电站智能巡检机器人的电流互感器油位检测方法 | |
CN111027484A (zh) | 基于三维成像的隧道钢拱识别方法 | |
CN105023263B (zh) | 一种基于区域生长的遮挡检测和视差校正的方法 | |
CN111047698A (zh) | 一种真正射影像采集方法 | |
CN116358449A (zh) | 一种基于双目面结构光的飞机铆钉凹凸量测量方法 | |
CN116189006A (zh) | 一种支持三维数据的遥感影像建筑物提取方法 | |
CN114612412A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190524 |