91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 264KB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發布日期: 2021-08-07
  • 語言: 其他
  • 標簽: dct;??

資源簡介

本文圖像水印源代碼,要是用的話請把里面的后綴為(.bmp)的圖片變為自己的(.bmp)然后將源代碼中在相關的代碼變為對應的久可以

資源截圖

代碼片段和文件信息

clear?all;

k=12;???????????%設置嵌入強度
blocksize=8;????%?設置塊的大小

%?讀入原圖像
%file_name=‘lena.jpeg‘;
%cover_object=double(imread(file_name));
A=imread(‘lena.jpeg‘);
B=rgb2gray(A);
cover_object=double(B);

%?原圖像的行數與列數
Mc=size(cover_object1); ????????%原圖像行數
Nc=size(cover_object2); ????????%原圖像列數

%?最大嵌入信息量
max_message=Mc*Nc/(blocksize^2);

%?讀入水印圖像
file_name=‘weili.bmp‘;
message=double(imread(file_name));
%%水印圖像的行數與列數
Mm=size(message1);???????????????%水印行數
Nm=size(message2);???????????????%水印列數
?
%?重塑消息發送到一個載體
%message=round(message(:)./256);
%message=round(reshape(messageMm*Nm1)./256);
%[MmNm]=size(message);
%N=Mm*Nm;
%message=reshape(messageN1);
message=reshape(message1Mm*Nm);??????

%?檢查水印信息是否過大
if?(length(message)?>?max_message)
????error(‘水印太大‘)
end

%?將message_vector置為全1向量,并將水印信息寫入
message_pad=ones(1max_message);
message_pad(1:length(message))=message;

%?產生watermarked_image并寫入原圖信息
watermarked_image=cover_object;

%?將圖像分塊嵌入
%?當?(52)?>?(43)?且?message(kk)=0
%?當?(52)?%%經過分析可以得出結論:在提取水印時,如果dct_block(52)-dct_block(43)>=k便是嵌入了水印的黑色像素,
%%反之則是嵌入了白色像素
x=1;
y=1;
for?kk?=?1:length(message_pad)

????%?對塊進行DCT變換
????dct_block=dct2(cover_object(y:y+blocksize-1x:x+blocksize-1));
????
????%?如果?message?bit?is?black?
????if?(message_pad(kk)?==?0)

????????%?且?(52)?????????if?(dct_block(52)?????????????????temp=dct_block(43);
????????????????dct_block(43)=dct_block(52);
????????????????dct_block(52)=temp;
????????end
????
????%?如果?message?bit?is?white?
????elseif?(message_pad(kk)?==?1)
????????
????????%?且?(52)?>?=(43)?,交換它們
????????if?(dct_block(52)>=?dct_block(43))
????????????????temp=dct_block(43);
????????????????dct_block(43)=dct_block(52);
????????????????dct_block(52)=temp;
????????end
????end
??????%?檢查(52)與(4,3)的差值是否在k與2k之間,如果不是,通過以下算法,使其差值在其之間
????if?dct_block(52)?>?dct_block(43)
????????if?dct_block(52)?-?dct_block(43)?????????????dct_block(52)=dct_block(52)+(k/2);
????????????dct_block(43)=dct_block(43)-(k/2);
?????????elseif?dct_block(52)?-?dct_block(43)?>2*k
?????????????dct_block(52)=dct_block(52)-(k/2);
????????????dct_block(43)=dct_block(43)+(k/2);
????????end
??????
????else??if?dct_block(43)?-?dct_block(52)?????????????dct_block(43)=dct_block(43)+(k/2);??
????????????dct_block(52)=dct_block(52)-(k/2);
????????????elseif?dct_block(43)-dct_block(52)?>2*k
?????????????dct_block(52)=dct_block(52)+(k/2);
????????????dct_block(43)=dct_block(43)-(k/2);
?????????end
????end
???
????????
????%?將塊逆變換為空間域
????watermarked_image(y:y+blocksize-1x:x+blocksize-1)=idct2(dct_block);????
????
????%?移動到下一塊
????if?(x+blocksize)?>=?Nc
????????x=1;
????????y=y+blocksize;
????else
????????x=x+blocksize;
????end
end

%?轉換為uint8并寫入?watermarked_image.bmp?
watermarked_image_int=uint8(watermarked_image);
imwrite(watermarked_image_int‘waterma

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2012-10-17?21:57??算法實現\
?????文件???????22625??2012-06-03?16:12??算法實現\JPEG.jpeg
?????文件????????3689??2012-06-03?16:03??算法實現\JPEG_embed.asv
?????文件????????3689??2012-06-05?15:59??算法實現\JPEG_embed.m
?????文件????????1421??2012-06-05?16:00??算法實現\JPEG_recover.m
?????文件?????????122??2012-06-05?15:05??算法實現\Untitled.m
?????文件?????????772??2012-05-30?10:18??算法實現\Untitled2.asv
?????文件?????????772??2012-05-30?10:21??算法實現\Untitled2.m
?????文件???????15767??2012-06-03?16:12??算法實現\attackf.jpg
?????文件????????3729??2012-06-05?15:39??算法實現\croping.asv
?????文件?????????349??2012-06-05?15:42??算法實現\croping.jpeg
?????文件????????3728??2012-06-05?15:42??算法實現\croping.m
?????文件????????1423??2012-06-05?15:25??算法實現\croping2.m
?????文件????????3309??2012-06-05?15:50??算法實現\dct1_embed.asv
?????文件????????3310??2012-06-05?15:48??算法實現\dct1_embed.m
?????文件????????1427??2012-06-05?15:48??算法實現\dct1_recover.m
?????文件???????83223??2012-06-03?15:09??算法實現\gaussian.jpeg
?????文件????????3424??2012-06-03?13:32??算法實現\gaussian_embed.asv
?????文件????????3481??2012-06-05?15:58??算法實現\gaussian_embed.m
?????文件????????1427??2012-06-05?15:58??算法實現\gaussian_recover.m
?????文件???????31531??2012-05-28?10:32??算法實現\lena.jpeg
?????文件?????????473??2012-05-28?10:32??算法實現\nc.m
?????文件???????57358??2012-06-03?13:35??算法實現\noise.jpeg
?????文件????????3607??2012-06-05?16:01??算法實現\noise_embed.m
?????文件????????1422??2012-06-05?16:02??算法實現\noise_recover.m
?????文件?????????478??2012-05-28?10:32??算法實現\psnr.m
?????文件????????3000??2012-06-05?15:06??算法實現\rotate.jpeg
?????文件????????3582??2012-06-02?21:17??算法實現\rotate_embed.asv
?????文件????????3419??2012-06-05?16:02??算法實現\rotate_embed.m
?????文件????????1423??2012-06-05?16:03??算法實現\rotate_recover.m
?????文件?????????574??2012-06-02?16:29??算法實現\wangbo.bmp
............此處省略1個文件信息

評論

共有 條評論