Next Article in Journal
Transmission Optimization of Social and Physical Sensor Nodes via Collaborative Beamforming in Cyber-Physical-Social Systems
Next Article in Special Issue
Automatic and Robust Infrared-Visible Image Sequence Registration via Spatio-Temporal Association
Previous Article in Journal
The Application of ATR-FTIR Spectroscopy and the Reversible DNA Conformation as a Sensor to Test the Effectiveness of Platinum(II) Anticancer Drugs
Previous Article in Special Issue
High Precision Position Measurement Method for Laguerre-Gaussian Beams Using a Quadrant Detector
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Single Infrared Image-Based Stripe Nonuniformity Correction via a Two-Stage Filtering Method

School of Physics and Optoelectronic Engineering, Xidian University, Xi’an 710071, China
*
Author to whom correspondence should be addressed.
Sensors 2018, 18(12), 4299; https://doi.org/10.3390/s18124299
Submission received: 20 October 2018 / Revised: 3 December 2018 / Accepted: 4 December 2018 / Published: 6 December 2018
(This article belongs to the Special Issue Infrared Sensors and Technologies)

Abstract

:
The presence of stripe nonuniformity severely degrades the image quality and affects the performance in many infrared (IR) sensing applications. Prior works correct the nonuniformity by using similar spatial representations, which inevitably damage some detailed structures of the image. In this paper, we instead take advantage of spectral prior of stripe noise to solve its correction problem in single IR image. We first analyse the significant spectral difference between stripes and image structures and utilize this knowledge to characterize stripe nonuniformity. Then a two-stage filtering strategy is adopted combining spectral and spatial filtering. The proposed method enables stripe nonuniformity to be eliminated from coarse to fine, thus preserving image details well. Extensive experiments on simulated images and raw IR images demonstrate that the proposed method achieves superior correction performance over the recent state-of-the-art methods.

1. Introduction

In many infrared (IR) sensing applications such as target detection [1] and face recognition [2], one has to process images and videos containing undesirable fixed pattern noise (FPN) that is caused by the nonuniformity of IR detector response [3,4]. Hence, it is important for IR sensors to correct the nonuniformity and remove the FPN in raw images. In this paper, we address the problem of stripe nonuniformity correction within a single IR image.
Nonuniformity correction (NUC) has drawn increasing attention from the research community, owing to its good capability of eliminating the FPN. Many researchers have devoted their attention to developing various NUC methods over the past several decades. They have been roughly divided into two categories: the calibration based methods [5,6,7] and the scene based methods [8,9,10,11,12]. The former enables detectors to have a consistent response at the same temperature through the radiance calibration; the latter reduces the FPN via multi-frame images association. With the growing use of uncooled IR detectors, stripe nonuniformity has acted as a main FPN in IR images [4,13]. Many researchers are devoted to developing targeted methods to correct the nonuniformity within a single image. The mainstream methods focus on utilizing column directionality of stripes in spatial domain, such as midway infrared equalization (MIRE) [13], 1-D guided filtering [14] and total variation model [15]. Despite varying degrees of success, the majority of these methods suffer from several limitations:
(a) Due to the intrinsic overlapping between stripe nonuniformity and structural patterns in the image, most methods reduce the striping artifact but damage texture details more or less, leading to the over-smoothing regions.
(b) The basic operation of many existing algorithms is repeatedly estimating the nonuniformity on local spatial regions, which has not been proven to have high efficiency.
Considering these limitations, our goal is to develop a novel representation that is more capable of describing stripe nonuniformity in IR images, and then use it to design an effective stripe nonuniformity correction architecture. To this end, we explore the stripe observation model and its corresponding spectral characteristics that enable the method to efficiently extract stripe nonuniformity from image structures even in the heavy noise case. Our idea is as follows.
First, we introduce a spectral representation of stripe nonuniformity noise. It accurately depicts differential distributions of the noise and image structures in frequency domain, which is capable of discriminating these two parts in an image.
Second, we propose a two-stage filtering based stripe nonuniformity correction method for single IR image. Extensive experiments and evaluations demonstrate that our method outperforms state-of-the-art methods on both simulated images and raw IR images. Particularly for some heavy stripe nonuniformity images, our method achieves considerably good correction results.
The rest of this paper is organized as follows. In Section 2, related work on various NUC methods is reviewed. In Section 3, spectral representation of stripes as a priori foundation is presented. Section 4 describes the proposed two-staged filtering approach and more implementation details are given in Section 5. Section 6 provides experimental results to verify the performance of the proposed method. Finally, conclusions are drawn in Section 7.

2. Related Work

We review relevant recent work on the FPN removal including conventional NUC methods and specific correction methods for single image stripe nonuniformity.
Conventional Nonuniformity Correction. There are two main categories in conventional NUC: the calibration based methods and the scene based methods. The first class is simple and practical, for example the two-point calibration method [5]. It uses a surface source blackbody as the reference to calibrate detectors response by measuring the radiations at two distinct and known temperatures. More temperature segmentations can produce more accurate correction results [6]. In the second class, several typical strategies have been used such as the constant statistics methods [1,8], the filtering estimation methods [9,10], the image registration methods [11,12] and so on. Generally, these scene-based NUC approaches seek to make a reasonable estimate for model parameters, based on the FPN’s time-invariance. They are more applicable to general unstructured FPN cases by exploiting a sequence of IR images.
Single Image Based Stripe Nonuniformity Correction. Compared to multi-frame based NUC methods, stripe nonuniformity can be individually corrected only via a single image due to its distinctive appearance. There has been a lot of relevant research to tackle the problem, which can be grouped into grayscale-statistics-based [13,16,17], spatial-filtering-based [14,18,19] and constrained-optimization-based [15,20] methods. The first fashion considers the column-wise gray statistics of the image and assumes that the histograms of adjacent columns should be essentially the same. So the new histogram of each column can be modified by correlating histograms of neighboring columns. The second one applies appropriate spatial filters to smooth stripe nonuniformity, whose performance declines significantly in the strong noise case. The last fashion models the problem as energy function minimization. It assumes that the vertical gradient of the image should be sustained while the horizontal gradient seriously interfered by stripe nonuniformity should be as smooth as possible. More recently, with the advances of convolutional neural networks (CNNs) in low-level image understanding, Kuang et al. [21] firstly proposed a deep CNN model to correct stripe nonuniformity in a single IR image. Following this work, a residual deep network added by a column FPN simulation module was also proposed in [22], which achieves an accurate estimate of stripe nonuniformity.
More related with our work is the spectral filtering based methods and two-stage spatial filtering methods. Munch et al. [23] proposed a combined wavelet-Fourier filtering method for stripe artifact removal, where stripe noise is first separated into vertical high-frequency subbands by wavelet transform and then the Fourier coefficients of these vertical subbands are filtered with a Gaussian damping filter. Its success demonstrates the effectiveness of spectrum characteristics of stripes as an image prior in the destriping task. Unfortunately, as the literature [20] points out, the method is likely to produce smearing artifacts along the vertical edges. The underlying reason lies in the aggressive nature of the designed spectral filter, making low-frequency components that represent the grayscale information become erased with noise frequency reduction. In addition, Cao et al. [14] presented a two-stage guided filtering stripe noise removal method for a single IR image, where 1-D row and column guided filters are adopted in two stages, respectively. Due to only filtering in the spatial domain, the method inevitably takes away some detailed information overlapped with stripe noise when it is performed.

3. Prior Foundation

We briefly discuss the spectral characteristic of stripe nonuniformity noise, and then generalize it to design the observation model both in spatial and frequency domains.

3.1. Spectral Analysis of Stripe Noise

It has been proved that the Fourier amplitude spectrum of image components will be a highlighted spectrum line and orthogonal to themselves compared with others without any regularity, only when they have fixed orientations, such as vertical and horizontal. This intuition attributes to energy focusing of Fourier amplitude spectrum of image components. Based on this point, we can easily find that the Fourier amplitude spectrum of stripe noise follows this objective law since it has a fixed direction. To further reveal this objective law, we give an instance as shown in Figure 1. The top row gives the clean image and its corresponding noisy versions with different directional stripe noise, and the bottom row shows the Fourier amplitude spectrum corresponding to top row images. From Figure 1f–j, it can be easily seen that a bright line regularly adheres to the original image spectrum, which is orthogonal to the corresponding stripes. To illustrate this phenomenon, a theoretical analysis is given as follows.
Assume an ideal vertical stripe V in the image should be a constant c at any pixel position, which can be expressed as
V ( x , y ) = c , if ( x , y ) Ω W × H 0 , otherwise
where ( x , y ) denotes the image pixel, Ω W × H is the region of V, and W and H are its horizontal width and vertical height, respectively. Since vertical stripe is very thin, W obeys W H . The discrete Fourier spectrum of V is expressed as
F ( u , v ) = c W H sin ( π u W ) π u W sin ( π v H ) π v H e j π ( u W + v H )
where u and v are horizontal and vertical frequency coordinates, both sin ( π u W ) π u W sin ( π v H ) π v H is a representation of 2-D Sinc function. The corresponding amplitude spectrum is
| F ( u , v ) | = c W H | sin ( π u W ) π u W | | sin ( π v H ) π v H |
According to the absolute Sinc function, | F | will shrink to u axis since 1 / W 1 / H and show a comb-like impulse spectrum for the ideal stripe V. That is to say, | F | extends only in v = 0 , perpendicular to the extending direction of V in the image domain. The conclusion is also valid to striping patterns in other directions. Further, for stripe nonuniformity noise in the real IR image, we found that its frequencies are located in a narrow horizontal band that centres on the whole u axis. The band is referred to as stripe frequency band (SFB). Figure 2 shows an example of image representation using the SFB. We can see that the image component reconstructed by the SFB includes almost all stripe noise, while the structure information of the image is intactly reserved in the remaining component. This reveals an effective spectral prior for stripe nonuniformity noise. However, it should be noted that the noise component holds significant grayscale information as well because low frequencies of the image are located in the central part of the SFB.

3.2. Observation Model

A typical observation model in spatial domain for single IR image with the FPN can be formulated as
D ( x , y ) = m ( x , y ) I ( x , y ) + a ( x , y )
where I ( x , y ) and D ( x , y ) are the ideal image and its degraded observation at pixel ( x , y ) , respectively. The FPN is generally modeled by a multiplicative component m ( x , y ) and an additive component a ( x , y ) based on the response characteristic of IR detectors. m ( x , y ) is generated from the difference between the response gains of detectors, while a ( x , y ) is caused by detectors’ biases variation.
For the striping structured FPN, the aforementioned formulation can often be simplified as an additive process because of its particularity. On the one hand, stripe nonuniformity arises from column-parallel integration readout circuits, where one amplifier is shared in each column [15,22]. On the other hand, the additive model has been proven effective to remove stripe noise solely in many applications [24,25]. So we model the IR image observation with stripe nonuniformity as
D ( x , y ) = I ( x , y ) + S ( x , y )
where S ( x , y ) denotes stripe nonuniformity noise. Due to the Fourier transform being linear, we have a corresponding spectral observation model as follows.
D ( u , v ) = I ( u , v ) + S ( u , v )
where D ( u , v ) , I ( u , v ) and S ( u , v ) are the corresponding image representation in frequency domain.
The additive model expressed in Equations (5) and (6) suggests that stripe nonuniformity appearing on the observed image can be corrected in spatial domain and frequency domain as long as it is represented well. Inspired by this point, this paper attempts to solve the task for single IR image in a staged filtering way. The details of the proposed method will be elaborated in Section 4.

4. Proposed Method

Our goal is to take a single stripe nonuniformity IR image and output a corrected image. Figure 3 shows the framework of the proposed method. Its key idea is combining spectral filtering and spatial filtering to progressively eliminate stripe nonuniformity without blurring any fine image details. Firstly, the original IR image D in frequency domain is filtered by a stripe notch filter G that takes the SFB as its rejection region. The filtered result is called the structure layer I 1 that contains the complete image structure but lacks grayscale information. Then the residual image R between D and I 1 is used to estimate the grayscale layer I 2 . Because of excessive stripe noise appearing in R, the operation of 1-D row smooth filtering with multiple iterations is adopted. The corrected result I ˜ is easily obtained by adding the two image layers. The details of the proposed method are presented in the following subsections.

4.1. Stage 1: Spectral Filtering with Stripe Notch Filter

Notch filter is one of the most selective frequency filters and capable of rejecting or passing frequencies in predefined regions [26]. Inspired by this theory, we first define a stripe notch filter (SNF) with spectral prior knowledge that takes the SFB as its rejection region. Thus it can maximally separate the image structure from stripe nonuniformity. Based on this point, the basic flow of the spectral filtering stage consists of three steps.
Step 1: Transform the original IR image into the frequency domain via 2-D fast Fourier transformation (FFT).
Given a degraded image D with size of M × N , its amplitude spectrum A and phase spectrum P can be obtained by
A = R [ F ( D ) ]
P = P [ F ( D ) ]
where F , R and P denote the operation of 2-D FFT, amplitude and phase calculation, respectively. It should be noted that the phase spectrum P is indispensable to the subsequent inversion, which contains the location information of image structure [27].
Step 2: Construct the SNF whose rejection region is fixed as the SFB.
The SFB is loosely considered as the boundary between stripe nonuniformity noise and image structure in frequency domain. Rather than the identification of the noise frequencies with great precision, such a semi-accurate design greatly reduces the difficulty and complexity of the notch filter in construction. In addition, it is efficient and robust to various stripe nonuniformity images.
For convenience, we use G R M × N to represent SNF, it can be defined by a simple binary function
G ( u , v ) = 0 , if ( u , v ) Θ K × N 1 , otherwise
where Θ K × N denotes the SFB with size of K × N . The element of 0 means that the frequency is rejected, while 1 indicates that the frequency is allowed to pass. In this definition, there is only one parameter K, representing the number of rows within the SFB. It determines the stop scope of the SNF and is set to 2 in this study.
Step 3: Mask the amplitude spectrum with the well-defined SNF, and then perform the inverse 2-D FFT on the new Fourier spectrum.
Using the defined SNF G , we can obtain the structure layer I 1 by
A = G A
I 1 = F 1 ( A e j P )
where A is the filtered version of A , and the operators of ⊙ and F 1 denote the element-wise multiplication and the inverse 2-D FFT, respectively.

4.2. Stage 2: Spatial Filtering with 1-D Row Smoothing Filter

After the first stage, the grayscale information is deposited into the residual image R with stripe nonuniformity, since low-frequency parts of the image are also rejected by G . To further separate these two parts, we employ a 1-D row smoothing filter to process R via a few iterations. After finishing the iterative refinement, the grayscale layer I 2 can be easily estimated from R without stripe nonuniformity.
The spatial filtering of the residual image R can be expressed as
I 2 ( i + 1 ) = I 2 ( i ) T
where denotes the spatial filtering operation and i is the i-th iteration. In the implementation, let I 2 ( 0 ) = R for initialization and T can be selected from existing spatial filters. In addition, the total number of iterations is symbolized i max , which is an experiential parameter to be set in the procedure. The details will be described in Section 5.1.
Once the grayscale layer is obtained, the final corrected result I ˜ can be achieved by
I ˜ = I 1 + I 2

5. Implementation Details

In this section, we present implementation details of the proposed method. First, some notes on filters used in the two stages are elaborated. Then the entire procedure is given as a quick reference.

5.1. Notes on Filters

For the M × N image (M and N are even by default), the horizontal center of its frequency spectrum after the origin shifting operation is located at row ( M / 2 + 1 ) . Thus in G ’s construction, Θ is centered on the ( M / 2 + 1 ) -th row and has K rows. That is, K = 2 means that the elements in rows ( M / 2 + 1 ) and M / 2 (or ( M / 2 + 2 ) ) are filled with 0 and by analogy, the three rows are set as Θ if K = 3 . Note that K should be assigned small integer values because of the narrow SFB.
In the realization of spatial filtering, we adopt a combination of two traditional smooth filters, mean filter T 1 and gaussian filter T 2 , to play the role of T. Both filters are alternately used in the iterative refinement. Rather than the use of a single filter, such a combination of two varying filters is more efficient for the estimation of I 2 . The default is the same size of T 1 and T 2 as 1 × 5 . The standard deviation of the Gaussian kernel in T 2 is set to 1.2. Besides, the total number of filtering iterations i max is also an important parameter in the second stage. Its value should be flexibly adjusted with the noise intensity for achieving better performance. An appropriate range is suggested to be 2 50 and we found that it would become less significant for improving the corrected result when the value is larger than 50. A detailed discussion about this will be given in a later section.

5.2. Procedure

The entire procedure of the proposed method is summarized in Algorithm 1.
Algorithm 1. Two-stage filtering method for single IR image stripe nonuniformity correction
Input: The original IR image D.
Stage 1: Spectral filtering with stripe notch filter G .
Parameter: The width K of G ’s rejection region.
Forward transformation. Apply 2-D FFT on D to obtain the corresponding Fourier spectrum, and then calculate the amplitude A and the phase P separately.
Filtration. Correlate A with G to get the filtered amplitude A , and calculate the modified Fourier spectrum A e j P .
 Backward transformation. Apply inverse 2-D FFT, and obtain the structure layer I 1 .
Stage 2: Spatial filtering with 1-D row smoothing filter T. (Use mean filter T 1 and gaussian filter T 2 )
Parameter: The total number of filtering iterations i max .
Initialization: Let the residual image R = D I 1 be the initial grayscale layer I 2 ( 0 ) .
for i = 1 to i max do
  Perform spatial filtering alternately on I 2 ( i ) by T 1 and T 2 to refine I 2 .
end for
Output: The final corrected result I ˜ = I 1 + I 2 .

6. Experiments

In this section, the performance of the proposed method is tested on simulated images and raw IR images. We present the quantitative evaluation, qualitative comparison, run time, and parameters analysis. Here, we compare with four state-of-the-art stripe nonuniformity correction algorithms, including the combination of wavelet transform and spectral filtering (WTSF) [23], MIRE [13], guided filtering (GIF) [14] and CNN [21]. In addition, all the free parameters of these compared methods are set to default values following with the corresponding references.

6.1. Data Sets

In this work, we carry out extensive experiments on two kinds of images. The first one is gray test images Lena and Mandrill, which are artificially added with simulated stripe noise as the corresponding nonuniformity image observations. The noise addition is followed by the model (5) and assumed as 1-D random Gaussian process with zero mean and standard deviation σ . We generate five stripe noise images with different σ values, as shown in Figure 4. The other one is three raw IR images as shown in Figure 5. The Street and Building images come from ASL dataset [28] and Tendero’s dataset [13], respectively. Kettle is from our dataset. These raw images are recorded by different IR sensors and slightly or heavily corrupted by stripe nonuniformity. Detailed description about the test data is listed in Table 1.

6.2. Test on Simulated Images

In the simulation experiment, the destriping performance is evaluated by two common full-reference image quality metrics, the peak signal to noise ratio (PSNR) and structure similarity (SSIM) index [29]. PSNR measures pixel errors between the filtered image and its referenced image. A higher PSNR value indicates a smaller image distortion. It is defined as
PSNR = 10 log 10 255 2 MSE ( dB )
where MSE is the mean squared error between the filtered and referenced images. SSIM provides a perceptually relevant assessment for the filtered result, which is calculated within a sliding window by using
SSIM ( m , n ) = ( 2 μ m μ n + C 1 ) ( 2 σ m n + C 2 ) ( μ m 2 + μ n 2 + C 1 ) ( σ m 2 + σ n 2 + C 2 )
where m and n are the image patches extracted by the sliding window from the filtered and referenced images, respectively. μ m , μ n , σ m , σ n , and σ m n are the mean, standard deviation and cross-correlation of m and n , respectively. C 1 and C 2 are very small constants that avoid zero denominator error. In actual measurements, the mean SSIM of two images is computed as the final SSIM score. It is a decimal value between 0 and 1. The closer the SSIM value is to 1, the better structure-preserving effect the filtered image has.
Table 2 and Table 3 show the values of PSNR and SSIM for different methods, respectively. They are obtained by averaging 10 independent realizations of the noise process. Compared with the four methods, it can be easily found that the proposed method achieves the highest scores in terms of both PSNR and SSIM. This demonstrates that our proposed method outperforms the other methods.
To intuitively illustrate that our proposed method is capable of getting superior performance, an example of stripe noise removal is given as shown in Figure 6. One can clearly see that the results of GIF and CNN cannot be accepted, when the clean image is corrupted by stripe noise with σ = 0.16 . There are still apparent striping atrifacts in these two results. In contrast, the results obtained by WTSF and MIRE seem somewhat better. However, they produce unnatural grayscale degradation and distortion in local regions. The proposed method achieves the best visual effect, where all the stripe noise is reduced but some detailed information is blurred.
On the whole, the proposed method in eliminating stripe noise achieves remarkable results for simulated images both in visual effect and objective metrics. In the following section, we will focus on raw IR images with stripe nonuniformity.

6.3. Test on Raw IR Images

Corrected results for Street, Building and Kettle are shown in Figure 7, Figure 8 and Figure 9, respectively. It can be observed that WTSF and MIRE produce some conspicuous column-wise artifacts. In the nonuniformity noise-friendly cases (such as Street and Kettle), the results obtained by CNN are attractive and have a soft visual effect. However, its correction ability becomes less effective when dealing with heavy nonuniformity (see the case of Building), as verified in the simulated experiment. For these raw IR images, GIF and the proposed method achieve similar and good stripe nonuniformity correction results visually.
Additionally, we make use of the nonuniformity noise (NUN) image that is a difference result between the original and corrected images [14,15] to illustrate those imperceptible discrepancies in the visual results. The ideal NUN image produced by a good correction method should be a pure stripe noise pattern. On the contrary, for an inferior correction method, there is apparent structure information in the NUN image, such as edges or textures. The NUN results for three raw IR images are shown in Figure 10, Figure 11 and Figure 12, respectively. It is found that the NUN image obtained by MIRE includes distinct structure information, followed by GIF. WTSF greatly affects the intensity change around strong vertical edges. From the NUN results in Figure 12d and Figure 14d, CNN can smooth the whole image but reduce a few image details, such as the textures of the tree crown and the outline of the kettle. By contrast, the NUN image acquired by the proposed method includes minimal structure information. From this point of view, the proposed method performs much better than the other methods in detail-preserving.
Besides visual comparisons, we also apply two quantitative indicators to evaluate the correction performance of the proposed method objectively. The roughness index ρ [16,22] is commonly used to measure the nonuniformity in IR images. It is defined as
ρ ( G ) = f 1 G 1 + f 2 G 1 G 1
where G is the IR image to be measured, f 1 = [ 1 , 1 ] and f 2 = f 1 T represent the 1-D horizontal and vertical differencing filters, respectively. · 1 is the L 1 norm. By definition, ρ measures the nonuniformity substantially through calculating the gradient of G. So a smooth G tends to have a small ρ value, namely having low nonuniformity. Unfortunately, using such a metric has some limitations in terms of image quality evaluation, such as when the evaluated image is over-smoothing. For this reason, here we adopt the effective roughness index ρ ˜ [4,30] instead of ρ to measure the nonuniformity, which is defined as
ρ ˜ ( G ) = ρ ( h G )
where h is a high-pass filter as a preprocessing step and the L 2 norm is used in place of the L 1 norm for modification. Compared with ρ , ρ ˜ estimates the nonuniformity after removing low-frequency components of the image. A smaller ρ ˜ value indicates lower nonuniformity of the image. On the other hand, in order to evaluate detail-preserving ability of correction algorithms, we define the average vertical gradient error (AVGE) whose terms are given by
AVGE = 1 P p = 1 P | | y Γ ( Q p ) | | y Q p | |
where Q p is the noisy image with pixel p, P is the number of pixels, Γ ( · ) is the destriping method, and y and | · | denote the vertical gradient operator and the absolute value operator, respectively. AVGE represents the variation of the vertical image gradient before and after correction. The principle behind it is based on the understanding that the vertical gradient should remain unchanged while the column nonuniformity is reduced. So the AVGE value closer to zero indicates that Γ is better at preserving image details.
The ρ ˜ and AVGE results for raw IR images are reported in Table 4. The best results are emphasized in boldface. We can easily see that CNN and the proposed method yield smaller ρ ˜ values and AVGE values. However, it should be pointed out that, for Building, the lowest AVGE value obtained by CNN may not be a positive result because CNN actually fails in this case. Overall, the quantitative evaluation results reveal the advantage of the proposed method in stripe nonuniformity correction and detail preservation.
Though testing on these raw IR images from different thermal imaging sensors, we demonstrate the effectiveness of our proposed approach in most real cases. Combining the qualitative and quantitative comparisons, we can conclude that the proposed method achieves the state-of-the-art stripe nonuniformity correction performance for raw IR images.

6.4. Time Consumption

We also consider time consumption of different methods to examine their computation complexity. In our experiments, all the test methods are implemented in Matlab R2017a on a common PC with an Intel Core i5 CPU (3.40 GHz) and 8 GB RAM. We make the statistics of the algorithm computing time on simulated and raw IR images with different resolutions. The average results are listed in Table 5. It can be seen that the proposed method requires a minimum of computing time in working on the same image, compared to the other methods. With the resolution enhancing of the input image, time consumption of the proposed method can stabilize in a low range. This implies the potential of our method in the real-time processing.

6.5. Parameter Analysis

In this section, we analyze the influences of two main parameters in the proposed approach, K and i max . We first fix i max = 10 and other default parameters to just consider K in a small range of 1∼5. In Figure 13, two sets of PSNR and SSIM results for Lena with different K values are reported respectively in the cases of adding stripe noise of σ = 0.08 and 0.16. It can be observed that both groups are similar and the quality of the denoised image is decreased with the increase of K value. In detail, the losses of PSNR and SSIM are minor when K increases from 1 to 2, while the losses become serious when K increases from 2 to 3. Thus, it is reasonable to set K to be 2 in this paper.
We also take i max as the only variable to investigate the selection of its value within a range of 2∼50. Figure 14 shows PSNR and SSIM results for Lena with different i max values in the five stripe noise cases. For each case, the histograms from blue to yellow represent changes in PSNR and SSIM values with the increase of i max from 2 to 50. It can be easily found that PSNR and SSIM has higher scores when the value of i max is smaller in the cases of σ = 0.02 , 0.04 , 0.08 , while in the cases of σ = 0.16 , 0.32 higher PSNR and SSIM scores are obtained when setting a larger i max value. The reason for this is that in most cases ( σ = 0.02 , 0.04 , 0.08 ) the noise is relatively slight or moderate so that low filtering iterations tend to maintain the image grayscale while suppressing the noise. On the contrary, the noise becomes the main component and severely corrodes image pixels when it is very heavy like the case of σ = 0.16 or even 0.32. Thus, enough filtering iterations are more effective.
For a further comparison, Figure 15 and Figure 16 show IR image examples for Kettle (an ideal output from the camera) corrupted by stripe noise with σ = 0.04 and σ = 0.32 , respectively, when i max is set to be 2 and 40 in our method. The corresponding PSNR and SSIM results are listed in Table 6. From these results, we can also conclude that a small i max value is favourable when the noise is slight, while i max should be set to be a large value in the strong noise case. When i max has a larger value in the case of σ = 0.04 , stripe noise is suppressed further but some undesirable artifacts also emerge, especially near the vertical edge that is similar to stripes. This is an over-suppression effect. In contrast, as we mentioned before, the noise in the case of σ = 0.32 becomes the relatively main component in the image, where a small i max value fails to obtain an acceptable result.
However, practically speaking, there are certain differences between the simulated noise and the real nonuniformity noise in appearance. The real noise intensity and fluctuation are relatively mild in raw IR images. On the one hand, this can be attributed to the current advanced IR detector technology. On the other hand, IR image that is a reflection of temperature difference in distribution always appears globally smooth, including its noise pattern. Because thermal equilibrium occurs in the recorded scene. Given this, a small i max value is suggested in filtering on raw IR images in our approach.

6.6. More Discussion

In this section, we discuss destriping in thermal images for some frequent objects that have a similar appearance with stripe noise in the image, such as radiator and regular fence or trees. Figure 17 shows an example for Fence taken from [31], in which stripe noise with σ = 0.04 is added. The PSNR and SSIM results are also given in Table 7. From the results, it can be illustrated that the proposed method still has a good destriping performance on the image having a similar striping structure. In essence, stripe noise has its own manifestation features to distinguish itself from the similar patterns. (1) The noise entangles itself in each pixel and its intensity in the same column can be considered approximately identical. (2) These stripes vary visibly between columns and extend throughout the whole image. (3) There is nothing for the noise in other features such as shape, compared with object patterns similar to it. So the noise can be effectively controlled in these images. However, we also notice that some artifacts are generated inevitably in the corrected result because of the striping similarity. In this point, our approach should be improved further.

7. Conclusions

In this work, we propose a new stripe nonuniformity correction method for single IR image. Our model progressively eliminates stripe nonuniformity noise in a coarse-to-fine manner with two-stage filtering. By analyzing the significant spectral difference between stripe noise and image structures, we build on this characteristic to achieve improved performance in stripe nonuniformity correction and detail preserving. The effectiveness of the proposed method is validated by testing on simulated images and raw IR images.
Future work will focus on exploring the spectral distribution of stripe noise further. Developing an adaptive nonuniformity noise frequency detector is an appealing topic. In addition, more prior knowledge of IR image and more object scenes will be taken into account for stripe nonuniformity correction.

Author Contributions

Q.Z. and X.Y. conceived and designed the methodology; Q.Z. and S.Y. performed the experiments and analyzed the data; Q.Z. wrote the paper; H.Q. and T.Y. reviewed and revised the paper.

Funding

The work was supported by the Fund for Foreign Scholars in University Research and Teaching Programs (the 111 Project) (No. B17035), and Natural Science Basic Research Plan in Shaanxi Province of China (No. 2017JM6079).

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Zhou, D.; Wang, D.; Huo, L.; Liu, R.; Jia, P. Scene-based nonuniformity correction for airborne point target detection systems. Opt. Express 2017, 25, 14210–14226. [Google Scholar] [CrossRef] [PubMed]
  2. Meza, P.; Torres, S.; Carrillo, R. Improved infrared face identification performance using nonuniformity correction techniques. In Proceedings of the 10th International Conference on Advanced Concepts for Intelligent Vision Systems (ACIVS), Pins Les Juan, France, 20–24 October 2008; pp. 1115–1123. [Google Scholar]
  3. Milton, A.F.; Barone, F.R.; Kruer, M.R. Influence of nonuniformity on infrared focal plane array performance. Opt. Eng. 1985, 24, 855–862. [Google Scholar] [CrossRef]
  4. Goodall, T.R.; Bovik, A.C.; Paulter, N.G. Tasking on natural statistics of infrared images. IEEE Trans. Image Process. 2016, 25, 65–79. [Google Scholar] [CrossRef] [PubMed]
  5. Dereniak, E.L. Linear theory of nonuniformity correction in infrared staring sensors. Opt. Eng. 1993, 32, 1854–1859. [Google Scholar]
  6. Wang, Y.; Chen, J.; Liu, Y.; Xue, Y. Study on two-point multi-section IRFPA nonuniformity correction algorithm. J. Infrared Millim. Waves 2003, 22, 415–418. [Google Scholar]
  7. Zhou, H.; Liu, S.; Lai, R.; Wang, D.; Cheng, Y. Solution for the nonuniformity correction of infrared focal plane arrays. Appl. Opt. 2005, 44, 2928–2932. [Google Scholar] [CrossRef] [PubMed]
  8. Harris, J.G.; Chiang, Y.M. Nonuniformity correction of infrared image sequences using the constant-statistics constraint. IEEE Trans. Image Process. 1999, 8, 1148–1151. [Google Scholar] [CrossRef] [PubMed]
  9. Scribner, D.A.; Sarkady, K.A.; Kruer, M.R.; Caulfield, J.T.; Hunt, J.D.; Herman, C. Adaptive nonuniformity correction for IR focal-plane arrays using neural networks. In Infrared Sensors: Detectors, Electronics, and Signal Processing; International Society for Optics and Photonics: San Diego, CA, USA, 1991; pp. 100–110. [Google Scholar]
  10. Torres, S.N.; Hayat, M.M. Kalman filtering for adaptive nonuniformity correction in infrared focal-plane arrays. J. Opt. Soc. Am. A 2003, 20, 470–480. [Google Scholar] [CrossRef]
  11. Hardie, R.C.; Hayat, M.M.; Armstrong, E.; Yasuda, B. Scene-based nonuniformity correction with video sequences and registration. Appl. Opt. 2000, 39, 1241–1250. [Google Scholar] [CrossRef]
  12. Zuo, C.; Chen, Q.; Gu, G.; Sui, X. Scene-based nonuniformity correction algorithm based on interframe registration. J. Opt. Soc. Am. A 2011, 28, 1164–1176. [Google Scholar] [CrossRef]
  13. Tendero, Y.; Landeau, S.; Gilles, J. Non-uniformity correction of infrared images by midway equalization. Image Process. Line 2012, 2, 134–146. [Google Scholar] [CrossRef]
  14. Cao, Y.; Yang, M.Y.; Tisse, C.L. Effective stripe noise removal for low-textured infrared images based on 1-D guided filtering. IEEE Trans. Circuits Syst. Video Technol. 2016, 26, 2176–2188. [Google Scholar] [CrossRef]
  15. Boutemedjet, A.; Deng, C.; Zhao, B. Edge-aware unidirectional total variation model for stripe non-uniformity correction. Sensors 2018, 18, 1164. [Google Scholar] [CrossRef] [PubMed]
  16. Tendero, Y.; Gilles, J. ADMIRE: A locally adaptive single-image, non-uniformity correction and denoising algorithm: application to uncooled IR camera. In Infrared Technology and Applications XXXVIII; International Society for Optics and Photonics: Baltimore, MD, USA, 2012; p. 83531. [Google Scholar]
  17. Sui, X.; Chen, Q.; Gu, G. Adaptive grayscale adjustment-based stripe noise removal method of single image. Infrared Phys. Technol. 2013, 60, 121–128. [Google Scholar] [CrossRef]
  18. Cao, Y.; Li, Y. Strip non-uniformity correction in uncooled long-wave infrared focal plane array based on noise source characterization. Opt. Commun. 2015, 339, 236–242. [Google Scholar] [CrossRef]
  19. Cao, Y.; He, Z.; Yang, J.; Cao, Y.; Yang, M.Y. Spatially adaptive column fixed-pattern noise correction in infrared imaging system using 1D horizontal differential statistics. IEEE Photonics J. 2017, 9, 7803513. [Google Scholar] [CrossRef]
  20. Huang, Y.; He, C.; Fang, H.; Wang, X. Iteratively reweighted unidirectional variational model for stripe non-uniformity correction. Infrared Phys. Technol. 2016, 75, 107–116. [Google Scholar] [CrossRef]
  21. Kuang, X.; Sui, X.; Chen, Q.; Gu, G. Single Infrared Image Stripe Noise Removal Using Deep Convolutional Networks. IEEE Photonics J. 2017, 9, 1–13. [Google Scholar] [CrossRef]
  22. He, Z.; Cao, Y.; Dong, Y.; Yang, J.; Cao, Y.; Tisse, C.L. Single-image-based nonuniformity correction of uncooled long-wave infrared detectors: A deep-learning approach. Appl. Opt. 2018, 57, D155–D164. [Google Scholar] [CrossRef]
  23. Münch, B.; Trtik, P.; Marone, F.; Stampanoni, M. Stripe and ring artifact removal with combined wavelet–Fourier filtering. Opt. Express 2009, 17, 8567–8591. [Google Scholar] [CrossRef]
  24. Fehrenbach, J.; Weiss, P.; Lorenzo, C. Variational algorithms to remove stationary noise: Applications to microscopy imaging. IEEE Trans. Image Process. 2012, 21, 4420–4430. [Google Scholar] [CrossRef] [Green Version]
  25. Chang, Y.; Yan, L.; Fang, H.; Liu, H. Simultaneous destriping and denoising for remote sensing images with unidirectional total variation and sparse representation. IEEE Geosci. Remote Sens. Lett. 2014, 11, 1051–1055. [Google Scholar] [CrossRef]
  26. Gonzalez, R.C.; Woods, R.E. Filtering in the Frequency Domain. In Digital Image Processing, 3rd ed.; McDonald, M., Dworkin, A., Disanno, S., Eds.; Prentice Hall: Upper Saddle River, NJ, USA, 2008; pp. 316–320. [Google Scholar]
  27. Oppenheim, A.V.; Lim, J.S. The importance of phase in signals. Proc. IEEE 1981, 69, 529–541. [Google Scholar] [CrossRef] [Green Version]
  28. Portmann, J.; Lynen, S.; Chli, M.; Siegwart, R. People detection and tracking from aerial thermal views. In Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), Hong Kong, China, 31 May–5 June 2014; pp. 1794–1800. [Google Scholar]
  29. Wang, Z.; Bovik, A.C.; Sheikh, H.R.; Simoncelli, E.P. Image quality assesment: From error visibility to structural similarity. IEEE Trans. Image Process. 2004, 13, 600–612. [Google Scholar] [CrossRef] [PubMed]
  30. Martin, C.S.; Torres, S.N.; Pezoa, J.E. An Effective Reference-Free Performance Metric for Non-uniformity Correction Algorithms in Infrared Imaging System. In Proceedings of the 20th Annual Meeting of the IEEE Lasers and Electro-Optics Society (LEOS), Orlando, FL, USA, 21–24 October 2007; pp. 576–577. [Google Scholar]
  31. Choi, Y.; Kim, N.; Hwang, S.; Kweon, I.S. Thermal image enhancement using convolutional neural network. In Proceedings of the IEEE/Robotics Society of Japan (RSJ) International Conference on Intelligent Robots and Systems (IROS), Daejeon, Korea, 9–14 October 2016; pp. 223–230. [Google Scholar]
Figure 1. Spectral behavior of stripe noise with different directions. (a) Clean image; (be) Noisy images with vertical, horizontal, right diagonal and left diagonal stripes, respectively; (fj) Amplitude spectrums corresponding to (ae).
Figure 1. Spectral behavior of stripe noise with different directions. (a) Clean image; (be) Noisy images with vertical, horizontal, right diagonal and left diagonal stripes, respectively; (fj) Amplitude spectrums corresponding to (ae).
Sensors 18 04299 g001
Figure 2. Example of image representation using the stripe frequency band (SFB). (a) Real IR image with stripe nonuniformity noise; (b) Noise component reconstructed by the SFB; (c) Structures in the remaining component; (d) Amplitude spectrum of (a); (e) SFB separated from (d).
Figure 2. Example of image representation using the stripe frequency band (SFB). (a) Real IR image with stripe nonuniformity noise; (b) Noise component reconstructed by the SFB; (c) Structures in the remaining component; (d) Amplitude spectrum of (a); (e) SFB separated from (d).
Sensors 18 04299 g002
Figure 3. Framework of the proposed method.
Figure 3. Framework of the proposed method.
Sensors 18 04299 g003
Figure 4. Two sets of simulated noisy images for testing. (a) Clean images Lena and Mandrill; (bg) Noisy images Lena and Mandrill with stripe noise of σ = 0.02 , 0.04 , 0.08 , 0.16 , 0.32 , respectively.
Figure 4. Two sets of simulated noisy images for testing. (a) Clean images Lena and Mandrill; (bg) Noisy images Lena and Mandrill with stripe noise of σ = 0.02 , 0.04 , 0.08 , 0.16 , 0.32 , respectively.
Sensors 18 04299 g004
Figure 5. Three raw IR images for testing. (a) Street from ASL dataset [28]; (b) Building from Tendero’s dataset [13]; (c) Kettle from our dataset.
Figure 5. Three raw IR images for testing. (a) Street from ASL dataset [28]; (b) Building from Tendero’s dataset [13]; (c) Kettle from our dataset.
Sensors 18 04299 g005
Figure 6. Filtered results for Lena corrupted by stripe niose with σ = 0.16 . (a) Clean; (b) Noisy; (c) WTSF; (d) MIRE; (e) GIF; (f) CNN; (g) Ours.
Figure 6. Filtered results for Lena corrupted by stripe niose with σ = 0.16 . (a) Clean; (b) Noisy; (c) WTSF; (d) MIRE; (e) GIF; (f) CNN; (g) Ours.
Sensors 18 04299 g006
Figure 7. Stripe nonuniformity correction results for Street. (a) Raw; (b) WTSF; (c) MIRE; (d) GIF; (e) CNN; (f) Ours.
Figure 7. Stripe nonuniformity correction results for Street. (a) Raw; (b) WTSF; (c) MIRE; (d) GIF; (e) CNN; (f) Ours.
Sensors 18 04299 g007
Figure 8. Stripe nonuniformity correction results for Building. (a) Raw; (b) WTSF; (c) MIRE; (d) GIF; (e) CNN; (f) Ours.
Figure 8. Stripe nonuniformity correction results for Building. (a) Raw; (b) WTSF; (c) MIRE; (d) GIF; (e) CNN; (f) Ours.
Sensors 18 04299 g008
Figure 9. Stripe nonuniformity correction results for Kettle. (a) Raw; (b) WTSF; (c) MIRE; (d) GIF; (e) CNN; (f) Ours.
Figure 9. Stripe nonuniformity correction results for Kettle. (a) Raw; (b) WTSF; (c) MIRE; (d) GIF; (e) CNN; (f) Ours.
Sensors 18 04299 g009
Figure 10. NUN results for Street. (a) WTSF; (b) MIRE; (c) GIF; (d) CNN; (e) Ours.
Figure 10. NUN results for Street. (a) WTSF; (b) MIRE; (c) GIF; (d) CNN; (e) Ours.
Sensors 18 04299 g010
Figure 11. NUN results for Building. (a) WTSF; (b) MIRE; (c) GIF; (d) CNN; (e) Ours.
Figure 11. NUN results for Building. (a) WTSF; (b) MIRE; (c) GIF; (d) CNN; (e) Ours.
Sensors 18 04299 g011
Figure 12. NUN results for Kettle. (a) WTSF; (b) MIRE; (c) GIF; (d) CNN; (e) Ours.
Figure 12. NUN results for Kettle. (a) WTSF; (b) MIRE; (c) GIF; (d) CNN; (e) Ours.
Sensors 18 04299 g012
Figure 13. Two sets of PSNR (dB) and SSIM results for Lena with different K values respectively in the cases of adding stripe noise of σ = 0.08 and 0.16. (a) PSNR and SSIM when σ = 0.08 ; (b) PSNR and SSIM when σ = 0.16 .
Figure 13. Two sets of PSNR (dB) and SSIM results for Lena with different K values respectively in the cases of adding stripe noise of σ = 0.08 and 0.16. (a) PSNR and SSIM when σ = 0.08 ; (b) PSNR and SSIM when σ = 0.16 .
Sensors 18 04299 g013
Figure 14. PSNR (dB) and SSIM results for Lena with different i max values in the five stripe noise cases. (a) PSNR; (b) SSIM.
Figure 14. PSNR (dB) and SSIM results for Lena with different i max values in the five stripe noise cases. (a) PSNR; (b) SSIM.
Sensors 18 04299 g014
Figure 15. Filtered results for Kettle corrupted by stripe niose with σ = 0.04 . (a) Clean; (b) Noisy; (c) WTSF; (d) MIRE; (e) GIF; (f) CNN; (g) Ours with i max = 2 ; (h) Ours with i max = 40 .
Figure 15. Filtered results for Kettle corrupted by stripe niose with σ = 0.04 . (a) Clean; (b) Noisy; (c) WTSF; (d) MIRE; (e) GIF; (f) CNN; (g) Ours with i max = 2 ; (h) Ours with i max = 40 .
Sensors 18 04299 g015
Figure 16. Filtered results for Kettle corrupted by stripe niose with σ = 0.32 . (a) Clean; (b) Noisy; (c) WTSF; (d) MIRE; (e) GIF; (f) CNN; (g) Ours with i max = 2 ; (h) Ours with i max = 40 .
Figure 16. Filtered results for Kettle corrupted by stripe niose with σ = 0.32 . (a) Clean; (b) Noisy; (c) WTSF; (d) MIRE; (e) GIF; (f) CNN; (g) Ours with i max = 2 ; (h) Ours with i max = 40 .
Sensors 18 04299 g016
Figure 17. Filtered result for Fence (a) Clean; (b) Noisy; (c) Corrected.
Figure 17. Filtered result for Fence (a) Clean; (b) Noisy; (c) Corrected.
Sensors 18 04299 g017
Table 1. The details of the test data.
Table 1. The details of the test data.
Test DataSourceSizeSensorDescription
Simulated images
Lena Mandrill—— 256 × 256 ——Widely used gray images, added with different levels of stripe noise.
Raw IR images
StreatASL dataset 324 × 256 Handheld FLIR Tau 320 cameraOutdoor image, rich nature scene, small details and obvious stripe nonuniformity.
BuildingTendero’s dataset 384 × 288 Thales Minie-D cameraOutdoor image, regular lines and edges and obvious stripe nonuniformity.
KettleOur dataset 640 × 512 LUSTER TB-M640-CL cameraIndoor image, simple object scene, legible outline, and slight stripe nonuniformity.
Table 2. Peak signal to noise ratio (PSNR) (dB) results for Lena and Mandrill.
Table 2. Peak signal to noise ratio (PSNR) (dB) results for Lena and Mandrill.
σ Lena Mandrill
NoisyWTSFMIREGIFCNNOurs NoisyWTSFMIREGIFCNNOurs
0.0233.9731.5024.8233.6336.9037.66 34.0635.2732.5236.3935.3338.21
0.0428.0231.0224.7832.6331.2733.88 28.0234.2532.2634.5430.1935.50
0.0822.0629.5224.6229.7323.7330.39 22.1532.1431.3430.9923.5433.07
0.1615.9926.2523.7924.1316.6127.02 15.9527.2128.9524.1616.4929.08
0.3210.2721.1621.8015.9210.6822.67 10.0821.5024.9015.5910.4925.07
Table 3. Structure similarity (SSIM) results for Lena and Mandrill.
Table 3. Structure similarity (SSIM) results for Lena and Mandrill.
σ Lena Mandrill
NoisyWTSFMIREGIFCNNOurs NoisyWSTFMIREGIFCNNOurs
0.020.8940.9420.9200.9710.9790.982 0.9650.9840.9850.9900.9830.993
0.040.7180.9410.9210.9650.8840.969 0.8880.9840.9850.9870.9450.991
0.080.4800.9320.9200.9320.5850.953 0.7280.9810.9840.9760.7900.988
0.160.2600.8990.9140.7450.2900.932 0.4620.9680.9820.8890.4970.984
0.320.1110.8170.9010.3340.1210.911 0.2150.9270.9730.5340.2250.976
Table 4. ρ ˜ and AVGE results for raw IR images.
Table 4. ρ ˜ and AVGE results for raw IR images.
Street Building Kettle
ρ ˜ AVGE ρ ˜ AVGE ρ ˜ AVGE
Raw1.229 2.042 2.565
WTSF1.1010.031 1.2700.036 1.7960.005
MIRE1.1190.517 1.2700.444 1.8130.149
GIF1.1110.033 1.2570.043 1.7960.005
CNN1.1290.036 1.6970.015 1.7490.044
Ours1.0730.010 1.2530.031 1.7960.001
Table 5. Computing time (s) of different methods for simulated and raw IR images.
Table 5. Computing time (s) of different methods for simulated and raw IR images.
ImageResolutionWTSFMIREGIFCNNOurs
Lena/Mandrill 256 × 256 0.0220.2270.0521.7840.017
Street 324 × 256 0.0390.3060.0742.1250.021
Building 384 × 288 0.0420.4270.0823.0590.024
Kettle 640 × 512 0.0881.6850.19514.3900.055
Table 6. PSNR (dB) and SSIM results for Kettle corrupted by stripe noise with σ = 0.04 and σ = 0.32 .
Table 6. PSNR (dB) and SSIM results for Kettle corrupted by stripe noise with σ = 0.04 and σ = 0.32 .
NoisyWTSFMIREGIFCNN i max = 2 i max = 40
σ = 0.04 PSNR28.0532.3031.4932.6630.6733.2131.57
SSIM0.6360.9530.9550.9640.8120.9650.952
σ = 0.32 PSNR9.96125.6323.0417.9111.3118.8726.26
SSIM0.0360.7610.6130.3570.0610.3430.789
Table 7. PSNR (dB) and SSIM results for Fence.
Table 7. PSNR (dB) and SSIM results for Fence.
NoisyCorrected
PSNR29.8233.66
SSIM0.8790.947

Share and Cite

MDPI and ACS Style

Zeng, Q.; Qin, H.; Yan, X.; Yang, S.; Yang, T. Single Infrared Image-Based Stripe Nonuniformity Correction via a Two-Stage Filtering Method. Sensors 2018, 18, 4299. https://doi.org/10.3390/s18124299

AMA Style

Zeng Q, Qin H, Yan X, Yang S, Yang T. Single Infrared Image-Based Stripe Nonuniformity Correction via a Two-Stage Filtering Method. Sensors. 2018; 18(12):4299. https://doi.org/10.3390/s18124299

Chicago/Turabian Style

Zeng, Qingjie, Hanlin Qin, Xiang Yan, Shuowen Yang, and Tingwu Yang. 2018. "Single Infrared Image-Based Stripe Nonuniformity Correction via a Two-Stage Filtering Method" Sensors 18, no. 12: 4299. https://doi.org/10.3390/s18124299

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop