CN108648238A - 虚拟角色驱动方法及装置、电子设备和存储介质 - Google Patents
虚拟角色驱动方法及装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN108648238A CN108648238A CN201810381365.1A CN201810381365A CN108648238A CN 108648238 A CN108648238 A CN 108648238A CN 201810381365 A CN201810381365 A CN 201810381365A CN 108648238 A CN108648238 A CN 108648238A
- Authority
- CN
- China
- Prior art keywords
- camera
- calibrated
- key point
- shooting
- image
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
- G06T7/85—Stereo camera calibration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
-
- 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
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Studio Devices (AREA)
Abstract
本公开涉及一种虚拟角色驱动方法及装置、电子设备和存储介质。所述方法包括:根据双相位检测相机的参数构建双摄相机模型,根据第一相机和第二相机针对已知目标拍摄的图像、第一相机的初始参数和第二相机的初始参数,得到标定后的第一相机和标定后的第二相机;根据标定后的第一相机和标定后的第二相机针对待拟合目标拍摄的目标图像进行拟合,得到拟合结果;根据拟合结果驱动虚拟角色。本公开实施例使得双相位检测相机的标定过程简单化,标定结果更加准确。可以利用双相位检测相机方便、准确地对待拟合目标进行拟合。根据拟合结果驱动虚拟角色,可以降低虚拟角色的制作成本,以及提高拟合效果。
Description
技术领域
本公开涉及计算机视觉技术领域,尤其涉及一种虚拟角色驱动方法及装置、电子设备和存储介质。
背景技术
3D技术特别是3D人物重建、表情捕捉和动作捕捉技术,在多媒体等各个应用领域都得到了的广泛应用。在各种应用场景中,如何方便地根据目标对象的拍摄图像精确地拟合3D模型后驱动虚拟角色,成为计算机视觉技术领域亟待解决的问题。
发明内容
有鉴于此,本公开提出了一种技术方案。
根据本公开的一方面,提供了一种虚拟角色驱动方法,所述方法包括:
根据双相位检测相机的参数构建双摄相机模型,所述双摄相机模型包括第一相机和第二相机;
根据第一相机和第二相机针对已知目标拍摄的图像、第一相机的初始参数和第二相机的初始参数,得到标定后的第一相机和标定后的第二相机;
根据标定后的第一相机和标定后的第二相机针对待拟合目标拍摄的目标图像进行拟合,得到拟合结果;
根据所述拟合结果驱动虚拟角色。
在一种可能的实现方式中,根据第一相机和第二相机针对已知目标拍摄的图像、第一相机的初始参数和第二相机的初始参数,得到标定后的第一相机和标定后的第二相机,包括:
根据第一相机针对已知目标拍摄的第一拍摄图像、第二相机针对已知目标拍摄的第二拍摄图像、第一相机的初始参数和第二相机的初始参数构建标定模型;
优化所述标定模型得到标定参数,并根据所述标定参数得到标定后的第一相机和标定后的第二相机。
在一种可能的实现方式中,根据第一相机针对已知目标拍摄的第一拍摄图像、第二相机针对已知目标拍摄的第二拍摄图像、第一相机的初始参数和第二相机的初始参数构建标定模型,包括:
根据所述已知目标上的关键点、关键点在第一拍摄图像中投影的第一投影点、关键点在第二拍摄图像中投影的第二投影点、已知目标相对于所述双相位检测相机的旋转矩阵和平移矩阵、第一相机的初始参数、第二相机的初始参数构建标定模型。
在一种可能的实现方式中,优化所述标定模型得到标定参数,并根据所述标定参数得到标定后的第一相机和标定后的第二相机,包括:
优化所述标定模型,得到第一相机的标定参数、第二相机的标定参数、旋转标定矩阵和平移标定矩阵;
根据所述第一相机的标定参数、所述第二相机的标定参数、所述旋转标定矩阵和所述平移标定矩阵,得到标定后的第一相机和标定后的第二相机,所述关键点和标定后的第一相机针对已知目标拍摄的第一拍摄图像中的第一投影点之间的距离最小,所述关键点和标定后的第二相机针对已知目标拍摄的第二拍摄图像中的第二投影点之间的距离最小。
在一种可能的实现方式中,标定后的第一相机针对已知目标拍摄的第一拍摄图像中的第一投影点的像素值和标定后的第二相机针对已知目标拍摄的第二拍摄图像中的第二投影点的像素值之间的差值最小。
在一种可能的实现方式中,标定后的第一相机与标定后的第二相机焦距相同,标定后的第二相机相对于标定后的第一相机无旋转,且标定后的第二相机在标定后的第一相机坐标系的x轴的平移量为双相位检测相机中透镜的直径。
在一种可能的实现方式中,根据标定后第一相机和标定后的第二相机针对待拟合目标拍摄的目标图像进行拟合,得到拟合结果,包括:
根据待拟合目标中的关键点、标定后的第一相机针对待拟合目标拍摄的第三拍摄图像、标定后的第二相机针对待拟合目标拍摄的第四拍摄图像和初始模型参数,构建关键点拟合模型;
优化所述关键点拟合模型,得到关键点拟合参数,并根据所的关键点拟合参数确定关键点拟合结果。
在一种可能的实现方式中,所述初始模型参数,包括:初始形状参数、初始表面参数和初始位姿参数,
优化所述关键点拟合模型,得到关键点拟合参数,并根据所的关键点拟合参数确定关键点拟合结果,包括:
优化所述关键点拟合模型,得到第一位姿参数、第一形状参数、第一表面参数和第一相机的光心相对于所述双相位检测相机的第一偏置,并根据第一位姿参数、第一形状参数、第一表面参数和第一偏置确定关键点拟合结果,关键点拟合结果中的关键点和关键点在第三拍摄图像中投影的第三投影点之间的距离最小,关键点拟合结果中的关键点和关键点在第四拍摄图像中投影的第四投影点之间的距离最小。
在一种可能的实现方式中,根据所述拟合结果驱动虚拟角色,包括:
根据所述关键点拟合结果驱动虚拟角色。
在一种可能的实现方式中,根据标定后第一相机和标定后的第二相机针对待拟合目标拍摄的目标图像进行拟合,得到拟合结果,还包括:
根据所述关键点拟合结果、第三拍摄图像、第四拍摄图像,利用迭代就近点算法得到拟合点拟合结果。
在一种可能的实现方式中,根据所述关键点拟合结果、第三拍摄图像、第四拍摄图像,利用迭代就近点算法得到拟合点拟合结果,包括:
根据所述关键点拟合结果中的拟合点、拟合点在第三拍摄图像中投影的第五投影点、拟合点在第四拍摄图像中投影的第六投影点构建拟合点拟合模型;
优化所述拟合点拟合模型,得到第二位姿参数、第二形状参数、第二表面参数、第一相机的光心相对于所述双相位检测相机的第二偏置、第五投影点坐标和第六投影点坐标,并根据第二位姿参数、第二形状参数、第二表面参数、第二偏置、第五投影点坐标和第六投影点坐标确定拟合点拟合结果,拟合点拟合结果中的拟合点和第五投影点之间的距离最小,拟合点拟合结果中的拟合点和第六投影点之间的距离最小。
在一种可能的实现方式中,拟合点拟合结果中的第五投影点的像素值和拟合点拟合结果中第六投影点的像素值之间的差值最小。
在一种可能的实现方式中,根据所述拟合结果驱动虚拟角色,包括:
根据所述拟合点拟合结果驱动虚拟角色。
根据本公开的一方面,提供了一种虚拟角色驱动装置,所述装置包括:
双摄相机模型构建模块,用于根据双相位检测相机的参数构建双摄相机模型,所述双摄相机模型包括第一相机和第二相机;
标定模块,用于根据第一相机和第二相机针对已知目标拍摄的图像、第一相机的初始参数和第二相机的初始参数,得到标定后的第一相机和标定后的第二相机;
拟合结果获取模块,用于根据标定后的第一相机和标定后的第二相机针对待拟合目标拍摄的目标图像进行拟合,得到拟合结果;
虚拟角色驱动模块,用于根据所述拟合结果驱动虚拟角色。
在一种可能的实现方式中,所述标定模块,包括:
标定模型构建子模块,用于根据第一相机针对已知目标拍摄的第一拍摄图像、第二相机针对已知目标拍摄的第二拍摄图像、第一相机的初始参数和第二相机的初始参数构建标定模型;
标定子模块,用于优化所述标定模型得到标定参数,并根据所述标定参数得到标定后的第一相机和标定后的第二相机。
在一种可能的实现方式中,所述标定模型构建子模块,包括:
第一标定模型构建子模块,用于根据所述已知目标上的关键点、关键点在第一拍摄图像中投影的第一投影点、关键点在第二拍摄图像中投影的第二投影点、已知目标相对于所述双相位检测相机的旋转矩阵和平移矩阵、第一相机的初始参数、第二相机的初始参数构建标定模型。
在一种可能的实现方式中,所述标定子模块,包括:
标定参数获取子模块,用于优化所述标定模型,得到第一相机的标定参数、第二相机的标定参数、旋转标定矩阵和平移标定矩阵;
第一标定子模块,用于根据所述第一相机的标定参数、所述第二相机的标定参数、所述旋转标定矩阵和所述平移标定矩阵,得到标定后的第一相机和标定后的第二相机,所述关键点和标定后的第一相机针对已知目标拍摄的第一拍摄图像中的第一投影点之间的距离最小,所述关键点和标定后的第二相机针对已知目标拍摄的第二拍摄图像中的第二投影点之间的距离最小。
在一种可能的实现方式中,标定后的第一相机针对已知目标拍摄的第一拍摄图像中的第一投影点的像素值和标定后的第二相机针对已知目标拍摄的第二拍摄图像中的第二投影点的像素值之间的差值最小。
在一种可能的实现方式中,标定后的第一相机与标定后的第二相机焦距相同,标定后的第二相机相对于标定后的第一相机无旋转,且标定后的第二相机在标定后的第一相机坐标系的x轴的平移量为双相位检测相机中透镜的直径。
在一种可能的实现方式中,所述拟合结果获取模块,包括:
关键点拟合模型构建子模块,用于根据待拟合目标中的关键点、标定后的第一相机针对待拟合目标拍摄的第三拍摄图像、标定后的第二相机针对待拟合目标拍摄的第四拍摄图像和初始模型参数,构建关键点拟合模型;
关键点拟合结果获取子模块,用于优化所述关键点拟合模型,得到关键点拟合参数,并根据所的关键点拟合参数确定关键点拟合结果。
在一种可能的实现方式中,所述初始模型参数,包括:初始形状参数、初始表面参数和初始位姿参数,
所述关键点拟合结果获取子模块,包括:
第一拟合结果获取子模块,用于优化所述关键点拟合模型,得到第一位姿参数、第一形状参数、第一表面参数和第一相机的光心相对于所述双相位检测相机的第一偏置,并根据第一位姿参数、第一形状参数、第一表面参数和第一偏置确定关键点拟合结果,关键点拟合结果中的关键点和关键点在第三拍摄图像中投影的第三投影点之间的距离最小,关键点拟合结果中的关键点和关键点在第四拍摄图像中投影的第四投影点之间的距离最小。
在一种可能的实现方式中,所述虚拟角色驱动模块,包括:
第一驱动子模块,用于根据所述关键点拟合结果驱动虚拟角色。
在一种可能的实现方式中,所述拟合结果获取模块还包括:
拟合点拟合结果获取子模块,用于根据所述关键点拟合结果、第三拍摄图像、第四拍摄图像,利用迭代就近点算法得到拟合点拟合结果。
在一种可能的实现方式中,所述拟合点拟合结果获取子模块,包括:
拟合点拟合模型构建子模块,用于根据所述关键点拟合结果中的拟合点、拟合点在第三拍摄图像中投影的第五投影点、拟合点在第四拍摄图像中投影的第六投影点构建拟合点拟合模型;
第一拟合点拟合结果获取子模块,用于优化所述拟合点拟合模型,得到第二位姿参数、第二形状参数、第二表面参数、第一相机的光心相对于所述双相位检测相机的第二偏置、第五投影点坐标和第六投影点坐标,并根据第二位姿参数、第二形状参数、第二表面参数、第二偏置、第五投影点坐标和第六投影点坐标确定拟合点拟合结果,拟合点拟合结果中的拟合点和第五投影点之间的距离最小,拟合点拟合结果中的拟合点和第六投影点之间的距离最小。
在一种可能的实现方式中,拟合点拟合结果中的第五投影点的像素值和拟合点拟合结果中第六投影点的像素值之间的差值最小。
在一种可能的实现方式中,所述虚拟角色驱动模块,包括:
第二驱动子模块,用于根据所述拟合点拟合结果驱动虚拟角色。
根据本公开的一方面,提供了一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:执行上述虚拟角色驱动方法。
根据本公开的一方面,提供了一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述虚拟角色驱动方法。
根据本公开的另一方面,提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其中,所述计算机程序指令被处理器执行时实现上述方法。
在本公开实施例中,通过构建双摄相机模型对双相位检测相机进行标定,使得双相位检测相机的标定过程简单化,标定结果更加准确。同时,利用标定的双摄相机模型可以使双相位检测相机方便、准确地对待拟合目标进行拟合。根据拟合结果驱动虚拟角色,可以降低虚拟角色的制作成本,以及提高拟合效果。
根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。
图1示出根据本公开一实施例的虚拟角色驱动方法的流程图;
图2示出根据本公开一实施例的虚拟角色驱动方法中焦点和物体远近的关系示意图;
图3示出根据本公开一实施例的虚拟角色驱动方法中双摄相机的构建示意图;
图4示出根据本公开一实施例的虚拟角色驱动方法中透镜成像的示意图;
图5示出根据本公开一实施例的虚拟角色驱动方法的流程图;
图6示出根据本公开一实施例的虚拟角色驱动方法的流程图;
图7示出根据本公开一实施例的虚拟角色驱动方法的流程图;
图8示出根据本公开一实施例的虚拟角色驱动方法的流程图;
图9示出根据本公开一实施例的虚拟角色驱动方法的流程图;
图10示出根据本公开一实施例的虚拟角色驱动方法的流程图;
图11示出根据本公开一实施例的虚拟角色驱动方法的流程图;
图12示出根据本公开一实施例的虚拟角色驱动装置的框图;
图13示出根据本公开一实施例的虚拟角色驱动装置的框图;
图14是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
图1示出根据本公开一实施例的虚拟角色驱动方法的流程图,如图1所示,所述虚拟角色驱动方法包括:
步骤S10,根据双相位检测相机的参数构建双摄相机模型,所述双摄相机模型包括第一相机和第二相机。
步骤S20,根据第一相机和第二相机针对已知目标拍摄的图像、第一相机的初始参数和第二相机的初始参数,得到标定后的第一相机和标定后的第二相机。
步骤S30,根据标定后的第一相机和标定后的第二相机针对待拟合目标拍摄的目标图像进行拟合,得到拟合结果。
步骤S40,根据所述拟合结果驱动虚拟角色。
在一种可能的实现方式中,双相位检测(2-Phase-Detection,2PD)相机有着与传统的针孔相机不同的拍照模式,可以快速的完成自动对焦。2PD相机使用2个透镜,可以将通过透镜的光线分成两份,使得两份光线分别聚焦。因此,可以根据2PD相机的参数构建双摄相机。双摄相机可以包括2个针孔相机,分别为第一相机和第二相机。可以通过标定双摄相机来标定2PD相机
可以将2PD相机中大透镜边缘光线的成像点代表一侧光线的聚焦位置,并将2PD相机中小透镜对光线的折射看作是改变大透镜的焦距,从而将2PD相机简化成一个单透镜成像模型。可以将2PD相机将通过透镜的光线分为红色光线和蓝色光线为例进行说明。图2示出根据本公开一实施例的虚拟角色驱动方法中焦点和物体远近的关系示意图,如图2所示,三个透镜具有相同的焦距,在左侧的图中,红色光线聚焦在成像面1上,蓝色光线聚焦在成像面2上。当对焦正确时,物体的成像点在两个成像面上是同一个点,而失焦时会在两个成像面的不同点成像,产生视差。图2中的左图展现对焦正确的成像情况,中图展现物体比对焦点远的成像情况,右图展现物体比对焦点近的成像情况。在实际拍照时,2PD相机可以自动调整焦距,使得两个成像面的对焦点位置的像素值相等。因此,2PD相机的焦距为未知量。
图3示出根据本公开一实施例的虚拟角色驱动方法中双摄相机的构建示意图。如图3所示,可以通过构建双摄相机来表示2PD相机。双摄相机可以包括第一相机和第二相机。例如双摄相机可以包括右相机和左相机,如图3所示,2PD相机可以描述成一个焦距可变的严格配准的双摄相机。左侧图为2PD相机的示意图,三个图的焦距相同,中间图代表透镜向右移动,右侧图代表透镜向左侧移动。可以将图3中中间图的透镜确定为右相机的透镜,将图3中右侧图的透镜确定为左相机的透镜,右相机和左相机可以组成双摄相机。其中,右相机相对左相机的位姿没有旋转,只在相机透镜的X轴方向有很小的平移,因此基线很短。
例如,对于普通的针孔相机,可以将其描述为一个投影矩阵P:
其中,fx标识在x方向上的焦距,fy标识在y方向上的焦距,[cx,cy]为图像的光心位置。
可以将2PD相机的投影矩阵描述成如下的双摄相机的投影矩阵PL和PR:
其中,PL为左侧相机的投影矩阵,PR为右侧相机的投影矩阵。由于投影矩阵的焦距和透镜焦距的物理意义不同,使用f表示透镜焦距,单位为米。使用fx和fy标识投影矩阵的焦距,单位是像素。左侧相机光心的x轴有一个Δcx的偏置。右侧相机坐标系相对左侧相机的位姿为:
其中,Δtx表示右侧相机在x轴上相对左侧相机的平移,即左侧相机坐标系中的点在右侧相机坐标系坐标的x轴加Δtx。
因此,当一个三维坐标系中的点在左侧相机的坐标系中的坐标为X=[x,y,z]T时,在左侧相机和右侧相机中的投影坐标分别为:
其中,pL代表在左侧相机拍摄图像中三维点X的位置,pR代表在右侧相机拍摄图像中三维点X的位置。
因此,根据透镜成像的原理,利用2PD相机的参数可以得到双摄相机中的第一相机的初始参数和第二相机的初始参数。可以根据已知目标中已知点的坐标、第一相机的初始参数和第二相机的初始参数,第一相机和第二相机针对已知目标拍摄的图像中已知点的图像中的坐标,得到第一相机的标定参数和第二相机的标定参数。可以利用第一相机的标定参数和第二相机的标定参数对第一相机和第二相机进行标定,得到标定后的第一相机和标定后的第二相机。
在一种可能的实现方式中,标定后的第一相机与标定后的第二相机焦距相同,标定后的第二相机相对于标定后的第一相机无旋转,且标定后的第二相机在标定后的第一相机坐标系的x轴的平移量为双相位检测相机中透镜的直径。
所述双摄相机模型包括配准的第一相机和第二相机。所述配准的第一相机和第二相机包括:根据所述双相位检测相机的像素、透镜到成像面的距离、透镜半径、透镜的直径和透镜的焦距构建双摄相机模型,第一相机与第二相机满足以下条件:第一相机与第二相机焦距相同,第二相机相对于第一相机无旋转,且第二相机在第一相机坐标系的x轴的平移量为透镜直径;第一相机的x轴焦距等于透镜到成像面的距离和像素的乘积;第一相机的x轴光心等于透镜半径和像素的乘积;第一相机的光心相对于第二相机的第一偏置,根据透镜到成像面的距离、透镜半径、所述双相位检测相机像素和所述双相位检测相机的焦距确定。
在一种可能的实现方式中,2PD相机的参数可以包括:透镜的半径、像素、透镜焦距。构建的双摄相机模型的第一相机的初始参数和第二相机的初始参数可以包括:第一相机的焦距、第二相机在第一相机坐标系的x轴的平移量、第一相机的x轴焦距、第一相机的x轴光心、第一相机的光心相对于第二相机的第一偏置。根据双相位检测相机的参数构建双摄相机模型的示例如下:
图4示出根据本公开一实施例的虚拟角色驱动方法中透镜成像的示意图。图4中所有字母标注均代表二维平面中的距离,单位为米。如图4所示,将透镜中心点作为坐标原点O,由于只需要考虑三维空间中的x轴和z轴,因此构建图4中的坐标系。图4中的左图分析三维点[0,0,z]T的成像位置。
左图中三维点[0,0,z]T的成像遵循透镜公式:
其中,f为透镜的焦距,e为像距,z为物距。
图4中的右图分析点[-x,0,z]T的成像位置。考虑过光心位置和垂直透镜的光线相交于成像点,通过透镜边缘的红色光线经过成像点打在成像面上。垂直透镜的光线与z轴交点在-f处。
求解几何关系,左图中的成像点和原点的距离为dL:
其中,a为坐标系转换系数,f为透镜的焦距,z为已知目标距离透镜的距离,c为透镜的半径。
右图中的成像点和原点的距离为dR:
可见,在dL和dR中的前三项相同,点[0,0,z]T的成像点和原点的距离与点[-x,0,z]T中x为0时成像点与原点的距离相等。
在成像面上每米有s个像素,单位pix/m,则点[-x,0,z]T在成像面上的坐标为[sd,0]T,比对该值和针孔相机成像:
2PD相机成像:
左相机成像:
由于左右相机关于原始的2PD相机对称,所以左相机相对2PD相机有和的变化,由于x和z为变量,则:
fx=-as;Δtx=-2c;cx=-cs;
其中,fx,Δtx,cx均为常量,Δcx为对f的变量。综上所述,一个2PD相机可以表述成一个Δcx变化的双摄相机。
利用标定后的第一相机和标定后的第二相机对待拟合目标拍摄的目标图像,可以对待拟合目标进行拟合。可以通过在待拟合目标上确定的关键点,根据待拟合目标确定的初始模型参数,标定后的第一相机和标定后的第二相机针对待拟合目标拍摄的目标图像,进行关键点拟合,得到关键点拟合结果。在关键点拟合结果中,待拟合目标上的关键点的位置和关键点拟合结果中关键点的位置距离最近。
待拟合目标可以包括人的面部和躯干。例如可以利用标定后的第一相机和标定后的第二相机对实际的人的面部拍摄图像,并利用拍摄到的面部图像对实际的人的面部进行拟合,得到面部拟合结果。面部拟合结果准确地拟合实际的人的面部表情和位姿等。
拟合结果可以包括拟合后的三维模型。拟合后的三维模型应用广泛。可以根据拟合结果驱动虚拟角色,例如可以通过调整拟合后的三维模型中的参数拟合实际的人的不同表情或动作。例如,当待拟合目标为人的面部时,可以根据拟合结果拟合人的面部的表情和位姿,从而驱动虚拟角色。当人的面部做出不同表情,或有不同的位姿时,拟合结果均可以准确地进行拟合,使得虚拟角色做出和实际的人的面部相同的表情和位姿。
在本实施例中,通过构建双摄相机模型对双相位检测相机进行标定,使得双相位检测相机的标定过程简单化,标定结果更加准确。同时,利用标定的双摄相机模型可以使双相位检测相机方便、准确地对待拟合目标进行拟合。根据拟合结果驱动虚拟角色,可以降低虚拟角色的制作成本,以及提高拟合效果。
图5示出根据本公开一实施例的虚拟角色驱动方法的流程图,如图5所示,所述虚拟角色驱动方法中步骤S20包括:
步骤S21,根据第一相机针对已知目标拍摄的第一拍摄图像、第二相机针对已知目标拍摄的第二拍摄图像、第一相机的初始参数和第二相机的初始参数构建标定模型。
步骤S22,优化所述标定模型得到标定参数,并根据所述标定参数得到标定后的第一相机和标定后的第二相机。
在一种可能的实现方式中,可以通过构建标定模型,以及优化标定模型得到标定参数的方式,得到标定后的第一相机和标定后的第二相机。可以通过构建标定函数的方式构建标定模型。可以将第一相机的初始参数、第二相机的初始参数、第一相机针对已知目标拍摄的第一拍摄图像中已知目标上的关键点的坐标、第二相机针对已知目标拍摄的第二拍摄图像中已知目标上的关键点的坐标和已知目标上的关键点的坐标的不同组合,依次代入标定函数,进行迭代计算。当迭代次数满足设定的次数,或迭代计算的结果满足设定的收敛条件时,可以停止迭代计算,得到标定参数。可以根据标定参数确定标定后的第一相机和标定后的第二相机。
在一种可能的实现方式中,步骤S21可以包括:
根据所述已知目标上的关键点、关键点在第一拍摄图像中投影的第一投影点、关键点在第二拍摄图像中投影的第二投影点、已知目标相对于所述双相位检测相机的旋转矩阵和平移矩阵、第一相机的初始参数、第二相机的初始参数构建标定模型。
已知目标上的关键点,可以是根据需求确定的已知目标上的点。例如,已知目标可以是一个围棋的棋盘。棋盘上的关键点可以是棋盘线交叉处的交叉点。可以构建一个坐标系,以棋盘格的中心点为坐标原点,向右方向为x轴的正方向,向上方向为y轴的正方向,垂直棋盘格向外为z轴正方向。棋盘上的各交叉点均可以在构建的坐标系中对应一个三维坐标点。可以将交叉点记为X,其中第j个交叉点的坐标为Xj。可以使用2PD相机拍摄此已知棋盘得到两张图像,分别为左侧图I1和右侧图I2。在左侧图I1和右侧图I2中,每个交叉点均对应一个二维坐标。左侧图I1中Xj的投影点坐标为xj=[uj 1,vj 1]T。右侧图I2中Xj的投影点坐标为xj=[uj 2,vj 2]T。由于2PD相机的双摄相机模型是标定的,且标定后的第一相机和第二相机是严格配准的。Xj在第一相机和第二相机中的投影点的v值相同。因此,可以认为左侧图I1和右侧图I2中Xj的投影点的v值均为(vj 1+vj 2)/2。
利用2PD相机对已知棋盘拍摄N张图像。对于第n张图像,棋盘对于2PD相机的坐标系的旋转和平移,可以利用旋转矩阵和平移矩阵来表示。例如旋转矩阵为R(n),平移矩阵为T(n)。R(n)中,R1、R2、R3分别表示旋转矩阵R的第一行、第二行和第三行。T(n)中t1、t2、t3分别标识平移矩阵的x轴、y轴和z轴的平移。
可以根据棋盘上Xj的坐标、左侧图I1中Xj的投影点的坐标xj=[uj 1,vj 1]T、右侧图I2中Xj的投影点的坐标xj=[uj 2,vj 2]T、旋转矩阵为R(n)、平移矩阵为T(n),第一相机和第二相机需要标定的量fx,fy,cx,cy,Δtx,构建标定模型。
在一种可能的实现方式中,标定后的第一相机针对已知目标拍摄的第一拍摄图像中的第一投影点的像素值和标定后的第二相机针对已知目标拍摄的第二拍摄图像中的第二投影点的像素值之间的差值最小。在图像中像素点的像素值可以是像素点的RGB值,图像中相邻的像素点之间的像素值具有连续性,因此第一投影点和第二投影点的像素值之间的差值最小可以看作是第一投影点和第二投影点的距离最小。
在一种可能的实现方式中,步骤S22可以包括:
优化所述标定模型,得到第一相机的标定参数、第二相机的标定参数、旋转标定矩阵和平移标定矩阵。
根据所述第一相机的标定参数、所述第二相机的标定参数、所述旋转标定矩阵和所述平移标定矩阵,得到标定后的第一相机和标定后的第二相机,所述关键点和标定后的第一相机针对已知目标拍摄的第一拍摄图像中的第一投影点之间的距离最小,所述关键点和标定后的第二相机针对已知目标拍摄的第二拍摄图像中的第二投影点之间的距离最小。
在一种可能的实现方式中,以棋盘上Xj的坐标为目标上的关键点、左侧图I1中Xj的投影点的坐标xj=[uj 1,vj 1]T为关键点在第一拍摄图像中投影的第一投影点、右侧图I2中Xj的投影点的坐标xj=[uj 2,vj 2]T为关键点在第二拍摄图像中投影的第二投影点、旋转矩阵为R(n)和平移矩阵为T(n)为已知目标相对于所述双相位检测相机的旋转矩阵和平移矩阵,fx,fy,cx,cy,Δtx为第一相机的初始参数、第二相机的初始参数。构建标定模型的示例如下:
可以利用以下标定函数构建标定模型:
可以通过求解上述标定函数来完成双摄相机的标定。
可以将棋盘上Xj的坐标、左侧图I1中Xj的投影点的坐标xj=[uj 1,vj 1]T、右侧图I2中Xj的投影点的坐标xj=[uj 2,vj 2]T、旋转矩阵为R(n)、平移矩阵为T(n),第一相机和第二相机需要标定的量fx,fy,cx,cy,Δtx的各种组合代入标定函数进行迭代计算。
标定函数中的第一项和第二项表示在左侧相机中Xj的投影位置的u值分别为uj 1和uj 2。第三项表示v值为(vj 1+vj 2)/2。第四项中I1(uj 1)表示在左侧图I1中点[uj 1,(vj 1+vj 2)/2]的像素值,表示右侧图I2中点[uj 2,(vj 1+vj 2)/2]的像素值。由于uj 1和uj 2存在的误差,可以约束两个投影点在左侧图I1和右侧图I2中的像素值相近,使得uj 1和uj 2在邻域中搜索最优解。λ表示第四项的权重。最后,约束fx和fy比值相同。
通过优化上述标定函数,可以得到针对已知目标拍摄的每一幅图像的旋转矩阵和平移矩阵投影点坐标和Δcx (1,...,N),以及需要标定的第一相机和第二相机的参数:fx,fy,cx,cy,Δtx。
在本实施例中,根据第一相机和第二相机针对已知目标拍摄的图像,通过构建标定模型并优化所述标定模型得到第一相机和第二相机的标定参数,完成对第一相机和第二相机的标定。通过标定模型可以精确的完成第一相机和第二相机的标定,标定结果准确。
图6示出根据本公开一实施例的虚拟角色驱动方法的流程图,如图6所示,所述虚拟角色驱动方法中步骤S30包括:
步骤S31,根据待拟合目标中的关键点、标定后的第一相机针对待拟合目标拍摄的第三拍摄图像、标定后的第二相机针对待拟合目标拍摄的第四拍摄图像和初始模型参数,构建关键点拟合模型。
步骤S32,优化所述关键点拟合模型,得到关键点拟合参数,并根据所的关键点拟合参数确定关键点拟合结果。
在一种可能的实现方式中,可以将待拟合目标上设定好的点作为关键点。例如,可以将人物的面部作为待拟合目标,可以将面部中眼睛的内眼角和外眼角、瞳孔、鼻尖、眉心、眉毛的头部、眉毛的尾部等部位作为面部的关键点。关键点的数量可以根据需求进行设定。
可以将根据初始模型参数确定的初始模型与一个实际的待拟合目标进行拟合。例如可以将人的面部或躯体作为待拟合目标,将初始模型与实际的人的面部或躯体进行拟合,得到关键点拟合结果。在关键点拟合结果中的各关键点与待拟合目标中与之对应的关键点之间的距离最小,即关键点拟合结果最大程度地拟合待拟合目标。
可以通过构建关键点拟合函数的方式构建关键点拟合模型。可以将待拟合目标中的关键点、标定后的第一相机针对待拟合目标拍摄的第三拍摄图像、标定后的第二相机针对待拟合目标拍摄的第四拍摄图像和初始模型参数的各种组合代入关键点拟合模型中进行迭代计算。当迭代次数满足设定的次数,或迭代计算的结果满足设定的收敛条件时,可以停止迭代计算,得到关键点拟合参数。根据关键点拟合参数可以得到关键点拟合结果。
可以根据关键点在初始模型参数确定的初始模型中的坐标,和关键点在第一相机拍摄的图像中的坐标和关键点第二相机拍摄的图像中的坐标进行拟合运算。使得关键点在关键点拟合结果中的坐标和在第一相机拍摄的图像中的坐标的距离最小,同时关键点在关键点拟合结果中的坐标和在第二相机拍摄的图像中的坐标的距离最小。
在本实施例中,利用待拟合目标中的关键点、标定后的第一相机和第二相机针对待拟合目标拍摄的图像,对待拟合目标进行拟合得到的关键点拟合结果,可以方便、准确地对待拟合目标进行拟合。关键点拟合模型的迭代计算的过程,能够保证关键点拟合结果中各关键点的拟合效果,提高拟合的准确率。
图7示出根据本公开一实施例的虚拟角色驱动方法的流程图,所述初始模型参数,包括:初始形状参数、初始表面参数和初始位姿参数,如图7所示,所述虚拟角色驱动方法中步骤S32包括:
步骤S321,优化所述关键点拟合模型,得到第一位姿参数、第一形状参数、第一表面参数和第一相机的光心相对于所述双相位检测相机的第一偏置,并根据第一位姿参数、第一形状参数、第一表面参数和第一偏置确定关键点拟合结果,关键点拟合结果中的关键点和关键点在第三拍摄图像中投影的第三投影点之间的距离最小,关键点拟合结果中的关键点和关键点在第四拍摄图像中投影的第四投影点之间的距离最小。
在一种可能的实现方式中,当待拟合目标为面部时,初始形状参数可以包括初始脸型参数,初始表面参数可以包括初始表情参数。脸型参数可以包括根据脸部的轮廓设定的参数,表情参数可以包括根据面部不同表情给出的各关键点的位置关系设定的参数。对于一组给定的脸型参数和表情参数,可以得到一个面部模型的实例。
初始位姿参数可包括旋转参数和平移参数,可用于表示待拟合目标中的关键点相对于拍摄设备的旋转和平移。例如面部正对拍摄设备得到旋转参数1和平移参数2,面部侧面面对拍摄设备可以得到旋转参数2和平移参数2。则旋转参数1和旋转参数2不同,平移参数1和平移参数2不同。
形状参数、表面参数、旋转参数和平移参数均可包括多个参数。可以通过设定形状参数、表面参数、旋转参数和平移参数中的参数个数,得到不同精度的关键点拟合结果。
在优化关键点拟合模型的过程中,可以将初始形状参数、初始表面参数和初始位姿参数、待拟合目标中的关键点的坐标、标定后的第一相机针对待拟合目标拍摄的第三拍摄图像中关键点的坐标、标定后的第二相机针对待拟合目标拍摄的第四拍摄图像中关键点的坐标的不同组合,代入关键点拟合模型中进行迭代计算。当满足收敛条件时停止迭代计算得到关键点拟合结果。根据关键点拟合结果可以确定拟合后的三维模型A。收敛条件可包括:关键点拟合结果中的关键点和关键点在第三拍摄图像中投影的第三投影点之间的距离最小,关键点拟合结果中的关键点和关键点在第四拍摄图像中投影的第四投影点之间的距离最小。
在一种可能的实现方式中,根据待拟合目标中的关键点的坐标,在第一相机的第三拍摄图像中关键点的坐标[uj 1,vj 1]T,在第二相机的第四拍摄图像中关键点的坐标[uj 2,vj 2]T,初始模型参数包括初始位姿参数wid、初始表情参数wexp、旋转矩阵R和平移矩阵T,构建关键点拟合模型的示例如下:
例如,可以构建以下关键点拟合函数:
其中,在第一相机的第三拍摄图像中关键点的坐标为[uj 1,vj 1]T,在第二相机的第四拍摄图像中关键点的坐标为[uj 2,vj 2]T,wid为位姿参数,wexp为表情参数,旋转矩阵为R,平移矩阵为T。R1、R2、R3分别表示旋转矩阵R的第一行、第二行和第三行。t1、t2、t3分别标识平移矩阵的x轴、y轴和z轴的平移。左侧相机光心的x轴相对2PD相机的偏置为Δcx。
关键点拟合函数中的三项分别表示左相机和右相机中,Xj的投影坐标与[uj 1,vj 1]T和[uj 2,vj 2]T的距离最小。由于uj 1和uj 2来自待拟合目标上的关键点,精度较高,可以不作为优化变量。由于Xj是关于wid和wexp的函数,因此wid和wexp是优化变量之一。
在本实施例中,根据位姿参数、形状参数和表面参数优化得到的关键点拟合结果,能够全面、精确地反应出待拟合目标的关键点表示出的立体特征。提高关键点拟合结果的拟合效果。
图8示出根据本公开一实施例的虚拟角色驱动方法的流程图,如图8所示,所述虚拟角色驱动方法中的步骤S40包括:
步骤S41,根据所述关键点拟合结果驱动虚拟角色。
在一种可能的实现方式中,关键点拟合结果可以包括拟合后的三维模型。拟合后的三维模型应用广泛。可以根据关键点拟合结果驱动虚拟角色,可以通过调整拟合后的三维模型中的参数拟合待拟合目标。例如,当待拟合目标为人的躯体时,可以根据关键点拟合结果拟合待拟合目标的动作,从而驱动虚拟角色。当待拟合目标做出不同动作时,关键点拟合结果均可以最大程度地进行拟合,使得虚拟角色做出和实际的人相同的动作。
在本实施例中,根据关键点拟合结果驱动的虚拟角色,可以精确地拟合待拟合目标。
图9示出根据本公开一实施例的虚拟角色驱动方法的流程图,如图9所示,所述虚拟角色驱动方法中的步骤S30还包括:
步骤S33,根据所述关键点拟合结果、第三拍摄图像、第四拍摄图像,利用迭代就近点算法得到拟合点拟合结果。
在一种可能的实现方式中,迭代就近点(ICP,Iterative Closest Points)算法可以将两个点集进行空间变换,以使两个点集能够进行空间匹配。ICP算法是一种对初值敏感的方法。当初值准确时,ICP算法可以得到更为精确的结果。当初值不准确时,ICP算法的结果也不准确,甚至会得到失效的结果,最终收敛于一个错误的位置。本公开实施例通过迭代就近点算法,将关键点拟合结果作为初值代入,由于关键点拟合结果根据待拟合目标的关键点进行了拟合,拟合结果准确,因此根据关键点拟合结果计算得到的拟合点拟合结果准确度高。
可以将待拟合目标上除关键点以外的点确定为拟合点,或将包括关键点在内的所有点确定为拟合点。可以利用三维模型中三维网格线的交叉顶点作为拟合点。根据拟合目的,可以设定疏密程度不同的三维网格,得到数量不同的拟合点后进行拟合运算,从而得到精度不同的拟合点拟合结果。拟合点的数量多于关键点的数量。
例如,当待拟合目标为面部时,待拟合的面部可以利用三维网格表示。当三维网格中各网格线相交的交叉顶点的数量大于关键点的数量时,可以将各交叉顶点确定为拟合点。因此根据拟合点拟合的拟合点拟合结果,可以比关键点拟合结果更加精准地拟合待拟合目标。
可以将关键点拟合结果中除关键点以外的拟合点,和拟合点在第三拍摄图像和第四拍摄图像中的投影点,经过迭代计算并满足收敛条件后,得到拟合点拟合结果。
在本公开实施例中,利用迭代就近点算法,将关键点拟合结果中的拟合点进行拟合,由于使用了关键点拟合结果作为初值,并采用了更多的拟合点进行拟合运算,因此拟合点拟合结果能够比关键点拟合结果更加精准地拟合待拟合目标。
图10示出根据本公开一实施例的虚拟角色驱动方法的流程图,如图10所示,所述虚拟角色驱动方法中的步骤S33包括:
步骤S331,根据所述关键点拟合结果中的拟合点、拟合点在第三拍摄图像中投影的第五投影点、拟合点在第四拍摄图像中投影的第六投影点构建拟合点拟合模型。
步骤S332,优化所述拟合点拟合模型,得到第二位姿参数、第二形状参数、第二表面参数、第一相机的光心相对于所述双相位检测相机的第二偏置、第五投影点坐标和第六投影点坐标,并根据第二位姿参数、第二形状参数、第二表面参数、第二偏置、第五投影点坐标和第六投影点坐标确定拟合点拟合结果,拟合点拟合结果中的拟合点和第五投影点之间的距离最小,拟合点拟合结果中的拟合点和第六投影点之间的距离最小。
在一种可能的实现方式中,关键点拟合结果中的拟合点,可以是利用三维网格表示的三维模型中的各网格线交叉的交叉顶点,可以是除关键点以外的交叉顶点。
可以将关键点拟合结果给出的第一位姿参数、第一形状参数和第一表面参数和第一相机的光心相对于所述双相位检测相机的第一偏置,作为拟合点拟合模型的初值。在优化拟合点拟合模型的过程中,与优化关键点拟合模型的过程不同的是,在关键点拟合模型的拟合过程中,关键点的坐标是已知的。而在拟合点拟合模型的拟合过程中,拟合点的坐标是未知的。因此,在拟合点拟合模型的优化过程中,拟合点在第五拍摄图像和第六拍摄图像中的投影点也是迭代计算求解的一部分。
在优化拟合点拟合模型的过程中,可以将所述关键点拟合结果中的拟合点的坐标、拟合点在第五拍摄图像中投影的第五投影点、拟合点在第六拍摄图像中投影的第六投影点、第一位姿参数、第一形状参数、第一表面参数和第一相机的光心相对于所述双相位检测相机的第一偏置的各种组合,依次代入拟合点拟合模型进行迭代计算。当满足收敛条件时停止迭代计算得到拟合点拟合结果。根据拟合点拟合结果可以得到拟合后的三维模型B。收敛条件可包括:拟合点拟合结果中的拟合点和第五投影点之间的距离最小,拟合点拟合结果中的拟合点和第六投影点之间的距离最小。
在一种可能的实现方式中,所述拟合点拟合函数还包括第一正则项和第一正则权重。所述第一正则项为关键点拟合函数。所述第一正则权重为所述第一正则项的权重。
在一种可能的实现方式中,拟合点拟合结果中的第五投影点的像素值和拟合点拟合结果中第六投影点的像素值之间的差值最小。
所述拟合点拟合函数还包括第二正则项和第二正则权重。所述第二正则项包括第五投影点的像素值和第六投影点的像素值之间的差值最小。所述第二正则权重为所述第二正则项的权重。
在一种可能的实现方式中,根据所述关键点拟合结果中的拟合点的坐标、拟合点在第三拍摄图像中投影的第五投影点的坐标[ui 1,vi 1]T、拟合点在第四拍摄图像中投影的第六投影点的坐标[ui 2,vi 2]T构建拟合点拟合模型的示例如下:
例如,可以构建以下拟合点拟合函数:
其中,上述公式中的第一至第三项可以用以约束第五投影点和第六投影点之间的距离最小。乘1/N可以对投影点的点数做归一化处理,防止由于拟合点点数变化造成的误差改变。第四项至第六项为第一正则项,第一正则项与上述关键点拟合函数相同。在拟合点拟合函数中,作为正则项使用。λ1为第一正则项的权重。由于待拟合目标中的关键点具有较高的精度,在迭代运算的初期,λ1可以取一个较大的值。随着迭代运算的进行,得到的拟合结果越来越准确,可以渐小λ1的取值。公式中的第七项为第二正则项。λ2为第二正则项的权重。
在本实施例中,由于拟合点的数量比关键点的数量多,因此拟合点拟合结果,能够比关键点拟合结果,更加精确地对待拟合目标中拟合点代表的立体特征进行拟合,因此拟合点拟合结果更加地精确。
图11示出根据本公开一实施例的虚拟角色驱动方法的流程图,如图11所示,所述虚拟角色驱动方法中的步骤S40包括:
步骤S42,根据所述拟合点拟合结果驱动虚拟角色。
在一种可能的实现方式中,可以根据拟合点拟合结果驱动虚拟角色,包括确定虚拟角色的表情、位姿、动作等。由于拟合点拟合结果,采用了比关键点拟合结果的关键点更多的拟合点进行拟合,因此根据拟合点拟合结果驱动的虚拟角色,能够比根据关键点拟合结果驱动的虚拟角色,具有更加丰富细致的表情,以及具有更加多变和精准地位姿和动作。
关键点拟合结果或拟合点拟合结果,均可以基于2PD相机等设备拍摄得到的图像进行运算得到。本公开实施例中的方法,均可以基于移动设备、便携设备实现。因此,利用关键点拟合结果或拟合点拟合结果驱动虚拟角色,在模型制作、影视制作等领域具有广泛的应用场景。
图12示出根据本公开一实施例的虚拟角色驱动装置的框图,如图12所示,所述虚拟角色驱动装置包括:
双摄相机模型构建模块10,用于根据双相位检测相机的参数构建双摄相机模型,所述双摄相机模型包括第一相机和第二相机。
标定模块20,用于根据第一相机和第二相机针对已知目标拍摄的图像、第一相机的初始参数和第二相机的初始参数,得到标定后的第一相机和标定后的第二相机。
拟合结果获取模块30,用于根据标定后的第一相机和标定后的第二相机针对待拟合目标拍摄的目标图像进行拟合,得到拟合结果。
虚拟角色驱动模块40,用于根据所述拟合结果驱动虚拟角色。
图13示出根据本公开一实施例的虚拟角色驱动装置的框图,如图13所示,在一种可能的实现方式中,所述标定模块20,包括:
标定模型构建子模块21,用于根据第一相机针对已知目标拍摄的第一拍摄图像、第二相机针对已知目标拍摄的第二拍摄图像、第一相机的初始参数和第二相机的初始参数构建标定模型;
标定子模块22,用于优化所述标定模型得到标定参数,并根据所述标定参数得到标定后的第一相机和标定后的第二相机。
在一种可能的实现方式中,所述标定模型构建子模块21,包括:
第一标定模型构建子模块,用于根据所述已知目标上的关键点、关键点在第一拍摄图像中投影的第一投影点、关键点在第二拍摄图像中投影的第二投影点、已知目标相对于所述双相位检测相机的旋转矩阵和平移矩阵、第一相机的初始参数、第二相机的初始参数构建标定模型。
在一种可能的实现方式中,所述标定子模块22,包括:
标定参数获取子模块,用于优化所述标定模型,得到第一相机的标定参数、第二相机的标定参数、旋转标定矩阵和平移标定矩阵;
第一标定子模块,用于根据所述第一相机的标定参数、所述第二相机的标定参数、所述旋转标定矩阵和所述平移标定矩阵,得到标定后的第一相机和标定后的第二相机,所述关键点和标定后的第一相机针对已知目标拍摄的第一拍摄图像中的第一投影点之间的距离最小,所述关键点和标定后的第二相机针对已知目标拍摄的第二拍摄图像中的第二投影点之间的距离最小。
在一种可能的实现方式中,标定后的第一相机针对已知目标拍摄的第一拍摄图像中的第一投影点的像素值和标定后的第二相机针对已知目标拍摄的第二拍摄图像中的第二投影点的像素值之间的差值最小。
在一种可能的实现方式中,标定后的第一相机与标定后的第二相机焦距相同,标定后的第二相机相对于标定后的第一相机无旋转,且标定后的第二相机在标定后的第一相机坐标系的x轴的平移量为双相位检测相机中透镜的直径。
在一种可能的实现方式中,所述拟合结果获取模块30,包括:
关键点拟合模型构建子模块31,用于根据待拟合目标中的关键点、标定后的第一相机针对待拟合目标拍摄的第三拍摄图像、标定后的第二相机针对待拟合目标拍摄的第四拍摄图像和初始模型参数,构建关键点拟合模型;
关键点拟合结果获取子模块32,用于优化所述关键点拟合模型,得到关键点拟合参数,并根据所的关键点拟合参数确定关键点拟合结果。
在一种可能的实现方式中,所述初始模型参数,包括:初始形状参数、初始表面参数和初始位姿参数,所述关键点拟合结果获取子模块32,包括:
第一拟合结果获取子模块,用于优化所述关键点拟合模型,得到第一位姿参数、第一形状参数、第一表面参数和第一相机的光心相对于所述双相位检测相机的第一偏置,并根据第一位姿参数、第一形状参数、第一表面参数和第一偏置确定关键点拟合结果,关键点拟合结果中的关键点和关键点在第三拍摄图像中投影的第三投影点之间的距离最小,关键点拟合结果中的关键点和关键点在第四拍摄图像中投影的第四投影点之间的距离最小。
在一种可能的实现方式中,所述虚拟角色驱动模块40,包括:
第一驱动子模块41,用于根据所述关键点拟合结果驱动虚拟角色。
在一种可能的实现方式中,所述拟合结果获取模块30还包括:
拟合点拟合结果获取子模块33,用于根据所述关键点拟合结果、第三拍摄图像、第四拍摄图像,利用迭代就近点算法得到拟合点拟合结果。
在一种可能的实现方式中,所述拟合点拟合结果获取子模块33,包括:
拟合点拟合模型构建子模块,用于根据所述关键点拟合结果中的拟合点、拟合点在第三拍摄图像中投影的第五投影点、拟合点在第四拍摄图像中投影的第六投影点构建拟合点拟合模型;
第一拟合点拟合结果获取子模块,用于优化所述拟合点拟合模型,得到第二位姿参数、第二形状参数、第二表面参数、第一相机的光心相对于所述双相位检测相机的第二偏置、第五投影点坐标和第六投影点坐标,并根据第二位姿参数、第二形状参数、第二表面参数、第二偏置、第五投影点坐标和第六投影点坐标确定拟合点拟合结果,拟合点拟合结果中的拟合点和第五投影点之间的距离最小,拟合点拟合结果中的拟合点和第六投影点之间的距离最小。
在一种可能的实现方式中,拟合点拟合结果中的第五投影点的像素值和拟合点拟合结果中第六投影点的像素值之间的差值最小。
在一种可能的实现方式中,所述虚拟角色驱动模块40,包括:
第二驱动子模块42,用于根据所述拟合点拟合结果驱动虚拟角色。
图14是根据一示例性实施例示出的一种电子设备的框图。电子设备可以是用于虚拟角色驱动的装置800。例如,装置800可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图14,装置800可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入/输出(I/O)的接口812,传感器组件814,以及通信组件816。
处理组件802通常控制装置800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。
存储器804被配置为存储各种类型的数据以支持在装置800的操作。这些数据的示例包括用于在装置800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件806为装置800的各种组件提供电力。电源组件806可以包括电源管理系统,一个或多个电源,及其他与为装置800生成、管理和分配电力相关联的组件。
多媒体组件808包括在所述装置800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当装置800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(MIC),当装置800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。
I/O接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件814包括一个或多个传感器,用于为装置800提供各个方面的状态评估。例如,传感器组件814可以检测到装置800的打开/关闭状态,组件的相对定位,例如所述组件为装置800的显示器和小键盘,传感器组件814还可以检测装置800或装置800一个组件的位置改变,用户与装置800接触的存在或不存在,装置800方位或加速/减速和装置800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件816被配置为便于装置800和其他设备之间有线或无线方式的通信。装置800可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种非易失性计算机可读存储介质,例如包括计算机程序指令的存储器804,上述计算机程序指令可由装置800的处理器820执行以完成上述方法。
附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (10)
1.一种虚拟角色驱动方法,其特征在于,所述方法包括:
根据双相位检测相机的参数构建双摄相机模型,所述双摄相机模型包括第一相机和第二相机;
根据第一相机和第二相机针对已知目标拍摄的图像、第一相机的初始参数和第二相机的初始参数,得到标定后的第一相机和标定后的第二相机;
根据标定后的第一相机和标定后的第二相机针对待拟合目标拍摄的目标图像进行拟合,得到拟合结果;
根据所述拟合结果驱动虚拟角色。
2.根据权利要求1所述的方法,其特征在于,根据第一相机和第二相机针对已知目标拍摄的图像、第一相机的初始参数和第二相机的初始参数,得到标定后的第一相机和标定后的第二相机,包括:
根据第一相机针对已知目标拍摄的第一拍摄图像、第二相机针对已知目标拍摄的第二拍摄图像、第一相机的初始参数和第二相机的初始参数构建标定模型;
优化所述标定模型得到标定参数,并根据所述标定参数得到标定后的第一相机和标定后的第二相机。
3.根据权利要求2所述的方法,其特征在于,根据第一相机针对已知目标拍摄的第一拍摄图像、第二相机针对已知目标拍摄的第二拍摄图像、第一相机的初始参数和第二相机的初始参数构建标定模型,包括:
根据所述已知目标上的关键点、关键点在第一拍摄图像中投影的第一投影点、关键点在第二拍摄图像中投影的第二投影点、已知目标相对于所述双相位检测相机的旋转矩阵和平移矩阵、第一相机的初始参数、第二相机的初始参数构建标定模型。
4.根据权利要求3所述的方法,其特征在于,优化所述标定模型得到标定参数,并根据所述标定参数得到标定后的第一相机和标定后的第二相机,包括:
优化所述标定模型,得到第一相机的标定参数、第二相机的标定参数、旋转标定矩阵和平移标定矩阵;
根据所述第一相机的标定参数、所述第二相机的标定参数、所述旋转标定矩阵和所述平移标定矩阵,得到标定后的第一相机和标定后的第二相机,所述关键点和标定后的第一相机针对已知目标拍摄的第一拍摄图像中的第一投影点之间的距离最小,所述关键点和标定后的第二相机针对已知目标拍摄的第二拍摄图像中的第二投影点之间的距离最小。
5.一种虚拟角色驱动装置,其特征在于,所述装置包括:
双摄相机模型构建模块,用于根据双相位检测相机的参数构建双摄相机模型,所述双摄相机模型包括第一相机和第二相机;
标定模块,用于根据第一相机和第二相机针对已知目标拍摄的图像、第一相机的初始参数和第二相机的初始参数,得到标定后的第一相机和标定后的第二相机;
拟合结果获取模块,用于根据标定后的第一相机和标定后的第二相机针对待拟合目标拍摄的目标图像进行拟合,得到拟合结果;
虚拟角色驱动模块,用于根据所述拟合结果驱动虚拟角色。
6.根据权利要求5所述的装置,其特征在于,所述标定模块,包括:
标定模型构建子模块,用于根据第一相机针对已知目标拍摄的第一拍摄图像、第二相机针对已知目标拍摄的第二拍摄图像、第一相机的初始参数和第二相机的初始参数构建标定模型;
标定子模块,用于优化所述标定模型得到标定参数,并根据所述标定参数得到标定后的第一相机和标定后的第二相机。
7.根据权利要求6所述的装置,其特征在于,所述标定模型构建子模块,包括:
第一标定模型构建子模块,用于根据所述已知目标上的关键点、关键点在第一拍摄图像中投影的第一投影点、关键点在第二拍摄图像中投影的第二投影点、已知目标相对于所述双相位检测相机的旋转矩阵和平移矩阵、第一相机的初始参数、第二相机的初始参数构建标定模型。
8.根据权利要求7所述的装置,其特征在于,所述标定子模块,包括:
标定参数获取子模块,用于优化所述标定模型,得到第一相机的标定参数、第二相机的标定参数、旋转标定矩阵和平移标定矩阵;
第一标定子模块,用于根据所述第一相机的标定参数、所述第二相机的标定参数、所述旋转标定矩阵和所述平移标定矩阵,得到标定后的第一相机和标定后的第二相机,所述关键点和标定后的第一相机针对已知目标拍摄的第一拍摄图像中的第一投影点之间的距离最小,所述关键点和标定后的第二相机针对已知目标拍摄的第二拍摄图像中的第二投影点之间的距离最小。
9.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:执行权利要求1至4中任意一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现权利要求1至4中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810381365.1A CN108648238B (zh) | 2018-04-25 | 2018-04-25 | 虚拟角色驱动方法及装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810381365.1A CN108648238B (zh) | 2018-04-25 | 2018-04-25 | 虚拟角色驱动方法及装置、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108648238A true CN108648238A (zh) | 2018-10-12 |
CN108648238B CN108648238B (zh) | 2021-09-14 |
Family
ID=63747831
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810381365.1A Active CN108648238B (zh) | 2018-04-25 | 2018-04-25 | 虚拟角色驱动方法及装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108648238B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111598976A (zh) * | 2019-02-01 | 2020-08-28 | 华为技术有限公司 | 场景识别方法及装置、终端、存储介质 |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003091660A1 (de) * | 2002-04-24 | 2003-11-06 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Verfahren und vorrichtung zur bestimmung der räumlichen koordinaten eines gegenstandes |
US20070268390A1 (en) * | 2006-05-19 | 2007-11-22 | Eastman Kodak Company | CCD with improved charge transfer |
US20080239288A1 (en) * | 2007-04-02 | 2008-10-02 | Korea Advanced Institute Of Science And Technology | 3D shape measurement apparatus and method using stereo moire technique |
CN101814192A (zh) * | 2009-02-20 | 2010-08-25 | 三星电子株式会社 | 真实感3d人脸重建的方法 |
US20130057789A1 (en) * | 2011-09-07 | 2013-03-07 | Cheung-Hwan An | Stereoscopic image display device |
CN103065289A (zh) * | 2013-01-22 | 2013-04-24 | 清华大学 | 基于双目立体视觉的四目摄像机正面人脸重建方法 |
WO2014006783A1 (ja) * | 2012-07-06 | 2014-01-09 | 富士フイルム株式会社 | 撮像装置及び画像処理方法 |
CN103630116A (zh) * | 2013-10-10 | 2014-03-12 | 北京智谷睿拓技术服务有限公司 | 图像采集定位方法及图像采集定位装置 |
CN104182982A (zh) * | 2014-08-27 | 2014-12-03 | 大连理工大学 | 双目立体视觉摄像机标定参数的整体优化方法 |
CN104380712A (zh) * | 2012-06-07 | 2015-02-25 | 富士胶片株式会社 | 摄像装置及摄像方法 |
CN104394400A (zh) * | 2014-12-09 | 2015-03-04 | 山东大学 | 基于立体多画显示的隔网对抗性项目虚拟仿真系统及方法 |
CN104853105A (zh) * | 2015-06-15 | 2015-08-19 | 爱佩仪光电技术有限公司 | 基于可控制镜头倾斜的摄像装置的三维快速自动对焦方法 |
CN105357441A (zh) * | 2015-11-27 | 2016-02-24 | 努比亚技术有限公司 | 一种图像采集方法及移动终端 |
CN106447785A (zh) * | 2016-09-30 | 2017-02-22 | 北京奇虎科技有限公司 | 一种驱动虚拟角色的方法和装置 |
CN107533356A (zh) * | 2015-03-09 | 2018-01-02 | 文塔纳3D有限责任公司 | 头像控制系统 |
-
2018
- 2018-04-25 CN CN201810381365.1A patent/CN108648238B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003091660A1 (de) * | 2002-04-24 | 2003-11-06 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Verfahren und vorrichtung zur bestimmung der räumlichen koordinaten eines gegenstandes |
US20070268390A1 (en) * | 2006-05-19 | 2007-11-22 | Eastman Kodak Company | CCD with improved charge transfer |
US20080239288A1 (en) * | 2007-04-02 | 2008-10-02 | Korea Advanced Institute Of Science And Technology | 3D shape measurement apparatus and method using stereo moire technique |
CN101814192A (zh) * | 2009-02-20 | 2010-08-25 | 三星电子株式会社 | 真实感3d人脸重建的方法 |
US20130057789A1 (en) * | 2011-09-07 | 2013-03-07 | Cheung-Hwan An | Stereoscopic image display device |
CN104380712A (zh) * | 2012-06-07 | 2015-02-25 | 富士胶片株式会社 | 摄像装置及摄像方法 |
WO2014006783A1 (ja) * | 2012-07-06 | 2014-01-09 | 富士フイルム株式会社 | 撮像装置及び画像処理方法 |
CN103065289A (zh) * | 2013-01-22 | 2013-04-24 | 清华大学 | 基于双目立体视觉的四目摄像机正面人脸重建方法 |
CN103630116A (zh) * | 2013-10-10 | 2014-03-12 | 北京智谷睿拓技术服务有限公司 | 图像采集定位方法及图像采集定位装置 |
CN104182982A (zh) * | 2014-08-27 | 2014-12-03 | 大连理工大学 | 双目立体视觉摄像机标定参数的整体优化方法 |
CN104394400A (zh) * | 2014-12-09 | 2015-03-04 | 山东大学 | 基于立体多画显示的隔网对抗性项目虚拟仿真系统及方法 |
CN107533356A (zh) * | 2015-03-09 | 2018-01-02 | 文塔纳3D有限责任公司 | 头像控制系统 |
CN104853105A (zh) * | 2015-06-15 | 2015-08-19 | 爱佩仪光电技术有限公司 | 基于可控制镜头倾斜的摄像装置的三维快速自动对焦方法 |
CN105357441A (zh) * | 2015-11-27 | 2016-02-24 | 努比亚技术有限公司 | 一种图像采集方法及移动终端 |
CN106447785A (zh) * | 2016-09-30 | 2017-02-22 | 北京奇虎科技有限公司 | 一种驱动虚拟角色的方法和装置 |
Non-Patent Citations (2)
Title |
---|
AN CHEN 等: "A Virtual Binocular Vision System and Its Application in Information", 《2016 EIGHTH INTERNATIONAL CONFERENCE ON MEASURING TECHNOLOGY AND MECHATRONICS AUTOMATION》 * |
杨扬: "基于双目视觉的人体运动捕捉系统", 《万方学位论文》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111598976A (zh) * | 2019-02-01 | 2020-08-28 | 华为技术有限公司 | 场景识别方法及装置、终端、存储介质 |
CN111598976B (zh) * | 2019-02-01 | 2023-08-22 | 华为技术有限公司 | 场景识别方法及装置、终端、存储介质 |
US11918900B2 (en) | 2019-02-01 | 2024-03-05 | Huawei Technologies Co., Ltd. | Scene recognition method and apparatus, terminal, and storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN108648238B (zh) | 2021-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104243818B (zh) | 图像处理方法、装置及设备 | |
CN104243819B (zh) | 照片获取方法及装置 | |
CN104469167B (zh) | 自动对焦方法及装置 | |
CN105279499B (zh) | 年龄识别方法及装置 | |
CN105528786B (zh) | 图像处理方法及装置 | |
CN104700353B (zh) | 图像滤镜生成方法及装置 | |
CN108182730A (zh) | 虚实对象合成方法及装置 | |
CN109829863A (zh) | 图像处理方法及装置、电子设备和存储介质 | |
CN105241424B (zh) | 室内定位方法和智能管理装置 | |
CN105049727B (zh) | 全景图像拍摄的方法、装置及系统 | |
CN109889724A (zh) | 图像虚化方法、装置、电子设备及可读存储介质 | |
WO2022037285A1 (zh) | 相机外参标定方法及装置 | |
CN109902725A (zh) | 移动目标的检测方法、装置及电子设备和存储介质 | |
CN104205804A (zh) | 图像处理装置、拍摄装置、程序以及图像处理方法 | |
CN105426878B (zh) | 人脸聚类方法及装置 | |
CN108648280B (zh) | 虚拟角色驱动方法及装置、电子设备和存储介质 | |
CN107944367A (zh) | 人脸关键点检测方法及装置 | |
CN106303192B (zh) | 终端控制方法及终端 | |
CN109584362A (zh) | 三维模型构建方法及装置、电子设备和存储介质 | |
CN106210496A (zh) | 照片拍摄方法及装置 | |
CN109615593A (zh) | 图像处理方法及装置、电子设备和存储介质 | |
CN107787463A (zh) | 优化对焦堆栈的捕获 | |
CN107948510A (zh) | 焦距调整的方法、装置及存储介质 | |
CN104104870B (zh) | 拍摄控制方法、拍摄控制装置及拍摄设备 | |
CN104282041A (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 |