APP下载

颅面的径向曲线统计复原模型

2021-01-12赵俊莉黄瑞坤李淑娴李守哲

光学精密工程 2020年12期
关键词:复原颅骨人脸

王 琳,赵俊莉*,黄瑞坤,李淑娴,李守哲

(1. 青岛大学 数据科学与软件工程学院,山东 青岛266071;2. 大连大学 机械工程学院,辽宁 大连116622;3. 威斯康星大学 麦迪逊分校文理学院,美国威斯康星州麦迪逊53706)

1 引 言

利用人的颅骨进行面貌复原是一个古老的课题。在公安法医学领域,为了更快速地侦破案件,通常需要及时辨别死者的身份,由于尸体遗骨软组织高度腐烂的情况时有发生,导致死者的容貌难以分辨,为了更高效地鉴定死者的身份,人们开始尝试依据颅骨来复原死者的面貌.

早期颅面复原技术[1]采用手工复原方法,复原过程复杂,耗费时间长。近年来计算机技术的介入提高了颅面复原的准确性,使得复原结果更加客观、高效。计算机辅助颅面复原技术可分为两类:基于软组织厚度的颅面复原法和统计模型法。前者是以面部软组织厚度分布规律为前提进行的复原[2-5]。在此种方法下进行的颅面复原,很难做到准确描述颅面形态信息,颅面形态变化的高度复杂性难以得到体现。统计模型的融入通过对大量颅面数据的统计分析,获取颅骨和相貌特征之间的本质关系,并依据这种关系进行面貌复原,使得颅面复原的效率和准确度得到了显著提升,已成为颅面复原研究领域较为热门的关注点[6]。

颅面统计复原方法一般是将颅骨数据和对应的人脸数据作为训练样本,采用统计模型的方法对给定的未知颅骨数据来估算面皮数据。Claes 等[7]首次在颅面复原研究中引入统计模型,并使用稠密点表示的面貌和52 个稀疏特征点表示的颅骨建立主成分分析(Pricinple Component Analysis,PCA)统计模型。Berar 等人[8]采用类似的统计模型建立了稀疏网格表示的颅面变形模型。Hu[9]等人提出了层次化统计模型,采用稠密点云来表示面皮和颅骨数据。 Zhang 等[10]将颅骨、面皮模型按照生理结构进行区域划分,以分区为单位进行PCA 统计复原,融合后得到误差较小的复原面貌。Berar 等人[11]利用稀疏网格来表示颅骨和面皮数据,并通过构建颅骨特征点到面皮的回归模型来完成复原。Duan 等人[12-13]提出了面貌对颅骨的层次化回归模型来实现面貌复原,且回归模型构建过程中融合了偏最小二乘回归的方法,建模效率获得进一步提高。Madsen[14]等人创建了一个联合面部形状模型、颅骨形状模型和软组织厚度标记信息的概率模型来获得给定头骨形状的合理面部形状分布。在这些方法中,采用全部数据稠密点的颅面样本计算量大,而手工标记特征点又费时费力且不准确;而且颅面形态复杂,生理特征点确定困难;因此如何自动选择用于统计复原模型的特征点[15]是该方法的关键。

本文依据颅面形态的几何结构,将颅面用一组从鼻尖出发的径向曲线表示,使用颅骨和人脸面皮上提取的径向曲线作为训练样本数据,构建了一种基于径向曲线自动定位颅面特征点的颅面统计复原模型,可以减少模型中样本数据的维度,提高颅面复原的精度和速度。

2 颅面的径向曲线表示

依据颅面形态的几何结构,径向曲线由颅面对称面和颅面表面的交点来确定。我们提取以鼻尖点为源点且均匀分布于人脸的径向曲线[16]来表示颅面。

2.1 定位鼻尖点

鼻尖是人脸显著的生理特征点,因而本文以鼻尖点作为源点,求取鼻尖点与颅面边界等分点间的径向曲线。在经过预处理统一坐标系后的标准姿态下的颅面模型,坐标轴Y 方向指向人脸外侧,因此由Y 轴方向坐标值最大的点即可确定鼻尖点。如图1(a)所示。

2.2 估计颅面对称面

为了减少噪声造成的影响并提高准确度,在估计颅面对称面时,首先在经过标准化的目标颅面上取以鼻尖点作为球心、距鼻尖点距离为R =0.5 的球形区域内的点作为颅面裁剪区域FM。然后,以坐标系平面YOZ 为镜像平面,求得FM的镜像模型。接着以鼻尖点为标准点将镜像模型对齐到FM,由FM和组成的新的点云集合可表示为:,其中-F 是一个自对称模型,FM和FmM对应的平分线就是三维颅面模型的对称面所在的平面。点集-F 中qi与qmi是左右脸的对称点,-F 中可以得到N 对对称点,利用这N对对称点,采用最小二乘拟合的方法求取颅面对称面,如图1(b)所示。

2.3 计算径向曲线

接下来通过颅面对称面与颅面网格模型的交点计算第一条径向曲线如图1(c)所示,将颅面对 称 面 绕 轴 线L0逐 次 旋 转(180/m)°(0° <180/m <180°)即可获取m 条径向曲线(本文经过实验取m = 30 条,如图1(d)所示)。为了得到准确的对应点,需要对径向曲线进行对齐工作,然后对这些点均匀重采样,并使用均匀采样点来表示径向曲线,这里把每条径向曲线重采样点数K 取为200 个点。对每一条径向曲线完成对齐与重采样后,即可获得每个颅面重采样后的径向曲 线J 表示为:J ={ A| A1,A2,A3,…,Am}。其中每条径向曲线Ai( i = 1,2,…,m ) 为K 行3列的矩阵。

图1 颅面径向曲线提取Fig. 1 Extracted radial curves on craniofacial data

3 基于径向曲线的颅面统计复原

统计模型借助统计的方法分析多样本数据,并从中认识和学习样本统计规律,主成分分析(PCA)是最经典的统计模型方法。由于稠密的颅面模型中存在大量噪音数据,本文按如下方法建立基于径向曲线的颅面统计复原模型。

3.1 复原未知颅骨对应人脸的径向曲线

本文经过配准后的每个颅骨数据有N 个点,以颅骨和人脸面皮上提取的径向曲线作为训练样本数据,建立基于径向曲线的统计模型,复原未知颅骨对应人脸的径向曲线的步骤如下:

(1)建立训练样本的颅骨向量:C =[ C1,C2,...,Cn]T;

(2)建立训练样本面皮上的径向曲线向量:J =[ J1,J2,...,Jm]T;

(3)将颅骨向量与面皮上的径向曲线向量组合建立基于PCA 的统计模型:

接着,由公式(2)中的部分方程C = Φcb 通过训练样本数据可求得到系数b:

Φ 表示一个矩阵,它的列为协方差矩阵的特征向量,b 表示模型的形状参数。对于待复原颅骨,将系数b 代入公式(1)后即可求得其对应人脸的径向曲线。如图2 所示为复原的一个人脸的径向曲线。

图2 复原的一个人脸的径向曲线Fig. 2 Reconstructed radial curves of a skin

3.2 利用复原出的径向曲线估计人脸

3.2.1 建立人脸统计模型

统计模型通过学习大量样本信息,能够得到对象形状信息的统计经验,从而获取更加精确的三维复杂对象的形状信息。本文采用PCA 按照如下方式建立人脸统计模型:

将一套人脸的原始数据看作一个样本向量,记 为,1≤i≤N,对于N个人脸样本向量,首先计算其协方差矩阵:

接下来求CF的特征值和特征向量,将特征值按照降序排列,取前m个最大的特征值λ=(λ1,λ2,…,λm) 和 对 应 的 特 征 向 量U =(U1,U2,...,Um)。

hi代表样本向量的主分量,可以由以下线性组合表示:

则人脸空间的任一形状可利用主分量的组合形式近似表示为:

其中:α =(α1,α2,...,αm)为模型参数,同时αi服从高斯分布。在该模型中,参数α取不同的值可以得到不同的人脸。

3.2.2 由径向曲线估计人脸

建立人脸模型后,本文通过复原出的径向曲线估计人脸统计模型参数α,进而估计出待复原颅骨对应的面貌。为了使得基于径向曲线的颅面复原效果达到最好的状态,需要不断调整模型参数α,以尽量缩小由径向曲线估计出的模型与统 计 模 型 之 间 的 误 差 ,即 最 小 化min‖‖Fmodel(α)-F*,F*表示根据径向曲线复原出的模型。具体过程如下:

首先,设α初值为0,此时Fmodel(α)= -F,然后利用迭代最近点(ICP)算法确定模型Fmodel(α)中与复原出的径向曲线J对应的点J′。

接下来由径向曲线即可估计统计模型参数α:令J - J′= hg α,其中hg表示hi中与径向曲线点对应的分量,通过最小二乘法可求得α =(hgThg)-1hgT(J′- J)。

新 的 系 数α确 定 后 ,人 脸 模 型Fmodel(α) 便 得以重新计算。迭代上述步骤,使模型之间的误差达到最小的状态,以此求得待复原的人脸模型。

4 实验结果与讨论

4.1 实验数据获取与预处理

本文用到的颅面数据来自教育部虚拟现实应用工程研究中心建立的颅面数据库,包括192套完整的颅骨和面皮数据,由螺旋CT 扫描仪对年龄在19~75 岁志愿者的头部扫描采集得到。首先,从原始CT 切片图像中提取出颅面轮廓,并使用Marching Cubes 算法[17]完成颅面 的三维建模。然后将所有三维颅面数据统一至法兰克福坐标系下[18-19],以消除不同姿态等因素的影响。由于整个颅面的顶点过多,且面部特征主要集中在头部的前面部分,因此本文选择一组颅面数据作为参考模板,将其后面部分切除。最后,将所有颅面模型通过TPS(Thin Plate Spline)非刚性配准方法[9,20]进行配准,配准后每个颅骨和面皮数据分别包含41 059 和40 969 个顶点。

4.2 复原精度对比

对上述192 套颅面数据,分别采用本文提出的基于径向曲线的颅面统计复原方法和经典的PCA 统计复原方法进行实验。实验采用留一法[21],即把192 套中的1 套用来测试,另外191 套用来训练,依次循环,复原出相应的192 个人脸,与原始面貌进行对比,利用欧式距离计算出误差。两种复原方法的复原结果如下表1 所示,误差图中蓝色表示误差为0,红色表示误差最大(彩图见期刊电子版)。可看出基于径向曲线的颅面复原效果更好,复原出的面貌与原始面貌更接近。

表1 复原结果比较Tab. 1 Comparison of reconstructed results

对于192 套测试样本在两种复原方法下得到的复原人脸,分别计算其与对应的原始人脸之间的距离误差,包括最小值、平均值、最大值、方差4种指标,并最终求出192 个复原人脸各项距离误差对应的均值,如表2 所示。显然本文方法的各项平均距离误差均显著小于PCA 复原误差。

表2 统计距离误差的平均值Tab. 2 Average statistical distance error

为了更直观地展示实验结果,本文用折线图表示192 套测试样本对应的原始人脸与复原人脸的距离误差,如图3 所示,图中横坐标轴表示样本编号(间隔为10),纵坐标轴表示原始人脸与复原人脸的距离误差,很明显基于径向曲线的复原结果(绿色折线)与原始人脸的距离误差比PCA 复原结果(蓝色折线)更小,复原效果更好(彩图见期刊电子版)。

图3 原始人脸与复原人脸统计距离误差Fig. 3 Statistical distance error between original faces and reconstructed faces

4.3 复原速度对比

在复原速度方面,本文逐个对每个复原人脸分别用本文方法和PCA 颅面统计复原方法的复原时间进行统计,用直观的折线图表示,如图4 所示;并分别计算两类方法下192 个人脸复原时间的平均值,结果如表3 所示。图4 横坐标轴表示样本编号(间隔为10),纵坐标轴表示单个样本完成复原耗费的时间,可以观察到本文方法(绿色折线)所用的每个人脸的复原时间均短于PCA 颅面统计复原(蓝色折线)所用的时间(彩图见期刊电子版)。这是由于采用本文提出的径向曲线进行复原时,径向曲线的点数远少于进行PCA 统计复原时采用的颅面全部数据的点数,因而本文方法人脸复原耗费的时间更短,即基于径向曲线的颅面复原速度更快。表3 和图4 从复原速度的角度验证了本文方法要优于PCA 颅面统计复原效率。

表3 平均复原速度对比Tab. 3 Average reconstructed speed comparison

图4 人脸复原时间对比Fig. 4 Time comparison of reconstructed faces

5 结 论

本文提出了一种新的基于径向曲线的颅面统计复原模型,在三维颅面模型上提取了以鼻尖点为起点的均匀分布于人脸的径向曲线作为颅面表示,自动定位颅面几何特征点,以颅骨和人脸面皮上提取的径向曲线建立颅面统计复原模型,采用留一法对192 套颅面数据进行实验,实验结果表明:与基于PCA 的颅面复原方法相比,本文提出的基于径向曲线的颅面统计复原方法的复原精度提高了2. 95 倍,速度提高了4. 01 倍。综合分析后可以看出基于径向曲线的颅面复原方法降低了模型中样本数据的维度,提高了颅面复原的精度和速度,颅面复原的效果得到进一步的改善。本文所提的基于径向曲线的颅面统计复原方法不仅可以用于颅面复原中,也可用于三维颅骨或人脸的缺失补全等应用中,径向曲线的表示方法也可用于三维人脸识别、颅骨相似性度量等应用中,对三维模型的分析、修补和识别也具有一定的借鉴意义。

猜你喜欢

复原颅骨人脸
温陈华:唐宋甲胄复原第一人
有特点的人脸
一起学画人脸
When weird weather strikes 当怪天气来临时
浅谈曜变建盏的复原工艺
毓庆宫惇本殿明间原状陈列的复原
颅骨血管瘤样纤维组织细胞瘤1例
三国漫——人脸解锁
More gum disease today than 2,000 years ago
探讨外伤性颅骨缺损行颅骨修补术14例的护理体会