论文部分内容阅读
随着网络通信技术的快速发展,信息和计算资源的共享变得非常普遍。采用瘦客户计算技术能够使地理位置分散的用户通过计算机网络连接和终端来共享某一应用程序,从而克服了地理位置和瘦客户端性能等带来的不便。虚拟网络计算(Virtual Network Computing,VNC)是其中一种瘦客户计算技术,并在应用程序共享等远程协助类应用中起着重要作用。图像编码方法作为VNC中的核心技术,直接影响数据在网络上传输的实时性和稳定性。JPEG2000是联合图像专家组制订的新一代静止图像压缩标准,JPEG2000能够在较高的压缩比率的情况下得到质量很好的图像,而且拥有渐进式传输特性,因此JPEG2000非常适合作为VNC的图像编码方法。但是JPEG2000的计算复杂度很高,对一些要求实时或近实时图像压缩的应用无法满足要求,这就需要对JPEG2000算法进行快速优化。另一方面,随着个人计算机广泛使用多核CPU处理器,利用多核编程技术进行快速图像编解码,是解决实时性问题的有效方法。本文首先介绍了JPEG2000图像压缩标准的基本原理和基于多核体系结构的OpenMP并行编程标准,并对JPEG2000中可以进行并行处理的算法部分做了具体的分析。本文提出一种对小波变换和EBCOT编码采用OpenMP进行并行加速的实现方案,并利用JPEG2000渐进式传输的特性,提出了一种智能图像码流截断方法,以减少VNC图像的传输时延。最后,本文采用Visual C++对上述方案进行了仿真实验,实验结果表明:与JPEG2000标准在通用CPU上的实现相比,利用OpenMP技术对JPEG2000算法进行并行优化,编码时间平均可以减少32%左右。采用并行优化后的JPEG2000算法和渐进式传输机制,能够有效地降低服务器传输的数据量,提高了VNC服务器的响应速度。