This repository was archived by the owner on Mar 7, 2025. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathapple.m
100 lines (96 loc) · 2.77 KB
/
apple.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
%file: apple.m
%to encrypt the apple image
whole = imread("apple.png","png");
[M,N,C] = size(whole);
blocksize = 16;
MSB = 2;
count = 20000;
key = 1;
m = M/blocksize;
n = N/blocksize;
values = zeros(m,n);%store the original average pixel of every block
sub1 = zeros(blocksize);
result1 = whole;
result2 = whole;
for chanal = 1 : C
origin = whole(:,:,chanal);
for i = 1 : m
for j = 1 : n
x = (i-1)*blocksize+1;
y = (j-1)*blocksize+1;
sub1(1:blocksize,1:blocksize) = origin(x:x+blocksize-1,y:y+blocksize-1);
values(i,j) = mean2(sub1);
end
end
embed_image = SaveSpace( origin , blocksize , MSB , count);
EnImage = Encipher( embed_image , key); %encipher
[AjImage,s] = Adjustment( EnImage , blocksize , values , MSB);
whole(:,:,chanal) = AjImage(:,:,1);
end
imwrite(whole,"apple-res.png","png");
for chanal = 1 : C
for i = 1 : m
for j = 1 : n
x = (i-1)*blocksize+1;
y = (j-1)*blocksize+1;
sub1(1:blocksize,1:blocksize) = whole(x:x+blocksize-1,y:y+blocksize-1,chanal);
value1 = mean2(sub1);
for p = x : x+blocksize-1
for q = y : y+blocksize-1
result1(p,q,chanal) = value1;
end
end
end
end
end
imwrite(result1,"thumbnail.png","png");
% for mm = 1 : 1 : 6
% name = strcat("trump\",char(mm+'0'),".jpg");
% whole = imread(name,"jpg");
% [M,N,C] = size(whole);
% blocksize = 16;
% MSB = 2;
% count = 20000;
% key = 1;
% m = M/blocksize;
% n = N/blocksize;
% values = zeros(m,n);%store the original average pixel of every block
% sub1 = zeros(blocksize);
% result1 = whole;
% result2 = whole;
% for chanal = 1 : C
% origin = whole(:,:,chanal);
% for i = 1 : m
% for j = 1 : n
% x = (i-1)*blocksize+1;
% y = (j-1)*blocksize+1;
% sub1(1:blocksize,1:blocksize) = origin(x:x+blocksize-1,y:y+blocksize-1);
% values(i,j) = mean2(sub1);
% end
% end
%
% embed_image = SaveSpace( origin , blocksize , MSB , count);
% EnImage = Encipher( embed_image , key); %encipher
% [AjImage,s] = Adjustment( EnImage , blocksize , values , MSB);
% whole(:,:,chanal) = AjImage(:,:,1);
% end
% name_res = strcat("trump\",char(mm+'0'),".png");
% imwrite(whole,name_res,"png");
% for chanal = 1 : C
% for i = 1 : m
% for j = 1 : n
% x = (i-1)*blocksize+1;
% y = (j-1)*blocksize+1;
% sub1(1:blocksize,1:blocksize) = whole(x:x+blocksize-1,y:y+blocksize-1,chanal);
% value1 = mean2(sub1);
% for p = x : x+blocksize-1
% for q = y : y+blocksize-1
% result1(p,q,chanal) = value1;
% end
% end
% end
% end
% end
% name_res = strcat("trump\th_",char(mm+'0'),".png");
% imwrite(result1,name_res,"png");
% end