Kiến trúc tổng thể hệ thống AR-LBS

Một phần của tài liệu nghiên cứu kiến trúc hệ thống ar-lbs (Trang 45 - 76)

Về cơ bản, việc kết hợp AR và LBS là bổ sung dữ liệu vào cho hệ thống AR từ dịch vụ dựa trên vị trí. Quá trình có thể được mô tả như hình sau:

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ Xử lý hình ảnh từ thế giới thực qua camera Xác định tọa độ GPS Nhận dạng đối

tượng Gửi yêu cầu lên server

Lây tài nguyên tương ứng trả về Gắn các tài

nguyên vào các đói tượng Hiển thị cho người

dùng

Hình 2.7: Quy trình xử lý hệ thống AR-LBS

Xác định tọa độ GPS: Qua các phương pháp định vị đã nêu ở phần 2.3, hệ

thống sẽ xác định vị trí của mình để làm đầu vào cho dịch vụ LBS.

Xử lý hình ảnh: Lấy về các hình ảnh qua các luồng video thu từ camera và

thực hiện xử lý đơn giản trước khi nhận dạng.

Nhận dạng đối tƣợng: Việc nhận dạng đối tượng có thể dựa vào nhiều

phương pháp hoặc là các đặc điểm tự nhiên của đối tượng thế giới thực, hoặc là các vật đánh dấu (markers) để hệ thống có thể nhận ra được, các vấn đề này sẽ trình bày trong phần ứng dụng AR-LBS

Gửi yêu cầu lên server: Thực hiện gửi các thông tin GPS lên server để

nhận về các tài nguyên.

Lấy tài nguyên tƣơng ứng: Lấy về các tài nguyên tương ứng từ server

(các dữ liệu có thể là các đối tượng ảo).

Gắn các tài nguyên vào các đối tƣợng: Dựa trên các nhận dạng đối tượng

thực, hệ thống thực hiện các phương pháp sắp xếp đối tượng tài nguyên ảo lên luồng video của camera sao cho tương ứng với đối tượng thực.

Hiển thị cho ngƣời dùng: Hiển thị các hình ảnh AR qua các thiết bị hiển

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Dựa trên quy trình xử lý, hạ tầng mạng truyền thông ta có thể đưa ra một kiến trúc tổng quan về hệ thống AR-LBS như sau:

Hình 2.8: Kiến trúc AR – LBS

Trong kiến trúc này, thiết bị AR được trang bị khả năng định vị để xác định vị trí, camera và một ứng dụng AR để giao tiếp và lấy về dữ liệu AR-LBS thông qua hệ thống mạng truyền thông.

Dữ liệu AR-LBS là các dữ liệu được tổ chức để cho ứng dụng AR dễ dàng xác định được tài nguyên nào sẽ gắn lên các đối tượng thực và hỗ trợ truy xuất thông qua các URL.

2.4.2. Các thành phần của kiến trúc AR-LBS

Thiết bị AR: là thiết bị có đầy đủ tính năng của một hệ thống thực tại tăng

cường như: Hệ lưu vết, Bộ phô phỏng, và Thiết bị hiển thị. Tuy nhiên Bộ mô phỏng có khả năng kết nối với hệ thống mạng truyền thông để lấy các nguồn tài nguyên cần thiết.Hiện nay thiết bị AR có thể là các HDM hoặc smartphone.

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Bộ định vị: để xác định vị trí hệ thống thông qua các hệ thống định vị. Bộ

định vị có thể được tích hợp sẵn trong Hệ lưu vết.

Hệ thống định vị: Có thể sử dụng một hoặc nhiều các trạm phát sóng mặt

đất để định vị hoặc sử dụng hệ thống định vị bằng vệ tinh (GPS) (Đã nhắc đến trong phần 2.3).

Các ứng dụng AR:Các ứng dụng là cầu nối để người dùng giao tiếp với hệ

thống, được cài đặt trên thiết bị AR, có thể thực hiện hỗ trợ chức năng mô phỏng, lưu vết và hiển thị.Ứng dụng có thể được nhúng trong hệ thống phần cứng, cũng có thể là một chương trình có thể cài đặt, gỡ bỏ khi thiết bị có sử dụng hệ điều hành.

Dịch vụ: Các dịch vụ cần được cung cấp như dịch vụ tính toán vị trí, dịch

vụ cung cấp thông tin tới các đối tượng… Thường được cung cấp bởi các nhà cung cấp LBS.

Các thành phần khác:Hệ thống mạng truyền thông, internet và các máy

chủ cung cấp dịch vụ, tài nguyên.

2.4.2 Cơ sở dữ liệu AR-LBS

Cơ sở dữ liệu AR-LBS lưu trữ các thông tin về tài nguyên cho ứng dụng AR và vị trí của nó. Các tài nguyên có thể là các dạng dữ liệu có cấu trúc riêng, hay các dũ liệu media như: hình ảnh, âm thanh, văn bản, video… được lưu trữ phân tán hoặc tập trung trên internet.

Để đảm bảo hiệu năng của hệ thống lượng dữ liệu lớn, Cơ sở dữ liệu AR- LBS cần phải được phân loại dữ liệu, phân lớp theo nhiều tiêu chí, chỉ mục dữ liệu, các thuật toán nén và mã hóa… giúp tăng tốc độ khi truy xuất trên môi trường mạng.

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

2.4.3 Các vấn đề khi phát triển ứng dụng AR-LBS

Với các thiết bị AR chuyên dụng, hệ thống điều khiển được nhúng và trong các vỉ mạch phần cứng. Ứng dụng AR được nhắc đến trong phạm vi luận văn chủ yếu đề cập đến các thiết bị điện thoại thông minh.

Để phát triển ứng dụng AR cần quan tâm một số các khái niệm sau:

Khung nhìn thực (Reality view):

Được xem như luồng video sinh ra bởi camera của smartphone. Nó chính là khung cảnh mà người dùng thấy được khi quan sát qua một ứng dụng camera bình thường. Ứng dụng sẽ phân tích ảnh lấy được từ luồng video và bổ sung các đối tượng ảo để tạo ra những hình ảnh tăng cường.

Lƣu vết (Registration and Tracking):

Mô tả phương thức căn chỉnh các đối tượng ảo để ghép vào khung nhìn thực tế. Đối với các ứng dụng smartphone, việc lưu vết các đối tượng bao gồm hoặc là cảm biến về vị trí (GPS), la bàn số và gia tốc kế (đây là các phương pháp lưu vết theo vị trí – Location based tracking) hoặc hệ nhận dạng hình ảnh (phương pháp lưu vết theo thị giác – Optical tracking) hoặc là kết hợp cả 2 loại trên.

Điểm đặc trƣng (Point of Interest (POI)):

Là một dạng dữ liệu điển hình gắn liền với vị trí địa lý (longitude, latitude, altitude) hoặc một mẫu trực quan (marker, book cover …) mà có thể được dựng lên trong ứng dụng AR. Kiểu dữ liệu POI phải cung cấp được vị trí hoặc các hình ảnh tham chiếu trong việc lưu vết và kiểu nội dung sẽ được dựng lên. Thông thường bản thân nội dung không phải là một phần của POI, mà POI sẽ cung cấp một liên kết tới nội dung cần hiển thị.

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Đối tƣợng ảo (virtual object):

Một số nội dung số được dựng lên trong ứng dụng AR và đặt lên khung nhìn thực tế. Nội dung thường gồm: mô hình 3D, ảnh 2D, biểu tượng và văn bản.

Markerless và Marker based AR:

Nơi mà việc nhận dạng ảnh được sử dụng để sắp các đối tượng ảo (optical tracking) đó là sự phân biệt giữa các hệ thống xác định mộtmarker nhân tạo ( gồm mã ma trận 2 chiều hoặc diode phát quang) đặt tại các vị trí hoặc là trên các đối tượng của thế giới thực và những vị trí mà có thể nhận dạng bằng các đặc điểm tự nhiên để xác định các đối tượng thế giới thực không được sửa đổi như : bìa sách, poster quảng cáo, mốc ranh giới … mà nó không có các marker nhân tạo để hỗ trợ nhận dạng (Markerless) .

Trong mỗi trường hợp các đối tượng ảo 2d hay 3d xuất hiện để được gắn với marker hoặc các đặc điểm tự nhiên khi nhìn qua ứng dụng AR.

Lƣu vết dựa trên vị trí

Hệ thống sẽ thực hiện việc lưu vết dựa trên thông tin vị trí địa lý được cảm nhận bởi các cảm biến định vị của thiết bị (longitude, latitude, altitude ..) là vấn đề chính khi kết hợp AR và LBS để tạo ra ứng dụng AR-LBS. Lưu vết dựa trên vị trí sẽ cho phép ứng dụng xác định các dịch vụ tương ứng với vị trí của thiết bị thông qua cảm biến định vị.

2.4.4 Các chiến lƣợc phát triển hệ thống AR-LBS

Kiến trúc AR-LBS sử dụng các thiết bị di động đầu cuối để tương tác với máy chủ nhận về các dữ liệu định vị, dữ liệu AR thông qua hệ thống mạng truyền thôngvà internet nên kiến trúc AR-LBS có mô hình client-server. Có nhiều chiến lược có thể được ứng dụng để phát triển hệ thống AR-LBS như:

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Server-side: Cho phép clients gửi các câu truy vấn dữ liệu và phân tích tới server. Server xử lý các câu truy vấn và cho lại dữ liệu hoặc giải pháp tới remote client

Client-side: Cho phép clients thực hiện chế tác và phân tích dữ liệu ngay trên các máy của họ

Ngoài ra có thể tổ hợp các xử lý của Server và client hình thành chiến lược lai để tối ưu hiệu năng và đáp ứng các nhu cầu đặc biệt của người sử dụng.

2.4.5.1. Chiến lƣợc Server-side

Trong chiến lược này, việc giải quyết vấn đề tập trung vào cung cấp dữ liệu AR và phân tích yêu cầu từ phía heavy server.Dữ liệu và các chương trình xử lý dữ liệu được cài đặt trên server.

Phía client chỉ cần thiết bị tính toán khả năng thấpđể gửi yêu cầu và hiển thị kết quả cho lại từ server

Thủ tục xử lý:

1. Client: Ứng dụng AR gửi dữ liệu định vị và các lưu vết (trackking) thu được từ camera và gửi lên server thông qua internet.

2. Server: Dịch vụ trên server xử lý các thông tin từ client, trích xuất dữ liệu AR. Trả dữ liệu lại cho Client

3. Client: Nhận dữ liệu trả về từ server. Thực hiện gắn các dữ liệu lên màn hình camera và hiển thị kết quả.

Chương trình phía client: có khả năng sử dụng camera và xác định được lưu vết đối tượng qua camera, xác định được vị trí thông qua các hệ thống định vị, có thể xây dựng bằng C++, java, C# ..

Chương trình phía server: Có các service để nhận, xử lý và trả dữ liệu thông qua các giao thức thông dụng như HTTP, TCP/IP ,…Có giao diện web

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

quản trị về dữ liệu, tài nguyên của hệ thống. Ngoài ra cần thiết có các chương trình để xử lý dữ liệu nhập, nhận dạng theo vị trí, …

Nhận xét về chiến lược Server-side:

Ƣu điểm: Với hệ thống máy chủ có hiệu năng cao, tốc độ xử lý dữ liệu sẽ

rất nhanh, đảm bảo có thể phân tích các dữ liệu phức tạp.

Thiết bị client chỉ cần có cấu hình vừa đủ với các thành phần phần cứng cơ bản để truyền nhận và hiển thị dữ liệu.

Nhƣợc điểm: Client không chủ động được những xử lý nhỏ, không tận

dụng được hiệu năng của thiết bị client.

Lượng dữ liệu truyền trên đường truyền có thể rất lớn sẽ dẫn đến khoảng thời gian trễ với ứng dụng.Thậm chí có thể không có đáp ứng từ server.

2.4.5.2. Chiến lƣợc Client-side

Các ứng dụng Client-side chia sẻ một số công việc xử lý yêu cầu với máy chủ.Chiến lược này còn có tên gọi là think client.Thay vì mọi thứ đều làm trên máy chủ, một vài khả năng nhận dạng, lưu vết có thể được cài đặt trên client để tự xử lý dữ liệu.

Thủ tục xử lý:

1. Client: Ứng dụng AR gửi yêu lên server.

2. Server: Dịch vụ trên server xử lý yêu cầu và trả lại dữ liệu cần thiết. 3. Client: Nhận dữ liệu trả về từ server. Client tự xử lý các dữ liệu nhận

về.

Chương trình phía client: có khả năng sử dụng camera. Xác định được lưu vết đối tượng qua camera, xác định được vị trí thông qua các hệ thống định vị.

Có khả năng nhận dạng và gắn đối tượng thực - ảo và hiển thị trên màn hình.

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Có thể xây dựng chương trình bằng C++, java, C# ..

Chương trình phía server: Có các service để nhận, xử lý và trả dữ liệu thông qua các giao thức thông dụng như HTTP, TCP/IP ,… Có giao diện web quản trị về dữ liệu, tài nguyên của hệ thống.

Ƣu điểm: Ứng dụng sẽ tận dụng lợi thế sức mạnh xử lý của máy tính phía

client

User có đầy đủ khả năng làm chủ tiến trình phân tích dữ liệu

Một khi server trả lời client, user có thể chế tác dữ liệu mà không phải trao đổi thông điệp giữa client và server qua Internet.

Nhƣợc điểm: Nếu máy tính client không đủ mạnh thì rất khó khăn xử lý tập dữ liệu phức tạp và lớn

Các chương trình Dò vết (tracking) phức tạp sẽ chạy chậm hơn trên client so với trên server

Nếu có những thay đổi nâng cấp về các vấn đề xử lý thì client phải thực hiện update.

2.4.5.3. Chiến lƣợc Tích hợp

Như đã trình bày ở phần trước, chiến lược server-side và client-side đều có hạn chế.Nếu chiến lược server-side đòi hỏi thường xuyên tải data thì hiệu năng của nó phụ thuộc vào băng thông Internet và lưu lượng mạng. Chiến lược client- side phụ thuộc vào sức mạnh của máy tính client, có nghĩa một số nhiệm vụ chạy chậm.

Có thể tổ hợp hai chiến lược trên để hình thành giải pháp lai phù hợp hơn với khả năng của cả server và client như sau:

Các nhiệm vụ đòi hỏi sử dụng CSDL lớn hay phân tích phức tạp được giao cho máy chạy nhanh hơn, thông thường là server

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Các nhiệm vụ đòi hỏi user có mức làm chủ cao thì gán cho client

2.5. Kết luận chƣơng 2

Kiến trúc AR-LBS là sự kết hợp của rất nhiều công nghệ, nó đòi hỏi cao về thiết bị người dùng cũng như các hạ tầng và dịch vụ hỗ trợ.Các thiết bị AR phải có khả năng hiển thị tốt hình ảnh, khả năng định vị, có kết nối internet với một tốc độ chấp nhận được để đảm bảo về mặt cung cấp dữ liệu thời gian thực.Bên cạnh đó, hệ thống server phải có khả năng tổ chức lưu trữ các dữ liệu đa phương tiện để đáp ứng các dịch vụ mà hệ thống yêu cầu.

Việc đưa kiến trúc vào trong cuộc sống mang lại những trải nghiệm thú vị cho người dùng, các ứng dụng sẽ hỗ trợ người dùng tra cứu, mô phỏng một cách trực quan dưới ống kính camera của thiết bị. AR-LBS có thể ứng dụng trong các lĩnh vực du lịch, giải trí, khám phá …

Tuy nhiên, để triển khai một ứng dụng thực tế còn rất nhiều khó khăn. Ngoài việc đảm bảo về mặt thiết bị, hạ tầng truyền thông và hệ thống server, vấn đề về thu thập dữ liệu và tiền xử lý cũng đòi hỏi phải có những đầu tư nhất định. Về mặt thiết bị: Thiết bị AR chuyên dụng có khả năng mô phỏng rất tốt nhưng hạn chế về vấn đề tùy chọn kết nối, giá thành lại quá cao. Những thiết bị smartphone hiện nay có thể khắc phục được những điểm yếu trên của thiết bị AR chuyên dụng, chúng có hệ điều hành có thể dễ dàng phát triển các ứng dụng trên đó, đồng thời có khả năng xử lý hình ảnh và khả năng kết nối mạng truyền thông rất tốt.

Chương tiếp theo của luận văn sẽ trình bày giải pháp về xây dựng một ứng dụng AR-LBS trong thực tế.

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Chƣơng 3: Xây dựng demo hệ thống AR-LBS trên nền tảng GoogleApp Engine

3.1. Giới thiệu về Google App-Engine

Google App Engine (thường được gọi tắt là GAE hoặc App Engine) là nền tảng PaaS được Google cung cấp nhằm phát triển các ứng dụng web và được lưu trữ tại Trung tâm quản lý dữ liệu Google (Google-managed data center). Các ứng dụng được đóng gói và chạy trên các máy chủ.

Google App Engine cho phép người dùng chạy các ứng dụng web trên nền tảng kiến trúc Google.Các ứng dụng App Engine được xây dựng và quản lý một cách dễ dàng. Với App Engine, không cần phải bào trì máy chủ, người dùng upload các ứng dụng và nó luôn sẵn sàng phục vụ.

App Engine tự động tổng hợp yêu cầu cho các ứng dụng, như: tự động tổng hợp các yêu cầu của ứng dụng, tự động xác định vị trí các tài nguyên cần thiết để ứng dụng có thể đáp ứng các yêu cầu người dùng.

Người dùng có thể sử dụng domain được cung cấp bởi Google Apps hoặc sử dụng domain riêng cho các ứng dụng của mình.Các ứng dụng có thể được chia sẻ rộng rãi hoặc giới hạn cho một nhóm người dùng nhất định.

Một phần của tài liệu nghiên cứu kiến trúc hệ thống ar-lbs (Trang 45 - 76)

Tải bản đầy đủ (PDF)

(76 trang)