Convolution Based Spectral Partitioning Architecture for Hyperspectral Image Classification
Ringo S. W. Chu Ho-Cheung Ng Xiwei Wang Wayne Luk



Self-assembly of core-corona particles confined in a circular box
    Erik R. Fonseca and Carlos I. MendozaE-mail: cmendoza@materiales.unam.mx


    December 30, 2023
==============================================================================







Hyperspectral images (HSIs) can distinguish materials with high number of spectral bands, which is widely adopted in remote sensing applications and benefits in high accuracy land cover classifications. However, HSIs processing are tangled with the problem of high dimensionality and limited amount of labelled data. To address these challenges, this paper proposes a deep learning architecture using three dimensional convolutional neural networks with spectral partitioning to perform effective feature extraction. We conduct experiments using Indian Pines and Salinas scenes acquired by NASA Airborne Visible/Infra-Red Imaging Spectrometer. In comparison to prior results, our architecture shows competitive performance for classification results over current methods.footnoteWork performed at Imperial College London.




Hyperspectral Imagery, Convolutional Neural Network, Landcover Classification, Remote Sensing, Pattern Recognition 





§ INTRODUCTION

Hyperspectral images (HSIs) contain spectrum information for each pixel in the image of a scene, where each spatial pixel is a spectral vector composed of hundreds of contiguous narrow electromagnetic bands reflected or radiated by the detecting materials. HSI classification involves assigning a categorical class label to each unlabelled pixel based on the corresponding spectral and/or spatial feature <cit.>. With the advent of new hyperspectral remote sensing instruments and their increased temporal resolutions, the amount of high dimensional hyperspectral data is increasing. This results in new practical and theoretical problems due to the high dimensionality where traditional algorithms developed for multi-spectral imagery may no longer be suitable.

Convolutional neural networks (ConvNets/CNN) have shown potential in hyperspectral imagery classification as they use extensive numbers of parameters for feature learning <cit.>. In spite of the potentiality, high variability spectral signature properties of HSIs complicates the corresponding CNN designs; Time consuming and expensive manual labelling of HSIs has limited the number of training samples. These problems have obstructed and reduced the predictive power of CNN models.




Existing CNN models for HSI classification are often based on one dimensional or two dimensional CNN architectures. The former set of models are adapted for spectral feature learning <cit.>, while the later sets of models explore local spatial feature learning at each band <cit.>. These models show deficiency in performing feature extraction on multiple dimensions. 
Three dimensional CNN is exploited by researchers <cit.> and yet the network structure is often too sophisticated for deployment on real-time embedded devices such as CPU, FPGA or even GPU.
Traditional machine learning methods including Logistic Regression <cit.> and Kernel-based SVM <cit.> are proposed by researchers but it has been reported that classification accuracies is inferior and less favourable.





In this paper, we propose a novel 3D CNN architecture that tackles these challenges by 
 [label=*)]

  * spectral partitioning within the network to process pixels in each dimension, and by 

  * efficient spatial-spectral feature extraction  
 
Essentially, the proposed model first performs a spatial transformation via 2D convolution. The transformed image is partitioned on the spectral level and split into segments for efficient processing. 3D convolution is then applied to each segment. Finally, convoluted segments are concatenated and summarized with fully-connected layers with dropout as regularization to prevent over-fitting. 
Our architecture is shown to be robust and stable where the model is more accurate compared to BASS Net <cit.> and 2D-CNN <cit.>. We also demonstrate and train our architecture using as minimal training samples as possible, which in our case, 20% and 10% of labelled data from Indian Pines and Salinas dataset respectively. All source code can be found in section III.




§ PROPOSED METHODOLOGY






Hyperspectral images are typically represented as a data cube in dimension (x, y, λ), where x and y represent spatial dimensions with space information of pixels, and λ represents the third dimension with a spectral vector that can be used for distinguishing different materials and objects. To improve the classification accuracy and reduce the number of training samples, we propose the use of 3D CNN to perform spatial-spectral feature extraction with spectral partitioning over (x, y, λ) dimensions.



 §.§ Three Dimensional Convolutional Neural Networks

As mentioned, 3D CNN is capable of capturing features from both spatial and spectral dimensions when compared to traditional 1D and 2D CNNs. The value of a neuron at a given position (x,y,z) is denoted as:

    v^xyz_ij=σ(∑_m∑_h=1^H_i-1∑_w=1^W_i-1∑_r=1^R_i-1k^hwr_ijmv^(x+h)(y+w)(z+r)_(i-1)m+b_ij)

where i indicates the current layer, m indexes the feature map in the (i-1)th layer connected to the current feature map. H_i and W_i represent the height and width of the kernel, R_i represents the depth of the kernel towards the spectral dimension, k^hwr_ijm is the value of (x,y,z) on feature m, b_ij is the bias term of feature j on layer i and σ indicates the activation function.  




 §.§ Proposed Architecture



Our architecture takes an input of a small image cube from  hyperspectral data. The small cube is taken from 24 neighbours of its central pixel with patch size =5, where the central pixel is required for classification (Fig. <ref>). In other words, the input image cube has size 5× 5 × N_b, where N_b is the spectral size of the hyperspectral image. From our prior experiment, a patch size =5 contributes to the finest result in classification when compared to patch size =3 or 7.





This cubic data is then fed to the proposed CNN architecture as briefly illustrated in fig:network. The architecture begins with one 2D convolution layer using a 1 × 1 filters for linear transformation of each input spectral band. 
Spectral partitioning is then performed on the convoluted image, where the image is split into two segments with a non-overlapping spectral axis. Each segments are followed by a stack of four 3D convolutions sequentially with different kernel size. Operations of each segments are identical, kernel weights and biases of the stack of convolutions are shared across the segments to reduce total number of parameters.




In the first 3D CNN layer, it has one convolution filter of size 2×2×9 with sub-sampling stride 2 on λ. Consider the data cube contains redundant information, the purpose of this layer is to learn the low-level features and reduce the high-dimensionality. The second layer has three filters with size 3×3×5 and stride 1. This layer is designed for learning local mid-level features of  HSI. The third layer has five 3×3×5 kernels with stride 2 to further reduce the dimensionality on the spectral level. The final 3D-CNN layer consists of 10 1×1×3 kernels with stride 1, which aims at extracting high-level spectral features.

The convoluted segments are concatenated and fed to two Fully-Connected layers (FC); The first one has 120 neuron units and the second one has number of units equal to the number of categorical classes of the dataset.
Note that Rectify Linear Units (ReLu) are employed as activation functions on every layer except the final layer, where Softmax function is applied for classification. The final label for the pixel is given by the max from the Softmax function.

















 §.§ Optimisation, Learning, Training and Inference


With limited dataset provided in the training stage, over-fitting can become a serious problem where classification performance is good on the training set, but low on the testing set. Therefore, the training is regularised by applying dropout at fully-connected layer, with ratio set to p=0.5.

We carry out the training by minimizing the Cross-Entropy object function using Adaptive Moment Optimization gradient descent (Generally known as Adam). The adam is set to have initial learning rate 5×10^-4. The batch size is set to have 50 for each training iteration and require 650 epochs for convergence.  

The segments described in sssec:num1 are placed sequentially during the training stages; During the inference stage, segments can be adjusted to align in sequential, parallel or pipeline, and can be customized with regards to runtime constraints. In this paper, we demonstrate our model by placing segments in parallel.


















§ EXPERIMENTS & RESULTS




 §.§ Dataset and Preprocessing

The Indian Pines Scene and Salinas Scene datasets, which were acquired by Airborne Visible/Infrared Imaging Spectrometer (AVIRIS) over Northwestern Indiana and Salinas-Valley, California, are used in this experiment. Indian Pines scene provides 224 spectral channels in the wavelength ranges from 0.4 to 2.5μm. 200 channels remain after discarding the water absorption regions. We remove some classes in this dataset due to insufficient samples. Similar to Indians Pines scene, Salinas scene also consists of 224 spectral bands. 20 channels are discarded for correction and only 204 channels remain for the experiment. 

We randomly select 20%, 5% and 75% from each class as our training data, validation data and testing data respectively for Indian Pines dataset. Similarly, we randomly select 10%, 5% and 85% as the training, validation and testing set for Salinas dataset. All pixel values are calibrated through normalization via the following transformation z_i = x_i-min(x)/max(x)-min(x).

 

where x=(x_1...x_n) represents all pixel values of an HSI. 



 §.§ Classification Result

We implement our model using TensorFlow, and Scikit-learn and it is trained on a single NVIDIA GeForce GTX 1080Ti GPU. Source code can be viewed on Github as an open source project [ https://github.com/custom-computing-ic/SpecPatConv3D-Network].




We compare the performance of our approach to two other recent techniques: BASS Net <cit.> and 2D-CNN <cit.> to obtain the overall accuracy (OA) and the average per-class accuracy (AA) using the same dataset. Accuracy values are calculated based on the average of five classification runs.
tab1:ip and tab1:salinas summarise the results on OA and AA for different approaches  on Indian Pines and Salinas datasets.


Our model obtains the best results compared to other models, with 98.0% and 98.7% in overall accuracy on Indian Pines scene and Salinas scene respectively. This demonstrates the superiority of the proposed 3D CNN for hyperspectral classification, where the corresponding classification maps of the proposed model clearly distinguish the boundaries between different classes (fig:result1 and fig:result2).

Finally, the changes in accuracy against the epochs for the training, validation and testing data is shown in fig:acc for both datasets. Intuitively, the network converges after 100 epochs and reaches to an optimal point with a stable rate after 600 epochs for the training data. After the convergence, the testing and validation accuracy are closed to training accuracy. This demonstrates the robustness of our model where the over-fitting problem is diminished and the features on HSI are extracted and learned by the proposed model.

















































































§ CONCLUSION

This paper proposes an architecture for HSI classification, with spectral partitioning to reduce dimensionality and spatial-spectral features extracted by 3D CNN. Experiments show that our method outperforms comparable methods regarding classification accuracy while using a fewer amount of training data.

Currently, the proposed architecture consists of multiple layers of 3D CNN, which is still very computationally intensive. Future work will include complexity reduction of the model. For example, extending the network with other types of layers such as depth-wise convolution and migrating the design onto embedded devices such as FPGA to perform real-time processing.





§ ACKNOWLEDGEMEMT

The authors are grateful for the support by Intel, United Kingdom EPSRC (grant numbers EP/I012036/1, EP/L00058X/1, EP/L016796/1, EP/N031768/1), European Union Horizon 2020 Research and the Lee Family Scholarship.





IEEEbib




