1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo Cáo Đồ Án Cơ Sở 5 Đề Tài Xây Dựng Ứng Dụng Xử Lý Ảnh Deepfake.doc

36 101 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

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[.]

ĐẠ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Ở ĐỀ TÀI: Xây dựng ứng dụng xử lý ảnh Deepfake LỜI MỞ ĐẦU Đào tạo bậc đại học hệ kỹ sư địi hỏi sinh viên ngồi việc thành thạo kỹ lập trình việc hiểu rõ chất giao thức, ngơn ngữ lập trình mơi trường… quan trọng Chính ngồi việc giảng dạy ngơn ngữ lập trình giải thuật Thầy giảng viên trường ln hướng sinh viên đến cốt lõi để sinh viên hiểu nắm rõ chất Chuẩn bị tốt cho việc tốt nghiệp kiến thức sau Với hướng đó, nhóm chúng em chọn đề tài “Xây dựng ứng dụng xử lý ảnh Deepfake”, việc ứng dụng học mơn xử lý ảnh Tuy đề tài không việc nắm rõ chất thành thạo khả lập trình xử lý ảnh địi hỏi thời gian kiến thức phải thật vững Với việc học mơ hình hàm lọc ảnh, q trình biến đổi phân tích chi tiết, nhóm chúng em bước hoàn thành đề tài chọn, cịn nhiều thiếu sót cần hồn thiện tiếp tục phát triển Nhóm em thực đề tài cách dụng công cụ phổ biến lĩnh vực xây dựng ứng dụng xử lý ảnh kể vài thứ như: PyCharm IDE, Thư viện OpenCV, ngôn ngữ Python Cùng với nhóm em áp dụng kiến thức cần thiết môn xử lý ảnh vào để thực đề tài Nhóm em xây dựng chức cho ứng dụng như: Phát khuôn mặt, xử lý điểm đặc trưng khn mặt, hốn đổi khn mặt Cuối nhóm em xin gửi lời cảm ơn chân thành đến giảng viên hướng dẫn ThS Trần Đình Sơn Thầy cô Trường tạo điều kiện giúp đỡ nhóm em thời gian qua để hồn thành tốt đề tài MỤC LỤC CHƯƠNG CƠ SỞ LÝ THUYẾT 1.1 TỔNG QUAN VỀ NGÔN NGỮ PYTHON 1.1.1 Python gì? .5 1.1.2 Ứng dụng Python 1.1.3 Những đặc điểm Python 1.2 TỔNG QUAN VỀ XỬ LÝ ẢNH 1.2.1 Xử lý ảnh gì? 1.2.2 Một số khái niệm 1.3 TỔNG QUAN VỀ MEDIAPIPE .13 1.3.1 Mediapipe gì? .13 1.3.2 Mediapipe face landmark 14 1.3.3 Mediapipe face detection 15 CHƯƠNG 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ở 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 2.6 Các kỹ thuật phát biên ảnh 21 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 công nghệ deepfake 23 2.6.3 Những lợi ích mà Deepfake mang lại 23 CHƯƠNG TRIỂN KHAI XÂY DỰNG ỨNG DỤNG 24 3.1 MƠ TẢ BÀI TỐ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 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 warp triangles .27 3.2.5 Liên kết tam giác xử lý 28 3.2.6 Thay 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 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 KẾT QUẢ ĐẠT ĐƯỢC 33 HẠN CHẾ 33 HƯỚNG PHÁT TRIỂN 33 Tài liệu tham khảo 34 DANH MỤC HÌNH ẢNH HÌNH 1: QUÁ TRÌNH XỬ LÝ ẢNH HÌNH 2: SƠ ĐỒ CÁC BƯỚC CƠ BẢN HÌNH 3: HÌNH ẢNH MÌNH HỌA 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 ĐÃ HỒ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 ĐÃ HỒN THÀNH 31 Chương 1.1 Cơ sở lý thuyết Tổng quan ngôn ngữ Python Python gì? Python ngơn ngữ lập trình hướng đối tượng, cấp cao, mạnh mẽ, tạo Guido van Rossum Nó dễ dàng để tìm hiểu lên ngôn ngữ lập trình nhập mơn tốt cho người lần đầu tiếp xúc với ngơn ngữ lập trình Python hồn toàn tạo kiểu động sử dụng chế cấp phát nhớ tự động Python có cấu trúc liệu cấp cao mạnh mẽ cách tiếp cận đơn giản hiệu lập trình hướng đối tượng Cú pháp lệnh Python điểm cộng vô lớn rõ ràng, dễ hiểu cách gõ linh động làm cho nhanh chóng trở thành ngôn ngữ lý tưởng để viết script phát triển ứng dụng nhiều lĩnh vực, hầu hết tảng Ứng dụng Python Ngày Python sử dụng với mục đích sau: Lập trình ứng dụng web: Bạn tạo web app có khả mở rộng (scalable) cách sử dụng framework CMS (Hệ thống quản trị nội dung) tích hợp Python Khoa học tính tốn: Có nhiều thư viện Python cho khoa học tính toán số liệu, SciPy NumPy, sử dụng cho mục đích chung chung tính tốn Và, có 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 sử dụng nhiều machine learning, khai thác liệu deep learning Tạo nguyên mẫu phần mềm: Python chậm so sánh với ngơn ngữ biên dịch C++ Java Nó khơng phải lựa chọn tốt nguồn lực bị giới hạn yêu cầu hiệu bắt buộc Ngôn ngữ tốt để dạy lập trình: Python nhiều cơng ty, trường học sử dụng để dạy lập trình cho trẻ em người lần đầu học lập trình Bên cạnh tính khả tuyệt vời cú pháp đơn giản dễ sử dụng lý cho việc Những đặc điểm Python Ngơn ngữ lập trình đơn giản, dễ học: Python có cú pháp đơn giản, rõ ràng Nó dễ đọc viết nhiều so sánh với ngơn ngữ lập trình khác 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 trung vào giải pháp khơng phải cú pháp Miễn phí, mã nguồn mở: Bạn tự sử dụng phân phối Python, chí dùng cho mục đích thương mại Vì mã nguồn mở, bạn khơng sử dụng phần mềm, chương trình viết Python mà cịn thay đổi mã nguồn Python có cộng đồng rộng lớn, khơng ngừng cải thiện lần cập nhật Khả di chuyển: Các chương trình Python di chuyển từ tảng sang tảng khác chạy mà khơng có thay đổi Nó chạy liền mạch hầu hết tất tảng Windows, macOS, Linux Khả mở rộng nhúng: Giả sử ứng dụng đòi hỏi phức tạp lớn, bạn dễ dàng kết hợp phần code C, C++ ngôn ngữ khác (có thể gọi từ C) vào code Python Điều cung cấp cho ứng dụng bạn tính tốt khả scripting mà ngơn ngữ lập trình khác khó làm Ngôn ngữ thông dịch cấp cao: Không giống C/C++, với Python, bạn lo lắng nhiệm vụ khó khăn quản lý nhớ, dọn dẹp liệu vô nghĩa, Khi chạy code Python, tự động chuyển đổi code sang ngơn ngữ máy tính hiểu Bạn khơng cần lo lắng hoạt động cấp thấp Thư viện tiêu chuẩn lớn để giải tác vụ phổ biến: Python có số lượng lớn thư viện tiêu chuẩn giúp cho cơng việc lập trình bạn trở nên dễ thở nhiều, đơn giản khơng phải tự viết tất code 1.2 Tổng quan xử lý ảnh Xử lý ảnh gì? Con người thu nhận thơng tin qua giác quan, thị giác đóng vai trị quan trọng Những năm trở lại với phát triển phần cứng máy tính, xử lý ảnh đồ hoạ phát triển cách mạnh mẽ có nhiều ứng dụng sống Xử lý ảnh đồ hoạ đóng vai trị quan trọng tương tác người máy Quá trình xử lý ảnh xem trình thao tác ảnh đầu vào nhằm cho kết mong muốn Kết đầu q trình xử lý ảnh ảnh “tốt hơn” kết luận Hình 1: Quá trình xử lý ảnh Xử lý ảnh chia theo loại khác nhau:  Mức thấp: Đầu vào(input) hình ảnh, đầu ra(output) hình ảnh, kỹ thuật: loại bỏ nhiễu, làm sắc nét ảnh  Mức trung bình: Đầu vào(input) hình ảnh đầu ra(output) thuộc tính, kỹ thuật: Nhận dạng đối tượng, phân đoạn ảnh  Mức cao: Đầu vào(input) hình ảnh đầu ra(output) khả hiểu hỉnh ảnh máy, kỹ thuật: hiểu cảnh vật, nhận biết chuyển động, Các ứng dụng xử lý ảnh đời sống:  Ứng dụng 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  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 xử lý ảnh Hình 2: Sơ đồ bước  Thu nhận ảnh (Image acquisition): Ảnh nhận qua camera màu đen trắng Thường ảnh nhận qua camera ảnh tương tự, có loại camera số hịa loại Photodiot tạo cường độ sáng điểm ảnh Camera thường dùng loại qt dịng, ảnh tạo có dạng hai chiều Chất lượng ảnh thu nhận 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 thu nhận ảnh, ảnh bị nhiễu, có độ tương phản thấp nên cần đưa vào tiền xử lý ảnh để nâng cao chất lượng Chức tiền xử lý lọc nhiễu cao độ tương phản làm cho ảnh rõ nét  Biển diễn ảnh (Image representation): Đầu ảnh phân đoạn chứa điểm ảnh vùng ảnh (ảnh phân đoạn) cộng với mã liên kết với vùng lân cận Việc biến đổi số liệu thành dạng thích hợp cần thiết cho xử lý máy tính Việc chọn tính chất để thể gọi trích chọn đặc trưng (Feature selection) gắn với việc tách đặc tính ảnh dạng thông tin định lượng làm sở để phân biệt lớp đối tượng với đối tượng khác phạm vi ảnh nhận  Nhận dạng nội suy ảnh: Là trình xác định ảnh Quá trình thường thu cách so sánh với mẫu chuẩn học nội suy, phán đoán theo ý nghĩa dựa sở nhận dạng Có nhiều cách phân loại ảnh khác  Cơ sở tri thức: Ảnh đối tượng phức tạp đường nét, độ sáng tối, dung lượng điểm ảnh, môi trường để thu ảnh phong phú kéo theo nhiễu Trong nhiều khâu xử lý phân tích ảnh ngồi việc đơn giản hóa phương pháp toán học đảm bảo tiện lợi cho xử lý, người ta mong muốn bắt chước quy trình tiếp nhận xử lý ảnh theo cách người nhận thức Một số khái niệm 1.2.1.1 Ảnh số điểm ảnh Ảnh sổ hình ảnh định nghĩa hàm hai chiều f(x,y), x y tọa độ không gian (mặt phẳng) biên độ f cặp tọa độ (x,y) gọi cường độ mức độ xám hình ảnh điểm Khi x,y giá trị cường độ f đại lượng hữu hạn, rời rạc, gọi hình ảnh hình ảnh kỹ thuật số hay ảnh số Ảnh số hiểu cách đơn giản số hóa hình ảnh làm cho xấp xỉ với cảnh thực

Ngày đăng: 14/06/2023, 11:43

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w