Chương 1.1 Tổng quan về bài toán theo dõi và nhận dạng khuôn mặt người 1.1 Đặt 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. 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 khuôn 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 khuôn mặt là mọi người không cần phải nhìn vào một máy quét 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 khuôn 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,. Tuy nhiên không vì khả năng ứng dụng ña dạng của công nghệ nhận dạng khuôn 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 toá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.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 toán hệ thống xác ñịnh ñược vị trí và kích thước của tất cả những khuôn 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 khuôn 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 khuôn mặt (face detection), rút trích ñặc trưng (feature extraction), và nhận dạng khuôn mặt (face recognition). Hình ảnh Phát hiện Tiền xử lý Video khuôn mặt Rút trích Nhận dạng Chỉ số khuôn ñặc trưng khuôn mặt mặt (Face ID) Hình 1.1: Các bước chính trong hệ thống nhận dạng khuôn 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à quá trình tiền xử lý ñối với khuôn 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 khuôn mặt: là kỹ thuật dò tìm và ñịnh vị những vị trí khuông 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 toá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 khuôn 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.3 Những khó khăn trong bài toán xác ñịnh mặt người Phát hiện và nhận dạng khuôn mặt trong ảnh có rất nhiều ứng dụng trong cuộc sống, bài toá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 khuôn 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 khuôn 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 khuôn mặt và quá trình nhận dạng.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 khuôn mặt có thể thay ñổi rất nhiều bởi vì góc chụp giữa Camera và khuôn 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. ñược minh họa như trên hình 1.3: Các hướng chụp hình khác nhau. Sự biểu cảm của khuôn mặt: Những biểu cảm khác nhau của khuôn 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 khuôn mặt bị che khuất: Ảnh khuôn 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: Một số thành phần của khuôn mặt bị che khuất.4 Các ứng dụng liên quan ñến nhận dạng và theo dõi khuôn mặt người Hệ thống nhận dạng khuôn 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 quá 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 khuôn 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 khuôn 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 khuôn mặt người. Phương pháp này có khả năng nhận dạng ñược các khuôn mặt người và các ñối tượng.6: Phần mềm nhận dạng khuôn 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).7: Phần mềm nhận dạng khuôn 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.8: Phần mềm nhận dạng khuôn mặt FaceIt®Argus [30].
Ngoài ra công nghệ nhận dạng khuôn 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 khuôn 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.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à ngoà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 khuôn 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 toán phát hiện khuôn mặt và nhận dạng khuôn 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#. - 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.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 toán nhận dạng khuôn 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 khuôn 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.00GB of RAM) qua cổng USB 2.