三维时序图像生成方法、装置、计算机设备和存储介质
文献发布时间:2023-06-19 11:26:00
技术领域
本申请涉及三维时序图像处理技术领域,特别是涉及一种三维时序图像生成方法、装置、计算机设备和存储介质。
背景技术
随着深度相机、激光传感器、图像处理器等硬件的发展及深度神经网络的发展,三维视觉技术已广泛应用于辅助智能驾驶汽车、服务机器人及工业机器人。由于这些机器人系统都处在动态场景中,这些系统经常会在移动过程中遇到遮挡、超出视野范围和光线变化的问题,遮挡会引起目标图像信息的丢失,会使得接下来的识别、检测和定位产生误差或失败;超出视野范围也会引起图像信息的丢失;光线变化会给目标图像信息带来误差。
传统技术中,常见的例如基于三维对抗性生成网络的有限角度锥形束CT重建算法,是为了提升图像质量,无法解决因遮挡而导致的图像预测精度不高的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高图像预测精度的三维时序图像生成方法、装置、计算机设备和存储介质。
一种三维时序图像生成方法,方法包括:
获取当前时刻三维图像和当前时刻之前的两个连续时刻的三维图像;
将当前时刻之前的两个连续时刻三维图像输入预设的图像预测神经网络,得到当前时刻预测三维图像;
根据当前时刻预测三维图像和当前时刻三维图像,判断当前时刻三维图像是否存在被遮挡部分或阴影部分;
若当前时刻三维图像存在被遮挡部分或阴影部分,输出当前时刻预测三维图像。
在其中一个实施例中,当前时刻三维图像和当前时刻之前的两个连续时刻的三维图像,包括:
获取拍摄对象在当前时刻和当前时刻之前的两个连续时刻的图像;
对拍摄对象在当前时刻和当前时刻之前的两个连续时刻的图像进行三维重建,获取重建后的三维图像。
在其中一个实施例中,对拍摄对象在不同时刻的图像进行三维重建,获取重建后的三维图像包括:
根据拍摄对象在当前时刻和当前时刻之前的两个连续时刻的图像,获取拍摄对象在当前时刻和当前时刻之前的两个连续时刻的三维点云信息;
根据拍摄对象在当前时刻和当前时刻之前的两个连续时刻的三维点云信息,对拍摄对象的三维图像进行三维重建,获取重建后的三维图像。
在其中一个实施例中,预设的图像预测神经网络通过以下方法获取:
获取三个连续时刻的三维样本图像,包括第一时刻三维样本图像、第二时刻三维样本图像和第三时刻三维样本图像;
将第一时刻三维样本图像、第二时刻三维样本图像和第三时刻三维样本图像输入初始的图像预测神经网络,经过卷积注意力层、三维卷积长短期记忆网络层和三维反卷积长短期记忆网络层处理,得到第三时刻预测图像;
根据第三时刻三维样本图像和第三时刻三维预测图像调整初始的图像预测神经网络的网络权重,得到预设的图像预测神经网络。
在其中一个实施例中,根据当前时刻预测三维图像和当前时刻三维图像,判断当前时刻三维图像是否存在被遮挡部分或阴影部分,包括:
从预设模板库中获取与当前时刻三维图像相适用的三维图像模板;
根据预设的相关值计算公式,获取当前时刻三维图像和三维图像模板之间的第一相关值;
根据预设的相关值计算公式,获取当前时刻预测三维图像和三维图像模板之间的第二相关值;
比较第一相关值和第二相关值的大小,
若第一相关值大于第二相关值,判定当前时刻三维图像中不存在被遮挡部分或阴影部分;
若第一相关值小于第二相关值,判定当前时刻三维图像中存在被遮挡部分或阴影部分。
在其中一个实施例中,方法还包括:
若当前时刻三维图像不存在被遮挡部分且不存在阴影部分,输出当前时刻三维图像。
在其中一个实施例中,方法还包括:
获取当前时刻的后一个连续时刻的三维图像;
将输出的当前时刻预测三维图像和当前时刻的前一个连续时刻的三维图像输入预设的图像预测神经网络,得到当前时刻的后一个连续时刻的预测三维图像;
根据当前时刻的后一个连续时刻的预测三维图像和当前时刻的后一个连续时刻的三维图像,判断当前时刻的后一个连续时刻的三维图像是否存在被遮挡部分或阴影部分;
若当前时刻的后一个连续时刻的三维图像存在被遮挡部分或阴影部分,输出当前时刻的后一个连续时刻的预测三维图像;
重复预测直至输出预设最后时刻的预测三维图像。
一种三维时序图像生成装置,装置包括:
图像获取模块,用于获取当前时刻三维图像和当前时刻之前的两个连续时刻的三维图像;
图像预测模块,用于将当前时刻之前的两个连续时刻三维图像输入预设的图像预测神经网络,获取当前时刻预测三维图像;
图像判断模块,用于根据当前时刻预测三维图像和当前时刻三维图像,判断当前时刻三维图像是否存在被遮挡部分或阴影部分;
图像输出模块,用于若当前时刻三维图像存在被遮挡部分或阴影部分,输出当前时刻预测三维图像。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取当前时刻三维图像和当前时刻之前的两个连续时刻的三维图像;
将当前时刻之前的两个连续时刻三维图像输入预设的图像预测神经网络,得到当前时刻预测三维图像;
根据当前时刻预测三维图像和当前时刻三维图像,判断当前时刻三维图像是否存在被遮挡部分或阴影部分;
若当前时刻三维图像存在被遮挡部分或阴影部分,输出当前时刻预测三维图像。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取当前时刻三维图像和当前时刻之前的两个连续时刻的三维图像;
将当前时刻之前的两个连续时刻三维图像输入预设的图像预测神经网络,得到当前时刻预测三维图像;
根据当前时刻预测三维图像和当前时刻三维图像,判断当前时刻三维图像是否存在被遮挡部分或阴影部分;
若当前时刻三维图像存在被遮挡部分或阴影部分,输出当前时刻预测三维图像。
上述三维时序图像生成方法、装置、计算机设备和存储介质,通过获取当前时刻三维图像和当前时刻之前的两个连续时刻的三维图像;将所述当前时刻之前的两个连续时刻三维图像输入预设的图像预测神经网络,获取当前时刻预测三维图像;然后根据所述当前时刻预测三维图像和当前时刻三维图像,判断所述当前时刻三维图像是否存在被遮挡部分或阴影部分;若所述当前时刻三维图像存在被遮挡部分或阴影部分,输出所述当前时刻预测三维图像。本方案能够利用时序信息对目标进行连续时刻的三维图像预测,并判断原三维图象中是否存在遮挡或者阴影,然后在判断原三维图像中存在遮挡或阴影时,根据判断结果选择输出预测三维图像,从而达到提高三维图像预测精度的目的。
附图说明
图1为一个实施例中一种三维时序图像生成方法的流程示意图;
图2为一个实施例中获取三维图像的流程示意图;
图3为一个实施例中建立预设的图像预测神经网络的流程示意图;
图4为一个实施例中一种预设的图像预测神经网络的结构示意图;
图5为一个实施例中判断是否存在被遮挡部分或阴影部分的流程示意图;
图6为一个实施例中三维预测图像连续生成的流程示意图;
图7为一个实施例中工业环境中一种三维时序图像生成的场景示意图;
图8为一个实施例中驾驶环境中一种三维时序图像生成的场景示意图;
图9为一个实施例中一种三维时序图像生成装置的结构框图;
图10为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,如图1所示,提供了一种三维时序图像生成方法,本实施例以该方法应用于终端进行举例说明,可以理解的是,该方法也可以应用于服务器,还可以应用于包括终端和服务器的系统,并通过终端和服务器的交互实现。本实施例中,该方法包括以下步骤:
步骤102,获取当前时刻三维图像和当前时刻之前的两个连续时刻的三维图像。
具体的,处理器获取三个连续时刻的图像,根据该三个连续时刻的图像,建立该三个连续时刻的三维图像。例如,t1、t2、t3三个连续时刻中,t3是当前时刻,则t1和t2是当前时刻t3之前的两个连续时刻。在计算机视觉中,建立三维图像是指根据单视图或者多视图的图像重建三维信息的过程。单视图的信息不完全,因此根据单视图进行三维重建需要利用经验知识。而多视图的三维重建(类似人的双目定位)相对比较容易,其方法是先对摄像机进行标定,即计算出摄像机的图像坐标系与世界坐标系的关系,然后利用多个二维图像中的信息重建出三维信息。
步骤104,将当前时刻之前的两个连续时刻三维图像输入预设的图像预测神经网络,得到当前时刻预测三维图像。
具体的,将三个连续时刻中,前两个连续时刻的三维图像输入预设的图像预测神经网络中,预设的图像预测神经网络输出第三个连续时刻的预测三维图像。
其中,预设的图像预测神经网络是根据样本三维图像提取的训练集训练获取的,训练集的样本越多,训练完成后的预设的图像预测神经网络的精度越高,预设的图像预测神经网络输出的预测三维图像越准确。预设的图像预测神经网络可以是由单个神经网络构成,例如三维卷积长短期记忆网络;也可以是由多个神经网络组成的复合神经网络,例如由多个三维卷积长短期记忆网络和三维反卷积长短期记忆网络组成的复合神经网络。
步骤106,根据当前时刻预测三维图像和当前时刻三维图像,判断当前时刻三维图像是否存在被遮挡部分或阴影部分。
具体的,比较第三个连续时刻的预测三维图像和第三个连续时刻的三维图像,采用遮挡判断算法,判断第三个连续时刻的三维图像中是否存在被遮挡部分或阴影部分。
其中,目前存在多种遮挡判断算法,例如迭代次数判定法:在当前帧图像中运用Kalman滤波算法预估其在下一帧的位置,得到估计位置,在估计位置处设置跟踪窗口,在跟踪窗口内用Mean Shift算法搜索与导弹弹标模板最相似的位置作为导弹弹标的精确位置,根据Mean Shift算法的迭代次数判断目标是否发生遮挡或丢失,对算法的迭代次数进行限制,如果在限制次数内找到目标,则没有丢失,直接给出位置;如果在限制次数内没有找到目标,则发生遮挡或丢失,扩大窗口宽度重新寻找。还例如相似度判定法:对于第k帧图像,给定阈值Th,如果Bhattacharyya系数ρ(yk)≥Th,则没有遮挡,正常跟踪;反之如果ρ(yk)<;Th,则表示发生遮挡;还例如残差判定法:在当前帧中,根据Kalman滤波器关于目标位置的估计值与由Mean Shift算法得到的Kalman滤波器的测量值之间残差的大小来判断是否出现了大比例的遮挡。本实施例中,根据不同的实施场景,选择适合的遮挡判断算法。
步骤108,若当前时刻三维图像存在被遮挡部分或阴影部分,输出当前时刻预测三维图像。
具体的,若第三个连续时刻的三维图像中存在被遮挡部分或阴影部分,则需要对该时刻的原三维图像进行预测处理,生成无遮挡无阴影的三维图像,故输出第三个连续时刻的预测三维图像。若第三个连续时刻的三维图像中不存在被遮挡部分或阴影部分,则无需对该时刻的原三维图像进行预测处理,直接输出第三个连续时刻的三维图像。
上述三维时序图像生成方法,通过获取当前时刻三维图像和当前时刻之前的两个连续时刻的三维图像;将所述当前时刻之前的两个连续时刻三维图像输入预设的图像预测神经网络,获取当前时刻预测三维图像;然后根据所述当前时刻预测三维图像和当前时刻三维图像,判断所述当前时刻三维图像是否存在被遮挡部分或阴影部分;若所述当前时刻三维图像存在被遮挡部分或阴影部分,输出所述当前时刻预测三维图像。利用时序信息对目标进行连续时刻的三维图像预测,并判断原三维图象中是否存在遮挡或者阴影,然后在判断原三维图像中存在遮挡或阴影时,根据判断结果选择输出预测三维图像,从而达到提高三维图像预测精度的目的。
在一个实施例中,获取当前时刻三维图像和当前时刻之前的两个连续时刻的三维图像,包括:获取拍摄对象在当前时刻和当前时刻之前的两个连续时刻的图像;对拍摄对象在当前时刻和当前时刻之前的两个连续时刻的图像进行三维重建,获取重建后的三维图像。
进一步的,对拍摄对象在不同时刻的图像进行三维重建,获取重建后的三维图像包括:根据拍摄对象在当前时刻和当前时刻之前的两个连续时刻的图像,获取拍摄对象在当前时刻和当前时刻之前的两个连续时刻的三维点云信息;根据拍摄对象在当前时刻和当前时刻之前的两个连续时刻的三维点云信息,对拍摄对象的三维图像进行三维重建,获取重建后的三维图像。
在一个实施例中,如图2所示,获取当前时刻三维图像和当前时刻之前的两个连续时刻的三维图像,包括:
步骤202,获取拍摄对象在当前时刻和当前时刻之前的两个连续时刻的图像。
具体的,通过图像采集装置对拍摄对象采集连续时刻图像。图像采集装置可以是摄像头或者相机。相机搭载在机器人系统上,机器人系统通过相机采集的信息完成多目标识别,机器人系统可以是指包括智能驾驶汽车、服务机器人、工业机器人等;拍摄对象可以指汽车、人、工业零件等。光照条件、相机的几何特性等对后续的图像处理造成很大的影响。
步骤204,根据拍摄对象在当前时刻和当前时刻之前的两个连续时刻的图像,获取拍摄对象在当前时刻和当前时刻之前的两个连续时刻的三维点云信息。
具体的,三维点云信息又称三维点云数据。某些情况下,三维点云信息还包含彩色图像信息。
步骤206,根据拍摄对象在当前时刻和当前时刻之前的两个连续时刻的三维点云信息,对拍摄对象的三维图像进行三维重建,获取重建后的三维图像。
具体的,基于拍摄对象在不同时刻的三维点云信息,对拍摄对象进行三维重建,获取全局点云信息。然后选取与全局点云信息对应的区域存在重叠区的局部区域进行测量,获取局部点云信息再进行配准并更新全局点云信息,重复此过程直至完成所有表面区域的测量,最后对测量完成后更新的全局点云数据进行全局优化处理,得到点云模型。
可选的,根据拍摄对象的图像进行三维重建,获取重建后的三维图像通常包括摄像机标定、特征提取、立体匹配和三维重建。
在一个实施例中,如图3所示,预设的图像预测神经网络通过以下方法获取:
步骤302,获取三个连续时刻的三维样本图像,包括第一时刻三维样本图像、第二时刻三维样本图像和第三时刻三维样本图像。
具体的,获取训练集,训练集至少包括三个连续时刻的三维样本图像。
步骤304,将第一时刻三维样本图像、第二时刻三维样本图像和第三时刻三维样本图像输入初始的图像预测神经网络,经过卷积注意力层、三维卷积长短期记忆网络层和三维反卷积长短期记忆网络层处理,得到第三时刻预测图像。
具体的,图像预测神经网络可以是由单个神经网络模型构成,例如三维卷积长短期记忆网络;也可以是由多个神经网络组成的复合神经网络,例如由多个三维卷积长短期记忆网络和三维反卷积长短期记忆网络组成的复合神经网络。
步骤306,根据第三时刻三维样本图像和第三时刻三维预测图像调整初始的图像预测神经网络的网络权重,得到预设的图像预测神经网络。
具体地,图像预测神经网络是根据三维样本图像提取的训练集训练获取的。
例如,图像预测神经网络包括依次串联的输入层、不少于一个注意力层、不少于一个三维卷积长短期记忆网络层、不少于一个三维反卷积长短期记忆网络层和输出层;所述注意力层用于对接收到的图像特征执行卷积注意力计算得到注意力图像特征。三维卷积长短期记忆网络层和三维反卷积长短期记忆网络层用于根据接收的图像特征进行三维图像预测。
如图4所示,为一个实施例中图像预测神经网络的网络拓扑图,图4中的图像预测神经网络中依次串联输入层Input、卷积注意力层ConvAttention、三维卷积长短期记忆网络层ConvLSTM3D、卷积注意力层ConvAttention、3个三维卷积长短期记忆网络层ConvLSTM3D、2个三维反卷积长短期记忆网络层ConvLSTM3DT、卷积注意力层ConvAttention、三维反卷积长短期记忆网络层ConvLSTM3DT、卷积注意力层ConvAttention、2个三维反卷积长短期记忆网络层ConvLSTM3DT和输出层Output。图4包含网络基本配置及处理后张量的尺寸(网络中每层处理后的输出成为张量)。“2*2*2*64”指卷积核的尺寸是2*2*2,步长是2,卷积核个数是64,每层都需要进行补零操作。例如,“[l/2,w/2,h/2,64]”指的是经过处理的张量的尺寸。三维卷积长短期记忆网络层与三维反卷积长短期记忆网络层结合的结构因本身是时序结构,能更好地学习目标三维图像的运动时序关系。引入卷积注意力层能促进网络更关注三维图像的主要部分,提升网络学习和预测三维图像的能力。
例如,假设输入2个三维图像,其尺寸都为[l,w,h,c],l、w、h、c分别指的是长、宽、高和通道数目。经过连接和ConvAttention处理后得到张量尺寸为[l,w,h,c*2],经过64个2*2*2卷积核步长为2的ConvLSTM3D处理后得到张量尺寸为[l/2,w/2,h/2,64],经过ConvAttention处理和128个卷积核的ConvLSTM3D处理后得到张量尺寸为[l/4,w/4,h/4,128],经过256个2*2*2卷积核步长为2的ConvLSTM3D处理后得到张量尺寸为[l/8,w/8,h/8,256],经过512个2*2*2卷积核步长为2的ConvLSTM3D处理后得到张量尺寸为[l/16,w/16,h/16,512],经过1024个2*2*2卷积核步长为2的ConvLSTM3DT处理后得到张量尺寸为[l/8,w/8,h/8,1024],经过512个2*2*2卷积核步长为2的ConvLSTM3DT处理后得到张量尺寸为[l/4,w/4,h/4,512],经过ConvAttention处理和256个卷积核的ConvLSTM3DT处理后得到张量尺寸为[l/2,w/2,h/2,256],经过ConvAttention处理和128个卷积核的ConvLSTM3DT处理后得到张量尺寸为[l,w,h,128],经过c个2*2*2卷积核步长为2的ConvLSTM3DT处理后得到张量尺寸为[l,w,h,c],输出该张量。
在一个实施例中,如图5所示,根据当前时刻预测三维图像和当前时刻三维图像,判断当前时刻三维图像是否存在被遮挡部分或阴影部分,包括:
步骤502,从预设模板库中获取与当前时刻三维图像相适用的三维图像模板。
具体的,预设模板库需要先采集拍摄对象多张三维图像,再从预设模板库中获取与当前时刻三维图像相适用的三维图像模板。
步骤504,根据预设的相关值计算公式,获取当前时刻三维图像和三维图像模板之间的第一相关值;根据预设的相关值计算公式,获取当前时刻预测三维图像和三维图像模板之间的第二相关值。
具体的,通过预设的相关值计算公式,能够获取各三维子图像和各三维图像模板之间的第一相关值集合,选择第一相关值集合的最大值作为第一相关值。同理,通过预设的相关值计算公式,能够获取还原后的各三维子图像和各三维图像模板之间的第二相关值集合,选择第二相关值集合的最大值作为第二相关值。
其中,预设的相关值计算公式为:
其中,x、y、z分别是三维图像I的三维坐标;W是三维图像模板,s、t、u分别是W的三维边界值;C是三维图像I与三维图像模板的相关值。
步骤506,比较第一相关值和第二相关值的大小,若第一相关值大于第二相关值,判定当前时刻三维图像中不存在被遮挡部分或阴影部分;若第一相关值小于第二相关值,判定当前时刻三维图像中存在被遮挡部分或阴影部分。
具体地,在获取第一相关值和第二相关值以后,需要根据第一相关值和第二相关值的大小判断当前时刻三维图像是否被遮挡。若第一相关值大于第二相关值,证明当前时刻三维图像与对应三维图像模板的相关性大于当前时刻预测三维图像与对应三维图像模板之间的相关性,判定当前时刻三维图像中不存在被遮挡部分或阴影部分。反之,若第一相关值小于第二相关值,证明当前时刻三维图像与对应三维图像模板的相关性小于当前时刻预测三维图像与对应三维图像模板之间的相关性;判定当前时刻三维图像中存在被遮挡部分或阴影部分。
在一个实施例中,方法还包括:若当前时刻三维图像不存在被遮挡部分且不存在阴影部分,输出当前时刻三维图像。
具体的,若原本当前时刻三维图像就不存在被遮挡部分且不存在阴影部分,则当前时刻的图像无需被预测或还原,故直接输出当前时刻三维图像。
在一个实施例中,如图6所示,方法还包括:获取当前时刻的后一个连续时刻的三维图像(先图像采集,再三维重建);将输出的当前时刻预测三维图像和当前时刻的前一个连续时刻的三维图像输入预设的图像预测神经网络,得到当前时刻的后一个连续时刻的预测三维图像;根据当前时刻的后一个连续时刻的预测三维图像和当前时刻的后一个连续时刻的三维图像,判断当前时刻的后一个连续时刻的三维图像是否存在被遮挡部分或阴影部分;若当前时刻的后一个连续时刻的三维图像存在被遮挡部分或阴影部分,输出当前时刻的后一个连续时刻的预测三维图像;重复预测直至输出预设最后时刻的预测三维图像。
具体的,在实际应用场景中,往往需要预测的连续时刻大于三个连续时刻,需要对当前时刻之后的连续时刻进行连续的预测生成三维图像,直到输出预设最后时刻的预测三维图像。
可选的,如图7所示,图7是在工业环境中,工件在传送带上移动,工件在t2时刻发生遮挡,本实施例可以通过t0和t1时刻采集的三维图像预测出t2时刻工件的三维预测图像。由于t2时刻确实发生了遮挡,所以输出t2时刻工件的三维预测图像。然后根据t1时刻采集的三维图像和t2时刻预测的三维预测图像预测出t3时刻工件的三维预测图像,判断t3时刻采集的三维图像是否存在被遮挡部分或阴影部分,输出t3时刻的三维图像或三维预测图像;例如t3时刻采集的三维图像不存在被遮挡部分或阴影部分,则输出t3时刻的三维图像。进一步,根据t2时刻工件的三维预测图像和t3时刻的三维图像可以得到t4时刻的三维预测图像,例如t4时刻采集的三维图像存在阴影部分,则输出t4时刻的三维预测图像。接着根据t3时刻工件的三维图像和t4时刻的三维预测图像得到t5时刻的三维预测图像,若t5时刻是预设最后时刻,则判断t5时刻采集的三维图像是否存在被遮挡部分或阴影部分,输出t5时刻的三维图像或三维预测图像,若t5时刻不是预设最后时刻,则继续进行下一时刻的预测。本实施例中,工业机器人可以通过生成的三维预测图像引导到被遮挡的位置完成操作。
可选的,如图8所示,图8是在智能辅助驾驶环境中,刚开始只有汽车2在汽车1前面驾驶,汽车3逐渐驶入汽车1的相机视野范围。在t0时刻,汽车3在汽车1视野范围内只有局部三维图像数据。到t1时刻,随着各个汽车的行驶,汽车3在汽车1视野范围内占比进一步扩大。通过t0时刻汽车1采集到的汽车3的三维图像i0和t1时刻汽车1采集到的汽车3的三维图像i1以预测t2时刻汽车3被汽车1所采集的三维图像i3,进一步的,在连续时刻中进行预测图像的连续生成,得到i4、i5、i6……。本实施例中,连续预测得到的汽车3被汽车1所采集的图像可以提示汽车1提前减速,保证驾驶安全。
本实施例中,通过获取当前时刻的后一个连续时刻的三维图像;将输出的当前时刻预测三维图像和当前时刻的前一个连续时刻的三维图像输入预设的图像预测神经网络,得到当前时刻的后一个连续时刻的预测三维图像;根据当前时刻的后一个连续时刻的预测三维图像和当前时刻的后一个连续时刻的三维图像,判断当前时刻的后一个连续时刻的三维图像是否存在被遮挡部分或阴影部分;若当前时刻的后一个连续时刻的三维图像存在被遮挡部分或阴影部分,输出当前时刻的后一个连续时刻的预测三维图像;重复预测直至输出预设最后时刻的预测三维图像。能够利用时序信息对目标进行连续时刻的三维图像预测,并判断原三维图象中是否存在遮挡或者阴影,然后在判断原三维图像中存在遮挡或阴影时,根据判断结果选择输出预测三维图像,从而达到提高三维图像预测精度的目的。
应该理解的是,虽然图1-3、5-6的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1-3、5-6中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图9所示,提供了一种三维时序图像生成装置900,包括:图像获取模块901、图像预测模块902、图像判断模块903和图像输出模块904,其中:
图像获取模块901,用于获取当前时刻三维图像和当前时刻之前的两个连续时刻的三维图像。
图像预测模块902,用于将当前时刻之前的两个连续时刻三维图像输入预设的图像预测神经网络,获取当前时刻预测三维图像。
图像判断模块903,用于根据当前时刻预测三维图像和当前时刻三维图像,判断当前时刻三维图像是否存在被遮挡部分或阴影部分。
图像输出模块904,用于若当前时刻三维图像存在被遮挡部分或阴影部分,输出当前时刻预测三维图像。
在一个实施例中,图像获取模块901包括:
图像拍摄子模块,用于获取拍摄对象在当前时刻和当前时刻之前的两个连续时刻的图像。
三维重建子模块,用于对拍摄对象在当前时刻和当前时刻之前的两个连续时刻的图像进行三维重建,获取重建后的三维图像。
在一个实施例中,三维重建子模块还包括:
三维信息获取单元,用于根据拍摄对象在当前时刻和当前时刻之前的两个连续时刻的图像,获取拍摄对象在当前时刻和当前时刻之前的两个连续时刻的三维点云信息。
三维图像重建单元,用于根据拍摄对象在当前时刻和当前时刻之前的两个连续时刻的三维点云信息,对拍摄对象的三维图像进行三维重建,获取重建后的三维图像。
在一个实例中,图像预测模块902包括:
样本获取子模块,用于获取三个连续时刻的三维样本图像,包括第一时刻三维样本图像、第二时刻三维样本图像和第三时刻三维样本图像。
模型训练子模块,用于将第一时刻三维样本图像、第二时刻三维样本图像和第三时刻三维样本图像输入初始的图像预测神经网络,经过卷积注意力层、三维卷积长短期记忆网络层和三维反卷积长短期记忆网络层处理,得到第三时刻预测图像。
模型生成子模块,用于根据第三时刻三维样本图像和第三时刻三维预测图像调整初始的图像预测神经网络的网络权重,得到预设的图像预测神经网络。
在一个实施例中,图像判断模块903包括:
模板获取子模块,用于从预设模板库中获取与当前时刻三维图像相适用的三维图像模板。
相关值获取子模块,用于根据预设的相关值计算公式,获取当前时刻三维图像和三维图像模板之间的第一相关值;还用于根据预设的相关值计算公式,获取当前时刻预测三维图像和三维图像模板之间的第二相关值。
相关值比较子模块,用于比较第一相关值和第二相关值的大小,若第一相关值大于第二相关值,判定当前时刻三维图像中不存在被遮挡部分或阴影部分;若第一相关值小于第二相关值,判定当前时刻三维图像中存在被遮挡部分或阴影部分。
在一个实施例中,图像输出模块904还用于若当前时刻三维图像不存在被遮挡部分且不存在阴影部分,输出当前时刻三维图像。
在一个实施例中,还包括:
图像获取模块901,用于获取当前时刻的后一个连续时刻的三维图像。
图像预测模块902,用于将输出的当前时刻预测三维图像和当前时刻的前一个连续时刻的三维图像输入预设的图像预测神经网络,得到当前时刻的后一个连续时刻的预测三维图像。
图像判断模块903,用于根据当前时刻的后一个连续时刻的预测三维图像和当前时刻的后一个连续时刻的三维图像,判断当前时刻的后一个连续时刻的三维图像是否存在被遮挡部分或阴影部分。
图像输出模块904,用于若当前时刻的后一个连续时刻的三维图像存在被遮挡部分或阴影部分,输出当前时刻的后一个连续时刻的预测三维图像;
图像获取模块901、图像预测模块902、图像判断模块903和图像输出模块904重复预测直至输出预设最后时刻的预测三维图像。
关于三维时序图像生成装置的具体限定可以参见上文中对于三维时序图像生成方法的限定,在此不再赘述。上述三维时序图像生成装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图10所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、运营商网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种三维时序图像生成方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取当前时刻三维图像和当前时刻之前的两个连续时刻的三维图像;
将当前时刻之前的两个连续时刻三维图像输入预设的图像预测神经网络,得到当前时刻预测三维图像;
根据当前时刻预测三维图像和当前时刻三维图像,判断当前时刻三维图像是否存在被遮挡部分或阴影部分;
若当前时刻三维图像存在被遮挡部分或阴影部分,输出当前时刻预测三维图像。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取拍摄对象在当前时刻和当前时刻之前的两个连续时刻的图像;
对拍摄对象在当前时刻和当前时刻之前的两个连续时刻的图像进行三维重建,获取重建后的三维图像。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
根据拍摄对象在当前时刻和当前时刻之前的两个连续时刻的图像,获取拍摄对象在当前时刻和当前时刻之前的两个连续时刻的三维点云信息;
根据拍摄对象在当前时刻和当前时刻之前的两个连续时刻的三维点云信息,对拍摄对象的三维图像进行三维重建,获取重建后的三维图像。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取三个连续时刻的三维样本图像,包括第一时刻三维样本图像、第二时刻三维样本图像和第三时刻三维样本图像;
将第一时刻三维样本图像、第二时刻三维样本图像和第三时刻三维样本图像输入初始的图像预测神经网络,经过卷积注意力层、三维卷积长短期记忆网络层和三维反卷积长短期记忆网络层处理,得到第三时刻预测图像;
根据第三时刻三维样本图像和第三时刻三维预测图像调整初始的图像预测神经网络的网络权重,得到预设的图像预测神经网络。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
从预设模板库中获取与当前时刻三维图像相适用的三维图像模板;
根据预设的相关值计算公式,获取当前时刻三维图像和三维图像模板之间的第一相关值;
根据预设的相关值计算公式,获取当前时刻预测三维图像和三维图像模板之间的第二相关值;
比较第一相关值和第二相关值的大小,
若第一相关值大于第二相关值,判定当前时刻三维图像中不存在被遮挡部分或阴影部分;
若第一相关值小于第二相关值,判定当前时刻三维图像中存在被遮挡部分或阴影部分。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
若当前时刻三维图像不存在被遮挡部分且不存在阴影部分,输出当前时刻三维图像。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取当前时刻的后一个连续时刻的三维图像;
将输出的当前时刻预测三维图像和当前时刻的前一个连续时刻的三维图像输入预设的图像预测神经网络,得到当前时刻的后一个连续时刻的预测三维图像;
根据当前时刻的后一个连续时刻的预测三维图像和当前时刻的后一个连续时刻的三维图像,判断当前时刻的后一个连续时刻的三维图像是否存在被遮挡部分或阴影部分;
若当前时刻的后一个连续时刻的三维图像存在被遮挡部分或阴影部分,输出当前时刻的后一个连续时刻的预测三维图像;
重复预测直至输出预设最后时刻的预测三维图像。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取当前时刻三维图像和当前时刻之前的两个连续时刻的三维图像;
将当前时刻之前的两个连续时刻三维图像输入预设的图像预测神经网络,得到当前时刻预测三维图像;
根据当前时刻预测三维图像和当前时刻三维图像,判断当前时刻三维图像是否存在被遮挡部分或阴影部分;
若当前时刻三维图像存在被遮挡部分或阴影部分,输出当前时刻预测三维图像。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取拍摄对象在当前时刻和当前时刻之前的两个连续时刻的图像;
对拍摄对象在当前时刻和当前时刻之前的两个连续时刻的图像进行三维重建,获取重建后的三维图像。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据拍摄对象在当前时刻和当前时刻之前的两个连续时刻的图像,获取拍摄对象在当前时刻和当前时刻之前的两个连续时刻的三维点云信息;
根据拍摄对象在当前时刻和当前时刻之前的两个连续时刻的三维点云信息,对拍摄对象的三维图像进行三维重建,获取重建后的三维图像。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取三个连续时刻的三维样本图像,包括第一时刻三维样本图像、第二时刻三维样本图像和第三时刻三维样本图像;
将第一时刻三维样本图像、第二时刻三维样本图像和第三时刻三维样本图像输入初始的图像预测神经网络,经过卷积注意力层、三维卷积长短期记忆网络层和三维反卷积长短期记忆网络层处理,得到第三时刻预测图像;
根据第三时刻三维样本图像和第三时刻三维预测图像调整初始的图像预测神经网络的网络权重,得到预设的图像预测神经网络。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
从预设模板库中获取与当前时刻三维图像相适用的三维图像模板;
根据预设的相关值计算公式,获取当前时刻三维图像和三维图像模板之间的第一相关值;
根据预设的相关值计算公式,获取当前时刻预测三维图像和三维图像模板之间的第二相关值;
比较第一相关值和第二相关值的大小,
若第一相关值大于第二相关值,判定当前时刻三维图像中不存在被遮挡部分或阴影部分;
若第一相关值小于第二相关值,判定当前时刻三维图像中存在被遮挡部分或阴影部分。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若当前时刻三维图像不存在被遮挡部分且不存在阴影部分,输出当前时刻三维图像。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取当前时刻的后一个连续时刻的三维图像;
将输出的当前时刻预测三维图像和当前时刻的前一个连续时刻的三维图像输入预设的图像预测神经网络,得到当前时刻的后一个连续时刻的预测三维图像;
根据当前时刻的后一个连续时刻的预测三维图像和当前时刻的后一个连续时刻的三维图像,判断当前时刻的后一个连续时刻的三维图像是否存在被遮挡部分或阴影部分;
若当前时刻的后一个连续时刻的三维图像存在被遮挡部分或阴影部分,输出当前时刻的后一个连续时刻的预测三维图像;
重复预测直至输出预设最后时刻的预测三维图像。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
- 三维时序图像生成方法、装置、计算机设备和存储介质
- 手势三维图像生成方法、装置、计算机设备及存储介质