ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ
VŨ TRỌNG SINH
PHÁT TRIỂN ỨNG DỤNG LBS
VỚI CÔNG NGHỆ THỰC TẠI TĂNG CƢỜNG
TRÊN NỀN TẢNG ĐIỆN TOÁN ĐÁM MÂY
Ngành: Công nghệ thông tin
Chuyên ngành: Hệ thống thông tin
LUẬN VĂN THẠC SỸ CÔNG NGHỆ THÔNG TIN
Hà Nội - 2013
2
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ
VŨ TRỌNG SINH
PHÁT TRIỂN ỨNG DỤNG LBS
VỚI CÔNG NGHỆTHỰC TẠI TĂNG CƢỜNG
TRÊN NỀN TẢNG ĐIỆN TOÁN ĐÁM MÂY
Ngành: Công nghệ thông tin
Chuyên ngành: Hệ thống thông tin
LUẬN VĂN THẠC SỸ CÔNG NGHỆ THÔNG TIN
NGƢỜI HƢỚNG DẪN KHOA HỌC: PGS.TS. TRƢƠNG NINH THUẬN
Hà Nội – 2013
3
LỜI CAM ĐOAN
Tôi xin cam đoan rằng luận văn của tôi hoàn toàn là công trình nghiên cứu của
bản thân. Luận văn hoàn toàn không phải là bản sao chép công trình nghiên cứu của
một ngƣời khác, nó mang tính độc lập nhất định với tất cả các công trình nghiên cứu
trƣớc đây. Nếu có vi phạm, tôi xin hoàn toàn chịu trách nhiệm.
Hà Nội, ngày tháng năm 2013
Học viên
VŨ TRỌNG SINH
4
LỜI CẢM ƠN
Đầu tiên, tôi xin gửi lời cảm ơn sâu sắc đến thầy giáo, cán bộ hƣớng dẫn khoa
học PGS.TS Trƣơng Ninh Thuận, ngƣời thầy đã tận tình hƣớng dẫn cho tôi từ những
buổi đầu tiên khi tiếp cận với đề tài tốt nghiệp. Thầy đã hƣớng dẫn, chỉ bảo tận tình
cho tôi về phƣơng pháp nghiên cứu khoa học, cách làm việc khoa học trong suốt thời
gian qua.
Tôi xin bày tỏ lòng biết ơn đến các thầy cô giáo ở trƣờng Đại học Công nghệ -
Đại học Quốc gia Hà Nội, các cán bộ phòng Hệ thông tin địa lý – Viện Công nghệ
thông tin – Viện Hàn lâm khoa học Việt Nam đã tận tình giảng dạy và tạo mọi điều
kiện cho tôi học tập, nghiên cứu và hoàn thành luận văn này.
Tôi xin chân thành cảm ơn các bạn học viên K17 – Hệ thống thông tin đã giúp
đỡ, tạo điều kiện cho tôi trong suốt quá trình học tập và thực hiện luận văn.
Cuối cùng, tôi xin gửi lời cảm ơn sâu sắc nhất đến gia đình, đồng nghiệp và bạn
bè tôi, những ngƣời đã động viên, tạo mọi điều kiện cho tôi lao động và học tập trong
suốt thời gian qua.
Hà Nội, ngày tháng năm 2013
Học viên
VŨ TRỌNG SINH
5
MỤC LỤC
LỜI CAM ĐOAN 3
LỜI CẢM ƠN 4
Danh mục các từ viết tắt 7
Danh mục bảng biểu trong luận văn 8
Danh mục hình vẽ trong luận văn 8
MỞ ĐẦU 9
CHƢƠNG 1: TỔNG QUAN VỀ DỊCH VỤ DỰA TRÊN VỊ TRÍ 11
1.1. Giới thiệu về dịch vụ LBS 11
1.2. Các thành phần cơ bản của LBS 13
1.3. Hoạt động của hệ thống LBS 14
1.4. Đặc điểm của LBS 17
1.5. Kết luận 17
CHƢƠNG II: CÔNG NGHỆ THỰC TẠI TĂNG CƢỜNG 18
2.1. Công nghệ thực tại tăng cƣờng là gì 18
2.2. Các thành phần của một hệ thống thực tại tăng cƣờng 18
2.2.1. Bộ mô phỏng 19
2.2.2. Hệ thống lƣu vết 19
2.2.3. Thiết bị hiển thị 20
2.3. Những ứng dụng của công nghệ AR trong thực tế 20
2.4. Khả năng ứng dụng của AR trong dịch vụ LBS 23
CHƢƠNG III: CÔNG NGHỆ ĐIỆN TOÁN ĐÁM MÂY GOOGLE APP ENGINE 25
3.1. Định nghĩa điện toán đám mây 25
3.2. Những tính chất cơ bản của điện toán đám mây 26
3.2.1. Tự phục vụ theo nhu cầu (On-demand self-service) 27
3.2.2. Truy xuất diện rộng (Broad network access) 27
3.2.3. Dùng chung tài nguyên (Resource pooling) 27
3.2.4. Khả năng co giãn (Rapid elasticity) 28
3.2.5. Điều tiết dịch vụ (Measured service) 28
3.3. Ƣu và nhƣợc điểm của điện toán đám mây 28
3.3.1. Ƣu điểm 28
3.3.2. Nhƣợc điểm 29
3.4. Dịch vụ điện toán đám mây Google App Engine 30
3.4.1. Môi trƣờng ứng dụng: 31
3.4.2. RunTimes và Frameworks: 31
3.4.3. Hỗ trợ và độ tin cậy 32
3.4.4. Google Cloud SQL 32
3.4.5. Giới hạn sử dụng 32
6
3.4.6. Free Quota 32
3.5. Kết luận 33
CHƢƠNG IV: PHÁT TRIỂN ỨNG DỤNG LBS VỚI CÔNG NGHỆ THỰC TẠI
TĂNG CƢỜNG TRÊN NỀN TẢNG GOOGLE APP ENGINE 34
4.1. Đặt vấn đề 34
4.2. Phân tích thiết kế hệ thống 34
4.3. Cài đặt thử nghiệm ứng dụng 36
4.3.1. Thiết kế cơ sở dữ liệu 36
4.3.2. Công cụ sử dụng 37
4.3.3. Thiết kế chƣơng trình 37
4.4. Đánh giá quá trình phát triển ứng dụng 41
KẾT LUẬN 42
TÀI LIỆU THAM KHẢO 43
Phụ lục 44
Phụ lục 1: Khởi tạo môi trƣờng phát triển ứng dụng Google App Engine trên
Eclipse 44
1. Cài đặt Eclipse 44
2. Cài đặt Google Plugin cho Eclipse 44
3. Khởi tạo một Project sử dụng Google App Engine 44
4. Chạy ứng dụng 44
5. Đƣa ứng dụng lên Google App Engine 44
Phụ lục 2: Cài đặt Android với Eclipse 45
1. Download Android SDK 45
2. Tích hợp Android SDK vào Eclipse 45
7
DANH MỤC CÁC TỪ VIẾT TẮT
STT
Từ viết tắt
Tiếng Anh
Tiếng Việt
1
Cloud
Computing
Cloud Computing
Điện toán đám mây
2
GAE
Google App Engine
Dịch vụ điện toán đám mây của
Google
3
GIS
Geographic
Information System
Hệ thông tin địa lý
4
GPS
Global Positioning
System
Hệ thống định vị toàn cầu
5
Grid
Computing
Grid Computing
Tính toán lƣới
6
Hybrid Cloud
Hybrid Cloud
Dịch vụ đám mây lai
7
IaaS
Infracstructure as a
Serivce
Dịch vụ kiến trúc
8
LBS
Location Based
Services
Dịch vụ dựa trên vị trí
9
PaaS
Platform as a
Service
Dịch vụ nền tảng
10
Private Cloud
Private Cloud
Dịch vụ đám mây nội bộ
11
Public Cloud
Public Cloud
Dịch vụ đám mây mở
12
SaaS
Software as a
Service
Dịch vụ phần mềm
13
AR
Augmented Reality
Thực tại tăng cƣờng
8
DANH MỤC BẢNG BIỂU TRONG LUẬN VĂN
Bảng3.1. Bảng mô tả giới hạn sử dụng của một ứng dụng GAE miễn phí 32
Bảng3.2. Bảng mô tả free quota của một ứng dụng GAE miễn phí 33
DANH MỤC HÌNH VẼ TRONG LUẬN VĂN
Hình 1.1. Các hệ thống thông tin tích hợp 11
Hình 1.2. Công nghệ định vị và hệ thống LBS 12
Hình 1.3.Các thành phần cơ bản của LBS 13
Hình 1.4. Trao đổi thông tin giữa các thành phần trong hệ thống LBS 14
Hình 1.5. Các thiết bị di động 15
Hình 1.6. Vai trò của GeoMobility Server 16
Hình 2.1. Công nghệ thực tại tăng cƣờng 17
Hình 2.2. Hệ thống thực tại tăng cƣờng Head-Mounted-Display 18
Hình 2.3. Mô hình hệ thống thực tại tăng cƣờng Head-Mounted-Display 13
Hình 2.4. Ứng dụng của AR trong quân sự 20
Hình 2.5. Ứng dụng của AR trong giải trí 21
Hình 2.6. Ứng dụng của AR trong truyền thông 22
Hình 2.7. Ứng dụng Nokia City Lens 23
Hình 3.1.Điện toán đám mây 25
Hình 3.2. Đặc điểm của điện toán đám mây và các nhóm mô hình phân loại 26
Hình 3.3. Bảng khảo sát chất lƣợng dịch vụ 28
Hình 3.4. Hiện tƣợng thắt cổ chai trong ứng dụng Google App Engine khi có nhiều
truy cập đến tại cùng thời điểm 30
Hình 4.1. Mô hình hệ thống ứng dụng thực tại tăng cƣờng trên nền tảng điện toán đám
mây 33
Hình 4.2. Cơ sở dữ liệu địa điểm 36
Hình 4.3. Bảng Category trên GAE 36
Hình 4.4. Bảng Place trên GAE 37
Hình 4.5. Giao diện quản lý nhóm tiện ích 38
Hình 4.6. Giao diện quản lý điểm tiện ích 38
Hình 4.7. Giao diện thêm mới/sửa điểm tiện ích 39
Hình 4.8. Giao diện bản đồ hiển thị các điểm tiện ích 40
Hình 4.9. Màn hình ứng dụng trên modul Client 41
9
MỞ ĐẦU
Ngày nay, trên thế giới cũng nhƣ tại Việt Nam, thị trƣờng thiết bị di động thông
minh đang phát triển rất mạnh. Ngƣời tiêu dùng có xu hƣớng chuyển sang sử dụng
smartphone thay vì điện thoại di động cổ điển, hay sử dụng máy tính bảng thay vì sử
dụng máy tính để bàn hay máy tính xách tay vì những tính năng mà nó mang lại cũng
nhƣ giá thành ngày một giảm. Theo thống kê của Google, cho đến giữa năm 2013 số
ngƣời dùng smartphone tại Việt Nam đã chiếm tới gần 20% dân số. Các nhà sản xuất
thiết bị viễn thông càng ngày càng cho ra mắt những sản phẩm vƣợt trội hơn với
những tính năng độc đáo. Thêm vào đó, với việc các dịch vụ mạng không dây nhƣ
wifi, wimax, 3G đã đƣợc phủ sóng rộng khắp với chất lƣợng tƣơng đối đảm bảo, thì
các ứng dụng trên thiết bị di động thông minh cũng trở nên vô cùng phong phú. Một
trong những loại ứng dụng đƣợc sử dụng nhiều nhất trên các thiết bị này là loại ứng
dụng dựa trên vị trí (LBS-Location Based Service)hoạt động nhờ vào dữ liệu bản đồ
và tính năng định vị toàn cầu đƣợc tích hợp sẵn trên hầu hết các thiết bị.Loại ứng dụng
này giúp ngƣời dùng có thể tìm đƣờng, tìm các điểm tiện ích nhƣ cây xăng, bệnh viện,
trƣờng học, … xung quanh vị trí mình đang đứng. Ở Việt Nam, một số nhà phát triển
cũng đã tiếp cận với loại ứng dụng này. Tuy nhiên mức độ thân thiện với ngƣời dùng
là chƣa cao, chƣa cung cấp đƣợc đầy đủ, trực quan những nội dung mà ngƣời dùng
mong muốn.
Vậy với tốc độ phát triển hết sức nhanh chóng của các thiết bị di động thông
minh này, câu hỏi đặt ra là làm sao để thiết kế những ứng dụng LBS sinh động hơn,
giúp ngƣời dùng dễ dàng tìm đƣợc những địa điểm phù hợp với nhu cầu của họ. Công
nghệ thực tại tăng cƣờng chính là một trong những giải pháp tối ƣu nhất.
Công nghệ thực tại tăng cƣờng (Augmented Reality - AR) đƣợc hiểu là công
nghệ cho phép con ngƣời quan sát, nhận biết các đối tƣợng trong thế giới thực thông
qua một thiết bị thông minh nào đó với những thông tin chi tiết hơn. Thực tại tăng
cƣờngtrên thiết bị di động sử dụng các thông tin từ hình ảnh thực tế đƣợc cung cấp
thông qua camera và các cảm biến nhƣ GPS,la bàn số, gia tốc kế… sau khi đã qua xử
lý, sẽ chuyển đến ngƣời dùng, đồng thời bổ sung những thông tin cụ thể liên quan đến
hình ảnh đó.Thông tin bổ sung này phải đƣợc thể hiện một cách chân thực nhằm
thuyết phục ngƣời dùng rằng đó cũng là một phần của thế giới thực. Ứng dụng công
nghệ thực tại tăng cƣờng trong phát triển các dịch vụ LBS sẽ giúp cho việc cung cấp
các dịch vụ này trở nên thân thiện hơn với ngƣời dùng qua tƣơng tác, đồng thời nâng
cao chất lƣợng cung cấp dịch vụ.
Trong luận văn này, tác giả sẽ trình bày các kết quả nghiên cứu về công nghệ
thực tại tăng cƣờng và áp dụng cho dịch vụ LBS hỗ trợ ngƣời dùng khi tìm hiểu các vị
trí xung quanh một cách trực quan bằng hình ảnh trên camera, đã bổ sung thêm lớp
thông tin AR.Ứng dụng LBS đƣợc cài đặt thử nghiệm trên smartphone sử dụng hệ điều
10
hành Android phiên bản 2.3 trở lên, với bộ dữ liệu địa điểm tự xây dựng và quản lý
trên nền tảng điện toán đám mây Google App Engine. Đây cũng là một phần trong đề
tài của Viện Công Nghệ Thông Tin – Viện Hàn Lâm Khoa Học Việt Nam nghiên cứu
về dịch vụ LBS mà tác giả đƣợc tham gia.
Luận văn có bố cục nhƣ sau:
- Chương I:Tổng quan về dịch vụ dựa trên vị trí
Chƣơng này cung cấp những kiến thức cơ bản về dịch vụ dựa LBS
- ChươngII: Công nghệ thực tại tăng cường
Chƣơng này giới thiệu tổng quan về công nghệ thực tại tăng cƣờng, đặc điểm của
một hệ thống thực tại tăng cƣờng và khả năng ứng dụng của công nghệ này với dịch
vụ LBS
- Chương III: Công nghệ điện toán đám mây Google App Engine
Chƣơng này giới thiệu giải pháp công nghệ điện toán đám mây, đánh giá ƣu nhƣợc
điểm của hệ thống LBS nếu triển khai trên nền tảng điện toán đám mây Google App
Engine
- ChươngIV: Phát triển ứng dụng LBS với công nghệ thực tại tăng cường trên
nền tảng Google App Engine
Chƣơng này sẽ giới thiệu một phƣơng pháp xây dựng ứng dụng LBS với công nghệ
thực tại tăng cƣờng đã trình bày, với dữ liệu địa điểm tự xây dựng đƣợc quản lý trên
Google App Engine cùng với những hƣớng phát triển thêm trong tƣơng lai.
11
CHƢƠNG 1: TỔNG QUAN VỀ DỊCH VỤ DỰA TRÊN VỊ TRÍ
1.1. Giới thiệu về dịch vụ LBS
Dịch vụ LBS là dịch vụ thông tin sử dụng với thiết bị di động qua mạng không dây
và vị trí địa lý của thiết bị di động [3].
Dịch vụ LBS là phần giao của ba công nghệ chính đƣợc thể hiện nhƣ trong hình
1.1, bao gồm: GIS – cơ sở dữ liệu không gian, Internet và thiết bị di động – định vị
toàn cầu[2].
Hình 1.1. Các hệ thống thông tin tích hợp
Hình 1.1 cho thấy các loại hệ thống thông tin tích hợp đƣợc hình thành nhƣ sau:
Hệ thống WebGIS đƣợc hình thành từ việc tích hợp Internet và GIS/CSDL
không gian.
Hệ thống GIS di động (Mobile GIS) đƣợc hình thành từ việc tích hợp
GIS/CSDL không gian và các thiết bị di động nhƣ điện thoại di động và GPS.
Hệ thống Internet di động (Mobile Internet) đƣợc hình thành trên cơ sở tích
hợp các thiết bị di động nhƣ điện thoại di động và Internet.
Dịch vụ LBS đƣợc hình thành từ việc tích hợp ba loại công nghệ GIS/CSDL
không gian, mạng Internet và các thiết bị di động.
Dịch vụ LBS có khả năng cung cấp 2 nhóm hoạt động chính là liên lạc thông tin
và tƣơng tác qua lại giữa khác hàng và dịch vụ. Vì thế, ngƣời sử dụng có thể cho nhà
GIS/CSDL
không gian
Các thiết bị
di động
Internet
12
cung cấp dịch vụ biết trong bối cảnh hiện tại thì các loại thông tin họ cần và phù hợp
với họ, với vị trí của họ. Hệ thống sẽ cung cấp các thông tin hoàn toàn phù hợp với
ngƣời sử dụng hoặc các thông tin do ngƣời sử dụng yêu cầu.
Các ứng dụng dịch vụ LBS đƣợc chia thành 4 nhóm chính [4]:
Dịch vụ thông tin và dẫn đƣờng (Information and navigation services): LBS
cung cấp dữ liệu trực tiếp cho ngƣời dùng cuối (end-users) các thông tin về vị trí hiện
tại, vị trí đích và các gợi ý nâng cao…
Hỗ trợ khẩn cấp (Emergency assistance): LBS cung cấp vị trí ngƣời dùng di
động trong trƣờng hợp đối tƣợng gặp tai nạn cần hỗ trợ.
Dịch vụ lƣu vết (Tracking services): một trong những chức năng cơ bản của
dịch vụ LBS là lƣu vị trí ngƣời dùng theo thời gian. Tuy nhiên, với các yêu cầu an
ninh và bảo mật, các thông tin này thƣờng không đƣợc công khai sử dụng.
Dịch vụ mạng liên quan (Network related services): vị trí ngƣời dùng có thể
nhận đƣợc thông qua bộ tiếp nhận GNSS đƣợc tích hợp trong các thiết bị di động hoặc
thông qua chính mạng truyền thông của thiết bị.
Hình 1. 2. Công nghệ định vị và hệ thống LBS
Các ứng dụng phổ biến của dịch vụ LBS hiện nay là:
Thông tin về hiện trạng giao thông: ngƣời sử dụng muốn biết tình trạng hiện tại
của các con đƣờng (tắc/không tắc, ngập/không ngập…), đƣờng đi tối ƣu (gần nhất,
nhanh nhất…) từ vị trí của họ tới một địa điểm nào đó…
Tìm kiếm địa điểm: ngƣời sử dụng có thể truy vấn các điểm tiện ích xung
quanh vị trí hiện tại của mình theo một tiêu chí nào đó. Ví dụ: ngƣời dùng muốn biết
13
có các điểm ATM của ngân hàng mình sử dụng cách vị trí của họ một khoảng cách
nào đó, hay điểm ATM nào gần vị trí của họ nhất…
Quảng cáo, thƣơng mại: nhà cung cấp gửi thông tin quảng cáo tới khách hàng…
1.2. Các thành phần cơ bản của LBS
Một hệ thống dịch vụ LBS bao gồm có 5 thành phần cơ bản, đó là: các thiết bị di
động (Mobile Devices), thiết bị định vị (Positioning), mạng truyền tin
(Communication Network), nhà cung cấp ứng dụng và dịch vụ (Service and Content
Provider), nhà cung cấp dữ liệu và nội dung/CSDL không gian (Geodatabase)
Các thành phần của hệ thống dịch vụ LBS đƣợc mô tả nhƣ trong hình 1.3, bao
gồm:
Hình 1.3.Các thành phần cơ bản của LBS
Các thiết bị di động (Mobile Devices)
Là công cụ để ngƣời sử dụng đƣa ra các yêu cầu về thông tin mong muốn. Kết
quả trả về có thể là tiếng nói, hình ảnh, văn bản… Các thiết bị di động có thể là PDA,
điện thoại di động (Cell Phones), máy tính cá nhân (Laptop), các thiết bị dẫn đƣờng
trên ô tô…
Thiết bị định vị (Positioning)
Một thành phần cơ bản của hệ thống LBS là các thiết bị định vị. Để các dịch vụ
LBS hoạt động, vị trí của ngƣời sử dụng cần đƣợc xác định. Ví trí ngƣời sử dụng có
thể thu nhận thông tin thôn gqua mạng truyền tin di động, GPS ở ngoài trời (Outdoor),
mạng sóng radio ở trong nhà (Indoor). Nếu vị trí của ngƣời sử dụng không đƣợc định
vị tự động thì ngƣời sử dụng có thể cho biết vị trí của mình một cách thủ công
(manual).
Mạng truyền tin (Communication Network)
Có nhiệm vụ truyền tải dữ liệu và các yêu cầu dịch vụ từ thiết bị di động đến các nhà
cung cấp dịch vụ, đồng thời truyền tải thông tin kết quả trở lại cho ngƣời sử dụng.
14
Nhà cung cấp ứng dụng và dịch vụ (Service and Content Provider)
Nhà cung cấp dịch vụ có trách nhiệm cung cấp các dịch vụ khác nhau tới ngƣời
sử dụng, có trách nhiệm xử lý các yêu cầu dịch vụ do ngƣời sử dụng gửi lên thông qua
mạng truyền tin. Các dịch vụ đƣợc cung cấp phải có các chức năng cơ bản nhƣ xác
định vị trí, tìm đƣờng đi (ngắn nhất, nhanh nhất), tìm kiếm các thông tin liên quan đến
vị trí theo yêu cầu của ngƣời sử dụng.
Nhà cung cấp dữ liệu và nội dung/CSDL không gian (Geodatabase)
Thông thƣờng, các nhà cung cấp dịch vụ không lƣu trữ và quản lý thông tin do
ngƣời sử dụng yêu cầu. Các dữ liệu và nội dung liên quan nhƣ trang vàng, bản đồ, giao
thông đều đƣợc lƣu trữ tại các cơ quan, công ty có thẩm quyền cung cấp và chịu trách
nhiệm về nội dung cung cấp nhƣ Công ty đo đạc bản đồ, Công ty giao thông…
1.3. Hoạt động của hệ thống LBS
Một hệ thống dịch vụ LBS khi hoạt động cần có sự phối hợp nhịp nhàng của tất cả
các thành phần hệ thống. Sơ đồ biểu diễn luồng thông tin trao đổi giữa các thành phần
trong hệ thống đƣợc mô tả nhƣ hình 1.4:
Hình 1.4. Trao đổi thông tin giữa các thành phần trong hệ thống LBS
Dịch vụ yêu cầu LBS
Ví dụ: yêu cầu tìm kiếm cây ATM của ngân hàng X. Thông tin ngƣời dùng
mong muốn là đƣờng đi từ vị trí yêu cầu hiện tại tới điểm đặt cây ATM gần nhất của
ngân hàng X. Vì vậy, ngƣời dùng sẽ mô tả yêu cầu bằng cách lựa chọn tính năng tích
hợp trên thiết bị di động của mình: ví dụ: Tìm kiếm => Điểm đặt ATM => ngân hàng
X => kiểu tìm kiếm: đƣờng đi ngắn nhất.
Thiết bị di động
Thiết bị: Đối tƣợng sử dụng LBS có thể là ngƣời hoặc máy móc. Phụ thuộc vào
kỹ năng của ngƣời sử dụng thiết bị di động, khả năng lƣu trữ của thiết bị, và mục đích
sử dụng, có thể chia các thiết bị LBS thành 2 loại chính là: đơn mục đích và đa mục
đích
15
- Thiết bị đơn mục đích: thực hiện nhiệm vụ cơ bản của dịch vụ LBS. Ví dụ: hộp
dẫn đƣờng cho ô tô, hộp công cụ hoặc thiết bị khẩn cấp cho ngƣời tàn tật…
- Thiết bị đa mục đích: thực hiện nhiều dịch vụ tiện ích dựa trên dịch vụ LBS.
Thiết bị này có thể là điện thoại di động, máy hỗ trợ cá nhân dùng kỹ thuật số PDA,
máy tính xách tay, máy tính để bàn…
Giới hạn: Hầu hết các thiết bị đa mục đích đều có chức năng tính toán và bộ
nhớ nguồn giới hạn, có giới hạn không gian tính toán, các điều khiển. Vì vậy, các tính
toán đƣợc chủ yếu thực hiện trên dịch vụ máy chủ (Server) rồi gửi kết quả cho ngƣời
dùng. Bên cạnh đó, còn có các giới hạn về nguồn pin của thiết bị, màn hình hiển thị
nhỏ, ảnh hƣởng của môi trƣờng…
Hình 1.5. Các thiết bị di động
Mạng di động không dây
Mạng di động không dây có nhiệm vụ chuyển đổi dữ liệu ngƣời dùng và thông
điệp yêu cầu dịch vụ từ thiết bị di động đầu cuối đến nhà cung cấp dịch vụ, đồng thời
gửi các thông tin kết quả đã đƣợc xử lý đến ngƣời dùng. Mạng không dây thƣờng đƣợc
sử dụng là WWAN – Wireless Wide Area Network ví dụ GMS và UMTS, WLAN –
Wireless Local Area Network ví dụ IEEE 802.11 chuẩn b/g/n và WPAN – Wireless
Personal Area Network ví dụ Bluetooth. Trong đó:
WWAN: phạm vi hoạt động của mạng từ 100m – 35km. Thế hệ mạng đầu tiên
(tƣơng tự G1) đƣợc đƣa ra ứng dụng cho dịch vụ radio, có tốc độ truyền dữ liệu khá
thấp (4.8kbps). Hệ thống di động toàn cầu (GSM) và dịch vụ sóng vô tuyến (GPRS) là
mạng thế hệ 2 (ký hiệu G2) có tốc dộ truyền dữ liệu cao hơn (GSM: 9.6 – 14kpbs;
GPRS: 20 – 115kbps).
WLAN: có vùng phủ sóng từ 10m – 150m (300m trong điều kiện ngoài trời).
Các phổ tần số đƣợc sử dụng miễn phí, không phải đăng ký, có tốc độ truyền dữ liệu
lên đến 100Mbps.
16
WPAN: có vùng phủ sóng 10m – 100m.
Dịch vụ di động – các dịch vụ định vị mở (OpenLB)
Để hiểu rõ một dịch vụ LBS có số ngƣời dùng trên các vùng khác nhau thì phải
đƣợc chú ý từ các kỹ thuật cung cấp đến dữ liệu cung cấp. Điều đó có nghĩa là sự chú
ý bao gồm cả phần cứng và phần mềm, nội dung và các dịch vụ cung cấp trực tuyến,
mạng di động và cơ sở hạ tầng nhà cung cấp, máy thu phát di động và các loại cổng.
Để đảm bảo rằng tất cả các kỹ thuật khác nhau và các thiết bị làm việc cùng nhau
thống nhất theo các chuẩn đã đƣợc định nghĩa trƣớc cho giao diện và cho các mô tả.
Các chuẩn đối với LBS đƣợc định nghĩa bởi tổ chức tiêu chuẩn thế giới (ISO) và Open
Geospatial Consortium (OGC). ISO 19119 cung cấp một dịch vụ khung chung và ISO
19101 đem lại sự phân loại các dịch vụ địa lý, còn OGC định nghĩa cho các dịch vụ
định vị mở (OpenLS).
OpenLS định nghĩa các dịch vụ cơ bản nhất (core), chúng truy cập và trừu tƣợng
hóa các kiểu dữ liệu, tạo thành một khung mẫu cho dịch vụ mở, đƣợc gọi là
GeoMobility Server. Trong đó, Server hành động nhƣ một ứng dụng máy chủ để trả
lời các yêu cầ dịch vụ. Vai trò của Server đƣợc mô tả nhƣ hình 1.6
Hình 1.6. Vai trò của GeoMobility Server
Ngƣời cung cấp nội dung và dữ liệu
Các kiểu dữ liệu có thể là rất khác nhau và phụ thuộc vào các kiểu dịch vụ đƣợc
đề nghị. Dựa vào mục đích sử dụng, chia thành 2 loại ứng dụng LBS với các loại dữ
liệu khác nhau:
Các ứng dụng LBS với mục đích chuyên biệt: thể hiện qua các dịch vụ chuyên
biệt nhƣ trợ giúp ngƣời tàn tật, các dịch vụ đƣợc cung cấp ở công viên quốc gia…
17
Các ứng dụng LBS phổ biến đƣợc xây dựng và đƣa ra sử dụng đại trà bởi các
nhà cung cấp truyền thông nhƣ AT&T, Vodaphone… hay các công ty cung cấp dịch
vụ bản đồ số Google, Diadiem.com …
1.4. Đặc điểm của LBS
Các dịch vụ LBS sẽ khác nhau dựa vào các mốc nhận thức nhƣ biển chỉ đƣờng,
danh bạ, bản đồ… bởi vì chúng đƣợc nhận thức riêng biệt trong từng ngữ cảnh của
ngƣời sử dụng và phù hợp với nội dung trong từng ngữ cảnh đó. Có nhiều loại ngữ
cảnh khác nhau, thƣờng đƣợc thể hiện thông qua các câu hỏi về vị trí, thời gian, công
việc nhƣ:
Ngƣời dùng đang ở đâu?
Khi nào họ sử dụng dịch vụ?
Họ đang sử dụng dịch vụ nào?
Dịch vụ LBS có thể trả lời các ngữ cảnh đó theo nhiều cách khác nhau. Khi đó, các
dịch vụ LBS sẽ phải tiền xử lý thông tin, ví dụ chỉ trả về các nhà hàng trong phạm vi
10 phút đi bộ với vận tốc trung bình của ngƣời dùng và xuất phát từ vị trí hiện tại của
ngƣời dùng; hoặc cũng có thể đƣa ra các thông tin liên quan đến ngƣời dùng để ngữ
cảnh đƣợc tăng lên, cụ thể hơn nhƣ đƣa ra các kí hiệu trực quan khác nhau trên bản đồ
để ngƣời dùng so sánh và lựa chọn theo sở thích hoặc mục đích hiện tại.
1.5. Kết luận
Cùng với sự phát triển của công nghệ mạng và sự phổ biến của các thiết bị cầm tay
thông minh, ngày nay các ứng dụng dịch vụ LBS đƣợc nghiên cứu phát triển và phổ
biến không chỉ trong các lĩnh vực quân sự mà còn cả dân sự. Với tiềm lực của mình,
các công ty ngày nay hoàn toàn có thể xây dựng cho một một hệ thống cung cấp dịch
vụ LBS cho riêng mình. Có thể lấy ví dụ nhƣ các ngân hàng có dịch vụ truy vấn cây
ATM, phòng giao dịch của ngân hàng đó, các hãng taxi có hệ thống định vị, chỉ dẫn
đƣờng đi cho lái xe. Với điều kiện trang thiết bị ngày càng đƣợc nâng cao nhƣ vậy,
vấn đề đặt ra là làm sao để nâng cao chất lƣợng dịch vụ LBS, đồng thời tiết kiệm chi
phí đầu tƣ hơn nữa. Chƣơng II và chƣơng III của luận văn này sẽ giới thiệu giải pháp
cho vấn đề nêu trên.
18
CHƢƠNG II:CÔNG NGHỆ THỰC TẠI TĂNG CƢỜNG
2.1. Công nghệ thực tại tăng cƣờnglà gì
Công nghệ thực tại tăng cƣờng - Augmented Reality (AR) đƣợc hiểu là công nghệ
cho phép con ngƣời quan sát, nhận biết các đối tƣợng trong thế giới thực thông qua
một thiết bị thông minh nào đó với những thông tin chi tiết hơn.
Augmented Reality sử dụng các thông tin từ hình ảnh thực tế đƣợc cung cấp từ các
thiết bị GPS, camera, micro… sau khi đã qua xử lý, sẽ cung cấp cho ngƣời dùng
những thông tin cụ thể liên quan đến đối tƣợng ngƣời dùng quan tâm. Augmented
Reality hỗ trợ việc số hóa dữ liệu các đối tƣợng 2D, 3D trong thế giới thực, đồng thời
cung cấp các thông tin liên quan đến các đối tƣợng đó cho ngƣời dùng.
Hình 2.1. Công nghệ thực tại tăng cường
Công nghệ thực tại ảo có thể đƣợc coi là tiền nhiệm của thực tại tăng cƣờng, với
nhiều điểm tƣơng đồng. Khác biệt lớn nhất chính là thực tại ảo không dùng dữ liệu
trực tiếp từ camera mà tất cả hình ảnh hiển thị ngay trong thực tại ảo hoặc là ảnh hoạt
họa, hoặc là đƣợc ghi hình từ trƣớc đó.
2.2. Các thành phần của một hệ thống thực tại tăng cƣờng
Một hệ thống thực tại tăng cƣờng thông thƣờng gồm có ba thành phần chính: bộ
mô phỏng, hệ thống lƣu vết và thiết bị hiển thị. Các thành phần này đƣợc mô tả nhƣ
trong hình dƣới đây:
19
Hình 2.2. Hệ thống thực tại tăng cường Head-Mounted-Display
Hình 2.3. Mô hình hệ thống thực tại tăng cường Head-Mounted-Display
2.2.1. Bộ mô phỏng
Bộ mô phỏng (scene generator) là thiết bị hay phần mềm có nhiệm vụ mô phỏng
hoàn cảnh thực tại. Hiện nay, việc mô phỏng (rendering) hoàn cảnh thực đã không còn
là một khó khăn của công nghệ thực tại tăng cƣờng bởi vì khi mô phỏng các đối tƣợng
ảo thƣờng không cần phải mô phỏng với thời gian thực để có thể đƣợc xử lý trong ứng
dụng.
2.2.2. Hệ thống lƣu vết
Hệ thống lƣu vết (Tracking system) là một trong những thành phần quan trọng nhất
của hệ thống thực tại tăng cƣờng. Hệ thống lƣu vết thƣờng phát sinh vấn đề khi cần
đƣợc chấp nhận (registration) vào hệ thống [3]. Đối tƣợng trong thế giới thực và ảo
cần đƣợc mô phỏng với đầy đủ các đặc tính và mối liên hệ chặt chẽ với nhau. Ví dụ
nhƣ trong các ngành công nghiệp, rất nhiều ứng dụng phụ thuộc vào sự tƣơng quan
20
chặt chẽ giữa các đối tƣợng thực và ảo, đặc biệt là trong ngành công nghiệp dƣợc
phẩm.
2.2.3. Thiết bị hiển thị
Hầu hết tất cả các thiết bị hiển thị sử dụng công nghệ thực tại tăng cƣờng là các
thiết bị đƣợc thiết kế dạng HDM (Head Mounted Display – thiết bị hiển thị đƣợc đeo
vào đầu), tuy nhiên, vẫn có một số dạng thiết kế khác đƣợc đƣa ra (màn hình thiết bị di
động, thiết bị mô phỏn). Khi kết hợp thế giới thực và ảo để hiển thị, có hai lựa chọn cơ
bản là hiển thị bằng quang học (optical) hoặc công nghệ hình ảnh (video technology).
Mỗi một công nghệ đều có những ƣu điểm và nhƣợc điểm nhất định, và tùy thuộc vào
các nhân tố nhƣ công nghệ, mục tiêu sản phẩm…, để lựa chọn công nghệ hiển thị thích
hợp.
Cho đến nay, công nghệ hiển thị vẫn là thành phần có nhiều hạn chế khi phát triển
hệ thống ứng dụng cho thực tại tăng cƣờng. Việc mô phỏng thế giới thực vào thế giới
ảo vẫn là thách thức cho các nhà phát triển. Hơn nữa, việc chú trọng vào mục tiêu mô
phỏng thế giới thực sẽ làm giảm đi sự quan tâm tới các nhân tố khác nhƣ sự tiện dụng,
nhẹ nhàng và giá thành rẻ, khiến cho ứng dụng của công nghệ thực tại tăng cƣờng khó
đƣợc ứng dụng vào thực tế cuộc sống.
2.3. Những ứng dụng của công nghệ AR trong thực tế
Công nghệ AR đƣợc ứng dụng rất phổ biến trong đời sống hằng ngày. Ta có thể
điểm qua các ứng dụng nổi bật của công nghệ này trong một số lĩnh vực và thử đánh
giá khả năng ứng dụng trên điện thoại di động thông minh ở các lĩnh vực này:
Quân sự:
AR trong quân sự có thể dùng trong việc mô phỏng luyện tập. Chẳng hạn cung cấp
những hình ảnh, những địa hình, kịch bản dựng trƣớc hiển thị trên một màn hình lớn
trong căn phòng, hoặc trong một chiếc xe, ngƣời điều khiển quan sát qua màn hình
này, và phải quyết định nhanh sách lƣợc đối phó.
Hình 2.4. Ứng dụng của AR trong quân sự
21
AR cũng có thể dùng để cung cấp thông tin cần thiết về địa hình, điều kiện thời
tiết, ánh sáng, thông tin về đối thủ và hiển thị cho binh sĩ khi lâm trận.
Trong lĩnh vực quân sự, những ứng dụng này của AR khó có thể cài đặt trên nền
Android do 2 nguyên nhân chính: thời lƣợng pin quá ngắn và thiếu các thiết bị đầu vào
chuyên dụng.
Giải trí, truyền thông:
Các ứng dụng thƣờng gặp của công nghệ thực tại tăng cƣờng là ứng dụng trong
ngành công nghiệp giải trí, trò chơi điện tử…
Công nghệ thực tại tăng cƣờng cho phép ngƣời chơi trải nghiệm trò chơi với cốt
truyện đƣợc xây dựng trên nền tảng thế giới thực. Ngƣời chơi có thể tƣơng tác với mọi
vật thể tìm thấy trong trò chơi. Trong những năm gần đây, với việc ra đời của máy
chơi game Wii ứng dụng công nghệ thực tại tăng cƣờng, cách chơi và trải nghiệm trò
chơi đã thay đổi rất nhiều khi ngƣời chơi có thể vận động, di chuyển trong quá trình
chơi.
Hình 2.5. Ứng dụng củaAR trong giải trí
Trong lĩnh vực truyền thông, công nghệ thực tại tăng cƣờng cũng đƣợc sử dụng
rộng rãi, đặc biệt là trên truyền hình và điện ảnh. Ví dụ trong các bản tin thời tiết, vị trí
thời tiết các vùng sẽ thay đổi theo vị trí tay của dẫn chƣơng trình, đồng thời các biểu
tƣợng thời tiết, nhiệt độ cũng sẽ thay đổi theo mỗi vùng.
Trong lĩnh vực quảng cáo, ngƣời xem có thể thấy những bảng quảng cáo hiện ra
ngay trên sân thi đấu, khi trận đấu đang diễn ra, hoặc khi vào giờ giải lao. Việc ứng
dụng công nghệ thực tại tăng cƣờng làm tăng hiệu quả các quảng cáo, gây ấn tƣợng
với ngƣời xem so với việc sử dụng các hình thức quảng cáo thông thƣờng.
22
Hình 2.6. Ứng dụng của AR trong truyền thông
Du lịch
Đã có một số thiết bị sử dụng công nghệ AR ứng dụng trong du lịch. Chẳng hạn
khi đến một điểm du lịch nào đó, bạn sẽ đƣợc phát một thiết bị gắn trên đầu cung cấp
thông tin về địa điểm đang đứng hay thông tin về danh lam thắng cảnh bạn đang
hƣớng mắt đến. Một số thiết bị khác có thể hỗ trợ việc tìm đƣờng, tìm nhà hàng, quán
sá, điểm vui chơi. Những đặc tính của ứng dụng dạng này đã đƣợc cài đặt trong các
trình duyệt AR, tuy nhiên thông tin back end còn rất hạn chế, thƣờng chỉ gói gọn trong
phạm vi một khu du lịch, một công trình mà thôi.
Kiến trúc:
Việc lắp đặt nhiều thiết bị kèm camera với khả năng generate một bản thiết kế từ
một kiến trúc đã tồn tại hoặc hiển thị một kiến trúc ảo từ kiến trúc của một công trình
đã đẩy nhanh tiến độ các công việc thiết kế kiến trúc, giúp việc thiết kế và kiểm tra xây
dựng hoàn thiện nhanh hơn. Công nghệ AR cũng giúp mô phỏng các điều kiện thiên
nhiên khắc nghiệt, thậm chí nhƣ các thiên ta, để xem cấu trúc của công trình sẽ bị ảnh
hƣởng nhƣ thế nào. Ứng dụng trong kiến trúc kiểu này có thể cài đặt trên thiết bị
Android, tất nhiên đòi hỏi cấu hình thiết bị khá cao để xử lý hình ảnh đồ họa đƣợc mịn
hơn.
Giáo dục:
AR đƣợc ứng dụng khá rộng rãi trong giáo dục, với nhiều sản phẩm nhƣ sách điện
tử 3D, sách giáo khoa ảo, thiết bị mô phỏng giống nhƣ thiết bị trong du lịch, giúp học
viên trải nghiệm những kiến thức thực tế mà không cần rời khỏi lớp học. Ứng dụng
dạng này có thể cài đặt trên Android, cần lƣu ý đến vấn đề kiến thức mà thôi.
23
2.4. Khả năng ứng dụng của AR trong dịch vụ LBS
Nhƣ đã biết, thị trƣờng điện thoại di động thông minh đang phát triển rất mạnh.
Ngƣời tiêu dùng có xu hƣớng chuyển sang sử dụng smartphone thay vì điện thoại di
động cổ điển vì những tính năng mà nó mang lại cũng nhƣ giá thành ngày một giảm.
Hầu hết các thiết bị này đều đƣợc tích hợp công nghệ GPS, dữ liệu di động 3G, 4G hay
kết nối wifi. Nhƣ vậy, việc ứng dụng công nghệ thực tại tăng cƣờng cho dịch vụ LBS
trên smartphone là hoàn toàn khả thi do ta có thể kiểm soát tốt dữ liệu đầu vào cũng
nhƣ dữ liệu các điểm tiện ích xung quanh một vị trí nhất định. Đồng thời việc hiển thị
và mô phỏng các điểm tiện ích cũng có thể đƣợc thực hiện thông qua màn hình cảm
ứng trên smartphone.
Nắm bắt đƣợc xu thế này, các nhà cung cấp phần mềm di động trên thế giới đã sớm
khai thác công nghệ thực tại tăng cƣờng vào mảng dịch vụ LBS. Thay vì trƣớc đây
muốn tìm điểm tiện ích xung quanh một vị trí, ngƣời dùng phải sử dụng các ứng dụng
bản đồ thuần túy nhƣ Google Maps, Nokia Here, hay ở Việt Nam là diadiem.com …
thì ngày nay, ngƣời dùng chỉ cần giơ camera về một hƣớng nhất định và tìm thấy đƣợc
điểm mình muốn đến thông qua các thông tin trực quan về điểm đó đƣợc hiển thị chi
tiết trên màn hình smartphone. Ta có thể kể ra một vài ứng dụng nổi tiếng trong lĩnh
vực này nhƣ Junaio chạy trên nền Android, Nokia City Lens chạy trên Windows
Phone.
Hình 2.7. Ứng dụng Nokia City Lens
Rõ ràng việc áp dụng công nghệ thực tại tăng cƣờng vào ứng dụng LBS trên
smartphone đem lại sự tiện lợi rất lớn cho ngƣời sử dụng. So với ứng dụng LBS thuần
túy trên nền web, việc tận dụng camera của smartphone đem cho ngƣời sử dụng cảm
giác gần gũi với đời sống thực. Những hình ảnh xung quanh đƣợc hiển thị ngay trên
camera, kèm theo đó là những điểm tiện ích cần tìm đƣợc ảo hóa và hiển thị phù hợp
với những thông tin chi tiết.
24
Ở góc độ nhà cung cấp dịch vụ, một vấn đề đƣợc đặt ra là: dù lƣợng dữ liệu địa
điểm của Google maps, Bing … là rất lớn, nhƣng tùy theo từng khu vực nhất định thì
vẫn chƣa đầy đủ so với nhu cầu của ngƣời dùng,vậy ta có thể cung cấp cho ngƣời dùng
một ứng dụng tƣơng tự nhƣ vậy nhƣng với bộ dữ liệu đƣợc biên soạn riêng hay không,
và chi phí cũng nhƣ phƣơng pháp thực hiện nhƣ thế nào. Chƣơng tiếp theo của luận
văn sẽ nêu một giải pháp cho vấn đề này.
25
CHƢƠNG III: CÔNG NGHỆ ĐIỆN TOÁN ĐÁM MÂY
GOOGLE APP ENGINE
3.1. Định nghĩa điện toán đám mây
Thuật ngữ Điện toán đám mây chỉ mới xuất hiện gần đây. Giữa năm 2007, Amazon
đẩy mạnh nghiên cứu và triển khai Điện toán đám mây. Ngay sau đó, với sự tham gia
của các công ty lớn nhƣ Microsoft, Google, IBM… thúc đẩy Điện toán đám mây phát
triển ngày càng mạnh mẽ.
Sự phát triển mạnh mẽ của Điện toán đám mây đã thu hút rất nhiều nhà khoa học,
các trƣờng đại học và cả các công ty công nghệ thông tin (IT) đầu tƣ nghiên cứu. Rất
nhiều chuyên gia đã đƣa ra định nghĩa của mình về Điện toán đám mây. Theo thống kê
của tạp chí “Cloud Magazine” thì hiện tại có hơn 200 định nghĩa khác nhau về Điện
toán đám mây. Mỗi nhóm nghiên cứu đƣa ra định nghĩa theo cách hiểu, cách tiếp cận
của riêng mình nên rất khó tìm một định nghĩa tổng quát nhất của Điện toán đám mây.
Dƣới đây là ví dụ một số định nghĩa về Điện toán đám mây:
Điện toán đám mây là dịch vụ IT đƣợc cung cấp không phụ thuộc vào vị trí
(“The cloud is IT as a Service, delivered by IT resources that are independent of
location” - The 451 Group). [10]
Điện toán đám mây cung cấp các tài nguyên IT có khả năng mở rộng và co
giãn, các tài nguyên này đƣợc cung cấp dạng dịch vụ cho ngƣời dùng thông qua mạng
Internet (“Cloud Computing is a style of computing where massively scalable IT-
related capabilities are provided „as a service‟ across the Internet to multiple external
customers” - Gartner). [11]
Những định nghĩa trên có một điểm chung: họ cố gắng định nghĩa Điện toán đám
mây theo hƣớng thƣơng mại, từ góc nhìn của ngƣời dùng đầu cuối. Theo đó, tính năng
chủ yếu của Điện toán đám mây là cung cấp cơ sở hạ tầng và các ứng dụng về IT dƣới
dạng dịch vụ có khả năng mở rộng đƣợc. Tuy nhiên, các công ty nhƣ Gartner, IDC,
Merrill Lynch, The 451 Group không phải là các công ty chuyên về IT cho nên những
định nghĩa này tập trung vào giải thích Điện toán đám mây là “nhƣ thế nào” và chủ
yếu dựa trên kinh nghiệm của các công ty này.
Đứng ở góc nhìn khoa học kỹ thuật cũng có nhiều định nghĩa khác nhau, trong đó
có hai định nghĩa của Ian Foster và Rajkumar Buyya đƣợc dùng khá phổ biến và có
nhiều điểm tƣơng đồng.
Theo Ian Foster: Điện toán đám mây là một mô hình điện toán phân tán có tính co
giãn lớn mà hƣớng theo co giãn về mặt kinh tế, là nơi chứa các sức mạnh tính toán,
kho lƣu trữ, các nền tảng và các dịch vụ đƣợc trực quan, ảo hóa và co giãn linh động,
sẽ đƣợc phân phối theo nhu cầu cho các khách hàng bên ngoài thông qua Internet [6].
Theo Rajkumar Buyya: Cloud là một loại hệ thống phân bố và xử lý song gồm các
máy tính ảo kết nối với nhau và đƣợc cung cấp động cho ngƣời dùng nhƣ một hoặc