李 然, 娄 岩
(1.大连海洋大学信息工程学院,辽宁 大连 116023;2.中国医科大学智能医学学院,沈阳 110122)
眼眶部解剖复杂,多数组织位于眶内,无法直观学习,现实教学中在校学生及规培医生很难在手术过程中全面掌握眼眶及眶内解剖结构,因此无法达到教学和培训目的。
目前国内外已有一些虚拟仿真系统网络化的应用方案,虽然实现了基于B/S的应用模式,但在使用过程中的数据还是下载到本地,其中的计算和渲染等依然需要使用本地的硬件资源,并没有解决硬件终端的限制瓶颈,同时学习人数受限,只适合基于高端PC平台支持的一对一学习或实训,只支持仿真内容的可视化实现,而不支持实时交互操作,仿真度低,实操效果差,经常出现卡顿现象。另外,基于某一种引擎开发的特性导致非基于此系统的程序无法复用。因此,此类方案并没有突破软硬件兼容性的瓶颈。
为突破上述这些局限性,将“5G云+VR”技术应用到眼眶解剖教学及手术培训中,构建虚拟的眼眶、眶内容物模型,将相关的发病原因及手术方案等教学重点和难点融入虚拟教学和临床培训中,并以全新的视角将仿真系统VR版部署到局域网和5G云上。给出虚拟仿真教学系统网络化的解决方案,为虚拟仿真教学系统网络化开辟新的思路和技术支持。构建的虚拟仿真教学系统的总体架构,如图1所示[1]。
图1 基于局域网和5G云的虚拟仿真平台的总体架构
通过反复的虚拟操作,学习者可以全面、深刻地认识和理解眼眶组织解剖结构,获得更多练习机会和接近实际的临床体验,达到传统教学中无法达到的教学效果;突破目前虚拟仿真技术对同时受训人数和时空上的限制,实现了多终端供多用户无时空限制同时使用,无需关心所需的软硬件设备和终端性能,达到共享学习和实训的目的,将基于VR技术的优质资源,真正用于教育培训中。
眼眶解剖虚拟教学及手术培训系统分成3大模块:课堂学习、交互学习和智能考评(见图2)。系统设置不同的教学环节,涵盖模拟演示、自行学习、虚拟操作及智能考评等。学生通过反复的虚拟训练,培养精准操作的临床思维,达到现实教学中无法达到的教学效果[2]。
图2 眼眶解剖教学及手术培训系统结构框图
系统实现了VR版、PC版和Web版,VR版可通过VR头盔和手柄进行单人一对一操作的个性学习和实训,PC版可以通过单人或小组演示操作,同时通过局域网进行大班教学可视化观摩学习,Web端可以通过浏览器线上学习。
采集的CT数据导入3DSlicer开源的医学图像处理软件中,实现医学数字成像和通信(Digital Imaging and Communication in Medicine)信息的导出、病人护理系统(patient care system)诊断信息的录入、标注信息的录入、自动生成XML格式的标注文件以及标注文件的解析。将骨骼结构元素应用在图像上,使用决策树方法迭代其他组织的表面,找到所有可删除的表面点,直到仅保留骨骼为止,该方法也可以扩展到更高维度上[3]。标本采集过程如图3所示。
图3 标本采集过程
通过CT数据提取出眶骨的三维数据,在Maya中细化模型,再导入Zbrush软件中,进行模型等级细分及细节制作,再使用UVLayout软件进行低模展现,将高模与低模通过xNormal软件进行模型匹配和法线的烘培工作,通过Maya烘培出颜色位置贴图,再通过Photoshop和Substance Painter软件导入模型、法线和颜色位置贴图进行整体贴图的制作,最后放入UE4引擎中测试仿真度效果[4],如图4所示。
图4 眼球模型
Web版模型可视化渲染在PC版模型渲染效果的基础上实现,通过Stand笔刷增加模型表面面数,将组织器官上凹凸结构精确地雕刻出来,雕刻级别为Div-6,在子工具级别中将面数比较多的模型进行分离处理,按照准确的眼球外形结构,使用收缩笔触将眼球外形结构进行相应的效果处理[5]。
Web版高精度纹理制作,通过Geometry选择OBJ文件存放,将角膜、巩膜等模型转化成Abc格式,对细分或多边形网格的每个面用一个单独的纹理。通过WebGL的使用,可以利用用户设备提供的硬件进行渲染加速。
眼球内的屈光组织,多以柔性体存在,为了更加逼真地呈现柔性体的实时视觉反馈与碰撞反馈,本研究采用了包围球碰撞算法,提出了一种基于几何意义的高斯分布变形模型,快速完成变形过程。
由于物体表面某一点受力发生变形时,距离受力点越远变形量越小,而高斯函数的分布符合这一规律,因此利用高斯函数计算物体表面变形能产生较好的效果。在计算过程中,遍历模型表面的所有顶点,根据顶点位置到受力点的距离,按照变形公式
计算出法向的变形量,然后重新绘制图形。使用者通过操作带有传感器的设备触碰、牵拉模拟真实操作,同时在图形界面上逼真模拟出手术过程中眼球组织牵拉、变形、流血等现象[6-7]。
3.5.1 GPU优化策略
通过研究GPU编程优化策略,对CPU与GPU实施优势互补达到资源平衡利用。提出将交互数据视频流从服务器向终端呈现的方案,提升GPU服务器中部署虚拟仿真程序的性能以及GPU计算资源的使用效率。为了发挥GPU内部架构和执行逻辑的优势,完成其强大并行处理能力的底层实现,研究从内部结构、硬件接口和软件接口3个维度对GPU编程进行优化。
通过对软件底层代码和算法的优化,使用Hook方式管理系统API,通过重新分配显卡时间片解决GPU分时同步的计算,使得单一显卡扩展成供多用户同时使用的数个虚拟显卡,实现GPU虚拟化。为最大限度地共享GPU资源,在保持基本隔离机制的前提下使用进程隔离技术,并在进程级别共享对于图形应用来说更为稀缺的GPU资源。
渲染过程通过GPU循环完成,每个循环恰好渲染一帧,首先对图形渲染进行初始化,再对每个迭代过程执行下列任务:CPU进行计算,为GPU计算准备数据;数据上传到GPU缓冲区;GPU基于缓冲区中的数据执行计算;计算结果反馈到主存,准备下一个循环[8]。
3.5.2 视频流实时传输技术
通过建立层次化的并行性对应关系模型,利用GPU高并行性特点去除冗余信息,降低视频数据量的传输,提高系统实时性和传输速率。将GPU渲染的画面实时硬编码为H.265格式,在保持画质清晰的前提下将传输文件的数据量大幅压缩。由于实时H.265解码器和模块已集成到HTML5浏览器内部,编码后的文件大小仅为原始大小的1%~10%,不仅降低了服务器和终端用户之间传输的难度,也使实时性得到保证。
采用基于调速器直接控制的视频编码控制方法。在该码率控制算法中,目标发送速率并不直接输入编码器,而是输入到调速控制器,既能够基于网络数据包缓存当前状态,实时地控制图像采集、编码的相关参数,又能够根据预测出来的帧大小实现自适应的GOP控制。该方法与传统方法的不同之处在于需要根据网络数据包缓存的状态实时地进行控制,把网络传输和视频编码紧紧地耦合在了一起。
根据GPU具有多层次并行处理功能,为帧内编码算法的实时实现提供硬件支持,降低编码过程复杂度,并通过对帧内编码原理的研究,建立层次化的并行性对应关系模型,采用OpenCL编程实现画面细节优化,通过估计分析影响视频质量的码率,实现对GPU编程的并行优化[9]。
3.5.3 解决延迟技术
VR内容网络化,面临一个突出的问题就是延迟高。因为它对仿真交互的实时性有直接影响。VR内容网络化的实时性能让体验者接受,除依靠硬件和网络本身性能外,还必须提高GPU的3D渲染效率,减小因渲染占而用的GPU资源。研究通过对引擎UE4底层C++代码编程以及针对GPU服务器显卡Direct12 3D接口的优化,提高GPU的3D渲染效率和减少因渲染占用的GPU资源;通过优化CPU编程,缩短实时视频音频基于H.265的编码时间,减少运算所需的软硬件资源;独立处理各种用户输入的信号,同时动态调配GPU渲染程序和实时进行视频编码输出,即先将用户交互信息放置于缓冲区内,统一调配GPU渲染程序,单独响应多个用户的并发交互请求,进一步降低操作带来的延迟,提升系统的实时性。经反复实验表明该方案从用户按下操作按钮到看到画面控制在30 ms以下,并保持实时交互流畅,画面支持720P/1 080P高清晰标准,单台服务器可以同时支持2~50路的并发访问数量。
在网络平台体验交互实训,输入操作虚拟化是关键。研究通过延迟处理和GPU编程优化,实现对现有输入方式触摸屏,键盘,鼠标和游戏手柄等全方位适配。在HTML页面运行仿真软件,需要适配C++程序所编写的GPU3D染程序,为其具有更好的开源性,使用HTML所支持的语言JavaScript模拟键盘,鼠标,以及手柄的API接口程序。支持手柄的API接口种类繁多,如DirectInput、XInput、RawInput,可采取仿真程序直接读取USB设备的方法实现。
基于VR的虚拟仿真教学内容,作为教育资源部署在局域网和互联网上的意义是:无论局域网络,还是5G互联网或Internet终端的学习者均可通过触摸屏、键盘或鼠标等设备,无时空限制地进行模拟操作,达到共享学习和实训的目的,无需关心所需的软硬件设备和终端性能好坏等问题。最终实现多人同时学习和培训,彻底改变一对一教学实训的现状。
该平台以眼眶解剖为主线,借助文字、三维模型、音频、视频等形式进行阐述和展现,不仅能够全面而清晰地展示眼眶的所有解剖结构,并通过对各个解剖结构的分别显示,使学生充分理解、掌握解剖结构之间的毗邻和空间位置关系。而且软件结合临床病例,使学生对眼眶的检查、临床手术治疗等有全面的了解[10-11]。
使用者通过课堂学习模块(见图5)可以掌握教材中眼眶的总论内容,点击眼眶及眶内组织结构,会出现组织名称及功能,病理状态组织变化及功能改变,术前准备及术中操作的要点和注意事项,学生回答正确后会出现进一步手术操作要点、难点等关键知识点。
图5 课堂学习模块
交互学习模块(见图6)适用于对临床实习医生进行复杂环境下的模拟手术训练,包括精准定位、设计多种手术方案、复杂手术过程的规划、演练与预测等。
图6 交互学习模块
智能考评模块(见图7)根据题目的知识点、难度、教学要求、分数等指标智能组卷;提供多种考试形式,帮助学生掌握正确的技能操作、完整流程;根据考试情况,进行全面、多维度的统计分析,提供纠错反馈信息,让学生知错、改错,自主提升操作技能;同时,学生的考评数据也会形成报告,发送给老师,帮助老师实时了解学生的技能掌握情况,实现精准指导,打通课前、课堂、课后训练评价各环节[12-13]。
图7 智能考评模块
系统首先面向开展临床医学教育和临床技能培训的医学院校(医院)开放,共享虚拟仿真教学资源,并服务于各级临床医生的毕业后专科教育;可面向社会开放并持续提供在线服务,为各种科普活动、眼科学术交流等活动提供丰富的仿真演示案例支持[14-15]。
虚拟现实正在不断改变着人们定义用户体验(UX)的方式,但原则仍然是体验必须以人为中心。本研究在“可信、可交互、可探索、沉浸式”4个方面的用户体验上,做了深入探索。
介绍了基于“5G云+VR”技术的眼眶解刨教学及手术培训系统的构建方法和关键技术,将5G云、VR等技术引入到虚拟实践教学,构建了集交互学习、漫游、考评一体化的实训平台,展示了眼眶解剖教学及手术的虚拟场景,通过虚拟仿真实训,提高了学习兴趣和效果,将基于VR技术的优质资源,真正用于教育培训中,拓展虚拟仿真系统的应用范围和受益人,具有良好的社会效益和经济效益。