βοΈ ConvNeXt Solar Panel Defect Classifier π
π Overview
This model is designed to automate the inspection of solar panels within a microgrid ecosystem. By identifying defects such as physical damage, dust accumulation, or electrical failures, it helps in maintaining peak efficiency and reducing manual maintenance costs.
The classifier is built upon the ConvNeXt-Tiny architecture, a modern pure convolutional neural network that rivals Transformers in performance while maintaining the efficiency of standard CNNs.
π― Key Features
- Modern Architecture: Leverages ConvNeXt-Tiny for high-accuracy feature extraction.
- Robust Performance: Achieved 97.18% Test Accuracy.
- 6-Class Classification: Specialized in detecting specific solar panel states.
π οΈ Model Details
- Base Model: ConvNeXt-Tiny (Pretrained on ImageNet-1K)
- Input Resolution: 224x224 px
- Optimization: Adam Optimizer with Categorical Cross-Entropy loss.
- Framework: TensorFlow / Keras
π Dataset & Classes
The model was fine-tuned on a curated dataset of solar panel imagery, specifically labeled for microgrid maintenance scenarios.
| Label | Description |
|---|---|
| βοΈ Snow-covered | Panels obstructed by snow |
| π¨ Physical-damage | Cracks, broken glass, or structural issues |
| β‘ Electrical-damage | Burning marks or internal circuit failure |
| π«οΈ Dusty | High accumulation of dirt/sand |
| β¨ Clean | Fully operational and clear panels |
| π¦ Bird-drop | Obstruction due to wildlife |
π Performance & Metrics
π Training Progress
Monitoring the learning curves for both accuracy and loss.
π§ͺ Error Analysis
A deeper look into model predictions via the Confusion Matrix and ROC Curve.
π Classification Report
| Class | Precision | Recall | F1-Score | Support |
|---|---|---|---|---|
| Bird-drop | 0.95 | 0.90 | 0.93 | 41 |
| Clean | 0.86 | 1.00 | 0.92 | 30 |
| Dusty | 0.94 | 0.92 | 0.93 | 36 |
| Electrical-damage | 1.00 | 0.97 | 0.99 | 39 |
| Physical-damage | 1.00 | 0.97 | 0.98 | 32 |
| Snow-covered | 1.00 | 1.00 | 1.00 | 46 |
| Average / Total | 0.96 | 0.96 | 0.96 | 224 |
π Usage
from inference import predict
# Load image and predict
image_path = "solar_panel_test.jpg"
result = predict(image_path)
print(f"Prediction: {result['class']}")
print(f"Confidence: {result['confidence']:.2%}")
π License
This project is licensed under the MIT License.
π€ Citation
If you use this model in your research or project, please cite:
@model{convnext_solar_defect_2024,
author = {Microgrid Efficiency Project Team},
title = {ConvNeXt Solar Panel Defect Classifier},
year = {2024},
publisher = {Hugging Face Hub}
}
