Professional Documents
Culture Documents
Giao Trinh Xu Ly Anh
Giao Trinh Xu Ly Anh
Giao Trinh Xu Ly Anh
GIO TRNH MN HC
X L NH
Ngi son : TS. NNG TON,
TS. PHM VIT BNH
LI NI U
Email: pvbinh@ictu.edu.vn
MC LC
LI NI U ....................................................................................................................................................................... 2
MC LC .................................................................................................................................................................................. 4
Chng 1: TNG QUAN V X L NH ..................................................................................... 7
1.1. X L NH, CC VN C BN TRONG X L NH .................. 7
1.1.1. X l nh l g? ............................................................................................................................................ 7
1.1.2. Cc vn c bn trong x l nh ........................................................................................ 7
1.1.2.1 Mt s khi nim c bn ........................................................................................................ 7
1.1.2.2 Nn chnh bin dng .................................................................................................................... 8
1.1.2.3 Kh nhiu ................................................................................................................................................. 9
1.1.2.4 Chnh mc xm: ............................................................................................................................... 9
1.1.2.5 Trch chn c im .................................................................................................................... 9
1.1.2.6 Nhn dng ............................................................................................................................................ 10
1.1.2.7 Nn nh ................................................................................................................................................... 11
1.2. THU NHN V BIU DIN NH ........................................................................................... 11
1.2.1. Thu nhn, cc thit b thu nhn nh.................................................................................. 11
1.2.2. Biu din nh .............................................................................................................................................. 12
1.2.2.1. M hnh Raster ............................................................................................................................. 12
1.2.2.2. M hnh Vector ............................................................................................................................ 13
Chng 2: CC K THUT NNG CAO CHT LNG NH ................... 14
2.1. CC K THUT KHNG PH THUC KHNG GIAN .......................... 14
2.1.1. Gii thiu......................................................................................................................................................... 14
2.1.2. Tng gim sng ............................................................................................................................... 14
2.1.3. Tch ngng ................................................................................................................................................ 15
2.1.4. B cm ............................................................................................................................................................... 15
2.1.5. Cn bng histogram ............................................................................................................................ 16
2.1.6. K thut tch ngng t ng ................................................................................................ 17
2.1.7. Bin i cp xm tng th ........................................................................................................... 18
2.2. CC K THUT PH THUC KHNG GIAN ..................................................... 20
2.2.1. Php cun v mu ................................................................................................................................. 20
4
Chng 1:
TNG QUAN V X L NH
1.1. X L NH, CC VN C BN TRONG X L NH
1.1.1. X l nh l g?
Con ngi thu nhn thng tin qua cc gic quan, trong th gic
ng vai tr quan trng nht. Nhng nm tr li y vi s pht trin ca
phn cng my tnh, x l nh v ho pht trin mt cch mnh m
v c nhiu ng dng trong cuc sng. X l nh v ho ng mt vai
tr quan trng trong tng tc ngi my.
Qu trnh x l nh c xem nh l qu trnh thao tc nh u vo
nhm cho ra kt qu mong mun. Kt qu u ra ca mt qu trnh x l
nh c th l mt nh tt hn hoc mt kt lun.
nh
nh
Tt hn
X L NH
Kt lun
Hnh 1.1. Qu trnh x l nh
nh c th xem l tp hp cc im nh v mi im nh c xem
nh l c trng cng sng hay mt du hiu no ti mt v tr no
ca i tng trong khng gian v n c th xem nh mt hm n bin
P(c1, c2,..., cn). Do , nh trong x l nh c th xem nh nh n chiu.
S tng qut ca mt h thng x l nh:
H quyt nh
Thu nhn nh
(Scanner,
Camera,Sensor)
Tin x l
Trch chn
c im
Hu
x l
i snh rt
ra kt lun
Lu tr
1.1.2. Cc vn c bn trong x l nh
1.1.2.1 Mt s khi nim c bn
* nh v im nh:
7
Pi
nh thu nhn
nh mong mun
f ( Pi ) Pi '
i =1
min
i =1
i =1
cho min
=0
=0
b
1
=0
c1
n
n
n
n
2
'
+
+
=
a
x
b
x
y
c
x
1 i 1 i i 1 i x i x i
i =1
i =1
i =1
i =1
n
n
n
n
2
'
+
+
=
a
x
y
b
y
c
y
1 i i 1 i 1 i y i x i
i =1
i =1
i =1
i =1
n
n
n
'
a1 x i + b1 y i + nc1 = x i
i =1
i =1
i =1
11
12
BMP
PCC
..
.
Ca s
DIB
Thay i
Vecter
ha
VECTOR
Raster
ha
RASTER
13
Chng 2:
I=
2
0
2
1
0
0
0
1
2
1
4
7
0
1
1
h(g)
14
2.1.4. B cm
K thut nhm gim bt s mc xm ca nh bng cch nhm li s
mc xm gn nhau thnh 1 nhm
Nu ch c 2 nhm th chnh l k thut tch ngng. Thng thng
c nhiu nhm vi kch thc khc nhau.
tng qut khi bin i ngi ta s ly cng 1 kch thc
bunch_size
h(g)
0
I [i,j] = I [i,j]/ bunch - size * bunch_size (i,j)
V d: B cm nh sau vi bunch_size= 3
I=
1
2
7
4
2
1
2
1
4
3
6
2
6
4
9
1
7
5
1
2
15
0
0
6
3
Ikq =
0
0
0
0
3
3
6
0
6
3
9
0
6
3
0
0
Gi s, ta c nh
new_level ~ s mc xm ca nh cn bng
TB =
mn
~ s im nh trung bnh ca mi mc xm
new _ level
ca nh cn bng
g
t ( g ) = h(i )
i =0
~ s im nh c mc xm g
Xc nh hm f: g a f(g)
t(g)
1
TB
10
11
14
15
17
19
20
16
0
1
Ikq = 3
2
1
0
1
0
2
1
2
1
2
2
3
0
3
2
0
1
Ch : nh sau khi thc hin cn bng cha chc l cn bng "l tng
"
I ~ kch thc m n
G ~ l s mc xm ca nh k c khuyt thiu
t(g) ~ s im nh c mc xm g
m( g ) =
1 g
i.h(i)
t ( g ) i =0
~ mmen qun tnh TB c mc xm g
Hm f: g a f (g )
f (g) =
t(g )
[m( g ) m(G 1)]2
mxn t ( g )
Tm sao cho:
f ( ) = max { f ( g )}
0 g <G 1
V d: Tm ngng t ng ca nh sau
0
1
2
3
4
5
0
0
1
2
3
4
I= 0
0
0
1
2
3
0
0
0
0
1
2
0
0
0
0
0
1
Lp bng
g h(g) t(g) g.h(g)
ih(i)
m(g)
f(g)
i =0
15
15
1.35
20
0,25
1.66
17
24
13
0,54
1.54
27
22
0,81
1.10
29
30
1,03
0.49
30
35
1,16
h(g)
g + 1 nu g 2
f(g)=
nu g = 3
g 1 nu g > 3
Bc 1: V Histogram ca nh c
f(g)
18
Bc 2: V th hm f(g)
h(g)
0
Bc 3: V Histogram ca nh mi
t q = f(g)
h(q) = card ({P| I(P) = q})
= card ({P| I(P) = f(g)})
= card ({P| g = f-1 (I(P))})
=
h(i)
i f 1 ( q )
h(g) f(g)
0
Histogram ca nh mi thua c bng cch chng hnh v tnh gi tr
theo cc q (= f(g)) theo cng thc tnh trn. Kt qu cui thu c sau php
quay gc 90 thun chiu kim ng h.
19
I T ( x, y ) =
i =0
m 1
Hoc
I T ( x, y ) =
i =0
n 1
I (x + i, y + j ) * T (i, j )
(2.1)
j =0
n 1
I (x i, y j )* T (i, j )
(2.2)
j =0
VD:
I=
1
2
4
1
7
2
1
5
2
2
T=
1
1
I T ( x, y ) =
i =0
4
1
5
1
2
5
4
8
1
1
8
2
8
4
5
7
2
2
4
2
= I ( x, y ) + I ( x + 1, y + 1)
2
7
3
6
8
9
7
12
10
4
*
*
IT= 6
3
*
6
4
*
6
2
*
12
6
*
12
6
*
*
*
*
*
7
*
10
IT= *
*
*
12
12
6
4
12
6
7
6
3
6
6
4
9
6
2
20
* Nhn xt:
- Trong qu trnh thc hin php cun c mt s thao tc ra ngoi nh,
nh khng c xc nh ti nhng v tr dn n nh thu c c kch
thc nh hn.
- nh thc hin theo cng thc 2.1 v 2.2 ch sai khc nhau 1 php
dch chuyn n gin ta s hiu php cun l theo cng thc 2.1
1
1
1
1
1
1
1
1
1
2
31
5
2
2
4
1
5
1
2
5
4
8
1
1
8
2
8
4
5
7
2
2
4
2
55
52
65
58
45
34
46
35
*
*
*
*
I T1 = 29
*
*
27
*
*
35
*
*
35
*
*
*
*
*
*
*
*
I=
-1
4
-1
0
-1
0
21
*
*
*
*
*
*
*
*
*
*
*
*
2.2.3. Lc trung v
* nh ngha 2.1 (Trung v)
Cho dy x1; x2...; xn n iu tng (gim). Khi trung v ca dy k
hiu l Med({xn}), c nh ngha:
n
+ Nu n l x + 1
2
n
+ Nu n chn: x hoc x + 1
2
* Mnh 2.1
n
xx
i =1
Chng minh
+ Xt trng hp n chn
t M =
n
2
Ta c:
n
i =1
i =1
i =1
x xi = x xi + x x M +i
M
i =1
i =1
= ( x xi + x M + i x ) x M + i xi
M
= [(x M +1 x M ) + ( x M xi )]
i =1
i =1
i =1
22
= xi Med ({xi })
i =1
+ Nu n l:
B sung thm phn t Med ({xi }) vo dy. Theo trng hp n chn
ta c:
n
xx
i =1
xx
i =1
min ti Med({xn})
* K thut lc trung v
Gi s ta c nh I ngng ca s W(P) v im nh P
Khi k thut lc trung v ph thuc khng gian bao gm cc bc
c bn sau:
+ Bc 1: Tm trung v
{I(q)| q W(P)} Med (P)
+ Bc 2: Gn gi tr
I ( P)
I ( P) =
Med ( P )
I ( P) Med ( P )
Nguoclai
V d:
I=
1
4
4
2
2
16
2
1
3
2
1
2
2
1
1
1
W(3 3); = 2
1
2
3
2
4
2
2
1
Ikq = 4
2
1
1
2
1
2
1
Gi tr 16, sau php lc c gi tr 2, cc gi tr cn li khng thay i
gi tr.
23
* Mnh 2.2
n
( x xi )
i =1
min ti AV ({xn })
Chng minh:
t: ( x) =
(x x )
i =1
Ta c:
n
( x ) = 2 ( x x i )
i =1
' ( x) = 0
n
( x xi ) = 0
i =1
x=
1 n
xi = AV ({xi })
n i =1
''
Mt khc, ( x) = 2n > 0
min ti x = AV ({xi })
K thut lc trung bnh
Gi s ta c nh I, im nh P, ca s W(P) v ngng . Khi k
thut lc trung bnh ph thuc khng gian bao gm cc bc c bn sau:
+ Bc 1: Tm trung bnh
{I(q)| q W(P)} AV(P)
24
+ Bc 2: Gn gi tr
I ( P) AV ( P)
I ( P)
I ( P) =
AV ( P)
Nguoclai
V d:
1
4
4
2
I=
2
16
2
1
3
2
1
2
W(3 3); = 2
1
2
3
4
3
2
Ikq = 4
2
1
2
1
2
Gi tr 16 sau php lc
nguyn sau php lc.
2
1
1
1
2
1
1
1
trung bnh c gi tr 3, cc gi tr cn li gi
I ( P)
I ( P) =
AV k ( P )
Nguoclai
V d:
I=
1
4
4
2
2
16
2
1
3
2
1
2
2
1
1
1
W(3 3); = 2; k = 3
25
1
4
4
2
Ikq =
2
8
2
1
3
2
1
2
2
1
1
1
* Nhn xt:
- Nu k ln hn kch thc ca s th k thut chnh l k thut lc
trung bnh
- Nu k= 1 th nh kt qu khng thay i
Cht lng ca k thut ph thuc vo s phn t la chn k.
V d: Ta c tp X nh sau:
x
X = 0
0
0
x
0
x
0
x
x
x
x
0
x
x
0
x
x
x
0
0 B =
0
0
26
x
0
XB=
0
0
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
0
v X\B =
x
x
0
0
0
0
0
0
x
0
x
0
x
0
0
x
x
0
0
0
0
0
0
0
0
OPEN(X,B) = (X\B) B = 0
0
0
x
0
x
0
x
x
0
x
x
x
0
0
x
0
0
CLOSE(X,B) = (X B) \ B = 0
x
x
x
x
x
x
x
x
x
x
x
x
0
x
x
0
0
X \ B X \ B B
X B X B
(ii) B B'
X \ B X \ B' X
X B X B
X
27
Chng minh:
(i) X B =
UB
xX
UB
= X ' B
xX '
X \ B = {x / Bx X } {x / Bx X '} = X \ B
(ii) X B =
UB
xX
U B'
= X B'
xX
Theo nh ngha:
X \ B = {x / B' x X } {x / Bx X } = X \ B .
*Mnh 2.4 [Tnh phn phi vi php ]:
(i) X (B B') = (X B) (X B')
(ii) X\ (B B') = (X \ B) (X \B')
Chng minh:
(i) X (B B) = ( X B) (X B)
Ta c: B B B
X (B B) X B
Tng t:
X ( B B) X B
X (B B) (X B) (X B)
(2.3)
Mt khc,
y X (B B) x X sao cho y (B B)x
y Bx
y Bx
yXB
y X B
y (X B) (X B)
X (B B) (X B ) (X B)
(2.4)
T (2.3) v (2.4) ta c: X (B B) = (X B) (X B)
(ii) X \ (B B) = (X \ B) (X \ B)
Ta c: B B B
X \ (B B) X \ B
Tng t : X \ (B B) X \ B
X \ (B B) (X \ B) ( X \ B)
(2.5)
28
Mt khc,
x (X \ B) (X \ B)
Bx X
Suy ra, x X \ B
Bx X
x X \ B
( B B)x X
x X \ (B B)
X \ (B B) (X \ B) (X \ B)
(2.6)
X YX
(X Y) \ B X \ B
Tng t:
(X Y) \ B Y \ B
(X Y) \ B (X \ B) (Y \ B)
(2.7)
Mt khc,
x (X \ B) (Y \ B)
Suy ra x X \ B
xY\B
Bx X
Bx Y
Bx X Y
x ( X Y) \ B
(X Y) \ B (X \ B) (Y \ B)
(2.8)
29
Chng minh:
(i) (X B) B' = X (B' B)
Ta c, (X B) B' = ( U B x ) B'
xX
U (B
B' ) =
x X
U (B B )
'
x X
= X (B' B)
(i) (X \ B) \ B' = X \ (B B')
Trc ht ta i chng minh: B x' X \ B ( B ' B) x X
Tht vy, do B x' X \ B nn y B x' yX \ B
By X
UB
yBx'
( B ' B) x X
Mt khc, ( B ' B) x X ( B x' B) X
UB
yBx'
y B x' ta c By X
hay y B x' ta c y X \ B
Do , B x' X \ B
Ta c, (X \ B) \ B' = {x / B x X } \ B'
= {x/ B x' X \ B}
= {x/ ( B ' B) x X} (do chng minh trn)
= X \ (B B') .
* nh l 2.1 [X b chn bi cc cn OPEN v CLOSE]
Gi s, X l mt i tng nh, B l mu, khi , X s b chn trn
bi tp CLOSE ca X theo B v b chn di bi tp OPEN ca X theo B.
Tc l:
(X B) \ B X (X \ B) B
30
Chng minh:
Ta c: x X Bx X B
(V X B =
UB
x X
x (X B) \ B
(X B) \ B X
(2.9)
Mt khc,
y (X \ B) B, suy ra:
x X \ B sao cho y Bx
(V (X\B) B =
UB
xXB
Bx X y X
Suy ra: X (X \ B) B
(2.10)
T (2.9) v (2.10) Ta c: (X B) \ B X (X \ B) B .
*H qu 2.1 [Tnh bt bin] :
(i) ((X B) \B) B = X B
(ii) ((X \ B) B) \ B = X\B
Chng minh:
(i) Tht vy, t nh l 2.1 ta c X (X B) B
X B ((X B) \B) B (do tnh cht gia tng) (2.11)
Mt khc, cng t nh l 2.1 ta c (X \ B) B X X
Do , thay X bi X B ta c, ((X B) \B) B X B (2.12)
T (2.11) v (2.12) Ta c: ((X B) \B) B = X B
(ii) Tht vy, t nh l 2.1 ta c (X \ B) B X
((X \ B) B) \ B X\B (do tnh cht gia tng) (2.13)
Mt khc, cng t nh l 2.1 ta c X (X B) B X
Do , thay X bi X \ B ta c, X\B ((X \ B) B) \ B (2.14)
T (2.13) v (2.14) Ta c: ((X \ B) B) \ B = X\B (pcm).
31
Chng 3:
32
* Nhn xt:
Tuy ta ni l ly o hm nhng thc cht ch l m phng v xp x
o hm bng cc k thut nhn chp (cun theo mu) v nh s l tn hiu
ri rc nn o hm khng tn ti.
V d: Vi dx = dy = 1, ta c:
f
x f (x + 1, y ) f (x, y )
f
f (x, y + 1) f (x, y )
y
v hng y l B=
1
Chng hn:
0
0
I=
0
0
0
3
3
3
0
3
3
3
0
3
3
3
3
3
*
0
0
*
0
0
*
Ta c,
IA=
0
0
*
0
0
*
*
*
*
* ; I B= 0
*
0
*
*
0
*
I A + I B= 3
3
*
0
*
0
*
*
*
33
0
0
0
0
0
0
-10 -10
-15 -15
*
*
*
*
-10 -10
-5 -5
*
*
*
*
*
*
*
*
*
*
*
*
15 15 10 5
0
0
0
0
-15 -15 -10 -5
*
*
*
*
*
*
*
*
*
*
*
*
I=
I Hx =
0
5
5
5
0
0
0
5
5
5
0
0
0
0
0
0
0
0
*
*
0
0
*
*
0
5
5
5
0
0
0
5
5
5
0
0
34
15
0
I Hx + I Hy =
15 0 -5
0 -15 -15
*
*
*
*
*
*
*
*
*
*
*
*
35
I H
i =1
2 f 2 f
f = 2 + 2
x
y
Ta c:
2 f
f
= ( f ( x + 1, y ) f ( x, y ) )
2
x
x x x
[ f ( x + 1, y ) f ( x, y )] [ f ( x, y ) f ( x 1, y )]
f ( x + 1, y ) 2 f ( x, y ) + f ( x 1, y )
Tng t,
2 f
f
( f ( x, y + 1) f ( x, y ) )
=
y 2 y y y
[ f ( x, y + 1) f ( x, y )] [ f ( x, y ) f ( x, y 1)]
f ( x, y + 1) 2 f ( x, y ) + f ( x, y 1)
2
0 1 0
H = 1 4 1
0 1 0
0 1 0
1 1 1
1 2 1
H1 = 1 4 1 H 2 = 1 8 1 H 3 = 2 4 2
0 1 0
1 1 1
1 2 1
VD:
I=
37
P3
P2
P1
P4
P0
P5
P6
P7
*i tng nh
Hai im Ps, Pe E, E hoc c gi l 8-lin thng (hoc 4lin thng) trong E nu tn ti tp cc im c gi l ng i
(io,jo)...(in,jn) sao cho (io,jo)= Ps, (in,jn)= Pe, (ir,jr) E v (ir,jr) l 8-lng ging
(hoc 4-lng ging tng ng) ca (ir-1,jr-1) vi r = 1,2,...,n
Nhn xt: Quan h k-lin thng trong E (k=4,8) l mt quan h phn x,
i xng v bc cu. Bi vy l mt quan h tng ng. Mi lp
tng ng c gi l mt thnh phn k-lin thng ca nh. V sau ta s
gi mi thnh phn k-lin thng ca nh l mt i tng nh.
38
Chu tuyn C
Chu tuyn C
Chu tuyn C
40
42
pdir
im trng trc
Trng so vi en mi
43
Chng 4:
a) nh gc
b) nh xng
Hnh 4.1. V d v nh v xng
44
45
46
(4.1)
(4.2)
(4.3)
(4.4)
(4.5)
(4.6)
(4.7)
: l hm hiu chnh.
D thy nu ngng T cng ln th cng th s lng im tham gia
trong xng Vonoroi cng t (Hnh 4.2).
a)
c)
b)
d)
48
1 t
3
1
CH(SR)
CH(SL)
11
9
10
2
5
49
p8
t
p6
v4
v3
v2
p7
p10
p1
v1
p4
v6
Cc im thuc
Si-1
p9
p2
t
p5
p3
50
Begin
i:=0; Si:=rng;
While (i<imax Si straight_line) do
Begin
(*Khi to s Voronoi cho n khi n cha t nht mt nh*)
increment i;
GetScanLine Li;
Vor(Si) = VoroPreScan(Vor(Si-1, Li));
End
While (i < imax) do
Begin
Increment i;
GetScanLine Li;
Vor(Li) := cc ng trung trc sinh bi cc im sinh thuc Li
Vor(Si) := VoroLink(Vor(Si-1), Vor(Li));
End
End.
Gi s xt trn h to thc. nh vo c qut t di ln. To
y (bin i) tng ng vi tng dng qut c tng dn theo tng dng.
Trong th tc trn, hm quan trng nht l hm VoroLink, hm ny thc
hin vic trn s Voronoi ca Li-1 dng c qut trc vi s
Voronoi ca dng hin ti th i. Trong vng lp trn, hm VoroPreScan l
mt bin th ca hm VoroLink, c nhim v khi to s Voronoi v
thot khi vng lp ngay khi n thnh lp c s Voronoi cha t nht
mt nh. Hm VoroLink thc hin vic trn hai s Voronoi Vor(Si-1) v
Vor(Li) vi nhau thnh Vor(Si).
51
Chng 5:
CC K THUT HU X L
h>
Bc 1: Chn ngng .
Bc 2: Tm khong cch ln nht t ng cong ti on thng
ni hai u on ng cong h.
Bc 3: Nu h th dng.
Bc 4: Nu h > th gi li im t cc i ny v quay tr li
bc 1.
Nhn xt: Thut ton ny t ra thun li i vi cc ng cong thu nhn
c m gc l cc on thng, ph hp vi vic n gin ho trong qu
trnh vct cc bn v k thut, s thit k mch in v.v..
5.1.2.2. Chng trnh
//Hm tnh ng cao t dinh n on thng ni hai im dau, cuoi
float Tinhduongcao (POINT dau, POINT cuoi, POINT dinh)
{
floot h;
tnh ng cao
returm h ;
}
//Hm quy nhm nh du loi b cc im trong ng cong
void DPSimple(POINT *pLINE,int dau,int cuoi,BOOL *chiso,float )
{
int
i, index = dau;
float h, hmax = 0;
for(i = dau + 1; i < cuoi; i++)
{
h= Tinhduongcao(pLINE[dau], pLINE[cuoi]; pLINE[i]);
if(h > hmax)
{
hmax = h;
index = i;
53
}
}
if(hmax )
for(i= dau + 1; i < cuoi, i++)
chiso[i] = FALSE;
else
{
DPSimple(PLINE, dau, index, chiso, );
DPSimple(PLINE, index, cuoi, chiso, ) ;
}
}
//Hm rt gn s lng im DouglasPeucker
int DouglasPeucker(POINT *pLINE, int n, float )
{
int
i, j;
P3
P2
di
P1
P4
dk
P5
55
tnh ng cao
returm h ;
}
//Hm quy nhm nh du loi b cc im trong ng cong
void BWSimple(POINT *pLINE, int chot, int tg, BOOL *chiso,
float , int n)
{
if(Tinhduongcao(pLINE[chot], pLINE[tg+1], pLINE[tg]) )
chiso[tg] = 0;
else
chot = tg;
tg = tg + 1
if(tg < n - 1)
BWSimple (pLINE, chot, tg, chiso, , n) ;
}
//Hm rt gn s lng im BandWidth
int BandWidth(POINT *pLINE, int n, floot )
{
int
i, j;
56
k
P4
P5
P1
Hnh 5.3. n gin ha ng cong vi thut ton Angles
tinhgoc (t vit)
return ;
}
//Hm quy nhm nh du loi b cc im trong ng cong
void ALSimple(POINT *pLINE,int chot,int tg,BOOL *chiso,float ,int n)
{
57
{
int i, j, chiso [MAX];
for (i = 0; i < n; i++) //Tt c cc im c gi li
chiso[i]= TRUE;
ALSiple (PLINE, 0, 1 chiso, , n) ;
for (i = j = 0; i < n; i++)
if (chiso ==TRUE)
pLINE[j++]= pLINE [i];
return j;
}
* Ch :
Vi = 0 thut ton DouglasPeucker v BandWidth s b i cc im
gia thng hng. Thut ton Angles phi c = 180o b i cc im gia
thng hng.
58
Bt bin
Aphin
ng trn
Ellipse
Hnh ch nht
Ellipse
Tam gic
T gic
0 d m 1
d
,
n
59
Trong
d =
n 1
minr
0 2 , R
j =0
kR U j + a V( j + d ) mod m
, k=
Trong thc hnh tnh tch phn trn ngi ta thng s dng cng
thc Green hoc c th phn tch phn bn trong a gic thnh tng i s
ca cc tam gic c hng OUiUi+1 .
U2
U
f ( x, y) x
U0
n 1
y q dxdy =
Pg
U3
sign( x y
i =0
O(0,0)
Un-
i +1
f ( x, y) x
xi +1 yi )
y q dxdy
OU iU i +1
Hnh 5.6. Phn tch min a gic thnh tng i s cc min tam gic
60
a ,b ,cR
1 n 2
( xi + yi2 + axi + byi + c) 2
n i =1
min
a ,b ,c ,d ,eR
1 n 2
( x + ayi2 + bxi yi + cxi + dyi + e) 2
n i =1 i
2 11
20 - 02 .
S area( Pg)
x
Hnh 5.8. Xp x a gic bng hnh ch nht
61
Dng chun tc
Tam gic
Tam gic u
Hnh vung
Ellipse
ng trn
+ Bc 1:
Tm dng chun tc c s Pg' tho mn iu kin:
m01 = m10 = 0
m02 = m20 = 1
m = m = 0
31
13
(**)
+ Bc 2:
Xc nh bin i aphin T chuyn a gic thnh a gic Pg dng
chun tc (tho mn tnh cht (**)).
Xp x a gic Pg vi dng chun tc c s Pg tm c bc 1 vi
o xp x E(Pg,Pg).
+ Bc 3:
Kt lun, a gic ban u xp x T-1(Pg) vi o xp x E(Pg,Pg).
62
V d 1:
Tn ti duy nht tam gic u P1P2P3 tho mn tnh cht (**) l
P1=(0,-2),P2= ( 3, ) , P3= ( 3, ) ,
28 3
3 .
V d 2:
Tn ti hai hnh vung
* tng
Gi s n im nm trn cng mt ng thng v ng thng c
phng trnh
y = ax + b
V (xi, yi) i = 1, n thuc ng thng nn y1 = ax1 + b, i = 1, n
b = - xia + y1; i = 1, n
Nh vy, mi im (xi; yi) trong mt phng s tng ng vi mt s
ng thng b = - xia + yi trong mt phng tham s a, b. n im (xi; yi) i =
1, n thuc ng thng trong mt phng tng ng vi n ng thng
trong mt phng tham s a, b giao nhau ti 1 im v im giao chnh l a,
b. Chnh l h s xc nh phng trnh ca ng thng m cc im
nm vo.
63
* Phng php:
- Xy dng mng ch s [a, b] v gn gi tr 0 ban u cho tt c cc
phn t ca mng
- Vi mi (xi; yi) v a, b l ch s ca phn t mng tho mn
b = - xia + yi tng gi tr ca phn t mng tng ng ln 1
- Tm phn t mng c gi tr ln nht nu gi tr ln nht tm c so
vi s phn t ln hn hoc bng ngng cho trc th ta c th kt lun
cc im nm trn cng 1 ng thng v ng thng c phng trnh
y = ax + b trong a, b tng ng l ch s ca phn t mng c gi tr ln
nht tm c:
V d:
Cho 5 im (0, 1); (1, 3); (2, 5); (3, 5); (4, 9) v = 80%. Hy kim
tra xem 5 im cho c nm trn cng mt ng thng hay khng? Hy
cho bit phng trnh ng thng nu c?
- Lp bng ch s [a, b] v gn gi tr 0
+ (0, 1): b = 1
+ (1, 3): b = -a + 3
+ (2, 5): b = -2a + 5
+ (3, 5): b = -3a + 5
+ (4, 9): b = -4a + 9
- Tm phn t ln nht c gi tr 4
4/5 = 80%
- Kt lun: 5 im ny nm trn cng 1 ng thng
Phng trnh: y = 2x + 1
64
x.cos+y.sin=r
H
x
Hnh 5.9. ng thng Hough trong to cc
x.cos+y.sin=r1
0
Hough[][r1]=3
y
x.cos+y.sin=r2
Hough[][r1]=4
66
67
Ph lc 1:
MT S NH DNG TRONG X L NH
1. nh dng nh IMG
nh IMG l nh en trng, phn u ca nh IMG c 16 byte
cha cc thng tin:
6 byte u: dng nh du nh dng nh. Gi tr ca 6
byte ny vit di dng Hexa: 0x0001 0x0008 0x0001
2 byte tip theo: cha di mu tin. l di ca dy
cc byte k lin nhau m dy ny s c lp li mt s ln
no . S ln lp ny s c lu trong byte m. Nhiu dy
ging nhau c lu trong mt byte.
4 byte tip: m t kch c pixel.
2 byte tip: s pixel trn mt dng nh.
2 byte cui: s dng nh trong nh.
nh IMG c nn theo tng dng, mi dng bao gm cc gi
(pack). Cc dng ging nhau cng c nn thnh mt gi. C 4 loi
gi sau:
2. nh dng nh PCX
nh dng nh PCX l mt trong nhng nh dng nh c in.
N s dng phng php m ho lot di RLE (Run Length
Encoded) nn d liu nh. Qu trnh nn v gii nn c thc
hin trn tng dng nh. Thc t, phng php gii nn PCX km
hiu qu hn so vi kiu IMG. Tp PCX gm 3 phn: u tp
(header), d liu nh (Image data) v bng mu m rng.
Header ca tp PCX c kch thc c nh gm 128 byte v
c phn b nh sau:
1 byte: ch ra kiu nh dng.Nu l PCX/PCC th n lun c
gi tr l 0Ah.
1 byte: ch ra version s dng nn nh, c th c cc gi
tr sau:
+ 0: version 2.5.
+ 2: version 2.8 vi bng mu.
+ 3: version 2.8 hay 3.0 khng c bng mu.
+ 5: version 3.0 c bng mu.
1 byte: ch ra phng php m ho. Nu l 0 th m ho theo
phng php BYTE PACKED, ngc li l phng
php RLE.
1 byte: S bt cho mt im nh plane.
1 word: to gc tri ca nh. Vi kiu PCX n c gi tr l
(0,0), cn PCC th khc (0,0).
1 word: to gc phi di.
1 word: kch thc b rng v b cao ca nh.
69
1 word: s im nh.
1 word: phn gii mn hnh.
1 word.
48 byte: chia n thnh 16 nhm, mi nhm 3 byte. Mi nhm
ny cha thng tin v mt thanh ghi mu. Nh vy ta c 16
thanh ghi mu.
1 byte: khng dng n v lun t l 0.
1 byte: s bt plane m nh s dng. Vi nh 16 mu, gi tr
ny l 4, vi nh 256 mu (1pixel/8bits) th s bt plane li
l 1.
1 byte: s bytes cho mt dng qut nh.
1 word: kiu bng mu.
58 byte: khng dng.
nh dng nh PCX thng c dng lu tr nh v thao
tc n gin, cho php nn v gii nn nhanh. Tuy nhin, v cu trc
ca n c nh, nn trong mt s trng hp lm tng kch thc lu
tr. Cng v nhc im ny m mt s ng dng s dng mt kiu
nh dng khc mm do hn: nh dng TIFF (Targed Image File
Format) s m t di y.
3. nh dng nh TIFF
Kiu nh dng TIFF c thit k lm nh bt cc vn
lin quan n vic m rng tp nh c nh. V cu trc, n cng
gm 3 phn chnh:
Phn Header(IFH): c trong tt c cc tp TIFF v gm
8 byte:
+ 1 word: ch ra kiu to tp trn my tnh PC hay my
Macintosh. Hai loi ny khc nhau rt ln th t cc
byte lu tr trong cc s di 2 hay 4 byte. Nu trng
ny c gi tr l 4D4Dh th l nh cho my Macintosh,
nu l 4949h l ca my PC.
+ 1 word: version. t ny lun c gi tr l 42. y l c
trng ca file TIFF v khng thay i.
+ 2 word: gi tr Offset theo byte tnh t u ti cu trc
IFD l cu trc th hai ca file. Th t cc byte ny ph
thuc vo du hiu trng u tin.
70
71
/* bmfh */
bfType;
bfSize;
bfReserved1;
bfReserved2;
bfOffBits;
} BITMAPFILEHEADER;
typedef struct tagBITMAPINFOHEADER {
DWORD
LONG
LONG
WORD
WORD
DWORD
DWORD
LONG
LONG
DWORD
DWORD
/* bmih */
biSize;
biWidth;
biHeight;
biPlanes;
biBitCount;
biCompression;
biSizeImage;
biXPelsPerMeter;
biYPelsPerMeter;
biClrUsed;
biClrImportant;
} BITMAPINFOHEADER, *LPBITMAPINFOHEADER;
vi
biSize
biWidth
biHeight
72
biPlanes
biBitCount
S bit cho mt im nh
biCompression
Kiu nn
biSizeImage
biXPelsPerMeter
biYPelsPerMeter
biClrUsed
biClrImportant
rgbBlue;
BYTE
rgbGreen;
BYTE
rgbRed;
BYTE
rgbReserved;
/* rgbq */
} RGBQUAD;
Ta cng c:
typedef struct tagBITMAPINFO {
BITMAPINFOHEADER bmiHeader;
RGBQUAD
bmiColors[1];
} BITMAPINFO, *PBITMAPINFO;
73
Ph lc 2:
1. Bc 1: M v ng th vin
Trc mi thao tc vi file AVI, chng ta phi m th vin:
AVIFileInit( )
Hm ny khng cn tham s, c nhim v khi ng th vin
cung cp cc hm thao tc vi file AVI. ( l th vin vfw32.lib,
c khai bo trong file vfw.h).
Sau tt c cc thao tc bn phi nh ng th vin m lc
u, ch bng lnh:
AVIFileExit( )
Nu thiu bt c hm no, d l m hay ng th vin th trnh
bin dch u s thng bo li.
74
3. Bc 3:
M dng d liu hnh nh hay m thanh trong file AVI m ra
thao tc:
AVIFileGetStream(PAVIFILE pfile, PAVISTREAM * ppavi,
DWORD fccType, LONG lParam)
Trong , pfile l con tr n file m; ppavi tr n dng d
liu kt qu; fccType l loi dng d liu chn m, l
streamtypeAUDIO nu l ting v streamtypeVIDEO nu l hnh,
lParam m s loi dng c m, l 0 nu ch thao tc vi mt loi
dng d liu.
Sau cc thao tc vi dng d liu ny, bn nh phi ng n li:
AVIStreamRelease(PAVITREAM pavi).
5. Bc 5: Thao tc vi frame
Dng hm
AVIStreamGetFrame(PGETFRAME pget, LONG lpos)
Hm ny tr v con tr tr n d liu ca frame th lpos. D
liu c kiu l DIB nh khi.
Thc hin cc thao tc mong mun.
75
76