CHƯƠNG 1. TỔNG QUAN VỀ ĐỀ TÀI 1. Tổng quan về nhận diện khuôn mặt Bài toán chống giả mạo khuôn mặt là một trong những ứng dụng quan trọng của công nghệ nhận dạng khuôn mặt. Kỹ thuật chống giả mạo khuôn mặt (anti-spoofing) được sử dụng để phát hiện và ngăn chặn các kỹ thuật giả mạo khuôn mặt, như sử dụng hình ảnh, video hoặc mô hình 3D của một người khác để qua mặt hệ thống nhận dạng khuôn mặt.
Trong bối cảnh hiện nay, khi công nghệ nhận dạng khuôn mặt được sử dụng rộng rãi trong các lĩnh vực như an ninh, giao thông hay quản lý điểm danh, việc sử dụng các kỹ thuật giả mạo khuôn mặt đã trở nên phổ biến. Điều này đã đặt ra một thách thức lớn cho các hệ thống nhận dạng khuôn mặt, khi cần đảm bảo tính chính xác và độ tin cậy của quá trình nhận dạng. Để giải quyết vấn đề này, các kỹ thuật anti-spoofing được sử dụng để phát hiện các kỹ thuật giả mạo khuôn mặt bằng cách phân tích các đặc trưng khác nhau của khuôn mặt, chẳng hạn như độ sáng, độ tương phản, chuyển động và chiều sâu. Các phương pháp anti-spoofing cũng có thể sử dụng các thuật toán học máy để phát hiện các đặc trưng giả mạo khuôn mặt dựa trên các mẫu đào tạo.
Tuy nhiên, các kỹ thuật anti-spoofing vẫn đang phát triển và chưa hoàn thiện, đặc biệt là khi phải đối mặt với các kỹ thuật giả mạo khuôn mặt mới. Do đó, việc nghiên cứu và phát triển các kỹ thuật anti-spoofing còn rất cần thiết để đảm bảo tính chính xác và độ tin cậy của quá trình nhận dạng khuôn mặt. Trong đề tài này, em thực hiện nghiên cứu các kỹ thuật chống giả mạo và ứng dụng vào hệ thống điểm danh tự động dựa trên khuôn mặt. Dữ liệu đầu vào là các video stream thu được từ các camera giám sát tại các phòng.
Các kỹ thuật được sử dụng bao gồm: face recognition (nhận dạng khuôn mặt), face detection (phát hiện khuôn mặt), face verification (xác minh khuôn mặt), face anti spoofing (chống giả mạo khuôn mặt) , dựa trên công nghệ học sâu (Deep Learning) và xử lý hình ảnh (Computer Vision). Kết quả nghiên cứu dự kiến bao gồm: Tự động điểm danh khuôn mặt trên video, lưu lại thông tin của thí sinh vào hệ thống của trường. Trong tương lai gần sau khi thực hiện nghiên cứu này nhóm sẽ xây dựng hệ thống phát hiện gian trong thời gian thực và có thể áp dụng trực tiếp tại các phòng thông qua camera giám sát. Lý do chọn đề tài Trong bối cảnh hiện nay, khi công nghệ nhận dạng khuôn mặt được sử dụng rộng rãi trong các lĩnh vực như an ninh, giao thông hay quản lý điểm danh, việc sử dụng các kỹ thuật giả mạo khuôn mặt đã trở nên phổ biến.
Điều 5 Downloaded by SAU SAU (saudinh1@gmail.com) lOMoARcPSD|39269578 này đã đặt ra một thách thức lớn cho các hệ thống nhận dạng khuôn mặt, khi cần đảm bảo tính chính xác và độ tin cậy của quá trình nhận dạng. Vì vậy em chọn đề tài này nhằm đưa ra một gải pháp xây dụngw hệ thống nhận diện đáng tin cậy 1. Phân tích bài toán 1. Mục tiêu của đề tài 1.
Mục tiêu tổng quát Xây dựng một ứng dụng trên nền tảng Web bằng tiếng Việt, cho phép nhận diện sinh viên từ các ảnh thư viện, từ ảnh chụp và nhận diện thời gian thực (Real-time) sử dụng từ những mô hình huấn luyện đã có sẵn và tối ưu, dự đoán tên của sinh viên và hiện thị thời gian thực để giảng viên theo dõi 1. Mục tiêu cụ thể 1. Phương pháp nghiên cứu Đề tài này sử dụng một vài phương pháp nghiên cứu nhưng chủ yếu là phương pháp phân tích và tổng kết kinh nghiệm. Cụ thể là từ những công trình nghiên cứu liên quan đến đề tài để đề xuất một cách tiếp cận mới trong giải quyết vấn đề đặt ra.
Phạm vi nghiên cứu Phạm vi của bài toán chống giả mạo khuôn mặt rất rộng và đa dạng, tuỳ thuộc vào mục đích và điều kiện ứng dụng. Các phương pháp tiếp cận thường được chia thành các nhóm chính như: phân biệt giữa khuôn mặt thật và giả, phát hiện khuôn mặt giả, xác minh danh tính, nhận dạng khuôn mặt. Trong phạm vi của đề tài này, chúng ta sẽ tập trung vào phân loại khuôn mặt thật và giả thông qua việc sử dụng kỹ thuật Anti-Spoofing. Anti-Spoofing là một kỹ thuật được sử dụng để phát hiện và ngăn chặn các mẹo giả mạo khuôn mặt thông qua việc xác định tính hợp lệ của dữ liệu khuôn mặt được cung cấp cho hệ thống.
Để đảm bảo tính hiệu quả và độ chính xác của hệ thống chống giả mạo khuôn mặt, chúng ta sẽ chỉ sử dụng các loại camera thông thường, bao 6 Downloaded by SAU SAU (saudinh1@gmail.com) lOMoARcPSD|39269578 gồm các loại camera giám sát, máy tính bảng, điện thoại, webcam máy tính. Chúng ta sẽ không sử dụng các thiết bị chuyên dụng như máy quét khuôn mặt hay máy quét vân tay để đảm bảo tính khả dụng và ứng dụng rộng rãi của hệ thống. Mỗi lần chỉ nhận diện một khuôn mặt, mẫu được đặt trước camera không quá hai mét để đảm bảo độ chính xác của hệ thống. Việc giới hạn khoảng cách này sẽ giúp chúng ta đảm bảo rằng hệ thống có đủ dữ liệu để xác định tính hợp lệ của khuôn mặt mà không bị ảnh hưởng bởi những yếu tố như độ sáng, góc chụp hay khoảng cách quá xa.
7 Downloaded by SAU SAU (saudinh1@gmail.com) lOMoARcPSD|39269578 CHƯƠNG 2. PHÂN TÍCH ĐÁNH GIÁ BÀI TOÁN 2. Vấn đề bài toán Hiện nay việc nhận diện gương mặt đã trở nên cần thiết đối với nhiều ngành nghề, lĩnh vực khác nhau. Cùng với việc các hình thức tấn công giả mạo khuôn mặt ngày càng tinh vi nên việc xây dựng một hệ thống gương mặt có thể đáp ứng được mọi nhu cầu sử dụng vẫn đang là một vấn đề nan giải mặt dù đã tồn tại rất nhiều mô hình nhận diện gương mặt.
Để có thể giải bài toán này, ta cần phải thiết kế hệ thống có khả năng linh hoạt cao cũng như phạm vi ứng dụng lớn để người dùng có thể truy cập và sử dụng ở mọi lúc, mọi nơi. Hướng giải quyết 2. Máy học là gì Ngày nay, Học máy (Machine Learning) đang là một làn sóng mới, được ứng dụng rộng rãi vào đời sống của con người và mọi mặt của xã hội [7], như trong nhận diện khuôn mặt, xe hơi tự lái, đề xuất mua hàng trên Lazada, Tiki, Amazon, và hàng loạt các ứng dụng Trí tuệ nhân tạo tiên tiến khác. Machine learning tập trung vào việc tạo ra các hệ thống, cỗ máy có khả năng tự mình học hỏi mà không cần phải được lập trình một cách cụ thể.
Đây là việc tạo ra các cỗ máy có khả năng tự học hỏi dựa trên các kinh nghiệm mà chúng thu thập được trong suốt quá trình hoạt động, điều này mô phỏng gần giống với hoạt động trí tuệ của con người. Về định nghĩa khái niệm, máy học là một lĩnh vực thuộc Khoa học máy tính, đồng thời là một lĩnh vực con của Trí tuệ nhân tạo (AI). Mối quan hệ giữa Trí tuệ nhân tạo, Học máy và Học sâu được thể hiện trong Hình 8 Downloaded by SAU SAU (saudinh1@gmail.com) lOMoARcPSD|39269578 Hình 2. Mối quan hệ của các lĩnh vực AI, ML và DL Arthur Samuel đã định nghĩa vào năm 1959, “ML là một lĩnh vực nghiên cứu cung cấp cho máy vi tính khả năng học mà không cần phải lập trình rõ ràng” [8].
Một định nghĩa thể hiện rõ ràng hơn vào năm 1997: “Một chương trình máy tính được cho là học hỏi từ kinh nghiệm E có liên quan với một vài nhiệm vụ T và hiệu suất đo lường P, nếu hiệu suất của nó trên T được đo bằng P cải thiện sau khi trải qua kinh nghiệm E” [9]. Ví dụ: AlphaGo là một chương trình máy tính do Google DeepMind phát triển đã học được cách chơi cờ vây và đánh bại cờ thủ nổi tiếng Lee Se-dol [10]. Theo định nghĩa của Tom Mitchell, ta có: ● E: Kinh nghiệm có được khi chơi với các đối thủ và tự tăng cường. ● T: Nhiệm vụ là chơi cờ vây.
● P: Khả năng mà AlphaGo sẽ thắng trong trận đấu tiếp theo. Nhìn chung, để xác định được một vấn đề học tập rõ ràng cần phải nhận biết được ba đặc trưng sau: các nhiệm vụ, hiệu suất cần được cải thiện và nguồn gốc kinh nghiệm 9 Downloaded by SAU SAU (saudinh1@gmail. Phân nhánh máy học Máy học (Machine learning) là một thuật ngữ với khái niệm rộng, trong đó, nó chia ra các nhánh nhỏ, mỗi nhánh như vậy là một lĩnh vực khác nhau. Việc huấn luyện mô hình để đáp ứng yêu cầu đưa là rất phức tạp.
Mỗi công việc khác nhau sẽ có từng cách giải quyết tương ứng. Để thỏa mãn những thách thức này, ML sinh ra nhiều phương pháp học máy khác nhau. Hình 4 là sơ đồ cấu trúc của ML và các phân nhánh của nó: ● Học có giám sát (Supervised learning): Một tập dữ liệu chính xác bao gồm các cặp (data, label), đưa vào một thuật toán để huấn luyện, sau quá trình huấn luyện, nếu đưa một đầu vào mới chưa có trong tập dữ liệu, thuật toán sẽ dự đoán đầu ra chính xác nhất có thể. Quá trình này gọi là học từ ví dụ hay học có giám sát.
● Học không giám sát (Unsupervised learning): Khác với phương pháp trên, dữ liệu trong tập dữ liệu không có đầu ra, thay vì thuật toán gắn nhãn thì thuật toán sẽ phải phân cụm (cluster) chúng. Cách tiếp cận theo thống kê của phương pháp này là ước tính mật độ (density estimation). Cấu trúc phân nhánh của Machine Learning 10 Downloaded by SAU SAU (saudinh1@gmail.com) lOMoARcPSD|39269578 ● Học bán giám sát (Semi-supervised learning): Học bán giám sát là sự kết hợp giữa hai phương pháp kể trên, chính vì vậy mà trong tập dữ liệu chia thành hai phần: một phần nhỏ dữ liệu đã được gắn nhãn và phần còn lại dữ liệu chưa được gắn nhãn. Đa số các bài toán thuộc về loại này vì chi phí để gắn nhãn dữ liệu là khá lớn so với dữ liệu có được từ Internet.
● Học tăng cường (Reinforcement learning): Phương pháp này cũng là sự kết hợp giữa học có giám sát và học không giám sát. Tuy nhiên, điểm khác biệt so với bán giám sát là thuật toán chỉ cần được biết nhiệm vụ này có làm sai hay không mà không cần biết cách để làm đúng nhiệm vụ. Thuật toán sẽ thám hiểm và thử các khả năng có thể (giống như thuật toán vét cạn) cho đến khi nó được biết là nó đang làm đúng. ● Học sâu (Deep Learning): Là một lĩnh vực con của ML.