zigzag.m

来自「在matlab环境下实现dtc变换」· M 代码 · 共 20 行

M
20
字号
function q=zigzag(in)
%zigzag扫描函数 
%% 函数体
[n,m]=size(in);

if( (n~=8) & (m~=8))
   error('输入不是 8*8 矩阵格式');
end

zig = [ 0, 1, 8, 16, 9, 2, 3, 10, ...         %按图写出下边排列顺序,下标从0开始
        17, 24, 32, 25, 18, 11, 4, 5, ...
        12, 19, 26, 33, 40, 48, 41, 34, ...
        27, 20, 13, 6, 7, 14, 21, 28, ...
        35, 42, 49, 56, 57, 50, 43, 36, ...
        29, 22, 15, 23, 30, 37, 44, 51, ...
        58, 59, 52, 45, 38, 31, 39, 46, ...
        53, 60, 61, 54, 47, 55, 62, 63];
zig = zig + 1;                                %下标各加1, 下标从1开始
in2= reshape(in,1,64);
q = in2(zig); 

⌨️ 快捷键说明

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