import torch from models.solar_model import load_solar_model from models.windmill_model import load_windmill_model def detect_faults_solar(model, image): results = model(image) faults = [] for detection in results.xywh[0]: # Assuming the results are in this format class_id = int(detection[5].item()) # Get the class ID of the detected object if class_id == 0: # Cracks faults.append({"type": "Crack", "location": (detection[0], detection[1])}) elif class_id == 1: # Damage faults.append({"type": "Damage", "location": (detection[0], detection[1])}) return faults def detect_faults_windmill(model, image): results = model(image) faults = [] for detection in results.xywh[0]: # Assuming the results are in this format class_id = int(detection[5].item()) # Get the class ID of the detected object if class_id == 2: # Blade damage faults.append({"type": "Blade Damage", "location": (detection[0], detection[1])}) elif class_id == 3: # Motor fault faults.append({"type": "Motor Fault", "location": (detection[0], detection[1])}) return faults