Images transmitted over wireless networks are very prone to errors in the form of bit flipping and bit erasures. Though JPEG2000 Part 1 has tools available to detect bit errors within the codestream, there is no mechanism to correct these errors. Also, there are no tools for dealing with errors within the main header or the tile part headers. Even a single bit error within these headers could cause the entire image to be lost. JPEG2000 for Wireless Applications (JPWL) introduces tools to deal with these problems. It also introduces tools to allow for unequal error protection (UEP), where more important components are given more protection against bit errors.
To protect the headers, a JPWL encoder places a marker directly after the Start of Codestream (SOC) or Start of Tile (SOT) marker. If the decoder is a simple Part 1 decoder (without JPWL), this JPWL marker will be skipped. By placing the redundant information within this marker, the entire header will be protected without sacrificing conformance with Part 1. For further insurance, the coding used for the protection of the headers is predefined by the standard. This allows the decoder to correct errors within the header without first needing information from that header. This is essential to allow the best recovery possible in a lossy channel. Finally, a cyclic redundancy check (CRC) is used to ensure that the header was in fact decoded correctly.
Unequal error protection is used to further increase the quality of the received image after transmission over a lossy channel. The concept of unequal error protection is simple. Imagine that there are three equal sized components to an image. Assume that there are k bits available for FEC. The simple approach would be to divide the k available bits evenly among the three components. However, it is possible (and even likely) that those three components are not equally important to the quality of the recovered image. For instance, the three components could represent three wavelet subbands. If the lowest subband is not available, the upper two can not be decoded, even if they were received error free.
This situation motivates the concept of UEP. Following the same scenario as described above (three subbands and k total error correction bits), use more of those bits to protect the most important (lowest) subband and less of those bits to protect the least important (highest) subband. Even this simple application can yield dramatic improvement in the quality of the received image.
JPWL accomplishes this in two parts. First, error sensitivity measurements are included in the encoding procedure for each component of the image. These measurements indicate how important that component is to the quality of the received image. Then, there are a family of 16 different rate Reed-Solomon (RS) FEC codes which are defined in the standard, ranging in strength from RS(37,32) to RS(128,32), whereRS(N,K) indicates a code with N output bits for K input bits. By matching the strength of the RS code to the sensitivity of the image component, the image can be better protected without adding unnecessary overhead.