17 research outputs found

    VLSI architectures design for encoders of High Efficiency Video Coding (HEVC) standard

    Get PDF
    The growing popularity of high resolution video and the continuously increasing demands for high quality video on mobile devices are producing stronger needs for more efficient video encoder. Concerning these desires, HEVC, a newest video coding standard, has been developed by a joint team formed by ISO/IEO MPEG and ITU/T VCEG. Its design goal is to achieve a 50% compression gain over its predecessor H.264 with an equal or even higher perceptual video quality. Motion Estimation (ME) being as one of the most critical module in video coding contributes almost 50%-70% of computational complexity in the video encoder. This high consumption of the computational resources puts a limit on the performance of encoders, especially for full HD or ultra HD videos, in terms of coding speed, bit-rate and video quality. Thus the major part of this work concentrates on the computational complexity reduction and improvement of timing performance of motion estimation algorithms for HEVC standard. First, a new strategy to calculate the SAD (Sum of Absolute Difference) for motion estimation is designed based on the statistics on property of pixel data of video sequences. This statistics demonstrates the size relationship between the sum of two sets of pixels has a determined connection with the distribution of the size relationship between individual pixels from the two sets. Taking the advantage of this observation, only a small proportion of pixels is necessary to be involved in the SAD calculation. Simulations show that the amount of computations required in the full search algorithm is reduced by about 58% on average and up to 70% in the best case. Secondly, from the scope of parallelization an enhanced TZ search for HEVC is proposed using novel schemes of multiple MVPs (motion vector predictor) and shared MVP. Specifically, resorting to multiple MVPs the initial search process is performed in parallel at multiple search centers, and the ME processing engine for PUs within one CU are parallelized based on the MVP sharing scheme on CU (coding unit) level. Moreover, the SAD module for ME engine is also parallelly implemented for PU size of 32ร—32. Experiments indicate it achieves an appreciable improvement on the throughput and coding efficiency of the HEVC video encoder. In addition, the other part of this thesis is contributed to the VLSI architecture design for finding the first W maximum/minimum values targeting towards high speed and low hardware cost. The architecture based on the novel bit-wise AND scheme has only half of the area of the best reference solution and its critical path delay is comparable with other implementations. While the FPCG (full parallel comparison grid) architecture, which utilizes the optimized comparator-based structure, achieves 3.6 times faster on average on the speed and even 5.2 times faster at best comparing with the reference architectures. Finally the architecture using the partial sorting strategy reaches a good balance on the timing performance and area, which has a slightly lower or comparable speed with FPCG architecture and a acceptable hardware cost

    Spatial Correlation-Based Motion-Vector Prediction for Video-Coding Efficiency Improvement

    Get PDF
    H.265/HEVC achieves an average bitrate reduction of 50% for fixed video quality compared with the H.264/AVC standard, while computation complexity is significantly increased. The purpose of this work is to improve coding efficiency for the next-generation video-coding standards. Therefore, by developing a novel spatial neighborhood subset, efficient spatial correlation-based motion vector prediction (MVP) with the coding-unit (CU) depth-prediction algorithm is proposed to improve coding efficiency. Firstly, by exploiting the reliability of neighboring candidate motion vectors (MVs), the spatial-candidate MVs are used to determine the optimized MVP for motion-data coding. Secondly, the spatial correlation-based coding-unit depth-prediction is presented to achieve a better trade-off between coding efficiency and computation complexity for interprediction. This approach can satisfy an extreme requirement of high coding efficiency with not-high requirements for real-time processing. The simulation results demonstrate that overall bitrates can be reduced, on average, by 5.35%, up to 9.89% compared with H.265/HEVC reference software in terms of the Bjontegaard Metric

    Efficient HEVC-based video adaptation using transcoding

    Get PDF
    In a video transmission system, it is important to take into account the great diversity of the network/end-user constraints. On the one hand, video content is typically streamed over a network that is characterized by different bandwidth capacities. In many cases, the bandwidth is insufficient to transfer the video at its original quality. On the other hand, a single video is often played by multiple devices like PCs, laptops, and cell phones. Obviously, a single video would not satisfy their different constraints. These diversities of the network and devices capacity lead to the need for video adaptation techniques, e.g., a reduction of the bit rate or spatial resolution. Video transcoding, which modifies a property of the video without the change of the coding format, has been well-known as an efficient adaptation solution. However, this approach comes along with a high computational complexity, resulting in huge energy consumption in the network and possibly network latency. This presentation provides several optimization strategies for the transcoding process of HEVC (the latest High Efficiency Video Coding standard) video streams. First, the computational complexity of a bit rate transcoder (transrater) is reduced. We proposed several techniques to speed-up the encoder of a transrater, notably a machine-learning-based approach and a novel coding-mode evaluation strategy have been proposed. Moreover, the motion estimation process of the encoder has been optimized with the use of decision theory and the proposed fast search patterns. Second, the issues and challenges of a spatial transcoder have been solved by using machine-learning algorithms. Thanks to their great performance, the proposed techniques are expected to significantly help HEVC gain popularity in a wide range of modern multimedia applications

    Hardware based High Accuracy Integer Motion Estimation and Merge Mode Estimation

    Get PDF
    ํ•™์œ„๋…ผ๋ฌธ (๋ฐ•์‚ฌ)-- ์„œ์šธ๋Œ€ํ•™๊ต ๋Œ€ํ•™์› ๊ณต๊ณผ๋Œ€ํ•™ ์ „๊ธฐยท์ปดํ“จํ„ฐ๊ณตํ•™๋ถ€, 2017. 8. ์ดํ˜์žฌ.HEVC๋Š” H.264/AVC ๋Œ€๋น„ 2๋ฐฐ์˜ ๋›ฐ์–ด๋‚œ ์••์ถ• ํšจ์œจ์„ ๊ฐ€์ง€์ง€๋งŒ, ๋งŽ์€ ์••์ถ• ๊ธฐ์ˆ ์ด ์‚ฌ์šฉ๋จ์œผ๋กœ์จ, ์ธ์ฝ”๋” ์ธก์˜ ๊ณ„์‚ฐ ๋ณต์žก๋„๋ฅผ ํฌ๊ฒŒ ์ฆ๊ฐ€์‹œ์ผฐ๋‹ค. HEVC์˜ ๋†’์€ ๊ณ„์‚ฐ ๋ณต์žก๋„๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•œ ๋งŽ์€ ์—ฐ๊ตฌ๋“ค์ด ์ด๋ฃจ์–ด์กŒ์ง€๋งŒ, ๋Œ€๋ถ€๋ถ„์˜ ์—ฐ๊ตฌ๋“ค์€ H.264/AVC๋ฅผ ์œ„ํ•œ ๊ณ„์‚ฐ ๋ณต์žก๋„ ๊ฐ์†Œ ๋ฐฉ๋ฒ•์„ ํ™•์žฅ ์ ์šฉํ•˜๋Š” ๋ฐ์— ๊ทธ์ณ, ๋งŒ์กฑ์Šค๋Ÿฝ์ง€ ์•Š์€ ๊ณ„์‚ฐ ๋ณต์žก๋„ ๊ฐ์†Œ ์„ฑ๋Šฅ์„ ๋ณด์ด๊ฑฐ๋‚˜, ์ง€๋‚˜์น˜๊ฒŒ ํฐ ์••์ถ• ํšจ์œจ ์†์‹ค์„ ๋™๋ฐ˜ํ•˜์—ฌ HEVC์˜ ์ตœ๋Œ€ ์••์ถ• ์„ฑ๋Šฅ์„ ๋Œ์–ด๋‚ด์ง€ ๋ชปํ–ˆ๋‹ค. ํŠนํžˆ ์•ž์„œ ์—ฐ๊ตฌ๋œ ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜์˜ ์ธ์ฝ”๋”๋Š” ์‹ค์‹œ๊ฐ„ ์ธ์ฝ”๋”์˜ ์‹คํ˜„์ด ์šฐ์„ ๋˜์–ด ์••์ถ• ํšจ์œจ์˜ ํฌ์ƒ์ด ๋งค์šฐ ํฌ๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ, ๋ณธ ์—ฐ๊ตฌ์—์„œ๋Š” ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ Inter prediction์˜ ๊ณ ์†ํ™”๋ฅผ ์ด๋ฃธ๊ณผ ๋™์‹œ์— HEVC๊ฐ€ ๊ฐ€์ง„ ์••์ถ• ์„ฑ๋Šฅ์˜ ์†์‹ค์„ ์ตœ์†Œํ™”ํ•˜๊ณ , ์‹ค์‹œ๊ฐ„ ์ฝ”๋”ฉ์ด ๊ฐ€๋Šฅํ•œ ํ•˜๋“œ์›จ์–ด ๊ตฌ์กฐ๋ฅผ ์ œ์•ˆํ•˜์˜€๋‹ค. ๋ณธ ์—ฐ๊ตฌ์—์„œ ์ œ์•ˆํ•œ bottom-up MV ์˜ˆ์ธก ๋ฐฉ๋ฒ•์€ ๊ธฐ์กด์˜ ๊ณต๊ฐ„์ , ์‹œ๊ฐ„์ ์œผ๋กœ ์ธ์ ‘ํ•œ PU๋กœ๋ถ€ํ„ฐ MV๋ฅผ ์˜ˆ์ธกํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์•„๋‹Œ, HEVC์˜ ๊ณ„์ธต์ ์œผ๋กœ ์ธ์ ‘ํ•œ PU๋กœ๋ถ€ํ„ฐ MV๋ฅผ ์˜ˆ์ธกํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ œ์•ˆํ•˜์—ฌ MV ์˜ˆ์ธก์˜ ์ •ํ™•๋„๋ฅผ ํฐ ํญ์œผ๋กœ ํ–ฅ์ƒ์‹œ์ผฐ๋‹ค. ๊ฒฐ๊ณผ์ ์œผ๋กœ ์••์ถ• ํšจ์œจ์˜ ๋ณ€ํ™” ์—†์ด IME์˜ ๊ณ„์‚ฐ ๋ณต์žก๋„๋ฅผ 67% ๊ฐ์†Œ์‹œํ‚ฌ ์ˆ˜ ์žˆ์—ˆ๋‹ค. ๋˜ํ•œ, ๋ณธ ์—ฐ๊ตฌ์—์„œ๋Š” ์ œ์•ˆ๋œ bottom-up IME ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ ์šฉํ•˜์—ฌ ์‹ค์‹œ๊ฐ„ ๋™์ž‘์ด ๊ฐ€๋Šฅํ•œ ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜์˜ IME๋ฅผ ์ œ์•ˆํ•˜์˜€๋‹ค. ๊ธฐ์กด์˜ ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ IME๋Š” ๊ณ ์† IME ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ๊ฐ–๋Š” ๋‹จ๊ณ„๋ณ„ ์˜์กด์„ฑ์œผ๋กœ ์ธํ•œ idle cycle์˜ ๋ฐœ์ƒ๊ณผ ์ฐธ์กฐ ๋ฐ์ดํ„ฐ ์ ‘๊ทผ ๋ฌธ์ œ๋กœ ์ธํ•ด, ๊ณ ์† IME ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ฑฐ๋‚˜ ๋˜๋Š” ํ•˜๋“œ์›จ์–ด์— ๋งž๊ฒŒ ๊ณ ์† IME ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ˆ˜์ •ํ•˜์˜€๊ธฐ ๋•Œ๋ฌธ์— ์••์ถ• ํšจ์œจ์˜ ์ €ํ•˜๊ฐ€ ์ˆ˜ ํผ์„ผํŠธ ์ด์ƒ์œผ๋กœ ๋งค์šฐ ์ปธ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ณธ ์—ฐ๊ตฌ์—์„œ๋Š” ๊ณ ์† IME ์•Œ๊ณ ๋ฆฌ์ฆ˜์ธ TZS ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ฑ„ํƒํ•˜์—ฌ TZS ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๊ณ„์‚ฐ ๋ณต์žก๋„ ๊ฐ์†Œ ์„ฑ๋Šฅ์„ ํ›ผ์†ํ•˜์ง€ ์•Š๋Š” ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜์˜ IME๋ฅผ ์ œ์•ˆํ•˜์˜€๋‹ค. ๊ณ ์† IME ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ•˜๋“œ์›จ์–ด์—์„œ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ ๋‹ค์Œ ์„ธ ๊ฐ€์ง€ ์‚ฌํ•ญ์„ ์ œ์•ˆํ•˜๊ณ  ํ•˜๋“œ์›จ์–ด์— ์ ์šฉํ•˜์˜€๋‹ค. ์ฒซ ์งธ๋กœ, ๊ณ ์† IME ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๊ณ ์งˆ์  ๋ฌธ์ œ์ธ idle cycle ๋ฐœ์ƒ ๋ฌธ์ œ๋ฅผ ์„œ๋กœ ๋‹ค๋ฅธ ์ฐธ์กฐ ํ”ฝ์ณ์™€ ์„œ๋กœ ๋‹ค๋ฅธ depth์— ๋Œ€ํ•œ IME๋ฅผ ์ปจํ…์ŠคํŠธ ์Šค์œ„์นญ์„ ํ†ตํ•ด ํ•ด๊ฒฐํ•˜์˜€๋‹ค. ๋‘˜ ์งธ๋กœ, ์ฐธ์กฐ ๋ฐ์ดํ„ฐ๋กœ์˜ ๋น ๋ฅด๊ณ  ์ž์œ ๋กœ์šด ์ ‘๊ทผ์„ ์œ„ํ•ด ์ฐธ์กฐ ๋ฐ์ดํ„ฐ์˜ locality ์ด์šฉํ•œ multi bank SRAM ๊ตฌ์กฐ๋ฅผ ์ œ์•ˆํ•˜์˜€๋‹ค. ์…‹ ์งธ๋กœ, ์ง€๋‚˜์น˜๊ฒŒ ์ž์œ ๋กœ์šด ์ฐธ์กฐ ๋ฐ์ดํ„ฐ ์ ‘๊ทผ์ด ๋ฐœ์ƒ์‹œํ‚ค๋Š” ๋Œ€๋Ÿ‰์˜ ์Šค์œ„์นญ mux์˜ ์‚ฌ์šฉ์„ ํ”ผํ•˜๊ธฐ ์œ„ํ•ด ํƒ์ƒ‰ ์ค‘์‹ฌ์„ ๊ธฐ์ค€์œผ๋กœ ํ•˜๋Š” ์ œํ•œ๋œ ์ž์œ ๋„์˜ ์ฐธ์กฐ ๋ฐ์ดํ„ฐ ์ ‘๊ทผ์„ ์ œ์•ˆํ•˜์˜€๋‹ค. ๊ฒฐ๊ณผ ์ œ์•ˆ๋œ IME ํ•˜๋“œ์›จ์–ด๋Š” HEVC์˜ ๋ชจ๋“  ๋ธ”๋ก ํฌ๊ธฐ๋ฅผ ์ง€์›ํ•˜๋ฉด์„œ, ์ฐธ์กฐ ํ”ฝ์ฒ˜ 4์žฅ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ, 4k UHD ์˜์ƒ์„ 60fps์˜ ์†๋„๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ด ๋•Œ ์••์ถ• ํšจ์œจ์˜ ์†์‹ค์€ 0.11%๋กœ ๊ฑฐ์˜ ๋‚˜ํƒ€๋‚˜์ง€ ์•Š๋Š”๋‹ค. ์ด ๋•Œ ์‚ฌ์šฉ๋˜๋Š” ํ•˜๋“œ์›จ์–ด ๋ฆฌ์†Œ์Šค๋Š” 1.27M gates์ด๋‹ค. HEVC์— ์ƒˆ๋กœ์ด ์ฑ„ํƒ๋œ merge mode estimation์€ ์••์ถ• ํšจ์œจ ๊ฐœ์„  ํšจ๊ณผ๊ฐ€ ๋›ฐ์–ด๋‚œ ์ƒˆ๋กœ์šด ๊ธฐ์ˆ ์ด์ง€๋งŒ, ๋งค PU ๋งˆ๋‹ค ๊ณ„์‚ฐ ๋ณต์žก๋„์˜ ๋ณ€๋™ ํญ์ด ์ปค์„œ ํ•˜๋“œ์›จ์–ด๋กœ ๊ตฌํ˜„๋˜๋Š” ๊ฒฝ์šฐ ํ•˜๋“œ์›จ์–ด ๋ฆฌ์†Œ์Šค์˜ ๋‚ญ๋น„๊ฐ€ ๋งŽ๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ ๋ณธ ์—ฐ๊ตฌ์—์„œ๋Š” ํšจ์œจ์ ์ธ ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ MME ๋ฐฉ๋ฒ•๊ณผ ํ•˜๋“œ์›จ์–ด ๊ตฌ์กฐ๋ฅผ ํ•จ๊ป˜ ์ œ์•ˆํ•˜์˜€๋‹ค. ๊ธฐ์กด MME ๋ฐฉ์‹์€ ์ด์›ƒ PU์— ์˜ํ•ด ๋ณด๊ฐ„ ํ•„ํ„ฐ ์ ์šฉ ์—ฌ๋ถ€๊ฐ€ ๊ฒฐ์ •๋˜๊ธฐ ๋•Œ๋ฌธ์—, ๋ณด๊ฐ„ ํ•„ํ„ฐ์˜ ์‚ฌ์šฉ๋ฅ ์€ 50% ์ดํ•˜๋ฅผ ๋‚˜ํƒ€๋‚ธ๋‹ค. ๊ทธ๋Ÿผ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ํ•˜๋“œ์›จ์–ด๋Š” ๋ณด๊ฐ„ ํ•„ํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ์— ๋งž์ถ”์–ด ์„ค๊ณ„๋˜์–ด์™”๊ธฐ ๋•Œ๋ฌธ์— ํ•˜๋“œ์›จ์–ด ๋ฆฌ์†Œ์Šค์˜ ์‚ฌ์šฉ ํšจ์œจ์ด ๋‚ฎ์•˜๋‹ค. ๋ณธ ์—ฐ๊ตฌ์—์„œ๋Š” ๊ฐ€์žฅ ํ•˜๋“œ์›จ์–ด ๋ฆฌ์†Œ์Šค๋ฅผ ๋งŽ์ด ์‚ฌ์šฉํ•˜๋Š” ์„ธ๋กœ ๋ฐฉํ–ฅ ๋ณด๊ฐ„ ํ•„ํ„ฐ๋ฅผ ์ ˆ๋ฐ˜ ํฌ๊ธฐ๋กœ ์ค„์ธ ๋‘ ๊ฐœ์˜ ๋ฐ์ดํ„ฐ ํŒจ์Šค๋ฅผ ๊ฐ–๋Š” MME ํ•˜๋“œ์›จ์–ด ๊ตฌ์กฐ๋ฅผ ์ œ์•ˆํ•˜์˜€๊ณ , ๋†’์€ ํ•˜๋“œ์›จ์–ด ์‚ฌ์šฉ๋ฅ ์„ ์œ ์ง€ํ•˜๋ฉด์„œ ์••์ถ• ํšจ์œจ ์†์‹ค์„ ์ตœ์†Œํ™” ํ•˜๋Š” merge ํ›„๋ณด ํ• ๋‹น ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ œ์•ˆํ•˜์˜€๋‹ค. ๊ฒฐ๊ณผ, ๊ธฐ์กด ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ MME ๋ณด๋‹ค 24% ์ ์€ ํ•˜๋“œ์›จ์–ด ๋ฆฌ์†Œ์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด์„œ๋„ 7.4% ๋” ๋น ๋ฅธ ์ˆ˜ํ–‰ ์‹œ๊ฐ„์„ ๊ฐ–๋Š” ์ƒˆ๋กœ์šด ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜์˜ MME๋ฅผ ๋‹ฌ์„ฑํ•˜์˜€๋‹ค. ์ œ์•ˆ๋œ ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜์˜ MME๋Š” 460.8K gates์˜ ํ•˜๋“œ์›จ์–ด ๋ฆฌ์†Œ์Šค๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  4k UHD ์˜์ƒ์„ 30 fps์˜ ์†๋„๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค.์ œ 1 ์žฅ ์„œ ๋ก  1 1.1 ์—ฐ๊ตฌ ๋ฐฐ๊ฒฝ 1 1.2 ์—ฐ๊ตฌ ๋‚ด์šฉ 3 1.3 ๊ณตํ†ต ์‹คํ—˜ ํ™˜๊ฒฝ 5 1.4 ๋…ผ๋ฌธ ๊ตฌ์„ฑ 6 ์ œ 2 ์žฅ ๊ด€๋ จ ์—ฐ๊ตฌ 7 2.1 HEVC ํ‘œ์ค€ 7 2.1.1 ์ฟผ๋“œ-ํŠธ๋ฆฌ ๊ธฐ๋ฐ˜์˜ ๊ณ„์ธต์  ๋ธ”๋ก ๊ตฌ์กฐ 7 2.1.2 HEVC ์˜ Inter Prediction 9 2.2 ํ™”๋ฉด ๊ฐ„ ์˜ˆ์ธก์˜ ์†๋„ ํ–ฅ์ƒ์„ ์œ„ํ•œ ์ด์ „ ์—ฐ๊ตฌ 17 2.2.1 ๊ณ ์† Integer Motion Estimation ์•Œ๊ณ ๋ฆฌ์ฆ˜ 17 2.2.2 ๊ณ ์† Merge Mode Estimation ์•Œ๊ณ ๋ฆฌ์ฆ˜ 20 2.3 ํ™”๋ฉด ๊ฐ„ ์˜ˆ์ธก ํ•˜๋“œ์›จ์–ด ๊ตฌ์กฐ์— ๋Œ€ํ•œ ์ด์ „ ์—ฐ๊ตฌ 21 2.3.1 ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ Integer Motion Estimation ์—ฐ๊ตฌ 21 2.3.2 ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ Merge Mode Estimation ์—ฐ๊ตฌ 25 ์ œ 3 ์žฅ Bottom-up Integer Motion Estimation 26 3.1 ์„œ๋กœ ๋‹ค๋ฅธ ๊ณ„์ธต ๊ฐ„์˜ Motion Vector ๊ด€๊ณ„ ๊ด€์ฐฐ 26 3.1.1 ์„œ๋กœ ๋‹ค๋ฅธ ๊ณ„์ธต ๊ฐ„์˜ Motion Vector ๊ด€๊ณ„ ๋ถ„์„ 26 3.1.2 Top-down ๋ฐ Bottom-up ๋ฐฉํ–ฅ์˜ Motion Vector ๊ด€๊ณ„ ๋ถ„์„ 30 3.2 Bottom-up Motion Vector Prediction 33 3.3 Bottom-up Integer Motion Estimation 37 3.3.1 Bottom-up Integer Motion Estimation - Single MVP 37 3.3.2 Bottom-up Integer Motion Estimation - Multiple MVP 38 3.4 ์‹คํ—˜ ๊ฒฐ๊ณผ 40 ์ œ 4 ์žฅ ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ Integer Motion Estimation 46 4.1 Bottom-up Integer Motion Estimation์˜ ํ•˜๋“œ์›จ์–ด ์ ์šฉ 46 4.2 ํ•˜๋“œ์›จ์–ด๋ฅผ ์œ„ํ•œ ์ˆ˜์ •๋œ Test Zone Search 47 4.2.1 SAD-tree๋ฅผ ํ™œ์šฉํ•œ CU ๋‚ด PU์˜ ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ 47 4.2.2 Grid ๊ธฐ๋ฐ˜์˜ Sampled Raster Search 53 4.2.3 ์„œ๋กœ ๋‹ค๋ฅธ PU ๊ฐ„์˜ ์ค‘๋ณต ์—ฐ์‚ฐ ์ œ๊ฑฐ 55 4.3 Idle cycle์ด ๊ฐ์†Œ๋œ 5-stage ํŒŒ์ดํ”„๋ผ์ธ ์Šค์ผ€์ค„ 56 4.3.1 ํŒŒ์ดํ”„๋ผ์ธ ์Šคํ…Œ์ด์ง€ ๋ณ„ ๋™์ž‘ 56 4.3.2 Test Zone Search์˜ ์˜์กด์„ฑ์œผ๋กœ ์ธํ•œ Idle cycle ๋„์ž… 58 4.3.3 ์ปจํ…์ŠคํŠธ ์Šค์œ„์นญ์„ ํ†ตํ•œ Idle cycle ๊ฐ์†Œ 60 4.4 ๊ณ ์† ๋™์ž‘์„ ์œ„ํ•œ ์ฐธ์กฐ ๋ฐ์ดํ„ฐ ๊ณต๊ธ‰ ๋ฐฉ๋ฒ• 63 4.4.1 ์ฐธ์กฐ ๋ฐ์ดํ„ฐ ์ ‘๊ทผ ํŒจํ„ด ๋ฐ ์ ‘๊ทผ ์ง€์—ฐ ๋ฐœ์ƒ ์‹œ ๋ฌธ์ œ์  63 4.4.2 Search Points์˜ Locality๋ฅผ ํ™œ์šฉํ•œ ์ฐธ์กฐ ๋ฐ์ดํ„ฐ ์ ‘๊ทผ 64 4.4.3 ๋‹จ์ผ cycle ์ฐธ์กฐ ๋ฐ์ดํ„ฐ ์ ‘๊ทผ์„ ์œ„ํ•œ Multi Bank ๋ฉ”๋ชจ๋ฆฌ ๊ตฌ์กฐ 66 4.4.4 ์ฐธ์กฐ ๋ฐ์ดํ„ฐ ์ ‘๊ทผ์˜ ์ž์œ ๋„ ์ œ์–ด๋ฅผ ํ†ตํ•œ ์Šค์œ„์นญ ๋ณต์žก๋„ ์ €๊ฐ ๋ฐฉ๋ฒ• 68 4.5 ํ•˜๋“œ์›จ์–ด ๊ตฌ์กฐ 72 4.5.1 ์ „์ฒด ํ•˜๋“œ์›จ์–ด ๊ตฌ์กฐ 72 4.5.2 ํ•˜๋“œ์›จ์–ด ์„ธ๋ถ€ ์Šค์ผ€์ค„ 78 4.6 ํ•˜๋“œ์›จ์–ด ๊ตฌํ˜„ ๊ฒฐ๊ณผ ๋ฐ ์‹คํ—˜ ๊ฒฐ๊ณผ 82 4.6.1 ํ•˜๋“œ์›จ์–ด ๊ตฌํ˜„ ๊ฒฐ๊ณผ 82 4.6.2 ์ˆ˜ํ–‰ ์‹œ๊ฐ„ ๋ฐ ์••์ถ• ํšจ์œจ 84 4.6.3 ์ œ์•ˆ ๋ฐฉ๋ฒ• ์ ์šฉ ๋‹จ๊ณ„ ๋ณ„ ์„ฑ๋Šฅ ๋ณ€ํ™” 88 4.6.4 ์ด์ „ ์—ฐ๊ตฌ์™€์˜ ๋น„๊ต 91 ์ œ 5 ์žฅ ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ Merge Mode Estimation 96 5.1 ๊ธฐ์กด Merge Mode Estimation์˜ ํ•˜๋“œ์›จ์–ด ๊ด€์ ์—์„œ์˜ ๊ณ ์ฐฐ 96 5.1.1 ๊ธฐ์กด Merge Mode Estimation 96 5.1.2 ๊ธฐ์กด Merge Mode Estimation ํ•˜๋“œ์›จ์–ด ๊ตฌ์กฐ ๋ฐ ๋ถ„์„ 98 5.1.3 ๊ธฐ์กด Merge Mode Estimation์˜ ํ•˜๋“œ์›จ์–ด ์‚ฌ์šฉ๋ฅ  ์ €ํ•˜ ๋ฌธ์ œ 100 5.2 ์—ฐ์‚ฐ๋Ÿ‰ ๋ณ€๋™ํญ์„ ๊ฐ์†Œ์‹œํ‚จ ์ƒˆ๋กœ์šด Merge Mode Estimation 103 5.3 ์ƒˆ๋กœ์šด Merge Mode Estimation์˜ ํ•˜๋“œ์›จ์–ด ๊ตฌํ˜„ 106 5.3.1 ํ›„๋ณด ํƒ€์ž… ๋ณ„ ๋…๋ฆฝ์  path๋ฅผ ๊ฐ–๋Š” ํ•˜๋“œ์›จ์–ด ๊ตฌ์กฐ 106 5.3.2 ํ•˜๋“œ์›จ์–ด ์‚ฌ์šฉ๋ฅ ์„ ๋†’์ด๊ธฐ ์œ„ํ•œ ์ ์‘์  ํ›„๋ณด ํ• ๋‹น ๋ฐฉ๋ฒ• 109 5.3.3 ์ ์‘์  ํ›„๋ณด ํ• ๋‹น ๋ฐฉ๋ฒ•์„ ์ ์šฉํ•œ ํ•˜๋“œ์›จ์–ด ์Šค์ผ€์ค„ 111 5.4 ์‹คํ—˜ ๊ฒฐ๊ณผ ๋ฐ ํ•˜๋“œ์›จ์–ด ๊ตฌํ˜„ ๊ฒฐ๊ณผ 114 5.4.1 ์ˆ˜ํ–‰ ์‹œ๊ฐ„ ๋ฐ ์••์ถ• ํšจ์œจ ๋ณ€ํ™” 114 5.4.2 ํ•˜๋“œ์›จ์–ด ๊ตฌํ˜„ ๊ฒฐ๊ณผ 116 ์ œ 6 ์žฅ Overall Inter Prediction 117 6.1 CTU ๋‹จ์œ„์˜ 3-stage ํŒŒ์ดํ”„๋ผ์ธ Inter Prediction 117 6.2 Two-way Encoding Order 119 6.2.1 Top-down ์ธ์ฝ”๋”ฉ ์ˆœ์„œ์™€ Bottom-up ์ธ์ฝ”๋”ฉ ์ˆœ์„œ 119 6.2.2 ๊ธฐ์กด ๊ณ ์† ์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ํ˜ธํ™˜๋˜๋Š” Two-way Encoding Order 120 6.2.3 ๊ธฐ์กด ๊ณ ์† ์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ๊ฒฐํ•ฉ ๋ฐ ๋น„๊ต ์‹คํ—˜ ๊ฒฐ๊ณผ 123 ์ œ 7 ์žฅ Next Generation Video Coding์œผ๋กœ์˜ ํ™•์žฅ 127 7.1 Bottom-up Motion Vector Prediction์˜ ํ™•์žฅ 127 7.2 Bottom-up Integer Motion Estimation์˜ ํ™•์žฅ 130 ์ œ 8 ์žฅ ๊ฒฐ ๋ก  132Docto

    Error resilience and concealment techniques for high-efficiency video coding

    Get PDF
    This thesis investigates the problem of robust coding and error concealment in High Efficiency Video Coding (HEVC). After a review of the current state of the art, a simulation study about error robustness, revealed that the HEVC has weak protection against network losses with significant impact on video quality degradation. Based on this evidence, the first contribution of this work is a new method to reduce the temporal dependencies between motion vectors, by improving the decoded video quality without compromising the compression efficiency. The second contribution of this thesis is a two-stage approach for reducing the mismatch of temporal predictions in case of video streams received with errors or lost data. At the encoding stage, the reference pictures are dynamically distributed based on a constrained Lagrangian rate-distortion optimization to reduce the number of predictions from a single reference. At the streaming stage, a prioritization algorithm, based on spatial dependencies, selects a reduced set of motion vectors to be transmitted, as side information, to reduce mismatched motion predictions at the decoder. The problem of error concealment-aware video coding is also investigated to enhance the overall error robustness. A new approach based on scalable coding and optimally error concealment selection is proposed, where the optimal error concealment modes are found by simulating transmission losses, followed by a saliency-weighted optimisation. Moreover, recovery residual information is encoded using a rate-controlled enhancement layer. Both are transmitted to the decoder to be used in case of data loss. Finally, an adaptive error resilience scheme is proposed to dynamically predict the video stream that achieves the highest decoded quality for a particular loss case. A neural network selects among the various video streams, encoded with different levels of compression efficiency and error protection, based on information from the video signal, the coded stream and the transmission network. Overall, the new robust video coding methods investigated in this thesis yield consistent quality gains in comparison with other existing methods and also the ones implemented in the HEVC reference software. Furthermore, the trade-off between coding efficiency and error robustness is also better in the proposed methods

    Visual Saliency Estimation Via HEVC Bitstream Analysis

    Get PDF
    Abstract Since Information Technology developed dramatically from the last century 50's, digital images and video are ubiquitous. In the last decade, image and video processing have become more and more popular in biomedical, industrial, art and other fields. People made progress in the visual information such as images or video display, storage and transmission. The attendant problem is that video processing tasks in time domain become particularly arduous. Based on the study of the existing compressed domain video saliency detection model, a new saliency estimation model for video based on High Efficiency Video Coding (HEVC) is presented. First, the relative features are extracted from HEVC encoded bitstream. The naive Bayesian model is used to train and test features based on original YUV videos and ground truth. The intra frame saliency map can be achieved after training and testing intra features. And inter frame saliency can be achieved by intra saliency with moving motion vectors. The ROC of our proposed intra mode is 0.9561. Other classification methods such as support vector machine (SVM), k nearest neighbors (KNN) and the decision tree are presented to compare the experimental outcomes. The variety of compression ratio has been analysis to affect the saliency

    Receiver-Driven Video Adaptation

    Get PDF
    In the span of a single generation, video technology has made an incredible impact on daily life. Modern use cases for video are wildly diverse, including teleconferencing, live streaming, virtual reality, home entertainment, social networking, surveillance, body cameras, cloud gaming, and autonomous driving. As these applications continue to grow more sophisticated and heterogeneous, a single representation of video data can no longer satisfy all receivers. Instead, the initial encoding must be adapted to each receiver's unique needs. Existing adaptation strategies are fundamentally flawed, however, because they discard the video's initial representation and force the content to be re-encoded from scratch. This process is computationally expensive, does not scale well with the number of videos produced, and throws away important information embedded in the initial encoding. Therefore, a compelling need exists for the development of new strategies that can adapt video content without fully re-encoding it. To better support the unique needs of smart receivers, diverse displays, and advanced applications, general-use video systems should produce and offer receivers a more flexible compressed representation that supports top-down adaptation strategies from an original, compressed-domain ground truth. This dissertation proposes an alternate model for video adaptation that addresses these challenges. The key idea is to treat the initial compressed representation of a video as the ground truth, and allow receivers to drive adaptation by dynamically selecting which subsets of the captured data to receive. In support of this model, three strategies for top-down, receiver-driven adaptation are proposed. First, a novel, content-agnostic entropy coding technique is implemented in which symbols are selectively dropped from an input abstract symbol stream based on their estimated probability distributions to hit a target bit rate. Receivers are able to guide the symbol dropping process by supplying the encoder with an appropriate rate controller algorithm that fits their application needs and available bandwidths. Next, a domain-specific adaptation strategy is implemented for H.265/HEVC coded video in which the prediction data from the original source is reused directly in the adapted stream, but the residual data is recomputed as directed by the receiver. By tracking the changes made to the residual, the encoder can compensate for decoder drift to achieve near-optimal rate-distortion performance. Finally, a fully receiver-driven strategy is proposed in which the syntax elements of a pre-coded video are cataloged and exposed directly to clients through an HTTP API. Instead of requesting the entire stream at once, clients identify the exact syntax elements they wish to receive using a carefully designed query language. Although an implementation of this concept is not provided, an initial analysis shows that such a system could save bandwidth and computation when used by certain targeted applications.Doctor of Philosoph
    corecore