王玲,杨晓
(西华大学计算机与软件工程学院,成都 610039)
近年来,智慧医疗、远程会诊的提出使医学影像资源得到合理利用,由于数字医学影像具有分辨率高、数据量大等特点,仅通过增加存储容量、提高信道以及计算机的处理效率等方法来解决是不现实的。因此,在进行医学图像存储和传输前,图像压缩已成为不可缺少的环节,图像压缩即是图像数据压缩,就是以尽量少的比特数表征图像数据信号,减少容纳给定消息集合或数据采样集合的信号空间,同时保证重建图像质量。由于现代医学设备成像分辨率的不断增高,医学图像数据也必然面临持续增长。作为专用医学图像管理系统图像归档与传输系统(Picture Archiving and Communication System,PACS)能在一定程度上实现医学图像的存储、传输与显示,但高效的医学图像压缩技术的研究能有效缓解PACS的存储压力,实现带宽有限条件下医学图像的实时传输。
典型的图像压缩系统由变换器、量化器、编码器以及它们的逆过程组成如图1所示。基于小波变换的图像压缩流程分为变换、量化、编码三个模块,变换并不损失图像信息只是减少数据的相关性和冗余性,为量化和编码做准备;量化即减少图像中不重要的信息,对原图像不构成大的影响;编码时压缩的关键部分可直接减小图像的存储空间。1989年Mallat[1]第一次将小波变换应用于图像压缩,开启了小波用于图像压缩的先例。小波图像压缩的基本思想是对原始图像进行小波变换,转换为小波域上的系数,然后对小波系数进行量化编码。1993年Shapiro提出了嵌入零树小波(Em⁃bedded Zerotree Wavelet,EZW)[2]算法,实现了较高压缩比,同时保证了图像复原质量。在EZW算法的研究上,Said和Pearlman提出了多级树集合分裂(SetParti⁃tioning In Hierarchical Trees)[3]算法。采用小波子带间的相关性,利用树的数据结构传达和编码使得上述两种基于小波树的编码具有很高PSNR性能和较低算法复杂度,但由于编码速度较慢、内存占用率偏高的问题使得这类算法未能得到普遍应用。传统EZW算法需要多次扫描且只利用了一个方向上各个子带间的相关性等缺陷影响了压缩效率,冯永亮[4]使用正交小波基Z97替代小波变换等改进方案提高了图像压缩效率。对于高分辨率医学图像的压缩,国内外许多学者做了各式各样的探求,提出了许多图像压缩方法[5],由于离散小波变换(Discrete Wavelet Transformation,DWT)具备多分辨分析的优异性能[6],在医学图像有损压缩中取得了广泛的应用,其中JPEG2000被认为是基于小波变换的最好的压缩算法,但是其编码复杂度较高,需要大量的计算,硬件实现过程比较困难[7]。Daubechies和Sweldens针对传统小波变换依赖傅里叶变换的复杂运算提出了提升小波变换方案[8-9],实现空域中频域信号分析,将高通和低通滤波器转化为分解、预测和更新步骤,减少了计算复杂度。
图1 图像压缩系统框图
发展至今,图像压缩编码方法在DSP或各大通用CPU处理器平台上的软件实现已比较成熟,Zhang[10]介绍了基于DSP的JPEG2000静止图像压缩系统,得到很好的压缩效果;针对传统单核数字信号处理器难以满足性能需求,唐国斐等[11]提出一种基于多核DSP来构建并行图像压缩系统的设计方案。为满足高密度和高效并行计算需要,专用图形处理单元(Graphic Pro⁃cessUnit,GPU)很好解决了计算能力与功耗和成本的冲突,一种基于快速列变换的GPU小波变换方法,通过合并内存访问提高了内存访问效率。DSP、GPU或通用计算机软件方法实现图像压缩属于冯·诺依曼结构,是指令的串行执行,处理速度上有一定的局限性,且存在计算性能不足等问题;DSP可实现的并行结构需要扩展多个芯片且开发复杂,可移植性较差;GPU运算强、管理弱,几乎只有数据并行,流水线深度受到限制,适合整块数据进行流处理的算法。随着微电子技术的迅猛发展以及芯片制作工艺的逐步完善,大规模以及超大规模集成电路(VLSI)[12]、专用集成电路(ASIC)、FPGA在医学图像压缩编码上得到广泛应用。尤其是FPGA近年来的快速发展,在逻辑资源分配利用以及性能可靠性上不断完善,使得医学图像的高效压缩编码得以实现。
由于图像质量及其对处理实时性要求的不断提高,国内外学者提出采用FPGA丰富的逻辑资源和并行流水的特性加速图像算法的计算能力,实现高效图像压缩设计且取得了不错效果,为医学领域图像压缩的实现提供了很好的借鉴和应用价值。传统小波变换是先将图像分成子块,再分别对每一个子块进行N(N大于等于2后,低频子带与之对应的高阶子带之间的相关性较小)阶小波变换将低频信号和高频信号分开,依赖于傅里叶变换、计算量大。为了适用于硬件加速,减少小波变换次数,对原图像先只做二阶小波变换,将变换后的矩阵分成大小一致的四个子块直接进行编码,有效降低计算复杂度。付雷[13]在利用FPGA实现二维提升小波变换时重复取上一次的最后一行作为小波变换输入的开始行,相比于传统奇偶分离的小波变换方式节省存储器资源,并提高了图像压缩的实时性;Wang等[14]为了实现高效并行DWT的计算,提出2D 9/7 DWT超大规模集成的设计方案,并在FPGA上显示时钟频率和吞吐量能够满足超高速应用要求;李勇[15]设计了5/3提升小波的图像压缩算法,降低了算法复杂度、适合硬件实现且节省存储空间,并在FPGA上验证了算法的有效性;王鸣哲等[16]提出了一种满足实时处理要求的二维5/3小波变换,采取了行列变换同时执行及流水线设计,相比于9/7小波变换更加节省逻辑资源,延时更短;Venkata[17]介绍了从小波变换到SPIHT编码压缩过程,采取空间方向树的方式有效提高存储访问效率,通过图像压缩的性能指标验证了此压缩算法在硬件上实现的有效性;Prakash等[18]在SPIHT算法的基础上提出一种高度可伸缩的图像压缩方案,在FPGA平台上的实现流程如图2;常文利[19]针对小波变换中大量的加法和乘法运算,使用行列变换同时进行,协调使用片内片外RAM加快系统处理速度。
图2 FPGA实现图像压缩流程图
从以上关于小波变换和硬件发展的介绍可以看出,基于硬件的图像压缩方法受到广泛关注,在目前已发表的文献中也占有较大的比重。基于变换编码的方式在医学图像压缩中具有很好应用价值,尤其是DWT应用最为广泛。针对越来越庞大的PACS系统,研究医学图像压缩方法,考虑从工程上实现硬件算法加速。引入FPGA硬件平台实现基于小波变换的医学图像压缩的目的是一方面解决医学图像要有较长保存周期的存储需求,另一方面实现窄带宽下医学图像的远程传输。在医学图像压缩算法的设计中,为降低医学图像压缩系统设计,5/3提升小波变换[20]不需要乘法器,易于硬件实现,且可使算法支持无损压缩,便于医学图像压缩,此外医学图像在拍摄中患者因呼吸、自主或不自主运动产生的图像模糊会影响后期医学图像的诊断结果,考虑设计一种提升小波变换的图像去噪与压缩相结合的方法,将图像去噪和压缩算法中多级小波变换合并在一起,利用一次多级小波变换获得小波域数据,实现医学图像的压缩,理论上在提升医学图像压缩效率的同时可提高图像复原质量。
参考文献:
[1]Mallat SG.Multi frequency Channel Decompositions of Images and Wavelet Models[J].IEEE Transactions on Acoustics Speech&Signal Processing,1989,37(12):2091-2110.
[2]金平艳,祝忠明.图像小波变换实现及EZW编码理论研究[J].信息通信,2015(11):46-47.
[3]张倩妮,刘昌华.结合Huffman编码和SPIHT算法实现高效图像压缩方法[J].软件导刊,2016,15(3):175-178.
[4]冯永亮.基于小波变换的图像压缩算法改进研究[J].电子产品世界,2016,23(7):34-36.
[5]Kumar T,Kumar DR.Medical Image Compression Using Hybrid Techniques of DWT,DCT and Huffman Coding[J],2015:54-60.
[6]WeiS,Kang C,Jie J.Research of Image Compression Algorithm Based on Wavelet Transformation[C].Eighth International Conference on Digital Image Processing.2016:100332W.
[7]Ye L,Hou Z.Memory Efficient Multilevel Discrete Wavelet Transform Schemes for JPEG2000[J].IEEE Transactions on Circuits&Systems for Video Technology,2015,25(11):1773-1785.
[8]Wang J,Zhu E.A high-throughput VLSI Design for JPEG 2000 9/7Discrete Wavelet Transform[J].东南大学学报(英文版),2015,31(1):19-24.
[9]王鸣哲,薛长斌,张学全.星载图像压缩系统中实时二维小波变换的FPGA设计与实现[J].微电子学与计算机,2017,34(7):33-36.
[10]Zhang L.The Design of Static Image Compression System[J].Advanced Materials Research,2014,1042:150-153.
[11]唐国斐,周海芳,谭庆平.基于多核DSP的星载并行遥感图像压缩系统设计与实现[J].计算机应用,2017,37(5):1246-1250.
[12]董明岩,雷杰,王柯俨,等.高效低存储DWT的VLSI结构设计[J].西安电子科技大学学报(自然科学版),2016,43(2):35-40.
[13]付雷.基于FPGA实时图像压缩算法的实现[D].西安电子科技大学,2014.
[14]Wang J,Zhu E.A High-Throughput VLSI Design for JPEG2000 9/7Discrete Wavelet Transform[J].东南大学学报(英文版),2015,31(1):19-24.
[15]李勇.基于5/3提升小波的图像压缩算法及其FPGA仿真实现[J].曲靖师范学院学报,2016,35(3):41-44.
[16]王鸣哲,薛长斌,张学全.星载图像压缩系统中实时二维小波变换的FPGA设计与实现[J].微电子学与计算机,2017,34(7):33-36.
[17]Anjaneyulu IV,Krishna PR.FPGA Implementation of DWT-SPIHT Algorithm for Image Compression[J].International Journal of Technology Enhancements and Emerging Engineering Research(IJTEEE),2014.
[18]Mhamunkar N S,Gayal BS.Design and Implementation of Generic 2-D Biorthogonal Discrete Wavelet Transform on FPGA[C].International Conference on Energy Systems and Applications.IEEE,2016:622-627.
[19]常文利,CHANGWenli.基于FPGA的一种针对小波变换的快速流水线结构设计[J].计算机与数字工程,2017(10):2079-2084.
[20]Nini XU,Zhang M,Wang J.True 2-D 5/3Wavelet Transform and Its Application for CT Image Lossless Compression[J].Telecommunications Science,2016.