CN115661336A - 一种三维重建方法及相关装置 - Google Patents
一种三维重建方法及相关装置 Download PDFInfo
- Publication number
- CN115661336A CN115661336A CN202211153304.2A CN202211153304A CN115661336A CN 115661336 A CN115661336 A CN 115661336A CN 202211153304 A CN202211153304 A CN 202211153304A CN 115661336 A CN115661336 A CN 115661336A
- Authority
- CN
- China
- Prior art keywords
- feature representation
- attention
- feature
- event
- information
- 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 116
- 230000004927 fusion Effects 0.000 claims abstract description 71
- 239000013598 vector Substances 0.000 claims description 147
- 238000012545 processing Methods 0.000 claims description 89
- 230000015654 memory Effects 0.000 claims description 66
- 238000013528 artificial neural network Methods 0.000 claims description 63
- 230000007246 mechanism Effects 0.000 claims description 33
- 238000001914 filtration Methods 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 8
- 230000036961 partial effect Effects 0.000 claims description 8
- 238000013473 artificial intelligence Methods 0.000 abstract description 15
- 239000011159 matrix material Substances 0.000 description 70
- 230000006870 function Effects 0.000 description 59
- 238000012549 training Methods 0.000 description 49
- 238000010586 diagram Methods 0.000 description 35
- 230000008569 process Effects 0.000 description 35
- 238000011176 pooling Methods 0.000 description 30
- 238000013527 convolutional neural network Methods 0.000 description 29
- 238000003384 imaging method Methods 0.000 description 29
- 238000004364 calculation method Methods 0.000 description 20
- 238000000605 extraction Methods 0.000 description 17
- 238000004891 communication Methods 0.000 description 15
- 230000009466 transformation Effects 0.000 description 14
- 238000004422 calculation algorithm Methods 0.000 description 12
- 230000001629 suppression Effects 0.000 description 12
- 230000001537 neural effect Effects 0.000 description 11
- 210000002569 neuron Anatomy 0.000 description 10
- 230000004913 activation Effects 0.000 description 9
- 238000013500 data storage Methods 0.000 description 9
- 230000008859 change Effects 0.000 description 8
- 230000000694 effects Effects 0.000 description 8
- 238000011161 development Methods 0.000 description 7
- 230000002829 reductive effect Effects 0.000 description 7
- 230000008901 benefit Effects 0.000 description 6
- 238000013135 deep learning Methods 0.000 description 6
- 238000003062 neural network model Methods 0.000 description 6
- 238000012360 testing method Methods 0.000 description 6
- 238000001514 detection method Methods 0.000 description 5
- 239000000284 extract Substances 0.000 description 5
- 238000007781 pre-processing Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000005284 excitation Effects 0.000 description 4
- 238000010606 normalization Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 239000000872 buffer Substances 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000003058 natural language processing Methods 0.000 description 3
- 238000011022 operating instruction Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 239000011664 nicotinic acid Substances 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000011217 control strategy Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000008570 general process Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 208000013409 limited attention Diseases 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 239000007788 liquid Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 210000005036 nerve Anatomy 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 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
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
Abstract
一种三维重建方法,可以应用于人工智能领域,方法包括:获取第一特征表示和第二特征表示,所述第一特征表示为RGB相机采集的像素图像对应的特征表示,所述第二特征表示为通过事件相机采集的事件数据对应的特征表示;所述像素图像和所述事件数据为针对于同一场景采集得到的;将所述第一特征表示和所述第二特征表示进行特征融合,得到第三特征表示;根据第三特征表示,通过三维重建网络对所述场景进行三维重建,得到三维重建结果。本申请可以得到具备时间分辨率较高、低噪声以及空间分辨率较高的特征的三维重建结果。
Description
技术领域
本申请涉及人工智能领域,尤其涉及一种三维重建方法及相关装置。
背景技术
人工智能(artificial intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用***。换句话说,人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式作出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
结构光成像作为三维重建的重要组成部分,其通过主动投影编码图案实现对物体三维结构的重建,具备简单,非接触,鲁棒性高和低损耗等特点。相比于双目三维重建等被动式方法,结构光成像在黑暗和纹理缺失等极端场景下的成像效果更好,准确度更高。传统结构光成像通过传统主动像素传感器(active pixel sensor,APS)相机和主动光源(激光发射器、数字投影仪)的立体***完成高分辨率,高质量的三维重建。
但随着结构光成像对成像质量和速度的要求日益提高,由于传统相机的分辨率与帧率之间的相互制约,无法实现快速高质量的三维成像。其次,通过主动投影的方式易受环境光干扰,物体表面颜色和反射也影响了投影图案的解码,降低了主动式结构光成像准确率。
事件相机(dynamic vision sensor,DVS)作为近些年广泛关注的视觉传感器,其成像方式借鉴仿生学特点,通过光强变化驱动成像。具有低延时、高动态、低冗余、像素独立激发等优势,是结构光成像的理想传感器。首先,其低延时特点使得数据采集带宽极高,有效弥补了传统相机帧率不足问题;其次,其高动态范围(120dB)能够使得传感器在过曝情况下依然可以正常采集有效信息。但由于相机像素的独立激发特点,易受自然光照变化产生大量噪声,严重降低了三维重建的精度,同时因为低延时和高分辨率的矛盾点,现有事件相机的空间维度的分辨率较低,无法实现高分辨率的三维重建。
发明内容
本申请提供了一种三维重建方法,可以得到具备时间分辨率较高、低噪声以及空间分辨率较高的特征的三维重建结果。
第一方面,本申请实施例提供了一种三维重建方法,所述方法包括:获取第一特征表示和第二特征表示,所述第一特征表示为RGB相机采集的像素图像对应的特征表示,所述第二特征表示为通过事件相机采集的事件数据对应的特征表示;所述像素图像和所述事件数据为针对于同一场景采集得到的;将所述第一特征表示和所述第二特征表示进行特征融合,得到第三特征表示;根据所述第三特征表示,通过三维重建网络对所述场景进行三维重建,得到三维重建结果。
本申请实施例中通过将像素图像和事件数据的特征表示进行融合,由于事件相机采集的事件数据的时间分辨率较高,且RGB相机采集的图像帧具备低噪声以及空间分辨率较高的特征,基于融合后的特征表示进行三维重建得到的重建结果可以具备时间分辨率较高、低噪声以及空间分辨率较高的特征。
为了保证融合对象的准确性,需要保证像素图像和事件数据是在时间和空间上都匹配的数据,也就是说,作为特征融合对应的像素图像和事件数据可以分别是RGB相机和事件相机对同一场景采集得到的,且所述事件数据为根据所述事件相机在目标时间段内采集的多帧事件数据得到,所述像素图像为所述RGB相机在所述目标时间段内采集的图像得到的。
也就是说,像素图像的曝光时间在目标时间段内,具体可以是目标时间段内的一个子时间段。在目标时间段内,事件相机可以采集得到多帧事件数据,示例性的,可以对多帧事件数据进行相位解算,得到事件数据。
在一种可能的实现中,所述第一特征表示和所述第二特征表示在空间维度上的尺寸相同,所述特征融合为在通道维度上的拼接操作。
在一种可能的实现中,所述获取第二特征表示,包括:根据第三特征表示,通过神经网络,得到目标信息,所述第三特征表示为所述像素图像对应的特征表示,所述目标信息表示第四特征表示中位置点包含的噪声的权重,所述第四特征表示为所述事件数据对应的特征表示;根据所述第四特征表示和所述目标信息,得到所述第二特征表示。
在一种可能的实现中,由于相机采集的像素图像相比事件相机采集的事件数据具有较低的噪声,为实现两种模态的融合,可以通过神经网络,将从像素图像的特征表示中提取出目标信息,该目标信息可以表示特征表示的各个位置点包含的噪声的权重,并将目标信息和第四特征表示进行融合,从而实现对事件噪声的有效抑制。
在一种可能的实现中,所述神经网络为第一注意力网络,可以根据第三特征表示,通过第一注意力网络,得到目标信息,所述目标信息包括第一注意力信息;所述第一注意力信息为所述像素图像在空间维度的关联度信息,其中,第三特征表示可以为上述实施例中介绍的像素图像对应的浅层特征表示,或者是通过某个注意力模块得到的像素图像对应的特征表示,第一注意力网络可以属于该注意力模块的相邻下一个注意力模块。所述像素图像在空间维度的关联度信息可以表示出噪声的权重比例。
由于事件流数据的特殊性以及事件相机和传统相机之间的分辨率不同问题,在网络中添加了自注意力机制实现模态融合,并通过一个高分辨率重建模块获得了快速高质量的结果。
在一种可能的实现中,可以通过第二注意力网络,处理第四特征表示,得到第二注意力信息;所述第二注意力信息为所述事件数据在空间维度的关联度信息,其中,第三特征表示可以为上述实施例中介绍的事件数据对应的浅层特征表示,或者是通过某个注意力模块得到的事件数据对应的特征表示,第二注意力网络可以属于该注意力模块的相邻下一个注意力模块;所述第二注意力信息用于与所述第一注意力信息进行注意力融合,以得到第三注意力信息;其中,所述第三注意力信息用于得到所述第二特征表示。
在一种可能的实现中,所述注意力融合为对应位置的加和操作。
在一种可能的实现中,所述第一注意力信息、所述第二注意力信息以及所述第三注意力信息可以为用于表示Q向量和K向量之间的关联度;所述第三注意力信息可以用于和通过第二注意力网络处理所述第四特征表示得到的K向量进行融合,得到所述第一特征表示。
相比于多层卷积实现感受野扩展,可以通过二维矩阵相乘完成特征图的全局相关性计算,获得全局感受野。但上述方式仅能计算全局相关权重,丢失了特定像素位置的局部相关性,无法有效保证局部和全局自注意力机制的统一。为获得局部感受野,可以增加对应前馈神经网络(feed forward network,FFN)。其基本组成可以包括输入层、隐藏层、激活层和输出层。隐藏层中的浅层网络能够实现局部相关性计算。
在一种可能的实现中,还可以通过前馈神经网络FFN处理所述第一特征表示,得到处理后的第一特征表示;所述将所述第一特征表示和所述第二特征表示进行特征融合,包括:将所述处理后的第一特征表示和所述第二特征表示进行特征融合;或者,通过前馈神经网络FFN处理所述第二特征表示,得到处理后的第二特征表示;所述将所述第一特征表示和所述第二特征表示进行特征融合,包括:将所述第一特征表示和所述处理后的第二特征表示进行特征融合。
在一种可能的实现中,可以通过多个串联的注意力模块,对所述像素图像对应的特征表示以及所述事件数据对应的特征表示进行处理,得到所述第一特征表示和所述第二特征表示;其中,每个所述注意力模块的输出用于作为相邻的下一个注意力模块的输入,并进行基于注意力机制的处理。也就是说,每个注意力模块可以基于相邻上一个连接的注意力模块输出的所述像素图像对应的特征表示以及所述事件数据对应的特征表示进行基于注意力机制的处理(第一个注意力模块可以获取到像素图像对应的浅层特征表示以及事件数据对应的浅层特征表示,最后一个注意力模块可以得到第一特征表示和第二特征表示)。
在一种可能的实现中,所述每个所述注意力模块的输出包括所述像素图像对应的特征表示以及所述事件数据对应的特征表示;所述第一特征表示为根据多个所述注意力模块中的部分或全部的注意力模块得到的所述像素图像对应的特征表示进行融合得到的;或者,所述第二特征表示为根据多个所述注意力模块中的部分或全部的注意力模块得到的所述事件数据对应的特征表示进行融合得到的。
在一种可能的实现中,所述三维重建结果的分辨率和所述像素图像的分辨率一致。
在一种可能的实现中,所述三维重建结果包括多个位置点以及每个位置点对应的深度信息。
在一种可能的实现中,所述方法还包括:
对通过事件相机采集的事件数据进行相位解算,得到事件相位;
所述第二特征表示为所述事件相位对应的特征表示。
在一种可能的实现中,可以对事件相位进行中值滤波。具体的,所述事件相位包括目标位置点对应的多个相位值,所述多个相位值中不同所述相位值对应不同的时间戳;可以对所述事件相位进行中值滤波处理,得到处理后的事件相位;所述第二特征表示为所述处理后的事件相位对应的特征表示;其中,所述处理后的事件相位包括所述目标位置点对应的目标相位值,所述目标相位值为对所述目标位置点对应的多个相位值进行中值滤波得到的。由于事件相机成像原理特点,有效数据伴随着大量的随机噪声,一般而言,随机波动事件点能够通过简单的滤波处理,对周期内同一像素的所有事件点时间戳进行中值滤波,能够有效去除随机噪声。
第二方面,本申请提供了一种三维重建装置,所述装置包括:
获取模块,用于获取第一特征表示和第二特征表示,所述第一特征表示为RGB相机采集的像素图像对应的特征表示,所述第二特征表示为通过事件相机采集的事件数据对应的特征表示;所述像素图像和所述事件数据为针对于同一场景采集得到的;
融合模块,用于将所述第一特征表示和所述第二特征表示进行特征融合,得到第三特征表示;
三维重建模块,用于根据所述第三特征表示,通过三维重建网络对所述场景进行三维重建,得到三维重建结果。
在一种可能的实现中,所述事件数据为根据所述事件相机在目标时间段内采集的多帧事件数据得到,所述像素图像为所述RGB相机在所述目标时间段内采集的图像得到的。
在一种可能的实现中,所述第一特征表示和所述第二特征表示在空间维度上的尺寸相同,所述特征融合为在通道维度上的拼接操作。
在一种可能的实现中,所述获取模块,具体用于:
根据第三特征表示,通过神经网络,得到目标信息,所述第三特征表示为所述像素图像对应的特征表示,所述目标信息表示第四特征表示中位置点包含的噪声的权重,所述第四特征表示为所述事件数据对应的特征表示;
根据所述第四特征表示和所述目标信息,得到所述第二特征表示。
在一种可能的实现中,所述神经网络为第一注意力网络,所述获取模块,具体用于:
根据第三特征表示,通过第一注意力网络,得到目标信息,所述目标信息包括第一注意力信息;所述第一注意力信息为所述像素图像在空间维度的关联度信息;
通过第二注意力网络,处理第四特征表示,得到第二注意力信息;所述第二注意力信息为所述事件数据在空间维度的关联度信息,所述第二注意力信息用于与所述第一注意力信息进行注意力融合,以得到第三注意力信息;其中,
所述第三注意力信息用于得到所述第二特征表示。
在一种可能的实现中,所述注意力融合为对应位置的加和操作。
在一种可能的实现中,所述第一注意力信息、所述第二注意力信息以及所述第三注意力信息用于表示Q向量和K向量之间的关联度;
所述第三注意力信息用于得到所述第一特征表示,包括:
所述第三注意力信息用于和通过第二注意力网络处理所述第四特征表示得到的K向量进行融合,得到所述第一特征表示。
在一种可能的实现中,所述装置还包括:
FFN模块,用于通过前馈神经网络FFN处理所述第一特征表示,得到处理后的第一特征表示;所述将所述第一特征表示和所述第二特征表示进行特征融合,包括:将所述处理后的第一特征表示和所述第二特征表示进行特征融合;或者,
通过前馈神经网络FFN处理所述第二特征表示,得到处理后的第二特征表示;所述将所述第一特征表示和所述第二特征表示进行特征融合,包括:将所述第一特征表示和所述处理后的第二特征表示进行特征融合。
在一种可能的实现中,所述获取模块,具体用于:
通过多个串联的注意力模块,对所述像素图像对应的特征表示以及所述事件数据对应的特征表示进行处理,得到所述第一特征表示和所述第二特征表示;其中,每个所述注意力模块的输出用于作为相邻的下一个注意力模块的输入,并进行基于注意力机制的处理。
在一种可能的实现中,所述每个所述注意力模块的输出包括所述像素图像对应的特征表示以及所述事件数据对应的特征表示;
所述第一特征表示为根据多个所述注意力模块中的部分或全部的注意力模块得到的所述像素图像对应的特征表示进行融合得到的;或者,
所述第二特征表示为根据多个所述注意力模块中的部分或全部的注意力模块得到的所述事件数据对应的特征表示进行融合得到的。
在一种可能的实现中,所述三维重建结果的分辨率和所述像素图像的分辨率一致。
在一种可能的实现中,所述三维重建结果包括多个位置点以及每个位置点对应的深度信息。
在一种可能的实现中,所述装置还包括:
相位解算模块,用于对通过事件相机采集的事件数据进行相位解算,得到事件相位;
所述第二特征表示为所述事件相位对应的特征表示。
在一种可能的实现中,所述事件相位包括目标位置点对应的多个相位值,所述多个相位值中不同所述相位值对应不同的时间戳;所述装置还包括:
滤波模块,用于对所述事件相位进行中值滤波处理,得到处理后的事件相位;所述第二特征表示为所述处理后的事件相位对应的特征表示;其中,
所述处理后的事件相位包括所述目标位置点对应的目标相位值,所述目标相位值为对所述目标位置点对应的多个相位值进行中值滤波得到的。
第三方面,本申请实施例提供了一种***,包括RGB相机、事件相机以及如上述第二方面任一所述的装置。
第四方面,本申请实施例提供了一种三维重建装置,可以包括存储器、处理器以及总线***,其中,存储器用于存储程序,处理器用于执行存储器中的程序,以执行如上述第一方面任一可选的方法。
第五方面,本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行上述第一方面及任一可选的方法。
第六方面,本申请实施例提供了一种计算机程序产品,包括代码,当代码被执行时,用于实现上述第一方面及任一可选的方法。
第七方面,本申请提供了一种芯片***,该芯片***包括处理器,用于支持三维重建装置实现上述方面中所涉及的功能,例如,发送或处理上述方法中所涉及的数据;或,信息。在一种可能的设计中,芯片***还包括存储器,所述存储器,用于保存执行设备或训练设备必要的程序指令和数据。该芯片***,可以由芯片构成,也可以包括芯片和其他分立器件。
附图说明
图1A为人工智能主体框架的一种结构示意图;
图1B和图2为本发明的应用***框架示意;
图3为终端的一种可选的硬件结构示意图;
图4为一种服务器的结构示意图;
图5为本申请的一种***架构示意;
图6为一种云服务的流程;
图7为本申请实施例中的一种神经网络模型的结构示意;
图8为本申请实施例中的一种神经网络模型的结构示意;
图9为一种transformer层的架构示意;
图10为一种三维重建方法的流程示意;
图11为一种三维重建方法的示意;
图12为一种transformer层的结构示意;
图13为一种transformer层的结构示意;
图14为一个注意力头head的操作示意图;
图15为一个处理流程示意图;
图16A为一个NSB网络的示意图;
图16B为一个FFN的示意图;
图17至图21B为本申请实施例提供的一种三维重建方法的效果示意;
图22为本申请实施例提供的一种三维重建装置的结构示意图;
图23为本申请实施例提供的一种执行设备的示意图;
图24为本申请实施例提供的一种训练设备的示意图;
图25为本申请实施例提供的一种芯片的示意图。
具体实施方式
下面结合本发明实施例中的附图对本发明实施例进行描述。本发明的实施方式部分使用的术语仅用于对本发明的具体实施例进行解释,而非旨在限定本发明。
下面结合附图,对本申请的实施例进行描述。本领域普通技术人员可知,随着技术的发展和新场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本申请的实施例中对相同属性的对象在描述时所采用的区分方式。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、***、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。
首先对人工智能***总体工作流程进行描述,请参见图1A,图1A示出的为人工智能主体框架的一种结构示意图,下面从“智能信息链”(水平轴)和“IT价值链”(垂直轴)两个维度对上述人工智能主题框架进行阐述。其中,“智能信息链”反映从数据的获取到处理的一列过程。举例来说,可以是智能信息感知、智能信息表示与形成、智能推理、智能决策、智能执行与输出的一般过程。在这个过程中,数据经历了“数据-信息-知识-智慧”的凝练过程。“IT价值链”从人智能的底层基础设施、信息(提供和处理技术实现)到***的产业生态过程,反映人工智能为信息技术产业带来的价值。
(1)基础设施
基础设施为人工智能***提供计算能力支持,实现与外部世界的沟通,并通过基础平台实现支撑。通过传感器与外部沟通;计算能力由智能芯片(CPU、NPU、GPU、ASIC、FPGA等硬件加速芯片)提供;基础平台包括分布式计算框架及网络等相关的平台保障和支持,可以包括云存储和计算、互联互通网络等。举例来说,传感器和外部沟通获取数据,这些数据提供给基础平台提供的分布式计算***中的智能芯片进行计算。
(2)数据
基础设施的上一层的数据用于表示人工智能领域的数据来源。数据涉及到图形、图像、语音、文本,还涉及到传统设备的物联网数据,包括已有***的业务数据以及力、位移、液位、温度、湿度等感知数据。
(3)数据处理
数据处理通常包括数据训练,机器学习,深度学习,搜索,推理,决策等方式。
其中,机器学习和深度学习可以对数据进行符号化和形式化的智能信息建模、抽取、预处理、训练等。
推理是指在计算机或智能***中,模拟人类的智能推理方式,依据推理控制策略,利用形式化的信息进行机器思维和求解问题的过程,典型的功能是搜索与匹配。
决策是指智能信息经过推理后进行决策的过程,通常提供分类、排序、预测等功能。
(4)通用能力
对数据经过上面提到的数据处理后,进一步基于数据处理的结果可以形成一些通用的能力,比如可以是算法或者一个通用***,例如,翻译,文本的分析,计算机视觉的处理,语音识别,图像的识别等等。
(5)智能产品及行业应用
智能产品及行业应用指人工智能***在各领域的产品和应用,是对人工智能整体解决方案的封装,将智能信息决策产品化、实现落地应用,其应用领域主要包括:智能终端、智能交通、智能医疗、自动驾驶、智慧城市等。
本申请实施例可以应用在三维重建(或者是基于三维重建结果进行的下游任务等),例如基于面部标识FACE ID实现的终端解锁或者智能物理锁、基于三维重建实现的无人工厂货物的个数统计、在车载等场景下的基于三维重建实现的无接触控制等手势控制、和景深处理相关的拍照场景、3D视频生成(例如数字人生成)等领域中。
接下来首先介绍本申请的应用场景,本申请可以但不限于应用在具备基于三维重建功能的应用程序或者云侧服务器提供的云服务等,接下来分别进行介绍:
一、三维重建类应用程序
本申请实施例的产品形态可以为三维重建类应用程序。三维重建类应用程序可以运行在终端设备或者云侧的服务器上。
在一种可能的实现中,三维重建类应用程序可以实现三维重建任务或者基于三维重建结果进行的任务等。
在一种可能的实现中,用户可以打开终端设备上安装的具备三维重建类功能的应用程序,应用程序可以获取到相机采集的数据(例如可以包括RGB相机采集的图像数据以及事件相机采集的事件数据),三维重建类应用程序可以通过本申请实施例提供的方法基于输入数据得到处理结果,并将三维重建结果或者是基于三维重建结果实现的下游任务结果呈现给用户(呈现方式可以但不限于是显示、保存、上传到云侧等)。
在一种可能的实现中,用户可以打开终端设备上安装的三维重建类应用程序,应用程序可以获取到相机采集的数据(例如可以包括RGB相机采集的图像数据以及事件相机采集的事件数据),三维重建类应用程序可以将数据(或者对该数据进行一定处理后得到的结果)发送至云侧的服务器,云侧的服务器通过本申请实施例提供的方法基于图像生成三维重建结果,并将三维重建结果或者是基于三维重建结果实现的下游任务结果回传至终端设备,终端设备可以将三维重建结果或者是基于三维重建结果实现的下游任务结果呈现给用户(呈现方式可以但不限于是显示、保存、上传到云侧等)。
接下来分别从功能架构以及实现功能的产品架构介绍本申请实施例中的三维重建类应用程序。
参照图1B,图1B为本申请实施例中三维重建类应用程序的功能架构示意:
在一种可能的实现中,如图1B所示,三维重建类应用程序102可接收输入的数据101(例如图像以及事件数据)且产生三维重建结果103。三维重建类应用程序102可在(举例来说)至少一个计算机***上执行,且包括计算机代码,所述计算机代码在由一或多个计算机执行时致使所述计算机执行用于执行本文中所描述的三维重建方法。
参照图2,图2为本申请实施例中运行三维重建类应用程序的实体架构示意:
参见图2,图2示出了一种***架构示意图。该***可以包括终端100、以及服务器200。其中,服务器200可以包括一个或者多个服务器(图2中以包括一个服务器作为示例进行说明),服务器200可以为一个或者多个终端提供三维重建服务或者基于三维重建结果进行下游任务。
其中,终端100上可以安装有三维重建类应用程序,或者打开与三维重建或者基于三维重建结果进行下游任务相关的网页,上述应用程序和网页可以提供一个界面,终端100可以接收用户在三维重建或者基于三维重建结果进行下游任务界面上输入的相关参数,并将上述参数发送至服务器200,服务器200可以基于接收到的参数,得到处理结果,并将处理结果返回至至终端100。
应理解,在一些可选的实现中,终端100也可以由自身完成基于接收到的参数,得到数据处理结果,而不需要服务器配合实现,本申请实施例并不限定。
接下来描述图2中终端100的产品形态;
本申请实施例中的终端100可以为手机、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personaldigitalassistant,PDA)等,本申请实施例对此不作任何限制。
图3示出了终端100的一种可选的硬件结构示意图。
参考图3所示,终端100可以包括射频单元110、存储器120、输入单元130、显示单元140、摄像头150(可选的)、音频电路160(可选的)、扬声器161(可选的)、麦克风162(可选的)、处理器170、外部接口180、电源190等部件。本领域技术人员可以理解,图3仅仅是终端或多功能设备的举例,并不构成对终端或多功能设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件。
输入单元130可用于接收输入的数字或字符信息,以及产生与该便携式多功能装置的用户设置以及功能控制有关的键信号输入。具体地,输入单元130可包括触摸屏131(可选的)和/或其他输入设备132。该触摸屏131可收集用户在其上或附近的触摸操作(比如用户使用手指、关节、触笔等任何适合的物体在触摸屏上或在触摸屏附近的操作),并根据预先设定的程序驱动相应的连接装置。触摸屏可以检测用户对触摸屏的触摸动作,将该触摸动作转换为触摸信号发送给该处理器170,并能接收该处理器170发来的命令并加以执行;该触摸信号至少包括触点坐标信息。该触摸屏131可以提供该终端100和用户之间的输入界面和输出界面。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触摸屏。除了触摸屏131,输入单元130还可以包括其他输入设备。具体地,其他输入设备132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
其中,其他输入设备132可以获取相机采集的数据等等。
该显示单元140可用于显示由用户输入的信息或提供给用户的信息、终端100的各种菜单、交互界面、文件显示和/或任意一种多媒体文件的播放。在本申请实施例中,显示单元140可用于显示和三维重建相关的应用程序的界面等。
该存储器120可用于存储指令和数据,存储器120可主要包括存储指令区和存储数据区,存储数据区可存储各种数据,如多媒体文件、文本等;存储指令区可存储操作***、应用、至少一个功能所需的指令等软件单元,或者他们的子集、扩展集。还可以包括非易失性随机存储器;向处理器170提供包括管理计算处理设备中的硬件、软件以及数据资源,支持控制软件和应用。还用于多媒体文件的存储,以及运行程序和应用的存储。
处理器170是终端100的控制中心,利用各种接口和线路连接整个终端100的各个部分,通过运行或执行存储在存储器120内的指令以及调用存储在存储器120内的数据,执行终端100的各种功能和处理数据,从而对终端设备进行整体控制。可选的,处理器170可包括一个或多个处理单元;优选的,处理器170可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器170中。在一些实施例中,处理器、存储器、可以在单一芯片上实现,在一些实施例中,他们也可以在独立的芯片上分别实现。处理器170还可以用于产生相应的操作控制信号,发给计算处理设备相应的部件,读取以及处理软件中的数据,尤其是读取和处理存储器120中的数据和程序,以使其中的各个功能模块执行相应的功能,从而控制相应的部件按指令的要求进行动作。
其中,存储器120可以用于存储三维重建方法相关的软件代码,处理器170可以执行芯片的三维重建方法的步骤,也可以调度其他单元(例如上述输入单元130以及显示单元140)以实现相应的功能。
该射频单元110(可选的)可用于收发信息或通话过程中信号的接收和发送,例如,将基站的下行信息接收后,给处理器170处理;另外,将设计上行的数据发送给基站。通常,RF电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low NoiseAmplifier,LNA)、双工器等。此外,射频单元110还可以通过无线通信与网络设备和其他设备通信。该无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯***(Global System of Mobile communication,GSM)、通用分组无线服务(General PacketRadio Service,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE)、电子邮件、短消息服务(Short Messaging Service,SMS)等。
具中,在本申请实施例中,该射频单元110可以将相机采集的数据发送至服务器200,并接收到服务器200发送的处理结果的信息。
应理解,该射频单元110为可选的,其可以被替换为其他通信接口,例如可以是网口。
终端100还包括给各个部件供电的电源190(比如电池),优选的,电源可以通过电源管理***与处理器170逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。
终端100还包括外部接口180,该外部接口可以是标准的Micro USB接口,也可以使多针连接器,可以用于连接终端100与其他装置进行通信,也可以用于连接充电器为终端100充电。
尽管未示出,终端100还可以包括闪光灯、无线保真(wireless fidelity,WiFi)模块、蓝牙模块、不同功能的传感器等,在此不再赘述。下文中描述的部分或全部方法均可以应用在如图3所示的终端100中。
接下来描述图2中服务器200的产品形态;
图4提供了一种服务器200的结构示意图,如图4所示,服务器200包括总线201、处理器202、通信接口203和存储器204。处理器202、存储器204和通信接口203之间通过总线201通信。
总线201可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
处理器202可以为中央处理器(central processing unit,CPU)、图形处理器(graphics processing unit,GPU)、微处理器(micro processor,MP)或者数字信号处理器(digital signal processor,DSP)等处理器中的任意一种或多种。
存储器204可以包括易失性存储器(volatile memory),例如随机存取存储器(random access memory,RAM)。存储器204还可以包括非易失性存储器(non-volatilememory),例如只读存储器(read-only memory,ROM),快闪存储器,机械硬盘(hard drivedrive,HDD)或固态硬盘(solid state drive,SSD)。
其中,存储器204可以用于存储三维重建方法相关的软件代码,处理器202可以执行芯片的三维重建方法的步骤,也可以调度其他单元以实现相应的功能。
应理解,上述终端100和服务器200可以为集中式或者是分布式的设备,上述终端100和服务器200中的处理器(例如处理器170以及处理器202)可以为硬件电路(如专用集成电路(application specific integrated circuit,ASIC)、现场可编程门阵列(field-programmable gate array,FPGA)、通用处理器、数字信号处理器(digital signalprocessing,DSP)、微处理器或微控制器等等)、或这些硬件电路的组合,例如,处理器可以为具有执行指令功能的硬件***,如CPU、DSP等,或者为不具有执行指令功能的硬件***,如ASIC、FPGA等,或者为上述不具有执行指令功能的硬件***以及具有执行指令功能的硬件***的组合。
应理解,本申请实施例中的和模型推理过程相关的步骤涉及AI相关的运算,在执行AI运算时,终端设备和服务器的指令执行架构不仅仅局限在上述介绍的处理器结合存储器的架构。下面结合图5对本申请实施例提供的***架构进行详细的介绍。
请参阅图5,图5为本申请实施例提供的***的一种***架构图,在图5中,任务处理***500包括执行设备510、训练设备520、数据库530、客户设备540、数据存储***550和数据采集设备560,执行设备510中包括计算模块511。其中,数据采集设备560用于获取用户需要的开源的大规模数据集(即训练集),并将训练集存入数据库530中,训练设备520基于数据库530中的维护的训练集对目标模型/规则501进行训练,训练得到的训练后的神经网络再在执行设备510上进行运用。执行设备510可以调用数据存储***550中的数据、代码等,也可以将数据、指令等存入数据存储***550中。数据存储***550可以置于执行设备510中,也可以为数据存储***550相对执行设备510是外部存储器。
经由训练设备520训练的目标模型/规则501后得到的训练后的神经网络可以应用于不同的***或设备(即执行设备510)中,具体可以是边缘设备或端侧设备,例如,手机、平板、笔记本电脑、监控***(如,摄像头)、安防***等等。在图5中,执行设备510配置有I/O接口512,与外部设备进行数据交互,“用户”可以通过客户设备540向I/O接口512输入数据。如,客户设备540可以是监控***的摄像设备,通过该摄像设备拍摄的图像以及事件数据作为输入数据输入至执行设备510的计算模块511,由计算模块511对输入的该目标图像进行检测后得出检测结果,再将该检测结果输出至摄像设备或直接在执行设备510的显示界面(若有)进行显示;此外,在本申请的一些实施方式中,客户设备540也可以集成在执行设备510中,如,当执行设备510为手机时,则可以直接通过该手机获取到目标任务(如,可以通过该手机的摄像头拍摄到图像以及事件数据等)或者接收其他设备(如,另一个手机)发送的目标任务,再由该手机内的计算模块511对该目标任务进行检测后得出检测结果,并直接将该检测结果呈现在手机的显示界面。此处对执行设备510与客户设备540的产品形态不做限定。
值得注意的是,图5仅是本申请实施例提供的一种***架构的示意图,图中所示设备、器件、模块等之间的位置关系不构成任何限制,例如,在图5中,数据存储***550相对执行设备510是外部存储器,在其它情况下,也可以将数据存储***550置于执行设备510中。应理解,上述执行设备510可以部署于客户i设备540中。
从模型的推理侧来说:
本申请实施例中,上述执行i设备520的计算模块511可以获取到数据存储***550中存储的代码来实现本申请实施例中的和模型推理过程相关的步骤。
本申请实施例中,执行设备520的计算模块511可以包括硬件电路(如专用集成电路(application specific integrated circuit,ASIC)、现场可编程门阵列(field-programmable gate array,FPGA)、通用处理器、数字信号处理器(digital signalprocessing,DSP)、微处理器或微控制器等等)、或这些硬件电路的组合,例如,训练设备520可以为具有执行指令功能的硬件***,如CPU、DSP等,或者为不具有执行指令功能的硬件***,如ASIC、FPGA等,或者为上述不具有执行指令功能的硬件***以及具有执行指令功能的硬件***的组合。
具体的,执行设备520的计算模块511可以为具有执行指令功能的硬件***,本申请实施例提供的和模型推理过程相关的步骤可以为存储在存储器中的软件代码,执行设备520的计算模块511可以从存储器中获取到软件代码,并执行获取到的软件代码来实现本申请实施例提供的和模型推理过程相关的步骤。
应理解,执行设备520的计算模块511可以为不具有执行指令功能的硬件***以及具有执行指令功能的硬件***的组合,本申请实施例提供的和模型推理过程相关的步骤的部分步骤还可以通过执行设备520的计算模块511中不具有执行指令功能的硬件***来实现,这里并不限定。
从模型的训练侧来说:
本申请实施例中,上述训练设备520可以获取到存储器(图5中未示出,可以集成于训练设备520或者与训练设备520分离部署)中存储的代码来实现本申请实施例中和模型训练相关的步骤。
本申请实施例中,训练设备520可以包括硬件电路(如专用集成电路(applicationspecific integrated circuit,ASIC)、现场可编程门阵列(field-programmable gatearray,FPGA)、通用处理器、数字信号处理器(digital signal processing,DSP)、微处理器或微控制器等等)、或这些硬件电路的组合,例如,训练设备520可以为具有执行指令功能的硬件***,如CPU、DSP等,或者为不具有执行指令功能的硬件***,如ASIC、FPGA等,或者为上述不具有执行指令功能的硬件***以及具有执行指令功能的硬件***的组合。
应理解,训练设备520可以为不具有执行指令功能的硬件***以及具有执行指令功能的硬件***的组合,本申请实施例提供的中和模型训练相关的部分步骤还可以通过训练设备520中不具有执行指令功能的硬件***来实现,这里并不限定。
二、服务器提供的三维重建类云服务:
在一种可能的实现中,服务器可以通过应用程序编程接口(applicationprogramming interface,API)为端侧提供三维重建或者基于三维重建结果进行下游任务的服务。
其中,终端设备可以通过云端提供的API,将相关参数(例如图像以及事件数据)发送至服务器,服务器可以基于接收到的参数,得到处理结果,并将处理结果返回至至终端。
关于终端以及服务器的描述可以上述实施例的描述,这里不再赘述。
如图6示出了使用一项云平台提供的三维重建类云服务的流程。
1.开通并购买内容审核服务。
2.用户可以下载内容审核服务对应的软件开发工具包(software developmentkit,SDK),通常云平台提供多个开发版本的SDK,供用户根据开发环境的需求选择,例如JAVA版本的SDK、python版本的SDK、PHP版本的SDK、Android版本的SDK等。
3.用户根据需求下载对应版本的SDK到本地后,将SDK工程导入至本地开发环境,在本地开发环境中进行配置和调试,本地开发环境还可以进行其他功能的开发,使得形成一个集合了三维重建类能力的应用。
4.三维重建类应用在被使用的过程中,当需要进行三维重建或者基于三维重建结果进行下游任务时,可以触发三维重建或者基于三维重建结果进行下游任务的API调用。当应用触发三维重建或者基于三维重建结果进行下游任务功能时,发起API请求至云环境中的三维重建类服务的运行实例,其中,API请求中携带图像,由云环境中的运行实例对图像进行处理,获得处理结果。
5.云环境将处理结果返回至应用,由此完成一次的三维重建或者基于三维重建结果进行下游任务服务调用。
由于本申请实施例涉及大量神经网络的应用,为了便于理解,下面先对本申请实施例涉及的相关术语及神经网络等相关概念进行介绍。
(1)神经网络
神经网络可以是由神经单元组成的,神经单元可以是指以xs(即输入数据)和截距1为输入的运算单元,该运算单元的输出可以为:
其中,s=1、2、……n,n为大于1的自然数,Ws为xs的权重,b为神经单元的偏置。f为神经单元的激活函数(activation functions),用于将非线性特性引入神经网络中,来将神经单元中的输入信号转换为输出信号。该激活函数的输出信号可以作为下一层卷积层的输入,激活函数可以是sigmoid函数。神经网络是将多个上述单一的神经单元联结在一起形成的网络,即一个神经单元的输出可以是另一个神经单元的输入。每个神经单元的输入可以与前一层的局部接受域相连,来提取局部接受域的特征,局部接受域可以是由若干个神经单元组成的区域。
(2)卷积神经网络(convolutional neuron network,CNN)是一种带有卷积结构的深度神经网络。卷积神经网络包含了一个由卷积层和子采样层构成的特征抽取器,该特征抽取器可以看作是滤波器。卷积层是指卷积神经网络中对输入信号进行卷积处理的神经元层。在卷积神经网络的卷积层中,一个神经元可以只与部分邻层神经元连接。一个卷积层中,通常包含若干个特征平面,每个特征平面可以由一些矩形排列的神经单元组成。同一特征平面的神经单元共享权重,这里共享的权重就是卷积核。共享权重可以理解为提取特征的方式与位置无关。卷积核可以以随机大小的矩阵的形式化,在卷积神经网络的训练过程中卷积核可以通过学习得到合理的权重。另外,共享权重带来的直接好处是减少卷积神经网络各层之间的连接,同时又降低了过拟合的风险。
CNN是一种非常常见的神经网络,下面结合图7重点对CNN的结构进行详细的介绍。如前文的基础概念介绍所述,卷积神经网络是一种带有卷积结构的深度神经网络,是一种深度学习(deep learning)架构,深度学习架构是指通过机器学习的算法,在不同的抽象层级上进行多个层次的学习。作为一种深度学习架构,CNN是一种前馈(feed-forward)人工神经网络,该前馈人工神经网络中的各个神经元可以对输入其中的图像作出响应。
如图7所示,卷积神经网络(CNN)200可以包括输入层210,卷积层/池化层220(其中池化层为可选的),以及全连接层(fully connected layer)230。
卷积层/池化层220:
卷积层:
如图7所示卷积层/池化层220可以包括如示例221-226层,举例来说:在一种实现中,221层为卷积层,222层为池化层,223层为卷积层,224层为池化层,225为卷积层,226为池化层;在另一种实现方式中,221、222为卷积层,223为池化层,224、225为卷积层,226为池化层。即卷积层的输出可以作为随后的池化层的输入,也可以作为另一个卷积层的输入以继续进行卷积操作。
下面将以卷积层221为例,介绍一层卷积层的内部工作原理。
卷积层221可以包括很多个卷积算子,卷积算子也称为核,其在图像处理中的作用相当于一个从输入图像矩阵中提取特定信息的过滤器,卷积算子本质上可以是一个权重矩阵,这个权重矩阵通常被预先定义,在对图像进行卷积操作的过程中,权重矩阵通常在输入图像上沿着水平方向一个像素接着一个像素(或两个像素接着两个像素……这取决于步长stride的取值)的进行处理,从而完成从图像中提取特定特征的工作。该权重矩阵的大小应该与图像的大小相关,需要注意的是,权重矩阵的纵深维度(depth dimension)和输入图像的纵深维度是相同的,在进行卷积运算的过程中,权重矩阵会延伸到输入图像的整个深度。因此,和一个单一的权重矩阵进行卷积会产生一个单一纵深维度的卷积化输出,但是大多数情况下不使用单一权重矩阵,而是应用多个尺寸(行×列)相同的权重矩阵,即多个同型矩阵。每个权重矩阵的输出被堆叠起来形成卷积图像的纵深维度,这里的维度可以理解为由上面所述的“多个”来决定。不同的权重矩阵可以用来提取图像中不同的特征,例如一个权重矩阵用来提取图像边缘信息,另一个权重矩阵用来提取图像的特定颜色,又一个权重矩阵用来对图像中不需要的噪点进行模糊化等。该多个权重矩阵尺寸(行×列)相同,经过该多个尺寸相同的权重矩阵提取后的特征图的尺寸也相同,再将提取到的多个尺寸相同的特征图合并形成卷积运算的输出。
这些权重矩阵中的权重值在实际应用中需要经过大量的训练得到,通过训练得到的权重值形成的各个权重矩阵可以用来从输入图像中提取信息,从而使得卷积神经网络200进行正确的预测。
当卷积神经网络200有多个卷积层的时候,初始的卷积层(例如221)往往提取较多的一般特征,该一般特征也可以称之为低级别的特征;随着卷积神经网络200深度的加深,越往后的卷积层(例如226)提取到的特征越来越复杂,比如高级别的语义之类的特征,语义越高的特征越适用于待解决的问题。
池化层:
由于常常需要减少训练参数的数量,因此卷积层之后常常需要周期性的引入池化层,在如图7中220所示例的221-226各层,可以是一层卷积层后面跟一层池化层,也可以是多层卷积层后面接一层或多层池化层。在图像处理过程中,池化层的唯一目的就是减少图像的空间大小。池化层可以包括平均池化算子和/或最大池化算子,以用于对输入图像进行采样得到较小尺寸的图像。平均池化算子可以在特定范围内对图像中的像素值进行计算产生平均值作为平均池化的结果。最大池化算子可以在特定范围内取该范围内值最大的像素作为最大池化的结果。另外,就像卷积层中用权重矩阵的大小应该与图像尺寸相关一样,池化层中的运算符也应该与图像的大小相关。通过池化层处理后输出的图像尺寸可以小于输入池化层的图像的尺寸,池化层输出的图像中每个像素点表示输入池化层的图像的对应子区域的平均值或最大值。
全连接层230:
在经过卷积层/池化层220的处理后,卷积神经网络200还不足以输出所需要的输出信息。因为如前所述,卷积层/池化层220只会提取特征,并减少输入图像带来的参数。然而为了生成最终的输出信息(所需要的类信息或其他相关信息),卷积神经网络200需要利用全连接层230来生成一个或者一组所需要的类的数量的输出。因此,在全连接层230中可以包括多层隐含层(如图7所示的231、232至23n),该多层隐含层中所包含的参数可以根据具体的任务类型的相关训练数据进行预先训练得到,例如该任务类型可以包括图像识别,图像分类,图像超分辨率重建等等……
在全连接层230中的多层隐含层之后,也就是整个卷积神经网络200的最后层为输出层240,该输出层240具有类似分类交叉熵的损失函数,具体用于计算预测误差,一旦整个卷积神经网络200的前向传播(如图7由210至240方向的传播为前向传播)完成,反向传播(如图7由240至210方向的传播为反向传播)就会开始更新前面提到的各层的权重值以及偏差,以减少卷积神经网络200的损失,及卷积神经网络200通过输出层输出的结果和理想结果之间的误差。
需要说明的是,如图7所示的卷积神经网络200仅作为一种卷积神经网络的示例,在具体的应用中,卷积神经网络还可以以其他网络模型的形式存在,例如,仅包括图7中所示的网络结构的一部分,比如,本申请实施例中所采用的卷积神经网络可以仅包括输入层210、卷积层/池化层220和输出层240。
需要说明的是,如图7所示的卷积神经网络100仅作为一种卷积神经网络的示例,在具体的应用中,卷积神经网络还可以以其他网络模型的形式存在,例如,如图8所示的多个卷积层/池化层并行,将分别提取的特征均输入给全连接层230进行处理。
(3)深度神经网络
深度神经网络(Deep Neural Network,DNN),也称多层神经网络,可以理解为具有很多层隐含层的神经网络,这里的“很多”并没有特别的度量标准。从DNN按不同层的位置划分,DNN内部的神经网络可以分为三类:输入层,隐含层,输出层。一般来说第一层是输入层,最后一层是输出层,中间的层数都是隐含层。层与层之间是全连接的,也就是说,第i层的任意一个神经元一定与第i+1层的任意一个神经元相连。虽然DNN看起来很复杂,但是就每一层的工作来说,其实并不复杂,简单来说就是如下线性关系表达式:其中,是输入向量,是输出向量,是偏移向量,W是权重矩阵(也称系数),α()是激活函数。每一层仅仅是对输入向量经过如此简单的操作得到输出向量由于DNN层数多,则系数W和偏移向量的数量也就很多了。这些参数在DNN中的定义如下所述:以系数W为例:假设在一个三层的DNN中,第二层的第4个神经元到第三层的第2个神经元的线性系数定义为上标3代表系数W所在的层数,而下标对应的是输出的第三层索引2和输入的第二层索引4。总结就是:第L-1层的第k个神经元到第L层的第j个神经元的系数定义为需要注意的是,输入层是没有W参数的。在深度神经网络中,更多的隐含层让网络更能够刻画现实世界中的复杂情形。理论上而言,参数越多的模型复杂度越高,“容量”也就越大,也就意味着它能完成更复杂的学习任务。训练深度神经网络的也就是学习权重矩阵的过程,其最终目的是得到训练好的深度神经网络的所有层的权重矩阵(由很多层的向量W形成的权重矩阵)。
(4)transformer层
参照图9,图9为一种transformer层的架构示意,如图9所示,神经网络包括嵌入层和至少一个transformer层,至少一个transformer层可以为N个transformer层(N大于0的整数),其中,每个transformer层包括依次相邻的注意力层、加和与归一化(add&norm)层、前馈(feed forward)层和加和与归一化层。在嵌入层,对当前输入进行嵌入处理,得到多个特征向量;在所述注意力层,从所述transformer层的上一层获取P个输入向量,以P个输入向量中的任意的第一一输入向量为中心,基于预设的注意力窗口范围内的各个输入向量与该第一输入向量之间的关联度,得到该第一输入向量对应的中间向量,如此确定出P个输入向量对应的P个中间向量;在所述池化层,将所述P个中间向量个并为Q个输出向量,其中至少一个transformer层中最后一个transformer层得到的多个输出向量用作所述当前输入的特征表示。
接下来,结合具体例子对上述各步骤进行具体介绍。
首先,在所述嵌入层,对当前输入进行嵌入处理,得到多个特征向量。
嵌入层可以称为输入嵌入(input embedding)层。当前输入可以为文本输入,例如可以为一段文本,也可以为一个句子。文本可以为中文文本,也可以为英文文本,还可以为其他语言文本。嵌入层在获取当前输入后,可以对该当前输入中各个词进行嵌入处理,可得到各个词的特征向量。在一些实施例中,如图9所示,所述嵌入层包括输入嵌入层和位置编码(positional encoding)层。在输入嵌入层,可以对当前输入中的各个词进行词嵌入处理,从而得到各个词的词嵌入向量。在位置编码层,可以获取各个词在该当前输入中的位置,进而对各个词的位置生成位置向量。在一些示例中,各个词的位置可以为各个词在该当前输入中的绝对位置。以当前输入为“几号应还花呗”为例,其中的“几”的位置可以表示为第一位,“号”的位置可以表示为第二位,……。在一些示例中,各个词的位置可以为各个词之间的相对位置。仍以当前输入为“几号应还款”为例,其中的“几”的位置可以表示为“号”之前,“号”的位置可以表示为“几”之后、“应”之前,……。当得到当前输入中各个词的词嵌入向量和位置向量时,可以将各个词的位置向量和对应的词嵌入向量进行组合,得到各个词特征向量,即得到该当前输入对应的多个特征向量。多个特征向量可以表示为具有预设维度的嵌入矩阵。可以设定该多个特征向量中的特征向量个数为M,预设维度为H维,则该多个特征向量可以表示为M×H的嵌入矩阵。
其次,从所述第一transformer层的上一层获取P个输入向量,以P个输入向量中的任意的第一输入向量为中心,基于预设的注意力窗口范围内的各个输入向量与该第一输入向量之间的关联度,得到该第一输入向量对应的中间向量,如此确定出P个输入向量对应的P个中间向量。注意力层也可以称为多头注意力(multi-head attention)层。在一个例子中,注意力层可以为固定窗口多头注意力(fixed window multi-head attention)层。
在一些实施例中,第一transformer层可以为上述嵌入层的下一层,P个输入向量为从嵌入层得到的所述多个特征向量。在一些实施例中,本说明书实施例提供的神经网络中的至少一个transformer层还包括第二transformer层。该第二transformer层为第一自注意力的上一层,则P个输入向量为第二transformer层输出的P个输出向量。在该神经网络中的最后一个transformer层,通过上述步骤的多个输出向量可用作当前输入的特征表示。该特征表示为为当前输入的一种适合计算机处理的特征表示。
(5)注意力机制(attention mechanism)
注意力机制模仿了生物观察行为的内部过程,即一种将内部经验和外部感觉对齐从而增加部分区域的观察精细度的机制,能够利用有限的注意力资源从大量信息中快速筛选出高价值信息。注意力机制可以快速提取稀疏数据的重要特征,因而被广泛用于自然语言处理任务,特别是机器翻译。而自注意力机制(se1f-attention mechanism)是注意力机制的改进,其减少了对外部信息的依赖,更擅长捕捉数据或特征的内部相关性。注意力机制的本质思想可以改写为如下公式:
其中,Lx=||Source||代表Source的长度,公式含义即将Source中的构成元素想象成是由一系列的数据对构成,此时给定目标Target中的某个元素Query,通过计算Query和各个Key的相似性或者相关性,得到每个Key对应Value的权重系数,然后对Value进行加权求和,即得到了最终的Attention数值。所以本质上Attention机制是对Source中元素的Value值进行加权求和,而Query和Key用来计算对应Value的权重系数。从概念上理解,把Attention可以理解为从大量信息中有选择地筛选出少量重要信息并聚焦到这些重要信息上,忽略大多不重要的信息。聚焦的过程体现在权重系数的计算上,权重越大越聚焦于其对应的Value值上,即权重代表了信息的重要性,而Value是其对应的信息。自注意力机制可以理解为内部Attention(intra attention),Attention机制发生在Target的元素Query和Source中的所有元素之间,自注意力机制指的是在Source内部元素之间或者Target内部元素之间发生的Attention机制,也可以理解为Target=Source这种特殊情况下的注意力计算机制,其具体计算过程是一样的,只是计算对象发生了变化而已。
(6)事件相机(event cameras)
是一种生物启发的视觉传感器,以完全不同于标准相机的方式工作。事件相机不是以恒定速率输出强度图像帧,而是仅输出局部像素级亮度变化的相关信息。
(7)Warp操作
一般配合流(如光流,以及本申请中的场景流)的操作,表征的是一个图像相对于流(如光流、场景流)进行的仿射变换,如旋转、移动、缩放等。
(8)损失函数
在训练深度神经网络的过程中,因为希望深度神经网络的输出尽可能的接近真正想要预测的值,所以可以通过比较当前网络的预测值和真正想要的目标值,再根据两者之间的差异情况来更新每一层神经网络的权重向量(当然,在第一次更新之前通常会有初始化的过程,即为深度神经网络中的各层预先配置参数),比如,如果网络的预测值高了,就调整权重向量让它预测低一些,不断的调整,直到深度神经网络能够预测出真正想要的目标值或与真正想要的目标值非常接近的值。因此,就需要预先定义“如何比较预测值和目标值之间的差异”,这便是损失函数(loss function)或目标函数(objective function),它们是用于衡量预测值和目标值的差异的重要方程。其中,以损失函数举例,损失函数的输出值(loss)越高表示差异越大,那么深度神经网络的训练就变成了尽可能缩小这个loss的过程。
(9)反向传播算法
可以采用误差反向传播(back propagation,BP)算法在训练过程中修正初始模型中参数的大小,使得模型的误差损失越来越小。具体地,前向传递输入信号直至输出会产生误差损失,通过反向传播误差损失信息来更新初始模型中的参数,从而使误差损失收敛。反向传播算法是以误差损失为主导的反向传播运动,旨在得到最优的模型参数,例如权重矩阵。
结构光成像作为三维重建的重要组成部分,其通过主动投影编码图案实现对物体三维结构的重建,具备简单,非接触,鲁棒性高和低损耗等特点。相比于双目三维重建等被动式方法,结构光成像在黑暗和纹理缺失等极端场景下的成像效果更好,准确度更高。传统结构光成像通过传统主动像素传感器(active pixel sensor,APS)相机和主动光源(激光发射器、数字投影仪)的立体***完成高分辨率,高质量的三维重建。
但随着结构光成像对成像质量和速度的要求日益提高,由于传统相机的分辨率与帧率之间的相互制约,无法实现快速高质量的三维成像。其次,通过主动投影的方式易受环境光干扰,物体表面颜色和反射也影响了投影图案的解码,降低了主动式结构光成像准确率。
事件相机(dynamic vision sensor,DVS)作为近些年广泛关注的视觉传感器,其成像方式借鉴仿生学特点,通过光强变化驱动成像。具有低延时、高动态、低冗余、像素独立激发等优势,是结构光成像的理想传感器。首先,其低延时特点使得数据采集带宽极高,有效弥补了传统相机帧率不足问题;其次,其高动态范围(120dB)能够使得传感器在过曝情况下依然可以正常采集有效信息。但由于相机像素的独立激发特点,易受自然光照变化产生大量噪声,严重降低了三维重建的精度,同时因为低延时和高分辨率的矛盾点,现有事件相机的空间维度的分辨率较低,无法实现高分辨率的三维重建。
为了解决上述问题,本申请提供了一种三维重建方法,该三维重建方法可以为模型训练的前馈过程,也可以为推理过程。
参照图10,图10为本申请实施例提供的一种三维重建方法,如图10所示,本申请提供的三维重建方法,包括:
1001、获取第一特征表示和第二特征表示,所述第一特征表示为RGB相机采集的像素图像对应的特征表示,所述第二特征表示为通过事件相机采集的事件数据对应的特征表示;所述像素图像和所述事件数据为针对于同一场景采集得到的。
本申请实施例中,步骤1001的执行主体可以为终端设备,终端设备可以为便携式移动设备,例如但不限于移动或便携式计算设备(如智能手机)、个人计算机、服务器计算机、手持式设备(例如平板)或膝上型设备、多处理器***、游戏控制台或控制器、基于微处理器的***、机顶盒、可编程消费电子产品、移动电话、具有可穿戴或配件形状因子(例如,手表、眼镜、头戴式耳机或耳塞)的移动计算和/或通信设备、网络PC、小型计算机、大型计算机、包括上面的***或设备中的任何一种的分布式计算环境等等。
本申请实施例中,步骤1001的执行主体可以为云侧的服务器,服务器可以接收来自终端设备发送的像素图像以及事件相机采集的事件数据,进而服务器可以获取到像素图像和事件相机采集的事件数据。
在一种可能的实现中,所述像素图像和所述事件数据为在相同时间段针对于同一场景采集得到的。例如,像素图像可以为终端设备上的RGB相机采集的图像,事件数据为终端设备上的事件相机对同一场景采集的图像。
其中,像素图像可以是多帧图像(目标曝光时间段内得到的图像)的平均值,也就是说,像素图像可以是对已有的连续多帧图像进行平均化,从而得到一帧合成的像素图像。事件相机采集的数据可以包括多个时间点的事件数据,本申请实施例中的事件数据可以为像素图像对应的目标曝光时间段内一个事件点的事件数据。
其中,事件点也可以称之为事件,事件相机的最基本的原理就是当某个像素的亮度变化累计达到触发条件(变化达到一定程度)后,输出一个事件点。所以一个事件点可以理解为是一次事件的表达:在什么时间(时间戳),哪个像素点(像素坐标),发生了亮度的增加或减小(亮度变化)。
接下来介绍如何得到事件数据以及对事件数据进行的预处理:
在一种可能的实现中,针对于三维重建的对象所在的区域,可以通过主动光源(例如激光发射器、数字投影仪等)在区域生成动态投影图案,例如,投影图案的大小可以为H×W。
在一种可能的实现中,可以基于传统的编码多投影图案,动态投影通过时间编码简化投影内容,编码方式可以如式(1),投影结果如图11中的(a)图案所示:
F(x,y,t)=A*s(ωcx+ωtt),x∈[1,W],y∈[1,H] (1)
其中,A为投影图案的灰度值(可选的,A=255)。s(·)为方波投影,ωc和ωt分别为空间角频率和时间角频率。投影图案的大小为(W×H)。由图可知,黑白条纹的动态移动图案能够有效产生光强变化,帮助事件相机的采集投影变化,从而实现有效的相位解码。
在一种可能的实现中,RGB相机可以针对于目标场景采集得到多个图像帧,事件相机可以针对于目标场景采集得到多个事件点的事件数据,本申请实施例中通过将像素图像和事件数据的特征表示进行融合,由于事件相机采集的事件数据的时间分辨率较高,且RGB相机采集的图像帧具备低噪声以及空间分辨率较高的特征,基于融合后的特征表示进行三维重建得到的重建结果可以具备时间分辨率较高、低噪声以及空间分辨率较高的特征。
为了保证融合对象的准确性,需要保证像素图像和事件数据是在时间和空间上都匹配的数据,也就是说,作为特征融合对应的像素图像和事件数据可以分别是RGB相机和事件相机对同一场景采集得到的,且所述事件数据为根据所述事件相机在目标时间段内采集的多帧事件数据得到,所述像素图像为所述RGB相机在所述目标时间段内采集的图像得到的。
也就是说,像素图像的曝光时间在目标时间段内,具体可以是目标时间段内的一个子时间段。在目标时间段内,事件相机可以采集得到多帧事件数据,示例性的,可以对多帧事件数据进行相位解算,得到事件数据。
在一种可能的实现中,可以对通过事件相机采集的事件数据进行相位解算,得到事件相位;所述第二特征表示为所述事件相位对应的特征表示。
在一种可能的实现中,可以对事件相位进行中值滤波。具体的,所述事件相位包括目标位置点对应的多个相位值,所述多个相位值中不同所述相位值对应不同的时间戳;可以对所述事件相位进行中值滤波处理,得到处理后的事件相位;所述第二特征表示为所述处理后的事件相位对应的特征表示;其中,所述处理后的事件相位包括所述目标位置点对应的目标相位值,所述目标相位值为对所述目标位置点对应的多个相位值进行中值滤波得到的。由于事件相机成像原理特点,有效数据伴随着大量的随机噪声,一般而言,随机波动事件点能够通过简单的滤波处理,对周期内同一像素的所有事件点时间戳进行中值滤波,能够有效去除随机噪声。
接下来介绍一个相位解算以及中值滤波的示意,可选的,为实现从事件流的时间戳中获得物体的相位解码,可以时间表面的形成方式,选定一个起始参考时间,依据式(1)可知理想情况下,在一个有效的扫描周期T内,所有像素均经历了唯一正极性事件和唯一负极性事件,相位解算方法如式2:
PE(u,v)=ωt(t(u,v)-tref)%(2π),PE(u,v)∈[0,2π) (2)
其中,(u,v)为像素坐标,tref为选择的起始参考时间,t(u,v)为周期内事件点出现的时间戳(正极性和负极性),由于事件相机成像原理特点,有效数据伴随着大量的随机噪声,一般而言,随机波动事件点能够通过简单的滤波处理,对周期内同一像素的所有事件点时间戳进行中值滤波。即滤波相位如下:
PE(u,v)=ωt(Med{t1(u,v),t2(u,v)...,tn(u,v)}-tref)%(2π) (3)
其中,ti(u,v),i∈{1,2,...,n}为周期内像素(u,v)上的第i个事件点的时间戳,中值滤波后能够有效去除随机噪声。
至此,事件的相位预处理模块将3D事件流信息压缩为二维图像,并通过简单快速的方法获得了投影图案的包裹相位解码,相比于传统相机图像的解码,本申请实施例速度更快,效率更高。
由于事件相机与传统相机视场角与分辨率不同,获取场景的内容有所差。利用标定好的算单应性矩阵H_(E-C),将传统相机得到的图像映射到事件相机的对应位置,实现像素级对齐。
在一种可能的实现中,还可以对像素图像和事件数据进行帧空间对齐,事件相机无法获得帧信息,如何从一定时间内的事件点集合中获得有效帧图像是对齐的关键。可选的,可以经典算法E2VID恢复出棋盘格标定板。在图像匹配任务中,同一平面下的对应区域对齐可通过特征点匹配计算单应性矩阵HE-C实现,两个不同平面下的像素对应关系如下:
q2∝HE-Cq1 (4);
经归一化展开可得,其中(u1,v1)为q1点坐标,(u2,v2)为q2点坐标:
可知,HE-C中存在8个未知数,每一对匹配点可提供2个方程,理想情况下四对匹配点即可完成矩阵求解,但由于误匹配点和坐标点误差,多对匹配点形成的超定方程能够有效减少误差,可选的,可以利用RANSAC(Random Sample Consensus)得到最小二乘解,获得最佳匹配单应性矩阵HE-C,依据求解的映射矩阵获得事件相机和APS相机的对应区域,实现像素级映射。
在一种可能的实现中,可以根据像素图像,通过特征提取,得到像素图像对应的第一特征表示,以及根据事件数据,通过特征提取,得到事件数据对应的第二特征表示。
在一种可能的实现中,通过特征提取得到的第一特征表示和第二特征表示可以为尺寸相同的特征表示。其中,这里的特征表示的“尺寸”可以理解为特征表示的宽和高。
接下来介绍如何根据像素图像,通过特征提取,得到像素图像对应的第一特征表示,以及根据事件数据,通过特征提取,得到事件数据对应的第二特征表示:
在一种可能的实现中,可以通过特征提取网络(例如基于注意力机制的特征提取网络)对像素图像进行特征提取,得到像素图像对应的第一特征表示,可以通过特征提取网络(例如基于注意力机制的特征提取网络)对事件数据进行特征提取,得到事件数据对应的第二特征表示。
在一种可能的实现中,可以通过SFE等特征提取模块分别对像素图像和事件数据进行处理,得到像素图像对应的浅层特征表示以及事件数据对应的浅层特征表示,之后可以通过注意力网络处理像素图像对应的浅层特征表示以及事件数据对应的浅层特征表示,得到像素图像对应的深层特征表示以及事件数据对应的深层特征表示(也就是本申请实施例中的第一特征表示和第二特征表示)。
在一种可能的实现中,可以通过多个串联的注意力模块,对所述像素图像对应的特征表示以及所述事件数据对应的特征表示进行处理,得到所述第一特征表示和所述第二特征表示;其中,每个所述注意力模块的输出用于作为相邻的下一个注意力模块的输入,并进行基于注意力机制的处理。也就是说,每个注意力模块可以基于相邻上一个连接的注意力模块输出的所述像素图像对应的特征表示以及所述事件数据对应的特征表示进行基于注意力机制的处理(第一个注意力模块可以获取到像素图像对应的浅层特征表示以及事件数据对应的浅层特征表示,最后一个注意力模块可以得到第一特征表示和第二特征表示)。
在一种可能的实现中,由于相机采集的像素图像相比事件相机采集的事件数据具有较低的噪声,为实现两种模态的融合,可以通过神经网络,将从像素图像的特征表示中提取出目标信息,该目标信息可以表示特征表示的各个位置点包含的噪声的权重,并将目标信息和第四特征表示进行融合,从而实现对事件噪声的有效抑制。
在一种可能的实现中,神经网络可以为注意力网络,目标信息可以为全局相关性权重,将像素图像和事件数据的注意力权重相加,低噪的AttenF的全局相关性权重能够有效实现AttenE中噪声的权重比例,从而实现对事件噪声的有效抑制。
在一种可能的实现中,所述神经网络为第一注意力网络,可以根据第三特征表示,通过第一注意力网络,得到目标信息,所述目标信息包括第一注意力信息;所述第一注意力信息为所述像素图像在空间维度的关联度信息,其中,第三特征表示可以为上述实施例中介绍的像素图像对应的浅层特征表示,或者是通过某个注意力模块得到的像素图像对应的特征表示,第一注意力网络可以属于该注意力模块的相邻下一个注意力模块。所述像素图像在空间维度的关联度信息可以表示出噪声的权重比例。
由于事件流数据的特殊性以及事件相机和传统相机之间的分辨率不同问题,在网络中添加了自注意力机制实现模态融合,并通过一个高分辨率重建模块获得了快速高质量的结果。
在一种可能的实现中,可以通过第二注意力网络,处理第四特征表示,得到第二注意力信息;所述第二注意力信息为所述事件数据在空间维度的关联度信息,其中,第三特征表示可以为上述实施例中介绍的事件数据对应的浅层特征表示,或者是通过某个注意力模块得到的事件数据对应的特征表示,第二注意力网络可以属于该注意力模块的相邻下一个注意力模块;所述第二注意力信息用于与所述第一注意力信息进行注意力融合,以得到第三注意力信息;其中,所述第三注意力信息用于得到所述第二特征表示。
在一种可能的实现中,所述注意力融合为对应位置的加和操作。
在一种可能的实现中,所述第一注意力信息、所述第二注意力信息以及所述第三注意力信息可以为用于表示Q向量和K向量之间的关联度;所述第三注意力信息可以用于和通过第二注意力网络处理所述第四特征表示得到的K向量进行融合,得到所述第一特征表示。
接下来以基于transformer层的神经网络模型为例介绍如何得到Q向量和K向量之间的关联度:
在一种可能的实现中,参照图12,图12为本申请实施例中的一种神经网络模型的结构示意,如图12中示出的那样,基于transformer层的神经网络模型可以包括依次连接的嵌入层以及多个transformer层。如本领域技术人员所了解,transformer模型多用于执行自然语言处理NLP任务。需要理解,图12的结构仅仅是一个示例,transformer层的数目可以根据需要而设置。神经网络模型基于各transformer层得到的N个输出向量,确定当前节点对应的特征向量。
在嵌入层,对当前输入进行嵌入处理,得到多个特征向量。transformer模型的核心特点在于其采用的独特的注意力机制。参照图13,图13为一种transformer层的结构示意,本申请实施例中的各个神经网络的transformer层都可以参照图13中示出的结构,如图13中示出的那样,transformer层包括依次相邻的多头注意力层、加和与归一化(add&norm)层、前馈(feed forward)层、加和与归一化层。
其中,多头注意力层从其上一层获取N个输入向量X1,又可以表示为矩阵X,采用自注意力机制,基于向量间的关联度对各个向量进行变换,得到N个输出向量,又可以表示为矩阵Y。可以理解,当该多头注意力层是与嵌入层直接相连的层,例如图13中与嵌入层直连的transformer层,其获取的输入向量即为嵌入层输出的嵌入向量;当该多头注意力层是后续的transformer层包括的多头注意力层,例如图13中与上一级transformer层直连的transformer层包括的多头注意力层,其获取的输入向量即为前一级transformer层的输出向量。在多头注意力层,基于多头注意力(multi-head attention,MHA)的MHA层包括多个注意力头head(如图14中示出的Head 1、Head 2、...、Head N)。
图14为一个注意力头head的操作示意图,该示意图示出注意力头head如何将输入矩阵X变换为输出矩阵Y。如图14所示,分别采用第一变换矩阵Q,第二变换矩阵K和第三变换矩阵V对N个输入向量<X1,X2,…,XN>中各个输入向量Xi进行变换,得到各个输入向量对应的第一中间向量(q向量),第二中间向量(k向量)和第三中间向量(v向量)。操作上,可以分别用第一变换矩阵Q,第二变换矩阵K和第三变换矩阵V,对N个输入向量构成的输入矩阵X进行线性变换,分别得到输入矩阵的Q矩阵,K矩阵和V矩阵,再分别对矩阵进行拆分,即可得到各个输入向量对应的q向量,k向量和v向量。对于N个输入向量中任意的第i输入向量Xi,基于该第i输入向量对应的第一中间向量(q向量,qi)与各个输入向量Xj对应的各个第二中间向量(k向量,kj)的点乘操作,确定该第i输入向量Xi与各个输入向量Xj的各个关联度。尽管也可以直接将qi与kj的点乘结果确定为关联度,但是更经典地,先将点乘结果除以一常数,然后进行softmax运算,将运算结果作为输入向量Xi与Xj的关联度(也就是Q向量和K向量之间的关联度),即:
于是,可以以该第i输入向量Xi与各个输入向量Xj的各个关联度αi,j作为权重因子,对各个输入向量Xj对应的第三中间向量(v向量,vj)进行加权组合,得到该第i输入向量Xi对应的第i组合向量Ci:
于是,可以得到N个输入向量对应的N个组合向量的向量序列<C1,C2,…,CN>,或矩阵C。基于该组合向量序列,可以得到N个输出向量。具体地,在一个实施例中,可以直接将N个组合向量的向量序列作为N个输出向量,即Yi=Ci。此时,输出矩阵Y即为组合向量矩阵C,又可以写成:
以上为一个注意力头head的处理过程描述,在MHA架构中,MHA层维护m套变换矩阵,每套变换矩阵包括前述第一变换矩阵Q、第二变换矩阵K和第三变换矩阵V,从而可以并行地进行上述操作,得到m个组合向量序列(即m个矩阵C),每个向量序列包括基于一套变换矩阵得到的N个组合向量。在这样的情况下,MHA层将得到的m个组合向量序列进行拼接,得到拼接矩阵;再通过第四变换矩阵W对该拼接矩阵进行变换,得到最终的输出矩阵Y。将该输出矩阵Y拆分即对应于N个输出向量<Y1,Y2,…,YN>。通过以上的操作过程,MHA层基于N个输入向量之间的关联度进行变换操作,得到N个输出向量。
相比于多层卷积实现感受野扩展,可以通过二维矩阵相乘完成特征图的全局相关性计算,获得全局感受野。但上述方式仅能计算全局相关权重,丢失了特定像素位置的局部相关性,无法有效保证局部和全局自注意力机制的统一。为获得局部感受野,可以增加对应前馈神经网络(feed forward network,FFN)。其基本组成可以包括输入层、隐藏层、激活层和输出层。隐藏层中的浅层网络能够实现局部相关性计算。
参照图15,图15为本申请实施例的一个框架图。
在一种可能的实现中,还可以通过前馈神经网络FFN处理所述第一特征表示,得到处理后的第一特征表示;所述将所述第一特征表示和所述第二特征表示进行特征融合,包括:将所述处理后的第一特征表示和所述第二特征表示进行特征融合;或者,通过前馈神经网络FFN处理所述第二特征表示,得到处理后的第二特征表示;所述将所述第一特征表示和所述第二特征表示进行特征融合,包括:将所述第一特征表示和所述处理后的第二特征表示进行特征融合。
应理解,还可以融合多个注意力模块中部分或全部模块的输出,来得到第一特征表示和第二特征表示,保证了事件和图像特征图保留了各自特征的比例。
在一种可能的实现中,所述每个所述注意力模块的输出包括所述像素图像对应的特征表示以及所述事件数据对应的特征表示;所述第一特征表示为根据多个所述注意力模块中的部分或全部的注意力模块得到的所述像素图像对应的特征表示进行融合得到的;或者,所述第二特征表示为根据多个所述注意力模块中的部分或全部的注意力模块得到的所述事件数据对应的特征表示进行融合得到的。
1002、将所述第一特征表示和所述第二特征表示进行特征融合,得到第三特征表示。
在一种可能的实现中,所述第一特征表示和所述第二特征表示在空间维度上的尺寸相同,所述特征融合为在通道维度上的拼接操作。
1003、根据所述融合结果,通过三维重建网络对所述场景进行三维重建,得到三维重建结果。
例如,针对输入分辨率不同问题,依据图像的高分辨率,通过UP-Net网络模块获得了高分辨率的深度估计结果。
在一种可能的实现中,所述三维重建结果的分辨率和所述像素图像的分辨率一致。
在一种可能的实现中,所述三维重建结果包括多个位置点以及每个位置点对应的深度信息。由于结构光成像为三维图像,为方便网络训练,将三维图像映射为像素深度信息,从而转换为对深度估计的预测。
接下来结合附图介绍本申请实施例的一个具体的实例:
如图15所示,投影译码包括包裹相位解码和相位展开两个部分,通过事件相机获得的事件流解码过程中仅能实现包裹相位解码,难以准确获得展开的绝对相位;同时,由于事件流数据对应的相位值与传统图像强度值不同,有效融合不同模态数据对网络有着较大考验;其次,预处理使用的中值滤波仅能去除离群的事件噪声,对于时间波动和一些较小事件噪点抑制效果较差。本实施例中特征融合模块FF-Net有效解决了上述问题,其中噪声抑制模块(Noise Suppression Block,NSB)为融合模块的核心部分。其基本框架如图16A所示。
包括了RDB特征提取部分,双通道自注意力机制部分(D-MHSA),线性归一化以及前向反馈部分FFN(Feed Forward Network)。在通过SFE模块提取图像的浅层特征后,通过多级噪声抑制模块能够通过单帧高分辨率图像实现对事件相位噪声的抑制和模态融合。双通道中的自注意力机制能够获得包裹相位在空间上的相关性,从而完成相位的空间展开。
其中,MHSA的基本实现流程如下:
其中,通过简单卷积获得的向量Q,K,V分别代表Query向量,Key向量和Value向量。其中Q为查询向量,K表示被查询信息与其他信息的相关性的向量,V表示被查询信息的向量。二维特征图的自注意力机制能够有效提取空间像素间的相关性程度。特别在立体成像任务中,像素间的相关性能够有效提取基线,完成像素级的视差分析和深度估计。
相比于多层卷积实现感受野扩展,MHSA通过二维矩阵相乘完成特征图的全局相关性计算,获得全局感受野。但MHSA仅能计算全局相关权重,丢失了特定像素位置的局部相关性,无法有效保证局部和全局自注意力机制的统一。为获得局部感受野,在MHSA基础上增加对应前馈神经网络FFN(Feed Forward Network),如图16B为简单前馈神经网络。其基本组成包括输入层、隐藏层、激活层和输出层。隐藏层中的浅层网络能够实现局部相关性计算。
本实施例在融合网络模块FF-Net中引入自注意力机制,在传统自注意力机制基础上,实现了双通道自注意力的提取及融合。在经过浅层特征提取模块SFE后,图像和事件预处理相位获得浅层特征,可表示为 其中通道数C=64,浅层特征图H×W=(128,128)。
由于自注意力机制实现了局部和全局感受野的理想结合,FFN中级联了多层(例如6层)噪声抑制模块NSB。每个NSB模块的具体实现如图16A左半部分所示,使用RDB模块分别提取了图像和事件特征后通过一个D-MHSA(Double Multi-Head Self-Attention)模块实现两种不同模态数据的融合,融合具体方式如图15中间部分所示。D-MHSA对特征图E,F单独提取Q,K,V特征向量,并使用自注意力获得AttenE,AttenF,为减少矩阵相乘导致的数据过量,保证向量Q的正常展开同时,本实施例在K,V计算前对输入特征图进行下采,有效减少了数据量计算。
其次,由图16A的D-MHSA部分可知,为实现不同模态的融合,将图像和事件的注意力权重相加,低噪的AttenF的全局相关性权重能够有效实现AttenE中噪声的权重比例,从而实现对事件噪声的有效抑制。同时完成了不同模态间的数据融合。并获得输出特征图
在完成全局特征图的融合之后,在输入FFN之前将E,E′和F,F′叠加,保证了事件和图像特征图保留了各自特征的比例,并对特征进行归一化。由于RDB(Residual DenseBlocks)模块能够实现像素局部感受野任务,本实施例在保证自注意力机制的同时简化了FFN网络结构,其具体结构如图16B所示,输入通道C=64在隐藏层中被扩展至C=64x 4,隐藏层包括两层卷积Conv3×3,padding=1,保证了特征图尺寸不变,并在激活层使用GELU激活函数,在输出前将通道数降为原始通道数,实现了对局部感受野的获取。
为进一步融合图像与事件相位帧,FF-Net在完成多级噪声抑制模块(NSB)的特征提取后,将多级特征图通道叠加,并使用一个全局特征融合模块(GFF)实现了不同层特征的融合,GFF模块包括两个卷积层,分别为降通道数卷积层Conv1×1和融合卷积层Conv3×3,多级特征融合对信息完整性和特征提取效果起到了重要作用。
本实施例采集图像的分辨率为HF×WF=640×640,事件相位帧的分辨率为HE×WE=256×256。针对输入分辨率不同问题,依据图像的高分辨率,通过UP-Net网络模块获得了高分辨率的深度估计结果。UP-Net网络其具体实现流程如下:首先,利用高分重建网络,对通道叠加后的特征图进行特征展开(Feature Unfolding),并根据输出的分辨率大小将像素坐标归一化到(-1,1)之间,与展开特征后的特征图进行通道维的级联;最终经过多个(例如4个)全连接层,得到最终的深度估计结果。
接下来结合试验介绍本申请的有益效果:
在给定的训练、测试集上,本申请实施例与基准算法进行比较,具体性能见表1。
根据成像目标模型类型,数据集被进行划分为训练集包括简单纹理模型、浅纹理模型和复杂纹理模型,所有训练集均为自色模型。测试集包括所有彩色模型和部分白色模型,以及64ms、32ms和16ms扫描周期下的所有数据集。
表1客观指标对比结果
选择了同样基于动态面结构光扫描投影的传统算法NFPP作为对比,与本申请实施例不同,其通过正弦面结构光投影获得事件流,并根据互相关操作获得事件相位,互相关获取相位相比本文计算更为复杂冗余,但适用性更高。传统图像同样可以依据该方法获得相位,将通过事件获得物体深度称为NFPP(-E),通过传统图像获得物体深度的方法成为NFPP(-F)。为实现有效对比,数据采集均在128ms内完成,传统相机的帧率设置为30FPS。
定量结果显示本文方法在绝对误差和相对误差上均有最佳效果。可知NFPP(-F)的误差最大,传统相机的低帧率导致在128ms内获取的图像较少,生成的事件相位和传统图像相位如图17所示。通过互相关获得的相位在空间上的分辨率较低,相位获取压缩了有效信息,无法获得有效的深度估计结果。
其次,随着模型复杂度变高,NFPP(-E)和MMFN在精度上均有所降低,在彩色模型上的测试NFPP(-E)精度反而有所提高,MMFN精度仍然存在下降。结果表明事件相机不受物体颜色干扰,MMFN由于使用了单帧高分辨率图像,物体颜色对算法仍然存在一定影响,但仍然能够保持高精度,鲁棒性较好。
图18为算法的定性对比,由结果可知NFPP(-F)由于相位分辨率较低,出现了急剧的不连续的深度估计,无法恢复物体深度估计的细节。相比而言,事件相机的低延时特性使得事件流在高速扫描的情况下能够实现相位恢复,NFPP(-E)结果显示其能够较为准确地恢复物体的深度信息。但传统方法下无法有效抑制事件噪声,使得深度估计结果出现大量随机噪声,这种噪声在包裹相位的跳变处更为明显。本发明结合网络融合的优势结合了事件高时间分辨率、图像的低噪声和空间高分辨率带来的边缘清晰特性,获得了高分辨率高质量的深度估计结果。
为验证事件和图像的融合效果以及相比于不同输入组合的优点,设置了不同的对比组实验。其中包括单独使用事件流实现深度估计(Event);使用128ms周期内所有图像数据实现深度估计(F(-n));通过128ms采集的所有图像生成的相位图实现深度估计(F(-p));单帧白光投影图像实现深度估计(F(-s));单帧图像和事件流双通道实现深度估计(E-F),双通道不使用融合部分,事件相位和图像分别提取特征后在FF-Net模块末端实现级联输入到高分辨率重建网络模块中。结果见表2。
表2不同输入和融合方式的精度对比,/表示该扫描周期下的评价指标与128ms下相同
首先,与单独使用图像或事件相比,事件和图像融合的方式效果更好。具体而言,由于网络均在128ms下训练,使用序列图像(F(-n))或者图像生成的相位(F(-p))在128ms下的测试效果良好,但扫描速度加快时完全失去效果。使用单帧图像(F(-s))无需考虑扫描周期长短,深度估计图的轮廓清晰,但准确率较差。单独使用事件(Event)时准确率更高,但随着扫描周期缩短,由图17可知事件相位出现了更多噪声和相位延迟,导致深度估计在高速扫描时误差急剧上升。融合的E-F和MMFN网络有效解决了上述问题,通过融合不同模态数据间的优势降低了误差,相比之下,MMFN使用注意力机制能够在16ms扫拙周期下实现有效的深度估计。其次,表3显示基于事件的网络模型(Event)对物体的颜色鲁棒性较高,仅使用图像(F(-s))进行深度估计受干扰较大,事件与图像的融合(MMFN)方法的误差最小,对物体有着更广的适用范围。
表3不同输入和融合方式在颜色上的鲁棒性实验结果
图19为不同输入和融合方式的定性结果,由图可知F(-n)和F(-p)在高速扫描下的深度估计是失败的,F(-s)因为不受扫描周期的影响,其在所有扫描周期内的深度估计结果稳定,边缘清晰。
但对于彩色图像上的表现较差,与表3结果一致,基于事件相位的Event算法能够较好地完成深度估计,但由于事件相位存在的低分辨率和高噪声特性,深度估计在边缘处更为模糊,在16ms的情况下无法获得有效输出。
针对E-F和MMFN的不同融合方式结果,难以通过主动观察对比与真实值之间差别。图20显示了几类主要方法下与真实值之间的误差,颜色越突出表明误差越大。由图可知,Event在边缘处的预测效果较差,F(-s)则因为单帧图像的预测使得其在整体上的误差较大。MMFN表现出了最佳效果,在不同扫描速度下的误差均为最小。
由于事件流中存在大量的随机噪声以及在高速扫描下事件流时间戳存在的延迟问题,为验证多模态融合算法MMFN的抗噪声性能,本申请实施例在原始事件流上增加了不同类型和比例的噪声。空间噪声比例根据像素总数的百分比随机添加。时间扰动则对所有事件的时间戳添加随机波动,实验的扫描周期为128ms,波动比例则是周期的百分比进行添加。
噪声的鲁棒性实验结果如图21A所示,对比方法包括Event、E-F和MMFN。由曲线图可知MMFN对于两种噪声的抑制效果均有最佳效果,缺少单帧图像融合的Event在噪声较高时则失去稳定性。其次,由于事件相位依赖于时间戳计算,时间扰动相比于随机噪声对网络影响更大,但因为单帧高分辨率图像的引入,本文提出的MMFN能够有效抑制时间戳扰动问题。
接下来从软件模块架构的角度介绍本申请的三维重建方法:
本申请实施例的***流程分为网络训练阶段和网络推理阶段,***架构如图21B所示,包含动态投影模块、延时计算与中值滤波模块、帧对齐模块、基于多模输入的结构光深度估计网络。本发明接收待处理的事件流与图像,生成高帧率、高分辨率的深度估计图。
本申请实施例的应用十分广泛,可作为关键技术应用于生物识别、手势控制、智慧物流、3D视频制作等。基于多模输入的结构光深度估计网络中的多个模块可应用于其他基于多模态输入的图像处理与成像任务,如多级事件相位去噪与融合模块(FF-Net)和特征上采样模块(UP-Net)。另外,本申请实施例对真实开放场景具有较高鲁棒性,可适配不同传感器型号。
接下来从装置的角度介绍本申请实施例提供的一种三维重建装置,参照图22,图22为本申请实施例提供的一种三维重建装置的结构示意,如图22所示,本申请实施例提供的一种三维重建装置2200包括:
获取模块2201,用于获取第一特征表示和第二特征表示,所述第一特征表示为RGB相机采集的像素图像对应的特征表示,所述第二特征表示为通过事件相机采集的事件数据对应的特征表示;所述像素图像和所述事件数据为针对于同一场景采集得到的;
其中,关于获取模块2201的具体描述可以参照上述实施例中步骤1001的描述,这里不再赘述。
融合模块2202,用于将所述第一特征表示和所述第二特征表示进行特征融合,得到第三特征表示;
其中,关于融合模块2202的具体描述可以参照上述实施例中步骤1002的描述,这里不再赘述。
三维重建模块2203,用于根据所述第三特征表示,通过三维重建网络对所述场景进行三维重建,得到三维重建结果。
其中,关于三维重建模块2203的具体描述可以参照上述实施例中步骤1003的描述,这里不再赘述。
在一种可能的实现中,所述事件数据为根据所述事件相机在目标时间段内采集的多帧事件数据得到,所述像素图像为所述RGB相机在所述目标时间段内采集的图像得到的。
在一种可能的实现中,所述第一特征表示和所述第二特征表示在空间维度上的尺寸相同,所述特征融合为在通道维度上的拼接操作。
在一种可能的实现中,所述获取模块,具体用于:
根据第三特征表示,通过神经网络,得到目标信息,所述第三特征表示为所述像素图像对应的特征表示,所述目标信息表示第四特征表示中位置点包含的噪声的权重,所述第四特征表示为所述事件数据对应的特征表示;
根据所述第四特征表示和所述目标信息,得到所述第二特征表示。
在一种可能的实现中,所述神经网络为第一注意力网络,所述获取模块,具体用于:
根据第三特征表示,通过第一注意力网络,得到目标信息,所述目标信息包括第一注意力信息;所述第一注意力信息为所述像素图像在空间维度的关联度信息;
通过第二注意力网络,处理第四特征表示,得到第二注意力信息;所述第二注意力信息为所述事件数据在空间维度的关联度信息,所述第二注意力信息用于与所述第一注意力信息进行注意力融合,以得到第三注意力信息;其中,
所述第三注意力信息用于得到所述第二特征表示。
在一种可能的实现中,所述注意力融合为对应位置的加和操作。
在一种可能的实现中,所述第一注意力信息、所述第二注意力信息以及所述第三注意力信息用于表示Q向量和K向量之间的关联度;
所述第三注意力信息用于得到所述第一特征表示,包括:
所述第三注意力信息用于和通过第二注意力网络处理所述第四特征表示得到的K向量进行融合,得到所述第一特征表示。
在一种可能的实现中,所述装置还包括:
FFN模块,用于通过前馈神经网络FFN处理所述第一特征表示,得到处理后的第一特征表示;所述将所述第一特征表示和所述第二特征表示进行特征融合,包括:将所述处理后的第一特征表示和所述第二特征表示进行特征融合;或者,
通过前馈神经网络FFN处理所述第二特征表示,得到处理后的第二特征表示;所述将所述第一特征表示和所述第二特征表示进行特征融合,包括:将所述第一特征表示和所述处理后的第二特征表示进行特征融合。
在一种可能的实现中,所述获取模块,具体用于:
通过多个串联的注意力模块,对所述像素图像对应的特征表示以及所述事件数据对应的特征表示进行处理,得到所述第一特征表示和所述第二特征表示;其中,每个所述注意力模块的输出用于作为相邻的下一个注意力模块的输入,并进行基于注意力机制的处理。
在一种可能的实现中,所述每个所述注意力模块的输出包括所述像素图像对应的特征表示以及所述事件数据对应的特征表示;
所述第一特征表示为根据多个所述注意力模块中的部分或全部的注意力模块得到的所述像素图像对应的特征表示进行融合得到的;或者,
所述第二特征表示为根据多个所述注意力模块中的部分或全部的注意力模块得到的所述事件数据对应的特征表示进行融合得到的。
在一种可能的实现中,所述三维重建结果的分辨率和所述像素图像的分辨率一致。
在一种可能的实现中,所述三维重建结果包括多个位置点以及每个位置点对应的深度信息。
在一种可能的实现中,所述装置还包括:
相位解算模块,用于对通过事件相机采集的事件数据进行相位解算,得到事件相位;
所述第二特征表示为所述事件相位对应的特征表示。
在一种可能的实现中,所述事件相位包括目标位置点对应的多个相位值,所述多个相位值中不同所述相位值对应不同的时间戳;所述装置还包括:
滤波模块,用于对所述事件相位进行中值滤波处理,得到处理后的事件相位;所述第二特征表示为所述处理后的事件相位对应的特征表示;其中,
所述处理后的事件相位包括所述目标位置点对应的目标相位值,所述目标相位值为对所述目标位置点对应的多个相位值进行中值滤波得到的。
接下来介绍本申请实施例提供的一种执行设备,请参阅图23,图23为本申请实施例提供的执行设备的一种结构示意图,执行设备2300具体可以表现为手机、平板、笔记本电脑、智能穿戴设备、服务器等,此处不做限定。其中,执行设备2300实现图10对应实施例中三维重建方法的功能。具体的,执行设备2300包括:接收器2301、发射器2302、处理器2303和存储器2304(其中执行设备2300中的处理器2303的数量可以一个或多个),其中,处理器2303可以包括应用处理器23031和通信处理器23032。在本申请的一些实施例中,接收器2301、发射器2302、处理器2303和存储器2304可通过总线或其它方式连接。
存储器2304可以包括只读存储器和随机存取存储器,并向处理器2303提供指令和数据。存储器2304的一部分还可以包括非易失性随机存取存储器(non-volatile randomaccessmemory,NVRAM)。存储器2304存储有处理器和操作指令、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,操作指令可包括各种操作指令,用于实现各种操作。
处理器2303控制执行设备的操作。具体的应用中,执行设备的各个组件通过总线***耦合在一起,其中总线***除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都称为总线***。
上述本申请实施例揭示的方法可以应用于处理器2303中,或者由处理器2303实现。处理器2303可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器2303中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器2303可以是通用处理器、数字信号处理器(digital signal processing,DSP)、微处理器或微控制器、以及视觉处理器(vision processing unit,VPU)、张量处理器(tensorprocessing unit,TPU)等适用于AI运算的处理器,还可进一步包括专用集成电路(application specific integrated circuit,ASIC)、现场可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。该处理器2303可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器2304,处理器2303读取存储器2304中的信息,结合其硬件完成上述实施例中步骤801至步骤804的步骤。
接收器2301可用于接收输入的数字或字符信息,以及产生与执行i设备的相关设置以及功能控制有关的信号输入。发射器2302可用于通过第一接口输出数字或字符信息;发射器2302还可用于通过第一接口向磁盘组发送指令,以修改磁盘组中的数据;发射器2302还可以包括显示屏等显示设备。
本申请实施例还提供了一种训练设备,请参阅图24,图24是本申请实施例提供的训练设备一种结构示意图,具体的,训练设备2400由一个或多个服务器实现,训练设备2400可因配置或性能不同而产生比较大的差异,可以包括一个或一个以***处理器(centralprocessing units,CPU)2424(例如,一个或一个以上处理器)和存储器2432,一个或一个以上存储应用程序2442或数据2444的存储介质2430(例如一个或一个以上海量存储设备)。其中,存储器2432和存储介质2430可以是短暂存储或持久存储。存储在存储介质2430的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对训练设备中的一系列指令操作。更进一步地,中央处理器2424可以设置为与存储介质2430通信,在训练设备2400上执行存储介质2430中的一系列指令操作。
训练设备2400还可以包括一个或一个以上电源2426,一个或一个以上有线或无线网络接口2450,一个或一个以上输入输出接口2458;或,一个或一个以上操作***2441,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
本申请实施例中还提供一种包括计算机可读指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如前述执行设备所执行的步骤,或者,使得计算机执行如前述训练设备所执行的步骤。
本申请实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有用于进行信号处理的程序,当其在计算机上运行时,使得计算机执行如前述执行设备所执行的步骤,或者,使得计算机执行如前述训练设备所执行的步骤。
本申请实施例提供的执行设备、训练设备或终端设备具体可以为芯片,芯片包括:处理单元和通信单元,所述处理单元例如可以是处理器,所述通信单元例如可以是输入/输出接口、管脚或电路等。该处理单元可执行存储单元存储的计算机执行指令,以使执行设备内的芯片执行上述实施例描述的模型训练方法,或者,以使训练设备内的芯片执行上述实施例中与模型训练相关的步骤。可选地,所述存储单元为所述芯片内的存储单元,如寄存器、缓存等,所述存储单元还可以是所述无线接入设备端内的位于所述芯片外部的存储单元,如只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)等。
具体的,请参阅图25,图25为本申请实施例提供的芯片的一种结构示意图,所述芯片可以表现为神经网络处理器NPU 2500,NPU 2500作为协处理器挂载到主CPU(Host CPU)上,由Host CPU分配任务。NPU的核心部分为运算电路2503,通过控制器2504控制运算电路2503提取存储器中的矩阵数据并进行乘法运算。
在一些实现中,运算电路2503内部包括多个处理单元(Process Engine,PE)。在一些实现中,运算电路2503是二维脉动阵列。运算电路2503还可以是一维脉动阵列或者能够执行例如乘法和加法这样的数学运算的其它电子线路。在一些实现中,运算电路2503是通用的矩阵处理器。
举例来说,假设有输入矩阵A,权重矩阵B,输出矩阵C。运算电路从权重存储器2502中取矩阵B相应的数据,并缓存在运算电路中每一个PE上。运算电路从输入存储器2501中取矩阵A数据与矩阵B进行矩阵运算,得到的矩阵的部分结果或最终结果,保存在累加器(accumulator)2508中。
统一存储器2506用于存放输入数据以及输出数据。权重数据直接通过存储单元访问控制器(Direct Memory Access Controller,DMAC)2505,DMAC被搬运到权重存储器2502中。输入数据也通过DMAC被搬运到统一存储器2506中。
BIU为Bus Interface Unit即,总线接口单元2510,用于AXI总线与DMAC和取指存储器(Instruction Fetch Buffer,IFB)2509的交互。
总线接口单元2510(Bus Interface Unit,简称BIU),用于取指存储器2509从外部存储器获取指令,还用于存储单元访问控制器2505从外部存储器获取输入矩阵A或者权重矩阵B的原数据。
DMAC主要用于将外部存储器DDR中的输入数据搬运到统一存储器2506或将权重数据搬运到权重存储器2502中或将输入数据数据搬运到输入存储器2501中。
向量计算单元2507包括多个运算处理单元,在需要的情况下,对运算电路的输出做进一步处理,如向量乘,向量加,指数运算,对数运算,大小比较等等。主要用于神经网络中非卷积/全连接层网络计算,如Batch Normalization(批归一化),像素级求和,对特征平面进行上采样等。
在一些实现中,向量计算单元2507能将经处理的输出的向量存储到统一存储器2506。例如,向量计算单元2507可以将线性函数;或,非线性函数应用到运算电路2503的输出,例如对卷积层提取的特征平面进行线性插值,再例如累加值的向量,用以生成激活值。在一些实现中,向量计算单元2507生成归一化的值、像素级求和的值,或二者均有。在一些实现中,处理过的输出的向量能够用作到运算电路2503的激活输入,例如用于在神经网络中的后续层中的使用。
控制器2504连接的取指存储器(instruction fetch buffer)2509,用于存储控制器2504使用的指令;
统一存储器2506,输入存储器2501,权重存储器2502以及取指存储器2509均为On-Chip存储器。外部存储器私有于该NPU硬件架构。
其中,上述任一处提到的处理器,可以是一个通用中央处理器,微处理器,ASIC,或一个或多个用于控制上述程序执行的集成电路。
另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本申请提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本申请而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、U盘、移动硬盘、ROM、RAM、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,训练设备,或者网络设备等)执行本申请各个实施例所述的方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、训练设备或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、训练设备或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的训练设备、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(Solid State Disk,SSD))等。
Claims (32)
1.一种三维重建方法,其特征在于,所述方法包括:
获取第一特征表示和第二特征表示,所述第一特征表示为RGB相机采集的像素图像对应的特征表示,所述第二特征表示为通过事件相机采集的事件数据对应的特征表示;所述像素图像和所述事件数据为针对于同一场景采集得到的;
将所述第一特征表示和所述第二特征表示进行特征融合,得到第三特征表示;
根据所述第三特征表示,通过三维重建网络对所述场景进行三维重建,得到三维重建结果。
2.根据权利要求1所述的方法,其特征在于,所述事件数据为根据所述事件相机在目标时间段内采集的多帧事件数据得到,所述像素图像为所述RGB相机在所述目标时间段内采集的图像得到的。
3.根据权利要求1或2所述的方法,其特征在于,所述第一特征表示和所述第二特征表示在空间维度上的尺寸相同,所述特征融合为在通道维度上的拼接操作。
4.根据权利要求1至3任一所述的方法,其特征在于,所述获取第二特征表示,包括:
根据第三特征表示,通过神经网络,得到目标信息,所述第三特征表示为所述像素图像对应的特征表示,所述目标信息表示第四特征表示中位置点包含的噪声的权重,所述第四特征表示为所述事件数据对应的特征表示;
根据所述第四特征表示和所述目标信息,得到所述第二特征表示。
5.根据权利要求4所述的方法,其特征在于,所述神经网络为第一注意力网络,所述获取根据第三特征表示,通过神经网络,得到目标信息,包括:
根据第三特征表示,通过第一注意力网络,得到目标信息,所述目标信息包括第一注意力信息;所述第一注意力信息为所述像素图像在空间维度的关联度信息;
所述根据所述第四特征表示和所述目标信息,得到所述第二特征表示,包括:
通过第二注意力网络,处理第四特征表示,得到第二注意力信息;所述第二注意力信息为所述事件数据在空间维度的关联度信息,所述第二注意力信息用于与所述第一注意力信息进行注意力融合,以得到第三注意力信息;其中,
所述第三注意力信息用于得到所述第二特征表示。
6.根据权利要求5所述的方法,其特征在于,所述注意力融合为对应位置的加和操作。
7.根据权利要求5或6所述的方法,其特征在于,所述第一注意力信息、所述第二注意力信息以及所述第三注意力信息用于表示Q向量和K向量之间的关联度;
所述第三注意力信息用于得到所述第一特征表示,包括:
所述第三注意力信息用于和通过第二注意力网络处理所述第四特征表示得到的K向量进行融合,得到所述第一特征表示。
8.根据权利要求1至7任一所述的方法,其特征在于,所述方法还包括:
通过前馈神经网络FFN处理所述第一特征表示,得到处理后的第一特征表示;所述将所述第一特征表示和所述第二特征表示进行特征融合,包括:将所述处理后的第一特征表示和所述第二特征表示进行特征融合;或者,
通过前馈神经网络FFN处理所述第二特征表示,得到处理后的第二特征表示;所述将所述第一特征表示和所述第二特征表示进行特征融合,包括:将所述第一特征表示和所述处理后的第二特征表示进行特征融合。
9.根据权利要求1至8任一所述的方法,其特征在于,所述获取第一特征表示和所述第二特征表示,包括:
通过多个串联的注意力模块,对所述像素图像对应的特征表示以及所述事件数据对应的特征表示进行处理,得到所述第一特征表示和所述第二特征表示;其中,每个所述注意力模块的输出用于作为相邻的下一个注意力模块的输入,并进行基于注意力机制的处理。
10.根据权利要求9所述的方法,其特征在于,所述每个所述注意力模块的输出包括所述像素图像对应的特征表示以及所述事件数据对应的特征表示;
所述第一特征表示为根据多个所述注意力模块中的部分或全部的注意力模块得到的所述像素图像对应的特征表示进行融合得到的;或者,
所述第二特征表示为根据多个所述注意力模块中的部分或全部的注意力模块得到的所述事件数据对应的特征表示进行融合得到的。
11.根据权利要求1至10任一所述的方法,其特征在于,所述三维重建结果的分辨率和所述像素图像的分辨率一致。
12.根据权利要求1至11任一所述的方法,其特征在于,所述三维重建结果包括多个位置点以及每个位置点对应的深度信息。
13.根据权利要求1至12任一所述的方法,其特征在于,所述方法还包括:
对通过事件相机采集的事件数据进行相位解算,得到事件相位;
所述第二特征表示具体为所述事件相位对应的特征表示。
14.根据权利要求13所述的方法,其特征在于,所述事件相位包括目标位置点对应的多个相位值,所述多个相位值中不同所述相位值对应不同的时间戳;所述方法还包括:
对所述事件相位进行中值滤波处理,得到处理后的事件相位;所述第二特征表示为所述处理后的事件相位对应的特征表示;其中,
所述处理后的事件相位包括所述目标位置点对应的目标相位值,所述目标相位值为对所述目标位置点对应的多个相位值进行中值滤波得到的。
15.一种三维重建装置,其特征在于,所述装置包括:
获取模块,用于获取第一特征表示和第二特征表示,所述第一特征表示为RGB相机采集的像素图像对应的特征表示,所述第二特征表示为通过事件相机采集的事件数据对应的特征表示;所述像素图像和所述事件数据为针对于同一场景采集得到的;
融合模块,用于将所述第一特征表示和所述第二特征表示进行特征融合,得到第三特征表示;
三维重建模块,用于根据所述第三特征表示,通过三维重建网络对所述场景进行三维重建,得到三维重建结果。
16.根据权利要求15所述的装置,其特征在于,所述事件数据为根据所述事件相机在目标时间段内采集的多帧事件数据得到,所述像素图像为所述RGB相机在所述目标时间段内采集的图像得到的。
17.根据权利要求15或16所述的装置,其特征在于,所述第一特征表示和所述第二特征表示在空间维度上的尺寸相同,所述特征融合为在通道维度上的拼接操作。
18.根据权利要求15至17任一所述的装置,其特征在于,所述获取模块,具体用于:
根据第三特征表示,通过神经网络,得到目标信息,所述第三特征表示为所述像素图像对应的特征表示,所述目标信息表示第四特征表示中位置点包含的噪声的权重,所述第四特征表示为所述事件数据对应的特征表示;
根据所述第四特征表示和所述目标信息,得到所述第二特征表示。
19.根据权利要求18所述的装置,其特征在于,所述神经网络为第一注意力网络,所述获取模块,具体用于:
根据第三特征表示,通过第一注意力网络,得到目标信息,所述目标信息包括第一注意力信息;所述第一注意力信息为所述像素图像在空间维度的关联度信息;
通过第二注意力网络,处理第四特征表示,得到第二注意力信息;所述第二注意力信息为所述事件数据在空间维度的关联度信息,所述第二注意力信息用于与所述第一注意力信息进行注意力融合,以得到第三注意力信息;其中,
所述第三注意力信息用于得到所述第二特征表示。
20.根据权利要求19所述的装置,其特征在于,所述注意力融合为对应位置的加和操作。
21.根据权利要求19或20所述的装置,其特征在于,所述第一注意力信息、所述第二注意力信息以及所述第三注意力信息用于表示Q向量和K向量之间的关联度;
所述第三注意力信息用于得到所述第一特征表示,包括:
所述第三注意力信息用于和通过第二注意力网络处理所述第四特征表示得到的K向量进行融合,得到所述第一特征表示。
22.根据权利要求15至21任一所述的装置,其特征在于,所述装置还包括:
FFN模块,用于通过前馈神经网络FFN处理所述第一特征表示,得到处理后的第一特征表示;所述将所述第一特征表示和所述第二特征表示进行特征融合,包括:将所述处理后的第一特征表示和所述第二特征表示进行特征融合;或者,
通过前馈神经网络FFN处理所述第二特征表示,得到处理后的第二特征表示;所述将所述第一特征表示和所述第二特征表示进行特征融合,包括:将所述第一特征表示和所述处理后的第二特征表示进行特征融合。
23.根据权利要求15至22任一所述的装置,其特征在于,所述获取模块,具体用于:
通过多个串联的注意力模块,对所述像素图像对应的特征表示以及所述事件数据对应的特征表示进行处理,得到所述第一特征表示和所述第二特征表示;其中,每个所述注意力模块的输出用于作为相邻的下一个注意力模块的输入,并进行基于注意力机制的处理。
24.根据权利要求23所述的装置,其特征在于,所述每个所述注意力模块的输出包括所述像素图像对应的特征表示以及所述事件数据对应的特征表示;
所述第一特征表示为根据多个所述注意力模块中的部分或全部的注意力模块得到的所述像素图像对应的特征表示进行融合得到的;或者,
所述第二特征表示为根据多个所述注意力模块中的部分或全部的注意力模块得到的所述事件数据对应的特征表示进行融合得到的。
25.根据权利要求15至24任一所述的装置,其特征在于,所述三维重建结果的分辨率和所述像素图像的分辨率一致。
26.根据权利要求15至25任一所述的装置,其特征在于,所述三维重建结果包括多个位置点以及每个位置点对应的深度信息。
27.根据权利要求15至25任一所述的装置,其特征在于,所述装置还包括:
相位解算模块,用于对通过事件相机采集的事件数据进行相位解算,得到事件相位;
所述第二特征表示为所述事件相位对应的特征表示。
28.根据权利要求27所述的装置,其特征在于,所述事件相位包括目标位置点对应的多个相位值,所述多个相位值中不同所述相位值对应不同的时间戳;所述装置还包括:
滤波模块,用于对所述事件相位进行中值滤波处理,得到处理后的事件相位;所述第二特征表示为所述处理后的事件相位对应的特征表示;其中,
所述处理后的事件相位包括所述目标位置点对应的目标相位值,所述目标相位值为对所述目标位置点对应的多个相位值进行中值滤波得到的。
29.一种***,其特征在于,包括RGB相机、事件相机以及如权利要求15至28任一所述的装置。
30.一种计算设备,其特征在于,所述计算设备包括存储器和处理器;所述存储器存储有代码,所述处理器被配置为获取所述代码,并执行如权利要求1至14任一所述的方法。
31.一种计算机存储介质,其特征在于,所述计算机存储介质存储有一个或多个指令,所述指令在由一个或多个计算机执行时使得所述一个或多个计算机实施权利要求1至14任一所述的方法。
32.一种计算机程序产品,包括代码,其特征在于,在所述代码被执行时用于实现如权利要求1至14任一所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211153304.2A CN115661336A (zh) | 2022-09-21 | 2022-09-21 | 一种三维重建方法及相关装置 |
PCT/CN2023/120051 WO2024061269A1 (zh) | 2022-09-21 | 2023-09-20 | 一种三维重建方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211153304.2A CN115661336A (zh) | 2022-09-21 | 2022-09-21 | 一种三维重建方法及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115661336A true CN115661336A (zh) | 2023-01-31 |
Family
ID=84983606
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211153304.2A Pending CN115661336A (zh) | 2022-09-21 | 2022-09-21 | 一种三维重建方法及相关装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115661336A (zh) |
WO (1) | WO2024061269A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116091706A (zh) * | 2023-04-07 | 2023-05-09 | 山东建筑大学 | 多模态遥感影像深度学习匹配的三维重建方法 |
WO2024061269A1 (zh) * | 2022-09-21 | 2024-03-28 | 华为技术有限公司 | 一种三维重建方法及相关装置 |
CN117939309A (zh) * | 2024-03-25 | 2024-04-26 | 荣耀终端有限公司 | 图像去马赛克方法、电子设备及存储介质 |
CN117939309B (zh) * | 2024-03-25 | 2024-07-12 | 荣耀终端有限公司 | 图像去马赛克方法、电子设备及存储介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111868737A (zh) * | 2018-01-24 | 2020-10-30 | 苹果公司 | 使用神经网络的基于事件相机的注视跟踪 |
CN111462268B (zh) * | 2020-03-31 | 2022-11-11 | 北京市商汤科技开发有限公司 | 图像重建方法及装置、电子设备和存储介质 |
CN112037269B (zh) * | 2020-08-24 | 2022-10-14 | 大连理工大学 | 一种基于多域协同特征表达的视觉运动目标跟踪方法 |
US11768919B2 (en) * | 2021-01-13 | 2023-09-26 | Fotonation Limited | Image processing system |
CN114885112B (zh) * | 2022-03-23 | 2023-06-20 | 清华大学 | 基于数据融合的高帧率视频生成方法及装置 |
CN114972412A (zh) * | 2022-05-12 | 2022-08-30 | 深圳锐视智芯科技有限公司 | 一种姿态估计方法、装置、***及可读存储介质 |
CN115661336A (zh) * | 2022-09-21 | 2023-01-31 | 华为技术有限公司 | 一种三维重建方法及相关装置 |
-
2022
- 2022-09-21 CN CN202211153304.2A patent/CN115661336A/zh active Pending
-
2023
- 2023-09-20 WO PCT/CN2023/120051 patent/WO2024061269A1/zh unknown
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024061269A1 (zh) * | 2022-09-21 | 2024-03-28 | 华为技术有限公司 | 一种三维重建方法及相关装置 |
CN116091706A (zh) * | 2023-04-07 | 2023-05-09 | 山东建筑大学 | 多模态遥感影像深度学习匹配的三维重建方法 |
CN117939309A (zh) * | 2024-03-25 | 2024-04-26 | 荣耀终端有限公司 | 图像去马赛克方法、电子设备及存储介质 |
CN117939309B (zh) * | 2024-03-25 | 2024-07-12 | 荣耀终端有限公司 | 图像去马赛克方法、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2024061269A1 (zh) | 2024-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111667399B (zh) | 风格迁移模型的训练方法、视频风格迁移的方法以及装置 | |
US11232286B2 (en) | Method and apparatus for generating face rotation image | |
WO2022179581A1 (zh) | 一种图像处理方法及相关设备 | |
CN115661336A (zh) | 一种三维重建方法及相关装置 | |
CN109684969B (zh) | 凝视位置估计方法、计算机设备及存储介质 | |
KR20230156056A (ko) | 포즈 추정을 위한 키포인트-기반 샘플링 | |
US20220301295A1 (en) | Recurrent multi-task convolutional neural network architecture | |
CN112257759A (zh) | 一种图像处理的方法以及装置 | |
CN112487844A (zh) | 手势识别方法、电子设备、计算机可读存储介质和芯片 | |
JP2022020588A (ja) | アクティブインタラクションの方法、装置、電子デバイス及び可読記憶媒体 | |
CN113066018A (zh) | 一种图像增强方法及相关装置 | |
CN116917949A (zh) | 根据单目相机输出来对对象进行建模 | |
CN113627163A (zh) | 一种注意力模型、特征提取方法及相关装置 | |
WO2022179603A1 (zh) | 一种增强现实方法及其相关设备 | |
CN116861850A (zh) | 一种数据处理方法及其装置 | |
Lu et al. | 3D real-time human reconstruction with a single RGBD camera | |
Gupta et al. | Deep learning model based multimedia retrieval and its optimization in augmented reality applications | |
CN114140841A (zh) | 点云数据的处理方法、神经网络的训练方法以及相关设备 | |
CN112037305A (zh) | 对图像中的树状组织进行重建的方法、设备及存储介质 | |
CN115222896B (zh) | 三维重建方法、装置、电子设备及计算机可读存储介质 | |
CN116977547A (zh) | 一种三维人脸重建方法、装置、电子设备和存储介质 | |
CN114898447A (zh) | 一种基于自注意力机制的个性化注视点检测方法及装置 | |
Mao et al. | A deep learning approach to track Arabidopsis seedlings’ circumnutation from time-lapse videos | |
Chen et al. | Underwater target detection and embedded deployment based on lightweight YOLO_GN | |
Fang et al. | Embedded image recognition system for lightweight convolutional Neural Networks |
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 |