1426 IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 51, NO. 9, SEPTEMBER 2003
A Novel Product Coding and Recurrent Alternate Decoding
Scheme for Image Transmission Over Noisy Channels
Lei Cao, Member, IEEE, and Chang Wen Chen, Senior Member, IEEE
Abstract—In this letter, we present a novel product channel
coding and decoding scheme for image transmission over noisy
channels. Two convolutional codes with at least one recursive sys-
tematic convolutional code are employed to construct the product
code. Received data are decoded alternately in two directions. A
constrained Viterbi algorithm is proposed to exploit the detection
results of cyclic redundancy check codes so that both reduction in
error patterns and fast decoding speed are achieved. Experiments
with image data coded by the algorithm of set partitioning in
hierarchical trees exhibit results better than those currently
reported in the literature.
Index Terms—Constrained Viterbi algorithm (C-VA), image
transmission, product code, recurrent alternate decoding.
I. INTRODUCTION
R
OBUST image transmission is of great interest to the
high-data-rate wireless communications. Many joint
source and channel coding (JSCC) techniques [1], [2] optimally
design the bit rate allocation between the source coder and
channel coder based on a rate-distortion (R-D) function to
achieve minimum end-to-end distortion. These techniques
generally require a fixed-length coding (FLC) algorithm in
the source coder. Although the variable-length coding (VLC)
widely adopted in image compression achieves better source
coding efficiency, the impact of channel corruption is difficult
to represent in the R-D function. One interesting result obtained
in [1] shows that under the optimized bit allocation, essentially
all the end-to-end distortion is due to the source coder since the
channel appears nearly noiseless under an optimized channel
coding rate. Therefore, the final end-to-end performance of
these JSCC techniques is limited by the FLC used in the
source coder. Sherwood and Zeger proposed a scheme [3]
that cascades the VLC-based set partitioning in hierarchical
trees (SPIHT) source coder [4] with a cyclic redundancy
check (CRC)/rate-compatible punctured convolutional (RCPC)
channel coder. This scheme outperforms previous coding
systems for known and fixed channel bit-error rate (BER)
in binary symmetric channels (BSC). However, an implicit
requirement of this scheme is that the designed channel coder
must be able to remove all the channel errors. Otherwise, the
first uncorrected bit error may cause the decoder to discard
Paper approved by E. Ayanoglu, the Editor for Communication Theory and
Coding Application of the IEEE Communications Society. Manuscript received
February 26, 2001; revised August 31, 2002. This paper was presented in part
at the IEEE Data Compression Conference, Snowbird, UT, March 2000.
L. Cao is with the Department of Electrical Engineering, University of Mis-
sissippi, University, MS 38677 USA (e-mail: lcao@olemiss.edu).
C. W. Chen is with the Department of Electrical and Computer Engi-
neering, Florida Institute of Technology, Melbourne, FL 32901 USA (e-mail:
cchen@fit.edu).
Digital Object Identifier 10.1109/TCOMM.2003.816941
Fig. 1. Product encoding of the source data.
all subsequent bits whether or not they are decoded correctly.
Unequal error protection (UEP) was proposed in [5] and [6]
for the transmission of progressive data so that more important
bits are given more channel protection. The effect of UEP is to
shift the uncorrectable bit errors to a less important bit segment
so that a reconstructed image with basic quality is guaranteed
by using the highly protected important bits. To improve the
image transmission performance in fading channels with burst
error characteristics, Sherwood and Zeger proposed a product
coding scheme [7] in which an RCPC/CRC is employed in one
direction and a Reed–Solomon (RS) code is used in the other
direction. Any data packet that cannot be correctly decoded by
the RCPC will be regarded as an erasure in the other direction
for RS decoding. In the existing schemes [3], [5], [7], when
the decoded data packet does not satisfy CRC detection, it will
be considered as an erasure and all the data in the packet are
discarded. This can be a big waste of the transmission resource,
because the majority of the bits in the packet may be correctly
received.
The proposed scheme in this letter will take full advantage
of the information in every correctly decoded bit, including its
value and position along both horizontal and vertical directions,
to form a new coding/decoding strategy. In the following, Sec-
tion II describes the details of coding and decoding of the pro-
posed scheme; Section III presents some exciting experimental
results of its application in image transmission; and Section IV
concludes this letter.
II. SYSTEM DESCRIPTION
A. Product Coding Structure
Fig. 1 shows the structure of the proposed product code. First,
the compressed source data are organized into an array on a
row-by-row basis. CRC detection codes are put at the end of
each packet in both directions. These codes are adopted in order
to determine the positions of correctly decoded data packets. In
0090-6778/03$17.00 © 2003 IEEE