Chương 1: GIỚI THIỆU VÀ MÔ TẢ DE TÀI - Chương 2: CƠ SỞ LÝ THUYET - Chương 3: THỰC NGHIỆM VÀ ĐÁNH GIÁ - Chương 4: XÂY DUNG VÀ TRIÊN KHAI HỆ THONG - Chương 5: KET LUẬN VA HUONG PHAT TRIEN Chương 2. CƠ SỞ LÝ THUYET Chương này đề cập đến các lý thuyết được chúng tôi sử dụng trong bài toán. Dưới đây là quy trình biến đồi độ tuổi khuôn mặt được sử dụng trong đề tài “Ap dung tong hợp chuyền đổi độ tuổi khuôn mặt vào công nghệ làm phim”. Chuyên đôi độ Video đầu vào.
khuôn mặt tuôi khuôn mặt Ghép các ảnh Video kết quả (1) (2) | Hoan đỗi đã được hoán | khuôn mặt đôi khuôn mặt Gy lại Trích xuất ảnh khuôn mặt trong video Hình 2.1: Quy trình biến đổi độ tuổi khuôn mặt nhân vật trong video Từ video đầu vào, chúng tôi sẽ sử dụng mé hình nhận điện khuôn mặt dé thực hiện nhận diện khuôn mặt trong video. Sau đó, sử dụng mé hình chuyển đổi độ tuổi khuôn mat chuyển đôi độ tuôi cho khuôn mặt được nhận diện trong video theo độ tuổi người dùng mong muốn. Tiếp đến, chúng tôi sử dụng rô hình hoán đổi khuôn mặt để thay thế khuôn mặt đã được chuyển đổi độ tuổi vào khuôn mặt nhân vật trong từng hình anh (frame) đã được trích xuất từ video. Và cuối cùng, ghép các ảnh (frame) đã được hoán đổi lại, chúng ta sẽ có được video kết quả.
Từ quy trình trên, nhóm đã xác định các lý thuyết cần thiết dé nghiên cứu trong quá trình này. Các lý thuyết đó bao gồm: — Lý thuyết về sự lão hóa của khuôn mặt con người. — Lý thuyết về deepfake và tổng hợp tuôi (Aging Synthesis). — Phương pháp nhận diện khuôn mặt.
— Các phương pháp chuyền đổi độ tuổi khuôn mặt. — Các phương pháp hoán đổi khuôn mặt người trong video. Tổng quan về sự lão hóa khuôn mặt của con người Dựa vào những nghiên cứu trước [10] [16], người ta đã chia quá trình lão hóa khuôn mặt con người thành hai giai đoạn: Giai đoạn đầu tiên mô tả sự phát triển từ thời thơ ấu đến tuổi trưởng thành, được đặc trưng bởi sự phát triển của sọ và mặt. Trong giai đoạn nay, cấu trúc khuôn mặt dần thay đổi, các đặc điểm như kích thước và tỷ lệ các thành phần trên khuôn mặt (như mắt, mũi, miệng) được hình thành và phát triển [10].
Giai đoạn thứ hai chủ yếu bao gồm những thay đổi về kết cấu của như mắt, mũi miệng, tóc,. xảy ra trong quá trình chuyên đổi từ tuôi trưởng thành sang tuôi lớn hơn. Trong giai đoạn nay, các yếu tố như sự mất độ co din của da, mat dần các tế bào đa và cấu trúc tóc, sự thay đôi về màu sắc và độ đàn hồi của da dẫn đến sự xuất hiện của các nếp nhăn va dấu hiệu lão hóa khác trên khuôn mặt. Những thay đôi này tạo ra sự khác biệt rõ rệt giữa khuôn mặt của một người trẻ và một người lớn tuổi.
Một ví dụ hình ảnh minh họa quá trình lão hóa khuôn mặt được sử dụng là hình ảnh của nhà vật lý học Albert Einstein. Dé hiểu cách máy tính có thé thực hiện quá trình lão hóa khuôn mặt theo lý thuyết về sự lão hóa, chúng tôi đã nghiên cứu các kỹ thuật liên quan đến Tổng hợp tuổi (Age Synthesis). Tổng hợp tuổi thuộc vào loại Tổng hợp hình ảnh va video (Image & Video Synthesis) của Deepfake. Thuật ngữ "Deepfake" kết hợp từ "deep learning" (học sâu) và "fake" (gia mạo).
Các thuật toán Deepfake sử dụng học sâu dé tạo ra hình anh va video gia mạo mà khó phân biệt với hình anh và video thật [26]. Điều này đã mở ra những tiềm năng ứng dụng lớn trong việc thực hiện quá trình lão hóa khuôn mặt trên máy tính. | Deepfake Media | ] Image & Video Audio 1: Ỳ | ¥ | ` * Replacement Editing ][ Reenactment | | Voice Swapping | | Text to speech | [ Sựa Face | [ Head | Lip Syne P Morphing Puppetry sii Pose Gaze Expression Reenactment P Hình 2.3: Phân loại các thuật toán Deepfake [19] Hiện nay, có rất nhiều nghiên cứu liên quan đến tổng hợp tuổi vì nó mang lại nhiều tiềm năng và ứng dụng đa dạng. Đặc biệt, trong những năm gần đây, nghiên cứu về việc chuyên đổi độ tuôi khuôn mặt đã thu hút sự quan tâm đặc biệt.
Từ những nghiên cứu này, chúng tôi đã xác định và quyết tìm hiéu kỹ thuật dé áp dụng vào quá trình chuyền đổi độ tuôi khuôn mặt trong nghiên cứu của mình. Các phương pháp nhận diện khuôn mặt Hiện nay, các phương pháp nhận diện khuôn mặt rất đa dạng, mỗi phương pháp đều có ưu điểm và hạn chế riêng. Một số phương pháp nhận diện khuôn mặt nồi bật được chúng tôi xem xét trong đề tài này là: 2. Thuật toán Haar Cascade Haar Cascade là một phương pháp được sử dụng trong bài toán nhận dạng đối tượng trong ảnh hoặc video.
Phương pháp này được nhà toán học người Áo — Paul Viola và nhà khoa hoc máy tính người Mỹ — Michael Jones giới thiệu vào năm 2001 [23]. Haar Cascade xử lý hình ảnh và phát hiện khuôn mặt băng cách sử dụng các đặc trưng hình chữ nhật như hình dưới đây. Các đặc trưng hình chữ nhật tương tự như nhân được sử dụng dé phát hiện các điểm đặc trưng khác nhau của khuôn mặt như mắt và các mốc [23] như trong hình 2. "m Ĩ (a) Edge Features (b) Line Features (c) Four-rectangle features Hình 2.4: Các hình chữ nhật trong Haar Cascade [11] Các đặc trưng hình chữ nhật được chạy lần lượt trên hình ảnh và tổng số pIxel nằm trong phan màu trắng được trừ cho tổng số pixel nằm trong phan màu đen.
Sử dụng các đặc trưng hình chữ nhật này trên một hình ảnh, chúng ta có thể tạo ra hàng nghìn điểm đặc trưng cho hình ảnh. Tuy nhiên, việc tính toán tổng số pixel trong các vùng trang va đen trong toàn bộ ảnh có thể là một hoạt động tốn kém, đặc biệt là đối với các ảnh lớn [23]. Haar Cascade hoạt động bang cách su dụng một loạt các bộ phân loại dé nhan dạng đối tượng trong anh. Quá trình này bao gồm các bước chính sau: =.
2 it subwindow Frame image Hình 2.5: Quá trình hoạt động cua Haar Cascade [23], [11] Bước 1: Hình ảnh (đã được gửi đến bộ phân loại) được chia thành các phần nhỏ hoặc các cửa số con như trong hình minh họa. Bước 2: Đặt bộ dò theo cách xếp tầng trong đó mỗi bộ phát hiện sự kết hợp của các loại đặc trưng khác nhau từ các hình ảnh (ví dụ: đường thăng, cạnh, hình tròn, 10 hình vuông) được truyền qua. Giả sử khi việc trích xuất đối tượng địa lý được thực hiện, mỗi phần phụ được gan một giá tri tin cậy. Bước 3: Hình ảnh (hoặc hình ảnh phụ) có độ tin cậy cao nhất được phát hiện dưới dạng khuôn mặt và được gửi đến bộ tích lũy trong khi phần còn lại bị từ chối.
Do đó, Cascade tìm nạp khung hình / hình anh tiếp theo nếu còn lại và bắt đầu lại quá trình [11]. Thuật toán HOG HOG (Histogram of Oriented Gradients) là một thuật toán phân tích hình anh được sử dụng rộng rãi trong lĩnh vực nhận diện đối tượng và nhận dạng. Nó được giới thiệu bởi nhà khoa học máy tính người Anh, Dalal và Triggs, vào năm 2005 [20]. Thuật toán này sẽ tạo ra các bộ mô tả đặc trưng (feature descriptor) nhằm mục đích phát hiện vật thé (object detection).
Từ một bức ảnh, ta sẽ lay ra hai ma trận quan trọng giúp lưu thông tin anh đó là độ lớn gradient (gradient magnitute) và phương của gradient (gradient orientation). Bằng cách kết hợp hai thông tin này vào một biéu đồ phân phối histogram, trong đó độ lớn gradient được đếm theo các nhóm bins của phương gradient. Cuối cùng ta sẽ thu được vecto đặc trưng HOG đại diện cho histogram. Sơ khai là vậy, trên thực tế thuật toán còn hoạt động phức tạp hơn khi véc tơ HOG sẽ được tính trên từng vùng cụ bộ như mạng CNN và sau đó là phép chuân hóa cụ bộ đề đồng nhất độ đo.
Cuối cùng vectơ HOG tổng hợp từ các véc tơ trên vùng cục bộ [20]. Single Shot Detector Single Shot Detector (SSD) là một thuật toán nhận diện đối tượng được sử dụng rộng rãi trong lĩnh vực thị giác máy tính và nhận dạng đối tượng. Nó được giới thiệu bởi Wei Liu và các đồng nghiệp vào năm 2016 [27]. Nó được sử dụng dé xác định và phân loại các điểm đặc trưng trên khuôn mặt, chăng hạn như mắt, mũi, miệng và cằm.
Mục tiêu của SSD là nhận diện chính xác các điểm đặc trưng này trên ảnh hoặc video khuôn mặt trong thời gian thực và sử dụng chúng cho các ứng dụng khác nhau như nhận dạng khuôn mặt, phân tích biểu cảm khuôn mặt và ước lượng hướng đầu [14]. 11 SSD được coi là một thuật toán "single shot", có nghĩa là nó chỉ cần một lần chạy trên một ảnh dé phát hiện các đối tượng, khác với các phương pháp trước đây yêu cầu nhiều lần chạy hoặc khung trượt (sliding window) liên tục dé tìm kiếm. Thuật toán SSD sử dụng một mạng neural convolutional (CNN) dé tạo ra một tập hợp các hình chữ nhật (bounding boxes) xung quanh các đối tượng có thể xuất hiện trong ảnh. Sau đó, thông qua các kênh phân loại, SSD xác định loại đối tượng trong từng hình chữ nhật và đồng thời điều chỉnh vị trí của các bounding boxes để chính xác phù hợp với đối tượng.
SSD được sử dụng rộng rãi trong các ứng dụng nhận dạng và phát hiện đối tượng trong thời gian thực, như trong hệ thống giám sát an ninh, xe tự lái và các ứng dụng thị giác máy tính khác [14]. Multi-task Cascaded Convolutional Networks (MTCNN) Multi-task Cascaded Convolutional Networks (MTCNN) là một mô hình mang no-ron được sử dung trong bài toán nhận dang khuôn mặt va phat hiện các điểm mốc trên khuôn mặt như mắt, mũi và miệng. MTCNN được giới thiệu bởi Zhang Kaipeng và các đồng nghiệp của vào năm 2016 [15]. Trước tiên, bằng cách sử dụng phép resize ảnh, mạng MTCNN tạo ra một loạt các ban copy từ ảnh gốc với kích cỡ khác nhau, từ to đến nhỏ, tạo thành 1 Image Pyramid.
Sau đó, mạng MTCNN giúp chúng ta nhận dạng khuôn mặt va phát hiện các điểm mốc với 3 lớp mạng khác biệt là: P-Net, R-Net và O-Net [15]. Mạng nơ-ron phát hiện khuôn mặt (P-Net): Mạng này được sử dụng dé phat hiện các vùng khuôn mặt tiềm năng trong ảnh. Nó sử dụng các tầng tích chập để tạo ra các bản đồ đặc trưng và đưa ra dự đoán về vị trí của các khuôn mặt trong ảnh [15].