CN116597071A - 一种基于可学习的k临近点采样的缺陷点云数据重建方法 - Google Patents
一种基于可学习的k临近点采样的缺陷点云数据重建方法 Download PDFInfo
- Publication number
- CN116597071A CN116597071A CN202310356426.XA CN202310356426A CN116597071A CN 116597071 A CN116597071 A CN 116597071A CN 202310356426 A CN202310356426 A CN 202310356426A CN 116597071 A CN116597071 A CN 116597071A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- layer
- cloud data
- convolution
- dimensional
- 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
- 230000007547 defect Effects 0.000 title claims abstract description 53
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000005070 sampling Methods 0.000 title claims abstract description 21
- 238000004364 calculation method Methods 0.000 claims abstract description 42
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 13
- 238000000605 extraction Methods 0.000 claims abstract description 12
- 230000009466 transformation Effects 0.000 claims abstract description 10
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 claims abstract description 6
- 238000007781 pre-processing Methods 0.000 claims abstract description 6
- 238000011176 pooling Methods 0.000 claims description 71
- 238000010586 diagram Methods 0.000 claims description 20
- 239000013598 vector Substances 0.000 claims description 20
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 claims description 18
- 238000005457 optimization Methods 0.000 claims description 16
- 238000010606 normalization Methods 0.000 claims description 13
- 238000012952 Resampling Methods 0.000 claims description 7
- 230000004927 fusion Effects 0.000 claims description 7
- 230000002950 deficient Effects 0.000 claims description 6
- 230000011218 segmentation Effects 0.000 claims description 6
- 230000004913 activation Effects 0.000 claims description 4
- 238000004220 aggregation Methods 0.000 claims description 4
- 238000013507 mapping Methods 0.000 claims description 4
- 238000012549 training Methods 0.000 abstract description 8
- 239000000284 extract Substances 0.000 abstract description 4
- 239000010410 layer Substances 0.000 description 79
- 230000006870 function Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 11
- 230000007246 mechanism Effects 0.000 description 7
- 239000011159 matrix material Substances 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000004590 computer program Methods 0.000 description 5
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 5
- 238000009826 distribution Methods 0.000 description 4
- 230000002708 enhancing effect Effects 0.000 description 3
- 230000004931 aggregating effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002688 persistence Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 241000282326 Felis catus Species 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008033 biological extinction Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 239000011229 interlayer Substances 0.000 description 1
- 230000007786 learning performance Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 229920006395 saturated elastomer Polymers 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/255—Detecting or recognising potential candidate objects based on visual cues, e.g. shapes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/7715—Feature extraction, e.g. by transforming the feature space, e.g. multi-dimensional scaling [MDS]; Mappings, e.g. subspace methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/08—Indexing scheme for image data processing or generation, in general involving all processing steps from image acquisition to 3D model generation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种基于可学习的K临近点采样的缺陷点云数据重建方法,包括获取缺陷点云数据,并进行预处理;采用多尺度图形特征编码器对处理后的缺陷点云数据进行点云特征提取,得到粗糙点云特征数据;采用堆叠式Refine模块提取不同尺度下粗糙点云的几何信息并进行仿射变换,得到细节填充后的重建点云数据。本发明采用了一种全新的多尺度图样式特征编码器,其基于可学习的K临近采样算法和边缘卷积对点云特征进行精确提取,通过优化的网络架构和训练策略,解决边缘卷积造成的计算量庞大问题和效率低下问题。
Description
技术领域
本发明涉及点云重建技术领域,具体涉及一种基于可学习的K临近点采样的缺陷点云数据重建方法。
背景技术
点云(point cloud)为三维坐标系下的一系列点集聚合成类似云的形态所得的名称,其简单明了的表示方式以及贴合实际使用场景的采集效果,使基于点云的应用能够在中水平计算效率下即可达到流畅的运行性能。因此,如何能够在点云处理任务中高效精准地实现算法工作是一件函待解决并具有挑战的事,同时强化点云特征提取的理解能力也是技术难点之一。
与点云数据不同,虽然同为计算机视觉领域非常热门的数据形态,图像数据是2D坐标系下的网格矩阵,即可以精准查找矩阵内每一点的坐标和其对应的信息,也就是像素点,这使得基于二维卷积操作可以非常方便地在感受野内学***移不变性,旋转不变性,无序性三大特点,使其无法直接获取可见的几何特征。其中平移不变性与旋转不变性保证点云在每个点整体增加或缩小值,其表达的信息是不变的,同时将其与某一旋转矩阵相乘,得到的新点云也与原点云表达相同的信息。而无序性是由于点云是由一系列坐标点构成的,每一点坐标值不相同,因此出于效率原因,无法通过序列化方式对每个点进行索引。
Wu Z等人提出采用Voxel,即体素化的方式表示点云,而不是占位网格,应用体素化策略。提出用卷积深度信念网络(Convolutional Deep Belief Network,CDBN)将几何3D形状表示为3D体素网格上二元变量的概率分布。每个三维网格表示为二进制张量:1表示体素在网格表面内部,0表示体素在网格外部(即为空空间)。一个合理分辨率的体素块使用全连通DBN会导致大量的参数,使得模型无法有效训练,因此提出利用卷积,通过权值共享来降低模型参数。实验中的网格大小是30×30×30。而获取了可操作的体素网格,代表了点云的无序性将在这个层面上被消除,也因此能够应用相应的图像卷积操作对特征进行提取。然而,虽然可以应用如3D卷积之类的操作来提取特征,但是体素化的网格会使原始点信息失真,因而难以提取特征。
虽然点云存在以上三个特性,但是可以通过一些特殊的方法解决这些问题并使其化为优点。如PointNet提出的点云前处理T-Net,就可以通过可学***移不变性与旋转不变性。而无序性也可以利用一些算法通过聚合点之间的位置信息来抽象化空间特征,从而提取到空间关系信息。Edge Conv构建局部图(LocalGraph),通过边缘卷积获得点的特征。为了挖掘局部几何结构,边缘卷积构造了一个局部邻域graph,并且在边上应用卷积操作,边连接着相邻的点对。在网络中,每一层graph都动态更新,也就是说,一个点的KNN集合中的元素在网络的层与层之间是变化的,是通过embeddings序列计算得到的。而在深层特征空间中,临近性与输入不同,导致点云的无序性等性质被弱化了,这也会使信息在点云***内全局扩散。相比于PointNet,边缘卷积建立的局部临域规模更大,这让它将点之间的关系描绘得更加细致,然而,大规模的临近图在每一层的建立都会消耗更多资源,使得边缘卷积的效率更低,在处理大规模点云或者非常稠密的点云时非常吃力。除此以外,很多其他研究例如基于transformer同样利用了抽象的点关系特征对点云进行理解,但也都存在参数量庞大,计算效率低,同时网络结构过于复杂导致的难以部署等问题。
发明内容
针对现有技术中的上述不足,本发明提供了一种基于可学习的K临近点采样的缺陷点云数据重建方法。
为了达到上述发明目的,本发明采用的技术方案为:
一种基于可学习的K临近点采样的缺陷点云数据重建方法,包括以下步骤:
S1、获取缺陷点云数据,并进行预处理;
S2、采用多尺度图形特征编码器对步骤S1处理后的缺陷点云数据进行点云特征提取,获取形状代码,并使用基于折叠的解码器,解码形状代码从而得到粗糙点云特征数据;
S3、采用堆叠式Refine模块提取不同尺度下粗糙点云的几何信息并进行仿射变换,得到细节填充后的重建点云数据。
可选地,所述多尺度图形特征编码器具体包括:
依次串联的多个残差块、一个共享特征的多层感知器、一个全局池化和最大池化层、一个基于折叠的解码器;
多个所述残差块用于对步骤S1处理后的缺陷点云数据进行点云特征提取,并将提取的点云特征通过类似金字塔的跨域按通道连接,得到耦合的多层融合点云特征;
所述共享特征的多层感知器用于将多个残差块提取的多层融合点云特征在高维空间中进行低维映射,并引入由残差连接带来的原始信息输入,从而获取高聚合的低维点云特征向量;
所述全局池化和最大池化层用于对共享特征的多层感知器处理后的低维点云特征向量进行全局池化和最大池化操作,得到包含缺损点云的空间信息以及几何信息的低维点云特征向量和形状代码参数;
所述基于折叠的解码器用于将形状代码参数在重建空间中解码,重建为原始大小的粗糙点云数据。
可选地,所述残差块具体包括:
依次串联的基于多尺度KNN算子的边缘卷积层、最大池化和平均池化层、多层感知器、以及单核卷积层;
所述基于多尺度KNN算子的边缘卷积层用于对输入的缺陷点云数据利用KNN算子生成点云关系图,再利用多维的基于KNN索引的内核对点云关系图进行二维卷积计算,并采用CAE的通道注意力机制模块引导参数对特征计算进行最大化操作,得到中间层特征;
所述最大池化和平均池化层用于对中间层特征进行最大池化和平均池化操作,得到池化后的点云特征;
所述多层感知器用于将池化后的点云特征作为调制权值与点云特征进行像素级乘积计算,得到局部叠加结果;
所述单核卷积层用于对输入的缺陷点云数据进行卷积操作,得到卷积点云特征;
所述局部叠加结果与输入的缺陷点云数据进行相乘计算后与卷积点云特征通过位项相加方式进行残差连接,得到残差块的输出结果。
可选地,所述全局池化和最大池化层具体用于:
对共享特征的多层感知器处理后的低维点云特征向量进行全局池化和最大池化计算,得到全局池化结果和最大池化结果;再将全局池化结果和最大池化结果进行一维卷积运算,得到包含缺损点云的空间信息以及几何信息的低维点云特征向量。
可选地,所述利用多维的基于KNN索引的内核对点云关系图进行二维卷积计算具体为:
利用多维的基于KNN索引的内核对点云关系图分别进行二维批次归一化操作和RELU激活函数操作;
其中二维批次归一化操作具体为对批次归一化计算结果分别计算均值与方差,再通过可学习参数将均值和方差进行无偏估计,计算单个输出结果。
可选地,所述堆叠式Refine模块具体包括:
点云拼接单元、点云分割单元、点云优化单元、共享参数的多层感知器和点云重建单元;
所述点云拼接单元用于将粗糙点云特征数据与缺陷点云数据进行拼接,得到第一点云数据;
所述点云分割单元用于对第一点云数据采用MDS采样算法进行重采样,并将重采样的点云数据划分为多个点云块;
所述点云优化单元用于将形状代码参数作为监督参数与点云块进行通道级连接,提取得到点云空间特征;
所述共享参数的多层感知器用于根据点云空间特征计算点云偏移量,并根据点云偏移量对点云进行坐标偏移,得到优化后的点云数据;
所述点云重建单元用于将优化后的点云数据与采用MDS采样算法对缺陷点云数据进行重采样得到的点云数据进行相加,得到细节填充后的重建点云数据。
可选地,所述点云优化单元具体包括:
依次串联的第一卷积层、第二卷积层、第三卷积层、第四卷积层和第五卷积层,其中第一卷积层与第三卷积层通过残差连接。
本发明具有以下有益效果:
(1)本发明采用了一种全新的多尺度图样式特征编码器,其基于可学习的K临近采样算法和边缘卷积对点云特征进行精确提取,通过优化的网络架构和训练策略,解决边缘卷积造成的计算量庞大问题和效率低下问题;
(2)本发明采用了一种全新的特征提取模块来代替原本的一维卷积和边缘卷积,由此降低网络计算成本,同时提高特征提取能力;
(3)本发明优化了传统网络架构中的直通流,通过残差连接保留原始信息以提高网络可信度,在提高网络深度的同时,类金字塔结构的属性优化对最终特征的表达能力;
(4)本发明使用了基于Coarse-To-Refine的生成策略,通过分阶段式的生成策略可以有效分离两个过程的任务专注度,做到缺损补全和细节填充的解耦。
附图说明
图1为本发明实施例中一种基于可学习的K临近点采样的缺陷点云数据重建方法的流程示意图;
图2为本发明实施例中整体架构模型示意图;
图3为本发明实施例中MGE残差块的结构示意图;
图4为本发明实施例中堆叠式Refine模块结构示意图;
图5为本发明实施例中实际演算时的点云动向示意图。
具体实施方式
下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
如图1所示,本发明实施例提供了一种基于可学习的K临近点采样的缺陷点云数据重建方法,包括以下步骤S1至S3:
S1、获取缺陷点云数据,并进行预处理;
在本发明的一个可选实施例中,本实施例使用由30974个3D模型组成的ShapeNet数据集。包括飞机、橱柜、汽车、椅子、灯、沙发、桌子、容器等8类。其中4个类别用于训练,其余类别用于验证泛化。完整的真实数据占用16384个点,从其三维模型中均匀采样。将三维点投影到2.5D深度图后,将缺失点数据重新建模为三维,从而获得缺失点数据。缺失数据的每一部分都包含八个透视图,而真实数据只有一个透视图。因此,本实施例从八个视角中随机选择一个作为训练集。点云数据格式为.pcd后缀文件,改后缀文件需要经过一系列预处理才能转换成模型使用的输入格式,需要提取文件中点坐标数据并转化成数组或向量。
首先,通过***库遍历数据集目录,利用***库的高效性仅递归式读取文件名,以将每个类别的数据分别读取在内存中,再使用树状数据结构存放这些名称数据,最终将其映射到.txt后缀的文本文件中以作为持久化索引存在,后续的数据加载器则可以通过读取索引来虚拟化读取数据集,以防止大量数据存放在内存造成的空间浪费。将原始.pcd文件中的坐标数据归一化为0-1之间,具体公式为
其中,Pout表示数据集最终使用的点云,Pin表示输入的raw点云,std,mean分别表示数据的均值以及方差。再通过读取操作传入每个点的三维坐标,并封装为维度为3的float32类型的向量数据。对于缺损点云,大小为3000,对于完整点云,大小为16384。
其次,初始化数据加载器,将持久化索引读取,并将目录名称保存在内存中,在数据集访问钩子触发时调用IO接口读取相应.pcd数据并转换为向量。对于数据加载器,对每一个读取的点云数据实施张量化操作,以便能够存放入GPU内。同时在每次读取后,对数据进行随机变换操作。变换操作包括随机缩放(Random Scale),随机剪切(Random Crop),随机翻转(Random Flip),随机采样(Random Sample),随机旋转(Random Rotate),随机镜像(Random Mirror)等。
在数据通过迭代器读取时,会读取三种不同的数据。一个缺损点云,一个完整点云,一个点云类别label,本实施例中对于点云类别并不关心,因此在读取时将缺损点云与完整点云通过字典的形式完成封装,并送入模型中。
S2、采用多尺度图形特征编码器对步骤S1处理后的缺陷点云数据进行点云特征提取,得到表示形状特征的形状代码;
在本发明的一个可选实施例中,本实施例采用的多尺度图形特征编码器具体包括:
依次串联的多个残差块、一个共享特征的多层感知器、一个全局池化和最大池化层、一个基于折叠的解码器;
多个所述残差块用于对步骤S1处理后的缺陷点云数据进行点云特征提取,并将提取的点云特征通过类似金字塔的跨域按通道连接,得到耦合的多层融合点云特征;
所述共享特征的多层感知器用于将提取特征在高维空间中进行低维映射,并引入由残差连接带来的原始信息输入,从而获取高聚合的低维抽象特征;
所述全局池化和最大池化层用于对共享特征的多层感知器处理后的低维点云特征向量进行全局池化和最大池化操作,得到包含缺损点云的空间信息以及几何信息的低维点云特征向量和形状代码参数。
所述基于折叠的解码器用于将形状代码参数在重建空间中解码,重建为原始大小的粗糙点云数据。
其中,所述残差块具体包括:
依次串联的基于多尺度KNN算子的边缘卷积层、最大池化和平均池化层、多层感知器、以及单核卷积层;
所述基于多尺度KNN算子的边缘卷积层用于对输入的缺陷点云数据利用KNN算子生成点云关系图,再利用多维的基于KNN索引的内核对点云关系图进行二维卷积计算,并采用CAE,即Citation and Excitement的通道注意力机制模块引导参数对特征计算进行最大化操作,得到中间层特征;
所述最大池化和平均池化层用于对中间层特征进行最大池化和平均池化操作,得到池化后的点云特征;
所述多层感知器用于将池化后的点云特征作为调制权值与点云特征进行像素级乘积计算,得到局部叠加结果;
所述单核卷积层用于对输入的缺陷点云数据进行卷积操作,得到卷积点云特征;
所述局部叠加结果与输入的缺陷点云数据进行相乘计算后与卷积点云特征通过位项相加方式进行残差连接,得到残差块的输出结果。
其中,所述全局池化和最大池化层具体用于:
对共享特征的多层感知器处理后的低维点云特征向量进行全局池化和最大池化计算,得到全局池化结果和最大池化结果;再将全局池化结果和最大池化结果进行一维卷积运算,得到包含缺损点云的空间信息以及几何信息的低维点云特征向量。
其中,所述利用多维的基于KNN索引的内核对点云关系图进行二维卷积计算具体为:
利用多维的基于KNN索引的内核对点云关系图分别进行二维批次归一化操作和RELU激活函数操作;
其中二维批次归一化操作具体为对批次归一化计算结果分别计算均值与方差,再通过可学习参数将均值和方差进行无偏估计,计算单个输出结果。
具体而言,本实施例通过对ResNet网络提出的残差连接架构进行改良,针对编解码架构产生的降维特点优化提取流程,同时应用改良的边缘卷积完成关联点图的搭建,总体构成一个全新的点云特征编码器,称为多尺度图形特征编码器(Multi-ScaledGraphical Encoder)。通过编解码器架构的插件化特性,将其与多种不同的解码器进行插件化连接,并在后续应用双阶段重建的生产流程。具体步骤是将改良的残差块应用于不同尺度下的点云特征,强化每个阶段的特征提取能力,此外,引入基于改良的注意力机制,即Squeeze-And-Excitement机制,在组合残差模块时提高重点特征的关注度。整体架构模型如图2所示。
给定一个低分辨率的缺陷点云Y作为输入,这个输入的点云通常是经过数据处理的N个三维坐标点构成的矩阵,此处的N在数据集中是3000。首先,通过多尺度图形对输入点云进行编码,通过MGE特征编码器生成一个形状代码,这个代码是经过共享特征的多层感知器和全局池化以及最大池化层处理后的高信息密度的低维特征向量,其中包含了缺损点云的空间信息以及几何信息。
通过一个任意的上采样操作组合二维网格对形状代码进行解码,是一个即插即用的构造。通过有效的解码操作后,可以通过多种方式对点云进行重建,最终得到形状完整的点云。
下面将对本实施例提出的多尺度图像特征提取器进行详细介绍。不同于其他编码器架构,如PCN这样的PointNet式,通过堆叠卷积层构建的编码器,本实施例采用的多尺度图形特征编码器,利用改进的特征提取器,可以得到更详细的输出。首先,MGE结构主要由封装的残差模块组成。如图3所示,为MGE残差块的示意图。
对于每个块,都有一个多尺度KNN算子和CAE模块。常见的基于PointNet的编码器只涉及一个通道内卷积,如一维卷积,只提取通道内特征。然而,孤立的通道特性不能解释每两点之间的相关性。因此,MGE提供了KNN算子构成基于图形的EdgeConv。如果利用原始的二维卷积对KNN生成的关系图进行卷积操作,则会大大增加计算压力,因此本实施例把它替换成K维的基于KNN索引的内核,以减少计算量。由公式可得,对于一个计算过程中的KNN关系图,采用原始二维卷积计算得到的特征图如下:
Mout×N=MAXdim3(M3×N×K×kernel1×1)
其中M3×N×K是关系图矩阵,kernel1×1是卷积核,MAX为对结果进行第三维度上的最大池化操作。由此能得到一次计算中,需要参与计算的参数为out×3×N×K,然而在进行一次计算的过程中,1×1的卷积核会对每一个参数进行计算,这无法充分利用GPU的并行计算性能,会产生性能瓶颈,从而造成整体编码器效率底下,显存占用率高,无法充分训练等问题。也因此,本实施例中提供的KNN算子对卷积操作进行了优化,优化后的二维卷积计算公式如下:
Mout×N=M3×N×K×kernelK×1
其中Mout×N表示输出特征图,M3×N×K表示输入特征图,kernelK×1表示卷积核。区别在于将最大池化操作聚合在卷积核内部进行,因此同样的计算参数,在计算的过程中,K维的卷积核会对其感受野内的特征并行计算,从而使计算花费降低了K倍,而计算逻辑不变,同样可以获得高质量的点关系图构成的特征。
至于单独采用卷积,虽然特征仍然可以通过丰富的训练获得,然而其可解释性无法定义,同时隐空间表示不明确。当涉及到特定的任务时,例如缺失点云的密度是可变的,这是不利的或者未知的形状。相比较下,各点之间的关系采用KNN算子比仅采用卷积更容易获得,并能在每一层将信道之间的空间特征进行融合。更多维度的融合可以加强表现模型的能力。
此外,基于PointNet的编码器的一般是直接将卷积叠加在一起,这意味着随着网络层级的提高,信息会丢失,梯度***或梯度消失将可能在更深的层发生。因此,为了解决在这个问题,本实施例利用优化的残差结构代替单层结构连接,确保训练过程稳定。传统的残差连接处理时将前一层的输出通过位项相加的方式添加到本层中作为当前层输出,从而保留原始信息。然而,当涉及到KNN特征时,由于点空间的转换,每层的特征都是相互关联的,这使得简单的特征相加很难解释。因此,为提高可解释性,通过在MGE块内应用CAE的通道注意力机制模块引导参数对特征计算进行最大化操作。不同于基于二维网格的的CAE结构,本实施例所提到的压缩和激励操作可以表示为:
其中Fi表示第i层中的CAE输出。给定一个中间层特征,记为fi,N,其中i和N分别表示层数和点数。
在MLP层之前采用全局平均池化操作
注意力机制最优越的地方在于它并不是参数驱动的,而是数据驱动的。也就是说其可解释性非常清楚与完善,与上下文参数化卷积层充分解耦,即达到即插即用的灵活性,也大大提高了特征提取过程的可解释性。
同时,上述提到的二维卷积优化虽然有效提高了计算效率,但同时带来了一个问题,那就是在神经网络的卷积操作过程中,卷积核参数是动态更新的,无法保证每个K×1卷积核都对感受野内的特征进行最大化计算操作。我们将引入的注意力机制进行特征聚合,以得到尖锐的特征图。通过卷积操作,这些尖锐的部分会被卷积核更多地计算进后续的特征之中,这样可以使后续特征都保留之前特征的最大值,从而解决上述的问题。
将池化后的特征作为调制权值进行计算。然后,将局部结果叠加并与原始输入相乘。我们没有采用二维网格式的操作,而是采用逐点操作,通过池化来将四维KNN特征降为三维。池化操作可以将每两点之间的中间特征归一化,我们将归一化后的值重新采样到原始输入形状。通过调制权重与特征之间的像素级乘积,模型可以学习到更多有用的信息,从而大大增强了特征的表达能力。
在块结构中,本实施例将CAE模块放置在每一个串联的KNN卷积瓶颈结构之后,如图3所示,通过右方的单核卷积模拟原始信号之后,与串联后的CAE模块计算结果通过位项相加的方式完成残差连接。其总体公式表示为:
其中卷积模块定义为C,瓶颈模块定义为B。经过多次块堆叠,来自最大和平均池化的输出可以表示尽可能多的结构化信息。
本实施例所使用的编码器由3个MGE块组成。在3个残差结构后,将最后三层的输出通过类似金字塔的跨域按通道连接,公式表示为:
feature=R2⊕R3⊕R4,
之后,将耦合的多层融合特征进行全局和最大池化计算,得到max-pooling结果和average-pooling结果,并最终进行一维卷积运算,得到1024×1的输出。公式可表示为:
c=Conv(MAX(F4)⊕AVG(F4).
其中,c表示最终的特征向量,⊕表示按通道连接。
细节上,每层二维卷积操作,都是一个包装好的卷积块,对于输入信号,分别进行二维批次归一化(Batch Normalization,BN)操作和RELU激活函数操作。RELU函数可以将卷积操作的线性变换转化为非线性变换,从而在反向传播的时候为模型提供梯度。对于批次归一化操作,如果一个特征向量内容大小为N×K,在训练时每次送入模型的批次大小为12,则一个批次的输出为12×N×K,那么对于12个输出,批次归一化计算每一个的均值与方差,并将每一个输出约束在类正态分布的范围以提高数据稳定性,均值的公式表示为:
再计算方差,公式表示为:
通过可学习的参数和γ将均值和方差进行无偏估计,计算出单个输出Y,公示表示为:
其中ε表示常数项,防止分母为0,γ为偏置,防止梯度计算时偏导产生分母为0的情况。通过这样的操作可以使梯度即使在微小变化后也能对非线性函数的输出结果产生较大的改变,使梯度呈现非饱和状态,有助于参数更新,因此采用批次归一化能够减少训练时间,加强训练稳定性,同时缓解网络训练中的梯度消失问题。
S4、采用堆叠式Refine模块提取不同尺度下粗糙点云的几何信息并进行仿射变换,得到细节填充后的重建点云数据。
在本发明的一个可选实施例中,本实施例采用的堆叠式Refine模块具体包括:
点云拼接单元、点云分割单元、点云优化单元、共享参数的多层感知器和点云重建单元;
所述点云拼接单元用于将粗糙点云特征数据与缺陷点云数据进行拼接,得到第一点云数据;
所述点云分割单元用于对第一点云数据采用MDS采样算法进行重采样,并将重采样的点云数据划分为多个点云块;
所述点云优化单元用于将形状代码参数作为监督参数与点云块进行通道级连接,提取得到点云空间特征;
所述共享参数的多层感知器用于根据点云空间特征计算点云偏移量,并根据点云偏移量对点云进行坐标偏移,得到优化后的点云数据;
所述点云重建单元用于将优化后的点云数据与采用MDS采样算法对缺陷点云数据进行重采样得到的点云数据进行相加,得到细节填充后的重建点云数据。
其中,所述点云优化单元具体包括:
依次串联的第一卷积层、第二卷积层、第三卷积层、第四卷积层和第五卷积层,其中第一卷积层与第三卷积层通过残差连接。
具体而言,在点云补全任务中,基本的编解码功能只能解决部分重建难题,无法在细粒度空间尺度上对形状细节进行优化和补全,因此需要一些方法对编解码流程进行进一步优化,从而解决上述问题。因此本实施例提出的基于Coarse-To-Refine流程结构对其补全进行优化,将多尺度图像特征提取器构成的编解码***的输出点云作为粗糙点云,直接输入进后续的Refine模块中进行进一步优化。
即使MGE可以提取出有效有用的特征,但粗糙点仍不可避免地出现细节损失。因此,本实施例提出一个堆叠式Refine模块,如图4所示。
Refine模块主要的优化内容为深层挖掘几何形状信息,忽略重建时的几何缺损情况,重点突出边缘细节以及点分布情况。为达成这一目的,Refine模块通过复合下采样的方式获取不同尺度下粗糙点云的几何信息,并将高维几何信息通过共享参数的多层感知器进行连接,以对几何信息进行仿射变换,达成部分精细重建的效果。
不同于使用整体输入重构数据,本实施例提出的优化模块利用点云向量特性对输入进行多层次划分,使其变为小型patch的集合。具体的实施过程为:首先将粗槽点云与缺损点云进行拼接,拼接方法为在三维尺度上对点数量的坐标轴进行拼接,用公式表示为:
Pcat=Pbatch×P×3⊕Pbatch×N×3
=Pbatch×(P+N)×3
将拼接好的点云用MDS重新采样,得到大小为N(本实验中大小为16384)的点云数据。MDS(Minimal Density Sample)采样算法是一种针对点云分布特点进行特化采集的算法,主要功能为提取并采样一个点云中具有最大最小距离的点的几何,具体实施方法为随机取点,对该点为圆心的一系列点采集其最大距离的点集,从中取到最小的一份作为采样结果。最小点采样算法如下所示:
对于拼接后的点云Pcoarse,我们将其分成i个patch。然后将它们发送到相同结构的不同优化模块Ri,Ri由5个1维卷积层和对一层与三层进行的残差连接组成。当点云被分割成数块时,仅凭一块点云是无法获取有效空间特征的,而值得注意的是,我们认为上面的提到的MGE编码器获取的形状代码c可以作为监督元素来提醒网络原始形状信息,也就是说将形状代码进行分片,再仿射变换后,每一片可以对应上每一个的优化模块Ri。用公式可以表示为:
其中N表示patch的数量,⊕表示通道级连接。Refine模块负责将分块的点云进行细粒度拆分,并利用多层感知器计算相应的偏移量。最后将它们连接在一起,并与同样利用MDS重新采样为N大小的缺损点云在数值上进行相加,以此来移动它的每个点,这样能使几何细节被清晰地重建。如图5所示,本质上,图中左边点云的坐标增减,即为通过Refine模块计算出的点偏移量,通过对每个点实施不同的坐标偏移,能够使部分点移动到更加密集,规律的点区域内,从而实现完整优化。
除此以外,采用迭代式的优化过程,即将粗糙点云进行多阶段优化。首先将第一优化阶段的输出点云重新赋值给Pcoarse,对该点云重新执行以此优化过程。多次迭代的优点在于如果网络学习性能优秀,则各个阶段的优化过程会相对解耦,以此来对不同尺度下的几何细节进行不同程度的优化。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。
Claims (7)
1.一种基于可学习的K临近点采样的缺陷点云数据重建方法,其特征在于,包括以下步骤:
S1、获取缺陷点云数据,并进行预处理;
S2、采用多尺度图形特征编码器对步骤S1处理后的缺陷点云数据进行点云特征提取,得到粗糙点云特征数据;
S3、采用堆叠式Refine模块提取不同尺度下粗糙点云的几何信息并进行仿射变换,得到细节填充后的重建点云数据。
2.根据权利要求1所述的一种基于可学习的K临近点采样的缺陷点云数据重建方法,其特征在于,所述多尺度图形特征编码器具体包括:
依次串联的多个残差块、一个共享特征的多层感知器、一个全局池化和最大池化层、一个基于折叠的解码器;
多个所述残差块用于对步骤S1处理后的缺陷点云数据进行点云特征提取,并将提取的点云特征通过类似金字塔的跨域按通道连接,得到耦合的多层融合点云特征;
所述共享特征的多层感知器用于将多个残差块提取的多层融合点云特征在高维空间中进行低维映射,并引入由残差连接带来的原始信息输入,从而获取高聚合的低维点云特征向量;
所述全局池化和最大池化层用于对共享特征的多层感知器处理后的低维点云特征向量进行全局池化和最大池化操作,得到包含缺损点云的空间信息以及几何信息的低维点云特征向量和形状代码参数。
用于所述基于折叠的解码器用于将形状代码参数在重建空间中解码,重建为原始大小的粗糙点云数据。
3.根据权利要求2所述的一种基于可学习的K临近点采样的缺陷点云数据重建方法,其特征在于,所述残差块具体包括:
依次串联的基于多尺度KNN算子的边缘卷积层、最大池化和平均池化层、多层感知器、以及单核卷积层;
所述基于多尺度KNN算子的边缘卷积层用于对输入的缺陷点云数据利用KNN算子生成点云关系图,再利用多维的基于KNN索引的内核对点云关系图进行二维卷积计算,得到中间层特征;
所述最大池化和平均池化层用于对中间层特征进行最大池化和平均池化操作,得到池化后的点云特征;
所述多层感知器用于将池化后的点云特征作为调制权值与点云特征进行像素级乘积计算,得到局部叠加结果;
所述单核卷积层用于对输入的缺陷点云数据进行卷积操作,得到卷积点云特征;
所述局部叠加结果与输入的缺陷点云数据进行相乘计算后与卷积点云特征通过位项相加方式进行残差连接,得到残差块的输出结果。
4.根据权利要求3所述的一种基于可学习的K临近点采样的缺陷点云数据重建方法,其特征在于,所述全局池化和最大池化层具体用于:
对共享特征的多层感知器处理后的低维点云特征向量进行全局池化和最大池化计算,得到全局池化结果和最大池化结果;再将全局池化结果和最大池化结果进行一维卷积运算,得到包含缺损点云的空间信息以及几何信息的低维点云特征向量。
5.根据权利要求4所述的一种基于可学习的K临近点采样的缺陷点云数据重建方法,其特征在于,所述利用多维的基于KNN索引的内核对点云关系图进行二维卷积计算具体为:
利用多维的基于KNN索引的内核对点云关系图分别进行二维批次归一化操作和RELU激活函数操作;
其中二维批次归一化操作具体为对批次归一化计算结果分别计算均值与方差,再通过可学习参数将均值和方差进行无偏估计,计算单个输出结果。
6.根据权利要求5所述的一种基于可学习的K临近点采样的缺陷点云数据重建方法,其特征在于,所述堆叠式Refine模块具体包括:
点云拼接单元、点云分割单元、点云优化单元、共享参数的多层感知器和点云重建单元;
所述点云拼接单元用于将粗糙点云特征数据与缺陷点云数据进行拼接,得到第一点云数据;
所述点云分割单元用于对第一点云数据采用MDS采样算法进行重采样,并将重采样的点云数据划分为多个点云块;
所述点云优化单元用于将形状代码参数作为监督参数与点云块进行通道级连接,提取得到点云空间特征;
所述共享参数的多层感知器用于根据点云空间特征计算点云偏移量,并根据点云偏移量对点云进行坐标偏移,得到优化后的点云数据;
所述点云重建单元用于将优化后的点云数据与采用MDS采样算法对缺陷点云数据进行重采样得到的点云数据进行相加,得到细节填充后的重建点云数据。
7.根据权利要求6所述的一种基于可学习的K临近点采样的缺陷点云数据重建方法,其特征在于,所述点云优化单元具体包括:
依次串联的第一卷积层、第二卷积层、第三卷积层、第四卷积层和第五卷积层,其中第一卷积层与第三卷积层通过残差连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310356426.XA CN116597071A (zh) | 2023-04-04 | 2023-04-04 | 一种基于可学习的k临近点采样的缺陷点云数据重建方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310356426.XA CN116597071A (zh) | 2023-04-04 | 2023-04-04 | 一种基于可学习的k临近点采样的缺陷点云数据重建方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116597071A true CN116597071A (zh) | 2023-08-15 |
Family
ID=87606932
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310356426.XA Pending CN116597071A (zh) | 2023-04-04 | 2023-04-04 | 一种基于可学习的k临近点采样的缺陷点云数据重建方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116597071A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117351212A (zh) * | 2023-11-30 | 2024-01-05 | 湘潭大学 | 一种基于双向多尺度注意力的水利环境下的点云分割方法 |
-
2023
- 2023-04-04 CN CN202310356426.XA patent/CN116597071A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117351212A (zh) * | 2023-11-30 | 2024-01-05 | 湘潭大学 | 一种基于双向多尺度注意力的水利环境下的点云分割方法 |
CN117351212B (zh) * | 2023-11-30 | 2024-03-01 | 湘潭大学 | 一种基于双向多尺度注意力的水利环境下的点云分割方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Riegler et al. | Octnet: Learning deep 3d representations at high resolutions | |
Huang et al. | 3d point cloud geometry compression on deep learning | |
US11704537B2 (en) | Octree-based convolutional neural network | |
CN111862101A (zh) | 一种鸟瞰图编码视角下的3d点云语义分割方法 | |
CN113177555B (zh) | 基于跨层级跨尺度跨注意力机制的目标处理方法及装置 | |
CN102930597B (zh) | 一种外存三维模型的处理方法 | |
CN112785611B (zh) | 一种3d点云弱监督语义分割方法及*** | |
US20230005217A1 (en) | Systems and methods of hierarchical implicit representation in octree for 3d modeling | |
Son et al. | SAUM: Symmetry-aware upsampling module for consistent point cloud completion | |
CN116597071A (zh) | 一种基于可学习的k临近点采样的缺陷点云数据重建方法 | |
CN114048845B (zh) | 点云修复方法、装置、计算机设备和存储介质 | |
CN116740527A (zh) | U型网络与自注意力机制结合的遥感图像变化检测方法 | |
CN116229057A (zh) | 一种基于深度学习的三维激光雷达点云语义分割的方法和装置 | |
CN115984564A (zh) | 一种基于体素聚类和稀疏卷积的点云语义分割方法和*** | |
CN117725966B (zh) | 草图序列重建模型的训练方法、几何模型重建方法及设备 | |
CN117237643A (zh) | 一种点云语义分割方法及*** | |
CN113326847B (zh) | 一种基于全卷积神经网络的遥感图像语义分割方法及装置 | |
CN115497085A (zh) | 基于多分辨率双特征折叠的点云补全方法及*** | |
Liu et al. | Rocnet: Recursive octree network for efficient 3d deep representation | |
CN114331883A (zh) | 一种基于局部协方差优化的点云补全方法 | |
CN112767539A (zh) | 一种基于深度学习的图像三维重构方法及*** | |
Chen et al. | Fast hierarchical neural network for feature learning on point cloud | |
Fang et al. | A research on deep learning methods for 3D point cloud semantic segmentation | |
Turhan et al. | Class‐aware single image to 3D object translational autoencoder | |
Xiang et al. | Feature‐enhanced representation with transformers for multi‐view stereo |
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 |