# Fast Thumbnail Extraction for H.264/AVC, HEVC and VP9
## 2 Proposed Partial Decoding of H.264/AVC, HEVC and VP9 for Thumbnail Extraction  
A proposed thumbnail extraction method includes a video decoding process and a down-sampling process. The video decoding process consists of entropy decoding, inverse transformation, intra prediction and in-loop filtering for intra frames. During the thumbnail extraction, entropy decoding, inverse transformation and intra prediction are performed to reconstruct the full image frame. Then, down-sampling is performed with the thumbnail size. However, the decoding and down-sampling processes of thumbnail extraction have high computational complexity and memory usage. In this paper, we propose a partial decoding method according to prediction block size and a memory structure for high-speed thumbnail extraction and compact memory usage with minimal visual degradation. The proposed thumbnail extraction method replaces the inverse transform and intra prediction in the existing video decoding process with a partial inverse transform and partial intra prediction. The proposed algorithm uses a low-capacity thumbnail buffer optimized for the reconstructed pixels in the partial decoding process, along with two-line buffers. Figure 2 shows the block diagram of the proposed method for fast thumbnail extraction. This diagram shows a thumbnail extraction method in which the partial inverse transform and partial intra prediction are replaced with the original inverse transform and intra prediction, and the restored pixels are stored in the line buffer and thumbnail buffer to omit the down-sampling process. In this section, we describe a partial decoding method that reduces the computational complexity of the inverse transform and intra prediction process during the decoding process, with minimal visual degradation. The proposed partial decoding method restores only the pixels necessary for thumbnail extraction in order to reduce the complexity of the inverse transform and intra prediction. The pixels necessary for the thumbnail extraction are not only the pixels to be output to the thumbnail but also those necessary to avoid error propagation in the intra-picture prediction. The pixels required for intra prediction in the subsequent blocks are the right-boundary and lower-boundary pixels required for intra prediction in all the pixels of a transform block. If these pixels have errors or are not restored, the errors propagate and accumulate for the entire image, greatly reducing the visual quality of the reconstructed image. For videos with a resolution of less than Full HD, the decoding speed is sufficiently fast even in a limited hardware environment; thus, we targeted videos with a resolution of 4K or higher. As demonstrated by the experiments, the subjective quality was good enough to display the thumbnails even if the thumbnails were generated at \(1/64\) size of the original resolution from 4K or higher UHD videos. This paper is based on the \(1/64\) size thumbnail extraction method, and in order to extract the thumbnails at the \(1/2^{n}\) size of the original resolution according to the user's preference, it can be applied similarly by restoring the right and bottom boundary pixels and one pixel for each \(2^{\frac{n}{4}}\times 2^{\frac{n}{2}}\) blocks. Figure 2: Block diagram of the proposed thumbnail extraction method. In order to extract a thumbnail with a size corresponding to 1/64 of the original image resolution, one pixel is required for each 8 \(\times\) 8 block. Therefore, all the pixels output to the thumbnail correspond to one pixel at the bottom right of the 8 \(\times\) 8 unit block. However, HEVC and others employ larger transform sizes; thus, we were required to reconstruct several pixels inside the transform blocks for better visual quality. H.264/AVC, HEVC and VP9 video compression standards have various prediction and transform sizes and shapes (from 4 \(\times\) 4 to 32 \(\times\) 32, and square and non-square blocks).