Abstract
Block compressive sensing of image results in blocking artifacts and blurs when reconstructing images. To solve this problem, we propose an adaptive block compressive sensing framework using error between blocks. First, we divide image into several non-overlapped blocks and compute the errors between each block and its adjacent blocks. Then, the error between blocks is used to measure the structure complexity of each block, and the measurement rate of each block is adaptively determined based on the distribution of these errors. Finally, we reconstruct each block using a linear model. Experimental results show that the proposed adaptive block compressive sensing system improves the qualities of reconstructed images from both subjective and objective points of view when compared with image block compressive sensing system.
Introduction
The Nyquist sampling theorem requires to sample image signals with a high speed before image compression. The sampling rate must be at least as twice as the signal frequency in order to reconstruct signals accurately. At such a high sampling rate, sensed objects had to take a large number of sensors to sample the signal and then store it, which poses a great challenge to the sampling device. In recent years, compressed sensing (CS) has emerged with its capability of recovering an image without distortion at a sub-Nyquist sampling rate.1–5 First, it uses a random measurement matrix
Under block compressive sensing (BCS) framework of images, 12 the sensed object is divided into n blocks of B×B in size, and each image block is measured independently using the same measurement matrix. It can reduce the storage capacity, so that the high-dimensional image acquisition can be effectively and easily achieved. However, due to different details of image blocks, the same sampling rate to measure and reconstruct each image block would cause a quality decline of block reconstruction or waste of resources. To overcome this defect, adaptive block compressive sensing (ABCS) is proposed by Zhang et al. 13 and Canh et al. 14 to adaptively allocate CS measurements on the basis of BCS, and to set the different measurement times for each block according to different feature details. ABCS can capture the image characteristics effectively and further improve the performance of BCS system. Zhang et al. 13 use block variance to express the feature details of each block and adaptively measure the image based on the distribution of block variance. In the study by Canh et al., 14 the image edges are used as features and adaptively allocate the measurement times for each block according to varying edge. The above-mentioned works use some image features to reveal the block structure complexity, for example, block variance, edges. Although they can improve the reconstruction quality, these methods ignored the correlation between blocks. There are many blocking artifacts on reconstructed image, leading to a poor subjective quality. Therefore, an appropriate image feature, which is used to assess block structure complexity, has been a key to improving the performance of ABCS.
Based on ABCS framework, we propose an ABCS coding system which uses error between blocks to allocate measuring resources. The main contributions of our ABCS system are listed as follows:
We use the error between blocks to measure the block structure complexity, and according to this index, the CS measurements are adaptively allocated for image blocks.
We use a linear model to reconstruct each image block. Instead of using numerical iteration method, this model only performs several matrix-vector products.
By computing the error between each block and its adjacent blocks, we assign different sampling rates to each block. A higher measurement rate is assigned to blocks with larger error between blocks and lower one to blocks with smaller error. In order to avoid nonlinear iterative process, the proposed ABCS system performs linear reconstruction at decoder and reconstructs accurately image with a low computational complexity.
This article is organized as follows. Section “Introduction” is an introduction to CS and previous works; section “ABCS coding framework” describes ABCS coding framework; section “Proposed scheme” presents the proposed ABCS system using error between blocks; section “Experimental results” gives experiment results; and section “Conclusion” concludes this article.
ABCS coding framework
Image ABCS allocates sampling resources independently according to block characteristics. Details are as follows.
At the CS encoder, a natural scene is first captured by complementary metal-oxide semiconductor (CMOS) sensors as a full-sampling image
in which the elements of Mi×B2
After implementing CS sampling, all block measurement vectors are transmitted to decoder, and they are used to reconstruct the original image.

Dividing an image into blocks.
At the CS decoder, ABCS system generally constructs the minimum l2-l1 norm reconstruction model as
in which||·||2 and ||·||1 are l2 and l1 norm, respectively;
Proposed scheme
Figure 2 presents the framework of the proposed ABCS scheme. At the CS encoder, after fully sampling image

Proposed ABCS framework.
Error between blocks
This article uses error between blocks to reveal the structure complexity of each block. The calculation of error between blocks is shown in Figure 3. We select four neighboring blocks

Illustration of computing error between blocks.
The maximum error value of
We calculate the error between blocks for
According to wi, we set measurement times of
Measurement allocation
According to wi, we adaptively allocate measurement times for each block. First, we assign the initial measurement number M0i to
where M is the total measurement number of image and c is a parameter to control M0i. Then, we calculate the measurement times of
where round[.] is rounding operator. Finally, in order to avoid that the measurement number exceeds the total number of pixels in image block, we set the upper limit of the measurement times as B2 for each block, and the measurement number exceeding the upper limit is evenly distributed to other blocks.
Linear recovery
Traditional recovery algorithms solve the model (3) to reconstruct image blocks, and they have such a high computational complexity that it is difficult to reconstruct image blocks in a short time, so the proposed ABCS system adopts a linear recovery method. The idea of linear recovery is to construct a linear operator
The estimation residual
The linear operator
where E[.] is the expectation function. Make the gradient of
Plug equation (1) into equation (12), and we get
where
The elements Rxx(i, j) in
where δm,n is the chessboard distance
24
between xim and xim, ρ is the correlation coefficient, and we set it to 0.95 in general. According to
Experimental results
The performance of ABCS system presented in this article is evaluated on a number of grayscale images of 512 × 512 in size including Lenna, Barbara, Peppers, Goldhill, and Mandrill. These test images include varying degrees of smoothness, edge, and texture detail. In all experiments, the block size B is set to 16, and the preset total measurement rate S (= M/N) between 0.1 and 0.5. The peak signal-to-noise ratio (PSNR) 25 is used to objectively evaluate the qualities of reconstructed images. The PSNR is computed by the following formula
in which R×C is the size of image, xi,j is the pixel of original image, and
Threshold setting
We set the value of c to be between 0.05 and 0.5. Figure 4 shows the average PSNR curve on five test images as c value varies when the measurement rate S is, respectively, 0.1, 0.3, and 0.5. For the five images of different textures, the PSNR value has a significant upward trend when c is in the interval of [0.05, 0.30], indicating that our allocation scheme is ineffective when c is small. PSNR value shows a slow downward trend when c is in the interval of [0.30, 0.50], indicating that a large c value can degrade the reconstruction quality. When c is set to be 0.30, the average PSNR value on all test images is the highest at any measurement rate, so we set c to be 0.30 to get the better reconstruction quality.

Average PSNR curve on the five test images as c value varies when the measurement rate S is (a) 0.1, (b) 0.3, and (c) 0.5, respectively.
Performance comparison
Table 1 shows the PSNR comparison of the proposed ABCS system and the BCS system at different measurement rates. Compared with the BCS system, the proposed ABCS system achieves a higher PSNR value at any measurement rate, for example, when S is set to be 0.1, 0.4, and 0.5, our system obtains an average PSNR gain of 0.47, 0.33, and 0.53 dB, respectively, which indicates that our system gets the better objective quality than BCS system. Table 2 shows the average reconstruction time on all test images at different measurement rates. It can be seen that our system has a low computational complexity, and it requires only 1.86 s on average to reconstruct a test image. Figure 5 shows the visual reconstruction qualities of reconstructed images by BCS and the proposed ABCS systems at S = 0.3. We can see that these reconstructed images by the BCS system are fuzzier than those reconstructed by our system, especially that some texture details cannot be well preserved, for example, for Mandrill reconstructed by BCS, severe blurs occur in the region of hairs, but our system generates the clear hair region. The proposed system provides the more pleasure visual results compared with BCS system. From the above, we can see that our system provides better objective and subjective qualities with a low computational complexity when compared with BCS system.
PSNR (in dB) comparison of the proposed ABCS system and the BCS system at the different measurement rates.
PSNR: peak signal-to-noise ratio; ABCS: adaptive block compressive sensing; BCS: block compressive sensing; ΔPSNR: PSNR gain of the proposed system over BCS system.
Reconstruction time (in s) of the proposed ABCS system at any measurement rate.
ABCS: adaptive block compressive sensing.

Visual qualities of reconstructed images by BCS and the proposed ABCS systems at S = 0.3. Left: reconstructed images by the proposed system; Middle: reconstructed images by the BCS system; Right: original images. (a) Lenna, (b) Barbara, (c) Peppers, (d) Goldhill, and (e) Mandrill.
Conclusion
In this article, we propose an ABCS system that adaptively measures each block according to error between blocks which is used to measure the structure complexity of each block. We set the measurement rate adaptively and reconstruct images using a linear model. The experimental results show that the proposed ABCS system provides better objective and subjective qualities when compared with BCS system.
The measurement vectors derived from our system must be quantized before transmission. However, we disregard this aspect, assuming that measurement vectors are densely quantized. In the future work, we will investigate the impact of quantization on the performance of ABCS system and propose an efficient quantization scheme to improve the practical utility of our system.
Footnotes
Handling Editor: Ioan Tudosa
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This work was supported in part by the National Natural Science Foundation of China, under Grants nos. 61501393 and 61601396; by the MOE (Ministry of Education in China) Project of Humanities and Social Sciences, under Grant no. 17YJCZH123; and by Nanhu Scholars Program for Young Scholars of XYNU.
