深度图像模型训练方法及装置与流程

文档序号:23654541发布日期:2021-01-15 13:51阅读:64来源:国知局
深度图像模型训练方法及装置与流程

本说明书实施例涉及计算机技术领域,特别涉及一种深度图像模型训练方法。本说明书一个或者多个实施例同时涉及一种深度图像模型训练装置,一种计算设备,以及一种计算机可读存储介质。



背景技术:

随着信息技术的发展,对动物的身份认证以及身份信息管理越来越被大众所重视,并且在很多面向动物的领域或服务中,例如宠物保险、动物认证识别、科研管理、受保护物种跟踪等等,在这些领域中对动物进行身份认证以及身份信息管理是不可或缺的一部分。

对动物进行身份认证和身份信息管理的核心,是对动物进行精准的身份识别,只有在准确地对动物进行身份识别的基础上,才能有效地增强对动物的身份认证以及身份信息管理,从而向动物提供更优质的、个性化的服务或研究,而目前多采用识别动物的面部图像、虹膜图像或鼻纹图像的方式实现对动物的身份识别,为保证识别结果的准确性,就要求所述面部图像、虹膜图像或鼻纹图像均为正视角图像,在采集的面部图像、虹膜图像或鼻纹图像为非正视角图像的情况下,可通过计算图像的拍摄角度,从而根据拍摄角度将非正视角图像转换为正视角图像,但目前提供的拍摄角度计算方式所获得的计算结果准确度较低,因此,亟需一种更为有效的方法以解决此类问题。



技术实现要素:

有鉴于此,本说明书实施例提供了一种深度图像模型训练方法。本说明书一个或者多个实施例同时涉及一种深度图像模型训练装置,一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的技术缺陷。

根据本说明书实施例的第一方面,提供了一种深度图像模型训练方法,包括:

从样本视频文件中提取样本对象的第一面部视频帧和第二面部视频帧;

根据所述第一面部视频帧确定所述第二面部视频帧对应的位姿变换矩阵;

将所述第一面部视频帧输入深度图像模型进行处理,生成所述第一面部视频帧的深度图像,并基于所述深度图像确定所述第一面部视频帧的深度特征信息;

基于所述深度特征信息、所述位姿变换矩阵以及预先获取的相机参数生成所述第二面部视频帧对应的虚拟合成图像;

计算所述虚拟合成图像与所述第二面部视频帧之间的误差,并根据计算结果对所述深度图像模型进行迭代训练。

可选地,所述从样本视频文件中提取样本对象的第一面部视频帧和第二面部视频帧,包括:

在所述样本视频文件包含的多个视频帧中,检测所述样本对象的面部特征点;

根据检测结果确定所述多个视频帧中,所述样本对象的面部特征点的对称关系,并根据所述对称关系将所述多个视频帧划分为第一面部视频帧和第二面部视频帧。

可选地,所述根据所述对称关系将所述多个视频帧划分为第一面部视频帧和第二面部视频帧,包括:

根据所述对称关系确定所述多个视频帧中各视频帧包含的满足预设对称条件的面部特征点数量;

将包含的满足预设对称条件的面部特征点数量大于预设数量阈值的视频帧划分为第一面部视频帧,并将所述多个视频帧中除所述第一面部视频帧之外的视频帧划分为第二面部视频帧。

可选地,所述根据所述第一面部视频帧确定所述第二面部视频帧对应的位姿变换矩阵,包括:

根据所述第一面部视频帧确定与所述第一面部视频帧相邻的上m帧和/或下n帧第二面部视频帧对应的位姿变换矩阵,其中m和n为正整数。

可选地,所述根据所述第一面部视频帧确定所述第二面部视频帧对应的位姿变换矩阵,包括:

根据所述第一面部视频帧确定与所述第一面部视频帧相邻的第i帧第二面部视频帧对应的位姿变换矩阵,其中i∈[1,n],n为与所述第一面部视频帧相邻的第二面部视频帧的数量;

根据所述第i帧第二面部视频帧对应的位姿变换矩阵确定第i+1帧第二面部视频帧对应的位姿变换矩阵。

可选地,所述根据所述第一面部视频帧确定所述第二面部视频帧对应的位姿变换矩阵,包括:

利用随机采样一致性算法确定所述第二面部视频帧相对于所述第一面部视频帧的位姿变换矩阵,所述位姿变换矩阵包含旋转自由度和平移自由度。

可选地,所述从样本视频文件中提取样本对象的第一面部视频帧和第二面部视频帧,包括:

根据所述第一面部视频帧的面部特征点检测结果中包含的面部特征属性信息,确定所述第二面部视频帧中相应面部特征属性的检测结果;

若根据检测结果确定所述第二面部视频帧中包含的所述相应面部特征属性信息满足预设条件,则将所述第二面部视频帧确定为目标第二面部视频帧;

相应的,所述根据所述第一面部视频帧确定所述第二面部视频帧对应的位姿变换矩阵,包括:

根据所述第一面部视频帧确定所述目标第二面部视频帧对应的位姿变换矩阵。

可选地,所述深度特征信息包括所述深度图像中各像素点的深度值;

相应的,所述基于所述深度特征信息、所述位姿变换矩阵以及预先获取的相机参数生成所述第二面部视频帧对应的虚拟合成图像,包括:

将所述各像素点的深度值、所述相机参数、所述位姿变换矩阵以及各像素点在所述第一面部视频帧中的位置坐标作为位置转换算法的输入,获取输出的所述各像素点在所述虚拟合成图像中对应的位置坐标;

确定所述深度图像中各像素点的像素值,并基于所述像素值和所述位置坐标生成所述虚拟合成图像。

可选地,所述计算所述虚拟合成图像与所述第二面部视频帧之间的误差,包括:

计算所述虚拟合成图像中各像素点的位置坐标与所述第二面部视频帧中对应的各像素点的位置坐标之间的差值;

计算所述差值的平均值,并将平均值作为所述虚拟合成图像与所述第二面部视频帧之间的误差。

可选地,所述深度图像模型训练方法,还包括:

将目标对象的待识别面部图像输入迭代训练获得的深度图像模型进行处理,生成所述待识别面部图像的深度图像;

利用位姿估计算法确定所述目标对象的待处理面部图像对应的初始相机位姿;

利用预设匹配算法对所述深度图像和所述待识别面部图像对应的三维图像进行特征点匹配处理;

根据特征点匹配处理结果对所述初始相机位姿进行优化,生成所述待识别面部图像对应的目标相机位姿。

根据本说明书实施例的第二方面,提供了一种深度图像模型训练装置,包括:

提取模块,被配置为从样本视频文件中提取样本对象的第一面部视频帧和第二面部视频帧;

第一确定模块,被配置为根据所述第一面部视频帧确定所述第二面部视频帧对应的位姿变换矩阵;

第二确定模块,被配置为将所述第一面部视频帧输入深度图像模型进行处理,生成所述第一面部视频帧的深度图像,并基于所述深度图像确定所述第一面部视频帧的深度特征信息;

生成模块,被配置为基于所述深度特征信息、所述位姿变换矩阵以及预先获取的相机参数生成所述第二面部视频帧对应的虚拟合成图像;

训练模块,被配置为计算所述虚拟合成图像与所述第二面部视频帧之间的误差,并根据计算结果对所述深度图像模型进行迭代训练。

根据本说明书实施例的第三方面,提供了一种计算设备,包括:

存储器和处理器;

所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令以实现所述深度图像模型训练方法的步骤。

根据本说明书实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现所述深度图像模型训练方法的步骤。

本说明书一个实施例通过从样本视频文件中提取样本对象的第一面部视频帧和第二面部视频帧,根据所述第一面部视频帧确定所述第二面部视频帧对应的位姿变换矩阵,将所述第一面部视频帧输入深度图像模型进行处理,生成所述第一面部视频帧的深度图像,并基于所述深度图像确定所述第一面部视频帧的深度特征信息,基于所述深度特征信息、所述位姿变换矩阵以及预先获取的相机参数生成所述第二面部视频帧对应的虚拟合成图像,计算所述虚拟合成图像与所述第二面部视频帧之间的误差,并根据计算结果对所述深度图像模型进行迭代训练;

通过上述模型训练方式训练获得的深度图像模型可用于对待识别对象的单张面部图像进行处理以获得对应的深度图,进而基于所述深度图确定所述单张面部图像的拍摄视角,以根据所述拍摄视角将所述单张面部图像转换为正视角图像,并通过所述正视角图像中包含的关键特征实现对待识别对象的身份识别,有利于保证身份识别结果的准确性。

附图说明

图1是本说明书一个实施例提供的一种深度图像模型训练方法的处理流程图;

图2是本说明书一个实施例提供的一种深度图像模型训练过程的示意图;

图3是本说明书一个实施例提供的一种深度图像模型应用过程的示意流程图;

图4是本说明书一个实施例提供的一种深度图像模型训练方法的处理过程流程图;

图5是本说明书一个实施例提供的一种深度图像模型训练装置的示意图;

图6是本说明书一个实施例提供的一种计算设备的结构框图。

具体实施方式

在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。

在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

首先,对本说明书一个或多个实施例涉及的名词术语进行解释。

pnp:perspective-n-point,是一种由3d到2d的对应关系计算位姿变换矩阵变换的方法。

icp:iterativeclosestpoint,是一种将2个3d点云配准的方法,同时也能计算出两个3d点云的位姿变换。

关键点检测:检测目标对象脸部预定义的关键点位置,输出关键点的2d坐标和属性(鼻子、眼睛等)。

位姿变换:在不同时刻相机拍摄的位置和角度的变化,位姿变换共有6个自由度:3个旋转自由度+3个平移自由度。

在本说明书中,提供了一种深度图像模型训练方法,本说明书同时涉及一种深度图像模型训练装置,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。

随着对动物的身份认证以及身份信息管理越来越被大众所重视,并且在很多面向动物的领域或服务中,例如宠物保险、动物认证识别、科研管理、受保护物种跟踪等等,在这些领域中对动物进行身份认证以及身份信息管理是不可或缺的一部分,而对动物进行身份认证和身份信息管理的核心,是对动物进行精准的身份识别,由于目前多采用识别动物的面部图像、虹膜图像或鼻纹图像的方式实现对动物的身份识别,在采集的面部图像、虹膜图像或鼻纹图像为非正视角图像的情况下,可通过计算图像的拍摄角度,从而根据拍摄角度将非正视角图像转换为正视角图像,但目前提供的拍摄角度计算方式所获得的计算结果准确度较低。

基于此,本说明书实施例提供一种深度图像模型训练方法,通过从样本视频文件中提取样本对象的第一面部视频帧和第二面部视频帧,根据所述第一面部视频帧确定所述第二面部视频帧对应的位姿变换矩阵,将所述第一面部视频帧输入深度图像模型进行处理,生成所述第一面部视频帧的深度图像,并基于所述深度图像确定所述第一面部视频帧的深度特征信息,基于所述深度特征信息、所述位姿变换矩阵以及预先获取的相机参数生成所述第二面部视频帧对应的虚拟合成图像,计算所述虚拟合成图像与所述第二面部视频帧之间的误差,并根据计算结果对所述深度图像模型进行迭代训练;

通过上述模型训练方式训练获得的深度图像模型可用于对待识别对象的单张面部图像进行处理以获得对应的深度图,进而基于所述深度图确定所述单张面部图像的拍摄视角,以根据所述拍摄视角将所述单张面部图像转换为正视角图像,并通过所述正视角图像中包含的关键特征实现对待识别对象的身份识别,有利于保证身份识别结果的准确性。

图1示出了根据本说明书一个实施例提供的一种深度图像模型训练方法的处理流程图,包括步骤102至步骤110。

步骤102,从样本视频文件中提取样本对象的第一面部视频帧和第二面部视频帧。

具体的,本说明书实施例中,所述样本对象包括可对其进行面部识别的对象,例如人或动物,若所述样本对象为动物,则所述动物包括但不限于野生动物或者豢养物。豢养即喂养、驯养或养育;豢养物包括用户所喂养或养育的动物,包括动物宠物(宠物狗、宠物猫、宠物猪等)、茶宠宠物(金蟾、貔貅等)以及另类宠物(土拨鼠、兔、仓鼠、刺猬、蝙蝠等)等,除上述豢养宠物外,豢养物还包括养殖业中养殖的家禽类动物,如鸡、鸭等,或者畜牧业中养殖的动物,如牛、羊、马等。

另外,所述样本视频文件为包含样本对象的多帧面部视频帧的视频文件,所述样本视频文件用于对所述深度图像模型进行训练,若所述样本对象为用户,则所述第一面部视频帧和所述第一面部视频帧为人脸视频帧,若所述样本对象为动物,则所述第一面部视频帧和所述第二面部视频帧为动物面部视频帧。

进一步的,由于本说明书实施例所训练的深度图像模型用于获取目标图像的深度图,并且所述深度图用于求解所述目标图像的拍摄视角,以根据所述拍摄视角将所述目标图像转换为正视角图像,从而通过识别正视角图像中的关键特征来对待识别对象进行身份识别,因此,在进行模型训练时,可从所述样本视频帧文件中提取所述样本对象的正视角图像和非正视角图像。

具体实施时,所述第一面部视频帧即为正视角图像,所述第二面部视频帧即为非正视角图像,从样本视频文件中提取样本对象的第一面部视频帧和第二面部视频帧,具体可通过以下方式实现:

在所述样本视频文件包含的多个视频帧中,检测所述样本对象的面部特征点;

根据检测结果确定所述多个视频帧中,所述样本对象的面部特征点的对称关系,并根据所述对称关系将所述多个视频帧划分为第一面部视频帧和第二面部视频帧。

进一步的,根据所述对称关系将所述多个视频帧划分为第一面部视频帧和第二面部视频帧,具体可通过以下方式实现:

根据所述对称关系确定所述多个视频帧中各视频帧包含的满足预设对称条件的面部特征点数量;

将包含的满足预设对称条件的面部特征点数量大于预设数量阈值的视频帧划分为第一面部视频帧,并将所述多个视频帧中除所述第一面部视频帧之外的视频帧划分为第二面部视频帧。

具体的,本说明书实施例可采用hrnet(high-resolutionrepresentaions)高分辨率网络对所述样本视频文件中的多个视频帧进行关键点(面部特征点)检测,并根据检测结果确定各视频帧中关键点的对称关系,以根据对称关系确定多个视频帧中所述样本对象的正视图以及非正视图。

实际应用中,可对多个视频帧中样本对象面部包含的眼睛以及鼻子等部位进行关键点检测,具体可分别对所述样本对象的左眼、右眼以及鼻部的上、下、左、右以及中心点等15个关键点进行检测,并判断这15个关键点的对称关系。

若将所述样本对象的鼻尖和嘴部中心点所形成的直线作为对称轴,则确定检测结果中所述样本对象左眼上关键点与右眼上关键点、左眼下关键点与右眼下关键点、左眼左关键点与右眼左关键点、左眼右关键点与右眼右关键点是否分别关于所述对称轴对称,以及确定检测结果中所述样本对象的鼻部的上关键点、下关键点、左关键点与右关键点是否分别关于所述对称轴对称,并确定15个关键点中关于所述对称轴对称的关键点的个数是否满足预设阈值,最后将样本视频文件的多个面部视频帧中,包含关于所述对称轴对称的关键点的个数大于预设阈值的面部视频帧确定为第一面部视频帧(正视图),将多个面部视频帧中除所述第一面部视频帧之外的其他面部视频帧确定为第二面部视频帧(非正视图)。

通过对第一面部视频帧和第二面部视频帧进行划分,根据划分结果对深度图像模型进行训练,有利于提高模型训练结果的准确性。

另外,从样本视频文件中提取样本对象的第一面部视频帧和第二面部视频帧,还可通过以下方式实现:

根据所述第一面部视频帧的面部特征点检测结果中包含的面部特征属性信息,确定所述第二面部视频帧中相应面部特征属性的检测结果;

若根据检测结果确定所述第二面部视频帧中包含的所述相应面部特征属性信息满足预设条件,则将所述第二面部视频帧确定为目标第二面部视频帧。

具体的,所述面部特征属性信息即所述样本对象面部包含的生物特征信息,如眼睛、鼻子、嘴等信息,对所述样本视频文件中多个面部视频帧进行特征点检测获得的检测结果中可以包含所述面部特征属性信息,例如,所述检测结果可以是:左眼上关键点、左眼下关键点、嘴部上关键点、嘴部下关键点等。

如前所述,本说明书实施例将样本视频文件的多个面部视频帧中,包含关于对称轴对称的关键点的个数大于预设阈值的面部视频帧确定为第一面部视频帧(正视图),将多个面部视频帧中除所述第一面部视频帧之外的其他面部视频帧确定为第二面部视频帧(非正视图)。

由于所述第一面部视频帧为正视图,因此,所述第一面部视频帧中包含的关键点数为15个,分别为所述样本对象的左眼、右眼以及鼻部三者的上、下、左、右以及中心点等15个关键点,而第二面部视频帧中所包含的关键点数则不唯一,为保证模型训练结果的准确性,本说明书实施例根据第一面部视频帧中包含的面部特征属性信息对第二面部视频帧进行筛选,以将包含的相应面部特征属性信息满足预设条件的第二面部视频帧确定为目标第二面部视频帧,并将所述目标第二面部视频帧用于对模型的训练过程。

例如,所述第一面部视频帧中包含所述样本对象的左眼、右眼以及鼻部三者的上、下、左、右以及中心点等15个关键点,所述预设条件即可以设为包含所述15个关键点中的任意8个关键点,若存在任一第二面部视频帧中包含上述15个关键点中的任意8个关键点,则将所述第二面部视频帧确定为目标第二面部视频帧。

通过对第二面部视频帧进行筛选,将筛选结果中满足预设条件的目标第二视频帧用于对所述深度图像模型进行训练,有利于提高模型训练结果的准确性。

步骤104,根据所述第一面部视频帧确定所述第二面部视频帧对应的位姿变换矩阵。

具体的,从样本视频文件中提取样本对象的第一面部视频帧和第二面部视频帧后,可根据所述第一面部视频帧确定所述第二面部视频帧对应的位姿变换矩阵。

实际应用中,由于所述第一面部视频帧为正视图,所述第二面部视频帧为非正视图,因此,第一面部视频帧的相机位姿默认为已知(旋转自由度和平移自由度均为零),可根据所述第一面部视频帧的相机位姿确定所述第二面部视频帧对应的位姿变换矩阵。

具体实施时,根据所述第一面部视频帧确定所述第二面部视频帧对应的位姿变换矩阵,即根据所述第一面部视频帧确定与所述第一面部视频帧相邻的上m帧和/或下n帧第二面部视频帧对应的位姿变换矩阵,其中m和n为正整数。

具体可利用随机采样一致性算法确定所述第二面部视频帧相对于所述第一面部视频帧的位姿变换矩阵,所述位姿变换矩阵包含旋转自由度和平移自由度,由所述旋转自由度和所述平移自由度组成3×4维的位姿变换矩阵,其中,所述位姿变换矩阵中包含的三个元素为沿x轴、y轴、z轴方向的平移自由度,另外六个元素为沿x轴、y轴、z轴方向的旋转自由度。

具体的,由于所述第一面部视频帧的相机位姿默认为已知,因此,可将所述第一面部视频帧的相机位姿作为参考,以确定第二面部视频帧相对于所述第一面部视频帧的位姿变换矩阵。

以所述样本视频文件包含20帧面部视频帧为例,其中第5帧、第12帧面部视频帧为第一面部视频帧,其他均为第二面部视频帧,则可根据所述第5帧视频帧的相机位姿确定第1至第4帧(第5帧视频帧的上4帧面部视频帧)以及第6至第11帧面部视频帧(第5帧视频帧的下6帧面部视频帧)相对于第5帧面部视频帧的位姿变换矩阵,并根据所述第12帧视频帧的相机位姿确定第13至第20帧面部视频帧(第12帧视频帧的下8帧面部视频帧)相对于第12帧面部视频帧的位姿变换矩阵。

第一面部视频帧为多帧面部视频帧中样本对象的正视角图像,第二面部视频帧为多帧面部视频帧中样本对象的多视角图像,根据正视角图像确定多视角图像相对于所述正视角图像的位姿变换矩阵,有利于保证所获得结果的准确性。

此外,根据所述第一面部视频帧确定所述第二面部视频帧对应的位姿变换矩阵,还可通过以下方式实现:

根据所述第一面部视频帧确定与所述第一面部视频帧相邻的第i帧第二面部视频帧对应的位姿变换矩阵,其中i∈[1,n],,i从1开始取值,且n为与所述第一面部视频帧相邻的第二面部视频帧的数量;

根据所述第i帧第二面部视频帧对应的位姿变换矩阵确定第i+1帧第二面部视频帧对应的位姿变换矩阵。

具体可利用随机采样一致性算法确定多个视频帧中两两视频帧之间的位姿变换矩阵,所述位姿变换矩阵包含旋转自由度和平移自由度。

具体的,由于所述第一面部视频帧的相机位姿默认为已知,因此,可将所述第一面部视频帧的相机位姿作为参考,以确定与所述第一面部视频帧相邻的上一帧或下一帧第二面部视频帧相对于所述第一面部视频帧的位姿变换矩阵,并进一步根据所述第二面部视频帧的位姿变换矩阵确定与其相邻的上一帧或下一帧第二面部视频帧的位姿变换矩阵,以此类推,得到各帧面部视频帧相对于上一帧或下一帧面部视频帧的位姿变换矩阵。

以所述样本视频文件包含20帧面部视频帧为例,其中第5帧、第12帧面部视频帧为第一面部视频帧,其他均为第二面部视频帧,则可根据所述第5帧视频帧的相机位姿确定第4帧或第6帧面部视频帧相对于第5帧面部视频帧的位姿变换矩阵,并根据第4帧面部视频帧的位姿变换矩阵确定第3帧面部视频帧相对于第4帧面部视频帧的位姿变换矩阵,以及根据第6帧面部视频帧的位姿变换矩阵确定第7帧面部视频帧相对于第6帧面部视频帧的位姿变换矩阵,以此类推,即可得到所述样本视频文件包含的20帧面部视频帧中各帧面部视频帧相对于上一帧或下一帧面部视频帧的位姿变换矩阵。

根据已确定位姿变换矩阵的面部视频帧,计算其上一帧或下一帧面部视频帧的位姿变换矩阵,有利于保证计算结果的准确性。

步骤106,将所述第一面部视频帧输入深度图像模型进行处理,生成所述第一面部视频帧的深度图像,并基于所述深度图像确定所述第一面部视频帧的深度特征信息。

具体的,从样本视频文件中提取样本对象的第一面部视频帧(正视图)和第二面部视频帧(非正视图)后,可将第一面部视频帧输入深度图像模型,以获得所述第一面部视频帧的深度图,从而根据深度图中包含的深度特征信息、相机参数以及第二面部图像的的位姿变换矩阵生成与第二面部视频帧对应的合成图像,以计算合成图像与所述第二面部视频帧间的误差,再根据误差对所述深度图像模型进行训练即可。

实际应用中,所述深度特征信息包括所述深度图像中各像素点的深度值。

步骤108,基于所述深度特征信息、所述位姿变换矩阵以及预先获取的相机参数生成所述第二面部视频帧对应的虚拟合成图像。

具体的,在获取第一面部视频帧的深度图像后,可基于所述深度图像中包含的深度特征信息、第二面部视频帧对应的位姿变换矩阵以及相机参数生成所述第二面部视频帧对应的虚拟合成图像,从而根据虚拟合成图像与所述第二面部视频帧之间的误差对所述深度图像模型进行迭代训练。

具体实施时,所述深度特征信息包括所述深度图像中各像素点的深度值,因此,基于所述深度特征信息、所述位姿变换矩阵以及预先获取的相机参数生成所述第二面部视频帧对应的虚拟合成图像,具体可通过以下方式实现:

将所述各像素点的深度值、所述相机参数、所述位姿变换矩阵以及各像素点在所述第一面部视频帧中的位置坐标作为位置转换算法的输入,获取输出的所述各像素点在所述虚拟合成图像中对应的位置坐标;

确定所述深度图像中各像素点的像素值,并基于所述像素值和所述位置坐标生成所述虚拟合成图像。

具体的,所述位置转换算法的公式如式(1)所示,将所述深度图像中各像素点的深度值、相机参数、第二面部视频帧对应的位姿变换矩阵以及所述第一面部视频帧中各像素点的位置坐标输入式(1),即可获得所述第一面部视频帧中各像素点在所述第二面部视频帧的虚拟合成图像中所对应的位置。

p2=ktd1k-1p1式(1)

其中,p1为第一面部视频帧中各像素点的位置,用(x1,y1)表示,p2为第一面部视频帧中各像素点在虚拟合成图像中所对应的位置,用(x2,y2)表示,k为由相机参数组成的矩阵,t为第二面部视频帧对应的位姿变换矩阵,k的列数与t的行数相等。

本说明书实施例以第一面部视频帧为基础,根据所述第二面部视频帧对应的位姿变换矩阵、深度值以及相机参数,确定第一面部视频帧按照所述位姿变换矩阵进行旋转后所生成的虚拟合成图像,并计算真实的第二面部视频帧与所述虚拟合成图像之间的误差,以根据误差对所述深度图像模型进行迭代训练,因此,本说明书实施例使用位置转换算法,计算第一面部视频帧转换为虚拟合成图像过程中,第一面部视频帧中各像素点对应的位置转换结果,并根据所述位置转换结果合成所述虚拟合成图像。

步骤110,计算所述虚拟合成图像与所述第二面部视频帧之间的误差,并根据计算结果对所述深度图像模型进行迭代训练。

具体的,生成第二面部视频帧对应的虚拟合成图像后,可通过计算虚拟合成图像与第二面部视频帧之间的误差,以根据误差对所述深度图像模型进行迭代训练即可,并且在生成的虚拟合成图像与第二面部视频帧之间的误差小于预设阈值的情况下,则可停止训练。

具体实施时,计算所述虚拟合成图像与所述第二面部视频帧之间的误差,即计算所述虚拟合成图像中各像素点的位置坐标与所述第二面部视频帧中对应的各像素点的位置坐标之间的差值,计算所述差值的平均值,并将平均值作为所述虚拟合成图像与所述第二面部视频帧之间的误差。

由于所述虚拟合成图像由第一面部视频帧中各像素点的坐标位置对应的转换结果生成,即虚拟合成图像由多个转换后的位置坐标组合生成,因此,在计算所述虚拟合成图像与所述第二面部视频帧之间的误差时,可通过计算虚拟合成图像中各像素点位置坐标与第二面部视频帧中各像素点的位置坐标之间的差值,从而确定二者的误差,并根据所述误差对深度图像模型进行迭代训练。

本说明书实施例提供的一种深度图像模型训练过程的示意图如图2所示,获取样本对象的脸部短视频,并对所述脸部短视频中包含的多帧视频帧进行脸部关键点检测,根据检测结果对上述多帧视频帧进行对称性约束抽帧,以提取多帧视频帧中的正视角图片和多视角图片(非正视角图片),并基于所述正视角图片求解所述多视角图片对应的相机视角;另外,可将所述正视角图片输入单目深度估计网络(深度图像模型),以获取所述正视角图片对应的深度图,根据所述深度图中包含的各像素点的深度值、所述相机视角、相机参数以及正视角图片中各像素点色位置坐标,确定所述正视角图片按照所述相机视角进行旋转后所生成的虚拟合成图像,并计算真实的多视角图片与所述虚拟合成图像之间的误差,以根据误差对所述深度图像模型进行迭代训练。

进一步的,训练获得所述深度图像模型后,可将待识别面部图像输入所述深度图像模型,以获得所述待识别面部图像的深度图像,并基于所述深度图像和待识别面部图像的点云数据进行匹配,以确定所述待识别面部图像的相机拍摄视角,具体可通过以下方式实现:

将目标对象的待识别面部图像输入迭代训练获得的深度图像模型进行处理,生成所述待识别面部图像的深度图像;

利用位姿估计算法确定所述目标对象的待处理面部图像对应的初始相机位姿;

利用预设匹配算法对所述深度图像和所述待识别面部图像对应的三维图像进行特征点匹配处理;

根据特征点匹配处理结果对所述初始相机位姿进行优化,生成所述待识别面部图像对应的目标相机位姿。

具体的,上述为迭代训练获得的深度图像模型的应用过程,本说明书实施例提供的一种深度图像模型应用过程的示意图如图3所示,对待识别的单张图片进行脸部关键点检测,再将所述单张图片输入标准3d模型,以获取所述单张图片的3d点云数据,并将检测结果与所述3d点云数据进行数据匹配,获得所述单张图片对应的相机视角初始解;另外,将待识别的单张图片输入单目深度估计网络(深度图像模型),获得单张图片对应的深度图,将所述深度图与所述3d点云数据进行icp匹配,以对所述相机视角初始解进行优化,获得视角优化解,作为所述单张图片对应的相机拍摄视角。

获取所述相机拍摄视角后,根据所述相机拍摄视角将所述单张面部图像转换为正视角图像,并通过所述正视角图像中包含的关键特征实现对待识别对象的身份识别,有利于提供身份识别结果的准确性。

本说明书实施例提供一种深度图像模型训练方法,通过从样本视频文件中提取样本对象的第一面部视频帧和第二面部视频帧,根据所述第一面部视频帧确定所述第二面部视频帧对应的位姿变换矩阵,将所述第一面部视频帧输入深度图像模型进行处理,生成所述第一面部视频帧的深度图像,并基于所述深度图像确定所述第一面部视频帧的深度特征信息,基于所述深度特征信息、所述位姿变换矩阵以及预先获取的相机参数生成所述第二面部视频帧对应的虚拟合成图像,计算所述虚拟合成图像与所述第二面部视频帧之间的误差,并根据计算结果对所述深度图像模型进行迭代训练;

通过上述模型训练方式训练获得的深度图像模型可用于对待识别对象的单张面部图像进行处理以获得对应的深度图,进而基于所述深度图确定所述单张面部图像的拍摄视角,以根据所述拍摄视角将所述单张面部图像转换为正视角图像,并通过所述正视角图像中包含的关键特征实现对待识别对象的身份识别,有利于保证身份识别结果的准确性。

下述结合附图4,以本说明书提供的深度图像模型训练方法在动物图像拍摄视角计算场景的应用为例,对所述深度图像模型训练方法进行进一步说明。其中,图4示出了本说明书一个实施例提供的一种深度图像模型训练方法的处理过程流程图,具体步骤包括步骤402至步骤432。

步骤402,在样本视频文件包含的多个视频帧中,检测宠物狗的面部特征点。

步骤404,根据检测结果确定所述多个视频帧中,所述宠物狗的面部特征点的对称关系。

步骤406,根据所述对称关系确定所述多个视频帧中各视频帧包含的满足预设对称条件的面部特征点数量。

步骤408,将包含的满足预设对称条件的面部特征点数量大于预设数量阈值的视频帧划分为第一面部视频帧,并将所述多个视频帧中除所述第一面部视频帧之外的视频帧划分为第二面部视频帧。

步骤410,根据所述第一面部视频帧确定与所述第一面部视频帧相邻的第i帧第二面部视频帧对应的位姿变换矩阵,其中i∈[1,n],n为与所述第一面部视频帧相邻的第二面部视频帧的数量。

具体的,利用随机采样一致性算法确定所述第二面部视频帧相对于所述第一面部视频帧的位姿变换矩阵,所述位姿变换矩阵包含旋转自由度和平移自由度。

步骤412,根据所述第i帧第二面部视频帧对应的位姿变换矩阵确定第i+1帧第二面部视频帧对应的位姿变换矩阵。

步骤414,将所述第一面部视频帧输入深度图像模型进行处理,生成所述第一面部视频帧的深度图像,并基于所述深度图像确定所述第一面部视频帧的深度特征信息。

具体的,所述深度特征信息包括所述深度图像中各像素点的深度值。

步骤416,将各像素点的深度值、相机参数、所述位姿变换矩阵以及各像素点在所述第一面部视频帧中的位置坐标作为位置转换算法的输入,获取输出的所述各像素点在所述虚拟合成图像中对应的位置坐标。

步骤418,确定所述深度图像中各像素点的像素值,并基于所述像素值和所述位置坐标生成所述虚拟合成图像。

步骤420,计算所述虚拟合成图像中各像素点的位置坐标与所述第二面部视频帧中对应的各像素点的位置坐标之间的差值。

步骤422,计算所述差值的平均值,并将平均值作为所述虚拟合成图像与所述第二面部视频帧之间的误差。

步骤424,根据计算结果对所述深度图像模型进行迭代训练。

在生成的虚拟合成图像与第二面部视频帧之间的误差小于预设阈值的情况下,则可停止训练。

步骤426,将宠物狗的待识别面部图像输入所述深度图像模型进行处理,生成所述待识别面部图像的深度图像。

步骤428,利用位姿估计算法确定所述宠物狗的待处理面部图像对应的初始相机位姿。

步骤430,利用预设匹配算法对所述深度图像和所述待处理面部图像对应的三维图像进行特征点匹配处理。

步骤432,根据特征点匹配处理结果对所述初始相机位姿进行优化,生成所述待处理面部图像对应的目标相机位姿。

通过上述方式训练获得深度图像模型,所述深度图像模型用于对宠物狗的单张待识别面部图像进行处理以获得对应的深度图,进而基于所述深度图确定所述单张待识别面部图像的拍摄视角,以根据所述拍摄视角将所述单张待识别面部图像转换为正视角图像,并通过所述正视角图像中包含的关键特征实现对宠物狗进行身份识别,有利于保证身份识别结果的准确性。

另外,本说明书实施例仅从单张图片即可得到相机拍摄角度,并且,结合位姿估计算法以及预设匹配算法对单张待识别面部图像进行处理,有利于提高所述待识别面部图像对应的相机拍摄角度的精度,从而提升宠物狗身份识别的准确率。

与上述方法实施例相对应,本说明书还提供了深度图像模型训练装置实施例,图5示出了本说明书一个实施例提供的一种深度图像模型训练装置的示意图。如图5所示,该装置包括:

提取模块502,被配置为从样本视频文件中提取样本对象的第一面部视频帧和第二面部视频帧;

第一确定模块504,被配置为根据所述第一面部视频帧确定所述第二面部视频帧对应的位姿变换矩阵;

第二确定模块506,被配置为将所述第一面部视频帧输入深度图像模型进行处理,生成所述第一面部视频帧的深度图像,并基于所述深度图像确定所述第一面部视频帧的深度特征信息;

生成模块508,被配置为基于所述深度特征信息、所述位姿变换矩阵以及预先获取的相机参数生成所述第二面部视频帧对应的虚拟合成图像;

训练模块510,被配置为计算所述虚拟合成图像与所述第二面部视频帧之间的误差,并根据计算结果对所述深度图像模型进行迭代训练。

可选地,所述提取模块502,包括:

检测子模块,被配置为在所述样本视频文件包含的多个视频帧中,检测所述样本对象的面部特征点;

划分子模块,被配置为根据检测结果确定所述多个视频帧中,所述样本对象的面部特征点的对称关系,并根据所述对称关系将所述多个视频帧划分为第一面部视频帧和第二面部视频帧。

可选地,所述划分子模块,包括:

确定单元,被配置为根据所述对称关系确定所述多个视频帧中各视频帧包含的满足预设对称条件的面部特征点数量;

划分单元,被配置为将包含的满足预设对称条件的面部特征点数量大于预设数量阈值的视频帧划分为第一面部视频帧,并将所述多个视频帧中除所述第一面部视频帧之外的视频帧划分为第二面部视频帧。

可选地,所述第一确定模块504,包括:

第一确定子模块,被配置为根据所述第一面部视频帧确定与所述第一面部视频帧相邻的上m帧和/或下n帧第二面部视频帧对应的位姿变换矩阵,其中m和n为正整数。

可选地,所述第一确定模块504,包括:

第二确定子模块,被配置为根据所述第一面部视频帧确定与所述第一面部视频帧相邻的第i帧第二面部视频帧对应的位姿变换矩阵,其中i∈[1,n],n为与所述第一面部视频帧相邻的第二面部视频帧的数量;

第三确定子模块,被配置为根据所述第i帧第二面部视频帧对应的位姿变换矩阵确定第i+1帧第二面部视频帧对应的位姿变换矩阵。

可选地,所述第一确定模块504,包括:

第四确定子模块,被配置为利用随机采样一致性算法确定所述第二面部视频帧相对于所述第一面部视频帧的位姿变换矩阵,所述位姿变换矩阵包含旋转自由度和平移自由度。

可选地,所述提取模块502,包括:

检测结果确定子模块,被配置为根据所述第一面部视频帧的面部特征点检测结果中包含的面部特征属性信息,确定所述第二面部视频帧中相应面部特征属性的检测结果;

目标视频帧确定子模块,被配置为若根据检测结果确定所述第二面部视频帧中包含的所述相应面部特征属性信息满足预设条件,则将所述第二面部视频帧确定为目标第二面部视频帧;

相应的,所述第一确定模块504,还被配置为:根据所述第一面部视频帧确定所述目标第二面部视频帧对应的位姿变换矩阵。

可选地,所述深度特征信息包括所述深度图像中各像素点的深度值;

相应的,所述生成模块508,包括:

位置坐标获取子模块,被配置为将所述各像素点的深度值、所述相机参数、所述位姿变换矩阵以及各像素点在所述第一面部视频帧中的位置坐标作为位置转换算法的输入,获取输出的所述各像素点在所述虚拟合成图像中对应的位置坐标;

图像生成子模块,被配置为确定所述深度图像中各像素点的像素值,并基于所述像素值和所述位置坐标生成所述虚拟合成图像。

可选地,所述训练模块510,包括:

第一计算子模块,被配置为计算所述虚拟合成图像中各像素点的位置坐标与所述第二面部视频帧中对应的各像素点的位置坐标之间的差值;

第二计算子模块,被配置为计算所述差值的平均值,并将平均值作为所述虚拟合成图像与所述第二面部视频帧之间的误差。

可选地,所述深度图像模型训练装置,还包括:

深度图像生成模块,被配置为将目标对象的待识别面部图像输入迭代训练获得的深度图像模型进行处理,生成所述待识别面部图像的深度图像;

匹配模块,被配置为利用位姿估计算法确定所述目标对象的待处理面部图像对应的初始相机位姿;

初始相机位姿确定模块,被配置为利用预设匹配算法对所述深度图像和所述待识别面部图像对应的三维图像进行特征点匹配处理;

优化模块,被配置为根据特征点匹配处理结果对所述初始相机位姿进行优化,生成所述待识别面部图像对应的目标相机位姿。

上述为本实施例的一种深度图像模型训练装置的示意性方案。需要说明的是,该深度图像模型训练装置的技术方案与上述的深度图像模型训练方法的技术方案属于同一构思,深度图像模型训练装置的技术方案未详细描述的细节内容,均可以参见上述深度图像模型训练方法的技术方案的描述。

图6示出了根据本说明书一个实施例提供的一种计算设备600的结构框图。该计算设备600的部件包括但不限于存储器610和处理器620。处理器620与存储器610通过总线630相连接,数据库650用于保存数据。

计算设备600还包括接入设备640,接入设备640使得计算设备600能够经由一个或多个网络660通信。这些网络的示例包括公用交换电话网(pstn)、局域网(lan)、广域网(wan)、个域网(pan)或诸如因特网的通信网络的组合。接入设备640可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(nic))中的一个或多个,诸如ieee802.11无线局域网(wlan)无线接口、全球微波互联接入(wi-max)接口、以太网接口、通用串行总线(usb)接口、蜂窝网络接口、蓝牙接口、近场通信(nfc)接口,等等。

在本说明书的一个实施例中,计算设备600的上述部件以及图6中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图6所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。

计算设备600可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或pc的静止计算设备。计算设备600还可以是移动式或静止式的服务器。

其中,所述存储器610用于存储计算机可执行指令,处理器620用于执行如下计算机可执行指令以实现所述深度图像模型训练方法的步骤。

上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的深度图像模型训练方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述深度图像模型训练方法的技术方案的描述。

本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时以用于实现所述深度图像模型训练方法的步骤。

上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的深度图像模型训练方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述深度图像模型训练方法的技术方案的描述。

上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。

需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书实施例并不受所描述的动作顺序的限制,因为依据本说明书实施例,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书实施例所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。

以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书实施例的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书实施例的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1