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

ĐỒ ÁN CƠ SỞ - ĐỀ TÀI XÂY DỰNG ỨNG DỤNG HIỆU CHỈNH HÌNH ẢNH TRÊN ĐIỆN THOẠI DI ĐỘNG

21 5 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

Thông tin cơ bản

Định dạng
Số trang 21
Dung lượng 7,79 MB

Nội dung

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG VIỆT – HÀN KHOA KHOA HỌC MÁY TÍNH ĐỒ ÁN CƠ SỞ ĐỀ TÀI XÂY DỰNG ỨNG DỤNG HIỆU CHỈNH HÌNH ẢNH TRÊN ĐIỆN THOẠI DI ĐỘNG Sinh viên thực : NGUYỄN QUANG HUY Lớp : 18IT5 Giảng viên hướng dẫn : ThS LÊ VIẾT TRƯƠNG Đà Nẵng, tháng năm 2021 TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG VIỆT – HÀN KHOA KHOA HỌC MÁY TÍNH ĐỒ ÁN CƠ SỞ ĐỀ TÀI XÂY DỰNG ỨNG DỤNG HIỆU CHỈNH HÌNH ẢNH TRÊN ĐIỆN THOẠI DI ĐỘNG Đà Nẵng, tháng năm 2021 NHẬN XÉT (Của giảng viên hướng dẫn) …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… … Đà Nẵng, ngày 30 tháng 05 năm 2021 Giảng viên hướng dẫn LỜI CẢM ƠN Lời em xin gửi lời cảm ơn đến thầy Lê Viết Trương tận tình bảo giúp đỡ để em hồn thành đồ án mơn học Trong suốt thời gian học làm đồ án môn học, thầy dành nhiều thời gian quý báu để tận tình bảo, hướng dẫn, định hướng cho em thực đồ án Ngoài em xin gửi lời cảm ơn đến thầy cô giáo Trường Đại học Công nghệ thông tin Truyền thông Việt- Hàn giảng dạy để em có kiến thức để hồn thành đồ án Q trình thực kết đồ án khơng tránh khỏi thiếu sót, hạn chế nên em mong nhận dẫn đóng góp ý kiến thầy cô Em xin chân thành cảm ơn ! MỤC LỤC NHẬN XÉT .1 LỜI CẢM ƠN MỤC LỤC MỞ ĐẦU Giới thiệu .4 Bố cục Chương GIỚI THIỆU TỔNG QUAN .6 Tổng quan chỉnh sửa ảnh Các tính trình chỉnh sửa ảnh .6 Các công cụ 3.1 Thư viện OpenCV Chương CƠ SỞ LÝ THUYẾT 10 Một chút ảnh kỹ thuật số (digital image) .10 Xử lý ảnh 11 2.1 Chuyển ảnh màu sang grayscale 11 2.2 Thay đổi độ tương phản (contrast) 11 2.3 Thay đổi độ sáng (brightness) 12 Chương DEMO ỨNG DỤNG 15 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 18 1.Kết Luận 18 2.Hướng phát triển 18 DANH MỤC TÀI LIỆU THAM KHẢO 19 MỞ ĐẦU Giới thiệu Ngày nay, điện thoại di động dần trở nên phổ biến giới phần thiếu đời sống cảu người, với kế thừa ưu việt hệ điều hành đời trước kết hợp nhiều công nghệ tiên tiến Cùng với phát triển không ngừng công nghệ thông tin, siêu phẩm điện thoại thông minh đời, thiết bị di động điện thoại, máy tính bảng, máy nghe nhạc, selfie ngày phát triển mạnh mẽ, tạo nên cạnh tranh hãng phát triển di động Ngày nhiều sản phẩm di động thông minh đời nâng cấp cải thiện lớn hiệu suất cấu hình cao đáp ứng nhu cầu người sử dụng Bên cạnh chức quan trọng smartphone, chức thiếu camera chụp ảnh, để lưu trữ lại kỷ niệm đẹp, khoảnh khắc ý nghĩa Những smartphone ngày cải thiện tính lẫn chất lượng phần cứng, camera điện thoại ngày hoàn thiện hơn, áp dụng công nghệ xử lý ảnh tiên tiến ảnh đẹp trân thực nhất, đáp ứng nhu cầu chụp ảnh, selfie với chất lượng hình ảnh cao Tuy nhiên, camera mặc định điện thoại thường cho hình ảnh thơ khơng làm hài lịng người sử dụng, đơi họ muốn biến ảnh bật sau chụp trở nên lung linh sắc nét hơn, với hiệu ứng biến đổi màu sắc, hiệu ứng khung ảnh, làm cho ảnh trở nên khác biệt Và họ cần ứng dụng khác biệt thay ứng dụng mặc định mà hệ điều hành cung cấp tùy chỉnh ảnh sau chụp theo sở thích người Bởi trước nhu cầu lợi đó, em định nghiên cứu xây dựng ứng dụng: “Xây dựng ứng dụng hiệu chỉnh hình ảnh điện thoại di động” Ứng dụng cho phép người chỉnh sửa hiệu ứng, biển đổi tăng sáng tối cho ảnh, tạo style Bên cạnh sau xử lý ảnh xong, người dùng chia sẻ lên mạng xã hội, tạo wallpaper cho điện thoại Vì nhiều lý ứng dụng em chạy hệ điều hành Android Bố cục Nội dung báo cáo gồm phần sau đây: Chương 1: Giới thiệu tổng quan Chương 2: Cơ sở lý thuyết Chương 3: Demo ứng dụng Trong q trình xây dựng đề tài khơng thể tránh thiếu sót, em mong ý kiến đóng góp, phê bình thầy, để em hồn thiện Sự phê bình, góp ý q thầy học kinh nhiệm quý báu cho công việc thực tế em sau Em xin trân thành cảm ơn! Chương 1 GIỚI THIỆU TỔNG QUAN Tổng quan chỉnh sửa ảnh Hình ảnh Raster lưu trữ máy tính dạng lưới phần tử hình ảnh pixel Các pixel chứa thông tin màu sắc độ sáng hình ảnh Người chỉnh sửa hình ảnh thay đổi pixel để nâng cao hình ảnh theo nhiều cách Các pixel thay đổi thành nhóm riêng lẻ thuật tốn phức tạp trình chỉnh sửa hình ảnh Bài viết chủ yếu đề cập đến trình chỉnh sửa đồ họa bitmap , thường sử dụng để thay đổi ảnh đồ họa raster khác Tuy nhiên, phần mềm đồ họa vector , chẳng hạn Adobe Illustrator , CorelDRAW , Xara Designer Pro Inkscape, sử dụng để tạo sửa đổi hình ảnh vectơ, lưu trữ dạng mô tả đường thẳng , đường cong Bézier văn thay pixel Nó dễ dàng để rasterize hình ảnh vector để vectorize hình ảnh raster; làm để vectơ hóa hình ảnh raster trọng tâm nhiều nghiên cứu lĩnh vực thị giác máy tính Hình ảnh vectơ sửa đổi dễ dàng chúng chứa mơ tả hình dạng để dễ dàng xếp lại Chúng mở rộng, phân loại độ phân giải Các tính trình chỉnh sửa ảnh 2.1 Lớp: Một tính khác phổ biến nhiều ứng dụng đồ họa Lớp , tương tự axetat suốt (mỗi lớp chứa phần tử riêng biệt tạo nên tranh kết hợp), xếp chồng lên nhau, lớp có khả định vị, thay đổi pha trộn riêng lẻ với lớp bên dưới, mà không ảnh hưởng đến phần tử lớp khác Đây quy trình làm việc trở thành tiêu chuẩn cho phần lớn chương trình thị trường nay, mang lại linh hoạt tối đa cho người dùng trì ngun tắc chỉnh sửa khơng phá hủy dễ sử dụng 2.2 Thay đổi kích thước hình ảnh: Trình chỉnh sửa hình ảnh thay đổi kích thước hình ảnh q trình thường gọi chia tỷ lệ hình ảnh , làm cho chúng lớn nhỏ Cao độ phân giải hình ảnh camera tạo hình ảnh lớn thường giảm kích thước cho Internet sử dụng Các chương trình chỉnh sửa hình ảnh sử dụng quy trình tốn học gọi lấy mẫu lại để tính tốn giá trị pixel có khoảng cách lớn nhỏ giá trị pixel ban đầu Hình ảnh để sử dụng Internet giữ mức nhỏ, chẳng hạn 640 x 480 pixel tương đương 0,3 megapixel 2.3 Cắt hình ảnh: Các trình chỉnh sửa kỹ thuật số sử dụng để cắt hình ảnh Cắt tạo hình ảnh cách chọn phần hình chữ nhật mong muốn từ hình ảnh cắt Phần khơng mong muốn hình ảnh bị loại bỏ Cắt ảnh không làm giảm độ phân giải vùng cắt Kết tốt thu hình ảnh gốc có độ phân giải cao Lý cho việc cắt xén để cải thiện bố cục hình ảnh hình ảnh Trước Sau 2.4 Thay đổi độ tương phản độ sáng: Các trình chỉnh sửa hình ảnh có quy định để thay đổi đồng thời độ tương phản hình ảnh làm sáng tối hình ảnh Hình ảnh thiếu sáng thường cải thiện cách sử dụng tính Những tiến gần cho phép hiệu chỉnh độ phơi sáng thông minh hơn, theo điểm ảnh ngưỡng độ sáng cụ thể làm sáng, làm sáng vùng bóng thiếu sáng mà khơng ảnh hưởng đến phần cịn lại hình ảnh Sự chuyển đổi xác áp dụng cho kênh màu khác trình biên tập GIMP áp dụng công thức sau: if 1,0 ( độ sáng + < 0,0 ) giá trị = giá trị * ( độ sáng ); giá trị khác = giá trị + (( - giá trị ) * độ sáng ); giá trị = ( giá trị - 0,5 ) * ( tan (( độ tương phản + ) * PI / ) ) + 0,5 ; giá trị giá trị màu đầu vào phạm vi độ sáng độ tương phản nằm phạm vi −1 Các công cụ 3.1 Android Studio Android Studio mơi trường phát triển tích hợp (IDE) thức[1] dành cho phát triển tảng Android Nó mắt vào ngày 16 tháng năm 2013 hội nghị Google I/O Android Studio phát hành miễn phí theo giấy phép Apache Licence 2.0.[2] Android Studio giai đoạn truy cập xem trước sớm phiên 0.1 vào tháng 5.2013, sau bước vào giai đoạn beta từ phiên 0.8 phát hành vào tháng năm 2014.[3] Phiên ổn định mắt vào tháng 12 năm 2014, phiên 1.0.[4 Dựa phần mềm IntelliJ IDEA JetBrains, Android Studio thiết kế đặc biệt để phát triển ứng dụng Android.[5] Nó hỗ trợ hệ điều hành Windows, Mac OS X Linux,[6][7] IDE thức Google để phát triển ứng dụng Android gốc để thay cho Android Development Tools (ADT) dựa Eclipse Thư viện OpenCV OpenCV (Open Computer Vision library) Intel phát triển, giới thiệu năm 1999 hoàn thiện thành phiên 1.0 năm 2006 Thư viện OpenCV – gồm khoảng 500 hàm – viết ngơn ngữ lập trình C tương thích với hệ điều hành Windows, Linux, Mac OS… đóng vai trò xác lập chuẩn giao tiếp, liệu, thuật tốn cho lính vực CV tọa điều kiện cho người tham gia nghiên cứu phát triển ứng dụng Trước OpenCV khơng có cơng cụ chuẩn cho lĩnh vực xử lí ảnh Các đoạn code đơn lẻ nhà nghiên cứu tự viết thường không thống không ổn định Các công cụ thương mại Matlab, Simulink, v.v lại có giá cao thích hợp cho cơng ty phát triển ứng dụng lớn Ngồi cịn có giải phảp kèm theo thiết bị phần cứng mà phần lớn mã đóng thiết kế riêng cho tứng thiết bị, khó khan cho việc mở rộng ứng dụng OpenCV cơng cụ hữu ích cho người bước đầu làm quen với xử lí ảnh số ưu điểm sau: - OpenCV công cụ chuyên dụng: Intel phát triển theo hướng tối ưu hóa cho ứng dụng xử lí phân tích ảnh, với cấu trúc liệu hợp lí, thư viện tạo giao diện, truy xuất thiết bị phần cứng tích hợp sẵn OpenCV thích hợp để phát triển nhanh ứng dụng - OpenCV công cụ mã nguồn mở: Không cơng cụ miễn phí, việc xây dựng mã nguốn mở giúp OpenCV trở thành cơng cụ thích hợp cho nghiên cứu phát triển, với khả thay đổi mở rộng mơ hình, thuật tốn - OpenCV sử dụng rộng rãi: Từ năm 1999 đến nay, OpenCV thu hút lượng lớn người dung, có cơng ty lớn Microsoft, IBM, Sony, Siemens, Google nhóm nghiên cứu Standford, MIT, CMU, Cambridge,… Nhiều forum hỗ trợ cộng đồng người dung thành lập, tạo nên kênh thơng tin rộng lớn, hữu ích cho việc tham khảo, tra cứu Chương CƠ SỞ LÝ THUYẾT Một chút ảnh kỹ thuật số (digital image) Một hình ảnh (kỹ thuật số) tạo thành nhiều phần tử gọi pixel (hay điểm ảnh) Thường hình biểu diễn mảng hai chiều gồm nhiều pixels Mỗi pixel (cụ thể hình RGB) mang thơng số màu: Red, Green, Blue Ngồi ra, khơng gian RGBA có kênh thứ Alpha, Alpha thơng số độ suốt pixel 10 Như nói trên, pixel mang giá trị màu, thực tế pixel cấu thành bao gồm sub-pixels Và pixel khơng có kích thước vật lý cụ thể, mà phụ thuộc vào pixel density Mỗi pixel chứa 256 (0-255) giá trị, mặt lý thuyết sub-pixels thị 256^3 = 16777216 (~16 triệu màu) Nhưng tất nhiên mắt người chưa hẳn phân biệt 16 triệu màu Xử lý ảnh Chuyển ảnh màu sang grayscale Về grayscale (hình trắng đen) loại ảnh mà tất pixels mang thông tin độ sáng, hay nói cách khác thể sắc thái màu xám (Luminance mode) Trong không gian màu RGB, màu xám màu mà sắc tố Red, Green, Blue có giá trị Ví dụ màu đỏ rgb(255, 0, 0) ta muốn chuyển sang xám lấy giá trị trung bình sub-pixels tạo thành pixel rgb(85, 85, 85) Trước Sau Thay đổi độ tương phản (contrast) 11 from PIL import Image, ImageEnhance # PIL accesses images in Cartesian co-ordinates, so it is Image[columns, rows] img = Image.open("rick-morty.png") # Enhance constrast enhancer = ImageEnhance.Contrast(img) for i in range(1, 8): factor = i / 4.0 10 new_img = enhancer.enhance(factor) 11 new_img.show() 12 # Or save it to file 13 # new_img.save('rick-morty-%s.png' % i) Trong factor giá trị để kiểm soát độ tương phản, 1.0 tương đương hình gốc, cịn thấp 1.0 giảm độ tương phản Tăng/giảm contrast làm tối (darkening) pixel có giá trị mức đó, làm sáng (lightening) pixels có giá trị mức Độ chênh lệch làm tăng hay giảm tương phản 2.3 Thay đổi độ sáng (brightness) Để thay đổi độ sáng ảnh Pillow đơn giản, ta làm sau: 12 from PIL import Image, ImageEnhance img = Image.open("rick-morty.png") enhancer = ImageEnhance.Brightness(img) # Lighter new_img = enhancer.enhance(1.8) # Darker # new_img = enhancer.enhance(0.8) new_img.show() Để thay đổi độ sáng pixels cách thủ công đơn giản, ta cần tăng hay giảm giá trị pixel được, cần lưu ý truncate giá trị cho nằm khoảng 0-255 from PIL import Image def truncate(value): if (value < 0): return if (value > 255): return 255 return value if name == " main ": img = Image.open('rick-morty.png') pixels = img.load() img_new = Image.new(img.mode, img.size) pixels_new = img_new.load() brightness = 20 for i in range(img_new.size[0]): 13 for j in range(img_new.size[1]): r, b, g = pixels[i,j] _r = truncate(r + brightness) _b = truncate(b + brightness) _g = truncate(g + brightness) pixels_new[i,j] = (_r, _b, _g, 255) img_new.show() 14 Chương DEMO ỨNG DỤNG Các hình ảnh ứng dụng Hình 3.1 Điều chỉnh hiệu ứng Hình 3.2 Cắt hình ảnh 15 Hình 3.3 Điều chỉnh độ tương phản Hình 3.4 ĐIều chỉnh độ sáng 16 Hình 3.5 Xoay, lật hình 17 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 1.Kết Luận Bên báo cáo đề tài ứng dụng hiệu chỉnh hình ảnh Đề tài cần phát triển tương lai coi ứng dụng phổ biến người dùng Tuy nhiên ứng dụng cịn nhiều thiếu sót: - Điều chỉnh ánh sáng độ tương phản chưa xác - Một số hiệu ứng mang tính khách quan 2.Hướng phát triển Một số chức mở rộng thực sau này: - Chức xóa vật thể: Chức cho phéo người dùng xóa vật thể khơng mong muốn ảnh - Chức ghép hình ảnh: Chức cho phép lồng, ghép hình lại với nhau… 18 DANH MỤC TÀI LIỆU THAM KHẢO https://en.wikipedia.org https://opencv.org https://www.youtube.com 19

Ngày đăng: 03/03/2022, 02:13

TỪ KHÓA LIÊN QUAN

w