Computer vision answers · Energy

How do I detect solar panel hotspots and faults in thermal images with computer vision?

Without scrolling through every frame of every drone flight.

Short answer

Train an object detection model to find hotspots and other faults in your thermal images with Roboflow for free, then count the detections in every image from a flight. Give each fault type its own class, such as a single hot cell, a hot substring or a whole hot module, so you know what to send a crew out for. Export every flight with the same color palette and temperature range, so a hotspot looks the same to the model from one flight to the next.

Roboflow agent · free to start

Skip the setup. Describe your images.

Describe your images and what you need to find. The agent sets up labeling, training and deployment with you.

Key facts

What you need
Drone thermal images and a model trained on your fault types
What you get
Every hotspot and fault marked, with a count per image
Image sources
Drone thermal cameras and handheld thermal imagers
Runs on
Cloud API, or a laptop or server running Docker
Aerial grayscale image of solar panels showing three detected faults: two hotspots highlighted by red boxes and one hot substring highlighted by a yellow box.

How to build solar hotspot detection, step by step

Six steps from a drone's thermal images to every fault found and counted.

  1. Connect Roboflow to your coding agent, ChatGPT or Codex

    Add the Roboflow MCP server to Claude, Cursor or Gemini CLI, or install the Roboflow plugin in ChatGPT or Codex. Your assistant can then upload and auto-label thermal images, start training, build the Workflow and run the model from a prompt, at no extra cost beyond your Roboflow plan.

  2. Fly the site in bright, steady sun

    Capture thermal images while the panels are producing power, since faults only heat up under load. Keep the same flight altitude and color palette on every flight, so images from different days look alike.

  3. Label each fault type as its own class

    Draw a box around every fault and give each type its own class, such as hotspot for a single hot cell, hot substring and hot module. Roboflow Annotate can pre-label images with SAM 3, and public thermal solar datasets on Roboflow Universe can give you a head start.

  4. Train a detection model for small hotspots

    Train an object detection model such as RF-DETR on your labeled thermal images with Roboflow Train, and test it on a flight it has not seen.

  5. Count the faults in each thermal image

    Run the model on a thermal image and count the detections in each class, so you see at a glance which images hold faults and what kind.

    Python
    import supervision as sv
    from collections import Counter
    from inference import get_model
    
    model = get_model("your-project/1")
    
    result = model.infer("thermal_0412.jpg", confidence=0.4)[0]
    detections = sv.Detections.from_inference(result)
    
    print(Counter(detections.data["class_name"]))
    # Counter({'hotspot': 3, 'hot_substring': 1})

    Rather not write code? Ask the Roboflow agent to set this up for you

  6. Run every image from a flight and send the faults to maintenance

    Build a Workflow that runs the model on every image from a flight, and run it with Roboflow Deploy. Record which image each fault came from, so crews can find the panel from the drone's flight log.

Why 2 million engineers build on Roboflow

  • Label faster

    Auto-label with SAM 3 or your own model, then fix the misses instead of drawing every box.

  • RF-DETR

    Roboflow’s open-source real-time detection model, built for accuracy (opens in a new tab) on small objects.

  • Logic built in

    Counting, zones, tracking and alerts are ready-made Workflow blocks, so there is less code to write.

  • Your model, your weights

    Use your trained weights on every plan, including free, through the open-source Inference package.

  • Run it anywhere

    Self-host on a workstation, Docker, an on-prem GPU or an edge device, or call the cloud API.