Improving Image Transmission by Using Polar Codes and Successive Cancellation List Decoding

This paper investigates the transmission of grey scale images encoded with polar codes and de-coded with successive cancellation list (SCL) decoders in the presence of additive white Gaussian noise. Po-lar codes seem a natural choice for this application be-cause of their error-correction efficiency combined with fast decoding. Computer simulations are carried out for evaluating the influence of different code block lengths in the quality of the decoded images. At the encoder a default polar code construction is used in combination with binary phase shift keying modulation. The results are compared with those obtained by using the clas-sic successive cancellation (SC) decoding introduced by Arikan. The quality of the reconstructed images is assessed by using peak signal to noise ratio (PSNR) and the structural similarity (SSIM) index. Curves of PSNR and SSIM versus code block length are presented il-lustrating the improvement in performance of SCL in comparison with SC.


Introduction
The ever increasing use of Internet services leads to challenges concerning transmission or storage of signals, such as image and video. In one-way communication systems, for example in digital television (DTV) broadcast (Alencar, 2009), the time lag (latency) between the signal arriving at the receiver input and being delivered as an image on the screen of a TV set, although much higher than in the old analogue TV receivers, does not constitute a critical issue. On the other hand, latency becomes a critical issue in bi-directional digital communication systems as, for example, live ex-change of medical images or mobile phone conversation. The culprit responsible for most of the latency in modern digital communication receivers is the error-correcting code (Drury, Markarian, & Pickavance, 2001). Among other improvements in future mobile systems, 5G mobile phone systems (Carlton, 2017) will employ both polar codes (Arikan, 2009) and low density parity check codes (Gallager, 2001)  In this paper we make use of a recent contribution to error-correcting codes, called polar codes by Arikan (Arikan, 2009), as mentioned earlier, considering the context of image transmission.
Polar coding for image and speech transmission using successive cancellation (SC) decoding has been proved to perform better than low density parity check (LDPC) codes over AWGN channels (Zhao, Shi, & Wang, 2011;Payommai & Chamnongthai, 2013). Reference (Mishra, Sharma, & De, 2014) compares the performance of polar codes versus BCH codes for image transmission using the 64-QAM (quadrature amplitude modulation) orthogonal frequency division multiplexing (OFDM) system over a continuous AWGN communication chan-nel with SC decoder, for values of signal to noise ratio (E b =N 0 ) in the range of 5dB to 20dB, i.e., high signal to noise ratios. The concatenation of a polar code with a BCH code is also considered in (Mishra et al., 2014) and shown to improve performance in comparison with the use of polar codes, at a cost of reducing overall code rate.
Differing from the work in (Payommai & Chamnongthai, 2013) and (Mishra et al., 2014), the main goal of this paper is to investigate the quality of grey scale images transmitted through a communication system, where images are encoded with polar codes for transmission over an AWGN channel, using binary phase-shift keying (BPSK) modulation and SCL decoding, for signal to noise ratio (E b /N 0 ) values in the range of 0 dB to 2 dB, i.e., low signal to noise ratios. This is a relevant aspect in this paper since an investigation of the performance of SCL decoding at low signal to noise ratios in the scenario of image transmission using polar codes has not been reported earlier in the literature.
The remaining sections of this paper are organized as follows. In Section 2, polar codes, SC and SCL decoding are briefly addressed. In Section 3 the methodology employed in this investigation is presented. The results and conclusions are presented in Section 4 and Section 5, respectively.

Polar Codes
Polar codes are binary (N; K) linear block codes rely-ing on the appropriate choice of K bit-channels from among N bit-channels to form a codeword and thus to send information at a rate R = K/N. The other N K bitchannels are fed with zeros. The way the bit-channels are chosen is defined by the specific design employed to construct the polar code (Arikan, 2009). The basic scheme used for polar codes is shown in Fig. 1. It is worth mentioning that N = 2 n , n 2 N and unless specified otherwise, all vectors, matrices, and operations on the code construction will be over the binary field GF(2).
where ⊕ is the modulo-2 addition. As usual, codewords are denoted as vectors x = (x 1 , x 2 , x 3 , . . . , x N ), which are expressed in matricial notation as where u = (u 1 , u 2 , u 3 , . . . , u N ) is the information vector and G is the N x N generator matrix for the polar code, which can be represented by the n-th Kronecker power F ⊗n = F ⊗ · · · ⊗ F (n copies), with F defined as F = The default codeword x is represented in (1), and can be rewritten using (F ⊗n ) with n = log 2 (N), as To represent the choice of good bit-channels and the bad bit-channels for frozen (zero) bits, consider two subsets, A and A c , which contain the indices of the rows of the good bit-channels and bad bit-channels, respectively, from the matrix representation F ⊗n . So (F ⊗n ) (A) is the matrix that contains the rows of non frozen bits and (F ⊗n ) (A c ) is the matrix that contains the rows of frozen bits. Thus, Equation (3) can, equivalently, be represented by Equation (4) as follows After the encoding process, each codeword is modulated using binary phase shift keying (BPSK) and then is transmitted over a noisy channel. In this paper the AWGN channel is considered. The output of this channel can be written as y i = h i + q i , where h i = (1 − 2x i ) and q i denotes a sample of a discrete-time AWGN process with zero mean and variance σ 2 . The transition probability P Y|H (y i | h i ) for the AWGN channel considered can be written as The log-likelihood ratio (LLR) is obtained from Equation (5) as follows

(6)
With the LLR value for the i-th bit-channel obtained from Equation (6), for 1 ≤ i ≤ N, the decoding process proceeds from right to left following the same scheme used for encoding, but in a reverse way as can be seen for example in Fig. 2 for N = 4. As a final step in the decoding process, a hard-decision is made and the estimated bit û i is propagated from left to right for intermediate decision. So the last bit decoded is used for the next bit estimation. In contrast, if the bit is wrongly estimated this error will propagate to the rest of the decoding process.
The SC decoder can be considered as a particular case of the SCL decoder (Tal & Vardy, 2015) with the number of paths equal to one. The SCL decoder considers L possible paths, L ≥ 2. When a non frozen bit decision û i is made, a new path is created to be considered by the decoder. Anytime a split is made, the number of paths doubles, and after reaching the limit 2L, the SCL decoder discards the less probable path. This process continues until a decision on the last bit is made and the SCL decoder finally chooses the most probable path to be the sequence of û i estimated information bits.  Fig. 4.

Methodology
The pixels in a matrix that represents the original image are converted into bits. Each K bits creates the vector u with length N, where N K bits are frozen bits. After the vector u is created, it is sent to the polar encoder to generate the length N codeword x. The codeword x is modulated using BPSK and finally sent over an AWGN channel. The peak signal to noise ratio (PSNR) and the structural similarity (SSIM) (Wang, Bovik, Sheikh, & Simoncelli, 2004) are used after the image is reconstructed to evaluate the decoding performance for a range of E b /N 0 values, where E b denotes the energy per bit and N 0 is the spectral noise density, for N = 1024, N = 2048, N = 4096. The PSNR measure (in dB) is given by where MSE denotes the mean square error, given by where g(I, J) is the grey level of the original image g at I-th row and J-th column, V is the number of rows and B is the number of columns and g'(I, J) is the grey level of the reconstructed image g', at I-th row and J-th column, after the decoding process. The SSIM measure is given by where µ g and µ g' are the averages of images g and g' respectively, σ g and σ g' are the variance values from g and g' respectively, σ gg' is the covariance from g and g', c 1 = (k 1 l) 2 and c 2 = (k 2 ) 2 l, where l is the dynamic range of pixels values, k 1 = 0.01 and k 2 = 0.03. These specific values of k 1 and k 2 were introduced in (Wang et al., 2004).

Computer Simulation Results
Simulation results are now presented for the image transmission scheme illustrated in Fig. 3. The quality of the reconstructed images is assessed by their corresponding PSNR and SSIM for a range of values of E b /N 0 and block lengths N. Results are presented in Fig. 5 and Fig. 6, in terms of PSNR versus E b /N 0 and SSIM versus E b /N 0 respectively, for different code block lengths using SC decoding and SCL decoding with L = 2, L = 4 and L = 8.
According to the set of PSNR (dB) versus E b /N 0 curves for the Lena image, presented in Fig. 5, one observes that the quality of the decoded image, in terms of PSNR, improves with the code block length N, for SC decoding with E b /N 0 greater than 1.2 dB. The increase of PSNR with N is also observed for SCL decoding with L = 2, SCL with L = 4 and SCL with L = 8 for E b /N 0 greater than about 1.3 dB, 1.1 dB and 1.2 dB respectively. The reason for the increase in PSNR with code block length N relies on the channel polarization effect. Indeed, as long the as the block length increases, it follows that the number of good bit-channels (available to send information) increases and, as a consequence, a better Bhattacharyya parameter is obtained, leading to bit-error probability decrease.
The influence of the number of paths L in the quality of the decoded images is also observed in Fig. 5. Consider, for instance, Fig. 5c and Fig. 5d for E b /N 0 = 2.0 dB and N = 4096. One observes that the substitution of L = 4 by L = 8 increases PSNR from about 34 dB to about 38.4 dB; for E b /N 0 = 1.8 dB, the same substitution leads to a PSNR increase from about 30 dB to about 32.5 dB, for N = 4096.
The performance of SC decoding and SCL decoding, for different values of L, in terms of SSIM versus E b /N 0 for the Lena image may be observed in Fig. 6. Considering a range of values for Eb/N0 from approximately 1.3 dB to 2.0 dB, for SC decoding as well as for SCL decoding, with L = 2, one observes in Fig.  6a and Fig. 6b that image quality improves with code block length N for a fixed E b /N 0 . As an example, for E b /N 0 = 1.8 dB and considering SCL decoding with L = 2, the substitution of N = 1024 by N = 4096 leads to an SSIM increase around 0.24, while the substitution of N = 1024 by N = 2048 leads to an SSIM increase around 0.18. One observes in Fig. 6c and Fig. 6d that, for SCL decoding with L = 4 and SCL decoding with L = 8, and a fixed E b /N 0 , the highest SSIM difference obtained by substitution of N = 1024 by N = 4096 are presented for E b /N 0 ranging from around 1.5 dB to 1.8 dB.
The benefits of increasing the number of paths L, in terms of the quality of the decoded image, may be observed in Fig. 7. Considering the Lena image at E b /N 0 = 1.6 dB, visual inspection of the images depicted in Fig. 7 reveal that the subjective quality of the decoded image improves with L. Indeed the number of annoying artifacts in the decoded image decreases with L. The increasing values of PSNR and SSIM with L corroborates the improvement in image quality with increasing L. A similar behavior is observed in Fig. 8 for the Peppers image at E b /N 0 = 1.6 dB as well as in Fig. 9 for the Cameraman image at E b /N 0 = 1.6 dB. One observes in Fig. 8 that an increase in L from 4 to 8 leads to a PSNR increase from 23.12 dB to 25.39 dB and an SSIM increase from 0.8036 to 0.8209. Regarding the Cameraman image in Fig. 9, an increase in L from 4 to 8 leads to an SSIM increase from 0.8025 to 0.8276.
Values of PSNR and SSIM for different values of E b /N 0 , using SC decoding or SCL decoding (for L = 2, L = 4 and L = 8) for N = 1024, N = 2048, and N = 4096, are presented for images Lena, Peppers, and Cameraman in Tables 1 to 4. As one observes in Table 1 Regarding SSIM results for the Lena image, presented in Table 2, the superiority of SCL decoding, with L = 2, L = 4 or L = 8, over SC decoding is observed for E b /N 0 0.4. For a fixed E b /N 0 , the superiority of SCL with L = 2, L = 4 or L = 8 over SC, in terms of PSNR of the decoded Peppers image is observed in Table 3 for all values of E b /N 0 , and for all values of N. For a fixed E b /N 0 , the superiority of SCL decoding with L = 4 or L = 8 over SC decoding is also observed in terms of SSIM, for all values of E b /N 0 under consideration, for all values of N, as observed in Table 4. It is interesting to observe that the SSIM values for N = 4096, E b /N 0 = 2 dB are 0.9912 and 0.9928, for L = 4 and L = 8, respectively. Hence, the aforementioned SSIM results are close to the maximum SSIM, that is, SSIM=1.
Regarding PSNR results for the Cameraman image, one observes in Table 4 that, for a fixed E b /N 0 , a better image quality in terms of PSNR is obtained if SC decoding is substituted by SCL decoding with L = 2 or L = 4 or L = 8, for all values of N. As an example, for E b /N 0 = 1.6 dB, PSNR increases from 22.51 to 25.62 dB if SC decoding is replaced by SCL decoding, for L = 8, with N = 4096. The benefits of using SCL decoding in substitution to SC decoding is clearly observed in Table 4, for the Cameraman image, mainly for L = 4 and L = 8.
Improvement on image quality transmitted through an AWGN channel at low signal to noise ratios has been verified by means of computer simulations employing polar codes, with the substitution of classical successive cancellation (SC) decoding by successive cancellation list (SCL) decoding. Polar codes showed to be robust for operation at low signal to noise ratios. The results are presented in terms of PSNR versus E b /N 0 and SSIM versus E b /N 0 , for code block lengths of 1024, 2048 and 4096 bits, employing SC decoding and SCL decoding (L = 2, L = 4, L = 8), and are reflected in visual inspection of the images Lena, Peppers and Cameraman. The advantage in using SCL decoding (L = 2, L = 4, L = 8) instead of the SC decoding algorithm was verified in all cases investigated, for E b /N 0 0.8 dB and the quality of the decoded images improves but with diminishing incremental gains as L increases. For completeness sake, for future work on this topic it is suggested to investigate the performance using fast and simplified SCL (Hashemi, Condo, & Gross, 2016, 2017Sarkis, Giard, Vardy, Thibeault, & Gross, 2016a) and using other decoding algorithms, such as belief propagation decoding, for example, to replace SC decoding and SCL decoding.

Conclusion
Improvement on image quality transmitted through an AWGN channel at low signal to noise ratios has been verified by means of computer simulations employing polar codes, with the substitution of classical successive cancellation (SC) decoding by successive cancellation list (SCL) decoding. Polar codes showed to be robust for operation at low signal to noise ratios. The results are presented in terms of PSNR versus E b /N 0 and SSIM versus E b /N 0 , for code block lengths of 1024, 2048 and 4096 bits, employing SC decoding and SCL decoding (L = 2, L = 4, L = 8), and are reflected in visual inspection of the images Lena, Peppers and Cameraman. The advantage in using SCL decoding (L = 2, L = 4, L = 8) instead of the SC decoding algorithm was verified in all cases investigated, for E b /N 0 0.8 dB and the quality of the decoded images improves but with diminishing incremental gains as L increases. For completeness sake, for future work on this topic it is suggested to investigate the performance using fast and simplified SCL (Hashemi, Condo, & Gross, 2016, 2017Sarkis, Giard, Vardy, Thibeault, & Gross, 2016a) and using other decoding algorithms, such as belief propagation decoding, for example, to replace SC decoding and SCL decoding.