You are on page 1of 68

Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

IC M N

Em xin chân thành c m n các th y, các cô khoa Công ngh Thông tin
Tr ng i h c Dân l p H i Phòng ã t n tình d y d , truy n t cho chúng em
nhi u ki n th c quý báu.
Em xin t lòng bi t n sâu s c n th y Th.s Ngô Tr ng Giang, ng i ã
n tình giúp và truy n t nhi u kinh nghi m tài có th c th c hi n
và hoàn thành.
Xin chân thành c m n các b n trong khoa Công Ngh Thông Tin, iH c
Dân L p H i Phòng ã giúp , ng viên tôi r t nhi u trong quá trình th c hi n
tài.
Em xin trân tr ng c m n!
i Phòng, tháng 07 n m 2007.
Sinh viên

Lê H ng Chuyên

Lê H ng Chuyên _ CT701 Trang: 1


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

CL C
I C M N .................................................................................................... 1
U ........................................................................................................... 4
CH NG 1: NG QUAN V PHÁT HI N KHUÔN M T .................... 5
1.1. Gi i thi u.............................................................................................. 5
1.2. t s l nh v c ng d ng phát hi n khuôn m t. ................................... 5
1.3. t s ph ng pháp xác nh khuôn m t ng i. .................................. 7
1.3.1. ng ti p c n d a trên tri th c. .................................................... 7
1.3.2. ng ti p c n d a trên c tr ng không thay i. ...................... 10
1.3.3. ng ti p c n d a trên so kh p m u. ......................................... 13
1.3.4. ng ti p c n d a trên di n m o................................................ 16
1.3.5. ng ti p c n t ng h p .............................................................. 25
1.4. Khó kh n và thách th c trong bài toán xác nh khuôn m t. ............... 26
CH NG 2: PHÁT HI N KHUÔN M T S D NG ADABOOST......... 28
2.1. Gi i thi u............................................................................................ 28
2.1.1. Các h ng ti p c n dò tìm khuôn m t nhanh................................ 28
2.1.2. ng ti p c n theo AdaBoost..................................................... 28
2.2. Trích ch n c tr ng cho AdaBoost.................................................... 29
2.3. Thu t toán ADABOOST..................................................................... 31
2.4. dò tìm phân t ng Adaboost............................................................ 35
2.5. Hu n luy n dò tìm khuôn m t ............................................................. 38
2.6. Dò tìm khuôn m t ............................................................................... 38
2.7. Nh n xét ............................................................................................. 39
2.7.1. u m ....................................................................................... 39
2.7.2. Khuy t m................................................................................. 39
CH NG 3: PHÁT HI N KHUÔN M T S D NG M NG N RON. . 40
3.1. ng quan v m ng n ron nhân t o .................................................... 40
3.1.1. ng n ron sinh h c.................................................................... 40
3.1.2. ron nhân t o:............................................................................ 41
3.1.3. Các thành ph n c a n ron nhân t o:............................................. 42
3.1.4. Mô hình c b n c a m ng n ron .................................................. 43
3.1.5. Xây d ng m ng n ron.................................................................. 44
3.1.6. Hu n luy n m ng n ron. .............................................................. 45
3.2. Chu n b d li u.................................................................................. 52
3.2.1. Gi i thi u ..................................................................................... 52

Lê H ng Chuyên _ CT701 Trang: 2


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

3.2.2. Gán nhãn và canh biên các c tr ng khuôn m t.......................... 52


3.2.3. Ti n x lý v sáng và t ng ph n trên t p m u h c ............ 54
3.3. Hu n luy n dò tìm khuôn m t ............................................................. 56
3.3.1. Gi i thi u ..................................................................................... 56
3.3.2. Hu n luy n dò tìm khuôn m t ...................................................... 56
3.4. Quá trình dò tìm khuôn m t ................................................................ 60
CH NG 4: CÀI T NG D NG......................................................... 62
4.1. Môi tr ng TEST ............................................................................... 62
4.2. t s giao di n chính........................................................................ 62
4.3. t qu ............................................................................................... 65
4.4. Nh n xét ............................................................................................. 66
T LU N...................................................................................................... 67
TÀI LI U THAM KH O ................................................................................ 68

Lê H ng Chuyên _ CT701 Trang: 3


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

Trong nh ng n m g n ây, các ng d ng v trí tu nhân t o ngày càng phát


tri n và c ánh giá cao. M t l nh v c ang c quan tâm c a trí tu nhân
o nh m t o ra các ng d ng thông minh, có tính ng i ó là nh n d ng. i
ng cho vi c nghiên c u nh n d ng c ng r t phong phú và a d ng. Trong
tài này tôi ch n it ng là khuôn m t, và b c u tiên c a vi c nh n d ng ó
là phát hi n khuôn m t.
Khuôn m t óng vai trò quan tr ng trong quá trình giao ti p gi a ng iv i
ng i, và c ng mang m t l ng thông tin giàu có, ch ng h n có th xác nh
gi i tính, tu i tác, tr ng thái c m xúc c a ng i ó, ... h n n a khi kh o sát các
ng nét trên khuôn m t có th bi t c ng i ó mu n nói gì. Do ó, phát
hi n là b c ti n quan tr ng ph c v công vi c nh n d ng khuôn m t sau
này. Có r t nhi u ph ng pháp phát hi n khuôn m t, AdaBoost và m ng N -ron
là m t trong nh ng ph ng pháp ó.
án c chia ra 4 ch ng: Ch ng 1 s trình bày t ng quan v m t s
ph ng pháp phát hi n khuôn m t. Ph ng pháp Adaboost và m ng N -ron
dùng phát hi n khuôn m t c trình bày trong ch ng 2 và 3. Ch ng 4 là
ph n cài t ng d ng, m t s th nghi m dò tìm khuôn m t trong nh, và cu i
cùng là k t lu n.

Lê H ng Chuyên _ CT701 Trang: 4


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

CH NG 1: NG QUAN V PHÁT HI N KHUÔN M T

1.1. Gi i thi u.
H n m t th p k qua có r t nhi u công trình nghiên c u v bài toán
xác nh khuôn m t ng i t nh en tr ng, xám n nh màu nh ngày
hôm nay. Các nghiên c u i t bài toán n gi n, m i nh ch có m t khuôn m t
ng i nhìn th ng vào thi t b thu hình và u t th th ng ng trong nh
en tr ng. Cho n ngày hôm nay bài toán m r ng cho nh màu, có nhi u
khuôn m t trong cùng m t nh, có nhi u t th thay i trong nh. Không nh ng
y mà còn m r ng c ph m vi t môi tr ng xung quanh khá n gi n (trong
phòng thí nghi m) cho n môi tr ng xung quanh r t ph c t p (nh trong t
nhiên) nh m áp ng nhu c u c a th c t .
Xác nh khuôn m t ng i (Face Detection) là m t k thu t máy tính
xác nh các v trí và các kích th c c a các khuôn m t ng i trong các nh b t
( nh k thu t s ). K thu t này nh n bi t các c tr ng c a khuôn m t và b
qua nh ng th khác, nh : tòa nhà, cây c i, c th , …

1.2. t s l nh v c ng d ng phát hi n khuôn m t.


Phát hi n khuôn m t ã c ng d ng trong r t nhi u l nh v c:
- th ng t ng tác gi a ng i và máy: giúp nh ng ng i b t t ho c
khi m khuy t có th trao i. Nh ng ng i dùng ngôn ng tay có th giao
ti p v i nh ng ng i bình th ng. Nh ng ng i b b i li t thông qua m t
ký hi u nháy m t có th bi u l nh ng gì h mu n, …. ó là các bài
toán u b c a bàn tay (hand gesture), u b khuôn m t, …
- Nh n d ng ng i A có ph i là t i ph m truy nã hay không? Giúp c quan
an ninh qu n lý t t con ng i. Công vi c nh n d ng có th trong môi
tr ng bình th ng c ng nh trong bóng t i (s d ng camera h ng ngo i).
- th ng quan sát, theo dõi và b o v . Các h th ng camera s xác nh
âu là con ng i và theo dõi con ng i ó xem h có vi ph m gì không, ví
xâm ph m khu v c không c vào, ….

Lê H ng Chuyên _ CT701 Trang: 5


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

- u tr (rút ti n ATM, bi t ai rút ti n vào th i m ó), hi n nay có


tình tr ng nh ng ng i b ng i khác l y m t th ATM hay m t mã s PIN
và nh ng ng i n c p này i rút ti n, ho c nh ng ng i ch th i rút ti n
nh ng l i báo cho ngân hàng là m t th và m t ti n. Các ngân hàng có nhu
u khi có giao d ch ti n s ki m tra hay l u tr khuôn m t ng i rút ti n
sau ó i ch ng và x lý.
- Th c n c c, ch ng minh nhân dân (Face dentification).
- u khi n vào ra: v n phòng, công ty, tr s , máy tính,…. K t h p thêm
vân tay và h c m t. Cho phép nhân viên c ra vào n i c n thi t, hay m i
ng is ng nh p máy tính cá nhân c a mình mà không c n nh tên
ng nh p c ng nh m t kh u mà ch c n xác nh thông qua khuôn m t.
- An ninh sân bay, xu t nh p c nh (hi n nay c quan xu t nh p c nh M ã
áp d ng). Dùng xác th c ng i xu t nh p c nh và ki m tra có ph i là
nhân v t kh ng b không.
- ng lai s phát tri n các lo i th thông minh có tích h p s n c tr ng
a ng i dùng trên ó, khi b t c ng i dùng khác dùng truy c p hay
lý t i các h th ng s c yêu c u ki m tra các c tr ng khuôn m t
so v i th bi t nay có ph i là ch th hay không.
- Tìm ki m và t ch c d li u liên quan n con ng i thông qua khuôn m t
ng i trên nhi u h c s d li u l u tr th t l n, nh internet, các hãng
truy n hình, …. Ví d : tìm các n video có t ng th ng Bush phát bi u,
tìm các phim có di n viên Thành Long óng, tìm các tr n á banh có
Ronaldinho á.
- Phân lo i trong l u tr hình nh trong n tho i di ng. Thông qua bài
toán xác nh khuôn m t ng i và trích c tr ng, r i d a vào c tr ng
này s p x p, l u tr , giúp ng i s d ng d dàng truy tìm khi c n thi t.
- Ki m tra tr ng thái ng i lái xe có ng g t, m t t p trung hay không, và h
tr thông báo khi c n thi t.
- Phân tích c m xúc trên khuôn m t.

Lê H ng Chuyên _ CT701 Trang: 6


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

- t s hãng s n xu t máy ch p nh ã ng d ng bài toán xác nh khuôn


t ng i vào máy ch p nh th h m i cho k t qu hình nh p h n.

1.3. t s ph ng pháp xác nh khuôn m t ng i.


Có nhi u nghiên c u tìm ph ng pháp xác nh khuôn m t ng i, t nh
xám n ngày nay là nh màu. D a vào tính ch t c a các ph ng pháp xác nh
khuôn m t ng i trên nh, chúng ta có th phân chia các ph ng pháp này thành
nh ng ti p c n chính:
- ng ti p c n d a trên tri th c: Mã hóa các hi u bi t c a con ng iv
các lo i khuôn m t ng i thành các lu t. Thông th ng các lu t mô t
quan h c a các c tr ng.
- ng ti p c n d a trên c tr ng không thay i: M c tiêu các thu t
toán i tìm các c tr ng mô t c u trúc khuôn m t ng i mà các c tr ng
này s không thay i khi t th khuôn m t, v trí t thi t b thu hình ho c
u ki n ánh sáng thay i.
- ng ti p c n d a trên so kh p m u: Dùng các m u chu n c a khuôn
t ng i (các m u này c ch n l a và l u tr ) mô t cho khuôn m t
ng i hay các c tr ng khuôn m t (các m u này ph i ch n làm sao cho
tách bi t nhau theo tiêu chu n mà các tác gi nh ra so sánh).
- ng ti p c n d a trên di n m o: Trái ng c h n v i so kh p m u,
các mô hình h c ây c h c t m t t p nh hu n luy n cho tr c. Sau
ó h th ng s xác nh khuôn m t ng i. M t s tác gi còn g i h ng
ti p c n này là h ng ti p c n theo ph ng pháp h c.
1.3.1. ng ti p c n d a trên tri th c.

Trong h ng ti p c n này, các lu t s ph thu c r t l n vào tri th c c a


nh ng tác gi nghiên c u v bài toán xác nh khuôn m t ng i. ây là h ng
ti p c n d ng top-down. D dàng xây d ng các lu t c b n mô t các c
tr ng c a khuôn m t và các quan h t ng ng. Ví d , m t khuôn m t th ng
có hai m t i x ng nhau qua tr c th ng ng gi a khuôn m t và có m t m i,
t mi ng. Các quan h c a các c tr ng có th c mô t nh quan h v
kho ng cách và v trí. Thông th ng các tác gi s trích c tr ng c a khuôn

Lê H ng Chuyên _ CT701 Trang: 7


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

t tr c tiên có c các ng viên, sau ó các ng viên này s c xác


nh thông qua các lu t bi t ng viên nào là khuôn m t và ng viên nào
không ph i khuôn m t.
tv n khá ph c t p khi dùng h ng ti p c n này là làm sao chuy n t
tri th c con ng i sang các lu t m t cách hi u qu . N u các lu t này quá chi ti t
(ch t ch ) thì khi xác nh có th xác nh thi u các khuôn m t có trong nh, vì
nh ng khuôn m t này không th th a mãn t t c các lu t a ra. Nh ng các lu t
ng quát quá thì có th chúng ta s xác nh l m m t vùng nào ó không ph i là
khuôn m t mà l i xác nh là khuôn m t. Và c ng khó kh n khi c n m r ng
yêu c u c a bài toán xác nh các khuôn m t có nhi u t th khác nhau.

Hình 1-1: (a) nh ban u có phân gi i n = 1; (b), (c), và (d) nh có


phân gi i n = 4, 8, 16.

Yang và Huang dùng m t ph ng th c theo h ng ti p c n này xác


nh các khuôn m t. H th ng c a hai tác gi này bao g m ba m c lu t. m c
cao nh t, dùng m t khung c a s quét trên nh và thông qua m t t p lu t tìm
các ng viên có th là khuôn m t. m c k ti p, hai ông dùng m t t p lu t
mô t t ng quát hình dáng khuôn m t. Còn m c cu i cùng l i dùng m t t p
lu t khác xem xét m c chi ti t các c tr ng khuôn m t. M t h th ng a
phân gi i có th t c dùng xác nh, hình 1-1. Các lu t m c cao nh t
tìm ng viên nh : “vùng trung tâm khuôn m t (ph n t i h n trong hình 1-2)
có b n ph n v i m t m c u c b n”, “ph n xung quanh bên trên c a m t
khuôn m t (ph n sáng h n trong hình 1-2) có m t m c u c b n”, và “m c
khác nhau gi a các giá tr xám trung bình c a ph n trung tâm và ph n bao
bên trên là áng k ”. m c hai, xem xét bi u c a các ng viên lo i b t
ng viên nào không ph i là khuôn m t, ng th i dò ra c nh bao xung quanh
ng viên. m c cu i cùng, nh ng ng viên nào còn l i s c xem xét các c
tr ng c a khuôn m t v m t và mi ng. Hai ông ã dùng m t chi n l c “t thô

Lê H ng Chuyên _ CT701 Trang: 8


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

n m n” hay “làm rõ d n” gi m s l ng tính toán trong x lý. M c dù t l


chính xác ch a cao, nh ng ây là ti n cho nhi u nghiên c u sau này.

Hình 1-2: t lo i tri tr c c a ng i nghiên c u phân tích trên khuôn m t.

Kotropoulos và Pitas a m t ph ng pháp dùng trên phân gi i th p.


Hai ông dùng ph ng pháp chi u xác nh các c tr ng khuôn m t. Kanade
ã thành công v i ph ng pháp chi u xác nh biên c a khuôn m t. V i
I(x,y) là giá tr xám c a m t m trong nh có kích th cmxn t i v trí
(x,y), các hàm chi u nh theo ph ng ngang và th ng ng c nh ngh a
nh sau:

HI ( x) = ∑ ny −1 I ( x, y ) và VI ( y ) = ∑ m
x −1 I ( x, y ) (1.1)

Hình 1-3: Ph ng pháp chi u:

(a) nh ch có m t khuôn m t và hình n n n gi n;


(b) nh ch có m t khuôn m t và hình n n ph c t p;
(c) nh có nhi u khuôn m t

a trên bi u hình chi u ngang, có hai c c ti u c c b khi hai ông xét


quá trình thay i c c a HI, ó chính là c nh bên trái và ph i c a hai bên
u. T ng t v i hình chi u d c VI, các c c ti u c c b c ng cho ta bi t v trí
mi ng, nh m i, và hai m t. Các c tr ng này xác nh khuôn m t.

Lê H ng Chuyên _ CT701 Trang: 9


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

Hình 1-3.a là m t ví d v cách xác nh nh trên. Cách xác nh này có t l


xác nh chính xác là 86.5% cho tr ng h p ch có m t khuôn m t th ng trong
nh và hình n n không ph c t p. N u hình n n ph c t p thì r t khó tìm, nh là
hình 1-3.b. N u nh có nhi u khuôn m t thì s không xác nh c, hình 1-3.c.

Hình 1-4: Chi u t ng ph n ng viên xác nh khuôn m t.

Mateos và Chicote dùng k t c u xác nh ng viên trong nh màu. Sau


ó phân tích hình dáng, kích th c, thành ph n khuôn m t xác nh khuôn
t. Khi tìm c ng viên khuôn m t, hai ông trích các ng viên c a t ng
thành ph n khuôn m t, sau ó chi u t ng ph n này xác th c ó có ph i là
thành ph n khuôn m t hay không, hình 1-4. T l chính xác là h n 87%.
Berbar k t h p mô hình màu da ng i và xác nh c nh tìm ng viên
khuôn m t ng i. Sau ó k t h p các c tr ng và ph ng pháp chi u các ng
viên khuôn m t xu ng h tr c t a xác nh ng viên nào th t s là khuôn
t ng i.
1.3.2. ng ti p c n d a trên c tr ng không thay i.

ây là h ng ti p c n theo ki u bottom-up. Các tác gi c g ng tìm các c


tr ng không thay i c a khuôn m t ng i xác nh khuôn m t ng i. D a
trên nh n xét th c t : con ng i d dàng nh n bi t các khuôn m t trong các t
th khác nhau và u ki n ánh sáng khác nhau; do ó khuôn m t ph i có các
thu c tính hay c tr ng không thay i. Theo nhi u nhi u nghiên thì ban u
ph i xác nh các c tr ng khuôn m t r i ch ra có khuôn m t trong nh hay
không. Các c tr ng nh : lông mày, m t, m i, mi ng, và ng vi n c a tóc

Lê H ng Chuyên _ CT701 Trang: 10


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

c trích b ng ph ng pháp xác nh c nh. Trên c s các c tr ng này, xây


ng m t mô hình th ng kê mô t quan h c a các c tr ng này và xác nh
t n t i c a khuôn m t trong nh. M t v n c a các thu t toán theo h ng
ti p c n c tr ng c n ph i u ch nh cho phù h p u ki n ánh sáng, nhi u, và
che khu t. ôi khi bóng c a khuôn m t s t o thêm c nh m i, mà c nh này l i
rõ h n c nh th t s c a khuôn m t, vì th n u dùng c nh xác nh s g p khó
kh n.
1.3.2.1. Các c tr ng khuôn m t

Sirohey a m t ph ng pháp xác nh khuôn m t t m t nh có hình n n


ph c t p. ây là ph ng pháp d a trên ng biên, dùng ph ng pháp Candy
và heuristics lo i b các c nh còn l i duy nh t m t ng bao xung quanh
khuôn m t. M t hình ellipse dùng bao khuôn m t, tách bi t vùng u và hình
n. T l chính xác c a thu t toán là 80%.
C ng dùng ph ng pháp c nh nh Sirohey, Chetverikov và Lerch dùng
t ph ong pháp d a trên blob và streak (hình d ng gi t n c và s c xen k ),
xác nh theo h ng các c nh. Hai ông dùng hai blob t i và ba blob sáng
mô t hai m t, hai bên gò má, và m i. Mô hình này dùng các treak mô t hình
dáng ngoài c a khuôn m t, lông mày, và môi. Dùng nh có phân gi i th p
theo bi n i laplace xác nh khuôn m t thông qua blob.
Graf a ra m t ph ng pháp xác nh c tr ng r i xác nh khuôn m t
trong nh xám. Dùng b l c làm n i các biên, các phép toán hình thái h c
c dùng làm n i b t các vùng có c ng cao và hình dáng ch c ch n
(nh m t). Thông qua bi u tìm các nh n i b t r i xác nh các ng ng
chuy n nh xám thành hai nh nh phân. Các thành ph n dính nhau u xu t
hi n trong hai nh nh phân thì c xem là vùng c a ng viên khuôn m t r i
phân lo i xem có ph i là khuôn m t không. Ph ng pháp c ki m tra trên các
nh ch có u và vai c a ng i. Tuy nhiên còn có m t v n ây là làm sao
s d ng các phép toán hình thái và làm sao xác nh khuôn m t trên các vùng
ng viên.

Lê H ng Chuyên _ CT701 Trang: 11


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

1.3.2.2. c tr ng k t c u

Khuôn m t con ng i có nh ng k t c u riêng bi t mà có th dùng


phân lo i so v i các i t ng khác. Augusteijn và Skufca cho r ng hình d ng
a khuôn m t dùng làm k t c u phân lo i, g i là k t c u gi ng khuôn m t
(face-like texture). Có ba lo i c tr ng c xem xét: màu da, tóc, và nh ng
th khác. Hai ông dùng m ng n -ron v m i t ng quan cascade cho phân lo i
có giám sát các k t c u, và m t ánh x c tr ng t t ch c Kohonen gom
nhóm các l p k t c u khác nhau. Hai tác gi xu t dùng ph ng pháp b u c
khi không quy t nh ck tc u a vào là k t c u c a da hay k t c u c a
tóc.
Dai và Nakano dùng mô hình SGLD xác nh khuôn m t ng i. Thông
tin màu s c c k t h p v i mô hình k t c u khuôn m t. Hai tác gi xây d ng
thu t gi i xác nh khuôn m t trong không gian màu, v i các ph n t a màu cam
xác nh các vùng có th là khuôn m t ng i. u m c a ph ng pháp này
là có th xác nh khuôn m t không ch ch p th ng và có th có râu và có kính.
Mark và Andrew dùng phân b màu da và thu t toán DoG (Difference of
Gauss) tìm các ng viên, r i xác th c b ng m t h th ng h c k t c u c a
khuôn m t. Manian và Ross dùng bi n i wavelet xây d ng t p d li u k t
u c a khuôn m t trong nh xám thông qua nhi u phân gi i khác nhau, k t
p xác su t thông kê xác nh khuôn m t ng i. T l chính xác là 87%, t
xác nh sai là 18%.
1.3.2.3. c tr ng s c màu c a da

Thông th ng các nh màu không xác nh tr c ti p trên toàn b d li u


nh mà th ng dùng tính ch t s c màu c a da ng i (khuôn m t ng i) ch n
ra c các ng viên có th là khuôn m t ng i (lúc này d li u ã thu h p áng
) xác nh khuôn m t ng i.
1.3.2.4. a c tr ng

n ây có nhi u nghiên c u s d ng các c tr ng toàn c c nh : màu da


ng i, kích th c, và hình dáng tìm các ng viên khuôn m t, r i sau ó s
xác nh ng viên nào là khuôn m t thông qua các c tr ng c c b nh : m t,

Lê H ng Chuyên _ CT701 Trang: 12


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

lông mày, m i, mi ng, và tóc. Tùy m i tác gi s s d ng t p c tr ng khác


nhau.
Yachida a ra m t ph ng pháp xác nh khuôn m t ng i trong nh
màu b ng lý thuy t logic m . Ông dùng hai mô hình m mô t phân b màu
da ng i và màu tóc trong không gian màu CIE XYZ. Có n m mô dùng mô
hình dáng c a m t trong nh (m t th ng và b n xoay xung quanh). M i mô
hình là m t m u 2-chi u bao g m các ô vuông có kích th c m x n, m i ô có th
ch a nhi u h n m t m nh. Hai thu c tính c gán cho m i ô là: t l màu
da và t l tóc, ch ra t l di n tích vùng da trong ô so v i di n tích c a ô. M i
m nh s c phân lo i thành tóc, khuôn m t, tóc/khuôn m t, và tóc/n n trên
s phân b c a mô hình, theo cách ó s có c các vùng gi ng khuôn m t
và gi ng tóc. Mô hình hình dáng c a us c so sánh v i vùng gi ng khuôn
t và gi ng tóc. N u t ng t , vùng ang xét s tr thành ng viên khuôn m t,
sau ó dùng các c tr ng m t-lông mày và m i-mi ng xác nh ng viên
nào s là khuôn m t th t s .
Sobottka và Pitas dùng các c tr ng v hình dáng và màu s c xác nh
khuôn m t ng i. Dùng m t ng ng phân n trong không gian màu HSV
xác nh các vùng có th là màu da ng i. Các thành ph n dính nhau s c
xác nh b ng thu t toán t ng vùng phân gi i thô. Xem xét ti n ng viên
nào v a kh p hình d ng ellipse s c ch n làm ng viên c a khuôn m t. Sau
ó dùng các c tr ng bên trong nh : m t và mi ng, c trích ra trên c s các
vùng m t và mi ng s t i h n các vùng khác c a khuôn m t, sau cùng phân lo i
a trên m ng n -ron bi t vùng ng viên nào là khuôn m t ng i và vùng
nào không ph i khuôn m t ng i. T l chính xác là 85%.
1.3.3. ng ti p c n d a trên so kh p m u.

Trong so kh p m u, các m u chu n c a khuôn m t (th ng là khuôn m t


c ch p th ng) s c xác nh tr c ho c xác nh các tham s thông qua
t hàm. T m t nh a vào, tính các giá tr t ng quan so v i các m u chu n
ng vi n khuôn m t, m t, m i và mi ng. Thông qua các giá tr t ng quan
này mà các tác gi quy t nh có hay không có t n t i khuôn m t trong nh.

Lê H ng Chuyên _ CT701 Trang: 13


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

ng ti p c n này có l i th là r t d cài t, nh ng không hi u qu khi có s


thay i v t l , t th , và hình dáng.
1.3.3.1. Xác nh m u tr c

Sakai ã c g ng th xác nh khuôn m t ng i ch p th ng trong nh.


Ông dùng vài m u con v m t, m i, mi ng, và ng vi n khuôn m t mô
hình hóa m t khuôn m t. M i m u con c nh ngh a trong gi i h n c a các
n th ng. Các ng th ng trong nh c trích b ng ph ng pháp xem xét
thay i gradient nhi u nh t và so kh p các m u con. u tiên tìm các ng viên
thông qua m i t ng quan gi a các nh con và các m u v ng vi n. Sau ó,
so kh p v i các m u con khác. Hay nói m t cách khác, giai n u xem nh
là giai n s ch tìm ng viên, giai n th hai là giai n tinh ch
xác nh có t n t i hay không m t khuôn m t ng i. Ý t ng này c duy trì
cho n các nghiên c u sau này.
Craw a ra m t ph ng pháp xác nh khuôn m t ng i d a vào các m u
hình dáng c a các nh c ch p th ng (dùng v b ngoài c a hình dáng
khuôn m t). u tiên dùng phép l c Sobel tìm các c nh. Các c nh này s
c nhóm l i theo m t s ràng bu c. Sau ó, tìm ng vi n c a u, quá trình
ng t c l p i l p l i v i m i t l khác nhau xác nh các c tr ng
khác nh : m t, lông mày, và môi. Sau ó Craw mô t m t ph ng th c xác nh
dùng m t t p có 40 m u tìm các c tr ng khuôn m t và u khi n chi n
c dò tìm.
Sinha dùng m t t p nh các b t bi n nh trong không gian nh mô t
không gian các m u nh. T t ng chính c a ông d a vào s thay im c
sáng c a các vùng khác nhau c a khuôn m t (nh hai m t, hai má, và trán),
quan h v m c sáng c a các vùng còn l i thay i không áng k . Xác nh
các c p t s c a m c sáng c a m t s vùng (m t vùng t i h n hay sáng h n)
cho ta m t l ng b t bi n khá hi u qu . Các vùng có sáng u c xem nh
t m u t s mà là m u thô trong không gian nh c a m t khuôn m t v i
thích h p ít dùng ch n nh các c tr ng chính c a khuôn m t nh hai m t,
hai má, và trán. L u gi thay i sáng c a các vùng trên khuôn m t trong
t t p thích h p v i các c p quan h sáng h n – t i h n gi a các vùng nh .

Lê H ng Chuyên _ CT701 Trang: 14


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

t khuôn m t c xác nh khi m t nh phù h p t t c các c p sáng h n – t i


n. Ý t ng này xu t phát t s khác bi t c a c ng gi a các vùng k c c
, sau này c m r ng trên c s bi n i wavelet bi u di n cho xác nh
ng i i b , xác nh xe h i, xác nh khuôn m t. Ý t ng c a Sinha còn c
áp d ng cho h th ng th giác c a robot. Hình 1-5 cho th y m u n i b t trong 23
quan h c nh ngh a. Dùng các quan h này phân lo i, có 11 quan h
thi t y u (các m i tên màu en) và 12 quan h xác th c (các m i tên xám). M i
i tên là m t quan h . M t quan h th a mãn m u khuôn m t khi t l gi a hai
vùng v t qua m t ng ng và 23 quan h này v t ng ng thì xem nh xác
nh c m t khuôn m t.
Ph ng pháp so kh p m u theo th t xác nh khuôn m t ng i do
o o
Miao trình bày. giai n u tiên, nh s c xoay t -20 n 20 v i m i
o
c là 5 và theo th t . Xây d ng nh a phân gi i, hình 1-1, r i dùng phép
toán Laplace xác nh các c nh. M t m u khuôn m t g m các c nh mô t sáu
thành ph n: hai lông mày, hai m t, m t m i, và m t mi ng. Sau ó áp d ng
heuristic xác nh s t n t i c a khuôn m t trong nh, ph ng pháp này cho
phép xác nhi u khuôn m t, nh ng k t qu không t t b ng xác nh m t khuôn
t (ch p th ng ho c xoay) trong nh xám.

Hình 1-5: u khuôn m t, có 16 vùng và 23 quan h (các m i tên).

Wei và Lai dùng b l c phân n k t h p thu t toán tìm láng gi ng g n


nh t xác nh ng viên khuôn m t, t ng viên này sau ó so kh p v i các m u
ã xác nh tr c bi t ng viên có ph i là khuôn m t hay không. T l chính
xác là 80%.

Lê H ng Chuyên _ CT701 Trang: 15


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

Darrell dùng phân n tìm ng viên, dùng ng viên này xác nh


khuôn m t ng i d a vào m u r i theo v t chuy n ng c a ng i.
Dowdall dùng ph c a màu da ng i xác nh ng viên. Sau ó chi u
các ng viên này so sanh v i các m u có tr c xác nh ng viên nào là
khuôn m t ng i. Ph ng pháp này ch xác nh cho khuôn m t ch p th ng và
n th ng, góc quay kho ng t -10o n 10 o .
1.3.3.2. Các m u b bi n d ng

Yuille dùng các m u bi n d ng mô hình hóa các c tr ng c a khuôn


t, mô hình này có kh n ng linh ho t cho các c tr ng khuôn m t. Trong
ng ti p c n này, các c tr ng khuôn m t c mô t b ng các m u c
tham s hóa. M t hàm n ng l ng (giá tr ) c nh ngh a liên k t các c nh,
nh, và thung l ng trong nh t ng ng v i các tham s trong m u. Mô hình
này cho k t qu t t khi t i gi n hàm n ng l ng qua các tham s . M t h n ch
ah ng ti p c n này là các m u bi n d ng ph i c kh i t o trong ph m vi
n các it ng xác nh.
Lanitis mô t m t ph ng pháp bi u di n khuôn m t ng i v i c hai thông
tin: hình dáng và c ng . Ban u, t p nh c hu n luy n v i các ng
vi n m u nh là ng bao m t, m i, c m, má c gán nhãn. Dùng m t vector
mô t hình dáng, ây tác gi dùng m t mô hình phân b m (Point
Distribution Model – PDM) mô t vector hình dáng qua toàn b các cá th .
1.3.4. ng ti p c n d a trên di n m o.

Trái ng c v i các ph ng pháp so kh p m u v i các m u ã c nh


ngh a tr c b i nh ng chuyên gia, các m u trong h ng ti p c n này ch c
các nh m u. M t các t ng quát, các ph ng pháp theo h ng ti p c n này áp
ng các k thu t theo h ng xác su t th ng kê và máy h c tìm nh ng c
tính liên quan c a khuôn m t và không ph i là khuôn m t. Các c tính ã c
c trong hình thái các mô hình phân b , hay các hàm bi t s có th dùng các
c tính này xác nh khuôn m t ng i. ng th i, bài toán gi m s chi u
th ng c quan tâm t ng hi u qu tính toán c ng nh hi u qu xác nh.
t nh hay m t vector c tr ng xu t phát t m t nh c xem nh m t bi n
ng u nhiên x, và bi n ng u nhiên có c tính là khuôn m t hay không ph i

Lê H ng Chuyên _ CT701 Trang: 16


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

khuôn m t b i công th c tính theo các hàm m t phân l p theo u ki n


p(x | khuôn m t) và p(x | không ph i khuôn m t) . Có th dùng phân lo i Bayes
ho c kh n ng c c i phân lo i m t ng viên là khuôn m t hay không ph i
là khuôn m t. Không th cài t tr c ti p phân lo i Bayes b i vì s chi u c a x
khá cao, b i vì p(x | khuôn m t) và p(x | không ph i khuôn m t) là a th c, và
ch a th hi u n u xây d ng các d ng tham s hóa m t cách t nhiên cho
p(x | khuôn m t) và p(x | không ph i khuôn m t) . Có khá nhi u nghiên c u theo
ng ti p c n này quan tâm x p x có tham s hay không có tham s cho
p(x | khuôn m t) và p(x | không ph i khuôn m t) . Các ti p c n khác trong
ng ti p c n d a trên di n m o là tìm m t hàm bi t s (nh : m t ph ng quy t
nh, siêu ph ng tách d li u, hàm ng ng) phân bi t hai l p d li u:
khuôn m t và không ph i khuôn m t. Bình th ng, các m u nh c chi u vào
không gian có s chi u th p h n, r i sau ó dùng m t hàm bi t s (d a trên các
o kho ng cách) phân lo i, ho c xây d ng m t quy t nh phi tuy n b ng
ng n -ron a t ng. Ho c dùng SVM (Support Vector Machine) và các
ph ng th c kernel, chi u hoàn toàn các m u vào không gian có s chi u cao
n d li u b r i r c hoàn toàn và ta có th dùng m t m t ph ng quy t nh,
phân lo i các m u khuôn m t và không ph i khuôn m t.
1.3.4.1. Eigenface.

Kohonen ã a ra ph ng pháp dùng vector riêng nh n d ng khuôn


t, ông dùng m t m ng n -ron n gi n ch ng t kh n ng c a ph ng
pháp này trên các nh ã c chu n hóa. M ng n -ron tính m t mô t c a
khuôn m t b ng cách x p x các vector riêng c a ma tr n t ng quan c a nh.
Các vector riêng sau này c bi t n v i cái tên Eigenface. Kirby và Sirovich
ch ng t các nh có các khuôn m t có th c mã hóa tuy n tính b ng m t s
ng v a ph i các nh c s . Tính ch t này d a trên bi n i Karhunen-Lòeve,
mà còn c g i d i m t cái tên khác là PCA và bi n i Hotelling. Ý t ng
này c xem là c a Pearson trình bày u tiên vào n m 1901 và sau ó là
Hotelling vào n m 1933. Cho m t t p các nh hu n luy n có kích th cnxm
c mô t b i các vector có kích th c m x m, các vector c s cho m t không
gian con t i u c xác nh thông qua l i bình ph ng trung bình khi chi u
các nh hu n luy n vào không gian con này. Các tác gi g i t p các vector c s

Lê H ng Chuyên _ CT701 Trang: 17


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

i u này là nh riêng, sau ó g i cho n gi n là vector riêng c a ma tr n hi p


ph ng sai, c tính t các nh khuôn m t ã vector hóa trong t p hu n luy n.
u cho 100 nh, mà m i khuôn m t có kích th c 91x50 thì có th ch dùng 50
nh riêng, trong khi v n duy trì c m t kh n ng gi ng nhau h p.
Turk và Pentland áp d ng PCA xác nh và nh n d ng khuôn m t.
ng t , dùng PCA trên t p hu n luy n nh các khuôn m t sinh các nh
riêng (còn g i là eigenface) tìm m t không gian con (không gian khuôn m t)
trong không gian nh. Các nh khuôn m t c chi u vào không gian con này
và c gom nhóm l i. T ng t các nh không có khuôn m t dùng hu n
luy n c ng c chi u vào cùng không gian con và gom nhóm l i. Các nh khi
chi u vào không gian khuôn m t thì không b thay i tính ch t c b n, trong
khi chi u các nh không có khuôn m t thì xu t hi n nhi u s khác nhau. Xác
nh s có m t c a m t khuôn m t trong nh thông qua t t c kho ng cách gi a
các v trí trong nh và không gian nh. Kho ng cách này dùng xem xét có hay
không có khuôn m t ng i, k t qu khi tính toán các kho ng cách s cho ta m t
n v khuôn m t. Có th xác nh c t c c ti u c c b c a b n này.
Có nhi u nghiên c u v xác nh khuôn m t, nh n d ng, và trích c tr ng t ý
ng vector riêng, phân rã, và gom nhóm.
1.3.4.2. ng Neural.

ng n -ron c áp d ng khá thành công trong các bài toán nh n d ng


u, nh : nh n ký t , it ng, robot t ng v n hành. Xác nh khuôn m t
ng i có th xem là bài toán nh n d ng hai lo i m u, có nhi u ki n trúc m ng
-ron ã c trình bày. M t thu n l i khi dùng m ng n -ron xác nh
khuôn m t là tính kh thi c a h th ng h c khi có s ph c t p trong l p c a các
u khuôn m t. Tuy nhiên, m t u tr ng i là các ki n trúc m ng u t ng
quát, khi áp d ng thì ph i xác nh rõ ràng s l ng t ng, s l ng node, t l
c, …, cho t ng tr ng h p c th

Lê H ng Chuyên _ CT701 Trang: 18


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

Hình 1-6: Mô hình m ng N -ron theo Rowley

Agui trình bày m ng n -ron x lý có th t . Giai n u, dùng hai m ng


con song song mà d li u vào là các giá tr c ng c a nh ban u và các giá
tr c ng c a nh ã c l c b ng thu t toán l c Sobel v i c a s l c 3x3.
u vào c a m ng giai n hai bao g m d li u u ra t hai m ng con và
các giá tr c tr ng ã c trích ra, nh : c tr ng l ch chu n c a các giá
tr m nh trong m u a vào, m t t l c a s m nh tr ng trên t ng s
m nh ( ã chuy n sang nh nh phân) trong m t c a s , và c tr ng thi t y u
hình h c. M t giá tr xu t t i giai n hai cho bi t có t n t i hay không
khuôn m t ng i trong vùng a vào. Qua kinh nghi m, tác gi ch ra r ng n u
các nh cùng m t kích th c thì m i dùng ph ng pháp này c.
Propp và Samal phát tri n m ng n -ron xác nh khuôn m t ng is m
nh t. M ng n -ron c a hai ông g m b n t ng v i 1,024 u vào, 256 u k ti p
trong t ng n th nh t, tám u k ti p trong t ng n th hai, và hai u ra.
ng t nh m ng n -ron x lý theo th t c a ra sau ó. Ph ng
pháp c a Soulie duy t m t nh a vào v i m ng n -ron có th i gian tr (kích
th c c a s là 20x25 m nh) xác nh khuôn m t. Dùng bi n i wavelet
phân rã nh các ph n có kích th c khác nhau xác nh khuôn m t.
Vaillant dùng m ng n -ron d ng xo n xác nh khuôn m t ng i. u
tiên t o các nh m u khuôn m t và không ph i khuôn m t có kích th c 20x20.
Dùng m t m ng n -ron, m ng này ã c hu n luy n, tìm các v trí t ng
i c a các khuôn m t các t l khác nhau. R i dùng m t m ng khác xác
nh v trí chính xác c a các khuôn m t. M ng u tiên dùng tìm các ng

Lê H ng Chuyên _ CT701 Trang: 19


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

viên khuôn m t, r i dùng m ng th hai xác nh ng viên nào th t s là


khuôn m t.
Burel và Carel dùng m ng n -ron a t ng có ít m u h n v i thu t toán
Kohenen’s SOM h c các m u khuôn m t và hình n n, mà các m u này ã
c phân lo i tr c. Giai n xác nh khuôn m t bao g m duy t trên m i
nh ã c bi n i t nh bàn u các phân gi i khác nhau. t i m i v
trí và kích th c c a s duy t, u ch nh sáng. M i c a s ã c chu n
hóa s c phân lo i b ng MLP.
Theo ánh giá các ph ng pháp dùng m ng n -ron xác nh khuôn m t
ng i c a nhi u tác gi , thì nghiên c u c a Rowley c xem là t t nh t iv i
nh xám. M t m ng a t ng c dùng h c các m u khuôn m t và không
ph i khuôn t các nh t ng ng (d a trên quan h c ng , v m t không
gian c a các m nh) trong khi Sung dùng m ng n -ron xác nh m t hàm
bi t s cho m c ích phân lo i m u có ph i là khuôn m t hay không d a vào
o kho ng cách. Hai ông cùng s d ng nhi u m ng n -ron và m t s ph ng
th c quy t nh c i thi n k t qu , trong khi Burel và Carel dùng m t m ng
n, Vaillant dùng hai m ng phân lo i. Có hai thành ph n chính x lý:
nhi u m ng n -ron (xác nh m u nào là khuôn m t) và m t mô un quy t
nh ( a ra quy t nh cu i cùng t nhi u k t qu xác nh).

Hình 1-7: i di n c a m i l p khuôn m t. M i i di n t ng ng tâm c a


t nhóm.

Hình 1-7, thành ph n u tiên c a ph ng pháp này là m t m ng n -ron


nh n m t vùng nh có kích th c 20x20 m nh và xu t ra m t giá tr trong

Lê H ng Chuyên _ CT701 Trang: 20


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

kho ng t -1 n 1. Khi a vào m t nh, n u k t qu g n -1 thì ngh a là m u


này không ph i là khuôn m t ng i, nh ng n u k t qu g n 1 thì ây chính là
khuôn m t ng i. xác nh khuôn m t có kích th c l n h n 20x20 m
nh, c ch n m t t l duy t, sau ó xác nh, r i l i thay i t l (bi n thiên
l này do ng i xây d ng quy t nh). G n 1050 m u khuôn m t có kích
th c, h ng, v trí, và c ng khác nhau dùng hu n luy n m ng. S gán
nhãn cho m t, nh c a m i, góc c nh, và tâm c a mi ng r i dùng chu n hóa
khuôn m t v cùng m t t l , h ng, và v trí. Thành ph n th hai là ph ng
pháp tr n các xác nh ch ng chéo nhau và a ra quy t nh. Phép toán logic
(AND/OR) là m t quy t nh n gi n nh t và ph ng pháp b u c c dùng
t ng tính hi u qu . Rowley a nhi u cách gi i quy t bài toán khác nhau v i
chi phí tính toán ít h n Sung và Poggio nh ng t l chính xác cao h n. M t gi i
n c a ph ng pháp c a Rowley và Sung là có th xác nh khuôn m t ch p
th ng và t a th ng (nghiêng u). Sau ó Rowley c i ti n có th xác nh
khuôn m t b xoay b ng m ng nh h ng (Router Network), hình 1-8, s thêm
ti n trình xác nh h ng khuôn m t và xoay v l i t th chu n (ch p th ng),
tuy nhiên khi quay l i d li u nh trên thì t l chính xác l i gi m i, ch còn
kho ng 76.9%.

Hình 1-8: t ví d cho d li u vào và d li u ra c a m ng nh h ng.

1.3.4.3. Support Vector Machine (SVM).

Support Vector Machine (SVM) là m t k thu t h c c Vapnik xu t.


Ph ng pháp này r t hi u qu v i t p d li u l n, nh ng l i g p khó kh n khi
n ph i mô t l i chính xác các khuôn m t ( vì tính bi n thiên c a khuôn m t).
Osuna áp d ng ph ng pháp này u tiên xác nh khuôn m t ng i.
SVM c xem nh là m t ki u m i dùng hu n luy n phân lo i theo hàm a

Lê H ng Chuyên _ CT701 Trang: 21


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

th c. Trong khi h u h t các ph ng pháp khác dùng hu n luy n phân lo i


(M ng Bayes, Nueral, RBF) u dùng tiêu chí t i thi u l i hu n luy n (r i ro do
kinh nghi m), trong khi SVM dùng quy n p ( c g i là t i thi u r i ro c u
trúc), m c tiêu là làm t i thi u m t bao bên trên trên l i t ng quát. M t phân lo i
SVM là m t phân lo i tuy n tính, dùng m t m t ph ng tách d li u. D a trên
t k t h p có các tr ng s c a m t t p con nh các vector hu n luy n, các
vector này c g i là support vector. c l ng m t ph ng t ng ng v i
vi c gi i m t bài toán tuy n tính b c hai. Osuna ã phát tri n m t ph ng pháp
hi u qu hu n luy n m t SVM v i t l l n áp d ng cho bài toán xác nh
khuôn m t ng i. Ông dùng 10,000,000 m u có kích th c 19x19 m nh, h
th ng c a ông có t l l i ít h n Sung và Poggio, nh ng nhanh h n g n 30 l n.
SVM c ng có th dùng xác nh khuôn m t ng i và ng i i b v i phân tích
Wavelet.
1.3.4.4. ng l c th a (Sparse Network of Winnows - SNoW).

ây là ph ng pháp do Yang xu t, dùng xác nh khuôn m t


ng i v i các c tr ng khác nhau và bi u di n trong các t th khác nhau, d i
u ki n ánh sáng khác nhau. SNoW là m t m ng th a dùng các hàm tuy n tính
và dùng l c c p nh t lu t. Ph ng pháp này thích h p cho h c trong mi n khi
các c tr ng ti m n ng t o các quy t nh sai khác nhau mà không bi t m c
u tiên. T l l i là 5.9%, hi u qu c ng nh các ph ng pháp khác.
1.3.4.5. AdaBoost

AdaBoost là m t phân lo i m nh phi tuy n ph c H M(x), c xây d ng t


M phân lo i y u. M c tiêu c a Adaboost là h c m t dãy các phân lo i y u. Gi
có m t t p N m u hu n luy n ã c gán nhãn {(x1,y1), …, (xN,yN)}, v i yi
là nhãn t ng ng c a m u xi ∈ Rn. Tính m t phân b c a các m u hu n luy n
[w1,…, wN] c p nh t trong su t quá trình h c. Sau b c l p m, m u khó phân
(m)
lo i (xi,yi) có tr ng s m i wi , nb c l p th (m+1), m u này s có t m
quan tr ng h n. Viola và Jones dùng AdaBoost k t h p cascade xác nh
khuôn m t ng i v i các c tr ng d ng Haar wavelet-like. T c x lý khá
nhanh và t l chính xác h n 80% trên nh xám.

Lê H ng Chuyên _ CT701 Trang: 22


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

1.3.4.6. c v i FloatBoost

Li và Zhang a ra m t khái ni m m i ó là FloatBoost. Ph ng pháp này


c d a trên phân lo i boosting t l l i c c ti u. Nh ng ph ng pháp này
cho phép quay lui sau khi t i m i b c khi h c b ng AdaBoost ã c c ti u c
l l i tr c ti p, c c ti u theo hàm m . Có hai v n g p khi dùng ph ng
pháp AdaBoost:
- Th nh t: AdaBoost c c ti u theo hàm m t i biên qua t p hu n luy n.
ây là ti n l i, tuy nhiên m c tiêu cu i cùng trong các ng d ng dùng
phân lo i m u thì th ng là c c ti u m t giá tr tr c ti p (tuy n tính) k t
p v i t l l i. M t phân lo i m nh c h c b ng AdaBoost thì g n
m t i u c a ng d ng trong u ki n t l l i.
- Th hai: AdaBoost l i m t thách th c n u dùng phân lo i y u h c.
c phân lo i t i u khi dùng phân lo i y u c n cl ng m t
không gian c tr ng, u này là v n khó, c bi t khi s chi u c a
không gian khá l n.
M t thu t toán h c y u có hi u qu và d dùng thì r t c n thi t.
FloatBoost xem nh m t c u n i gi a m c tiêu c a h c boosting thông th ng
(c c i biên) và nhi u ng d ng dùng c c ti u t l l i thông qua vi c k t h p
ph ng pháp tìm ki m Floating và AdaBoost k t h p k thu t quay lui.
1.3.4.7. Mô hình Markov n (Hidden Markov Model – HMM).

Samaria và Young dùng HMM 1-chi u (hình 1-9) và 2-chi u (hình 1-10)
trích c tr ng khuôn m t dùng nh n d ng khuôn m t. HMM khai thác
u trúc c a khuôn m t tuân theo các chuy n ti p tr ng thái. T các cùng có c
tr ng quan tr ng nh : tóc, trán, m t, m i, và mi ng, hai ông phân tích theo t
nhiên t trên xu ng d i, m i vùng c thi t k thành m t tr ng thái 1-chi u.
i nh c phân n chu n thành n m vùng theo th t t trên xu ng d i
o thành n m tr ng thái.
t gi thuy t quan tr ng c a mô hình Markov n là các m u có th c
c tính hóa nh các ti n trình ng u nhiên có tham s và các tham s này c
c l ng chính xác, ây là m t trong nh ng nh ngh a rõ ràng. Khi phát tri n

Lê H ng Chuyên _ CT701 Trang: 23


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

HMM gi i quy t bài toán nh n d ng m u, ph i xác nh rõ có bao nhiêu tr ng


thái n u tiên cho hình thái mô hình. Sau ó, hu n luy n HMM h c xác su t
chuy n ti p gi a các tr ng thái t các m u, mà m i m u c mô t nh m t
chu i các quan sát. M c tiêu hu n luy n HMM là c c i hóa xác su t c a quan
sát t d li u hu n luy n b ng cách u ch nh các tham s trong mô hình HMM
thông qua ph ng pháp phân n Viterbi chu n và các thu t toán
Baum Welch. M t cách tr c quan, có th chia m t m u khuôn m t ng i thành
nhi u vùng khác nhau nh u, m t, m i, mi ng, và c m. Có th nh n d ng m t
u khuôn m t ng i b ng m t ti n trình xem xét các vùng quan sát theo m t
th t thích h p (t trên xu ng d i, t trái qua ph i). Thay vì tin t ng vào
c chính xác v trí l dùng cho các ph ng pháp d a trên so kh p hay
a trên di n m o (n i xu t hi n các c tr ng nh m t và m i c n xác nh v
trí l t t l y c toàn b chi ti t c a c tr ng). M c tiêu c a h ng ti p c n
này là k t h p các vùng c tr ng khuôn m t v i các tr ng thái c a mô hình.
Th ng các ph ng pháp d a vào HMM s xem xét m t m u khuôn m t nh
t chu i các vector quan sát, v i m i vector là m t dãy các m nh,
hình 1-9a và hình 1-10. Trong quá trình hu n luy n và ki m tra, m i nh c
quét theo m t th t và m t quan sát c xem nh m t kh i các m nh,
hình 1-9a và hình 1-10. Áp d ng m t nh h ng theo xác su t chuy n t
tr ng thái này sang tr ng thái khác, hình 1-9b, d li u nh c mô hình hóa
ng phân b Gauss nhi u bi n. M t chu i quan sát bao g m t t c giá tr c ng
t m i kh i. K t qu xu t ra cho bi t quan sát thu c l p nào. HMM c
dùng nh n d ng khuôn m t ng i và xác nh khuôn m t ng i.

Lê H ng Chuyên _ CT701 Trang: 24


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

Hình 1-9: Mô hình Markov n:

(a) các vector quan sát hu n luy n cho HMM;


(b) n m tr ng thái n.

Hình 1-10: Xác nh khuôn m t b ng HMM các tr ng thái, m i tr ng thái l i


có nh ng tr ng thái nh bên trong: tr ng thái trán có ba tr ng thái nh
bên trong; tr ng thái m t có n m tr ng thái nh bên trong.

1.3.5. ng ti p c n t ng h p

Các các ph ng pháp c chia làm b n phân lo i chính theo b n h ng


ti p c n. Tuy nhiên, có nhi u ph ng pháp không hoàn toàn r i vào m t trong
n h ng ti p c n này mà trong nhi u h ng ti p c n khác nhau. Ví d ,
ph ng pháp so kh p m u dùng mô hình khuôn m t ng i và các m u con
trích các c tr ng khuôn m t, và sau ó dùng các c tr ng này xác nh
khuôn m t. H n n a ph ng pháp d a trên tri th c và ph ng pháp so kh p
u không th t s tách bi t, t ó có nhi u h ng gi i quy t dùng tri th c c a
con ng i nh ngh a các m u khuôn m t ng i.
Kim k t h p các c tr ng láng gi ng c a khuôn m t xây d ng các
u theo các h ng, sau ó dùng k thu t xác nh c nh EBM (Edge-like Blob

Lê H ng Chuyên _ CT701 Trang: 25


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

Map) theo c ng . Ông xây d ng logic m k t h p PCA cl ng t th


các khuôn m t.
Taur và Tao xây d ng phân lo i neurofuzzy (neuro-fuzzy classifier –
NEFCAR) có o tin c y bi t nh nào là khuôn m t ng i. Các ng viên
c ch n thông qua phân n màu da.

1.4. Khó kh n và thách th c trong bài toán xác nh khuôn m t.


Vi c xác nh khuôn m t ng i có nh ng khó kh n nh t nh:
- ng (pose) c a khuôn m t i v i máy nh, nh : nhìn th ng, nhìn
nghiêng hay nhìn t trên xu ng. Cùng trong m t nh có th có nhi u
khuôn m t nh ng t th khác nhau.
- có m t c a các chi ti t không ph i là c tr ng riêng c a khuôn m t
ng i, nh : râu quai nón, m t kính, ….
- Các nét m t (facial expression) khác nhau trên khuôn m t, nh : vui, bu n,
ng c nhiên, ….
- t ng i b che khu t b i các it ng khác có trong nh.
- u ki n nh, c bi t là v sáng và ch t l ng nh, ch t l ng thi t b
thu hình.
- Tr c to c a máy nh so v i nh.
- Kích th c khác nhau c a các khuôn m t ng i, và c bi t là trong cùng
t nh.
- Nhi u khuôn m t có vùng da dính l n nhau.
Các khó kh n trên ch ng t r ng b t c thu t toán nào dùng xác nh
khuôn m t ng i c ng s không th tránh kh i m t s khi m khuy t nh t nh.
ánh giá và so sánh các ph ng pháp xác nh m t ng i, ng i ta th ng
a trên các tiêu chí sau:
- l xác nh chính xác là t l s l ng các khuôn m t ng i c xác
nh úng t h th ng khi s d ng m t ph ng pháp xây d ng so v i
l ng khuôn m t ng i th t s có trong các nh (detection rate).

Lê H ng Chuyên _ CT701 Trang: 26


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

- l ng xác nh nh m là s l ng vùng trong nh không ph i là khuôn


t ng i mà h th ng xác nh nh m là khuôn m t ng i (false
positives).
- Th i gian th c hi n là th i gian máy tính xác nh khuôn m t ng i
trong nh (running time).

Lê H ng Chuyên _ CT701 Trang: 27


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

CH NG 2: PHÁT HI N KHUÔN M T S D NG
ADABOOST.

2.1. Gi i thi u
Bài toán dò tìm khuôn m t nhanh trên nh là bài toán quan tr ng vì quá
trình nh n d ng i t ng s thi u chính xác n u nh thi u b c dò tìm và nh
c it ng. Bài toán dò tìm khuôn m t nhanh có ý ngh a r t quan tr ng
trong vi c nh n d ng, theo v t các it ng chuy n ng trong các n video
hay camera.
2.1.1. Các h ng ti p c n dò tìm khuôn m t nhanh

- ng dò tìm khuôn m t trên nh màu d a trên s phân tích màu s c c a


vùng da. M c dù vi c x lý khá nhanh nh ng h ng này có gi i h n ch
lý trên nh màu và th ng nh y c m v i ánh sáng, th ng ch s d ng
làm các b c ti n x lý cho các h ng khác.
- ng dò tìm khuôn m t d a trên c tr ng b t bi n c a khuôn m t
ng i. Thành công nh t trong dò tìm khuôn m t ng i trong th i gian th c
là ph ng pháp ASM (Active shape Models).
- ng dò tìm khuôn m t d a trên thông tin hình nh g m m ng n -ron,
các h ng th ng kê (SVM, AdaBoost…). Ph ng pháp SVM và m ng
-ron c ng t c k t qu cao trong th i gian khá nhanh song c ng ch
vài nh trong m t giây nên khó có th áp d ng trong vi c nh n d ng th i
gian th c. Riêng ph ng pháp AdaBoost cho k t qu kh quan vì có th
lý n kho ng 15-20 khung hình trong m t giây.
2.1.2. H ng ti p c n theo AdaBoost

- Ph ng pháp dò tìm AdaBoost d a trên ý t ng xây d ng các b dò tìm


u m c dù chính xác không cao nh ng có th i gian x lý r t nhanh.
Tuy nhiên khi k t h p các b dò tìm l i có th t chính xác cao.
- Ph ng pháp AdaBoost s d ng k t h p các c tr ng v n d tính toán r t
nhanh, thích h p cho vi c dò tìm trong th i gian th c.

Lê H ng Chuyên _ CT701 Trang: 28


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

- Các b phân lo i AdaBoost có th xây d ng phân t ng v i ph c t p x


lý t th p n cao, nh m lo i nhanh các ng viên x u (không ph i m t
ng i) v n d nhi u h n nhi u các ng viên là m t ngu i cho b phân
lo i ph c t p h n ch còn l i ít ng viên ch a b lo i.

2.2. Trích ch n c tr ng cho AdaBoost


t ph ng pháp ch n c tr ng thích h p cho AdaBoost là phép bi n i
Haar-like. Phép bi n i Haar-like d a trên ý t ng r t n gi n, c tr ng c
tính b ng chênh l ch gi a t ng các mi n hình h c. Có 3 t p h p mi n hình
c chính nh sau:

Hình 2-1: Các mi n hình h c c tr ng Haar-like

Gi s mi n en là d ng và mi n tr ng là âm thì c tr ng Haar-let tính


ng t ng giá tr pixel các ô en tr cho t ng giá tr các pixel các ô tr ng. Cách
tính nhanh ph ng pháp Haar-like d a trên o hàm nh b c nh t ii(x,y) c a nh
i(x,y). o hàm ii(x,y) c a nh i(x,y) chính là t ng giá tr các pixel tính t g c
trái trên n (x,y) :

ii ( x, y ) = ∑ ∑ i( x' , y ' )
(2.1)
x '≤ x y '≤ y

Lê H ng Chuyên _ CT701 Trang: 29


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

Hình 2-2: Ý ngh a hình h c c a o hàm nh

Vi c tính toán o hàm nh c th c hi n r t nhanh b ng vi c c ng l y tích


nh sau:
s(x,y) = s(x,y-1) + i(x,y) (2.2)
ii(x,y) = ii(x-1,y) + s(x,y) (2.3)
trong ó s(x,y) là t ng c a c t x tính t u dòng n v trí (x,y). Sau khi có
c o hàm nh, ta ch vi c tính giá tr m t ô ch nh t b ng cách nh sau:
ch ng h n ô ch nh t D ta có val(D) = val(ABCD) – val(AC) – val(AB) +
val(A) , do ó n u tính theo t a (x,y) ta có ph ng trình sau:

sr = (ii(x,y) + ii(x-W,y-L)) – (ii(x-W,y) + ii(x,y-L)) (2.4)

Hình 2-3: Cách tính giá tr m t ô c tr ng

Cu i cùng, vi c tính các c tr ng Haar-like ch còn là tr giá tr t ng các ô ch


nh t c tính nh trên.

Lê H ng Chuyên _ CT701 Trang: 30


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

2.3. Thu t toán ADABOOST


Xét bài toán hai l p, m u hu n luy n bao g m M (xi,yi) ã c gán
nhãn, v i i ∈ {1,2,..,M} trong ó yi ∈ {+1,-1} là nhãn và xi ∈ Rn là các m u
hu n luy n. Trong AdaBoost, m t b phân lo i m nh h n c xây d ng d a
trên s k t h p tuy n tính gi a M b phân lo i y u h n:
M
H M ( x ) = ∑ hm ( x ) (2.5)
m −1

Các b phân lo i y u h n có th mang các giá tr th c, hm(x) ∈ R. Phân


lo i c a x c quy t nh b ng hàm H(x) = sign[HM(x)], trong ó l n
|HM(x)| cho ta tin c y. M i m u c k t h p v i m t tr ng s . Trong quá
trình h c, các tr ng s s c c p nh t ng nh n m nh các phân lo i m nh
tr c ó b phân lo i sai. Tuy nhiên, quá trình c p nh t tr ng s ch c n thi t i
i thu t toán AdaBoost tr c ây. i v i các thu t toán AdaBoost c i ti n g n
ây, quá trình này có th c thay th b ng m t hàm t i u hóa. L i x y ra khi
H (x) y hay yHM(x) < 0. L c a m u (x, y) qua hàm h(x) ∈ R trên t p các m u
hu n luy n c nh ngh a là yh(x). L có th c xem là s o tin c y c a
giá tr oán tr c c a h. L i phân l p c a HM có biên trên là:

J ( H M ) = ∑ e − yi H M ( xi ) (2.6)

Thu t toán AdaBoost xây d ng hàm h(x) ng cách gi m t i a (2.6).


Cho
M −1
H M − 1 ( x ) = ∑ hm ( x ) , (2.7)
m −1

HM(x) t t nh t cho phân lo i m nh HM(x) = HM - 1(x) + hm(x)


Là hàm d n t i giá tr nh nh t:
Hm = arg min J(H (x) h (x)) (2.8)
và hàm có giá tr nh nh t c ch ng minh là:

1 P( y = + 1 | x, ω ( M −1) )
hM ( x ) = log (2.9)
2 P( y = − 1 | x, ω ( M −1) )

Lê H ng Chuyên _ CT701 Trang: 31


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

(M-1)
i là tr ng s t i th i m M.
Dùng công th c P(y| x, ) = P(x| y, ) P(y) và cho

1 P ( x | y = +1, ω )
LM ( x) = log (2.10)
2 P ( x | y = −1, ω )

1 P( y = +1) 
T=
2  P( y = −1) 
log (2.11)

chúng ta có c hM (x) = LM(x) – T. LM c h c ra t các m u c a c hai


phân l p. Ng ng T c xác nh b ng t l log c a các xác su t tr c ó.
Ta có m t ph ng pháp tính ph ng trình (2.11), ng d ng khi h c các
phân l p t i u. Vì rút ra m t b phân lo i y u trong m t mi n không gian
nhi u chi u là công vi c quan tr ng, sau ây m t mô hình th ng kê h c theo
ng giai n d a trên vài c m vô h ng. M t c m vô h ng j ax
c tính b ng m t phép bi n i t không gian d li u n chi u thành ng
th ng th c zj(x) ∈ Z. M t c m có th là h s , hay nói trong x lý nh là
phép bi n i vi ba tín hi u. N u ph ng pháp tìm ki m cl ng cs
ng nh phép bi n i zj(x) n gi n c xem là to th j a x. M t danh
sách K c m ng c viên có th c t o: Z ={ zj(x), …, zK(x)}.
Gi s Z là m t t p r t hoàn ch nh, t p các phân l p y u có th có cho bài
toán phân l p y u t i u có th c l p nh sau: Tr c tiên, t i giai n M,
M-1
khi M-1 c m c a z(1), z(2), …, z(M-1) ã c ch n và tr ng s cho là ,
M-1)
chúng ta có x p x p(x|y, ) ng cách dùng phân b c a M c m:

M-1 M-1
p(x|y, ) p(z(1), z(2), …, z(M-1), zk, |y, )
(2.12)

= p(z(1)|y, M-1) p(z(2) |y, z(1), M-1)…


M-1
p(z(M-1)|y, z(1), z(2), …, z(M-2), )
M-1
p(zk, |y, z(1), z(2), …, z(M-1), ) (2.13)

Lê H ng Chuyên _ CT701 Trang: 32


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

i vì Z là t p r t hoàn ch nh, phép x p x v n t t iv it pM l n khi


M c m c ch n thích h p.
Ghi chú: p(zm|y, z(1), z(2), …, z(m-1)) th c ra là p(zm|y, (m-1)) i vì (m) ch a
thông tin v toàn b quá trình t o và bao g m các thành ph n l thu c trên
z(1), z(2), …, z(m-1). Vì v y, chúng ra có:

M-1 (0)
p(x|y, ) p(z(1)| y, ) p(z(2)| y, (1)
)…
(M-2) (M-1)
p(z(M-1)| y, ) p(zk| y, ) (2.14)

(M-1)
t xác su t p(zk| y, ) cho phân l p d ng y = +1 và phân l p âm
y = -1 có th ph ng oán c t histogram tính c qua ánh giá công nh n
tr ng c a các ví d hu n luy n s d ng các tr ng s (M-1).
Cho :

P( z k | y = +1, ω ( M −1) )
L(kM ) ( x) = , và hk( M ) ( x) = {
1 (M )
Lk ( x ) − T } (2.15)
P( z k | y = −1, ω ( M −1) ) 2

chúng ta rút ra c t p h p các phân l p y u h n nh sau:

{
Γ ( M ) ( x) = hk( M ) ( x) | ∀k } (2.16)

Lê H ng Chuyên _ CT701 Trang: 33


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

Thu t toán AdaBoost


0. u vào
(1) p Z = { (x1, y1), (x 2, y2),…, (xn, yn)} v i:
N = a + b;
a là s m u thu c phân l p yi = +1
b là s m u thu c phân l p yi = -1
(2) S l p y u t i a Mmax ck th p

1. Kh i t o giá tr
1
ωi(0) = v i m u thu c phân l p yi = +1
2a
1
ωi(0) = v i m u thu c phân l p yi = -1
2a
M=0

2. Suy di n ti n

While M < Mmax


(1) Mß M + 1
(2) Ch n hm theo bi u th c (4)
(3) p nh t ωi( m) ← exp[− yi H M ( xi ) ] và chu n hóa ωi(m )
∑ω i
(m )
=1
3. u ra
[
H ( x) = sign ∑ mM=1 hm ( x) ]

Lê H ng Chuyên _ CT701 Trang: 34


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

Hình 2-4: Ví d minh h a cho thu t toán AdaBoost

2.4. dò tìm phân t ng Adaboost


i m t b dò tìm c do ph ng pháp AdaBoost hu n luy n c, ta có th
dò tìm v i m t chính xác nh t nh và m t t c nh t nh. N u nh c n
ph i chính xác cao thì b dò tìm ph i bao g m nhi u c tr ng, u ó kéo theo
c dò tìm s gi m.
u s d ng b dò tìm k t h p F={ci} v i nhi u b dò tìm c b n fi khác
nhau c ng r i vào tình tr ng t ng t . có c chính xác cao, ho c c n
ph i có s l ng l n các b dò tìm, ho c m i b dò tìm c n ph i có nhi u c
tr ng, ho c c hai, thì ng th i c ng s làm cho t c gi m i. M t h ng
kh c ph c nh c m này là s d ng b dò tìm phân t ng T={ti}. B dò tìm
phân t ng bao g m nhi u t ng, m i t ng ti = {cj} là m t b dò tìm k t h p v i s
ng các b dò tìm khác nhau nên có t c và chính xác khác nhau. Khi dò
tìm t t c các khuôn m t trong nh, t t c các c a s con W0={wi,j,s} v i các kích
th c s khác nhau t i các t a (i,j) s c ki m tra xem có ph i là m t ng i
hay không. Qua m i t ng ti, Wi = ti(Wi-1) trong ó |Wi|<<|Wi-1| do qua m i t ng,
các c a s không ph i ng viên s b lo i s m. u này cho phép chúng ta xây

Lê H ng Chuyên _ CT701 Trang: 35


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

ng các t ng sao cho: càng v sau ph c t p c a các t ng càng l n trong khi


các t ng càng th p thì ph c t p càng n gi n và ph i lo i c nhi u ng
viên, nh ng t l lo i sai ph i th p.

Hình 2-5: Minh ho b dò tìm phân t ng

Xét m i t ng tk = {ci} ta có t l lo i sai c a tk c tính nh sau:


K
F = ∏i=1
fi (2.17)

Trong ó fi chính là t l lo i sai ng v i b dò tìm ci và K chính là s b


dò tìm c a t ng tk. T ng t , chính xác c a t ng tk c tính nh sau :
K
D = ∏
i=1
d i
(2.18)

Trong ó d i là chính xác c a ng v i b dò tìm ci. ng th i c ng v i


cách tính này, ta có th tính c chính xác c a toàn b các t ng T={ti} là:

|T | |T | |t i |
G = ∏
i=1
Di = ∏ ∏ i =1 j =1
c ij (2.19)

y khi cho tr c m t t l lo i sai D và chính xác là F, ta có th hu n


luy n t ng b phân lo i t sao cho t có t l lo i sai là D và ô chính xác là F. Và

Lê H ng Chuyên _ CT701 Trang: 36


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

p l i quá trình hu n luy n t ng ta c b hu n luy n g m nhi u t ng v i


chính xác G ho c s t ng n nh mong mu n.
D i ây là thu t toán hu n luy n m t t ng v i t l lo i sai f và
chính xác d cho tr c:
0. u vào:
f (t l nh n sai m u d ng t i a ch p nh n c)
d (t l nh n úng t i thi u trong l p)
Ftarget (t l nh n sai m u d ng)
P=t p m u d ng
N=t p m u âm
1. Kh i t o:
F0=1.0
D0=1.0
i=0
2. Trong khi (Fi>Ftarget)
ißi+1
ni = 0; Fi = Fi-1
Trong khi (Fi > f × Fi-1 )
ni = ni + 1
- d ng P và N hu n luy n m t phân lo i H v i ni c
tr ng, dùng Adaboost
- Thêm b phân lo i hi n th i vào C
- Tính Fi và Di cho b phân lo i C hi n th i trên t p h p l
- Gi m ng ng cho l p th i cho n khi b phân lo i C hi n
th i t t l dò tìm t i thi u là d x Di-1 ( u này c ng nh
ng Fi)

- Nß

- u Fi > Ftarget thì nh giá b dò tìm C hi n th i trên t p nh


không ph i m t ng i và a các m u dò tìm b l i vào t p N
3. u ra: b dò tìm a t ng C

Lê H ng Chuyên _ CT701 Trang: 37


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

2.5. Hu n luy n dò tìm khuôn m t


- li u hu n luy n: T p A g m các nh là khuôn m t, t p B g m các nh
không là khuôn m t (B>>A).
- Trích ch n các c tr ng c a nh.
- Ti n hành x lí t p nh hu n luy n b ng Histogram và nh n d ng biên
CANNY
- Áp d ng b hu n luy n phân t ng.

2.6. Dò tìm khuôn m t


Vi c dò tìm khuôn m t trong nh qua b phân t ng ã hu n luy n g p m t
n là s s a s v i các kích th c khác nhau quá l n. kh c ph c v n
này, ph ng pháp dò theo ki n trúc tháp c áp d ng nh sau: xét nh s kích
th c (wxh) , step = 0 , h s co scale = 1.2
Ø L p trong khi kích th c (w x h) còn l n h n c a s nh m t ng i hu n
luy n (w0 x h0):
- Duy t toàn b các v trí (x,y) c a s v i kích th c (w0 x h0) , v i m i v
trí ti n hành:
− Áp d ng b dò tìm phân t ng xác nh có ph i m t ng i hay
không
− u là m t ng i t i v trí (x,y) thì th c t m t ng i t i v trí
(x*scalestep, y*scalestep) và kích th c c a s là (w0*scalestep,
h0*scalestep)
- Gán w1 = w / scale và h1 = h / scale
- Thu nh nh t kích th c (w x h) n (w1 x h1)
- Gán w = w1 và h = h1
- step = step + 1
Nh n xét :
s co scale quy t nh m n c a các c a s dò tìm, n u nh scale càng
nh ( 1 ) thì càng có nhi u c a s dò tìm nên càng chính xác h n.

Lê H ng Chuyên _ CT701 Trang: 38


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

Áp d ng thu t toán dò theo ki n trúc tháp nh trên ta có th dò tìm t t c


các khuôn m t t t c các v trí, song kích th c dò tìm m ib c nh sau :
- c 1 : kích th c t (w0, h0) n (w0*scale,h0*scale)
- c 2 : kích th c t (w0*scale,h0*scale) n (w0*scale2,h0*scale2)
- ………….
- c n : kích th c t (w0*scalen-1,h0*scalen-1) n (w0*scale,h0*scale)
2.7. Nh n xét
2.7.1. u m

- Ph ng pháp cho chính xác t ng i cao (trên 90%), t c dò tìm


khuôn m t khá nhanh, thích h p dò tìm khuôn m t trong th i gian th c,
trong video.
- Thích h p v i vi c hu n luy n d li u b nhi u.
- Ph ng pháp trích ch n c tr ng th c hi n khá nhanh.
2.7.2. Khuy t m

- Thu t toán hu n luy n khuôn m t th c hi n ch m do có r t nhi u b phân


lo i y u.
- Ch dò tìm c các khuôn m t nhìn th ng và góc quay nh
- Không ít các tính ch t c a AdaBoost mang tính ch t nh n nh và ch a
c ch ng minh ch t ch .

Lê H ng Chuyên _ CT701 Trang: 39


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

CH NG 3: PHÁT HI N KHUÔN M T
D NG M NG N RON.

3.1. ng quan v m ng n ron nhân t o


3.1.1. ng n ron sinh h c

Sau ây là nh ng thành ph n chính trong c u trúc c a m t n -ron:

Hình 3-1: Mô hình n -ron sinh h c

- Soma là thân c a n -ron.


- Các dendrites là các dây m nh, dài, g n li n v i soma, chúng truy n d
li u (d i d ng xung n th ) n cho soma x lý. Bên trong soma các d
li u ó c t ng h p l i. Có th xem g n úng s t ng h p y nh là m t
phép l y t ng t t c các d li u mà n -ron nh n c.
- t lo i dây d n tín hi u khác c ng g n v i soma là các axon. Khác v i
dendrites, axons có kh n ng phát các xung n th , chúng là các dây d n
tín hi u t n -ron i các n i khác. Ch khi nào n th trong soma v t
quá m t giá tr ng ng nào ó (threshold) thì axon m i phát m t xung n
th , còn n u không thì nó tr ng thái ngh .
- Axon n i v i các dendrites c a các n -ron khác thông qua nh ng m i n i
c bi t g i là synapse. Khi n th c a synapse t ng lên do các xung phát
ra t axon thì synapse s nh ra m t s ch t hoá h c (neurotransmitters);
các ch t này m "c a" trên dendrites cho các ions truy n qua. Chính

Lê H ng Chuyên _ CT701 Trang: 40


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

dòng ions này làm thay i n th trên dendrites, t o ra các xung d li u


lan truy n t i các n -ron khác.
- Có th tóm t t ho t ng c a m t n -ron nh sau: n -ron l y t ng t t c
các n th vào mà nó nh n c, và phát ra m t xung n th n u t ng
y l n h n m t ng ng nào ó. Các n -ron n i v i nhau các synapses.
Synapse c g i là m nh khi nó cho phép truy n d n d dàng tín hi u qua
các n -ron khác. Ng c l i, m t synapse y u s truy n d n tín hi u r t khó
kh n.
- Các synapses óng vai trò r t quan tr ng trong s h c t p. Khi chúng ta
c t p thì ho t ng c a các synapses c t ng c ng, t o nên nhi u
liên k t m nh gi a các n -ron. Có th nói r ng ng i nào h c càng gi i thì
càng có nhi u synapses và các synapses y càng m nh m , hay nói cách
khác, thì liên k t gi a các n -ron càng nhi u, càng nh y bén.
3.1.2. ron nhân t o:

Là m t n v tính toán có nhi u u vào và m t u ra, m i u vào n


m t synapse. c tr ng c a n -ron là m t hàm kích ho t phi tuy n chuy n
i t h p tuy n tính c a t t c các tín hi u u vào thành tín hi u u ra. Hàm
kích ho t này m b o tính ch t phi tuy n cho tính toán c a m ng n -ron.

Hình 3-2: Mô hình m t n -ron nhân t o

Lê H ng Chuyên _ CT701 Trang: 41


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

3.1.3. Các thành ph n c a n ron nhân t o:

3.1.3.1. Synapse:

Là m t thành ph n liên k t gi a các n -ron, nó n i u ra c a n -ron l p


này v i u vào c a m t n -ron trong l p khác. c tr ng c a synapse là m t
tr ng s mà m i tín hi u i qua u c nhân v i tr ng s này. Các tr ng s
synapse chính là các tham s t do b n c a m ng n -ron, có th thay i
c nh m thích nghi v i môi tr ng xung quanh.
3.1.3.2. c ng

c ng tính t ng các tín hi u u vào c a n -ron, ã c nhân v i


các tr ng s synapse t ng ng, phép toán c mô t ây t o nên m t b h p
tuy n tính.
3.1.3.3. Hàm truy n (hàm kích ho t):

Hàm kích ho t hay còn g i hàm kích ho t phi tuy n, chuy n im tt


p tuy n tính c a t t c các tín hi u u vào thành tín hi u u ra. Hàm kích
ho t này m b o tính ch t phi tuy n cho tính toán m ng n -ron. Nó c xem
nh là m t hàm gi i h n, nó gi i h n ph m vi biên cho phép tín hi u u ra
trong m t kho ng giá tr h u h n. M t s hàm truy n (kích ho t ) c b n trong
ng n -ron c trình bày b ng 3.1.
v ng n -ron nhân t o :
Là m t h th ng bao g m nhi u ph n t x lý n gi n (hay còn g i là
-ron) t a nh n -ron th n kinh c a não ng i, ho t ng song song và c
i v i nhau b i các liên k t n -ron. M i liên k t kèm theo m t tr ng s nào ó,
c tr ng cho tính kích ho t ho c c ch gi a các n -ron.
Có th xem các tr ng s là ph ng ti n l u tr thông tin dài h n trong
ng n -ron và nhi m v c a quá trình hu n luy n (h c) c a m ng là c p nh t
các tr ng s khi có thêm thông tin v m u h c, hay nói m t cách khác, các tr ng
u c u ch nh sao cho dáng u vào ra c a m ng s mô ph ng hoàn
toàn phù h p v i môi tr ng ang xem xét.

Lê H ng Chuyên _ CT701 Trang: 42


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

ng 3.1: M t s hàm kích ho t.


Tên hàm Công th c
1. hardlim a=0 v in<0
a=1 v in≥0
2. hardlims a = -1 v in<0
a=1 v in≥0
3. purelin a=n
4. Satlin a=0 v in<0
a=n v i0≤n≤1
a=1 v in>1
5. satlins a = -1 v in<0
a=n v i0≤n≤1
a=1 v in>1
6. tansig en − e−n
a=
1 + e −n
7. poslin a=0 v in<0
a=n v in≥0
8. compet a = 1 v i n -ron có n l n nh t
a = 0 v i các n -ron còn l i
9. logsig a=
1
1 + e−n

3.1.4. Mô hình c b n c a m ng n ron

Hình 3-3: n gi n v m t m ng n -ron nhân t o

Lê H ng Chuyên _ CT701 Trang: 43


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

Mô hình m ng n -ron trên g m 3 l p: l p nh p (input), l p n và l p


xu t (output). M i nút trong l p nh p nh n giá tr c a m t bi n c l p và
chuy n vào m ng.
li u t t t c các nút trong l p nh p c tích h p – ta g i là ng tr ng
hóa – và chuy n k t qu cho các nút trong l p n. G i là “ n” vì các nút trong
p này ch liên l c v i các nút trong l p nh p và l p xu t, và ch có ng i thi t
m ng m i bi t l p này (ng i s d ng không bi t l p này).
Các nút trong l p xu t nh n các tín hi u t ng tr ng hóa t các nút trong l p
n. M i nút trong l p xu t t ng ng v i m t bi n ph thu c.
3.1.5. Xây d ng m ng n ron

c b n ta có th hi u m ng n -ron là m t th có h ng. Trong ó


các nh c a th là các n -ron và các c nh c a th là các liên k t gi a các
-ron.
h1
g1
x h2 f
g2
h3

Vì v y xây d ng m t m ng n -ron ta xây d ng m t th có h ng: s nh


a th b ng s n -ron trong m ng, giá tr c a các c nh chính là tr ng s liên
t n -ron.
3.1.5.1. Gi i thu t xây d ng m ng n ron n gi n.

Input: Cho :
• ng n -ron có num_layer l p (v i num_layer>1).
• i l p có num_of_layer n -ron (num_of_layer>=1).
• Tr ng s w liên k t n -ron ng u nhiên trong kho ng (-a,a).
Output: M ng n -ron nhân t o.

Ki u d li u: ch n l u d ki u m ng :
int num_layer;

Lê H ng Chuyên _ CT701 Trang: 44


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

int num_of_layer[num_layer];
float w[i][j][k]; v i 2<=i<=num_layer, 1<=j,k<=num_of_layer[] ,

Thu t toán:
- c 1: Ch n l p i=2 là l p b t u (ngay sau l p input).
- c 2: Ch n l p i là l p hi n th i.
- c 3 : T i l p ang xét i , xét n -ron th j .
- c 4: Th c hi n kh i t o ng u nhiên tr ng s k t n i v i n -ron k c a
p i-1 trong kho ng (-a,a).
w(i,j,k)=random(-a,a) (tr ng s k t n i c a n -ron th j c a layer[i] v i n -
ron th k c a layer[i-1] )
- c 5: N u k <= num_of_layer[i-1] quay l i “B c 4”, ng c l i th c
hi n “B c 6”.
- c 6: N u j<=num_of_layer[i] quay l i “B c 3”, ng c l i th c hi n
“B c 7”.
- c 7: N u i<=num_layer quay l i “B c 3”. ng c l i k t thúc.
3.1.6. Hu n luy n m ng n ron.

3.1.6.1. Ph ng pháp h c.

- ng n -ron nhân t o ph ng theo vi c x lý thông tin c a b não ng i,


do v y c tr ng c b n c a m ng là có kh n ng h c, kh n ng tái t o các
hình nh và d li u khi ã h c. Trong tr ng thái h c thông tin c lan
truy n theo hai chi u nhi u l n h c các tr ng s .
- Quá trình h c hay còn g i là quá trình hu n luy n là m t quá trình mà
trong các tham s t do (các tr ng s liên k t) c u ch nh nh m m c
ích thích nghi v i môi tr ng. iv iv n h c cho m ng m ng n -ron
ng i ta th ng quan tâm t i 3 y u t chính, ó là:
- Quy t c h c: ph ng th c n n t ng cho vi c thay i tr ng s liên k t.
- Mô hình h c: cách th c m ng n -ron quan h v i môi tr ng trong quá
trình h c.
- Thu t toán h c: các b c ti n hành c th cho m t quá trình h c.

Lê H ng Chuyên _ CT701 Trang: 45


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

- Có 3 ki u h c chính, m i ki u h c t ng ng v i m t nhi m v h c tr u
ng. ó là h c có giám sát (có m u), h c không giám sát và h c t ng
ng. Thông th ng lo i ki n trúc m ng nào c ng có th áp ng c
yêu c u c a th c t .
v c có giám sát.
t thành ph n không th thi u c a ph ng pháp này là s có m t c a m t
ng i th y ( bên ngoài h th ng) nh ta th y hình 3-4 . Ng i th y này có
ki n th c v môi tr ng th hi n qua m t t p h p các c p u vào - u ra ã
c bi t tr c. H th ng h c ( ây là m ng n -ron) s ph i tìm cách thay i
các tham s bên trong c a mình (các tr ng s và các ng ng) t o nên m t
ánh x có kh n ng ánh x các u vào thành các u ra mong mu n. S thay
i này c ti n hành nh vi c so sánh gi a u ra th c s và u ra mong
mu n.
v c không giám sát.
Trong h c không có giám sát, ta c cho tr c m t s d li u x và hàm
chi phí c n c c c ti u hóa có th là m t hàm b t k c a d li u x và u ra
a m ng, f – hàm chi phí c quy t nh b i phát bi u c a bài toán. Ph n l n
các ng d ng n m trong vùng c a các bài toán c l ng nh mô hình hóa
th ng kê, nén, l c (filtering), phân nhóm (clustering).
u vào tr ng thái
a môi tr ng
Môi tr ng Th y giáo

u ra
mong mu n

u ra th c
th ng
h c

Sai s

Hình 3-4: Mô hình h c có giám sát

Lê H ng Chuyên _ CT701 Trang: 46


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

v c t ng c ng.
li u x th ng không c t o tr c mà c t o ra trong quá trình m t
agent t ng tác v i môi tr ng. T i m i th i m t, agent th c hi n hành ng
yt và môi tr ng t o m t quan sát xt v i m t chi phí t c th i Ct, theo m t quy
trình ng nào ó (th ng là không c bi t). M c tiêu là m t sách l cl a
ch n hành ng c c ti u hóa m t chi phí dài h n nào ó, ngh a là chi phí tích
y mong i. Quy trình ho t ng c a môi tr ng và chi phí dài h n cho m i
sách l c th ng không c bi t, nh ng có th cl ng c. M ng n -ron
nhân t o th ng c dùng trong h c t ng c ng nh m t ph n c a thu t toán
toàn c c. Các bài toán th ng c gi i quy t b ng h c t ng c ng là các bài
toán u khi n, trò ch i và các nhi m v quy t nh tu n t (sequential decision
making) khác.
3.1.6.2. Thu t toán h c.

v Thu t toán h c c a m ng n -ron m t l p( perceptron ).


Xét tr ng h p perceptron s d ng hàm kích ho t ng ng:

 d

 + 1,

∑v w
i =1
i i >t
output =  d (3.1)
 − 1,
 ∑v w
i =1
i i ≤t

N u ta cho w0= -t và v0=1, ta có th vi t l i

 d

 + 1,

∑v w i i >0
 d 
= sign  ∑ v i w i 
i=0
output =  d
 i =0  (3.2)
 − 1,
 ∑ vi wi ≤ 0
i =0

Thu t toán:
Thu t toán h c c a perceptron hay m ng n -ron m t l p g m 3 b c
chính:

Lê H ng Chuyên _ CT701 Trang: 47


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

c 1: Kh i t o:
kh i t o tr ng s w (0 ho c ng u nhiên).
ch n t c h c µ.
c2 :H c
V i m i m u (x,t) trong t p h c.
Tính y=f(x, w).
N u y!=t thay i vect tr ng s w v i:
w(m i (c )+ µ(t-y)x;
c 3: l p l i b c 2 cho t t c các m u.

v Thu t toán h c c a m ng n -ron nhi u l p


(back-Propagation -- Lan truy n ng c ).
Hu n luy n m ng n -ron nhi u chi u MLP :
- Là quá trình thay i giá tr c a w m ng bi u di n c d li u h c.
- Là s khác nhau gi a giá tr th t hàm m u và k t qu d oán c a m ng
i là l i (h c có giám sát).
- Hàm l i là hàm n+1 bi n. N u v trong không gian n+1 chi u thì có m t
t là l i.
- Quá trình hu n luy ns tìm ra wi* l i nh nh t
Thu t toán:
Xét m ng n -ron 3 l p : input, hiden và output.
Hàm kích ho t các n -ron : logistic (sigmoid).
1
g ( x) = (3.3)
1 + e −x
- c 1: Kh i t o tr ng s w ng u nhiên nh .
- c 2 : Ch n l p u vào x và ính nó vào l p u vào .
- c 3 : Truy n s kích ho t qua tr ng s n khi kich ho t các n -ron
u ra.

Lê H ng Chuyên _ CT701 Trang: 48


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

- c 4: Tính o hàm riêng “ E” theo tr ng s cho l p xu t. s d ng


GRADIENT c a hàm l i .
- c 5: Tính o hàm riêng “ E” theo tr ng s cho l p n.
- c 6: C p nh t t t c tr ng s theo Wi=W(i-1)-µ( E/ Wi)
- c 7: Quay lai “B c 2” cho n “B c 6” cho t t c các m u.

Trong ó: Gradient hàm l i:


- -ron t ng output:
y1
b1
b2
y2 Z = g(v)
M
k (3.4)
v = b0 + ∑ yibi
M bk
b0
i =1
yk I
1
g ( x) =
1 + e −x

- Hàm l i
1
E ( z) = ( z − 1) 2 Giá tr th t c a
2 u hu n luy n (3.5)

- o hàm riêng c a hàm l i theo tr ng s b:

∂E ∂E ∂z ∂v
=
∂b ∂z ∂v ∂b (3.6)

- Ta có:

∂E
= (z − t)
∂z
∂z ∂g
= = z (1 − z )
∂v ∂v (3.7)
∂v 1, i = 0
=
∂b1  yi , i > 0

Lê H ng Chuyên _ CT701 Trang: 49


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

- t:

∂E ∂z
p= = ( z − t ) z ( z − 1) (3.8)
∂z ∂v

- Ta c:

∂E  p i = 0
=
∂bi  pyi i > 0 (3.9)

- -ron t ng n:

x1
a1
x2 a2
M (3.10)
M ad
a0
xd I

y = g(u)
d
u = a0 + ∑ xi ai
i =1

- o hàm riêng c a hàm l i theo tr ng s :

∂E ∂E ∂y ∂u
=
∂a ∂y ∂u ∂a (3.11)

Lê H ng Chuyên _ CT701 Trang: 50


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

- Ta có:

∂E K ∂E ∂zi ∂vi
=∑
∂y i =1 ∂zi ∂vi ∂y
∂E ∂zi
= ( zi − ti ) zi (1 − zi ) = pi
∂zi ∂vi
∂vi
= bi
∂y
∂y
= y (1 − y ) (3.12)
∂u
∂u  1, j = 0
=
∂a j c j , j > 0

- t:

∂E ∂y  K 
q= =  ∑ pi bi  y (1 − y ) (3.13)
∂y ∂u  i =1 
- Ta c:

∂E  q i = 0
=
∂a1 qxi i > 0 (3.14)

Sau khi tính c o hàm riêng c a hàm l i theo t ng tr ng s . Tr ng s


c u ch nh b ng cách tr b t m t l ng b ng tích c a o hàm riêng và
c h c:

∂E
wi = wi − µ
∂wi (3.15)

Lê H ng Chuyên _ CT701 Trang: 51


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

3.2. Chu n b d li u
3.2.1. Gi i thi u

Dùng ti p c n khung nhìn dò tìm khuôn m t, b dò tìm khuôn m t theo


khung nhìn ph i xác nh xem m t c a s con c a m t nh có thu c v t p nh
khuôn m t hay không. Các bi n i trong nh khuôn m t có th làm t ng
ph c t p c a m u khuôn m t, làm cho vi c dò tìm khó kh n h n. Ph n này s
mô t các k thu t làm gi m s bi n i trong nh khuôn m t.
3.2.2. Gán nhãn và canh biên các c tr ng khuôn m t

c u tiên trong vi c gi m s các bi n i trong nh khuôn m t là canh


biên các khuôn m t này v i khuôn m t khác. Vi c canh biên này s làm gi m
các bi n i v v trí, h ng, và t l các khuôn m t. Vi c canh biên c tính
tr c ti p t các nh. Và nó t o ra không gian nh khuôn m t t i thi u. C ng
nh khuôn m t có th bi n i nhi u, làm cho m t s khuôn m t khó canh biên
i nhau. Ta dùng gi i pháp gán nhãn th công các m u khuôn m t. C th là v
trí hai m t, nh m i, và trung tâm mi ng c a m i khuôn m t. B c ti p theo là
dùng thông tin này canh biên các khuôn m t v i khuôn m t khác. Tr c h t
nh ngh a canh biên gi a hai t p m c tr ng. ó là phép quay, bi n it
, và d ch chuy n làm c c ti u hoá t ng bình ph ng kho ng cách gi a t ng
p c tr ng t ng ng. Trong không gian hai chi u, m t phép bi n i to
nh v y có th c vi t d i d ng sau:

x
 x'   s cos ϑ − s sin ϑ   x   t x   a − b t x   
  =   .   +   =   . y 

 y '   s sin ϑ s cos ϑ   y   y   t b a t (3.16)
y   
1 
u có nhi u t p to t ng ng, có th vi t nh sau:
 x1 − y1 1 0  x1' 
y  a   ' 
 1 x1 0 1     y1 
b
 x2 − y 2 1 0 .   =  x 2' 
  t x  ( (3.17)
 y2 x2 0 1     y 2' 
  y   M 
t
 M  

Lê H ng Chuyên _ CT701 Trang: 52


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

Khi có hai hay nhi u h n c p m c tr ng phân bi t, h các ph ng


trình tuy n tính có th c gi i b ng ph ng pháp o ng c gi . G i ma tr n
T
bên trái là A, vector (a, b, tx, ty) là T, và bên ph i là B, khi ó l i gi i:
T = (AT A)-1(AT B) (3.18)
i gi i o ng c gi a ra phép bi n i T làm c c ti u t ng bình
ph ng khác bi t gi a t p to x’i, y’i và phiên b n ã bi n i c a xi, yi. Canh
biên t p các m c tr ng.
- Kh i t o F, vector s là v trí trung bình c a m i c tr ng gán nhãn trên
i khuôn m t, v i m t s v trí c tr ng ban u. Trong tr ng h p
canh biên các khuôn m t th ng, các c tr ng này là v trí mong mu n c a
hai m t, nh m i, và trung tâm mi ng c a m i khuôn m t trong c a s
u vào.
- i m i khuôn m t i, dùng th t c canh biên tính phép quay, d ch
chuy n, và bi n i t l t t nh t canh biên các c tr ng khuôn m t Fi
i các v trí c tr ng trung bình F . G i v trí c tr ng ã canh biên F’i.
- p nh t F b ng vi c l y trung bình các v trí c tr ng ã canh biên F’i
cho m i khuôn m t i.
- To c tr ng trong F c quay, d ch chuy n và bi n i phù h p
i m t s to chu n. To chu n là to c dùng làm giá tr
kh i t o cho F .
- Sang b c 2.

Hình 3-5: Trái: M u khuôn m t chu n. Ph i: Các v trí c tr ng khuôn m t


chu n (tròn tr ng), và phân ph i c a các v trí c tr ng th c (sau khi
canh biên) t m i m u (các m en).

Lê H ng Chuyên _ CT701 Trang: 53


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

Hình 3-6: Ví d nh khuôn m t th ng c canh biên.

Trong vi c hu n luy n b dò tìm, vi c thu th p s m u l n là v n


quan tr ng. M t k thu t th ng dùng là khung nhìn o, trong ó các nh m u
i c t o ra t nh th c (quay, d ch chuy n, bi n i t l ng u nhiên nh
u).
3.2.3. Ti n x lý v sáng và t ng ph n trên t p m u h c

Sau khi canh biên các khuôn m t, v n còn m t ngu n bi n i chính


(không k bi n i v b n ch t gi a các khuôn m t). Bi n i này gây ra do
sáng và các c tính máy nh, d n n các nh có sáng t i hay kém, ho c
nh có t ng ph n kém. Ta x lý v n này b ng ti p c n x lý nh n
gi n. K thu t ti n x lý tr c h t cân b ng các giá tr m t trên toàn c a s .
p hàm bi n i tuy n tính giá tr m t trong vùng tròn trong c a s . Các
m nh bên ngoài hình tròn có th là n n. N u m t c a pixel (x,y) là I(x,y),
khi ó cách bi n i tuy n tính này c tham s hoá b i a, b, c v i:

a
 
(x y 1) .  b  = I ( x , y ) (3.19)
c 
 

Lê H ng Chuyên _ CT701 Trang: 54


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

Vi c ch n cách bi n i này là tu ý. Nó có th bi u di n các khác bi t v


sáng trên toàn nh. Các bi n i c gi i h n là tuy n tính s tham s ít
và vi c t o l p hàm nhanh chóng. T p h p v i m i pixel trên toàn c a s hình
tròn ta c ph ng trình ma tr n ràng bu c, và c gi i b ng ph ng pháp
o ng c gi . Ph ng trình tuy n tính này s x p x toàn b sáng c a m i
ph n c a c a s , và b tr iv ic as cân b ng bi n iv sáng.
Ti p theo, cân b ng l c , ánh x không tuy n tính các giá tr m t
r ng mi n c ng trong c a s . L c c tính v i các pixel trong
vùng tròn trong c a s . Vi c này bù cho các khác bi t trong vi c thu nh n u
vào camera, và c ng c i thi n t ng ph n trong m t s tr ng h p. Các k t
qu c a m i b c c cho trong Hình 3-7.

Hình 3-7: Các b c trong vi c ti n x lý c a s . u tiên, xây d ng hàm ánh


tuy n tính v i các giá tr m t trong c a s , và sau ó tr i nó,
hi u ch nh v sáng. Ti p theo, áp d ng cân b ng l c ,
hi u ch nh u vào camera khác nhau và c i thi n t ng ph n.
Trong m i b c, vi c ánh x c tính v i các pixel bên trong hình
tròn, và c áp d ng v i toàn c a s .

Lê H ng Chuyên _ CT701 Trang: 55


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

3.3. Hu n luy n dò tìm khuôn m t


3.3.1. Gi i thi u

Ph n này trình bày thu t toán d a trên m ng n -ron dò tìm ra các c a s


có ch a các khuôn m t ng, th ng trong nh. Thu t toán th c hi n b ng cách
áp d ng m t hay nhi u m ng n -ron tr c ti p v i các ph n c a nh u vào, và
ki m tra các k t qu c a chúng. M i m ng c hu n luy n k t xu t m t k t
qu là có hay không có khuôn m t.
Hu n luy n m ng n -ron dò tìm khuôn m t là m t công vi c y thách
th c, vì khó kh n trong vi c bi u di n các nh “không khuôn m t”. Không nh
vi c nh n d ng khuôn m t, trong ó các l p phân bi t là các khuôn m t khác
nhau. Hai l p g i là phân bi t trong dò tìm khuôn m t là “ nh có ch a khuôn
t” và “ nh không ch a khuôn m t”. D dàng l y c m u nh ch a khuôn
t n hình, nh ng vi c l y m u nh không ch a khuôn m t n hình khó
n r t nhi u. Ta tránh vi c dùng t p hu n luy n có kích th cl n bi u di n
không khuôn m t b ng vi c ch n thêm nh vào t p hu n luy n khi ti n hành
hu n luy n. Ph ng pháp “bootstrap” nh m gi m kích th c c a t p hu n luy n
n thi t. Vi c dùng cách th c x lý gi a a m ng và các heuristic làm rõ
ràng các k t qu và c i thi n áng k chính xác c a b dò tìm.
3.3.2. Hu n luy n dò tìm khuôn m t

th ng ho t ng theo hai giai n: tr c h t áp d ng t p b dò tìm d a


trên m ng n -ron vào nh, và sau ó dùng b ki m tra k t h p các u ra.
Các b dò tìm riêng l kh o sát m i v trí trong nh m t vài t l , tìm v trí có
th ch a khuôn m t. Sau ó b ki m tra h p các dò tìm t các m ng riêng l và
lo i tr các dò tìm b l p. Thành ph n u tiên c a h th ng là m ng n -ron
nh n u vào là vùng 20x20 (pixels) c a nh và t o u ra trong kho ng
1 n -1, bi u th có hay không có khuôn m t. dò tìm m i khuôn m t trong
nh, m ng c áp d ng m i v trí trong nh. dò tìm các khuôn m t l n
n kích th c c a s , nh u vào c gi m kích th c nhi u l n, và áp d ng
dò tìm m i kích th c. M ng có m t s b t bi n v i v trí và kích th c.
b t bi n xác nh s t l và v trí nó c dùng. V i bài này, ta áp d ng b

Lê H ng Chuyên _ CT701 Trang: 56


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

c m i v trí m nh, và gi m t l xu ng 1.2 m ib c phân tích nh t


phân.
Sau khi c a s 20x20 pixel c trích ra t m t v trí và t l nào ó trong
nh nh p, nó c ti n x lý dùng các b c hi u ch nh sáng và cân b ng
c . C a s sau khi ti n x lý c truy n qua m ng n -ron. C a s u vào
c chia thành các m nh nh , 4 vùng 10x10 (pixels), 16 vùng 5x5 (pixels), và
6 vùng ch ng l p 20x5 (pixels). M i vùng có liên k t y v im t nv n.
i th nghi m sau, ta dùng m ng v i hai và ba t p các nv n này. Hình
dáng c a các vùng con này c ch n cho phép các nv n dò tìm các c
tr ng cho vi c dò tìm khuôn m t. C th , các s c ngang cho phép các n v n
dò tìm các c tr ng nh mi ng, c p m t, trong khi các n v n v i vùng ti p
thu hình vuông có th dò tìm các c tr ng nh t ng m t, m i, c a mi ng. Các
th nghi m cho th y r ng hình d ng chính xác c a các vùng này không quan
tr ng, quan tr ng là u vào c chia thành các vùng nh thay vì dùng các k t
i hoàn toàn v i toàn b u vào. T ng t các m u liên k t u vào th ng
c dùng trong vi c nh n d ng ti ng nói và ký t . M ng có m t u ra giá tr
th c, ch nh c a s có ch a khuôn m t hay không.
3.3.2.1. nh hu n luy n khuôn m t

dùng m ng n -ron phân lo i c a s là khuôn m t hay không, ta c n các


u hu n luy n cho m i t p. V i các m u khuôn m t ta dùng k thu t canh biên
các nh khuôn m t trong ó m t s m c tr ng ã gán nhãn b ng tay. Sau
khi canh biên, các khuôn m t c co v v m t kích th c, v trí và h ng
ng nh t trong c a s 20x20 pixel. nh c co v v i m t l ng ng u nhiên
1 / 1 .2 n 1 .2 . u này cho phép b dò tìm c áp d ng m i v trí
pixel và m i t l trong chóp nh, và v n dò tìm các khuôn m t v trí và t l
trung bình. Ngoài ra, cho b dò tìm m nh h n v i các bi n i không áng k
trong khuôn m t, chúng c quay v i m t l ng ng u nhiên (t i a 10o).
3.3.2.2. nh hu n luy n không ph i khuôn m t

Ta c n nhi u nh không khuôn m t hu n luy n b dò tìm khuôn m t, vì


a d ng c a nh không khuôn m t l n h n nhi u so v i nh khuôn m t. M t
p nh không ch a khuôn m t là các nh phong c nh ch ng h n cây, núi, và toà

Lê H ng Chuyên _ CT701 Trang: 57


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

nhà. Thu th p t p không khuôn m t “ c tr ng” là vi c khó. H u nh b t k nh


nào c ng có th c xem nh là m u không khuôn m t; không gian nh không
khuôn m t l n h n không gian nh khuôn m t. Ti p c n th ng kê máy h c cho
ng ta nên hu n luy n m ng n -ron trên cùng phân b nh mà m ng th y khi
ch y. V i b dò tìm khuôn m t, s m u khuôn m t là 15.000 là m t s thích
p. Tuy nhiên, t p i di n nh phong c nh ch a g n 150,000,000 c a s , và
vi c hu n luy n trên m t c s d li u khuôn m t có kích th c l n nh v y là
t khó. Ph n ti p theo mô t vi c hu n luy n trên m t c s d li u khuôn m t
này.
v Ph ng pháp hu n luy n ch ng

- o t p kh i t o các nh không khuôn m t b ng cách t o 1000 nh ng u


nhiên. Áp d ng các b c ti n x lý cho m i nh này.
- Hu n luy n m ng n -ron nhân t o cho ra 1 v i các m u khuôn m t,
và -1 v i các m u không khuôn m t. Trong l n l p u tiên c a vòng l p,
các tr ng s m ng c kh i t o ng u nhiên. Sau l n l p u tiên này, ta
dùng các tr ng s c tính qua vi c hu n luy n trong l n l p tr c.
- Ch y h th ng trên nh phong c nh không ch a khuôn m t. Thu th p các
nh con trong ó m ng nh n l m là khuôn m t (ho t hoá u ra >0).
- Ch n ng u nhiên 250 nh con này, áp d ng các b c ti n x lý, và sau ó
thêm chúng vào t p m u âm. Sang B c 2. Thu t toán hu n luy n dùng
trong B c là thu t toán h i quy l i chu n. Các n -ron dùng hàm kích
ho t d ng tanh, cho u ra t -1 n 1, do ó ng ng 0 v i dò tìm là khuôn
t. Vì ta không hu n luy n v i m i m u âm, các i s xác su t c a ph n
tr c không áp d ng cho vi c thi t l p ng ng dò tìm.
- Vì s m u âm l n h n nhi u so v i s m u d ng, các bó m u hu n luy n
ch ch a các m u âm, s không thích h p cho vi c hu n luy n m ng
-ron. Thay vì m i bó g m 100 m u d ng và âm l y ng u nhiên t toàn
t p hu n luy n, và truy n qua thu t toán h i quy ng c. Ta ch n các bó
hu n luy n có 50% m u âm và 50% m u d ng. u này m b o r ng

Lê H ng Chuyên _ CT701 Trang: 58


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

ban u, khi t p m u d ng nhi u h n t p m u âm, m ng s h c t c hai


p.

Hình 3-8: Trong khi hu n luy n, h th ng ã hu n luy n m t ph n c áp


ng v i các nh phong c nh không ch a khuôn m t (nh bên trái).
t k vùng nào trong nh c dò là khuôn m t là l i, và c thêm
vào t p m u hu n luy n âm.

Lê H ng Chuyên _ CT701 Trang: 59


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

3.4. Quá trình dò tìm khuôn m t

p m u không p m u khuôn nh th nghi m


ph i khuôn m t t có khuôn m t

Canh biên m u y t t c các c a s


khuôn m t cùng v i v trí trên nh

Ti n x lí t p m u h c Ti n x lí các c a s

Hu n luy n dò Xác minh c a s Lo i b c a


tìm khuôn m t có ph i là khuôn Sai vì không
th ng t hay không ph i khuôn
t
úng

Gi l i v trí các m u là
khuôn m t

t h p các khuôn m t
mà v trí trùng l p

Các khuôn m t
i các v trí
khác nhau

Hình 3-9: lu ng x lí các b c chính trong v n dò tìm khuôn m t

Lê H ng Chuyên _ CT701 Trang: 60


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

Mô t l u :
- c 1: Ti p nh n nh u vào có ch a các khuôn m t.
- c 2: ánh d u các v trí có kh n ng là các khuôn m t trên nh.
ây là b c lo i a s nh ng v trí không ph i là khuôn m t, ch
gi l i m t s ít nh ng v trí có kh n ng là khuôn m t.
- c 3: Th c hi n chu n hóa d li u t i nh ng n i ã ánh d u
c 2 b ng các ph ng pháp: cân b ng l c c i thi n sáng
và t ng ph n
- c 4: Ki m tra nh ng v trí ã c chu n hóa b c 3 có th t s
là khuôn m t hay không? Công vi c này c th c hi n b i m ng
-ron ã c hu n luy n v i nhi u nh m u là khuôn m t và không
khuôn m t.
- c 5: a ra quy t nh âu là khuôn m t. Vi c làm này c th c
hi n b ng vi c k t h p nhi u m ng và m t s heuristic n gi n.

Lê H ng Chuyên _ CT701 Trang: 61


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

CH NG 4: CÀI T NG D NG.

4.1. Môi tr ng TEST


Ph n c ng : M t máy tính pentum IV.
Card h a 256 MB.
Ram 512 MB .
Ph n m m : Ngôn ng s d ng: C# trong b visual studio 2005.
p nh hu n luy n g m 100 nh m t ng i và 500 nh không
là m t ng i.

4.2. t s giao di n chính

Hình 4-1: Giao di n chính c a ch ng trình

Lê H ng Chuyên _ CT701 Trang: 62


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

Hình 4-2: Quá trình dò tìm khuôn m t

Hình 4-3: t qu c a quá trình dò tìm khuôn m t

Lê H ng Chuyên _ CT701 Trang: 63


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

Hình 4-4: Giao di n hi u ch nh các thông s c a m ng N -ron

Hình 4-5: Quá trình hu n luy n m ng N -ron

Lê H ng Chuyên _ CT701 Trang: 64


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

4.3. t qu

Hình 4-6: t qu c a ch ng trình sau khi dò tìm khuôn m t

(a) (b)

(c) (d)
Hình 4-7: (a) nh v i môi tr ng n n ph c t p; (b) và (c) là nh khuôn m t
i các t th khác nhau, (d) là nh khuôn m t b che khu t m t ph n.

Lê H ng Chuyên _ CT701 Trang: 65


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

Hình 4-8: t qu c a ch ng trình v i nh có nhi u m t ng i

Ch ng trình cho k t qu t ng i t t, dò tìm c h u h t các khuôn


t. Tuy nhiên v n còn nh ng phát hi n th a ho c thi u, u này là do t p m u
dùng hu n luy n. Trong th c t , t p các nh không là khuôn m t có s l ng
n và phong phú h n r t nhi u so v i t p nh là khuôn m t. Vì v y dùng t p
nh này hu n luy n cho máy là u r t khó kh n.

4.4. Nh n xét
dò tìm khuôn m t s d ng m ng N -ron th c hi n t ng i t t, tk t
qu kh quan khi dò tìm khuôn m t.
dò tìm khuôn m t s d ng m ng N -ron nh n bi t r t t t nh ng khuôn
t v i các t th khác nhau: th ng ng (hình 4-6), không th ng ng
(hình 4-7 b,c) ho c b che khu t m t ph n (hinh 4-7 d).
dò tìm th nghi m th c hi n dò tìm không t c k t qu nh mong
mu n trong môi tr ng nh có nhi u m t ng i. Nh hình 4-8 thì b dò tìm phát
hi n c 7/11 khuôn m t, phát hi n nh m l n 4 vùng có khuôn m t.
Xây d ng ch ng trình dò tìm khuôn m t s d ng m ng n -ron nh trên
ch mang tính ch t th nghi m thu t toán, c n ph i phát tri n nhi u h n n a
có th áp d ng vào trong th c t .

Lê H ng Chuyên _ CT701 Trang: 66


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

T LU N

Phát hi n khuôn m t là bài toán c b n và quan tr ng trong l nh v c th


giác máy tính. Công ngh hi n nay còn ang r t non tr và có nhi u v n c n
ph i ti p t c nghiên c u. V i tài “Tìm hi u m t s ph ng pháp phát hi n
khuôn m t trong nh”, khoá lu n ã trình bày t ng quan m t s ph ng pháp
phát hi n khuôn m t, t p trung trình bày hai ph ng pháp “phát hi n khuôn m t
d ng m ng N -ron” và “phát hi n khuôn m t s d ng AdaBoost”. Khoá lu n
ã xây d ng c m t h th ng phát hi n khuôn m t s d ng m ng N -ron cho
t qu phát hi n c khuôn trong nh. Vi c cài t th nghi m thu t toán trên
ng ngôn ng C# ã c th c hi n, b c u cho k t qu t t.
Trong t ng lai em s ti p t c nghiên c u thêm có th hoàn thi n h n
av chính xác và th i gian dò tìm, và c g ng ng d ng c ch ng
trình vào m t s h th ng ph c v các l nh v c: giám sát, theo dõi, an ninh trí
tu nhân t o…
Tuy nhiên do h n ch v u ki n và th i gian, khoá lu n s không th
tránh kh i nh ng thi u xót. Kính mong cs óng góp ý ki n c a th y cô và
các b n, em có th hoàn thi n t t h n tài nghiên c u c a mình trong t
khoá lu n này.
Trân tr ng c m n!

Lê H ng Chuyên _ CT701 Trang: 67


Khóa lu n t t nghi p Tìm hi u m t s ph ng pháp phát hi n khuôn m t trong nh

TÀI LI U THAM KH O

[1]. Nguy n tu n ngh a (2005) – d ng mô hình Entropy c c i nh n


ng màu da trên nh màu – Lu n v n t t nghi p Tr ng ih c
Công ngh , i h c Qu c gia Hà N i.
[2]. Lu Buon Vinh, Hoàng Ph ng Anh (2004) - Nghiên c u và xây d ng
th ng nh n d ng m t ng i d a trên FSVM và Adaboost - Lu n
n c nhân tin h c Khoa công ngh thông tin, H KHTN TP HCM.
[3]. Tr n Ph c Long, Nguy n V n L ng (2003) : Nh n d ng ng i
a vào thông tin khuôn m t xu t hi n trên nh. Lu n v n t t nghi p,
Khoa Công ngh Thông tin, i h c Khoa h c T nhiên Tp. HCM.
[4]. Ph m Th B o, Nguy n Thành Nh t, Cao Minh Th nh, Tr n Anh
Tu n, Phan Phúc Doãn - ng quan các ph ng pháp xác nh
khuôn m t ng i
[5]. J. Meynet (2003) – Fast Face Detection Using AdaBoost - National
Polytechnique Institute of Grenoble.
[6]. H.A. Rowley (1999) – Neural network – Based Face Detection –
School of Computer Science, Computer Science Department,
Carnegie Mellon University Pittsburgh, PA 15123.
[7]. CBCL Face Database, CMU and MIT,
http://www.ai.mit.edu/projects/cbcl.old/software-
datasets/FaceData2.html
[8]. CMU Image database
http://vasc.ri.cmu.edu/idb/html/face/frontal_images/index.html

Lê H ng Chuyên _ CT701 Trang: 68

You might also like