论文部分内容阅读
随着智能手机软硬件性能提升和网络带宽的扩容,基于Android平台的鱼眼监控系统,不仅操作简单,而且实时矫正后的鱼眼视频可显著提升视频的可观察性。传统鱼眼相机的畸变矫正算法,计算复杂度高,不能在Android手机平台上实时处理,由于手机平台的功耗和计算能力限制,实现基于Android平台的实时鱼眼视频监控系统存在巨大挑战。针对以上问题,本文采用手机GPU并行加速策略对解码视频图像进行高效处理,实现1280*1280分辨率鱼眼视频流的实时矫正,矫正视频播放流畅无卡顿。本文主要工作如下:(1)研究了鱼眼相机成像原理,对鱼眼相机进行标定。在Android平台上开展了双经度算法与立方盒映射算法的矫正实验研究,对两种算法的性能进行评估。研究结果表明,与双经度算法相比,立方盒映射算法具有更快的训练速度,同时能保证较高的矫正精度,更适用于鱼眼相机视频流的准确矫正。(2)针对立方盒映射算法在Android平台单帧矫正耗时过高的问题,文中采用直接映射法,根据矫正平面像素点与鱼眼图像坐标的映射关系进行映射插值实现了视频的校准,达到缩减矫正时间的目的。为了验证该方法的有效性,通过对单帧分辨率为1280*1280的鱼眼图像进行矫正实验,并与传统的立方盒映射算法进行对比实验。结果表明基于直接映射的立方盒映射算法能够在保证矫正精度不变的情况下,具有更快的矫正速度,从而验证了该方法的有效性。(3)针对串行的直接映射法耗时较高的问题,本文搭建了基于OpenCL异构运算的编程框架,使用手机板载GPU,并根据实际GPU性能,合理设置线程块大小,对直接映射法中双线性插值部分进行了并行设计。通过对单帧分辨率为1280*1280鱼眼视频的矫正测试,将并行算法性能与仅使用CPU的串行算法进行对比,实验结果表明,基于手机CPU-GPU的并行双线性插值直接映射法具有更快的矫正速度、较低的CPU使用率,可用于鱼眼视频流的实时矫正。在上述研究工作的基础上,开发出了基于Android平台的鱼眼视频流实时矫正软件,可实现RTSP视频流解码和实时矫正并以1280*1280鱼眼图像矫正为实例验证该软件的性能。验证结果表明该鱼眼视频流矫正软件矫正速度达到20帧/秒,具有良好的应用前景和较高的工程应用价值。