intTypePromotion=1

Luận văn:Nghiên cứu chuyển đổi phần mềm grass từ nền unix lên windows

Chia sẻ: Nguyen Bao Ngoc | Ngày: | Loại File: PDF | Số trang:158

0
106
lượt xem
23
download

Luận văn:Nghiên cứu chuyển đổi phần mềm grass từ nền unix lên windows

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

. GRASS là một phần mềm GIS có chức năng, sức mạnh bằng hoặc vượt các sản phẩm thương mại nhưng điều đặc biệt là một ứng dụng mã nguồn mở, tức người sử dụng có thể tự mình tòan quyền cài đặt, sữa chữa phù hợp với nhu cầu và đặc điểm riêng của mình mà không phải trả chi phí bản quyền phần mềm. Điều hạn chế hiện nay là GRASS chỉ được phát triển trên nền UNIX.

Chủ đề:
Lưu

Nội dung Text: Luận văn:Nghiên cứu chuyển đổi phần mềm grass từ nền unix lên windows

  1. Luận văn Nghiên cứu chuyển đổi phần mềm grass từ nền unix lên windows
  2. Lời Cảm Ơn Lời Cảm Ơn Luận văn của chúng em sẽ rất khó hoàn thành nếu không có sự truyền đạt kiến thức quí báu và sự hướng dẫn tận tình của Thầy Dương Anh Đức. Chúng em xin chân TN thành cám ơn sự chỉ bảo của các thầy. Chúng con xin gửi tất cả lòng biết ơn, sự kính trọng đến ông bà, cha mẹ, cùng H toàn thể gia đình, những người đã nuôi dạy, đã cho chúng con niềm tin và nghị lực để vượt qua mọi khó khăn. K Chúng em xin trân trọng cám ơn quý Thầy cô trong Khoa Công nghệ thông tin H trường Đại học Khoa học Tự nhiên Tp.Hồ Chí Minh đã tận tình giảng dạy, truyền đạt những kiến thức quý báu và tạo điều kiện cho chúng em được thực hiện luận văn này. Đ Xin chân thành cám ơn sự giúp đỡ, động viên và chỉ bảo rất nhiệt tình của các – anh chị đi trước và tất cả bạn bè. Các anh chị, các bạn luôn có mặt trong những thời TT điểm khó khăn nhất, tiếp thêm động lực và ý chí, giúp chúng tôi hoàn thành được luận văn. N Mặc dù đã cố gắng nỗ lực hết sức mình, song chắc chắn luận văn không khỏi còn nhiều thiếu sót. Chúng em rất mong nhận được sự thông cảm và chỉ bảo tận tình C của quý Thầy cô và các bạn. A O Tp.HCM, 7/2004 H Nhóm sinh viên thực hiện K Nguyễn Quý Minh – Phạm Anh Vũ Trang 1
  3. Lời nói đầu Lời Nói Đầu Ngày nay, trong tất cả các lãnh vực của đời sống kinh tế, xã hội, công nghệ thông tin được xem là một trong những ngành công nghệ mũi nhọn, đóng vai trò hết sức quan trọng, có thể tạo ra những bước đột phá mạnh mẽ. TN Các ứng dụng GIS ngày càng phát huy vai trò quan trọng trong việc hỗ trợ quản lý, qui hoạch đặc biệt là đối với các tổ chức, chính phủ. Vấn đề qui hoạch ở Việt Nam, H cũng như ở nhiều quốc gia khác, đang gặp rất nhiều khó khăn, tốn nhiều thời gian và tiền bạc, nhất là đối với các thành phố lớn, trọng điểm như TP Hồ Chí Minh, Hà Nội, K Hải Phòng ... Giải pháp cần thiết là một ứng dụng GIS hỗ trợ. Việc bắt tay xây dựng từ H đầu một ứng dụng GIS cần rất nhiều thời gian, tiền bạc và công sức nhưng chưa chắc thành công. Trên thị trường cũng có những ứng dụng GIS thương mại, cho phép xây Đ dựng ứng dụng trên nền thư viện cung cấp sẵn như ArcView GIS, ArcGIS .. , tuy nhiên – sẽ phải đối mặt với vấn đề bản quyền, tốn rất nhiều tiền bạc khi triển khai trên diện rộng. TT GRASS là một phần mềm GIS có chức năng, sức mạnh bằng hoặc vượt các sản phẩm thương mại nhưng điều đặc biệt là một ứng dụng mã nguồn mở, tức người sử N dụng có thể tự mình tòan quyền cài đặt, sữa chữa phù hợp với nhu cầu và đặc điểm C riêng của mình mà không phải trả chi phí bản quyền phần mềm. Điều hạn chế hiện nay là GRASS chỉ được phát triển trên nền UNIX. Nếu có thể chuyển đổi GRASS sang A Windows, ta có thể xây dựng được nhiều ứng dụng GIS với chi phí rẻ, phù hợp để phổ O biến trên diện rộng do Windows là hệ điều hành dễ sử dụng, thân thiện và có số lượng người dùng nhiều nhất hiện nay. H Với ý tưởng trên, chúng em đã tập trung thực hiện đề tài “NGHIÊN CỨU K CHUYỂN ĐỔI PHẦN MỀM GRASS TỪ NỀN UNIX LÊN WINDOWS”. Trang 2
  4. Lời nói đầu Nội dung của luận văn được chia làm 5 chương: Chương 0: Mở đầu giới thiệu chung về đề tài, ý nghĩa và các mục tiêu của đề tài; trình bày các giải pháp và hướng nghiên cứu đã được thực hiện trong và ngoài nước. Chương 1: .OpenGIS – Khái niệm chung và Các mô hình dữ liệu, giới thiệu TN chung về các khái niệm GIS, OpenGIS, các mô hình dữ liệu trên GIS. Chương 2: Hệ Thống Hỗ trợ Phân tích Tài nguyên Địa lý, trình bày về phần H mềm mã nguồn mở GRASS, cách thức cài đặt và khởi tạo, cách thức sử dụng và lập trình trên GRASS. K Chương 3: Quá trình chuyển đổi GRASS từ Unix lên môi trường Window, H các kỹ thuật cài đặt trong GRASS, mô hình và cấu trúc chi tiết của GRASS, các bộ thư viện trung tâm. Đ Chương 4: Tổng kết tóm tắt lại các vấn đề đã được đặt ra trong luận văn, cách – giải quyết, kết quả đạt được và đề ra một số hướng phát triển trong tương lai. TT N C A O H K Trang 3
  5. Mục lục Mục Lục Lời Cảm Ơn ................................................................................................................................ 1 Lời Nói Đầu ................................................................................................................................ 2 Mục Lục ...................................................................................................................................... 4 Danh sách các hình vẽ ................................................................................................................ 6 TN Chương 0 : Mở Đầu .................................................................................................................... 7 Chương 1 : OpenGIS – Khái niệm chung và Các mô hình dữ liệu .......................................... 8 1.1 Giới thiệu về GIS .............................................................................................................. 8 1.1.1 Định nghĩa GIS .......................................................................................................... 8 H 1.1.2 Các thành phần của GIS........................................................................................... 10 1.1.3 Các mô hình dữ liệu của GIS .................................................................................. 11 K 1.1.4 Vấn Đề Dữ Liệu Đối Với GIS ................................................................................. 12 1.2 Khái Quát Về OpenGIS .................................................................................................. 14 1.2.1 Tổ chức OGC ........................................................................................................... 14 H 1.2.2 Định nghĩa OpenGIS ............................................................................................... 16 Chương 2 : Hệ Thống Hỗ trợ Phân tích Tài nguyên Địa lý ..................................................... 17 Đ 2.1 Sơ lược về GRASS ......................................................................................................... 17 2.2 Kiến trúc GRASS............................................................................................................ 19 2.3 Định dạng dữ liệu .......................................................................................................... 20 – 2.4 Tổ chức lưu trữ dữ liệu của GRASS ............................................................................... 23 2.4.1 GISDBASE : ............................................................................................................ 23 TT 2.4.2 LOCATION : ........................................................................................................... 23 2.4.3 MAPSETS ............................................................................................................... 24 2.4.4 REGION và MASK ................................................................................................ 29 2.4.5 Các biến môi trường sử dụng trong GRASS ........................................................... 31 N 2.5 Dữ liệu RASTER ............................................................................................................ 32 2.5.1 Ý niệm sơ lược ......................................................................................................... 32 C 2.5.2 Hệ thống tập tin raster ............................................................................................. 34 2.5.3 Các thao tác quan trọng ........................................................................................... 34 2.6 Dữ liệu VECTOR (VECTOR DATA)............................................................................ 35 A 2.6.1 Ý niệm sơ lược ......................................................................................................... 35 2.6.2 Hệ thống tập tin vector............................................................................................ 36 O 2.6.3 Các thao tác quan trọng ........................................................................................... 37 2.7 Dữ liệu điểm (POINT/SITE DATA) .............................................................................. 38 H 2.7.1 Ý niệm sơ lược ......................................................................................................... 38 2.7.2 Hệ thống tập tin site ................................................................................................ 39 K 2.7.3 Các thao tác quan trọng ........................................................................................... 40 2.8 Các thư viện được cung cấp bởi GRASS (src/libes)....................................................... 41 2.8.1 Danh sách ................................................................................................................. 41 2.8.2 Giới thiệu sơ bộ hàm và thư viện ............................................................................. 43 2.9 Cơ chế bổ sung và quản lý mã nguồn của GRASS......................................................... 95 Trang 4
  6. Mục lục 2.9.1 Mã nguồn chính thức (thư mục src) ......................................................................... 96 2.9.2 Mã nguồn ALPHA (thư mục src.alpha)................................................................... 96 2.9.3 Mã nguồn đóng góp (thư mục src.contrib) .............................................................. 96 2.9.4 Mã nguồn có liên quan (thư mục src.related) .......................................................... 97 2.9.5 Mã nguồn GARDEN (src.garden) ........................................................................... 97 2.9.6 Các script (src/script/shell) ...................................................................................... 97 2.10 Hướng dẫn cài đặt và sơ lược cách sử dụng ................................................................. 97 2.10.1 Cài đặt GRASS trên LINUX ................................................................................. 97 TN 2.10.2 Cài đặt GRASS trên Windows thông qua giả lập Cygwin .................................... 99 Chương 3 : Quá trình chuyển đổi GRASS5 từ Linux lên Windows..................................... 101 3.1 Sự khác biệt giữa Windows và Unix/Linux .................................................................. 101 3.1.1 Tổng quan về hệ điều hành Windows .................................................................... 101 H 3.1.2 Tổng quan về hệ điều hành UNIX ......................................................................... 103 3.1.3 So sánh tổng quát về lập trình đa nhiệm trên hai môi trường ................................ 105 K 3.1.4 So sánh về hệ thống file của hai môi trường ......................................................... 109 3.1.5 Giao diện người dùng ............................................................................................ 112 3.1.6 Shell và script......................................................................................................... 113 H 3.2 Sơ lược về phần mềm GRASS ..................................................................................... 113 3.3 Sơ lược về mã nguồn của GRASS 5.0.2 ....................................................................... 114 Đ 3.4 Môi trường sử dụng để chuyển đổi GRASS5 ............................................................... 115 3.5 Các vấn đề chính khi chuyển đổi lên Windows ........................................................... 116 3.5.1 Khởi tạo các biến môi trường cần thiết................................................................. 116 – 3.5.2 Dữ Liệu GRASS và Cấu trúc của dữ liệu GRASS ............................................... 119 3.5.3 Cấu trúc chung của source code GRASS.............................................................. 121 TT 3.5.3.1 Cài đặt bộ thư viện trung tâm ............................................................................. 122 3.5.3.2 Cài đặt các nhóm lệnh xử lý của Grass ............................................................... 124 3.5.3.3 Các Driver dùng để hiển thị của Display ............................................................ 129 N 3.5.3.4 Cơ chế SendMessage trong GRASS5 ................................................................ 132 3.5.3.5 Khái niệm hệ thống đồ họa XWindow trong Linux .......................................... 143 C 3.5.3.6 Cài đặt và sử dụng các hàm X (Xlib) trên Window32....................................... 147 Chương 4 : Tổng Kết .............................................................................................................. 152 4.1 Kết Luận ....................................................................................................................... 152 A 4.2 Hướng Phát Triển ......................................................................................................... 152 Tài Liệu Tham Khảo ............................................................................................................... 153 O Phụ Lục ................................................................................................................................... 154 H K Trang 5
  7. Danh sách các hình vẽ Danh sách các hình vẽ Hình 1 - 1 Minh họa về GIS ..................................................................................... 11 Hình 2 - 1 Mô hình kiến trúc GRASS ...................................................................... 20 Hình 2 - 2 Minh họa cấu trúc lưu trữ của GISDBASE trên đĩa ................................ 23 Hình 2 - 3 Minh họa cấu trúc lưu trữ của LOCATION trên đĩa ............................... 24 TN Hình 2 - 4 Minh họa cấu trúc lưu trữ của MAPSET trên đĩa.................................... 25 Hình 2 - 5 Minh họa cơ chế MASK của GRASS ..................................................... 31 Hình 2 - 6 Minh họa dữ liệu điểm – POINT/SITE ................................................... 39 Hình 2 - 7 Hình ảnh sử dụng GRASS5 trên Linux ................................................... 99 H Hình 2 - 8 Hình ảnh sử dụng GRASS5 trên Windows thông qua giả lập Cygwin . 100 Hình 3 - 1 Kiến trúc của hệ điều hành Windows theo họ NT................................ 103 K Hình 3 - 2 Các dòng hệ điều hành phát triển trên nền UNIX ................................ 104 Hình 3 - 3 Kiến trúc của hệ điều hành UNIX ........................................................ 105 Hình 3 - 4 Mô hình minh họa cơ chế Send Event trong GRASS5 ........................ 138 H Hình 3 - 5 Kiến trúc thư viện XLIB....................................................................... 151 Đ – TT N C A O H K Trang 6
  8. Chương 0: Mở đầu Chương 0 : Mở Đầu Các ứng dụng GIS ngày càng phát huy vai trò quan trọng trong việc hỗ trợ quản lý, qui hoạch đặc biệt là đối với các tổ chức, chính phủ. Vấn đề qui hoạch ở Việt Nam, cũng như ở nhiều quốc gia khác, đang gặp rất nhiều khó khăn, tốn nhiều thời gian và TN tiền bạc, nhất là đối với các thành phố lớn, trọng điểm như TP Hồ Chí Minh, Hà Nội, Hải Phòng ... Giải pháp cần thiết là một ứng dụng GIS hỗ trợ. Từ nhu cầu nói trên, chúng em đã đầu tư xây dựng đề tài “NGHIÊN CỨU CHUYỂN ĐỔI PHẦN MỀM H GRASS TỪ NỀN UNIX LÊN WINDOWS”. K Đề tài phải giải quyết một số công việc chính: • Nghiên cứu GIS và chuẩn OpenGIS. H • Nghiên cứu sự khác nhau giữa hệ điều hành Unix và Windows. Đ • Dựa vào những hiểu biết này, xem xét việc xây dựng một ứng dụng GIS trên nền phần mềm mã nguồn mở GRASS. – • Triển khai việc chuyển đổi GRASS từ môi trường Unix sang môi trường TT Windows. N C A O H K Trang 7
  9. Chương 1: OpenGis – Các khái niệm Chương 1 : OpenGIS – Khái niệm chung và Các mô hình dữ liệu Chương này trình bày khái quát về GIS và những vấn đề tồn tại liên quan đến trao đổi TN dữ liệu GIS trong môi trường mạng dẫn đến nhu cầu xuất hiện OpenGIS. Các khái niệm và chủ đề liên quan đến OpenGIS, vai trò của tổ chức OGC (Open GIS H Consortium), mô hình tham chiếu ORM (OpenGIS Refrerence Model), và các bộ đặc K tả về OpenGIS được đề xuất bởi OGC là những phần chính được đề cập đến trong chương này. H 1.1 Giới thiệu về GIS Đ 1.1.1 Định nghĩa GIS Hệ thống thông tin địa lý, gọi tắt là GIS (Geographic Information System) ra đời từ đầu – thập niên 60. Tuy nhiên mãi đến thập niên 80, GIS mới thực sự được phát triển nhanh TT chóng. Cho đến nay, tuỳ theo cách tiếp cận mà người ta có nhiều định nghĩa khác nhau về GIS. Những định nghĩa này bổ sung cho nhau giúp ta hiểu đầy đủ hơn các khía cạnh của GIS. Sau đây là một số định nghĩa của GIS được trích theo Peter & Rachael N (1998): C • GIS là một tập các công cụ mạnh dùng cho việc thu nhập, lưu trữ cũng như A truy tìm, biến đổi và hiển thị các dữ liệu không gian từ thế giới thực (Burrough, O 1986) H • GIS là một hệ thống dùng cho việc nắm bắt, kiểm tra, thao tác, phân tích và hiển thị các dữ liệu qui chiếu không gian liên quan đến Trái đất (Department of K Environment, 1987) • GIS là công nghệ thông tin cho phép lưu trữ, phân tích, và hiển thị cả dữ liệu Trang 8
  10. Chương 1: OpenGis – Các khái niệm không gian lẫn dữ liệu phi không gian (Parker, 1988) • GIS là hệ thống cơ sở dữ liệu trong đó phần lớn dữ liệu biểu thị không gian, và tập các thủ tục thao tác trên những dữ liệu này nhằm trả lời những truy vấn về các thực thể không gian chứa trong cơ sở dữ liệu (Smith et al,. 1987) TN • GIS là tập các thủ tục thủ công hoặc dựa trên máy tính được dùng để lưu trữ và thao tác các dữ liệu tham chiếu địa lý (Aronoff, 1989) H • GIS là tập các chức năng được thực hiện một cách tự động nhằm cung cấp những năng lực cấp cao đối với sự lưu trữ, truy tìm, thao tá và hiển thị các dữ K liệu vị trí địa lý (Ozemoy, Smith, & Sicherman, 1981) H • GIS là một thực thể tổ chức, phản ánh cấu trúc tổ chức cho phép tích hợp công nghệ với cơ sở dữ liệu và các chuyên gia, và tổ chức này liên tục hỗ trợ tài Đ chính (Carter, 1989) – • GIS là hệ thống hỗ trợ quyết định liên quan đến sự tích hợp dữ liệu quy chiếu TT không gian trong một môi trường giải quyết vấn đề (Cowen, 1988) • Thông qua các định nghĩa trên, ta thấy được ba khía cạnh quan trọng của một N hệ thống GIS bao gồm: C • Tập các công cụ hoặc thủ tục cho phép thực hiện các chức năng lưu trữ, truy tìm, biến đổi, phân tích và hiển thị dữ liệu không gian địa lý. A • Cơ sở dữ liệu là thành phần quan trọng chức các dữ liệu không gian kết hợp dữ O liệu phi không gian. H • Tổ chức nhằm phối hợp kỹ thuật và con người để có thể duy trì và phát triển hệ K thống nhằm đưa ra những quyết định hợp lý. Trang 9
  11. Chương 1: OpenGis – Các khái niệm 1.1.2 Các thành phần của GIS Có nhiều mô hình GIS tuỳ theo nhu cầu của người dùng. Mô hình đầy đủ của GIS bao gồm sáu thành phần: phần cứng, phần mềm, dữ liệu, qui trình, con người và tổ chức. Những thành phần này cần phải kết hợp cân đối nhau để hệ thống làm việc hiệu quả. • Phần cứng GIS bao gồm hệ thống máy tính hoặc mạng máy tính cho phép TN nhập, xuất, lưu trữ, truyền và hiển thị dữ liệu không gian. • Phần mềm GIS bao gồm những công cụ thực hiện năm chức năng chính là H nhập và kiểm tra dữ liệu, lưu trữ quản lý dữ liệu, xuất và thể hiện dữ liệu, biến K đổi phân tích dữ liệu, và giao tiếp với người sử dụng. • Dữ liệu GIS bao gồm dữ liệu không gian và dữ liệu phi không gian với dung H lượng rất lớn, cần được thu nhập và lưu trữ theo một cấu trúc chuẩn để thuận Đ tiện cho việc trao đổi và bảo quản. – • Các qui trình xử lý được xác lập trong quá trình phân tích và thiết kế hệ thống GIS cho một tổ chức với các mục tiêu cụ thể. Khả năng xây dựng và triển khai TT các qui trình ảnh hưởng đến tính hữu hiệu của hệ thống GIS. • Con người là yếu tố quyết định sự thành công của hệ thống GIS. Con người N bao gồm các kỹ thuật viên, chuyên viên công nghệ thông tin, nhà quản trị hệ C thống và người sử dụng các kết quả của GIS để ra quyết định. A • Tất cả những thành phần trên cần được đặt trong một tổ chức thích hợp, có các O cơ chế, chính sách và qui trình hợp lý. H K Trang 10
  12. Chương 1: OpenGis – Các khái niệm TN H K H Đ – TT Hình 1 - 1 Minh họa về GIS 1.1.3 Các mô hình dữ liệu của GIS N Trong GIS, các thực thể trong thế giới thực có thể được biểu diễn bằng những mô hình C dữ liệu khác nhau nhằm mô tả các thuộc tính, vị trí, thời gian và quan hệ không gian giữa chúng. Các thực thể khi được biểu diễn trong mô hình dữ liệu thường được gọi là A các đối tượng. Để biểu diễn vị trí và quan hệ của các đối tượng trong không gian địa lý, O người ta dùng mô hình vector hoặc mô hình raster. Mô hình phân cấp, mô hình mạng H hoặc mô hình quan hệ thì được dùng để biểu diễn các thuộc tính của các đối tượng. Trong cơ sở dữ liệu địa lý, các thuộc tính sẽ được liên kết với các đối tượng tương ứng K trong mô hình vector hoặc raster. Mỗi một mô hình đều có ưu điểm và nhược điểm riêng, và có thể có nhiều cấu trúc dữ liệu, mỗi cấu trúc dữ liệu có thể được lưu trữ bằng nhiều định dạng khác nhau. Trang 11
  13. Chương 1: OpenGis – Các khái niệm Mô hình vector Trong mô hình vector, mỗi đặc trưng địa lý trên mặt đất được xác định bằng những điểm, đường và vùng trong mặt phẳng toạ độ Descartes. Mỗi điểm được xác định bởi cặp toạ độ (x,y), mỗi đường được tuyến tính hoá thành nhiều đoạn biểu diễn bằng một chuỗi những cặp toạ độ (xi, yi), mỗi vùng được xác định bởi một đường khép kính và TN được biểu diễn bằng một chuỗi các cặp tọa độ (xi, yi) có các tọa độ điểm đầu và điểm cuối trùng nhau. H Mô hình raster K Trong mô hình raster, không gian được chia thành những phần tử nhỏ còn được gọi là tế bào. Mỗi tế bào được xem như đồng nhất, cùng một thuộc tính và được biểu diễn H như một điểm. Kích thước của mỗi tế bào được đặc trưng bởi độ phân giải.Có thể hình dung dữ liệu raster như là một tấm lưới phủ lên một địa thế nào đó trong thế giới thực, Đ và mỗi ô trong lưới có một mã số đặc trưng cho một ý nghĩa nào đó của vùng nằm bên – trong ô đó. TT Một đặc điểm của cấu trúc raster là một lưới raster như vậy chỉ biểu diễn được một thuộc tính àno đó của đối tượng thôi, vì mỗi tế bào trong lưới chỉ được gán bởi duy nhất một giá trị thuộc tính. Do vậy, người ta thường tạo nhiều lớp lưới raster khác nhau N để biểu diễn nhiều thuộc tính cho cùng một đối tượng, mỗi lớp cho mỗi thuộc tính. C A 1.1.4 Vấn Đề Dữ Liệu Đối Với GIS Hiện nay trên thị trường có rất nhiều sản phẩm phần mềm GIS. Một số phần mềm GIS O được xây dựng trên mô hình dữ liệu vector (mô hình thông dụng), một số khác xây H dựng trên mô hình raster, và một số khác nữa xây dựng trên cả hai mô hình. Với mỗi K mô hình được chọn, các hãng sản xuất phần mềm GIS lại có những biễu diễn vật lý riêng của mình ở thiết kế bên trong nhằm tối ưu hóa việc lưu trữ, xử lý cũng như hiển Trang 12
  14. Chương 1: OpenGis – Các khái niệm thị dữ liệu. Bên cạnh đó, các tổ chức cũng đưa ra những dạng thức riêng của họ để thuận tiện cho việc ghi nhận và trao đổi dữ liệu địa lý của tổ chức. Để lưu trữ dữ liệu không gian địa lý theo kiểu vector, phần mềm GIS ArcInfo dùng dạng thức tập tin .shp, AutoCAD dùng .dwg, Autodesk Map dùng .dxf, MapInfo dùng .mif, MicroStation dùng .dng, … Còn tổ chức US Geological Survey dùng dạng thức TN DLG (Digital Line Graph), Chính phủ US dùng SDTS (Spatial Data Transfer System), tổ chức US Census Bureau dùng TIGER (Topologically Integrated Geographic H Encoding and Referencing Files), … (có thể tham khảo thêm tại Đặng Văn Đức, 2001, K trang 202-204). Tương tự với kiểu raster, nhiều dạng thức tập tin khác nhau cũng được sử dụng cho H việc lưu trữ dữ liệu, đặc biệt là những dữ liệu bản đồ được số hóa từ các thiết bị chuyên Đ dụng hoặc từ các ảnh chụp viễn thám. Chẳng hạn, các dạng thức PCX (PC PaintBrush Exchange), TIFF (Tagged Image File Format) thường được dùng cho các ảnh raster tạo – được từ máy quét hoặc các chương trình vẽ PC, dạng thức ADRG (Arc Digitized TT Raster Graphics) được dùng bởi Quân đội US lưu các ảnh raster của bản đồ giấy, dạng thức BIL (Band Interleaved by Line) và BIP (Band Interleaved by Pixel) được dùng cho các hệ thống viễn thám. N C Về việc liên kết dữ liệu không gian địa lý với dữ liệu thuộc tính (còn gọi là dữ liệu phi không gian) trong hệ GIS cũng có nhiều mô hình khác nhau. Chẳng hạn, MapInfo lưu A dữ liệu không gian vào tập tin dạng .mif, dữ liệu thuộc tính vào tập tin dạng .mid, và cả O hai tập tin này đều thuộc về MapInfo. Kiểu lưu trữ này của MapInfo được xem là kiến trúc tích hợp của hệ GIS (Đặng Văn Đức, 2001, trang 202). Còn ArcInfo lưu dữ liệu H không gian vào tập tin dạng .dhp, và dùng tập tin dang .dbf vay mượn từ cơ sở dữ liệu K quan hệ thương mại để lưu dữ liệu thuộc tính. Đây được xem là kiến trúc đối ngẫu của hệ GIS (Đặng Văn Đức, 2001, trang 199). Ngoài ra, một mẫu kiến trúc tích hợp khác của hệ GIS nữa là một số cơ sở dữ liệu quan hệ thương mại truyền thống nay được mở Trang 13
  15. Chương 1: OpenGis – Các khái niệm rộng thêm để có thể hỗ trợ việc lưu trữ và xử lý dữ liệu không gian địa lý. Ví dụ cơ sở dữ liệu Oracle nay có thêm phần Oracle Locator và Oracle Spatial. Sự đa dạng về mô hình và cấu trúc dữ liệu dùng trong GIS một mặt cho thấy được sự sáng tạo của con người nhằm đáp ứng nhu cầu sử dụng và phát triển các ứng dụng GIS, nhưng mặt khác cũng kéo theo những khó khăn nhất định trong việc truyền thông, trao TN đổi cũng như tích hợp dữ liệu GIS. Để giải quyết vấn đề trao đổi dữ liệu GIS, một cách truyền thống người ta thường xây H dựng thêm các thành phần phần mềm làm nhiệm vụ chuyển đổi giữa các dạng thức dữ K liệu, thường được gọi là các bộ chuyển đổi (converter). Các bộ chuyển đổi này hoặc được tích hợp trực tiếp vào các phần mềm GIS thương mại và thể hiện ở các chức năng H import/export, hoặc được cung cấp bởi một bên “thứ ba” trung gian nào đó. Đ Ngày này với sự phát triển của mạng máy tính nói chung và mạng Internet nói riêng, các nhu cầu thừa kế, trao đổi, tích hợp và khai thác dữ liệu GIS từ nhiều nguồn khác – nhau giữa các tổ chức, cộng đồng và quốc gia trong môi trường mạng ngày càng gia TT tăng và có ý nghĩa. Việc thi hành các tác vụ chuyển đổi dữ liệu theo kiểu truyền thống không được xem là hiệu quả và thuận tiện cho lắm đối với người sử dụng. Người ta cần N tìm ra giải pháp mang tính hệ thống và chuẩn mực hơn nhằm đêm lại sự thuận lợi lâu C dài và bền vững cho những người khai thác GIS. A 1.2 Khái Quát Về OpenGIS O 1.2.1 Tổ chức OGC H Tổ chức Liên hiệp OpenGIS, gọi tắt là OGC (Open GIS Consortium), là một tổ chức phi lợi nhuận và mang tính quốc tế, được thành lập vào nằm 1994 nhằm giải quyết các K vấn đề liên quan đến sự trao đổi chia sẽ các dữ liệu không gian địa lý và khả năng làm việc phối hợp giữa các phần mềm GIS. Các hoạt động của OGC tạo ra những ảnh hưởng có ý nghĩa đến cộng đồng GIS và việc thiết kế các hệ thống GIS trong tương lai. Trang 14
  16. Chương 1: OpenGis – Các khái niệm Nhận xét về vấn đề dữ liệu đối với GIS, OGC cho rằng: “Hiện trên Web và trong các kho lưu trữ độc lập có nhiều dữ liệu không gian địa lý, nhưng chúng quá phức tạp, không đồng nhất và không tương thích nhau. Người dùng cần phải có kiến thức chuyên môn và các phần mềm GIS chuyên biệt để bao phủ hoặc kết hợp các lớp bản đồ khác nhau của cùng một vùng địa lý. Việc chuyển đổi dữ liệu TN thường nặng nề và mất nhiều thời gian, nhưng kết quả lại không được như ý. Chỉ có giao tiếp chung là cách cho phép sự bao phủ và kết hợp các loại thông tin địa lý phức H tạp khác nhau xảy ra một cách tự động trên Internet, bất chấp những khác biệt nằm K phía dước các hệ thống phần mềm GIS. OGC cung cấp cấu trúc hình thức để đạt được sự thống nhất về các giao tiếp chung này.” (David Blasby) H Trên cơ sở nhận định này, mục tiêu bao trùm và dài hạn của OGC là: Đ “The full integration of geospatial data and geoprocessing resources into mainstream computing and the widespread use of interoperable geoprocessing software and – geodata products throughtout the information infrastructure.” (Open GIS Consortium TT Inc., 1999, Topic 0) Tạm dịch: N “Tích hợp hoàn chỉnh các dữ liệu không gian địa lý và các cách xử lý thông tin địa lý C vào một luồng tính toán chính, và sử dụng phổ biến các sản phẩm dữ liệu địa lý và phần mềm xử lý thông tin địa lý trong suốt cơ sở hạ tầng về thông tin.” (Open GIS A Consortium., 1999, Topic 0) O Theo ESRI (2003), việc tích hợp vào luồng tính toán chính mang ý nghĩa mở rộng H phạm vi trao đổi ứng dụng GIS ở mức tổ chức lớn hơn, chia sẽ dữ liệu không gian địa K lý không chỉ giữa các công nghệ GIS mà còn với các ứng dụng không phải GIS trên những nền tảng khác nhau, và khả năng làm việc phối hợp giữa các chuẩn GIS với các chuẩn IT công nghiệp. Trang 15
  17. Chương 1: OpenGis – Các khái niệm Công việc của OGC là xây dựng và công bố các đặc tả mang tính mở cho các giao tiếp, lược đồ và kiến trúc nhằm thúc đẩy khả năng tương thích giữa các kho dữ liệu không gian địa lý, các ứng dụng và dịch vụ GIS không đồng nhất. 1.2.2 Định nghĩa OpenGIS TN Các đặc tả mở được tạo bởi OGC được gọi là các đặc tả OpenGIS (Open GIS Specifications). Vậy Open GIS là gì? H OpenGIS được định nghĩa là: K “Open and interoperable geoprocessing” or “The ability to share heterogeneous geodata and geoprocessing resources transparently in a networked environment.” H (David, 2000) Đ Tạm dịch: – “Việc xử lý dữ liệu địa lý phải có tính mở và có khả năng làm việc liên thông” hoặc “Khả năng chia sẻ một cách trong suốt các dữ liệu địa lý không đồng nhất và các tài TT nguyên xử lý về mặt địa lý trong môi trường mạng.” (Dương Anh Đức) Hai khái niệm “mở” (open) và “khả năng làm việc liên thông” (interoperability) là hai N khái niệm trung tâmcủa OpenGIS. C • Mở được hiểu là nhiều thành phần tham gia soạn thảo các đặc tả, và các kết A quả đặc tả được tự do tham khảo và sử dụng. O • Khả năng làm việc liên thông là khả năng tương thích của các ứng dụng nhằm khắc phục những trở ngại do sự không dồng nhất các môi trường xử lý cũng H như sự không đồng nhất về dữ liệu. K Tóm lại, có thể nói rằng các đặc tả OpenGIS được xây dựng nhằm giúp cho việc truy cập các dữ liệu không gian địa lý và các dịch vụ xử lý dữ liệu trở nên trong suốt trong môi trường làm việc mạng. Trang 16
  18. Chương 2: Hệ thống hỗ trợ phân tích tài nguyên địa lý Chương 2 : Hệ Thống Hỗ trợ Phân tích Tài nguyên Địa lý Chương 2 giới thiệu về phần mềm GRASS (The Geogaphic ResourcesAnalysis Support System), là một hệ thống hỗ trợ phân tích tài nguyên địa lý. Đề cập một cách TN khái quát về khía cạnh sử dụng cũng như trong lãnh vực lập trình . 2.1 Sơ lược về GRASS H Là một hệ thống thông tin địa lý (GIS – Geographic information system), phát triển K theo chuẩn của OpenGIS, nguyên gốc được thiết kế và phát triển bởi những nhà nghiên cứu tại Phòng Thí nghiệm Xây dựng của quân đội Mỹ (US Army Construction H Engineering Research Laboratory - USACERL) và ngày nay, nó được hỗ trợ bởi nhóm Đ phát triển GRASS có tổng hành dinh tại ITC-irst, Trento Italy) và Đại học Baylor, Waco (Mỹ). – GRASS là một phần mềm mã nguồn mở (GNU – General Public Licence), được phát TT hành lần đầu năm 1985. Phát triển trong hơn 20 năm qua, kích thước GRASS vào khoảng 100 MB và là một bộ thư viện lớn để phục vụ việc xây dựng các ứng dụng N GIS. GRASS được viết bằng ngôn ngữ C (khoảng 1,5 triệu dòng mã lệnh) và có thể được biên dịch trên các hệ điều hành phát triển trên nền Unix như SUN Solaris, C SunOS, HP, SCO, Linux, DEC Alpha v.v.. và có thể chạy trên Windows thông qua môi A trường giả lập Cygwin (chương trình giả lập LINUX/UNIX trên nền Windows) O GRASS có khả năng lưu trữ, phân tích và hiển thị một cách sinh động dữ liệu không gian đã được số hoá. Hiện tại, phiên bản GRASS đã ra đến 5.x và là một trong mười H phần mềm mã nguồn mở có qui mô lớn nhất hiện nay . Đã có nhiều tổ chức, chính phủ, K trường học và công ty sử dụng thư viện GRASS để phát triển những ứng dụng chuyên biệt cho riêng mình. Trang 17
  19. Chương 2: Hệ thống hỗ trợ phân tích tài nguyên địa lý Những đối tượng GRASS hướng đến là các nhà qui hoạch, sinh thái học, địa chất học, địa lý học và những kỹ sư trắc địa vẽ bản đồ, tuy nhiên người sẽ trực tiếp sử dụng GRASS lại là các lập trình viên. Hầu hết các đối tượng GRASS hướng đến đều có trình độ tin học hạn chế, họ tự mình không thể xây dựng một chương trình tin học phức tạp liên quan đến GIS để phục vụ công việc của bản thân, tuy rằng công việc chuyên TN môn rất cần sự hỗ trợ của những phần mềm tin học như vậy. GRASS cung cấp một bộ thư viện để xây dựng ứng dụng GIS tương đối đầy đủ gọi là GISLIB (khoảng trên 800 H hàm), và bản thân GRASS cũng dựa trên bộ thư viện này để phát triển một số chức năng cơ bản về GIS. Việc xây dựng một hệ GIS thật sự rất phức tạp nếu bắt tay từ đầu, K và vì thế, nhờ sự hỗ trợ của bộ thư viện này lập trình viên sẽ có thể nhanh chóng xây H dựng được các ứng dụng GIS hỗ trợ cho các đối tượng người dùng trên một cách dễ dàng và nhanh chóng. Đ GRASS được thiết kế và phát triển cho nhiều mức độ sử dụng khác nhau, ở thời điểm – hiện tại có thể phân chia như sau : TT • Mức chuyên biệt hoá : cho những người dùng mới học cách sử dụng, trình độ tin học không cao. GRASS hiện tại hỗ trợ giao tiếp người dùng thông N qua giao diện đồ họa được viết bằng script TCL/TK. Cho phép xây dựng nên các command truy vấn thông qua menu, dialog. Giao diện này thực chất C là lớp vỏ bọc cho những command chuyên biệt bên dưới. A • Mức command, gõ lệnh trực tiếp : đây là mức thông dụng nhất và được sử O dụng nhiều nhất. Trên môi trường LINUX/UNIX việc gõ command sẽ giúp thao tác nhanh với hệ điều hành rất nhiều so với giao tiếp giao diện đồ họa. H GRASS ở mức giao tiếp này hỗ trợ người dùng gõ command trực tiếp để K truy vấn và sử dụng. • Mức lập trình : đây là những developer, có trình độ tin học cao. Sử dụng những bộ thư viện được cung cấp sẵn của GRASS để phát triển nên những Trang 18
  20. Chương 2: Hệ thống hỗ trợ phân tích tài nguyên địa lý ứng dụng cho bản thân. Ràng buộc là các developer phải sử dụng những hàm đã được hỗ trợ (nếu có) để mở rộng và phát triển, không viết lại những gì đã có để tránh trùng lắp và bug • Mức xây dựng thư viện : đây là công việc của nhóm phát triển GRASS đang làm. Họ có trách nhiệm duy trì sự ổn định, phát hiện sửa chữa những lỗi và TN đảm bảo một nền tảng thư viện hàm tốt để các ứng dụng được phát triển và mở rộng trên đó. H GRASS hỗ trợ các chức năng chính yếu : K • Phân tích dữ liệu Raster (Raster Analysis) H • Phân tích dữ liệu Vector (Vector Analysis) Đ • Phân tích dữ liệu Điểm (Point Analysis) • Xử lý hình ảnh (Image Process) – • Phân tích DTM ( DTM – Analysis) TT • Hiển thị thông tin (Screen Displaying) N • Tạo lập bảng đồ (map creation) C • Hỗ trợ SQL ( PostgreSQL, MySQL ..) • Các module khác (được các nhóm khác xây dựng và gắn vào) A O 2.2 Kiến trúc GRASS H Ở mức độ tổng quan, có thể mô tả kiến trúc của bộ thư viện GRASS như hình vẽ sau : K Trang 19
ADSENSE
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2