CHƯƠNG I. : CƠ SỞ LÝ LUẬN VỀ HỆ THỐNG NHẬN DIỆN KHUÔN MẶT VÀ TỔNG QUAN TÌNH HÌNH NGHIÊN CỨU 1. Tổng quan về hệ thống nhận diện khuôn mặt Trong những năm trở lại đây, công nghệ nhận diện khuôn mặt đã trở thành một ngành công nghệ rất được nhiều người quan tâm trong nhiều lĩnh vực nghiên cứu và ứng dụng trên toàn thế giới. Nhận diện khuôn mặt đã trở thành một yếu tố vô cùng quan trọng trong quá trình phát hiện và hỗ trợ việc tìm kiếm cũng như truy xuất dữ liệu giúp con người cải thiện được tốc độ cũng như rút ngắn thời gian trong quy trình công việc.
Chúng ta đã biết, thông tin luôn là nền tảng của các quyết định hiệu quả. Thông tin luôn cần đòi hỏi độ chính xác cao, nhanh chóng, kịp thời. Nhận diện khuôn mặt là một phát hiện mới. Một trong những thế mạnh nổi bật nhất của công nghệ này là ở việc xử lý dữ liệu không gian và thời gian.
Giữ liệu khôn gian khá phức tạp, nhưng nhờ có hệ thống camera trải dài khắp các khu vực, chúng ta có thể thu nhập được dữ liệu ở bất kỳ nơi đâu có thể ghi hình và lưu trữ. Vấn đề về mặt thời gian nhờ đó cũng có thể được giải quyết và khắc phục.1 Khái niệm hệ thống nhận diện khuôn mặt Hệ thống nhận dạng mặt người là một hệ thống nhận đầu vào là một ảnh hay một video (chuỗi các ảnh), qua quá trình xử lý, hệ thống xác định được người nào trong ảnh (nếu có) là người mà hệ thống đã biết được hoặc người lạ. Nhận dạng mặt người ngày càng được sử dụng rộng rãi. Nếu cách đây khoảng một thập kỷ chỉ thấy các kỹ thuật dò tìm khuôn mặt sử dụng trong các thiết bị giải trí thì ngày nay nhiều hệ thống nhận dạng mặt người đã ra đời và giữ vai trò quan trọng như: hệ thống chấm công bằng khuôn mặt (FaceID), hệ thống an ninh cảnh báo người lạ xâm nhập vào khu vực cấm (hệ thống SmartHD của panasonic), hệ thống nhận dạng tội phạm sử dụng ở London, Chicago,.
và gần đây là nhận dạng khuôn mặt trong các hệ thống nhà thông minh hứa hẹn nhiều tiềm năng cho con người trong tương lai. Đặng Thị Ngọc Mai – K18HTTTB 4 Khoá luận tốt nghiệp Ứng dụng nhận diện khuôn mặt trong bài toán chăm sóc khách hàng tại ngân hàng Vietinbank sử dụng OpenCv 1.2 Các giai đoạn trong quá trình nhận diện khuôn mặt. Nhìn chung một hệ thống nhận diện mặt người đều trải qua các bước: - Phát hiện khuôn mặt: Face detection - Phân đoạn khuôn mặt: Face Alignment. - Rút trích đặc trưng : Feature extraction.
- So khớp, phân lớp: Face classification. Để một hệ thống nhận diện mặt người hiệu quả, ngoài các giai đoạn nêu trên còn có các giai đoạn tiền xử lý ảnh đầu vào. Như vậy, sơ đồ một hệ thống nhận dạng mặt người như sau: Hình 1. 1 Hệ thống nhận diện mặt người a) Giai đoạn tiền xử lý: Vì ảnh chụp có thể ở các điều kiện khác nhau, dẫn tới độ sáng, độ tương phản và màu hiển thị cũng khác nhau.
Quá trình tiền xử lý làm nâng cao chất lượng ảnh, chuẩn hóa dữ liệu, kích cỡ ảnh, chuyển ảnh về cùng 1 mức độ sáng, độ tương phản, cùng hệ màu. Việc chuẩn hóa cũng giúp độ chênh lệch giữa 2 điểm ảnh được giảm xuống để quá trình rút trích đặc trưng thêm chính xác hơn. Tiền xử lý chủ yếu sử dụng các kỹ thuật xử lý ảnh: cân bằng sáng, tách ngưỡng, bó cụm,. Đặng Thị Ngọc Mai – K18HTTTB 5 Khoá luận tốt nghiệp Ứng dụng nhận diện khuôn mặt trong bài toán chăm sóc khách hàng tại ngân hàng Vietinbank sử dụng OpenCv b) Giai đoạn phát hiện khuôn mặt: Hình 1.
2 Phát hiện khuôn mặt Thông thường hình ảnh mà camera thu được không chỉ có khuôn mặt của đối tượng mà còn bao gồm cả các chi tiết xung quanh đối tượng đó. Xác định khuôn mặt là xác định xem có hình ảnh khuôn mặt trong bức ảnh đó không, nếu có thì nằm vị trí nào trong bức ảnh, nghĩa là phải tách được khuôn mặt ra khỏi hình nền. Có khá nhiều phương pháp cho bài toán phát hiện khuôn mặt người: - Phương pháp nhận diện mặt người dựa trên màu da: mặc dù những người khác nhau thì màu da khác nhau, nhưng rất nhiều nghiên cứu chỉ ra rằng, khi khác biệt này dựa trên cường độ ánh sáng giữa chúng hơn là thành phần màu da, từ đó ta có thể xác định màu da của con người nằm ở một dãy màu cố định. Kết hợp với việc tra trong bảng màu của từng điểm ảnh với kỹ thuật phân vùng và các kết quả nghiên cứu về độ tương quan giữa chiều rộng và chiều cao khuôn mặt sẽ xác định được có khuôn mặt người trong đó hay không.
- Phát hiện mặt người dựa trên đặc trưng Haar-like: tạo tập huấn luyện bằng các đặc trưng haar-like sau đó dựa vào tập huấn luyện này để phát hiện khuôn mặt. Để làm được như vậy, ảnh đầu vào trước hết phải được xóa xám, sau đó cho một hoặc nhiều hình chữ nhật chứa đặc trưng haar-like chạy khắp bức ảnh. Những chỗ Đặng Thị Ngọc Mai – K18HTTTB 6 Khoá luận tốt nghiệp Ứng dụng nhận diện khuôn mặt trong bài toán chăm sóc khách hàng tại ngân hàng Vietinbank sử dụng OpenCv khác biệt sẽ được lưu lại. Tập hợp hàng nghìn điểm khác biệt của hàng trăm khuôn mặt khác nhau sẽ cho ra một tập dữ liệu dùng để phát hiện mặt người.
c) Phân đoạn khuôn mặt (chuẩn hóa khuôn mặt): Hình 1. 3 Chuẩn hóa khuôn mặt Khuôn mặt xuất hiện trong hình ảnh với nhiều hình dáng, điệu bộ khác nhau, có thể nghiêng, che khuất một phần nên việc chuẩn hóa khuôn mặt là yếu tố ảnh hưởng trực tiếp đến kết quả nhận dạng. Nếu việc chuẩn hóa không đạt kết quả tốt thì việc rút trích đặc trưng sẽ không được như mong muốn, điều này làm độ chính xác trong giai đoạn so khớp giảm xuống, kéo theo độ nhận dạng của hệ thống bị giảm xuống. Ngược lại nếu việc chuẩn hóa đạt kết quả cao thì hệ thống nhận dạng với độ chính xác cao hơn.
Ở đây phương pháp để chuẩn hóa mặt người là “Mô hình dáng điệu tích cực”. “Mô hình dáng điệu tích cực”: Dáng điệu là một tập hợp các phần được đánh dấu trên hình ảnh bởi các chuyên gia biểu diễn dáng điệu của một đối tượng. Chuẩn hóa mỗi hình ảnh là thực hiện biến đổi sao cho tổng khoảng cách của các ảnh đến ảnh trung bình là nhỏ nhất. d) Rút trích đặc trưng: Hệ thống nhận dạng mặt người thường được xử lý trên một cơ sở dữ liệu ảnh lớn về số lượng và kích thước.
Quá trình rút trích đặc trưng nhằm giảm số chiều của không gian dữ liệu bằng cách loại bỏ bớt những thành phần (chiều) dư thừa trong dữ liệu sao cho lượng thông tin sau trích rút vẫn đảm bảo các đặc trưng của dữ liệu ban đầu. Rút trích đặc trưng tốt làm giảm chi phí và tăng độ chính xác cho quá trình so khớp phía sau. Các phương pháp thường sử dụng để rút trích đặc trưng: Đặng Thị Ngọc Mai – K18HTTTB 7 Khoá luận tốt nghiệp Ứng dụng nhận diện khuôn mặt trong bài toán chăm sóc khách hàng tại ngân hàng Vietinbank sử dụng OpenCv - Phương pháp PCA (Principal Components Analyst): Phương pháp PCA giúp cho việc phân lớp hay xác định đối tượng bằng cách làm rõ những điểm tương đồng hay khác biệt trong dữ liệu của các đối tượng, phương pháp PCA cố gắng thể hiện đối tượng từ một không gian dữ liệu lớn sang một không gian dữ liệu nhỏ hơn có thể kiểm soát được sao cho sự mất mát thông tin dữ liệu của đối tượng là nhỏ nhất. Từ các kết quả thu được, các tác vụ tiếp theo như phân lớp, nhận diện sẽ được thực hiện với chi phí thấp hơn và không gian để lưu trữ dữ liệu cũng được giảm bớt.
- Phương pháp LDA (Linear Discriminant Analysis): Mục tiêu của phương pháp này là cố gắng thu nhỏ các khoảng cách của các phần tử trong so khớp so với tâm của lớp đó đồng thời tăng khoảng cách giữa các lớp với nhau. e) So khớp, phân lớp: Là giai đoạn cuối cùng trong hệ thống nhận dạng mặt người. Từ ảnh đầu vào, hệ thống thực hiện quá trình trình bày bên trên, đưa ra dữ liệu đặc trưng của ảnh, so sánh đặc trưng này với toàn bộ đặc trưng của ảnh trong cơ sở dữ liệu nhận dạng. Dựa vào đó, hệ thống so sánh và xác định người trong ảnh (nếu đã có trong cơ sở dữ liệu) hoặc đưa ra kết luận người đó không có trong cơ sở dữ liệu (người lạ) [1].3 Các yếu tố ảnh hưởng tới quá trình nhận diện khuôn mặt.
Các yếu tố làm ảnh hưởng tới kết quả nhận dạng: ▪ Ánh sáng: Ảnh kỹ thuật số biểu diễn cường độ sáng của đối tượng, do đó khi ánh sáng thay đổi, thông tin về đối tượng sẽ bị ảnh hưởng. ▪ Cự ly của đối tượng so với camera: khoảng cách đối tượng so với camera sẽ xác định số pixel ảnh quy định nên khuôn mặt. ▪ Cảm xúc biểu cảm trên khuôn mặt: các nét biểu cảm cảm xúc trên khuôn mặt gây ra nhiễu, việc loại nhiễu này vẫn chưa có phương pháp hiệu quả. ▪ Tư thế đứng của đối tượng (nghiêng, xoay,…): tư thế của đối tượng sẽ xác định thông tin của đối tượng đó.
Việc tư thế thay đổi quá lớn sẽ làm thay phần lớn thông tin về đối tượng, dẫn đến kết quả nhận dạng sai. ▪ Trang phục của đối tượng: Kết quả nhận dạng có thể bị ảnh hưởng lớn nếu như đối tượng có các trang phục khác biệt so với mẫu như đeo kính, đội mũ,… [6]. Đặng Thị Ngọc Mai – K18HTTTB 8 Khoá luận tốt nghiệp Ứng dụng nhận diện khuôn mặt trong bài toán chăm sóc khách hàng tại ngân hàng Vietinbank sử dụng OpenCv Qua đó có thể đưa ra các đánh giá cũng như các thuật toán tốt hơn cho việc truy xuất và nhận diện khuôn mặt khách hàng. Để có thể xử lý được bài toán trên, khóa luận đề xuất hướng tiếp cận là sử dụng các kỹ thuật xử lý ảnh số.
Các ảnh số được thu thập bằng camera và xử lý thông qua máy tính PC. Đây là một hệ thống nhận dạng trực tiếp, nên sẽ yêu cầu độ chính xác cao và thời gian xử lý nhanh. Bài toán nhận dạng mặt người là sự kết hợp của hai bài toán: - Bài toán xác định mặt người trong camera được trích xuất (Face Detection). - Bài toán nhận dạng mặt người (Face Recognition).
Xu thế ứng dụng hệ thống nhận diện khuôn mặt người 1.