张银胜 ,徐文校 ,史艳高 ,单慧琳
(1.无锡学院 电子信息工程学院,江苏 无锡 214105;2.南京信息工程大学 电子与信息工程学院,江苏 南京 210044;3.南京邮电大学 电子与光学工程学院,江苏 南京 210023)
伴随着物联网技术的发展,在万物互联的情景中,信息的获取途径日趋丰富。当人们发现重要的信息时,存在信息共享的需求,其中图像、视频等信息因其直观、信息量大而成为主要的信息载体,在会议室或者教室等应用场景,实现上述信息的快速、实时且高质量共享是主要目标。
信息共享显示[1]采用有线的方式时设备复杂,会出现束缚用户的自由等问题。目前主要采用无线显示技术[2],有微软的Miracast[3]和苹果的AirPlay[4]。目前市面上的无线显示设备一般以智能电视、液晶显示器为显示终端,其体积较大不便移动,在功能上一般将发送端的画面传送给显示端。受其硬件设备、传输环境的限制,在数据传输过程中,会丢失少部分高频信息,导致画面模糊、色彩分布不均匀等情况,同时显示终端无触摸功能,无法在显示终端进行标记、绘图等操作。上述常规技术虽能基本实现信息的无线显示,但存在设备复杂、高质量图像显示延迟时间较长、画面质量差、系统灵活性弱等缺点。本文设计了一种智能显示终端系统,在实现信息共享的基础上保证画面质量的同时还能够拥有信息标注等功能,大大提高了智能显示系统的灵活性,实现了终端的智能化和信息传达的高效率。
分辨率代表了图像的精密度,分辨率越高,其图像显示效果越精细、越细腻。超分辨率重置简而言之就是将低分辨率图像用超分辨率[5]技术转换成高分辨率图像,在数据传输过程中丢失的少部分高频信息可借用超分辨率重建技术恢复。常见的超分辨率重建方法有基于插值的方法[6]、基于重构的方法[7]以及基于深度学习的方法[8]等。
基于插值的方法是依据低分辨率图像的邻近像素点值插入新像素点重构成高分辨率图像,此方法虽计算复杂度低,但在高频部分易产生虚影。基于重构的方法是通过分析高分辨率与低分辨率的像素值联系,建立模型,在重建方面,其效果好于基于插值的方法,不过计算耗时长,在建立模型方面存在一定的困难。
基于深度学习的超分辨率重建方法其本质为通过卷积神经网络等网络来建立低分辨率图像与高分辨率之间的映射关系。将人工智能与计算机视觉相结合,让机器通过不断学习图像高分辨率与低分辨率之间的关系去重构高分辨率图像成为了广大学者的研究方向。
通过卷积神经网络建立高分辨率图像与低分辨率图像之间映射关系是基于深度学习超分辨率重建的常见思路,其步骤大致分为预插值、特征提取、特征映射、重建高分辨率图像四部分,其网络结构如图1 所示。
图1 超分辨率重建网络结构图
预插值是使用某种插值方法将低分辨率图像扩大至所需的目标尺寸,对输入图像进行预插值处理后,插值过程引入的误差会在一定程度上会对重构效果造成一定的影响,同时计算复杂度会大大增加,导致模型的收敛速度慢[9],对视频图像等基本不能做到实时的超分辨重建。针对提高模型的收敛速度,对视频文件做到实时超分辨率重建,丢弃对原始图像的预插值处理操作,引入亚像素卷积层[10],网络结构如图2 所示。
图2 亚像素卷积网络结构图
对输入的低分辨率图像直接经过卷积操作时需保证图像的大小不变,通道数变为γ2(γ2是图像的放大倍数)。对所得到的特征图经过亚像素卷积上采样后得到高分辨率图像。该网络结构只是在模型的末端进行上采样,与直接对输入的原始图片预插值处理相比,在低分辨率空间保留了更多的细节特征。同时,亚像素卷积是将多通道特征图上单像素点排列成像素块,并不是真正的卷积运算,是一种像素重排算法,具有快速、高效等特点。亚像素卷积层的引入大大加快了神经网络模型的收敛速度,对视频的超分辨率重建能够真正做到实时、高效。
Wi-Fi 技术具有无需布线、频段无须许可证、覆盖范围广、传输速率快、安全性高、辐射性低、信号稳定等特点,本设计基于Wi-Fi 技术,实现对信息内容的无线显示。
系统分为发送端和数据接收端,发送端一般是个人电脑(PC)、平板或手机等设备;接收端为显示终端,显示终端由主控制器、Wi-Fi 模块和显示模块三部分组成。发送端将图像或视频等信息传给显示终端,显示终端接收后进行超分辨率重建并显示,实现图像、视频、文档文件的高质量投屏共享,显示终端具有的双向传输、支持触摸等功能,使得在信息共享的基础上,还能同步进行信息标注等操作,真正实现终端的智能化。系统框图如图3 所示。
图3 系统框图
系统主控制器采用博通公司的BCM2837 处理器,内嵌1.2 GHz 主频的ARM Cortex-A53 CPU[11],支持触摸功能的HDMI 显示接口。Wi-Fi 模块采用RAK421 Wi-Fi模块,传输速率大于4 Mb/s,支持多达8 个Socket 的连接,满足一对多显示要求,采用串行外设接口(SPI)[12]通信协议驱动,BCM2837 通过SPI 接口与其连接,发送SPI指令实现配置,使其工作在AP 热点模式,从而构建无线局域网。显示模块利用BCM2837 的HDMI 接口驱动显示器,实现信息的传输及显示。显示模块通过USB 接口与主控制器连接,实现传输触控点坐标等数据。显示终端硬件框图如图4 所示。
图4 显示终端硬件框图
开发环境为Linux 系统及Python 编译环境。系统在发送端运行Python 编写的脚本代码,实现对发送端桌面的实时截取,截取的JPEG 图像等数据通过建立的Socket和UDP/IP 服务器进行传输,UDP 服务器通与显示终端的IP 地址和端口进行连接来发送数据。在接收端运行Python 编译的脚本代码,实现对发送图像等数据的接收和超分辨率重建。
Wi-Fi 模块内部集成TCP/IP[13]协议栈,通过SPI 接口与主控制器连接。主控制器根据SPI 的通信协议通过SPI 接口给Wi-Fi 模块发送SPI 指令去配置Wi-Fi 模块的工作方式。发送端连接Wi-Fi 模块发出的热点信号后开始下一步数据的传输工作。
UDP 服务器实现实时画面数据的获取与传输任务[14],其基于UDP/IP 传输协议实现,与TCP/IP 相比,传输速度更快。工作流程分为获取图像文件、创建Socket 和建立UDP 数据传输等,图像的截取须导入ImageGrab 库,调用函数ImageGrab.grab 来实现,实现语句如下:
bbox=(0,0,1920,1080)
im=ImageGrab.grab(bbox)
要建立Socket,首先须选择Socket 类型以及将连接方式设置为UDP,进行接收端IP 和端口号设置,设置文件路径和文件相关信息后,调用Send()函数来发送数据。
UDP 客户端主要实现数据的接收、解码、超分辨率重建、显示以及记录备注坐标等,UDP 客户端程序设计与服务器发送程序不同,需要绑定本机的IP 地址和端口号。接收端在接收数据后,对JPEG 图像数据解析后[15]再保存。
将解码后的每一帧图像数据输入到训练好的超分辨率重建网络中重建得到高分辨率图像。高质量图像由颜色示意亮度Y 和色度Cr、Cb 组成,主控制器在图像超分辨率重建后输出YCrCb 数据,HDMI 接口支持直接输出YCrCb 数据,其显示驱动包括行场计数器、行场同步信号发生器、显示有效信号发生器、数字视频信号发送器和音频信号发送器。YCrCb 数据在行信号和场信号有效的时候显示。
在显示画面进行标注时,显示模块触控检测芯片,通过USB 接口对主控制器输出触控点的坐标,主控制器在本地记录保存坐标数据,在坐标点进行画点、画线等图形操作,同时实现显示终端对图像等的标注功能。系统原理图如图5 所示。
图5 系统原理图
系统测试分为软硬件测试,其中软件测试在VS2017软件环境下用Python 语言编写发送端和接收端运行的脚本文件。发送端脚本文件实现图片的截取、UDP 服务器的搭建、制定传输格式的功能;接收端脚本文件实现图片数据的接收、解码、超分辨率重建、读取显示以及记录备注坐标的功能。测试各部门功能的实现,主要分为桌面数据的截取调试、建立UDP 服务器调试、UDP 数据发送调试、接收端数据接收调试、接收端图像数据超分辨率重置调试以及显示调试等部分。
硬件测试时,测试前连接Wi-Fi 模块的热点,建立数据传输链路,发送端运行图像或视频文件对应的脚本程序,接收端运行数据接收、高清分辨率重建和显示的脚本程序,主要测试图像分辨率。
考虑到智能显示终端的实际应用,对常见的图像信息(风云2 号气象卫星所拍气象云图和某公司报表)进行智能显示,采取发送端发送图像,接收端接收到发送来的图像后进行直接显示和采用超分辨率重建技术后显示的对比。从图6、图7 看出,直接显示的图像相较于发送前图像变得更为模糊,超分辨率重建后的图像分辨率更高,得到的细节特征更为明显。对比显示时间,超分辨率重建后同步显示延迟时间小于0.001 s,为毫秒级别,证明了本系统实现了图像或视频文件的高质量共享并具有传输速度快、系统稳定等优点。
图6 气象云图
图7 某公司报表
Wi-Fi 技术传输适合用于图像、视频等大数据量文件的传输。在传输过程中受储多因素影响(如显示设备、空气干扰等),会导致图像、视频质量下降,超分辨率重建技术能够将低质量图像、视频转化成高分辨率、高质量图像、视频。本文设计的无线智能投屏系统运用了超分辨率重置技术,能够实现对于图片、视频等的高质量无线投屏显示,且能同步在显示端进行标注等操作。相比于传统的有线传输、2.4G 传输、GPRS 传输等方式,本设计具有设备成本低、信息共享质量高、稳定性好、速度快、触控坐标解析功能等特点,适合应用在室内办公、会议室、课堂和家庭等场景。随着蓝光等视频的出现,基于Wi-Fi 的无线显示传输质量有所下降,后续可在Wi-Fi标准、接收端解码等方面完善。