matlab命令窗口作用是什么,wcodemat这个命令在matlab中是实现什么功能的
命令格式:
1.y=wcodemat(x,nb,opt,absol)
2.y=wcodemat(x,nb,opt)
3.y=wcodemat(x,nb)
4.y=wcodemat(x)
該函數(shù)是用來對矩陣X進(jìn)行量化編碼,它返回矩陣X的一個編碼矩陣,在編碼中,把矩陣X中元素絕對值最大的作為NB(NB是一個整數(shù)),絕對值最小的作為1,其他元素依其絕對值的大小在1與NB中排列.當(dāng)OPT為'row'時,做行編碼;當(dāng)OPT為'col'時,做列編碼,當(dāng)OPT為'mat'時,做全局編碼,即把整個矩陣中的元素絕對值最大的元素作為NB,最小的作為1,其他元素依其絕對值的大小在整個矩陣中排列.當(dāng)ABSOL為0時,該函數(shù)返回輸入矩陣X的一個編碼版本,為非0時,返回X的ABS(X).
在小波變換的時候也就是編碼的時候會用到吧~~
希望能給你一點幫助
load x;
subplot(2,2,1);
image(x);
colormap(map);
title('原始圖像')
axis square;
disp('壓縮前圖像');
whos(x);
%對圖像進(jìn)行小波分解
[c,l]=wavedec2(x,2,'bior3.7');
%提取低頻系數(shù)和高頻系數(shù)
cA1=appcoef2(c,l,'bior3.7',1);
%水平,斜線,垂直方向系數(shù)
cH1=detcoef2('h',c,l,1);
cD1=detcoef2('d,c,l,1);
cV1=detcoef2('v',c,l,1);
%重構(gòu)第一層系數(shù)
A1=wrcoef2('a',c,l,'bior3.7',1);
H1=wrcoef2('h',c,l,'bior3.7',1);
D1=wrcoef2('d',c,l,'bior3.7',1);
V1=wrcoef2('v',c,l,'bior3.7',1);
c1=[A1 H1;V1 D1]
%顯示頻率信息
subplot(2,2,2);
image(c1);
title('分解后的低頻和高頻信息');
%對圖像進(jìn)行壓縮,保留第一層低頻信息并量化編碼
ca1=wcodemat(cA1,440,'mat',0);
%改變圖像高度并顯示
ca1=0.1*ca1;
subplot(2,2,3);
image(ca1);
title('第一次壓縮后圖像');
axis square;
disp('第一次壓縮后圖像的大小:');
whos('ca1');
%對圖像進(jìn)行壓縮,保留第2層低頻信息并量化編碼
cA2=appcoef2(c,l,'bior3.7',2);
ca1=wcodemat(cA2,440,'mat',0);
%改變圖像高度并顯示
ca2=0.1*ca2;
subplot(2,2,4);
image(ca2);
title('第2次壓縮后圖像');
disp('第2次壓縮后圖像的大小:');
whos('ca2');
我不是很明白你的意思,找了一段代碼,你看看吧,希望有所幫助~
總結(jié)
以上是生活随笔為你收集整理的matlab命令窗口作用是什么,wcodemat这个命令在matlab中是实现什么功能的的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python大小写转换
- 下一篇: html5输入框表情,H5页面input