decrefine.m

来自「一种SPIHT的改进算法!!!mallat算法实现,还有待提高!多联系lhz_5」· M 代码 · 共 21 行

M
21
字号
function [DecodeMat,Rn]=decRefine(DecodeMat,Rn,N,rP,cP)
% 函数 DECREFINE()为精细解码程序,对上一级解码产生的重要系数列表LSP_Old,根据输入的
% 精细位流 Rn 提高重要系数值的重构精度
% 输入参数:DecodeMat —— 经排序扫描解码后的重构系数矩阵
%          Rn —— 精细扫描输出位流
%          N —— 本级解码阈值的指数
%          LSP_Old —— 上一级解码产生的重要系数列表
% 输出参数:DecodeMat —— 提高重要系数精度后的重构矩阵

dMat=DecodeMat(rP,cP);
% 首先读取重构矩阵中重要系数的值 dMat
rMat=abs(dMat)+(-1)^(1+Rn(1))*2^(N-1);
% 对 dMat 的绝对值,如果 Rn = 1,则加上2^(N-1),否则减去2^(N-1),结果存入 rMat
if dMat<=0
	rMat=-rMat;
end
% 如果 dMat 为负数,则 rMat 也转为负数
Rn(1)=[];
% 消去所读取的Rn信息
DecodeMat(rP,cP)=rMat;
% 将提高了精度的重要系数值返回重构矩阵中

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?