一种显微镜视频无线示教装置的设计

2019-01-17 02:38:54王琳雷长海杨勇骥王晔
中国医疗设备 2018年12期
关键词:服务端操作者浏览器

王琳,雷长海,杨勇骥,王晔

1. 解放军第85医院 眼科,上海 200052;2. 第二军医大学 基础部生物物理学教研室,上海 200433;3. 华东师范大学 数据科学与工程学院,上海 200062

引言

光学显微镜是利用光学原理,把人眼所不能分辨的微小物体放大成像,以供人们提取微细结构信息的光学仪器,被广泛应用于工农业生产及科学研究,在生物学和医学工作中也经常使用。随着医学手术的精细化发展,显微镜在各类手术中得到越来越广泛的应用,尤其适用于微细血管和神经的缝合、眼科各类手术等需要借助于显微放大进行的精细手术或检查[1]。然而由于手术显微镜设备限制,大部分只提供一路助手镜供助手观摩显微镜下视野,不能供多人同时观看,因此也无法为多人提供演示示教,影响了此类精密手术技术的学习和推广效率。

采用分光模式架设多个显微目镜可以供多名用户同时观察相同的显微视野,德国徕卡公司的Leica Multiviews系统就提供了类似产品,可供最多20名用户同时使用,观察同一标本,每个观察点具有相同的清晰细节和颜色。然而此类系统价格昂贵,且设备硬件连接方式和人员使用方式决定了系统需要比较大型的场地空间,不适合手术显微镜的使用场景。

通过在显微镜观察筒和镜身上加装电子摄像系统,是目前显微示教的另一类主要模式,多个用户可以通过大屏幕的方式共同观察电子摄像的显微视野,然而这类大屏系统也涉及到场地限制和经费问题,因此最新的显微示教系统大都采用了多个智能终端无线接入的方法[1]。考虑到高清图像传输所需要的高带宽,大部分系统采用了Wi-Fi的无线接入方式[2]。比如徕卡显微系统发布最新无线教学显微相机,配备有无线信号发射装置的全新Leica ICC 50 W宽场显微摄像头及EZ 4 W体视显微镜,使用一体化高清摄像头系统共享、摄取和保存图像,已在生命科学研究中得到应用。这两款显微镜系统配合专用APP后都能直接将高清图像传输至学生的移动设备,其自带的Wi-Fi功能可供5台移动设备同时接入,共享实时图像。然而目前已有的此类显微示教系统的缺点主要有:① 多为专用型仪器服务,价格不菲,移动性不强且不能适用于多种显微镜;② 在示教使用时只能观察显微镜下图像,不能同时观察显微镜操作者(或手术操作者)的视频图像;③ 只能做单向的视频观察,无法实现老师和学生双向交流,无法实现师生在线标注、在线讨论等需求。

在总结了现有系统优缺点的基础上,本文研究和开发一种低成本、小型的适用于各类显微镜的无线视频示教装置,用于实现多人同时多屏观看显微镜视野和显微镜操作者视频,并提供师生同时在线标注和在线讨论的功能。

1 材料与方法

1.1 系统架构

系统硬件主要包含3个部分:① 控制主机部分,一台迷你尺寸的控制主机,集成可充电电池,集成无线网卡,集成一个内置鱼眼广角摄像头(用于摄录显微镜操作者视频);② 电子目镜部分,一个USB高清摄像头插入控制主机的USB接口,多个尺寸的套管用于配合摄像头插入不同型号的显微镜;③ 客户端部分,包括一台教师主机用于管理控制(可推送教师机桌面到控制主机,供学生同屏观看),多台学生终端同时接入访问。

系统软件主要包含4个模块:① 教师管理端模块,以HTML5的Web页面形式提供迷你主机的实时管理功能,多用户实时交流管理以及教学资源管理功能;② 多用户实时在线交流模块,可共同收看流媒体直播,以共享电子白板和弹幕的形式提供给多个用户和教师一同交流;③ 轻量级WebServer,作为教师管理和多用户交流的中间件模块,负责后端应用服务与Web前端的通信服务;④ 应用服务端模块,负责提供系统应用服务,包括视频服务、文件服务和交互服务。系统架构,见图1。

1.2 系统实现方法

系统需要提供给多个用户采用不同智能终端同时接入访问,因此必须考虑系统的跨平台特性和整体性能。经过综合评估,我们确定采用如下的软件架构。

(1)教师管理端模块和多用户交流模块,基于HTML5前端实现。HTML5是HTML最新的修订版本[3],2014年10月由万维网联盟(W3C)完成标准制定。它能够减少网页浏览器对于插件的需求,并且提供更多能有效加强网络应用的标准集。支持HTML5的浏览器包括Firefox(火狐浏览器)、IE9及其更高版本、Chrome(谷歌浏览器)、Safari、Opera等;还有国内的360浏览器、搜狗浏览器、QQ浏览器、猎豹浏览器等,移动端(手机或Pad)浏览器同样具备支持HTML5的能力。因此选用HTML5进行前端的开发有利于我们实现系统的跨平台特性。在HTML5页面上系统以HTML5 Canvas[4]实时绘制的方式提供视频显示和公共白板功能,通过定义Canvas(画布)的 MouseDown、MouseMove和 MouseUp以及 TouchStart、TouchMove和TouchEnd事件处理函数,这样就可以使用鼠标或者触摸屏在Canvas容器上直接绘图。在浏览器访问HTML5的Javascript脚本中使用WebSocket[5]可与后端服务和其他正在访问该页面的浏览器直接通信。

图1 系统架构

(2)轻量级WebServer,基于Nginx实现。迷你控制主机的计算能力有限,因此我们采用轻量级的WebServer——Nginx来作为HTML5的服务端,Nginx还添加了rtmp模块用于解析视频[6-7],在HTML5前端我们就可以使用开源的FlowPlayer作为视频的播放器和直播的接收器。

(3)应用服务端模块,基于Node.js实现。应用服务端我们采用Node.js[8]搭建,Node.js是一个基于Chrome V8引擎的JavaScript运行时平台[9],用于方便地搭建响应速度快、易于扩展的网络应用服务。Node.js使用事件驱动和非阻塞I/O模型而得以轻量和高效,非常适合在分布式设备上运行数据密集型的实时应用。我们使用基于Node.js的Socket.IO库实现WebSocket服务端[10],主要负责三个部分的功能:① 实现高效的视频服务端,采用WebSocket将获取到的三路ffmpeg[11]视频(包括显微镜视频、操作者视频以及教师机桌面)流转码,推送给Web前端,以Canvas实时绘制的方式显示;② 实现文件上传和管理服务端,Web页面上采用AJAX的异步方式传输文件[12],不影响Web页面上视频的正常显示,后端采用Node.js架设文件服务器;③ 实现交互服务端,在HTML5前端的Canvas上绘图只能显示在本地的浏览器上,要在多个浏览器上共同标注和绘图就需要有服务器接收所有Canvas的绘图指令,并转发到所有客户端上,绘图服务器同样采用Node.js实现,用类似的方式该服务器还实现了多个浏览器发送弹幕的功能。

2 结果

按照前述系统架构,我们实现了该无线视频示教装置,以迷你控制主机为核心。系统实现的硬件连接,见图2。

图2 系统硬件连接示意图

迷你尺寸控制主机的主板部分使用Element 14的树莓派3代实现[13-14],内置一个1.2 GHz 64位四核ARMv8 CPU和802.11bgn无线网卡,以32G TF卡作为存储,有4个USB2.0接口以及1个以太网接口,只有一张信用卡大小面积,体积是一个烟盒大小。控制主机中集成一个5 V/2 A的可充电移动电源为主机供电,同时集成树莓派专用800万像素摄像头模块,用于摄录显微镜操作者的高清操作视频。控制主机使用USB接口连接专用的500万像素显微镜电子目镜作为另一路摄像头,采用多种尺寸的套管可以插入多种显微镜目镜摄录高清显微视野的视频。控制主机同时以无线网卡硬件结合hostapd软件模块[15]提供AP服务,实现802.11bgn接入和WPA-PSK认证,以dnsmasq软件模块[16]实现客户端地址自动分配,多台智能终端(笔记本电脑、手机或PAD设备,其一作为管理端,其余作为显示和互动终端)可同时Wi-Fi接入控制主机,在多个终端打开浏览器访问控制主机以HTML5的形式同时显示显微镜动态图像(视频)和操作者操作视频。

控制主机采用Raspbian操作系统,视频采集单元以ffmpeg软件采集两路视频并推流到视频分发单元;视频分发单元以Node.js架设迷你视频服务器接收视频推流,以Web Socket方式分发给客户端;互动控制单元采用轻量级的Web服务器Nginx,以HTML5的形式负责接受指令拍摄、存储动态视频和静态画面,存储在控制主机的TF卡内,同时服务多个终端使用弹幕和共享白板方式进行交流沟通,控制主机中的后台应用服务采用Node.js实现。

3 讨论

本文研制了一套用于显微镜的无线视频示教装置,文中详细介绍了系统的组成、系统架构、软件设计和结构功能。研究创新点主要有以下三点:① 系统采用了基于树莓派和高清USB摄像头的硬件,集成了无线热点和可移动电池供电,为系统提供了低成本和可移动的特性;② 在树莓派Raspbian系统中以Nginx提供Web服务,基于Node.js和Canvas实现了实时HTML5视频传输方案,系统视频传输的时延在0.5 s左右;③ 基于WebSocket实现了多用户在同一界面中共享白板共同标注和实时弹幕的功能,为系统提供了实时的交互特性。

与现有的显微镜示教系统相比,该系统最大的优势在于小型化、低成本、高性能、可无线灵活部署和强大的交互功能。实际系统使用的展示,见图3。

图3 系统使用展示

在后续的研究中将探讨系统实现音视频的一体化直播功能,在系统的功能扩展中考虑在控制主机上增加一个带麦克风的USB摄像头,以rtmp[17](供PC端访问)和hls[18-19](供移动端访问)结合的方式提供一路教师的音视频直播信号,丰富课堂展示效果。此外将研究在系统中以硬件方式提高无线AP性能,提高视频数据传输速度,同时提高整体系统的无线承载能力以供更多用户的同时Wi-Fi接入使用。

猜你喜欢
服务端操作者浏览器
反浏览器指纹追踪
电子制作(2019年10期)2019-06-17 11:45:14
操作者框架在车辆传动系旋转耐久试验中的研究与应用
云存储中基于相似性的客户-服务端双端数据去重方法
新时期《移动Web服务端开发》课程教学改革的研究
消费导刊(2018年8期)2018-05-25 13:19:48
在Windows Server 2008上创建应用
操作者因素对Lenstar测量眼轴长度可重复性的影响
环球浏览器
环境与生活(2016年6期)2016-02-27 13:46:37
再见,那些年我们嘲笑过的IE浏览器
英语学习(2015年6期)2016-01-30 00:37:23
双腔管插入操作者手卫生依从性护理干预效果观察
哈尔滨医药(2015年4期)2015-12-01 03:58:01
第二届亚太区操作者峰会