21
멀티미디어 공학 제10장 – 기본 비디오 압축 기술 멀티미디어 공학 (Basic Video Compression Techniques) 조정현 Dept. of Computer Engineering, Hallym University Natural Language Processing Laborator y 목차 비디오 압축 소개 움직임 보상에 기반한 비디오 압축 (Video Compression with Motion Compensation) 움직임 벡터를 위한 탐색 (Search for Motion Vector) H.261 H.263 Dept. of Computer Engineering, Hallym University Natural Language Processing Laboratory 2008-11-05 2

멀티미디어공학 - graphics.hallym.ac.krgraphics.hallym.ac.kr/teach/2008/mm/src/chap10.pdf제10장–기본비디오압축기술 ... • 영상시퀀스에서현재프레임과다른프레임간의

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 멀티미디어공학 - graphics.hallym.ac.krgraphics.hallym.ac.kr/teach/2008/mm/src/chap10.pdf제10장–기본비디오압축기술 ... • 영상시퀀스에서현재프레임과다른프레임간의

멀티미디어 공학제10장 – 기본 비디오 압축 기술

멀티미디어 공학

(Basic Video Compression Techniques)

조정현

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratoryg g g y

목 차

비디오 압축 소개

움직임 보상에 기반한 비디오 압축

(Video Compression with Motion Compensation)

움직임 벡터를 위한 탐색움직임 벡터를 위한 탐색

(Search for Motion Vector)

H.261

H.263

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 2

Page 2: 멀티미디어공학 - graphics.hallym.ac.krgraphics.hallym.ac.kr/teach/2008/mm/src/chap10.pdf제10장–기본비디오압축기술 ... • 영상시퀀스에서현재프레임과다른프레임간의

1. 비디오 압축

• 압축되지 않은 비디오 데이터의 양은 매우 큼– 저장과 네트워크 통신 어려움

• 비디오는 시간 순으로 정렬된 연속적인 프레임으로구성됨구성됨

• 비디오 압축에 대한 분명한 해결책은 이전 프레임에 기초한 예측 부호화에 기초한 예측 부호화

• 영상들을 감산하여 압축을 진행– 시간 순으로 감산하고 나머지 오류를 부호화 함

• It can be done even better by searching for just h i h f h i b f hthe right parts of the image to subtract from the previous frame

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 3

2. 움직임 보상에 기반한 비디오 압축

• 연속적인 프레임의 내용은 보통 비슷함• 비디오는 시간 중복성(temporal redundancy)을 가

짐짐• 시간 중복성을 이용하면 매 프레임을 새로운 영상

으로 부호화할 필요 없음으로 부호화할 필요 없음• 영상 시퀀스에서 현재 프레임과 다른 프레임 간의

차분을 부호화차분을 부호화– 중복성이 크면 압축하기 좋은 작은 값과 낮은 엔트로피로

구성될 수 있음구성될 수 있음

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 4

Page 3: 멀티미디어공학 - graphics.hallym.ac.krgraphics.hallym.ac.kr/teach/2008/mm/src/chap10.pdf제10장–기본비디오압축기술 ... • 영상시퀀스에서현재프레임과다른프레임간의

2. 움직임 보상에 기반한 비디오 압축

• 알고리즘– 1. 움직임 예측(움직임 벡터 탐색)– 2. 움직임 보상 기반 예측– 3. 예측 오류의 유도 – 차분

• 각 영상은 N X N 크기의 매크로블록 들로 나눔각 영상은 N X N 크기의 매크로블록 들로 나눔– 휘도 영상 : N=16, 색차 영상 : N=8 (4:2:0 색차 부표본화)

• 움직임 보상은 매크로블록 레벨 에서 수행• 움직임 보상은 매크로블록 레벨 에서 수행– 현재의 영상 프레임 : 목표 프레임(target frame)

매치는 목표 프레임에서의 매크로블록과 이전 또는 나중– 매치는 목표 프레임에서의 매크로블록과 이전 또는 나중프레임[참조 프레임(reference frame)]에서의 가장 비슷한 매크로블록 사이에서 찾음

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

블록 사이에서 찾음

2008-11-05 5

2. 움직임 보상에 기반한 비디오 압축

• 참조 매크로블록의 목표 매크로블록에 대한 변위(displacement)는 움직임 벡터(motion vector) MV로 불림.

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 6

Page 4: 멀티미디어공학 - graphics.hallym.ac.krgraphics.hallym.ac.kr/teach/2008/mm/src/chap10.pdf제10장–기본비디오압축기술 ... • 영상시퀀스에서현재프레임과다른프레임간의

3. 움직임 벡터를 위한 탐색

Search for Motion VectorSearch for Motion VectorSearch for Motion VectorSearch for Motion Vector

Sequential

Search

2D

LogarithmicHierarchical

SearchSearchSearch

Search

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

72008-11-05

3. 움직임 벡터를 위한 탐색

• MV 탐색은 보통 작은 인접한 이웃들로 제한됨– 수평 및 수직 변위 i와 j는 [-p, p] 범위 안에 있음– (2p+1)x(2p+1) 크기의 탐색 윈도우를 만듬

<비디오 압축에서의 매크로블록과 움직임 벡터>- 참조 프레임이 이전 프레임으로 선택된 순방향(forward) 예측의 경우

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 8

Page 5: 멀티미디어공학 - graphics.hallym.ac.krgraphics.hallym.ac.kr/teach/2008/mm/src/chap10.pdf제10장–기본비디오압축기술 ... • 영상시퀀스에서현재프레임과다른프레임간의

3. 움직임 벡터를 위한 탐색

• 두 매크로블록 사이의 차분은 평균 절대 오차(Mean Absolute difference, MAD)에 의해 측정될 수 있음

(10 1)

• 탐색의 목적은 MAD(i j)가 최소값인 경우의 움직임

(10.1)

• 탐색의 목적은 MAD(i, j)가 최소값인 경우의 움직임벡터 MV=(u, v)로서 벡터(i, j)를 찾는 것임

(10.2)

• 절대 오차의 합(Sum of Absolute Difference, SAD)• 평균 제곱 오차(Mean Sqaure Error MSE)

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

평균 제곱 오차(Mean Sqaure Error, MSE)

2008-11-05 9

3.1 순차 탐색

• 가장 간단한 방법으로 참조 프레임에서 전체(2p+1)x(2p+1) 윈도우를 순차적으로 탐색– 전역 탐색(full search)으로도 불림

<순차 탐색 과정>

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 10

<순차 탐색 과정>

Page 6: 멀티미디어공학 - graphics.hallym.ac.krgraphics.hallym.ac.kr/teach/2008/mm/src/chap10.pdf제10장–기본비디오압축기술 ... • 영상시퀀스에서현재프레임과다른프레임간의

3.1 순차 탐색

• 순차 탐색 방법은 비용이 많이 듦– 움직임 벡터를 얻기 위한 비용 : O(p2N2)

• 예 (720x480, 30fps, p=15, N=16)예 ( , p , p , )– 연산수

316313)12( 2222 ××=⋅⋅+ Np

– OPS_per_second

480720×

316313)12( + Np

922

22

10892930480720

31631

30480720

3)12(

×≈××

×××

⋅⋅×

⋅⋅⋅+=NN

Np

• 비디오의 실시간 부호화가 어려움

1089.29301616

31631 ×≈××

×××=

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

• 비디오의 실시간 부호화가 어려움

2008-11-05 11

3.2 2차원 대수적 탐색

• 여러 번의 반복이 필요하고 이진 탐색과 유사

<움직임 벡터를 위한 2차원 대수적 탐색>

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 12

Page 7: 멀티미디어공학 - graphics.hallym.ac.krgraphics.hallym.ac.kr/teach/2008/mm/src/chap10.pdf제10장–기본비디오압축기술 ... • 영상시퀀스에서현재프레임과다른프레임간의

3.2 2차원 대수적 탐색

• 순차 탐색에 비해 연산이 줄어듦⎡ ⎤ )1log(9)12( 2

2 +⋅→+ pp

)(log)( 222 NpONpO ⋅→

OPS per second

)(log)( NpONpO →

– OPS_per_second29.89x109 1.25x109

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 13

3.3 계층적 탐색

• 움직임 벡터의 초기 예측을 상당히 줄어든 해상도를 가진 영상에서 수행

움직임 벡터를 위한 3 L l 계층적 탐색

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 14

<움직임 벡터를 위한 3-Level 계층적 탐색>

Page 8: 멀티미디어공학 - graphics.hallym.ac.krgraphics.hallym.ac.kr/teach/2008/mm/src/chap10.pdf제10장–기본비디오압축기술 ... • 영상시퀀스에서현재프레임과다른프레임간의

3.3 계층적 탐색

• 초기 탐색은 레벨2에서 수행됨• 매크로 블록의 크기가 더 작아지고 p 또한 이 레벨

에서 비례적으로 줄어들어 연산의 수가 크게 줄어에서 비례적 줄어들어 연산의 수가 게 줄어듬

• 초기 예측은 영상 세부 사항과 해상도의 부족 때문초기 예측은 영상 세부 사항과 해상도의 부족 때문에 정확하지 않음. 레벨 0을 향하여 다듬어짐

• k 1 에서 (2 uk 2 vk)에 중심한 3x3이웃들이 탐색됨• k-1 에서 (2∙uk, 2∙vk)에 중심한 3x3이웃들이 탐색됨• k-1에서 움직임 벡터(uk-1, vk-1)은 다음을 만족하고

(2 k 1 k 1 2 k 1 2 k 1 k 1 2 k 1 1)(2uk-1≤uk-1≤2uk+1, 2vk-1≤vk-1≤2vk-1+1)검사 중인 매크로블록에 대해 최소 MAD를 이끌어냄

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 15

3.3 계층적 탐색

OPS per second for 720x480 at 30fps탐색 방법

OPS_per_second for 720x480 at 30fps

p=15 p=7

순차 탐색 29.8 x 109 7.00 x 109

2차원 대수적 탐색 1.25 x 109 0.78 x 109

3-Level 계층적 탐색 0.51 x 109 0.40 x 109

<예제에 따른 움직임 벡터 탐색 방법의 연산수 비교>

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 16

Page 9: 멀티미디어공학 - graphics.hallym.ac.krgraphics.hallym.ac.kr/teach/2008/mm/src/chap10.pdf제10장–기본비디오압축기술 ... • 영상시퀀스에서현재프레임과다른프레임간의

4. H.261

• 초기의 디지털 비디오 압축 표준• 1990년 구제 정보통신 연합-정보통신 표준화 부분

(ITU-T, 이전 CCIT)에 의해 채택( , 이전 )에 의해 채택• 비디오폰, 화상회의, ISDN 전화망에서의 다른 오디

오비주얼 서비스를 위해 설계됨오비주얼 서비스를 위해 설계됨• p x 64kbps의 비트율 지원(p : 1~30)

150 이하의 비디오 부호화기( d ) 지연을 요• 150ms 이하의 비디오 부호화기(encoder) 지연을 요구하고 실시간, 양방향 화상회의를 위해 사용될 수있음있음

• 시각적 전화통신 시스템을 위한 ITU 권고안에 속함

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 17

4. H.261

VideoLuminance

imageChrominance

imageBitrate (Mbps)(if 30 fps and

H.261format

imageresolution

imageresolution

(if 30 fps and uncompressed)

support

QCIF 176 x 144 88 x 72 9.1 Required

CIF 352 x 288 176 x 144 36.5 Optional

<H.261에 의해 지원되는 비디오 형식>

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 18

<H.261 프레임 순서>

Page 10: 멀티미디어공학 - graphics.hallym.ac.krgraphics.hallym.ac.kr/teach/2008/mm/src/chap10.pdf제10장–기본비디오압축기술 ... • 영상시퀀스에서현재프레임과다른프레임간의

4. H.261

• 인트라-프레임(I-frame)– 독립적인 영상으로 취급– JPEG와 비슷한 변화 부호화 방법으로 각 I-frame 내에서

적용됨– 공간 중복성 제거(temporal redundancy removal)

• 인터-프레임(P-frame)– 독립적이지 않음독립적이지 않음– 순방향 예측 부호화 방법에 의해 부호화– 이전 P-frame으로부터 예측이전 부터 예측– 시간 중복성 제거(temporal redundancy removal)– 공간 중복성 제거

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

공간 중복성 제거

2008-11-05 19

4.1 I-frame 부호화

• 4:2:0 색차 부표본화<I-frame 부호화>

• 4:2:0 색차 부표본화– 하나의 매크로블록은 각각 8x8크기를 갖는 네 개의 Y블

록, 하나의 Cb, 하나의 Cr블록으로 구성록, 하나의 , 하나의 블록 구성

• 각 8x8 블록 DCT변환 양자화 지그재그 주사 엔트로피 부호화

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

사 엔 피 부 화

2008-11-05 20

Page 11: 멀티미디어공학 - graphics.hallym.ac.krgraphics.hallym.ac.kr/teach/2008/mm/src/chap10.pdf제10장–기본비디오압축기술 ... • 영상시퀀스에서현재프레임과다른프레임간의

4.2 P-frame 예측 부호화

<움직임 보상 기반 H.261 P-frame 부호화>

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 21

4.2 P-frame 예측 부호화

• 좋은 매치가 발견되지 않을 수도 있음(예측 오차가 어떤 받아들일 수 있는 수준을 넘어섬)

– 이 경우에는 매크로블록 그 자체로 부호화(인트라 매크로블록으로 취급)

– 보상이 안 된 매크로블록(non-motion-compensation macroblock)이라 부름

• 차분 매크로블록을 부호화– 목표 매크로블록보다 훨씬 더 작은 엔트로피를 가짐– 큰 압축률을 얻을 수 있음

• 움직임 벡터– MVD = MVPreceding-MVCurrent (10.3)

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

MVD MVPreceding MVCurrent

2008-11-05 22

(10.3)

Page 12: 멀티미디어공학 - graphics.hallym.ac.krgraphics.hallym.ac.kr/teach/2008/mm/src/chap10.pdf제10장–기본비디오압축기술 ... • 영상시퀀스에서현재프레임과다른프레임간의

4.3 H.261에서의 양자화

• 한 매크로 블록 안에서 모든 DCT 계수를 위해 스텝-크기(step-size) 상수를 사용– 스텝-크기는 2부터 62까지의 31개 짝수 중 어떤 하나

• 인트라 모드에서 DC 계수에 대한 예외 스텝-크인트라 모드에서 DC 계수에 대한 예외 스텝 크기 8사용

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 23

4.3 H.261에서의 양자화

• 만약 양자화 전과 후의 DCT 계수를 표현하기 위해DCT와 QDCT를 사용한다면, 인트라 모드에서 DC계수를 위한 식은

(10.4)

다른 모든 계수를 위한 식은• 다른 모든 계수를 위한 식은

(10.5)

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 24

Page 13: 멀티미디어공학 - graphics.hallym.ac.krgraphics.hallym.ac.kr/teach/2008/mm/src/chap10.pdf제10장–기본비디오압축기술 ... • 영상시퀀스에서현재프레임과다른프레임간의

4.4 H.261 부호화기와 복호화기

• Encoder

<H.261 Encoder>

<H.261 부호화기의 관찰점에서의 데이터 흐름>

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 25

4.4 H.261 부호화기와 복호화기

• Decoder

<H.261 Decoder>

<H.261 복호화기의 관찰점에서의 데이터 흐름>

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 26

Page 14: 멀티미디어공학 - graphics.hallym.ac.krgraphics.hallym.ac.kr/teach/2008/mm/src/chap10.pdf제10장–기본비디오압축기술 ... • 영상시퀀스에서현재프레임과다른프레임간의

4.5 H.261 비디오 비트스트림 신택스

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 27

<H.261 비디오 비트스트림의 신택스>

4.5 H.261 비디오 비트스트림 신택스

• Picture layer– PSC(Picture Start Code) : 영상들 사이의 경계– TR(Temporal Reference) : 영상을 위한 Times-tamp 제공– PType(Picture Type) : 영상이 CIF 인지 QCIF 인지 명시

• GOB(Group Of Box) layerGOB(Group Of Box) layer– H.261 영상은 11x3 매크로블록의 영역으로 나누어지고

각각은 GOB로 부름각각은 부름– GBSC(Start Code)– GN(Group Number)( p )– GQuant

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 28

<휘도 영상에서 GOB 배열>

Page 15: 멀티미디어공학 - graphics.hallym.ac.krgraphics.hallym.ac.kr/teach/2008/mm/src/chap10.pdf제10장–기본비디오압축기술 ... • 영상시퀀스에서현재프레임과다른프레임간의

4.5 H.261 비디오 비트스트림 신택스

• Macroblock layer– Address : GOB 내에서의 위치를 나타내는 주소– MQuant : 양자화기– 6개의 8x8 영상 블록(4Y, 1Cb, 1Cr)– Type : I-frame, P-frame, 움직임 보상yp– MVD(Motion Vector Data) : 이전 과 현재 매크로블록의

움직임 벡터 차– CBP(Coded Block Pattern)

• Block layery– Run : [0, 63]– Level : AC계수값 [-127, 127], level≠0

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

Level : AC계수값 [ 127, 127], level≠0

2008-11-05 29

5. H.263

• PSTN(Public Switched Telephone Networ)상에서전송되는 화상회의, 오디오비주얼 서비스를 위한 향상된 비디오 부호화 표준

• 64kbps 이하의 낮은 비트율 통신• 1995년 ITU-T에 의해 채택1995년 ITU T에 의해 채택

Videoformat

Luminanceimage

Chrominanceimage

Bitrate(Mbps)(if 30fps and

Bitrate(kbps)BPPmaxKb

formatresolution resolution uncompressed) (compressed)

sub-QCIF 128x96 64x48 4.4 64

QCIF 176x144 88x72 9.1 6.4Q

CIF 352x288 176x144 36.5 256

4CIF 704x576 352x288 146.0 512

16CIF 1408 1152 704 576 583 9 1024

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 30

16CIF 1408x1152 704x576 583.9 1024

<H.263에 의해 지원되는 비디오 형식>

Page 16: 멀티미디어공학 - graphics.hallym.ac.krgraphics.hallym.ac.kr/teach/2008/mm/src/chap10.pdf제10장–기본비디오압축기술 ... • 영상시퀀스에서현재프레임과다른프레임간의

5. H.263GOB 0

GOB 1

GOB 2

GOB 0

GOB 1

GOB 2

GOB 0

GOB 1

GOB 2GOB 2

GOB 3

GOB 4

GOB 2

GOB 3

GOB 4

GOB 5

GOB 2

GOB 3

GOB 4

GOB 5Sub-QCIFGOB 6

GOB 7

GOB 8

GOB 15

Sub QCIF

GOB 15

GOB 16

GOB 17

QCIF

CIF 4CIF and 16CIF

• H 261 에서 처럼 GOB개념을 지원

CIF, 4CIF, and 16CIF

<H.263 휘도 영상에서 GOB 배열>

H.261 에서 처럼 GOB개념을 지원– 고정된 크기를 가지지 않음– 항상 영상의 왼쪽과 오른쪽 경계에서 출발 하고 끝남

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

– 항상 영상의 왼쪽과 오른쪽 경계에서 출발 하고 끝남

2008-11-05 31

5.1 H.263 에서의 움직임 보상

MV2 MV3

MV1 MV

MV Current motion vectorMV1 Previous motion vectorMV2 Above motion vectorMV3 Above and right motion vectorg

(a) 현 매크로블록의 예측된 MV는 (MV1, MV2, MV3)의 중간 값임

MV2 MV3

(0 0) MV

MV1 MV1

MV1 MV

MV2 (0, 0)

MV1 MV(0, 0) MV MV1 MV MV1 MV

(b) 현 매크로블록이 그림이나 GOB의 경계에 있을 때 MV의 특별한 처리

<H.263에서 움직임 벡터의 예측>

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 32

Page 17: 멀티미디어공학 - graphics.hallym.ac.krgraphics.hallym.ac.kr/teach/2008/mm/src/chap10.pdf제10장–기본비디오압축기술 ... • 영상시퀀스에서현재프레임과다른프레임간의

5.1 H.263 에서의 움직임 보상

• MV의 수평과 수직성분은 이전(MV1), 위(MV2), 위오른쪽(MV3) 매크로블록의 수평과 수직성분의 중간 값으로 예측됨, 즉 MV(u, v)는

),,(

),,(

321

321

vvvmedianv

uuumedianu

p

p

=

=(10.6)

• MV(u, v)를 부호화하는 대신에 오차 벡터(δu, δv)가부호화됨 (δu=u u δv=v v )

p

부호화됨 (δu=u-up, δv=v-vp)

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 33

5.1 H.263 에서의 움직임 보상

A BFull-pixel position

a

c d

bp p

Half-pixel position

a=Ab (A B 1)/2

C D

b=(A+B+1)/2c=(A+C+1)/2d=(A+B+C+D+2)/4

<H 263에서 쌍선형 보간법에 의한 반-화소 예측>

• 현재의 MB가 그림이나 GOB의 경계에 있을 때 (0, 0)

<H.263에서 쌍선형 보간법에 의한 반 화소 예측>

이나 MV1 둘 중 하나가 경계 밖의 MB(s)를 위한 움직임 벡터로 사용됨

• 예측오차를 줄이기 위해 반-화소 정밀도(half-pixel precision) 사용

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

p ) 사용

2008-11-05 34

Page 18: 멀티미디어공학 - graphics.hallym.ac.krgraphics.hallym.ac.kr/teach/2008/mm/src/chap10.pdf제10장–기본비디오압축기술 ... • 영상시퀀스에서현재프레임과다른프레임간의

5.2 선택적인 H.263 부호화 모드

• 핵심적인 부호화 알고리즘 외에 부가사항에서 많은부호화 옵션을 규정– 제한이 없는 움직임 벡터 모드

• 참조된 화소는 영상의 경계 안에 있어야 하는 제한을 받지 않음

– 신택스 기반 산술 부호화 모드• 가변길이 부호화시 각 심볼이 고정된 정수개의 비트 수로 부호화

되어야 하는 제약 제거, 더 높은 압출률 얻을 수 있음

진보된 예측 모드– 진보된 예측 모드• 현 휘도 블록의 움직임 벡터와 네 개의 움직임 벡터 중 두 개에

기반한 총 세 개의 예측된 값의 가중치된 합을 취함• 더 나은 예측, 압축에 이득

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 35

5.2 선택적인 H.263 부호화 모드

– PB-프레임 모드• MPEG 에서와 같이 이전 프레임과 미래 프레임으로 부터 양방향

으로 예측되는 B-프레임의 도입• 예측의 질을 향상 시키고 화질의 저하 없이 압축률을 향상 시킬예측의 질을 향상 시키고 화질의 저하 없이 압축률을 향상 시킬

수 있음• 적당한 움직임을 가지는 비디오에 대해 만족스러운 결과• 큰 움직임에서는 PB-프레임은 잘 압축하지 못함

BP-frame

I or P B P

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 36

<H.263에서 PB-프레임>

Page 19: 멀티미디어공학 - graphics.hallym.ac.krgraphics.hallym.ac.kr/teach/2008/mm/src/chap10.pdf제10장–기본비디오압축기술 ... • 영상시퀀스에서현재프레임과다른프레임간의

5.3 H.263+와 H.263++

• H.263+– H.263 버전 1의 설계와 완전히 역방향 호환성을 가짐– 목적

• 잠재적인 응용을 넓힘• 사용자 소스 형식

다른 화 종횡비• 다른 화소 종횡비• 클럭 주파수에 관한 추가적인 융통성 제공

코드 효율성과 에러 복원력을 향상시키기 위해 다양한 권– 코드 효율성과 에러 복원력을 향상시키기 위해 다양한 권고안들을 포함

– H 263의 네 가지 선택 모드에 더해 12개의 새로움 모드H.263의 네 가지 선택 모드에 더해 12개의 새로움 모드제공

– MPEG 표준의 많은 면을 채택

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

MPEG 표준의 많은 면을 채택

2008-11-05 37

5.3 H.263+와 H.263++

• H.263++– H.263+의 기본 부호화 방법– 강화된 참조 그림 선택(Enhanced Reference Picture

Selection, ERPS)• 에러 복원력 향상

– 데이터 분할 슬라이스(Data Partition Slice, DPS)• 에러 복원력 향상, 움직임 벡터 보호

부가적인 추가 향상 정보를 위한 권고안 포함– 부가적인 추가 향상 정보를 위한 권고안 포함• H.263 비트스트림에 역방향 호환 향상을 더하는 능력 제공

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 38

Page 20: 멀티미디어공학 - graphics.hallym.ac.krgraphics.hallym.ac.kr/teach/2008/mm/src/chap10.pdf제10장–기본비디오압축기술 ... • 영상시퀀스에서현재프레임과다른프레임간의

H.264

• 매우 높은 데이터 압축률을 가진 디지털 비디오 코덱 표준

• ITU-T VCEG과 ISO/IEC MPEG 의 Joint Video Team과 / 의• ITU-T(H.264), ISO/IEC(MPEG-4 Part 10/AVC)• 지원 사항• 지원 사항

– 다른 표준과 비교하여 평균 50%의 비트율 감소다양한 네트워크를 통한 전송오류에 견디는 오류 견고성– 다양한 네트워크를 통한 전송오류에 견디는 오류 견고성

– 낮은 지연 능력 및 높은 지연에서의 양호한 화질구현을 단순화 하는 수월한 구문 규격– 구현을 단순화 하는 수월한 구문 규격

– 정확한 대응식 디코딩은 오류 누적 방지를 위하여 인코더와 디코더에서 이루어지는 수치계산 방법을 정확하게 정

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

와 디코더에서 이루어지는 수치계산 방법을 정확하게 정의함

2008-11-05 39

H.264

여러 표준 중 동일한 화질 수준에서의 비트율

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 40

<여러 표준 중 동일한 화질 수준에서의 비트율>

Page 21: 멀티미디어공학 - graphics.hallym.ac.krgraphics.hallym.ac.kr/teach/2008/mm/src/chap10.pdf제10장–기본비디오압축기술 ... • 영상시퀀스에서현재프레임과다른프레임간의

H.264

• 핵심 특징– 새로운 엔트로피 코딩– 움직임 보상(P-예측), I(인트라)-예측– 잔여 화소의 역 주사, 양자화 변환– 복원된 화소에 대한 적응식 인-루프 디블록킹 필터

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 41

<적응식 루프 디블록킹 필터 적용>

H.261, H263, H264 비교

Features H.261 H.263 H.264

Picture Coding type I, P I, P, B I, P, B

Entropy Coding VLC VLC, SAC UVLC, CAVLC, CABAC

MV resolution Int. pixel ½ pixel 4/1 pixel

T f 8x8 DCT 8x8 DCT 4x4 & 8x8 IntegerTransform 8x8 DCT 8x8 DCT 4x4 & 8x8 Integer

Vector Block size 16x16 8x8, 16x16 4x4, 4x8, 8x4, 8x8, 8x16, 16x16

Spatial Intra Prediction No No Yesp

Format supported Prog. Prog. Prog. / Intr.

Prediction Mode Frame Frame Field & Frame

De-blocking filter In-loop Annex J in-loop In-loop

<H.261, H.263, H.264 압축 비교>

Dept. of Computer Engineering, Hallym UniversityNatural Language Processing Laboratory

2008-11-05 42

, , 압축 비