in src/mapillary/config/api/entities.py [0:0]
def get_image(image_id: str, fields: list) -> str:
"""
Represents the metadata of the image on the Mapillary platform with
the following properties.
Usage::
>>> 'https://graph.mapillary.com/:image_id' # endpoint
Fields::
1. altitude - float, original altitude from Exif
2. atomic_scale - float, scale of the SfM reconstruction around the image
3. camera_parameters - array of float, intrinsic camera parameters
4. camera_type - enum, type of camera projection (perspective, fisheye, or spherical)
5. captured_at - timestamp, capture time
6. compass_angle - float, original compass angle of the image
7. computed_altitude - float, altitude after running image processing
8. computed_compass_angle - float, compass angle after running image processing
9. computed_geometry - GeoJSON Point, location after running image processing
10. computed_rotation - enum, corrected orientation of the image
11. exif_orientation - enum, orientation of the camera as given by the exif tag
(see: https://sylvana.net/jpegcrop/exif_orientation.html)
12. geometry - GeoJSON Point geometry
13. height - int, height of the original image uploaded
14. thumb_256_url - string, URL to the 256px wide thumbnail
15. thumb_1024_url - string, URL to the 1024px wide thumbnail
16. thumb_2048_url - string, URL to the 2048px wide thumbnail
17. merge_cc - int, id of the connected component of images that were aligned together
18. mesh - { id: string, url: string } - URL to the mesh
19. quality_score - float, how good the image is (experimental)
20. sequence - string, ID of the sequence
21. sfm_cluster - { id: string, url: string } - URL to the point cloud
22. width - int, width of the original image uploaded
"""
fields = Entities.__field_validity(
given_fields=fields,
actual_fields=Entities.get_image_fields(),
endpoint="https://graph.mapillary.com/:image_id?fields=",
)
return f"https://graph.mapillary.com/{image_id}/?fields={','.join(fields)}"