Đại Học Quốc Gia Tp. Hồ Chí Minh TRÖÔØNG ÑAÏI HOÏC BAÙCH KHOA ------------------------- TRAÀN MAÏNH SÔN NHAÄN DAÏNG CAÛM XUÙC MAËT NGÖÔØI THEO THÔØI GIAN THÖÏC Chuyeân ngaønh: TÖÏ ÑOÄNG HOAÙ LUAÄN VAÊN THAÏC SÓ TP. HOÀ CHÍ MINH, thaùng 12 naêm 2009 COÂNG TRÌNH ÑÖÔÏC HOAØN THAØNH TAÏI TRÖÔØNG ÑAÏI HOÏC BAÙCH KHOA ÑAÏI HOÏC QUOÁC GIA TP. HOÀ CHÍ MINH Caùn boä höôùng daãn khoa hoïc: GVC.
TS NGUYEÃN ÑÖÙC THAØNH. Caùn boä chaám nhaän xeùt 1:. Caùn boä chaám nhaän xeùt 2:. Luaän vaên thaïc só ñöôïc baûo veä TAÏI HOÄI ÑOÀNG CHAÁM BAÛO VEÄ LUAÄN VAÊN THAÏC SÓ TRÖÔØNG ÑAÏI HOÏC BAÙCH KHOA, Ngaøy … thaùng … naêm 2009 TRƯỜNG ĐẠI HỌC BÁCH KHOA CỘNG HOÀ XÃ HỘI CHỦ NGHIÃ VIỆT NAM KHOA ĐIỆN – ĐIỆN TỬ Độc Lập - Tự Do - Hạnh Phúc ---------------- ---oOo--- Tp.
HCM, ngày 29 tháng 12 năm 2009 NHIEÄM VUÏ LUAÄN VAÊN THAÏC SÓ Hoï vaø teân hoïc vieân: TRAÀN MAÏNH SÔN Phaùi: Nam Ngaøy thaùng naêm sinh: 12/09/1982 Nôi sinh: THANH HOÙA Chuyeân ngaønh: TÖÏ ÑOÄNG HOAÙ Maõ soá: 605260 I. TEÂN ÑEÀ TAØI: NHAÄN DAÏNG CAÛM XUÙC MAËT NGÖÔØI THEO THÔØI GIAN THÖÏC II. NHIEÄM VUÏ: - Vieát chöông trình Nhaän daïng caûm xuùc maët ngöôøi. NGAØY GIAO NHIEÄM VUÏ: ngaøy 21 thaùng 01 naêm 2009 IV.
NGAØY HOAØN THAØNH NHIEÄM VUÏ: ngaøy 28 thaùng 11 naêm 2009 V. GIAÙO VIEÂN HÖÔÙNG DAÃN: GVC. NGUYEÃN ÑÖÙC THAØNH Noäi dung vaø ñeà cöông Luaän vaên Thaïc só ñaõ ñöôïc Hoäi Ñoàng Chuyeân Ngaønh thoâng qua. Ngaøy thaùng naêm 2009 CÁN BỘ HƯỚNG DẪN CHỦ NHIỆM BỘ MÔN KHOA QL CHUYÊN NGÀNH (Họ tên và chữ ký) QUẢN LÝ CHUYÊN NGÀNH (Họ tên và chữ ký) (Họ tên và chữ ký) Luaän vaên Cao hoïc GVHD: GVC.
TS Nguyeãn Ñöùc Thaønh LÔØI CAÛM ÔN Trong quaù trình thöïc hieän ñeà taøi luaän vaên, toâi ñaõ gaëp raát nhieàu khoù khaên, vaø ñaõ phaûi coá gaéng noã löïc raát nhieàu ñeå hoaøn thaønh ñöôïc luaän vaên Thaïc só naøy. Tuy nhieân, toâi ñaõ khoâng theå hoaøn thaønh ñöôïc luaän vaên naøy neáu khoâng coù söï quan taâm, giuùp ñôõ cuûa gia ñình, thaày coâ, baïn beø ñoàng nghieäp. Ñaït ñöôïc keát quaû nhö ngaøy hoâm nay, toâi xin ñöôïc gôûi lôøi caûm ôn chaân thaønh ñeán Thaày GVC. Nguyeãn Ñöùc Thaønh, ñaõ höôùng daãn toâi thöïc hieän ñeà taøi luaän vaên naøy; Quyù Thaày coâ Boä moân Ñieàu Khieån Töï Ñoäng – Khoa Ñieän – Ñieän Töû – tröôøng Ñaïi hoïc Baùch Khoa TP.Hoà Chí Minh, moïi ngöôøi trong gia ñình, baïn beø, ñoàng nghieäp ñaõ giuùp ñôõ toâi trong quaù trình hoaøn thaønh luaän vaên.
Ngoài ra, học viên cũng xin gởi lời cảm ơn đến tất cả những thầy cô đã trực tiếp giảng dạy trong suốt khóa học, những người bạn đã quan tâm, động viên và chia sẻ kiến thức cũng như kinh nghiệm chuyên ngành trong quá trình học tập và rèn luyện vừa qua của học viên. Hoïc vieân thöïc hieän Traàn Maïnh Sôn Chuyeân ngaønh: Töï Ñoäng Hoùa 1 HVTH: Traàn Maïnh Sôn Luaän vaên Cao hoïc GVHD: GVC. TS Nguyeãn Ñöùc Thaønh TOÙM TAÉT NOÄI DUNG Trong luaän vaên naøy, taùc giaû trình baøy nhöõng keát quaû nghieân cöùu nhaèm ñieàu khieån robot coù tính caùch ngöôøi hôn (humanoid robot), nghóa laø robot coù theå hieåu ñöôïc caûm xuùc vaø cöû chæ cuûa con ngöôøi. Ñeå thöïc hieän yù töôûng ñoù, ñoøi hoûi chuùng ta taïo cho robot moät Heä Thoáng Töï Ñoäng Nhaän Bieát Caûm Xuùc Maët Ngöôøi.
Heä thoáng coù theå töï ñoäng nhaän daïng maët ngöôøi trong moät doøng video thöïc baèng phöông phaùp taêng cöôøng thích nghi (Adaboost) vaø tieáp tuïc nhaän daïng nhöõng caûm xuùc cuûa maët ngöôøi baèng phöông phaùp eigenface, döïa treân caùc ñaëc tröng vò trí hình hoïc nhö loâng maøy, ñoä môû cuûa mieäng. Luaän vaên goàm coù saùu chöông vôùi noäi dung nhö sau: Chöông 1: Giôùi Thieäu. Giôùi thieäu sô löôïc veà caùc coâng trình lieân quan trong lónh vöïc maø ñeà taøi nghieân cöùu cuõng nhö muïc tieâu caàn ñaït ñöôïc. Chöông 2: Cô Sôû Lyù Thuyeát Veà Thuaät toaùn nhaän daïng.
Trình baøy laàn löôït caùc cô sôû lyù thuyeát öùng duïng ñeå thöïc hieän ñeà taøi. Chöông 3: Xaây Döïng Heä Thoáng Nhaän Daïng baèng Microsoft Visual C++ 6. Trình baøy caùc thuaät toaùn nhaän daïng cuûa chöông trình nhaän daïng caûm xuùc maët ngöôøi. Chöông 4: Chöông Trình & Keát Quaû.
Giôùi thieäu chöông trình “Nhaän daïng caûm xuùc” vaø caùc keát quaû nhaän daïng seõ ñöôïc trình baøy vaø ñaùnh giaù. Chöông 5: Keát Luaän & Höôùng Phaùt Trieån. Keát luaän laïi yù nghóa cuûa ñeà taøi vaø neâu ra höôùng môû roäng cuûa luaän vaên. Chuyeân ngaønh: Töï Ñoäng Hoùa 2 HVTH: Traàn Maïnh Sôn Luaän vaên Cao hoïc GVHD: GVC.
TS Nguyeãn Ñöùc Thaønh MUÏC LUÏC I. ÑAËT VAÁN ÑEÀ:. NHÖÕNG COÂNG TRÌNH NGHIEÂN CÖÙU LIEÂN QUAN:. CAÙC COÂNG TRÌNH NGHIEÂN CÖÙU TRONG NÖÔÙC:.1 Luaän vaên: “Caùc phöông phaùp nhaän daïng maët ngöôøi” : .2 Nhaän daïng maët ngöôøi duøng gabor wavelets:.
CAÙC COÂNG TRÌNH NGHIEÂN CÖÙU ÔÛ NÖÔÙC NGOAØI: .1 Maïng neural nhaän daïng maët ngöôøi .2 Heä thoáng chuyeân gia cho phaân tích töï đoäng caûm xuùc:.3 Heä thoáng trích ñaëc tröng caûm xuùc töï ñoäng:.4 Heä thoáng nhaän dieän caûm xuùc döïa treân fed (facial expression dictionary): .5 Heä thoáng maõ hoaù caûm xuùc (facial action coding system-facs) .6 Heä thoáng töï đoäng nhaän daïng caûm xuùc (eigenexpressions for Facial Expression):. NHAÄN DAÏNG CAÛM XUÙC MAËT NGÖÔØI - CAÙC COÂNG TRÌNH ÑAÕ NGHIEÂN CÖÙU .13 IV: MUÏC TIEÂU CUÛA LUAÄN VAÊN .15 CHÖÔNG 2: CÔ SÔÛ LYÙ THUYEÁT VEÀ THUAÄT TOAÙN NHAÄN DAÏNG. LYÙ THUYEÁT VEÀ AÛNH SOÁ:. Khaùi nieäm veà phaàn töû aûnh :.
Caáu truùc moät file aûnh :. AÛnh traéng ñen hay aûnh nhò phaân :. AÛnh maøu vaø moâ hình maøu RGB :. Heä toaï ñoä pixel mặt người :.
Muïc ñích cuûa vieäc xöû lyù aûnh soá:. CÁC PHƯƠNG PHÁP PHÁT HIỆN (DÒ TÌM) HÌNH ẢNH MẶT NGƯỜI:. Phát hiện dựa trên ảnh:. Phát hiện dựa trên dạng hình học:.
Phương pháp đặc trưng Haar-like và tăng tốc thích nghi nhanh AdaBoost. TRÍCH ÑAËT TRÖNG BAÈNG PHÖÔNG PHAÙP EIGENFACES PCA: 34 3. Phương pháp Eigenfaces PCA;. Xaây döïng Eigenfaces vôùi PCA:.
Bieán ñoåi aûnh maët thaønh vector: .38 Chuyeân ngaønh: Töï Ñoäng Hoùa 3 HVTH: Traàn Maïnh Sôn Luaän vaên Cao hoïc GVHD: GVC. TS Nguyeãn Ñöùc Thaønh 3. Khoâng gian aûnh:. Xaây döïng Eigenfaces:.
Xaây döïng aûnh töø caùc Eigenfaces:. Xaây döïng laïi traïng maët vôùi PCA:. MAÏNG NEURON CHO NHAÄN DAÏNG TRAÏNG THAÙI MAËT. Teá baøo thaàn kinh vaø maïng thaàn kinh nhaân taïo:.
Maïng truyeàn thaúng moät lôùp (maïng perceptron ñôn giaûn):. Mạng perceptron nhiều lớp và thuật toán lan truyền ngược: .61 CHÖÔNG 5: CHÖÔNG TRÌNH & KEÁT QUAÛ. GIỚI THIỆU CHƯƠNG TRÌNH. Xaây dựng giao diện chương trình:.
CHƯƠNG TRÌNH C++:. KẾT QUẢ CHƯƠNG TRÌNH. Kết quả nhận dạng với Webcam:. Kết quả nhận dạng với ảnh từ file: .88 CHÖÔNG 6: KEÁT LUAÄN VAØ HÖÔÙNG PHAÙT TRIEÅN.
HAÏN CHEÁ CHÖÔNG TRÌNH:. HÖÔÙNG PHAÙT TRIEÅN: .103 TAØI LIEÄU THAM KHAÛO .105 LYÙ LÒCH TRÍCH NGANG .108 Chuyeân ngaønh: Töï Ñoäng Hoùa 4 HVTH: Traàn Maïnh Sôn Luaän vaên Cao hoïc GVHD: GVC. TS Nguyeãn Ñöùc Thaønh CHÖÔNG 1: GIÔÙI THIEÄU I. ÑAËT VAÁN ÑEÀ Trong quaù khöù, chuùng ta thöôøng nghó robot chæ laø moät caùi maùy, ñöôïc laäp trình vaø hoaït ñoäng cöùng nhaéc theo chöông trình saün coù, chæ giao tieáp ñöôïc vôùi con ngöôøi qua baøn phím, chuoät, maøn hình.
Tuy nhieân, ngaøy nay, vôùi söùc maïnh cuûa caùc boä vi xöû lyù ngaøy caøng ñöôïc caûi thieän, ñaõ cho pheùp robot giao tieáp vôùi con ngöôøi theo moät caùch môùi, ñoù laø hình aûnh (thò giaùc) vaø aâm thanh. Coù theå, trong moät töông lai xa, robot coù theå “nhìn thaáy” con ngöôøi xung quanh noù vaø giao tieáp laïi moät caùch raát “ngöôøi” nhö theå hieän caûm xuùc, ñieäu boä, …. Vì theá, nhieàu döï aùn ôû nöôùc ngoaøi ñaõ ñöôïc nghieân cöùu nhaèm ñieàu khieån robot coù tính caùch ngöôøi hôn (humanoid robot), nghóa laø robot coù theå hieåu ñöôïc caûm xuùc vaø cöû chæ cuûa con ngöôøi. Ñeå thöïc hieän yù töôûng ñoù, ñoøi hoûi chuùng ta taïo cho Robot moät Heä Thoáng Töï Ñoäng Nhaän Bieát Caûm Xuùc Maët Ngöôøi.
Heä thoáng coù theå töï ñoäng nhaän daïng maët ngöôøi trong moät doøng video thöïc vaø tieáp tuïc nhaän daïng nhöõng caûm xuùc cuûa maët ngöôøi trong thôøi gian thöïc. Noùi caùch khaùc, heä thoáng töï ñoäng kieåm tra maët ngöôøi vaø nhaän daïng ra caùc caûm xuùc maët ngöôøi: vui möøng (Joy), buoàn (sadness), baát ngôø (suprise), giaän döõ (angry), sôï seät (fear), bình thöôøng (neural),…v. Caùc caûm xuùc treân göông maët ngöôøi: 1.Giaän döõ Chuyeân ngaønh: Töï Ñoäng Hoùa 5 HVTH: Traàn Maïnh Sôn Luaän vaên Cao hoïc GVHD: GVC. TS Nguyeãn Ñöùc Thaønh ÖÙng duïng: Neáu moät robot coù khaû naêng nhaän bieát ñöôïc caûm xuùc cuûa con ngöôøi, noù seõ raát coù ích trong lónh vöïc y teá noùi chung, ví duï nhö: cheá taïo robot chaêm soùc ngöôøi beänh, ngöôøi giaø,…vv [1] II.
NHÖÕNG COÂNG TRÌNH NGHIEÂN CÖÙU LIEÂN QUAN: Phaàn naøy seõ trình baøy caùc baøi baùo vaø luaän vaên maø taùc giaû ñaõ tham khaûo, ñeå coù ñöôïc moät caùi nhìn toång quan veà caùc coâng trình nghieân cöùu lieân quan trong nöôùc vaø nöôùc ngoaøi trong lónh vöïc nhaän daïng maët ngöôøi vaø caûm xuùc cuûa göông maët. CAÙC COÂNG TRÌNH NGHIEÂN CÖÙU TRONG NÖÔÙC: 1.1 Luaän vaên: “Caùc phöông phaùp nhaän daïng maët ngöôøi” : Theo [2], taùc giaû giới thiệu phương phaùp nhận dạng mặt ngöôøi truyeàn thoáng: Nhaän Daïng Maët Ngöôøi Duøng Maïng Neural Baèng Bieán Ñoåi DCT (Discrete Cosine Transform). DCT, moät kyõ thuaät neùn aûnh ñöôïc söû duïng roäng raõi, cho pheùp hieän dieän taát caû caùc thaønh phaàn quan troïng nhaát cuûa khuoân maët (toùc, maét, mieäng, muõi) vôùi moät soá löôïng nhoû thaønh phaàn taàn soá thaáp. Sau khi DCT ñöôïc aùp duïng cho moät hình aûnh, caùc heä soá ñöôïc löïa choïn ñöôïc ñöa ñeán moät maïng nôron nhaân taïo nhieàu lôùp (ANN).
Bôûi vì chæ duøng moät löôïng nhoû caùc heä soá neân toác ñoä huaán luyeän vaø nhaän daïng seõ raát cao. Taùc giaû duøøng cô sôû döõ lieäu aûnh goàm 400 aûnh khaùc nhau, cho 40 ngöôøi khaùc nhau, kích thöôùc moãi aûnh laø 112-92 pixel mặt người, vôùi 256 möùc xaùm cho moãi pixel mặt người. Moät heä thoáng nhaän daïng maët ngöôøi bao goàm caùc coâng ñoaïn sau: Chuyeân ngaønh: Töï Ñoäng Hoùa 6 HVTH: Traàn Maïnh Sôn Luaän vaên Cao hoïc GVHD: GVC. TS Nguyeãn Ñöùc Thaønh aûnh Phát hiện Kết quả Tiền xử Nhận dạng đặc trưng nhận dạng lý mặt (DCT) (Maïng Neural) Hình 2.
Sô ñoàø khoái nhaän daïng maët ngöôøi baèng DCT Nhaän mặt ngườiùt: Trong luaän vaên naøy, chuû yeáu taùc giaû nhaän daïng maët ngöôøi treân cô sôû döõ lieäu aûnh coù saün (aûnh gray, kích thöôùc 112x92), laø caùc aûnh tónh chöa taäp trung vaøo nhaän daïng maët ngöôøi theo thôøi gian thöïc, ví duï: aûnh ñoäng töø video hay webcam, vì phöông phaùp nhaän daïng toác ñoä coøn chaäm .2 Nhaän daïng maët ngöôøi duøng gabor wavelets: Theo [3], taùc giaû ñeà caäp phöông phaùp gabor wavelets ñöôïc söû duïng ñeå xaây döïng caùc vector ñaëc tröng vì noù coù khaû naêng mieâu taû toát caùch xöû lyù cuûa caùc lónh vöïc deã tieáp thu trong heä thoáng tröïc quan cuûa con ngöôøi.