Tài liệu Nghiên cứu công nghệ augmented reality và viết ứng dụng minh họa trên android

  • Số trang: 101 |
  • Loại file: PDF |
  • Lượt xem: 1062 |
  • Lượt tải: 13
doanquan47669

Tham gia: 12/05/2016

Mô tả:

TRƯỜNG ĐẠI HỌC CẦN THƠ KHOA CÔNG NGHỆ THÔNG TIN LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC NGHIÊN CỨU CÔNG NGHỆ AUGMENTED REALITY VÀ VIẾT ỨNG DỤNG MINH HỌA CÔNG NGHỆ AUGMENTED REALITY TRÊN HỆ ĐIỀU HÀNH ANDROID Sinh viên thực hiện Cán bộ hướng dẫn Nguyễn Tấn Trung MSSV: 1081440 Ks. Hồ Quang Thái MSCB: 2299 Cần Thơ, 2012 TRƯỜNG ĐẠI HỌC CẦN THƠ KHOA CÔNG NGHỆ THÔNG TIN LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC NGHIÊN CỨU CÔNG NGHỆ AUGMENTED REALITY VÀ VIẾT ỨNG DỤNG MINH HỌA CÔNG NGHỆ AUGMENTED REALITY TRÊN HỆ ĐIỀU HÀNH ANDROID Sinh viên thực hiện Cán bộ hướng dẫn Nguyễn Tấn Trung MSSV: 1081440 Ks. Hồ Quang Thái MSCB: 2299 Cán bộ phản biện Học hàm, học vị, họ và tên cán bộ phản biện TS. Huỳnh Xuân Hiệp Ths.GVC Võ Huỳnh Trâm Ks. Hồ Quang Thái Luận văn được bảo vệ tại: Hội đồng chấm luận văn tốt nghiệp Bộ môn Công nghệ phần mềm, Khoa Công nghệ Thông tin, Trường Đại học Cần Thơ vào ngày 10 tháng 5 năm 2012. Mã số đề tài: Có thể tìm hiểu luận văn tại:  Thư viện Khoa Công nghệ Thông tin, Trường Đại học Cần Thơ  Website: http://www.cit.ctu.edu.vn/ Nghiên cứu công nghệ Augmented Reality và viết ứng dụng minh họa công nghệ Augmented Reality trên hệ điều hành Android LỜI CẢM ƠN Trước tiên, em xin bày tỏ lòng biết ơn chân thành và sâu sắc nhất tới Thầy, Ks. Hồ Quang Thái đã tạo điều kiện cho em thực hiện đề tài khoa học này và tận tình hướng dẫn em trong suốt quá trình thực hiện đề tài. Em xin gửi lời cảm ơn sâu sắc tới quý Thầy Cô trong Khoa Công nghệ thông tin và Truyền thông Trường ĐH Cần Thơ đã truyền đạt kiến thức quý báu cho em trong những năm học vừa qua. Xin chân thành cảm ơn các bạn bè, đặc biệt là các thành viên trong lớp DI0896A1 đã cùng đoàn kết, ủng hộ, giúp đỡ tôi trong suốt thời gian học tập trên giảng đường đại học và thực hiện đề tài. Mặc dù đã cố gắng hoàn thành luận văn trong phạm vi và khả năng cho phép nhưng chắc chắn sẽ không tránh khỏi những thiếu sót. Em kính mong nhận được sự cảm thông và tận tình chỉ bảo của quý Thầy Cô và các Bạn. Em xin chân thành cảm ơn! Cần Thơ, ngày 5 tháng 5 năm 2012 Sinh viên Nguyễn Tấn Trung GVHD: Ks. Hồ Quang Thái 1 SVTH: Nguyễn Tấn Trung Nghiên cứu công nghệ Augmented Reality và viết ứng dụng minh họa công nghệ Augmented Reality trên hệ điều hành Android MỤC LỤC LỜI CẢM ƠN ................................ ................................ ................................ 1 MỤC LỤC ................................ ................................ ................................ ..... 2 DANH MỤC HÌNH ................................ ................................ ....................... 5 KÝ HIỆU VÀ VIẾT TẮT ................................ ................................ ............. 8 TÓM TẮT ................................ ................................ ................................ ...... 9 ABSTRACT ................................ ................................ ................................ . 10 CHƯƠNG 1 ................................ ................................ ................................ . 11 TỔNG QUAN ................................ ................................ .............................. 11 I.1. ĐẶT VẤN ĐỀ ................................ ................................ .............. 11 I.2. LỊCH SỬ VẤN ĐỀ ................................ ................................ ...... 12 I.3. PHẠM VI ĐỀ TÀI ................................ ................................ ....... 12 I.4. PHƯƠNG PHÁP NGHIÊN CỨU ................................ ................ 13 CHƯƠNG 2 ................................ ................................ ................................ . 14 GIỚI THIỆU TỔNG QUAN VỀ CÔNG NGHỆ AUGMENTED REALITY ................................ ................................ ................................ ...................... 14 II.1. GIỚI THIỆU AUGMENTED REALITY ................................ .... 14 II.2. CÁC ỨNG DỤNG CỦA CÔNG NGHỆ AUGMENTED REALITY ................................ ................................ ................................ 16 II.2.1. Y tế ................................ ................................ ......................... 16 II.2.2. Giải trí ................................ ................................ ..................... 17 II.2.3. Quân sự ................................ ................................ ................... 18 II.2.4. Robotics và Telerobotics ................................ ........................ 19 II.2.5. Sản xuất, bảo trì và sửa chữa ................................ .................. 19 II.3. CÁC THÀNH PHẦN CƠ BẢN CỦA MỘT HỆ THỐNG AUGMENTED REALITY ................................ ................................ ...... 20 II.3.1. Hệ thống Augmented Reality điển hình ................................ . 20 II.3.2. Các vấn đề hiệu suất trong một hệ thống Augmented Reality điển hình ................................ ................................ .............................. 22 II.3.3. Nền tảng máy tính ................................ ................................ .. 23 GVHD: Ks. Hồ Quang Thái 2 SVTH: Nguyễn Tấn Trung Nghiên cứu công nghệ Augmented Reality và viết ứng dụng minh họa công nghệ Augmented Reality trên hệ điều hành Android II.3.4. Công nghệ hiển thị trong Augmented Reality ........................ 23 II.3.5. Theo dõi và đăng ký ................................ ............................... 25 CHƯƠNG 3 ................................ ................................ ................................ . 27 GIỚI THIỆU VỀ HỆ ĐIỀU HÀNH ANDROID VÀ AUGMENTED REALITY CHO ĐIỆN THOẠI THÔNG MINH ................................ ........ 27 III.1. HỆ ĐIỀU HÀNH ANDROID ................................ ...................... 27 III.1.1. Giới thiệu tổng quan ................................ ............................... 27 III.1.2. Kiến trúc hệ điều hành Android ................................ ............. 28 III.1.3. Các thành phần của một ứng dụng Android ........................... 30 III.1.4. Máy ảo Dalvik (DVM) ................................ ........................... 33 III.1.5. OpenGL ES cho Android ................................ ....................... 33 III.2. AUGMENTED REALITY CHO ĐIỆN THOẠI THÔNG MINH .. ................................ ................................ ................................ ...... 36 III.2.1. Giới thiệu Augmented Reality cho điện thoại thông minh .... 36 III.2.2. Giới thiệu ARToolKit ................................ ............................ 39 CHƯƠNG 4 ................................ ................................ ................................ . 41 PHƯƠNG PHÁP NHẬN DẠNG MARKER VÀ MARKERLESS TRONG AUGMENTED REALITY ................................ ................................ .......... 41 IV.1. PHƯƠNG PHÁP NHẬN DẠNG MARKER ............................... 41 IV.1.1. Ước lượng vị trí và tư thế của marker ................................ .... 41 IV.1.2. Hiệu chỉnh HMD và camera ................................ ................... 44 IV.2. PHƯƠNG PHÁP NHẬN DẠNG MARKERLESS ..................... 48 IV.2.1. Chuẩn bị ................................ ................................ ................. 48 IV.2.2. Thuật toán đăng ký cơ bản ................................ ..................... 50 IV.2.3. Phương pháp đăng ký chắc chắn ................................ ............ 53 CHƯƠNG 5 ................................ ................................ ................................ . 58 TÌM HIỂU VỀ VUFORIA SDK ................................ ................................ . 58 V.1. TỔNG QUAN HỆ THỐNG VUFORIA ................................ ...... 59 V.2. KIẾN TRÚC VUFORIA ................................ .............................. 60 V.3. TRACKABLES ................................ ................................ ............ 62 V.3.1. Định nghĩa ................................ ................................ .............. 62 GVHD: Ks. Hồ Quang Thái 3 SVTH: Nguyễn Tấn Trung Nghiên cứu công nghệ Augmented Reality và viết ứng dụng minh họa công nghệ Augmented Reality trên hệ điều hành Android V.3.2. Các tham số (Parameters) ................................ ....................... 62 V.3.3. Hệ tọa độ (Coordinate Systems) ................................ ............. 63 V.3.4. Các API liên quan (Relevant API’s) ................................ ...... 64 V.3.5. Mục tiêu hình ảnh (Image Target) ................................ .......... 65 V.3.6. Mục tiêu đa hình ảnh (Multi Target) ................................ ...... 67 V.3.7. Frame Marker ................................ ................................ ......... 70 V.4. NÚT ẢO (VIRTUAL BUTTON)................................ ................. 73 V.4.1. Định nghĩa ................................ ................................ .............. 73 V.4.2. Các tham số ................................ ................................ ............ 73 V.4.3. Các API liên quan................................ ................................ ... 74 V.5. HỆ THỐNG QUẢN LÝ MỤC TIÊU ................................ .......... 75 V.5.1. Tạo mục tiêu hình ảnh ................................ ............................ 75 V.5.2. Tạo mục tiêu đa hình ảnh ................................ ....................... 77 CHƯƠNG 6 ................................ ................................ ................................ . 80 TÌM HIỂU VỀ UNITY GAME ENGINE ................................ ................... 80 VI.1. GIỚI THIỆU TỔNG QUAN ................................ ........................ 80 VI.2. CÁC TÍNH NĂNG CHÍNH ................................ ......................... 81 CHƯƠNG 7 ................................ ................................ ................................ . 84 TÌM HIỂU VỀ BLENDER ................................ ................................ .......... 84 VII.1. GIỚI THIỆU TỔNG QUAN ................................ ........................ 84 VII.2. CÁC TÍNH NĂNG CHÍNH ................................ ......................... 84 CHƯƠNG 8 ................................ ................................ ................................ . 86 XÂY DỰNG ỨNG DỤNG AR CHO NỀN TẢNG ANDROID ................. 86 VIII.1. KỊCH BẢN ỨNG DỤNG ................................ ............................ 86 VIII.2. PHƯƠNG PHÁP THỰC HIỆN VÀ KẾT QUẢ ỨNG DỤNG ... 87 VIII.2.1. Tạo mô hình cho ứng dụng ................................ .................. 87 VIII.2.2. Lập trình cho ứng dụng ................................ ....................... 89 VIII.2.3. Kết quả ứng dụng ................................ ................................ 93 KẾT LUẬN VÀ ĐỀ NGHỊ ................................ ................................ ......... 97 TÀI LIỆU THAM KHẢO ................................ ................................ ........... 98 GVHD: Ks. Hồ Quang Thái 4 SVTH: Nguyễn Tấn Trung Nghiên cứu công nghệ Augmented Reality và viết ứng dụng minh họa công nghệ Augmented Reality trên hệ điều hành Android DANH MỤC HÌNH Hình 2.1. Thể liên tục thực - ảo của Milgram. ................................ .................... 16 Hình 2.2. Mô phỏng AR trong hình ảnh y tế. ................................ ...................... 17 Hình 2.3. Quảng cáo trên hình ảnh phát sóng trên truyền hình. ........................ 18 Hình 2.4. Trò chơi tàu hỏa vô hình. ................................ ................................ .... 18 Hình 2.5. Đào tạo quân sự. ................................ ................................ ................. 19 Hình 2.6. Các robot sử dụng AR cho hoạt động y tế từ xa. ................................ 19 Hình 2.7. AR được sử dụng để hỗ trợ công việc cơ khí. ................................ ..... 20 Hình 2.8. Các thành phần của hệ thống AR. ................................ ...................... 21 Hình 2.9. Optical See-Through HMD. ................................ ................................ 24 Hình 2.10. Sơ đồ hoạt động của Optical See-Through. ................................ ...... 24 Hình 2.11. Video See-Through HMD. ................................ ................................ . 25 Hình 2.12. Sơ đồ hoạt động của Video See-Through. ................................ ......... 25 Hình 3.1. Mối quan hệ giữa Android và phần cứng. ................................ .......... 28 Hình 3.2. Kiến trúc của Android. ................................ ................................ ........ 28 Hình 3.3. Vòng đời của một Activity. ................................ ................................ .. 32 Hình 3.4. Tổng quan cơ bản của luồng ống dẫn OpenGL ES 1.x. ..................... 34 Hình 3.5. Một số giao diện của Junaio AR Browser. ................................ ......... 37 Hình 3.6. Một số giao diện của Layar AR Browser. ................................ ........... 38 Hình 3.7. Quy trình hoạt động của AR. ................................ .............................. 38 Hình 4.1. Mối quan hệ giữa tọa độ marker và tọa độ máy ảnh được ước lượng bằng phân tích hình ảnh. ................................ ................................ ..................... 42 Hình 4.2. Hai vectơ có hướng đơn vị v1, v2 được tính từ u1 và u2. ...................... 44 Hình 4.3. Khung tọa độ trong thủ tục hiệu chỉnh. ................................ .............. 45 Hình 4.4. Hiệu chỉnh HMD. ................................ ................................ ................ 48 Hình 4.5. Hai hình ảnh kiểm soát: Các điểm tròn là các điểm đặc tính tự nhiên được theo dõi; (a) và (b) là các hình ảnh kiểm soát 1 và 2 tương ứng. .............. 50 Hình 4.6. ACS được định nghĩa bởi bốn điểm đặc tính. ................................ ..... 51 GVHD: Ks. Hồ Quang Thái 5 SVTH: Nguyễn Tấn Trung Nghiên cứu công nghệ Augmented Reality và viết ứng dụng minh họa công nghệ Augmented Reality trên hệ điều hành Android Hình 4.7. Xác định bốn điểm trong hai hình ảnh kiểm soát 1, 2 tương ứng; chữ thập màu xanh lá là các điểm được xác định bởi người dùng một cách thủ công. ................................ ................................ ................................ .............................. 51 Hình 4.8. Mối quan hệ giữa WCS và CCS (Kato 1999). ................................ .... 52 Hình 4.9. Các đối tượng ảo đang đăng ký trong cảnh thực tế: (a) và (b) là hình ảnh trong chuỗi video tương ứng. ................................ ................................ ....... 53 Hình 4.10. Lỗi chiếu lại so với nhiễu. ................................ ................................ . 54 Hình 4.11. ACS được xác định bởi một tập hợp điểm đăc tính. ......................... 55 Hình 5.1. Sơ đồ tổng quan hệ thống Vuforia. ................................ ..................... 60 Hình 5.2. Sơ đồ dòng dữ liệu của Vuforia SDK trong một môi trường ứng dụng. ................................ ................................ ................................ .............................. 62 Hình 5.3. Hệ tọa độ trên Mục tiêu hình ảnh và Marker. ................................ .... 64 Hình 5.4. Một ví dụ của Mục tiêu hình ảnh với các trục tọa độ. Hình này được đưa vào Hệ thống quản lý mục tiêu để tạo ra các tập dữ liệu mục tiêu. ............ 66 Hình 5.5. Các đặc tính tự nhiên (dấu cộng màu vàng) trên Mục tiêu hình ảnh mà Vuforia SDK sử dụng để phát hiện Mục tiêu hình ảnh. ................................ ...... 67 Hình 5.6. Mục tiêu đa hình ảnh với các trục tọa độ của nó. .............................. 69 Hình 5.7. Sự chuyển đổi của các thành phần của Mục tiêu đa hình ảnh. .......... 70 Hình 5.8. Frame Marker. ................................ ................................ .................... 72 Hình 5.9. Mục tiêu hình ảnh với các Nút ảo. ................................ ...................... 74 Hình 5.10. Trang tạo Mục tiêu hình ảnh. ................................ ........................... 76 Hình 5.11. Trang dự án với hai mục tiêu được tải lên và đánh giá chất lượng mục tiêu. ................................ ................................ ................................ ...................... 76 Hình 5.12. Trang tạo Mục tiêu đa hình ảnh. ................................ ...................... 77 Hình 5.13. Trang tải ảnh lên cho Mục tiêu đa hình ảnh. ................................ .... 78 Hình 5.14. Trang tải ảnh lên cho Mục tiêu đa hình ảnh với một số ảnh đã được tải lên. ................................ ................................ ................................ .................. 79 Hình 8.1. Mô hình khẩu pháo trong Blender. ................................ ..................... 88 Hình 8.2. Mô hình khẩu pháo hoàn chỉnh. ................................ ......................... 89 Hình 8.3. Mô hình chân tháp hoàn ch ỉnh. ................................ .......................... 89 GVHD: Ks. Hồ Quang Thái 6 SVTH: Nguyễn Tấn Trung Nghiên cứu công nghệ Augmented Reality và viết ứng dụng minh họa công nghệ Augmented Reality trên hệ điều hành Android Hình 8.4. Cấu trúc thư mục của gói Vuforia Unity Android trong một dự án Unity. ................................ ................................ ................................ ................... 90 Hình 8.5. Mục tiêu hình ảnh stone. ................................ ................................ ..... 91 Hình 8.7. Đối tượng 3D và ImageTarget trong Unity. ................................ ....... 92 Hình 8.8. Giao diện menu chính của trò chơi Cannon Destroy AR. .................. 94 Hình 8.9. Giao diện bắt đầu trò chơi với Mục tiêu hình ảnh đã được nhận dạng và theo dõi. ................................ ................................ ................................ .......... 95 Hình 8.10. Chạm vào màn hình để bắn đạn pháo. ................................ ............. 95 GVHD: Ks. Hồ Quang Thái 7 SVTH: Nguyễn Tấn Trung Nghiên cứu công nghệ Augmented Reality và viết ứng dụng minh họa công nghệ Augmented Reality trên hệ điều hành Android KÝ HIỆU VÀ VIẾT TẮT AR: Augmented Reality HMD: Head Mounted Display SDK: Software Development Kit GPS: Global Positioning System MR: Mixed Reality VR: Virtual Reality CPU: Central Processing Unit RAM: Random Access Memory DVM: Dalvik Virtual Machine PDA: Personal Digital Assistant 6DOF: Six Degrees Of Freedom GVHD: Ks. Hồ Quang Thái 8 SVTH: Nguyễn Tấn Trung Nghiên cứu công nghệ Augmented Reality và viết ứng dụng minh họa công nghệ Augmented Reality trên hệ điều hành Android TÓM TẮT Công nghệ Augmented Reality (AR) là một công nghệ đã được ứng dụng trong rất nhiều lĩnh vực khoa học và đời sống ở các quốc gia có nền công nghệ phát triển tiên tiến. Tuy nhiên ở nước ta hiện nay, công nghệ AR vẫn chưa được ứng dụng rộng rãi. Từ đó, tôi đưa ra một giải pháp để phổ biến công nghệ này trong cộng đồng người dùng thiết bị di động, đó là phát triển ứng dụng AR trên các thiết bị sử dụng hệ điều hành Android. Các nhà phát triển AR đã xây dựng các thuật toán nhận dạng marker và markerless phức tạp kết hợp với các kỹ thuật đồ họa máy tính để tạo nên một hệ thống AR. Với những thuật toán phức tạp như vậy, một hệ thống AR đòi hỏi khả năng tính toán và xử lý đồ họa cao của máy tính, đồng thời cần có các thiết bị đặc biệt như Head Mounted Display (HMD) để hỗ trợ hiển thị. Với sự phát triển mạnh mẽ như hiện nay, các thiết bị di động thông minh như máy tính bảng hay điện thoại thông minh sử dụng nền tảng Android hay iOS đã có thể đáp ứng được các yêu cầu của một hệ thống AR. Thực tế cho thấy đã có nhiều bộ công cụ phát triển ứng dụng AR trên thiết bị di động được phát triển. Trong bài viết này, tôi sẽ trình bày những hiểu biết của mình về công nghệ AR, những công nghệ có liên quan và một số bộ công cụ phát triển phần mềm AR. Đồng thời ứng dụng công nghệ này để xây dựng ứng dụng minh họa trên điện thoại di động chạy hệ điều hành Android. Từ khóa: Augmented Reality, Marker, Markerless, Head Mounted Display, Optical See-Through, Video See-Through. GVHD: Ks. Hồ Quang Thái 9 SVTH: Nguyễn Tấn Trung Nghiên cứu công nghệ Augmented Reality và viết ứng dụng minh họa công nghệ Augmented Reality trên hệ điều hành Android ABSTRACT Augmented Reality (AR) is a technology has been applied in many fields of science and life in the country with advanced technology development. But in our country, today, AR technology has not been widely applied. Since then, I offer a solusion to common this technology to making this technology popular in the user community of mobile devices, which is developing AR applications on devices using the Android OS. The AR developers have built complex algorithms to recognize marker and markerless combined with computer graphics techniques to create an AR system. With such complex algorithms, an AR system requires the ability to calculation and graphics processing of computer, and requires special equipment such as Head Mounted Display (HMD) to support the display. With the strong development as now, the smart mobile devices such as tablet or smartph ones using Android or iOS plasform was able to meet the requirements of an AR system. In fact there were many of the AR application for mobile development toolkit is developed. In this paper, I will present my understanding of AR technology, the technology involved and a number of AR software development tools. Simultaneous application of this technology to build illustrated applications on mobile phones running Android OS. Keywords: Augmented Reality, Marker, Markerless, Head Mounted Display, Optical See-Through, Video See-Through. GVHD: Ks. Hồ Quang Thái 10 SVTH: Nguyễn Tấn Trung Nghiên cứu công nghệ Augmented Reality và viết ứng dụng minh họa công nghệ Augmented Reality trên hệ điều hành Android CHƯƠNG 1 TỔNG QUAN I.1. ĐẶT VẤN ĐỀ Ngày nay, những công nghệ hiện đại trong lĩnh vực máy tính không ngừng phát triển và gia tăng. Không những trong khoa học mà trong đời sống hằng ngày, chúng ta cũng có thể thấy được sự tiến bộ trong lĩnh vực máy tính. Để tiến bộ hơn nữa con người đã không ngừng nghiên cứu và phát minh ra những công nghệ mới, phục vụ cho đời sống. Trong đó, các công nghệ về hình ảnh và đồ họa máy tính là một trong những công nghệ hiện đại nhất hiện nay. Trước đây để biết thông tin về một quyển sách, một địa danh, một chiếc điện thoại hay một chiếc laptop … người ta phải liên hệ với nhà sản xuất hoặc tìm kiếm thông tin trên internet, báo chí, ... thì bây gi ờ các thông tin đó sẽ hiển thị ngay trước mắt người xem mà không cần phải tìm kiếm. Hay trong lĩnh vực y tế, trước đây, để thực hiện một ca phẫu thuật, các bác sĩ phải tính toán các đường mổ thật kỹ lưỡng trước khi thực hiện thì ngày nay các hình ảnh bên trong có thể được hiển thị ngay trên cơ thể bệnh nhân. Đó chỉ là một trong những ứng dụng hết sức giá trị của công nghệ AR. Công nghệ AR trước kia chỉ phát triển trên các thiết bị riêng biệt, nhưng hiện nay, công nghệ này đã phát triển ngay cả trên máy tính bảng, PDA hay điện thoại di động. Hệ thống AR sử dụng những thuật toán phức tạp để theo dõi marker hay markerless thông qua thiết bị camera, sử dụng các kỹ thuật hiển thị trên HMD như Optical See–Through hay Video See–Through. Đồng thời cần có một khả năng đồ họa của máy tính để tạo ra các hình ảnh trong không gian ba chiều và hiển thị chúng lên các marker hay markerless trong HMD. Từ đó, đặt ra một vấn đề về phần cứng trên các thiết bị di động. Tuy nhiên, đây không còn là vấn đề khó khi mà các thiết bị di động với phần cứng mạnh mẽ không ngừng ra đời. Vấn đề thứ hai và cũng là vấn đề quan trọng đối với các nhà phát triển ứng dụng AR trên các thiết bị di động là sự cần thiết phải tối ưu hóa các thuật toán theo dõi marker và markerless sao cho phù hợp. Vấn đề này cũng đã được giải GVHD: Ks. Hồ Quang Thái 11 SVTH: Nguyễn Tấn Trung Nghiên cứu công nghệ Augmented Reality và viết ứng dụng minh họa công nghệ Augmented Reality trên hệ điều hành Android quyết bằng một số bộ công cụ phát triển phần mềm (SDK). Để thực hiện được một ứng dụng AR, chúng ta cần phải hiểu được thế nào là AR, marker là gì, markerless là gì, làm thế nào để tạo ra và nhận dạng marker và markerless. Đó là các vấn đề chính sẽ được đề cập trong bài viết này. I.2. LỊCH SỬ VẤN ĐỀ Các nghiên cứu về công nghệ AR trên điện thoại di động trước đây đã được nhiều tác giả ngoài nước thực hiện và đạt được những thành tựu đáng kể. Tiêu biểu là bài viết “Augmented Reality on Android Smartphones” của tác giả Tobias Domhan. Trong bài viết tác giả đã giới thiệu tổng quan về công nghệ AR và hệ điều hành Android, những hạn chế về phần cứng của các thiết bị di động trước đây, giới thiệu về thư viện ARToolkit, AR Framework AndAR dựa trên thư viện ARToolkit và kết quả của ứng dụng AndAR Model Viewer được xây dựng dựa trên AndAR. ARToolkit là một thư viện AR mạnh mẽ, được cung cấp ở dạng mã nguồn. Thư viện này hỗ trợ phát triển ứng dụng AR trên nhiều nền tảng từ Windows, Mac OS X, Linux cho đến iOS và Android. AndAR là một AR Framework dựa trên thư viện ARToolkit, nó cung cấp một Java API thuần túy. Có thể xem AndAR như là một AR SDK. Hiện nay, tồn tại song song với AndAR còn có nhiều AR SDK khác cũng phát triển rất mạnh mẽ, có thể kể đến như là SATCH, Popcode, Vuforia. Tuy nhiên, tất cả chúng đều có những ưu và khuyết điểm riêng. Chúng ta sẽ cùng tìm hiểu ở các phần sau của bài viết này. I.3. PHẠM VI ĐỀ TÀI Tìm hiểu về công nghệ AR và các công nghệ có liên quan. Tìm hiểu về hệ điều hành Android. Tìm hiểu một số AR SDK có hỗ trợ phát triển trên nền tảng Android. Lựa chọn một AR SDK thích hợp và xây dựng minh họa ứng dụng AR trên nền tảng Android dựa trên AR SDK đã chọn. GVHD: Ks. Hồ Quang Thái 12 SVTH: Nguyễn Tấn Trung Nghiên cứu công nghệ Augmented Reality và viết ứng dụng minh họa công nghệ Augmented Reality trên hệ điều hành Android I.4. PHƯƠNG PHÁP NGHIÊN CỨU Tập trung tìm hiểu lý thuyết về công nghệ AR, các kỹ thuật nhận dạng marker và makerless trong hệ thống AR. Phương pháp tìm hiểu là thông qua các bài báo khoa học có liên quan. Ngoài ra, cũng tìm hiểu về hệ điều hành Android, kiến trúc của một ứng dụng Android. Tìm đọc các bài viết về OpenGL và OpenGL ES cho Android. Tham khảo một số AR SDK cho nền tảng Android, chọn ra một AR SDK thích hợp và xây dựng demo ứng dụng AR trên thiết bị Android. Bên cạnh đó, cũng tìm hiểu thêm về cách làm việc trên công cụ Blender để tạo mô hình 3D và công cụ Unity để xây dựng trò chơi AR cho thiết bị Android. GVHD: Ks. Hồ Quang Thái 13 SVTH: Nguyễn Tấn Trung Nghiên cứu công nghệ Augmented Reality và viết ứng dụng minh họa công nghệ Augmented Reality trên hệ điều hành Android CHƯƠNG 2 GIỚI THIỆU TỔNG QUAN VỀ CÔNG NGHỆ AUGMENTED REALITY II.1. GIỚI THIỆU AUGMENTED REALITY AR là một khung nhìn vật lý hay một môi trường thế giới thực mà các yếu tố của nó được tăng cường bởi các thành phần được máy tính tạo ra như âm thanh, video, đồ họa hoặc dữ liệu GPS. Một hệ thống AR tạo ra một cái nhìn tổng hợp cho người sử dụng. Nó là sự kết hợp của những cảnh thực được thấy bởi người dùng và một cảnh ảo được tạo ra bởi máy tính làm “tăng cường” cảnh với các thông tin bổ sung. Với sự hỗ trợ của công nghệ AR các thông tin về thế giới thực xung quanh người dùng trở nên trực quan. Thông tin nhân tạo về môi trường và các đối tượng của nó có thể được đặt lên thế giới thực. Thuật ngữ AR được cho là đã được đưa ra vào năm 1990 bởi Thomas Caudell. Các lĩnh vực ứng dụng của công nghệ này được trình bày ở phần sau sẽ cho người dùng thấy rằng công nghệ AR này giúp nâng cao hiệu suất và nhận thức của họ về thế giới xung quanh. Mục tiêu cuối cùng của công nghệ AR là tạo ra một hệ thống mà người dùng không thể biết được sự khác biệt giữa thế giới thực và tăng cường ảo của nó. AR nằm trong một lĩnh vực tổng quát hơn gọi là Thực tế hỗn hợp (MR), trong đó đề cập đến một thể liên tục của các lĩnh vực bao gồm Thực tế ảo (VR), AR, Hiện diện từ xa (Telepresence) và các công nghệ liên quan khác. VR là một công nghệ bao gồm một phổ rộng các ý tưởng. Cụm từ được bắt nguồn từ Jaron Lanier người sang lập VPL Research một trong những công ty đầu tiên bán hệ thống VR. Thuật ngữ này được định nghĩa là “máy tính tạo ra môi trường tương tác ba chiều trong đó một người được đắm mình” [12]. Có ba điểm quan trọng trong định nghĩa này. Đầu tiên, môi trường ảo này là do máy tính tạo ra trong quan cảnh ba chiều, đòi hỏi hiệu năng đồ họa máy tính cao để cung cấp một mức độ đầy đủ của hiện thực. Điểm thứ hai là thế giới ảo tương GVHD: Ks. Hồ Quang Thái 14 SVTH: Nguyễn Tấn Trung Nghiên cứu công nghệ Augmented Reality và viết ứng dụng minh họa công nghệ Augmented Reality trên hệ điều hành Android tác. Một người dùng đòi hỏi phải được đáp ứng thời gian thực từ hệ thống để có thể tương tác với nó một cách hiệu quả. Điểm cuối cùng là người dùng sẽ được đắm mình trong môi trường ảo này. Một trong những dấu hiệu nhận dạng của một hệ thống VR là màn hình gắn trên đầu (HMD) được mang bởi người dùng. Những màn hình này che tất cả các thế giới bên ngoài và trình bày cho người mang nó một khung nhìn dưới sự kiểm soát hoàn toàn của máy tính. Người dùng được đắm mình hoàn toàn trong một thế giới nhân tạo và trở nên tách rời khỏi môi trường thực tế. Để sự đắm mình này xuất hiện thực sự, các hệ thống VR phải cảm nhận chính xác cách người dùng đang di chuyển và xác định các hiệu ứng sẽ có trên những cảnh quan được trình bày trong HMD. Trong Telepresence, mục đích cơ bản là mở rộng cảm giác vận hành thiết bị và khả năng giải quyết vấn đề từ xa của người điều khiển. Telepresence có thể được định nghĩa như là một hệ thống người/máy, trong đó người điều khiển nhận được thông tin đầy đủ về các điều khiển từ xa và môi trường nhiệm vụ, hiển thị một cách đầy đủ tự nhiên, mà người điều khiển cảm thấy cơ thể có mặt tại các vị trí ở xa. Rất giống với VR, trong đó nhằm mục đích đạt được những ảo ảnh của sự hiện diện bên trong một mô phỏng máy tính, Telepresence thì nhằm mục đích đạt được các ảo tưởng về sự hiện diện tại một địa điểm từ xa. AR có thể được coi là một công nghệ kết hợp giữa VR và Telepresence. Trong khi, trong VR môi trường là hoàn toàn nhân tạo và trong Telepresence nó là hoàn toàn thực tế, thì trong AR người dùng nhìn thấy môi trường thế giới thực được tăng cường với các đối tượng ảo. AR cũng được coi là một mở rộng của VR. Trong VR, thời gian, các định luật vật lý và các thuộc tính vật chất không còn được giữ nguyên, trái ngược với môi trường thế giới thực. Thay vì xem xét AR và VR như các khái niệm đối lập nhau, Milgram mô tả một phân loại xác định cách mà AR và VR làm việc có liên quan nhau. Ông định nghĩa một thể liên tục thực - ảo (Reality - Virtuality Continuum) như hình sau: GVHD: Ks. Hồ Quang Thái 15 SVTH: Nguyễn Tấn Trung Nghiên cứu công nghệ Augmented Reality và viết ứng dụng minh họa công nghệ Augmented Reality trên hệ điều hành Android Hình 2.1. Thể liên tục thực - ảo của Milgram. Môi trường thực và môi trường hoàn toàn ảo nằm ở hai đầu mút của thể liên tục này với khu vực ở giữa được gọi là MR. AR nằm ở gần môi trường thực hơn với nhận thức chiếm ưu thế là thế giới thực được tăng cường bởi các dữ liệu do máy tính tạo ra. Tính ảo tăng cường (Augmented Virtuality) là một thuật ngữ được đưa ra bởi Milgram để xác định hệ thống mà chủ yếu là giả tạo với một vài hình ảnh thế giới thực được thêm vào các đối tượng ảo. Đây là một sự phân biệt sẽ mờ dần khi công nghệ được cải thiện và các yếu tố ảo trong khung cảnh trở nên khó nhận biết được từ người dùng. Một hệ thống AR cần phải có đầy đủ ba thuộc tính sau:  Sự kết hợp của thế giới thực và ảo.  Tương tác trong thời gian thực.  Đăng ký trong không gian ba chiều. Điểm đầu tiên cho thấy, kết quả cuối cùng cần phải có cả hai thành phần, các thành phần từ thực tế ảo và thực tế. Thứ hai, các bộ phim giống như Avatar, có chứa các đối tượng ảo được pha trộn vào cảnh thực nhưng không thể được coi là AR, vì chúng không tương tác. Thêm nữa, như đã nêu ở điểm thứ ba, các chương trình được sử dụng trong dự báo thời tiết trên truyền hình, cũng không được coi là AR, vì chúng pha trộn trong bản đồ 2D chứ không có các đối tượng 3D. II.2. CÁC ỨNG DỤNG CỦA CÔNG NGHỆ AUGMENTED REALITY Công nghệ AR có nhiều ứng dụng trong một loạt các lĩnh vực, bao gồm giải trí, giáo dục, y học, kỹ thuật và sản xuất….Dự kiến các lĩnh vực tiềm năng khác sẽ xuất hiện phổ biến công nghệ này. II.2.1. Y tế Công nghệ hình ảnh là rất phổ biến trong lĩnh vực y tế. Điều đó cho thấy lĩnh vực này được coi là một trong những lĩnh vực quan trọng hơn cho các hệ GVHD: Ks. Hồ Quang Thái 16 SVTH: Nguyễn Tấn Trung Nghiên cứu công nghệ Augmented Reality và viết ứng dụng minh họa công nghệ Augmented Reality trên hệ điều hành Android thống AR. Hầu hết các ứng dụng y tế đối phó với các hình ảnh hướng dẫn phẫu thuật. Hình ảnh của con đường thông qua giải phẫu của khu vực bị ảnh hưởng (ví dụ như nơi có khối u phải được loại bỏ) được thực hiện bằng cách tạo ra một mô hình 3D từ nhiều góc nhìn và các mảng trong các nghiên cứu trước phẫu thuật. Sau đó, mô hình này được chiếu lên bề mặt mục tiêu để hỗ trợ cho các quá trình phẫu thuật. Hình 2.2. Mô phỏng AR trong hình ảnh y tế. II.2.2. Giải trí Một hình thức đơn giản của AR đã được sử dụng trong kinh doanh giải trí và tin tức trong một thời gian khá dài. Princeton Electronic Billboard phát tri ển một hệ thống AR cho phép các đài truyền hình chèn quảng cáo vào các khu vực cụ thể của hình ảnh phát sóng. Ví dụ, trong khi phát sóng một trận thi đấu bóng chày hệ thống này sẽ có thể đặt một quảng cáo trong hình ảnh phát sóng để nó xuất hiện trên các bức tường bên ngoài của sân vận động, tương tự như hình bên dưới. GVHD: Ks. Hồ Quang Thái 17 SVTH: Nguyễn Tấn Trung Nghiên cứu công nghệ Augmented Reality và viết ứng dụng minh họa công nghệ Augmented Reality trên hệ điều hành Android Hình 2.3. Quảng cáo trên hình ảnh phát sóng trên truyền hình. Một lĩnh vực giải trí khác, không thể bỏ qua đó là trò chơi. Hiện nay các trò chơi thể loại AR phát triển rất đa dạng và phong phú, như hình bên dưới, một trò chơi hiển thị một chiếc tàu hỏa ảo trên một đường ray làm bằng gỗ thực. Ứng dụng đang chạy trên một chiếc PDA. Hình 2.4. Trò chơi tàu hỏa vô hình. II.2.3. Quân sự Quân đội đã sử dụng các loại hiển thị trong buồng lái để hiển thị thông tin đến phi công trên kính chắn gió của buồng lái hoặc tấm che mũ bảo hiểm trên máy bay. Đây là một hình thức hiển thị AR. GVHD: Ks. Hồ Quang Thái 18 SVTH: Nguyễn Tấn Trung
- Xem thêm -