发明内容
本发明的目的在于克服现有技术中的缺点与不足,提供一种实体目标的模型构建方法、存储介质和计算机设备,可以精准构建出实体目标的模型,且运算简单,耗时短。
本发明的一个实施例提供一种实体目标的模型构建方法,包括:
对包含实体目标的图像进行语义分割,得到所述实体目标的目标外轮廓;
将所述目标外轮廓输入到训练后的外轮廓语法分类网络,得到所述目标外轮廓对应的目标外轮廓类别;所述目标外轮廓类别为预设的多个外轮廓类别中的一种,各个所述外轮廓类别用于区分参数类型或参数量不同的外轮廓;
获取与所述目标外轮廓类别对应的训练后的目标体模型参数回归网络,所述目标体模型参数回归网络是训练后的多个体模型参数回归网络中的一个,其中,各个所述体模型参数回归网络与各个所述外轮廓类别一一对应;
将所述目标外轮廓输入到所述目标体模型参数回归网络,得到所述目标外轮廓对应的相机外参矩阵和体模型参数;
根据所述相机外参矩阵和体模型参数构建所述实体目标的三维模型。
相对于现有技术,本发明的实体目标的模型构建方法,首先对包含实体目标的图像进行语义分割,以得到所述实体目标的目标外轮廓,然后利用训练后的外轮廓语法分类网络得到所述目标外轮廓对应的目标外轮廓类别,在根据所述目标外轮廓类别对应的训练后的目标体模型参数回归网络回归出所述目标外轮廓对应的图像的相机外参矩阵,以及所述目标外轮廓对应的实体目标的体模型参数,根据所述相机外参矩阵和体模型参数构建所述实体目标的三维模型,从而实现精准建模的技术效果,获取所述相机外参矩阵和体模型参数的回归运算过程简单,节省了参数的运算时间成本。
在一个实施例中,所述外轮廓语法分类网络的训练过程包括:
获取各个合成体模型投影到各个视角下的图片的外轮廓,得到多个第一外轮廓样本;
获取各个所述第一外轮廓样本的参数类型和参数量,根据所述第一外轮廓样本的参数类型和参数量对所述第一外轮廓样本进行类别划分,得到多个外轮廓类别;
利用对应各个外轮廓类别的所述第一外轮廓样本训练初始的外轮廓语法分类网络,得到训练后的外轮廓语法分类网络。
通过对应各个外轮廓类别的所述第一外轮廓样本对初始的外轮廓语法分类网络进行深度学习训练,使训练后的所述外轮廓语法分类网络可以准确检测所述目标外轮廓所属的外轮廓类别。
在一个实施例中,所述体模型参数回归网络的训练过程包括:
在多个拍摄距离,通过各个所述视角的相机外参矩阵,获取同一个外轮廓类别的各个不同参数值的合成体模型投影到对应视角下的图片的外轮廓,得到多个第二外轮廓样本;其中,所述拍摄距离为对应的相机到所述合成体模型的距离;所述第二外轮廓样本包括多个外轮廓类别训练样本;
根据多个所述外轮廓类别训练样本,以及与各个所述外轮廓类别训练样本对应的拍摄距离、相机外参矩阵,训练初始的体模型参数回归网络,得到与各个所述外轮廓类别对应的训练后的体模型参数回归网络。
通过属于同一个外轮廓类别,但不同合成体模型的参数值、拍摄距离或相机外参矩阵的多个第二外轮廓样本进行深度学习训练,使训练后的体模型参数回归网络可以准确检测出所述目标外轮廓对应的相机外参矩阵和体模型参数。
在一个实施例中,所述第二外轮廓样本还包括外轮廓优化样本;所述得到训练后的体模型参数回归网络的步骤后,还包括:
将所述外轮廓优化样本输入到对应的训练后的体模型参数回归网络,得到所述外轮廓优化样本的相机外参矩阵和体模型参数;
根据所述外轮廓优化样本的相机外参矩阵和体模型参数构建优化样品的三维模型;
根据所述相机外参矩阵获取所述优化样品的三维模型的二维图像;
对所述二维图像进行语义分割,得到所述二维图像上的优化样品的外轮廓;
将所述优化样品的外轮廓和所述外轮廓优化样本进行比对,根据比对结果优化所述训练后的体模型参数回归网络。
可以根据优化样品的外轮廓和所述外轮廓优化样本的比对结果来优化所述训练后的体模型参数回归网络,以进一步提高训练后的体模型参数回归网络回归相机外参矩阵和体模型参数的准确性。
在一个实施例中,所述将所述优化样品的外轮廓和所述外轮廓优化样本进行比对,根据比对结果优化所述训练后的体模型参数回归网络的步骤之前,还包括:
对所述优化样品的外轮廓和所述外轮廓优化样本进行离散化操作。通过离散化操作,可以得到所述优化样品的外轮廓和所述外轮廓优化样本的离散点,再将两者的离散点进行对比,根据对比结果优化所述训练后的体模型参数回归网络,可以提高对比结果的准确性,从而提高所述训练后的体模型参数回归网络的优化效果。
在一个实施例中,还包括:
获取所述实体目标的三维模型的立面图像;
将所述立面图像输入到训练后的立面语法分类网络,得到所述立面图像对应的目标立面图像类别;
将所述立面图像输入到与所述目标立面图像类别对应的训练后的立面参数回归网络,得到对应的立面参数;
根据所述立面参数优化所述实体目标的三维模型。
可以通过与所述目标立面图像类别对应的训练后的立面参数回归网络,获取所述实体目标的三维模型对应的立面参数,从而根据立面参数优化所述实体目标的三维模型对应立面的细节特征。
在一个实施例中,所述立面语法分类网络的训练过程包括:
获取各个合成体模型的立面图样本;
获取各个所述立面图样本的参数类型和参数量,根据所述立面图样本的参数类型和参数量对所述立面图样本进行类别划分,得到多个立面图像类别;
利用对应各个立面图像类别的所述立面图样本训练初始的立面语法分类网络,得到训练后的立面语法分类网络。
通过不同立面图像类别的立面图样本训练初始的立面语法分类网络,使训练后的所述立面语法分类网络可以准确检测所述立面图像所属的立面图像类别。
在一个实施例中,所述立面参数回归网络的训练过程包括:
利用同一个立面图像类别的各个不同参数值的立面图样本,训练初始的立面参数回归网络,得到与各个所述立面图像类别对应的训练后的立面参数回归网络。
通过同一个立面图像类别的各个不同参数值的立面图样本训练初始的立面参数回归网络,使训练后的立面参数回归网络可以准确检测所述立面图像的立面参数。
本发明的一个实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的实体目标的模型构建方法的步骤。
本发明的一个实施例还提供一种计算机设备,包括储存器、处理器以及储存在所述储存器中并可被所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的实体目标的模型构建方法的步骤。
本发明的实体目标的模型构建方法、存储介质和计算机设备,具有以下优点:
1、通过实体目标的目标外轮廓的外轮廓类别,选择对应的目标体模型参数回归网络计算出对应的相机外参矩阵和实体目标的体模型参数,从而得到准确的建模数据,以实现精准建模;且由于外轮廓类别与体模型参数回归网络一一对应,因此先识别外轮廓类别,再根据对应的体模型参数回归网络计算建模数据的过程,可以大大降低建模数据的计算的复杂性,同时降低了运算的时间成本。
2、将外轮廓优化样本输入到训练后的体模型参数回归网络,得到对应的相机外参矩阵和体模型参数,并基于得到的体模型参数构建外轮廓优化样本的三维模型,基于相机外参矩阵获取三维模型的二维图像,根据二维图像中的外轮廓与外轮廓优化样本的外轮廓对比结果对训练后的体模型参数回归网络进行优化,可以进一步提高体模型参数回归网络的输出结果的准确性。
3、通过离散化操作,可以细化二维图像中的外轮廓与外轮廓优化样本的外轮廓对比结果,得到更准确的对比结果以用于优化所述体模型参数回归网络。
4、通过与所述目标立面图像类别对应的训练后的立面参数回归网络,获取所述实体目标的三维模型对应的立面参数,从而根据立面参数优化所述实体目标的三维模型对应立面的细节特征。
为了能更清晰的理解本发明,以下将结合附图说明阐述本发明的具体实施方式。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施例方式作进一步地详细描述。
应当明确,所描述的实施例仅仅是本申请实施例一部分实施例,而不是全部的实施例。基于本申请实施例中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本申请实施例保护的范围。
下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。在本申请的描述中,需要理解的是,术语“第一”、“第二”、“第三”等仅用于区别类似的对象,而不必用于描述特定的顺序或先后次序,也不能理解为指示或暗示相对重要性。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。在此所使用的词语“如果”/“若”可以被解释成为“在……时”或“当……时”或“响应于确定”。
此外,在本申请的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A 和/或 B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
请参阅图1,其是本发明一个实施例的实体目标的模型构建方法的流程图,所述实体目标的模型构建方法包括:
S1:对包含实体目标的图像进行语义分割,得到所述实体目标的目标外轮廓。
其中,所述实体目标包括车辆、粮仓、房屋等,其中车辆可以是农用车、乘用车或商用车。
所述语义分割是一种典型的计算机视觉技术,通过将图像上不同目标或场景不同区域的逐像素点归类,可以识别图像中存在的内容以及位置。而在本实施例中,只是通过语义分割获取所述实体目标的目标外轮廓,而在后续的参数回归和模型构建的过程中,也不涉及所述包含实体目标的图像的色彩元素,因此可以大大减少整个模型构建过程中的运算时间。
S2:将所述目标外轮廓输入到训练后的外轮廓语法分类网络,得到所述目标外轮廓对应的目标外轮廓类别;所述目标外轮廓类别为预设的多个外轮廓类别中的一种,各个所述外轮廓类别用于区分参数类型或参数量不同的外轮廓。
其中,所述目标外轮廓类别是根据所述目标外轮廓的参数类型和参数量进行划分的,参数类型和参数量都完全相同的外轮廓属于同一个外轮廓类别,其中,参数类型包括长、宽、高,甚至一些边距、飞檐凸起的尺寸之类的,而参数量是指所述参数类型的种类数量,而不是所述参数类型对应的参数数值,例如外轮廓A和外轮廓B的参数类型都包括且只包括长、宽、高三种参数,但外轮廓A的长、宽、高与外轮廓B的长、宽、高的参数数值并不相同(例如部分参数类型的参数数值不相同,或全部参数类型的参数数值都不相同),由于外轮廓A和外轮廓B的参数类型和参数量相同,因此外轮廓A和外轮廓B属于同一种外轮廓类别。
S3:获取与所述目标外轮廓类别对应的训练后的目标体模型参数回归网络,所述目标体模型参数回归网络是训练后的多个体模型参数回归网络中的一个,其中,各个所述体模型参数回归网络与各个所述外轮廓类别一一对应。
其中,每一个训练后的体模型参数回归网络都可以从对应外轮廓类别的外轮廓中,回归出对应的相机外参矩阵和体模型参数。
S4:将所述目标外轮廓输入到所述目标体模型参数回归网络,得到所述目标外轮廓对应的相机外参矩阵和体模型参数。
S5:根据所述相机外参矩阵和体模型参数构建所述实体目标的三维模型。
在本实施例中,本发明的实体目标的模型构建方法,首先对包含实体目标的图像进行语义分割,以得到所述实体目标的目标外轮廓,然后利用训练后的外轮廓语法分类网络得到所述目标外轮廓对应的目标外轮廓类别,再根据所述目标外轮廓类别对应的训练后的体模型参数回归网络回归出所述目标外轮廓对应的图像的相机外参矩阵,以及所述目标外轮廓对应的实体目标的体模型参数,根据所述相机外参矩阵和体模型参数构建所述实体目标的三维模型,从而实现精准建模的技术效果,获取所述相机外参矩阵和体模型参数的回归运算过程简单,节省了参数的运算时间成本。
请参阅图2,在一个可行的实施例中,所述外轮廓语法分类网络的训练过程包括:
S201:获取各个合成体模型投影到各个视角下的图片的外轮廓,得到多个第一外轮廓样本。
S202:获取各个所述第一外轮廓样本的参数类型和参数量,根据所述第一外轮廓样本的参数类型和参数量对所述第一外轮廓样本进行类别划分,得到多个外轮廓类别。
S203:利用对应各个外轮廓类别的所述第一外轮廓样本训练初始的外轮廓语法分类网络,得到训练后的外轮廓语法分类网络。
在本实施例中,通过对应各个外轮廓类别的所述第一外轮廓样本对初始的外轮廓语法分类网络进行深度学习训练,使训练后的所述外轮廓语法分类网络可以准确检测所述目标外轮廓所属的外轮廓类别。
请参阅图3,在一个可行的实施例中,所述体模型参数回归网络的训练过程包括:
S301:在多个拍摄距离,通过各个所述视角的相机外参矩阵,获取同一个外轮廓类别的各个不同参数值的合成体模型投影到对应视角下的图片的外轮廓,得到多个第二外轮廓样本;其中,所述拍摄距离为对应的相机到所述合成体模型的距离;所述第二外轮廓样本包括多个外轮廓类别训练样本。
S302:根据多个所述外轮廓类别训练样本,以及与各个所述外轮廓类别训练样本对应的拍摄距离、相机外参矩阵,训练初始的体模型参数回归网络,得到与各个所述外轮廓类别对应的训练后的体模型参数回归网络。
其中,所述体模型参数回归网络除了计算所述体模型参数以外,还回归了相机外参矩阵,其中使用了测地距离来衡量视角旋转矩阵的残差,其中,所述测地距离是指衡量两个旋转矩阵接近程度的度量,所述测地距离的雅克比矩阵值(梯度)的计算公式为:
上述计算公式中,
表示地距离的雅克比矩阵值,
表示测地距离,
表示已知的3×3旋转矩阵,
表示未知的3×3的旋转矩阵,
表示矩阵转置,
表示未知的含参矩阵,参数
表示蕴含三个欧拉角旋转参数的旋转矩阵,
表示单位矩阵,
表示克罗内克积符号;
表示向量提取函数,表现为对矩阵的每个列向量取出来,按顺序拼接成一个长的列向量;
表示偏导数。
在本实施例中,通过属于同一个外轮廓类别,但不同合成体模型的参数值、拍摄距离或相机外参矩阵的多个第二外轮廓样本进行深度学习训练,使训练后的体模型参数回归网络可以准确检测出所述目标外轮廓对应的相机外参矩阵和体模型参数。而由于不同的外轮廓类别对应的训练后的体模型参数回归网络不同,因此所述步骤S301-S302需要根据外轮廓类别的数量来对多个初始的体模型参数回归网络进行训练,以得到对应各个外轮廓类别的训练后的体模型参数回归网络。
请参阅图4,在一个可行的实施例中,所述第二外轮廓样本还包括外轮廓优化样本;所述得到训练后的体模型参数回归网络的步骤后,还包括:
S303:将所述外轮廓优化样本输入到对应的训练后的体模型参数回归网络,得到所述外轮廓优化样本的相机外参矩阵和体模型参数。
S304:根据所述外轮廓优化样本的相机外参矩阵和体模型参数构建优化样品的三维模型。
S305:根据所述相机外参矩阵获取所述优化样品的三维模型的二维图像。
S306:对所述二维图像进行语义分割,得到所述二维图像上的优化样品的外轮廓。
S307:将所述优化样品的外轮廓和所述外轮廓优化样本进行比对,根据比对结果优化所述训练后的体模型参数回归网络。
在本实施例中,由于只通过训练得到的体模型参数回归网络的回归运算结果可能会存在偏差,因此根据优化样品的外轮廓和所述外轮廓优化样本的比对结果来优化所述训练后的体模型参数回归网络,以进一步提高训练后的体模型参数回归网络回归相机外参矩阵和体模型参数的准确性。优选地,为了进一步提高优化效果,所述外轮廓优化样本还可以采用人手标注出来的精确的外轮廓。
优选地,所述步骤S307:将所述优化样品的外轮廓和所述外轮廓优化样本进行比对,根据比对结果优化所述训练后的体模型参数回归网络的步骤之前,还包括:
对所述优化样品的外轮廓和所述外轮廓优化样本进行离散化操作。
由于所述优化样品的外轮廓和所述外轮廓优化样本都是线条的形式表示的,而离散点的对比效果优于线条对比,因此,通过离散化操作,可以得到所述优化样品的外轮廓和所述外轮廓优化样本的离散点,再将两者的离散点进行对比,根据对比结果优化所述训练后的体模型参数回归网络,可以提高对比结果的准确性,从而提高所述训练后的体模型参数回归网络的优化效果。
请参阅图5,在一个可行的实施例中,还包括:
S6:获取所述实体目标的三维模型的立面图像。
所述立面图像是指所述实体目标的三维模型的外墙图像,可以指所述实体目标的三维模型的正面图像、侧面图像或背面图像。在本实施例中,优选地,所述立面图像指的是所述实体目标的三维模型细节特征最多的外墙图像,例如窗户最多的外墙图像。
S7:将所述立面图像输入到训练后的立面语法分类网络,得到所述立面图像对应的目标立面图像类别。
S8:将所述立面图像输入到与所述目标立面图像类别对应的训练后的立面参数回归网络,得到对应的立面参数。
S9:根据所述立面参数优化所述实体目标的三维模型。
在本实施例中,可以通过与所述目标立面图像类别对应的训练后的立面参数回归网络,获取所述实体目标的三维模型对应的立面参数,从而根据立面参数优化所述实体目标的三维模型对应立面的细节特征,进一步提高所述实体目标的三维模型的建模准确性。
请参阅图6,在一个可行的实施例中,所述立面语法分类网络的训练过程包括:
S701:获取各个合成体模型的立面图样本。
S702:获取各个所述立面图样本的参数类型和参数量,根据所述立面图样本的参数类型和参数量对所述立面图样本进行类别划分,得到多个立面图像类别。
S703:利用对应各个立面图像类别的所述立面图样本训练初始的立面语法分类网络,得到训练后的立面语法分类网络。
在本实施例中,通过不同立面图像类别的立面图样本训练初始的立面语法分类网络,使训练后的所述立面语法分类网络可以准确检测所述立面图像所属的立面图像类别。
在一个可行的实施例中,所述立面参数回归网络的训练过程包括:
利用同一个立面图像类别的各个不同参数值的立面图样本,训练初始的立面参数回归网络,得到与各个所述立面图像类别对应的训练后的立面参数回归网络。
在本实施例中,通过同一个立面图像类别的各个不同参数值的立面图样本训练初始的立面参数回归网络,使训练后的立面参数回归网络可以准确检测所述立面图像的立面参数。
本发明的一个实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的实体目标的模型构建方法的步骤。
本发明的一个实施例还提供一种计算机设备,包括储存器、处理器以及储存在所述储存器中并可被所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的实体目标的模型构建方法的步骤。
以上所描述的设备实施例仅仅是示意性的,其中所述作为分离部件说明的组件可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中选定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中选定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中选定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD) 或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。