img=imread( 'E:\qq文件\信息隐藏技术\test2\hide2_3.bmp');
img=double(img);
img=img(:)';
[row,len]=size(img);
rs=zeros(2,4);
cor=zeros(1,3);
m=floor(len/4);
M=randsrc(4,1,[0 1]);
tmp=zeros(4,1);
M=[1 0 1 0];
img1=img;
for i=1:2
for j=1:m
tmp=img1((j-1)*4+1:j*4);
f(1)=discrimination(tmp);
f(2)=discrimination(fpos(tmp,M));
f(3)=discrimination(fneg(tmp,M));
if f(2)>f(1)
rs(i,1)=rs(i,1)+1;
end
if f(2)<f(1)
rs(i,2)=rs(i,2)+1;
end
if f(3)>f(1)
rs(i,3)=rs(i,3)+1;
end
if f(3)<f(1)
rs(i,4)=rs(i,4)+1;
end
end
if i==1
img1=fpos(img1,ones(len,1));
end
end
res=(rs(1,3)-rs(1,4))>(rs(1,1)-rs(1,2));
if res
disp('该图像含有隐藏信息');
else
disp('该图像未检测出隐藏信息');
end
rs=rs/m;
dpz=rs(1,1)-rs(1,2);
dpo=rs(2,1)-rs(2,2);
dnz=rs(1,3)-rs(1,4);
dno=rs(2,3)-rs(2,4);
c=[2*(dpo+dpz),(dnz-dno-dpo-3*dpz),(dpz-dnz)];
z=roots(c);
p=z ./(z-0.5);
fprintf(1,'隐写率为: %f\n',p(2));
fprintf(1,'隐写长: %f\n',p(2)*row*len);
评论0