lokesh341 commited on
Commit
2bcb413
·
1 Parent(s): 0c5fac1

Create map_service.py

Browse files
Files changed (1) hide show
  1. services/map_service.py +22 -0
services/map_service.py ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import folium
2
+ import os
3
+
4
+ def generate_map(gps_coordinates, cracks):
5
+ # Create a map centered at the average of the GPS coordinates
6
+ if not gps_coordinates:
7
+ return None
8
+ avg_lat = sum(coord[0] for coord in gps_coordinates) / len(gps_coordinates)
9
+ avg_lon = sum(coord[1] for coord in gps_coordinates) / len(gps_coordinates)
10
+ m = folium.Map(location=[avg_lat, avg_lon], zoom_start=15)
11
+
12
+ # Add markers for cracks
13
+ for coord, crack in zip(gps_coordinates[-len(cracks):], cracks):
14
+ folium.Marker(
15
+ location=coord,
16
+ popup=f"Severity: {crack['severity']}, Confidence: {crack['confidence']:.2f}",
17
+ icon=folium.Icon(color='red' if crack['severity'] == 'Severe' else 'orange' if crack['severity'] == 'Moderate' else 'green')
18
+ ).add_to(m)
19
+
20
+ map_path = "map_temp.html"
21
+ m.save(map_path)
22
+ return map_path