开发者

Display Dynamic Raster (lidar) Data on Web Map like Geoserver, Bing Maps, Google maps from Ground up

I have some high quality LiDAR data. I need to process it dynamically, and update a field (not elevation field) depending on my input and elevation at that point. Once this is done, I need to display this raster data on Web Map (Bing Map, Google Map etc.) as real time as possible. Here is what i have been able to do till now: I have come up 开发者_开发知识库with some scripts using ArcGIS Python Lib, that process my lidar clips, add a field , update that field according to the input coming in. So now i basically have all the points on raster classified into 3 categories every 5 mins. If i view this raster in arcGIS i can view nice 3 colored raster overlapped on a base map.

But now i need to render these raster clips on a Web map. My first though was to polygonize these classified clips and display the polygons on a JavaScript Map. But polygonization takes a lot of time, and thus its eliminated.

Now Other option I have is to to use GeoServer's Raster rendering capabilities to display the images. Then use this WMS i created, to overlap it on Bing Maps. This is where i am stuck. I have no clue how to automatically get Rasters that Geoserver supports, like Geotiff, jpg200o etc from my ADF files, render them on open layers first, then try to overlap them on bing maps.

If someone knows of any good tutorial that does this kind of rendering of dynamically changing rasters on map , will be great if you could point me to it.

Also if there are some other better approaches to get this kind of system in place, Please suggest. I am open to almost any solution.

Thanks

PS: I am pretty good at web programming, web services,databases and scripting etc. But new to working with Lidar and Geo-Rasters.


Seeing as you're familiar with Python, you can use the GDAL2Tiles.py python script that comes with the GDAL library (http://www.gdal.org/gdal2tiles.html) to take any georeferenced raster file and chop it up into pre-rendered 256px x 256px PNG tiles numbered according to the TMS tile system i.e. the z/x/y system which Bing Maps/Google Maps/Open Street Maps use). Incorporate this script into your existing workflow to re-generate the set of image tiles every 5 minutes.

Then, all you need to do is create a new Bing Maps TileSourceSpecification that points directly at the directory in which the resulting tiles are output - no need for an intermediary WMS service at all.


I Solved this using Geoserver's Raster rendering on OpenLayers and Bing Maps As Base map. Basically I have a Python script that processes my lidar, and churns out the GeoTiff format. The Geoserver uses this GeoTIFF as datastore and exposes a WMS (Web Mapping Server). Open Layer Allows me to overlap my GeoTIFFs on Bing Maps Imagery! So i dont have to go out creating tiles and tiling scheme. As soon as my data changes the geoserver renders the new data! Let me know if anyone needs more details on this.

---UPDATE: Apr 3rd, 2015---

To be more precise, I setup the GeoTIFF raster as WMS service in the GeoServer. Then using functions in JavaScript, I simply modified the SLDs(Styled Layer Descriptor XML) and server rendered the raster rendered according to my live parameters.

This can now be done using ArcGIS Server's Image Server API. It provides much more powerful functions to manipulate rasters.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜