我在这行试图在MATLAB中特定的代码,但得到的错误
Error using ==> plus
矩阵尺寸误差
Matrix dimensions must agree.
LL_1=LL+k;
其中k=w*alpha;
和[LL,LH,HL,HH] = dwt2(X,'db1','d');
和X=imread('cameraman.tif'); X=im2double(X);
请帮我我应该如何解决这个错误?
编辑:我经过这里的职位的人去使用bsxfun
LL_1=bsxfun(@plus,LL+k);
试过,但是这并没有解决问题
编辑2:该代码是如何使用DWT算法的数字图像水印,我在浏览互联网时发现了这些代码,但它给出了我上面讨论过的错误。
我已经发布了代码的前半部分,直到出现错误。
我希望我的答复是解决错误有用
%loading cover image
X=imread('cameraman.tif');
X=im2double(X);
[F1,F2]=wfilters('db1','d');
[LL,LH,HL,HH] = dwt2(X,'db1','d');
%watermark image
b=imread('copyright.bmp');
level=graythresh(b);
w=im2bw(b,level);
w=double(w);
alpha=0.09;
k=w*alpha;
LL_1=bsxfun(@plus, LL, k);
Y=idwt2(LL_1,LH,HL,HH,'db1','d');
,你得到了什么? 即,'大小(LL)'和'大小(K)'LL的 – 2013-03-01 06:47:14
值是:<171x210x3双>和k的值是:<273x286双> – sumedha 2013-03-01 07:20:28
'大小(LL) ANS = 171 210 3'' size(k) ans = 273 286' – sumedha 2013-03-01 07:38:24