Solar energy has become one of the most promising renewable energy sources worldwide. By the end of 2023, the global cumulative installed photovoltaic capacity reached 1.6 TW, with a growth of 446 GW compared to 2022. In China alone, the cumulative installed capacity exceeded 662 GW, and new installations accounted for more than 60% of the global total. As solar panel installations expand rapidly, the need for reliable and efficient inspection of panel defects becomes critical. Defects such as cracks, dust accumulation, bird droppings, and snail trails can significantly reduce the energy conversion efficiency and may lead to hot-spot effects, which not only degrade performance but also pose safety risks. Traditional inspection methods, including manual visual inspection and infrared thermography, have limitations in terms of speed, cost, and the ability to detect subtle surface anomalies. In this context, computer vision and deep learning techniques offer new opportunities for automated, high-throughput solar panel defect detection.
In this work, I focus on developing a novel inspection framework based on polarization imaging. Polarization cameras capture additional physical information about the surface properties of objects, which can be particularly useful for detecting defects on solar panels where specular reflections and surface irregularities are common. However, polarization imaging suffers from a lower spatial resolution compared to conventional visible-light cameras, due to the on-chip polarizer array that splits the sensor into four distinct polarization channels. In an aerial inspection scenario with a large field of view, the effective resolution becomes even more limited. To address this issue, I propose a deep learning-based super-resolution reconstruction method specifically designed for polarization images. Furthermore, I develop a lightweight object detection network that leverages polarization features to achieve accurate defect localization, even when only a small number of labeled samples are available. The proposed methods are validated on both public polarization datasets and a custom dataset collected from a photovoltaic station in Gao’an, Jiangxi Province, China. The results demonstrate significant improvements in reconstruction quality and detection accuracy compared to existing state-of-the-art approaches.
1. Introduction
Solar photovoltaic power generation has become a cornerstone of the global clean energy transition. With the widespread deployment of solar farms in deserts, plateaus, and mountainous regions, solar panels are exposed to harsh environmental conditions that can cause various types of damage, including glass fractures, encapsulation degradation, interconnect ribbon failures, and soiling. These surface defects not only reduce the power output but also create localized heating, known as hot spots, which can lead to permanent panel damage and even fire hazards. Therefore, regular inspection of solar panels is essential for maintaining the safety and efficiency of photovoltaic systems.
Traditional inspection techniques can be categorized into three main types: manual inspection, electrical performance analysis, and computer vision-based inspection. Manual inspection is slow, subjective, and unsuitable for large-scale solar farms. Electrical monitoring methods can identify underperforming strings or panels but cannot localize specific surface defects. Computer vision approaches, especially those using unmanned aerial vehicles (UAVs) equipped with infrared or visible-light cameras, have gained popularity in recent years. Infrared thermography is effective for detecting hot spots after they have formed, but it is an after-the-fact technique and cannot prevent defects from developing. Visible-light imaging can reveal a wide range of surface defects, but its performance is often degraded by complex backgrounds, variable lighting, and low contrast. Therefore, there is a need for more advanced imaging modalities and intelligent algorithms that can provide richer information and earlier detection.
Polarization imaging is a promising candidate because it captures the polarization state of reflected light, which is sensitive to material properties, surface roughness, and geometry. For solar panels, the top glass layer, EVA encapsulant, and solar cells each contribute different polarization signatures. By analyzing these signatures, it is possible to distinguish defects that are otherwise invisible in conventional intensity images. However, polarization cameras have inherent drawbacks: the spatial resolution is typically one-quarter of that of a standard camera because each pixel is dedicated to one polarization angle. In addition, the number of publicly available polarization image datasets is very small, especially for solar panel inspection. These challenges motivate the development of specialized super-resolution and detection algorithms that can work with low-resolution polarization images and limited training data.
In this thesis, I address these challenges through two main contributions. First, I propose a degradation-aware polarization super-resolution reconstruction method that enhances the resolution of polarization images while preserving the underlying polarization information. This method employs a zero-shot unsupervised learning strategy that does not require large external datasets for fine-tuning. Second, I design a polarization-feature-based object detection network that efficiently fuses polarization information and operates in a self-supervised manner, making it suitable for small-sample and even zero-sample scenarios. Extensive experiments demonstrate the superiority of the proposed methods over existing baselines in terms of reconstruction quality, detection accuracy, and computational efficiency.
2. Related Work
2.1 Deep Learning for Super-Resolution
Single image super-resolution (SISR) aims to reconstruct a high-resolution (HR) image from a single low-resolution (LR) input. The advent of convolutional neural networks (CNNs) has greatly advanced this field. Dong et al. proposed SRCNN, which first introduced a three-layer CNN to SISR and achieved better results than traditional interpolation methods. Subsequently, FSRCNN improved the speed by using a post-upsampling strategy, and VDSR adopted residual learning to enable deeper networks. Later, attention mechanisms and dense connections were incorporated into models such as RCAN and SRDenseNet, leading to further performance gains. More recently, lightweight and efficient networks have been developed for real-time applications, including Bicubic++ and FSRCNN variants.
Another line of research focuses on blind super-resolution, where the degradation process is unknown. DASR uses contrastive learning to extract degradation representations and then modulates the reconstruction network accordingly. Zero-shot super-resolution (ZSSR) was introduced to handle arbitrary degradations by learning internal statistics from the input image itself. These methods are particularly relevant to polarization imaging because the exact degradation model of polarization sensors may not be known in practice.
2.2 Deep Learning for Object Detection
Object detection is a fundamental computer vision task that identifies and localizes objects within an image. Two-stage detectors such as R-CNN, Fast R-CNN, and Faster R-CNN first generate region proposals and then classify and refine them. One-stage detectors, including the YOLO family and SSD, directly predict bounding boxes and class probabilities in a single pass, offering faster inference speeds. YOLOv5, YOLOv8, and YOLOv11 are widely used in industrial applications due to their favorable speed-accuracy trade-offs. For defect detection on solar panels, numerous studies have applied CNN-based detectors to electroluminescence (EL) images and infrared thermography images. However, only a few works have explored polarization images for this task.
3. Polarization Imaging Principles
3.1 The Polarization of Light
Light is an electromagnetic wave whose electric field oscillates perpendicular to the direction of propagation. In natural light, the oscillation direction changes randomly over time, resulting in unpolarized light. When light reflects or transmits through a dielectric interface, the oscillation direction becomes partially aligned, producing polarized light. The polarization state can be described by the Stokes vector, which consists of four parameters: \(S_0\) (total intensity), \(S_1\) (linear polarization along 0° vs 90°), \(S_2\) (linear polarization along 45° vs 135°), and \(S_3\) (circular polarization). For a linear polarizer, the intensity of light transmitted at an angle \(\theta\) is given by:
\[ I(\theta) = \frac{1}{2} (S_0 + S_1 \cos 2\theta + S_2 \sin 2\theta) \]
Here, circular polarization is ignored because most polarization cameras only capture linear polarization. A polarization camera typically measures four linear polarization angles: 0°, 45°, 90°, and 135°. From these four intensity images \(I_0, I_{45}, I_{90}, I_{135}\), the first two Stokes parameters can be computed as:
\[ S_0 = \frac{I_0 + I_{45} + I_{90} + I_{135}}{2} \]
\[ S_1 = I_0 – I_{90} \]
\[ S_2 = I_{45} – I_{135} \]
From \(S_0, S_1, S_2\), the degree of linear polarization (DoLP) and angle of linear polarization (AoLP) are derived as:
\[ DoLP = \frac{\sqrt{S_1^2 + S_2^2}}{S_0} \]
\[ AoLP = \frac{1}{2} \arctan\left(\frac{S_2}{S_1}\right) \]
DoLP represents the fraction of linearly polarized light, which is related to the surface roughness and material type. AoLP corresponds to the orientation of the polarization and is sensitive to surface normals and reflection directions. Both quantities provide valuable clues for defect detection on solar panels, where the top glass layer, EVA film, and solar cells have distinct polarization responses.
3.2 Polarization Camera and Large Field-of-View Imaging
A modern polarization CMOS sensor, such as the IMX264MYR, contains a micro-polarizer array directly on the pixel grid. Each 2×2 block of pixels has polarizers oriented at 0°, 45°, 90°, and 135°. This design allows simultaneous capture of all four polarization states in a single frame, but the spatial resolution is reduced by a factor of four (each polarization image has half the width and half the height of the raw mosaic image). For an aerial inspection platform, a wide field-of-view lens is often used to cover a large area of solar panels in one shot. The combination of low native resolution and wide-angle optics results in very poor per-pixel ground sampling distance, which makes small defects difficult to resolve. Super-resolution reconstruction is therefore essential to recover fine details from such low-resolution inputs.

4. Degradation-Aware Polarization Super-Resolution
4.1 Problem Formulation
Given a low-resolution polarization image \(P_{LR}\), I aim to reconstruct a high-resolution polarization image \(P_{SR}\) that is as close as possible to the true high-resolution image \(P_{HR}\). The degradation process that produces \(P_{LR}\) from \(P_{HR}\) can be modeled as:
\[ P_{LR} = D(P_{HR}) = \left[ (P_{HR} \otimes k) \downarrow_r + n \right]_{JPEG} \]
where \(\otimes\) denotes convolution with a blur kernel \(k\), \(\downarrow_r\) is a downsampling operation with scale factor \(r\), \(n\) is additive noise, and \([\cdot]_{JPEG}\) represents JPEG compression. In real-world scenarios, the exact degradation parameters are unknown, so the network must learn to handle a variety of degradation patterns.
4.2 Network Architecture
The proposed super-resolution network consists of a downsampling refinement branch, two residual groups, and an upsampling module. The input to the network is a four-channel polarization image (the four linear polarization intensities \(I_0, I_{45}, I_{90}, I_{135}\)) or the computed \(S_0\) image, depending on the application. The downsampling branch uses a convolutional layer with stride 2 to reduce the spatial size while preserving the channel count. This operation not only reduces the computational cost but also allows the network to learn a more compact representation. The residual groups contain two degradation-aware (DA) convolutional layers and one standard 3×3 convolution, which enhances the network depth without excessive parameter growth.
The key component of the DA layer is a degradation-aware convolution that uses a kernel generated by an encoder from the degradation information. Specifically, a global pooling operation condenses the input to a one-dimensional vector, which is then passed through fully connected layers to produce a 3×3 kernel. This kernel is applied to the feature maps, allowing the network to adaptively respond to the degradation present in the input image. The architecture is illustrated conceptually below:
\[ F_{out} = \sigma\left( \text{Conv}_{3\times3}( \text{DA}(F_{in}) ) \right) \]
where \(\text{DA}\) denotes the degradation-aware convolution and \(\sigma\) is a non-linear activation.
4.3 Polarization Loss Function
To preserve the polarization information during reconstruction, I introduce a composite loss function that combines a pixel-level L1 loss with two polarization-specific constraints:
\[ L_{total} = L_1 + w_1 L_{P-dolp} + w_2 L_{P-aolp} \]
The L1 loss measures the absolute difference between the reconstructed \(S_0\) image and the ground truth. The \(L_{P-dolp}\) loss aims to preserve the degree of linear polarization, which is closely related to the high-frequency texture and edge information. It is defined using the histogram information entropy of the DoLP images:
\[ L_{P-dolp} = \sum_{i,j} – \mathrm{dolp}_{i,j}^{SR} \log(\mathrm{dolp}_{i,j}^{HR}) \]
The \(L_{P-aolp}\) loss uses the structural similarity (SSIM) between the AoLP images to ensure that the angular polarization information is reconstructed accurately:
\[ L_{P-aolp} = 1 – \mathrm{SSIM}(AoLP^{SR}, AoLP^{HR}) \]
In practice, the weights \(w_1\) and \(w_2\) are adaptively adjusted during training to balance the contributions.
4.4 Zero-Shot Unsupervised Training Strategy
Because polarization image datasets are extremely scarce, a two-stage training strategy is designed to avoid overfitting and reduce training time. In the first stage, the network is pre-trained on public super-resolution datasets (Set5, Set14, DIV2K, Flickr2K) using only the L1 loss. This transfer learning step provides a good initialization. In the second stage, zero-shot learning is performed on a single polarization image. The HR polarization image is downsampled using the degradation model to generate an LR-HR pair. The network is then fine-tuned for only a few iterations (typically 6-10) using the full composite loss. After this internal learning, the network is applied to the original HR image to produce the final super-resolved output. This approach is inspired by ZSSR and has been shown to preserve polarization information effectively.
5. Polarization-Feature-Based Object Detection
5.1 Input Preprocessing and Polarization Fusion
For the detection task, the input is a polarization image captured by the polarization camera. I first extract the four linear polarization intensity images and compute the Stokes parameters \(S_0, S_1, S_2\). From these, the DoLP and AoLP images are calculated. To reduce the channel dimension while retaining useful polarization information, I convert the \(S_0\) image to the Lab color space and retain all three channels (L, a, b). For the DoLP and AoLP images, only the luminance channel is retained because these images are inherently single-channel. The final polarization input has five channels: \(L_{S0}, a_{S0}, b_{S0}, L_{DoLP}, L_{AoLP}\). This fusion module is designed to compress the polarization information while minimizing interference from irrelevant color variations.
5.2 Network Architecture
The detection network adopts a YOLOv5-like framework but replaces the standard convolutional layers with more efficient types. In particular, I use partial convolution (PConv) as the core convolution operation. PConv applies convolution to only a fraction of the input channels, leaving the remaining channels unchanged. This drastically reduces the number of floating-point operations (FLOPs) and memory access. For a feature \(X \in \mathbb{R}^{C \times H \times W}\), PConv operates on the first \(m\) channels:
\[ Y = \mathrm{Concat}(\mathrm{Conv}(X_{1:m}), X_{m+1:C}) \]
The computational complexity ratio between PConv and standard convolution is:
\[ r = \frac{m \cdot n}{n(C-m) + C \cdot m} \]
where \(n\) is the number of output channels for the convolved part. By selecting \(m < C\), significant speedups can be achieved without much accuracy loss.
For the feature extraction and fusion blocks, I design a new module named C2P, which combines PConv and depthwise separable convolution (DWConv). The C2P module first uses a pointwise convolution to adjust the channel dimension, then splits the features into two branches. One branch performs a depthwise convolution followed by a pointwise convolution, while the other branch applies PConv. The outputs are concatenated and fused via another pointwise convolution. Compared with the C3 module used in YOLOv5, C2P reduces the parameter count and maintains or improves the feature extraction capability. The overall network structure is as follows: five-channel polarization input → PConv → C2P blocks → detection head (similar to YOLOv5). The architecture is visualized in Figure 2 (not shown here).
5.3 Self-Supervised Training with Pseudo-Labels
To handle scenarios where labeled data are scarce, I implement a self-supervised training strategy using pseudo-labels generated by segmentation algorithms. First, a K-Means clustering algorithm is applied to the polarization images to produce a coarse segmentation of the solar panel and background. Then, based on the assumption that defects are outliers within the panel area, an NCut segmentation algorithm is used to refine the defect regions. These refined masks serve as pseudo-labels for training the detection network. The loss function for detection is a combination of box regression loss and mask consistency loss. The box regression loss uses the complete IoU (CIoU) metric, and the mask consistency loss measures the overlap between the pseudo-label mask and the detected bounding box region. This approach enables the network to learn from unlabeled data and achieve good performance even with only a few training samples.
6. Experiments and Results
6.1 Experimental Setup
All experiments were conducted on a computer with an Intel Core i7-12700 CPU, an NVIDIA GeForce RTX 4070 GPU (8GB VRAM), and 16GB of RAM. The software environment was Python 3.11.5, CUDA 12.1, and PyTorch 2.1.1. For super-resolution experiments, four public polarization datasets (Miki, DOFP30, Simeng, Polar-SR) were used for transfer learning, and a custom polarization dataset was used for validation. For detection experiments, a custom dataset of 400 polarization images (300×300 pixels) was collected from a solar farm in Gao’an, Jiangxi. The dataset contained 50 defective and 50 non-defective panel images; data augmentation expanded this to 400 images.
6.2 Super-Resolution Ablation Studies
Table 1 shows the results of ablation experiments on the network architecture. The degradation-aware convolution (DAC) improves the PSNR by about 2 dB compared to normal convolution (NC) with only a slight increase in runtime. Adding an attention mechanism improves PSNR further but significantly slows down the network, making it unsuitable for real-time applications. The proposed model (C) achieves a good balance between performance and speed.
| Model | Structure | PSNR (dB) | Runtime (ms) |
|---|---|---|---|
| A | NC (3×3) | 31.19 | 3.3 |
| B | NC + attention | 32.85 | 45 |
| C (Ours) | DAC | 33.07 | 4.1 |
| D | DAC + attention | 34.53 | 63 |
| E | 3 DACs | 33.16 | 6.7 |
| F | 4 DACs | 33.20 | 9.4 |
| G | 1 residual group | 29.76 | 1.8 |
| H | 3 residual groups | 33.14 | 8.7 |
| I | 4 residual groups | 33.21 | 11.2 |
Table 2 presents the effect of different loss functions on the super-resolution output. The combination of L1, DoLP loss, and AoLP SSIM loss yields the best polarization preservation, as measured by the SSIM of the computed DoLP and AoLP images.
| Model | Loss | PSNR (Output) | DoLP-SSIM | AoLP-SSIM |
|---|---|---|---|---|
| J | L2 | 31.23 | 0.2650 | 0.0748 |
| K | L1 | 32.40 | 0.3808 | 0.0920 |
| L | L1 + L_P-dolp | 32.16 | 0.4916 | 0.1352 |
| M | L1 + L_P-aolp | 30.85 | 0.4135 | 0.3007 |
| N (Ours) | L1 + L_P-dolp + L_P-aolp | 32.31 | 0.5422 | 0.3229 |
6.3 Comparison with State-of-the-Art Super-Resolution Methods
Table 3 compares the proposed ZPSR method with Bicubic, Bicubic++, DASR, and ZSSR on mixed polarization datasets at scales ×2, ×3, and ×4 with different blur kernel sizes. The proposed method achieves competitive or superior PSNR/SSIM values while maintaining very low inference time (~3.7 ms) and a compact model size (0.23M parameters). In particular, ZPSR outperforms all other methods under strong degradation (Kernel=2.4), demonstrating its robustness.
| Method | Scale | Params | Time (ms) | Kernel=0 | Kernel=0.8 | Kernel=1.6 | Kernel=2.4 |
|---|---|---|---|---|---|---|---|
| Bicubic | ×2 | – | 0.6 | 34.22/0.9594 | 30.55/0.8952 | 26.07/0.8253 | 23.08/0.7614 |
| ×3 | – | 0.6 | 30.17/0.8971 | 26.02/0.8317 | 22.46/0.7483 | 20.18/0.6803 | |
| ×4 | – | 0.6 | 27.44/0.8523 | 24.43/0.7967 | 20.65/0.7216 | 18.71/0.6365 | |
| Bicubic++ | ×2 | 30K | 1.2 | 35.16/0.9762 | 31.24/0.9038 | 26.31/0.8453 | 23.43/0.7948 |
| ×3 | 30K | 1.2 | 32.06/0.9025 | 27.48/0.8498 | 22.78/0.7555 | 20.28/0.6832 | |
| ×4 | 30K | 1.2 | 31.58/0.8998 | 25.03/0.8059 | 20.75/0.6970 | 18.74/0.6367 | |
| DASR | ×2 | 5.8M | 92.5 | 38.98/0.9835 | 35.59/0.9638 | 34.62/0.9533 | 33.75/0.9407 |
| ×3 | 5.8M | 92.5 | 36.82/0.9731 | 35.03/0.9581 | 34.07/0.9456 | 33.35/0.9345 | |
| ×4 | 5.8M | 92.5 | 34.71/0.9544 | 33.79/0.9462 | 32.37/0.9200 | 31.67/0.9174 | |
| ZSSR | ×2 | 0.22M | – | 35.41/0.9621 | 32.02/0.9151 | 29.33/0.8794 | 27.04/0.8437 |
| ×3 | 0.22M | – | 33.79/0.9413 | 30.98/0.9010 | 28.41/0.8652 | 26.32/0.8313 | |
| ×4 | 0.22M | – | 32.06/0.9301 | 30.30/0.8919 | 27.84/0.8565 | 25.89/0.8232 | |
| ZPSR (Ours) | ×2 | 0.23M | 3.7 | 38.43/0.9814 | 35.41/0.9621 | 34.20/0.9475 | 33.42/0.9356 |
| ×3 | 0.23M | 3.7 | 36.52/0.9711 | 34.71/0.9544 | 33.79/0.9413 | 33.06/0.9301 | |
| ×4 | 0.23M | 3.7 | 34.19/0.9518 | 33.40/0.9410 | 31.98/0.9219 | 30.64/0.8966 |
The visual comparisons of reconstructed \(S_0\), DoLP, and AoLP images confirm that the proposed method accurately restores texture details and preserves polarization information better than the baseline methods. In particular, the AoLP images reconstructed by ZPSR have much higher SSIM values than those from other methods.
6.4 Object Detection Ablation Studies
Table 4 shows the ablation results for the detection network. The proposed PolarFusion module combined with the C2P block achieves the highest AP (91.6%) and fastest inference speed (51 FPS) among all tested configurations. The C3 and FasterBlock modules are less effective for polarization features, and the FOCUS module does not properly balance the different polarization channels.
| Model | Structure | Params (M) | GFLOPs | FPS | AP |
|---|---|---|---|---|---|
| O | CNN+C3 | 1.9 | 1.9 | 16 | 86.8 |
| P | CNN+FasterBlock | 3.9 | 0.8 | 25 | 84.7 |
| Q | CNN+C2P | 3.7 | 1.1 | 32 | 89.4 |
| R | FOCUS+C3 | 1.9 | 1.9 | 18 | 88.0 |
| S | FOCUS+FasterBlock | 4.0 | 0.8 | 23 | 85.1 |
| T | FOCUS+C2P | 3.7 | 1.1 | 33 | 90.1 |
| U | PolarFusion+C3 | 1.9 | 1.9 | 21 | 89.1 |
| V | PolarFusion+FasterBlock | 4.0 | 0.8 | 26 | 85.5 |
| W (Ours) | PolarFusion+C2P | 3.7 | 1.1 | 51 | 91.6 |
6.5 Comparison with Popular Detection Models
Table 5 compares the proposed detector with Faster R-CNN, SSD300, YOLOv5n, YOLOv8n, YOLOv11n, and YOLOv5s on the full 400-image dataset. The proposed model achieves the highest AP (92.5%) with the lowest GFLOPs (1.1) and a very fast inference time (20 ms). It is especially effective in small-sample settings because of its self-supervised learning capability.
| Model | Params (M) | GFLOPs | AP | Run Time (ms) |
|---|---|---|---|---|
| Faster-R-CNN | 41.5 | 207 | 77.5 | 381 |
| SSD300 | 26.3 | 62 | 52.5 | 80 |
| YOLOv5n | 1.93 | 4.5 | 60.0 | 45 |
| YOLOv8n | 3.16 | 8.7 | 67.5 | 27 |
| YOLOv11n | 2.59 | 6.4 | 70.0 | 25 |
| YOLOv5s | 7.24 | 16.5 | 80.0 | 63 |
| Ours | 3.66 | 1.1 | 92.5 | 20 |
Visual comparisons with YOLOv5s on training sets of 100, 200, and 400 images demonstrate that the proposed method produces fewer false positives on flawless panels and better localizes large defective areas. The polarization features enable more robust detection even when the visual contrast is low.
7. Conclusion
In this work, I have presented a comprehensive framework for solar panel defect detection using polarization imaging. The main contributions are twofold. First, a degradation-aware polarization super-resolution method was developed to enhance the resolution of low-quality polarization images while preserving the polarization signatures that are critical for defect detection. The combination of a degradation-aware convolution, a polarization-specific loss function, and a two-stage zero-shot training strategy allows the model to achieve high reconstruction quality with very few training samples and a small computational footprint. Second, a lightweight object detection network was designed to fuse polarization information efficiently. The use of partial convolution and a novel C2P module results in a highly efficient detector that outperforms standard YOLO variants on a small custom dataset of polarization images. The self-supervised training scheme further enables the network to operate effectively in zero-shot scenarios, which is highly practical for real-world PV inspections where labeled data are rarely available.
In the future, I plan to explore the integration of infrared and EL imaging with polarization data through multi-modal fusion. Additionally, I aim to test the proposed methods on larger-scale solar farms and to investigate the robustness of the approach under varying weather conditions and illumination angles. Ultimately, the goal is to develop a fully automated, real-time inspection system that can be deployed on UAVs for continuous monitoring of photovoltaic plants.
