CN114419280A - 一种快速三维点云生成三维网格的方法 - Google Patents
一种快速三维点云生成三维网格的方法 Download PDFInfo
- Publication number
- CN114419280A CN114419280A CN202210076098.3A CN202210076098A CN114419280A CN 114419280 A CN114419280 A CN 114419280A CN 202210076098 A CN202210076098 A CN 202210076098A CN 114419280 A CN114419280 A CN 114419280A
- Authority
- CN
- China
- Prior art keywords
- dimensional
- point cloud
- generating
- interpolation
- mesh
- 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
- 238000000034 method Methods 0.000 title claims abstract description 34
- 239000011159 matrix material Substances 0.000 claims description 6
- 230000009466 transformation Effects 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 4
- 238000013507 mapping Methods 0.000 claims description 4
- 238000005070 sampling Methods 0.000 claims description 3
- 230000001131 transforming effect Effects 0.000 claims description 2
- 238000009877 rendering Methods 0.000 description 9
- 230000009471 action Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000010146 3D printing Methods 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4007—Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Generation (AREA)
Abstract
本发明涉及三维扫描技术领域,且公开了一种快速三维点云生成三维网格的方法,读入三维重建后的点云P,该帧点云P是在当前相机坐标系下的二维条纹图对应的三维点云,映射到UV平面,在UV方向上分别插值时采用线性插值。该快速三维点云生成三维网格的方法使用时,通过设置基于条纹图生成的三维点云的特征,提出了一种基于UV平面生成三维网格的方法,对当前帧的点云快速完成三角网格化,插值和网格化的步骤均可以采用并行操作,速度极快,可以满足速度要求较高的三维扫描设备,对内存的要求远远低于体素方法,能满足对内存要求不高的扫描扫描环境,能够比体素的方法生成速度快,占用内存少。
Description
技术领域
本发明涉及三维扫描技术领域,具体为一种快速三维点云生成三维网格的方法。
背景技术
在三维扫描设备领域中,扫描设备的工作流程如下:通过获取2D图像信息重建出3D点云,并将3D点云按照其特征拼接起来形成完整的统一坐标系下点云,最后由3D点云生成3D网格,完成现实物体的数字化。三维实时扫描应用中,所见即所得的实时渲染是一个重要环节。实时扫描中用户交互有点云渲染和网格渲染两种方式,点云渲染比网格渲染网格速度快,能满足实时渲染的要求,但在很多场景中,3D网格是三维扫描设备领域实时渲染和最终输出,其主要原因如下:(1)3D网格是3D打印的基础;(2)3D网格通过渲染,能有效的反应实物的特征;(3)3D网格有几何拓扑特性,能有效表达连通性;(4)3D网格能够有效进行纹理贴图,真实反应物体表面,3D网格的实时渲染能提高扫描质量,增强用户体验;三维扫描中实时渲染3D网格,即时呈现已扫描数据的特点,能够有效提高扫描导航;其几何拓扑特性能够帮助算法及时有效的的去除噪点,避免噪点数据的累积。因此实现扫描中网格实时化,不仅能够提高扫描的精确度,而且能够极大地增强用户体验,是很多三维扫描设备产品必备的功能。
常见的三维点云生成三维网格的方法在使用时,主要利用体素方法,求隐函数值来实现三维点云生成三维网格被广泛使用,该方法可以通过调整体素的精度来控制网格的精度,但计算量大,速度慢,不能满足三维点云生成三维网格的工作要求,为此提出一种快速三维点云生成三维网格的方法。
发明内容
(一)解决的技术问题
针对现有技术的不足,本发明提供了一种快速三维点云生成三维网格的方法,解决了上述背景技术提出的技术问题。
(二)技术方案
为实现上述的目的,本发明提供如下技术方案:一种快速三维点云生成三维网格的方法,包括如下步骤:
读入三维重建后的点云P,该帧点云P是在当前相机坐标系下的二维条纹图对应的三维点云;
映射到UV平面,在UV方向上分别插值时采用线性插值,根据条纹图的特点,采用u方向上插值,或者v方向上插值,或者uv两个方向上插值;
遍历UV按照四边形规则取顶点并三角化网格,遍历UV坐标的第r行和第r+1数据,分别取p(u,v),p(u,v+1),p(u+1,v+1),p(u+1,v)四个点生产三角形;
将生成的所有三角形组成mesh0,并通过变换矩阵将其变换到全局坐标系下;
根据提供的set(indexes),找到每个index对应的外包box,取每个外包box对应的整体mesh的顶点和当前mesh0的顶点进行临近顶点合并,最终生成整体的mesh。
优选的,所述点云P其属性包括,相机坐标系下三维空间位置x,y,z,相机坐标系下三维空间法向xn,yn,zn,点云P中每个点的RGB颜色值,点云P中每个点的权重q,权重越大表示可信度越高,权重越小表明可信度越低,点云P中每个点在UV平面的坐标u,v,点云P从相机坐标系到全局坐标系的变换矩阵M,该帧点云邻域点云的索引集set(indexes)。
优选的,所述条纹图如果为UV方向上的是均匀的,且点云三维重建后生成的点云没有采样,则不需要进行插值或者根据分辨率是否满足要求,分别在UV方向上进行线性插值,如果条纹图UV方向上不是均匀的,或者点云三维重建后进行了点云的采样,则需要进行u或者v方向上线性插值,保证UV方向上点云的密度相同,u方向上或者UV方向线性插值类似。
优选的,所述v方向上线性插值以分辨率(如400*600)的Range Image为例,由于数据在cols方向上因三维点云重建采样导致数据缺失严重,因此对于每一行数据r(r表示第r行数据),找到v0和v1,且v0和v1对应的三维数据均存在,且r行v0,v1间对应的所有的三维数据均不存在,则对v0和v1之间线性插值(v1-v0-1)个数据。
优选的,所述v方向上考虑到线性插值,会在z方向上变化剧烈的地方生成噪点,需要对算法增加两个阈值f3DThreshod,FVTreshold判断,其中满足dist(p(r,v0),p(r,v1))<f3DThreshold且v1-v0<FVThread条件才能进行插值,其中dist表示p(r,v0)和p(r,v1)对应的三维点的距离,如欧式距离。
优选的,所述阈值实际计算中f3DThreshod一般和条纹间的距离有关,FVTreshold是UV平面上的像素值,用来防止在孔洞中误差点云,需要根据具体的设备性质进行验证设置。
优选的,所述四个点对应的三维点云如果都存在,则将该四边形划分为两个三角形,如果存在三个对应的三维点云,则构造一个三角形,其他情况不生成三角形。
(三)有益效果
与现有技术相比,本发明提供了一种快速三维点云生成三维网格的方法,具备以下有益效果:
该快速三维点云生成三维网格的方法,通过设置基于条纹图生成的三维点云的特征,提出了一种基于UV平面生成三维网格的方法,对当前帧的点云快速完成三角网格化,插值和网格化的步骤均可以采用并行操作,速度极快,可以满足速度要求较高的三维扫描设备,对内存的要求远远低于体素方法,能满足对内存要求不高的扫描扫描环境,能够比体素的方法生成速度快,占用内存少。
附图说明
图1为本发明的简易流程示意图;
图2为本发明中插值前UV坐标图;
图3为本发明中插值后UV坐标图;
图4为本发明中网格化示意图;
图5为本发明中网格化结果展示图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供一种技术方案,一种快速三维点云生成三维网格的方法,包括如下步骤:
请参阅图1
S1、读入三维重建后的点云P,该帧点云P是在当前相机坐标系下的二维条纹图对应的三维点云,所述点云P其属性包括,相机坐标系下三维空间位置x,y,z,相机坐标系下三维空间法向xn,yn,zn,点云P中每个点的RGB颜色值,点云P中每个点的权重q,权重越大表示可信度越高,权重越小表明可信度越低,点云P中每个点在UV平面的坐标u,v,点云P从相机坐标系到全局坐标系的变换矩阵M,该帧点云邻域点云的索引集set(indexes);
S2、映射到UV平面,在UV方向上分别插值时采用线性插值,根据条纹图的特点,采用u方向上插值,或者v方向上插值,或者uv两个方向上插值,所述条纹图如果为UV方向上的是均匀的,且点云三维重建后生成的点云没有采样,则不需要进行插值或者根据分辨率是否满足要求,分别在UV方向上进行线性插值,如果条纹图UV方向上不是均匀的,或者点云三维重建后进行了点云的采样,则需要进行u或者v方向上线性插值,保证UV方向上点云的密度相同,u方向上或者UV方向线性插值类似,所述v方向上线性插值以分辨率(如400*600)的Range Image为例,由于数据在cols方向上因三维点云重建采样导致数据缺失严重,因此对于每一行数据r,r表示第r行数据,找到v0和v1,且v0和v1对应的三维数据均存在,且r行v0,v1间对应的所有的三维数据均不存在,则对v0和v1之间线性插值(v1-v0-1)个数据,所述v方向上考虑到线性插值,会在z方向上变化剧烈的地方生成噪点,需要对算法增加两个阈值f3DThreshod,FVTreshold判断,所述阈值实际计算中f3DThreshod一般和条纹间的距离有关,FVTreshold是UV平面上的像素值,用来防止在孔洞中误差点云,需要根据具体的设备性质进行验证设置,其中满足dist(p(r,v0),p(r,v1))<f3DThreshold且v1-v0<FVThread条件才能进行插值,其中dist表示p(r,v0)和p(r,v1)对应的三维点的距离,如欧式距离,请参阅图2和图3;
S3、遍历UV按照四边形规则取顶点并三角化网格,遍历UV坐标的第r行和第r+1数据,分别取p(u,v),p(u,v+1),p(u+1,v+1),p(u+1,v)四个点生产三角形,所述四个点对应的三维点云如果都存在,则将该四边形划分为两个三角形,如果存在三个对应的三维点云,则构造一个三角形,其他情况不生成三角形,请参阅图4;
S4、将生成的所有三角形组成mesh0,并通过变换矩阵将其变换到全局坐标系下;
S5、根据提供的set(indexes),找到每个index对应的外包box,取每个外包box对应的整体mesh的顶点和当前mesh0的顶点进行临近顶点合并,最终生成整体的mesh,请参阅图5。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (7)
1.一种快速三维点云生成三维网格的方法,其特征在于,包括如下步骤:
S1、读入三维重建后的点云P,该帧点云P是在当前相机坐标系下的二维条纹图对应的三维点云;
S2、映射到UV平面,在UV方向上分别插值时采用线性插值,根据条纹图的特点,采用u方向上插值,或者v方向上插值,或者uv两个方向上插值;
S3、遍历UV按照四边形规则取顶点并三角化网格,遍历UV坐标的第r行和第r+1数据,分别取p(u,v),p(u,v+1),p(u+1,v+1),p(u+1,v)四个点生产三角形;
S4、将生成的所有三角形组成mesh0,并通过变换矩阵将其变换到全局坐标系下;
S5、根据提供的set(indexes),找到每个index对应的外包box,取每个外包box对应的整体mesh的顶点和当前mesh0的顶点进行临近顶点合并,最终生成整体的mesh。
2.根据权利要求1所述的一种快速三维点云生成三维网格的方法,其特征在于:所述点云P其属性包括,相机坐标系下三维空间位置x,y,z,相机坐标系下三维空间法向xn,yn,zn,点云P中每个点的RGB颜色值,点云P中每个点的权重q,权重越大表示可信度越高,权重越小表明可信度越低,点云P中每个点在UV平面的坐标u,v,点云P从相机坐标系到全局坐标系的变换矩阵M,该帧点云邻域点云的索引集set(indexes)。
3.根据权利要求1所述的一种快速三维点云生成三维网格的方法,其特征在于:所述条纹图如果为UV方向上的是均匀的,且点云三维重建后生成的点云没有采样,则不需要进行插值或者根据分辨率是否满足要求,分别在UV方向上进行线性插值,如果条纹图UV方向上不是均匀的,或者点云三维重建后进行了点云的采样,则需要进行u或者v方向上线性插值,保证UV方向上点云的密度相同,u方向上或者UV方向线性插值类似。
4.根据权利要求1所述的一种快速三维点云生成三维网格的方法,其特征在于:所述v方向上线性插值以分辨率(如400*600)的Range Image为例,由于数据在cols方向上因三维点云重建采样导致数据缺失严重,因此对于每一行数据r(r表示第r行数据),找到v0和v1,且v0,v1对应的三维坐标均存在,且r行v0,v1间对应的三维数据均不存在,则对v0和v1之间线性插值(v1-v0-1)个数据。
5.根据权利要求4所述的一种快速三维点云生成三维网格的方法,其特征在于:所述v方向上考虑到线性插值,会在z方向上变化剧烈的地方生成噪点,需要对算法增加两个阈值f3DThreshod,FVTreshold判断,其中满足dist(p(r,v0),p(r,v1))<f3DThreshold且v1-v0<FVThread条件才能进行插值,其中dist表示p(r,v0)和p(r,v1)对应的三维点的距离,如欧式距离。
6.根据权利要求5所述的一种快速三维点云生成三维网格的方法,其特征在于:所述阈值实际计算中f3DThreshod一般和条纹间的距离有关,FVTreshold是UV平面上的像素值,用来防止在孔洞中误差点云,需要根据具体的设备性质进行验证设置。
7.根据权利要求1所述的一种快速三维点云生成三维网格的方法,其特征在于:所述四个点对应的三维点云如果都存在,则将该四边形划分为两个三角形,如果存在三个对应的三维点云,则构造一个三角形,其他情况不生成三角形。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210076098.3A CN114419280A (zh) | 2022-01-23 | 2022-01-23 | 一种快速三维点云生成三维网格的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210076098.3A CN114419280A (zh) | 2022-01-23 | 2022-01-23 | 一种快速三维点云生成三维网格的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114419280A true CN114419280A (zh) | 2022-04-29 |
Family
ID=81275839
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210076098.3A Pending CN114419280A (zh) | 2022-01-23 | 2022-01-23 | 一种快速三维点云生成三维网格的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114419280A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117274527A (zh) * | 2023-08-24 | 2023-12-22 | 东方电气集团科学技术研究院有限公司 | 一种发电机设备三维可视化模型数据集构建方法 |
-
2022
- 2022-01-23 CN CN202210076098.3A patent/CN114419280A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117274527A (zh) * | 2023-08-24 | 2023-12-22 | 东方电气集团科学技术研究院有限公司 | 一种发电机设备三维可视化模型数据集构建方法 |
CN117274527B (zh) * | 2023-08-24 | 2024-06-11 | 东方电气集团科学技术研究院有限公司 | 一种发电机设备三维可视化模型数据集构建方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wolff et al. | Point cloud noise and outlier removal for image-based 3D reconstruction | |
US9767598B2 (en) | Smoothing and robust normal estimation for 3D point clouds | |
US8217931B2 (en) | System and method for processing video images | |
CN115100339B (zh) | 图像生成方法、装置、电子设备和存储介质 | |
CN105678683B (zh) | 一种三维模型的二维存储方法 | |
CN111833393A (zh) | 一种基于边缘信息的双目立体匹配方法 | |
US20080259073A1 (en) | System and method for processing video images | |
US20120032948A1 (en) | System and method for processing video images for camera recreation | |
JP2016119086A (ja) | 3dモデル化オブジェクトのテクスチャリング | |
CN112633657B (zh) | 一种施工质量管理方法、装置、设备及存储介质 | |
CN109147025B (zh) | 一种面向rgbd三维重建的纹理生成方法 | |
US9147279B1 (en) | Systems and methods for merging textures | |
Lhuillier et al. | Manifold surface reconstruction of an environment from sparse structure-from-motion data | |
Branch et al. | Automatic hole-filling of triangular meshes using local radial basis function | |
CN115546371A (zh) | 点云优化方法、系统、电子设备及存储介质 | |
CN114419280A (zh) | 一种快速三维点云生成三维网格的方法 | |
Wang et al. | A new upsampling method for mobile lidar data | |
Liu et al. | Creating simplified 3D models with high quality textures | |
Nguyen et al. | Image-based rendering with depth information using the propagation algorithm | |
Kada | Aggregation of 3D buildings using a hybrid data approach | |
CN111028349B (zh) | 一种适用于海量三维实景数据快速可视化的层级构建方法 | |
CN114491697A (zh) | 一种基于深度学习的树木点云补全方法 | |
Renchin-Ochir et al. | A study of analyzing shape similarities between the arm model of mongolian buddha statues for archaeological applications | |
Lysykh et al. | Parametric scene model for geometry restoration using differential rendering method | |
CN112215763B (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 |