Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Output signal strength as geojson #11

Open
dougajmcdonald opened this issue Jan 3, 2019 · 5 comments
Open

Output signal strength as geojson #11

dougajmcdonald opened this issue Jan 3, 2019 · 5 comments

Comments

@dougajmcdonald
Copy link

Is there any way that we could output the Signal Strength map (currently .ppm) as geojson? or some format which could be more easily rendered on a map?

I've tried the .kml output but that outputs a link to the .ppm which isn't vector based.

Would appreciate any thoughts.

@hoche
Copy link

hoche commented Jan 15, 2019

I'm curious to know what you mean, exactly. I think the ppm included in with the kml is intended to be used as an overlay in Google Earth, and opening it up is supposed to project it right on top. I can't remember if Google earth under stands ppm's though. I changed that in my branch of Splat! so that it'll output a png with the kml instead.

Are you asking to have the different dBm/SS levels mapped as topology arcs rather than simple color areas?

@dougajmcdonald
Copy link
Author

@hoche Yeah, the KML is intended for this I think. As you say, google earth (or other slippy maps interfaces (we're using leaflet on top of geoserver)) don't support .ppm so converting to another image format would be needed. I'll have a look at your branch as this would solve one of my problems.

However, as well as reading the image we'd probably want to adjust the opacity in the colours, as we'd want to display the splat output as a layer on a 2D map and may want to see other layers below.

At the moment I could do this by running splat and taking the output, running it through a Java backend (to amend the image) and then serve it to the client mapping application. This is all a bit clunky, so in an ideal world, splat would output say, GeoJSON to allow those kind of changes to be performed programatically and ideally changed at runtime.

I believe yes, I'd be looking for the dBm/SS levels to be mapped to GeoJSON features. As this would be infinitely more flexible to work with. I appreciate however that this probably isn't a trivial task.

@hoche
Copy link

hoche commented Jan 21, 2019

I see.

Actually, generating GeoJSON that uses the png as an overlay - just like the kml does now - is on my short-term todo list; with any luck I'll have that done in the next few days. I'll have to think a bit about how to get vectors out what is essentially a raster grid of signal strengths. That might get punted down the road for a later enhancement though.

@dougajmcdonald
Copy link
Author

GeoJSON with a .png would definitely be an improvement, that way the effort to load it onto mapping solutions like mapbox and leaflet would be easier.

In an ideal world however the data driving the .png would be output as GeoJSON features, but when I considered how to do this, I understand it would be pretty tricky as it's not like the signal strength level form nice segmants of a pie chart or anything, the shapes are complex and often not joined up.

I don't understand how the SS plot is generated however, perhaps there is some way to achieve this?

@dBitech
Copy link

dBitech commented Dec 7, 2019

This is not a difficult process to accomplish at all by post-processing the .ppm. The gdal ecosystem has all of the bits and pieces needed to do this and can be scripted to make it easy and painless. You can take the resulting .ppm produced by Splat!, create a GeoTIFF using gdal_translate. This rusting GeoTIFF can then be converted to a GeoJSON using the following script geotiff2geojson You may need to modify it for your particular needs but should provide some thoughts on the process.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants