APP下载

贵州傩面具数字化及增强现实技术研究

2018-11-21王存睿白海娟

大连民族大学学报 2018年5期
关键词:面具顶点纹理

王 磊,王存睿,白海娟

(大连民族大学 a.计算机科学与工程学院; b.大连市民族文化数字技术重点实验室,辽宁 大连 116605)

傩文化是中国传统文化的重要组成部分。王国维说,“面具之兴古矣。周官方相周官方相氏,掌蒙熊皮,黄金四目,玄衣朱裳,执戈扬盾,似已为面具之始。”[1]。在2016年贵阳举办的国际民族民间文化旅游产品博览会上,其实际销售的旅游产品大多数集中在传统的民族蜡染、刺绣、银饰上,傩文化相关的旅游产品局限于传统傩雕工艺美术,产品显示性质雷同、思维局限,以傩戏面具为元素与现代设计相结合的文创产品极度缺乏[2]。足可见傩面具还有许多应用场景与领域等待开发。

随着移动平台硬件水平的提升及虚拟现实技术的发展,移动增强现实(Mobile Augmented Reality,MAR)这项技术在教育、娱乐、医疗、旅游等众多领域具有良好的应用前景[3-5]。增强现实技术是一种将虚拟世界信息“无缝”叠加到真实世界的技术,通过将计算机生成的信息叠加到真实世界而使用户达到超越现实的感官体验。为了实现这种无差别融合,需要检测增强的对象(物体识别)和估计虚拟模型的位置及旋转(注册追踪)。目前主流的图片特征检测技术有SURF,SIFT,ORB等[6]。虚拟模型的三维注册标识方法有两种,一种是通过在兴趣物体上设置人工标识的方法来实现,另一种是无标识三维注册追踪,依靠场景中图片特征或物体自身特征完成追踪[7]。然而,对于傩文化面具的细节表现,如何表现细节纹理清晰的模型,形成实时性强且有参考性的傩面具移动增强现实系统,这方面的研究几乎没有。为给傩面具的保护与发展提供支持,确保系统的实时性与模型的表现力,本文着重研究了对快速扫描的非复杂模型网格的局部特征优化,虚实融合的3D模型表现力与标识管理,并通过实验验证虚实融合方法在实际运行中的可靠和高效系统构建思路如图1。

图1 系统建构思路

1 面具虚拟模型的采集处理和渲染

手机端在模型渲染、读取以及色彩表现力等方面,因其自身硬件的限制远远不能与PC相比。将增强现实技术应用于其上,要保证效果和性能平衡,必须要严格控制三维模型的面数和灯光数,尽量避免使用实时光影这些功能,因为这会成倍数的增加模型面数和顶点数。因此首先要考虑的是对三维虚拟模型的优化处理。其次,MAR虚实融合要保证虚拟模型和真实场景有正确的位置、透视和遮挡关系,还要保证它们之间明暗、阴影等光照匹配关系,估计真实场景的光照信息,完成虚拟物体的渲染与融合。

1.1 面具虚拟模型的采集和预处理

传统的3D扫描仪体积庞大还要依靠电脑支持,严重受限于地点,快速照片扫描建模方法[8],使用方便灵活大大加快数据采集过程,采集后会得到相应的网格模型和纹理贴图,面具采集如图2。

图2 面具模型采集

三维扫描生成的面具模型包含较多几何信息,图形纹理,噪点等最原始的数据。直接采集的模型数据都有多余且精度不一的部分,所以要经过一定的处理。本文提供一种高效的建模工作流程,涵盖了复原处理,降维处理,特征增强等内容,数字化流程如图3。

Step1:首先将采集的点阵数据导逆向生成点云数据,对比原始高清图像,根据面具的边缘特征,去除多余的噪点,生成粗模;

Step2:使用算法实现网格重构,逐步实现面具模型的四边形网格的重新拓扑,得到网格清晰的OBJ格式模型,对于模型表面凹凸明显的部分,需要通过一定的算法使网格沿模型轮廓做一定的倾斜,使网格倾斜增强部分特征,实现几何重构;

Step3:经过模型重构的逆向工程及优化,需要对采集的纹理信息,特征色彩提取处理,提取带有不同光照、阴影和色彩等信息的贴图,最后合成贴图材质加载到固体模型,通过实时渲染展示傩面具的纹理细节。

1.2 面具的特征增强化处理

在文物保护领域,文物表面的样式、眉眼细节、嘴部特征、面具的凹凸感、材质的粗糙度等信息对分析文物都尤为重要。面具的三维模型数据是四边形的网格模型,首先要识别出需要进行特征增强处理的修补区域,即特征选择。网格方向都是纵横交错的,没有任何曲线这就造成了模型边沿锯齿和图形立体感不平滑,被采集物经过长时间的保存或使用,表面一些细节已经被淡化或者缺失。在模型补洞以及顶点优化方面,本文利用改进的基于泊松方程的孔洞修补特征增强算法[9],通过使用统一的局部平滑算子,根据曲面平均弯曲度对带有显著特征的孔洞修补区域进行识别,采用指定的邻域顶点加权法向量对顶点进行调整,从而加强曲面特征。将曲面重新网格化为各向同性的三角形或四元网格,从而优化输出网格中的边缘方向和顶点位置。生成具有高各向同性的网格,同时自然地将边缘对齐并捕捉到清晰的特征。后期针对模型特征趋势和深度,优化网格方向和曲度,增强面具特征在三维空间中形象塑造更生动。主要算法如下:

图3 傩面具模型处理流程

Step1:遍历检测输入网格模型孔洞。

Step2:对孔洞周边的显著曲度特征相邻顶点进行选择。

Step3:估计邻域范围所有顶点的曲率

(1)

式中:Di为三角网格上任意点;NDi为Di的法向量;Dj为Di的相邻顶点;Cij为曲率。

Step4:计算曲面平均弯曲度,指定曲面的变化程度。

通过顶点曲率计算得到曲面平均弯曲度,与设定阈值比较,若大于阈值,则增强该区域存在显著特征,曲化效果如图4。

图4 网格曲化与特征增强

1.3 模型的储存管理与渲染

为了方便对虚拟场景中的模型管理和读取,本文统一使用当前主流的3D模型数据通用格式OBJ存储模型。模型的储存方式有很多,序列化数据、SQLite数据库等,本系统采用一种压缩包管理办法。Assetbundle是unity3D中的一种压缩包,可以将模型文件与图片音乐等文件写入一个高度压缩的文件,只需要将记录有空间坐标的网格模型与多种贴图信息图片打包到一个包内,通过从Assetbundle类中加载傩面具模型与对应的贴图,相应的通过定义和更换Assetbundle内的资源就可以实现对模型资源的管理,达到特征识别图像不变,虚拟模型可变的效果,大大减轻了系统的体量。

为了检测Hsp90α与恶性肿瘤的相关性,笔者分别检测了恶性肿瘤疾病组(肺癌、白血病、肝癌、乳腺癌)及健康对照组血浆中Hsp90α表达水平。结果显示,恶性肿瘤疾病组血浆Hsp90α水平均显著高于健康对照组(P<0.01)。 此外,本研究还发现,肺癌组血浆Hsp90α水平显著高于肺部良性疾病组和健康对照组(P<0.01)。这些结果表明,Hsp90α水平在恶性肿瘤血浆中明显升高,具有良好的广谱性,可以作为早期诊断恶性肿瘤的通用指标。

真实的三维虚拟模型可以提高增强现实系统的视觉感受和丰富体验乐趣,本文通过使用3d Max建模软件,对于模型纹理信息采用“低模+贴图”制作模式,把模型在三维软件的UV展开,然后输出一个含有UV线条的图片,使用Photoshop软件进行绘制或处理。傩面具MAR系统采用Unity3D渲染引擎在真实场景中绘制三维模型,实现虚实场景的融合显示。将基于物理渲染后带有光照信息环境光、法线、漫反射光照贴图组合的使用实现模型纹理的高清逼真还原。这样对三维模型材质的实时渲染烘焙,大大提高了图像渲染的效果。

2 一种简化的图像匹配跟踪注册方法

跟踪注册技术是增强现实系统的基础,它决定了系统感知定位真实世界中识别图片的能力。对于图片的快速识别以及显示高精度纹理的模型定位问题,本文采用基于计算机视觉的无标识跟踪注册方法,通过C#语言实现图片特征提取匹配与无标识跟中注册,算法的具体流程如下:

Step1:从相机中捕获真实世界的图像作为参照图像;

Step2:根据计算机视觉特征提取和匹配,决定虚拟场景的空间坐标;

Step3:通过位姿估计算法计算3D模型与参照面的位置关系;

Step4:在匹配正确的参考图像区域现实对应的3D模型。

2.1 特征提取与匹配

在计算机视觉领域,能被精确定位的像素点,代表其独特性的像素点就被认为是这幅图像的特征,即特征点。特征点是图像特征匹配的基础。图像特征匹配常用的算法有SURF,SIFT,ORB,AKAZE等等。虽然SURF,SIFT算法广泛应用与目标识别领域,对图像的特征检测,匹配精度较好,但是这两种算法特征描述子复杂,计算量较大,对计算时间有一定影响[10-11],所以不适用本系统对实时性的要求。AKAZE是通过寻找不同尺度归一化后的Hessian局部极大值点来实现特征检测,并在图像域中进行非线性扩散检索过程[12]。FREAK是从人眼识别物体的原理上得到启发提出的[13]。ORB(Oriented FAST and Rotation BRIEF)特征中具有尺度和旋转不变性特点的特征点提取和描述方法,使用的是FAST算法提取的特征点,BRIEF算法计算描述子[14]。FAST(Features from Accelerated Segment Test)特征提取是一种角点检测法,抽取图像中的检测像素周围的像素,如果16个像素与该点像素值不同,则判断其为角点,即为FAET-16。本文对ORB算法进行适应傩面具图像识别的改进,设置FAST角点阈值为8,即FAST-8,特征点数量不超过300,对纹理特征点距离阈值设为0.02,再设定一个阈值75%。当匹配的的描述子的相似度大于75%时即可判断是相同特征。

图5 FAST-16与FAST-8示意图

K-Meas算法是最近邻匹配算法,实现图像特征聚类分析,提取和描述特征点群后,需要匹配特征点到关键点,实现单应性映射,最后根据特征点集进行打分的方式来判定识别的目标。

2.2 相机位姿估计

模型在虚拟空间中成像,首先需要统一模型的几何中心对应的在虚拟空间中进行空间坐标系变换,将模型的本地坐标关联到虚拟世界坐标系。对模型的顶点进行世界坐标变换,将模型中的纹理和顶点转换成对应的像素点,通过网格生成器显示顶点网格模型,着色器对网格模型渲染纹理信息。将虚拟空间中模型坐标系与图像投影转换为相机坐标系的几何变换,相机位姿估计就是实时的计算手机摄像头的姿态,在获取上述的图像与标识图像特征匹配后得到的初始化匹配点集。确定傩面具图像的特征区域后,使用文献[15-17]的方法通过EPnP算法计算摄像头的位姿,EPnP算法得到一个位姿估计,用单应性矩阵变换,从实射影平面到射影平面的可逆变换,这种映射可以用矩阵相乘的方式表示

P=A×W×M。

(2)

式中:P表示二维图像的坐标;A表示相机参数矩阵;W存放相机内部参数;M是三维世界的坐标。W由用于定位观察的物体平面的物理变换和当前摄像机内参数矩阵的投影R,T两部分组成,[R|T]是一个3×3矩阵,世界坐标系变换到相机的坐标系中,对应投影变换关系如

W=[R|T]。

(3)

Unity3D 渲染引擎使用的世界坐标系和摄像机坐标系均为左手坐标系,采用文献[18]的方法实现坐标系转化,不同的是在Android平台上通过Android JDK 实现JAVA和C#方法的互相调用,实现参数矩阵R和T从Andriod到Unity3D的相机位姿参数传递,进而实现虚拟模型从二维到三维的跟踪注册。

3 实验结果分析

以傩面具为例建立傩文化图像识别MAR系统,开发与测试的环境如下:CPU采用Intel(R) Xeon(R)E5、内存容量32.0GB、显卡NVIDIA TITAN Xp,WIN10操作系统,建模软件3Dmax,unity3D开发工具、算法通过C#调用导入Unity 3D中C++动态链接库(DLL)实现。测试用移动端设备为小米5,系统为MIUI8。

MAR系统工作过程如下:初始化移动设备摄像头,获取真实场景的关键帧照片,通过匹配特征点识别特征图像,对移动端位姿估计,确定虚拟模型与真实场景间空间距离,在当前的视窗上叠加生成虚拟模型融合输出。本例采用傩面具中开路将军插图作为被识别图,在复杂环境下对本文MAR系统进行测试,被识别图与摄像机捕捉的图片的特征提取与匹配结果如图6,不同特征检测算法效果对比见表1。不难发现AKAZE与FREAK特征数量大计算速度慢,ORB的特征提取数量较少速度快,改进的ORB算法,计算速度更快,特征点识别效能更高,适用在移动端显示傩面具复杂纹理的特征识别。检测局部特征,算法对于光线、噪声、和微小视角改变的容忍度相当高,有较高的识别相率。且在特征分布上ORB特征的分布也正确区域较多,匹配正确率相对较高,在MAR系统的实时性高效性,改进的ORB特征匹配算法有较好的表现。

表1 不同特征检测算法效果对比

傩面具MAR系统在现实情况下的跟踪和显示应用情况如图7。从图中可以看出,移动端设备在不同角度已一定的距离变化范围内,本MAR系统都能显示纹理清晰,轮廓突出,光影分明的虚拟模型。MAR系统采用改进的ORB特征识别图像,通过特征匹配计算虚拟模型在真实场景中应现实的方向和位置,通过使用EPnP算法与Unity3D自带的相机位姿捕捉方法来确定将虚拟模型投影到真实世界中的位置,实现高精度纹理清晰的傩面具的三维显示。

图6 特征匹配结果

图7 不同位置角度下的显示效果

4 结 语

MAR系统虽然在教育等诸多领域取得了一定的应用成果,但对于民族文化保护,特别是本文中的傩面具数字化展示,还需要解决在模型特征显示、快速数字化建模,高度仿真与渲染等问题。傩面具MAR系统使用改进的ORB算法做特征检测和匹配,并通过EPnP算法与Unity3D自带的坐标系转换方法,进行虚拟模型在真实世界中的相对位置估计,融合现实虚拟模型,最终完成傩面具的虚实融合场景构建。本文中的被识别图均被做成明信片样式,给傩文化爱好者在旅游中更好的便携式交互体验。今后的工作将继续解决傩面具与人脸之间的匹配识别问题,通过识别人脸的表情,来显示不同的文化内涵丰富的面具表情,进一步完善移动端在展示傩面具的其他交互式体验增添新功能。

猜你喜欢

面具顶点纹理
过非等腰锐角三角形顶点和垂心的圆的性质及应用(下)
我们摘下面具吧
基于BM3D的复杂纹理区域图像去噪
酷酷的面具
面具
使用纹理叠加添加艺术画特效
关于顶点染色的一个猜想
TEXTURE ON TEXTURE质地上的纹理
面具中的鱼
消除凹凸纹理有妙招!