fe day, chúng tôixem xét với một máy ảnh bình thường là 30 khung hình trên một giây và trả về đầu ra là bức ảnh chứa khoảnh khắc đẹp nhất của mọi người như Hình Để đạt được mục tiêu đó,
Trang 1ĐẠI HỌC QUỐC GIA TP HÒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA KHOA HỌC MÁY TÍNH
DONG QUOC TUẦN NGUYEN LAM QUYNH
KHOA LUAN TOT NGHIEPCHON LOC VA TONG HOP KHOANH KHAC DEP TRONG VIDEO UNG
DUNG PHUONG PHAP LAM DEP KHUON MAT
VIDEO SUMMARIZING AT THE HAPPIEST MOMENT
VIA FACE BEAUTIFICATION
CỬ NHÂN TÀI NANG NGANH KHOA HỌC MAY TÍNH
Trang 2ĐẠI HỌC QUỐC GIA TP HÒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA KHOA HỌC MÁY TÍNH
DONG QUOC TUẦN - 18520185 NGUYEN LAM QUYNH - 18521326
KHOA LUAN TOT NGHIEP
CHON LOC VA TONG HOP KHOANH KHAC DEP TRONG VIDEO UNG
DUNG PHUONG PHAP LAM DEP KHUON MAT
VIDEO SUMMARIZING AT THE HAPPIEST MOMENT
VIA FACE BEAUTIFICATION
CỬ NHÂN TAI NANG NGANH KHOA HỌC MAY TÍNH
GIANG VIEN HUONG DAN
TS NGUYEN VINH TIEP
Trang 3DANH SÁCH HỘI ĐÒNG BẢO VỆ KHÓA LUẬN
Hội đồng cham khóa luận tốt nghiệp, thành lập theo Quyết định số 38/QD-DHCNTT ngày
19 tháng 01 năm 2022 của Hiệu trưởng Trường Đại học Công nghệ Thông tin.
1 - Chủ tịch: PGS TS Lê Đình Duy
2 - Thư ký: ThS Nguyễn Thanh Son
3 - Ủy viên: TS Mai Tiến Dũng
Trang 4Lời cảm ơn
Dé hoàn thành được khóa luận này, chúng tôi đã nhận được sự giúp đỡ từ rất nhiều người That may mắn vì trong quá trình làm việc chúng tôi đã gặp được họ Đầu tiên, chúng tôi xin gửi lời cảm ơn chân thành nhất đến với TS Nguyễn Vinh Tiệp - người đã tận tụy chỉ
ay và hướng dẫn về kiến thức trong quá trình chúng tôi thực hiện khóa luận này Chúng tôi cũng xin phép gửi k m ơn đến Phòng nghiên cứu MMLAB đã tạo môi trường nghiên
cứu tuyệt vời, cung cấp tài nguyên để chúng tôi được trao đổi, học hỏi thêm nhiều điều Cảm ơn các anh nghiên cứu trong MMLAB đã luôn góp ý và phản biện về vấn đề của chúng tôi, giúp chúng tôi sửa đổi khóa luận một cách hoàn thiện hơn Cảm ơn các giảng viên trong Trường Dại học Công nghệ thông tin đã xây dựng những kiến thức căn bản,
tạo nền móng cho việc đề xuất và giải quyết đề tài Lời cuối cùng, chúng tôi xin gửi đến những người thân, bạn bè đã ở bên hỗ trợ chúng tôi về mọi mặt trong cuộc sống trong
suốt quá trình thực hiện khóa luận.
Trang 5E1 Bài toán trích chọn khoảnh khắc đẹp| -
[2.2 Mô-dun phát hiện khuôn mặt - Face
Deteedon| 2.2.1 Multi-task Cascaded Convolutional Networks (MTCNN)| -.-:
[2.2.2 Mo hình CenterFace] 0 ee
2.2.3 Mô hình TinaFace} 2 eee
2.3.1 Tracking without bells and whistles | Ặ ee eee
pa Mô-dun đánh giá mức độ đẹp khuôn mặt- Face Scoring] 2 ee
2.4.1
2.4.1.2 Cách tiếp cận dựa trên bài toán phát hiện nụ cười - Smile Detection|.
2.4.2 Độ đo đánh giá độ hoàn chỉnh của khuôn mặt - Appearance score
ao 8 w NY YN
a
oor Nn
10 11 13
15 16 16 20 2 2.4.2.1 Cách tiếp cận dựa trên bài toán phân đoạn ngữ nghĩa các bộ phận
trên khuôn mặt - Face Parsing) 2 ee 23
Trang 63_ Phương pháp đề xuất|
Lee
2 Mô-dun phát hiện khuôn mặt- Face Detection) 2.2 ee
3.21 Backbond 2 S BS ng ng xa
3.2.2 Anchor boxes} Son ng na va
3.2.3 Hàm mất mát|
B3 Mô-dun theo vết khuôn mặt- Face 3.3.1 Giải thuật Hungary See 3.3.2 Kalman Filter] ee 3.3.3 Cách hoạt động của SORT] 2 eee (5.4.1.1 Multi-task EiHcentNetB27]
3.4.1.2 Xử lí da Mô hình dự đoán độ hoàn chỉnh của khuôn mặt - Appearance score|
3.4.2.1 Tổng quan kiến trúc của mô hình
Hyperfacel -3.4.2.2 Hàm mất mát của mô hình Hyperface|l
3.4.2.3 Xứ lí đầu ra để đạt được độ hoàn chỉnh của khuôn mặt|
Mô hình đánh giá trạng thái của đôi mắt - Smile Score Mô-đun chỉnh sửa khuôn mặt- Face Rerendering 3.5.1 Căn chỉnh khuôn mặt| ee 3.5.2 Xử lí liền mach} ee 4_ Thực nghiệm| mm
4.1.1 Bộ dữ liệu cho mô-đun phát hiện khuôn mặt|
(4.1.2 Bộ dit liệu cho mô-đun đánh giá mức độ đẹp khuôn mặt|}
4.1.2.1 Bộ dữ liệu kiếm thử cho mô-đun đánh giá độ cười của khuôn mat] "
4.1.2.2
32
32
34
34
36
36 37
38 40 41 41 41
46
58 58
58 58
58
Bộ dữ liệu kiếm thử cho mô-đun đánh giá độ hoàn chỉnh của khuôn mat] 60
Trang 74.2.3.1 Đánh giá mô hình dự đoán độ đo nụ cười của khuôn mặt| 66 4.2.3.2 Đánh giá mô hình dự đoán độ hoàn chỉnh của khuôn mặt| 66 4.2.4 Đánh giá mô-đun tái tạo khuôn mặt[ 71
Trang 8Danh sách hình
3 4
9 10 is
2.4 Ví dụ về 3x3 deformable convolution R|] - 12
2.5 Inception Module 12
[2.6 Kiến trac mô hình Traektor i errr, TL Sa aaa 15
¿7 Kiến trúc mô hình DAN [6] ee ¬
[2.8 Cấu trúc cross attention head j61]] 18
20 21 22
bộ phận trên khuôn n ¢ 24
2.13 Kiến trúc mô hình BAHNet B7]) 220 eee 35
2.14 Cấu trúc của SCAM l3ï|ÏÔ Q2 eee 25
2.15 Kiến trúc mạng RTNet |2] ee 26 2.16 68 tọa độ mốc trên khuôn mặt từ tập dữ iBUG 300W| 3ï
28
29
2.19 Kết quả của LUVLi trên một số tấm hình|25|| 29
2.20 Một số ví dụ về bài toán hoán đổi khuôn mặt J42|[_ - 30
3.1 Tổng quan hệ thống| ốc ee 32
Trang 940
B.7 Kiến trúc mô hình Muti-task EfficientNet-B3 Jð2|| -. 42
B.8 Ví dụ về mở rộng mô hình với các tiêu chí khác nhau và đề xuất của tác giả Jï|| 42
B¿9 Kiến trúc mô hình EficientNet-B0 J57|| 45
[3.10 Ví dụ về hình ảnh nhãn unhappy sau khi sử dụng mô hình Multi-task EfficientNet-B2] 45
3.11 Ví dụ hình ảnh nhãn happy sau khi sử dụng mô hình Multi-task EfficienNet-B2| 46
3.12 Kiến trúc của mô hình Hyperface| ee 47 3.13 Thứ tự và vị trí của 21 điểm facial landmark biểu diễn trên khuôn mặt| 50 3.14 Ví dụ về chỉ số EAR| ee 52
[ET Một số ví dụ trong tập WIDER FACF] 59
4.2 Một số hình ảnh của tập dữ liệu RAF-DB| 59
cluded’ tương ứng màu xanh, ’self-occluded’ tương ứng màu xám va 'externally
oc-cluded’ tương ứng màu đeñ| eee 61
4.4 Thứ tự và vi trí của 68 điểm facial landmark biểu điễn trên khuôn mặt| 63
fas Vi dụ về sự thay đổi độ đo nụ cười trong video thứ nhất| 67
[4.6 Ví dụ về sự thay đổi độ đo nụ cười trong video thứ hai].Ô 68
4.7 Khung hình chính trong vieo thttnhat) © ee 72 4.8 Khung hình sau khi được tái tao trong vieo thứ nhất| - 72
[£9 Khung hình chính trong vieo thứ hai[ 73 4.10 Khung hình sau khi được tái tạo trong vieo thứ hai|.Ẳ 73
[H1 Khung hình chính trong vieo thứ ba[ 7c eee 74
4.12 Khung hình sau khi được tái tạo trong vieo thứ ba| co 74
13 Khung hình chính trong vieo thứ tul ¬—-_ T5
4.14 Khung hình sau khi được tai tạo trong vieo thứ tư| T5
Trang 10Danh sách bảng
44.1 Thống kê 5 tập dữ liệu con của MERL-RAV| 60
65
66 69
[4.5 Kết quả thực nghiệm trên bộ kiểm thử Erontal] - 69
fac Kết qua thực nghiệm trên bộ kiểm thử HalEprofile.| vẻ Yè:::-::-:- ::.:.-. : 70
Kết quả thực nghiệm trên bộ kiểm thử Profile} ee 70
Kết quả thực nghiệm trên tất cả bộ kiểm thử 71
4.9 Kết quả tốc độ thực thi trên toàn bộ bộ kiểm thử| - 71
Trang 11TÓM TẮT KHÓA LUẬN
Ngày nay với sự phát triển vượt bậc của công nghệ và lối sống năng động, con người có xu hướng,
sử dụng các thiết bị điện tử để ghi lại những khoảnh khắc như một cuốn nhật kí Vì vậy, nhu cầu
selfie thỏa thích ngày càng tăng cao Người ta mong muốn có những bức ảnh dep dé có thể đăng tải
nó dưới dạng các bài viết ngắn trên các trang mạng xã hội Tuy nhiên việc có một bức ảnh đẹp chưa
bao giờ là dé dàng Khác với chụp ảnh selfie một mình, chụp ảnh nhóm thường xảy ra trường hợp
khi chúng ta nhắn nút chụp ảnh sẽ có lúc có người đẹp, nhưng có thể một vài người khác đang không trong trạng thái sẵn sàng Chẳng hạn, một người trong nhóm không cười hoặc không nhìn thẳng vào camera, Những điều trên sẽ làm cho bức ảnh chụp tập thé không còn đẹp nữa Khi đó, việc lựa
cảm tốt nhất sẽ trở nên khó khăn hơn, thậm
chọn ra một tấm ảnh mà mọi người cùng có một biể
chí có thể ta phải chụp lại nhiều lần để có thể c6 một bức ảnh tốt Lấy cảm hứng từ vấn đề này,
trong đề tài khóa luận chúng tôi giới thiệu một hệ théng chọn lọc và tổng hợp khoảnh khắc đẹp trong video ứng dụng phương pháp làm đẹp khuôn mặt, nhằm mục đích tạo ra một khung hình chính tóm tắt một video selfie ngắn Với một tập hợp các ảnh liên tiếp làm đầu vào, cách tiếp cận của chúng tôi chọn một khung ảnh duy nhất và hiển thị khuôn mặt của mỗi người vào thời điểm hạnh phúc nhất
của họ Dể chọn khung hình phù hợp, chúng tôi quyết định kết hợp thông tin về mắt, độ hoàn chỉnh của khuôn mặt và cắm xúc làm điểm tổng hợp đánh giá của chúng tôi Dau tiên, phương pháp này
phát hiện và theo déi các khuôn mặt trong khung hình video Sau đó, khuôn mặt có điểm cao nhất
của mỗi người sẽ được hiển thị trên khung hình chính Theo hiểu biết tốt nhất của chúng tôi, chúng
tôi là một trong những người đầu tiên giải quyết vấn đề, bao gồm video tóm tắt và làm đẹp khuôn
mặt.
Trang 12Giới thiệu đề tài
1.1 Tổng quan
1.1.1 Bối cảnh thực tiễn
Trong những năm gần day, trí tuệ nhân tạo đã có những bước phát tr n vượt bậc và có ảnh hưởng
rất lớn đến cuộc sống của con người Bằng một loạt các phát minh tiên tiến trong các lĩnh vực của đời sống, trí tuệ nhân tạo đã biến mọi việc trở nên dễ dàng hơn Ví như xe tự lái trong ngành vận tải, những quy trình sản xuất tự động trong công nghiệp, những ứng dụng thăm khám sức khỏe trực
tuyến trong y tế, Tat cả những điều đó nhằm khẳng định rằng, trí tuệ nhân tạo đang phát triển và
càng ngày càng hoàn thiện đời sống con người Một phần khiến nó phát triển rực rỡ như ngày hôm
nay không thể không nói đến học sâu- một mảng của trí tuệ nhân tạo dang được các nhà khoa học tập trung nghiên cứu Cho đến nay đã có nhiều mạng nơ-ron tích chập ra đời để giải quyết các bài toán trong cuộc sống như thị giác máy tính, xử lí ngôn ngữ tự nhiên và logic
Đặc biệt trong lĩnh vực thị giác máy tính- một phần đã đạt được những thành tựu nhất định Bản chất của lĩnh vực thị giác máy tính là khai thác những thông tin về hình ảnh- một phần thiết yếu của cuộc sống Chúng ta cảm nhận mọi thứ xung quanh bằng hình ảnh thông qua việc ghi lại của mi cho nên hình ảnh mang lại rất nhiều dữ liệu quan trọng Bởi thế, việc xử lí thông tin qua hình ảnh trở thành một điều không thể thiếu Những mạng học sâu ra đời cho phép máy tính chuyển dữ liệu
là hình ảnh thành thông tin có ích cho các bài toán ví dụ như phân loại, nhận diện và thực thi các
phương pháp xử lí trên ảnh đáp ứng đầy đủ nhu cầu của con người Một trong số đó, chúng ta phải
kể đến là những ứng dụng của nó trong việc phục vụ đời sống giải trí của con người như mạng xã hội
Trang 13chọn tấm ảnh đẹp để họ có thể sử dụng là rất lớn Trong đề tài này, chúng tôi tập trung giải quyết bài toán trích chọn khoảnh khắc đẹp từ một video selfie.
1.1.2 Bài toán trích chọn khoảnh khắc đẹp
Như chúng ta đã biết, phong trào chụp ảnh selfie trở thành một trào lưu phố biến trong xã hội đặc
biệt là giới trẻ Họ có xu hướng lưu giữ những khoảnh khắc đẹp của cuộc sống và những trải nghiệm
hằng ngày của họ Chi cần một chiếc điện thoại thông minh chúng ta đã có thể ghi lại những cung
bac cảm xúc một cách rõ nét với người thân và bạn bè của mình Tuy nhiên, thực tế cho thấy vi chụp một bức ảnh nhóm sao cho đẹp lại là không phải là một điều dé dàng Vì trong hầu hết trường
hợp khi chúng ta nhấn nút chụp ảnh sẽ có lúc có người đẹp, nhưng có thể một vài người khác đang
không trong trạng thái sẵn sàng Chẳng hạn, một người trong nhóm không cười hoặc không nhìn
thẳng vào camera, như Hình Những điều trên sẽ làm cho bức ảnh chụp tập thể không còn đẹp nữa Khi đó, việc lựa chọn ra một tấm ảnh mà mọi người cùng có một biểu cảm tốt nhất sẽ trở nên
khó khăn hơn, thậm chí có thể ta phải chụp lại nhiều lần để có thể có một bức ảnh tốt Thế nên, bài
toán đặt ra là làm thế nào để có thể tạo ra một tấm hình mà tất cả mọi người đều đẹp nhất Day
cũng chính là mục tiêu của dé tài chúng tôi- tạo ra một hệ thống có khả năng trích chọn khoảnh khắc
đẹp.
Hình 1.1: Ví dụ về mội 6 trạng thái không sẵn sàng khi chụp hình nhóm
Bài toán trích chọn khoảnh khắc đẹp nêu ra hai yêu cầu lớn là "trích chọn" và "khoảnh khắc đẹp".
“Trích chọn là lựa chọn, trích xuất cũng có nghĩa là tạo ra từ những điều được chọn lọc Còn "khoảnh khắc đẹp" ở đây được định nghĩa là những trạng thái đẹp của khuôn mặt Trong đề tài này, chúng tôi
xét ba tiêu chí để một khuôn mặt được đánh giá là đẹp Đó là khuôn mặt có biểu cảm cười, đôi mắt
mở và gương mặt không bị che khuất Ý nghĩa của trích chọn khoảnh khắc đẹp là lựa chọn tắm hình
đẹp nhất trong một đoạn video selfie của một nhóm người Hơn thế nữa trong hệ thống này, chúng
Trang 14quá trình người dùng thực hiện chụp ảnh selfie có độ dai từ 60 đến 150 khung hình fe) day, chúng tôi
xem xét với một máy ảnh bình thường là 30 khung hình trên một giây và trả về đầu ra là bức ảnh chứa khoảnh khắc đẹp nhất của mọi người như Hình
Để đạt được mục tiêu đó, chúng tôi đã phân rã hệ thống đề xuất thành các bài toán con: phát
hiện gương mặt, theo vết gương mặt, đánh giá mức độ đẹp khuôn mặt và tái tạo gương mặt Chúng tôi mong muốn tối ưu hệ thống đề xuất bằng cách tối ưu từng thành phần bên trong nó Với mỗi thành phần, chúng tôi sẽ chọn trong số các phương pháp tiên tiến nhất hiện có và thử nghiệm với dữ liệu chúng tôi đã thu thập, từ đó cho ra số liệu thực tế đánh giá phù hợp nhất trong ngữ cảnh bài
toán này.
1.1.3 Thách thức
“Trong quá trình thực hiện đề tài chúng tôi đã gặp phải một số thách thức nhất định Đầu tiên, bởi vì đây là hệ thống đề xuất tiên phong trong việc trích chọn khoảnh khắc đẹp khi chụp ảnh selfie nhóm,
do đó không tránh khỏi những thiếu hụt về tài liệu tham khảo Việc xây dựng và thiết kế hệ thống là
một trở ngại lớn cho chúng tôi Chúng tôi chỉ có những tham khảo cho các bài toán con và dựa vào
đó để suy luận và hoàn thiện hệ thống của mình.
Bên cạnh đó, việc định nghĩa khái niệm "đẹp" cũng là một khó khăn Bới bản chất của "đẹp" mang nhiều ý nghĩa chủ quan cá nhân, mỗi người sẽ có cách nhìn nhận riêng Dể xác định một khung ảnh là đẹp, chúng tôi giả định tất cả các gương mặt trong khung ảnh đó đều đẹp, dựa trên độ đo nụ
cười "smile score" , độ hoàn chỉnh của gương mặt " appearance score" và độ mở của đôi mắt Đây
là giả định của chúng tôi trong đề tài này, chúng tôi hi vọng sẽ có những định nghĩa đầy đủ và chính
xác hơn.
Trang 15xuất hiện trong khung hình) việc tái tạo lại gương mặt sẽ rất khó khăn và đem lại kết quả là hình
ảnh không chân thực.
1.2 Động lực và mục tiêu
Như chúng ta có thể thấy, việc chụp ảnh nhóm rất khó làm hài lòng tất cá những người tham gia,
vì hiếm khi người quay phim có thể chụp được tất cả mọi người ở tại khoảnh khắc đẹp nhất của họ.
Nếu bạn tự chụp ảnh, bạn có thé dé dàng chỉnh sửa hoặc chụp lại để chọn bức ảnh đẹp nhất của bạn Thé nhưng bạn không thể bắt nhiều người ở lại tạo dang để chụp ảnh lại khi nhận ra khuôn mặt của.
mình chưa đủ xinh trong ảnh Vì vậy như cầu rất lớn để tạo ra một bức ảnh nhóm làm hài lòng nhiều
người nhất có thể That không may, gần đây, các ứng dụng nhằm tao ra những bức ảnh selfie dep
được nhúng vào điện thoại thông minh chỉ thuận tiện cho một người chụp và chức năng của chúng chỉ
bao gồm việc pha trộn màu hoặc làm cho da mặt mịn hơn, mang lại sự tự tin cho người dùng Bên cạnh đó, có các công cụ khác giúp người dùng điều chỉnh ảnh của họ theo khía cạnh về màu sắc, độ
tương phan và hiệu ứng Nhưng rõ rang, những công việc đó cần yếu tố thủ công và chọn lọc từ con người Vì mỗi người đều có màu sắc và độ sáng trong ảnh, điều chỉnh các yếu tố này để phù hợp một
cái thường không tương thích với những cái khác Thế nên chúng tôi đề xuất xây dựng hệ thống này.
Hệ thống của chúng tôi có thể vượt qua những hạn chế đã nói trên bởi vì nó có thể tạo ra một hình
ảnh mà không yêu cầu người dùng điều chỉnh thủ công sau chụp ảnh.
“Trong bài nghiên cứu này, mục tiêu của nhóm là:
e Tìm hiểu các bài toán con đề xây dựng hệ thống
e Phân tích ưu, khuyết điểm của các hướng tiếp cận khi thực hiện các bài toán con
e Xây dựng một độ đo phù hợp để đánh giá mức độ đẹp của khuôn mặt
e Xây dựng một hệ thống có khả năng tạo ra hình ảnh đẹp nhất từ việc tổng hợp video selfie
nhóm
1.3 Các đóng góp của đề tài
Trong khóa luận này, chúng tôi đóng góp các nội dung sau:
e Xây dựng một hệ thống hoàn thiện có khả năng tạo ra hình ảnh đẹp nhất từ việc tổng hợp video selfie nhóm bằng cách liên kết và thực nghiệm trên các mé-dun: phát hiện gương mặt- face detection, theo vết gương mặt- face tracking, đánh giá mức độ đẹp của khuôn mặt- face
scoring, tai tạo gương mặt- face rerendering.
Trang 16e Xây dựng bộ dữ liệu để đánh giá độ hoàn chỉnh của gương mặt.
1.4 Bố cục khóa luận
Nội dung của khóa luận bao gồm 4 phần
© Chương 1: Giới thiệu đề tài Cho cái nhìn tổng quan về bồi cảnh thực tiễn, nêu ra nhu cầu lớn để giải quyết bài toán trích xuất khoảnh khắc đẹp Giới thiệu bài toán, các thách thức, dong
lực cũng như mục tiêu và đóng góp của đề tài
e Chương 2: Các công trình liên quan Di sâu vào việc xây dựng và phân rã hệ thống qua việc tìm hiểu các bài toán con Tìm hiểu qua từng mô-đun dùng để cầu tạo lên hệ thống: nhận điện khuôn mặt- face detection, theo vết khuôn mặt- face tracking, đánh giá mức độ đẹp của
khuôn mặt- face scoring, tái tạo khuôn mặt- face rerendering.
e Chương 3: Phương pháp đề xuất Trình bày phương pháp được sử dụng cho từng mô-đun.
e Chương 4: Thực nghiệm Trình bày cách cài đặt, chạy và xử lí trên từng mô-dun và trên cả.
hệ thống Bên cạnh đó, phân tích và xử lí dữ liệu cho bài toán
© Chương 5: Kết luận Đánh giá và tong kết đề tài, những mục tiêu đã đạt được và những hạn chế còn tồn tại, tìm ra hướng khắc phục trong tương lai.
Trang 17Chương 2
Các công trình liên quan
2.1 Bài toán trích chọn khoảnh khắc dep
Như đã đề cập ở phần trước, chúng tôi tiếp cận bài toán trích chọn khoảnh khắc đẹp bằng cách chia nó thành các bài toán con như phát hiện khuôn mặt- face detection, theo vết khuôn mặt- face tracking,
đánh giá mức độ đẹp khuôn mặt- face scoring và chỉnh sửa khuôn mặt- face rerendering và đi giải
quyết từng bài toán đó Với mong muốn có thể tối ưu hệ thống đề xuất chúng tôi sẽ giải quyết bằng
việc tối ưu từng mô-đun thành phần của nó Ở phần này, chúng tôi trình bày các phương pháp chúng
tôi đã khảo sát cho từng mô-đun Mỗi phương pháp sẽ được trình bày theo bố cục là nêu ý tưởng, kiến trúc, thực nghiệm, kết quả và ưu nhược điểm Từ đó, chúng tôi sẽ lựa chọn phương pháp tối ưu nhất cho hệ thống đề xuất Một cách tổng quát, phần này sẽ có 4 mục nhỏ tưng ứng với 4 mô-đun, lần lượt là: phát hiện khuôn mặt-face detection, theo vết khuôn mặt- face tracking, đánh giá mức độ đẹp
khuôn mặt- face scoring và tái tạo khuôn mặt- face rerendering Với md-dun phát hiện khuôn mat,
và Multi-task Cascaded chúng tôi thực hiện khảo sát các mô hình là TinaFace CenterFace
Convolutional Networks (MTCNN) Tiếp tục với mô-đun theo vết khuôn mặt, chúng tôi khảo sát
mô hình Tracking without bells and whistle
Association Metrie (Deep SORT)
va Simple Online and Realtime Tracking with a Deep
Bên cạnh đó, chúng tôi cũng nghiên cứu các mô hình có thể
đánh giá mức độ đẹp của khuôn mặt Bởi vì "đẹp" là một định nghĩa chủ quan nên việc không có
mô hình nào có mô hình nào được áp dụng để đo độ đẹp của khuôn mặt là tất yếu Ở đây, chúng
tôi định nghĩa "dep" gồm ba yến tố: độ hoàn chỉnh của gương mặt, mức độ cười của khuôn mặt và
độ mở của đôi mắt Trong mỗi yếu tố, chúng tôi sẽ tìm hiểu các hướng tiếp cận để giải quyết cho
từng độ đo của mìn và khảo sát một số phương pháp cho từng hướng tiếp cận được đề xuất Đối với
Trang 18là nụ cười Chúng tôi đã khảo sát các phương pháp để có thể xem xét một gương mặt có thể cười
hay không như các phương phấp của bài toán nhận diện nụ cười- Smile detector như SmileNet (6| Registration-Free Face-SSD (15) và các phương pháp cho bài toán nhận diện biểu cảm gương mặt
- Facial Expression Recogniton như Multi-task EfficientNet-B2 va DAN (61) Cuối cùng là độ do
phát hiện trạng thái mắt của khuôn mặt đang mở hay đóng, những phương pháp có thể đạt được
mục tiêu là những phương pháp cho bài toán phát hiện vị trí mốc khuôn mặt tương tự như trong độ
đo hoàn chỉnh gương mặt Mô-dun thực hiện cuối cùng là mô-đun tái tạo khuôn mặt
2.2 Mô-dun phát hiện khuôn mặt - Face Detection
Mo-dun phát hiện khuôn mặt là mô-đun đầu tiên của bài toán chúng tôi Bởi nếu muốn tạo ra một
khung ảnh đẹp thì cần phải có một bộ phận có thể thu thập được tất cả các khuôn mặt trong một
khung hình Nhiệm vụ của mô-đun này là phát hiện các gương mặt trong từng khung hình của video
và và lưu trữ chúng.
Phát hiện khuôn mặt - Face Detection là một trong những bài toán lớn của lĩnh vực thị giác máy
tính nhằm mục đích xác định vị trí khuôn mặt người ở trong ảnh Từ ban đầu, các phương pháp phát
hiện gương mặt được đề xuất thường sử dụng các đặc trưng cấp thấp của ảnh như Haar [59] Sau
đó là sự xuất hiện của các phương pháp dựa trên phân tang (cascade) chiếm da số để giải quyết bài
toán này Công bố của nhóm tác giả Dac trưng phân tang SURF đạt được kết quả đáng chú ýkhi thay thế đặc trưng Haar bằng đặc trưng SURF, sử dụng ảnh tích hợp và bộ phân loại phân tầng
nâng cao.Tương tự Chen va cộng sự |4l vào năm 2014 cũng đề xuất học cách sắp đặt bố cục gương
mặt và phát hiện gương mặt với mô hình phân tầng hoàn chỉnh Tuy nhiên phải đến khi xuất hiện
các phương pháp học sâu, bài toán mới được cải thiện một cách rõ rệt Các phương pháp nay dap
ứng mục tiêu giải quyết số lượng lớn khuôn mặt và các biến đổi không cấu trúc của khuôn mặt như
che khuất, chói sáng, trang điểm, biểu cảm điển hình như R-CNN (Regions-Convolutional Neural
Network) [12], Fast R-CNN [11], Faster R-CNN [49], Yolo-face (él, TinaFace Day cũng chính
là hướng tiếp cận của chúng tôi trong đề tài này Trong phần này, chúng tôi giới thiệu một số phương
phấp tiêu biểu cho bài toán bao gồm TinaFace 69|, Multi-task Cascaded Convolutional Networks
(MTCNN) và CenterFace (64).
2.2.1 Multi-task Cascaded Convolutional Networks (MTCNN)
Động lực Phát hiện khuôn mặt có mục tiêu tìm ra khuôn bao của gương mặt còn bài toán sắp xếp
bố cục khuôn mặt (facial landmark detection) có mục tiêu xác định các vị trí các điểm khung xương
của khuôn mặt Hai tác vụ này có liên hệ mật thiết với nhau, việc kết hợp xác định vị trú khung
xương gương mặt giúp cải thiện đáng kể kết quả khuôn bao phát hiện gương mặt Cụ thể, dựa vào các
vị trí khung xương, khuôn bao của gương mat được tinh chỉnh và xác định chính xác hơn Tuy nhiên
Trang 19các phương pháp trước đây khi giải quyết 2 bài toán này lại chưa chú ý đến mối liên hệ giữa 2 tác vụnói trên Mặc dù các công bố trước đã có gắng giải quyết 2 tác vụ đó đồng thời, vẫn còn đó những
hạn chế nhất định Cụ thể, Chen và cộng sự |4) đã thực hiện sắp xếp bố cục gương mặt và phát hiện gương mặt với random forest sử dụng đặc trưng của sự khác biệt giữa những điểm ảnh Tuy nhiên,
các đặc trưng cấp thấp này làm cho hiệu năng của phương pháp bị hạn chế Zang và cộng sự sử
dụng một mạng tích chập đa tác vụ để cải thiện độ chính xác phát hiện gương mặt với nhiều góc độ
nhưng độ chính xác phát hiện vẫn hạn chế bởi vì khung khởi tạo được đề xuất bởi một bộ phát hiện
gương mặt chưa tốt
Kiến trúc mạng Mô hình MTCNN gồm có 3 giai đoạn được nêu cụ thể trong Hình [2.1]
NMS &
Bounding box regression
Giai đoạn 1: Giai đoạn đầu tiên này là một mạng tích chập đầy đủ, gọi là mạng đề nghị - Prosal
Network( P-Net) P-Net được sử dụng nhằm đạt được cửa sé ứng viên và các vec-tơ hồi quy hộp giới hạn của chúng Sau đó, những vec-tơ được ước tính này sẽ dùng để hiệu chỉnh các cửa số ứng cử viên.
Cuối cùng là sử dụng ngưỡng NMS - non-maximum supression để hợp nhất các ứng viên bị trùng lặp
cao.
Giai đoạn 2: Tất cả các ứng viên có được từ giai đoạn trước sẽ được đưa vào một mạng có tên là
Trang 20chuẩn với hồi quy hộp giới hạn và hợp nhất ứng viên bằng ngưỡng NMS.
Giai đoạn 3: Mục tiêu giống giai đoạn 2 tuy nhiên giai đoạn này nhằm mục tiêu mô tả khuôn mặt
một cách chỉ tiết hơn bằng cách sử dụng Ouput Network (O-Net) để cho ra 5 điểm cấu tạo lên gương
mặt.
Kết luận MTCNN giải quyết khá tốt cho bài toán phát hiện khuôn mặt và dat được kết quả
nhất định cho tập dit liệu WIDERFACE |] khi đạt được Average Precission (AP) là 0.851, 0.820, 0.607
lần lượt trên tập dễ, trung bình và khó Bên cạnh đó, thời gian chạy của mô hình MTCNN có thời
gian thực hiện nhanh khi có thể chạy cho bài toán thời gian thực - real-time Tuy nhiên MTCNN còn
bị hạn chế khi phát hiện các gương mặt bi che khuất, kích thươc nhỏ hoặc bị chói sáng,
2.2.2 Mô hình CenterFace
Động lực Vấn đề của các phương pháp nhận diện gương mặt thành công nhất trước đó là việc thực
hiện nhiều quá trình tính toán với nhiều bước rời rạc, khó tối ưu về tốc độ( điển hình là các mạng
hai giai đoạn như Faster R-CNN (49), hay phải đặt các anchorbox với kích thước khác nhau một cách
dày đặc trên hình ảnh dẫn đến việc lãng phí tính toán và yêu cầu các bước hậu xử lí như thuật toán
non maximum suppression( điển hình là các mạng một giai đoạn như YOLO và 55D [35)) Thé
nên, CenterFace ra đời với kiến trúc mạng một giai đoạn và không sử dung anchorbox giúp cân bằng
độ chính xác và thời gian giải quyết bài toán
Kiến trúc mạng Hướng tiếp cận của CenterFace là đưa bài toán phát hiện gương mặt về bài
toán tìm điểm đặc trưng (keypoint estimation) Mục tiêu đi tìm điểm trung tâm của hộp giới hạn
khuôn mặt, từ đó tìm ra hộp giới hạn và kích thước.
Hình 2.2: Kiến trúc mô hình CenterFace
Một tấm ảnh đầu vào khi được đưa vào backbone là MobileNetv2 sẽ được chuyển đổi thành
một bản đồ nhiệt (heatmap) Đỉnh của bản đồ nhiệt tương ứng với tâm của khuôn mặt Các đặc
điểm hình ảnh ở mỗi đỉnh dự đoán kích thước của khuôn mặt và các điểm chính trên khuôn mặt
Cộng với việc sử dung Feature Pyramid Network (FPN) làm cơ sở cho phát hiện tiếp theo Một
cách tổng quát, FPN sử dụng kiến trúc từ trên xuống dưới với các kết nối bên để xây dựng kim tự
Trang 21tháp đặc trưng từ đầu vào với kích thước duy nhất Kết quả cuối cùng mô hình bao gồm phân lớp,
hộp giới hạn và 5 điểm cấu tạo khuôn mặt (facial landmarks)
Kết luận CenterFace là một phương pháp giải quyết bài toán phát hiện gương mặt có khả năng
cân bằng giữa tốc độ và độ chính xác Mặc dù, cách xa các phương pháp hiện đại khi đạt kết quả trêntập dé, trung bình, khó của WIDERFACE lần lượt là 0.935, 0.924, 0.875 Tuy nhiên với kích thước
nhỏ chỉ 7.2 MB và có thể chạy thời gian thực (real-time) với tốc độ >100 FPS khi sử dung NVIDIA
GTX2080TI, CenterFace đáp ứng được việc sử dụng trong các ứng dụng thực tế.
2.2.3 M6 hình TinaFace
Động lực.Phát hiện gương mặt là một bài toán con của bài toán nhận diện vật thể - object detection.Tuy nhiên, các phương pháp hiện tại lại tách riêng hai bài toán này ra với nhau Trong khi có thể
thấy rằng, các đặc điểm của khuôn mặt tồn tại như tư thế, kích thước, bị che khuất, độ mờ, hay
chiếu sáng cũng tồn tại ở đối tượng và các thuộc tính như biểu cảm hay khuôn mặt trang điểm, ta cóthể coi như là sự biến dạng và màu sắc của vật thế Thế nên, dựa trên sự tương quan này, mô hình
TinaFace ra đời để có thể áp dụng các kĩ thuật xử lí bài toán nhận diện vật thể cho bài toán nhận
diện khuôn mặt.
Kiến trúc mang Dau vào của mạng TinaFace là một tấm hình đi qua phần a là trích xuất đặc
trưng - Feature Extractor Phần này TinaFace sử dụng ResNet-50 làm xương sống trong đó lớp 4 và
5 sử dung Deformable Convolution Network và 6 tang Feature Pyramid Network để có thé trích
xuất đặc trưng theo nhiều ti lệ - multi-scale của hình ảnh Sau đó, đầu ra được đưa vào Inception
Block để tăng cường việc phát hiện các đối tượng ở nhiều kích thước khác nhau, đặc biệt là các đối
tượng có kích thước nhỏ Đầu ra cuối cùng sẽ bao gồm phân loại lớp, hộp giới hạn hồi quy của đối
tượng và một lớp tích chập cuối cùng để dự đoán IoU
Hình 2.3: Kiến trúc mạng của mô hình TinaFace
Deformable Convolution Network Bởi đặc điểm của toán tử tích chập là việc cung cấp một
vị trí lấy mẫu xác định cùng với bộ lọc và kích thước cố định thế nên nó sẽ không hiệu quả với những
biến đổi hình học của vật thể Deformable Convolution Network ra đời để có thể giải quyết vấn đề
Trang 22này Nó xuất phát từ ý tưởng cộng thêm vào các vị trí lấy mẫu trong các lớp tích chập truyền thống
một mảng offsets hai chiều Lúc này vị trí lấy mẫu bị biến đổi đồng nghĩa với sẽ lấy mẫu tại những
vị trí đã dang hơn Đặc biệt các vị trí offsets này đều được hoc từ những bản đồ đặc trưng trước đó
nhờ vậy mà giá tri offsets linh hoạt thích ứng với giá trị đầu vào.
offsets
offset field
input feature map output feature map
Hinh 2.4: Vi du vé 3x3 deformable convolution
Inception Module Hinh [2.5] cho ta thấy kiến trúc của một Inception Module, được cấu tạo từ
các bộ lọc với kích thước khác nhau 1x1, 3x3, 5x5 cho phép mô hình có thể phát hiện đối tượng ở
nhiều kích thước khác nhau
Hinh 2.5: Inception Module
Nhánh IoU-aware IoU-aware là phương pháp đơn giản để giải quyết vấn đề không khớp
giữa điểm phân loại và độ chính xác của việc xác định hộp giới hạn, giúp loại bỏ các hộp được phát
Trang 23được gắn với một đầu hồi quy hộp giới hạn để có thể dự đoán IoU giữa hộp được phát hiện và nhãn
của đối tượng Độ tin cậy của phát hiện cuối cùng được tính như sau:
"so — mo (1-a) score = p;IoU; (2.1)
trong đó pi là điểm phân lớp ban đầu, 7øU; là loU dự đoán của hộp phát hiện thứ i và và œ € [0,1] làsiêu tham số để kiểm soát sự đóng góp của điểm phân loại và IoU dự đoán vào độ tin cậy phát hiện
cuối cùng
Kết luận TinaFace là một phương pháp có khả năng kết hợp được điểm mạnh của bài toán phathiện vật thể vào trong bài toán phát hiện gương mặt Nó có khả năng phát hiện khuôn mặt ở nhiềukích thước đặc biệt là khuôn mặt có kích thước nhỏ, bị che khuất hay trang điểm, Mô hình đã đạt
được kết quả cao trên ba tập dữ liệu dễ, trung bình, khó của WIDERFACE lần lượt là 95.8, 95.3,
92.4 Hiện tại, đây chính là phương pháp hiện đại nhất trong lĩnh vực phát hiện gương mặt
2.3 Mô-đun theo vết khuôn mặt- Face Tracking
Mô-đun chính thứ hai là mô-đun theo vết khuôn mặt Để có thể tạo ra được một khoảnh khắc đẹpcủa một người, chúng ta phải lựa chọn khung hình mà người đó đẹp nhất Để có thể xác định nó,
chúng ta phải truy vết tất cả các khuôn mặt của người đó trong tất cả các khung hình trong video.
Muốn xác định khuôn mặt này là của người nào trong khung hình trước tương ứng, chúng ta cần một
bộ phận để có thể làm nhiệm vụ này Đây chính là mục tiêu của bài toán theo vết khuôn mặt- facetracking.
Khuôn mặt là một đối tượng con của vật thể, thế nên để giải quyết bài toán theo vết khuôn mặtchúng ta có thể sử dụng các phương pháp theo vết vật thể Theo vết vật thể - Object Tracking làmột thuật toán xác định vị trí mới của đối tượng đang chuyển động dựa trên các vị trí của nó trongquá khứ Bài toán thường dùng để theo dõi đối tượng trong một chuỗi các hình ảnh: video Bản chấtcủa phát hiện đối tượng có thể xác định được vị trí của nó Thế nên, để giải quyết việc theo dõi đốitượng, chúng ta cũng có thể tách video thành các hình ảnh Sau đó, áp dụng thuật toán phát hiện
đối tượng trên từng khung hình Tuy nhiên, trong thực tế, người ta lại sử dụng thuật toán theo vết đối tượng thay thế cho việc lặp đi lặp lại giải thuật phát hiện đối tượng trong mỗi khung hình Bởi
vi:
e Thuật toán theo dõi đơn giản và nhanh hơn việc áp dụng thuật toán phát hiện đối tượng nhiều
lần
e Nó có thể tiếp tục xử lí khi đối tượng đột ngột biến mat
e Cho phép định danh các đối tượng được phát hiện trước đó
Trang 24Vì những ưu điểm trên nên theo dõi đối tượng thường được áp dụng cùng với phát hiện đối tượng
nhằm tăng độ chính xác và cung cấp khả năng định danh cho các đối tượng đã được phát hiện
Có hai cách tiếp cận cho bài toán theo vết đối tượng là:
e Theo dõi một đối tượng - Single Object Tracking (SOT) tập trung theo dõi một đối tượng duy
nhất trong video được xác định bằng cách khởi tạo trong khung hình đầu tiên của video
e Theo dõi nhiều đối tượng - Multi Object Tracking (MOT) hướng đến mục tiêu theo dõi tất cả đối tượng được xuất hiện, bao gồm cả những đối tượng mới xuất hiện ở giữa video.
Trong đề tài này, chúng tôi chỉ tập trung vào giải quyết bài toán theo dõi nhiều đối tượng Mỗi
đối tượng sau khi được phát hiện sẽ được định danh bằng việc gán ID Hệ thống sẽ theo dõi chúngthông qua việc duy trì sự nhất quán số ID cho từng đối tượng qua từng khung hình Trong quá trìnhthực hiện đó, chúng ta cần lưu tâm đến những vấn đề như sau:
e Phát hiện tất cả đối tượng: đây là vấn đề được quan tâm nhất trong bài toán phát hiện đối
tượng Với những phương pháp sử dụng kết quả này để sử dụng cho việc theo dõi đối tượngđiển hình như detection based tracking thì việc đảm bảo tính chính xác của quá trình phát hiện
là vô cùng quan trọng.
e Dối tượng bị che khuất một phần hoặc toàn bộ: Khi một đối tượng đã được gán với một ID cụ
thể, ID cần đảm bảo nhất quán trong toàn bộ video Tuy nhiên, khi một đối tượng bị che khuất
vấn đề sẽ rất khó giải quyết nếu chỉ dựa vào máy phát hiện đối tượng.
e Dối tượng ra khỏi phạm vi khung hình sau đó xuát hiện lại: Cần giải quyết tốt vấn đề này để
có thể giảm số lượng ID xuống thấp nhất có thể
e Qũy đạo của các đối tượng giao nhau hoặc chồng lấp lên nhau: Việc này có thể dẫn đến việc
gán nhầm ID cho các đối tượng Đây cũng là một vấn đề lớn khi chúng ta đi giải quyết bài toántheo dõi nhiều đối tượng
Hiện tại, có hai phương pháp để giải quyết bài toán theo dõi đối tượng là sử dụng các thuật toán
truyền thống và sử dụng các mạng học sâu Một số đại diện nổi bật của các phương pháp truyền thống
là MeanShift [17], Optical Flow ig} Ưu điểm của những thuật toán nay là giải thuật đơn giản và thời
gian tính toán nhanh Tuy nhiên, độ chính xác đạt được lại không cao, dễ bị nhiễu và phải thực hiện
phương pháp phát hiện đối tượng ở từng khung hình Cho đến thời điểm hiện tại, các phương pháp
học sâu vẫn được ứng dụng nhiều nhất, bởi độ chính xác mà nó đem lại, giải quyết những nhược điểm của các phương pháp truyền thống trước đó như Deep-SORT [62], SORT [2], Tracktor [1], MDNet
(18) Bởi thé, chúng được chọn là phương pháp tiếp cận của chúng tôi trong đề tài này Trong phần
này, chúng tôi sẽ giới thiệu một đại diện của nhánh này là Tracktor Đây là thuật toán thuộc lớp
Detection based Tracking, sử dụng kết quả của bài toán phát hiện khuôn mặt để theo dõi đối tượng
Trang 252.3.1 Tracking without bells and whistles
Động lực Vấn đề theo dõi nhiều đối tượng trong video là một nhiệm vụ khó khăn Các phương
pháp trước đây không thực sự hiệu quả đối với các trường hợp theo dõi phức tạp, cụ thể là đối tượng
nhỏ hoặc bị che khuất dẫn đến việc phát hiện thiếu đối tượng Bằng cách khai thác đầu hồi quy của
máy phát hiện để thực hiện sắp xếp lại theo thời gian của các hộp giới hạn đối tượng, Tracktor đã có
thể giải quyết được những hạn chế trên một cách dễ dàng.
Kiến trúc Kiến trúc hoạt động của một Tracktor được thể hiện rõ trong Hinh [2.6] bao gom hai
bước xử lí chính là đường màu xanh lam và mau đỏ Cho khung hình t, bước đầu tiên trong quá trình
xử lí của hệ thống là hồi quy của máy phát hiện sẽ sắp xếp các hộp giới hạn đã theo dõi là bk_, ở
khung hình t-1 đến vị trí mới của đối tượng tại khung hình t Điểm phân loại tương ứng sĩ trong số
các vị trí hộp giới hạn mới sau đó được sử dụng để loại bỏ các theo dõi có khả năng bị che khuất.
Giai đoạn hai, máy phát hiện đối tượng cung cấp một tập các phát hiện D; của khung hình thứ t.Cuối cùng, một theo dõi mới được khởi tạo nếu một phát hiện không trùng lấp với bất kì hộp giới
han nao của tập hợp các theo dõi đang hoạt động B¿ = {bị!, pi wth
Kết luận Tracktor là một máy theo dõi tốt có khả năng theo dõi vật ở nhiều tinh huống phức
tạp và hiện tại đạt được hiệu suất cao nhất trong thử thách Online Multi Object Tracking on MO T17
Chính vì thế đây cũng là một trong số những phương pháp nổi bật được sử dụng nhiều trong bài toán
theo vết đối tượng
2.4 Mô-đun đánh giá mức độ đẹp khuôn mặt- Face Scoring
Mô-đun đánh giá mức độ đẹp khuôn mặt - Face Scoring là mô-đun do chúng tôi đề xuất Với mong
muốn có thể lựa chọn khoảnh khắc đẹp nhất của một người, chúng tôi mong muốn có một tiêu chuẩn
chung để có thể đánh giá một khuôn mặt Chúng tôi sẽ xem xét một khuôn mặt được coi là đẹp nếukhuôn mặt đó cười và nhìn thằng vào khung hình, bao gồm ba yếu tố là biểu cảm của người đó là
Trang 26cười, khuôn mặt không bị che khuất và mở mắt Dẫu biết rằng, "đẹp" là một khái niệm chủ quan, tuy
nhiên chúng tôi cho rằng một khuôn mặt cười sẽ là biểu cảm hạnh phúc của một người Và mở mắt
cộng với không bị che khuất là yếu tố thể hiện sự hoàn chỉnh của khuôn mặt Chúng tôi định nghĩa sự
hoàn chỉnh đó bằng việc xem xét một khuôn mặt có đầy đủ hai mắt, mũi và miệng hay không? Bên
cạnh đó khung xương mặt cũng không bị che khuất bởi người hoặc vật khác Chúng tôi phân chiaface score thành 3 thành phần tương ứng như đã nói ở trên là eye score, smile score và appearance
score và đi tìm hiểu các cách giải quyết cho những thành phần trên
2.4.1 Độ do nụ cười - Smile score
Nu cười biểu hiện niềm vui, niềm hạnh phúc của con người Bởi thế, nụ cười có giá trị rất lớn tronggiải tỏa và thể hiện cảm xúc hạnh phúc của cá nhân Thể nên, chúng tôi mong muốn khoảnh khắc
đẹp của một người sẽ là khoảnh khắc người đó cười một cách hạnh phúc Để thực hiện điều đó, chúng
tôi xem xét việc đánh giá khuôn mặt một người có cười hay không và con số thể hiện nó Như chúngtôi đã khảo sát và tìm hiểu, chúng tôi tìm thấy hai phương pháp có thể thực hiện để đánh giá độ
đo nụ cười chính là nhận dạng biểu cảm gương mặt và bài toán phát hiện nụ cười Trong phần này,
chúng tôi sẽ tìm hiểu về bài toán và một số đại diện của chúng
2.4.1.1 Cách tiếp cận dựa trên bài toán nhận diện biểu cảm gương mặt
Biểu cảm là một trong những tín hiệu xã hội trực tiếp và cơ bản trong giao tiếp con người Cùng với
những cử chỉ khác, chúng truyền tải những tín hiệu cảm xúc quan trọng mà không cần dùng lời nói
giữa các mối quan hệ cá nhân Quan trọng hơn, nhận dạng nét mặt dựa trên thị giác đã trở thànhmột công cụ phân tích cảm xúc mạnh mẽ trong nhiều ứng dụng thực tế Ví dụ, các nhà tâm lí tư
vấn đánh giá tình trạng của bệnh nhận và lên kế hoạch điều trị bằng cách liên tục quan sát biểuhiện trên khuôn mặt Trong kinh doanh bán lẻ, dữ liệu biểu cảm của khách hàng được sử dụng đểđánh giá mức độ hài lòng của họ với sản phẩm và dịch vụ Hiện tại, một số cảm xúc của con người
thường xuất hiện bao gồm: hạnh phúc, tức giận, ghê tởm, sợ hãi, buồn, ngạc nhiên, trung tính và
khinh thường Nhận diện biểu cảm gương mặt có nhiệm vụ phát hiện chính xác trạng thái biểu cảmdựa trên hình ảnh đầu vào có chứa khuôn mặt Trước đây, các phương pháp được sử dụng để nhận
diện nét mặt chia thành hai luồng là đặc trưng dựa trên ngoại hình (appearance-based) và đặc trưngdựa trên hình khối (shape-based) Phương pháp dựa trên ngoại hình chủ yếu áp dụng các mô tả đặc
điểm được thiết kế thủ công như mẫu nhị phân cục bộ - local binary pattern (LBP), bộ lọc Gabor và
biểu đồ độ dốc - Gabor filters and histogram of gradients (HOG), để trích xuất thong tin kết cấu
từ toàn bộ gương mặt hoặc các thành phần trên gương mặt Mặt khác, các phương pháp dựa trên
đặc trưng hình khối sử dụng các điểm mốc trên khuôn mặt và điểm đặc trưng để mô tả đặc điểm cấuhình khuôn mặt Các bộ phân loại như SVM, AdaBoost và mạng nơ-ron được đào tạo để thực hiện
phân loại nét mặt Các kỹ thuật máy tính và thị giác máy tính thông thường phải phụ thuộc rất
Trang 27nhiều vào các tinh năng và bộ phân loại được thiết kế thủ công được lựa chon can thận.Gần đây, họcsâu, nhằm khám phá và tự động học các biểu diễn tốt từ dữ liệu thô với mô hình phân cấp phức tạp
bao gồm nhiều lớp, đã có thể giải quyết bài toán dễ dàng và đạt hiệu suất cao hơn Đơn cử có thể
kể đến DAN [DAN], ResMaskNet [44], EfficientNetB2 |53|, DeepEmotion [39], LHC-Net [40], Một
hệ thống nhận diện khuôn mặt thường được chia làm ba quá trình phụ: nhận diện khuôn mặt, trích
xuất đặc điểm và phân loại biểu hiện Trong mục này, chúng tôi giới thiệu một vài đại diện tiêu biểu
của các mô hình nhận diện khuôn mặt là DAN và ResMaskingNet [44].
Trước tiên chúng tôi di sâu vào tìm hiểu mạng DAN- một giải pháp cực kì hiệu quả để giải quyết
mục tiêu qua ba nội dung chính là động lực, kiến trúc và kết luận
Động lực Trái ngược với bài toán phân loại ảnh bình thường, phân loại biểu cảm có nhiều đặcđiểm chung và khó phân biệt hơn Thật vậy, các biểu cảm khác nhau có một ngoại hình khuôn mặt
khá giống nhau và sự khác biệt của chúng cũng khó phân biệt hơn Một phương pháp thường được
sử dụng để giải quyết vấn đề này là áp dụng một biến thể của hàm loss trung tâm (variant of the
center loss) Dựa trên ý tưởng này, tác giả xây dựng một Mang phân cụm đặc trưng (Feature Cluster
Network) kết hợp với biến thể của hàm loss trung tâm để tối ưu hóa các biển thể ở trong lớp và giữa
các lớp.
Kiến trúc Mô hình DAN được xây dựng dựa trên ba mạng con bao gồm: Feature Clustering
Network (FCN), Multi-head cross Attention Network (MAN) và a Attention Fusion Network (AFN).
Các tính năng cơ ban đầu tiên được trích xuất và phân nhóm bởi FCN, trong đó affinity loss được
áp dụng để mở rộng khoảng cách giữa các lớp và thu hẹp khoảng cách đối với các mẫu cùng một
lớp Tiếp theo, MAN sẽ có nhiệm vụ quan tâm đến nhiều vùng trên khuôn mặt đồng thời bằng một
loạt các đơn vị chú ý không gian (spatial attention unit) và một tổ hợp đơn vị chú ý kênh (channel
attention unit) Cuối cùng mạng AFN phân vùng các bản đồ chú ý và đưa ra xác suất tin cậy của
một lớp Tổng quát quá trình được mô tả rõ ràng trong Hình [2.7]
: - Attention Map ¬ colisiae oi See” $§ jj ‘“Sxakirmereme wen anecss
bau Spatial Attention | ) +jChamnelAtendon| () ® s ®
[ Spatial Attention | @ +{Channel Attention | @
FCN MAN AFN
Hình 2.7: Kiến trúc mô hình DAN
Feature Clustering Network
Trang 28FCN sử dụng ResNet-18 làm backbone để có thể rút trích các đặc trưng của khuôn mặt Cóthể thấy rằng, các biểu hiện khác nhau trên khuôn mặt có thể có cùng những đặc tính cơ bản Thế
nên, trong mạng con này tác giả đã sử dụng ham affinity loss để có thể tối đa hóa lề (margin) của các lớp Cụ thể, trong mỗi bước đào tạo, hàm mất mát có nhiệm vụ khuyến khích các tính năng di
chuyển đến gần trung tâm của lớp phân loại mà nó thuộc về đồng thời đẩy các trung tâm của các lớp
ra xa nhau Điều đó giúp FCN có khả năng phân tách tốt giữa các lớp
Multi-head cross Attention Network (MAN)
Kiến trúc MAN chứa các đầu chú ý chéo (cross attention head) song song và độc lập với nhau Như
trong Hình |2.8| cross attention head là sự kết hợp của bộ phận chú ý không gian (spatial attention
unit) và bộ phận chú ý kênh (channel attention unit) Bộ chú ý không gian nhận các đặc điểm đầuvào từ FON và trích xuất các đặc điểm không gian Sau đó, đơn vị chú ý kênh chấp nhận các tính
năng không gian làm tính năng đầu vào và trích xuất các tín năng về kênh Các tính năng từ hai
chiều trên cuối cùng được kết hợp thành một bản đồ chú ý (attention head) Cụ thể hơn, phần bên
trái Hình minh hoa đơn vị chú ý không gian, bao gồm bốn lớp tích chập và một chức năng kích hoạt (activation function) Đặc biệt, ở đây xuất hiện các bộ lọc tích chập 1z1, 1z3, 3z1 và 3+3 cho
phép nắm bắt các đặc trưng cục bộ ở nhiều tỉ lẹ Đối với đơn vị chú ý kênh được hiển thị ở phần bên
phải bao gồm hai lớp tuyến tính và một chức năng kích hoạt Hai lớp tuyến tính được tận dụng để
có thể tạo ra một bộ mã hóa tự động mini (mini autoencoder) nhằm mã hóa thông tin kênh
Hinh 2.8: Cau tric cross attention head
Attention Fusion Network (AFN)
Trang 29Sau khi đi qua mạng con MAN để xử lí, các bản đồ chú ý có thể nắm bắt các tính năng ở cácvùng địa phương khác nhau tuy nhiên nó lại không được sắp xếp theo thứ tư Để giải quyết điều này,AFN mở rộng quy mô bản đồ chú ý bằng cách áp dụng hàm log-softmax để nhấn mạnh khu vực chú
ý nhất Sau đó, hàm partition loss được đề xuất giúp các đầu chú ý chéo (cross attention head) tập
trung vào các vùng quan trọng khác nhau và tránh các chú ý chồng chéo (overlapping attentions)
Cuối cùng, các bản đồ chú ý đã được chuẩn hóa được hợp nhất thành một và đi qua một lớp tuyếntính để có thể tính toán độ tin cậy của một lớp phân loại
Kết luận DAN là một phương pháp hiệu quả cho bài toán nhận diện biểu cảm bao gồm ba mạng
con là FCN, MAN và AFN Phương pháp đã được thử nghiệm trên nhiều tập dữ liệu khác nhau nhưAffectNet, RAF-DB, SFEW 2.0 và đều đạt được kết quả tốt Cho đến hiện tại, MAN là phương pháp
có hiệu suất tốt nhất trên tập dữ liệu AffectNet
Bên cạnh DAN, một phương pháp gần đây mà chúng tôi đã khảo sát chính là Residual Masking
Network Mô hình này được ra đời năm 2021 và hiện tại đang là phương pháp hiện đại nhất cho tập
dữ liệu FER.
Động lực Các hệ thống nhận diện biểu cảm khuôn mặt trước đây thường tập trung vào các đặcđiểm như mắt, miệng và không chú ý đến những đặc tính ít đóng góp cho bài toán như tóc và đường
quai hàm Nó thường tập trung vào những vùng thiết yếu như trên bằng cách sử dụng một đặc điểm
trung gian có tên là mốc trên khuôn mặt (facial landmark).
Kiến trúc Kiến trúc của Residual Masking Net được miêu tả trong Hình |Ð.9|chứa bốn Residual
Masking Block Mỗi Residual Masking Block hoạt động trên các kích thước đặc trưng khác nhau, chứa một Residual Layer và một Masking Block.
Hình ảnh đầu vào có kích thước 22427224 sé di qua lớp chập 3x3 đầu tiên với stride bằng 2 sau đó
di qua lớp max-pooling 272 Lúc này, kích thước không gian sẽ còn 56756 Kết quả này tiếp tục được
sử dụng để biến đổi bằng cách đi qua bốn Residual Masking Block với các bản đồ đặc trưng tương
ứng với bốn kích thước 56z56, 28z28, 14z14, 7z7 Kết thúc, một lớp average pooling và một lớp kết
nối đầy đủ 7 chiều với softmax tạo ra kết quả đầu ra tương ứng với 7 trạng thái biểu cảm gương mặt
Điểm đặc biệt trong kiến trúc mạng là đề xuất Masking Block thực hiện phép tính cho điểm Sau
đó, bản đồ đặc trưng (feature map) đầu vào của Masking Block và đầu ra của nó được kết hợp trực
tiếp Tác giả của phương pháp đã loại bỏ nhánh thân và sử dụng lại ResNet làm xương sống.Residual Masking Block thiết kế có chứa Residual Layer và Masking Block, phía trước chịu tráchnhiệm xử lí đặc trưng còn phía sau tạo trọng số cho các bản đồ đặc trưng tương ứng như trong Hình
Masking Block dựa trên cấu trúc U-Net được đề xuất trong [50) Đây là cấu trúc mạng nổi tiếng
để có thể khoanh vùng các đối tượng y tế nhỏ Khối này bao gồm một contracting path (encoder)
và một expansive path (decoder) như trong Hình [2.9p Thêm vào đó, Masking Block có nhiều lớp
pooling và upsampling tùy thuộc vào kích thước đặc trưng không gian của residual input unit Bởi
Trang 30thế, Masking Block có thể đóng vai trò kích hoạt trong nhiều kiến trúc phân đoạn thay vì chỉ sử dụng
U-Net.
Residual Masking Block 4
aver
Element-wise multiplication Element-wise addition
Input features Output features
Hình 2.9: Kiến trúc Residual Masking Net
Kết luận Mô hình Residual Masking Net là một mô hình nhận diện biểu cảm khuôn mặt hiệu
quả, đã được chứng minh trên nhiều tập dữ liệu như FER2013 và VEMO Tuy nhiên, hiện tại phương
pháp mới chỉ đạt kết quả cao trên các trạng thái dễ phân biệt như hạnh phúc và ngạc nhiên và không
cao trên các trạng thái phức tạp như buồn bã, sợ hãi, ghê tởm Dây cũng chính là thử thách lớn nhất
của bài toán nhận diện biểu cảm khuôn mặt
Sau khi tìm hiểu bài toán nhận điện biểu cảm gương mặt và một số phương pháp đại diện Chúng
ôi rút ra được một số ưu và nhược điểm của bài toán này đối với đề tài của chúng tôi Ưu điểm của
cách tiếp cận này là bởi vì nhận diện khuôn mặt là một bài toán lớn bởi thế cho nên có nhiều công
rình nghiên cứu bao gồm việc cung cấp nguồn và mô hình đã học sẵn, thuận tiện cho việc nghiên
cứu và sử dụng Bên cạnh đó, nhược điểm của bài toán này là bởi số lượng biêu cảm để nhận dạng
ớn, thường chứa từ 7 đến 8 trạng thái cảm xúc Trong khi bài toán của chúng tôi chỉ cần sử dụng hai
rạng thái cảm xúc là hạnh phúc hay không hạnh phúc, cười hoặc không cười Diều này, đồng nghĩa
với việc chúng tôi sẽ phải xử lí đầu ra nếu như sử dung nó để đánh giá smile score
2.4.1.2 Cách tiếp cận dựa trên bài toán phát hiện nụ cười - Smile Detection
Phát hiện nụ cười là bài toán con của bài toán nhận diện biểu cảm khuôn mặt Nếu như bài toánnhận diện biểu cảm gương mặt giúp ta phân loại các trạng thái như vui vẻ, tức giận, buồn bã, ngạc
nhiên, sợ hãi, thì phát hiện nụ cười là bài toán chỉ trả về kết quả là cười hoặc không cười Cũng
như bài toán nhận diện biểu cảm, bài toán phát hiện nụ cười đã có những bước tiến vượt bậc khi
áp dụng kĩ thuật học sâu có thể ké đến như SmileNet [16], Smile-CNN , Pair-wise Distance Vector
Trang 31SmileNet, Smile-CNN va đưa ra một số kết luận của bài toán có liên quan đến mục tiêu của chúng
tdi.
Trước tiên, chúng tôi sẽ tìm hiểu mô hình Smile-CNN với cấu trúc như các phương pháp trước
Động lực Các công trình trước đây chủ yếu nghiên cứu các trường hợp được kiểm soát trong
vùng thí nghiệm lộ) trong môi trường đó, khuôn mặt con người thường ở chính diện, nền sạch và có
tỉ lệ giống nhau Ngược lại, khuôn mặt tươi cười trong tự nhiên có nhiều tư thế, nền phức tạp và
tỉ lệ khác nhau Với mong muốn có thể giải quyết vấn đề nhận diện nụ cười trong môi trường thực,
Smile-CNN ra đời.
Kiến trúc Kiến trúc mô hình Smile được thể hiện đầy đủ trong Hình [2.10] Mô hình này ánh
xạ một hình ảnh 64x64 đầu vào thành hai nút đầu ra, với một nút biểu thị "cười" và "không cười".Giữa đầu vào và đầu ra có ba lớp tích chập, mỗi lớp tích chập theo sau là một lớp tổng hợp tối
đa (max-pooling) Lớp chập đầu tiên (C1) lọc hình ảnh đầu vào 64x64 với 16 bộ lọc có kích thước9x9.Lớp tích chập thứ hai (C3) lọc 16 bản đồ đặc trưng đầu ra 28 x 28 của lớp P2 bằng việc sử dụng
16 bộ lọc 16 x 8 có kích thước ðxð Lớp tích chập thứ ba (C5) lọc 8 bản đồ đặc trưng đầu ra 12x12
của lớp P4 thông qua 8x16 bộ lọc có kích thước 5x5 Vai trò của các lớp này là trích xuất các tính
năng theo thứ bậc Theo sau mỗi lớp tích chập là một tổng hợp, được sử dụng để giảm kích thướckhông gian và kiểm soát việc overfitting
12X12X8 8X8X 16 4X4X16 1X2
Cl-layer P2-layer C3-layer P4-layer C5-layer P6-layer Output
Kernel 9X9 Kernel 2X2 Kernel 5X5 Kernel 2X2 Kernel 5X5 Kernel 2X2
Hình 2.10: Kiến trúc mô hình Smile-CNN
Kết luận Smile-CNN là mô hình nhận diện nụ cười khá hiệu quả Đây là một trong những mô
hình mạng học sâu đầu tiên cho bài toán này Bởi thế cho nên kiến trúc mạng còn khá đơn sơ và
không đạt hiệu quả cao nếu khuôn mặt bị che khuất.
Một đại diện nổi bật khác của bài toán phát hiện nụ cười chính là SmileNet
Động lực Khuôn mặt bị che khuất, sự khác biệt của tư thế đầu, tỷ lệ khuôn mặt và đọ chiếusáng là những thách thức lớn trong bài toán nhận diện nụ cười Bởi thế cho nên những công trình
nghiên cứu trước đây yêu cầu những bước chuẩn hóa trước liên quan đến việc phát hiện và đăng kíkhuôn mặt(face registration) như xoay, chia tỷ lệ và chuyển đối 2D/3D Một số phương pháp trước
đây xử lí hình ảnh đầu vào một cách thủ công để phát hiện khuôn mặt (khi máy phát hiện bị lỗi) hoặc đăng kí khuôn mặt dựa trên vị trí của mắt 54] Thế nên, SmileNet ra đời trở thành một mô hình
nhận diện nụ cười đầu tiên không yêu cầu hình ảnh đầu vào phải xử lí trước như nhận diện khuôn
mặt hay đăng kí (registration) trước để tạo hình ảnh đầu vào được chuẩn hóa (cắt và căn chỉnh)
Trang 32Kiến trúc SmileNet là một mạng nơ-ron tích chập đầy đủ bao gồm các bộ phận như trích xuấtđặc trưng, nhận diện khuôn mặt và nhận diện nụ cười,được thể hiện rõ trong Hình Đầu vào của
(a) Gl G2_ G3 G4 GS G8 G9 G10
( Img +) T r ` h 300x300x3 ' ' ' '
Layers: Convolution (kernel #,size,stride,pad) ReLU | Sigmoid | Concat
MAX Pooling (kernel size,stride,pad) _|| Out Conv CÔ Flatenaxl | Network parts: |_VGG 16 Conv Layers Face Detection Part Smile Recognition Part
Heatmap
Example
Hình 2.11: Kiến trúc SmileNet
mô hình là một tấm ảnh màu G[1:10] đại điện cho các lớp tích chập và các lớp tổng hợp (pool layer)
có cùng độ phân giải đầu vào Trong khi những lớp tích chập đầu ra [Œ1, e1) :( f6, e6)] f [1: 6] được
xây dựng bởi bộ phận nhận diện khuôn mặt thì e[1: 6] được tạo ra bởi bộ phận nhận diện nụ cười.
Các lớp tích chập của hai phần đầu ra này được căn chỉnh và nối theo thứ tự tương ứng Tiếp tục
ghép những kết quả này lại ta sẽ được một khối bản đồ nhiệt theo pixel bao gồm 6 mặt phẳng bản
đồ nhiệt Mặt phẳng đầu chỉ ra sự tồn tại của khuôn mặt Mặt phẳng cuối cùng thể hiện độ tin cậy của nụ cười tính bằng pixel Bốn mặt phẳng còn lại xuất ra vị trí tâm khuôn mặt, chiều rộng, chiều
cao so với tỉ lệ bản đồ nhiệt hiện tại tạo nên hộp giới hạn tương ứng
Kết luận SmileNet là mô hình nhận diện nụ cười hiệu quả, đã được đánh giá qua các bộ dữ liệu
GENKT-4K và CelebA Mặc dù kiến trúc mạng còn phức tạp bởi việc chứa nhiều lớp trong tac vụ
nhận diện nụ cười tuy nhiên nó vẫn có thể duy trì được tốc độ thời gian thực (21.15 FPS)
Tóm lại, bài toán nhận diện nụ cười là một phương pháp trực tiếp có thể giải quyết được mục tiêucủa chúng tôi là đánh giá nụ cười Tuy nhiên, có ít phương pháp trong bài toán này Bên cạnh đó,những công trình này còn nhiều hạn chế và không cung cấp những mô hình đã học để chúng tôi cóthể đi sâu hơn vào tìm hiểu và thực nghiệm
2.4.2 Độ đo đánh giá độ hoàn chỉnh của khuôn mặt - Appearance score
Ngũ quan là một phần rất quan trọng trong vẻ đẹp của khuôn mặt Để có thể nắm bắt tâm lí, tình
cảm, trạng thái biểu hiện của một người, chúng ta cần phải thấy rõ ràng được các bộ phận như lông
mày, mắt, mũi, miệng Bởi thế, để đánh giá khoảnh khắc đẹp của một người, chúng tôi mong muốn
Trang 33khuôn mặt của người đó sẽ được thể hiện rõ ràng trong khung hình mà không bị che khuất bởi bất
cứ người nào hay vật gi.
Trong quá trình tìm hiểu để giải quyết bài toán này, chúng tôi tìm thấy hai phương pháp để cóthể giải quyết bài toán là bài toán phát hiện mốc khuôn mặt - facial landmark detection và bài toán
phân đoạn các bộ phận trên khuôn mặt - face parsing Với bài toán phát hiện mốc khuôn mặt đặcbiệt cho những khuôn mặt bị che khuất, các phương pháp sẽ xây dựng một mô hình mà ở trong đó
kết quả đầu ra trả về những điểm mốc trên khuôn mặt bao gồm điểm bị che khuất hoặc không bị chekhuất Có được tập hợp các điểm chúng tôi sẽ tính được một khuôn mặt có bị che khuất hay không
Còn với phương pháp thứ hai - phân tích khuôn mặt, các hệ thống trong bài toán này sẽ phân vùngdiện tích của các bộ phận trên khuôn mặt như mắt, mũi, miệng Dựa vào đó, những khuôn mặt nào
sau khi phân tích không đầy đủ các bộ phận như trên thì sẽ xếp vào nhóm khuôn mặt không đầy đủ.
Trong những mục tiếp theo chúng tôi sẽ đi phân tích sâu hơn vào bài toán và đưa ra một số đại diện
cụ thể cho từng bài toán trên.
2.4.2.1 Cách tiếp cận dựa trên bài toán phân đoạn ngữ nghĩa các bộ phận trên khuôn
mặt - Face Parsing
Face Parsing là bài toán phân đoạn ngữ nghĩa các bộ phận trên mặt người Bài toán này nhận đầu
vào là một khuôn mặt và đầu ra nhãn ngữ nghĩa của từng điểm ảnh đại diện cho từng bộ phận trên
khuôn mặt Hinh[2.12}neu một vài ví dụ về đầu vào va đầu ra của bài toán này Day là một nhiệm vụ
quan trọng được sử dụng trong các ứng dụng như nhận diện khuôn mặt - face recognition, làm đẹp
gương mặt - face beatufication, hoán đổi khuôn mặt - face swapping, nhận dạng thuộc tính khuôn
mặt - facial attribute recognition, Gần đây, các phương pháp dựa trên mạng học sâu (CNN) đã đạt
được kết quả ấn tượng về vấn đề này đơn cử như EAHANet [37], Mô hình của Aaron và cộng sự (14),
mô hình của wei và cộng sự [60], mô hình của Liu và cộng su [34], RT Net [33] Trong muc nay,
chúng tôi giới thiệu hai mô hình của bài toán phân đoạn ngữ nghĩa các bộ phan trên khuôn mặt là
EAHNet [37] và RTNet [32].
Đầu tiên, chúng tôi đi tim hiểu phương pháp EAHNet ra đời năm 2020 với một số đặc điểm
chính về động lực, kiến trúc và kết luận.
Động lực Các nghiên cứu trước đây mặc dù đã có hiệu quả trong việc giải quyết bài toán này,
tuy nhiên vẫn còn gặp một số các thách thức Đầu tiên là thời gian Các công trình trước đó thường
sử dụng các xương sống - backbone cồng kềnh (ví dụ : vGGl36]) Bên cạnh đó, nó cũng gặp các thách
thức trong việc phân đoạn ngữ nghĩa như việc phân biệt mắt trái, mắt phải do cấu trúc đối xứng của
gương mặt, khó khăn trong việc phân tách ranh giới giữa các bộ phận có màu sắc gần giống nhau,
khoảng cách ngữ nghĩa giữa các lớp khác nhau EAHNet ra đời để có thể giải quyết những van dé
trên.
Kiến trúc Kiến trúc mô hình EAHNet được miêu tả trong Hình [2.13] với đầu vào của mô hình
Trang 34Output
Hình 2.12: Dau vào va đầu ra của bài toán phân đoạn ngữ nghĩa các bộ phận trên khuôn mat
để trích xuất đặc trưng Sau đó, các bản đồ đặc trưng ở từng lớp được vào cấu trúc SCAM Hình|Ð.14|
cho ta thấy cơ chế hoạt động của SCAM Nó sử dung ban đồ đặc trưng cấp cao ở giai đoạn (n+1)
để tạo điều kiện thuận lợi cho việc học các đặc điểm cấp thấp ở giai đoạn n Theo sau đó là khối bù
khoảng cách ngữ nghĩa - semantic gap compensation block (SGBC), bao gồm các tích chập giãn nở
(dilated convolution) để tăng trường tiếp nhận và thu hẹp khoảng cách ngữ nghĩa ở các kích thước
khác nhau Đối với mô-đun nhận biết ranh giới (BA) phụ trợ được phân chia thành hai đường dẫn
song song từ giai đoạn 1 và giai đoạn 2 để trích xuất các tính năng chỉ tiết, sau đó nối chúng bằngtoán tử upsampling Cụ thể hơn, tất cả các nhánh song song đều trải qua phép chập phân tách sâu
3 x 3 với stride= 1 và một tích chập thông thường 1 x 1 để tỉnh chỉnh các đặc trưng Một mặt,
mô-đun này được sử dụng như giấm sát phụ trợ Mặt khác, sau tích chập 3 x 3, nó thực hiện phân
đoạn tỉnh cùng với mạng con phân đoạn thô Kết quả đầu ra là một mặt nạ phân đoạn ngữ nghĩacác thành phần trên khuôn mặt
Kết luận EAHNet là một mô hình hiệu quả cho bài toán phân đoạn ngữ nghĩa các bộ phận trên
khuôn mặt Mô hình đạt kết quả trong khi chỉ sử dụng ResNet18 làm xương sống với 78.19% mloU
trên tập dữ liệu CelebAMask-HQ và 90.7 % F1-score trên tập dữ liệu Helen Một điểm đáng chú ý
nữa là EAHNet có tốc độ xử lí nhanh đạt 55 FPS khi sử dung GTX 1080Ti cho độ phan giả 640x640
và 300 FPS cho độ phân giải 256x256 Day là một khoảng thời gian lí tưởng khi có thể áp dụng trong
các ứng dụng thực tế
Bên cạnh EAHNet, chúng tôi giới thiệu RTNet được ra mắt vào năm 2021 và đạt hiệu quả trong
việc giải quyết bài toán trên
Động lực Các nghiên cứu trước đây thường giải quyết bài toán phân đoạn ngữ nghĩa các bộ
phận trên gương mặt theo hai hướng chính Một là, cắt và thay đổi kích thước khuôn mặt Các
phương pháp như vậy thường bỏ qua tóc vì khó xác định lề xung quanh tóc (margin) Bởi nếu lề quánhỏ, vùng tóc sẽ bị cắt Còn nếu chọn lề quá lớn, sẽ xuất hiện nhiều điềm ảnh chứa nền hoặc cáckhuôn mặt xung quanh đó gây ra sự phân tâm cho mô hình trong quá trình huấn luyện Một phương
Trang 35ie] o| E o
ResNet
| Stem
Boundary Output
Trang 36pháp khác là sử dụng mốc khuôn mặt để căn chỉnh khuôn mặt Tuy nhiên vấn đề này gặp khó khăntrong việc lựa chọn cần thận những điểm mốc để có thể sử dụng Nhằm mục đích giải quyết hai vấn
đề này, nhóm tác giả đề xuất việc sử dụng phép biên đổi Rol Tan-polar (RT Transform) để biến toàn
bộ hình ảnh thành một biểu diễn có kích thước cố định trong hệ tọa độ Tanh-polar dựa trên hộp giới
hạn mục tiêu Thêm vào đó, một mạng nơ-ron tích chập sẽ được ấp dụng trong không gian tanh-polar
để tạo ra một biểu diễn tương đương với cac phép quay trong không gian Cartesian ban đầu
Kiến trúc Mô hình RTNet được xây dựng dựa trên mạng FCN, được thể hiện trong Hình |2.15|
Đầu vào là môt hình ảnh 7 có độ phân giải tùy ý và hộp giới hạn đối tượng Hộp giới hạn này được
chuyển thành ?„„ trong không gian Tanh-polar với kích thước là 512x512 Tiếp theo HybridNet-50
được sử dụng để trích xuất đặc trưng từ Tip, theo sau đó là đầu giải mã naive FCN để dự đoán mặt
nạ phân đoạn trong không gian Tanh-polar Ỏ đây nhóm tác giả sử dụng bộ giải mã FCN-8s bao gồm
hai lớp tích chập 3x3 và một lớp lấy mẫu song tuyến (bilinear upsampling) để chuyển đổi bản đồ đặctrưng thành nhãn logic trên từng điểm ảnh (nhãn ngữ nghĩa)
Kết luận RTNet là phương pháp giải quyết bài toán phân đoạn ngữ nghĩa các bộ phận trên
khuôn mặt hiệu quả Ra đời năm 2021, phương pháp này đã giải quyết được một số vấn đề mà các công trình trước gặp phải bằng việc đề xuất một mô hình mới Cho đến hiện tại, đây vẫn là phương
pháp đạt kết quả cao nhất trên tập iBugMask và có thời gian chạy trong mức cho phép (27.3 ms)
2.4.2.2 Cách tiếp cận dựa trên bài toán phát hiện mốc khuôn mặt - Facial Landmark
Detection
Phát hiện mốc trên khuôn mặt trên khuôn mặt là nhiệm vụ phát hiện các mốc chính trên khuôn mặt
và theo đõi chúng Những điểm chính là những điểm nổi trội mô tả vị trí duy nhất của một bộ phan
trên khuôn mặt như góc mắt hoặc điểm nội suy kết nối các điểm vượt trội đó xung quanh các thành
Trang 37phần trên khuôn mặt và đường viền khuôn mặt Hình nêu ví dụ cho trường hợp phát hiện mốc
khuôn mặt với 68 điểm
*7 *11
i *10
j xe
Hình 2.16: 68 tọa độ mốc trên khuôn mặt từ tập dữ liệu iBUG 300-W
Tuy nhiên với bài toán phát hiện mốc khuôn mặt bình thường không thể nào giải quyết được vấn
đề của chúng tôi Bởi với những bài toán có khuôn mặt bị che khuất, phát hiện điểm mốc trên khuôn
mặt sẽ đánh dấu sai vị trí của các mốc khuôn mặt- vùng bị che khuất Bên cạnh đó, nó không cho
phép ta phân biệt một điểm có thể bị che khuất hay không Phát triển dựa trên bài toán này, pháthiện điểm mốc khuôn mặt và ước tính che khuất có thể giúp chúng tôi giải quyết vấn đề đó bằng
cách trả về kết quả bao gồm một tập hợp các điểm mốc trên khuôn mặt và phân loại điểm đó thuộc
lớp bị che khuất hay không che khuất Hiện tại đã có nhiều phương pháp giải quyết bài toán trên
như HyperEace |45|, LUVLi [25], Robust Cascaded Pose Regression BÌ Occluded Stacked Hourglass
, Trong phan này, chúng tôi sé di tim hiểu hai phương pháp là LUVLi va Hierarchical Part
Model [10].
Trước tiên, chúng tôi sẽ di tìm hiểu phương pháp Hierarchical Part Model
Động lực Các mô hình trước đây sử dụng chênh lệch điểm số giữa các bộ phận trên khuôn mặtvới nền xung quanh hoặc thiết lập ngưỡng cố định để xử lí vấn đề che khuất trên khuôn mặt Tuynhiên việc đặt các ngưỡng như vậy gặp rất nhiều khó khăn vì khó có thể phân biệt giữa các bộ phậnhiện diện nhưng khó có thể phát hiện chỉ vì do ánh sáng với những bộ phận thật sự bị che khuất saumột vật thể khác Thế nên, Hierarchical Part Model được xây dựng như một mô hình bộ phận phân
cấp hiệu quả mã hóa các nguyên tắc này nhằm xác định và phát hiện khuôn mặt bị che khuất
Kiến trúc Hình mô tả cấu trúc mô hình Hierarchical Part Model Mô hình có hai lớp:
khuôn mặt bao gồm một tập hợp các bộ phận (mũi, mắt, môi), mỗi bộ phận lần lượt bao gồm một
Trang 38số điểm mốc chỉ rõ các đặc điểm cạnh cục bộ (local edge feature) tạo nên bộ phận đó Các mốc được
kết nối với các nút cha băng cấu trúc liên kết hình sao trong khi các kết nối giữa các phần tạo thành
hình cây Ngoài vị trí, mỗi bộ phận có một số các trạng thái hình dạng rời rạc (tương ứng với các
hình dạng hoặc biểu cảm khuôn mặt khác nhau) và trạng thái che khuất (tương ứng với các kiểu hiển
thị khác nhau).
Kết luận Đây là một trong số những mô hình có khả năng giải quyết bài toán phát hiện mốc
trên khuôn mặt bị che khuất Mô hình đã đạt hiệu quả nhất định và được đánh giá qua các tập dữ
liệu như HELEN68, COFW29, COFW68, đem đến hướng tiếp cận mới cho sự phát triển của các mô
hình sau này.
Bên cạnh Hierarchical Part Model, một phương pháp cũng nổi trội cho bài toán này là LUVLi
Động lực Hầu hết các phương pháp nhận diện mốc khuôn mặt trước đó đều chỉ đơn giản xuất
ra vị trí các mốc được dự đoán mà không đánh giá được liệu độ tin cậy của các mốc vị trí này là bao
nhiêu Điều này đánh được quan tâm, vì đây là bước xử lí quan trọng trong nhiều ứng dụng về an
toàn, bao gồm hệ thống hỗ trợ lái xe, giám sát tài xế lái xe, Để giải quyết nhu cầu này, LUVi ra đờinhằm ước tính các vị trí mốc trên khuôn mặt và một phân bố sác xuất biểu thị độ không tin cậy của
từng vị trí ước tính.
Kiến trúc Hình [2.18] cho chúng ta cái nhìn toàn diện về kiến trúc mô hình LUVLi Đầu vào là
một anh RGB đi qua kiến trúc DU-Net (58) Trong mỗi U-Net được thêm ba thành phần bổ sung
phân nhánh Thành phần đầu tiên là công cụ ước tính trung bình, mục đích để tính toán vị trí ước
tính của mỗi mốc dưới dạng trung bình không gian có trọng số của các phần tử dương trong bản đồ
nhiệt tương ứng Các thành phần mới thứ hai và thứ ba là Cholesky Estimator Network (CEN) andthe Visibility Estimator Network (VEN), xuất hiện ở nút thắt của mỗi U-Net Trọng số CEN và VEN
được chia sẻ trên tất cả các U-Net Trong đó, CEN có nhiệm vụ ước tính trọng số Cholesky của ma
trận hiệp phương sai cho mỗi vị trí mốc Còn VEN ước tính xác suất hiển thị của từng mốc trongảnh, 1 nghĩa là có thể nhìn thấy va 0 nghĩa là không nhìn thấy Đối với mỗi U-Net i và mỗi mốc 7,
ước tính vị trí của mốc sẽ là /;;, ma trận hiệp phương sai ước tính là Ð;; va khả năng hiển thị ước
Trang 39tụ = -(I = 0;) In(1 = 0g) — Uj In(®;;)
~ vj In(P(pj|Hij, Biz)
Hình 2.18: Kiến trúc mô hình LUVLi|5|
thống Dau ra cuối cùng là một véc-tơ N,x3 chiều Trong đó, N, là số lượng điểm mốc trên gươngmặt có giá trị là 68, 3 chiều bao gồm vị trí của mốc, xác suất thể hiện độ không tin cậy của dự đoán
và khả năng hiển thị của điểm mốc, dự đoán liệu mỗi điểm mốc có bị che khuất do tư thế đầu hay
không.
Két luận Kết quả của mô hình được thể hiện trong Hình [2.19] mieu tả kết quả that của mốc là
màu xanh lá cây, mốc được dự đoán là màu vàng Sự không chắc chắn của vị trí ước tính được thể
hiện bằng màu xanh lam Ta nhận thấy các mốc bị che khuất có xu hướng là giá trị độ không chắc
chắn lớn hơn
LUVLi là mô hình ước tính vị trí điểm mốc trên khuôn mặt hiệu quả Ngoài ra mô hình này
còn cung cấp độ không tin cậy của mốc trên khuôn mặt và độ hiển thị của vị trí mốc, hiệu quả cho
việc ước lượng điểm mốc trên khuôn mặt bị che khuất Bên cạnh đó mô hình cũng cho kết quả thực
nghiệm với thời gian nhanh (17ms trên 12 GB GeForce GTX Titan-X GPU).
Trang 402.4.3 Độ đo cường độ mở của đôi mắt
Đôi mắt của một người được coi là cửa số tâm hồn Thông qua đôi mắt ta có thể thấy được tâm tư,
tình cảm của một người Bởi thế, đôi mắt được xem là một thành phần cực kì quan trọng Không chỉ
đánh giá trạng thái mà còn là sự minh mẫn, thông minh, nhanh nhẹn Bởi sự cần thiết đó, chúng tôi cho rằng một khuôn mặt đẹp là một khuôn mặt có đôi mắt mở Một khoảnh khắc đẹp là một khoảnh
khắc mà mọi người trong khung hình đều mở mắt Để có thể thực hiện mục tiêu này, chúng tôi đitìm hiểu các phương pháp cho phép truy cập vào các điểm mô tả trên mắt Một phương pháp chủ
yếu được sử dụng để có thể giải quyết bài toán này là phát hiện mốc khuôn trên khuôn mặt - facial
landmark detection Phần này chúng tôi đã đề cập ở mục trước về cách tiếp cận dựa trên bài toánphát hiện mốc khuôn mặt cho mô-đun appearance score
2.5 M6-dun tái tạo khuôn mặt- Face Rerendering
Sau mô-đun đánh giá độ đẹp của khuôn mặt, chúng tôi sẽ có một khung hình chính và những khuôn
mặt đẹp nhất của từng người Đây cũng chính là đầu vào của mô-đun chỉnh sửa khuôn mặt Mục
tiêu của mô-đun này là thay đổi đặc tính, biểu cảm khuôn mặt của người P; trong khung hình chínhFrey bằng đặc tinh, biểu cảm hạnh phúc nhất của chính người đó trong khung hình Frest(i) Để
giải quyết mục tiêu này, chúng tôi đi tìm hiểu và phát hiện phương pháp hoán đổi gương mặt - face
swapping có thể đạt được những điều trên
Source Destination Result
Hình 2.20: Một số ví dụ về bài toán hoán đổi khuôn mặt
Hoán đổi khuôn mặt là bài toán giúp chuyển đổi tính trạng của khuôn mặt nguồn thành khuônmặt đích trong khi vẫn giữ nguyên các thuộc tính như biểu cảm, tư thế, ánh sáng, của khuôn mặt
mục tiêu Bài toán này có rất nhiều ứng dụng trong giải trí, tương tác giữa người với máy tính và
một số ứng dụng độc hại như DeepFake đe dọa đến chính trị, kinh tế Trước đây, hoán đổi gương