Download jpeg images from Bing, no credentials are required. Note that images may include annotations such as street names.
python3 ProbeMapMatching.py lat1, lon1, lat2, lon2,
where (lat1, lon1) is the latitude and longitude of the upper-left coordinate, and (lat2, lon2) is the latitude and longitude of the lower-right coordinate. Use QGIS with Bing layer in EPSG:4326
to find these. The script tolerates arbitrary coordinates input, as long as the two coordinates are diagonal. The retrieved image will be stored in .\output
folder. The name of the image will follow the 'aerialImage_{}.jpeg' ending with the retrieval level.
- Eiffel Tower:
python3 aerialImageRetrieval.py 48.859261 2.293362 48.856953 2.296194
- Random London suburb:
python3 aerialImageRetrieval.py 51.388 -0.2598 51.393 -0.2538
tilesystem.py
: This module implements a set of static methods used for Bing maps tile system. All the methods in sample C# code in https://msdn.microsoft.com/en-us/library/bb259689.aspx, have been implemented by my own understanding.aerialImageRetrieval.py
: This module is used to retrieve satellite/aerial image. Given a bounding box, which is composed of left up corner coordinate (latitude, longitude) and right down corner coordinate (latitude, longitude). Return an aerial imagery (with maximum resolution available) downloaded from Bing map tile system. The aerial image will be strictly cropped based on the size of bounding box. Also, if the given bounding box is too large and with the maximum resolution available, the retrieval image could be too large. So I set a maximum image size (8192 * 8192 pixels), approximately 256MB, to filter too large images.
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt