Next Article in Journal
The Optimization Algorithm of the Forced Current Cathodic Protection Base on Simulated Annealing
Previous Article in Journal
Direct Superbubble Detection
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Image Error Concealment Based on Deep Neural Network

1
College of Information Science and Technology, Donghua University, Shanghai 201620, China
2
Engineering Research Center of Digitized Textile & Apparel Technology, Ministry of Education, Shanghai 201620, China
*
Authors to whom correspondence should be addressed.
Algorithms 2019, 12(4), 82; https://doi.org/10.3390/a12040082
Submission received: 4 March 2019 / Revised: 3 April 2019 / Accepted: 10 April 2019 / Published: 19 April 2019

Abstract

:
In this paper, we propose a novel spatial image error concealment (EC) method based on deep neural network. Considering that the natural images have local correlation and non-local self-similarity, we use the local information to predict the missing pixels and the non-local information to correct the predictions. The deep neural network we utilize can be divided into two parts: the prediction part and the auto-encoder (AE) part. The first part utilizes the local correlation among pixels to predict the missing ones. The second part extracts image features, which are used to collect similar samples from the whole image. In addition, a novel adaptive scan order based on the joint credibility of the support area and reconstruction is also proposed to alleviate the error propagation problem. The experimental results show that the proposed method can reconstruct corrupted images effectively and outperform the compared state-of-the-art methods in terms of objective and perceptual metrics.

1. Introduction

Reliably delivering high-quality multimedia data is a significant task for applications such as television broadcasting. However, the transmission channel is not always satisfactory. When multimedia data are transmitted over error-prone channels or bandwidth-limited channels, packet loss will greatly reduce the quality of the received multimedia data. A straightforward way to alleviate this problem is to retransmit that multimedia data. However, retransmission is unavailable in many practical applications, especially under certain real-time constraints such as live broadcast and multicast. Therefore, it is crucial to develop error concealment techniques to reconstruct the received error multimedia data in order to guarantee the quality of transmission.
Image error concealment (EC), as a post-processing method, reconstructs the missing pixels without the need to modify the encoder or change the channel conditions [1]. The basic idea behind EC is to predict the missing pixels by using the correctly received ones in the current frame or adjacent frames based on the spatial or temporal correlations. According to which kind of correlation is utilized, EC methods can be classified into three categories: spatial EC (SEC) [2,3,4,5,6,7,8,9,10,11,12,13,14,15], temporal EC (TEC) [16,17,18,19,20,21,22], or spatial–temporal EC (STEC) [23,24,25,26]. In the case that the neighbor frames are not available, the SEC methods only use the information extracted from the neighboring pixels of the missing ones in the current frame. Here, the TEC methods purely take advantage of the temporal correlation. The missing blocks are replaced with similar areas in the previously decoded frames. STEC methods can be considered as a combination of SEC and TEC, which exploits the correlation in both spatial and temporal domains. Considering that the temporal correlation or information does not always exist (for example, the corrupted images are still images), therefore, we focus on the SEC methods in this paper and reconstruct the missing pixels using only the spatial information.
SEC methods reconstruct the missing pixels by utilizing the correctly received ones in adjacent regions based on the natural images that have local correlation. Sun and Kwok [4] reconstructed the missing blocks by utilizing the spatially correlated edge information, which was extracted from a large local neighborhood of surrounding pixels. This method also can be viewed as an alternating projection onto convex sets (POCS) method. It performs well in reconstructing the major edges, but may incur objectionable false edges in smooth areas. Li and Orchard [6] proposed a sequential recovery method based on orientation adaptive interpolation (OAI). In this method, the previously recovered pixels can be used in the recovery afterward. This sequential pixel-wise manner can improve the capability of capturing important edge features from the surroundings. Jan et al. [7] concealed missing image blocks based on the concept of visual clearness (VC) of edge. They used Hough transform to find the relevant edges and employed the visually clearest ones for interpolating. As several directional interpolations are combined through visual clearness, more complex textures can be reconstructed. However, it is hard to accurately determine the visual clearness. Shirani et al. [27] treated natural images as Markov random fields (MRF). They reconstructed the missing pixels by exploiting the information from wide neighborhoods. This method gained a visually comfortable but sometimes may blur details. In [28], Koloda et al. suggested using multivariate kernel density estimation (MKDE) to conceal the corrupted images. Furthermore, a minimum mean square error (MMSE) estimator was exploited to recover missing pixels in [10]. The estimator employs a probability density function obtained by kernel density estimation (KDE). More recently, Liu et al. [8] reconstructed missing pixels through an adaptive linear predictor (ALP). The predictor can automatically tune its order and support shape according to the local contexts. In addition, they proposed an uncertainty-based scan order to alleviate the error propagation problem. However, they only considered the uncertainty of the neighbor pixels of the missing pixels, while the credibility of the reconstruction also influences the error propagation. In [29], over-completed dictionaries were learned for recovering missing pixels. They trained two dictionaries individually for the missing part and the available part, and they reconstructed the missing part through a local correlation model that was trained to bridge the two dictionaries. In [14], they proposed a Gaussian-weighted non-local texture similarity measure to obtain multiple candidate patches for each target patch, using the non-local texture measure. Therefore, their algorithm is capable of reproducing the underlying textural details.
Neural network, as a powerful model, has been proved to be effective in EC tasks [15,20,21]. Shao and Chen [20] exploited a general regression neural network (GRNN) to estimate the motion vectors of the corrupted macro-blocks (MBs). They collected the adjacent motion vectors of the corrupted MBs for training the GRNN at first. Then, the corrupted MBs were reconstructed through the corresponding motion vectors, which were estimated by the GRNN. In [21], deep neural networks were used to predict the optical flow for video error concealment. They designed two parallel networks to separately process the horizontal and vertical motion fields of the optical flows of the previous frame. Then, the combined output of the two networks was used to reconstruct the corrupted portion of the video frames. Both of the aforementioned two methods reconstructed corrupted images by utilizing the information from the adjacent frames of the video. However, reliable adjacent frame information is not available in some situations. For example, corrupted images are not from videos.
Unlike [20,21], we reconstructed the missing pixels through only utilizing the information from the current frame in this paper. We propose a novel EC technique to reconstruct the missing pixels via training a deep neural network. Considering that the natural images have local correlation and non-local self-similarity, we used the local information to predict the missing pixels and the non-local information to correct the predictions. The designed neural network can be divided into two parts: the prediction part and the auto-encoder (AE) part. The first part utilizes the local correlation among pixels to predict the missing ones. The other part extracts image features, which are used to collect similar samples from the whole image. In addition, we propose a novel adaptive scan order based on the joint credibility of the support area and reconstruction to alleviate the error propagation problem. The experimental results show that the proposed algorithm can reconstruct corrupted images effectively and outperforms the compared state-of-the-art methods in terms of peak signal-to-noise ratio (PSNR) and structural similarity (SSIM).

2. Problem Formulation

Similar to the other SEC methods, we reconstructed the missing pixels using the correctly received ones. More specifically, we used the local information to predict the missing pixels and non-local information to correct the predictions in this paper.
Let O be the original image, X be the corresponding corrupted image, and X can be divided into an available part, S , and an unavailable part, U ; that is, X = U S . Therefore, the EC problem can be considered to reconstruct the unavailable part U through utilizing the information from the available part S . Without a loss of generality, we suppose that only one pixel is reconstructed at a time. Define y i as a pixel group that contains pixel i , which is located on the contour of U , as shown in Figure 1. Note that y i can be regarded as a combination of y i s and y i u . y i u is the pixel set that contains the missing pixels, and here, it is actually the missing pixel i, since we reconstruct only one pixel at a time. y i s is a pixel set formed by the adjacent and available neighbors of y i u . We call y i s a support area of y i u , since y i s can be regarded as the spatial context of y i u . Obviously, we can estimate y i u from y i s by utilizing the local correlation of natural images. Considering that natural images have non-local self-similarity properties, in our method, the non-local information is also used in the image reconstruction. We use the non-local information to correct the predictions. The reconstruction of missing pixel y i u can be defined as:
y ^ i u = ϕ ( y i s ) + λ F ( S i )
where y i s is the support area of y i u and S i is a set of samples, which are similar to y i s . Model ϕ ( · ) is used to predict the missing pixels through the corresponding support areas. Function F ( · ) uses the similar sample set S i to correct the predictions of ϕ ( · ) . λ is a factor that balances the corrections and predictions, y ^ i u is the final reconstruction that will be used to replace the missing pixel.
In addition, under the sequential framework, the corrupted images are reconstructed pixel by pixel in sequence. The sequence, which is often called a scan order, is very important to the reconstruction performance, since it determines the available context of each missing pixel. After each pixel is reconstructed, we update the available part S and the unavailable part U . The EC task is accomplished when the unavailable part U becomes an empty pixel set.
Therefore, the focus of our work is to build a model ϕ ( · ) for predicting the missing pixels, find an approach to search for useful non-local information, and use it to correct the predictions. Moreover, it is also an important issue to determine an appropriate scan order in our work.

3. Our Proposal

In this work, we propose an EC method that take into account both the local and non-local information in the reconstruction of the corrupted images. More specifically, we exploit the local information to predict the missing pixels and the non-local information to correct the predictions. In our method, a deep neural network is designed to serve as the prediction model ϕ ( · ) to achieve the EC purpose. The designed neural network can be divided into two parts: the prediction part and the auto-encoder (AE) part. The prediction part utilizes the local correlation among pixels to predict the missing ones. The AE part is used to extract the image features. Through those extracted features, we collected similar samples from the whole image. Since the designed neural network can extract image features through the AE part and predict missing pixels using the prediction part, we call it an AE-P network.
As illustrated in Figure 2, given a corrupted image X , we first collect all the possible samples from the available area to serve as the training set T = [ t 1 , t 2 , , t n ] , and each sample t in set T can be regarded as a combination of an available part t s and a missing part t u . Here, it should be pointed out that the true value of t u in training set T is known. Therefore, the training set T can be divided into two subsets T s and T u , which are composed of t s and t u , respectively. Then, the collected training set T is used to train the designed AE-P network. More specifically, we train the AE part network through unsupervised learning and the prediction part network through supervised learning. Let y i u be the current missing pixel on the contour of the unavailable region, and y i s be the corresponding support area. When we input y i s into the trained AE-P network, on the one hand, we can get the prediction ϕ ( y i s ) of the missing pixel through the prediction part network. On the other hand, the AE part network extracts the features of y i s by comparing the similarities in the feature domain and the pixel domain. Thus, we searched for samples similar to y i s from the whole image, which served as a similar sample set, S , as illustrated in the blue box in Figure 2. Then, we used these similar samples to correct the prediction ϕ ( y i s ) based on the non-local similarity of the natural images. Therefore, the final reconstruction y ^ i u is determined through combining the prediction and correction, as shown in Formula (1). In this way, both the local and non-local information are taken into account for reconstruction. In addition, to alleviate the error propagation problem, we proposed an adaptive scan order based on the joint credibility of the support area and the reconstruction.

3.1. Design of AE-P Neural Network

In this paper, a deep neural network named the AE-P network is designed to achieve the EC purpose. The network can accomplish two tasks. One is to predict the missing pixels through using the local correlation between the missing pixels and the available pixels. The other is to extract the image features so as to search for feature similar samples. The second task is accomplished through AE, which is short for auto-encoder, as proposed by Hinton [30] in 2006. The AE is an unsupervised learning method that reconstructs the input signal at the output side so as to realize the dimensionality reduction of complex data. A typical AE network consists of an encoder and a decoder. Between the encoder and decoder is the bottleneck layer, which we focus on in our method, since it is the most compact feature representation of input data. The encoder is from the input layer to the bottleneck layer, and the decoder is from the bottleneck layer to the output layer. This bottleneck layer is exactly the data representation after dimensionality reduction. Compared with the traditional dimension reduction methods such as principal component analysis (PCA), the AE network can extract high-level features of the data due to the excellent non-linear representation power of the deep neural network.
To train the AE-P network, we firstly use the subset T s to train the AE part network through unsupervised learning. Suppose that the samples in T s are N -dimensional data; then, the dimension of the input layer and the output layer of the AE network are N , correspondingly. Then, we need to determine the dimension of the bottleneck layer, which is a significant issue in the design of the AE network. In general, the lower dimension of the bottleneck layer, the higher the efficiency of coding at the expense of more information loss. So, it is necessary to balance the coding efficiency and information loss. In our method, we set the dimension of the bottleneck layer to be half that of the input layer. The structure of the deep AE network in our method is shown in Figure 3a, and the optimization of AE network is defined as:
arg min t s t ^ s 2
where t s is the one of sample of subset T s . t ^ s is the corresponding output of the AE network. As can be seen from the formula, the objective of the optimization of the AE network is to minimize the mean square error between the input and the output.
Next, we use the subset T u as the corresponding label set of T s to train the prediction part network through supervised learning. Figure 3b is the structure of the prediction network. The input of the prediction network t s is the available part of the training samples, which are the same as the input of the AE network. The output are the predictions of the unavailable part pixels of the corresponding samples. Since we reconstruct only one missing pixel at a time, the output layer dimension of the prediction network is one, representing the prediction of the missing pixel. The optimization of AE network is defined as:
arg min t u t ^ u 2
where t u represents the true values of the missing pixels, and t ^ u represents the corresponding predictions of the prediction network.
Consider that the inputs of the two aforementioned networks are exactly the same; therefore, the front parts of the two networks are designed to be the same. Thus, a new network, which we call the AE-P network, is formed through combining the two networks and sharing the same part. The structure of the AE-P network is shown in Figure 4. The trained AE-P network can predict the missing pixels and extract image features at the same time. As can be observed from the structure, the front part of the AE-P network is the AE, and the network has two different output branches. We first trained the AE network through unsupervised learning. This network corresponds to the first branch of the AE-P network. Then, we kept the parameters of the encoder and only updated the parameters of the prediction part to train the prediction network through supervised learning, which corresponds to the second branch of the AE-P network.

3.2. Training Data Collection

For training the designed AE-P network, we need a large number of samples. In order to collect appropriate training data, a template matching scheme is utilized to match and collect samples from the whole image. A challenging problem of the scheme is how to design the template shape to get the maximum available information. Similar to many SEC methods, templates with a square shape, as shown in Figure 5a, are widely used in training data collecting. The corresponding context of the missing pixel is shown in the blue dotted box in Figure 5b. It can be observed that only the available pixels in area A, which is part of the context, are used to reconstruct the current missing pixel. However, it is true that the pixels in areas B and C also have high correlation with the missing pixel. Thus, the available pixels in areas B and C should also be taken into account in image reconstruction. Since more available information is considered, the reconstruction of the missing pixel will be more reliable.
In order to get more available information from the context, eight templates with different shapes are designed in our method, as shown in Figure 6. These eight templates can be embedded around the missing pixels to augment the information collected from the context. Unlike square templates, which can only match one support area from the context for each missing pixel, we can collect multiple support areas. As illustrated in Figure 7, four support areas, y i s 1 , y i s 2 , y i s 3 , and y i s 4 around the current missing pixel y i u can be collected through matching the eight templates in the context. The available information obtained by these four support areas is shown in the blue box in Figure 7. For each support area, a reconstruction will be generated through the trained AE-P network. By combining the reconstructions of these support areas, the final reconstruction is therefore determined through all the available pixels of these support areas. The final reconstruction of the missing pixel y i u is determined as:
y ^ i u = 1 N j = 1 N y ^ i u j
where y ^ i u j is the reconstruction corresponding to the support area y ^ i s j , N is the number of matched support areas, and y ^ i u is the final reconstruction of the missing pixel. This formula shows that the final reconstruction of the missing pixel is the average of the reconstructions corresponding to all of the collected support areas.
Eight templates with different shapes are utilized to collect training data for training the AE-P network in the proposed method. However, the relative location of the missing pixels and the corresponding support area are different among the collected samples. In order to train the AE-P network, we normalized all the collected training samples into a standard shape through rotating and flipping. As shown in Figure 6, we defined the template shape down-left as the standard shape and transformed all the collected training samples into the standard shape. For example, the procedure of transforming the shape from up-left into the standard shape is shown in Figure 8.
In our method, we collected the training data from the available regions of the input-corrupted images. Specifically, we firstly used the designed eight templates to match all the possible samples in the available region. Next, we normalized the collected samples into the standard shape through the aforementioned processing. Then, the normalized collected samples could serve as the training data for training the AE-P network.

3.3. Similar Data Collection

Error concealment is an ill-posed inverse problem, as the true values of missing pixels are unavailable in practice. Thus, the prediction error, which will reduce the reconstruction performance, is inevitable. In the proposed method, we utilized the AE-P network to reconstruct the missing pixels. Considering that the AE-P network has similar outputs for similar inputs, we assumed that the prediction errors for similar inputs were similar. Based on this assumption, we searched for the data similar to the current input of the AE-P network. Then, the network prediction errors of those data could be used to correct the prediction of the current input. This can reduce the prediction error and improve the reconstruction performance. Many methods such as those in [8,28] collected similar samples in pixel space. However, it is not reliable to measure the similarity of samples in pixel space, since the pixel value in the pixel space represents the gray value. In pixel space, the collected similar samples may only be similar in pixel value, but not in the feature, especially in the texture region. To avoid the drawbacks of collecting similar samples in pixel space, we defined the feature space and collected similar samples in this space. The feature space is composed of the sample features, which are determined through the bottleneck layer of the trained AE-P network. In feature space, the feature similarity between samples is easy to measure, so we can collect samples with more similar features. In addition, the computational complexity is greatly reduced, since the dimension of feature space is much lower than that of pixel space.
The Euclidean distance is used to measure the similarity between samples and the current support area in feature space. We defined p as the current support area of the current missing pixel, and q as a collected sample with the same shape as p . f p and f q are corresponding feature representations determined through the bottleneck layer of the trained AE-P network; then, the Euclidean distance D f ( p , q ) is used to measure the similarity of p and q as:
D f ( p , q ) = i = 1 k ( f p i f q i ) 2
where f p i and f q i are the ith values of f p and f q , respectively. k is the dimension of the feature space. The formula shows that the smaller the distance, the more similar p and q are in the feature space. Formula (5) may fail at measuring the sample similarity in pixel space, since some samples are similar in feature space but very different in pixel space. Therefore, we required these collected similar samples as determined by Formula (5) to be similar to p in pixel space. We also used the Euclidean distance to measure the similarity between the collected samples and the current support area in pixel space. In order to make the measurement of the similarity in pixel space more reliable, some adjacent pixels of the missing pixel were added in the similarity calculation. As illustrated in Figure 9, the green pixels are the added ones. The similarity between p and q in pixel space is defined as follows:
D p ( p , q ) = i = 1 n ( p ¯ i q ¯ i ) 2
where p ¯ and q ¯ are the augmented pixel sets corresponding to p and q , respectively. n is the pixel number of p ¯ . The formula shows that the smaller the distance, the more similar p and q are in pixel space.
Therefore, in our method, we first used Formula (5) to measure the similarity of samples to the current support area p in feature space and then collected the first n of the most similar samples to form the set S j n = [ s 1 , s 2 , s 3 , , s n ] . As shown below:
S j n = { s i | D f ( p , s i ) < τ 1 }
where s i is the sample collected through matching the support area p , and τ 1 is the threshold selected in practice such that the first n = 500 closest samples were collected. Then, we used Formula (6) to calculate the similarity between the collected samples and the current support area p in pixel space; we only selected the first m most similar samples to serve as the similar sample set S j = [ s 1 , s 2 , s 3 , , s m ] , as shown below:
S j = { s i | D p ( p , s i ) < τ 2 , s i S j n }
where s i is the sample from set S j n , and τ 2 is the threshold selected in practice such that the first m = 50 closest samples are selected from the set S j n . In this way, the similar samples we collected are similar both in feature space and pixel space.

3.4. Prediction Error Correct

Since samples that are similar to the current support area can be collected as mentioned in the last section, those similar samples are used to correct the prediction of the current support area. Let y i u be the current missing pixel, and suppose that n support areas y i s 1 , y i s 2 , …, y i s n can be collected through matching the templates from the context. For each support area, we collected similar samples to correct the corresponding prediction. We defined S j = [ s 1 , s 2 , s 3 , , s m ] as the similar sample set corresponding to the support area y i s j . Suppose that s j , k is the k th samples in set S j ; then, the prediction error e k of sample s j , k is defined as:
e k = ϕ ( s j , k s ) s j , k u s . t . 1 k m
where s j , k s is the available part of s j , k and s j , k u is the missing part of s j , k . ϕ ( s j , k s ) is the prediction of s j , k u through the trained AE-P network and s j , k u is the true value, and e k is the prediction error produced by the network on the input s j , k s . Let set E j = [ e 1 , e 2 , e 3 , , e m ] represent the error set corresponding to the input data set S j ; then, the correction of the prediction ϕ ( y i s j ) is derived from the following formula:
a j = k = 1 m c k · e k
where c k is the proportion of the prediction error e k in the whole correction a j , and c k is determined by the similarity between sample s k s and y i s j . c k obeys the following formulas (11) and (12):
k = 1 m c k = 1
c n 1 c n 2 = D f ( s j , n 2 s , y i s j ) D f ( s j , n 1 s , y i s j )
where c n 1 and c n 2 are the proportions corresponding to e n 1 and e n 2 , y i s j is the current support area, and D f is used to calculate the Euclidean distance in feature space. Then, the reconstruction y ^ i u j determined through the support area y i s j is shown as follows:
y ^ i u j = ϕ ( y i s j ) + a j
For each support area, there will be a corresponding reconstruction generated by Formula (13). The final reconstruction y ^ i u of the missing pixel y i u is the average of those reconstructions, as shown in Formula (4).

3.5. Adaptive Scan Order

Within the framework of sequential reconstruction, the previously reconstructed pixels will be used in the subsequent pixel reconstruction; hence, the prediction errors will be accumulated and propagated to the later reconstruction. The scan order, which determines the available context of each missing pixel, plays a critical role in the reconstruction performance. A common idea of scan order, as used in [8], is to first reconstruct the missing pixels whose support areas contain more available pixels. Although this scan order has achieved fairly good performance, there are still deficiencies. For example, the scan order will be exactly the same for two different missing areas that have the same area shape. Thus, it is not flexible and conducive for the extension of edges.
In our method, we propose a novel adaptive scan order based on the joint credibility of the support area and reconstruction to alleviate the error propagation problem. The scan order depends not only on the credibility of the support area, but also on the credibility of the missing pixels’ reconstruction. Let p ( x ) stand for the confidence of pixel x . Then, the confidences of the pixels in the corrupted image are initialized as:
p ( x ) = { 1 x   is   the   corresponding   received   pixel 0 x   is   the   missing   pixel
where constant 1 stands for the pixel x being correctly received, and 0 represents it as missing. We updated the confidence of the missing pixels to 1 after reconstructing them. The confidences of the pixels in the received image were initialized as shown in Figure 10.
For each missing pixel, we find all the possible support areas around it through matching the eight templates. The sum of confidence of all the non-overlapped available pixels in these support areas is used to represent the credibility of the support area of this missing pixel, as shown in the red box in Figure 10. In the process of reconstruction, we firstly reconstructed the missing pixel whose support area had the highest credibility. However, frequently the support areas are the same; as can be seen in Figure 10, the credibility of the support areas of the current pixels y 1 , y 2 , y 3 , and y 4 are the same. In this case, we used the credibility of the reconstructions of the current missing pixels to determine the scan order. According to the non-local self-similarity of natural images, similar samples have similar pixel values at the same position. Therefore, we used the deviation between the reconstruction and the pixel value in the same location of the corresponding similar sample to measure the credibility: the lower the deviation, the higher the credibility.
Let y i u be the ith missing pixel that is located on the contour of the available region, and suppose that the n support area y i s 1 , y i s 2 , , y i s n can be collected through matching the templates. We collected corresponding similar sample sets S 1 , S 2 , , S n from the whole image. Then, the credibility of the reconstruction y ^ i u can be represented as:
C i = 1 1 m · n j = 1 n k = 1 m ( y ^ i u s j , k u ) 2 + ε
where y ^ i u is the reconstruction of y i u , and s j , k u is the true value corresponding to the missing pixel y i u in the kth similar sample of set S j . ε is a constant to ensure that the denominator is not 0. The credibility of the reconstructions of the missing pixels is determined through Formula (15): the higher the credibility, the more reliable the prediction; hence, these missing pixels are reconstructed first.

4. Experiments

In this section, comparative experiments verify the performance of the proposed algorithm. We firstly analyzed the influence of the proposed correction and adaptive scan order to the final EC performance. Then, we compared the proposed method with other state-of-the-art EC methods [4,6,7,9,10,27,31,32] to evaluate our method.
Similar to the work of others, three kinds of block loss were considered in our experiments: a 16 × 16 regular isolate block losses ( 22 %   loss   rate ) , 16 × 16 regular consecutive block losses ( 50 %   loss   rate ) , and 16 × 16 random consecutive block losses ( 25 %   loss   rate ) . This three-loss mode is shown in Figure 11.
For convincing comparisons, 13 widely used images were used as test sets in this paper. Note that we only considered grayscale images; since the color images contain multi-channels, we could reconstruct the color images by reconstructing the channels separately. All of the test images were 256   × 256 . in size, as illustrated in Figure 12.
In this paper, the size of the designed templates was set to 7 × 7 + 1 (that is a combination of a 7 × 7 square and one pixel to be predicted). The training samples were collected through matching the templates on the test images. Each sample was normalized to the range of [0,1] to serve the active range of ‘tanh’. The two parts of the AE-P network were both 11-layer fully connected networks. We used the ‘elu’ activation function after each layer except for the last layer, and we used the ‘tanh’ activation function after the last layer in order to normalize the output to [0,255], which is the grayscale range. The overview of the AE-P network can be seen in Table 1. We used Adam [33] for optimization with the learning rate of the two networks set to 0.001. The batch size was set to 600. In addition, our work is implemented on the Python-Tensorflow platform on Windows 10. The hardware platform used Intel i5 7300H CPU, 8GB of RAM, and NVIDIA GTX 1060 GPU.
In order to compare the quality of reconstruction, the widely used measurement peak signal-to-noise ratio (PSNR) is chosen serve as an objective metric to measure the image quality in our experiments. For a better comparison of structural similarities, the structural similarity (SSIM) index [33] is also used in this paper.

4.1. Comparative Studies

In our method, in order to reduce the prediction error and improve the accuracy of the AE-P network, we corrected the predictions based on the non-local self-similarity of the natural images. Moreover, we proposed an adaptive scan order based on the joint credibility of the support area and reconstruction to alleviate the error propagation problem. To evaluate the influence of the proposed correction and scan order to the final EC performance, we conducted three group comparative experiments corresponding to the three loss modes on the test images. In every group, there were three different scenarios of our method: a scenario that did not use the proposed correction, a scenario that did not use the proposed adaptive scan order, and a scenario that utilized both the proposed correction and the adaptive scan order. For convenience, we named these three scenarios ‘Cor(off)-Ord(on)’, ‘Cor(on)-Ord(off)’, and ‘Cor(on)-Ord(on)’. ‘Cor’ and ‘Ord’ correspond to the proposed correction and scan order, while ‘on’ and ‘off’ in the brackets represent whether they were used or not used. The results of the comparative experiments are shown in Figure 13, Figure 14 and Figure 15.
As can be seen from Figure 13, Figure 14 and Figure 15, in all three loss modes, scenario ‘Cor(on)-Ord(on)’ performed best in almost all of the test images in terms of PSNR and SSIM. In particular, scenario ‘Cor(on)-Ord(on)’ outperformed scenario ‘Cor(off)-Ord(on)’ by a large margin under all the loss modes and test images. The great improvement of reconstruction performance is due to the proposed correction, which can reduce the prediction error effectively. Moreover, it could be observed that the proposed adaptive scan order could also improve the reconstruction performance. Compared with the proposed correction, there is less performance improvement with the scan order. This is because the scan order obtains a better reconstruction performance of the structure, which sometimes produces false edges and leads to the reduction of the PSNR. For example, the scan order fails to improve the reconstruction performance under PSNR in Hat with random loss mode, as shown in Figure 15.
For further evaluation of the influence of the proposed correction and adaptive scan order to the final EC performance, subjective comparisons are given in Figure 16, Figure 17 and Figure 18 corresponding to the three different loss modes. It can be observed that scenario ‘Cor(on)-Ord(on)’ achieved the most comfortable visual and the highest PSNR and SSIM. Specifically, through comparing the method of scenario ‘Cor(off)-Ord(on)’ and the method of scenario ‘Cor(on)-Ord(on)’, we can observe that the proposed correction can greatly improve the reconstruction performance. As shown in the red box in Figure 16c, the bracket inside the red box is disconnected, while the bracket in Figure 16e is connected. We can also observe through the comparison between scenario ‘Cor(on)-Ord(off)’ and scenario ‘Cor(on)-Ord(on)’ that the proposed scan order can improve the reconstruction performance of edges, as shown in the red boxes in Figure 18d,e, respectively.

4.2. Objective and Subjective Performance Comparison

In order to verify the performance of the proposed method, eight other state-of-the-art EC methods—POCS [4], MRF [27], nonnormative SEC for H.264 (AVC) [31], content adaptive technique (CAD) [32], OAI [6], VC [7], sparse linear prediction (SLP) [9], and KMMSE [10]—are compared with our method. The source code of all the above methods are based on a third-party implementation [34]. The results of the EC performance comparison of the nine competing methods are given in Table 2, Table 3 and Table 4. As can be seen from the tables, our method is superior to the other eight methods in average PSNR and SSIM under three loss modes.
Table 2 illustrates the reconstruction performance of the compared methods on 16   × 16 isolate block losses. As can be observed from Table 2, the proposed method outperformed all of the other methods in average PSNR by a considerable margin. Compared with the very recent image EC method KMMSE, the average PSNR gain was 0.59 dB. Compared with the well-known OAI method, our method achieved up to 0.59 dB higher PSNR and 0.0069 higher SSIM. When compared with the POCS, VC, SLP, and MRF methods, our method obtained gains of 3.73 dB, 0.98 dB, 1.42 dB, and 1.46 dB in terms of PSNR and gains of 0.0550, 0.0143, 0.0062, and 0.0285 in terms of SSIM, respectively.
Table 3 shows the quantitative comparison of 16 × 16 regular consecutive block losses. Under this loss mode, the proposed method performed better than the remaining eight methods on all of the test images in terms of both PSNR and SSIM. The average performance over the second-best method was over 0.52 dB in terms of PSNR and 0.0034 in terms of SSIM. Similarly, compared with the POCS, VC, SLP, and MRF methods, our method obtained gains of 3.16 dB, 1.84 dB, 1.59 dB, and 1.1 dB in terms of PSNR and gains of 0.0967, 0.0674, 0.0129, and 0.0261 in terms of SSIM, respectively. Moreover, compared with the recent image EC method KMMSE, the average PSNR gain is 0.67 dB.
Finally, we compared the reconstruction quality of our method with the other methods on random consecutive block losses. As illustrated in Table 4, the proposed method gained the best performance under the average PSNR and SSIM. Specifically, compared with KMMSE, SLP, and AVC, the average PSNR gains were 0.32 dB, 1.19 dB, and 1.3 dB, respectively.
In order to represent the performance of the proposed method, subjective comparisons are also given in Figure 19, Figure 20 and Figure 21. As can be observed from the figures, the proposed method produced the most visually pleasant results among all compared methods. Figure 19 compares the performance of the proposed method with the others working under isolate block loss. Severe blocking artifacts were produced in POCS, AVC, CAD and VC, and a blurred and lumpy boundary could be observed in MRF and OAI. Figure 20 presents the comparison results on regular consecutive block losses, which has the high block loss rate. The POCS, CAD, and MRF produced very serious lumps. It also observed that the CAD and VC methods produced many false edges. Only the proposed method and the recent KMMSE method produced a natural reconstruction. Figure 21 presents the comparison results on random block losses; under this loss mode, the EC task is more challenging since many missing blocks may cluster together, making it difficult to find a regular and reliable neighborhood. It can be found that some loss pixels cannot be estimated very well. Only the proposed method can restore the major edges and textures.
Regarding the run time of our proposal, since we needed to train an AE-P network for each corrupted image, the training time of the network was included in the entire image processing time. In addition, the algorithm that we implemented is not optimized; for example, we used an exhaustive search to collect similar samples. These two reasons made our algorithm time-intensive. More specifically, our algorithm required about half an hour per corrupted image under 16 × 16 isolate loss mode and a 256 × 256 image size. Therefore, our algorithm is computationally prohibitive for online applications. Although the proposed algorithm requires a longer time than the compared method, the reconstruction quality of our method is better than the others in terms of average PSNR and SSIM, as shown in Table 2, Table 3 and Table 4. Therefore, our future works will improve our algorithm in two ways. One is to optimize the algorithm and reduce the computational complexity. The other is to use a pre-trained network to avoid training the network for each image.

5. Conclusions

In this paper, we developed a novel image EC method based on the AE-P neural network. Both the local correlation and non-local self-similarity of natural images were taken into account in reconstructing the missing pixels. We used the local correlation to predict the missing pixels and the non-local information to correct the predictions. The designed neural network could be divided into two parts: the prediction part and the auto-encoder (AE) part. The prediction part utilized the local correlation among pixels to predict the missing ones. The AE part extracted image features, which were used to collect similar samples from the whole image. The predictions of the missing pixels were corrected through the collected similar samples. In addition, we proposed a novel adaptive scan order based on the joint credibility of the support area and reconstruction to alleviate the error propagation problem. The experimental results showed that the proposed algorithm could reconstruct corrupted images effectively and outperform the compared state-of-the-art methods in terms of objective and perceptual metrics.

Author Contributions

Z.Z. designed and performed the experiments, analyzed the data, and wrote the paper with contributions from all authors; R.H., F.H., and Z.W. supervised the study and verified the findings of the study. All the authors read and approved the submitted manuscript, agreed to be listed, and accepted this version for publication.

Funding

This work was supported by the National Natural Science Foundation of China (Grants Nos. 11572084, 11472061), the Fundamental Research Funds for the Central Universities (Nos. 16D110412, 17D110408) and DHU Distinguished Young Professor Program (No. 18D210402).

Conflicts of Interest

The authors declare that there is no conflict of interests regarding the publication of this article.

References

  1. Zhang, Y.; Xiang, X.; Zhao, D.; Ma, S.; Gao, W. Packet video error concealment with auto regressive model. IEEE Trans. Circuits Syst. Video Technol. 2012, 1, 12–27. [Google Scholar] [CrossRef]
  2. Zhai, G.; Yang, X.; Lin, W.; Zhang, W. Bayesian error concealment with DCT pyramid for images. IEEE Trans. Circuits Syst. Video Technol. 2010, 9, 1224–1232. [Google Scholar] [CrossRef]
  3. Hsia, S.C. An edge-oriented spatial interpolation for consecutive block error concealment. IEEE Signal Process. Lett. 2004, 1, 577–580. [Google Scholar] [CrossRef]
  4. Sun, H.; Kwok, W. Concealment of damaged block transform coded images using projections onto convex sets. IEEE Trans. Image Process. 1995, 4, 470–477. [Google Scholar] [CrossRef] [PubMed]
  5. Zeng, W.; Liu, B. Geometric-structure-based error concealment with novel applications in block-based low-bit-rate coding. IEEE Trans. Circuits Syst. Video Technol. 1999, 1, 648–665. [Google Scholar] [CrossRef]
  6. Li, X.; Orchard, M.T. Novel sequential error-concealment techniques using orientation adaptive interpolation. IEEE Trans. Circuits Syst. Video Technol. 2002, 10, 857–864. [Google Scholar]
  7. Koloda, J.; Sánchez, V.; Peinado, A.M. Spatial Error Concealment Based on Edge Visual Clearness for Image/Video Communication. Circuits Syst. Signal Process. 2013, 4, 815–824. [Google Scholar] [CrossRef]
  8. Liu, J.; Zhai, G.; Yang, X.; Yang, B.; Chen, L. Spatial error concealment with an adaptive linear predictor. IEEE Trans. Circuits Syst. Video Technol. 2015, 3, 353–366. [Google Scholar]
  9. Koloda, J.; Ostergaard, J.; Jensen, S.H.; Sánchez, V.; Peinado, A.M. Sequential error concealment for video/images by sparse linear prediction. IEEE Trans. Multimed. 2013, 6, 957–969. [Google Scholar] [CrossRef]
  10. Koloda, J.; Peinado, A.M.; Sánchez, V. Kernel-based MMSE multimedia signal reconstruction and its application to spatial error concealment. IEEE Trans. Multimed. 2014, 10, 1729–1738. [Google Scholar] [CrossRef]
  11. Park, J.; Park, D.C.; Marks, R.J.; El-Sharkawi, M.A. Recovery of image blocks using the method of alternating projections. IEEE Trans. Image Process. 2005, 4, 461–474. [Google Scholar] [CrossRef]
  12. Koloda, J.; Seiler, J.; Peinado, A.M.; Kaup, A. Scalable kernel-based minimum mean square error estimator for accelerated image error concealment. IEEE Trans. Broadcast. 2017, 11, 59–70. [Google Scholar] [CrossRef]
  13. Akbari, A.; Trocan, M.; Granard, B. Joint-domin dictionary learning-based error concealment using common space mapping. In Proceedings of the 2017 22nd International Conference on Digital Signal Processing-DSP, London, UK, 23–25 August 2017; pp. 1–5. [Google Scholar]
  14. Ding, D.; Ram, S.; Rodríguez, J.J. Image inpainting using nonlocal texture matching and nonlinear filtering. IEEE Trans. Image Process. 2019, 4, 1705–1719. [Google Scholar] [CrossRef]
  15. Alilou, V.K.; Yaghmaee, F. Application of GRNN neural network in non-texture image inpainting and restoration. Pattern Recognit. Lett. 2015, 9, 24–31. [Google Scholar] [CrossRef]
  16. Lam, W.M.; Reibman, A.R.; Liu, B. Recovery of lost or erroneously received motion vectors. In Proceedings of the 1993 IEEE International Conference on Acoustics, Speech, and Signal Processing-ICASSP, Minneapolis, MN, USA, 27–30 April 1993; Volume 5, pp. 417–420. [Google Scholar]
  17. Zhang, J.; Arnold, J.F.; Frater, M.R. A cell-loss concealment technique for MPEG-2 coded video. IEEE Trans. Circuits Syst. Video Technol. 2000, 6, 659–665. [Google Scholar] [CrossRef]
  18. Wu, J.; Liu, X.; Yoo, K.Y. A temporal error concealment method for H.264/AVC using motion vector recovery. IEEE Trans. Consum. Electron. 2008, 11, 1880–1885. [Google Scholar] [CrossRef]
  19. Qian, X.; Liu, G.; Wang, W. Recovering connected error region based on adaptive error concealment order determination. IEEE Trans. Multimed. 2009, 6, 683–695. [Google Scholar] [CrossRef]
  20. Shao, S.C.; Chen, J.H. A novel error concealment approach based on general regression neural network. In Proceedings of the 2011 International Conference on Consumer Electrics, Communication and Networks-CECNet, XianNing, China, 16–18 April 2011; pp. 4679–4682. [Google Scholar]
  21. Sankisa, A.; Punjabi, A.; Katsaggelos, A.K. Video error concealment using deep neural networks. In Proceedings of the IEEE International Conference on Image Processing-ICIP, Athens, Greece, 7–10 October 2018; pp. 380–384. [Google Scholar]
  22. Ghuge, A.D.; Rajani, P.K.; Khaparde, A. Video error concealment using moment Invariance. In Proceedings of the 2017 International Conference on Computing, Communication, Control and Automation-ICCUBEA, Pune, India, 17–18 August 2017; pp. 1–5. [Google Scholar]
  23. Zhang, Y.; Xiang, X.; Ma, S.; Zhao, D.; Gao, W. Auto regressive model and weighted least squares based packet video error concealment. In Proceedings of the 2010 Data Compression Conference-DCC, Snowbird, UT, USA, 24–26 March 2010; pp. 455–464. [Google Scholar]
  24. Agrafiotis, D.; Bull, D.R.; Canagarajah, C.N. Enhanced error concealment with mode selection. IEEE Trans. Circuits Syst. Video Technol. 2006, 8, 960–973. [Google Scholar] [CrossRef]
  25. Kung, W.-Y.; Kim, C.-S.; Kuo, C.-C.J. Spatial and temporal error concealment techniques for video transmission over noisy channels. IEEE Trans. Circuits Syst. Video Technol. 2006, 7, 789–803. [Google Scholar] [CrossRef]
  26. Ma, M.; Au, O.C.; Chan, S.-H.G.; Sun, M.-T. Edge-directed error concealment. IEEE Trans. Circuits Syst. Video Technol. 2010, 3, 382–395. [Google Scholar]
  27. Shirani, S.; Kossentini, F.; Ward, R. An Adaptive Markov Random Field Based Error Concealment Method for Video Communication in an Error Prone Environment. In Proceedings of the 1999 IEEE International Conference on Acoustics, Speech, and Signal Processing-ICASSP, Phoenix, AZ, USA, 15–19 March 1999; Volume 6, pp. 3117–3120. [Google Scholar]
  28. Koloda, J.; Peinado, A.M.; Sánchez, V. On the application of multivariate kernel density estimation to image error concealment. In Proceedings of the 2013 IEEE International Conference on Acoustics, Speech, and Signal Processing-ICASSP, Vancouver, BC, Canada, 26–31 May 2013; pp. 1330–1334. [Google Scholar]
  29. Liu, X.; Zhai, D.; Zhou, J.; Wang, S. Sparsity-Based image error concealment via adaptive dual dictionary learning and regularization. IEEE Trans. Image Process. 2017, 2, 782–796. [Google Scholar] [CrossRef] [PubMed]
  30. Hinton, G.E.; Salakhutdinov, R.R. Reducing the Dimensionality of Data with Neural Networks. Science 2006, 7, 504–507. [Google Scholar] [CrossRef] [PubMed]
  31. Varsa, V.; Hannuksela, M.M.; Wang, Y.-K. Non-Normative Error Concealment Algorithms. In Proceedings of the 14th ITU-T VCEG Meeting Document: VCEG-N62, Santa Barbara, CA, USA, 21–24 September 2001. [Google Scholar]
  32. Rongfu, Z.; Yuanhua, Z.; Xiaodong, H. Content-adaptive spatial error concealment for video communication. IEEE Trans. Consum. Electron. 2004, 2, 335–341. [Google Scholar] [CrossRef]
  33. Wang, Z.; Bovik, A.C.; Sheikh, H.R.; Simoncelli, E.P. Image quality assessment: From error visibility to structural similarity. IEEE Trans. Image Process. 2004, 4, 600–612. [Google Scholar] [CrossRef]
  34. Janko. Available online: http://dtstc.ugr.es/~jkoloda/download.html (accessed on 1 March 2019).
Figure 1. Structure of the corrupted image. Each square stands for one pixel. The black pixels are unavailable ones. The white pixels are correctly received ones. The pixel being predicted is marked in red, and the pixels marked blue are the pixels corresponding to the current pixel y i u of the similar samples.
Figure 1. Structure of the corrupted image. Each square stands for one pixel. The black pixels are unavailable ones. The white pixels are correctly received ones. The pixel being predicted is marked in red, and the pixels marked blue are the pixels corresponding to the current pixel y i u of the similar samples.
Algorithms 12 00082 g001
Figure 2. Block diagram of the proposed method. The missing pixel y i u is under process. The square patches t i ( i = 1 , 2 , , n ) are the collected samples for training. The square patches s i ( i = 1 , 2 , , m ) are the samples that are similar to the current support area y i s .
Figure 2. Block diagram of the proposed method. The missing pixel y i u is under process. The square patches t i ( i = 1 , 2 , , n ) are the collected samples for training. The square patches s i ( i = 1 , 2 , , m ) are the samples that are similar to the current support area y i s .
Algorithms 12 00082 g002
Figure 3. Structure of the utilized neural networks. (a) The structure of auto-encoder part network. (b) The structure of the prediction part network.
Figure 3. Structure of the utilized neural networks. (a) The structure of auto-encoder part network. (b) The structure of the prediction part network.
Algorithms 12 00082 g003
Figure 4. Structure of the designed auto-encoder prediction (AE-P) network.
Figure 4. Structure of the designed auto-encoder prediction (AE-P) network.
Algorithms 12 00082 g004
Figure 5. The red square is the current missing pixel, the gray squares are the available pixels, and the black squares are the unavailable pixels. (a) The template with square shape. (b) The context of the current missing pixel through matching the square template.
Figure 5. The red square is the current missing pixel, the gray squares are the available pixels, and the black squares are the unavailable pixels. (a) The template with square shape. (b) The context of the current missing pixel through matching the square template.
Algorithms 12 00082 g005
Figure 6. The eight different templates used in our method. The black squares stand for the missing pixels, and the white squares are the successfully received ones.
Figure 6. The eight different templates used in our method. The black squares stand for the missing pixels, and the white squares are the successfully received ones.
Algorithms 12 00082 g006
Figure 7. The red square stands for the current missing pixel. Four support area can be found for the currently missing pixel.
Figure 7. The red square stands for the current missing pixel. Four support area can be found for the currently missing pixel.
Algorithms 12 00082 g007
Figure 8. The procedure of transforming the shape from up-left into the standard shape down-left.
Figure 8. The procedure of transforming the shape from up-left into the standard shape down-left.
Algorithms 12 00082 g008
Figure 9. Structure of the augmented samples for selecting in pixel space. Each square stands for one pixel. The green part are the added pixels.
Figure 9. Structure of the augmented samples for selecting in pixel space. Each square stands for one pixel. The green part are the added pixels.
Algorithms 12 00082 g009
Figure 10. The initialization confidence of pixels in the received image. Each square stands for one pixel. The gray pixels with label 1 represent the correctly received pixels, while the green ones with label 0 are the missing pixels. The red pixels are the currently being filled. The part in the red box is the support areas of the missing pixel y 1 .
Figure 10. The initialization confidence of pixels in the received image. Each square stands for one pixel. The gray pixels with label 1 represent the correctly received pixels, while the green ones with label 0 are the missing pixels. The red pixels are the currently being filled. The part in the red box is the support areas of the missing pixel y 1 .
Algorithms 12 00082 g010
Figure 11. Typical block loss mode. (a) Isolate block loss. (b) Consecutive block loss. (c) Random block loss.
Figure 11. Typical block loss mode. (a) Isolate block loss. (b) Consecutive block loss. (c) Random block loss.
Algorithms 12 00082 g011
Figure 12. The 13 test images used in our experiments. From left to right and top to bottom: Baboon, Barbara, Boat, Butterfly, Columbia, Cornfield, Couple, Goldhill, Hat, Man, Peppers, Tower.
Figure 12. The 13 test images used in our experiments. From left to right and top to bottom: Baboon, Barbara, Boat, Butterfly, Columbia, Cornfield, Couple, Goldhill, Hat, Man, Peppers, Tower.
Algorithms 12 00082 g012
Figure 13. The influence of the proposed correction and adaptive scan order to the final error concealment (EC) performance under the 16 × 16 regular isolated loss mode.
Figure 13. The influence of the proposed correction and adaptive scan order to the final error concealment (EC) performance under the 16 × 16 regular isolated loss mode.
Algorithms 12 00082 g013
Figure 14. The influence of the proposed correction and adaptive scan order to the final EC performance under the 16 × 16 regular consecutive loss mode.
Figure 14. The influence of the proposed correction and adaptive scan order to the final EC performance under the 16 × 16 regular consecutive loss mode.
Algorithms 12 00082 g014
Figure 15. The influence of the proposed correction and adaptive scan order to the final EC performance under the 16 × 16 random loss mode.
Figure 15. The influence of the proposed correction and adaptive scan order to the final EC performance under the 16 × 16 random loss mode.
Algorithms 12 00082 g015
Figure 16. Subjective quality comparison of the proposed correction and adaptive scan order on the Cameraman image with 16 × 16 regular isolated loss. The reconstructed details are shown in the lower right corner of each image. (a) The received image. (b) The original image. (c) The reconstructed image with scenario ‘Cor(off)-Ord(on)’. (d) The reconstructed image with scenario ‘Cor(on)-Ord(off)’. (e) The reconstructed image with scenario ‘Cor(on)-Ord(on)’.
Figure 16. Subjective quality comparison of the proposed correction and adaptive scan order on the Cameraman image with 16 × 16 regular isolated loss. The reconstructed details are shown in the lower right corner of each image. (a) The received image. (b) The original image. (c) The reconstructed image with scenario ‘Cor(off)-Ord(on)’. (d) The reconstructed image with scenario ‘Cor(on)-Ord(off)’. (e) The reconstructed image with scenario ‘Cor(on)-Ord(on)’.
Algorithms 12 00082 g016
Figure 17. Subjective quality comparison of the proposed correction and adaptive scan order on the Peppers image with 16 × 16 regular consecutive loss. The reconstructed details are shown in the lower right corner of each image. (a) The received image. (b) The original image. (c) The reconstructed image with scenario ‘Cor(off)-Ord(on)’. (d) The reconstructed image with scenario ‘Cor(on)-Ord(off)’. (e) The reconstructed image with scenario ‘Cor(on)-Ord(on)’.
Figure 17. Subjective quality comparison of the proposed correction and adaptive scan order on the Peppers image with 16 × 16 regular consecutive loss. The reconstructed details are shown in the lower right corner of each image. (a) The received image. (b) The original image. (c) The reconstructed image with scenario ‘Cor(off)-Ord(on)’. (d) The reconstructed image with scenario ‘Cor(on)-Ord(off)’. (e) The reconstructed image with scenario ‘Cor(on)-Ord(on)’.
Algorithms 12 00082 g017
Figure 18. Subjective quality comparison of the proposed correction and adaptive scan order on the Butterfly image with 16 × 16 random loss. The reconstructed details are shown in the lower right corner of each image. (a) The received image. (b) The original image. (c) The reconstructed image with scenario ‘Cor(off)-Ord(on)’. (d) The reconstructed image with scenario ‘Cor(on)-Ord(off)’. (e) The reconstructed image with scenario ‘Cor(on)-Ord(on)’.
Figure 18. Subjective quality comparison of the proposed correction and adaptive scan order on the Butterfly image with 16 × 16 random loss. The reconstructed details are shown in the lower right corner of each image. (a) The received image. (b) The original image. (c) The reconstructed image with scenario ‘Cor(off)-Ord(on)’. (d) The reconstructed image with scenario ‘Cor(on)-Ord(off)’. (e) The reconstructed image with scenario ‘Cor(on)-Ord(on)’.
Algorithms 12 00082 g018
Figure 19. Subjective comparison of different EC algorithms on the Barbara image with 16 × 16 isolate block loss. The corresponding PSNR and SSIM values are also shown in the upper left corner.
Figure 19. Subjective comparison of different EC algorithms on the Barbara image with 16 × 16 isolate block loss. The corresponding PSNR and SSIM values are also shown in the upper left corner.
Algorithms 12 00082 g019
Figure 20. Subjective comparison of different EC algorithms on the Butterfly image with 16 × 16 consecutive block loss. The corresponding PSNR and SSIM values are also shown in the upper left corner.
Figure 20. Subjective comparison of different EC algorithms on the Butterfly image with 16 × 16 consecutive block loss. The corresponding PSNR and SSIM values are also shown in the upper left corner.
Algorithms 12 00082 g020
Figure 21. Subjective comparison of different EC algorithms on the Cameraman image with 16 × 16 random block loss. The corresponding PSNR and SSIM values are also shown in the upper left corner.
Figure 21. Subjective comparison of different EC algorithms on the Cameraman image with 16 × 16 random block loss. The corresponding PSNR and SSIM values are also shown in the upper left corner.
Algorithms 12 00082 g021
Table 1. Architectures of the designed AE-P network. After each layer except for the last one we used the ‘elu’ activation function, and after the last layer, we used the ‘tanh’ activation function.
Table 1. Architectures of the designed AE-P network. After each layer except for the last one we used the ‘elu’ activation function, and after the last layer, we used the ‘tanh’ activation function.
LayerNumber of Neurons
AEPrediction
FC 149
FC 245
FC 340
FC 435
FC 530
FC 625
FC 73020
FC 83515
FC 94010
FC 10455
FC 11491
Table 2. Peak signal-to-noise ratio (PSNR) and structural similarity (SSIM) index in comparison to EC algorithms with 16 × 16 regular isolate block losses.
Table 2. Peak signal-to-noise ratio (PSNR) and structural similarity (SSIM) index in comparison to EC algorithms with 16 × 16 regular isolate block losses.
ImagesMetricsMethods
POCSOAIAVCCADMRFVCSLPKMMSEOurs
BaboonPSNR24.5826.1025.2724.3626.1325.9524.6026.2426.54
SSIM0.83810.86780.84770.84720.8610.85960.85730.86760.8703
BarbaraPSNR24.3128.1826.6026.6727.2127.2928.5629.1829.75
SSIM0.84170.91490.88010.88770.89350.89260.92540.92640.9311
BoatPSNR26.5027.5327.2926.0727.1027.1226.4427.4927.65
SSIM0.87230.89640.88930.88150.77810.89130.88930.89380.8958
ButterflyPSNR20.5625.1021.9123.0723.7224.1924.2124.4626.34
SSIM0.85990.92510.87550.92210.90900.92800.94260.94400.9474
ColumbiaPSNR23.7626.4625.0725.8425.4527.4626.3626.9428.02
SSIM0.88590.93380.92290.92720.91600.92880.94040.93950.9429
CornfieldPSNR26.6928.9728.8826.6228.5028.9728.3629.1930.42
SSIM0.89540.93180.92690.92010.90270.93030.93260.93710.9422
CouplePSNR25.0827.8727.4426.1027.4227.5627.1327.8428.04
SSIM0.85900.90710.89320.88410.89150.89800.90100.90440.9073
GoldhillPSNR26.4028.5028.2425.0627.9528.3828.2128.7828.82
SSIM0.86120.89750.88770.86240.88560.89090.89480.89780.8997
HatPSNR27.2831.6328.7229.7430.3531.0431.2031.8232.56
SSIM0.89940.95010.93150.94310.94420.94270.95220.95760.9636
ManPSNR23.1426.3524.8324.3025.4625.7224.0625.6825.54
SSIM0.83500.88430.86130.8470.87480.87270.87580.88450.8799
PeppersPSNR24.2929.9327.3727.9228.4628.8529.0829.5029.98
SSIM0.85840.92930.90620.90980.92290.91640.92940.93000.9306
CameramanPSNR23.8927.5526.2926.9626.8426.8326.3127.3727.88
SSIM0.88580.94020.92900.93320.92980.93270.94640.94820.9484
TowerPSNR23.6826.7826.1325.3625.1726.5325.7126.5027.15
SSIM0.88010.91970.90890.90930.90800.91750.91910.92620.9279
AveragePSNR24.6327.7726.4626.0126.9027.3826.9427.7728.36
SSIM0.86710.91520.89690.89810.89360.90780.91590.91980.9221
Table 3. PSNR and SSIM comparison of EC algorithms with 16 × 16 regular consecutive block losses.
Table 3. PSNR and SSIM comparison of EC algorithms with 16 × 16 regular consecutive block losses.
ImagesMetricsMethods
POCSOAIAVCCADMRFVCSLPKMMSEOurs
BaboonPSNR21.3822.7722.2719.8122.9421.7621.2622.9222.95
SSIM0.67190.73050.69810.65540.72020.68720.70130.72280.7208
BarbaraPSNR21.3225.1923.3622.1624.2322.6525.3626.5926.53
SSIM0.69930.84070.76930.7720.80190.75310.85200.86200.8593
BoatPSNR23.8924.1424.8322.5924.8023.3223.4624.5324.93
SSIM0.74270.79420.78920.76130.77810.73760.77160.78330.7951
ButterflyPSNR18.1121.1118.9119.4220.6119.9720.2421.1022.77
SSIM0.70620.84290.75560.79250.82600.78090.86230.86930.8814
ColumbiaPSNR21.6624.1722.9123.7423.4824.1223.3524.2325.05
SSIM0.77220.86790.84540.85370.82800.81720.86000.86650.8655
CornfieldPSNR23.8424.8825.3123.0725.1224.3524.1325.2725.66
SSIM0.79270.86240.85630.81720.83930.78590.84920.86170.8651
CouplePSNR21.9524.6223.9622.1723.5522.9422.5623.5424.76
SSIM0.71910.81180.7820.7730.77470.75100.77480.78860.7940
GoldhillPSNR23.6125.3725.4423.5025.2424.6924.7525.4325.62
SSIM0.73210.79950.78180.74890.77850.75940.78220.79080.7920
HatPSNR24.5228.4026.2724.1827.5725.1727.3127.7328.62
SSIM0.79470.89130.86060.81280.88440.79310.89540.89980.9010
ManPSNR19.7722.1421.7717.1722.1321.6021.0222.0622.49
SSIM0.66680.75010.720.67010.73900.70850.73100.74610.7542
PeppersPSNR20.8825.7323.1619.7124.1423.1823.5224.1425.76
SSIM0.72090.85160.80550.76960.83190.77700.83710.84340.8530
CameramanPSNR20.4224.0622.4120.4222.6222.5122.6323.1623.74
SSIM0.76540.87040.84170.83330.84750.79410.87530.87570.8747
TowerPSNR20.3723.4722.7821.0422.0422.5522.4723.3523.96
SSIM0.74990.83390.81060.78260.80300.7704 0.83110.84070.8354
AveragePSNR21.6724.3123.3421.4623.7322.9923.2424.1624.83
SSIM0.73340.82670.79350.77250.80400.76270.81720.82700.8301
Table 4. PSNR and SSIM comparison of EC algorithms with 16 × 16 random consecutive block losses.
Table 4. PSNR and SSIM comparison of EC algorithms with 16 × 16 random consecutive block losses.
ImagesMetricsMethods
POCSOAIAVCCADMRFVCSLPKMMSEOurs
BaboonPSNR22.9323.7223.8120.4424.3818.9322.7624.2024.47
SSIM0.78520.81420.79860.78010.81250.78370.80490.81460.8163
BarbaraPSNR22.9225.8025.0721.6225.8519.9126.7627.7727.77
SSIM0.79950.87470.84450.83270.86210.82350.89590.89970.9033
BoatPSNR25.3726.0826.4421.8526.3818.0125.1126.1726.64
SSIM0.83360.86110.86010.8250.85900.80890.85640.86350.8637
ButterflyPSNR19.2721.9619.9318.4921.5817.9321.5422.0523.03
SSIM0.80310.87540.8270.84840.87390.84220.90380.90080.9111
ColumbiaPSNR22.2623.7722.8622.5923.1021.8023.7924.2524.54
SSIM0.84630.88980.88750.88060.87570.85370.89900.90630.9077
CornfieldPSNR25.2325.0426.3321.3226.0519.4225.5126.4825.87
SSIM0.85550.88690.89480.85910.87850.82630.89300.90040.8963
CouplePSNR23.6025.4525.6622.0625.4219.7724.1525.3126.40
SSIM0.81250.85710.85440.82810.85050.82140.85200.85740.8656
GoldhillPSNR25.1626.6127.1322.7027.1220.8126.7627.5127.31
SSIM0.81770.85460.84980.80690.84600.81020.85740.86080.8552
HatPSNR26.1827.8326.9821.3628.4219.580227.5029.1529.28
SSIM0.87630.90760.90810.86610.92780.83440.92940.93860.9346
ManPSNR21.3923.1722.3620.4922.7721.278121.7122.7623.48
SSIM0.77830.83080.81250.77930.82490.80960.82110.83150.8346
PeppersPSNR21.6625.4123.2821.3524.0520.0924.7525.0625.67
SSIM0.81630.87720.85420.8360.87330.82840.88920.89250.8955
CameramanPSNR22.7125.6824.9521.5125.7719.2725.3625.7926.61
SSIM0.84520.89710.89520.87960.89740.83610.91280.91420.9164
TowerPSNR22.2223.9924.3521.8123.4419.8424.8525.4425.01
SSIM0.82760.87040.8690.8540.86260.8321 0.88540.89180.8834
AveragePSNR23.1524.9624.5521.3524.9519.7424.6625.5325.85
SSIM0.82290.86900.85810.83660.86490.82390.87690.88250.8834

Share and Cite

MDPI and ACS Style

Zhang, Z.; Huang, R.; Han, F.; Wang, Z. Image Error Concealment Based on Deep Neural Network. Algorithms 2019, 12, 82. https://doi.org/10.3390/a12040082

AMA Style

Zhang Z, Huang R, Han F, Wang Z. Image Error Concealment Based on Deep Neural Network. Algorithms. 2019; 12(4):82. https://doi.org/10.3390/a12040082

Chicago/Turabian Style

Zhang, Zhiqiang, Rong Huang, Fang Han, and Zhijie Wang. 2019. "Image Error Concealment Based on Deep Neural Network" Algorithms 12, no. 4: 82. https://doi.org/10.3390/a12040082

APA Style

Zhang, Z., Huang, R., Han, F., & Wang, Z. (2019). Image Error Concealment Based on Deep Neural Network. Algorithms, 12(4), 82. https://doi.org/10.3390/a12040082

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