CHƯƠNG 1: GIỚI THIỆU VỀ NHẬN DẠNG KHUÔN MẶT VÀ MẠNG NƠRON TÍCH CHẬP 1. Hệ thống nhận dạng khuôn mặt 1. Mô tả bài toán nhận dạng khuôn mặt Nhận dạng mặt người là một trong những ứng dụng quan trọng của thị giác máy tính nói riêng cũng như khoa học máy tính nói chung. Bài toán nhận dạng khuôn mặt người vốn được nghiên cứu từ những năm 1970 và cho đến nay, rất nhiều nghiên cứu lẫn ứng dụng cho bài toán này đã ra đời.
Bài toán nhận dạng mặt người có thể áp dụng rộng rãi trong nhiều lĩnh vực khác nhau. Các ứng dụng liên quan đến nhận dạng mặt người có thể kể như: hệ thống phát hiện tội phạm, hệ thống theo dõi nhân sự trong một đơn vị, hệ thống tìm kiếm thông tin trên ảnh, video dựa trên nội dung [1] Như chúng ta đã biết, con người khi sinh ra đã có những đặc điểm sinh học tự nhiên riêng biệt phân biệt giữa người này với người kia, rất khó có thể trùng lặp. Các đặc điểm đó có thể bị thay đổi trong cuộc sống trừ những tác động khách quan hoặc chủ quan như: tai nạn, tổn thương, phẫu thuật chỉnh hình. Chính bởi yếu tố riêng biệt đó, các nhà khoa học tập trung nghiên cứu, tìm hiểu đặc trưng sinh trắc của con người và áp dụng vào các biện pháp giúp nhận dạng, xác định danh tính của mỗi người.
Dựa vào những đặc điểm sinh trắc học của con người, các hệ thống nhận dạng sinh trắc học ra đời nhằm giải quyết nhiều vấn đề có liên quan tới bảo mật, an ninh, khoa học hay các nhu cầu khác trong cuộc sống. Các đặc trưng sinh trắc khuôn mặt là những đặc điểm riêng trên khuôn mặt mỗi người gần như không thay đổi theo thời gian, các đặc điểm này phân biệt giữa người này và người kia, rất khó có thể xảy ra trùng lặp. Dựa trên nhận xét thực tế, con người dễ dàng nhận biết các khuôn mặt và các đối tượng trong các tư thế khác nhau và điều kiện ánh sáng khác nhau, thì phải tồn tại các thuộc tính hay đặc trưng không thay đổi. Chính vì thế, việc xác định danh tính, nhận dạng khuôn mặt người thông qua các đặc trưng sinh trắc học đó sẽ đảm bảo được độ chính xác, tin cậy cao.
4 Bản thân con người có thể nhận dạng ảnh khuôn mặt của mọi người một cách dễ dàng. Thậm chí, ảnh đó có thể nằm trong một ảnh nền phức tạp. Tuy nhiên, đối với hệ máy thì việc nhận dạng này là một công việc rất phức tạp và khó khăn. Chính vì vậy, trong những năm gần đây, lĩnh vực nhận dạng khuôn mặt đã nhận được sự quan tâm nghiên cứu lớn từ các nhà khoa học nhằm tạo ra các hệ hỗ trợ quyết định phục vụ trong rất nhiều lĩnh vực của cuộc sống.
Giả sử ta có một cơ sở dữ liệu ảnh đã được lưu trong máy về một số người (Hình 1.1), bài toán nhận dạng là làm sao để khi đưa ảnh khuôn mặt của một người bất kỳ vào thì máy sẽ tự động nhận dạng ra người này trong cơ sở dữ liệu. Mô hình bài toán nhận dạng mặt người 1. Hệ thống nhận dạng khuôn mặt Nhiệm vụ của hệ thống nhận dạng khuôn mặt là xử lý tự động thông tin từ các ảnh khuôn mặt để tìm ra độ tương tự giữa các khuôn mặt và đưa ra quyết định về tính đồng nhất giữa chúng. Cấu trúc của hệ thống nhận dạng khuôn mặt được thể hiện như hình 1.2 và gồm các khâu chức năng sau [1] 5 Hình 1.
Cấu trúc tổng quát của hệ thống nhận dạng khuôn mặt Phát hiện khuôn mặt (face detection): Phát hiện khuôn mặt sẽ lấy ra tất cả các khuôn mặt trong một hình ảnh. Chức năng này làm nhiệm vụ xác định vị trí, kích cỡ của một hoặc nhiều khuôn mặt trên ảnh chụp từ đó tách ra phần mặt. Phần ảnh mặt được tách ra thường nhỏ hơn nhiều so với ảnh chụp ban đầu, nó sẽ là các khuôn mặt cần tìm và chức năng trích chọn đặc trưng sẽ sử dụng các ảnh được tách ra này. Tiền xử lý (Pre-Processing): Bước này nhằm mục đích lọc nhiễu, nâng cao chất lượng ảnh để chuẩn hóa ảnh cần tìm giúp cho việc tìm kiếm được hiệu quả hơn.
Các công việc trong bước tiền xử lý có thể là: Chuẩn hóa kích cỡ giữa ảnh trong CSDL và ảnh cần tìm, hiệu chỉnh độ sáng, tối của ảnh; lọc nhiễu, chuẩn hóa về vị trí, tư thế ảnh mặt. Trích chọn đặc trưng (FE): Tìm ra các đặc trưng chính của ảnh mặt, từ các đặc trưng này hình thành các vector đặc trưng, các vector này sẽ được sử dụng để đối sánh sự giống nhau giữa ảnh mặt cần tìm và ảnh mặt trong CSDL. Nhận dạng/Phân lớp: Bước nhận dạng (recognition) hay phân lớp (classification), tức là xác định danh tính (identity) hay nhãn (label) của ảnh đó là ảnh của ai. 6 Dữ liệu hệ thống nhận dạng: Dữ liệu hệ thống nhận dạng được chia làm 3 tập gồm tập huấn luyện (training set), tập tham chiếu (reference set) và tập để nhận dạng (probe set).
Tập huấn luyện gồm các ảnh được dùng để huấn luyện, thông thường tập này được dùng để sinh ra một không gian con là một ma trận. Tập tham chiếu gồm các ảnh đã biết danh tính được chiếu vào không gian con ở bước huấn luyện. Sau khi thực hiện chiếu tập tham chiếu vào không gian con, hệ thống lưu lại kết quả là một ma trận với mỗi cột của ma trận là một vector tương ứng với ảnh (định danh đã biết) để thực hiện nhận dạng (hay phân lớp). Hệ thống nhận dạng khuôn mặt cần đảm bảo các yêu cầu: - Độ chính xác nhận dạng có thể chấp nhận được đối với yêu cầu của bài toán nhận dạng; - Tốc độ vận hành cao đối với các CSDL lớn và số lượng các yêu cầu có thể giải quyết được; - Đơn giản trong việc cài đặt, lựa chọn thiết bị và vận hành.
An toàn với người sử dụng. Một số ứng dụng của hệ thống nhận dạng khuôn mặt Hệ thống nhận dạng khuôn mặt đã và đang được áp dụng trong rất nhiều lĩnh vực của đời sống xã hội. Chúng ta có thể liệt kê một số ứng dụng tiêu biểu như sau: - Hệ thống tương tác giữa người và máy: sẽ giúp những người tàn tật hoặc khiếm khuyết có thể trao đổi. Những người câm sẽ nói chuyện với người bình thường bằng ngôn ngữ tay, người bại liệt có thể thông qua các ký hiệu như nháy mắt, những cử chỉ trên khuôn mặt để ra hiệu cho người bình thường, … - Nhận dạng người có phải là tội phạm bị truy nã hay không? Giúp cơ quan an ninh quản lý tốt con người.
Hoặc có thể truy tìm nhanh chóng các hồ sơ tội phạm trong cơ sở dữ liệu của máy tính. 7 - Hệ thống quan sát theo dõi và bảo vệ. Các hệ thống camera sẽ xác định đâu là con người và theo dõi con người đó xem họ có vi phạm gì không, ví dụ như xâm phạm khu vực không được vào, xâm phạm vào nhà riêng, … - Lưu trữ hình ảnh khuôn mặt những người rút tiền từ máy rút tiền, hiện nay có tình trạng những người bị người khác lấy mất mã số PIN và những người ăn cắp này đi rút tiền. Hoặc những người chủ thẻ đi rút tiền nhưng lại báo mất thẻ và mất tiền.
Các ngân hàng có nhu cầu khi giao dịch tiền sẽ kiểm tra hay lưu trữ khuôn mặt người rút tiền để sau đó đối chứng và xử lý. - Các hệ thống mở cửa, chấm ngày công lao động của các nhân viên vào ra trong công ty. Hệ thống nhận dạng mặt người sẽ cho phép các nhân viên vào ra những khu vực cho phép, hay đăng nhập máy tính hoặc đăng nhập máy tính cá nhân của mình mà không cần mật khẩu, … - Phân tích các cảm xúc của con người trên khuôn mặt. - Tương lai sẽ phát triển các loại thẻ thông minh có tích hợp sẵn đặc trưng của người dùng trên đó, khi bất cứ người dùng nào khác dùng để truy cập hay xử lý tại các hệ thống sẽ được yêu cầu kiểm tra các đặc trưng của khuôn mặt so với thẻ để biết có phải là chủ thẻ hay không [1] 1.
Một số hướng tiếp cận nhận dạng khuôn mặt Có nhiều nghiên cứu tìm phương pháp xác định khuôn mặt người, từ ảnh xám đến ngày nay là ảnh màu. Tôi sẽ trình bày một cách tổng quát nhất những hướng giải quyết chính cho bài toán, từ những hướng chính này nhiều tác giả thay đổi một số ý nhỏ bên trong để có kết quả mới. Dựa vào tính chất của các phương pháp xác định khuôn mặt người trên ảnh. Các phương pháp này được chia làm bốn hướng tiếp cận chính.
Ngoài bốn hướng này, nhiều nghiên cứu có khi liên quan đến không những một hướng tiếp cận mà có liên quan nhiều hơn một hướng chính [3] 8 Hướng tiếp cận dựa trên tri thức: Mã hóa các hiểu biết của con người về các loại khuôn mặt người thành các luật. Thông thường các luật mô tả quan hệ của các đặc trưng. Hướng tiếp cận dựa trên đặc trưng không thay đổi: Mục tiêu các thuật toán đi tìm các đặc trưng mô tả cấu trúc khuôn mặt người mà các đặc trưng này sẽ không thay đổi khi tư thế khuôn mặt, vị trí đặt thiết bị thu hình hoặc điều kiện ánh sáng thay đổi. Hướng tiếp cận dựa trên so khớp mẫu: Dùng các mẫu chuẩn của khuôn mặt người (các mẫu này được chọn lựa và lưu trữ) để mô tả cho khuôn mặt người hay các đặc trưng khuôn mặt (các mẫu này phải chọn làm sao cho tách biệt nhau theo tiêu chuẩn mà các tác giả định ra để so sánh).
Các mối tương quan giữa dữ liệu ảnh đưa vào và các mẫu dùng để xác định khuôn mặt người. Hướng tiếp cận dựa trên diện mạo: Trái ngược hẳn với so khớp mẫu, các mô hình (hay các mẫu) được học từ một tập ảnh huấn luyện trước đó. Sau đó hệ thống (mô hình) sẽ xác định khuôn mặt người. Hay một số tác giả còn gọi hướng tiếp cận này là hướng tiếp cận theo phương pháp học.
Hướng tiếp cận dựa trên tri thức Trong hướng tiếp cận này, các luật sẽ phụ thuộc rất lớn vào tri thức của những tác giả nghiên cứu về bài toán xác định khuôn mặt người. Đây là hướng tiếp cận dạng top-down. Dễ dàng xây dựng các luật cơ bản để mô tả các đặc trưng của khuôn mặt và các quan hệ tương ứng. Ví dụ, một khuôn mặt thường có hai mắt đối xứng nhau qua trục thẳng đứng ở giữa khuôn mặt và có một mũi, một miệng.