File size: 1,558 Bytes
7eda1e7 65c1b15 a376dac ea07644 65c1b15 a376dac 65c1b15 a376dac 1b92647 a376dac 6365d38 cb157ec 368ef8a 6365d38 ecf579b 21181e0 0250c84 368ef8a 6365d38 0250c84 65c1b15 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
import cv2
import gradio as gr
from ultralytics import YOLO
from PIL import Image
model = YOLO('hotspot_detector.pt')
def detect_hotspots(image):
result = model(image)
for r in result:
im_array = r.plot()
# im = Image.fromarray(im_array[..., ::-1])
return Image.fromarray(im_array[..., ::-1])
description = """
<center><img src="https://huggingface.co/spaces/intelliarts/hotspot-anomaly-detection-for-solar-panels/resolve/main/images/ia_logo.png" width=270px> </center><br>
<p style="font-size: 20px; text-align: center;"">This is a demo of a computer vision model by Intelliarts. It's designed to detect anomalies in solar panels, in particular, overheated spots. The model operates on infrared images of solar panels. It indicates the overheated spot, outlines its area, and shows the approximate accuracy of anomaly detection. You can use your own infrared images for testing or utilize samples from our dataset. This demo is not a finished ML solution, but rather a proof of concept. It can be extended to detect other anomalies in solar panels as well as visible damages.</p>
"""
demo = gr.Interface(fn=detect_hotspots, inputs=gr.Image(type='pil'), outputs="image",
examples=[['images/test_image_1.jpg'], ['images/test_image_2.jpg'],
['images/test_image_3.jpg'], ['images/test_image_4.jpg']],
examples_per_page=4,
cache_examples= False,
description=description
)
demo.launch()
|