应用阈值掩码

时间:2011-05-22 17:53:47

标签: matlab

我在matlab中进行图像压缩。

在我在图像上应用DCT并且我有img矩阵后,我想在该矩阵上应用阈值掩码。

mask =     [1   1   1   1   0   0   0   0
            1   1   1   0   0   0   0   0
            1   1   0   0   0   0   0   0
            1   0   0   0   0   0   0   0
            0   0   0   0   0   0   0   0
            0   0   0   0   0   0   0   0
            0   0   0   0   0   0   0   0
            0   0   0   0   0   0   0   0];

maskedImg = blkproc(img,[8 8],mask );

我使用了该功能,但它没有工作,我得到错误信息:

==>中的错误blkproc在67 [a,block,border,fun,params,padval] = parse_inputs(varargin {:});

1 个答案:

答案 0 :(得分:2)

根据最新的Matlab文件;最接近blockproc语法(针对您的情况)为B = blockproc(A,[M N],fun)。显然你的mask确实应该是一个功能!

但是,我记得blkproc暂时是一个有效的Matlab函数,因此通过键入(在命令行中)> help blkproc来仔细检查调用它的正确方法。 (我很难相信它会与blockproc共享呼叫签名[在这种情况下])。