snout.m
来自「一种SPIHT的改进算法!!!mallat算法实现,还有待提高!多联系lhz_5」· M 代码 · 共 24 行
M
24 行
function [isImt,Sign]=SnOut(coefSet,N)
% 函数 SNOUT() 根据本级阈值指数 N 判断坐标集 coefSet 是否重要 isImt ,对单元素
% 的系数集输出该元素的正负符号 Sign 。
global Mat
% Mat是输入的小波分解系数矩阵,作为全局变量,在编码的相关程序中使用
allMat=[];
isImt=0;
Sign=0;
% 默认坐标集是不重要的,且首位元素是负值
rSet=size(coefSet,1);
% 读取坐标集中各元素的系数值
for r=1:rSet
allMat(r)=Mat(coefSet(r,1),coefSet(r,2));
if abs(allMat(r))>=2^N
isImt=1;
break;
end
end
% 对单个元素的坐标集,判断该元素的正负符号
% 由于函数 childMat() 对子孙全零的点会返回空表,所以要检查allMat是否为空
if ~isempty(allMat)&&(allMat(1)>=0)
Sign=1;
end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?