Enhancing Solar Panel Extraction from High-Resolution Remote Sensing Images via Hybrid Dilated Convolution and Attention Mechanisms

In the context of escalating global environmental challenges, the transition toward clean, low-carbon, and efficient energy systems has become a shared objective for the energy industry worldwide. Traditional fossil fuels have long dominated electricity generation, but the urgency to mitigate climate change has driven ambitious targets such as China’s commitment to peak carbon emissions by 2030 and achieve carbon neutrality by 2060. Solar photovoltaic (PV) technology, with its sustainability, non-polluting nature, and cost-effectiveness, has emerged as one of the fastest-growing renewable energy sources. According to the National Energy Administration of China, the total installed capacity of solar PV in China reached 253 GW by the end of 2020. However, the rapid expansion of solar panels introduces significant maintenance and management challenges. Manual inspection and maintenance of solar panels are labor-intensive and expensive. Therefore, leveraging deep learning methods on remote sensing imagery to automatically extract solar panels offers a low-cost solution for providing essential data support for the operation and maintenance of PV power generation scenarios.

In this study, we focus on the precise segmentation and extraction of solar panels from high-resolution remote sensing images using an improved DeepLabV3+ semantic segmentation model. The main innovations of our work are twofold: (1) to address the difficulty of finely extracting solar panel information from remote sensing images, we propose a Hybrid Dilated Convolution Spatial Pyramid Pooling (HASPP) module; (2) to mitigate the loss of edge details during solar panel extraction, we introduce an attention mechanism (CBAM) that sensitively captures small-domain features, thereby enhancing the model’s segmentation capability. Our experiments are conducted on the multi-resolution photovoltaic dataset published by the University of the Chinese Academy of Sciences in 2021. The results demonstrate that our proposed model achieves Intersection over Union (IoU) scores of 92.54%, 79.91%, and 76.27% on distributed PV datasets with spatial resolutions of 0.1 m, 0.3 m, and 0.8 m, respectively. On ground-mounted PV datasets at 0.3 m and 0.8 m resolutions, the IoU reaches 94.27% and 87.24%, outperforming the original DeepLabV3+ by 0.13 to 2.02 percentage points across three different resolutions and backgrounds. Moreover, on roof-top distributed PV datasets at 0.1 m, 0.3 m, and 0.8 m resolutions, our method improves IoU by 0.64 to 20.51 percentage points compared to classic semantic segmentation models such as U-Net, PSPNet, and DeepLabV3+. These experiments validate the effectiveness of our approach.




Introduction

Accurate and efficient extraction of solar panels from high-resolution remote sensing imagery is critical for inventory management, maintenance planning, and energy yield assessment. Traditional methods based on low-level features such as grayscale and texture often suffer from edge information loss and low accuracy, especially in complex backgrounds. With the advent of deep learning, semantic segmentation networks have revolutionized image analysis by enabling end-to-end learning of high-level semantic features. Fully Convolutional Networks (FCN) were the first to replace fully connected layers with convolutional layers, outputting pixel-wise heatmaps. Subsequently, architectures like U-Net, PSPNet, and DeepLabV3+ have advanced the field significantly. U-Net employs an encoder-decoder structure with skip connections to combine high-resolution features with upsampled outputs. PSPNet utilizes spatial pyramid pooling to fuse multi-scale contextual information. DeepLabV3+ adopts atrous convolution to maintain high-resolution feature maps while expanding the receptive field, achieving superior prediction accuracy. Deep learning methods are particularly suitable for remote sensing imagery due to their capability to automatically extract intricate semantic features.

Recent research has explored various deep learning approaches for solar panel segmentation. Zhang et al. combined machine learning with visual interpretation using pixel-based random forest on 30 m resolution satellite images to classify large-scale PV plants. Jie et al. proposed a multi-layer feature fusion and edge detection method for distributed PV identification, though it suffers from high computational cost and potential feature loss. Sizkouhi and Perez-Gonzalez employed FCN and U-Net for edge detection of large-scale PV plants using high-resolution aerial imagery. Ge et al. integrated scene classification (EfficientNet-B5) with semantic segmentation (U2-Net) for extracting centralized PV in northwestern provinces. However, these methods are primarily designed for large centralized PV installations and are less effective for distributed solar panels, which are prevalent in urban and suburban environments. To address the challenges of feature encoding loss and edge information extraction in high-resolution remote sensing images, we propose an improved DeepLabV3+ framework that incorporates a Hybrid Dilated Convolution Spatial Pyramid Pooling (HASPP) module and a Convolutional Block Attention Module (CBAM). The HASPP module employs a series of dilated convolutions with varying rates to ensure full coverage of receptive fields without grid artifacts, thereby improving local feature extraction. The CBAM attention mechanism, which sequentially applies channel and spatial attention, enables the decoder to focus on salient features, enhancing segmentation precision. We name our model DeepLab-HDCA (DeepLab-Hybrid Dilated Convolution and Attention).

Proposed Method

The baseline semantic segmentation framework is DeepLabV3+, which consists of an encoder, an Atrous Spatial Pyramid Pooling (ASPP) module, a feature pyramid network (FPN) component, feature fusion and upsampling layers, and a final classifier. The encoder (based on ResNet or Xception) extracts hierarchical features. The ASPP module employs parallel atrous convolution branches with different dilation rates to capture multi-scale contextual information. The decoder refines the segmentation by fusing high-level features from ASPP with low-level features from the encoder, followed by upsampling. Our modifications focus on two aspects: (1) replacing the standard ASPP with a Hybrid Dilated Convolution Spatial Pyramid Pooling (HASPP) module to mitigate the grid effect of dilated convolutions, and (2) inserting a CBAM attention module into the decoder to improve feature modeling.

Hybrid Dilated Convolution Spatial Pyramid Pooling (HASPP)

Standard dilated convolution introduces zeros between kernel elements, which expands the receptive field without increasing parameters. However, when dilation rates are large or when multiple dilated convolutions are stacked with the same rate, a grid effect occurs: pixels used for computation are sparsely sampled, leading to loss of local continuity and detail. The hybrid dilated convolution (HDC) design alleviates this by using a series of convolutions with different dilation rates such that the combined receptive field covers a contiguous region without gaps. In our HASPP module, we adopt three parallel branches of 3×3 dilated convolutions with dilation rates of 1×3, 1×3×5, and 1×3×9. These rates are carefully chosen so that the union of their receptive fields forms a complete square without any missing pixels. This setup allows the module to extract information at multiple scales while preserving local details, which is especially beneficial for small solar panels and edge regions.

The operation of a single dilated convolution can be described as follows: given an input feature map $$X$$ and a convolutional kernel $$K$$ of size $$k \times k$$ with dilation rate $$r$$, the output $$Y$$ at pixel $$(i,j)$$ is:

$$Y(i,j) = \sum_{u=0}^{k-1} \sum_{v=0}^{k-1} K(u,v) \cdot X(i + r\cdot u, j + r\cdot v)$$

In the HASPP module, we apply three such convolutions in parallel (or sequentially in some implementations) with rates $$r_1 = 3$$, $$r_2 = 5$$, and $$r_3 = 9$$, after an initial 1×1 convolution to reduce channels. The outputs are concatenated and passed through another 1×1 convolution to produce the final multi-scale feature map. Compared to the standard ASPP (which uses rates 6, 12, 18), our HASPP achieves better local continuity and reduces the grid effect.

Convolutional Block Attention Module (CBAM)

CBAM sequentially applies channel attention and spatial attention to adaptively refine feature maps. Given an input feature map $$F \in \mathbb{R}^{C \times H \times W}$$, the channel attention module first computes a channel-wise weight vector $$M_c \in \mathbb{R}^{C \times 1 \times 1}$$ using global average pooling and global max pooling followed by a shared multi-layer perceptron (MLP). The channel-refined feature map is computed as:

$$F’ = F \otimes M_c$$

where $$\otimes$$ denotes element-wise multiplication. Next, the spatial attention module takes $$F’$$ and applies average pooling and max pooling along the channel axis, concatenates them, and passes through a 7×7 convolution to generate a spatial weight map $$M_s \in \mathbb{R}^{1 \times H \times W}$$. The final output is:

$$F” = F’ \otimes M_s$$

In our decoder, we insert the CBAM module after concatenating the upsampled high-level features with the corresponding low-level features from the encoder. This allows the network to emphasize important spatial regions (e.g., solar panel boundaries) and suppress irrelevant background noise. The CBAM module has a small number of parameters (about 0.6% of the baseline) yet provides a noticeable improvement in segmentation accuracy.

Experimental Setup

Dataset

We use the multi-resolution photovoltaic dataset released by Jiang et al. in 2021. The dataset comprises 3,716 high-resolution remote sensing images with spatial resolutions of 0.1 m (PV01), 0.3 m (PV03), and 0.8 m (PV08). All images were captured in Jiangsu Province, China. PV01 contains 645 UAV images with backgrounds of brick houses, concrete houses, and steel-tile houses. PV03 includes 2,308 aerial images with backgrounds such as grassland, farmland, shrubland, saline-alkali land, water surfaces, and rooftops. PV08 contains 763 high-resolution satellite images with backgrounds of ground and rooftops. We split each resolution subset into 60% training and 40% validation. To augment data, we apply random rotations and horizontal/vertical flips. All images are resized to 256×256 pixels for training.

Implementation Details

All experiments are conducted on a Windows 11 platform with an i9-11900H CPU and an NVIDIA RTX 3070 GPU, using PyTorch 1.9.0. The input image size is 256×256. We use a learning rate of 5×10⁻⁴ and batch size of 16. We employ the Adam optimizer with weight decay (regularization) set to 1×10⁻⁴ after a sensitivity analysis (see below). The training is performed for 100 epochs. We report the average of five independent runs for each configuration.

Evaluation Metrics

We adopt three standard semantic segmentation metrics: Intersection over Union (IoU), Precision, and Recall. Let TP be the number of correctly predicted solar panel pixels, FP the number of background pixels incorrectly predicted as solar panels, and FN the number of solar panel pixels incorrectly predicted as background. Then:

$$\text{IoU} = \frac{TP}{TP + FP + FN}$$

$$\text{Precision} = \frac{TP}{TP + FP}$$

$$\text{Recall} = \frac{TP}{TP + FN}$$

IoU is the primary metric as it measures the overlap between predicted and ground truth regions.

Results and Discussion

Results on Different Resolutions

We compare our proposed DeepLab-HDCA (with HASPP+CBAM) against the original DeepLabV3+ (with standard ASPP) across three spatial resolutions. Table 1 summarizes the results.

Table 1: Performance comparison on different resolution datasets
Resolution Method IoU (%) Precision (%) Recall (%)
0.1 m (PV01) DeepLabV3+ 91.90 95.75 95.81
DeepLab-HDCA 92.54 96.43 95.82
0.3 m (PV03) DeepLabV3+ 77.89 87.38 87.76
DeepLab-HDCA 79.91 87.03 90.75
0.8 m (PV08) DeepLabV3+ 74.85 85.88 85.78
DeepLab-HDCA 76.27 85.65 87.44

The proposed method achieves IoU improvements of 0.64, 2.02, and 1.42 percentage points for 0.1 m, 0.3 m, and 0.8 m resolutions, respectively. Note that at 0.3 m and 0.8 m, the recall is significantly boosted, indicating better detection of solar panel pixels. The improvement is most pronounced at lower resolutions where solar panels appear smaller and more densely packed, making edge preservation critical.

Results on Different Backgrounds

We further analyze the performance on different background types within the same resolution. Table 2 shows results for 0.1 m rooftop backgrounds (brick, concrete, steel-tile roofs).

Table 2: Performance on 0.1 m rooftop backgrounds
Background Method IoU (%) Precision (%) Recall (%)
Brick roof DeepLabV3+ 91.90 95.75 95.81
DeepLab-HDCA 92.54 96.43 95.82
Concrete roof DeepLabV3+ 93.96 96.71 97.07
DeepLab-HDCA 94.15 96.63 97.35
Steel-tile roof DeepLabV3+ 96.51 98.58 97.87
DeepLab-HDCA 96.46 98.29 98.10

The improvement is most significant on brick roof backgrounds (IoU +0.64), where solar panels are small and isolated. For steel-tile roofs, the baseline already achieves high IoU (96.51%), so the gain is marginal. Table 3 and Table 4 present results for 0.3 m and 0.8 m resolutions on various backgrounds.

Table 3: Performance on 0.3 m resolution by background
Background Method IoU (%) Precision (%) Recall (%)
Rooftop DeepLabV3+ 77.89 87.38 87.76
DeepLab-HDCA 79.91 87.03 90.75
Farmland DeepLabV3+ 94.14 96.48 97.49
DeepLab-HDCA 94.27 96.52 97.58
Water surface DeepLabV3+ 93.04 95.18 97.64
DeepLab-HDCA 93.42 94.75 98.52
Saline-alkali land DeepLabV3+ 95.40 97.63 97.67
DeepLab-HDCA 95.69 97.85 97.74
Grassland DeepLabV3+ 89.49 93.60 95.32
DeepLab-HDCA 90.31 93.87 95.97
Shrubland DeepLabV3+ 92.97 95.26 97.49
DeepLab-HDCA 93.65 95.59 97.88
Table 4: Performance on 0.8 m resolution by background
Background Method IoU (%) Precision (%) Recall (%)
Rooftop DeepLabV3+ 74.85 85.88 85.78
DeepLab-HDCA 76.27 85.65 87.44
Ground DeepLabV3+ 86.59 89.90 95.91
DeepLab-HDCA 87.24 91.16 95.31

These results confirm that our method consistently outperforms the baseline across diverse backgrounds, with the largest gains observed on challenging rooftop scenarios where solar panels are often small, irregularly shaped, and surrounded by complex textures.

Ablation Study

We conduct ablation experiments to isolate the contributions of the HASPP module and the CBAM module. Table 5 reports the IoU, Precision, Recall, and training time per epoch for each configuration.

Table 5: Ablation study results
Dataset Method IoU (%) Precision (%) Recall (%) Time (s/epoch)
PV01 rooftop ASPP (baseline) 91.90 95.75 95.81 406
ASPP+CBAM 92.27 96.02 95.95 458
HASPP 92.30 96.05 95.95 432
HASPP+CBAM 92.54 96.43 95.82 483
PV03 rooftop ASPP 77.89 87.38 87.76 1,316
ASPP+CBAM 78.31 86.55 89.44 1,409
HASPP 79.08 86.83 89.87 1,407
HASPP+CBAM 79.91 87.03 90.75 1,506
PV03 ground ASPP 94.14 96.48 97.49 5,057
ASPP+CBAM 94.22 96.73 97.33 5,328
HASPP 94.41 96.66 97.51 5,090
HASPP+CBAM 94.27 96.52 97.58 5,479
PV08 rooftop ASPP 74.85 85.88 85.78 1,472
ASPP+CBAM 74.94 85.06 86.34 1,569
HASPP 75.80 85.08 87.43 1,557
HASPP+CBAM 76.27 85.65 87.44 1,599
PV08 ground ASPP 86.59 89.90 95.91 3,918
ASPP+CBAM 86.88 90.95 95.11 3,953
HASPP 86.96 91.07 94.86 4,161
HASPP+CBAM 87.24 91.16 95.31 4,222

The ablation results demonstrate that both HASPP and CBAM contribute positively, with HASPP generally yielding a larger improvement in IoU. The combination achieves the best performance. The computational overhead is modest; the complete model requires about 19% more training time compared to the baseline.

Comparison with Other Networks

We compare our DeepLab-HDCA with U-Net, PSPNet, and the original DeepLabV3+ on the rooftop subsets of all three resolutions. Table 6 presents the results.

Table 6: Comparison with state-of-the-art networks on rooftop datasets
Resolution Method IoU (%) Precision (%) Recall (%)
0.1 m (PV01 rooftop) U-Net 88.64 94.77 93.20
PSPNet 79.97 87.89 89.87
DeepLabV3+ 91.90 95.75 95.81
DeepLab-HDCA 92.54 96.43 95.82
0.3 m (PV03 rooftop) U-Net 77.07 87.51 86.60
PSPNet 69.50 82.69 81.33
DeepLabV3+ 77.89 87.38 87.76
DeepLab-HDCA 79.91 87.03 90.75
0.8 m (PV08 rooftop) U-Net 55.76 68.52 74.96
PSPNet 53.53 74.96 65.19
DeepLabV3+ 74.85 85.88 85.78
DeepLab-HDCA 76.27 85.65 87.44

Our model consistently achieves the highest IoU across all resolutions, with significant margins over U-Net and PSPNet. DeepLabV3+ itself already outperforms U-Net and PSPNet, and our enhancements further push the state of the art. The improvement is especially pronounced at 0.8 m resolution, where the baseline DeepLabV3+ already outperforms U-Net by 19 percentage points, and our method adds another 1.42 points. The recall gains are also substantial, indicating that our method recovers more solar panel pixels that are otherwise missed.

Parameter Sensitivity Analysis

The weight decay (λ) in the Adam optimizer is a crucial hyperparameter for regularization. We evaluate the effect of different weight decay values on the three datasets (PV01, PV03, PV08) using the full model. The loss function with L2 regularization is:

$$C = C_0 + \frac{\lambda}{2n} \sum_{\omega} \omega^2$$

where $$C_0$$ is the original cross-entropy loss, $$n$$ is the number of training samples, and $$\omega$$ represents the model parameters. Figure 1 (not shown here) indicates that a weight decay of 1×10⁻⁴ yields the best trade-off between overfitting and underfitting. Too large a value (e.g., 0.05) degrades performance due to excessive parameter shrinkage, while too small a value (e.g., 0.00001) may lead to overfitting. We adopt λ = 1×10⁻⁴ for all experiments.

Conclusion

In this study, we have presented an improved DeepLabV3+ framework for extracting solar panels from high-resolution remote sensing images. By integrating a Hybrid Dilated Convolution Spatial Pyramid Pooling (HASPP) module, we effectively mitigate the grid effect of standard dilated convolutions, preserving local details and improving multi-scale feature extraction. Furthermore, the introduction of a Convolutional Block Attention Module (CBAM) in the decoder allows the network to focus on salient features, enhancing edge preservation and overall segmentation quality. Extensive experiments on three spatial resolutions and diverse backgrounds demonstrate that our DeepLab-HDCA model consistently outperforms the original DeepLabV3+, U-Net, and PSPNet in terms of IoU, precision, and recall. Ablation studies confirm the individual contributions of both modules. The proposed method is particularly effective for distributed rooftop solar panels, which are challenging due to their small size and complex surroundings. Our work provides a robust solution for automated solar panel inventory and maintenance, contributing to the efficient management of photovoltaic energy systems.

Scroll to Top