.Các thành phần trong hệ thống WebGIS

Một phần của tài liệu (LUẬN văn THẠC sĩ) xây dựng hệ thống web trực quan hóa, hỗ trợ quản lý và phân tích ảnh viễn thám dựa trên nền tảng mã nguồn mở (Trang 39 - 42)

1.3 .Tổng quan về WebGIS

1.3.4 .Các thành phần trong hệ thống WebGIS

Dựa trên các nền tảng công nghệ và phần mềm đã phát triển của GIS và cơ sở dữ liệu không gian, kết hợp với nền tảng Web 2.0 đã tạo nên sự phát triển của WebGIS thành 2 hướng là sử dụng công nghệ mã nguồn mở và mã nguồn đóng. Mặc dù có nhiều phần mềm nguồn mở đã dần thay thế được các sản phẩm thương mại, tuy nhiên với độ tin cậy, đảm bảo và phát triển đồng bộ, phần mềm bản quyền vẫn có chỗ đứng lớn trong sự phát triển của GIS và WebGIS. Ở đây, nêu ra các thành phần và các công cụ cơ bản nhất được sử dụng để hình thành nên hệ thống WebGIS dựa trên nguồn mở và cả nguồn đóng là cơ sở để tìm hiểu và nắm được cách phát triển WebGIS.

a) Phần mềm nguồn đóng: tiêu biểu nhất là bộ công cụ ArcGis Server của hãng ESRI cho phép sử dụng tài nguyên chung, đa người sử dụng, các tính năng về tương tác với bản đồ, các công cụ GIS,…qua mạng Internet. Ưu điểm lớn nhất khi sử dụng ArcGIS là giảm thiểu thời gian phát triển phần mềm vì đã có một nền tảng công nghệ chuẩn cho các sản phẩm của ESRI. Sử dụng công cụ ArcGis Desktop để chỉnh sửa dữ liệu, tiếp theo chia sẻ tài nguyên này như một dịch vụ trên ArcGis Server và sau đó có thể tương tác qua ArcGIS client hoặc trình duyệt. Cùng với việc hỗ trợ các nền tảng

lập trình .NET và Java, cho phép phát triển thêm nhiều tính năng và tích hợp vào nhiều hệ thống khác, ArcGIS là một công nghệ WebGIS mạnh nhưng hạn chế về bản quyền.

Ngồi ra, có thể kể đến một số phần mềm, cơng cụ mã nguồn đóng mà được sử dụng trong các thành phần của hệ thống WebGIS như: hệ quản trị cơ sở dữ liệu không gian (Microsoft SQL Server, Oracle Spatial), bộ công cụ phát triển Web Visual Studio trên nền tảng .NET, hệ điều hành Windows cài đặt máy chủ Web Server IIS, cơng cụ xử lý, phân tích ảnh viễn thám ENVI,…Đó đều là những sản phẩm thương mại có chi phí đầu tư rất lớn, nếu kể đến việc đầu tư mua nguồn ảnh viễn thám thì hệ thống WebGIS cần rất nhiều nguồn lực đầu tư. Hơn nữa vì lý do bản quyền chỉ cho phép sử dụng giới hạn một hoặc một số máy chủ, máy client nên khó phát triển rộng rãi được trong nhiều lĩnh vực và ngành nghề rất cần nghiên cứu viễn thám và GIS.

b) Phần mềm nguồn mở: không nhất quán và tiện ích nhiều như các phần mềm thương mại, việc kết hợp và phát triển WebGIS từ các phần mềm nguồn mở, miễn phí địi hỏi nhiều thời gian và tính sáng tạo, áp dụng cơng nghệ của người phát triển. Ở đây, liệt kê ra các thành phần chính mà 1 hệ thống WebGIS nguồn mở đáp ứng được.

 Hệ điều hành máy chủ: Linux là một giải pháp tối ưu nhất về chi phí bản quyền và được nhiều cộng đồng nguồn mở hỗ trợ phát triển qua các gói phần mềm miễn phí. Bên cạnh đó tính bảo mật và tùy biến cao làm tăng tính tin cậy và sự ổn định với các WebGIS được host trên Linux Server. Phổ biến là Linux Ubuntu, Mint, Fedora,..

 Hệ quản trị cơ sở dữ liệu: với yêu cầu về truy vấn, sử dụng và phân tích dữ liệu khơng gian thì PostgreSQL/PostGIS là lựa chọn tối ưu nhất. PostGIS cung cấp thêm các kiểu dữ liệu geometry (kiểu tọa độ Đề Các), geography (kiểu tọa độ địa lý) và các hàm để hỗ trợ truy vấn không gian trong cơ sở dữ liệu. Ví dụ: ST_Length() tính độ dài,

ST_Area() tính diện tích, ST_Intersection() trả về vùng giao nhau của 2 vùng,…Ngồi

ra, MySQL cũng đã có phần mở rộng (extension) truy vấn khơng gian nhưng tính năng vẫn chưa mạnh và ổn định như PostGIS nên tạm thời MySQL vẫn chưa có khả năng thay thế PostgreSQL/PostGIS về tốc độ, khả năng xử lý không gian

 Ngôn ngữ lập trình: PHP từ lâu là sự lựa chọn tối ưu với các hệ thống Web mã nguồn mở và là ngôn ngữ kịch bản chạy trên các máy chủ nền Linux và Windows. Cùng với sự ra đời của các framework miễn phí (cake PHP, CodeIgniter, Symfony,…) đã giúp việc xây dựng và phát triển các hệ thống Web ngày một nhanh chóng và đạt tiêu chuẩn chất lượng. Với client thì các thư viện Javascript mạnh như: Jquery, Dojo, Yui, Mootools,…và sự phát triển của HTML5, CSS3 đã giúp ích rất nhiều trong việc xây dựng các tính năng, tiện ích trên Web dễ nâng cấp, sửa đổi với thời gian ngắn.

 Map GIS Server: với vai trò trung tâm của hệ thống WebGIS thì Map GIS Server cần được đầu tư và phát triển nghiêm túc. Nó cho phép xử lý các yêu cầu từ client và trả về các dạng hình ảnh, thuộc tính, tham chiếu địa lý, dữ liệu khơng gian,…Tùy theo mục đích sử dụng thì việc tạo lập và phát triển WebGIS có thể sử dụng 1 trong 3 công nghệ phổ biến nhất hiện nay:

o Map Server: là sản phẩm được phát triển qua nhiều năm của Đại học Minosita – Hoa Kỳ trên nền tảng ngôn ngữ C, hỗ trợ đa dạng các ngôn ngữ lập trình như PHP, Python, Java, C#, Ruby,…Map Server phát triển theo chuẩn của tổ chức OGC về trao đổi dữ liệu, thông tin, sẵn sàng kết nối với nhiều hệ quản trị CSDL không gian: PostGIS, Oracle Spatial,…Ngồi ra, nó cịn hỗ trợ đa hệ điều hành: Windows, Linux, Unix, MacOS,…và là một công nghệ phát triển đã khẳng định vị thế từ khi WebGIS mới phát triển cho đến hiện nay, có nhiều ứng dụng, API được cung cấp.

o Geo Server: ra đời muộn từ một dự án cộng đồng bắt đầu từ năm 2001, phát triển bởi ngôn ngữ Java, tuân theo các chuẩn về bản đồ của OGC. Geo Server hỗ trợ nhập, xuất nhiều định dạng dữ liệu raster và vector, dư liệu hình ảnh, kết nối nhiều hệ quản trị cơ sở dữ liệu,…Geo Server có ưu điểm so với Map Server là có giao diện tùy biến, cấu hình thân thiện và đơn giản hơn so với thiết lập các thông số trên mapfile của Map Server. Nó ngày càng được sử dụng rộng rãi trong các hệ thống WebGIS nguồn mở và được cộng đồng phát triển mở rộng các tính năng.

o Google Map API: Google là nhà phát triển tiên phong trong lĩnh vực xây dựng dịch vụ tìm kiếm và tra cứu thông tin trên bản đồ số, đặc biệt là tính năng dẫn đường sử dụng GPS. Với việc nâng cấp lên phiên bản API version 3, các tính năng mà Google cho phép sử dụng để phát triển ứng dụng WebGIS nhiều hơn, tiện ích hơn, sử dụng rộng rãi cho cả thiết bị máy tính cá nhân và di động. Tuy cịn hạn chế về việc giới hạn lượt dùng hàng ngày (25.000 lượt miễn phí) nhưng với API v3 trên nền tảng Javascript mạnh mẽ, chuẩn hóa, tiện ích thì đây là lựa chọn tối ưu cho việc phát triển nhanh các hệ thống WebGIS trực quan, đầy đủ tính năng và chi phí thấp.

 Thư viện xử lý ảnh raster GDAL: một bộ công cụ xử lý ảnh viễn thám mã nguồn

mở mạnh được xây dựng trên nền ngôn ngữ lập trình C, C++, Python. GDAL cho phép người sử dụng tham chiếu đến các file thư viện để gọi các tính năng chuyên xử lý ảnh, từ đó người sử dụng có thể tùy biến và phát triển nhiều chức năng dựa trên các tính năng mà GDAL cung cấp sẵn. Ngồi ra GDAL cũng có các giao diện dịng lệnh, cho phép người dùng khơng cần lập trình mà gọi trực tiếp các hàm qua các tham số trên Windows DOS, Linux Shell Script,…Như vậy mỗi khi client (máy khách) có truy vấn về xử lý ảnh viễn thám, WebServer có thể gọi thư viện GDAL chạy trên command

line hoặc chạy Python Script ở tầng xử lý dưới, sau đó trả về kết quả dạng Javascript JSON hoặc XML để client có thể hiển thị kết quả hoặc tiếp tục tính tốn. Một số câu lệnh GDAL phổ biến là: gdalinfo – đọc thông tin metadata của ảnh, gdaltranslate –

chuyển đổi định dạng ảnh raster, gdalwarp – chuyển đổi hệ quy chiếu,…

Một phần của tài liệu (LUẬN văn THẠC sĩ) xây dựng hệ thống web trực quan hóa, hỗ trợ quản lý và phân tích ảnh viễn thám dựa trên nền tảng mã nguồn mở (Trang 39 - 42)

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

(120 trang)