« Home « Kết quả tìm kiếm

Nhận diện khuôn mặt sử dụng mạng nơron tích chập xếp chồng và mô hình FaceNet


Tóm tắt Xem thử

- NHẬN DIỆN KHUÔN MẶT SỬ DỤNG MẠNG NƠRON TÍCH CHẬP XẾP CHỒNG VÀ MÔ HÌNH FACENET.
- Mạng nơ-ron tích chập (CNN) là một trong những mô hình học sâu hiệu quả nhất trong lĩnh vực nhận diện khuôn mặt, các vùng hình ảnh khác nhau luôn được sử dụng đồng thời khi trích xuất các đặc trưng hình ảnh, nhưng trong thực tế, các phần của khuôn mặt đóng những vai trò khác nhau trong việc nhận diện..
- Ngoài ra, chúng tôi sử dụng framework FaceNet của Google để tìm hiểu cách ánh xạ từ hình ảnh khuôn mặt đến không gian Euclide, nơi khoảng cách tương ứng trực tiếp với độ đo độ tương tự khuôn mặt để trích xuất hiệu suất của các thuật toán đặc trưng khuôn mặt.
- Thuật toán gộp trung bình có trọng số được áp dụng cho mạng FaceNet và thuật toán nhận dạng khuôn mặt dựa trên mô hình FaceNet cải tiến được đề xuất.
- Thực nghiệm và ứng dụng thử nghiệm cho thấy thuật toán nhận dạng khuôn mặt được đề xuất có độ chính xác nhận dạng cao sử dụng phương pháp nhận dạng khuôn mặt dựa trên học sâu..
- Từ khóa: Nhận diện khuôn mặt, học sâu, FaceNet, mạng nơ-ron tích chập, mạng nơ-ron tích chập xếp chồng..
- Mạng nơ-ron tích chập (CNN là một trong những mô hình học sâu thành công nhất trong lĩnh vực nhận dạng khuôn mặt, các vùng hình ảnh khác nhau luôn được sử dụng đồng thời khi trích xuất các đặc trưng hình ảnh, nhưng trong thực tế, các phần khác nhau của khuôn mặt đóng những vai trò khác nhau trong nhận diện khuôn mặt.
- Mỗi khuôn mặt của mỗi người có sự độc đáo và nét đặc trưng riêng biệt..
- Quá trình nhận dạng khuôn mặt.
- Hình 1 mô tả quá trình nhận diện khuôn mặt.
- Ảnh khuôn mặt có thể được tiền xử lý (cân chỉnh chẳng hạn - face alignment) nhằm đảm bảo chất lượng cho nhận diện.
- Khuôn mặt của mỗi người được trích chọn và biểu diễn thông qua một véc-tơ đặc trưng (feature extraction) nhằm mô tả những đặc điểm riêng biệt của khuôn mặt người đó và để so sánh với các khuôn mặt khác..
- Việc so sánh khuôn mặt đầu vào với cơ sở dữ liệu các khuôn mặt đã được lưu trữ (existing database) trở thành việc tính toán mức độ gần nhau giữa các véc-tơ đặc trưng (feature matching), từ đó tìm ra khuôn mặt giống nhất trong cơ sở dữ liệu..
- Các bước chính trong một hệ thống nhận dạng khuôn mặt.
- Một hệ thống nhận diện mặt người thông thường bao gồm bốn bước xử lý sau:.
- Phát hiện khuôn mặt (Face Detection)..
- Phân đoạn khuôn mặt (Face Alignment hay Segmentation)..
- Nhận diện (Recognition) hay Phân lớp khuôn mặt (Face Classification)..
- Do một vài thông số như: tư thế khuôn mặt, độ sáng, điều kiện ánh sáng,… phát hiện khuôn mặt được đánh giá là bước khó và quan trọng nhất so với các bước còn lại của hệ thống..
- Trong nghiên cứu này, chúng tôi không tập trung tìm hiểu bước phát hiện khuôn mặt mà chỉ tập trung chủ yếu vào bước nhận diện khuôn mặt qua việc đề xuất sử dụng một phương pháp nhận diện khuôn mặt với mạng đa tích chập xếp chồng và xây dựng ứng dụng nhận diện khuôn mặt cho các đối tượng sinh viên và các cán bộ giảng viên trên một số dữ liệu thu thập được.
- Cách tiếp cận của chúng tôi là sử dụng mô hình đạt độ chính xác cao trong nhận diện khuôn mặt dựa trên mạng nơron tích chập với cơ chế học sâu, kiểm tra mô hình trên bộ dữ liệu mẫu và thử nghiệm với bài toán nhận diện khuôn mặt.
- Bài báo được cấu trúc gồm: Phần 1 giới thiệu về bài toán nhận diện khuôn mặt.
- Một minh họa về kiến trúc dạng khối của mô hình CNN (Nguồn:.
- Hai lớp nơron đầu (tích chập và gộp chung) thực hiện vai trò trích chọn đặc trưng của ảnh khuôn mặt, trong khi lớp thứ ba (kết nối đầy đủ) thực hiện vai trò ánh xạ các đặc trưng được trích chọn thành đầu ra cuối cùng, tức là định danh của người được nhận diện.
- Lớp nơron gộp chung đóng vai trò làm giảm số chiều của không gian đặc trưng được trích chọn (hay còn gọi là subsampling) nhằm tăng tốc độ xử lý của quá trình nhận diện.
- Thuật toán học điển hình của mạng nơron dạng này là lan truyền ngược sai số với mục tiêu giảm thiểu sai số kết quả nhận diện của mạng.
- Nhiều nghiên cứu ứng dụng CNN trong nhận diện khuôn mặt với các cải tiến ngày một hiệu quả và chất lượng cao hơn, ứng dụng đa dạng vào các bài toán thực tế..
- Thử nghiệm trên cơ sở dữ liệu ORL cho thấy LBPH đạt kết quả tốt hơn PCA và KNN, nhưng đối với CNN được đề xuất cho độ chính xác nhận diện tốt nhất (98,3% so với ba phương pháp kia chưa đến 90.
- Nghiên cứu [7] đã phân tích đánh giá với các kiến trúc CNN cải tiến khác nhau cho nhận diện khuôn mặt.
- Nhằm tăng hiệu quả cao hơn, nghiên cứu [8] đề xuất một kiến trúc CNN với quy mô “rất sâu” gồm 11 khối với 37 lớp nơron, 8 khối đầu đóng vai trò trích chọn đặc trưng và 3 khối sau thực hiện chức năng phân lớp để nhận diện.
- Kiến trúc CNN này được chạy trên quy mô dữ liệu học mạng rất lớn (LFW và YTF với hàng nghìn định danh và hàng triệu bức ảnh) và cho kết quả (98,95% trên LFW và 97,3% trên YTF) tốt hơn so với các mô hình CNN khác..
- Nghiên cứu [4, 14] đã đề xuất một hệ thống mạng nơron tích chập cho nhận diện khuôn mặt với sự cải tiến dựa trên kiến trúc CNN của VGG (Visual Geometry Group.
- Dựa trên mô hình đề xuất này, xây dựng một hệ thống nhận diện khuôn mặt theo thời gian thực với một mạng nơron tích chập nhiều lớp (“rất sâu”) và phân tích thử nghiệm cho kết quả tốt hơn so với kết quả thu được khi sử dụng mô hình ban đầu..
- Nghiên cứu [8] cải tiến chất lượng nhận diện cho mô hình dựa trên CNN bằng cách áp dụng phương pháp học mạng nơron với kỹ thuật “triplet loss”.
- Một số nghiên cứu khác tập trung vào vấn đề nhận diện biểu cảm khuôn mặt với các kỹ thuật được đề xuất.
- Nghiên cứu [9] đã sử dụng mô hình CNN để thiết kế hệ thống nhận diện 6 loại biểu cảm khuôn mặt khác nhau với việc đưa vào tiền xử lý hình ảnh trước khi nhận diện.
- Nghiên cứu [10] sử dụng kết hợp mô hình nhị phân cục bộ (LBP) và mô hình CNN để nhận diện biểu cảm khuôn mặt.
- Theo đó, hình ảnh của khuôn mặt được chuyển thành bản đồ đặc trưng bằng LBP, sau đó bản đồ đặc trưng LBP này được sử dụng làm đầu vào của CNN để huấn luyện mạng và nhận diện..
- Trong phần này, chúng tôi thiết kế mô hình nhận diện khuôn mặt tập trung chủ yếu vào bước nhận diện khuôn mặt qua việc đề xuất sử dụng phương pháp nhận diện khuôn mặt với mạng đa tích chập xếp chồng sử dụng mô hình Facenet và mô hình VGG16..
- Trong thực tế ứng dụng, ảnh đầu vào thường được trích xuất từ camera nên bao gồm cả không gian nền, do đó, ta phải thực hiện giai đoạn tìm kiếm và phát khuôn mặt (gọi là face detection) nhằm xác định vùng ảnh chứa đúng khuôn mặt cần xử lý và cắt bỏ không gian nền của ảnh.
- Để thực hiện điều này, các tác giả sử dụng phương pháp phát hiện vùng ảnh có chứa khuôn mặt dựa vào MTCNN..
- Khi ảnh khuôn mặt được phát hiện, thực hiện cắt vùng ảnh khuôn mặt đó từ nền, cải thiện chất lượng ảnh khuôn mặt này bằng việc chuyển đổi hình ảnh đầu vào thành hình ảnh đa cấp độ xám và áp dụng phép cân bằng mức xám, co giãn về kích thước đúng với đầu vào của mạng nơron đã thiết kế để thực hiện trích chọn đặc trưng và phân lớp..
- MTCNN (Multi-task Cascaded Convolutional Networks) gồm 3 mạng CNN (Convolution, Relu, Max Pooling, Fully Connected Layers) xếp chồng và đồng thời hoạt động khi detect khuôn mặt.
- P-Net (Proposal Network) nhằm dự đoán các vùng trong ảnh ví dụ là vùng chứa khuôn mặt, mạng tinh chế R-Net (Refine Network) sử dụng đầu ra của P-Net để loại bỏ các vùng không phải khuôn mặt và mạng đầu ra (Output Network): sử dụng đầu ra R-Net để đưa ra kết quả cuối cùng với 5 điểm đánh dấu khuôn mặt: 2 điểm mắt, 1 điểm mũi và 2 điểm khóe miệng.
- Facenet là sản phẩm nghiên cứu của Google giới thiệu năm 2015, với model này đầu vào là ảnh đúng kích thước cho đầu ra là một vector 128 features cho 1 khuôn mặt.
- Kiến trúc dạng khối của mô hình MTCNN (Nguồn: https://tinhte.vn/.
- Facenet là một hệ thống nhúng cho việc nhận dạng và phân cụm khuôn mặt được đề xuất bởi nhóm tác giả làm việc tại Google[13] dựa trên việc nhúng mỗi ảnh vào không gian Euclide bằng cách sử dụng mạng CNN.
- Thuật toán nhận diện khuôn mặt trước facenet đều tìm cách biểu diễn khuôn mặt bằng một vector embedding (là vector chuyển dữ liệu chữ viết thô thành dữ liệu số thực) thông qua một layer bottleneck (nút thắt cổ chai có tác dụng giảm chiều dữ liệu.
- Do đó để loại bỏ ảnh hưởng của các trường hợp nhận diện đúng Negative và Positive lên hàm loss function.
- Mô hình này giành.
- vị trí nhất về phát hiện đối tượng và vị trí haivề phân loại ảnh trong cuộc thi ILSVRC 2014., sau khi train bởi mạng VGG16 đạt độ chính xác cao nằm trong top-5 test trong dữ liệu ImageNet gồm 14 triệu hình ảnh thuộc 1000 lớp khác nhau.
- Lớp đầu ra bao gồm 1000 nơ-ron tương ứng với số loại của tập dữ liệu Imagenet..
- Thực nghiệm trên các bộ dữ liệu được cộng đồng đánh giá sử dụng (trong phần 4.1).
- Từ đó xây dựng ứng dụng nhận diện khuôn mặt cho đối tượng sinh viên và các cán bộ giảng viên trên một số dữ liệu thu thập được.
- Cách tiếp cận của chúng tôi là sử dụng mô hình đạt độ chính xác cao và hiệu quả trong việc nhận diện khuôn mặt.
- Để kết hợp các phương pháp nhận dạng khuôn mặt nhằm đạt hiệu quả cao, trong phương pháp đề xuất, chúng tôi đưa ra phương pháp phát hiện khuôn mặt (MTCNN), trích chọn đặc trưng (FaceNet), phân lớp và nhận diện khuôn mặt (VGG16)..
- Mô tả dữ liệu.
- Bộ dữ liệu ngoài có bộ dữ liệu mẫu AT&T và Yale được công bố và sử dụng khá rộng rãi cho bài toán nhận diện khuôn mặt gồm có thêm bộ dữ liệu thu thập thêm gồm ảnh của 15 sinh viên, 36 giảng viên trong khoa CNTT và 455 giảng viên Trường Đại học Kinh tế Kỹ thuật - Công nghiệp Hà Nội..
- Các ảnh của đối tượng “s1” trong dữ liệu AT&T.
- Ảnh của 5 người đầu tiên trong dữ liệu AT&T.
- Bộ dữ liệu khuôn mặt AT&T (hay còn gọi là dữ liệu ORL) được tạo bởi Phòng thí nghiệm AT&T thuộc Đại học.
- Dữ liệu gồm 400 hình ảnh của 40 người với 10 biểu cảm khuôn mặt khác nhau cho mỗi người, mỗi biểu cảm tương ứng một hình ảnh.
- Ảnh khuôn mặt mọi người đều quan sát được, tức không bị che mất những đặc trưng liên quan.
- Hình 7, 8 minh hoạ các hình ảnh với các trạng thái khác nhau của một người trong tập dữ liệu này..
- Bộ dữ liệu khuôn mặt Yale được tạo bởi Trung tâm điều khiển và thị giác máy tính tại Đại học Yale, New Haven.
- Tập dữ liệu này gồm 165 hình ảnh khuôn mặt chụp từ phía trước và dưới dạng đa cấp xám của 15 người khác nhau.
- Có 11 hình ảnh cho mỗi người mô tả các biểu cảm khuôn mặt và điều kiện khác nhau như ánh sáng (ánh sáng phía bên phải, ánh sáng ở trung tâm và ánh sáng phía bên trái), trạng thái nét mặt (bình thường, buồn, vui, ngạc nhiên, buồn ngủ và nháy mắt), gồm cả ảnh có đeo kính hoặc không đeo kính.
- Hình 9, 10 minh hoạ các hình ảnh với độ sáng, trạng thái khác nhau của một người trong tập dữ liệu này..
- Tập dữ liệu ORL và Yale được chia làm 2 tập chính là tập luyện (processed) và tập thử nghiệm (raw) và được nhận diện thông qua ảnh Các tập dữ liệu còn lại cũng được chia làm 2 tập chính như bộ ORL và Yale nhưng theo tỷ lệ tập thử nghiệm bằng tập luyện và được nhận diện thông qua webcam..
- Một phần của tập thử nghiệm trong tập dữ liệu ORL.
- Các ảnh của đối tượng “subject01” trong dữ liệu Yale (Nguồn:https://colab.research.google.com/drive/1OTSK9mJdtpuzArCTsEKh5eIq5 OmOyq2o).
- Bộ dữ liệu thu thập để chạy ứng dụng gồm 15 sinh viên, 36 giảng viên khoa CNTT và 455 cán bộ giảng viên khác của trường Đại học Kinh tế Kỹ thuật Công nghiệp.
- Dữ liệu gồm.
- Ảnh khuôn mặt mọi người đều quan sát được, tức không bị che mất những đặc trưng liên quan..
- Hình 11 đưa ra minh họa một phần tập ảnh được huấn luyện (processed) sau khi đã tìm và cắt khuôn mặt..
- thuận lợi cho việc tổ chức dữ liệu phục vụ chạy thử nghiệm và lưu trữ kết quả.
- Kết quả trên bộ dữ liệu AT&T và Yale khi so sánh giữa 3 phương pháp, được trình bày ở bảng 1.
- Để có thể so sánh giữa các mô hình tôi sử dụng phương pháp CNN làm tiêu chuẩn phương pháp này cho tỉ lệ accuracy đạt 95%.
- Kết quả thử nghiệm giữa các mô hình của tập dữ liệu Yale, AT&T.
- MTCNN, FaceNet sử dụng SVM.
- MTCNN, FaceNet sử dụng VGG16.
- Kết quả quá trình huấn luyện VGG16 trên hai tập dữ liệu AT&T và Yale được thể hiện trong hình 13.
- Đồ thị thể hiện tỉ lệ khi huấn luyện dữ liệu sử dụng VGG16 trên tập AT&T và Yale.
- Kết quả trên cả hai tập dữ liệu đều cho kết quả độ chính xác phân lớp (accuracy) tốt..
- Từ kết quả trên, chúng tôi xây dựng ứng dụng cho việc nhận diện khuôn mặt cho dữ liệu thu thập là các sinh viên và cán bộ giảng viên như mô tả trong mục 4.1.
- Đồ thị tỉ lệ khi huấn luyện dữ liệu sử dụng VGG16 trên tập AT&T, Yale.
- Minh họa ứng dụng trên bộ dữ liệu cán bộ giảng viên Khoa Công nghệ thông tin.
- Trong bài báo này, chúng tôi đã đề xuất mô hình dựa trên mạng nơron tích chập xếp chồng (MTCNN) để nhận diện khuôn mặt con người.
- Mô hình này bao gồm 3 mạng CNN xếp chồng và đồng thời hoạt động khi detect khuôn mặt.
- Đầu ra của mô hình là vị trí khuôn mặt và các điểm trên mặt như: mắt, mũi, miệng.
- Trong mô hình này phát hiện khuôn mặt bằng MTCNN, trích xuất đặc trưng bằng Facenet và dùng SVM để phân lớp và nhận diện mặt.
- Bên cạnh đó chúng tôi cải tiến MTCNN, trích xuất đặc trưng bằng Facenet kết hợp việc phân lớp của mô hình VGG16.
- Giải pháp này có nhiều ưu điểm như: nhận diện được mặt ở nhiều góc khác nhau, không cần nhìn thẳng, nhận diện chính xác hơn, trích xuất được nhiều đặc trưng khuôn mặt hơn.
- Chúng tôi cũng tiến hành thực nghiệm bằng MTCNN sử dụng mô hình Facenet và MTCNN sử dụng mô hình VGG16 để so sánh độ chính xác.
- Các mô hình đảm bảo độ chính xác cao trong việc nhận diện mặt ở nhiều góc độ và đảm bảo đầu ra các đặc trưng khuôn mặt.
- Dựa trên các mô hình này chúng tôi tiến hành xây dựng ứng dụng nhận diện khuôn mặt với tập dữ liệu là các cán bộ giảng viên và sinh viên..
- Thời gian tới, chúng tôi sẽ nghiên cứu cải thiện hiệu quả phân lớp trong các mô hình hiện nay đạt kết quả cao của AlexNet, VGG, Inception .
- Bên cạnh đó, chúng tôi thiết kế hệ thống thu thập dữ liệu hình ảnh để tạo bộ dữ liệu huấn luyện cho mô hình.
- Việc xây dựng ứng dụng nhận diện khuôn mặt cho đối tượng sinh viên, giảng viên bước đầu đã đạt được kết quả tốt và có tính thực tiễn cao.
- Đây là cơ sở đó chúng tôi phát triển tiếp và xây dựng ứng dụng cho bài toán thực tiễn như hệ thống điểm danh khuôn mặt các sinh viên trong lớp học, hệ thống nhận diện cán bộ tại cơ quan, hệ thống chấm công, hệ thống nhận diện cư dân…

Xem thử không khả dụng, vui lòng xem tại trang nguồn
hoặc xem Tóm tắt