ĐẠI HỌC QUỐC GIA TP.HCM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
----------------------
NGUYỄN HỮU TÌNH
ỨNG DỤNG XỬ LÝ ẢNH TRONG ROBOT
DÙNG PHÁT GIÁC CHUYỂN ĐỘNG VÀ NHẬN DẠNG
ĐỐI TƯỢNG NGƯỜI QUEN
Chuyên ngành: TỰ ĐỘNG HĨA
Mã số
: 60.52.60
LUẬN VĂN THẠC SĨ
TP. HỒ CHÍ MINH, tháng 04, năm 2014
CƠNG TRÌNH ĐƯỢC HỒN THÀNH TẠI
TRƯỜNG ĐẠI HỌC BÁCH KHOA –ĐHQG -HCM
Cán bộ hướng dẫn khoa học : .....................................................................
(Ghi rõ họ, tên, học hàm, học vị và chữ ký)
Cán bộ chấm nhận xét 1 : ...........................................................................
(Ghi rõ họ, tên, học hàm, học vị và chữ ký)
Cán bộ chấm nhận xét 2 : ...........................................................................
(Ghi rõ họ, tên, học hàm, học vị và chữ ký)
Luận văn thạc sĩ ñược bảo vệ tại Trường Đại học Bách Khoa, ĐHQG Tp.HCM
ngày . . . . tháng . . . . năm . . . .
Thành phần Hội ñồng ñánh giá luận văn thạc sĩ gồm:
1. ..............................................................
2. ..............................................................
3. ..............................................................
4. ..............................................................
5. ..............................................................
Xác nhận của Chủ tịch Hội ñồng ñánh giá LV và Trưởng Khoa quản lý chuyên
ngành sau khi luận văn ñã ñược sửa chữa (nếu có).
CHỦ TỊCH HỘI ĐỒNG
TRƯỞNG KHOA
ĐẠI HỌC QUỐC GIA TP.HCM
CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
__________________________
Độc Lập – Tự Do – Hạnh Phúc
_____________________
NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ tên học viên
:
NGUYỄN HỮU TÌNH
Ngày, tháng, năm sinh :
22/10/1983
Chun ngành
TỰ ĐỘNG HỐ
:
Mã số HV : 10150057
Nơi sinh : Quảng Bình
Mã số : 60.52.60
I. TÊN ĐỀ TÀI:
ỨNG DỤNG XỬ LÝ ẢNH TRONG ROBOT DÙNG PHÁT GIÁC
CHUYỂN ĐỘNG VÀ NHẬN DẠNG ĐỐI TƯỢNG NGƯỜI QUEN
II. NHIỆM VỤ:
-
Tìm hiểu, phân tích thuật tốn phát hiện và nhận dạng khn mặt người quen
-
Xây dựng chương trình và mơ hình thực nghiệm đánh giá khả năng ứng dụng của
thuật tốn
III. NGÀY GIAO NHIỆM VỤ:
29/08/2011
IV. NGÀY HỒN THÀNH NHIỆM VỤ: 30/06/2012
V. CÁN BỘ HƯỚNG DẪN: TS. NGUYỄN ĐỨC THÀNH
TP. HCM, ngày ….. tháng ….. năm 20…
CÁN BỘ HƯỚNG DẪN
CHỦ NHIỆM BỘ MÔN
TRƯỞNG KHOA
(Họ tên và chữ ký)
(Họ tên và chữ ký)
(Họ tên và chữ ký)
Luận văn tốt nghiệp
CBHDKH: Ts. Nguyễn Đức Thành
LỜI CẢM ƠN
Trước tiên, xin cảm ơn thầy T.s Nguyễn Đức Thành ñã quan tâm, giúp ñỡ, ñịnh
hướng và dành thời gian chỉ dẫn cho học viên trong suốt quá trình thực hiện ñề tài tốt
nghiệp.
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.
Cũng xin chân thành cảm ơn sự quan tâm hỗ trợ, tạo điều kiện và hết lịng ñộng
viên về tinh thần lẫn vật chất của các thành viên trong gia đình trong suốt thời gian
qua.
Sau cùng, học viên gởi lời chúc sức khỏe, hạnh phúc ñến quý thầy cơ, gia đình
và bạn bè.
TP. HCM, ngày ….. tháng ….. năm 20…
Học viên
Nguyễn Hữu Tình
HVTH: Nguyễn Hữu Tình
i
Luận văn tốt nghiệp
CBHDKH: Ts. Nguyễn Đức Thành
TÓM TẮT LUẬN VĂN
Theo dõi và nhận dạng nhận dạng khuôn mặt người là một chủ đề nghiên cứu
của khoa học máy tính và công nghệ tri thức. Ngày nay với sự phát triển của khoa học
và công nghệ, lĩnh vực nghiên cứu ứng dụng khả năng tương tác giữa người và máy ñã
trở thành một lĩnh vực nổi bật ñược nhiều nhà khoa học quan tâm. Lĩnh vực nghiên cứu
ứng dụng này thực sự có ý nghĩa to lớn và góp phần tăng thêm giá trị và chất lượng
cuộc sống con người.
Đề tài luận văn này, “ Ứng dụng xử lý ảnh trong robot dùng phát giác chuyển
ñộng và nhận dạng ñối tượng người quen” cũng khơng nằm ngồi ý nghĩa đó. Đây là
một dạng ứng dụng thú vị mà nhiều nhà khoa học đã, đang và sẽ khơng ngừng nghiên
cứu vì nhu cầu thực tiễn và ña dạng của các phương pháp tiếp cận.
Trong đề tài này sẽ trình bày các vấn ñề liên quan tới kiến thức nền tảng xây
dựng nên luận văn. Học viên ñã sử dụng thư viện mã nguồn mở EmguCV và ngơn ngữ
lập trình C#.Net trên nền Visual Studio 2010 ñể xây dựng ứng dụng. Sử dụng thuật
tốn AdaBoost để phát hiện khn mặt người và phương pháp phân tích thành phần
chính (PCA) để nhận dạng khuôn mặt người quen (Eigenfaces).
Nội dung luận văn gồm 5 chương, cụ thể như sau:
Chương 1: Giới thiệu.
Chương 2: Các cơng trình nghiên cứu liên quan.
Chương 3: Cơ sở lý thuyết.
Chương 4: Xây dựng chương trình va mơ hình thực nghiệm.
Chương 5: Kết luận và hướng phát triển ñề tài
HVTH: Nguyễn Hữu Tình
ii
Luận văn tốt nghiệp
CBHDKH: Ts. Nguyễn Đức Thành
Abstract
Face recognition and tracking presents a challenging problem in the field of
image analysis and computer vision, and as such has received a great deal of attention
over the last few years because of its many applications in various domains. In this
thesis, an overview of some of the well-known methods in each of these categories is
provided and some of the benefits and drawbacks of the schemes mentioned therein are
examined. Thesis also mentions some of the most recent algorithms developed for this
purpose and attempts to give an idea of the state of the art of face recognition
technology.
In this thesis describes an algorithm for human tracking using computer vision,
specially designed for a human machine interface of a mobile robotic platforms. The
solution presents a clear improvement on a tracking algorithm achieved by using a
machine learning approach for visual object detection and recognition. The detection
technique is based on Haar-like features, whereas eigenfaces and PCA are used in the
recognition stage of the system. The tracking algorithm uses a area method to estimate
position and scale of the person’s face in the image.
The author have used EmguCV and C# to build application. Using AdaBoost
algorithm for face detection and principal component analysis method (PCA) for faces
recognition (Eigenfaces). The system is able to detect, recognise and track faces in a
conventional Laptop (DELL, Core2 Duo CPU @ 2.4GHz, 3.00GB of RAM)
HVTH: Nguyễn Hữu Tình
iii
Luận văn tốt nghiệp
CBHDKH: Ts. Nguyễn Đức Thành
LỜI CAM ĐOAN
Tôi: Nguyễn Hữu Tình.
Sinh ngày: 22/10/1983
Học viên lớp cao học Tự Động Hóa 2010, Khoa Điện – Điện Tử, Trường Đại Học
Bách Khoa TP. Hồ Chí Minh.
Xin cam đoan: Đề tài luận văn “Ứng dụng xử lý ảnh trong robot dùng phát
giác chuyển ñộng và nhận dạng ñối tượng người quen” do thầy TS. Nguyễn Đức
Thành hướng dẫn là cơng trình nghiên cứu của riêng tôi. Tất cả các tài liệu tham khảo
đều có nguồn gốc, xuất xứ rõ ràng.
Tác giả xin cam ñoan tất cả nội dung trong luận văn ñúng như nội dung trong
ñề cương và yêu cầu của thầy hướng dẫn. Nếu sai tơi hồn tồn chịu trách nhiệm trước
Hội ñồng khoa học và Pháp luật.
TP. HCM, ngày ….. tháng ….. năm 20…
Học viên
Nguyễn Hữu Tình
HVTH: Nguyễn Hữu Tình
iv
Luận văn tốt nghiệp
CBHDKH: Ts. Nguyễn Đức Thành
MỤC LỤC
Trang
Lời cảm ơn ........................................................................................................................ i
Tóm tắt luận văn...............................................................................................................ii
Abstract ...........................................................................................................................iii
Lời cam đoan ................................................................................................................... iv
Mục lục............................................................................................................................. v
Danh mục các hình ........................................................................................................viii
Danh mục các bảng ......................................................................................................... xi
Danh mục các chữ viết tắt và ký hiệu ............................................................................xii
Chương 1. Giới thiệu...................................................................................................... 1
1.1 Tổng quan về bài toán nhận dạng và theo dõi khuôn mặt người quen .................. 1
1.1.1 Đặt vấn đề ...................................................................................................... 1
1.1.2 Bài tốn theo dõi và nhận dạng khuôn mặt người quen ................................ 2
1.1.3 Những khó khăn trong bài tốn xác định khn mặt người .......................... 3
1.1.4 Các ứng dụng liên quan ñến nhận dạng và theo dõi khuôn mặt người ......... 5
1.2 Mục tiêu và phạm vi ñề tài ..................................................................................... 8
1.2.1 Mục tiêu và nhiệm vụ nghiên cứu ................................................................. 8
1.2.2 Phạm vi nghiên cứu của ñề tài....................................................................... 8
1.2.3 Tổ chức luận văn ........................................................................................... 9
Chương 2. Các cơng trình nghiên cứu liên quan ...................................................... 11
2.1 Giới thiệu ............................................................................................................. 11
2.2 Các hướng tiếp cận liên quan ñến phát hiện khuôn mặt ...................................... 11
2.3 Các hướng tiếp cận liên quan đến nhận dạng khn mặt .................................... 13
2.4 Kết luận ................................................................................................................ 16
Chương 3. Cơ sở lý thuyết ........................................................................................... 17
3.1 Giới thiệu chung................................................................................................... 17
HVTH: Nguyễn Hữu Tình
v
Luận văn tốt nghiệp
CBHDKH: Ts. Nguyễn Đức Thành
3.2 Các thuật toán tiền xử lý ảnh ............................................................................... 18
3.2.1 Một số khái niệm về xử lý ảnh số ............................................................... 18
3.2.2 Một số thuật toán xử lý ảnh ......................................................................... 20
3.2.2.1 Chuyển ảnh màu thành ảnh ña mức xám ......................................... 20
3.2.2.2 Chuyển ảnh ña mức xám sang ảnh nhị phân.................................... 20
3.2.2.3 Cân bằng Histogram......................................................................... 21
3.2.2.4 Điều chỉnh ñộ tương phản ................................................................ 24
3.2.2.5 Lọc nhiễu.......................................................................................... 25
3.3 Phát hiện khuôn mặt dùng giải thuật Adaboost và ñặc trưng Haar-like .............. 28
3.3.1 Đặc trưng Haar-like ..................................................................................... 28
3.3.2 Thuật toán Adaboost ................................................................................... 31
3.3.3 Phân tầng các bộ phân loại .......................................................................... 36
3.3.4 Áp dụng giải thuật Adaboost phát hiện khuôn mặt người .......................... 34
3.4 Phương pháp nhận dạng khuôn mặt riêng dùng PCA.......................................... 41
3.4.1 Không gian ảnh khuôn mặt ......................................................................... 41
3.4.2 Nhận dạng khuôn mặt riêng dùng phương pháp PCA ................................ 43
3.5 Kết luận ................................................................................................................ 47
Chương 4. Xây dựng chương trình và mơ hình thực nghiệm .................................. 48
4.1 Giới thiệu chung................................................................................................... 48
4.2 Xây dựng chương trình phát hiện và theo dõi khuôn mặt người quen ................ 48
4.2.1 Xây dựng lưu đồ và giải thuật chương trình ............................................... 48
4.2.2 Xây dựng chương trình................................................................................ 50
4.2.2.1 Giới thiệu về EmguCV..................................................................... 50
4.2.2.2 Thu nhận hình ảnh từ Webcam ........................................................ 51
4.2.2.3 Phát hiện và trích xuất hình ảnh khn mặt ..................................... 51
4.2.2.4 Xây dựng chương trình bám theo đối tượng khn mặt .................. 52
4.2.2.5 Nhận dạng khuôn mặt người quen ................................................... 53
4.3 Xây dựng mơ hình mobile robot .......................................................................... 54
HVTH: Nguyễn Hữu Tình
vi
Luận văn tốt nghiệp
CBHDKH: Ts. Nguyễn Đức Thành
4.3.1 Giới thiệu về một số kiểu mobile robot thông dụng.................................... 54
4.3.2 Thiết kế và chế tạo mơ hình mobile robot ................................................... 57
4.3.3 Xây dựng mạch điện và chương trình điều khiển cho mobile robot ........... 60
4.3.3.1 Mạch ñiều khiển ............................................................................... 60
4.3.3.2 Xây dựng giải thuật và chương trình cho vi điều khiển................... 63
4.4. Kết quả thực nghiệm ........................................................................................... 65
4.4.1 Mô tả quá trình thực nghiệm ....................................................................... 65
4.4.2 Kết quả thực nghiệm ................................................................................... 66
4.4.3 Đánh giá kết quả thực nghiệm ..................................................................... 69
4.5 Kết luận ................................................................................................................ 69
Chương 5. Kết luận và hướng phát triển của ñề tài ................................................. 70
5.1 Kết quả và ý nghĩa ............................................................................................... 70
5.1.1 Kết quả ñạt ñược ......................................................................................... 70
5.1.2 Hạn chế ........................................................................................................ 70
5.1.3 Ý nghĩa ........................................................................................... ……….71
5.2 Hướng phát triển của ñề tài .................................................................................. 71
Tài liệu tham khảo và trích dẫn ...................................................................................... 72
Phụ lục A: Một số khái niệm toán học ........................................................................... 75
Phụ lục B: Chương trình xây dựng giải thuật bằng C#…...…….…………….. ............ 80
Phụ lục C: Chương trình vi điều khiển ATMEGA162 .................................................. 92
Lý lịch trích ngang ......................................................................................................... 99
HVTH: Nguyễn Hữu Tình
vii
Luận văn tốt nghiệp
CBHDKH: Ts. Nguyễn Đức Thành
DANH MỤC CÁC HÌNH
Trang
Hình 1.1: Các bước chính trong hệ thống nhận dạng khn mặt người .......................... 2
Hình 1.2: Ảnh chụp trong điều kiện chiếu sáng khác nhau ............................................. 3
Hình 1.3: Các hướng chụp hình khác nhau ...................................................................... 4
Hình 1.4: Sự biểu cảm khác nhau của khn mặt ............................................................ 5
Hình 1.5: Một số thành phần của khn mặt bị che khuất .............................................. 5
Hình 1.6: Phần mềm nhận dạng khuôn mặt Google Picasa ............................................. 6
Hình 1.7: Phần mềm nhận dạng khn mặt Apple Iphoto ............................................... 6
Hình 1.8: Phần mềm nhận dạng khn mặt FaceIt®Argus ............................................. 7
Hình 1.9: Ứng dụng của cơng nghệ nhận dạng khn mặt .............................................. 7
Hình 2.1: Các khn mặt riêng (Eigenfaces) ................................................................. 14
Hình 2.2: Phương pháp phân lớp dùng LDA ................................................................. 15
Hình 2.3: Mơ hình lưới của các khn mặt khác nhau .................................................. 16
Hình 3.1: Hệ tọa độ ảnh ................................................................................................. 18
Hình 3.2: Các khn mặt riêng (Eigenfaces) ................................................................. 19
Hình 3.3a: Ảnh màu ....................................................................................................... 20
Hình 3.3b: Ảnh đa mức xám .......................................................................................... 20
Hình 3.4a: Ảnh đa mức xám .......................................................................................... 21
Hình 3.4b: Ảnh nhị phân ................................................................................................ 21
Hình 3.5: Biểu đồ Histogram của ảnh xám .................................................................... 22
Hình 3.6: Biểu đồ Histogram của các loại ảnh .............................................................. 22
Hình 3.7: Ảnh trước và sau khi cân bằng Histogram..................................................... 23
Hình 3.8: Sơ đồ giải thuật cân bằng Histogram ............................................................. 23
Hình 3.9: Biểu đồ điều chỉnh độ tương phản ................................................................. 24
Hình 3.10: Ảnh trước và sau khi tăng cường ñộ tương phản ......................................... 25
HVTH: Nguyễn Hữu Tình
viii
Luận văn tốt nghiệp
CBHDKH: Ts. Nguyễn Đức Thành
Hình 3.11: Các loại mặt nạ lọc tuyến tính...................................................................... 25
Hình 3.12: Minh họa phương pháp lọc tuyến tính dùng mặt nạ lọc H1 ......................... 26
Hình 3.13: Ảnh minh họa kết quả phép lọc tuyến tính .................................................. 27
Hình 3.14: Minh họa dùng cửa sổ 3x3 trong phép lọc trung vị ..................................... 27
Hình 3.15: Ảnh minh họa so sánh kết quả các phép lọc tuyến tính ............................... 28
Hình 3.16: Bốn đặc trưng Haar-like cơ bản ................................................................... 29
Hình 3.16a: Các đặc trưng cạnh ..................................................................................... 29
Hình 3.16b: Các đặc trưng đường .................................................................................. 29
Hình 3.16c: Các đặc trưng bao quanh tâm ..................................................................... 30
Hình 3.17: Cách tính ảnh tích phân................................................................................ 31
Hình 3.18: Cách tính nhanh giá trị mức xám của vùng ảnh A ....................................... 31
Hình 3.19: Mơ hình thuật tốn AdaBoost ...................................................................... 32
Hình 3.20: Kết hợp các bộ phân loại yếu thành bộ phân loại mạnh .............................. 33
Hình 3.21: Lưu đồ giải thuật Adaboost.......................................................................... 35
Hình 3.22: Phân tầng các bộ phân loại........................................................................... 37
Hình 3.23: Mơ hình phân tầng kết hợp các bộ phân loại yếu xác định khn mặt ....... 38
Hình 3.24: Hệ thống phát hiện khn mặt ..................................................................... 39
Hình 3.25: Kết quả nhận dạng khn mặt trong ảnh ..................................................... 40
Hình 3.26: Chuyển đổi hình ảnh 2D thành một vector khơng gian ............................... 41
Hình 3.27: Khơng gian ảnh khn mặt trong khơng gian ảnh tổng qt ....................... 42
Hình 3.28: Biễu diễn ảnh trong khơng gian vector ........................................................ 43
Hình 3.29: Tập ảnh mẫu huấn luyện .............................................................................. 44
Hình 4.1: Sơ đồ khối chức năng của chương trình ........................................................ 48
Hình 4.2: Sơ ñồ giải thuật chương trình......................................................................... 49
Hình 4.3: Cấu trúc tổng quát của Emgu CV .................................................................. 50
Hình 4.4: Robot hai chân BRAT .................................................................................... 55
Hình 4.5: Robot nhiều chân ........................................................................................... 55
Hình 4.6: Robot di chuyển bằng đai xích....................................................................... 56
HVTH: Nguyễn Hữu Tình
ix
Luận văn tốt nghiệp
CBHDKH: Ts. Nguyễn Đức Thành
Hình 4.7: Robot di chuyển bằng bánh xe ....................................................................... 56
Hình 4.8: Hình vẽ 3D mơ hình mobile robot ................................................................. 57
Hình 4.9: Kết quả xây dựng mơ hình mobile robot ....................................................... 58
Hình 4.10: Chi tiết các thành phần mơ hình mobile robot ............................................. 59
Hình 4.11: Sơ đồ khối mạch điều khiển ......................................................................... 60
Hình 4.12: Sơ đồ ngun lý mạch điều khiển Atmega162 ............................................ 61
Hình 4.13: Sơ ñồ mạch cầu H ñiều khiển ñộng cơ DC .................................................. 62
Hình 4.14: Sơ đồ chân Atmega162 ................................................................................ 63
Hình 4.15: Lưu đồ giải thuật chương trình vi điều khiển .............................................. 64
Hình 4.16: Giao diện chương trình phát hiện, bám theo và nhận dạng mặt người ........ 65
Hinh 4.17: Minh họa kết quả phát hiện và nhận dạng chính xác ................................... 67
Hinh 4.18: Phát hiện và nhận dạng ñược khi một thành phần khn mặt bị che khuất. 67
Hình 4.19: Khơng phát hiện được khi khn mặt bị nghiêng........................................ 68
Hình 4.20: Minh họa kết quả nhận dạng sai .................................................................. 68
HVTH: Nguyễn Hữu Tình
x
Luận văn tốt nghiệp
CBHDKH: Ts. Nguyễn Đức Thành
DANH MỤC CÁC BẢNG
Trang
Bảng 4.1: Kết quả thực nghiệm trương hợp góc nhìn và khoảng cách thay ñổi ............ 66
Bảng 4.2: Kết quả nhận dạng với số lượng tập ảnh khác nhau ...................................... 66
HVTH: Nguyễn Hữu Tình
xi
Luận văn tốt nghiệp
CBHDKH: Ts. Nguyễn Đức Thành
DANH MỤC CÁC CHỮ VIẾT TẮT
MMI
Man Machine Interaction
AdaBoost
Adaptive Boost
PCA
Principal Component Analysis
SIFT
Scale Invariant Feature Transform
LDA
Linear Discriminant Analysis
EBGM
Elastic Bunch Graph Matching
PWM
Pulse Width Modulation
EEPROM
Electrically Erasable Programmable Read-Only Memory
SRAM
Static Random Access Memory
ADC
Analog-to-digital converter
UART
universal asynchronous receiver/transmitter
ALU
Arithmetic Logic Unit
HVTH: Nguyễn Hữu Tình
xii
Luận văn tốt nghiệp
CBHDKH: Ts. Nguyễn Đức Thành
Chương 1. Giới thiệu
1.1 Tổng quan về bài toán theo dõi và nhận dạng khn mặt người
1.1.1 Đặt vấn đề
Theo dõi và nhận dạng nhận dạng khn mặt người là một chủ đề nghiên cứu của
khoa học máy tính và cơng nghệ tri thức. Trong vài năm gần ñây, cùng với sự phát
triển về khoa học và công nghệ, tương tác người máy (Man Machine Interaction MMI) ñã trở thành một lĩnh vực nổi bật nhằm cung cấp cho con người khả năng phục
vụ của máy móc. Điều này bắt nguồn từ khả năng máy móc có thể tương tác được với
con người. Máy móc cần các kỹ năng để trao đổi thơng tin với con người và một trong
những kỹ năng đó là khả năng nhận dạng ñối tượng, biết ñược ñối tượng là ai và đang
làm gì?
Thực tế có nhiều phương pháp để xác định một đối tượng đó là ai ? Nhưng
phương pháp nhận dạng sinh trắc học lại thu hút nhiều nhà nghiên cứu tham gia bởi
tính chính xác và duy nhất các yếu tố sinh trắc học của một con người. Nhìn chung
trong tất cả các phương pháp nhận dạng sinh trắc học như: nhận dạng dấu vân tay,
nhận dạng chỉ tay, nhận dạng mống mắt và nhận dạng giọng nói, nhận dạng khn mặt
đóng một vai trị quan trọng so với các phương pháp nhận dạng khác. Ưu điểm của
phương pháp nhận dạng khn mặt là mọi người khơng cần phải nhìn vào một máy
qt mống mắt, hay ñặt bàn tay lên ñầu ñọc dấu vân tay, hoặc nói qua microphone.
Do đó, cơng nghệ nhận dạng khn mặt người ñược ứng dụng một cách rộng rãi
cho các mục đích như: robot vision có khả năng tương tác giúp việc cho con người, hỗ
trợ an ninh cho các cửa hàng, công ty, ngân hàng, ..v.v. Tuy nhiên không vì khả năng
ứng dụng đa dạng của cơng nghệ nhận dạng khn mặt và kỹ thuật thị giác máy tính
(computer vision), lĩnh vực này còn hấp dẫn các nhà nghiên cứu bởi nó khơng chỉ liên
quan đến kỹ thuật xử lý ảnh mà cịn liên quan đến trí tuệ nhân tạo và khoa học máy
tính. Trong những năm gần đây, có rất nhiều nghiên cứu xây dựng thuật tốn nhận
HVTH: Nguyễn Hữu Tình
Trang 1
Luận văn tốt nghiệp
CBHDKH: Ts. Nguyễn Đức Thành
dạng khuôn mặt ñể nâng cao hiệu suất, tuy nhiên dù ít hay nhiều những phương pháp
này ñang vấp phải những thử thách về độ sáng, hướng nghiêng, kích thước ảnh, hay
ảnh hưởng của tham số mơi trường. Do đó việc tìm hiểu kỹ lưỡng các phương pháp và
giải thuật nhận dạng khuôn mặt, sau đó xây dựng ứng dụng cơng nghệ này trong
mobile robot là một ñiều cần thiết ñối với những người muốn nghiên cứu về lĩnh vực
này.
1.1.2 Bài toán nhận dạng và theo dõi khuôn mặt người
Hệ thống nhận dạng và theo dõi mặt người là một hệ thống nhận vào là tín hiệu
video được lấy trực tiếp từ camera. Qua xử lý tính tốn hệ thống xác định được vị trí và
kích thước của tất cả những khn mặt người hiện diện trong ảnh (nếu có), và xác định
là người nào trong số những người hệ thống ñã ñược biết (qua quá trình học) hoặc là
người lạ. Sau khi xác định được vị trí và kích thước của khn mặt trong ảnh, bằng
phương pháp ñại số ta xác ñịnh ñược tầm khoảng cách và hướng di chuyển của khuôn
mặt số với vị trí đặt camera.
Một hệ thống nhận dạng mặt người được minh họa như trên hình 1.1, bao gồm
bốn bước xử lý sau [1]: tiền xử lý (preprocessing images) , phát hiện khn mặt (face
detection), rút trích đặc trưng (feature extraction), và nhận dạng khn mặt (face
recognition).
Hình ảnh
Video
Tiền xử lý
Phát hiện
khn mặt
Rút trích
Nhận dạng
đặc trưng
khn mặt mặt (Face ID)
Chỉ số khn
Hình 1.1: Các bước chính trong hệ thống nhận dạng khn mặt người.
HVTH: Nguyễn Hữu Tình
Trang 2
Luận văn tốt nghiệp
CBHDKH: Ts. Nguyễn Đức Thành
Tiền xử lý: là q trình tiền xử lý đối với khn mặt nhằm nâng cao chất lượng
ảnh, chuẩn hóa dữ liệu và kích thước hình ảnh đầu vào.
Phát hiện khn mặt: là kỹ thuật dị tìm và định vị những vị trí khng mặt xuất
hiện trong ảnh hoặc trên các frame video.
Trích rút ñặc trưng: là kỹ thuật sử dụng các thuật tốn để lấy ra những thơng tin
mang những đặc điểm riêng biệt của các thành phần trên khuôn mặt.
Nhận dạng khn mặt: những đặc trưng sau khi được trích rút sẽ là dữ liệu đầu
vào cho một mơ hình đã ñược huấn luyện trước ñể phân loại khuôn mặt.
1.1.3 Những khó khăn trong bài tốn xác định mặt người
Phát hiện và nhận dạng khn mặt trong ảnh có rất nhiều ứng dụng trong cuộc
sống, bài tốn này đã được các nhà khoa học quan tâm và nghiên cứu trong hơn năm
thập kỷ qua. Tại thời ñiểm hiện nay các phương pháp nhận dạng khn mặt được sử
dụng và thử nghiệm trong một số ñiều kiện ràng buộc nhất ñịnh. Việc xác định khn
mặt người có những khó khăn nhất định như:
Điều kiện chiếu sáng : Với những hình ảnh được chụp trong các ñiều kiện ánh
sáng khác nhau minh họa như trên hình 1.2, ảnh hưởng rất lớn đến chất lượng ảnh
khn mặt và q trình nhận dạng.
Hình 1.2: Ảnh chụp trong ñiều kiện chiếu sáng khác nhau.
HVTH: Nguyễn Hữu Tình
Trang 3
Luận văn tốt nghiệp
CBHDKH: Ts. Nguyễn Đức Thành
Hướng chụp: Ảnh chụp khn mặt có thể thay đổi rất nhiều bởi vì góc chụp
giữa Camera và khn mặt. Chẳng hạn như: chụp thẳng, chụp xiên, chụp từ trên
xuống, chụp từ dưới lên, v.v.... được minh họa như trên hình 1.3.
Hình 1.3: Các hướng chụp hình khác nhau.
Sự biểu cảm của khn mặt: Những biểu cảm khác nhau của khn mặt người
được minh họa như trên hình 1.4, sẽ làm ảnh hưởng ñáng kể lên các thông số của
khuôn mặt.
HVTH: Nguyễn Hữu Tình
Trang 4
Luận văn tốt nghiệp
CBHDKH: Ts. Nguyễn Đức Thành
Hình 1.4: Sự biểu cảm khác nhau của khuôn mặt.
Một số thành phần của khn mặt bị che khuất: Ảnh khn mặt có thể bị
che khuất bởi các đối tượng khác gây khó khăn cho quá trình nhận dạng như trong hình
1.5.
Hình 1.5: Một số thành phần của khuôn mặt bị che khuất.
1.1.4 Các ứng dụng liên quan ñến nhận dạng và theo dõi khn mặt người
Hệ thống nhận dạng khn mặt đã ñược nghiên cứu và ứng dụng từ những năm
1960 cho ñến nay. Hiện tại, công nghệ nhận dạng khuôn mặt ñã ñạt ñược một số thành
tựu và phát triển ứng dụng trong các lĩnh vực như giám sát, công nghệ sinh trắc học,
v.v… Trong q trình nghiên cứu ta có thể tìm thấy một số ứng dụng liên quan đến
cơng nghệ nhận dạng khn mặt có thể kể như:
Google Picasa: Đây là một phần mềm quản lý và xử lý ảnh ảnh miễn phí của
Google. Một trong những tính năng mới nhất của Picasa là tính năng nhận dạng khn
HVTH: Nguyễn Hữu Tình
Trang 5
Luận văn tốt nghiệp
CBHDKH: Ts. Nguyễn Đức Thành
mặt. Theo Baker (2006) Google Picasa sử dụng phương pháp ñược gọi là “Neven
Vison” để nhận dạng khn mặt người. Phương pháp này có khả năng nhận dạng được
các khn mặt người và các đối tượng.
Hình 1.6: Phần mềm nhận dạng khn mặt Google Picasa [28].
APPLE IPhoto: Phần mềm Apple Iphoto cũng có tính năng quản lý và xử lý
hình ảnh tương tự như Google Picasa nhưng chạy trên hệ ñiều hành Mac OS
(Macintosh Operating System).
Hình 1.7: Phần mềm nhận dạng khn mặt Apple Iphoto [29].
HVTH: Nguyễn Hữu Tình
Trang 6
Luận văn tốt nghiệp
CBHDKH: Ts. Nguyễn Đức Thành
FaceIt®Argus: Nhiều khi hình ảnh khơng thể được xác minh hay nhận đạng chỉ
bằng cơng nghệ nhận dạng nét mặt. Identix® đã tạo ra một sản phẩm mới ñể giúp cho
việc nhận diện chính xác hơn. Phần mềm FaceIt®Argus của họ sử dụng công nghệ sinh
trắc học về da, dựa trên cấu trúc da của mỗi người.
Hình 1.8: Phần mềm nhận dạng khn mặt FaceIt®Argus [30].
Ngồi ra cơng nghệ nhận dạng khn mặt cịn được ứng dụng trong các thống
như: máy chấm cơng sử dụng công nghệ nhận dạng khuôn mặt, theo dõi và quan sát,
giao tiếp người máy, bảo mật dựa trên thông tin sinh trắc học, v.v…
(a) Robot vision
(b) Hệ thống theo dõi và quan sát
Hình 1.9: Ứng dụng của cơng nghệ nhận dạng khn mặt [26].
HVTH: Nguyễn Hữu Tình
Trang 7
Luận văn tốt nghiệp
CBHDKH: Ts. Nguyễn Đức Thành
1.2 Mục tiêu và phạm vi ñề tài
1.2.1 Mục tiêu và nhiệm vụ nghiên cứu
Kỹ thuật xử lý ảnh nói chung và lĩnh vực thị giác máy tính nói riêng được nghiên
cứu và ứng dụng mạnh mẽ trong nhiều lĩnh vực, trong đó lĩnh vực nghiên cứu ứng
dụng Robot vision có khả năng tương tác và phục vụ nhu cầu con người cũng được
nhiều nhóm nghiên cứu trong và ngồi nước quan tâm. Chính vì vậy, mục đích luận
văn này là xây dựng một hệ thống xử lý ảnh trên mobile robot, ứng dụng vào lĩnh vực
ñể phát hiện, nhận dạng và theo dõi khn mặt người quen đang chuyển động với
chuỗi dữ liệu thu nhận ñược từ Webcam. Cụ thể nhiệm vụ chính trong luận văn này
như sau:
- Tìm hiểu, phân tích thuật tốn phát hiện khn mặt và nhận dạng khn mặt riêng.
- Xây dựng giải thuật và chương trình phát hiện, theo dõi và nhận dạng khuôn mặt
riêng dựa trên thư viện mã nguồn mở EmguCV và ngôn ngữ lập trình C#.Net.
- Thiết kế và chế tạo mơ hình mobile robot thực nghiệm có khả năng phát hiện, nhận
dạng và bám theo khuôn mặt người.
1.2.2 Phạm vi nghiên cứu của ñề tài
Từ mục tiêu và nhiệm vụ ñặt ra, phạm vi nghiên cứu của ñề tài là xây dựng “ứng
dụng xử lý ảnh trong robot dùng phát giác chuyển ñộng và nhận dạng ñối tượng
người quen”. Phạm vi nghiên cứu cụ thể như sau:
-
Trong ñề tài này tác giả ñề xuất sử dụng giải thuật phát hiện khuôn mặt AdaBoost
(Adaptive Boost) dựa trên các ñặc trưng Haar-like, kết hợp thuật tốn nhận dạng
khn mặt riêng (Eigenfaces) dùng phương pháp phân tích thành phần chính
(Principal Component Analysis - PCA) để phát hiện và nhận dạng khn mặt
người quen.
HVTH: Nguyễn Hữu Tình
Trang 8
Luận văn tốt nghiệp
-
CBHDKH: Ts. Nguyễn Đức Thành
Chương trình điều khiển và giao diện hiển thị của ứng dụng ñược xây dựng dựa
trên thư viện mã nguồn mở EmguCV và ngơn ngữ lập trình C#.Net trên nền
Visual Studio 2010.
-
Kết quả thực nghiệm của ñề tài ñược thực hiện dựa trên mơ hình chế tạo là mobile
robot, được trang bị Webcam (Webcam Logitech C600, độ phân giải 1600 ×
1200, tốc độ 30 Frame/giây) kết nối với Laptop (DELL, Core2 Duo CPU @
2.4GHz, 3.00GB of RAM) qua cổng USB 2.0.
-
Đối tượng thực nghiệm là dữ liệu frame ảnh khn mặt người được thu nhận trực
tiếp từ Webcam trong điều kiện mơi trường ánh sáng khác nhau.
1.2.3 Tổ chức luận văn
Với mục tiêu, nhiệm vụ luận văn như trên, nội dung chính trong luận văn ñược tổ
chức như sau:
Chương 1, giới thiệu tổng quan về bài tốn phát hiện và nhận dạng khn mặt
người, các khó khăn và thách thức trong bài tốn nhận dạng khuôn mặt, ứng dụng kỹ
thuật nhận dạng khuôn mặt người trong các lĩnh vực liên quan. Từ đó ñưa ra mục tiêu,
phạm vi nghiên cứu và tổ chức nội dung của đề tài.
Chương 2, tìm hiểu một số phương pháp tiếp cận và một số cơng trình nghiên cứu
liên quan của các tác giả trong và ngoài nước, liên quan đến lĩnh vực phát hiện và nhận
dạng khn mặt người, phân tích ưu và nhược điểm của mỗi phương pháp, tạo cơ sở
lựa chọn thuật toán phù hợp xây dựng chương trình ứng dụng của đề tài.
Chương 3, sẽ trình bày một số kỹ thuật xử lý ảnh số được sử dụng trong đề tài.
Tìm hiểu và nghiên cứu thuật tốn phát hiện khn mặt dùng giải thuật Adaboost kết
hợp phương pháp phân tích thành phần chính PCA ñể nhận dạng khuôn mặt riêng
(khuôn mặt người quen). .
HVTH: Nguyễn Hữu Tình
Trang 9
Luận văn tốt nghiệp
CBHDKH: Ts. Nguyễn Đức Thành
Chương 4, trình bày quá trình xây dựng chương trình phát hiện, nhận dạng và
bám theo ñối tượng mặt người. Tiến hành các q trình thực nghiệm để đánh giá kết
quả của chương trình và mơ hình đã thiết kế và xây dựng.
Chương 5, tổng kết lại những kết quả ñạt ñược và chưa ñạt ñược, nêu những khả
năng ứng dụng của ñề tài trong thực tế. Từ đó đề xuất những hướng nghiên cứu và phát
triển tiếp theo nhằm hoàn thiện và mở rộng đề tài.
HVTH: Nguyễn Hữu Tình
Trang 10