MẪU ĐỒ ÁN KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG VIỆT HÀN BÁO CÁO ĐỒ ÁN CƠ SỞ 5 ĐỀ TÀI Xây dựng ứng dụng xử lý ảnh Deepfake LỜI MỞ ĐẦU Đào tạo bậc đại[.]
Trang 1ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
Trang 2LỜI MỞ ĐẦU
Đào tạo bậc đại học hệ kỹ sư đòi hỏi sinh viên ngoài việc thành thạo kỹ nănglập trình thì việc hiểu rõ bản chất của các giao thức, ngôn ngữ lập trình và môitrường… là rất quan trọng Chính vì vậy ngoài việc giảng dạy về ngôn ngữ lập trìnhcùng giải thuật thì các Thầy cô giảng viên tại trường luôn luôn hướng sinh viên đếncái cốt lõi nhất để sinh viên hiểu và nắm rõ được bản chất Chuẩn bị tốt cho việc tốtnghiệp và kiến thức sau này Với hướng đi đó, nhóm chúng em đã chọn đề tài “Xâydựng ứng dụng xử lý ảnh Deepfake”, bằng việc ứng dụng những gì đã học trongmôn xử lý ảnh Tuy đề tài không mới nhưng việc nắm rõ được bản chất và thànhthạo khả năng lập trình xử lý ảnh đòi hỏi thời gian và kiến thức phải thật vững chắc.Với việc đã từng học về các mô hình hàm lọc ảnh, quá trình biến đổi phân tíchcác chi tiết, nhóm chúng em đã từng bước hoàn thành đề tài đã chọn, tuy vậy vẫncòn nhiều thiếu sót cần hoàn thiện và tiếp tục phát triển
Nhóm em đã thực hiện đề tài này bằng cách sự dụng các công cụ rất phổ biếntrong lĩnh vực xây dựng ứng dụng xử lý ảnh có thể kể ra một vài thứ như: PyCharmIDE, Thư viện OpenCV, ngôn ngữ Python Cùng với đó nhóm em cũng áp dụng cáckiến thức cần thiết của môn xử lý ảnh vào để thực hiện đề tài Nhóm em đã xâydựng được các chức năng cơ bản cho ứng dụng như: Phát hiện được khuôn mặt, xử
lý các điểm đặc trưng trên khuôn mặt, hoán đổi khuôn mặt Cuối cùng nhóm em xingửi lời cảm ơn chân thành nhất đến giảng viên hướng dẫn là ThS Trần Đình Sơncũng như các Thầy cô trong Trường đã tạo điều kiện giúp đỡ nhóm em trong thờigian qua để có thể hoàn thành tốt được đề tài của mình
Trang 3MỤC LỤC
CHƯƠNG 1 CƠ SỞ LÝ THUYẾT 5
1.1 TỔNG QUAN VỀ NGÔN NGỮ PYTHON 5
1.1.1 Python là gì? 5
1.1.2 Ứng dụng của Python 5
1.1.3 Những đặc điểm cơ bản của Python 6
1.2 TỔNG QUAN VỀ XỬ LÝ ẢNH 7
1.2.1 Xử lý ảnh là gì? 7
1.2.2 Một số khái niệm cơ bản 9
1.3 TỔNG QUAN VỀ MEDIAPIPE 13
1.3.1 Mediapipe là gì? 13
1.3.2 Mediapipe face landmark 14
1.3.3 Mediapipe face detection 15
CHƯƠNG 2 CÁC KỸ THUẬT XỬ LÝ ẢNH VÀ DEEPFAKE 16
2.1 CẢI THIỆN ẢNH VÀ NÂNG CAO CHẤT LƯỢNG ẢNH 16
2.1.1 Khái niệm 16
2.1.2 Xử lý điểm ảnh 17
2.2 TÁCH NHIỄU VÀ PHÂN NGƯỠNG 17
2.3 KHÔI PHỤC ẢNH 19
2.4 XỬ LÝ ẢNH MÀU 19
2.4.1 Cơ sở về màu 19
2.4.2 Các mô hình màu 20
2.5 PHƯƠNG PHÁP PHÁT HIỆN BIÊN 21
2.5.1 Các kỹ thuật phát hiện biên ảnh 21
2.6 TÌM HIỂU CÔNG NGHỆ DEEPFAKE 22
2.6.1 Khái niệm 22
2.6.2 Những mối lo về công nghệ deepfake 23
Trang 42.6.3 Những lợi ích mà Deepfake mang lại 23
CHƯƠNG 3 TRIỂN KHAI XÂY DỰNG ỨNG DỤNG 24
3.1 MÔ TẢ BÀI TOÁN 24
3.2 THIẾT KẾ CÁC CHỨC NĂNG NHẬN DIỆN VÀ XỬ LÝ 24
3.2.1 Lấy dữ liệu đầu vào 24
3.2.2 Tìm Landmark points 26
3.2.3 Triangulation source and destination 26
3.2.4 Extract và warp triangles 27
3.2.5 Liên kết các tam giác đã xử lý 28
3.2.6 Thay thế khuôn mặt đã xử lý với destination 29
3.2.7 Seamless Cloning 30
3.3 KẾT QUẢ ĐẠT ĐƯỢC 30
3.3.1 Giao diện chính 30
3.3.2 Giao diện chọn ảnh 31
3.3.3 Giao diện snipping cut 31
3.3.4 Giao diện hoàn thiện ảnh 32
KẾT LUẬN 33 1 KẾT QUẢ ĐẠT ĐƯỢC 33
2 HẠN CHẾ 33
3 HƯỚNG PHÁT TRIỂN 33
Tài liệu tham khảo 34
Trang 5DANH MỤC HÌNH ẢNH
HÌNH 1: QUÁ TRÌNH XỬ LÝ ẢNH 7
HÌNH 2: SƠ ĐỒ CÁC BƯỚC CƠ BẢN 8
HÌNH 3: HÌNH ẢNH MÌNH HỌA 9
HÌNH 4: BIỂU DIỄN TRÊN TRỤC TỌA ĐỘ 10
HÌNH 5: BIỂU DIỄN TRÊN MA TRẬN ẢNH 11
HÌNH 6: QUAN HỆ GIỮA CÁC ĐIỂM ẢNH 12
HÌNH 7: MÔ PHỎNG THỰC TẾ 15
HÌNH 8: MÔ PHỎNG THỰC TẾ 16
HÌNH 9: TÁCH NHIỄU VÀ PHÂN NGƯỠNG 17
HÌNH 10: ĐỒ THỊ RGB (RED GREEN BLUE) 20
HÌNH 11: HÌNH GỐC 24 HÌNH 12: HÌNH MUỐN SỬA 24
HÌNH 13: QUÉT CÁC ĐIỂM TRÊN KHUÔN MẶT 25
HÌNH 14: QUÁ TRÌNH XỬ LÝ 25
HÌNH 15: QUÁ TRÌNH XỬ LÝ 26
HÌNH 16: PHÂN TÍCH CHI TIẾT ĐIỂM ẢNH 27
HÌNH 17: SAU KHI ĐÃ LẤY MẪU 28
HÌNH 18: BƯỚC CHUẨN BỊ GHÉP ẢNH 28
HÌNH 19: ẢNH ĐÃ HOÀN THIỆN 29
HÌNH 20: GIAO DIỆN CHÍNH CỦA ỨNG DỤNG 29
HÌNH 21: GIAO DIỆN CHỌN ẢNH CẦN XỬ LÝ 30
HÌNH 22: GIAO DIỆN SNIPPING CUT 30
HÌNH 23: GIAO DIỆN KHI ĐÃ HOÀN THÀNH 31
Trang 6Chương 1 Cơ sở lý thuyết
1.1 Tổng quan về ngôn ngữ Python
Python là gì?
Python là ngôn ngữ lập trình hướng đối tượng, cấp cao, mạnh mẽ, được tạo rabởi Guido van Rossum Nó dễ dàng để tìm hiểu và đang nổi lên như một trongnhững ngôn ngữ lập trình nhập môn tốt nhất cho người lần đầu tiếp xúc với ngônngữ lập trình
Python hoàn toàn tạo kiểu động và sử dụng cơ chế cấp phát bộ nhớ tự động.Python có cấu trúc dữ liệu cấp cao mạnh mẽ và cách tiếp cận đơn giản nhưng hiệuquả đối với lập trình hướng đối tượng Cú pháp lệnh của Python là điểm cộng vôcùng lớn vì sự rõ ràng, dễ hiểu và cách gõ linh động làm cho nó nhanh chóng trởthành một ngôn ngữ lý tưởng để viết script và phát triển ứng dụng trong nhiều lĩnhvực, ở hầu hết các nền tảng
Ứng dụng của Python
Ngày nay Python được sử dụng với các mục đích sau:
Lập trình ứng dụng web: Bạn có thể tạo web app có khả năng mở rộng(scalable) được bằng cách sử dụng framework và CMS (Hệ thống quản trị nội dung)được tích hợp trong Python
Khoa học và tính toán: Có nhiều thư viện trong Python cho khoa học và tínhtoán số liệu, như SciPy và NumPy, được sử dụng cho những mục đích chung chungtrong tính toán Và, có những thư viện cụ thể như: EarthPy cho khoa học trái đất,AstroPy cho Thiên văn học, Ngoài ra, Python còn được sử dụng nhiều trongmachine learning, khai thác dữ liệu và deep learning
Tạo nguyên mẫu phần mềm: Python chậm hơn khi so sánh với các ngôn ngữđược biên dịch như C++ và Java Nó có thể không phải là lựa chọn tốt nếu nguồn lực
bị giới hạn và yêu cầu về hiệu quả là bắt buộc
Trang 7Ngôn ngữ tốt để dạy lập trình: Python được nhiều công ty, trường học sử dụng
để dạy lập trình cho trẻ em và những người mới lần đầu học lập trình Bên cạnhnhững tính năng và khả năng tuyệt vời thì cú pháp đơn giản và dễ sử dụng của nó là
lý do chính cho việc này
Những đặc điểm cơ bản của Python
Ngôn ngữ lập trình đơn giản, dễ học: Python có cú pháp rất đơn giản, rõ ràng
Nó dễ đọc và viết hơn rất nhiều khi so sánh với những ngôn ngữ lập trình khác nhưC++, Java, C# Python làm cho việc lập trình trở nên thú vị, cho phép bạn tập trungvào những giải pháp chứ không phải cú pháp
Miễn phí, mã nguồn mở: Bạn có thể tự do sử dụng và phân phối Python, thậmchí là dùng nó cho mục đích thương mại Vì là mã nguồn mở, bạn không những cóthể sử dụng các phần mềm, chương trình được viết trong Python mà còn có thểthay đổi mã nguồn của nó Python có một cộng đồng rộng lớn, không ngừng cảithiện nó mỗi lần cập nhật
Khả năng di chuyển: Các chương trình Python có thể di chuyển từ nền tảng nàysang nền tảng khác và chạy nó mà không có bất kỳ thay đổi nào Nó chạy liền mạchtrên hầu hết tất cả các nền tảng như Windows, macOS, Linux
Khả năng mở rộng và có thể nhúng: Giả sử một ứng dụng đòi hỏi sự phức tạprất lớn, bạn có thể dễ dàng kết hợp các phần code bằng C, C++ và những ngôn ngữkhác (có thể gọi được từ C) vào code Python Điều này sẽ cung cấp cho ứng dụngcủa bạn những tính năng tốt hơn cũng như khả năng scripting mà những ngôn ngữlập trình khác khó có thể làm được
Ngôn ngữ thông dịch cấp cao: Không giống như C/C++, với Python, bạn khôngphải lo lắng những nhiệm vụ khó khăn như quản lý bộ nhớ, dọn dẹp những dữ liệu
vô nghĩa, Khi chạy code Python, nó sẽ tự động chuyển đổi code sang ngôn ngữmáy tính có thể hiểu Bạn không cần lo lắng về bất kỳ hoạt động ở cấp thấp nào.Thư viện tiêu chuẩn lớn để giải quyết những tác vụ phổ biến: Python có một sốlượng lớn thư viện tiêu chuẩn giúp cho công việc lập trình của bạn trở nên dễ thở
Trang 8Quá trình xử lý ảnh được xem như là quá trình thao tác ảnh đầu vào nhằm cho
ra kết quả mong muốn Kết quả đầu ra của một quá trình xử lý ảnh có thể là mộtảnh “tốt hơn” hoặc một kết luận
Hình 1: Quá trình xử lý ảnh
Xử lý ảnh được chia theo 3 loại khác nhau:
Mức thấp: Đầu vào(input) là một hình ảnh, và đầu ra(output) là mộthình ảnh, các kỹ thuật: loại bỏ nhiễu, làm sắc nét ảnh
Mức trung bình: Đầu vào(input) là một hình ảnh và đầu ra(output) làmột thuộc tính, các kỹ thuật: Nhận dạng đối tượng, phân đoạn ảnh
Mức cao: Đầu vào(input) là một hình ảnh và đầu ra(output) là khả nănghiểu được hỉnh ảnh của máy, các kỹ thuật: hiểu cảnh vật, và nhận biếtchuyển động,
Các ứng dụng của xử lý ảnh trong đời sống:
Ứng dụng trong y học
Hệ thống thông tin địa lý (Geographic Information Systems -GIS)
Thiên văn – khí tượng – thủy văn
Trang 9 Kiểm tra hàng hóa sản xuất.
Các hiệu ứng nghệ thuật (movie, edit picture, )
Các bước cơ bản trong xử lý ảnh
Hình 2: Sơ đồ các bước cơ bản
Thu nhận ảnh (Image acquisition): Ảnh có thể nhận qua camera màuhoặc đen trắng Thường ảnh nhận qua camera là ảnh tương tự, cũng cóloại camera số hòa là loại Photodiot tạo cường độ sáng tại mỗi điểmảnh Camera thường dùng là loại quét dòng, ảnh tạo ra có dạng haichiều Chất lượng một ảnh thu nhận được phụ thuộc vào thiết bị thu,môi trường (ánh sáng, phong cảnh)
Tiền xử lý (Image processing): Sau khi thu nhận ảnh, ảnh có thể bị nhiễu,hoặc có độ tương phản thấp nên cần đưa vào bộ tiền xử lý ảnh để nângcao chất lượng Chức năng chính của bộ tiền xử lý là lọc nhiễu và năngcao độ tương phản làm cho ảnh rõ hơn và nét hơn
Biển diễn ảnh (Image representation): Đầu ra của ảnh phân đoạn chứacác điểm ảnh của vùng ảnh (ảnh đã phân đoạn) cộng với mã liên kết vớicác vùng lân cận Việc biến đổi các số liệu thành dạng thích hợp là cầnthiết cho xử lý tiếp theo bằng máy tính Việc chọn các tính chất để thểhiện gọi là trích chọn đặc trưng (Feature selection) gắn với việc tách cácđặc tính của ảnh dưới dạng các thông tin định lượng hoặc làm cơ sở đểphân biệt lớp đối tượng này với các đối tượng khác trong phạm vi ảnhnhận được
Trang 10 Nhận dạng và nội suy ảnh: Là quá trình xác định ảnh Quá trình nàythường thu được bằng cách so sánh với mẫu chuẩn đã được học và nộisuy, phán đoán theo ý nghĩa dựa trên cơ sở nhận dạng Có nhiều cáchphân loại ảnh khác nhau.
Cơ sở tri thức: Ảnh là một đối tượng khá phức tạp về đường nét, độsáng tối, dung lượng điểm ảnh, môi trường để thu ảnh phong phú kéotheo nhiễu Trong nhiều khâu xử lý và phân tích ảnh ngoài việc đơn giảnhóa các phương pháp toán học đảm bảo tiện lợi cho xử lý, người tamong muốn bắt chước quy trình tiếp nhận và xử lý ảnh theo cách conngười nhận thức
Một số khái niệm cơ bản
1.2.1.1 Ảnh số và điểm ảnh
Ảnh sổ là một hình ảnh có thể được định nghĩa là hàm hai chiều f(x,y), trong đó
x và y là tọa độ không gian (mặt phẳng) và biên độ của f tại bất kỳ cặp tọa độ (x,y)nào được gọi là cường độ hoặc mức độ xám của hình ảnh tại điểm đó Khi x,y và giátrị cường độ của f đều là các đại lượng hữu hạn, rời rạc, chúng ta gọi hình ảnh đó làhình ảnh kỹ thuật số hay ảnh số Ảnh số cũng có thể hiểu một cách đơn giản là sốhóa một hình ảnh và làm cho nó xấp xỉ với một cảnh thực
Trang 11Hình 3: Hình ảnh mình họa
Điểm ảnh hay còn gọi là pixel có trong một bức ảnh, nó có vị trí (x,y) và có độxám l tương ứng Với ảnh màu mỗi điểm ảnh gồm có 3 giá trị tương ứng với độ củacác màu đỏ, xanh lục, xanh dương, viết tắt 3 màu là (RGB)
Hình 4: Biểu diễn trên trục tọa độ
Mức xám của điểm ảnh: là giá trị cường độ sáng của điểm ảnh
Các thang giá trị mức xám : 16, 32, 64, 128, 256 (Mức 256 là mức phổdụng)
Ảnh đen trắng: ảnh có 2 màu đen, trắng với mức xám ở các điểm ảnh cóthể khác nhau
Trang 12 Ảnh nhị phân: ảnh chỉ có 2 mức đen, trắng phân biệt Tức là mỗi điểmảnh của ảnh nhị phân chỉ có thể là 0 hoặc 1.
Ảnh màu:
oHệ RBG: Mỗi điểm ảnh có 03 màu cơ sở (Red, Blue, Green)
oHệ CMY: Mỗi điểm ảnh có 03 màu cơ sở Cyan (lục lam), Magenta(cánh sen), Yellow
Hình 5: Biểu diễn trên ma trận ảnh
1.2.1.2 Độ phân giải của ảnh
Độ phân giải (resolution) của ảnh là mật độ điểm ảnh được ấn định trên mộtảnh số được hiển thị
Theo định nghĩa, khoảng cách giữa các điểm ảnh phải được chọn sao cho mắtngười vẫn thấy được sự liên tục của ảnh Việc lựa chọn khoảng cách thích hợp tạonên một mật độ phân bổ, đó chính là độ phân giải và được phân bố theo trục x vàtrục y trong không gian hai chiều
Trang 13Ví dụ: Độ phân giải của ảnh trên màn hình CGA (Color Graphic Adaptor) là mộtlưới điểm theo chiều ngang của màn hình: 320 điểm chiều dọc * 200 điểm ảnh(320x200) Ta thấy cùng màn hình CGA 12 inch nhưng ta thấy mịn hơn màn hìnhCGA 17 inch độ phân giải 320x200 Lý do là do cùng mật độ phân giải hình ảnhnhưng diện tích màn hình rộng hơn thì độ mịn kém hơn.
1.2.1.3 Mức xám của ảnh
Một điểm ảnh có hai đặc trưng cơ bản là vị trí (x,y) của điểm ảnh và độ xámcủa điểm ảnh đó Mức xám của điểm ảnh được xem như là cường độ sáng của điểmảnh đó được gắn bằng giá trị số tại điểm đó
Các thang giá trị mức xám thông thường: 16, 32, 64, 128, 256 (mức 256 là mộtmức phổ biến, do từ kỹ thuật máy tính dùng 1 byte (8 bit) để biểu diễn mức xám,mức xám dùng 1 byte biểu diễn 28
Ảnh màu là ảnh gồm có 3 cường độ mức sáng tương ứng với 3 màu Red,Green, Blue Thường sử dụng 3 byte để mô tả màu
1.2.1.4 Quan hệ giữa các điểm ảnh
Một ảnh số giả sử được biểu diễn bằng hàm f(x,y) Tập con các điểm ảnh là S,cặp điểm ảnh có quan hệ với nhau ký hiệu là p,q
Các lân cận của điểm ảnh
Giả sử có điểm ảnh p tại toạ độ (x, y) p có 4 điểm lân cận gần nhất theo chiềuđứng và ngang (có thể coi như lân cận 4 hướng chính: Đông, Tây, Nam, Bắc) {(x-1,y); (x, y-1); (x, y+1); (x+1, y)} = N4(p)
Trang 14Hình 6: Quan hệ giữa các điểm ảnh
Các lân cận chéo: Các điểm lân cận chéo NP(p) (Có thể coi lân cận chéo la 4hướng: Đông-Nam, Đông-Bắc, Tây-Nam, Tây-Bắc)
Tập kết hợp: N8(p) = N4(p) + NP(p) là tập hợp 8 lân cận của điểm ảnh p:
Các mối liên kết của điểm ảnh
Các mối liên kết được sử dụng để xác định giới hạn (Boundaries) của đối tượngvật thể hoặc xác định vùng trong một ảnh Một liên kết được đặc trưng bởi tính liền
kề giữa các điểm và mức xám của chúng
Liên kết m (liên kết hỗn hợp): Hai điểm ảnh p và q với các giá trị cường độ sáng
V được nói là liên kết m nếu 1 q thuộc N4(p) hoặc 2 q thuộc NP(p)
Đo khoảng cách giữa các điểm ảnh
Khoảng cách D(p, q) giữa hai điểm ảnh p toạ độ (x, y), q toạ độ (s, t) là hàmkhoảng cách (Distance) hoặc Metric nếu:
1 D(p,q) ≥ 0 (Với D(p,q)=0 nếu và chỉ nếu p=q)
2 D(p,q) = D(q,p)
3 D(p,z) ≤ D(p,q) + D(q,z); z là một điểm ảnh khác
Trang 15Khoảng cách Euclide: Khoảng cách Euclide giữa hai điểm ảnh p(x, y) và q(s, t)được định nghĩa như sau:
De(p, q) = [(x - s)2
+ (y - t)2
] 1/2Khoảng cách khối: Khoảng cách D4(p, q) được gọi là khoảng cách khối đồ thị(CityBlock Distance) và được xác định như sau:
Các mô hình ML models nổi bật: Face detection, Face mesh, Multi-handTracking, Object detection – tracking, AutoFlip (Automatic video cropping pipeline)
Mediapipe face landmark
MediaPipe face landmark là một giải pháp hình học khuôn mặt ước tính 468điểm mốc khuôn mặt 3D trong thời gian thực ngay cả trên thiết bị di động Nó sửdụng máy học (ML) để suy ra hình học bề mặt 3D, chỉ yêu cầu một đầu vào máy ảnhduy nhất mà không cần cảm biến độ sâu chuyên dụng Sử dụng kiến trúc mô hìnhnhẹ cùng với khả năng tăng tốc GPU trong suốt quá trình, giải pháp mang lại hiệusuất thời gian thực rất quan trọng cho trải nghiệm trực tiếp Ngoài ra, giải phápđược tích hợp với mô-đun Hình học khuôn mặt giúp thu hẹp khoảng cách giữa ướctính mốc khuôn mặt và các ứng dụng thực tế tăng cường (AR) theo thời gian thựchữu ích Nó thiết lập không gian 3D theo hệ mét và sử dụng các vị trí trên màn hìnhmốc khuôn mặt để ước tính hình học khuôn mặt trong không gian đó Dữ liệu hìnhhọc khuôn mặt bao gồm các nguyên thủy hình học 3D phổ biến, bao gồm ma trận
Trang 16tích thống kê nhẹ được gọi là Procrustes Analysisđược sử dụng để thúc đẩy mộtlogic mạnh mẽ, hiệu quả và di động Phân tích chạy trên CPU và có tốc độ / bộ nhớtối thiểu nằm trên suy luận của mô hình ML.
Đối với các mốc khuôn mặt 3D, mediapipe đã sử dụng phương pháp họcchuyển giao và đào tạo một mạng với một số mục tiêu: mạng dự đoán đồng thời tọa
độ mốc 3D trên dữ liệu kết xuất tổng hợp và các đường bao ngữ nghĩa 2D trên dữliệu thế giới thực có chú thích Mạng kết quả đã cung cấp những dự đoán về mốc 3Dhợp lý không chỉ trên dữ liệu tổng hợp mà còn trên dữ liệu thế giới thực Mạng cộtmốc 3D nhận dưới dạng đầu vào khung video đã cắt mà không cần thêm đầu vào độsâu Mô hình xuất ra vị trí của các điểm 3D, cũng như xác suất của một khuôn mặt
có mặt và được căn chỉnh hợp lý trong đầu vào Để cải thiện hơn nữa về độ chínhxác và mạnh mẽ của mô hình của mình bằng cách lặp đi lặp lại việc khởi động và tinhchỉnh các dự đoán Bằng cách đó, mô hình có thể phát triển tập dữ liệu của mìnhcho các trường hợp ngày càng thách thức, chẳng hạn như nhăn mặt, góc xiên vàkhớp cắn
Hình 7: Mô phỏng thực tế
Trang 17Mediapipe face detection
MediaPipe Face Detection là giải pháp nhận diện khuôn mặt cực nhanh đi kèmvới 6 điểm mốc và hỗ trợ đa khuôn mặt (mắt phải, mắt trái, đầu mũi, nhân giữamiệng, rãnh tai phải và rãnh tai trái) Nó dựa trên BlazeFace, một công cụ dò tìmkhuôn mặt nhẹ và hoạt động tốt được thiết kế riêng cho việc suy luận GPU di động.Hiệu suất siêu thời gian thực của máy dò cho phép nó được áp dụng cho bất kỳ trảinghiệm kính ngắm trực tiếp nào yêu cầu vùng mặt quan tâm chính xác làm đầu vàocho các mô hình cụ thể khác, chẳng hạn như điểm chính trên khuôn mặt 3D hoặcước tính hình học, đặc điểm khuôn mặt hoặc phân loại biểu cảm và phân vùngkhuôn mặt
Chương 2 Các kỹ thuật xử lý ảnh và Deepfake
2.1 Cải thiện ảnh và nâng cao chất lượng ảnh
Mục đích của kỹ thuật cải thiện ảnh:
Làm nổi chi tiết quan tâm trong ảnh
Làm cho ảnh trở nên trực quan hấp dẫn hơn
Trang 18Hình 8: Mô phỏng thực tế
Xử lý điểm ảnh
Khi lân cận cũng chính là điểm ảnh đó, tức là kích thước lân cận 1 x 1
Trong trường hợp này T được xem như hàm chuyển đổi mức xám hoặc gọiphép toán xử lý điểm ảnh
Biểu diễn thao tác xử lý điểm ảnh có dạng s = T(r)
Với s là điểm ảnh đã xử lý
Và r là điểm ảnh ban đầu
2.2 Tách nhiễu và phân ngưỡng
Nhiễu xuất hiện trong quá trình thu nhận ảnh, số hóa và truyền cảm biến ảnh
có thể bị ảnh hưởng bởi các điều kiện môi trường Nhiễu có thể can thiệp vào ảnhtrong quá trình truyền
Tách nhiễu là trường hợp đặc biệt của dãn độ tương phản khi hệ số góc α=γ=0 Tách nhiễu được ứng dụng có hiệu quả để giảm nhiễu khi biết tín hiệu vào trênkhoảng [a, b]