论文部分内容阅读
图像是人类传播信息和相互通信的重要载体,随着社会和科技的进步,人们对图像的质量要求越来越高,尤其在航空航天、视频安防、远程医疗、高清电视等领域,对图像的传输与存储要求更高。因此在提高带宽技术的同时,对图像压缩的相关研究也未曾止步。尤其是JPEG系列的发展,从JPEG标准到JPEG2000标准都倾注着相关科研工作者的大量心血。2009年,JPEG XR标准正式发布,由于其重叠双正交变换(LBT)算法的复杂度与JPEG标准的离散余弦变换(DCT)相当,而压缩图像还原后的质量却能与采用较为复杂的离散小波变换(DWT)算法的JPEG2000标准相媲美,因此得到了广泛的研究,具有很好地应用前景。 JPEG XR的LBT具有4个子变换,2个图像滤波变换(POT)是消除图像的块效应,2个图像核心变换(PCT)将图像从空间域转换到频域。LBT为后续处理步骤提供了按频率分布的数据格式,大大提高了JPEG XR的编码效率与还原后的图像质量,是JPEG XR的非常重要部分。但是LBT具有大量乘除法,对硬件实现要求较高,而FPGA具有频率高、数据并行运算处理能力强等优点,在图像编码领域被大量使用。因此,本设计充分利用FPGA强大的信号驱动特性,使用混合状态机,取代了线性结构的乘法器与移位寄存器,大大减少了LBT的乘除运算对FPGA硬件资源的消耗。同时使用单RAM循环结构来存储LBT的中间变换结果,通过RAM通道控制器交叉切换来实现LBT的4个子变换对RAM的读写操作,大大节约了FPGA的存储空间。 本文先后从JPEG XR编码算法研究分析、MATLAB仿真和FPGA设计与实现等三个方面展开论述。首先,主要分析了JPEG XR的LBT算法、量化、自适应预测、自适应扫描,自适应熵编码等技术。JPEG XR最大特点就在于其能根据图像内容实时选择相应的处理方式,即自适应编码。其次,针对FPGA中RAM的存储结构,即一维的地址-数据格式,使用MATLAB对熵编码之前的步骤进行仿真验证。然后,使用FPGA对LBT进行设计,利用混合状态机实现各个变换算法与LBT子变换RAM控制器之间的交叉通信。最后,使用CP2102将LBT之后的结果发送到上位机串口调试助手,与MATLAB的LBT变换结果进行对比分析。 测试结果表明,该FPGA的LBT结果与MATLAB仿真基本一致,该设计实现了变换功能。