690 likes | 1.22k Views
제 5 장 . MPEG. 목차. MPEG-1 MPEG-2 MPEG-4 MPEG-7 MPEG-21. MPEG-1. MPEG-1 표준화 표준화 경위 1980 년대 후반 : CD-ROM 을 기반으로 한 DV-I (Digital Video Interactive). 1988 년 : ISO 산하 영상압축표준화위원회 설립 MPEG (Moving Picture Coding Experts Group) 목표 약 1.5Mbps 의 데이터 전송률 내에 동영상을 인코딩하는 방법 특징
E N D
목차 • MPEG-1 • MPEG-2 • MPEG-4 • MPEG-7 • MPEG-21
MPEG-1 • MPEG-1 표준화 • 표준화 경위 • 1980년대 후반 : CD-ROM을 기반으로 한 DV-I (Digital Video Interactive). • 1988년: ISO산하 영상압축표준화위원회 설립 • MPEG (Moving Picture Coding Experts Group) • 목표 • 약 1.5Mbps 의 데이터 전송률 내에 동영상을 인코딩하는 방법 • 특징 • 허용하는 비트 스트림의 구조와 디코더의 구성만을 정의 • 인코더의 기술 구현에는 자유허용
MPEG-1 MPEG-1의 제한 범위
MPEG-1 • MPEG-1의 특징 • 인코딩 단위 : 매크로 블록(Macroblock) • 16 X 16 화소의 휘도 블록 • 시간적 화면 상관을 이용하여 정보 압축 • 매크로 블록을 블록으로 세분 • 8 X 8 화소의 블록(4개의 휘도 블록, 2개의 색차 블록) • DCT 이용하여 공간정보압축 • GOP(Group of Picture) • 프레임 내 코딩 정보를 포함하는 인트라 프레임(I frame)을 적어도 하나 이상 포함하는 프레임 군 • 임의 접근을 허용
MPEG-1 • 인코딩처리 시간 허용/실시간 디코딩 • CD-ROM 등의 읽기 전용 매체 대상 • 상호 비대칭 인코더/디코더 • MPEG-1 인코더 • MPEG 표준에서 정의하고 있지 않다. • MPEG-1 디코더에서 디코딩 가능한 비트 스트림을 생산하기만 하면 된다. • MPEG-1 디코더 • MPEG-1 표준에서 정의하고 있는 모든 비트 스트림을 디코딩할 수 있어야 한다. • 인코더의 복잡도가 디코더 보다 높기 때문에 상호 비대칭 형태가 더 효율적이다.
MPEG-1 • H.261과 MPEG-1 H.261과 MPEG-1의 비교
MPEG-1 • MPEG-1의 구조 • 픽쳐 시퀀스 • MPEG-1 영상 구조의 최상위 단위 • 임의 길이의 동영상 • 픽쳐 그룹(GOP) • 일반적으로 10 ~ 30개의 픽쳐들로 구성
MPEG-1 • 픽쳐 • 인코딩된 개별 이미지
MPEG-1 • MPEG-1에서 영상의 전체 이미지인 프레임은 프레임 전체를 인코딩한 픽쳐로 구성된다. • MPEG-2 이후 부터는 프레임 외의 구조로 인코딩된 픽쳐도 사용된다. • MPEG-1은 비월(interlace) 개념을 포함하고 있지 않다. • 인트라 프레임 vs 비-인트라 프레임 • 인트라 프레임(intra: within, inside): 해당 프레임 내의 정보만으로 인코딩되어 있는 프레임 • I-프레임 • 비-인트라 프레임: 해당 프레임이외의 다른 프레임의 정보를 함께 참조 하여 인코딩되어 있는 프레임 • P-프레임, B-프레임
MPEG-1 • 슬라이스 • 연속된 매크로 블록들 • 독립된 인코딩/디코딩 단위 • 한 슬라이스 내의 임의 데이터의 손상이 있을 경우, 해당 슬라이스는 디코딩되지 못한다. • 매크로 블록 • 16 X 16 구역의 픽셀 정보에 해당하는 구조 • 블록 • 매크로 블록 내의 8 X 8 정보에 해당하는 구조 • DCT 변환의 대상
MPEG-1 • 프레임 • 인트라 프레임 • I-프레임: 프레임 내 인코딩 영상 • GOP의 독립성 확보 • 동영상의 프레임 순서로 인코딩 • 영상 이미지 내의 모든 정보로 구성 • 비-인트라 프레임 • P(Predictive)-프레임: 프레임간(inter) 순방향 예측 인코딩 영상 • I, P-프레임으로부터 예측 수행에 의해 생성 • 동영상의 프레임 순서로 인코딩 • 영상 이미지 내의 정보와 순방향 예측 정보로 구성
MPEG-1 • B(Bidirectionally predictive)-프레임: 양방향 예측 인코딩 영상 • I, P-프레임을 처리한 후 동영상의 프레임 순서로 그 사이의 B-프레임을 인코딩 • 영상 이미지 내의 정보, 순방향 예측 정보, 그리고 역방향 예측정보 및 양방향 예측 정보(interpolative)로 인코딩
MPEG-1 • 픽쳐 그룹(GOP: Group Of Pictures) • 원 영상 순서 별 GOP
MPEG-1 • 코딩 순서 별 GOP
MPEG-1 • 매크로 블록
MPEG-1 • 16 X 16 구역의 휘도 정보와 색상 정보로 구성 • Y:Cb:Cr (4:2:0 색 비율 포맷) • 휘도 : 영상 밝기 (Y) • 색차 : 영상 색차 정보 (Cb, Cr) • 휘도 정보에 비해 ½만큼 샘플링
MPEG-1 • DCT (Discrete Cosine Transform) • 8 X 8 블록 대상 • 영상 인코딩 과정 • 한 프레임의 영상을 8 X 8블록으로 분할한다. • 각 블록마다 DCT를 수행한다. • 변환된 계수들을 양자화 스텝(Quantization step)으로 나눈다.- 양자화 • 영상 디코딩 과정 • 8 X 8 계수 블록의 각 값에 양자화 스텝을 곱한다.- 역양자화 • 각 블록마다 IDCT (Inverse DCT)를 수행한다.
MPEG-1 • 양자화 • 정보의 값을 특정 수로 나누어 작은 수로 표현하는 것 • DCT 변환 계수의 양자화 값은 정수로 표현 • 양자화를 통해 0값을 갖게 된 계수들은 이후 압축 코딩 된다. 기본 양자화표: (a) 인트라 코딩의 경우, (b) 인터 코딩의 경우
MPEG-1 • MPEG-1 코덱 • MPEG-1 인코더
MPEG-1 • MPEG-1 디코더
MPEG-2 • MPEG-2의 표준화 • 표준화 경위 • 1991년 MPEG-1 표준화 완료 • 1993년 MPEG-2 발표 • 목표 • 5~10 Mbps정도로 현행 TV품질 실현 • HDTV품질 실현을 위한 Mpeg 3의 전 작업으로 시작 • 최종적으로 Mpeg 3 탈락(Mpeg 2 스펙에 포함) • 1993년 미국의 차세대 TV 방송 방식으로 채택
MPEG-2 • 특징 • 저장 미디어 뿐만 아니라 방송 미디어의 적용 고려 • HDTV 품질까지 확장 가능 • 점진적 주사 및 비월 주사 영상 취급 가능 • 확장 적응성(Scalability, 스케일러빌러티) 지원 • 공간해상도의 일부 비트열을 가지고 작은 해상도의 display를 가능하게 한다. • 역방향 호환성(backward compatibility)을 갖는다. • MPEG-2 디코더는 MPEG-1 영상의 디코딩도 가능하다.
MPEG-2 • MPEG-2 목표 • 상호 운용성(Interoperability) • 통신, 방송, 저장 기기 등 다른 미디어사의의 호환성 및 정보 교환 가능 • 확장 적응성(Scalability) • 코딩된 일부의 비트열을 통해 하위 해상도의 영상 재생 가능 • 확장성(Extensibility) • 어떤 비트율로 전송되는 영상에 부가 정보만을 추가하여 전체 해상도를 쉽게 높일 수 있다. • 5Mbps (일반 TV 품질) + 10Mbps (부가 정보) = 15Mbps (HDTV 품질)
MPEG-2 MPEG-2의 분야별 응용
MPEG-2 • MPEG-1과 MPEG-2 • 색 공간(color space) • 4:2:0 및 4:2:2, 4:4:4 코딩 지원 • 슬라이스 구조 • 연속된 매크로 블록의 모임 • 독립된 코딩 단위 • MPEG-2에서 슬라이스의 최대 크기는 영상의 한 행 크기이다. • 양자화 • MPEG-1 DC계수의 양자화 정밀도: 8-bit • MPEG-2: 픽쳐별 8, 9, 10-bit 양자화 정밀도 허용
MPEG-2 • 은닉 움직임 벡터 • 데이터 손실 상황에 대비해 I-프레임에 자신의 프레임을 참조 대상으로 하는 움직임 벡터를 부여하는 것 • 데이터 손실 발생시 참조 대상인 주변 블록으로부터 해당 정보를 대체 • 픽쳐 구조 • 프레임 구성 • MPEG-1: 프레임 픽쳐로만 구성 • MPEG-2: 프레임 픽쳐 또는 필드 픽쳐로 구성 • 유연성 • 인코더와 디코더의 다양한 응용및 호환을 가능하게 함 • 프로화일(profile) : 기능상의 분류 • 레벨(level): 데이터 양의 분류
MPEG-2 • 색 공간 MPEG-2의 색 비율과 그에 따른 코딩순서 및 샘플링
MPEG-2 • 비월 주사(interlaced scan) 기술 점진적 주사(progressive scan) 비월 주사(interlaced scan)
MPEG-2 • 픽쳐 구조 • 프레임 픽쳐 • 전체 프레임이 하나의 픽쳐로 구성 • 필드 픽쳐 • 전체 프레임이 여러 개의 필드 픽쳐들로 구성 • 상위(upper) 필드와 하위(lower) 필드로 각각 이루어진 픽쳐가 하나의 프레임을 구성
MPEG-2 • 프레임 DCT • 매크로 블록은 8 X 8 크기의 블록으로 나뉘어 순서대로 DCT 변환된다.
MPEG-2 • 필드 DCT • 상위/하위 필드의 8개 라인을 취하여 DCT의 대상이 되는 8 X 8 크기의 상위/하위 블록을 구성
MPEG-2 • DCT 계수의 스캔 패턴(pattern) • DCT 계수 스캔 • 양자화된 DCT 계수들을 0인 값과 0이 아닌 값들로 구분하여 1차원의 열로 나열하는 것 • 구분되어진 DCT 계수들은 가변 길이 코딩의 방법으로 압축 • 45o지그재그 스캔 • MPEG-1부터 사용되는일반적인 스캔방법 • 프레임 픽쳐 구조에 적합
MPEG-2 • 67.5o지그재그 스캔 • MPEG-2에서 소개된스캔방법 • 필드 픽쳐 구조에 적합
MPEG-2 • 확장 적응성(scalability, 스케일러빌러티) • 데이터 스트림의 계층 구조 • 기본 계층(basic layer) • 데이터 스트림 내 반드시 디코딩되어야 하는 계층 • 향상 계층(enhancement layer) • 필요에 따라 추가적으로 디코딩되어 영상을 향상시키기 위한 계층 • 공간적 스케일러빌러티 • 저해상도의 기본 계층과 고해상도 구성을 위한 추가 정보를 가진 향상 계층으로 구성
MPEG-2 • 시간적 스케일러빌러티 • 동일한 해상도의 영상에 대해 서로 다른 데이터 전송량을 지원 • 기본 계층보다 초당 프레임 수가 높은 향상 계층 구성 예) 30Hz 와 60Hz의 점진적 주사 영상을 단일 데이터 스트림에서 함께 구성 • SNR (Signal to Noise Ratio) 스케일러빌러티 • 신호 대 잡음비(SNR)가 클 경우에 대한 고화질 영상과 반대의 경우에 대한 저화질 영상을 향상 계층 과 기본 계층으로 함께 구성
MPEG-2 • 레벨과 프로화일 • MMPEG-2의 다양한 기술들간의 상호 호환성을 위한 분류 기준 • 프로화일: 툴과 구성 요소 등의 기능별 분류 • 단순, 메인, SNR, Spatial, 하이, 4:2:2 • 레벨 : 각 profile 분류에 대해 비트 스트림내의 데이터 양을 기준으로 분류 • 하이, 하이1440, 메인, 로우 • 표기법 • 프로화일@레벨 예) 메인 프로화일의 메인 레벨: MP@ML
MPEG-4 • MPEG-4 표준화 • 1993년 MPEG-4 표준화 시작 • MPEG-3 표준안 취소: MPEG-2에 포함 • 목표 • 초기 낮은 데이터 전송률 환경에도 적합한 동영상 인코딩 방법의 목표에서 다양한 환경에서의 멀티미디어 데이터를 위한 범용 코딩 표준으로 확장 • 특징 • 다양한 데이터 전송률 환경에서의 비디오 및 음성 코딩 성능 향상 목표 • 64 kbps 이하 • 64 kbps ~ 384 kbps • 384 kbps ~ 4 Mbps
MPEG-4 • 객체 개념 도입 • 비디오 객체와 오디오 객체가 개별적 혹은 복합적으로 인코딩되고 전송되어 최종 장면(scene)을 구성할 수 있다. • 디코더 단말 측에서 장면 구성을 위한 다양한 조작이 가능 • 구성 • 텍스쳐(texture) 정보와 형태(shape) 정보
MPEG-4 • MPEG-4 시스템
MPEG-4 • MPEG-4 시스템의 동영상 처리 과정
MPEG-4 • MPEG-4의 동영상 구조 • 객체 • 비디오 객체: 시간에 따라 변하는 동영상 내 일반 객체 • 정지 텍스트 객체: 시간과 무관하게 변하지 않는 객체 • 구성 • 텍스쳐 정보 • 휘도 및 색차 정보 • 형태 정보: 알파 데이터 • 객체의 형태를 나타내는 정보 • 객체가 차지하는 부분과 나머지 여백 부분에 서로 다른 이진 값을 대응시킨, 객체를 포함하는 사각형으로 표현 • VOP (Video Object Plane) • 해당 객체에 대해 일정한 시간 간격으로 샘플링된 일련의 정보들 • 인트라 코딩 또는 인터 코딩 적용
MPEG-4 • GOV (Group Of VOPs) • GOP와 유사한 개념으로 VOP들의 그룹 • GOV 단위로 임의 접근 가능 • GOV의 구조는 선택 사항 • VOL (Video Object Layer) • 스케일러빌러티를 제공하기 위한 구조 • 기본 계층과 향상 계층으로 구성
MPEG-4 • MPEG의 영상 처리 과정 • MPEG-1, MPEG-2 • MPEG-4
MPEG-4 • MPEG-4의 기능 • 영상의 해상도 및 주사(scan) 방법 • sub-QCIF (128 X 96) 에서 초고해상도 (4k X 4k) 정도까지로 매우 광범위 • 점진적 주사 및 비월 주사 • 전송률에 따른 다양한 객체별 코딩 방법 제공 • 형태 코딩, 텍스쳐 코딩, 메시 코딩 및 애니메이션 변수 코딩 등 • 내용 기반(content-based) 코딩 • 임의 형태(arbitrary shape) 코딩 • 비디오 객체 단위로 독립적 인코딩 및 디코딩 가능
MPEG-4 • 확장 적응성(scalability, 스케일러빌러티) • 공간적으로 최대 11단계 지원 • 시간적으로 최대 3단계 지원 • FGS (Fine Grain Scalability) 프로화일 • 응용 시스템의 컴퓨팅 파워와 전송 대역폭이 매우 급변해서 예측이 불가능한 스트리밍에 적합한 스케일러빌러티를 정의 • 고장 감내성 • 오류 발생이 빈번하거나 데이터 전송률이 매우 낮은(64kbps 이하) 환경에 사용 가능한 코딩 알고리즘 제공 • 애니메이션 • 인조 합성 객체 구성 및 코딩에 대한 기능 제공 • 얼굴과 몸 애니메이션
MPEG-4 • MPEG-4 코딩 • 형태 코딩 • 이진 알파(binary alpha) 데이터 • 0과 1로 형태 표현 • 그레이 형태 마스크(gray shape mask) • 그레이 값을 통해 객체 이미지의 투명 정도를 세밀하게 표현 • 픽셀당 8-bit 정규화 값 • 256 단계: 0(객체 밖) ~ 255(불투명 객체 내) • 텍스쳐 코딩 • 인트라 코딩 및 인터 코딩 • I, B, P-VOP • 경계 사각형(boundary rectangle)을 매크로 블록으로 분할
MPEG-4 • 경계선 코딩 • 임의 형태 객체에서 경계 사각형 내의 객체 밖 픽셀 정보는 비효율적인 DCT 변환의 요인 • 패딩(padding)을 통한 효율적인 코딩 기법 제공
MPEG-4 • 스프라이트 (sprite) 코딩