Professional Documents
Culture Documents
0
0 1
p
p M
=
s s
v
1/
(2/ )
q
N
N
o
0
0 1
q
q N
=
s s
Cc gi tr B
pq
c gi l cc h s ca bin i DCT. DCT c th bin i
ngc c v bin i ngc ca n cho bi cng thc :
1 1
0 0
(2 1) (2 1)
cos cos
2 2
M N
mn p q pq
p q
m p n q
A B
M N
t t
o o
= =
+ +
=
vi
0 1
0 1
m M
n N
s s
s s
Trong :
1/
(2/ )
p
M
M
o
0
0 1
p
p M
=
s s
v
1/
(2/ )
q
N
N
o
0
0 1
q
q N
=
s s
Biu thc DCT ngc c th c xem xt khi coi rng mi ma trn A kch
thc MxN nh l tng ca MN hm c dng :
(2 1) (2 1)
cos cos
2 2
p q pq
m p n q
B
M N
t t
o o
+ +
Nhng hm ny c gi l nhng hm c s ca DCT. H s DCT B
pq
c th c xem nh trng s cho mi hm c s. Vi cc ma trn 8x8, 64
Nn nh S S Dng Matlap
Svth: Hong Cao phi-081481D
24
hm c s c minh ho bi nh sau:
nh 25 nh minh ha ma trn 8x8
2.3.2 Nn tn hao da vo DCT
Gii thut nn c tn hao c bit n nhiu nht c l l gii thut
dng DCT. y l gii thut c chun ha vi tn gi JPEG (ly t tn gi
ca t chc nh ra tiu chun nn ny: Joint Photographic Experts Groups
(Nhm lien kt cc chuyn gia x l nh). Chun JPEG c s dng m
ho nh a mc xm, nh mu. N khng cho kt qu n nh lm vi nh en
trng. Chun JPEG cung cp gii thut cho c hai loi nn l nn khng mt
mt thng tin v nn mt mt thng tin.
S khi ca gii thut nn v gii nn nh JPEG:
NH
GC
P
h
n
k
h
i
8x8
8x8
8x8
Lng
t ho
Bng
lng
t
......
M
ho
Bng
m
NH
NN
DCT
Nn nh S S Dng Matlap
Svth: Hong Cao phi-081481D
25
Hnh 2.6 S khi ca gii thut nn v gii nn nh JPEG
nn nh theo gii thut JPEG, ta chia nh thnh cc khi 8x8 (hoc
16x16). Mi khi 8x8 ny s c x l ring bit qua cc bc ca qu trnh
nn nh. u tin, ta thc hin bin i DCT thun i vi mi khi. Nh
chng ta bit, do cc in nh k cn nhau thng c tnh tng quan rt
cao, php bin i DCT thun c xu hng tp trung hu ht nng lng ca
bc nh vo trong mt vi h s DCT tn s thp. y l c s ta thc hin
nn nh. Vi mt khi nh kch thc 8x8 trch t nh ngun, hu ht cc h
s ca n u bng 0 hoc gn bng 0. Nh vy, ta c th khng cn biu din
cc h s ny khi truyn d liu nh i. Lu rng bn thn bin i DCT
khng lm mt mt thong tin ca nh gc, n ch chuyn cc thng tin ny v
mt dng khc m ta c th m ha mt cch hiu qu hn.
Sau khi qua b bin i DCT, mi h s trong s 64 h s bin i DCT
c lng t ha da vo mt bng gi tr lng t c thit k k lng.
Mt phng php lng t n gin c th dng l ch gi li mt vi h s
DCT tn s thp (cc h s c gi tr ln) cn tt c cc h s cn li gn bng
0. trong chun nn JPEG, mi h s DCT s c chia cho mt trng s v tr
tng ng trong mt ma trn lng t 8x8, sau lm trn v s nguyn gn
nht. Sau khi lng t ha, cc h s bin i DCT s c sp xp theo mt
chui zig-zag bt u t thnh phn DC, ri n thnh phn AC Cui cng
cc h s ny c chuyn thnh chui bit nh phn bng k thut m ha a
ra nh nn.
Nn nh S S Dng Matlap
Svth: Hong Cao phi-081481D
26
cng on gii m, b gii m s th hin qu trnh ngc li: Gii
m entropy, sau nhn cc h s thu c vi phn t tng ng ca ma trn
lng t, ri bin i ngc DCT ti to li nh ban u.
a. Phn khi
Chun nn JPEG phn nh ra cc khi 8x8. Cng on bin i nhanh
Cosin hai chiu cho cc khi 8x8 t ra hiu qu hn. Bin i Cosin cho cc
khi c cng kch c c th gim c mt phn cc tnh ton chung nh vic
tnh h s C
j
i
. Khi n=8 chng ta ch cn tnh h s C
j
i
cho 3 tng (8= 2
3
), s cc
h s l: 4 + 2 + 1 = 7.
Nu vi mt nh 1024x1024, php bin i nhanh Cosin mt chiu theo
hng ngang hoc hng dc ta phi qua 10 tng (1024 = 2
10
). S cc h s C
j
i
l: 512 + 256 + 128 + 64 + 32 + 16 + 8 + 4 + 2 + 1 = 1021. Thi gian tnh cc
h s C
j
i
vi ton b nh 1024x1024 ln gp 150 ln so vi thi gian tnh ton
cc h s ny cho cc khi.
Bin i Cosin i vi cc khi c kch thc nh s lm tng chnh
xc khi tnh ton vi s du phy tnh, gim thiu sai s do lm trn sinh ra.
Do cc im nh k cn c tng quan cao hn, do php bin i
Cosin cho tng khi nh s tp trung nng lng hn vo mt s t cc h s
bin i. Vic loi bt mt s h s nng lng thp trong cc khi ch to ra
mt mt thng tin cc b gip nng cao cht lng nh.
nh s c chia lm B khi vi:
B
N
B
M
l
N
k
M
B = =
|
.
|
\
|
|
.
|
\
|
' '
Cc khi c xc nh bi b s (m,n) vi m = [0..M
B
-1] v n=[0..N
B
-
1], y m ch th t ca khi theo chiu rng, n ch th t ca khi theo
chiu di. Phn khi thc cht l xc nh tng quan gia to ring trong
khi vi to thc ca im nh trong nh ban u. Nu nh ban u k hiu
Image[i,j] th ma trn biu din khi (m,n) l x[u,v]c tnh:
| | v nl u mk age v u x + + = , Im ] , [
Nn nh S S Dng Matlap
Svth: Hong Cao phi-081481D
27
16
) 1 2 (
16
) 1 2 (
) ,
7
0
7
0
(
4
) , (
2 2 1 1
2 1
1
2
2 1
2 1
H + H +
=
=
=
k n
Cos
k n
Cos k n
k
k
k X n n x
c c
b. Bin i
Bin i l mt cng on ln trong cc phng php nn s dng php
bin i.
Nhim v ca cng on bin i l tp trung nng lng vo mt s t
cc h s bin i.
Cng thc bin i cho mi khi l:
Trong
) 8 0 (
0
0
2
1
1
1
1
< <
=
=
k
k
khi
khi
k
c
) 8 0 (
0
0
2
1
2
2
2
< <
=
=
k
k
khi
khi
k
c
Thut ton bin i nhanh Cosin hai chiu cho mi khi trong trng
hp ny s bao gm 16 php bin i nhanh Cosin mt chiu. u tin, ngi
ta bin i nhanh Cosin mt chiu cho cc dy im nh trn mi hng. Ln
lt thc hin cho 8 hng. Sau em bin i nhanh Cosin mt chiu theo
tng ct ca ma trn va thu c sau 8 php bin i trn. Cng ln lt thc
hin cho 8 ct. Ma trn cui cng s l ma trn h s bin i ca khi tng
ng.
Trong s gii nn ta phi dng php bin i Cosin ngc. Cng
thc bin i ngc cho khi 8x8:
) 8 0 (
0
0
2
1
1
1
1
< <
=
=
k
k
khi
khi
k
c Trong
) 8 0 (
0
0
2
1
2
2
2
< <
=
=
k
k
khi
khi
k
c
c. Lng t ha
Khi lng t ho trong s nn ng vai tr quan trng v quyt
16
) 1 2 (
16
) 1 2 (
) ,
7
0
7
0
(
4
) , (
2 2 1 1
2 1
1 2
2 1
2 1
H + H +
=
=
=
k n
Cos
k n
Cos n n
n n
x k k X
k k
c c
Nn nh S S Dng Matlap
Svth: Hong Cao phi-081481D
28
nh t l nn ca chun nn JPEG. u vo ca khi lng t ho l cc ma
trn h s bin i Cosin ca cc khi im nh.
gim s b lng t, ngi ta tm cch quy cc h s cc khi v cng
mt khong phn b. Chun nn JPEG ch s dng mt b lng t ho. Gi
s rng cc h s u c hm tnh xc sut xut hin nh nhau. Chng ta s
cn chnh li h s y
j
bng php gn:
j
j j
j
y
y
o
=
Vi
j
l trung bnh cng ca h s th j.
o
j
l lch c bn ca h s th j.
d. Nn
u vo ca khi nn gm hai thnh phn: thnh phn cc h s mt
chiu v thnh phn cc h s xoay chiu.
Thnh phn cc h s mt chiu C
i
(0,0) vi i = 0,1,..., 63 cha phn
ln nng lng tn hiu hnh nh. Ngi ta khng nn trc tip cc gi tr
C
i
(0,0) m xc nh lch ca C
i
(0,0):
) 0 , 0 ( ) 0 , 0 (
1 i i i
C C d =
+
d
i
c gi tr nh hn nhiu so vi C
i
nn trong biu din du phy ng theo
chun IEEE754 thng cha nhiu chui bit 0 nn c th cho hiu sut nn cao
hn. Gi tr C
0
(0,0) v cc lch d
i
c ghi ra mt tp tm. Tp ny c
nn bng phng php nn Huffman.
Thnh phn cc h s xoay chiu C
i
(m,n) vi 1 s m s 7, 1 s n s 7
cha cc thng tin chi tit ca nh. nng cao hiu qu nn cho mi b h s
trong mt khi ngi ta xp li chng theo th t ZigZag. C th hnh dung
hnh ZigZag nh bng trang bn.
Tc dng ca sp xp li theo th t ZigZag l to ra nhiu lot h s
ging nhau. Chng ta bit rng nng lng ca khi h s gim dn t gc trn
bn tri xung gc di bn phi nn vic sp xp li cc h s theo th t
ZigZag s to iu kin cho cc h s xp x nhau (cng mc lng t) nm
trn mt dng.
Nn nh S S Dng Matlap
Svth: Hong Cao phi-081481D
29
Mi khi ZigZag ny c m ho theo phng php RLE. Cui mi
khi u ra ca RLE, ta t du kt thc khi EOB (End Of Block).
Sau , cc khi c dn li v m ho mt ln bng phng php m
Huffman. Nh c du kt thc khi nn c th phn bit c hai khi cnh
nhau khi gii m Huffman. Hai bng m Huffman cho hai thnh phn h s tt
nhin s khc nhau.
c th gii nn c, chng ta phi ghi li thng tin nh: kch thc
nh, kch thc khi, ma trn T, lch tiu chun, cc mc to li, hai bng
m Huffman, kch thc khi nn mt chiu, kch thc khi nn xoay chiu...
v ghi ni tip vo hai file nn ca hai thnh phn h s.
Tm li, DCT lm gim tng quan khng gian ca thng tin trong
block (khi). iu cho php biu din thch hp min DCT do cc h s
DCT c xu hng c phn d tha t hn. iu ny c ngha l DCT gi mt
phn ln nng lng tn hiu vo cc thnh phn bin i c tn s tng i
thp lu tr hoc truyn dn, to 0 v cc gi tr rt thp i vi thnh phn
tn s cao. Nh c tnh ca h thng nhn ca mt ngi, cc h s DCT c
th c m ha ph hp, ch cc h s DCT quan trng nht mi c m
ha v truyn i. DCT thun kt hp vi DCT nghch s khng cho tn tht
0
2 3 9 10 20 21 35
1 4 8 11 19 22 34 36
5 7 12 18 23 33 37 48
6 13 17 24 32 38 47 49
14 16 25 31 39 46 50 57
15 26 30 40 45 51 56 58
27 29 41 44 52 55 59 62
28 42 43 53 54 60 61 63
Nn nh S S Dng Matlap
Svth: Hong Cao phi-081481D
30
nu di t m ca h s l 13 n 14 bits cho tn hiu video u vo c s
ha bng cc mu di 8 bit. Nu h s c lng t ha bng 11 bit (hoc
ngn hn), th nn bng DCT s c tn hao.
Nn nh S S Dng Matlap
Svth: Hong Cao phi-081481D
31
Chng 3
CHNG TRNH NN NH
3.1 Giao din chng trnh
nh 3 Giao din chng trnh
3.2 M hnh nn
3.3 Qu trnh nn v gii nn DCT
Khi chn nh gc a vo nn DCT, trc khi nn ta kim tra nh c
phi l nh xm khng. Nu khng phi th chuyn n v dng nh xm sau
thc hin cc bc nn nh nh sau:
B1: Chuyn d liu nh sang kiu double.
B2: Chia nh gc ra thnh nhiu khi (nh con) kch thc 8x8.
B3: Bin i thun DCT i vi mi khi nh 8x8. Ta c th to ma
trn bin i DCT A kch thc NxN bng hm: A=dctmtx(N).
V d: A=dctmtx(8) Ma trn bin i DCT A c gi tr:
0.3536 0.3536 0.3536 0.3536 0.3536 0.3536 0.3536 0.3536
0.4904 0.4157 0.2778 0.0975 -0.098 -0.278 -0.416 -0.49
0.4619 0.1913 -0.191 -0.462 -0.462 -0.191 0.1913 0.4619
0.4157 -0.098 -0.49 -0.278 0.2778 0.4904 0.0975 -0.416
Lng t
ha
nh Gc
nh con 8x8
nh con 8x8
nh con 8x8
nh con 8x8
DCT
M ha
nh nn
Bng lng t ha
Nn nh S S Dng Matlap
Svth: Hong Cao phi-081481D
32
0.3536 -0.354 -0.354 0.3536 0.3536 -0.354 -0.354 0.3536
0.2778 -0.49 0.0975 0.4157 -0.416 -0.098 0.4904 -0.278
0.1913 -0.462 0.4619 -0.191 -0.191 0.4619 -0.462 0.1913
0.0975 -0.278 0.4157 -0.49 0.4904 -0.416 0.2778 -0.098
B4: Lng t ha cc h s DCT.
Thc hin lng t ha bng cch nhn cc khi nh 8x8 bin i
DCT vi bng lng t ha, y n l mt mt n (mask) ma trn 8x8. Mc
ch ca bc ny l nhm ch gi li nhng phn t mang nng lng ca
khi nh hay ni chnh xc l 10 phn t u tin ca khi nh 8x8.
Mt n (mask) ma trn 8x8 gi li 10 phn t:
1 1 1 1 0 0 0 0
1 1 1 0 0 0 0 0
1 1 0 0 0 0 0 0
1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
B5: Gii m cho ra nh (nn + gii nn DCT).
V d: Thc hin nn v gii nn DCT i vi nh Cameraman.tif.
B1 Chuyn d liu nh sang kiu double.
I = imread('cameraman.tif');
I = im2double(I);
B2: Chia nh gc ra thnh nhiu khi: (nh con) kch thc 8x8. Mt
khi nh 8x8 c chia c gi tr pixel:
0.6118 0.6235 0.6196 0.6078 0.6196 0.6118 0.6235 0.6196
0.6275 0.6039 0.6157 0.6196 0.6157 0.6235 0.6196 0.6196
0.6118 0.6235 0.6196 0.6078 0.6196 0.6118 0.6235 0.6196
0.6275 0.6039 0.6157 0.6196 0.6157 0.6235 0.6196 0.6196
0.6118 0.6 0.6078 0.6235 0.6235 0.6078 0.6118 0.6078
0.6078 0.6078 0.6078 0.6157 0.6118 0.6235 0.5961 0.6196
Nn nh S S Dng Matlap
Svth: Hong Cao phi-081481D
33
0.6118 0.6 0.6157 0.6118 0.6 0.6078 0.6039 0.6078
0.6235 0.6235 0.6118 0.6196 0.6118 0.6235 0.6157 0.6314
B3: Bin i DCT
4.9211 -0.008 0.0026 0.0018 0.0093 0.0041 0.0101 -0.002
0.015 -0.003 0.0021 0.0028 -0.008 0.0008 -0.009 0.0157
0.008 0.002 0.0132 -0.006 -0.009 -0.006 -0.002 -0.003
-0.02 0.0003 -0.012 -0.002 0.0036 -0.004 0.0021 -0.001
0.0132 -0.002 0.0013 0.0024 0.0034 0.0011 -0.008 0.0021
-0.008 0.0036 0.0044 -0.006 -0.01 0.0002 0.0015 0.0056
0.0078 -0.003 0.004 -0.005 -0.008 -0.021 -0.008 -0.003
-0.011 0.0039 -0.005 -0.008 -0.005 -0.002 -0.015 0.0123
B4: Lng t ha
4.9211 -0.008 0.0026 0.0018 0 0 0 0
0.015 -0.003 0.0021 0 0 0 0 0
0.008 0.002 0 0 0 0 0 0
-0.02 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
B5: Gii m
0.6158 0.6151 0.6146 0.6148 0.6158 0.617 0.6179 0.6183
0.6179 0.6174 0.6169 0.6172 0.6183 0.6195 0.6204 0.6208
0.6185 0.6181 0.6178 0.6182 0.6193 0.6206 0.6214 0.6218
0.6151 0.6148 0.6146 0.6152 0.6163 0.6175 0.6182 0.6184
0.6103 0.6101 0.61 0.6105 0.6116 0.6125 0.613 0.6131
0.609 0.6088 0.6087 0.6092 0.61 0.6106 0.6108 0.6108
0.6125 0.6123 0.6121 0.6125 0.6131 0.6134 0.6134 0.6131
0.6167 0.6165 0.6163 0.6166 0.617 0.6172 0.617 0.6166
nh cui cng cho ra cc thng s gi tr pixel nh bng trn v kt qu
thu c hnh nh bn di.
Nn nh S S Dng Matlap
Svth: Hong Cao phi-081481D
34
a) b)
nh 32 a) nh gc; b) nh nn
3.4 Cc on m lnh
3.4.1 Chn nh
function chonanh_Callback(hObject, eventdata, handles)
[filename,pathname]=uigetfile({'*.tif;*.bmp;*.gif;*.jpg'},'pick an image file');
S=imread([pathname,filename]);
axes(handles.anh1);
imshow(S);
guidata(hObject, handles);
3.4.2 Nn DCT
function nen_Callback(hObject, eventdata, handles)
S=handles.S;
axes(handles.anh2);
if size(S,3)==3
S=rgb2gray(S);
end
I = im2double(S);
T = dctmtx(8);
B = blkproc(I,[8 8],'P1*x*P2',T,T');
mask = [1 1 1 1 0 0 0 0
Nn nh S S Dng Matlap
Svth: Hong Cao phi-081481D
35
1 1 1 0 0 0 0 0
1 1 0 0 0 0 0 0
1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0];
B2 = blkproc(B,[8 8],'P1.*x',mask);
I2 = blkproc(B2,[8 8],'P1*x*P2',T',T);
imshow(I2)
handles.I2=I2;
guidata(hObject, handles);
3.4.3 Xem Pixel nh gc
function pixel_goc_Callback(hObject, eventdata, handles)
S=handles.S;
axes(handles.anh3);
if size(S,3)==3
S=rgb2gray(S);
end
I=im2double(S);
I1=imresize(I,[8 8]);
himage=imshow(I1);
hfigure=figure;
hpanel=impixelregionpanel(hfigure,himage);
3.4.4 Xem Pixel nh nn
function pixel_nendct_Callback(hObject, eventdata, handles)
S=handles.S;
axes(handles.anh4);
if size(S,3)==3
S=rgb2gray(S);
end
Nn nh S S Dng Matlap
Svth: Hong Cao phi-081481D
36
I=im2double(S);
I1=imresize(I,[8 8]);
T=dct2(I1);
himage=imshow(T);
hfigure=figure;
hpanel=impixelregionpanel(hfigure,himage);
3.4.5 Xem gi tr tng Pixel
function ketqua_Callback(hObject, eventdata, handles)
S=handles.S;
if size(S,3)==3
S=rgb2gray(S);
end
I=im2double(S);
A=imresize(I,[8 8]);
p=get(handles.hang,'string'); %gn p gi tr chui trong handles.hang
q=get(handles.cot,'string'); %gn q gi tr chui trong handles.cot
p=str2num(p); %chuyn t gi tr chui sang gi tr s
q=str2num(q);
p=round(p); %lm trn gi tr s
q=round(q);
c=0;
p1=0;
q1=0;
goc=0;
if (p>0)&(q>0)
if (p<=8)&(q<=8)
for m=0:7
for n=0:7
B=A(m+1,n+1)*cos((pi*(2*m+1)*(p-1))/16)*cos((pi*(2*n+1)*(q-1))/16);
c=B+c;
end
Nn nh S S Dng Matlap
Svth: Hong Cao phi-081481D
37
end
p1=p;
q1=q;
goc=A(p1,q1);
end
end
if (p-1)==0
ap=sqrt(1/8);
else
ap=sqrt(2/8);
end
if (q-1)==0
aq=sqrt(1/8);
else
aq=sqrt(2/8);
end
ketqua=ap*aq*c;
h=num2str(ketqua); %chuyn t gi tr s sang gi tr chui
set(handles.ketqua,'string',h); %hin th gi tr ca h ln handles.ketqua
goc=num2str(goc);
set(handles.goc,'string',goc);
3.5 Kt qu khi chy chng trnh
3.5.1 Chn nh
3.5.2 Nn DCT
3.5.3 Pixel nh gc
3.5.4 Pixel DCT
3.5.6 Kt qu