Tải bản đầy đủ (.pdf) (58 trang)

phát triển hệ thống hỗ trợ tìm đường trên các thiết bị di động có gps

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.34 MB, 58 trang )


i






























ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ


Nguyễn Văn Bách


Phát triển hệ thống hỗ trợ tìm đường trên các
thiết bị di động có GPS







KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY

Ngành: Công nghệ thông tin










HÀ NỘI-2010



ii




ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ


Nguyễn Văn Bách



Phát triển hệ thống hỗ trợ tìm đường trên các thiết bị
di động có GPS





KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY

Ngành: Công Nghệ Thông Tin



Cán bộ hướng dẫn: TS. Nguyễn Ngọc Hóa













HÀ NỘI - 2010


iii

Lời cảm ơn
Trước tiên, tôi xin bày tỏ lòng cảm ơn chân thành đến TS.Nguyễn Ngọc Hóa,
người đã hết lòng chỉ bảo, hướng dẫn, cho tôi các phương pháp tiếp cận vấn đề, giúp
tôi giải đáp những thắc mắc, giải quyết các khó khăn mắc phải để có thể hoàn thành
được khóa luận này.
Tôi cũng xin chân thành cảm ơn các thầy cô ở khoa Công Nghệ Thông Tin đã hết
lòng truyền đạt cho tôi những kiến thức nền tảng về CNTT, giúp tôi có đủ kiến thức để
tiếp cận, hoàn thành được khóa luận này. Bên cạnh đó tôi cũng vin gửi lời cảm ơn đến
sự sự giúp đở nhiệt tình của nhà trường tạo điều kiện tốt nhất cho tôi để hoàn thành
khóa luận này.
Tôi xin gửi lời cảm ơn sâu sắc đến những người thân trong gia đình, họ đã động
viên rất nhiều về mặt tinh thần để tôi có đủ nghị lực để hoàn thành khóa luận này. Tôi
cũng xin chân thành cảm ơn bạn bè tôi, những đã luôn luôn bên cạnh, động viên, tạo
mọi điều kiện thuận lợi nhất cho tôi trong quá trình hoàn thành khóa luận.


Hà Nội, tháng 5 năm 2010
Sinh viên
Nguyễn Văn Bách



iv

TÓM TẮT KHÓA LUẬN
Khóa luận này trình bày những hiểu biết cơ bản về một hệ thống thông tin địa lý
(GIS), cũng như các khái niệm liên quan. Qua việc xem xét một số hệ thống GIS tiêu
biểu, để có thể hình dung được cách thức lưu trữ, quản lý dữ liệu trong một dữ liệu
không gian, nhằm phục vụ hiệu quả cho việc quản lý dữ liệu địa lý. Khóa luận cũng
trình bày chi tiết về cấu trúc đánh chỉ số R-tree – một cấu trúc được dùng phổ biến cho
các CSDL không gian. Một số phương pháp xử lý truy vấn trong CSDL không gian
cũng được đưa ra ở mức tìm hiểu sơ qua.
Phần cuối của khóa luận trình bày về việc xây dựng ứng dụng bản đồ trên thiết bị
di động hổ trợ GPS. Bằng việc sử dụng GoogleMaps để cung cấp các chức năng GIS
cơ bản cho người dùng, như hiển thị bản đồ, hướng dẫn lộ trình, tìm lộ trình theo vị trí
hiện tại, điểm đầu điểm cuối.

v

DANH MỤC TỪ VIÊT TẮT
Từ viết tắt Tiếng Anh Tiếng Việt
GIS Geographic informations
system
Hệ thống thông tin địa lý
OGC Open Geospatial

Consortium

ESRI Environmental Systems
Research Institute

GRASS Geographic Resources
Analysis Support System

CSDL Cơ sở dữ liệu
NN Nearest Neighbor Hàng xóm gần nhất
OR Obstacle range

ONN Obstacle nearest neighbour

ODJ Ostacle e-distance join


vi

MỤC LỤC

Mở đầu 1

CHƯƠNG 1. TỔNG QUAN VỀ HỆ THỐNG THÔNG TIN ĐỊA LÝ 2

1.1. Khái niệm về hệ thống thông tin địa lý 2

1.2. Lợi ích và hạn chế của việc sử dụng GIS 3

1.3. OGC – OPENGIS 3


1.4. Khái niệm chung về bản đồ địa lý 4

1.5. Tìm hiểu một số hệ thống GIS tiêu biểu 5

1.5.1. MapInfo 5

1.5.2. ArcViewcủa ESRI 5

1.6. MobileGIS 6

1.6.1. Hệ thống WebGIS 7

CHƯƠNG 2. TỔ CHỨC DỮ LIỆU TRONG GIS 9

2.1. Tổ chức dữ liệu trong hệ thống thông tin địa lý 9

2.1.1. Mô hình dữ liệu Vector 10

2.1.2. Hệ thống Raster 11

2.1.3. Mô hình TIN 13

2.2. Điểm qua cách tổ chức dữ liệu trong một số hệ thống GIS thông dụng. 13

2.2.1. Tổ chức dữ liệu trong MapInfo 13

2.2.2. Tổ chức dữ liệu trong ArcGIS của ESRI 14

2.2.3. Tổ chức dữ liệu trong GRASS 14


2.3. Tìm hiểu cấu trúc lưu trữ của Shapefile 15

CHƯƠNG 3. XỬ LÝ TRUY VẤN KHÔNG GIAN 20

3.1. Cấu trúc R-Tree index 20

3.1.1. Cấu trúc của R-tree 20

3.1.2. Tìm kiếm và cập nhật trong R-tree 21

3.1.3. Cập nhật và các thao tác khác 24

3.2. Tìm hiểu một số thuật toán xử lý truy vấn trong CSDL không gian 26

3.2.1. Xử lý truy vấn trong không gian O-clit 27

3.2.2. Xử lý truy vấn trong mạng không gian 28

3.2.3. Tìm đường đi trong có không gian có chướng ngại vật 28

3.3. Tìm hiểu về PostGIS 32

3.3.1. Giới thiệu 32

3.3.2. Sử dụng các chuẩn OpenGIS 32


vii


3.3.3. Import dữ liệu GIS 32

3.3.4. Xuất bản dữ liệu GIS 32

3.3.5. Tạo indexs 33

3.3.6. Một số truy vấn spatial SQL đơn giản 33

CHƯƠNG 4. XÂY DỰNG ỨNG DỤNG 36

Dựa trên những kiến thức thu được, trong chương này, tôi sẽ trình bày về hệ thống
dẫn đường (navigator) thử nghiệm với mục đích minh họa những hiểu biết về hệ
thống thông tin địa lý và các vấn đề xử lý truy vấn không gian 36

4.1. Một số ứng dụng dẫn đường phổ biến 36

4.1.1. Việt map 36

4.1.2. Pguider 37

4.1.3. GoogleMaps cho mobile 37

4.2. Các chức năng của chương trình 38

4.3. Mô hình đề xuất 39

4.4. Lựa chọn ngôn ngữ 41

4.5. Tìm hiểu cơ chế hoạt động của hệ thống GPS 42


4.5.1. Đo khoảng cách từ máy thu đến các vệ tinh 43

4.5.2. Xác định vị trí hiện tại của các vệ tinh 44

4.6. Thử nghiệm ứng dụng 44

4.6.1. Các lớp chính của chương trình 44

4.6.2. Screenshot của chương trình 44

4.7. Nhận xét 49

CHƯƠNG 5. KẾT LUẬN 50

5.1. Kết quả đạt được 50

5.2. Hạn chế 50

5.3. Hướng phát triển 50


1

Mở đầu
Ngày nay với sự phát triển mạnh mẽ của CNTT, các ứng dụng của CNTT đã
được đưa vào hầu hết các lĩnh vực của cuộc sống. Với sự trợ giúp của máy tính, các
công việc phức tạp được xử lý nhanh chóng và chính xác. Cùng với sự phát triển của
Internet, việc chia sẽ thông tin giữa các cá nhân, tổ chức hay làm việc qua mạng đã trở
nên dễ dàng và hiệu quả. Hệ thống thông tin địa lý (Geographic Information System –
GIS) là một nhánh của CNTT đã trở thành một công cụ trợ giúp quyết định rất tốt cho

các tổ chức, chính phủ trong các lĩnh vực liên quan đến thông tin địa lý.
Để hoàn thành khóa học của mình, tôi nhận thấy GIS là một hệ thống thông tin
rất thú vị, việc tìm hiểu về GIS sẽ giúp tôi có một cái nhìn sâu sắc hơn về một hệ thống
thông tin, quản trị CSDL. Giúp tôi có được cái nhìn ban đầu về phương pháp tiếp cận
để xây dựng, quản lý hiệu quả một hệ thống CSDL mô phỏng thực tế - hệ thống CSDL
địa lý. Với động lực đó, khóa luận tốt nghiệp của tôi hướng đến mục tiêu nghiên cứu,
tìm hiểu về hệ thống thông tin địa lý nói chung, từ đó ứng dụng trong bài toán phát
triển hệ thống dẫn đường dựa trên các thiết bị di động có hỗ trợ định vị vệ tinh (GPS).













2

CHƯƠNG 1. TỔNG QUAN VỀ HỆ THỐNG THÔNG TIN ĐỊA LÝ
1.1. Khái niệm về hệ thống thông tin địa lý
Hệ thống thông tin địa lý (Geographic Information System – gọi tắt là GIS) là
một nhánh của công nghệ thông tin được hình thành vào những năm 1960 và phát triển
rất rộng rãi trong 10 năm lại đây. GIS ngày nay là công cụ trợ giúp quyết định trong
nhiều hoạt động kinh tế - xã hội, quốc phòng của nhiều quốc gia trên thế giới. GIS có
khả năng cung cấp cho các cơ quan chính phủ, các nhà quản lý, các doanh nghiệp, các

cá nhân … đánh giá được hiện trạng của các quá trình, các thực thể tự nhiên, kinh tế –
xã hội của các vùng địa lý thông qua các chức năng thu thập, quản lý, truy vấn, phân
tích và tích hợp các thông tin được gắn liền với một nền hình học (bản đồ) nhất quán
trên cơ sở tọa độ của các dữ liệu đầu vào.
Có nhiều cách tiếp cận khác nhau khi định nghĩa GIS. Nếu xét dưới góc độ hệ
thống, thì GIS có thể được hiểu như một hệ thống gồm 5 thành phầm cơ bản: con
người – chuyên viên, thiết bị - phần cứng, phần mềm, số liệu - cơ sở dử liệu và các
quy trình kiến thức chuyên gia – nơi tập hợp các quy phạm, tiêu chuẩn, định hướng,
chủ trương ứng dụng của nhà quản lý, các kiến thức chuyên ngành và các kiến thức về
CNTT.

Hình 1: Các thành phần thiết yếu cho công nghệ GIS
Theo cách tiếp cận truyền thống, GIS là một công cụ máy tính để lập bản đồ và
phân tích các sự vật, hiện tượng thực trên trái đất. Công nghệ GIS kết hợp các thao tác
CSDL thông thường kết hợp với cho phép phân tích thống kê, phân tích không gian.
Những khả năng này phân biệt GIS với các hệ thống thông tin khác và khiến GIS có

3

phạm vi ứng dụng rộng rãi trong nhiều lĩnh vực khác nhau (phân tích các sự kiện, dự
đoán tác động và hoạch định chiến lược).
1.2. Lợi ích và hạn chế của việc sử dụng GIS
GIS là một công nghệ ứng dụng tiến bộ của khoa học máy tính, do đó việc sử
dụng GIS trong các mục tiêu nghiên cứu so với các phương tiện cổ điển có thể mang
lại hiệu quả cao.
- Tiết kiệm thời gian và chi phí trong việc lưu trữ số liệu.
- Có thể thu thập số liệu với số lượng lớn.
- Cập nhật số liệu lưu trữ dễ dàng.
- Chất lượng số liệu được bảo đảm (quản lý, xử lý, sửa chữa).
- Dễ dàng truy cập, phân tích số liệu từ nhiều nguồn và nhiều loại khác

nhau.
- Tổng hợp số liệu nhanh chóng và dễ dàng.
Bên cạnh những thuận lợi khi sử dụng GIS thì quá trình sử dụng kỹ thuật GIS
cũng xuất hiện một số trở ngại, và những trở ngại này có ảnh hưởng đặc biệt quan
trọng, do đó cần cân nhắc kỹ càng trước khi quyết định phát triển GIS.
- Chi phí và những vấn đề kỹ thuật đòi hỏi trong việc chuẩn bị lại các số
liệu thô hiện có, để chuyển từ bản đồ dạng thô (trên giấy) sang dạng số trên
máy tính.
- Đòi hỏi nhiều kiến thức của các kỹ thuật cơ bản về máy tính, và yêu cầu
lớn về nguồn tài chính ban đầu.
- Chi phí mua sắm, lắp đặt thiết bị và phần mềm GIS khá cao.
- Trong một số lĩnh vực ứng dụng, hiệu quả tài chính thấp.
1.3. OGC – OPENGIS
OGC – Open Geospatial Consortium là một tổ chức phi lợi nhuận, quốc tế, tự
nguyện đang dẫn đầu trong việc đặt ra các tiêu chuẩn về không gian địa lý và các dịch
vụ dựa trên vị trí.
OpenGIS standard and Specifications là các tài liệu kỹ thuật đặc tả các giao diện
hoặc bảng mã được dùng cho các nhà phát triển phần mềm để đưa các giao diện hoặc
bản mã này vào sản phẩm hay dịch vụ của họ. Các đặc tả này cung cấp cho các nhà
phát triển một khuôn mẫu giao diện chung, đầy đủ để có thể xây dựng các phần mềm
hoạt động chung được với các phần mềm dạng OpenGIS khác.

4

Ưu điểm của OpenGIS Specification thể hiện qua các mặt sau:
- Đối với người phát triển ứng dụng có thể dễ dàng và linh hoạt trong việc
thiết kế các phần mềm truy cập đến cơ sở dữ liệu địa lý, sử dụng chung những
nguồn tài nguyên địa lý. Từ đó có thể chọn môi trường phát triển hoặc cung cấp
những nền tảng ứng dụng đa dạng mà vẫn có thể sử dụng lại.
- Đối với các nhà quản lý thông tin: Giúp cho việc sử dụng hoặc phân phối

cơ sở dữ liệu địa lý, cung cấp những khả năng xử lý địa lý tới khách hàng, tích
hợp dữ liệu địa lý và xử lý vào một kiến trúc tính toán liên hợp.
- Đối với người dùng cuối là những người hưởng lợi tối ưu, họ nhận được
sự truy nhập một cách nhanh chóng đến một hệ thống thông tin rộng lớn với
nhiều ứng dụng.
Với việc ra đời của OGC - OpenGIS giúp xây dựng nên một ứng dụng có thể
tổng hợp các thông tin từ nhiều hệ thống thông tin địa lý khác nhau. Ví dụ: cổng thông
tin địa lý (GeoPortal), GeoPortal cho phép tổng hợp các thông tin từ các hệ thống địa
lý khác nhau thông qua dịch vụ Web.
1.4. Khái niệm chung về bản đồ địa lý
Định nghĩa: Bản đồ địa lý là sự biểu thị thu nhỏ qui ước của bề mặt trái đất lên
mặt phẳng, xây dựng trên cơ sở toán học, sử dụng các ký hiệu quy ước để phản ánh sự
phân bố, trạng thái và mối quan hệ tương quan của các hiện tượng thiên nhiên và xã
hội.
Trên bản đồ người ta thể hiện các đối tượng và hiện tượng có trên mặt đất trong
thiên nhiên, xã hội và các lĩnh vực hoạt động của con người. Các yếu tố nội dung của
bản đồ là:
- Thủy hệ
- Địa hình bề mặt.
- Dân cư
- Đường giao thông
- Ranh giới hành chính – chính trị
- Lớp phủ thổ nhưỡng – thực vật
- Các đối tượng kinh tế xã hội
Để phục vụ được công tác địa lý, GIS phải lưu trữ đầy đủ các thông tin địa lý này
của bản đồ, cung cấp các chức năng giúp quản lý, phân tích và hiển thị thông tin địa lý.
Các tri thức này được thể hiện qua các tập thông tin:

5


- Các bản đồ: giao diện trực tuyến với dữ liệu địa lý để tra cứu, trình bày
kết quả và sử dụng như là một nền giao thức với thế giới thực.
- Các thông tin địa lý: chứa trong các tệp tin trong cơ sở dữ liệu gồm các
yêu tố cơ bản, mạng lưới, topology, địa hình, thuộc tính, …
- Các mô hình xử lý: tập hợp các quy trình xử lý để phân tích tự động.
- Các mô hình dữ liệu: GIS cung cấp các công cụ mạnh hơn là một CSDL
thông thường, bao gồm các quy tắc và sự toàn vẹn dữ liệu giống như các hệ
thống thông tin khác.
- Siêu dữ liệu (metadata) hay tài liệu mô tả dữ liệu, cho phép người sử
dụng tổ chức, tìm hiểu và truy nhập được tới tri thức địa lý.
1.5. Tìm hiểu một số hệ thống GIS tiêu biểu
1.5.1. MapInfo
MapInfo là công cụ khá hữu hiệu để tạo ra và quản lý một CSDL địa lý trên máy
tính cá nhân, là một phần mềm tương đối gọn nhẹ và dễ sử dụng. Đặc biệt, dùng cho
mục đích giảng dạy và thành lập các bản đồ chuyên đề phân tích trong địa lý.
MapBasic là 1 ngôn ngữ lập trình trong môi trường MapInfo cho phép phát triển
các ứng dụng GIS. Nó tạo ra các hệ thống giao diện người dùng thuận lợi và nhanh
chóng như tạo thanh menu mới, hộp thoại điều khiển như ý muốn cho phép tiết kiệm
thời gian và tiện lợi cho việc triển khai ứng dụng.
MapBasic cũng cung cấp công cụ xử lý dữ liệu, đáp ứng các yêu cầu đa dạng về
dữ liệu. Nó cho phép truy vấn CSDL, lựa chọn và cập nhật dữ liệu bẳng các câu lệnh
theo cú pháp SQL. Hiển thị kết quả truy vấn theo khuôn dạng mong muốn.
Ngoài ra, MapBasic cho phép xây dựng chương trình có cấu trúc mở vì nó có khả
năng liên kết với các ứng dụng khác. Chương trình MapBasic có thể gọi các thủ tục
trong các thư viện các tệp liên kết động của Windows DLL hoặc sử dụng dữ liệu
chuyển đổi động DDE (Dynamic Data Exchange) để lin kết với các phần mềm khác.
1.5.2. ArcViewcủa ESRI
ArcView là phần mềm thương mại của ESRI về hệ thống thông tin địa lí (GIS).
Các chức năng cơ bản của ArcView GIS bao gồm:
- Chương trình ArcView GIS chạy trên nền Windows

- Hiển thị các lớp bản đồ dạng vector
- Tạo và thay đổi cơ sở dữ liệu của các đối tượng địa lí trong bản đồ

6

- Tạo các biểu đồ đơn giản dựa trên thuộc tính của các đối tượng trên bản
đồ
- Chuẩn bị các bản in ra giấy

Hình – ArcView chạy trên Windows
Ngoài ra ArcView GIS còn hỗ trợ chức năng lập trình thông qua ngôn ngữ lập
trình Avenue, được tích hợp sẵn trong phần mềm. ArcView GIS cũng có khả năng cho
phép lập trình liên kết với các ngôn ngữ khác như VB, VC++.
ArcView GIS thích hợp cho những ứng dụng GIS nhỏ, đơn người dùng, thích
hợp cho việc nghiên cứu về GIS và giảng dạy trong các trường Đại học, Cao đẳng.
ArcView cung cấp ngôn ngữ kịch bản riêng của mình.
Các kho tài nguyên scripts mẫu do ESRI cung cấp với ArcView. Nhiều scripts có
thể tải về miễn phí từ trang web ArcScripts của ESRI và đưa vào chương trình.
1.6. MobileGIS
Mobile GIS là phần mở rộng của hệ thông tin địa
lý (GIS), cho phép các ứng dụng GIS có thể hoạt động
trên thực địa thay vì hoạt động trong phòng. Mobile
GIS cho phép người sử dụng ở bên ngoài thực địa thu
thập, lưu trữ, cập nhật, thao tác, phân tích, và hiển thị
các thông tin địa lý.

7

Mobile GIS tích hợp một hoặc nhiều các công nghệ sau:
- Các thiết bị Mobile

- Hệ thống định vị toàn cầu (GPS)
- Công nghệ truyền thông không dây cho truy cập GIS Internet
ArcPad là giải pháp toàn diện GIS cho thiết bị cầm tay với mục đích cập nhật dữ
liệu cho hệ thống GIS như thu thập, truy vấn, phân tích và quản lý dữ liệu địa lý.
ArcPad cung cấp các chức năng đồng bộ hóa dữ liệu với ArcGIS nhằm nâng cao
chức năng xử lý dữ liệu địa lý, cùng với khả năng chuyển đổi dữ liệu. ArcPad là công
cụ cho các chuyên gia về GIS bởi khả năng tích hợp hỗ trợ các thiết bị thu thập dữ
liệu cầm tay tiện ích và hiện đại.
Các khả năng chính
- Được xây dựng với các công cụ cập nhật dữ liệu địa lý mạnh, quản lý
dữ liệu không gian tốt, phục vụ quá trình chỉnh sửa, cập nhật thông tin cho dữ
liệu không gian và thuộc tính.
- Cho phép sử dụng với các thiết bị như PPC, Smart Phone, Pcphone.
- Cho phép sử dụng nhiều dạng dữ liệu.
- Xây dựng và quản lý cơ sở dữ liệu, ứng dụng các đoạn mã chương
trình để xử lý các quy trình GIS tự động.
-
Cho phép cập nhật dữ liệu GIS tự động và đơn giản hóa, đồng thời
cho phép hiện thị và tạo các bản đồ chất lượng cao Hệ thống Mobile ArcGIS
Desktop

1.6.1. Hệ thống WebGIS
WebGIS l hệ thống thông tin địa lý phân tán trên mạng máy tính để thu thập,
phân phát, truyền tải các thông tin địa lý dựa trên nền công nghệ Web. Hệ thống
WebGIS sử dụng mô hình kiến trúc khách – chủ. Mô hình khách chủ có thể triển khai
theo 3 cách tiếp cận “nhẹ khách” (thin client) , “nặng khách” (thick client), hoặc mô
hình cân đối .
Mô hình “nhẹ khách” có nghĩa là hầu hết công việc xữ lý ở phía dịch vụ, phía
khách không làm gì nhiều hơn là hiển thị kết quả. Ưu điểm của mô hình này là người
dùng không cần cài đặt thêm các ứng dụng. Máy khách nhẹ tải nên không cần cấu hình

cao. Tuy nhiên để giảm tải cho phía chủ cung cấp dịch vụ, các máy chủ Web, máy chủ
CSDL và WebGIS có thể không tập trung trên một máy nền duy nhất mà phân tán trên
các máy chủ khác nhau và liên kết qua mạng. Vì ở máy khách chỉ có nhiệm vụ hiển thị
kết quả do đó khi người sử dụng muốn sử dụng các thao tác với dữ liệu không gian, ví

8

dụ cập nhật một đối tượng, một khu vực địa lý trên bản đồ thì sẽ khó thực hiện. Do đó
mô hình nhẹ khách là giải pháp đơn giản để xây dựng tập hệ thống bản đồ chủ yếu
phục vụ tra cứu, tìm kiếm thông tin, chỉ sử dụng bộ duyệt web.
Mô hình “nặng khách” đối lập với “nhẹ khách”. Phía khách đảm nhiệm thêm một
số chức năng xử lý, cần cài đặt thêm các tiện ích ví dụ các trình plug-in, ActiveX hay
Java-applets. Các tiện ích GIS plug-in mở rộng khả năng của bộ duyệt web, làm cho
nó có khả năng xử lý các khuôn dạng dữ liệu GIS. Một số chức năng GIS đơn giản có
thể do các trình plug-in hay các applet thực hiện tại phía khách, không cần gửi về máy
chủ dịch vụ giúp giảm bớt việc truyền dữ liệu trên mạng. Ưu điểm của giải pháp “nặng
khách” là khả năng tương tác cao hơn, người sử dụng được hòan thiện hơn. Nhược
điểm của giải pháp này chủ yếu là ở khâu phân phát công cụng phần mềm để cài đặt ở
máy khách.
Mô hình “cân đối”, người thiết kế phải quyết định phân phối tính toán giữa máy
chủ và máy trạm sao cho hợp lý cũng như cân nhắc, tính toán dữ liệu truyền.
Ví dụ về mô hình WebGIS: GoogleEarth (KML) là phần mềm GIS của Google
xây dựng trên phạm vi toàn cầu, nó được xây dựng trên nền tảng Client-Server nhờ sử
dụng KML để lưu trữ và quản lý dữ liệu. Cung cấp hệ thống bản đồ phong phú và đa
dạng, tốc độ xử lý nhanh.KML có cấu trúc ngữ pháp XML và khuôn dạng dữ liệu để
mô hình và lưu trữ các đối tượng đồ họa địa lý như các điểm, đường, ảnh và polygon
để hiển thị ở phía Client của GoogleEarth. Google Earth kết hợp với các hệ thống vệ
tinh để đưa ra các hình ảnh mới nhất và sống động nhất cho người dùng. GoogleEarth
là một sản phẩm phục tốt cho người dùng nghiệp dư, với các chuyên gia, GoogleEarth
vẫn chưa đáp ửng đủ yêu cầu.


9

CHƯƠNG 2. TỔ CHỨC DỮ LIỆU TRONG GIS

2.1. Tổ chức dữ liệu trong hệ thống thông tin địa lý
GIS cung cấp đầy đủ các thông tin địa lý của bản đồ, GIS lưu trữ các thành phần
của bản đồ thành 1 tập các lớp theo chủ đề, liên kết với nhau. Cách tiếp cận thành từng
lớp (layer) cho phép tổ chức thế giới thực phức tạp thành dạng đơn giản hơn, dễ quản
lý hơn.

Hình 2 – Tổ chức các lớp của thế giới thực
Trong hệ thống thông tin địa lý, dữ liệu được chia làm hai loại dữ liệu cơ bản: dữ
liệu không gian và dữ liệu phi không gian. Mỗi loại có những đặc điểm riêng và chúng
khác nhau về yêu cầu lưu giữ số liệu, hiệu quả xử lý và hiển thị.
Dữ liệu không gian là dữ liệu về vị trí địa lý của các đối tượng theo một hệ tọa độ
hay hệ quy chiếu nào đó, là những mô tả số của hình ảnh bản đồ, chúng bao gồm toạ
độ, quy luật và các ký hiệu dùng để xác định một đối tượng địa lý cụ thể trên bản đồ.
Hệ thống thông tin địa lý dùng các số liệu không gian để tạo ra một bản đồ hay hình
ảnh bản đồ trên màn hình hoặc trên giấy thông qua thiết bị ngoại vi, … Dữ liệu không
gian có thể biểu diễn bằng mô hình dữ liệu raster hay mô hình dữ liệu vector.
Dữ liệu phi không gian hay dữ liệu thuộc tính là những đặc tính, số lượng, mối
quan hệ kết nối logic giữa các dữ liệu không gian của các đối tượng bản đồ với vị trí
địa lý của chúng. Dữ liệu thuộc tính nói chung thuộc kiểu số, hoặc chữ số và chúng
được tổ chức lưu thành các bảng dữ liệu trong CSDL theo mô hình quan hệ.

10

2.1.1. Mô hình dữ liệu Vector
Mô hình dữ liệu vector xem các sự vật, hiện tượng là tập các thực thể không gian

cơ sở và tổ hợp của chúng. Trong mô hình 2D thì các thực thể cơ sở bao gồm: điểm
(point), đường (line), vùng (polygon). Các thực thể cơ sở này được hình thành trên cở
sở các vector hay toạ độ của các điểm trong một hệ trục toạ độ nào đó.
Loại thực thể cơ sở được sử dụng phụ thuộc vào tỷ lệ quan sát hay mức độ khái
quát của bản đồ. Với bản đồ có tỷ lệ nhỏ thì thành phố được biểu diễn bằng điểm
(point), đường đi, sông ngòi được biểu diễn bằng đường (line). Khi tỷ lệ thay đổi kéo
theo sự thay đổi về thực thể biểu diễn. Thành phố lúc này sẽ được biểu diễn bởi vùng
có đường ranh giới. Khi tỷ lệ lớn hơn, thành phố có thể được biểu diễn bởi tập các
thực thể tạo nên các đối tượng nhà cửa, đường sá, các trình tiện ích,… Có thể nói mô
hình dữ liệu vector sử dụng các đoạn thẳng hay các điểm rời rạc để biểu diễn các đối
tượng địa lý của thế giới thực.


Hình 2 – số liệu Vector được biểu diễn dưới dạng vùng (polygons)
Đối tượng điểm được biểu diễn dưới dạng một vector 2 chiều (x,y), xác định vị
trí của điểm đó trên bản đồ. Đối tượng là đường được xác định như tập hợp dãy của
các điểm, vùng được xác định bởi ranh giới các đường thẳng, những đối tượng này
được gọi là các polygons, được mô tả bằng tập các đường và điểm nhãn (lable points).
Mô hình dữ liệu vector định hướng đến các hệ thống quản trị cơ sở dữ liệu.
Chúng có ưu việt trong việc lưu trữ số liệu bản đồ. Vì các thành phần đồ họa biểu diễn
các đặc trưng của bản đồ liên kết trực tiếp với các thuộc tính được lưu trong CSDL, do
đó việc tìm kiếm có thể được thực hiện dễ dàng.

11

2.1.2. Hệ thống Raster
Mô hình dữ liệu dạng raster phản ánh toàn bộ vùng nghiên cứu dưới dạng một
lưới các ô vuông hay điểm ảnh (cell). Độ phân giải dữ liệu raster phụ thuộc vào kích
thước của tế bào hay điểm ảnh, khác nhau từ vài chục dm đến vài km. Dữ liệu raster
gắn liền với dữ liệu dạng ảnh hoặc dữ liệu có tính liên tục cao. Dữ liệu raster có thể

biểu diễn được rất nhiều các đối tượng từ hình ảnh bề mặt đất đến ảnh chụp từ vệ tinh,
ảnh quét và ảnh chụp. Định dạng dữ liệu raster rất đơn giản nhưng hỗ trợ rất nhiều
kiểu dữ liệu khác nhau. Mô hình raster có các đặc điểm:
- Các điểm được xếp liên tiếp từ trái qua phải và từ trên xuống dưới.
- Mỗi một điểm ảnh chứa 1 giá trị.
- Một tập các ma trận điểm và các giá trị tương ứng tạo thành một lớp
(layer).
- Trong cơ sở dữ liệu có thể có nhiều lớp.
Mô hình dữ liệu raster là mô hình dữ liệu GIS được dùng tương đối phổ biến
trong các bài toán về môi trường, quản lý thiên nhiên. Trong một hệ thống CSDL cơ
bản, raster được lưu trữ trong các ô (thường hình vuông) được sắp xếp trong một mảng
hoặc dãy các hàng và cột.
Trong cấu trúc dữ liệu raster, các điểm (points) có thể được biểu diễn bằng một
cell. Line được biểu diễn bởi một tập các cell có hướng xác định, độ rộng của line
bằng chiểu rộng của một cell. Polygon được biểu diễn bởi một dãy các cell nằm kề sát
nhau.

Hình 3 - Mảng cell và bảng thuộc tính

Hình 4 - Biểu diễn các đối tượng cơ sở trong raster

12

Cũng như mô hình vector, mô hình raster có các tầng bản đồ cho địa hình, hệ
thống thủy lợi, sử dụng đất, … Tuy nhiên do cách thức xử lý thông tin thuộc tính khác
nhau, nên mô hình raster thường có nhiều bản đồ hơn. Ví dụ, trong mô hình vector để
biểu diễn mức độ ô nhiểm của một “con sông” có thể được gán trực tiếp cho nó.
Nhưng trong mô hình raster không làm được như vậy. Trước hết phải tạo lập tầng bản
đồ cho “con sông”, sau đó tạo tầng bản đồ thứ hai để chỉ mức độ ô nhiểm. Kết quả là
số lượng tầng bản đồ của một hệ thống raster tăng lên đáng kể so với mô hình vector.

Ưu điểm của mô hình raster là đơn giản, lưới là một bộ phận của bản đồ đã được
sử dụng để kiến tạo thông tin địa lý. Khi các số liệu đầu vào là các ảnh vệ tinh hay ảnh
từ máy quét – có khuôn mẫu lưới, chúng sẽ phù hợp cho mô hình dữ liệu này. Lợi thế
lớn nhất của hệ thống raster là dữ liệu hình thành trong bản đồ trong bộ nhớ máy tính.
Do vậy, các thao tác kiểu như so sánh lưới tế bào được thực hiện dễ dàng. Tuy nhiên
hệ thống raster không thuận tiện cho việc biểu diễn đường, điểm vì mổi chúng là tập
các tế bào trong lưới, do đó đường thẳng dễ bị đứt đoạn hoặc rộng hơn thực tế.
Điểm yếu nhất của mô hình dữ liệu raster là phải xử lý khối dữ liệu rất lớn. Nếu
độ phân giải của lưới càng thấp thì các thực thể trên bản đồ càng có thể bị mất đi.
Ngược lại nếu độ phân giải cao thì phải lưu trữ một khối lượng lớn các thông tin trong
CSDL.
Mô hình dữ liệu vector cho ta nhiều thao tác hơn trên các đối tượng so với mô
hình raster. Việc tính diện tích, đo khoảng cách của các đối tượng được trong mô hình
Vector thực hiện bằng các tính toán hình học từ toạ độ của các đối tượng thay vì việc
tính toán trên các điểm ảnh như ở mô hình raster.

Hình 3 – Kết hợp giữa mô hình vector và raster


13

Mỗi mô hình raster và vector đều có những ưu và nhược điểm riêng. Tùy theo
mục tiêu sử dụng của GIS mà có thể thiết kế chức năng biến đổi Raster/Vector nếu cần
thiết. Thông thường người ta biểu diễn thế giới thực bởi sự kết hợp giữa giữ liệu
vector và raster.
2.1.3. Mô hình TIN
Các ứng dụng mô hình hoá địa hình đòi hỏi phương pháp biểu diễn độ cao so với
bề mặt nước biển. Có rất nhiều mô hình biểu diễn bề mặt thực hiện công việc này,
trong đó mô hình “lưới tam giác không đều” - gọi tắt là mô hình TIN được đánh giá là
hiệu quả nhất.



Hình 5 - Bản đồ với mô hình dữ liệu TIN
TIN có khả năng biểu diễn bề mặt liên tục từ những tập hợp điểm rời rạc. Về mặt
hình học, TIN là tập các điểm được nối với nhau thành các tam giác. Các tam giác này
hình thành nên bề mặt 3 chiều. Các điểm được lưu trữ cùng với giá trị gốc chiếu của
chúng. Các điểm này không cần phải phân bố theo một khuân mẫu nào và mật độ phân
bố cũng có thể thay đổi ở các vùng khác nhau. Một điểm bất kỳ thuộc vùng biểu diễn
sẽ nằm trên đỉnh, cạnh hoặc trong một tam giác của lưới tam giác. Nếu một điểm
không phải là đỉnh thì giá trị hình chiếu của nó có được từ phép nội suy tuyến tính (của
hai điểm khác nếu điểm này nằm trên cạnh hoặc của ba điểm nếu điểm này nằm trong
tam giác). Vì thế mô hình TIN là mô hình tuyến tính trong không gian 3 chiều có thể
được hình dung như sự kết nối đơn giản của một tập hợp các tam giác.
Ta có thể lưu trữ sơ đồ của TIN bằng danh sách liên kết đôi hoặc cấu trúc tứ
phân. Cả hai phương pháp này đều mô tả cấu trúc hình học tô pô của bản đồ chia nhỏ.

2.2. Điểm qua cách tổ chức dữ liệu trong một số hệ thống GIS thông dụng.
2.2.1. Tổ chức dữ liệu trong MapInfo
Các thông tin trong MapInfo được tổ chức theo từng bảng, mỗi một bảng là một
tập các File về thông tin đồ họa hoặc phi đồ họa chứa các bản ghi dữ liệu mà hệ thống
tạo ra. Cơ cấu tổ chức thông tin của các đối tượng địa lý được tổ chức theo các File
sau đây:

14

- .tab: mô tả khuôn dạng tab, chứa thông tin để kết nối tất cả các tệp khác
trong ứng dụng MapInfo, thông tin về kiểu dữ liệu.
- .dat hoặc .dbf: tệp chứa dữ liệu thuộc tính, có cấu trúc tương tự như tệp
CSDL dBase III.
- .map: file chứa các thông tin mô tả đối tượng địa lý dưới dạng mã nhị

phân, cho phép hiển thị một bản đồ trên màn hình.
- .id: file chứa các thông tin liên kết các đối tượng lại với nhau
- .ind: file chứa các chỉ số đối tượng
- .wor: tập tin lưu trữ tổng hợp các table hoặc các cửa số thông tin khác
nhau của MapInfo.
2.2.2. Tổ chức dữ liệu trong ArcGIS của ESRI
Khuôn dạng shapefile được đưa vào sử dụng trong ArcGIS 2 từ đầu những năm
90. Thuật ngữ “shapefile” thường được dùng để chỉ một tập hợp nhiều tệp có chung
tên nhưng với phần mở rộng khác nhau, cùng trong 1 thư mục. Để hiểu sâu hơn về cấu
trúc lưu trữ của một GIS ta sẽ đi sâu tìm hiểu shapefile như là một ví dụ ở phần sau.
2.2.3. Tổ chức dữ liệu trong GRASS
GRASS là một trong những ứng dụng GIS nguồn mở rất mạnh. GRASS nổi tiếng
về phân tích dữ liệu raster, điều mà chúng ta không thấy ở các GIS thương mại như
MapInfo Professional hoặc Arcview. Tuy nhiên, sau này các chức năng liên quan đến
dữ liệu vector cũng đang được phát triển.
Dữ liệu GIS trong GRASS nằm trong một thư mục được gọi là CSDL GIS
(GISDBASE). Trong CSDL GIS đó có các thư mục con được gọi là LOCATION (vị
trí), trong các LOCATION có các thư mục con gọi là MAPSET (bộ bản đồ). Các
mapset sẽ chứa các tệp và các thư mục con, gọi là các phần tử (thành phần) cơ sở dữ
liệu. Mỗi một phiên làm việc của GRASS chỉ được làm việc với một MAPSET trong
một LOCATION mà thôi. Nếu không có dữ liệu sẵn, bạn phải tự tạo ra LOCATION
và MAPSET mới.
Bản đồ vector trong GRASS được lưu trữ theo các biểu diễn cung-nút, bao gồm
các đường cong gọi là cung. Một cung được lưu trữ như một danh sách các cặp tọa độ
x,y. Điểm đầu, điểm cuối của một cung được gọi là nude. Hai cặp tọa độ x, y liên tiếp
nhau xác định một đoạn (segment) của cung. Các cung đơn lẽ hay kết hợp với các
cung khác tạo ra các đối tượng bản đồ ở mức cao hơn. Các cung đơn lẽ tạo nên các
line biểu diễn các đối tượng như đường, sông suối, … các cung bao quanh 1 vùng
được gọi là area edges hay areas lines.


15


Hình – Cấu trúc thư mục của Grass
Các tệp của cùng một lớp bản đồ vector có cùng một tên, nhưng mỗi tệp nằm
trong một thư mục CSDL khác nhau trong mapset.
2.3. Tìm hiểu cấu trúc lưu trữ của Shapefile
Shapefile là một cấu trúc dữ liệu
GIS
được đưa ra bởi ESRI
cho cácn phần
mềm hệ thống thông tin địa lý, như một chuẩn mở cho việc chia sẽ dữ liệu giữa ESRI
và các phần mềm GIS khác. Một shapefile thường là 1 tập các files cùng tên với đuôi
.shp, .shx , .dbf,…
Shapefile dùng để mô tả các đối tượng địa lý: điểm, đường, đa giác. Mổi đối
tượng có các thuộc tính địa lý, ví dụ: tên, nhiệt độ, độ cao,…
Shapefile lưu trữ dữ liệu dưới dạng vector để chứa các đối tượng địa lý và các
thông tin liên quan. Tuy nhiên, nó không có khả năng chứa thông tin mạng topo hình
học.
Shapefile lưu trữ các loại dữ liệu địa lý cơ bản của các điểm, đường, đa giác. Để
có những thông tin thuộc tính về các đối tượng để xác định đối tượng nào mà chúng
biểu diễn, một bảng các bản ghi sẽ chứa các thuộc tính cho mỗi đối tượng trong
shapefile. Những biểu diễn của các đối tượng địa lý (các điểm, các đường, các đa giác)
này có thể tạo ra rất nhiều biểu diễn của dữ liệu địa lý cung cấp khả năng tính toán địa
lý mạnh mẽ và chính xác.

16

Shapefile là một tập của một số file (thông thường có 3 file cơ bản). Mỗi file tuân
theo quy tắc đặt tên file của MS DOS.

3 file bắt buộc:
- .shp: thông tin về dạng hình học của đối tượng địa lý.
- .shx: định dạng index của shapefile;
- .dbf: định dạng thuộc tính; các cột thuộc tính cho mỗi shape trong dBase
III.
Các file tùy chọn:
- .prj: định dạng projection; lưu thông tin hệ tọa độ và thông tin project, sử
dụng định dạng WKT.
- .sbn và .sbx: một kiểu index không gian của các đặc trưng (features).
- .fbn và .fbx: một index không gian của các đặc trưng cho những
shapefile chỉ đọc
- .ain và .aih: một index thuộc tính của các của các trường hoạt động trong
bảng hoặc trong các thuộc tính của bảng.
- …
Định dạnh của shapefile (.shp)
File chính (.shp) chứa dữ liệu tham chiếu của đối tượng địa lý chính trong
shapefile. Nó gồm 1 tiêu đề độ dài cố định theo sau bởi một hoặc nhiều bản ghi độ dài
có thể thay đỗi. Mỗi bản ghi này chứa một thành phần bản ghi tiêu đề và một thành
phần bản ghi nội dung.
Tiêu đề của main file với chiều dài cố định: 100bytes:
(Trong các bảng, cột Endianness chỉ mức độ quan trọng của dữ liệu).

Bytes

Type Endianness

Usage
0-3 Int32 Big File code (always hex value 0x0000270a)
4-23 Int32 Big Unused; five uint32
24-27 Int32 Big File length (in 16-bit words, including the

header)

17

28–31

int32 little Version
32–35

int32 little Shape type (see reference below)
36–67

double little Minimum bounding rectangle (MBR) of
all shapes contained within the shapefile;
four doubles in the following order: min
X, min Y, max X, max Y
68-83 Double

Little Range of Z; two doubles in the following
order: min Z, max Z
84-99 Double

Little Range of M; two doubles in the
following order: min M, max M

File .shp chứa số lượng bản ghi thay đổi với số lượng bất kỳ. Mỗi bản ghi được
thêm vào đầu bởi 1 bản ghi tiêu đề dài 8bytes
Bytes

Type


Endianness

Usage
0-3 Int32 Big Record number (1-based)
4-7 Int32 big Record length (in 16-bit words)

Theo sau bản ghi tiêu đề là bản ghi thật
Byte

Type

Endianness

Usage
0-3 Int32 Little Shape type
4- - - Shape content

Nội dung của các bản ghi có chiều dài thay đổi phụ thuộc vào loại của đối tượng
biểu diễn

18


Shapefile index (.shx)
File chỉ số của shapefile cũng chứa tiều đề 100-byte như .shp, theo sau bởi bất kỳ
một số các bản ghi có độ dài có định 8byte với 2 trường.
Bytes

Type


Endianness

Usage
0-3 Int32 Big Record offset (in 16-bit words)
4-7 Int32 Big Record length (in 16-bit words)

Sử dụng chỉ số này, cho phép tìm giật lùi trong shapefile bằng cách tìm kiếm giật
lùi trong shape index, đọc record offset, và sử dụng nó để tìm đến vị trí tương ứng
trong .shp file. Tương tự, nó cũng cho phép tìm kiếm trên một số tùy ý bản ghi bởi
cùng phương pháp.
File dữ liệu (.dbf)
Các thuộc tính cho mỗi shape được chứa dưới dạng dBase. Một định dạng thay
thể cũng có thể được sử dụng là xBase.
File định dạng Project (.prj)

×