TrickfireRobotics / mission-control

The mission control user interface for "Viator" for the University Rover Challenge
1 stars 2 forks source link

Implement GNSS/GPS Location of the Rover Overlayed on a Satellite Map #12

Open VladimirKupryukhin opened 3 months ago

VladimirKupryukhin commented 3 months ago

Context

The rover code will publish a topic that contains a huge JSON formatted String that would contain, among other things, GNSS/GPS information from the GNSS module that is on the rover. The goal is to show the location of the rover on top of a satellite image of the location.

What to do

This will require a good amount of work, so strap in. You will need to make a new tab, maybe its a side navbar or a button on the top navbar (use your best designer judgment), that will show a map of the location of the rover on top of a satellite map. Since the mission control and the rover are not connected to the internet, we will have to download the satellite imagery to be local on the mission control. I would not recommend downloading the whole world's satellite map as that would make the file size way to large; download the URC competition location (somewhere in the Utah desert) in addition to the area around UWB.

O-xix commented 1 week ago

Possible Solution: Python : Folium module

Going to add my two cents, I used Python library during the summer called folium (https://python-visualization.github.io/folium/latest/index.html), that allows for the tracking, visualization, and notation of a Map, which can also take any Coordinate Reference System (CRS) to boot. There are many different map styles (https://leaflet-extras.github.io/leaflet-providers/preview/). It is also interactive, so if we could take a Map from here and display it on the mission control page, it might work. I don't know how specific the data would be if we were taking into account altitude and other factors, but it's just a suggestion.

adamseth2 commented 1 week ago

Adding on: The map api should be open source and 3D space

Some libraries I know of: https://github.com/CesiumGS/cesium openglobus