Thursday, August 23, 2012

Ứng dụng các công cụ mô hình hóa hỗ trợ nghiên cứu đô thị


Quách Đồng Thắng, Trần Quang Trường Hinh
Trung tâm Ứng dụng GIS TP.HCM

TÓM TẮT: Mô phỏng quá trình phát triển không gian đô thị rất có ý nghĩa trong lĩnh vực nghiên cứu đô thị. Ngày nay, với sự phát triển mạnh mẽ của các phần mềm GIS, phần mềm đồ họa 2D/3D, phần mềm mô hình tác nhân, việc mô phỏng được thực hiện dễ dàng và trực quan, giúp người dùng có cái nhìn toàn diện và xuyên suốt quá trình phát triển không gian đô thị, cũng như hỗ trợ các vấn đề nghiên cứu đô thị nói chung.
Từ khóa: nghiên cứu đô thị, GIS, Flex, OpenScale, Trimble Sketchup, Google Earth, KML/KMZ, mô hình tác nhân.

1          GIỚI THIỆU

Bài viết giới thiệu một số công cụ, đặc biệt là các công cụ mã nguồn mở/ miễn phí hỗ trợ mô phỏng quá trình phát triển không gian đô thị: hiển thị các bản đồ, xây dựng mô hình 3D các công trình lịch sử/ kiến trúc, tích hợp yếu tố thời gian vào mô hình 3D, xây dựng các hiệu ứng đồ họa mô phỏng phát triển không gian đô thị.

2          MỘT SỐ CÔNG CỤ MÔ HÌNH HÓA ĐÔ THỊ

Hiện nay có rất nhiều phần mềm hỗ trợ xây dựng mô hình 3D thương mại chuyên dụng như ESRI City Engine,AutoCAD Civil 3DBentley Map,… Phạm vi bài viết chỉ giới thiệu các phần mềm mã nguồn mở/ miễn phí phục vụ mô phỏng quá trình phát triển không gian đô thị như OpenScales, Flex, Trimble SketchUp và các phần mềm mô hình tác nhân như Repast, GAMA, NetLogo.

2.1        OpenScales và Flex

OpenScales là một bộ thư viện mã nguồn mở viết bằng ActionScript 3 và Flex, dùng để xây dựng các ứng dụng bản đồ Rich Internet Mapping. OpenScales hỗ trợ các nguồn bản đồ mở khác nhau như: OpenStreetMap, OpenCycleMap, Bing Map. OpenScales có thể tải bản đồ thông qua các dịch vụ theo chuẩn mở OGC: WMS, WMTS, WFS.
Flex là một bộ công cụ phát triển phần mềm (SDK) mã nguồn mở dùng để xây dựng các ứng dụng web hoặc desktop dựa trên nền tảng Adobe Flash.
Ứng dụng được xây dựng trên nền Flex sử dụng bộ thư viện OpenScales có thể trình diễn, mô phỏng quá trình phát triển không gian đô thị, gồm các hiệu ứng bản đồ theo thời gian, sự thay đổi ranh giới đô thị, sự biến động về mật độ dân cư hay sự thay đổi của các công trình lịch sử/ kiến trúc cần quan tâm. Người dùng có thể truy vấn thông tin các đối tượng ở bất kỳ mốc thời gian nào, tham chiếu vị trí ngày xưa và ngày nay, qua đó có cái nhìn xuyên suốt về quá trình biến động của một đối tượng cụ thể theo thời gian.


Ngoài ra, để phục vụ hiển thị 3D, OpenScale đang phát triển bộ thư viện OpenScalesGL. OpenScalesGL là bộ thư viện kết hợp giữa OpenScale, bộ thư viện đồ hoạ 3D WebGL (Web-based Graphics Library) và chuẩn HTML5 (với thẻ canvas hỗ trợ hiển thị đồ hoạ 3D/ hoạt hình trực tiếp trong trình duyệt mà không cần cài đặt thêm plugin như Flash/ Silverlight).
Hiện tại, Google Maps đang thử nghiệm MapsGL (GoogleMaps + WebGL) để nâng cao khả năng hỗ trợ đồ hoạ của Google Maps


2.2        Phần mềm miễn phí Trimble SkechUp và Google Earth

Phần này giới thiệu một công cụ rất dễ sử dụng cho người dùng cuối trong xây dựng mô hình đô thị 3D là phần mềm Trimble SkechUp và Google Earth, với khả năng hỗ trợ hiển thị đồ họa theo thời gian và các hiệu ứng hoạt hình thông qua KML/KMZ.
KML (Keyhole Markup Language) là một định dạng hiển thị các đối tượng đồ họa trong Google maps và Google Earth. KML có thể chứa nhiều đối tượng đồ họa như placemarks, images, polygons, 3D models, textual descriptions,… Ngoài ra, KML có thể tích hợp yếu tố thời gian và hoạt hình.
Người dùng có thể tạo file KML từ Google Earth hoặc có thể export dữ liệu GIS (shapefile/ PostGIS, Geodatabase,…) từ các ứng dụng khác sang định dạng KML/ KMZ.
File KML có thể được nén lại thành định dạng KMZ để giảm dung lượng và đơn giản hóa khi truyền tải file.
Các mô hình 3D có thể được xây dựng bằng Trimble SketchUp (trước kia là Google SketchUp), sau đó xuất bản sang KML để cài đặt các yếu tố thời gian và hoạt hình, phục vụ mô phỏng. Các mô hình xây dựng từ Trimble SketchUp có thể được upload để chia sẻ trên Trimble 3D Warehouse, ngược lại người dùng có thể download và sử dụng các mô hình sẵn có trên Trimble 3D Warehouse được xây dựng và chia sẻ bởi cộng đồng người dùng đông đảo.


Để cài đặt yếu tố thời gian cho các đối tượng đồ họa, KML hỗ trợ 2 loại thẻ thời gian:
-         TimeStamp: Định nghĩa chính xác một thời điểm.
-         TimeSpan: Định nghĩa một khoảng thời gian <bắt đầu> và <kết thúc>
Google Earth hỗ trợ công cụ Time Slider để điều khiển việc hiển thị các đối tượng đồ họa theo thời gian. Khi mở một file KML/KMZ có chứa các thẻ thời gian <TimeStamp> hoặc <TimeSpan>, Google Earth sẽ tự động nạp công cụ Time Slider cho người dùng điều khiển.


Bài viết giới thiệu cách sử dụng các công cụ xây dựng mô hình 3D và mô phỏng quá trình phát triển các công trình kiến trúc tại TP.HCM theo thời gian.
Giải pháp đưa ra là sử dụng Trimble Sketchup để xây dựng mô hình 3D cho các công trình kiến trúc à Export sang KML à cài đặt các yếu tố thời gian và hoạt hình để mô phỏng trong Google Earth.


Việc xây dựng mô hình 3D cho các công trình kiến trúc có thể sử dụng mô hình số bề mặt (Digital Surface Model) được trích lọc từ dữ liệu Lidar kết hợp ảnh hàng không. Các phép phân tích không gian từ mô hình 3D rất có ích trong quy hoạch đô thị như: phép phân tích Viewshed cho phép xác định vùng khả kiến từ một công trình kiến trúc nào đó (cũng có ý nghĩa trong an ninh quốc phòng).
Sau khi được xây dựng hoàn chỉnh, lịch sử phát triển các công trình kiến trúc tiêu biểu của TP.HCM có thể được công bố, chia sẻ dễ dàng trên Trimble 3D Warehouse, người dùng có thể xem mô phỏng trên Google Earth hoặc dạng phim hoạt hình 3D.
Ví dụ sau biểu diễn quá trình phát triển các công trình cao tầng tại London từ năm 1953 đến năm 2015 dưới dạng hoạt hình theo thời gian (bao gồm các công trình đang xây dựng và hoàn thành đến năm 2015). Các mô hình được xây dựng và lưu tữ ở định dạng COLLADA (COLLAborative Design Activity) với định dạng file *.dae (digital asset exchange).


2.3        Mô hình tác nhân

Phần mềm mô hình mô hình tác nhân Agent-based Modeling (ABM) được ứng dụng trong rất nhiều lĩnh vực, trong đó có lĩnh vực quản lý, quy hoạch đô thị.
Mô hình tác nhân tiếp cận theo hướng cài đặt các hành vi và tương tác giữa các tác nhân liên quan trong một môi trường, một không gian nhất định. Người dùng có thể xây dựng mô hình và hiệu chỉnh các thông số khi chạy mô hình để đưa ra các kịch bản mô phỏng khác nhau.
Một số phần mềm mô hình tác nhân mã nguồn mở thông dụng:
-         Repast / Agent Analysist
-         GAMA
-         NetLogo
Đa số các phần mềm mô hình tác nhân hiện nay có thể tích hợp dữ liệu GIS để nâng cao tính thực tiễn của mô hình.
Ví dụ sau sử dụng phần mềm mô hình tác nhân GAMA có tích hợp dữ liệu GIS để mô phỏng dòng di chuyển của các phương tiện giao thông với các hành vi khác nhau trong một khu vực địa lý nhất định.
Mô hình này, cùng với các mô hình tác nhân khác là một công cụ hỗ trợ đắc lực trong nghiên cứu đô thị như công tác quy hoạch giao thông, quy hoạch sử dụng đất, dự báo quá trình đô thị hóa, quy hoạch phát triển không gian đô thị, …



3          KẾT LUẬN

Quản lý đô thị là một bài toán phức tạp, đòi hỏi kiến thức tổng hợp của nhiều chuyên ngành kinh tế, văn hóa, xã hội, tự nhiên, lịch sử, văn hóa, chính trị,… Phạm vi bài viết chỉ giới thiệu một số công cụ mã nguồn mở/ miễn phí mang tính gợi mở để xây dựng mô hình 3D và mô phỏng, như là một công cụ hỗ trợ nghiên cứu đô thị nói chung và trong lĩnh vực quy hoạch, phát triển không gian đô thị nói riêng cho các nhà nghiên cứu đô thị. Việc áp dụng các công cụ mã nguồn mở/ miễn phí phục vụ nghiên cứu đô thị giúp tiết kiệm chi phí đầu tư và nâng cao tính chủ động về mặt công nghệ. Đối với mô hình tác nhân, đây là một hướng tiếp cận mới và rất thú vị cho các nhà nghiên cứu, phục vụ công tác mô phỏng trong nghiên cứu các vấn đề đô thị, đặc biệt là đối với các đô thị lớn và năng động như TP.HCM.

Wednesday, July 25, 2012

Tích hợp vị trí không gian vào QR code với công cụ QuickMark

Quách Đồng Thắng
Trung tâm Ứng dụng GIS TP.HCM

          QR code – Quick Response Code - mã phản hồi nhanh, là dạng mã vạch 2 chiều được phát triển bởi DENSO WAVE – một công ty con của Toyota vào năm 1994.  Mục tiêu ban đầu của QR code chủ yếu phục vụ cho quản lý các bộ phận trong sản xuất xe hơi, tuy nhiên, với các tính năng vượt trội, hiện nay QR code được sử dụng rất rộng rãi trong nhiều lĩnh vực khác nhau.
          Một số đặc điểm nổi bật của QR code (so với bar code):
-         Lưu trữ khối lượng dữ liệu lớn với ít diện tích nhờ khả năng lưu trữ thông tin 2 chiều. 


          Mã vạch – bar code chỉ lưu trữ được tối đa 20 kí tự, trong khi QR code có khả năng lưu trữ vượt trội:
Khả năng lưu trữ của QR code
Only numbers (toàn số)
Tối đa 7,089 kí tự
Alphanumeric (kí tự + số)
Tối đa 4,296 kí tự
Binary (8-bit)
Tối đa 2,953 bytes
-         Khả năng sửa lỗi cao: có thể giải mã ngay cả khi bị bẩn hoặc mất mát thông tin (có thể giải mã khi bị mất thông tin đến 30%).


-         QR code có thể đọc được từ mọi hướng.
-         Ngoài ra, người dùng có thể “sáng tác” ra các QR code mang dấu ấn riêng của mình bằng cách chèn các hình ảnh, thương hiệu vào QR code mà không ảnh hưởng đến thông tin mã hóa.
          Ngày nay, QR code đã xuất hiện khá nhiều nơi: trên name card, thư mời hội thảo, trên các sản phẩm, các biển quảng cáo,….Việc sử dụng smartphone để quét và giải mã QR code, khám phá những thông tin ẩn chứa bên trong là một trải nghiệm khá thú vị, đây cũng là một hướng marketing hiệu quả, đánh vào tâm lí tò mò của khách hàng.
         Ngoài ra, người dùng có thể dễ dàng tự tạo cho mình một QR code mã hóa thông tin về bản thân để thuận tiện khi giao tiếp, hay đơn giản chỉ là một cách “thể hiện” bản thân. Với QR code chứa thông tin cá nhân (theo các format như vCard/ meCard), người mới quen chỉ cần dùng smartphone quét và giải mã các thông tin này, nhập thông tin liên lạc một cách tự động, nhanh chóng và chính xác thay vì nhập thủ công.
          Hiện nay, có rất nhiều phần mềm tạo/ đọc QR code trên điện thoại di động, trên máy tính hay chạy trên web như  QuickMarkKAYWA Readeri-nigma ReaderLynkee ReaderUpCodeSnapMazeBeeTaggNeoReader,ScanLifeMobileTag,… Bài viết xin giới thiệu công cụ Quickmark để làm việc với QR code.
          Quickmark có các phiên bản cài đặt khác nhau cho Iphone, Android, Windows Phone, Mac OS X, Windows, hoặc dưới dạng extension chạy trực tiếp trên web browser (như Google Chrome). Quickmark hỗ trợ mã hóa địa chỉ web, thông tin liên lạc (vCard/ meCard), số điện thoại, SMS (sử dụng tài khoản Skype), email, chuỗi kí tự bình thường, chuỗi kí tự đòi hỏi nhập mật khẩu khi giải mã, hoặc vị trí không gian (dựa trên googlemaps). Quickmark còn cung cấp Barcode SDK hỗ trợ các nhà phát triển tự xây dựng các ứng dụng làm việc với QR code.
          Để trải nghiệm việc tạo và giải mã QR code, chúng ta sẽ cùng tạo một QR code chứa thông tin liên lạc có tích hợp vị trí không gian trên google maps với Quickmark.
          Trước tiên, truy cập chức năng QR-Code Generator trên QuickMark, thực hiện các thao tác theo hướng dẫn: tìm địa chỉ  tinh chỉnh vị trí trên bản đồ  nhập các thông tin như tên, số điện thoại, địa chỉ Generate QR code cho các thông tin vừa nhập. 


         Kết quả là một QR code được tạo ra, người dùng có thể download dưới các định dạng ảnh khác nhau để sử dụng. 



          Kết quả sử dụng Quickmark phiên bản chạy trên Windows để giải mã QR code vừa tạo: 


          Click chuột vào Geo coordinates sẽ hiển thị vị trí trên google maps.