H.264 AVC

조민서·2025년 9월 17일

Compression

목록 보기
2/5

H.264 논문

주로 보던 딥러닝 논문과는 다르게 엄청 자세한 알고리즘까진 언급이 안되어 있다. 아마 기존 고전 코덱들에서 쌓아 올려온 기술이기에 그런듯 하다.

인코더: Prediction -> transformation(ex. DCT) -> encoding(to bitstream)

디코더: Decoding -> inverse transformation(ex. IDCT) -> reconstruction

로 이루어져 있다.

과정

1) Prediction

이전 프레임들을 기반으로 현재 프레임을 예측한다. 이후 그 residual 영상만 저장한다.

2) Transformation

Prediction error를 조각내서 DCT와 같은 inverse가 존재하는 방식으로 분해한다.

3) Quantization

반올림같이 적당히 값을 날려준다.

4) Entropy coding

실제 전송에 사용할 bitstream 형태로 변환해준다. Huffman coding 같은 변환을 수행한다고 보면 된다.


5) Entropy decoding

bitstream을 실제 값을 다시 복원한다.

6) Inverse transformation

IDCT와 같이 변환에 사용한 역연산을 수행한다.

7) Reconstruction.

예측했던 프레임과 디코딩 결과를 합친다.

특징

Mode in H.264

블록별로 코딩을 수행할 때 참조하는 이전 블록들의 위치 방향을 모드라고 지칭한다.

16x16 크기를 macro block으로 지칭하고, 각 macro block을 quadtree로 쪼개면 8x8 블록 4개가 된다.

Deblocking filter

디코딩 과정 중에 포함되는 in-loop filter과 디코딩 이후 RGB / Luminance, chrominance에 직접 수행하는 post-processing 방식이 있다. 구체적으로 어떤 필터를 사용하는지는 논문에 포함되어 있지 않다. 참조한 이전 논문들 중 하나에 있을 것 같다.

0개의 댓글