手机贤集

工业平台

返回贤集网

我国“数字人”技术打破国外垄断,数字人是什么意思?

  幻桃        2021-08-25 10:45:45

“数字人解剖/临床病例手术规划系统”由三大模块组成,将临床医学、手术规划和数字解剖系统融为一体,通过数字展示形式和触控互动方式,为临床医生、医学规培生和医学生提供完整充实的学习参考资料。


近日,山东省工业和信息化厅公布2021年山东创新工业产品名单,山东数字人科技股份有限公司(以下简称数字人公司)研发的“数字人解剖/临床手术规划系统”榜上有名。


数字人是什么意思?所谓“数字人”,是指将人体的组织形态结构、物理功能、生理功能实现数字化,相当于人体的“活地图”。


“数字人”技术打破国外垄断


科技日报记者了解到,长期以来,广泛应用于教学和临床的数字人体技术被国外垄断。如今,“数字人解剖/临床手术规划系统”改写了历史。


“数字人解剖/临床病例手术规划系统”由“临床数字人解剖系统”“数字化临床病例系统”“医学影像三维重建与手术规划系统”等模块组成,将临床医学、手术规划和数字解剖系统融为一体,通过数字展示形式和触控互动方式,为临床医生、医学规培生和医学生提供完整充实的学习参考资料。


在数字人公司,技术人员展示了中国最先进的高清“数字人”解剖教学系统——临床数字人解剖系统,用手轻轻一划屏幕,就可以得到清晰、逼真、任意角度的人体横断面组织结构,每个人体的小“零件”都可以拆分组合,复杂的神经网络、血脉网络变得非常清晰。


数字人公司营销总监米泽向记者介绍:“这一代的高清‘数字人’项目,我们的采集精度达到了12亿像素。相当于以我们人体的每0.1毫米为一层进行层层采集,即1毫米采集10层人体横断面的数据。对一个身高1.7米的人来说,就需要采集17000层,且每一层数据量都十分庞大。”


实现了现实与虚拟的对比结合


对于“数字人解剖系统”,外界并不陌生。


两年前,在教育部“六卓越一拔尖”计划2.0启动大会上,由山东大学、陆军军医大学和数字人公司联合完成的中国“数字人解剖系统”作为新医科建设成果在大会现场展出。


据中国解剖学会副理事长、山东大学数字人研究院院长刘树伟教授介绍,这套中国“数字人解剖系统”是以真实中国人体断层影像数据为依据研发而成,分为系统解剖学、局部解剖学、断层解剖学、解剖学微课和自主学习5个模块,实现了现实与虚拟的对比结合,可对人体9大系统5000多个解剖结构进行断层和三维观察,极大地方便了教师进行数字化授课和学生课前、课中、课后自主学习,引领了人体解剖学教学改革乃至医学教育信息化的发展方向。


在进行人体解剖结构教学的时候,通过高清“数字人”可以进行虚拟的解剖学习、虚拟手术训练,这样可以更加精准地去培训临床的医生。


据介绍,中国在2001年立项“数字人”项目,中国科学院联合众多国内顶尖医学院校共同进行了技术攻关。数字人公司在2008年加入研发团队,承担中国“数字人”的三维重建,于2015年开发出中国“数字人解剖系统”,打破国外“数字人”技术垄断。产品一经面世,就在全国400多家医学院校和医师培训中心得到应用。


记者了解到,在打破了国外垄断之后,中国“数字人解剖系统”开始走向国际市场,今年将在北美、北欧、中亚、东亚等区域实现布局。


面对未来,数字人公司创始人徐以发表示,将继续按照数据创新加技术创新的双驱动模式,建立一套涉及正常人与各种疾病,涵盖成人、儿童、胚胎,以及包括解剖结构和影响因素的人体大数据库,真正地实现“数字人”的可视化、物理化、生物化和智能化。


揭秘最新数字人制作流程


数字人、虚拟形象的开发逐渐成为了新兴的技术议题,除了用于虚拟真人类形象,数字人的开发技术也能让角色表情更加生动,并且与观众互动。近期,Unity技术团队制作了一个数字人Demo,很多朋友都表示很感兴趣。


在Unity技术开放日-上海站上,Unity技术美术团队和技术团队就为大家介绍了这套基于Unity的数字人生产流程。


大家好,我是Unity TA团队的Michael。这是我们来控制脸部的动画,是用手机苹果ARKit方法捕捉你的表情。


这是另外一个技术,使用的是Face Cap app软件,可以提供更高的精度和细节。我们用FBX文件导件,可以用左边的白模把动作移动到角色上。

我国“数字人”技术打破国外垄断,数字人是什么意思?

我们今天的话题主要分两个主题,一个是渲染,一个是流程。我来分享一下渲染部分的内容。


渲染这里首先要做的第一件事,就是用机器扫描一位同事,这位同事今天也在会场,很感谢她。


这是我们最新的头发系统,已经开发一段时间了,我简单介绍一下这款工具。基本头发制作流程是用Maya X-gen来做头发,这个X-gen主要工具也是现在很多影视团队的选择。之后再导到Unity里,生成tfx文件在Unity里做渲染头发。这套头发工具是在Unity里集成了AMD的头发技术。


在设置这里分好几个组,每个配置文件都可以调细节。这工具共分三个主要区,有一个控制头发生成的,有一个控制动态的,有一个控制头发颜色的,美术师可以设计自己的组,另外又比如发尾这部分的宽阔度是可以动态调的。


这个项目将最简单的头发系统集成到HDRP头发材质里,用头发黑色素物理参数调这个颜色,也可以用Dye Color直接加入一个你想要的任何颜色。这个头发系统工具將来会免费发布给Unity用户。

我国“数字人”技术打破国外垄断,数字人是什么意思?

剩下时间交给我另外一个同事,跟大家讲解虚拟人制作流程的部分。


大家好,我是Unity技术团队的Kevin。非常高兴今天能够在这里和大家分享这个话题,简要介绍一下《数字人的制作流程》,在国内应该有不少公司也在做类似的事。其实在2018年,Unity的《异教徒》项目就已经做过一遍这个流程了,不过当时是在国外做的,所以有很多供应商很难在国内有能力输出。


我们今天主要目的是把生产流程给大家理清楚,然后中间有哪些环节,如果会产生工作量、会产生成本,大家可以在哪些地方去迭代这些东西。


这次我们是和上海科技大学一起合作的,比如刚刚展示的穹顶光场。本次合作中,上科大会给我们提供设备、场地和技术支持,我们帮助他们把扫描供应商应该提供什么规格的东西理清楚,最后就得到了刚才展示的效果。


整个过程说起来很简单,首先要根据FaceCode标准扫描极限表情,由我们的模特在光场设备里做出那些表情,并被拍摄下来。剩下的事就都是关于模型清理的,目前这部分我们也在研究一些AI算法来做。后面会讲模型清理过程中遇到的一些问题。


当我们清理出模型之后开始做BlendShap(以下简称BS)拆分,这个拆分各家有各家的规则。FACS在理论上人有60个极限表情,从解剖学上讲,这60个表情可以非线性地组合出任意表情。但是我们做表情对话时,没办法只用60个就做出所需的所有表情。因此,一定有个拆BS的过程。拆多少的话,其实跟你想追求的精度相关,也跟成本相关。我们这版目前扫了45个有代表性的极限表情,拆分出了300多个BS。


修完这45个表情之后,用一些算法去拆BS,拆完之后再去修一些细节。这里的细节是我们在拆的时候,拆出来的依据是BS还能线性组合回极限表情,有些算法有可能会拆重复BS和BS不是完全叠加而回归到极限表情,它可能有些加和减的关系。拆成这样时就可能需要艺术家去修。比如我有一个嘴唇往下的动作是几个BS的组合,但是有一个BS是凹进去的,那么这个凹进去的就不行。因为我们最后这些极限表情和别的表情组合的时候就会出问题。出现这种问题的时候,就需要艺术家去修,因此自动拆的算法还需要演进。


还有我们的贴图。表情的话我们可以把它简单地划分为表情和微表情。在表情上结构性的那种变化我们做在模型上,有些因为结构性变化而产生的挤压的纹理性变化的话,我们把它做在贴图上。这个贴图是Winkle Map,它是一个Normal的表情贴图,在不同表情间有切换,一个头上会有五六张Winkle Map。


后面就是Rigging的事儿了。


其实我们扫描之后的数据是要把眉毛和一些眼睫毛从Map上去掉的,因为我们在做重拓扑和修模型时,这些都是噪声,是不需要的;但这些东西又在渲染时又会用到。因此我们先删除,然后后面再把这些部分给加回去。像我们这一次的做法,眉毛是用插片的方式来做的。


流程上还有修贴图,除了Winkle Map,还有一个Blood Flow Map(血流图),当你脸皱起来后,因为挤压而把某个地方的血流图给改变,那么这个地方的颜色会变深,这个表现在微表情中,也算贴图里面。所以关于微表情的贴图有两套,Winkle和Blood Flow,这是一个比较常规的操作。


这里是我们发现可以继续迭代的地方,修模型的部分,如果有足够的美术资源,其实是不用考虑算法的事。


修完模型,拆完BS之后就会做Rigiging和模型Capture,因为我们最后想要的是快速生产高质量的表情动画。在Rigging这边,我们一定会遇到一些情况,比如Retargeting,这是因为不是模特去驱动他自己,而很可能是别人去驱动他,所以一定会有Retargeting的事;还有就是刚才我们讲的Secondary Geometry的事,以及Dynamic Winkle和Blood Flow,但是现在我们还没做到Dynamic。目前这个版本是在Shader里面实现,我们需要哪些贴图,然后贴图在对应表情的时候也是由艺术家来处理的,期待后面会用一些AI的方式来实现。


在模型Capture这边,我们目前还是用两个方案,就像刚刚Unity TA团队的同事提到的,我们用一些第三方提供的高精度结果去驱动模型。在这个项目中,我们通过ARKit或者谷歌开源的AR core里face那个model来做的特征提取,然后去驱动模型。但是我们模型capture这边也有可以迭代的地方,如果我们以Marker Based来驱动的话,后期就可能会需要Fix一些Marker Tracking有问题的地方。如果我们自己做或者买第三方的Motion Capture设备我们也可以用Gopro这种相机,然后自己3D打印一些,头盔的话我们就可以做更高质量的模型capture。


这个数字人生态流程有几个问题,一个是真人扫描数据的处理,就是模型的重建,那就会牵扯到算法的事;一些扫描得不太好的地方要修;还有就是贴图的重建。刚才我们讲我们会有两张贴图Winkle Map和Blood Flow Map,其实我们还有一张提供颜色的图,Color Map。现在的设备都有偏正光,所以它会给你偏正的结果,但是你实际上也要去做类似Delighting的事,你才能够得到一个没有光照的结果。


还有就是faceCode这个扫描数据,现在这种做真人的应该都是这样做的,就是模特去表演faceCode里的表情。做完之后就是BlendShap、Winkle Map、Blood Flow Map的制作和Face Rigiging。Face Rigiging也没有一致的标准,基本上是艺术家的Setup,他觉得是一个合理的、容易做动画的搭建就可以了。如果没有高质量的模型capture前提下,做动画很多时候还是艺术家手K出来的,所以Face Rigiging非常重要,它是一套高效的、细节丰富的、人能理解的Face Rigiging。


表情驱动会有一套控制器,人脸上有很多点,这里是参考Unity国外团队做《异教徒》项目的那一套来做的。传统做动画的方式就是刚才讲的艺术家K帧的方式,还有面部驱动的方式,做一些AI的算法来优化流程,这就是我们认为的全量的流程要做的事。


这里是我们扫描得到的东西,就是图是那样的一些模型。那会遇到哪些问题呢?就是说我们虽然也是非常高精度的摄像机,基本摄像机有三套,一个是颜色的,然后光学的,然后高速摄像机,这三套,它可以提供人脸重建的非常高面素的mesh,但是拿到的Geometry也会有这样的问题,就比如像我们拿到的头是左边那样子的,但是他的眼睛基本就坏掉了,我们需要艺术家把它给修出来。还有耳朵也有可能是坏掉的,总之,你会拿到很多坏掉的地方,这就是你修模型时候要处理的事。

我国“数字人”技术打破国外垄断,数字人是什么意思?

修完之后,你需要重拓扑到一个合适的Layout,还有就是刚才我们讲的扫描出来的也会提供Normal的贴图,贴图里有什么东西呢?这里其实也有一个值得迭代的点,就是这个贴图的使用率,实际上现在有很多做影视的公司,他们其实都在要求高的贴图,比如16K的贴图。但就是因为精度不够,实际上我们贴图的layout是不太好的,我们在这个项目的后期已经和合作伙伴一起搞定了这件事,我们的贴图会比这个图显示得更高精度一些。


这里主要展示的是在这个已经是很好的设备下面难免会有坏掉的地方,我们要去区分这个Normal里面哪些是我们想要的细节,哪些是坏掉的地方,目前还是靠艺术家来区分的,但是我们期待后面会有些算法来做这件事。所以我们也Defend了一下我们期待的好Winkle Map的贴图会是什么样的。后面会有一些AI的解法来做这件事。


像制作这个表情,要做这几个步骤:第一步,是我们先Remove掉我们不想要的那些Geometry,这里包含我们刚才讲的眉毛、眼睫毛这些,还有一些噪点,因为它扫出来的那个面素是一个巨大的开销,所以你会清理掉它。


在清理掉它之后,你要重拓扑,现在大家重拓扑会用3D软件来做,我们没有什么特别的,也用这个来做的。


这里为什么加Subdivide base mesh呢?是因为你清理之后有一些地方需要增加细节,比如眼皮那个地方,如果是双眼皮,一定是把它给叠起来的,因为你将来做动画时一定会有闭眼的时候。所以它那个地方Mesh的段数要加多一些,然后去掉一些噪声和细节处理。

来源:科技日报记者 王延斌 Unity官方平台

注:文章内的所有配图皆为网络转载图片,侵权即删!

免责声明

我来说几句

不吐不快,我来说两句
最新评论

还没有人评论哦,抢沙发吧~

为您推荐