## 3 Review of Compressed Sensing-Based Image Coding Techniques  
The first application of CS to image coding acquires CS measurements for the whole image [26]. The transform matrix is based on the wavelet transform, and a random Fourier matrix is used for sensing. The measurements are obtained randomly without considering the image structure or the magnitude of its transform coefficients. It was found that, compared to an ideal \(M\)-term wavelet approximation, the quality of the reconstructed images are similar if \(3M\) to \(5M\) CS measurements are used. A similar approach is taken by [21, 27] to show the effectiveness of their reconstruction algorithms. The main disadvantage of this approach is that the computational and memory requirements at the encoder are relatively high, since the whole image is encoded. These requirements can be reduced by using block-based image coding. A block-based image coding method based on CS was first proposed in [7]. The image is divided into non-overlapping blocks, and each image block is sampled independently using an appropriate sensing matrix. The image is reconstructed using a variant of the projected Landweber (PL) reconstruction using hard thresholding and iterative Wiener filtering. This framework was later extended by [8] using directional transforms. Neither of these schemes consider the fact that different blocks may have different compressibility and every image block is encoded with the same measurement rate. In general, the sparsity of individual block is different. Smoother image blocks have a higher degree of sparsity, while texture and edges have a low level of sparsity. The approach in [9] utilizes the coefficient structure of the transform. A 2D DCT matrix is used as the sparsifying transform, and the sensing matrix is random Gaussian. A weighting matrix is applied to the sensing matrix to provide different emphasis on different coefficients. This matrix is derived from the JPEG quantization table by taking the inverse of the table entries and adjusting their amplitudes. A different weighting matrix is used for each block, which complicates the scheme significantly. Although the authors have suggested that the weighting matrix for other blocks can be obtained by sub-sampling or interpolating an initial weighting matrix, the implications are not discussed. A different way to take advantage of the sparsity of different image blocks is proposed in [10]. The transform coefficients are first randomly permuted before CS measurements are acquired. In [28], the image is pre-randomized by random permutation. Then, a block-based sensing matrix, known as structurally random matrices (SRM), is applied to the randomized data. Finally, the CS measurements are obtained by randomly down-sampling the data. The SRM is later modified to become the scrambled block Hadamard ensemble (SBHE) in [29]. This method can be generally applied to different sparse signals. Wavelet transform can also be used as a sparsifying transform for CS encoding. The benefit is that CS sampling can be adapted to the structure of the wavelet decomposition. This technique is generally called multi-scale CS encoding. It was first proposed in [30], where CS encoding was applied to measure the fine-scale properties of the signal. A similar approach is adopted in [31], where an image is separated into dense and sparse components. The dense component is encoded by linear measurements, while the sparse component is encoded by CS. Another multi-scale CS image coding is presented in [32]. Block-based CS is deployed independently within each sub-band of each decomposition level of the wavelet transform of the image. If the wavelet transform produces \(L\) levels of wavelet decomposition, each sub-band, \(s\), at level \(L\) is divided into \(B_{L}\times B_{L}\) blocks and sampled with a sensing matrix. All the measurements of the baseband are retained. Other levels are sampled at different rates. A multi-scale CS encoding technique that is based on the Bayesian perspective was proposed in [33].