CN109934307B - 视差图预测模型训练方法、预测方法、装置及电子设备 - Google Patents

视差图预测模型训练方法、预测方法、装置及电子设备 Download PDF

Info

Publication number
CN109934307B
CN109934307B CN201910381648.0A CN201910381648A CN109934307B CN 109934307 B CN109934307 B CN 109934307B CN 201910381648 A CN201910381648 A CN 201910381648A CN 109934307 B CN109934307 B CN 109934307B
Authority
CN
China
Prior art keywords
disparity map
predicted
basic
network
samples
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.)
Active
Application number
CN201910381648.0A
Other languages
English (en)
Other versions
CN109934307A (zh
Inventor
吴方印
陈平
杨东
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century Science and Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN201910381648.0A priority Critical patent/CN109934307B/zh
Publication of CN109934307A publication Critical patent/CN109934307A/zh
Application granted granted Critical
Publication of CN109934307B publication Critical patent/CN109934307B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Processing (AREA)

Abstract

本发明实施例提供了视差图预测模型训练方法、预测方法、装置及设备,可以获得3D片源样本集;用基础样本子集对初始视差图预测网络训练获得过渡视差图预测网络;用非基础样本子集对初始转换参数网络训练获得非基础样本子集分别对应的转换参数;将非基础样本子集的样本输入过渡视差图预测网络,获得过渡视差图预测网络预测的中间视差图;按非基础样本对应转换参数和视差图转换公式,将非基础样本的中间左视差图和中间右视差图转换为预测左视差图和预测右视差图;按预设损失函数公式和预设方法确定出视差图预测网络模型是否为训练好的视差图预测网络模型。可见,应用本发明实施例,提高了视差图预测模型预测出的视差图的准确性。

Description

视差图预测模型训练方法、预测方法、装置及电子设备
技术领域
本发明涉及2D图像转换为3D图像的技术领域,特别是涉及一种视差图预测模型的训练方法、视差图预测方法、装置及电子设备。
背景技术
目前,可以实现用一张2D图像转换成3D图像,通常的方法是:将2D图像做为左视图,输入预设的视差图预测模型,预测出左视差图或右视差图,根据预测的左视差图或右视差图获得预测的右视图,再用左视图和右视图转换成3D图像。
现在技术的视差图预测网络模型是用大量的3D图像对单一网络模型进行训练获得的,训练过程中仅对这一个网络模型进行训练。
发明人在实现本发明的过程中发现,现有技术至少存在如下问题:
在用现有技术的视差图预测网络模型预测出的视差图进行3D转换的时候,有时会出现立体效果不强的情况。出现这种情况的原因,则是由于用现有技术的视差图预测模型预测出的视差图不够准确造成的。
发明内容
本发明实施例的目的在于提供一种视差图预测的方法、装置及电子设备,以提高视差图预测的准确性。具体技术方案如下:
第一方面,本发明实施例提供了一种视差图预测网络模型的训练方法,所述方法包括:
获得3D片源训练样本集,所述训练样本集中包含:多个不同双目相机对应的样本子集,每个样本子集由同一个双目相机拍摄的多个3D片源构成;其中,由预设的基础双目相机拍摄的多个3D片源构成的样本子集被设置为基础样本子集,由其他各个非基础双目相机拍摄的多个3D片源的各个样本子集均被设置为非基础样本子集;
用基础样本子集中的多个基础样本,对初始视差图预测网络进行训练获得过渡视差图预测网络;
用各个非基础样本子集中的多个非基础样本,分别对初始转换参数网络进行训练,获得各个非基础样本子集分别对应的转换参数;所述转换参数为:将所述过渡视差图预测网络输出的基于基础双目相机的中间视差图,转换为基于各个非基础双目相机的视差图的参数;
用各个非基础样本子集中的多个非基础样本及其对应的转换参数,对所述过渡视差图预测网络进行训练,获得最终的视差图预测网络;其中,训练过程中使用的损失函数值,是基于第一预测视差图,按预设的第一损失函数公式计算获得的;所述第一预测视差图为:用所述转换参数对所述过渡视差图预测网络输出的基于基础双目相机的中间视差图进行转换,获得的基于非基础双目相机的视差图。
可选的,所述所述用各个非基础样本子集中的多个非基础样本及其对应的转换参数,对所述过渡视差图预测网络进行训练,获得最终的视差图预测网络的步骤,包括:
从各个非基础样本子集中选择预设数量个第一非基础样本,分别输入至所述过渡视差图预测网络,分别获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,分别作为各个第一非基础样本的第一中间左视差图和第一中间右视差图;
按各个所述第一非基础样本对应的转换参数和预设的视差图转换公式,分别将所述第一非基础样本的第一中间左视差图和第一中间右视差图转换为第一预测左视差图和第一预测右视差图;
基于各个所述第一非基础样本的第一预测左视差图和第一预测右视差图,按预设的第一损失函数公式,判断所述过渡视差图预测网络是否收敛至稳定;
如果收敛至稳定,则将训练次数的数量增加一次,并判断是否达到预设的训练次数;如果没达到预设的训练次数,则返回所述从各个非基础样本子集中选择预设数量个第一非基础样本,分别输入至所述过渡视差图预测网络,分别获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,分别作为第一非基础样本的第一中间左视差图和第一中间右视差图的步骤;如果达到预设的训练次数,则将所述过渡视差图预测网络,确定为视差图预测网络模型;
如果未收敛至稳定,则将训练次数的数量增加一次,并调整所述过渡视差图预测网络的网络参数,返回所述从各个非基础样本子集中选择预设数量个第一非基础样本,分别输入至所述过渡视差图预测网络,分别获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,分别作为第一非基础样本的第一中间左视差图和第一中间右视差图的步骤。
可选的,所述用基础样本子集中的多个基础样本,对初始视差图预测网络进行训练获得过渡视差图预测网络的步骤,包括:
从所述基础样本子集中选择预设数量个当前基础样本,分别输入初始视差图预测网络,分别获得当前基础样本的预测左视差图和预测右视差图;
基于各个所述当前基础样本的预测左视差图和预测右视差图,按预设的第一损失函数公式,判断所述过渡视差图预测网络是否收敛至稳定;
如果收敛至稳定,则将训练次数的数量增加一次,并判断是否达到预设的训练次数;如果没达到预设的训练次数,则返回所述从所述基础样本子集中选择预设数量个当前基础样本,分别输入初始视差图预测网络,分别获得当前基础样本的预测左视差图和预测右视差图的步骤;如果达到预设的训练次数,则将所述初始视差图预测网络,确定为过渡视差图预测网络;
如果未收敛至稳定,则将训练次数的数量增加一次,并调整所述初始视差图预测网络的网络参数,返回所述从所述基础样本子集中选择预设数量个当前基础样本,分别输入初始视差图预测网络,分别获得当前基础样本的预测左视差图和预测右视差图的步骤。
可选的,所述从所述基础样本子集中选择预设数量个当前基础样本,分别输入初始视差图预测网络,分别获得当前基础样本的预测左视差图和预测右视差图的步骤,包括:
从所述基础样本子集中选择预设数量个当前基础样本的左视图,分别输入初始视差图预测网络,分别获得当前基础样本的预测左视差图和预测右视差图;
所述基于各个所述当前基础样本的预测左视差图和预测右视差图,按预设的第一损失函数公式,判断所述过渡视差图预测网络是否收敛至稳定的步骤,包括:
基于各个所述当前基础样本的预测左视差图或预测右视差图,分别获得当前基础样本的预测左视图和预测右视图;根据各个预测右视图和实际右视图,按所述预设的第一损失函数公式,计算右视图的第一损失值,根据各个预测左视图和实际左视图,按所述预设的第一损失函数公式,计算左视图的第一损失值;
根据所述右视图的第一损失值和左视图的第一损失值,判断所述过渡视差图预测网络是否收敛至稳定。
可选的,所述用各个非基础样本子集中的多个非基础样本,分别对初始转换参数网络进行训练,获得各个非基础样本子集分别对应的转换参数的步骤,包括:
针对每个非基础样本子集,按如下步骤获得对应的转换参数:
从当前非基础样本子集中选择预设数量个第二非基础样本,分别输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数;
将各个所述第二非基础样本输入所述过渡视差图预测网络,分别获得第二非基础样本的第二中间左视差图和第二中间右视差图;
按各个所述第二非基础样本对应的转换参数和预设的视差图转换公式,将各个所述第二中间左视差图和第二中间右视差图转换为第二预测左视差图和第二预测右视差图;
基于各个所述第二预测左视差图和第二预测右视差图,按预设的第二损失函数公式,判断所述初始转换参数网络是否收敛至稳定;
如果收敛至稳定,则将训练次数的数量增加一次,并判断是否达到预设的训练次数;如果没达到预设的训练次数,则返回所述从当前非基础样本子集中选择预设数量个第二非基础样本,分别输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数的步骤;如果达到预设的次数,则将所述初始转换参数网络输出的当前转换参数,确定为当前非基础样本子集对应的转换参数;
如果未收敛至稳定,则将训练次数的数量增加一次,并调整所述初始转换参数网络的网络参数,返回所述从当前非基础样本子集中选择预设数量个第二非基础样本,分别输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数的步骤。
可选的,所述转换参数网络输出的转换参数为:第一转换参数和第二转换参数;
预设的视差图转换公式,为:D’=第一转换参数*D+第二转换参数,其中D为基于拍摄基础样本子集的相机预测的视差图,第一转换参数和第二转换参数为基于拍摄各个非基础样本子集的不同相机的视差图与基于拍摄基础样本子集的相机的视差图之间的转化关系,D’为各个非基础样本子集的不同相机的视差图。
可选的,所述从当前非基础样本子集中选择预设数量个第二非基础样本,输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数的步骤,包括:
从当前非基础样本子集中选择预设数量个第二非基础样本的左视图和右视图,分别输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数;
所述将各个所述第二非基础样本输入所述过渡视差图预测网络,分别获得各个第二非基础样本的第二中间左视差图和第二中间右视差图的步骤,包括:
将所述第二非基础样本的左视图输入所述过渡视差图预测网络,获得第二非基础样本的预测左视差图和预测右视差图,将其中预测左视差图作为第二中间左视差图;将其中预测右视差图作为第二中间右视差图。
可选的,所述基于各个所述第二预测左视差图和第二预测右视差图,按预设的第二损失函数公式,判断所述初始转换参数网络是否收敛至稳定的步骤,包括:
基于各个所述第二预测左视差图和第二预测右视差图,获得第二非基础样本的预测左视图和预测右视图;
根据预测右视图和实际右视图,按所述预设的第二损失函数公式,计算右视图的第二损失值;根据预测左视图和实际左视图,按所述预设的第二损失函数公式,计算左视图的第二损失值;
根据所述右视图的第二损失值和左视图的第二损失值,判断所述初始转换参数网络是否收敛至稳定。
可选的,所述第二预设损失函数包含:SSIM+L1损失函数和一阶梯度损失函数;
所述根据预测右视图和实际右视图,按所述预设的第二损失函数公式,计算右视图的第二损失值;根据预测左视图和实际左视图,按所述预设的第二损失函数公式,计算左视图的第二损失值的步骤,包括:
根据预测右视图和实际右视图计算出SSIM+L1损失函数值
Figure BDA0002053548470000062
和一阶梯度损失函数
Figure BDA0002053548470000063
根据预测左视图和实际左视图计算出SSIM+L1损失函数值
Figure BDA0002053548470000064
和一阶梯度损失函数
Figure BDA0002053548470000065
所述根据所述右视图的第二损失值和左视图的第二损失值,判断所述初始转换参数网络是否收敛至稳定的步骤,包括:
Figure BDA0002053548470000061
计算最终的损失值;
根据最终损失值判断所述初始转换参数网络是否收敛至稳定。
可选的,
所述转换参数网络,为:基于VGG网络结构的网络;其包括:第一编码部分和参数提取部分;其中,
所述第一编码部分,包含:预设数量的卷积层;对输入的左视图和右视图进行合并后,对合并的图像进行预设层数的卷积,获得最后一层卷积层输出的下采样图像;
所述参数提取部分,包含:一层平均池化层和三层全连接层;对所述下采样图像进行一层平均池化和三层全连接处理,输出第一转换参数和第二转换参数。
可选的,所述从各个非基础样本子集中选择预设数量个第一非基础样本输入至所述过渡视差图预测网络,获得所述过渡视差图预测网络输出的预测视差图,作为第一非基础样本的第一中间左视差图和第一中间右视差图的步骤,包括:
从任一个非基础样本子集中选择预设数量个第一非基础样本的左视图输入至所述过渡视差图预测网络,获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,作为第一非基础样本的第一中间左视差图和第一中间右视差图;
所述基于各个所述第一非基础样本的第一预测左视差图和第一预测右视差图,按预设的第一损失函数公式,判断所述过渡视差图预测网络是否收敛至稳定的步骤,包括:
基于所述第一预测左视差图和第一预测右视差图,获得第一非基础样本的预测左视图和预测右视图;根据预测右视图和实际右视图,按所述预设的第一损失函数公式,计算右视图的第一损失值;根据预测左视图和实际左视图,按所述预设的第一损失函数公式,计算左视图的第一损失值;
根据所述右视图的第一损失值和左视图的第一损失值,判断所述过渡视差图预测网络是否收敛至稳定。
可选的,所述视差图预测网络为:基于VGG网络结构或者U-net网络结构的网络;其包括:第二编码部分和解码部分;其中,
所述第二编码部分,包含:预设数量的卷积层;对输入的左视图进行预设层数的卷积,获得最后一层卷积层输出的第二编码下采样图像;
所述解码部分,包含:预设数量的上采样和卷积层;根据各个卷积层输出的各层的特征图像,通过上采样的双线性插值和卷积层处理,输出预测左视差图和预测右视差图。
第二方面,本发明实施例提供了一种视差图预测的方法,所述方法包括:
获得待进行预测的单目视图;
将单目视图,输入到预先训练好的视差图预测网络模型;所述视差图预测网络模型为采用上述任一项视差图预测网络模型的方法训练获得的;
获取视差图预测网络模型预测的双目视差图。
第三方面,本发明实施例提供了一种二维2D图像转换为三维3D图像的方法,所述方法包括:
获取待转换为3D图像的2D图像;
将所述2D图像作为用于生成3D图像的第一单目视图,输入到预先训练好的视差图预测网络模型;所述视差图预测网络模型为采用视差图预测网络模型的训练方法任一项的方法训练获得的;所述第一单目视图为左视图或右视图;
获取视差图预测网络模型输出的第一预测视差图;
基于所述第一预测视差图,获得第二单目视图;所述第二单目视图为与第一单目视图对应的右视图或左视图;
基于所述第一单目视图和所述第二单目视图,生成3D图像。
第四方面,本发明实施例提供了一种视差图预测网络模型的训练装置,所述装置包括:
训练样本获得单元,用于获得3D片源训练样本集,所述训练样本集中包含:多个不同双目相机对应的样本子集,每个样本子集由同一个双目相机拍摄的多个3D片源构成;其中,由预设的基础双目相机拍摄的多个3D片源构成的样本子集被设置为基础样本子集,由其他各个非基础双目相机拍摄的多个3D片源的各个样本子集均被设置为非基础样本子集;
过渡视差图预测网络获得单元,用于用基础样本子集中的多个基础样本,对初始视差图预测网络进行训练获得过渡视差图预测网络;
非基础样本转换参数获得单元,用于用各个非基础样本子集中的多个非基础样本,分别对初始转换参数网络进行训练,获得各个非基础样本子集分别对应的转换参数;所述转换参数为:将所述过渡视差图预测网络输出的基于基础双目相机的中间视差图,转换为基于各个非基础双目相机的视差图的参数;
最终视差图网络获得单元,用于用各个非基础样本子集中的多个非基础样本及其对应的转换参数,对所述过渡视差图预测网络进行训练,获得最终的视差图预测网络;其中,训练过程中使用的损失函数值,是基于第一预测视差图,按预设的第一损失函数公式计算获得的;所述第一预测视差图为:用所述转换参数对所述过渡视差图预测网络输出的基于基础双目相机的中间视差图进行转换,获得的基于非基础双目相机的视差图。
可选的,所述最终视差图网络获得单元,包括:
中间视差图获得模块,用于从各个非基础样本子集中选择预设数量个第一非基础样本,分别输入至所述过渡视差图预测网络,分别获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,分别作为各个第一非基础样本的第一中间左视差图和第一中间右视差图;
第一预测视差图转换模块,用于按各个所述第一非基础样本对应的转换参数和预设的视差图转换公式,分别将所述第一非基础样本的第一中间左视差图和第一中间右视差图转换为第一预测左视差图和第一预测右视差图;
过渡视差图预测网络判断模块,用于基于各个所述第一非基础样本的第一预测左视差图和第一预测右视差图,按预设的第一损失函数公式,判断所述过渡视差图预测网络是否收敛至稳定;
第一训练次数判断模块,用于如果收敛至稳定,则将训练次数的数量增加一次,并判断是否达到预设的训练次数;如果没达到预设的训练次数,则触发所述中间视差图获得模块执行所述从各个非基础样本子集中选择预设数量个第一非基础样本,分别输入至所述过渡视差图预测网络,分别获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,分别作为第一非基础样本的第一中间左视差图和第一中间右视差图;如果达到预设的训练次数,则将所述过渡视差图预测网络,确定为视差图预测网络模型;
过渡视差图预测网络网络参数调整模块,用于如果未收敛至稳定,则将训练次数的数量增加一次,并调整所述过渡视差图预测网络的网络参数,触发所述中间视差图获得模块执行所述从各个非基础样本子集中选择预设数量个第一非基础样本,分别输入至所述过渡视差图预测网络,分别获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,分别作为第一非基础样本的第一中间左视差图和第一中间右视差图。
可选的,所述过渡视差图预测网络获得单元,包括:
基础样本视差图获得模块,用于从所述基础样本子集中选择预设数量个当前基础样本,分别输入初始视差图预测网络,分别获得当前基础样本的预测左视差图和预测右视差图;
第一判断模块,用于基于各个所述当前基础样本的预测左视差图和预测右视差图,按预设的第一损失函数公式,判断所述过渡视差图预测网络是否收敛至稳定;
第一训练次数判断模块,用于如果收敛至稳定,则将训练次数的数量增加一次,并判断是否达到预设的训练次数;如果没达到预设的训练次数,则触发所述基础样本视差图获得模块执行所述从所述基础样本子集中选择预设数量个当前基础样本,分别输入初始视差图预测网络,分别获得当前基础样本的预测左视差图和预测右视差图的步骤;如果达到预设的训练次数,则将所述初始视差图预测网络,确定为过渡视差图预测网络;
过渡视差图预测网络的网络参数调整模块,用于如果未收敛至稳定,则将训练次数的数量增加一次,并调整所述初始视差图预测网络的网络参数,返回所述从所述基础样本子集中选择预设数量个当前基础样本,分别输入初始视差图预测网络,分别获得当前基础样本的预测左视差图和预测右视差图的步骤。
可选的,所述基础样本视差图获得模块,具体用于
从所述基础样本子集中选择预设数量个当前基础样本的左视图,分别输入初始视差图预测网络,分别获得当前基础样本的预测左视差图和预测右视差图;
所述基于各个所述当前基础样本的预测左视差图和预测右视差图,按预设的第一损失函数公式,判断所述过渡视差图预测网络是否收敛至稳定的步骤,包括:
基于各个所述当前基础样本的预测左视差图或预测右视差图,分别获得当前基础样本的预测左视图和预测右视图;根据各个预测右视图和实际右视图,按所述预设的第一损失函数公式,计算右视图的第一损失值,根据各个预测左视图和实际左视图,按所述预设的第一损失函数公式,计算左视图的第一损失值;
根据所述右视图的第一损失值和左视图的第一损失值,判断所述过渡视差图预测网络是否收敛至稳定。
可选的,所述非基础样本转换参数获得单元,包括:非基础样本子集转换参数获得模块;
所述非基础样本子集转换参数获得模块;
第二非基础样本转换参数子模块,用于从当前非基础样本子集中选择预设数量个第二非基础样本,分别输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数;
非基础样本中间视差图获得子模块,用于将各个所述第二非基础样本输入所述过渡视差图预测网络,分别获得第二非基础样本的第二中间左视差图和第二中间右视差图;
第二非基础样本转换参数子模块,用于按各个所述第二非基础样本对应的转换参数和预设的视差图转换公式,将各个所述第二中间左视差图和第二中间右视差图转换为第二预测左视差图和第二预测右视差图;
参数网络判断子模块,用于基于各个所述第二预测左视差图和第二预测右视差图,按预设的第二损失函数公式,判断所述初始转换参数网络是否收敛至稳定;
训练次数判断子模块,用于如果收敛至稳定,则将训练次数的数量增加一次,并判断是否达到预设的训练次数;如果没达到预设的训练次数,则触发所述第二非基础样本转换参数子模块执行所述从当前非基础样本子集中选择预设数量个第二非基础样本,分别输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数;如果达到预设的次数,则将所述初始转换参数网络输出的当前转换参数,确定为当前非基础样本子集对应的转换参数;
参数网络调整子模块,用于如果未收敛至稳定,则将训练次数的数量增加一次,并调整所述初始转换参数网络的网络参数,触发所述第二非基础样本转换参数子模块执行所述从当前非基础样本子集中选择预设数量个第二非基础样本,分别输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数。
可选的,所述转换参数网络输出的转换参数为:第一转换参数和第二转换参数;
预设的视差图转换公式,为:D’=第一转换参数*D+第二转换参数,其中D为基于拍摄基础样本子集的相机预测的视差图,第一转换参数和第二转换参数为基于拍摄各个非基础样本子集的不同相机的视差图与基于拍摄基础样本子集的相机的视差图之间的转化关系,D’为各个非基础样本子集的不同相机的视差图。
可选的,所述第二非基础样本转换参数子模块,具体用于
从当前非基础样本子集中选择预设数量个第二非基础样本的左视图和右视图,分别输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数;
所述非基础样本中间视差图获得子模块,具体用于:
将所述第二非基础样本的左视图输入所述过渡视差图预测网络,获得第二非基础样本的预测左视差图和预测右视差图,将其中预测左视差图作为第二中间左视差图;将其中预测右视差图作为第二中间右视差图。
可选的,所述参数网络判断子模块,包括:
预测视图获得子模块,用于基于各个所述第二预测左视差图和第二预测右视差图,获得第二非基础样本的预测左视图和预测右视图;
损失值计算子模块,用于根据预测右视图和实际右视图,按所述预设的第二损失函数公式,计算右视图的第二损失值;根据预测左视图和实际左视图,按所述预设的第二损失函数公式,计算左视图的第二损失值;
参数网络收敛判断子模块,用于根据所述右视图的第二损失值和左视图的第二损失值,判断所述初始转换参数网络是否收敛至稳定。
可选的,所述第二预设损失函数包含:SSIM+L1损失函数和一阶梯度损失函数;
损失值计算子模块,具体用于:
根据预测右视图和实际右视图计算出SSIM+L1损失函数值
Figure BDA0002053548470000121
和一阶梯度损失函数
Figure BDA0002053548470000131
根据预测左视图和实际左视图计算出SSIM+L1损失函数值
Figure BDA0002053548470000132
和一阶梯度损失函数
Figure BDA0002053548470000133
参数网络收敛判断子模块,具体用于:
Figure BDA0002053548470000134
计算最终的损失值;
根据最终损失值判断所述初始转换参数网络是否收敛至稳定。
可选的,所述转换参数网络,为:基于VGG网络结构的网络;其包括:第一编码部分和参数提取部分;其中,
所述第一编码部分,包含:预设数量的卷积层;对输入的左视图和右视图进行合并后,对合并的图像进行预设层数的卷积,获得最后一层卷积层输出的下采样图像;
所述参数提取部分,包含:一层平均池化层和三层全连接层;对所述下采样图像进行一层平均池化和三层全连接处理,输出第一转换参数和第二转换参数。
可选的,所述中间视差图获得单元,具体用于:
从任一个非基础样本子集中选择预设数量个第一非基础样本的左视图输入至所述过渡视差图预测网络,获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,作为第一非基础样本的第一中间左视差图和第一中间右视差图;
所述基于各个所述第一非基础样本的第一预测左视差图和第一预测右视差图,按预设的第一损失函数公式,判断所述过渡视差图预测网络是否收敛至稳定的步骤,包括:
基于所述第一预测左视差图和第一预测右视差图,获得第一非基础样本的预测左视图和预测右视图;根据预测右视图和实际右视图,按所述预设的第一损失函数公式,计算右视图的第一损失值;根据预测左视图和实际左视图,按所述预设的第一损失函数公式,计算左视图的第一损失值;
根据所述右视图的第一损失值和左视图的第一损失值,判断所述过渡视差图预测网络是否收敛至稳定。
可选的,所述视差图预测网络为:基于VGG网络结构或者U-net网络结构的网络;其包括:第二编码部分和解码部分;其中,
所述第二编码部分,包含:预设数量的卷积层;对输入的左视图进行预设层数的卷积,获得最后一层卷积层输出的第二编码下采样图像;
所述解码部分,包含:预设数量的上采样和卷积层;根据各个卷积层输出的各层的特征图像,通过上采样的双线性插值和卷积层处理,输出预测左视差图和预测右视差图。
第五方面,本发明实施例提供了一种视差图预测的装置,所述装置包括:
单目视图获得单元,用于获得待进行预测的单目视图;
单目视图输入单元,用于将单目视图,输入到预先训练好的视差图预测网络模型;所述视差图预测网络模型为采用上述任一项的训练装置训练获得的;
双目视差图获得单元,用于获取视差图预测网络模型预测的双目视差图。
第五方面,本发明实施例提供了一种二维2D图像转换为三维3D图像的装置,所述装置包括:
待转换图像获取单元,用于获取待转换为3D图像的2D图像;
2D图像输入单元,用于将所述2D图像作为用于生成3D图像的第一单目视图,输入到预先训练好的视差图预测网络模型;所述视差图预测网络模型为采用上述任一项视差图预测网络模型的训练方法训练获得的;所述第一单目视图为左视图或右视图;
第一预测视差图获取单元,用于获取视差图预测网络模型输出的第一预测视差图;
第二单目视图获得单元,用于基于所述第一预测视差图,获得第二单目视图;所述第二单目视图为与第一单目视图对应的右视图或左视图;
3D图像生成单元,用于基于所述第一单目视图和所述第二单目视图,生成3D图像。
第六方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一视差图预测网络模型的训练方法的步骤;
第七方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一视差图预测方法的步骤。
第八方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述二维2D图像转换为三维3D图像方法的步骤。
本发明实施还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一视差图预测网络模型的训练方法的步骤;或实现上述任一视差图预测方法的步骤;或实现上述二维2D图像转换为三维3D图像方法的步骤。
本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一视差图预测网络模型的训练方法;或实现上述任一视差图预测方法;或实现上述二维2D图像转换为三维3D图像方法。
本发明实施例有益效果:
本发明实施例提供的一种视差图预测模型训练方法、预测方法、装置及电子设备,可以获得3D片源训练样本集,所述训练样本集中包含:多个不同双目相机对应的样本子集,每个样本子集由同一个双目相机拍摄的多个3D片源构成;其中,由预设的基础双目相机拍摄的多个3D片源构成的样本子集被设置为基础样本子集,由其他各个非基础双目相机拍摄的多个3D片源的各个样本子集均被设置为非基础样本子集;用基础样本子集中的多个基础样本,对初始视差图预测网络进行训练获得过渡视差图预测网络;用各个非基础样本子集中的多个非基础样本,分别对初始转换参数网络进行训练,获得各个非基础样本子集分别对应的转换参数;所述转换参数为:将所述过渡视差图预测网络输出的基于基础双目相机的中间视差图,转换为基于各个非基础双目相机的视差图的参数;用各个非基础样本子集中的多个非基础样本及其对应的转换参数,对所述过渡视差图预测网络进行训练,获得最终的视差图预测网络;其中,训练过程中使用的损失函数值,是基于第一预测视差图,按预设的第一损失函数公式计算获得的;所述第一预测视差图为:用所述转换参数对所述过渡视差图预测网络输出的基于基础双目相机的中间视差图进行转换,获得的基于非基础双目相机的视差图。可见,应用本发明实施例,不像现有技术,对单一网络模型进行训练,而是对初始视差图预测网络进行训练和初始转换参数网络交替训练,引入了相机参数,解决了视差图预测网络在训练过程中,因不同基础样本子集来自于不同相机对训练所造成干扰,提高了视差图预测模型预测出的视差图的准确性,在用视差图预测网络模型预测出的视差图进行3D转换的时候立体效果更强。
当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种视差图预测网络模型的训练方法的一种流程图;
图2为本发明实施例提供的一种视差图预测网络模型的训练方法的另一种流程图;
图3为本发明实施例提供的对初始视差图预测网络训练的一种流程图;
图4为本发明实施例提供的基于VGG网络结构或者U-net网络结构的视差图预测网络示意图;
图5为本发明实施例提供的对初始转换参数网络模型的一种训练流程图。
图6为本发明实施例提供的转换参数网络结构的示意图;
图7为本发明实施例提供的视差图预测网络模型和相机参数预测网络的训练原理图;
图8为本发明实施例提供的一种视差图预测方法的一种流程图;
图9为本发明实施例提供的一种二维2D图像转换为三维3D图像的方法的一种流程图;
图10为本发明实施例提供一种视差图预测网络模型的训练装置的结构示意图;
图11为本发明实施例提供一种视差图预测的装置的结构示意图;
图12为本发明实施例提供的一种二维2D图像转换为三维3D图像的装置的结构示意图;
图13为本发明实施例提供的一种电子设备的结构示意图;
图14为本发明实施例提供的另一种电子设备的结构示意图;
图15为本发明实施例提供的再一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了提高视差图预测的准确性,本发明实施例提供了视差图预测模型训练方法、预测方法、装置及电子设备。
本发明实施例所提供的视差图预测模型训练方法和预测方法可以应用于任意需要对视差图预测模型训练和预测的电子设备,如:电脑或移动终端等,在此不做具体限定。为了描述方便,以下简称电子设备。
本发明实施例提供的视差图预测网络模型的训练方法,如图1所示,该方法的具体处理流程包括:
步骤S101,获得3D片源训练样本集,所述训练样本集中包含:多个不同双目相机对应的样本子集,每个样本子集由同一个双目相机拍摄的多个3D片源构成;其中,由预设的基础双目相机拍摄的多个3D片源构成的样本子集被设置为基础样本子集,由其他各个非基础双目相机拍摄的多个3D片源的各个样本子集均被设置为非基础样本子集。
可实施的,电子设备可以获得3D片源训练样本集,所述训练样本集中包含:多个不同双目相机对应的样本子集,每个样本子集由同一个双目相机拍摄的多个3D片源构成;其中,由预设的基础双目相机拍摄的多个3D片源构成的样本子集被设置为基础样本子集,由其他各个非基础双目相机拍摄的多个3D片源的各个样本子集均被设置为非基础样本子集,当然也可以是其他相机拍摄的作为基础样本子集,在此不做具体限定。
步骤S102,用基础样本子集中的多个基础样本,对初始视差图预测网络进行训练获得过渡视差图预测网络。
可选的,电子设备可以用基础样本子集中的多个基础样本,对初始视差图预测网络进行训练获得过渡视差图预测网络。在一种具体的实施方式中,可以将基础样本的左视图输入到初始视差图预测网络进行训练,根据得到的预测右视图,与真实右视图,获得过渡视差图预测网络;也可以将基础样本的右视图输入到初始视差图预测网络进行训练,根据得到的预测左视图,与真实左视图,获得过渡视差图预测网络,在此不做具体限定。一种具体的实施方式可以参见图2,图2为对初始视差图预测网络训练的流程图。
本实施例中使用的初始视差图预测网络,可以如图4所示的基于VGG网络结构或者U-net网络结构的网络示意图;其包括:第二编码部分和解码部分。
所述第二编码部分,包含:预设数量的卷积层;对输入的左视图进行预设层数的卷积,获得最后一层卷积层输出的第二编码下采样图像;
所述解码部分,包含:预设数量的上采样和卷积层;根据各个卷积层输出的各层的特征图像,通过上采样的双线性插值和卷积层处理,输出预测左视差图和预测右视差图。
可参见表1所示的本发明实施例的视差图预测网络模型编解码部分的编解码表。
表1
Figure BDA0002053548470000191
如表1所示,编码部分包括第一级联下采样网络、第二级联下采样网络、第三级联下采样网络、第四级联下采样网络及第五级联下采样网络、第五级联下采样网络、第六级联下采样网络及第七级联下采样网络。每个下采样级联网络分别包含两个卷积层,当然也可以根据实际需要对级联网络的结构进行调整。
可实施的,以左视图为例进行说明,编码部分对样本中的左视图两次卷积分别进行增加通道和减小尺寸处理,得到最后一层卷积层输出的第二编码下采样图像。如表一所示,将尺寸为265*512*3的左视图输入到第一级联下采样网络中,其中,265可表示左视图的宽;512可表示左视图的高;3可表示该左视图的通道数。第一级联下采样网络包含conv1(第一个卷积层)和conv2(第二个卷积层),conv1(第一个卷积层)对265*512*3的左视图进行增加维度的卷积处理得到265*512*32的特征图1,conv2(第二个卷积层)对特征图1进行减小尺寸的卷积处理得到128*265*32的特征图2;再将特征图2经过conv3(第三个卷积层)卷积处理得到128*265*64的特征图3。以此类推,最终经过conv14(第十四个卷积层)卷积处理得到2*4*512的下采样图像。再将下采样图像解码部分。
解码部分包括:第一级联上采样网络、第二级联上采样网络、第三级联上采样网络、第四级联上采样网络及第五级联上采样网络、第五级联上采样网络、第六级联上采样网络及第七级联上采样网络。每个上采样级联网络分别包含上采样及两个卷积层,当然也可以根据实际需要对级联网络的结构进行调整。每个上采样级联网络包含上采样双线性插值增大尺寸的处理和两个卷积层降低维度的处理,其中一个卷积层做降低维度处理,另一个卷积不做降低维度处理。
解码部分对经过编码部分获得的下采样图像,对2*4*512的图像进行第一上采样双线性插值,增大尺寸处理得到4*8*512的上采样中间图像1,conv1(第一个卷积层)对上采样中间图像1卷积处理得到4*8*512的上采样特征图1,再将上采样特征图1经过conv2(第二个卷积层)卷积处理得到上采样特征图2。特别说明在此处两次卷积都不做降低通道处理是为了模型需要,可以根据实际情况调整。
再将特征图2经过第二上采样双线性插值,增大尺寸处理得到8*16*512的上采样中间图像2,conv3(第三个卷积层)对上采样中间图像2卷积处理8*16*512的上采样特征图3,再将上采样特征图3经过conv4(第四个卷积层)卷积处理得到上采样特征图4。特别说明在此处两次卷积都不做降低通道处理是为了模型需要,可以根据实际情况调整。
再将特征图4经过第三上采样双线性插值,增大尺寸处理得到8*16*512的上采样中间图像3,conv5(第五个卷积层)对上采样中间图像3卷积降低通道处理16*32*512的上采样特征图5,再将上采样特征图5经过conv6(第六个卷积层)卷积处理得到上采样特征图6。以此类推。特别说明,在Conv8、Conv10、Conv12及Conv14分别输出一个预测的左视差图和预测的右视差图,如表中Conv8_out、Conv10_out、Conv12_out及Conv14_out所示。相当于一个样本可以输出4次预测的左视差图和预测的右视差图,最终根据这4次预测的左视差图和预测的右视差图求平均损失值。
需要说明的是,本发明可选的实施例中设置了七个级联采样网络,在实际实施过程中,可按照实施人员的具体需求设置多于七个或少于七个的级联采样网络。
步骤S103,用各个非基础样本子集中的多个非基础样本,分别对初始转换参数网络进行训练,获得各个非基础样本子集分别对应的转换参数;所述转换参数为:将所述过渡视差图预测网络输出的基于基础双目相机的中间视差图,转换为基于各个非基础双目相机的视差图的参数。
可实施的,可以将过渡视差图预测网络的当前的网络参数固定,用各个非基础样本子集中的多个非基础样本,分别对初始转换参数网络进行训练,获得各个非基础样本子集分别对应的转换参数;所述转换参数为:将所述过渡视差图预测网络输出的基于基础双目相机的中间视差图,转换为基于各个非基础双目相机的视差图的参数。
步骤S104,用各个非基础样本子集中的多个非基础样本及其对应的转换参数,对所述过渡视差图预测网络进行训练,获得最终的视差图预测网络;其中,训练过程中使用的损失函数值,是基于第一预测视差图,按预设的第一损失函数公式计算获得的;所述第一预测视差图为:用所述转换参数对所述过渡视差图预测网络输出的基于基础双目相机的中间视差图进行转换,获得的基于非基础双目相机的视差图。
可见,应用本发明实施例,不像现有技术,对单一网络模型进行训练,而是对初始视差图预测网络进行训练和初始转换参数网络交替训练,引入了相机参数,解决了视差图预测网络在训练过程中,因不同基础样本子集来自于不同相机对训练所造成干扰,提高了视差图预测模型预测出的视差图的准确性,在用视差图预测网络模型预测出的视差图进行3D转换的时候立体效果更强。
本发明实施例提供的视差图预测网络模型的训练方法的另一种流程,如图2所示,包括:
步骤S201,获得3D片源训练样本集,所述训练样本集中包含:多个不同双目相机对应的样本子集,每个样本子集由同一个双目相机拍摄的多个3D片源构成;其中,由预设的基础双目相机拍摄的多个3D片源构成的样本子集被设置为基础样本子集,由其他各个非基础双目相机拍摄的多个3D片源的各个样本子集均被设置为非基础样本子集。
步骤S202,用基础样本子集中的多个基础样本,对初始视差图预测网络进行训练获得过渡视差图预测网络。
步骤S203,用各个非基础样本子集中的多个非基础样本,分别对初始转换参数网络进行训练,获得各个非基础样本子集分别对应的转换参数;所述转换参数为:将所述过渡视差图预测网络输出的基于基础双目相机的中间视差图,转换为基于各个非基础双目相机的视差图的参数。
可实施的,可以将过渡视差图预测网络的当前的网络参数固定,用各个非基础样本子集中的多个非基础样本,分别对初始转换参数网络进行训练,获得各个非基础样本子集分别对应的转换参数;所述转换参数为:对所述过渡视差图预测网络输出的中间视差图进行转换的参数。
可实施的,所述转换参数网络输出的转换参数包括:第一转换参数和第二转换参数;预设的视差图转换公式,为:D’=第一转换参数*D+第二转换参数,其中D为基于拍摄基础样本子集的相机预测的视差图,第一转换参数和第二转换参数为基于拍摄各个非基础样本子集的不同相机的视差图与基于拍摄基础样本子集的相机的视差图之间的转化关系,D’为各个非基础样本子集的不同相机的视差图。
可选的,电子设备可以用各个非基础样本子集中的多个非基础样本,分别对初始转换参数网络进行训练,获得各个非基础样本子集分别对应的转换参数;所述转换参数为:对所述过渡视差图预测网络输出的中间视差图进行转换的参数,一种具体的实施方式可以参见图5为对初始转换参数网络模型的训练流程图。
本实施例中使用的转换参数网络模型,参见图6,可以包括:基于VGG(VisualGeometry Group,视觉几何组)的网络;其包括:第一编码部分和参数提取部分;其中,
所述第一编码部分,包含:预设数量的卷积层;对输入的左视图和右视图进行合并后,对合并的图像进行预设层数的卷积,获得最后一层卷积层输出的下采样图像;
所述参数提取部分,包含:一层平均池化层和三层全连接层;对所述下采样图像进行一层平均池化和三层全连接处理,输出第一转换参数和第二转换参数。
步骤S204,从各个非基础样本子集中选择预设数量个第一非基础样本,分别输入至所述过渡视差图预测网络,分别获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,分别作为各个第一非基础样本的第一中间左视差图和第一中间右视差图。
可实施的,电子设备可以从任一个非基础样本子集中选择预设数量个第一非基础样本的左视图输入至所述过渡视差图预测网络,获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,作为第一非基础样本的第一中间左视差图和第一中间右视差图。
步骤S205,按各个所述第一非基础样本对应的转换参数和预设的视差图转换公式,分别将所述第一非基础样本的第一中间左视差图和第一中间右视差图转换为第一预测左视差图和第一预测右视差图。
步骤S206,基于各个所述第一非基础样本的第一预测左视差图和第一预测右视差图,按预设的第一损失函数公式,判断所述过渡视差图预测网络是否收敛至稳定。
可实施的,电子设备可以基于所述第一预测左视差图和第一预测右视差图,获得第一非基础样本的预测左视图和预测右视图;根据预测右视图和实际右视图,按所述预设的第一损失函数公式,计算右视图的第一损失值;根据预测左视图和实际左视图,按所述预设的第一损失函数公式,计算左视图的第一损失值;根据所述右视图的第一损失值和左视图的第一损失值,判断所述过渡视差图预测网络是否收敛至稳定。
其中,预设的第一损失函数公式可以包含SSIM+L1损失函数和一阶梯度损失函数;
所述预设的损失函数包含:SSIM+L1损失函数和一阶梯度损失函数;
以根据预测左视图和真实左视图为例,所述SSIM+L1损失函数公式为:
Figure BDA0002053548470000241
其中,
Figure BDA0002053548470000242
表示损失值;N表示一小批次训练样本的数量;l表示左视图;α权重为0.85;
Figure BDA0002053548470000243
表示真实左视图;
Figure BDA0002053548470000244
表示预测左视图;
Figure BDA0002053548470000245
表示预测左视图与真实左视图的结构相似性;
Figure BDA0002053548470000246
表示预测左视图与真实左视图的绝对值误差L1。
根据预测左视图和真实左视图,按照所述SSIM+L1损失函数,获得损失值
Figure BDA0002053548470000247
同理,如果是根据预测右视图和真实右视图,按照所述SSIM+L1损失函数,获得损失值
Figure BDA0002053548470000248
以根据右视图,预测左视差图为例,所述一阶梯度损失函数公式为:
Figure BDA0002053548470000249
Figure BDA00020535484700002410
表示损失值,
Figure BDA00020535484700002411
代表左视差图在x方向上的一阶导数,
Figure BDA00020535484700002412
代表左视差图在y方向上的一阶导数,
Figure BDA00020535484700002413
代表左视图在x方向上的一阶导数,
Figure BDA00020535484700002414
代表左视图在y方向上的一阶导数;i,j代表像素的坐标。
根据预测的左视差图,按照所述一阶梯度损失函数,获得损失值
Figure BDA0002053548470000251
同理,根据预测的右视差图,按照所述一阶梯度损失函数,获得损失值
Figure BDA0002053548470000252
Figure BDA0002053548470000253
计算最终的损失值;
根据最终的损失值判断所述初始转换参数网络是否收敛至稳定。
如果判断的结果为是,即如果收敛至稳定,则执行步骤S207;如果判断的结果为否,即如果没收敛至稳定,则执行步骤S209。
步骤S207,将训练次数的数量增加一次,并判断是否达到预设的训练次数。
可实施的,每取一次预设数量个第一非基础样本之后可以计一次训练次数,判断是否达到预设的训练次数。
如果判断的结果为是,即如果训练次数达到预设的训练次数,则执行步骤S208;如果判断的结果为否,即如果没达到预设的训练次数,则返回所述从各个非基础样本子集中选择预设数量个第一非基础样本,分别输入至所述过渡视差图预测网络,分别获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,分别作为第一非基础样本的第一中间左视差图和第一中间右视差图的步骤。
步骤S208,将所述过渡视差图预测网络,确定为视差图预测网络模型。
步骤S209,如果未收敛至稳定,则将训练次数的数量增加一次,并调整所述过渡视差图预测网络的网络参数。返回所述从各个非基础样本子集中选择预设数量个第一非基础样本,分别输入至所述过渡视差图预测网络,分别获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,分别作为第一非基础样本的第一中间左视差图和第一中间右视差图的步骤。
可实施的,如果没收敛至稳定,则调整所述过渡视差图预测网络的网络参数,并将将训练次数加一,特别说明的是,在一种可实施的方式中,如果达到预设的训练次数,但是没收敛,则继续训练,直到视差图预测网络收敛至稳定。
可见,应用本发明实施例,不像现有技术,对单一网络模型进行训练,而是对初始视差图预测网络进行训练和初始转换参数网络交替训练,引入了相机参数,解决了视差图预测网络在训练过程中,因不同基础样本子集来自于不同相机对训练所造成干扰,提高了视差图预测模型预测出的视差图的准确性,在用视差图预测网络模型预测出的视差图进行3D转换的时候立体效果更强。
本发明实施例提供的对初始视差图预测网络训练的一种流程图,如图3所示,包括:
步骤S301,从基础样本子集中选择预设数量个当前基础样本,分别输入初始视差图预测网络,分别获得当前基础样本的预测左视差图和预测右视差图。
步骤S302,基于各个所述当前基础样本的预测左视差图和预测右视差图,按预设的第一损失函数公式,判断所述过渡视差图预测网络是否收敛至稳定。
可实施的,基于各个所述当前基础样本的预测左视差图或预测右视差图,分别获得当前基础样本的预测左视图和预测右视图;根据各个预测右视图和实际右视图,按所述预设的第一损失函数公式,计算右视图的第一损失值,根据各个预测左视图和实际左视图,按所述预设的第一损失函数公式,计算左视图的第一损失值;根据所述右视图的第一损失值和左视图的第一损失值,判断所述过渡视差图预测网络是否收敛至稳定。
如果判断的结果为是,即过渡视差图预测网络是收敛至稳定,则执行步骤S303;如果判断的结果为否,即过渡视差图预测网络没收敛至稳定,则执行步骤S305。
步骤S303,如果收敛至稳定,则将训练次数的数量增加一次,并判断是否达到预设的训练次数。
可实施的,每取一次预设数量个第一基础样本之后可以计一次基础样本训练次数,判断是否达到预设的基础样本的训练次数。
如果判断的结果为是,即达到预设的训练次数,则执行步骤S304;如果判断的结果为否,即没达到训练的次数,则执行步骤S305。
步骤S304,将所述初始视差图预测网络,确定为过渡视差图预测网络。
步骤S305,将训练次数的数量增加一次,并调整所述过渡视差图预测网络的网络参数。
可实施的,如果没收敛至稳定,则调整视差图预测网络的网络参数,并将将训练次数加一,特别说明的是,在一种可实施的方式中,如果达到预设的训练次数,但是没收敛,则继续训练,直到视差图预测网络收敛至稳定。
本发明实施例提供的对初始转换参数网络模型的一种训练流程图,如图5所示,包括:
其中,针对每个非基础样本子集,按如下步骤获得对应的转换参数:
步骤S501,从当前非基础样本子集中选择预设数量个第二非基础样本,分别输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数。
可实施的,从当前非基础样本子集中选择预设数量个第二非基础样本的左视图和右视图,分别输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数
步骤S502,将各个第二非基础样本输入所述过渡视差图预测网络,分别获得第二非基础样本的第二中间左视差图和第二中间右视差图。
可实施的,将所述第二非基础样本的左视图输入所述过渡视差图预测网络,获得第二非基础样本的预测左视差图和预测右视差图,将其中预测左视差图作为第二中间左视差图;将其中预测右视差图作为第二中间右视差图。
步骤S503,按各个所述第二非基础样本对应的转换参数和预设的视差图转换公式,将各个所述第二中间左视差图和第二中间右视差图转换为第二预测左视差图和第二预测右视差图。
步骤S504,基于各个所述第二预测左视差图和第二预测右视差图,按预设的第二损失函数公式,判断所述初始转换参数网络是否收敛至稳定。
基于各个所述第二预测左视差图和第二预测右视差图,获得第二非基础样本的预测左视图和预测右视图;根据预测右视图和实际右视图,按所述预设的第二损失函数公式,计算右视图的第二损失值;根据预测左视图和实际左视图,按所述预设的第二损失函数公式,计算左视图的第二损失值;根据所述右视图的第二损失值和左视图的第二损失值,判断所述初始转换参数网络是否收敛至稳定。
所述第二预设损失函数包含:SSIM+L1损失函数和一阶梯度损失函数,可以和第一预设损失函数相同。
根据预测右视图和实际右视图计算出SSIM+L1损失函数值
Figure BDA0002053548470000281
和一阶梯度损失函数
Figure BDA0002053548470000282
根据预测左视图和实际左视图计算出SSIM+L1损失函数值
Figure BDA0002053548470000283
和一阶梯度损失函数
Figure BDA0002053548470000284
根据所述右视图的第二损失值和左视图的第二损失值,判断所述初始转换参数网络是否收敛至稳定时可以具体通过:
Figure BDA0002053548470000285
计算最终的损失值;
根据最终损失值判断所述初始转换参数网络是否收敛至稳定。
如果判断的结果为是,即初始转换参数网络是收敛至稳定,则执行步骤S506;如果判断的结果为否,即初始转换参数网络没收敛至稳定,则执行步骤S505。
步骤S505,将训练次数的数量增加一次,并调整所述初始转换参数网络的网络参数。返回步骤S501。
步骤S506,将训练次数的数量增加一次,并判断是否达到预设的训练次数。
可实施的,预设的训练次数可以是样本的10倍,比如训练样本集中共有10000个样本,则可以训练100000次,在此不做具体限定。
如果判断的结果为是,即达到预设的训练次数,则执行步骤S507;如果判断的结果为否,即没达到训练的次数,则返回步骤S501。
步骤S507,将所述初始转换参数网络输出的当前转换参数,确定为当前非基础样本子集对应的转换参数。
可实施的,每一个非基础样本子集,都会得到各自的转换参数。
本发明实施例提供的转换参数网络结构的示意图,如图6所示,包括:
先将左视图与对应的右视图拼接后的尺寸为256*512*6的图像输入下采样级联网络,其中6为通道数,其中每次经过下采样级联网络减小尺寸,增加通道数,得到1次下采样图像,每个下采样级联网络可以有一个卷积层,卷积后减小尺寸且增加通道数;经过5次下采样级联网络减小尺寸,增加通道数,得到8*16*512的第五次下采样图像。第五次下采样图像再经过1层卷积层降低维度得到8*16*256的图像,再将8*16*256的图像经过1层卷积层降低维度得到8*16*128的图像,再经过1层平均池化得到1*1*286的图像,再经过1层全连接层(FC)得到1*1*64的第一次全连接图像;再将第一次全连接图像经过1层全连接层(FC)得到两个1*1*1的第一转换参数;再将第一次全连接图像经过1层全连接层(FC)得到两个1*1*1的第二转换参数。
本发明实施例提供的视差图预测网络模型和相机参数预测网络的训练原理图,如图7所示,包括:
初始视差图预测网络701,输出层可以使用tanh激活函数,其它层可以使用elu激活函数;初始相机参数预测网络702,输出层可以使用tanh激活函数,其它层可以使用relu激活函数,在这里不做具体限定。先用基础样本中的左视图对初始视差图预测网络进行训练获得过渡视差图预测网络,用各个非基础样本子集中的多个非基础样本,分别对初始转换参数网络进行训练,获得各个非基础样本子集分别对应的转换参数,每个非基础样本子集对应一个第一转换参数和第二转换参数。根据预设的视差图转换公式:D’=第一转换参数*D+第二转换参数,获得各个非基础样本子集的不同相机的预测视差图;根据对真实的左视图采样,与预测的右视差图,得到预测的右视图;基于左视差图得到预测的左视图,再将真实的右视图与预测的右视图求SSIM+LI损失函数得到
Figure BDA0002053548470000291
再将真实的左视图与预测的左视图求SSIM+LI损失函数得到
Figure BDA0002053548470000292
再对预测的左视差图和预测的右视差图分别求梯度一阶梯度损失函数得到
Figure BDA0002053548470000293
Figure BDA0002053548470000294
Figure BDA0002053548470000295
计算最终的损失值。可实施的,可以根据损失值,用Adam方式(adaptive moment estimation,自适应矩估计)调整模型参数,最终得到训练好的视差图预测网络。
可见,应用本发明实施例,不像现有技术,对单一网络模型进行训练,而是对初始视差图预测网络进行训练和初始转换参数网络交替训练,引入了相机参数,解决了视差图预测网络在训练过程中,因不同基础样本子集来自于不同相机对训练所造成干扰,提高了视差图预测模型预测出的视差图的准确性,在用视差图预测网络模型预测出的视差图进行3D转换的时候立体效果更强。
本发明实施例提供的一种视差图预测方法的一种流程图,如图8所示,该方法的具体处理流程,包括:
步骤S801,获得待进行预测的单目视图;
步骤S802,将单目视图,输入到预先训练好的视差图预测网络模型;所述视差图预测网络模型为采用图1、图2、图3和图6任一图所述的视差图预测网络模型的训练的方法训练获得的;
可实施的,所述单目视图可以为左视图,也可以为右视图,在此不做具体限定。
步骤S803,获取视差图预测网络模型预测的双目视差图。
可实施的,获取视差图预测网络模型预测的双目视差图后,可以通过对所述单目视图采样,与双目视差图,获得预测的另一视图。比如如果单目视图为左视图,则可以预测出右视差图,通过对左视图采样,再根据右视差图获取预测的右视图,实现2D图像到3D图像的转化,进而通过2D视频得到3D视频。
可见,应用本发明实施例,不像现有技术,对单一网络模型进行训练,而是对初始视差图预测网络进行训练和初始转换参数网络交替训练,参考了相机参数,提高了视差图预测模型预测出的视差图的准确性,在用视差图预测网络模型预测出的视差图进行3D转换的时候立体效果更强。
本发明实施例提供的一种二维2D图像转换为三维3D图像的方法,如图9所示,该方法的具体处理流程,包括:
步骤S901,获取待转换为3D图像的2D图像;
步骤S902,将所述2D图像作为用于生成3D图像的第一单目视图,输入到预先训练好的视差图预测网络模型;所述视差图预测网络模型为采用上述任一视差图预测网络模型的训练方法训练获得的;所述第一单目视图为左视图或右视图;
步骤S903,获取视差图预测网络模型输出的第一预测视差图;
步骤S904,基于所述第一预测视差图,获得第二单目视图;所述第二单目视图为与第一单目视图对应的右视图或左视图;
步骤S905,基于所述第一单目视图和所述第二单目视图,生成3D图像。
可见,应用本发明实施例,不像现有技术,对单一网络模型进行训练,而是对初始视差图预测网络进行训练和初始转换参数网络交替训练,引入了相机参数,解决了视差图预测网络在训练过程中,因不同基础样本子集来自于不同相机对训练所造成干扰,提高了视差图预测模型预测出的视差图的准确性,在用视差图预测网络模型预测出的视差图进行3D转换的时候立体效果更强。
本发明实施例提供一种视差图预测网络模型的训练装置的结构示意图,如图10所示,包括:
训练样本获得单元1001,用于获得3D片源训练样本集,所述训练样本集中包含:多个不同双目相机对应的样本子集,每个样本子集由同一个双目相机拍摄的多个3D片源构成;其中,由预设的基础双目相机拍摄的多个3D片源构成的样本子集被设置为基础样本子集,由其他各个非基础双目相机拍摄的多个3D片源的各个样本子集均被设置为非基础样本子集;
过渡视差图预测网络获得单元1002,用于用基础样本子集中的多个基础样本,对初始视差图预测网络进行训练获得过渡视差图预测网络;
非基础样本转换参数获得单元1003,用于用各个非基础样本子集中的多个非基础样本,分别对初始转换参数网络进行训练,获得各个非基础样本子集分别对应的转换参数;所述转换参数为:将所述过渡视差图预测网络输出的基于基础双目相机的中间视差图,转换为基于各个非基础双目相机的视差图的参数;
最终视差图网络获得单元1004,用于用各个非基础样本子集中的多个非基础样本及其对应的转换参数,对所述过渡视差图预测网络进行训练,获得最终的视差图预测网络;其中,训练过程中使用的损失函数值,是基于第一预测视差图,按预设的第一损失函数公式计算获得的;所述第一预测视差图为:用所述转换参数对所述过渡视差图预测网络输出的基于基础双目相机的中间视差图进行转换,获得的基于非基础双目相机的视差图。
可选的,所述最终视差图网络获得单元,包括:
中间视差图获得模块,用于从各个非基础样本子集中选择预设数量个第一非基础样本,分别输入至所述过渡视差图预测网络,分别获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,分别作为各个第一非基础样本的第一中间左视差图和第一中间右视差图;
第一预测视差图转换模块,用于按各个所述第一非基础样本对应的转换参数和预设的视差图转换公式,分别将所述第一非基础样本的第一中间左视差图和第一中间右视差图转换为第一预测左视差图和第一预测右视差图;
过渡视差图预测网络判断模块,用于基于各个所述第一非基础样本的第一预测左视差图和第一预测右视差图,按预设的第一损失函数公式,判断所述过渡视差图预测网络是否收敛至稳定;
第一训练次数判断模块,用于如果收敛至稳定,则将训练次数的数量增加一次,并判断是否达到预设的训练次数;如果没达到预设的训练次数,则触发所述中间视差图获得模块执行所述从各个非基础样本子集中选择预设数量个第一非基础样本,分别输入至所述过渡视差图预测网络,分别获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,分别作为第一非基础样本的第一中间左视差图和第一中间右视差图;如果达到预设的训练次数,则将所述过渡视差图预测网络,确定为视差图预测网络模型;
过渡视差图预测网络网络参数调整模块,用于如果未收敛至稳定,则将训练次数的数量增加一次,并调整所述过渡视差图预测网络的网络参数,触发所述中间视差图获得模块执行所述从各个非基础样本子集中选择预设数量个第一非基础样本,分别输入至所述过渡视差图预测网络,分别获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,分别作为第一非基础样本的第一中间左视差图和第一中间右视差图。
可选的,所述过渡视差图预测网络获得单元,包括:
基础样本视差图获得模块,用于从所述基础样本子集中选择预设数量个当前基础样本,分别输入初始视差图预测网络,分别获得当前基础样本的预测左视差图和预测右视差图;
第一判断模块,用于基于各个所述当前基础样本的预测左视差图和预测右视差图,按预设的第一损失函数公式,判断所述过渡视差图预测网络是否收敛至稳定;
第一训练次数判断模块,用于如果收敛至稳定,则将训练次数的数量增加一次,并判断是否达到预设的训练次数;如果没达到预设的训练次数,则触发所述基础样本视差图获得模块执行所述从所述基础样本子集中选择预设数量个当前基础样本,分别输入初始视差图预测网络,分别获得当前基础样本的预测左视差图和预测右视差图的步骤;如果达到预设的训练次数,则将所述初始视差图预测网络,确定为过渡视差图预测网络;
过渡视差图预测网络的网络参数调整模块,用于如果未收敛至稳定,则将训练次数的数量增加一次,并调整所述初始视差图预测网络的网络参数,返回所述从所述基础样本子集中选择预设数量个当前基础样本,分别输入初始视差图预测网络,分别获得当前基础样本的预测左视差图和预测右视差图的步骤。
可选的,所述基础样本视差图获得模块,具体用于:
从所述基础样本子集中选择预设数量个当前基础样本的左视图,分别输入初始视差图预测网络,分别获得当前基础样本的预测左视差图和预测右视差图;
所述基于各个所述当前基础样本的预测左视差图和预测右视差图,按预设的第一损失函数公式,判断所述过渡视差图预测网络是否收敛至稳定的步骤,包括:
基于各个所述当前基础样本的预测左视差图或预测右视差图,分别获得当前基础样本的预测左视图和预测右视图;根据各个预测右视图和实际右视图,按所述预设的第一损失函数公式,计算右视图的第一损失值,根据各个预测左视图和实际左视图,按所述预设的第一损失函数公式,计算左视图的第一损失值;
根据所述右视图的第一损失值和左视图的第一损失值,判断所述过渡视差图预测网络是否收敛至稳定。
可选的,所述非基础样本转换参数获得单元,包括:非基础样本子集转换参数获得模块;
所述非基础样本子集转换参数获得模块;
第二非基础样本转换参数子模块,用于从当前非基础样本子集中选择预设数量个第二非基础样本,分别输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数;
非基础样本中间视差图获得子模块,用于将各个所述第二非基础样本输入所述过渡视差图预测网络,分别获得第二非基础样本的第二中间左视差图和第二中间右视差图;
第二非基础样本转换参数子模块,用于按各个所述第二非基础样本对应的转换参数和预设的视差图转换公式,将各个所述第二中间左视差图和第二中间右视差图转换为第二预测左视差图和第二预测右视差图;
参数网络判断子模块,用于基于各个所述第二预测左视差图和第二预测右视差图,按预设的第二损失函数公式,判断所述初始转换参数网络是否收敛至稳定;
训练次数判断子模块,用于如果收敛至稳定,则将训练次数的数量增加一次,并判断是否达到预设的训练次数;如果没达到预设的训练次数,则触发所述第二非基础样本转换参数子模块执行所述从当前非基础样本子集中选择预设数量个第二非基础样本,分别输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数;如果达到预设的次数,则将所述初始转换参数网络输出的当前转换参数,确定为当前非基础样本子集对应的转换参数;
参数网络调整子模块,用于如果未收敛至稳定,则将训练次数的数量增加一次,并调整所述初始转换参数网络的网络参数,触发所述第二非基础样本转换参数子模块执行所述从当前非基础样本子集中选择预设数量个第二非基础样本,分别输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数。
可选的,所述转换参数网络输出的转换参数为:第一转换参数和第二转换参数;
预设的视差图转换公式,为:D’=第一转换参数*D+第二转换参数,其中D为基于拍摄基础样本子集的相机预测的视差图,第一转换参数和第二转换参数为基于拍摄各个非基础样本子集的不同相机的视差图与基于拍摄基础样本子集的相机的视差图之间的转化关系,D’为各个非基础样本子集的不同相机的视差图。
可选的,所述第二非基础样本转换参数子模块,具体用于
从当前非基础样本子集中选择预设数量个第二非基础样本的左视图和右视图,分别输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数;
所述非基础样本中间视差图获得子模块,具体用于:
将所述第二非基础样本的左视图输入所述过渡视差图预测网络,获得第二非基础样本的预测左视差图和预测右视差图,将其中预测左视差图作为第二中间左视差图;将其中预测右视差图作为第二中间右视差图。
可选的,所述参数网络判断子模块,包括:
预测视图获得子模块,用于基于各个所述第二预测左视差图和第二预测右视差图,获得第二非基础样本的预测左视图和预测右视图;
损失值计算子模块,用于根据预测右视图和实际右视图,按所述预设的第二损失函数公式,计算右视图的第二损失值;根据预测左视图和实际左视图,按所述预设的第二损失函数公式,计算左视图的第二损失值;
参数网络收敛判断子模块,用于根据所述右视图的第二损失值和左视图的第二损失值,判断所述初始转换参数网络是否收敛至稳定。
可选的,所述第二预设损失函数包含:SSIM+L1损失函数和一阶梯度损失函数;
损失值计算子模块,具体用于:
根据预测右视图和实际右视图计算出SSIM+L1损失函数值
Figure BDA0002053548470000351
和一阶梯度损失函数
Figure BDA0002053548470000352
根据预测左视图和实际左视图计算出SSIM+L1损失函数值
Figure BDA0002053548470000353
和一阶梯度损失函数
Figure BDA0002053548470000354
参数网络收敛判断子模块,具体用于:
Figure BDA0002053548470000361
计算最终的损失值;
根据最终损失值判断所述初始转换参数网络是否收敛至稳定。
可选的,所述转换参数网络,为:基于VGG网络结构的网络;其包括:第一编码部分和参数提取部分;其中,
所述第一编码部分,包含:预设数量的卷积层;对输入的左视图和右视图进行合并后,对合并的图像进行预设层数的卷积,获得最后一层卷积层输出的下采样图像;
所述参数提取部分,包含:一层平均池化层和三层全连接层;对所述下采样图像进行一层平均池化和三层全连接处理,输出第一转换参数和第二转换参数。
可选的,所述中间视差图获得单元,具体用于:
从任一个非基础样本子集中选择预设数量个第一非基础样本的左视图输入至所述过渡视差图预测网络,获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,作为第一非基础样本的第一中间左视差图和第一中间右视差图;
所述基于各个所述第一非基础样本的第一预测左视差图和第一预测右视差图,按预设的第一损失函数公式,判断所述过渡视差图预测网络是否收敛至稳定的步骤,包括:
基于所述第一预测左视差图和第一预测右视差图,获得第一非基础样本的预测左视图和预测右视图;根据预测右视图和实际右视图,按所述预设的第一损失函数公式,计算右视图的第一损失值;根据预测左视图和实际左视图,按所述预设的第一损失函数公式,计算左视图的第一损失值;
根据所述右视图的第一损失值和左视图的第一损失值,判断所述过渡视差图预测网络是否收敛至稳定。
可选的,所述视差图预测网络为:基于VGG网络结构或者U-net网络结构的网络;其包括:第二编码部分和解码部分;其中,
所述第二编码部分,包含:预设数量的卷积层;对输入的左视图进行预设层数的卷积,获得最后一层卷积层输出的第二编码下采样图像;
所述解码部分,包含:预设数量的上采样和卷积层;根据各个卷积层输出的各层的特征图像,通过上采样的双线性插值和卷积层处理,输出预测左视差图和预测右视差图。
可见,应用本发明实施例,不像现有技术,对单一网络模型进行训练,而是对初始视差图预测网络进行训练和初始转换参数网络交替训练,引入了相机参数,解决了视差图预测网络在训练过程中,因不同基础样本子集来自于不同相机对训练所造成干扰,提高了视差图预测模型预测出的视差图的准确性,在用视差图预测网络模型预测出的视差图进行3D转换的时候立体效果更强。
本发明实施例提供一种视差图预测的装置的结构示意图,如图11所示,包括:
单目视图获得单元1101,用于获得待进行预测的单目视图;
单目视图输入单元1102,用于将单目视图,输入到预先训练好的视差图预测网络模型;所述视差图预测网络模型为采用上述任一项视差图预测网络模型的训练装置训练获得的;
双目视差图获得单元1103,用于获取视差图预测网络模型预测的双目视差图。
本发明实施例提供的一种二维2D图像转换为三维3D图像的装置,如图12所示,所述装置包括:
待转换图像获取单元1201,用于获取待转换为3D图像的2D图像;
2D图像输入单元1202,用于将所述2D图像作为用于生成3D图像的第一单目视图,输入到预先训练好的视差图预测网络模型;所述视差图预测网络模型为采用上述任一项视差图预测网络模型的训练装置训练获得的;所述第一单目视图为左视图或右视图;
第一预测视差图获取单元1203,用于获取视差图预测网络模型输出的第一预测视差图;
第二单目视图获得单元1204,用于基于所述第一预测视差图,获得第二单目视图;所述第二单目视图为与第一单目视图对应的右视图或左视图;
3D图像生成单元1205,用于基于所述第一单目视图和所述第二单目视图,生成3D图像。
可见,应用本发明实施例,不像现有技术,对单一网络模型进行训练,而是对初始视差图预测网络进行训练和初始转换参数网络交替训练,引入了相机参数,解决了视差图预测网络在训练过程中,因不同基础样本子集来自于不同相机对训练所造成干扰,提高了视差图预测模型预测出的视差图的准确性,在用视差图预测网络模型预测出的视差图进行3D转换的时候立体效果更强。
本发明实施例还提供了一种电子设备,如图13所示,包括处理器1301、通信接口1302、存储器1303和通信总线1304,其中,处理器1301,通信接口1302,存储器1303通过通信总线1304完成相互间的通信,
存储器1303,用于存放计算机程序;
处理器1301,用于执行存储器1303上所存放的程序时,实现如下步骤:
获得3D片源训练样本集,所述训练样本集中包含:多个不同双目相机对应的样本子集,每个样本子集由同一个双目相机拍摄的多个3D片源构成;其中,由预设的基础双目相机拍摄的多个3D片源构成的样本子集被设置为基础样本子集,由其他各个非基础双目相机拍摄的多个3D片源的各个样本子集均被设置为非基础样本子集;
用基础样本子集中的多个基础样本,对初始视差图预测网络进行训练获得过渡视差图预测网络;
用各个非基础样本子集中的多个非基础样本,分别对初始转换参数网络进行训练,获得各个非基础样本子集分别对应的转换参数;所述转换参数为:将所述过渡视差图预测网络输出的基于基础双目相机的中间视差图,转换为基于各个非基础双目相机的视差图的参数;
用各个非基础样本子集中的多个非基础样本及其对应的转换参数,对所述过渡视差图预测网络进行训练,获得最终的视差图预测网络;其中,训练过程中使用的损失函数值,是基于第一预测视差图,按预设的第一损失函数公式计算获得的;所述第一预测视差图为:用所述转换参数对所述过渡视差图预测网络输出的基于基础双目相机的中间视差图进行转换,获得的基于非基础双目相机的视差图。
本发明实施例还提供了另一种电子设备,如图14所示,包括处理器1401、通信接口1402、存储器1403和通信总线1404,其中,处理器1401,通信接口1402,存储器1403通过通信总线1404完成相互间的通信,
存储器1403,用于存放计算机程序;
处理器1401,用于执行存储器1403上所存放的程序时,实现如下步骤:
获得待进行预测的单目视图;
将单目视图,输入到预先训练好的视差图预测网络模型;所述视差图预测网络模型为采用上述视差图预测网络模型的训练方法训练获得的;
获取视差图预测网络模型预测的双目视差图。
本发明实施例还提供了再一种电子设备,如图15所示,包括处理器1501、通信接口1502、存储器1503和通信总线1504,其中,处理器1501,通信接口1502,存储器1503通过通信总线1504完成相互间的通信,
存储器1503,用于存放计算机程序;
处理器1501,用于执行存储器1503上所存放的程序时,实现如下步骤:
获取待转换为3D图像的2D图像;
将所述2D图像作为用于生成3D图像的第一单目视图,输入到预先训练好的视差图预测网络模型;所述视差图预测网络模型为采用上述视差图预测网络模型的训练方法训练获得的;所述第一单目视图为左视图或右视图;
获取视差图预测网络模型输出的第一预测视差图;
基于所述第一预测视差图,获得第二单目视图;所述第二单目视图为与第一单目视图对应的右视图或左视图;
基于所述第一单目视图和所述第二单目视图,生成3D图像。
上述电子设备提到的通信总线可以是外设部件互连标准(PeripheralComponentInterconnect,PCI)总线或扩展工业标准结构(Extended IndustryStandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一视差图预测网络模型的训练方法的步骤;或实现上述任一视差图预测方法的步骤。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一视差图预测网络模型的训练方法;或实现上述任一视差图预测方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、计算机可读存储介质及计算机程序产品等实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (31)

1.一种视差图预测网络模型的训练方法,其特征在于,所述方法包括:
获得3D片源训练样本集,所述训练样本集中包含:多个不同双目相机对应的样本子集,每个样本子集由同一个双目相机拍摄的多个3D片源构成;其中,由预设的基础双目相机拍摄的多个3D片源构成的样本子集被设置为基础样本子集,由其他各个非基础双目相机拍摄的多个3D片源的各个样本子集均被设置为非基础样本子集;
用基础样本子集中的多个基础样本,对初始视差图预测网络进行训练获得过渡视差图预测网络;
用各个非基础样本子集中的多个非基础样本,分别对初始转换参数网络进行训练,获得各个非基础样本子集分别对应的转换参数;所述转换参数为:将所述过渡视差图预测网络输出的基于基础双目相机的中间视差图,转换为基于各个非基础双目相机的视差图的参数;
用各个非基础样本子集中的多个非基础样本及其对应的转换参数,对所述过渡视差图预测网络进行训练,获得最终的视差图预测网络;其中,训练过程中使用的损失函数值,是基于第一预测视差图,按预设的第一损失函数公式计算获得的;所述第一预测视差图为:用所述转换参数对所述过渡视差图预测网络输出的基于基础双目相机的中间视差图进行转换,获得的基于非基础双目相机的视差图。
2.根据权利要求1所述的方法,其特征在于,所述用各个非基础样本子集中的多个非基础样本及其对应的转换参数,对所述过渡视差图预测网络进行训练,获得最终的视差图预测网络的步骤,包括:
从各个非基础样本子集中选择预设数量个第一非基础样本,分别输入至所述过渡视差图预测网络,分别获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,分别作为各个第一非基础样本的第一中间左视差图和第一中间右视差图;
按各个所述第一非基础样本对应的转换参数和预设的视差图转换公式,分别将所述第一非基础样本的第一中间左视差图和第一中间右视差图转换为第一预测左视差图和第一预测右视差图;
基于各个所述第一非基础样本的第一预测左视差图和第一预测右视差图,按预设的第一损失函数公式,判断所述过渡视差图预测网络是否收敛至稳定;
如果收敛至稳定,则将训练次数的数量增加一次,并判断是否达到预设的训练次数;如果没达到预设的训练次数,则返回所述从各个非基础样本子集中选择预设数量个第一非基础样本,分别输入至所述过渡视差图预测网络,分别获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,分别作为第一非基础样本的第一中间左视差图和第一中间右视差图的步骤;如果达到预设的训练次数,则将所述过渡视差图预测网络,确定为视差图预测网络模型;
如果未收敛至稳定,则将训练次数的数量增加一次,并调整所述过渡视差图预测网络的网络参数,返回所述从各个非基础样本子集中选择预设数量个第一非基础样本,分别输入至所述过渡视差图预测网络,分别获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,分别作为第一非基础样本的第一中间左视差图和第一中间右视差图的步骤。
3.根据权利要求1所述的方法,其特征在于,所述用基础样本子集中的多个基础样本,对初始视差图预测网络进行训练获得过渡视差图预测网络的步骤,包括:
从所述基础样本子集中选择预设数量个当前基础样本,分别输入初始视差图预测网络,分别获得当前基础样本的预测左视差图和预测右视差图;
基于各个所述当前基础样本的预测左视差图和预测右视差图,按预设的第一损失函数公式,判断所述过渡视差图预测网络是否收敛至稳定;
如果收敛至稳定,则将训练次数的数量增加一次,并判断是否达到预设的训练次数;如果没达到预设的训练次数,则返回所述从所述基础样本子集中选择预设数量个当前基础样本,分别输入初始视差图预测网络,分别获得当前基础样本的预测左视差图和预测右视差图的步骤;如果达到预设的训练次数,则将所述初始视差图预测网络,确定为过渡视差图预测网络;
如果未收敛至稳定,则将训练次数的数量增加一次,并调整所述初始视差图预测网络的网络参数,返回所述从所述基础样本子集中选择预设数量个当前基础样本,分别输入初始视差图预测网络,分别获得当前基础样本的预测左视差图和预测右视差图的步骤。
4.根据权利要求3所述的方法,其特征在于,
所述从所述基础样本子集中选择预设数量个当前基础样本,分别输入初始视差图预测网络,分别获得当前基础样本的预测左视差图和预测右视差图的步骤,包括:
从所述基础样本子集中选择预设数量个当前基础样本的左视图,分别输入初始视差图预测网络,分别获得当前基础样本的预测左视差图和预测右视差图;
所述基于各个所述当前基础样本的预测左视差图和预测右视差图,按预设的第一损失函数公式,判断所述过渡视差图预测网络是否收敛至稳定的步骤,包括:
基于各个所述当前基础样本的预测左视差图或预测右视差图,分别获得当前基础样本的预测左视图和预测右视图;根据各个预测右视图和实际右视图,按所述预设的第一损失函数公式,计算右视图的第一损失值,根据各个预测左视图和实际左视图,按所述预设的第一损失函数公式,计算左视图的第一损失值;
根据所述右视图的第一损失值和左视图的第一损失值,判断所述过渡视差图预测网络是否收敛至稳定。
5.根据权利要求1所述的方法,其特征在于,所述用各个非基础样本子集中的多个非基础样本,分别对初始转换参数网络进行训练,获得各个非基础样本子集分别对应的转换参数的步骤,包括:
针对每个非基础样本子集,按如下步骤获得对应的转换参数:
从当前非基础样本子集中选择预设数量个第二非基础样本,分别输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数;
将各个所述第二非基础样本输入所述过渡视差图预测网络,分别获得第二非基础样本的第二中间左视差图和第二中间右视差图;
按各个所述第二非基础样本对应的转换参数和预设的视差图转换公式,将各个所述第二中间左视差图和第二中间右视差图转换为第二预测左视差图和第二预测右视差图;
基于各个所述第二预测左视差图和第二预测右视差图,按预设的第二损失函数公式,判断所述初始转换参数网络是否收敛至稳定;
如果收敛至稳定,则将训练次数的数量增加一次,并判断是否达到预设的训练次数;如果没达到预设的训练次数,则返回所述从当前非基础样本子集中选择预设数量个第二非基础样本,分别输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数的步骤;如果达到预设的次数,则将所述初始转换参数网络输出的当前转换参数,确定为当前非基础样本子集对应的转换参数;
如果未收敛至稳定,则将训练次数的数量增加一次,并调整所述初始转换参数网络的网络参数,返回所述从当前非基础样本子集中选择预设数量个第二非基础样本,分别输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数的步骤。
6.根据权利要求5所述的方法,其特征在于,所述转换参数网络输出的转换参数为:第一转换参数和第二转换参数;
预设的视差图转换公式,为:D’=第一转换参数*D+第二转换参数,其中D为基于拍摄基础样本子集的相机预测的视差图,第一转换参数和第二转换参数为基于拍摄各个非基础样本子集的不同相机的视差图与基于拍摄基础样本子集的相机的视差图之间的转化关系,D’为各个非基础样本子集的不同相机的视差图。
7.根据权利要求6所述的方法,其特征在于,
所述从当前非基础样本子集中选择预设数量个第二非基础样本,输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数的步骤,包括:
从当前非基础样本子集中选择预设数量个第二非基础样本的左视图和右视图,分别输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数;
所述将各个所述第二非基础样本输入所述过渡视差图预测网络,分别获得各个第二非基础样本的第二中间左视差图和第二中间右视差图的步骤,包括:
将所述第二非基础样本的左视图输入所述过渡视差图预测网络,获得第二非基础样本的预测左视差图和预测右视差图,将其中预测左视差图作为第二中间左视差图;将其中预测右视差图作为第二中间右视差图。
8.根据权利要求7所述的方法,其特征在于,
所述基于各个所述第二预测左视差图和第二预测右视差图,按预设的第二损失函数公式,判断所述初始转换参数网络是否收敛至稳定的步骤,包括:
基于各个所述第二预测左视差图和第二预测右视差图,获得第二非基础样本的预测左视图和预测右视图;
根据预测右视图和实际右视图,按所述预设的第二损失函数公式,计算右视图的第二损失值;根据预测左视图和实际左视图,按所述预设的第二损失函数公式,计算左视图的第二损失值;
根据所述右视图的第二损失值和左视图的第二损失值,判断所述初始转换参数网络是否收敛至稳定。
9.根据权利要求8所述的方法,其特征在于,
所述第二预设损失函数包含:SSIM+L1损失函数和一阶梯度损失函数;
所述根据预测右视图和实际右视图,按所述预设的第二损失函数公式,计算右视图的第二损失值;根据预测左视图和实际左视图,按所述预设的第二损失函数公式,计算左视图的第二损失值的步骤,包括:
根据预测右视图和实际右视图计算出SSIM+L1损失函数值
Figure FDA0002947631410000051
和一阶梯度损失函数
Figure FDA0002947631410000052
根据预测左视图和实际左视图计算出SSIM+L1损失函数值
Figure FDA0002947631410000053
和一阶梯度损失函数
Figure FDA0002947631410000054
所述根据所述右视图的第二损失值和左视图的第二损失值,判断所述初始转换参数网络是否收敛至稳定的步骤,包括:
Figure FDA0002947631410000055
计算最终的损失值;
根据最终损失值判断所述初始转换参数网络是否收敛至稳定。
10.根据权利要求5~9任一项所述的方法,其特征在于,
所述转换参数网络,为:基于VGG网络结构的网络;其包括:第一编码部分和参数提取部分;其中,
所述第一编码部分,包含:预设数量的卷积层;对输入的左视图和右视图进行合并后,对合并的图像进行预设层数的卷积,获得最后一层卷积层输出的下采样图像;
所述参数提取部分,包含:一层平均池化层和三层全连接层;对所述下采样图像进行一层平均池化和三层全连接处理,输出第一转换参数和第二转换参数。
11.根据权利要求2所述的方法,其特征在于,所述从各个非基础样本子集中选择预设数量个第一非基础样本输入至所述过渡视差图预测网络,获得所述过渡视差图预测网络输出的预测视差图,作为第一非基础样本的第一中间左视差图和第一中间右视差图的步骤,包括:
从任一个非基础样本子集中选择预设数量个第一非基础样本的左视图输入至所述过渡视差图预测网络,获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,作为第一非基础样本的第一中间左视差图和第一中间右视差图;
所述基于各个所述第一非基础样本的第一预测左视差图和第一预测右视差图,按预设的第一损失函数公式,判断所述过渡视差图预测网络是否收敛至稳定的步骤,包括:
基于所述第一预测左视差图和第一预测右视差图,获得第一非基础样本的预测左视图和预测右视图;根据预测右视图和实际右视图,按所述预设的第一损失函数公式,计算右视图的第一损失值;根据预测左视图和实际左视图,按所述预设的第一损失函数公式,计算左视图的第一损失值;
根据所述右视图的第一损失值和左视图的第一损失值,判断所述过渡视差图预测网络是否收敛至稳定。
12.根据权利要求1~4或11任一项所述的方法,其特征在于,
所述视差图预测网络为:基于VGG网络结构或者U-net网络结构的网络;其包括:第二编码部分和解码部分;其中,
所述第二编码部分,包含:预设数量的卷积层;对输入的左视图进行预设层数的卷积,获得最后一层卷积层输出的第二编码下采样图像;
所述解码部分,包含:预设数量的上采样和卷积层;根据各个卷积层输出的各层的特征图像,通过上采样的双线性插值和卷积层处理,输出预测左视差图和预测右视差图。
13.一种视差图预测方法,其特征在于,所述方法包括:
获得待进行预测的单目视图;
将单目视图,输入到预先训练好的视差图预测网络模型;所述视差图预测网络模型为采用权利要求1~12任一项的方法训练获得的;
获取视差图预测网络模型预测的双目视差图。
14.一种二维2D图像转换为三维3D图像的方法,其特征在于,所述方法包括:
获取待转换为3D图像的2D图像;
将所述2D图像作为用于生成3D图像的第一单目视图,输入到预先训练好的视差图预测网络模型;所述视差图预测网络模型为采用权利要求1~12任一项的方法训练获得的;所述第一单目视图为左视图或右视图;
获取视差图预测网络模型输出的第一预测视差图;
基于所述第一预测视差图,获得第二单目视图;所述第二单目视图为与第一单目视图对应的右视图或左视图;
基于所述第一单目视图和所述第二单目视图,生成3D图像。
15.一种视差图预测网络模型的训练装置,其特征在于,所述装置包括:
训练样本获得单元,用于获得3D片源训练样本集,所述训练样本集中包含:多个不同双目相机对应的样本子集,每个样本子集由同一个双目相机拍摄的多个3D片源构成;其中,由预设的基础双目相机拍摄的多个3D片源构成的样本子集被设置为基础样本子集,由其他各个非基础双目相机拍摄的多个3D片源的各个样本子集均被设置为非基础样本子集;
过渡视差图预测网络获得单元,用于用基础样本子集中的多个基础样本,对初始视差图预测网络进行训练获得过渡视差图预测网络;
非基础样本转换参数获得单元,用于用各个非基础样本子集中的多个非基础样本,分别对初始转换参数网络进行训练,获得各个非基础样本子集分别对应的转换参数;所述转换参数为:将所述过渡视差图预测网络输出的基于基础双目相机的中间视差图,转换为基于各个非基础双目相机的视差图的参数;
最终视差图网络获得单元,用于用各个非基础样本子集中的多个非基础样本及其对应的转换参数,对所述过渡视差图预测网络进行训练,获得最终的视差图预测网络;其中,训练过程中使用的损失函数值,是基于第一预测视差图,按预设的第一损失函数公式计算获得的;所述第一预测视差图为:用所述转换参数对所述过渡视差图预测网络输出的基于基础双目相机的中间视差图进行转换,获得的基于非基础双目相机的视差图。
16.根据权利要求15所述的装置,其特征在于,所述最终视差图网络获得单元,包括:
中间视差图获得模块,用于从各个非基础样本子集中选择预设数量个第一非基础样本,分别输入至所述过渡视差图预测网络,分别获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,分别作为各个第一非基础样本的第一中间左视差图和第一中间右视差图;
第一预测视差图转换模块,用于按各个所述第一非基础样本对应的转换参数和预设的视差图转换公式,分别将所述第一非基础样本的第一中间左视差图和第一中间右视差图转换为第一预测左视差图和第一预测右视差图;
过渡视差图预测网络判断模块,用于基于各个所述第一非基础样本的第一预测左视差图和第一预测右视差图,按预设的第一损失函数公式,判断所述过渡视差图预测网络是否收敛至稳定;
第一训练次数判断模块,用于如果收敛至稳定,则将训练次数的数量增加一次,并判断是否达到预设的训练次数;如果没达到预设的训练次数,则触发所述中间视差图获得模块执行所述从各个非基础样本子集中选择预设数量个第一非基础样本,分别输入至所述过渡视差图预测网络,分别获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,分别作为第一非基础样本的第一中间左视差图和第一中间右视差图;如果达到预设的训练次数,则将所述过渡视差图预测网络,确定为视差图预测网络模型;
过渡视差图预测网络参数调整模块,用于如果未收敛至稳定,则将训练次数的数量增加一次,并调整所述过渡视差图预测网络的网络参数,触发所述中间视差图获得模块执行所述从各个非基础样本子集中选择预设数量个第一非基础样本,分别输入至所述过渡视差图预测网络,分别获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,分别作为第一非基础样本的第一中间左视差图和第一中间右视差图。
17.根据权利要求15所述的装置,其特征在于,所述过渡视差图预测网络获得单元,包括:
基础样本视差图获得模块,用于从所述基础样本子集中选择预设数量个当前基础样本,分别输入初始视差图预测网络,分别获得当前基础样本的预测左视差图和预测右视差图;
第一判断模块,用于基于各个所述当前基础样本的预测左视差图和预测右视差图,按预设的第一损失函数公式,判断所述过渡视差图预测网络是否收敛至稳定;
第一训练次数判断模块,用于如果收敛至稳定,则将训练次数的数量增加一次,并判断是否达到预设的训练次数;如果没达到预设的训练次数,则触发所述基础样本视差图获得模块执行所述从所述基础样本子集中选择预设数量个当前基础样本,分别输入初始视差图预测网络,分别获得当前基础样本的预测左视差图和预测右视差图的步骤;如果达到预设的训练次数,则将所述初始视差图预测网络,确定为过渡视差图预测网络;
过渡视差图预测网络的网络参数调整模块,用于如果未收敛至稳定,则将训练次数的数量增加一次,并调整所述初始视差图预测网络的网络参数,返回所述从所述基础样本子集中选择预设数量个当前基础样本,分别输入初始视差图预测网络,分别获得当前基础样本的预测左视差图和预测右视差图的步骤。
18.根据权利要求17所述的装置,其特征在于,
所述基础样本视差图获得模块,具体用于
从所述基础样本子集中选择预设数量个当前基础样本的左视图,分别输入初始视差图预测网络,分别获得当前基础样本的预测左视差图和预测右视差图;
所述基于各个所述当前基础样本的预测左视差图和预测右视差图,按预设的第一损失函数公式,判断所述过渡视差图预测网络是否收敛至稳定的步骤,包括:
基于各个所述当前基础样本的预测左视差图或预测右视差图,分别获得当前基础样本的预测左视图和预测右视图;根据各个预测右视图和实际右视图,按所述预设的第一损失函数公式,计算右视图的第一损失值,根据各个预测左视图和实际左视图,按所述预设的第一损失函数公式,计算左视图的第一损失值;
根据所述右视图的第一损失值和左视图的第一损失值,判断所述过渡视差图预测网络是否收敛至稳定。
19.根据权利要求15所述的装置,其特征在于,所述非基础样本转换参数获得单元,包括:非基础样本子集转换参数获得模块;
所述非基础样本子集转换参数获得模块,包括:
第二非基础样本转换参数子模块,用于从当前非基础样本子集中选择预设数量个第二非基础样本,分别输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数;
非基础样本中间视差图获得子模块,用于将各个所述第二非基础样本输入所述过渡视差图预测网络,分别获得第二非基础样本的第二中间左视差图和第二中间右视差图;
第二非基础样本视差图转换子模块,用于按各个所述第二非基础样本对应的转换参数和预设的视差图转换公式,将各个所述第二中间左视差图和第二中间右视差图转换为第二预测左视差图和第二预测右视差图;
参数网络判断子模块,用于基于各个所述第二预测左视差图和第二预测右视差图,按预设的第二损失函数公式,判断所述初始转换参数网络是否收敛至稳定;
训练次数判断子模块,用于如果收敛至稳定,则将训练次数的数量增加一次,并判断是否达到预设的训练次数;如果没达到预设的训练次数,则触发所述第二非基础样本转换参数子模块执行所述从当前非基础样本子集中选择预设数量个第二非基础样本,分别输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数;如果达到预设的次数,则将所述初始转换参数网络输出的当前转换参数,确定为当前非基础样本子集对应的转换参数;
参数网络调整子模块,用于如果未收敛至稳定,则将训练次数的数量增加一次,并调整所述初始转换参数网络的网络参数,触发所述第二非基础样本转换参数子模块执行所述从当前非基础样本子集中选择预设数量个第二非基础样本,分别输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数。
20.根据权利要求19所述的装置,其特征在于,所述转换参数网络输出的转换参数为:第一转换参数和第二转换参数;
预设的视差图转换公式,为:D’=第一转换参数*D+第二转换参数,其中D为基于拍摄基础样本子集的相机预测的视差图,第一转换参数和第二转换参数为基于拍摄各个非基础样本子集的不同相机的视差图与基于拍摄基础样本子集的相机的视差图之间的转化关系,D’为各个非基础样本子集的不同相机的视差图。
21.根据权利要求20所述的装置,其特征在于,
所述第二非基础样本转换参数子模块,具体用于
从当前非基础样本子集中选择预设数量个第二非基础样本的左视图和右视图,分别输入初始转换参数网络,分别获得第二非基础样本对应的当前转换参数;
所述非基础样本中间视差图获得子模块,具体用于:
将所述第二非基础样本的左视图输入所述过渡视差图预测网络,获得第二非基础样本的预测左视差图和预测右视差图,将其中预测左视差图作为第二中间左视差图;将其中预测右视差图作为第二中间右视差图。
22.根据权利要求21所述的装置,其特征在于,
所述参数网络判断子模块,包括:
预测视图获得子模块,用于基于各个所述第二预测左视差图和第二预测右视差图,获得第二非基础样本的预测左视图和预测右视图;
损失值计算子模块,用于根据预测右视图和实际右视图,按所述预设的第二损失函数公式,计算右视图的第二损失值;根据预测左视图和实际左视图,按所述预设的第二损失函数公式,计算左视图的第二损失值;
参数网络收敛判断子模块,用于根据所述右视图的第二损失值和左视图的第二损失值,判断所述初始转换参数网络是否收敛至稳定。
23.根据权利要求22所述的装置,其特征在于,
所述第二预设损失函数包含:SSIM+L1损失函数和一阶梯度损失函数;
损失值计算子模块,具体用于:
根据预测右视图和实际右视图计算出SSIM+L1损失函数值
Figure FDA0002947631410000121
和一阶梯度损失函数
Figure FDA0002947631410000122
根据预测左视图和实际左视图计算出SSIM+L1损失函数值
Figure FDA0002947631410000123
和一阶梯度损失函数
Figure FDA0002947631410000124
参数网络收敛判断子模块,具体用于:
Figure FDA0002947631410000125
计算最终的损失值;
根据最终损失值判断所述初始转换参数网络是否收敛至稳定。
24.根据权利要求19~23任一项所述的装置,其特征在于,
所述转换参数网络,为:基于VGG网络结构的网络;其包括:第一编码部分和参数提取部分;其中,
所述第一编码部分,包含:预设数量的卷积层;对输入的左视图和右视图进行合并后,对合并的图像进行预设层数的卷积,获得最后一层卷积层输出的下采样图像;
所述参数提取部分,包含:一层平均池化层和三层全连接层;对所述下采样图像进行一层平均池化和三层全连接处理,输出第一转换参数和第二转换参数。
25.根据权利要求16所述的装置,其特征在于,所述中间视差图获得模块,具体用于:
从任一个非基础样本子集中选择预设数量个第一非基础样本的左视图输入至所述过渡视差图预测网络,获得所述过渡视差图预测网络输出的预测左视差图和预测右视差图,作为第一非基础样本的第一中间左视差图和第一中间右视差图;
过渡视差图预测网络判断模块,具体用于:
基于所述第一预测左视差图和第一预测右视差图,获得第一非基础样本的预测左视图和预测右视图;根据预测右视图和实际右视图,按所述预设的第一损失函数公式,计算右视图的第一损失值;根据预测左视图和实际左视图,按所述预设的第一损失函数公式,计算左视图的第一损失值;
根据所述右视图的第一损失值和左视图的第一损失值,判断所述过渡视差图预测网络是否收敛至稳定。
26.根据权利要求15~18或25任一项所述的装置,其特征在于,
所述视差图预测网络为:基于VGG网络结构或者U-net网络结构的网络;其包括:第二编码部分和解码部分;其中,
所述第二编码部分,包含:预设数量的卷积层;对输入的左视图进行预设层数的卷积,获得最后一层卷积层输出的第二编码下采样图像;
所述解码部分,包含:预设数量的上采样和卷积层;根据各个卷积层输出的各层的特征图像,通过上采样的双线性插值和卷积层处理,输出预测左视差图和预测右视差图。
27.一种视差图预测装置,其特征在于,所述装置包括:
单目视图获得单元,用于获得待进行预测的单目视图;
单目视图输入单元,用于将单目视图,输入到预先训练好的视差图预测网络模型;所述视差图预测网络模型为采用权利要求15~26任一项的装置训练获得的;
双目视差图获得单元,用于获取视差图预测网络模型预测的双目视差图。
28.一种二维2D图像转换为三维3D图像的装置,其特征在于,所述装置包括:
待转换图像获取单元,用于获取待转换为3D图像的2D图像;
2D图像输入单元,用于将所述2D图像作为用于生成3D图像的第一单目视图,输入到预先训练好的视差图预测网络模型;所述视差图预测网络模型为采用权利要求1~11任一项的方法训练获得的;所述第一单目视图为左视图或右视图;
第一预测视差图获取单元,用于获取视差图预测网络模型输出的第一预测视差图;
第二单目视图获得单元,用于基于所述第一预测视差图,获得第二单目视图;所述第二单目视图为与第一单目视图对应的右视图或左视图;
3D图像生成单元,用于基于所述第一单目视图和所述第二单目视图,生成3D图像。
29.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-12任一所述的方法步骤。
30.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求13所述的方法步骤。
31.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求14所述的方法步骤。
CN201910381648.0A 2019-05-08 2019-05-08 视差图预测模型训练方法、预测方法、装置及电子设备 Active CN109934307B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910381648.0A CN109934307B (zh) 2019-05-08 2019-05-08 视差图预测模型训练方法、预测方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910381648.0A CN109934307B (zh) 2019-05-08 2019-05-08 视差图预测模型训练方法、预测方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN109934307A CN109934307A (zh) 2019-06-25
CN109934307B true CN109934307B (zh) 2021-04-09

Family

ID=66991459

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910381648.0A Active CN109934307B (zh) 2019-05-08 2019-05-08 视差图预测模型训练方法、预测方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN109934307B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110310317A (zh) * 2019-06-28 2019-10-08 西北工业大学 一种基于深度学习的单目视觉场景深度估计的方法
CN112907645B (zh) * 2021-03-05 2022-08-26 重庆紫光华山智安科技有限公司 视差图获取方法、装置、训练方法、电子设备和介质
CN116320358B (zh) * 2023-05-19 2023-12-01 成都工业学院 一种视差图像预测装置及方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108335322A (zh) * 2018-02-01 2018-07-27 深圳市商汤科技有限公司 深度估计方法和装置、电子设备、程序和介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9165401B1 (en) * 2011-10-24 2015-10-20 Disney Enterprises, Inc. Multi-perspective stereoscopy from light fields
US10528815B2 (en) * 2016-12-31 2020-01-07 Vasuyantra Corp. Method and device for visually impaired assistance
CN108616746A (zh) * 2017-10-12 2018-10-02 叠境数字科技(上海)有限公司 基于深度学习的2d全景图像转3d全景图像的方法
CN108304354B (zh) * 2018-01-25 2021-08-24 腾讯科技(深圳)有限公司 一种预测模型训练方法及装置、存储介质、电子设备
CN109598754B (zh) * 2018-09-29 2020-03-17 天津大学 一种基于深度卷积网络的双目深度估计方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108335322A (zh) * 2018-02-01 2018-07-27 深圳市商汤科技有限公司 深度估计方法和装置、电子设备、程序和介质

Also Published As

Publication number Publication date
CN109934307A (zh) 2019-06-25

Similar Documents

Publication Publication Date Title
CN109977956B (zh) 一种图像处理方法、装置、电子设备以及存储介质
CN109101975B (zh) 基于全卷积神经网络的图像语义分割方法
CN109934307B (zh) 视差图预测模型训练方法、预测方法、装置及电子设备
CN110111244B (zh) 图像转换、深度图预测和模型训练方法、装置及电子设备
CN111476719B (zh) 图像处理方法、装置、计算机设备及存储介质
WO2021169404A1 (zh) 深度图像生成方法、装置及存储介质
CN110751649A (zh) 视频质量评估方法、装置、电子设备及存储介质
CN110544214A (zh) 一种图像修复方法、装置及电子设备
CN110084742B (zh) 一种视差图预测方法、装置及电子设备
CN110675385A (zh) 一种图像处理方法、装置、计算机设备以及存储介质
CN113298728B (zh) 一种视频优化方法、装置、终端设备及存储介质
WO2023159757A1 (zh) 视差图生成方法和装置、电子设备及存储介质
CN112907448A (zh) 一种任意比率图像超分辨率方法、系统、设备及存储介质
CN115565154A (zh) 可行域预测方法、装置、系统和存储介质
CN111311667A (zh) 一种内容自适应双目匹配方法和装置
CN112419342A (zh) 图像处理方法、装置、电子设备和计算机可读介质
CN116486009A (zh) 单目三维人体重建方法、装置以及电子设备
CN110113595B (zh) 一种2d视频转3d视频的方法、装置及电子设备
CN111932466B (zh) 一种图像去雾方法、电子设备及存储介质
CN115620017A (zh) 图像的特征提取方法、装置、设备及存储介质
CN112070888B (zh) 图像生成方法、装置、设备和计算机可读介质
CN115223018A (zh) 伪装对象协同检测方法及装置、电子设备和存储介质
CN109996056B (zh) 一种2d视频转3d视频的方法、装置及电子设备
CN114187318A (zh) 图像分割的方法、装置、电子设备以及存储介质
CN112241740A (zh) 一种特征提取方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant