Entropy-Based Block Processing for Satellite Image Registration

Image registration is an important task in many computer vision applications such as fusion systems, 3D shape recovery and earth observation. Particularly, registering satellite images is challenging and time-consuming due to limited resources and large image size. In such scenario, state-of-the-art image registration methods such as scale-invariant feature transform (SIFT) may not be suitable due to high processing time. In this paper, we propose an algorithm based on block processing via entropy to register satellite images. The performance of the proposed method is evaluated using different real images. The comparative analysis shows that it not only reduces the processing time but also enhances the accuracy.


I. Introduction
Image registration is an important task in many computer vision applications such as fusion systems, 3D shape recovery and earth observation.Particularly, satellite image registration is a challenging task due to large image size and huge resources consumption.A satellite image can occupy over hundreds mega pixels in several spectral bands.Though the high resolution images provide more details, it is not efficient to process the whole image for registration due to the limited resources.Moreover, common global transformations provide limited performance on high resolution image.
Mikojclyk and Schmid [1] evaluated the performance of local descriptors and showed that scale-invariant feature transform (SIFT) provides the best performance with respect to other descriptors, which include: shape context [2], steerable filter [3], differential invariants [4], and spin image [5].In the literature, the SIFT [6,7] has been used to register spectral images.The major drawback of SIFT based method is its high time complexity.In order to reduce its processing time, few attempts have been made such as principal component analysis SIFT (PCA-SIFT) [8] and speeded up robust features (SURF) [9].These methods are able to speed up basic SFIT method , however, the accuracy is deteriorated [10].In addition, few approaches based on fast-matching techniques have been proposed to overcome these problems, especially to improve the speed.Theses include: 1) the nearest neighbor distance ratio (NNDR) [1], which uses the threshold for the ratio between the first and the second nearest neighbor descriptors; and 2) kd-tree [7,11], which is widely used to determine the feature index and hierarchical structure to find the nearest neighbor relationships and similarity query in a set of multi-dimensional points.These methods may provide gains in efficiency, however, they do not improve the speed for an exhaustive search of more than about a 10-dimensional space.Moreover, above mentioned feature-based methods and area-based methods [12] are not suitable for satellite image registration due to their expensive computation and requiring large memory.
In order to overcome these above mentioned problems, in this paper, we propose an algorithm based on SIFT and block processing to register satellite images.The performance of the proposed method is evaluated using different real images.The comparative analysis shows that it not only reduces the processing time but also enhances the accuracy.
To extract the local maxima in a DoG scale-space, 3 × 3 × 3 neighborhoods are computed for each point 3 × 3 window.The points having local maxima or minima are considered keypoints.In third step, keypoints are further refined by eliminating low contrast and edge responses.In forth step, Each candidate keypoint is assigned magnitude m(x, y) and orientation θ (x, y), such that In last step, the descriptors are constructed by computing histogram of the image gradient and orientations.For orientation invariance, the sampling grid for the histograms is rotated to the main orientation of each keypoint.The grid is a 4 × 4 array of 4 × 4 sample cells of 8-bin orientation histograms, which produces 128-dimensional feature vectors.To achieve the invariance of illumination changes, the descriptor is normalized with respect to the unit length.Gaussian weighted function is applied to give less importance to gradients farther from descriptor center and to avoid sudden changes.
SIFT based methods have problems such as high computational complexity.During the detection process, image size affects the processing time.SIFT uses the Gaussian convolution and sampling iteratively.
SIFT descriptor is a 128-dimensional vector.

III. Proposed Method
In case of satellite image registration, feature extraction using whole image is not suitable for registration.

Block Processing
To reduce the descriptor size for less computational time, we divide the image into small blocks as shown in Fig. 1.Mathematical representation of small image block IB(x, y) is as follows: where M is the size of image block IB(x, y).Table II shows the processing time for various sizes of the  Generally, a smaller block size reduces the processing time, though may not provide optimal results.In some cases, a smaller block size does not provide any control points due to the smaller overlapped area, whereas a larger block size consumes time.Therefore, it is important to determine the optimal block size.

Determination of Optimal Block Size
The accuracy of block-based processing based image registration methods depend on the block size and number of features extracted from the block.In literature [15,16,17], the effect of numbers of features was analyzed in terms of registration error and accuracy, in which a larger number of features was found to provide better results.In order to determine optimal block size (OBS), whole image processed features (WF) are compared with block processed features (BF).Even the number of WF is similar to BF, however, the accuracy of the registration results may differ.Because the use of block processing helps to reduce false matching features with geometrical constraint.Figure 2 shows the comparison of matching features between non-block processing and block-based processing.From the figure, we can observe the block based method provides more accurate matching features, whereas a non-block processing method has false matching features (red square box).In proposed approach, if the BF is greater than WF then this block is considered as optimal block size.Otherwise, the block size is increased by adding square blocks (SB).In our case, we set SB = 50.
The process is iterated until the criterion is fulfilled with maximum block size constraint.Maximum block size constraint is determined by using entropy.Entropy is defined as: where p is the frequency of grey level.E takes its maximum value when all p are equal.By this definition, more pixel variation (more information) will have greater entropy.In Fig. 3, the histogram of the gray level values is shown.It can be observed that Fig. 3 (c) has the most pixel variation visually.
where a, b are first and second descriptors respectably.

IV. Experimental Results
The size of panchromatic image is approximately 15000 × 16000 pixels and it occupies 500MB storage.
Multi-spectral image has size 4000 × 4000 and it consumes 40MB memory as shown in Fig. 6.The  matching ratio parameter is 10.If the matching ratio is decreased, the number of matching points will increase with more processing time required and less accurate feature points.The SIFT parameters may effect on the performance of feature detection and descriptor construction.In our case, we modified parameters rather than the original SIFT parameters due to the need for more feature points.The values for main parameters are described in Table III.Fig. 7 presents the composite images of Samples 1 and 2; however, it is not clear how much they are accurately warped.In medical image, these composite images are used for visual comparison of registration accuracy.It is not suitable method for remote sensing images due to the large image size.In Fig. 8, the accuracy between conventional and proposed methods is clearer and distinguishable.Figures are in color  IV shows the number of features and processing time for different block sizes.It also shows the comparison of registration accuracy using root mean square error (RMSE).The proposed method provides the lowest RMSE value and more distinct features as compared to the non-block based method.In addition, the processing time for proposed method is much faster than non-block based method.

V. Conclusion
In this letter, we have proposed a method for registration of satellite images based on SIFT and block processing.The proposed adaptive block based method is capable of providing better results than nonblock-based processing.The experimental results have demonstrated that the proposed method is much

Figure 4 5 .
Figure 4 shows the entropy along the various block sizes.From the figure, we can observe 200 × 200 block size has maximum entropy.By this analysis, 200 × 200 is used to be maximum block size for determination of optimal block size (OBS).The proposed block based algorithm is represented in Fig. 5. Through various experiments, we determine the optimal block size 150 × 150.In order to extract the features, reference image I R (x, y) which is a panchromatic image and sensed image I S (x, y) which is a multi-spectral image are used.Then, matching points are selected by Euclidean distance ED(a, b) between descriptors.
(Red: Registered output image of multi-spectral I S (x, y), Green: panchromatic I R (x, y) , Blue: panchromatic I R (x, y)).In case if accurate registration, there should be less red color component in the RGB image, as it can be observed in the output image of the proposed method shown in Fig.8(b), (d).Table

Fig. 7 :
Fig. 7: Composite images: (a) non-block based method of Sample 1, (b) proposed method of Sample 1, (c) non-block based method of Sample 2, and (d) proposed method of Sample 2.
If detector extracts 100 features, then descriptor dimension is 100 × 128.Euclidean distance is used for descriptor matching.It uses the first and the second nearest neighbor descriptors.If descriptor dimension is high, matching process requires high processing time to match.

Table I
depicts the processing time for each step major steps involved in image registrations.The TableIshows that the majority of time is consumed by the descriptor and matching step due to the high dimensionality; the descriptor step consumes 36.45% and the matching step 32.70% respectively.

Table I :
Representation of processing time for each SIFT step.

Table II :
Comparison of the number of features and computational time for non-block and block-based processing.
Block size Non-block 100 × 100 150 × 150 200 × 200 The number of features 5532 3361 5756 6987 Processing time(s) 9531.3993436.4116 497.1570 520.8296 image block.The processed image size also affects the computational time; however, a small image block allows the small descriptor and small matching area that consume less processing time.For example, the number of features via 100 × 100 image block size are 43, while 200 × 200 image block size have 167.Larger image has more information and can extract more features.This phenomenon is natural and understandable.It means that the descriptor size is 128 × 43 of image block having dimensions 100 × 100, and image block of diminutions 200 × 200 has descriptor of size 128 × 167.Smaller image block allows less dimensionality due to the number of extracted features.In case of 100 × 100 image block size, the processing time is 0.040162 seconds, while 200 × 200 image block size is 0.163099 seconds.Hence, the block size plays an important role in determining the overall accuracy and speed.

Table III :
Description of SIFT parameters.

Table IV :
The number of features and computational time comparison for non-block and block-based processing.