1 简介
多级树集合分裂(Set Partitioning in Hierarchi⁃cal Trees,SPIHT)算法相比嵌入式零树小波(Em⁃bedded Zero Wavelet,EZW)和优化截取内嵌码块编码(Embedded Block Coding with Optimized Trunca⁃tion,EBCOT)节省了大量硬件资源和内存单元,具有很好的渐进传输特性。另外,SPIHT算法的复杂度较低,峰值信噪比较高,是 FPGA 系统实现医学图像编码压缩的较好选择。


2 部分代码
function [app_sig,det_sig] = fldwt9_7(input_signal)% Function% [app_sig,det_sig] = fldwt9_7(input_signal)%% The forward lifting discrete wavelet transform (FLDWT) using the 9-7 Antonini filters[x,y] = size(input_signal);if x ~=1input_signal = input_signal'; %%making it a row vectorendalp = -1.586134342;bet = -0.05298011854;gam = 0.8829110762;delt = 0.4435068522;psi = 1.149604398;%%%we deem the number of the vector is evens0 = input_signal(1:2:length(input_signal)); %%信号的奇数 %%对信号进行奇偶分裂d0 = input_signal(2:2:length(input_signal)); %%信号的偶数tt = length(s0);s0 = [s0 s0(tt-1)]; %将s0倒数第二个数复制到末尾,变为257个元素d0 = d0 + alp*(s0(1:length(s0)-1) + s0(2:length(s0))); %%%对d0256个数进行了变化s0 = s0(1:tt); %%恢复没增加前的s0,即变为256个元素d0 = [d0(1) d0]; %%将d0的第一个元素复制一次,放在第一个元素位置,将其它元素顺延s0 = s0 + bet*(d0(2:length(d0)) + d0(1:length(d0)-1));d0 = d0(2:tt+1);%%将d0变为256个元素s0 = [s0 s0(tt-1)];d0 = d0 + gam*(s0(1:length(s0)-1) + s0(2:length(s0)));s0 = s0(1:tt);d0 = [d0(1) d0];s0 = s0 + delt*(d0(2:length(d0)) + d0(1:length(d0)-1));d0 = d0(2:tt+1);app_sig = psi*s0;det_sig = (1/psi)*d0;if x~=1app_sig = app_sig';det_sig = det_sig';end
3 仿真结果

4 参考文献
[1]赵米旸, 陈卫东, 卢晓燕. 基于SPIHT的改进图像压缩算法[J]. 应用光学, 2007, 28(4):5.
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
部分理论引用网络文献,若有侵权联系博主删除。
本文详细介绍了SPIHT(Set Partitioning in Hierarchical Trees)算法在医学图像编码压缩中的优势,如硬件资源节省、渐进传输特性和高峰值信噪比。并提供了一段MATLAB代码实现前向提升离散小波变换(FLDWT),用于SPIHT算法的一部分。仿真结果显示了算法的有效性。关键词涉及MATLAB、图像压缩、SPIHT算法和医学图像处理。
518

被折叠的 条评论
为什么被折叠?



