`
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Trần Văn Hưởng
TÌM HIỂU VÀ XÂY DỰNG HỆ THỐNG THÔNG
TIN ĐỊA LÝ - WEBGIS
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin
`
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Trần Văn Hưởng
TÌM HIỂU VÀ XÂY DỰNG HỆ THỐNG THÔNG
TIN ĐỊA LÝ - WEBGIS
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: PGS.TS Hoàng Xuân Huấn
LỜI CẢM ƠN
Em xin chân thành cảm ơn Khoa Công Nghệ Thông Tin, Trường Đại học Công
nghệ, Đại học Quốc gia Hà Nội đã tạo điều kiện thuận lợi cho em học tập và thực hiện
đề tài tốt nghiệp này.
Em xin bày tỏ lòng biết ơn sâu sắc đến thầy Hoàng Xuân Huấn đã tận tình hướng
dẫn và chỉ bảo em trong quá trìn thực hiện đề tài
Em xin chân thành cảm ơn quý thầy cô trong khoa công nghệ thông tin đã tận tình
giảng dạy, trang bị cho em những kiến thức quý báu trong những năm học vừa qua
Sau hết, xin gửi lời cảm ơn đến gia đình bạn bè, người thân đã ủng hộ động viên
tinh thần để luận văn được hoàn thành.
Mặc dù đã cố gắng hoàn thiện luận văn với tất cả sự nỗ lực của bản thân, nhưng
chắc chắn không thể tránh khỏi những thiếu sót. Kính mong quý Thầy Cô tận tình chỉ
bảo.
MỞ ĐẦU
Hệ thống thông tin địa lý (GIS) ra đời và được phát triển mạnh trong những năm
gần đây. Cùng với sự bùng nổ về công nghệ ứng dụng Internet, các phát triển công nghệ
GIS cho phép chia sẻ thông tin thông qua mạng toàn cầu bằng cách kết hợp GIS và Web
hay còn gọi là WebGIS. Bên cạnh đó, xu hướng chia se
̉
dư
̃
liê
̣
u, phát triển phần mềm
trên công nghệ mã nguồn mở cũng đang được quan tâm ở các nước đang phát triển vì
nhiều lợi ích mà nó mang lại. Vì thế, việc nghiên cứu ứng dụng WebGIS trên cơ sở mã
nguồn mở sẽ mang lại khả năng chia se
̉
thông tin địa lý rộng rãi cho các ngành.
Hơn một thập kỷ trước đây, các thông tin không gian - bản đồ ở Việt Nam chủ yếu
được thành lập và phát hành trên giấy. Trong những năm gần đây, các quy trình thành
lập bản đồ, lưu trữ và phát hành đã dần dần chuyển đổi sang công nghệ số. Các bản đồ
giấy trước kia đã được số hoá và đang nằm trong các ổ cứng máy tính tại các cơ quan,
trường học, cá nhân,... Theo xu thế chung, các thông tin không gian này được chuyển
sang lưu trữ trong các hệ thống cơ sở dữ liệu thông tin không gian được sử dụng bởi các
đơn vị khác nhau.
Việc chuyển đổi từ công nghệ số sang công nghệ bản đồ giấy đã là một bước tiến
vượt bậc của ngành trắc địa. Tuy nhiên, các hệ cơ sở dữ liệu không gian được lưu trữ và
sử dụng trong một hệ thống riêng biệt đã hạn chế rất nhiều tiềm năng khai thác thông tin
không gian của các hệ thống này. Công nghệ Web-GIS cho phép phát hành, tiếp cận,
truy vấn thông tin không gian trong một môi trường mở như Internet đã cho phép phát
huy các tiềm năng chưa được đánh thức của các hệ thống thông tin địa lý, không gian và
đưa công tác trắc địa bản đồ lên một tầm cao mới.
Chương 4: Xây dựng ứng dụng WebGiS. Dựa vào kiến thức tìm hiểu ở các phần
trên trong chương này sẽ giới thiệu hệ thống thông tin địa lý trên Web do tôi tự xây
dựng.
`
Chương 1. Hệ thống thông tin địa lý
1.1. Hệ thống thông tin địa lý là gì
Thông tin địa lý được thể hiện chủ yếu dưới dạng bản đồ đã ra đời từ xa xưa.Các
bản đồ trước tiên được phác thảo để mô tả vị trí, cảnh quan, địa hình…Bản đồ chủ yếu
gồm những điểm và đường. Tuy nhiên bản đồ dạng này thích hợp cho quân đội và các
cuộc thám hiểm hơn là được sử dụng như một công cụ khai thác tiềm năng của địa lý.
Bản đồ vẫn tiếp tục được in trên giấy ngay cả khi máy tính đã ra đời một thời gian
dài trước đó. Bản đồ in trên giấy bộc lộ những hạn chế như: thời gian xây dựng, đo đạc,
tạo lập rất lâu và tốn kém. Lượng thông tin mang trên bản đồ giấy là hạn chế vì nếu
mang hết các thông tin lên bản đồ sẽ gây khó đọc. Bên cạnh đó bản đồ giấy không thể
cập nhật theo thời gian được vv…
Ý tưởng mô hình hóa không gian lưu trữ vào máy tính, tạo nên bản đồ máy tính.
Đó là bản đồ đơn giản có thể mã hóa, lưu trữ trong máy tính, sữa chữa khi cần thiết, có
thể hiển thị trên màn hình và in ra giấy.
Tuy nhiên các nhà nghiên cứu nhận thấy nhiều vấn đề địa lý cần phải thu thập một
lượng lớn thông tin không phải là bản đồ.
Lúc này khái niệm Hệ thống thông tin địa lý (Geographic Information System -
GIS) ra đời thay thế cho thuật ngữ bản đồ máy tính.
GIS được hình thành từ các ngành khoa học: Địa lý, Bản đồ, Tin học và Toán học.
Chỉ đến những năm 80 thì GIS mới có thể phát huy hết khả năng của mình do sự phát
triển mạnh mẽ của công nghệ phần cứng. Bắt đầu từ thập niên 80, GIS đã trở nên phổ
biến trong các lãnh vực thương mại, khoa học và quản lý. Chúng ta có thể gặp nhiều
cách định nghĩa về GIS
- Là một tập hợp của các phần cứng, phần mềm máy tính cùng với các thông tin
địa lý mô tả không gian. Tập hợp này được thiết kế để có thể thu thập, lưu trữ,
cập nhật, thao tác, phân tích, thể hiện tất cả các hình thức thông tin mang tính
Là tập hợp các câu lệnh, chỉ thị nhằm điều khiển phần cứng của máy tính thực
hiện một nhiệm vụ xác định, phần mềm hệ thống thông tin địa lý có thể là một hoặc tổ
hợp các phần mềm máy tính. Phần mềm được sử dụng trong kỹ thuật GIS phải bao gồm
các tính năng cơ bản sau:
- Nhập và kiểm tra dữ liệu: Bao gồm tất cả các khía cạnh về biến đổi dữ liệu đã ở
dạng bản đồ, trong lĩnh vực quan sát vào một dạng số tương thích. Ðây là giai đoạn rất
quan trọng cho việc xây dựng cơ sở dữ liệu địa lý.
- Lưu trữ và quản lý cơ sở dữ liệu: Lưu trữ và quản lý cơ sở dữ liệu đề cập đến
phương pháp kết nối thông tin vị trí và thông tin thuộc tính của các đối tượng địa lý
(điểm, đường đại diện cho các đối tượng trên bề mặt trái đất). Hai thông tin này được tổ
chức và liên hệ qua các thao tác trên máy tính và sao cho chúng có thể lĩnh hội được bởi
người sử dụng hệ thống.
- Xuất dữ liệu: Dữ liệu đưa ra là các báo cáo kết quả quá trình phân tích tới người
sử dụng, có thể bao gồm các dạng: bản đồ, bảng biểu, biểu đồ, lưu đồ được thể
hiện trên máy tính, máy in, máy vẽ...
- Biến đổi dữ liệu: Biến đổi dữ liệu gồm hai lớp điều hành nhằm mục đích khắc
phục lỗi từ dữ liệu và cập nhật chúng. Biến đổi dữ liệu có thể được thực hiện
trên dữ liệu không gian và thông tin thuộc tính một cách tách biệt hoặc tổng hợp
cả hai.
- Tương tác với người dùng: Giao tiếp với người dùng là yếu tố quan trọng nhất
của bất kỳ hệ thống thông tin nào. Các giao diện người dùng ở một hệ thống tin
được thiết kế phụ thuộc vào mục đích của ứng dụng đó.
Các phần mềm tiêu chuẩn và sử dụng phổ biến hiện nay trong khu vực Châu Á là
ARC/INFO, MAPINFO, ILWIS, WINGIS, SPANS, IDRISIW,... Hiện nay có rất nhiều
phần mềm máy tính chuyên biệt cho GIS, bao gồm các phần mềm như sau:
- Phần mềm dùng cho lưu trữ, xử lý số liệu thông tin địa lý: ACR/INFO,
SPAN,ERDAS-Imagine, ILWIS, MGE/MICROSTATION, IDRISIW, IDRISI,
WINGIS,
3
- Phần mềm dùng cho lưu trữ, xử lý và quản lý các thông tin địa lý: ER-
4
Để hoạt động thành công, hệ thống GIS phải được đặt trong 1 khung tổ chức phù
hợp và có những hướng dẫn cần thiết để quản lý, thu thập, lưu trữ và phân tích số liệu,
đồng thời có khả năng phát triển được hệ thống GIS theo nhu cầu. Trong quá trình hoạt
động, mục đích chỉ có thể đạt được và tính hiệu quả của kỹ thuật GIS chỉ được minh
chứng khi công cụ này có thể hỗ trợ những người sử dụng thông tin để giúp họ thực
hiện được những mục tiêu công việc. Ngoài ra việc phối hợp giữa các cơ quan chức
năng có liên quan cũng phải được đặt ra, nhằm gia tăng hiệu quả sử dụng của GIS cũng
như các nguồn số liệu hiện có.
Như vậy, trong 5 hợp phần của GIS, hợp phần chính sách và quản lý đóng vai trò
rất quan trọng để đảm bảo khả năng hoạt động của hệ thống, đây là yếu tố quyết định sự
thành công của việc phát triển công nghệ GIS.
Trong phối hợp và vận hành các hợp phần của hệ thống GIS nhằm đưa vào hoạt
động có hiệu quả kỹ thuật GIS, 2 yếu tố huấn luyện và chính sách - quản lý là cơ sở của
thành công. Việc huấn luyện các phương pháp sử dụng hệ thống GIS sẽ cho phép kết
hợp các hợp phần: (1) Thiết bị (2) Phần mềm (3) con người và (4) Số liệu với nhau để
đưa vào vận hành. Tuy nhiên, yếu tố chính sách và quản lý sẽ có tác động đến toàn bộ
các hợp phần nói trên, đồng thời quyết định đến sự thành công của hoạt động GIS
1.3. Một số ứng dụng của hệ thống thông tin địa lý
Nhờ những khả năng phân tích và xử lý đa dạng, kỹ thuật GIS hiện nay được ứng
dụng phổ biến trong nhiều lĩnh vực, được xem là công cụ hỗ trợ quyết định (decision -
making support tool). Sau đây là một số lĩnh vực điển hình được ứng dụng kỹ thuật GIS
Nghiên cứu quản lý tài nguyên thiên nhiên và môi trường
* Quản trị rừng (theo dõi sự thay đổi, phân loại...),
* Quản trị đường di cư và đời sống động vật hoang dã,
* Quản lý và quy hoạch đồng bằng ngập lũ, lưu vực sông,
* Bảo tồn đất ướt,
* Phân tích các biến động khí hậu, thuỷ văn.
* Phân tích các tác động môi trường (EIA),
* Nghiên cứu tình trạng xói mòn đất,
6
* Xây dựng các đề xuất về sử dụng đất
* Khả năng bền vững của sản xuất nông nghiệp Nông - Lâm kết hợp
* Theo dõi mạng lưới khuyến nông
* Khảo sát nghiên cứu dịch - bệnh cây trồng (côn trùng và cỏ dại)
* Suy đoán hay nội suy các ứng dụng kỹ thuật
Quy hoạch thuỷ văn và tưới tiêu
* Xác định hệ thống tưới tiêu
* Lập thời biểu tưới nước
* Tính toán sự xói mòn/ bồi lắng trong hồ chứa nước
* Nghiên cứu đánh giá ngập lũ
Kinh tế nông nghiệp
* Điều tra dân số / nông hộ
* Thống kê
* Khảo sát kỹ thuật canh tác
* Xu thế thị trường của cây trồng
* Nguồn nông sản hàng hoá
Phân tích khí hậu
* Hạn hán
* Các yếu tố thời tiết
* Thống kê
Mô hình hoá nông nghiệp
* Ước lượng / tiên đoán năng suất cây trồng
Chăn nuôi gia súc / gia cầm
* Thống kê
* Phân bố
7
Chương 2. Hệ thống thông tin địa lý trên Web
GIS đã được ứng dụng từ vài thập niên trước đây, nhưng dường như GIS vẫn chưa
đến được với mọi người. Lý do là, trước nay các ứng dụng GIS hầu hết chạy trên máy
Internet. WebGIS có tiềm năng lớn trong việc làm cho thông tin địa lý trở nên hữu dụng
và sẵn sàng tới số lượng lớn người dùng trên toàn thế giới. Thách thức lớn của WebGIS
là việc tạo ra một hệ thống phần mềm không phụ thuộc vào nền tảng phần cứng và chạy
trên chuẩn giao thức mạng TCP/IP, có nghĩa là khả năng WebGIS được chạy trên bất kì
trình duyệt web của bất kì máy tính nào nối mạng Internet. Đối với vấn đề này, các phần
mềm GIS hải được thiết kế lại để trở thành ứng dụng WebGIS theo các kỹ thuật mạng
Internet.
2.2. Kiến trúc hệ thống thông tin địa lý trên Web
2.2.1. Kiến trúc chung
Dịch vụ web thông tin địa lý hay còn được gọi là WebGIS được xây dựng để cung
cấp các dịch vụ về thông tin địa lý theo công nghệ web service. Chính vì thế nên bất cứ
WebGIS nào cũng phải thỏa mãn kiến trúc ba tầng thông dụng của một ứng dụng web.
Sau đó tùy thuộc vào từng loại công nghệ và các cách thức phát triển, mở rộng khác
nhau mà WebGIS sẽ trở thành n tầng khác nhau. Kiến chung 3 tầng của WebGIS được
mô tả hình dưới bao gồm tầng trình bày, tầng giao dịch và tầng dữ liệu được trình bày
trong hình 2.1
Hình 2.1 Mô hình 3 lớp trong kiến trúc WebGIS
Tầng trình bày: Thông thường chỉ là các trình duyệt Internet Explorer, Mozilla
Firefox ... để mở các trang web theo URL được định sẵn. Các ứng dụng client có thể là
một website, Applet, Flash,… được viết bằng các công nghệ theo chuẩn của W3C. Các
Client đôi khi cũng là một ứng dụng desktop tương tự như phần mềm MapInfo,
ArcMap,…
Tầng giao dịch: thường được tích hợp trong một webserver nào đó, ví dụ như
Tomcat, Apache, Internet Information Server. Đó là một ứng dụng phía server nhiệm vụ
chính của nó thường là tiếp nhận các yêu cầu từ client , lấy dữ liệu từ cơ sở dữ liệu theo
yêu cầu client , trình bày dữ liệu theo cấu hình định sẵn hoặc theo yêu cầu của client và
trả kết quả về theo yêu cầu. Tùy theo yêu cầu của client mà kết quả về khác nhau : có
thể là một hình ảnh dạng bimap (jpeg, gif, png) hay dạng vector được mã hóa như SVG,
9
KML, GML,…Một khi dạng vector được trả về thì việc trình bày hình ảnh bản đồ được
tương ứng cần tìm.
5) Data server dữ liệu tiến hành truy vấn lấy ra dữ liệu cần thiết và trả dữ liệu này
về cho data exchange server
6) Data exchange server nhận dữ liệu từ nhiều nguồn data server khác nhau nằm
rải rác trên mạng. Sắp xếp dữ liệu lại theo logic của yêu cầu dữ liệu,sau đó gửi
trả dữ liệu về cho application server.
11
7) Application server nhận dữ liệu trả về từ các data exchange server và đưa
chúng đến các hàm cần sử dụng, xử lý chúng tại đây và kết quả được trả về
cho web server.
8) Web server nhận về kết quả xử lý, thêm vào các ngữ cảnh web (HTML,
PHP..) để có thể hiển thị được trên trình duyệt và cuối cùng gửi trả kết quả về
cho trình duyệt dưới dạng các trang web.
Hỉnh 2.3: Quá trình xử lý thông tin của WebGIS
2.2.2. Các hình thức triển khai
Trong mô hình hoạt động của WebGIS được chia ra 2 phần : các hoạt động ở phía
máy khách (client side) và các hoạt động xử lý ở phía máy chủ ( server side).
Client side
Client side được dùng để hiển thị kết quả đến cho người dùng, nhận các điều khiển
trực tiếp từ người dùng và tương tác với web server thông qua trình duyệt web. Các
trình duyệt web sử dụng chủ yếu HTML để định dạng trang web. Thêm vào đó một vài
plug-in, ActiveX và các mã Applet được nhúng vào trình duyệt để tăng tính tương tác
với người dùng.
Server side
12
Gồm có: Web server,Application server, Data server và Clearinghouse.. Server
side có nhiệm vụ lưu trữ dữ liệu không gian, xử lý tính toán và trả về kết quả (dưới dạng
hiển thị được) cho client side.
- Web server: Web server được dùng để phục vụ cho các ứng dụng web, web
server sử dụng nghi thức HTTP để giao tiếp với trình duyệt web ở phía client.
Hình 2.4: Kiến trúc hướng phục vụ
Trong WebGIS đôi khi thuật ngữ “map server” được dùng để chỉ ra rằng chiến
thuật áp dụng là server- side. Mà trong đó khi người dùng gửi yêu cầu cần “map”để hiển
thị, thì sẽ được “phục vụ” bởi server.
Chiến thuật server-side dựa trên khả năng trình duyêt web của người dùng có thể
gửi các yêu cầu đến các phần mềm GIS trên server thông qua Internet
Các chương trình được dùng để nhận và xử lý yêu cầu người dùng có thể được
viết bằng các ngôn ngữ như : Perl, Visual Basic, C++…Các chương trình này cũng có
thể mua từ các nhà sản xuất để tạo khả năng kết nối tốt hơn đến các hệ xử lý GIS đã tồn
tại.
Để có thể giao tiếp với các ứng dụng WebGIS đặt trên server, web server có thể sử
dụng các chuẩn giao tiếp phổ biến như CGI (Common Gateway Interface), Java, ISAPI
(Internet Server Application Programming Interface), and NSAPI (Netscape Server
Application Programming Interface)…
Các thuận lợi và khó khăn của kiến trúc này
o Thuận lợi
- Với server có cấu hình mạnh được sử dụng, người dùng có thể truy xuất
trên tập dữ liệu lớn hơn và phức tạp lớn. Thay vì phải xử lý trên máy client,
hầu hết không được cấu hình mạnh và việc truyền dữ liệu lớn qua mạng
Internet sẽ gây nhiều khó khăn.
- Cũng với server mạnh, việc phân tích, xử lý các chức năng GIS sẽ được
tiến hành nhanh và không đòi hỏi quá nhiều ở người dùng sự am hiểu.
- Kiểm soát được các thao tác của người dùng (chủ yếu là đơn giản) trên dữ
liệu và luôn đảm bảo người dùng nhận kết quả đúng từ dữ liệu (do phía
client không phải xử lý nhiều).
o Khó khăn
- Với chiến thuật này thì dù yêu cầu là nhỏ (client hoàn toàn xử lý được) hay
lớn, tất cả đều gửi về phía server, và server xử lý xong lại gửi trả về cho
client thông qua đường truyền trên mạng.
14
khi mà ứng dụng ít được dùng đến.
Giải pháp cho vấn đề này là cách triển khai sau đây:
- Chuyển các GIS applet đến máy tính client một cách cố định, và không phải
chuyển đến mỗi khi cần nữa
- Download và cài đặt cố dịnh các plug-in vào trình duyệt web của client
- Xây dựng một trình duyệt web có tích hợp sẵn phần mềm xử lý GIS để chạy
trên client.
- Tích hợp các link đến nguồn tài nguyên dữ liệu khác trên mạng trong mỗi gói
dữ liệu tải về.
- Server chỉ được gọi khi client khi cần dữ liệu mới,hoặc dữ liệu cho một ứng
dụng mới
- Người dùng được toàn quyền thao tác trên dữ liệu họ dùng và phân tích chúng.
Các thuận lợi và khó khăn của chiến thuật này
o Thuận lợi
- Tận dụng sức mạnh xử lý trên máy người dùng
- Người dùng được quyền điều khiển trong quá trình phân tích dữ liệu
- Khi server gửi dữ liệu cần thiết về, người dùng có thể làm việc với dữ liệu
này mà không phải gửi đi hay nhận về cái gì khác từ mạng.
o Khó khăn
- Các hồi đáp từ server có thể bao gồm lượng lớn dữ liệu cũng như các applet
(cho lần đầu tiên khi trình duyệt tại máy sử dụng chạy ứng dụng WebGIS)
có thể dẫn đến sự trì hoãn.
- Dữ liệu GIS thường lớn và phức tạp dẫn đến sẽ khó xử lý nếu client không
được cấu hình mạnh.
- Người dùng có thể chưa được huấn luyện đầy đủ để thực hiện các chức
năng phân tích dữ liệu một cách đúng đắn
- Không dành cho người dùng bình thường.
2.2.2.3. Kiến trúc kết hợp
Áp dụng thuần túy 2 chiến dịch trên đều có những hạn chế nhất định. Đối với
chiến thuật Server-side chất lượng đường truyền sẽ ảnh hưởng đến tốc độ và thời gian
không gian. Đặc trưng thông tin không gian là có khả năng mô tả “vật thể ở đâu” nhờ vị
trí tham chiếu, đơn vị đo và quan hệ không gian. Chúng còn khả năng mô tả “hình dạng
hiện tượng” thông qua mô tả chất lượng, số lượng của hình dạng và cấu trúc. Cuối cùng,
đặc trưng thông tin không gian mô tả “quan hệ và tương tác” giữa các hiện tượng tự
nhiên. Mô hình không gian đặc biệt quan trọng vì cách thức thông tin sẽ ảnh hưởng đến
khả năng thực hiện phân tích dữ liệu và khả năng hiển thị đồ hoạ của hệ thống.
Dữ liệu đồ họa này mô tả thế giới thực và được chia làm 2 loại : dữ liệu raster và
dữ liệu vectơ.
17
2.3.1.1. Dữ liệu vector
2.3.1.1.1. Các kiểu đối tượng trong dữ liệu vector
a. Đối tượng điểm
Điểm được xác định bởi cặp giá trị điểm. Các đối tượng đơn, thông tin về địa lý
chỉ gồm cơ sở vị trí sẽ được phản ánh là đối tượng điểm. Các đối tượng kiểu điểm có
đặc điểm:
- Là toạ độ đơn (x,y)
- Không cần thể hiện chiều dài và diện tích
Hình 2.6: Số liệu vector được biểu thị dưới dạng điểm (Point).
Tỷ lệ trên bản đồ tỷ lệ lớn, đối tượng thể hiện dưới dạng vùng. Tuy nhiên trên bản
đồ tỷ lệ nhỏ, đối tượng này có thể thể hiện dưới dạng một điểm. Vì vậy, các đối tượng
điểm và vùng có thể được dùng phản ánh lẫn nhau.
b. Đối tượng đường
Đường được xác định như một tập hợp dãy của các điểm. Mô tả các đối tượng địa
lý dạng tuyến, có các đặc điểm sau:
- Là một dãy các cặp toạ độ
- Một arc bắt đầu và kết thúc bởi node
- Các cung nối với nhau và cắt nhau tại điểm
- Hình dạng của cung được định nghĩa bởi các điểm điểm
- Độ dài chính xác bằng các cặp toạ độ
18