MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   [MATLAB图像处理] 请各位高手帮助 (https://www.labfans.com/bbs/showthread.php?t=14132)

pinky曼曼 2011-12-04 18:11

请各位高手帮助
 
%得到 db4小波的提升方案
Isdb4=liftwave('db4');
%添加ELS到提升方案中
els={'p',[-0.125,0.125],0};
Isnew=addlift(Isdb4,els);
%读取声音文件
FILE='minzu.wav';
y=wavread(FILE);
%绘制出原始声音信号图
figure(1);plot(y);
title('原始音频');

%用db4小波对读入的声音文件进行2级提升小波分解
xDec=lwt2(y,Isnew,2);

%提取2级小波分解的低频系数和高频系数
ca=lwtcoef2('ca',xDec,Isnew,2,2);
ch1=lwtcoef2('ch',xDec,Isnew,2,1);
cv1=lwtcoef2('cv',xDec,Isnew,2,1);
cd1=lwtcoef2('cd',xDec,Isnew,2,1);
ch2=lwtcoef2('ch',xDec,Isnew,2,2);
cv2=lwtcoef2('cv',xDec,Isnew,2,2);
cd2=lwtcoef2('cd',xDec,Isnew,2,2);
x=ca;

lx=length(x);
alpha1=0.02;alpha2=0.1;

Arn_Wm1=double(imread('Arn_Wm1.jpg','jpg'));

%%%%对离散小波变换的低频系数嵌入水印,嵌入强度根据系数大小定为alpha1或alpha2
I=size(x,lx);
sum=0;
for j=1:I
sum=sum+abs(x);
end

aver=sum/I;%求离散小波变换的低频系数绝对值的平均值

for k=1:I
if (abs(x)<aver)%系数绝对值小于平均值,嵌入强度定为alpha1,使用加性嵌入方法嵌入水印


Aw(k)=double(x+alpha1*Arn_Wm1(k));
else

Aw(k)=double(x+alpha2*Arn_Wm1(k));%系数绝对值大于平均值。嵌入强度定为alpha2 ?
end
end



这个程序在运行的时候总是显示倒数第三行:In an assignment A(I) = B, the number of elements in B and
I must be the same.

Error in ==> test1 at 47
Aw(k)=double(x+alpha1*Arn_Wm1(k));%系数绝对值大于平均值。嵌入强度定为alpha2
请各位高手帮忙看下,是哪里的错误,好吗?谢谢了哦

yhcode 2011-12-06 14:43

回复: 请各位高手帮助
 
这种问题最好把这个程序写成m函数,之后断点进去看看,等号前后的数据维数是否匹配,如果不匹配,为什么,往上一点儿一点儿的找。


所有时间均为北京时间。现在的时间是 12:25

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.