36 research outputs found
Spatial Correlation-Based Motion-Vector Prediction for Video-Coding Efficiency Improvement
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
VLSI architectures design for encoders of High Efficiency Video Coding (HEVC) standard
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
A One-dimensional HEVC video steganalysis method using the Optimality of Predicted Motion Vectors
Among steganalysis techniques, detection against motion vector (MV)
domain-based video steganography in High Efficiency Video Coding (HEVC)
standard remains a hot and challenging issue. For the purpose of improving the
detection performance, this paper proposes a steganalysis feature based on the
optimality of predicted MVs with a dimension of one. Firstly, we point out that
the motion vector prediction (MVP) of the prediction unit (PU) encoded using
the Advanced Motion Vector Prediction (AMVP) technique satisfies the local
optimality in the cover video. Secondly, we analyze that in HEVC video, message
embedding either using MVP index or motion vector differences (MVD) may destroy
the above optimality of MVP. And then, we define the optimal rate of MVP in
HEVC video as a steganalysis feature. Finally, we conduct steganalysis
detection experiments on two general datasets for three popular steganography
methods and compare the performance with four state-of-the-art steganalysis
methods. The experimental results show that the proposed optimal rate of MVP
for all cover videos is 100\%, while the optimal rate of MVP for all stego
videos is less than 100\%. Therefore, the proposed steganography scheme can
accurately distinguish between cover videos and stego videos, and it is
efficiently applied to practical scenarios with no model training and low
computational complexity.Comment: Submitted to TCSV
Recommended from our members
End user video quality prediction and coding parameters selection at the encoder for robust HEVC video transmission
Along with the rapid increase in the availability for high quality video formats such as HD (High Definition), UHD (Ultra HD) and HDR (High Dynamic Range), a huge demand for data rates during their transmission has become inevitable. Consequently, the role of video compression techniques has become crucially important in the process of mitigating the data rate requirements. Even though the latest video codec HEVC (High Efficiency Video Coding) has succeeded in significantly reducing the data rate compared to its immediate predecessor H.264/AVC (Advanced Video Coding), the HEVC coded videos in the meantime have become even more vulnerable to network impairments. Therefore, it is equally important to assess the consumersโ perceived quality degradation prior to transmitting HEVC coded videos over an error prone network, and to include error resilient features so as to minimize the adverse effects those impairments. To this end, this paper proposes a probabilistic model which accurately predicts the overall distortion of the decoded video at the encoder followed by an accurate QP-ฮป relationship which can be used in the RDO (Rate Distortion Optimization) process. During the derivation process of the probabilistic model, the impacts from the motion vectors, the pixels in the reference frames and the clipping operations are accounted and consequently the model is capable of minimizing the prediction error as low as 3.11% whereas the state-of-the-art methods canโt reach below 20.08% under identical conditions. Furthermore, the enhanced RDO process has resulted in 21.41%- 43.59% improvement in the BD-rate compared to the state-of-the-art error resilient algorithms
Low-power and application-specific SRAM design for energy-efficient motion estimation
Thesis (Ph. D.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 2012.Cataloged from PDF version of thesis.Includes bibliographical references (p. 181-189).Video content is expected to account for 70% of total mobile data traffic in 2015. High efficiency video coding, in this context, is crucial for lowering the transmission and storage costs for portable electronics. However, modern video coding standards impose a large hardware complexity. Hence, energy-efficiency of these hardware blocks is becoming more critical than ever before for mobile devices. SRAMs are critical components in almost all SoCs affecting the overall energy-efficiency. This thesis focuses on algorithm and architecture development as well as low-power and application-specific SRAM design targeting motion estimation. First, a motion estimation design is considered for the next generation video standard, HEVC. Hardware cost and coding efficiency trade-offs are quantified and an optimum design choice between hardware complexity and coding efficiency is proposed. Hardware-efficient search algorithm, shared search range across CU engines and pixel pre-fetching algorithms provide 4.3x area, 56x on-chip bandwidth and 151 x off-chip bandwidth reduction. Second, a highly-parallel motion estimation design targeting ultra-low voltage operation and supporting AVC/H.264 and VC-1 standards are considered. Hardware reconfigurability along with frame and macro-block parallel processing are implemented for this engine to maximize hardware sharing between multiple standards and to meet throughput constraints. Third, in the context of low-power SRAMs, a 6T and an 8T SRAM are designed in 28nm and 45nm CMOS technologies targeting low voltage operation. The 6T design achieves operation down to 0.6V and the 8T design achieves operation down to 0.5V providing ~ 2.8x and ~ 4.8x reduction in energy/access respectively. Finally, an application-specific SRAM design targeted for motion estimation is developed. Utilizing the correlation of pixel data to reduce bit-line switching activity, this SRAM achieves up to 1.9x energy savings compared to a similar conventional 8T design. These savings demonstrate that application-specific SRAM design can introduce a new dimension and can be combined with voltage scaling to maximize energy-efficiency.by Mahmut Ersin Sinangil.Ph.D
High-Level Synthesis Based VLSI Architectures for Video Coding
High Efficiency Video Coding (HEVC) is state-of-the-art video coding standard. Emerging applications like free-viewpoint video, 360degree video, augmented reality, 3D movies etc. require standardized extensions of HEVC. The standardized extensions of HEVC include HEVC Scalable Video Coding (SHVC), HEVC Multiview Video Coding (MV-HEVC), MV-HEVC+ Depth (3D-HEVC) and HEVC Screen Content Coding. 3D-HEVC is used for applications like view synthesis generation, free-viewpoint video. Coding and transmission of depth maps in 3D-HEVC is used for the virtual view synthesis by the algorithms like Depth Image Based Rendering (DIBR). As first step, we performed the profiling of the 3D-HEVC standard. Computational intensive parts of the standard are identified for the efficient hardware implementation. One of the computational intensive part of the 3D-HEVC, HEVC and H.264/AVC is the Interpolation Filtering used for Fractional Motion Estimation (FME). The hardware implementation of the interpolation filtering is carried out using High-Level Synthesis (HLS) tools. Xilinx Vivado Design Suite is used for the HLS implementation of the interpolation filters of HEVC and H.264/AVC. The complexity of the digital systems is greatly increased. High-Level Synthesis is the methodology which offers great benefits such as late architectural or functional changes without time consuming in rewriting of RTL-code, algorithms can be tested and evaluated early in the design cycle and development of accurate models against which the final hardware can be verified
Hardware based High Accuracy Integer Motion Estimation and Merge Mode Estimation
ํ์๋
ผ๋ฌธ (๋ฐ์ฌ)-- ์์ธ๋ํ๊ต ๋ํ์ ๊ณต๊ณผ๋ํ ์ ๊ธฐยท์ปดํจํฐ๊ณตํ๋ถ, 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