function blk=BlockEmbed2(md,blk)
to=sum(blk(:));
if to==0
blk(1:mod(4-md,4))=1;
elseif to==64
blk(1:md)=0;
elseif to>4
if md>0
flag=0;
for k=1:8
for l=1:7
if blk(k,l) ~= blk(k,l+1) % find a black pixel next to a white pixel
blk(k,l)=0; % change both to black
blk(k,l+1)=0; % change both to black
flag=1;
break;
end
end
if flag
break;
end
end
if ~flag % if horizontal search failed, try vertical search
for k=1:7
if blk(k,1) ~= blk(k+1,1)
blk(k,1)=0;
blk(k+1,1)=0;
flag=1;
break;
end
end
end
end
if md>1
flag=0;
for k=8:-1:1
for l=7:-1:1
if blk(k,l) ~= blk(k,l+1) % find a black pixel next to a white pixel
blk(k,l)=0; % change both to black
blk(k,l+1)=0; % change both to black
flag=1;
break;
end
end
if flag
break;
end
end
if ~flag % if horizontal search failed, try vertical search
for k=7:-1:1
if blk(k,1) ~= blk(k+1,1)
blk(k,1)=0;
blk(k+1,1)=0;
flag=1;
break;
end
end
end
end
if md>2
flag=0;
for l=8:-1:1
for k=7:-1:1
if blk(k,l) ~= blk(k+1,l) % find a black pixel next to a white pixel
blk(k,l)=0; % change both to black
blk(k+1,l)=0; % change both to black
flag=1;
break;
end
end
if flag
break;
end
end
if ~flag % if horizontal search failed, try vertical search
for l=1:7
if blk(5,l) ~= blk(5,l+1)
blk(5,l)=0;
blk(5,l+1)=0;
flag=1;
break;
end
end
end
end
else
md=mod(4-md,4);
if md>0
flag=0;
for k=1:8
for l=1:7
if blk(k,l) ~= blk(k,l+1) % find a black pixel next to a white pixel
blk(k,l)=1; % change both to black
blk(k,l+1)=1; % change both to black
flag=1;
break;
end
end
if flag
break;
end
end
if ~flag % if horizontal search failed, try vertical search
for k=1:7
if blk(k,1) ~= blk(k+1,1)
blk(k,1)=1;
blk(k+1,1)=1;
flag=1;
break;
end
end
end
end
if md>1
flag=0;
for k=8:-1:1
for l=7:-1:1
if blk(k,l) ~= blk(k,l+1) % find a black pixel next to a white pixel
blk(k,l)=1; % change both to black
blk(k,l+1)=1; % change both to black
flag=1;
break;
end
end
if flag
break;
end
end
if ~flag % if horizontal search failed, try vertical search
for k=7:-1:1
if blk(k,1) ~= blk(k+1,1)
blk(k,1)=1;
blk(k+1,1)=1;
flag=1;
break;
end
end
end
end
if md>2
flag=0;
for l=8:-1:1
for k=7:-1:1
if blk(k,l) ~= blk(k+1,l) % find a black pixel next to a white pixel
blk(k,l)=1; % change both to black
blk(k+1,l)=1; % change both to black
flag=1;
break;
end
end
if flag
break;
end
end
if ~flag % if horizontal search failed, try vertical search
for l=1:7
if blk(5,l) ~= blk(5,l+1)
blk(5,l)=1;
blk(5,l+1)=1;
flag=1;
break;
end
end
end
end
end
bw_fragile_robust.rar_fragile_matlab图片隐藏_不确定_二值水印_水印添加
版权申诉
162 浏览量
2022-07-15
09:04:43
上传
评论
收藏 36KB RAR 举报
小波思基
- 粉丝: 72
- 资源: 1万+
最新资源
- Python 手写实现 iD3 决策树算法-根据信息增益公式.zip
- 411675952289057车联助手-小窗版(三星)3.5.1.apk
- 三种快速排序方法合并在一个文件中以便直接运行的Python代码示例
- 937712277954201实习5.word
- 2程序语言基础知识pdf1_1716337722703.jpeg
- 简单的Python示例,演示了如何使用TCP/IP协议进行基本的客户端和服务器通信
- 考试.sql
- keil2 + proteus + 8051.exe
- 1961ee27df03bd4595d28e24b00dde4e_744c805f7e4fb4d40fa3f695bfbab035_8(1).c
- mediapipe-0.9.0.1-cp37-cp37m-win-amd64.whl.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈