论文部分内容阅读
基于动态二维码的屏幕摄像头通信是一种以动态二维码为信息载体,以可见光为媒介的单向近距离通信方式。这种通信方式较目前的近距离通信方式相比有诸多优点:不需要特定的硬件,仅依赖无处不在的显示屏和移动设备广泛具备的摄像头;不需要特定的接口或协议,可以作为一个普通的手机APP来实现传输;不需要提前的配对,随时开始、随用随传;具有高度的安全性,端到端直线传输、信号不发散。基于动态二维码的屏幕摄像头通信技术具有广泛的应用场景和极大的发展潜力。本文从目前的基于动态二维码的屏幕摄像头通信遇到的“如何提升数据传输速率”和“如何优化动态二维码的识别过程”这两个问题出发,深入分析了解决这两个问题所面临的挑战,设计了“基于模式的动态二维码屏幕摄像头通信系统”和“基于机器学习的动态二维码识别算法”这两种应对方法,并对其进行实验分析验证了其有效性。1.针对“如何提升数据传输速率”这一问题,本文分析了要解决这一问题需要面对的扩充二维码容量、提高显示帧速率和降低重传开销这三个挑战。针对这些挑战,本文设计了“基于模式的动态二维码屏幕摄像头通信系统”(ShiftCode)来应对。ShiftCode是一个包括发送方和接收方的完整的基于动态二维码的屏幕摄像头通信系统,ShiftCode提出了一种基于模式的动态二维码设计,来增大二维码容量;对二维码进行了针对帧重叠问题的专门设计,提出了一套高帧速率下重叠帧识别的解决方案,来增大显示帧速率;提出帧内纠错和帧间冗余的两层可靠性技术,来降低重传的开销。2.针对“如何优化动态二维码的识别过程”这一问题,本文分析了要解决这一问题需要面对的降低颜色识别算法复杂度并提高其通用性、增强对环境变化的适应性和识别颜色重叠小方块的颜色这三个挑战。针对这些挑战,本文设计了“基于机器学习的动态二维码识别算法”(MegaLight)来应对。MegaLight是一个利用机器学习来识别动态二维码的通用算法,可以应用到现有的基于动态二维码的屏幕摄像头通信系统之上,MegaLight提出了一种基于机器学习的通用小方块颜色识别算法,来降低颜色识别算法的复杂度并提升其通用性,机器学习算法还可以根据不同环境自动调整其模型。此外,MegaLight综合提取和量化了参考颜色、相邻小方块颜色、果冻效应程度等特征并用于训练机器学习模型,可以适应环境光线的变化并识别重叠小方块的颜色,获得了较好的二维码识别效果。本文对ShiftCode在不同实验参数环境下进行了性能分析,实验结果表明ShiftCode可以显著提升基于动态二维码的屏幕摄像头通信的数据传输速率。同时将MegaLight算法应用于现有的黑白和彩色二维码屏幕摄像头通信系统中,实验分析结果表明MegaLight可以大幅度提升现有基于动态二维码的屏幕摄像头通信系统的性能。