Đề tài tập trung nghiên cứu các phương pháp xác định góc nhìn của khuôn mặt thông qua các bộ nhận dạng và tập dữ liệu được huấn luyện từ trước. Các phương pháp này sẽ được kiểm nghiệm và đánh giá kết quả dựa trên bộ dữ liệu chuẩn.
MỤC LỤC DANH MỤC HÌNH ẢNH CÁC CHỮ VIẾT TẮT MỞ ĐẦU CHƢƠNG TỔNG QUAN VỀ BÀI TOÁN NHẬN DẠNG MẶT NGƢỜI 10 1.1 GIỚI THIỆU CHUNG VỀ BÀI TOÁN NHẬN DẠNG MẶT NGƢỜI 10 1.2 NHỮNG ỨNG DỤNG LIÊN QUAN 11 1.3 PHÁT HIỆN KHN MẶT VÀ NHỮNG KHĨ KHĂN CỦA BÀI TỐN NHẬN DẠNG KHN MẶT 13 1.3.1 Phát mặt ngƣời 13 1.3.2 mặt Những khó khăn thách thức tốn nhận dạng khuôn 14 1.4 BÀI TOÁN PHÁT HIỆN MẶT NGƢỜI TRONG ẢNH 15 1.4.1 Giới thiệu tổng quát toán 15 1.4.2 Các hƣớng tiếp cận liên quan đến nhận dạng khuôn mặt 16 1.4.3 Phát mặt ngƣời ảnh dựa ngƣỡng màu da ngƣời phƣơng pháp trừ 19 1.4.4 Phát mặt ngƣời ảnh dựa đặc trƣng Haar 22 1.4.5 Mơ hình 3D đầu ngƣời 34 CHƢƠNG CÁC PHƢƠNG PHÁP XÁC ĐỊNH HƢỚNG MẶT NGƢỜI TRONG ẢNH 36 2.1 PHƢƠNG PHÁP XÁC ĐỊNH HƢỚNG MẶT NGƢỜI TRONG ẢNH 36 2.1.1 Xác định hƣớng mặt ngƣời dựa tâm hai mắt 36 2.1.2 Xác định hƣớng mặt ngƣời dựa đặc tính mắt, mũi, miệng 37 2.2 XÁC ĐỊNH GĨC NHÌN CỦA KHUÔN MẶT DỰA TRÊN CÁC ĐIỂM MỐC TRÊN KHUÔN MẶT 43 2.2.1 Phát điểm mốc (Land marks) khuôn mặt 43 2.2.2 Chuyển đổi ma trận xoay qua góc Euler 45 CHƢƠNG THỰC NGHIỆM VÀ KẾT QUẢ 46 3.1 GIỚI THIỆU 46 3.2 DỮ LIỆU ĐẦU VÀO 46 3.2.1 Tƣ khuôn mặt ngƣời 46 3.2.2 Tập ảnh đánh giá 47 3.3 CHƢƠNG TRÌNH THỬ NGHIỆM 51 3.4 MỘT SỐ TRƢỜNG HỢP ĐẶC BIỆT 59 KẾT LUẬN 63 TÀI LIỆU THAM KHẢO 65 DANH MỤC HÌNH ẢNH Số hình Tên hình Trang 1.1 Ứng dụng nhận diện khn mặt 14 1.2 Phƣơng pháp trừ với không đổi 22 1.3 Cách tính Integral Image 25 Cách tính nhanh tổng điểm ảnh vùng D 26 1.4 1.5 1.6 1.7 1.8 1.9 ảnh Cách tính tổng điểm ảnh vùng D với đặc trƣng 27 xoay 45 o Sử dụng đặc trƣng để xác định vùng mắt 28 Dựng thẳng, xoay hình chữ nhật cửa sổ 29 phát Một số mẫu dƣơng (Positive Sample) dùng cho 30 việc xác định khuôn mặt Một số mẫu âm (Negative Sample) dùng cho 31 việc xác định khuôn mặt 1.10 Chuỗi nhận dạng theo tầng 33 1.11 Mơ hình 3D đầu ngƣời 38 2.1 Xác định góc nghiêng dựa tâm hai mắt 36 2.2 Kết sau phát đặc điểm 40 2.3 Các góc quay khn mặt 40 2.4 Hệ tọa độ 3D khuôn mặt 41 3.1 Khuôn mặt chuẩn tƣ thay đổi 48 3.2 Phƣơng pháp tạo thƣ viện ảnh 50 3.3 Tƣ khuôn mặt quay ngang 50 Số hình 3.4 3.5 3.6 3.7 3.8 3.9 3.10 3.11 Tên hình Trang Tƣ khn mặt cúi xuống, ngẩng lên 51 Các tƣ khuôn mặt ngẩng lên 51 quay từ phải qua trái Các tƣ khn mặt nhìn xuống từ trái 52 qua phải Không xác định đƣợc khuôn mặt 53 Xác định sai góc xác định sai đƣờng bao 53 khuôn mặt Phƣơng pháp dùng đặc trƣng Haar không nhận 54 diện đủ chi tiết khuôn mặt Phƣơng pháp xác định điểm mốc nhận dạng 54 xác Phƣơng pháp nhận dạng điểm mốc góc quay 55 lớn 3.12 Các điểm mốc khuôn mặt 56 3.13 Đƣờng bao khuôn mặt phận mặt 57 3.14 Góc xoay khn mặt 57 3.15 Góc xoay khn mặt biểu diễn hƣớng Vector 58 3.16 Hiệu suất phát 59 3.17 Hiệu suất ƣớc lƣợng 59 3.18 Sử dụng phƣơng pháp đặc trƣng Haar 60 ảnh ngƣời đeo kính 3.19 3.20 3.21 3.22 Sử dụng phƣơng pháp điểm mốc với ảnh ngƣời 61 có đeo kính Phƣơng pháp đặc trƣng Haar với ảnh đeo kính 61 có râu Phƣơng pháp điểm mốc với ảnh đeo kính có 62 râu Phƣơng pháp điểm mốc với ảnh chụp nhiều ngƣời 62 CÁC CHỮ VIẾT TẮT ADC: Analog to Digital SAT: Summed Area Table RSAT: Rotated Summed Area Table HCI: Human Computer Interaction TP: True Positive FP: False Positive HCC: Haar Cascade Classifier HOG: Histogram of Oriented Gradients MỞ ĐẦU Tính cấp thiết đề tài Thời gian gần có nhiều cơng trình nghiên cứu phƣơng pháp xác định khuôn mặt ngƣời Các nghiên cứu từ toán đơn giản nhƣ ảnh trắng đen đến ảnh màu, ảnh có khn mặt đến ảnh có nhiều khn mặt, ảnh chứa khn mặt tƣ thẳng đứng đến ảnh có chứa khn mặt tƣ nhìn nghiêng Trong việc xác định khn mặt tƣ nhìn nghiêng gặp nhiều khó khăn việc nhận dạng Trong giao tiếp, ngƣời thƣờng sử dụng khả định hƣớng chuyển động đầu để để diễn tả cảm xúc, nhƣ hình thức giao tiếp phi ngơn ngữ Đối với máy tính, việc xác định tƣ đầu đòi hỏi phải thực hàng loạt biến đổi ảnh gốc dựa điểm ảnh qua khái niệm cao dựa hƣớng khác Và nhƣ việc nhận dạng khuôn mặt ảnh, phƣơng pháp xác định góc hƣớng nhìn phải bất biến với thay đổi hàng loạt yếu tố ảnh Các yếu tố bao gồm tƣợng vật lý nhƣ biến dạng máy ảnh, phép chiếu hình học, thay đổi ánh sáng nhƣ yếu tố nhƣ phụ kiện, kính, ria mép… Việc xác định góc quay đầu ngƣời có nhiều mức độ khác nhau, số phƣơng pháp xác định mức độ thấp nhƣ quay trái, quay phải Ở mức độ cao hơn, việc xác định hƣớng nhìn đầu ngƣời sử dụng thuật toán để xác định tƣ đầu theo nhiều hƣớng nhƣ cúi đầu-nhìn lên, nhìn trái-phải, nhìn xiên…, thơng qua việc xác định đặc điểm khuôn mặt nhƣ mắt, mũi, miệng, tai Việc phát đặc điểm khn mặt thơng qua số phƣơng pháp nhƣ xác định dựa màu sắc, dựa xuất điểm ảnh khuôn mặt dựa thống kê, mẫu có sẵn, nhận dạng… Mỗi phƣơng pháp áp dụng có ƣu điểm hạn chế riêng Đó lý định chọn đề tài: “Nghiên cứu phƣơng pháp hƣớng nhìn khn mặt ngƣời ảnh” Mục đích nghiên cứu Đề tài tập trung nghiên cứu phƣơng pháp xác định góc nhìn khn mặt thông qua nhận dạng tập liệu đƣợc huấn luyện từ trƣớc Các phƣơng pháp đƣợc kiểm nghiệm đánh giá kết dựa liệu chuẩn Đối tƣợng phạm vi nghiên cứu Nghiên cứu phƣơng pháp nhận dạng mặt ngƣời chi tiết khuôn mặt Nghiên cứu phƣơng pháp ƣớc lƣợng góc quay khn mặt dựa đặc trƣng chi tiết khuôn mặt Nghiên cứu hai phƣơng pháp xác định dựa đặc trƣng Haar xác định dựa điểm mốc Cuối thực thi thuật toán, đánh giá kết so sánh hai phƣơng pháp Phƣơng pháp nghiên cứu Kết hợp nghiên cứu lý thuyết mô Các bƣớc tiến hành cụ thể nhƣ sau: Thu thập tài liệu thông tin liên quan đến đề tài Phân tích, nghiên cứu nội dung Sử dụng ngơn ngữ lập trình C++, thƣ viện OpenCV, thƣ viện Dlib viết chƣơng trình thực thi thuật tốn đƣa chƣơng trình chạy PC Đánh giá so sánh kết Đề xuất giải pháp mở rộng nâng cấp đề tài Bố cục đề tài Ngoài phần mở đầu, kết luận, tài liệu tham khảo phụ lục, báo cáo đƣợc tổ chức thành chƣơng với kết cấu nhƣ sau: Chƣơng 1: Tổng quan toán nhận dạng mặt ngƣời Chƣơng 2: Một số kĩ thuật xác định hƣớng mặt ngƣời ảnh Chƣơng 3: Thực nghiệm kết 53 dựa điểm mốc chứng tỏ ƣu khả nhận diện tốt với góc quay lớn Hình 3.9 Phƣơng pháp dùng đặc trƣng Haar không nhận diện đủ chi tiết khn mặt Hình 3.10 Phƣơng pháp xác định điểm mốc nhận dạng xác 54 Hình 3.11 Phƣơng pháp nhận dạng điểm mốc góc quay lớn Ngƣợc lại, kỹ thuật phát hƣớng mặt ngƣời dựa theo điểm mốc khn mặt ma trận xoay có nhiều ƣu điểm Ngoài ra, việc sử dụng thuật tốn, thƣ viện hồn chỉnh giúp nâng hiệu suất q trình nhận dạng phát hƣớng khn mặt Kỹ thuật cho phép xác định đầy đủ xác góc quay khn mặt Do vậy, tác giả xây dựng chƣơng trình thử nghiệm theo kỹ thuật phát hƣớng mặt ngƣời dựa theo điểm mốc khuôn mặt ma trận xoay Trong trình xây dựng chƣơng trình thử nghiệm, tác giả sử dụng thƣ viện mã nguồn mở OpenCV Intel thƣ viện Dlib Trong đó, OpenCV (Open Source Computer Vision) thƣ viện mã nguồn mở thị giác máy với 500 hàm 2500 thuật toán đƣợc tối ƣu xử lý ảnh, vấn đề liên quan tới thị giác máy OpenCV đƣợc thiết kế cách tối ƣu, sử dụng tối đa sức mạnh dòng chip đa lõi… để thực phép tính tốn thời gian thực, nghĩa tốc độ đáp ứng đủ nhanh cho 55 ứng dụng thông thƣờng Và Dlib công cụ chứa thuật tốn máy học cơng cụ cho việc tạo phần mềm phức tạp C ++ để giải vấn đề giới thực Đặc biệt cung cấp công cụ hỗ trợ mạnh mẽ cho lĩnh vực xử lý ảnh nhƣ chuyển đổi không gian màu sắc tự động loại điểm ảnh khác nhau, phát cạnh hình thái đối tƣợng ảnh, thuật tốn trích xuất đặc trƣng SURF, HOG, FHOG,cơng cụ để phát đối tƣợng hình ảnh bao gồm nhận diện khn mặt phía trƣớc ƣớc lƣợng tƣ đối tƣợng Chƣơng trình thử nghiệm thực tìm góc quay khn mặt hình ảnh đầu vào Đầu tiên ta thực phát phiện khn mặt, tìm điểm mốc để xác định đƣờng bao khuôn mặt, phận mắt, mũi miệng Hình3.12 Các điểm mốc khn mặt 56 Hình3.13 Đƣờng bao khuôn mặt phận mặt Từ điểm mốc ta tìm đƣợc ma trận xoay, chuyển hóa ma xoay ta có đƣợc góc quay khn mặt theo trục x(roll), y(pitch), z(yaw) Hình3.14 Góc xoay khn mặt 57 Bên cạnh đó, ta biển diễn đƣợc góc nhìn khn mặt theo hƣớng vector Hình 3.15 Góc xoay khn mặt biểu diễn hƣớng Vector Ngoài ra, để đánh giá phƣơng pháp ƣớc lƣợng góc quay khn mặt dựa điểm mốc, ta thực đánh giá dựa tiêu chí.: Thứ độ xác phát thành phần khuôn mặt Tác giả đánh giá tính xác phát khn mặt cá nhân sở liệu HeadPoseImage Database gồm hình ảnh khn mặt phía trƣớc nghiêng trái, phải, Mỗi hình ảnh tập kiểm tra có khn mặt Để đánh giá hiệu hoạt động phát thành phần khn mặt, tính tỷ lệ phát đƣợc cho cơng thức: Tỷ lệ phát = ố ố ì ặ đƣợ ả ù đị để đú ể Để tính toán tỷ lệ phát , cúng ta cần định nghĩa tiêu chuẩn việc phát thành phần khuôn mặt Ở tác giả sử dụng khoảng cách Euclide vị trí chi tiết đƣợc phát 58 vị trí thật Để làm cho khoảng cách độc lập với kích thƣớc hình ảnh, khoảng cách đƣợc chuẩn hóa khung giới hạn Hình 3.16 Hiệu suất phát Có thể thấy, với ngƣỡng khoảng cách 0.02 tỷ lệ phát đạt đến 80%, lên đến 90% ngƣỡng 0.04 Thứ hai ƣớc lƣợng tƣ khuôn mặt, tác giả thực đánh giá liệu trên, sử dụng mơ hình 3D khuôn mặt đƣợc cấp bỏi thƣ viện dlib Để đánh giá hiệu suất, tác giả thực tính tốn sai số trung bình tuyệt đối cho góc quay Hình3.17 Hiệu suất ƣớc lƣợng 59 Có thể thấy, khn mặt với tƣ nhìn thẳng đƣợc xấp xỉ với độ xác cao, tƣ nghiêng nhiều đem lại sai số cao 3.4 MỘT SỐ TRƢỜNG HỢP ĐẶC BIỆT Trong trình nhận dạng nhằm xác định hƣớng nhìn khn mặt, số thành phần lạ xuất nhƣ: Mũ, kính mắt, ria mép… số thành phần bị che khuất thành phần khác khuôn mặt Với xuất biến thành phần này, q trình nhận dạng khn mặt gặp nhiều khó khăn Khn mặt ngƣời đƣợc nhận dạng không đầy đủ thành phần nhƣ mắt, mũi, miệng rút trích đặc trƣng khơng xác từ dẫn đến việc đƣa góc quay khơng xác Tác giả thực nghiệm đánh giá hai phƣơng pháp, với phƣơng pháp dựa đặc trƣng Haar, việc xác định chi tiết gặp nhiều khó khăn Ngƣợc lại phƣơng pháp điểm mốc lại cho kết xác Hình 3.18 Sử dụng phƣơng pháp đặc trƣng Haar ảnh ngƣời đeo kính 60 Hình 3.19 Sử dụng phƣơng pháp điểm mốc với ảnh ngƣời có đeo kính Hình 3.20 Phƣơng pháp đặc trƣng Haar 61 với ảnh đeo kính có râu Hình 3.21 Phƣơng pháp điểm mốc với ảnh đeo kính có râu Hình 3.22 Phƣơng pháp điểm mốc với ảnh chụp nhiều ngƣời 62 Việc xác định xác đặc điểm khn mặt nhƣ mắt, mũi, miệng giúp kết việc xác định góc quay khn mặt xác Phƣơng pháp xác định khuôn mặt dựa điểm mốc cho thấy vƣợt trội kết xác định, giúp nâng cao hiệu suất phát so với phƣơng pháp sử dụng đặc trƣng Haar 63 KẾT LUẬN Nhận dạng khuôn mặt hƣớng nghiên cứu đƣợc quan tâm từ lâu đạt đƣợc nhiều thành tựu với nhiều ứng dụng cụ thể Tuy nhiên việc nhận dạng khn mặt tốn cịn gặp nhiều khó khăn, thách thức, đặc biệt việc xác định hƣớng xoay khn mặt Đa số bào tốn nhận dạng khuôn mặt cho kết khn mặt tƣ thẳng đứng có góc quay nhỏ Bài tốn xác định hƣớng quay khn mặt góp phần khơng nhỏ vào việc nhận dạng mặt ngƣời, giúp tăng khả phát mặt ngƣời nhƣ hỗ trợ nhiều ứng dụng cụ thể Trong đề tài, tác giả nghiên cứu phƣơng pháp xác định góc quay khn mặt, cụ thể đạt đƣợc số kết sau: - Trình bày khái quát xử lý ảnh, phƣơng pháp nhận dạng khn mặt, phƣơng pháp nhận dạng thuộc tính măt – mũi – miệng khn mặt - Tìm hiểu số phƣơng pháp xác định góc quay khuôn mặt nhƣ phƣơng pháp “tâm hai mắt”, phƣơng pháp xử dụng đặc trƣng Haar đề xuất phƣơng pháp dựa điểm mốc để nâng cao hiệu việc xác định hƣớng quay khuôn mặt - Xây dựng chƣơng trình thử nghiệm, đánh giá phƣơng pháp trên, đƣa kết góc quay theo chiều khn mặt Trên sở tìm hiểu kĩ thuật nhận dạng khuôn mặt, tác giả xây dựng đƣợc chƣơng trình xác định góc nghiêng khuôn mặt theo hai phƣơng pháp phƣơng pháp dựa đặc trƣng Haar phƣơng pháp xác định điểm mốc Bằng kiểm chứng kết quả, tác giả nhận 64 thấy phƣơng pháp xác định điểm mốc cho kết xác hơn, hiệu suất phát cao Đề tài dừng lại việc xây dựng chƣơng trình đơn giản để đánh giá phƣơng pháp, chƣa có tính mở rộng nhƣ chƣa xây dựng đƣợc giao diện thân thiện ngƣời dùng Hƣớng phát triển đề tài: Việc sử dụng thƣ viện Dlib kết hợp với phƣơng pháp xác định điểm mốc khuôn mặt đem lại kết tốt nhiều so với phƣơng pháp dựa đặc trƣng Haar Hƣớng phát triển đề tài tiếp tục cải thiện hiệu suất phát hiện, đặc biệt trƣờng hợp góc quay cúi xuống ngẩng lên Áp dụng xây dựng ứng dụng nhƣ phát cảm xúc ngƣời, phát hành vi bất thƣờng thông qua xử lý ảnh 65 TÀI LIỆU THAM KHẢO [1] E Saber and A.M.Tekalp, “Frontal – View Face Detection and Facial Feature Extraction Using Color, Shape and Symmetry Based Cost Functions”, Pattern Recognition Letters, vol.17, no.8, pp.669-680, 1998 [2] Face pose estimation and its application in video shot selectionZ Yang, H Ai, B Wu, S Lao, L Cai - Pattern Recognition, 2004 …, 2004 - ieeexplore.ieee.org [3] Head Pose Estimation in Computer Vision: A Survey Erik MurphyChutorian IEEE Transactions on Pattern Analysis and Machine Intelligence (Volume:31 , Issue: ), 2008 [4] Head pose estimation on depth data based on Particle Swarm Optimization by Pashalis Padeleris, Xenophon Zabulis and Antonis A Argyros Institute of Computer Science - FORTHHeraklion, Crete, Greece [5] Li Wei, Eung Joo Lee, Multi-pose Face Recognition Using Head Pose Estimation and PCA Approach”, International Journal of Digital Content Technology and its Applications, 112~122,2010, Availabel at http:www.aicit.org/jdcta/ppl/jdcta4- 1_revised2_paper12.pdf [6] M.Castrillón-Santana, O.Déniz-Suarez, L.Anton-Canalis, J.LorenzeNavarro, “Face and Facial Feature Detection Evaluation, Institute of Intelligent Engineerin”, Systems and Numerical 2006, Applications Availabel http:gias720.dis.ulpgc.es/Gias/Publications/visapp-2008-1.pdf in at 66 [7] M.Castrillón-Santana, O.Déniz-Suarez, L.Anton-Canalis, J.LorenzeNavarro, “Face and Facial Feature Detection Evaluation, Institute of Intelligent Systems and Numerical Applications in Engineerin”, 2006, [8] M.Jones and P Viola Fast multi-view face detection In CVPR 2003 [9] Ming-Hsuan Yang, David J.Kriegman, and Narendra Ahuja, “Detecting Faces in Images: A Survey”, IEEE Transaction on Pattern Analysis and Machine Intelligent, vol 24, no 1, 2002 [10] N Pears, T Heseltine, and M Romero From 3D point clouds to pose-normalised depth maps IJCV, 89(2-3):152–176, 2010 [11] One Millisecond Face Alignment with an Ensemble of Regression Trees by Vahid Kazemi and Josephine Sullivan, CVPR 2014 [12] P N Belhumeur, D W Jacobs, D J Kriegman, and N Kumar Localizing parts of faces using a consensus of exemplars In CVPR 2011 [13] S Malassiotis and M Strintzis Robust real-time 3D head pose estimation from range data Pattern Recognition, 38:1153–1165, 2005 [14] X Zabulis, T Sarmis, and A A Argyros 3D head pose estimation from multiple distant views In BMVC, 2009 [15] Y Tu, C Zeng, C Yeh, S Huang, T Cheng, and M Ouhyoung Real-time head pose estimation using depth map for avatar control CVGIP, 2011 Trang Web [16] Availabel at http://gias720.dis.ulpgc.es/Gias/Publications/visapp2008-1.pdf 67 [17] Phillip Ian Wilson, John Fernandez, “Facial Feature Detection Using Haar Classifiers”, 2006, Available at : http://nichol.as/papers/Wilson/Facial%20feature%20detection%20 using%20Haar.pdf ... Tính cấp thiết đề tài Thời gian gần có nhiều cơng trình nghiên cứu phƣơng pháp xác định khuôn mặt ngƣời Các nghiên cứu từ toán đơn giản nhƣ ảnh trắng đen đến ảnh màu, ảnh có khn mặt đến ảnh có... riêng Đó lý tơi định chọn đề tài: ? ?Nghiên cứu phƣơng pháp hƣớng nhìn khn mặt ngƣời ảnh? ?? Mục đích nghiên cứu Đề tài tập trung nghiên cứu phƣơng pháp xác định góc nhìn khn mặt thơng qua nhận dạng tập... ngƣời ảnh màu có nhiều mặt ngƣời ảnh Đến tốn xác định khn mặt đƣợc mở rộng với nhiều hƣớng nghiên cứu nhƣ nhận dạng khuôn mặt, xác định đặc điểm khuôn mặt, theo dõi khn mặt, xác định hƣớng nhìn