Ứng dụng chỉnh sửa ảnh trên nền tảng android

81 521 5
Ứng dụng chỉnh sửa ảnh trên nền tảng android

Đ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

 LỜI CẢM ƠN Lời đầu tiên, em xin gửi lời cảm ơn sâu sắc đến thầy giáo Th.S Bùi Anh Tú – môn công nghệ phần mềm định hướng tận tình giúp đỡ, động viên em trình thực đồ án Em xin chân thành cảm ơn thầy! Em xin cảm ơn người bạn gia đình động viên, giúp đỡ để em phấn đấu vượt qua khó khăn trình học tập rèn luyện Trường Đại học Công nghệ Thông tin Truyền thông Đồ án tốt nghiệp hội để em áp dụng, tổng kết lại kiến thức mà học Đồng thời, em rút kinh nghiệm thực tế quý giá suốt trình thực đồ án Sau thời gian dài, em tập trung công sức cho đồ án làm việc tích cực, đặc biệt nhờ đạo hướng dẫn tận tình thầy Bùi Anh Tú với thầy cô trường Đại học Công nghệ thông tin truyền thông – Đại học Thái Nguyên, giúp em hoàn thành đồ án cách thuận lợi gặt hái kết mong muốn Cuối cùng, em xin cảm ơn tất thầy cô giáo Trường Đại học Công nghệ Thông tin Truyền thông dạy dỗ, bảo kiến thức, tri thức khoa học học kinh nghiệm suốt trình học tập, rèn luyện trường, đề em chuẩn bị thật tốt kiến thức hành trang sống Kính chúc quý thầy cô mạnh khỏe, tiếp tục đạt nhiều thắng lợi nghiên cứu khoa học nghiệp trồng người  Em xin chân thành cảm ơn!  Sinh viên  Hoàng Duy Hoàng   LỜI CAM ĐOAN Em xin cam đoan toàn nội dung đồ án tự em đọc nghiên cứu tài liệu, khảo sát phần mềm Từ viết sở lý thuyết xây dựng chương trình “Ứng dụng chỉnh sửa ảnh tảng Android” Mọi nguồn tham khảo, trích dẫn đồ án ghi rõ nguồn gốc Người cam đoan Hoàng Duy Hoàng MỤC LỤC LỜI CẢM ƠN LỜI CAM ĐOAN MỤC LỤC DANH MỤC HÌNH MỞ ĐẦU CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 10 1.1 Tổng quan hệ điều hành android 10 1.1.1 Đặc điểm 11 1.1.2 Kiến trúc tổng quát hệ điều hành Android 13 1.1.3 Chu kỳ ứng dụng android 16 1.2 Các thành phần giao diện android 17 1.2.1 View 17 1.2.2 ViewGroup 17 1.2.3 LinearLayout 18 1.2.4 FrameLayout 18 1.2.5 AbsoluteLayout 18 1.2.6 RetaliveLayout 18 1.2.7 TableLayout 19 1.2.8 ImageView 19 1.2.9 ListView 19 1.2.10 TextView 20 1.2.11 EditText 20 1.3 Activity Intent 21 1.3.1 Activity 21 1.3.2 Intent 21 1.4 Tìm hiểu bitmap 23 1.4.1 Bitmap Android 23 1.4.2 Màu sắc Android 23 1.4.3 Thao tác với điểm ảnh bitmap 24 1.5 Một số thuật toán xử lý ảnh android 25 1.5.1 Convolution matrix 25 1.5.2 Neon 27 1.5.3 Emboss 28 1.5.4 TV Screen 28 1.5.5 Sketch 29 1.5.6 Invert 29 1.5.7 Smoothing 29 1.5.8 Gaussian blue 29 1.5.9 Grayscale 30 1.5.10 Sharpen 30 1.5.11 Color lighten 31 CHƯƠNG 2: KHẢO SÁT VÀ PHÂN TÍCH THIẾT KẾ HỆ THỐNG 32 2.1 Khảo sát thực tế 32 2.2 Đặc tả toán 32 2.3 Đặc tả chức 33 2.3.1 Chức load ảnh 33 2.3.2 Chức xử lý ảnh 33 2.4 Các biểu đồ hệ thống 35 2.4.1 Biểu đồ use case 35 2.4.2 Biểu đồ trình tự 38 2.4.3 Biểu đồ hoạt động 39 2.4.4 Biểu đồ class 40 2.5 Luồng kiện 42 2.5.1 Luồng kiện cho chức load ảnh 42 2.5.2 Luồng kiện chức edit 43 2.5.3 Luồng kiện chức styles 43 2.5.4 Luồng kiện chức text 43 2.5.5 Luồng kiện chức stickers 44 2.5.6 Luồng kiện cho chức share, save, wallpaper 44 CHƯƠNG 3: DEMO ỨNG DỤNG 45 3.1 Một vài hình ảnh ứng dụng 45 3.2 Danh sách hình 52 KẾT LUẬN 54 TÀI LIỆU THAM KHẢO 55 DANH MỤC HÌNH Hình 1.1-2 Hệ điều hành Android 10 Hình 1.3 Kiến trúc tổng quát 13 Hình 1.4 Tầng ứng dụng 13 Hình 1.5 Application Framework 14 Hình 1.6 Libraries 14 Hình 1.7 Android Runtime 15 Hình 1.8 Linux kernel 15 Hình 1.9 Chu kỳ sống thành phần 16 Hình 1.10 Chu kỳ sống Activity 16 Hình 1.11 Bố trí widget sử dụng LinearLayout 18 Hình 1.12 Bố trí RelativeLayout 19 Hình 1.13 Minh hoạ cho ListView 20 Hình 1.14 Truyền liệu Activity 22 Hình 1.15 Các thuộc tính Intend 22 Hình 1.16 Các Action định nghĩa sẵn Intend 22 Hình 1.17 Công thức xử lý ảnh ma trận nhân chập 25 Hình 1.18 Công thức ma trận nhân chập 27 Hình 1.19 Mô tả ảnh neon 27 Hình 1.20 Mô tả ảnh Emboss 28 Hình 1.21 Mô tả hiệu ứng Shapen 30 Hình 2.1 Quá trình xử lý ảnh 34 Hình 2.2 biểu đồ use case tổng quát 35 Hình 2.3 Biểu đồ usecase edit 36 Hình 2.4 Biểu đồ usecase Styles 36 Hình 2.5 Biểu đồ usecase Stickers 37 Hình 2.6 Biểu đồ usecase text 37 Hình 2.7 Biểu đồ trình tự chức load ảnh 38 Hình 2.8 Biểu đồ trình tự chức xử lý ảnh 38 Hình 2.9 Biểu đồ hoạt động cho chức load ảnh 39 Hình 2.10 Biểu đồ hoạt động cho chức xử lý ảnh 39 Hình 2.11 Biểu đồ class tổng quát 40 Hình 2.12 Biểu đồ class edit 40 Hình 2.13 Biểu đồ class Text 41 Hình 2.14 Biểu đồ class Sticker 41 Hình 2.15 Biểu đồ class Style 42 Hình 3.1 Màn hình chức load ảnh 45 Hình 3.2 Màn hình hiển thị ảnh chức xử lý ảnh 46 Hình 3.3 Tạo hiệu ứng Neon 47 Hình 3.4 Tạo hiệu ứng Pseudo HDR 47 Hình 3.5 Chọn filter cho ảnh 48 Hình 3.6 Tăng giảm độ sáng 48 Hình 3.7-8 Chọn stickers cho ảnh 49 Hình 3.9-10 Chọn background frame cho ảnh 50 Hình 3.11-12 Nhập văn chọn màu chữ 51 Hình 3.13-14 Share save ảnh 52  MỞ ĐẦU Ngày nay, hệ điều hành Android đời trở thành tảng điện thoại thông minh phổ biến giớ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 Những ưu điểm dễ thấy Android khả tùy biến nhanh chóng, dễ làm quen, ứng dụng hỗ trợ phong phú, tương thích với đa cấu hình phần cứng nhà sản xuất Dù hay chưa sử dụng smartphone Android ta không cần lo lắng việc thay đổi Hầu tất smartphone sử dụng hệ điều hành Android dễ sử dụng, đơn giản tùy biến theo sở thích cá nhân, có nhiều ứng dụng để thỏa mãn nhu cầu người dùng Đồng thời Android có mã nguồn mở cho phép nhà phát triển thiết bị, mạng di động lập trình viên điều chỉnh phân phối Android cách tự 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, 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 chỉnh sửa ảnh tảng android.” Ứ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, thêm text sticker ngộ nghĩnh cho ảnh 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 Nội dung báo cáo gồm phần sau đây: Chương 1: Cơ sở lý thuyết Chương 2: Khảo sát phân tích thiết kế hệ thống Chương 3: Demo ứng dụng Trong trình xây dựng đề tài tránh thiếu sót , em mong ý kiến đóng góp, phê bình thầy, cô để em hoàn thiện Sự phê bình, góp ý quý thầy cô 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! Sinh viên Hoàng Duy Hoàng  CHƯƠNG 1: CƠ SỞ LÝ THUYẾT  Tổng quan hệ điều hành android Hình 1.1-2 Hệ điều hành Android Android tảng phần mềm dựa mã nguồn mở Linux OS (Kernel 2.6) thiết kế dành riêng cho thiết bị di động có hình cảm ứng điện thoại thông minh hay máy tính bảng, nhằm xây dựng ứng dụng hỗ trợ mà người sử dụng cần đến Được xây dựng tảng mở, thư viện đa năng, mạnh mẽ với nguyên lý mở, Android nhanh chóng cộng đồng lập trình viên di 10 Hình 3.4 Tạo hiệu ứng Pseudo HDR Các lọc (filter) chỉnh độ sáng cho ảnh 67 Hình 3.5 Chọn filter cho ảnh 68 Hình 3.6 Tăng giảm độ sáng Giao diện hiển thị chức sticker 69 70 Hình 3.7-8 Chọn stickers cho ảnh Giao diện hiển thị chức Styles 71 72 Hình 3.9-10 Chọn background frame cho ảnh Giao diện hiển thị chức text 73 74 Hình 3.11-12 Nhập văn chọn màu chữ Giao diện hiển thị chức share, save ảnh 75 Hình 3.13-14 Share save ảnh  Danh sách hình STT Tên hình Load ảnh Ý nghĩa/chức Tùy chọn chức load ảnh từ gallery camera Xử lý ảnh Hiển thị ảnh chức xử lý ảnh Edit Edit ảnh, sử dụng hiệu ứng, lọc, tăng cường độ sáng tối, cho ảnh 76 Styles Thêm khung ảnh, set background cho ảnh Text Nhập văn bản, setSize, style, màu chữ, font cho văn Sticker Các biểu tượng ngộ nghĩnh làm cho ảnh thêm sinh động 77 Màn hình Edit STT Chức Ý Nghĩa  Enhance Tăng cường độ sáng tối cho ảnh  Effect Các hiệu ứng cho ảnh: sepia,TV Screen, Sketch, Neon, Grayscale, Negative Color Lighten  Tăng sắc cho ảnh với ba màu chủ đạo: Red, green, blue  Contrast Độ đậm nhạt màu sắc cho ảnh  Filters Các lọc thông minh: Gaussian blue, Emboss, Sharpen, smooth  Flipping Xoay ảnh theo chiều: Horizontal, vertical  Brightness/gramma Điều chỉnh độ sáng tối Màn hình Style STT Chức Ý Nghĩa  Frame Chọn khung hình cho ảnh  Background Set hình cho ảnh  Brush Set hiệu ứng cho ảnh Màn hình Text STT Chức Ý Nghĩa  Edittext Nhập văn  Styles Định kiểu cho chữ  Color Chọn màu cho chữ  Font Chọn font chữ Màn hình Sticker STT  Chức Add Pendant Ý Nghĩa Chọn biểu tượng sticker dán vào ảnh 78 Add Magicwand  Vẽ biểu tượng vào ảnh  KẾT LUẬN Hệ điều hành Android tảng cho di động với tính ưu việt trội Sau gần 10 năm Android khẳng định vị thị trường di động việc phát triển ứng dụng chạy quan tâm giới nói chung Việt Nam nói riêng Đề tài thực tập tốt nghiệp: “ Xây dựng ứng dụng chỉnh sửa ảnh hệ điều hành android” đề tài không lớn ứng dụng phổ biến, việc chụp ảnh chỉnh sửa ảnh trở lên đẹp hơn, sinh động nhu cầu thiết yếu tất người sử hữu điện thoại thông minh Qua trình làm đề tài lần giúp em nắm bắt quy trình xây dựng dự án phần mềm android, có thêm kiến thức Android đồng thời nắm kiến thức bitmap thuật toán xử lý ảnh xây dựng android Kết đạt được: Xây dựng thành công demo chỉnh sửa ảnh với nhiều chức năng, thuật toán xử lý ảnh chuyên nghiệp Ưu điểm: Giao diện thân thiện, bố trí hợp lý dễ thao tác, nhiều chức xử lý ảnh ứng dụng chuyên nghiệp Hạn chế: ứng dụng đơn giản, chưa đầy đủ chức cần thiết, giao diện chưa đẹp, số chức chưa tối ưu Đánh giá tổng quát: ứng dụng hoàn thiện đáp ứng mục tiêu đặt ra, nhiên số hạn chế thiếu xót so với ứng dụng chuyên nghiệp store google play, cần phải nâng cấp nhiều chức cải thiện chất lượng xử lý ảnh để thương mại hóa chia sẻ google play Hướng phát triển: khắc phục hạn chế trên, tạo ứng dụng hoàn chỉnh giao diện chức năng, bổ sung thêm nhiều chức thông minh 79 như: cắt ảnh, ghép, lưu ảnh chất lượng cao Nghiên cứu tìm hiểu thêm thuật toán xử lý ảnh chuyên nghiệp, hiệu 80  TÀI LIỆU THAM KHẢO [1] Dawn Griffiths & David Griffiths - Head First Android Development (2015) [2] Ian F.Darwin - Oreilly.Android.Cookbook.Apr, (2012) [3] Grant Allen - Beginning Android 4, ( 2012) [4] Rafael C Gonzalez, Richard E Woods - Digital Image Processing (3rd Edition),(2012) [5] Phạm Thế Bảo - Biến hình xử lý ảnh , Đại học khoa học tự nhiênĐHQG Tp Hồ Chí Minh (2013) [6] Wei-Meng Lee - Beginning Android Application Development,(2012) [7] https://developer.android.com/ [8] http://www.androidhive.info/ [9] https://viblo.asia/ [10] http://stackoverflow.com/ 81 [...]... của các ứng dụng Với Android, không có sự khác nhau giữa các ứng dụng điện thoại cơ bản với ứng dụng của bên thứ ba Chúng được xây dựng để truy cập như nhau tới một 11 loạt các ứng dụng và dịch vụ của điện thoại Với các thiết bị được xây dựng trên nền tảng Android, người dùng có thể đáp ứng đầy đủ các nhu cầu mà họ thích Chúng ta có thể đổi màn hình nền, kiểu gọi điện thoại, hay bất kể ứng dụng nào... Âm thanh, hình ảnh hoàn hảo  Kiến trúc tổng quát của hệ điều hành Android Mô hình sau thể hiện môt cách tổng quát các thành phần của hệ điều hành Android 14 Hình 1.3 Kiến trúc tổng quát  Tầng ứng dụng (Applications) Hình 1.4 Tầng ứng dụng Android được tích hợp sẵn một số ứng dụng cần thiết cơ bản như: contacts, browser, camera, Phone,… Tất cả các ứng dụng chạy trên hệ điều hành Android đều được... Thuật toán tạo ảnh dạng vẽ chì thực hiện trên ảnh xám vì vậy cần chuyển ảnh về dạng ảnh xám trước khi xử lý Thuật toán sẽ tính toán trên 2 điểm ảnh, một điểm ảnh đang xét và một điểm ảnh nằm kề phía dưới bên phải điểm ảnh đang xét Chuyển 2 điểm ảnh về dạng ảnh đa mức xám, tính hiệu 2 giá trị đó nếu lớn hơn một ngưỡng cho trước thì đặt giá trị điểm ảnh đang xét là màu chì, ngược lại đặt màu nền là màu trắng...động hưởng ứng mạnh mẽ Nền tảng Android tích hợp nhiều tính năng nổi bật:  Android là một hệ điều hành nhân Linux, đảm bảo sự tương tác với các phần cứng, quản lý bộ nhớ, điều khiển các tiến trình tối ưu cho các thiết bị di động  Bộ ứng dụng khung cho phép sử dụng lại và thay thế các thành phần riêng lẻ  Máy ảo Dalvik được tối ưu cho các thiết bị di động, chạy các ứng dụng lập trình trên ngôn... tạo các ứng dụng di động hấp dẫn với đầy đủ các điểm mạnh của các thiết bị cầm tay hiện có Android hoàn toàn mở, một ứng dụng có thể gọi tới bất kể một chức năng lõi của điện thoại như tạo cuộc gọi, gửi tin nhắn hay sử dụng máy ảnh, cho phép người phát triển tạo phong phú hơn, liên kết hơn các tính năng cho người dùng Nền tảng này sẽ tiếp tục phát triển bởi cộng đồng phát triển để tạo ra các ứng dụng. .. Framework Kiến trúc của Android khuyến khích khái niệm thành phần sử dụng lại, cho phép công bố và chia sẻ các Activity, Service, dữ liệu, với các ứng dụng khác với quyền truy cập được quản lý bởi khai báo 1.1.2.3 Library Hình 1.6 Libraries Android cung cấp một số các APIs cho phát triển ứng dụng Danh sách các API cơ bản sau được cung cấp bởi tất cả các thiết bị trên nền Android:  android. util: Gói tiện... Nhược điểm Google Android là nền tảng mở, cho Hệ điều hành phân phép người dùng có thể tùy biến nền mảnh, không thống nhất tảng theo ý thích, hơn nữa lại có một trên các thiết bị, giới Liên minh thiết bị cầm tay mở hậu hạn về độ 'mở' và nhiều thuẫn, Google Android đang là đối thủ lỗ hổng bảo mật là xứng tầm của iPhone của Apple những yếu điểm của Android Google đang tích cực mở rộng cộng Android OS đồng... vào một điểm ảnh, không phụ thuộc các điểm ảnh xung quanh Y(m,n) = L – X(m,n) Với - Y(m,n) là giá trị mức xám kết quả của điểm ảnh sau biến đổi - X(m,n) là giá trị mức xám ban đầu của điểm ảnh - L là giá trị mức xám tối đa mà một điểm ảnh thể hiện (ảnh 8bit sẽ là 2^8 - 1 = 255)  1.5.7 Smoothing Làm trơn ảnh hay làm mịn ảnh làm cho bức ảnh mịn hơn san những điểm 34 ảnh nhiễu trong bức ảnh gần bằng... getIntend().getExtra().getInt(“key2”);  Task Android là một hệ điều hành đa tiến trình Khi lập trình trên nền tảng Android thì tiến trình là một vấn đề cần phải được chú ý nhiều nhất Mặc dù Android hỗ trợ đa tiến trình nhưng trên một thiết bị di động với cấu hình thấp mà chúng ta quá lạm dụng tiến trình thì sẽ rất tốn bộ xử lý điều này cũng đồng nghĩa với việc bạn đang biến ứng dụng của bạn trở thành một thứ phần... trong đồ họa máy tính mà với mỗi điểm ảnh của ảnh gốc được thay thế bởi một điểm ảnh nổi bật hoặc một điểm ảnh chìm Vùng ảnh có độ tương phản thấp sẽ được thay thế bởi nền xám Ảnh sau khi đi qua bộ lọc Emboss sẽ thể hiện tốc độ thay đổi màu tại mỗi nơi của ảnh gốc Nơi có tốc độ thay đổi màu thấp biến thành nền và nơi có tốc độ thay đổi màu cao biến thành các cạnh nổi Ảnh kết quả giống với việc dập nổi ... ứng dụng chỉnh sửa ảnh tảng android. ” Ứ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, thêm text sticker ngộ nghĩnh cho ảnh Bên cạnh sau xử lý ảnh xong,... phát triển để tạo ứng dụng di động hoàn hảo  Tính ngang hàng ứng dụng Với Android, khác ứng dụng điện thoại với ứng dụng bên thứ ba Chúng xây dựng để truy cập tới 11 loạt ứng dụng dịch vụ điện... 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

Ngày đăng: 08/12/2016, 23:51

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan