📄 ss_exf.m
字号:
function r6 = ss_exf(r2, r3, collogo, rowlogo)
%% r2= HOST gray image
%% r3= WATERMARKED image
%% rowlogo= rowsize of binary logo which is added as watermark
%% collogo= colsize of binary logo which is added as watermark
%% r6=extracted logo from watermarked image
%% PN SEQUENCE GENERATOR ALGOrithm on spatial domain
%clc;
%clear all
%r2=imread('lena.jpg');
%r2=imresize(r2,[512 512],'bilinear');
r2=double(r2);
[rowr2 colr2]=size(r2);
tot_no_pixel_host=rowr2*colr2;
%r3=imread('lena_random.bmp');
[rowr3 colr3]=size(r3);
%r2=imresize(r,[512 512],'bilinear');
r3=double(r3);
if ((rowr2 ~= rowr3) | (colr2 ~= colr3))
r3=imresize(r3,[rowr2 colr2],'bilinear'); %% Make size same for both the image
%error('The images have different size.');
end
r4=r3-r2; %% WATERMARKED IMAGE-HOST IMAGE
rows =rowlogo;
cols =collogo;
%r5=r4(:)';
r4=r4';
r5=r4(:)';
tot_no_pixel_logo=rows*cols;
chip_rate=floor(tot_no_pixel_host/tot_no_pixel_logo);
pn_seq=ones(1,chip_rate);
temp1=mlbs_ch(floor(log2(chip_rate)));
temp1=temp1';
[rowtmp coltmp]=size(temp1);
pn_seq(1,1:coltmp)=temp1(1,1:coltmp);
r6=zeros(rows,cols);
j=1;
for i=1:tot_no_pixel_logo
s(i)=pn_seq(1:1,1:chip_rate)*r5 (1:1,j:j+chip_rate-1)';
j=j+chip_rate;
end
k=1;
for i=1:rows
for j=1:cols
if sign(s(k))==1
r6(i,j)=255;
else
r6(i,j)=0;
end
k=k+1;
end
end
r6=uint8(r6);
%imshow(r6)
str1=num2str(rowr2);
str2=num2str(colr2);
str3=num2str(rowlogo);
str4=num2str(collogo);
strf=strcat('pn_ext_',str1,'x',str2,'host_',str3,'x',str4,'logo.bmp');
%r1=uint8(r1);
imshow(r6)
%imwrite(r6,strf);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -