Spaces:
Sleeping
Sleeping
| import folium | |
| import os | |
| def generate_map(gps_coordinates, cracks): | |
| if not gps_coordinates or not cracks: | |
| return None | |
| # Calculate the average latitude and longitude | |
| avg_lat = sum(coord[0] for coord in gps_coordinates) / len(gps_coordinates) | |
| avg_lon = sum(coord[1] for coord in gps_coordinates) / len(gps_coordinates) | |
| # Create a Folium map centered at the average GPS coordinates | |
| m = folium.Map(location=[avg_lat, avg_lon], zoom_start=15) | |
| # Add markers for each crack | |
| for coord, crack in zip(gps_coordinates[-len(cracks):], cracks): | |
| folium.Marker( | |
| location=coord, | |
| popup=f"Severity: {crack['severity']}, Confidence: {crack['confidence']:.2f}", | |
| icon=folium.Icon(color='red' if crack['severity'] == 'Severe' else 'orange' if crack['severity'] == 'Moderate' else 'green') | |
| ).add_to(m) | |
| # Save the map as an HTML file | |
| map_path_html = "map_temp.html" | |
| m.save(map_path_html) | |
| # Return the HTML map file path | |
| return map_path_html | |