压缩编码效率很高的静止图像压缩编码算法SPIHT,本程序使用matlab实现 - matlab图像处理 - 谷速源码
下载频道> 资源分类> matlab源码> 图像处理> 压缩编码效率很高的静止图像压缩编码算法SPIHT,本程序使用matlab实现

标题:压缩编码效率很高的静止图像压缩编码算法SPIHT,本程序使用matlab实现
分享到:

所属分类: 图像处理 资源类型:程序源码 文件大小: 218.55 KB 上传时间: 2019-06-16 16:15:59 下载次数: 66 资源积分:1分 提 供 者: zhangsan456 code
内容:
一种基于小波变换,压缩编码效率很高的静止图像压缩编码算法SPIHT,本程序使用matlab实现-
function [I_W , S] = func_DWT(I, level, Lo_D, Hi_D);
% Matlab implementation of SPIHT (without Arithmatic coding stage)
%
% Wavelet decomposition
%
% input:    I : input image
%           level : wavelet decomposition level
%           Lo_D : low-pass decomposition filter
%           Hi_D : high-pass decomposition filter
%
% output:   I_W : decomposed image vector
%           S : corresponding bookkeeping matrix
%
% please refer wavedec2 function to see more
%
 
[C,S] = func_Mywavedec2(I,level,Lo_D,Hi_D); 
 
S(:,3) = S(:,1).*S(:,2);        % dim of detail coef nmatrices
 
L = length(S);
 
I_W = zeros(S(L,1),S(L,2));
 
% approx part
I_W( 1:S(1,1) , 1:S(1,2) ) = reshape(C(1:S(1,3)),S(1,1:2));
 
for k = 2 : L-1
    rows = [sum(S(1:k-1,1))+1:sum(S(1:k,1))];
    columns = [sum(S(1:k-1,2))+1:sum(S(1:k,2))];
    % horizontal part
    c_start = S(1,3) + 3*sum(S(2:k-1,3)) + 1;
    c_stop = S(1,3) + 3*sum(S(2:k-1,3)) + S(k,3);
    I_W( 1:S(k,1) , columns ) = reshape( C(c_start:c_stop) , S(k,1:2) );
 
    % vertical part
    c_start = S(1,3) + 3*sum(S(2:k-1,3)) + S(k,3) + 1;
    c_stop = S(1,3) + 3*sum(S(2:k-1,3)) + 2*S(k,3);
    I_W( rows , 1:S(k,2) ) = reshape( C(c_start:c_stop) , S(k,1:2) );
 
    % diagonal part
    c_start = S(1,3) + 3*sum(S(2:k-1,3)) + 2*S(k,3) + 1;
    c_stop = S(1,3) + 3*sum(S(2:k,3));
    I_W( rows , columns ) = reshape( C(c_start:c_stop) , S(k,1:2) );
 
end

文件列表(点击上边下载按钮,如果是垃圾文件请在下面评价差评或者投诉):

关键词: 压缩编码 SPIHT

Top_arrow
回到顶部
联系方式| 版权声明| 招聘信息| 广告服务| 银行汇款| 法律顾问| 兼职技术| 付款方式| 关于我们|
网站客服网站客服 程序员兼职招聘 程序员兼职招聘
沪ICP备19040327号-3
公安备案号:沪公网安备 31011802003874号
库纳格流体控制系统(上海)有限公司 版权所有
Copyright © 1999-2014, GUSUCODE.COM, All Rights Reserved