encode.m
来自「原创:用matlab仿真bch算法」· M 代码 · 共 30 行
M
30 行
I=imread('bahuan.jpg');
I=rgb2gray(I);
I=im2double(I);
T=dctmtx(8);
B1=blkproc(I,[8 8],'P1*x*P2',T,T');
B1=B1/0.01;
B1=round(B1);
n=31;k=21;t=2;
for i=1;i<256;i+21
msg=B1(:,i:(i+20));
code = bchenco(msg,n,k);
noisycode = rem(code + randerr(256,n,1:t),2);
[newmsg,err,ccode] = bchdeco(noisycode,k,t);
B1(:,i:(i+20))=newmsg;
end
B1=B1*0.01;
I1=blkproc(B1,[8 8],'P1*x*P2',T',T);
imshow(I1)
%******************
for i=1;i<256;i+21
msg=B1(:,i:(i+20));
code = encode(msg,n,k,'bch',bchpoly(n)); % Encode the message.
noisycode = rem(code + randerr(256,n,1:t),2);
[newmsg,err,ccode,cerr] = decode(noisycode,n,k,'bch',t);
I(:,i:(i+20))=newmsg;
end
I=I*0.01;
I1=blkproc(I,[8 8],'P1*x*P2',T',T);
imshow(I1)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?