220420_유명조달기업
H.264/AVC의 빠른 부호화를 위한 효율적인 모드 결정과 탐색영역 제한
상태바
H.264/AVC의 빠른 부호화를 위한 효율적인 모드 결정과 탐색영역 제한
  • CCTV뉴스
  • 승인 2010.12.03 00:00
  • 댓글 0
이 기사를 공유합니다

본 고는 H.264/AVC의 빠른 부호화를 위해 인터 및 인트라 예측에서 효율적인 알고리즘을 제안한다. 첫째, 인터 예측모드 결정 방법은 시·공간적 상관성 정보와 픽셀 방향성을 이용하여 빠른 시점에 예측모드를 결정한다. 둘째, 인트라 예측모드 결정 방법은 매크로블록 내·외부의 픽셀값 변화량으로 Smoothness 정도를 판단하여 블록 크기를 선택하고, 대표 픽셀과 참조 픽셀을 이용하여 예측모드를 결정한다. 마지막으로 가변적인 움직임 탐색영역 제한은 주변 블록의 모드 정보와 예측 움직임 벡터를 이용하여 가변적인 탐색영역을 설정하는 방법이다. 실험결과, 제안하는 방법이 기존 JM 14.1과 비교하여 부호화 시간 감소율은 최소 약 18~53% 정도를 보였다. RD 성능면에서는 PSNR 값의 감소는 거의 없으면서 비트율이 평균 약 4% 정도 근소하게 증가하는 결과를 보였다.

H.264/AVC는 현재까지 개발된 영상 부호화 표준 중에서 가장 높은 압축효율을 가진다. 이 표준은 ISO/IEC의 MPEG과 ITU-T의 VCEG가 공동으로 설립한 연구 그룹인 JVT(joint video team)에서 개발한 것으로써, 기존의 표준인 MPEG-2, MPEG-4를 대체하여 멀티미디어 데이터의 저장 및 전송의 응용 서비스에서 다양하게 적용될 것으로 예상된다.

H.264/AVC에는 기존 표준에 비해 높은 압축효율을 가지기 위해서 다음과 같은 새로운 기술들을 포함한다. 1/4 픽셀 단위 움직임 예측(motion estimation), 가변블록 움직임 예측, 인터 프레임(inter frame)에서의 정확한 움직임 예측을 위한 다중 프레임 참조(multi reference frames)를 포함하고 있으며, P 슬라이스에서의 인트라 예측(intra prediction), 새로운 엔트로피 부호화 방법인 CAVLC(Context-based Adaptive Variable Length Coding), CABAC(Context-based Adaptive Binary Arithmetic Coding), 4×4 정수 변환 등과 같은 기술들을 통해서 압축효율을 향상시키고 있다.

그러나 이와 같은 새로운 기술들의 적용은 부호화 과정에서 높은 계산 복잡도가 높아지는 단점이 있다. 즉, 부호화기(encoder)의 과도한 계산량 증가는 무선 모바일 및 실시간 응용 시스템에 적용하는 것을 어렵게 만드는 문제점이 있다.

본 고는 H.264/AVC의 빠른 부호화를 위해 인터 및 인트라 예측에서 효율적인 알고리즘을 제안한다. 하지만 기본적으로 영상코덱(video codec)에서 움직임 예측 및 예측모드 결정의 유기적인 특성을 고려하고 있다. 즉, 인터 및 인트라 예측에서 수행되는 인터 및 인트라 예측모드, 움직임 탐색영역 모듈 간 상호보완적인 하나의 시스템을 목적으로 한다. 따라서 본 연구실에서 개발한 모듈을 활용하여 H.264/AVC 영상코덱의 인터 및 인트라 예측 시스템을 구축한다. 즉, 인터 및 인트라 예측모드 결정, 움직임 예측 과정에서의 탐색영역 제한을 효과적으로 적용하여 빠른 부호화를 실현한다. 첫째, 인터 예측모드 결정에서 시간 및 공간적 상관성을 이용한 최종모드 분포비율을 근거로 단계별 모드결정 알고리즘을 제안한다. 둘째, 인트라 예측모드 결정의 경우 부호화 블록 크기와 블록의 Smoothness 정도가 높은 연관성이 있다는 근거를 토대로 매크로블록 내·외부의 픽셀값 변화량을 이용하여 빠르게 인트라 예측모드를 결정하는 알고리즘을 제안한다. 마지막으로 탐색영역 제한 알고리즘은 주변 블록의 모드 정보와 움직임 벡터를 이용하여 가변적인 탐색영역을 설정하는 알고리즘을 제안한다.

관련 연구

인터 예측모드 결정
H.264/AVC에서는 압축효율을 향상시키기 위해 인터 예측에서 7가지 가변블록 크기(16×16, 16×8, 8×16, 8×8, 8×4, 4×8, 4×4)를 사용한다. 각 블록 크기에 따라 움직임 예측을 하고 최종적으로 비트율-왜곡 최적화(Rate-Distortion Optimi zation)를 통해 최종 모드와 블록 크기가 선택된다. 이와 같은 부호화 과정은 움직임 예측의 정확성을 향상시키기 때문에 압축효율이 높아지지만, 동시에 계산 복잡도가 높아짐으로 인해서 전체 부호화 시간이 증가된다. 따라서 인터 예측에서 정확한 모드를 빠르게 선택하는 것이 중요하다.

1. 최종 매크로블록 모드분포 비율
기존의 연구에서는 복잡한 모드선택 과정을 줄이기 위해 각 모드별로 사용되는 빈도를 이용하였다. 즉, 모드를 선택하는 순서의 우선 순위를 가변블록의 사용빈도가 높은 순서에 따라 수행함으로써 계산 과정을 줄이는 방법을 제안하였다.

표 1은 8개의 영상 시퀀스(video sequence)에서 사용되는 다양한 모드의 분포 비율을 나타낸다. 8×8 블록 크기에서 괄호안의 숫자는 8×8 하위 블록(8×8, 8×4, 4×8, 4×4)에서 8×8 블록이 차지하는 평균 사용빈도를 나타낸다.

표 1의 내용을 분석하면, 시퀀스별로 평균 70% 이상이 SKIP 모드로 부호화된다는 것과 8×8 하위 블록에서의 8×8 블록 크기의 평균 사용빈도가 가장 높다는 것이다. 이와 같은 분석은 빠른 시점에 블록모드를 판단하는 정보로 이용할 수 있다.

2. 이웃 매크로블록의 경계 방향성
기존연구에서는 가변블록 크기 중 최적의 모드를 빠르게 선택하기 위해 이웃 매크로블록에서 경계 방향의 상관성을 이용하고 있다. 이웃 매크로블록에서 경계 방향의 상관성이란, 이웃한 매크로블록의 크기에 따라 현재 부호화하는 매크로블록의 크기에 영향을 미치는 것이다.
그림 1과 같이 매크로블록 U가 8×16일 경우에는 현재 매크로블록 C는 그와 같은 8×16이 될 확률이 높다. 그리고 매크로블록 U와 L이 각각 8×16과 16×8이면, 현재 매크로블록 C는 8×8일 확률이 높다. 즉, 주위 매크로블록의 모드에 따라서 현재 매크로블록 모드가 영향을 받는 것이다.


인트라 예측모드 결정
인트라 예측은 다른 프레임이나 블록을 참조하는 인터 예측과 달리 장면 내의 상관성인 공간적 정보를 이용한다. H.264/AVC에서는 인트라 예측를 위해 4×4 휘도예측(luminance predic tion), 16×16 휘도예측, 8×8 색차예측(chrominance prediction)을 지원한다. 일반적으로 이전 프레임과 픽셀의 상관도가 더 크기 때문에 인트라 모드가 선택되는 경우는 적지만, 인트라 예측 방법의 개선을 통해서 부호화 시간을 감소시키는 데 충분한 역할을 할 수 있다. 다음에서 설명하는 것은 H.264/AVC에서 채택하고 있는 인트라 예측 방법이다.

1. 4×4 휘도 인트라 예측
4×4 휘도 예측은 모두 9가지 예측모드를 지원하는데, 그림 2는 9가지 예측모드를 나타내고 있다. 4×4 블록 크기에서는 9가지 예측모드를 이용하여 예측블록을 생성하고 현재 블록과의 차를 구한다. 이때 차의 값이 최소가 되는 예측블록에 대한 예측모드가 선택된다. 그 중에서 예측모드 2번에 해당하는 'DC'는 화면(picture)의 경계를 벗어나지 않는 픽셀만을 참조해서 평균치를 계산하는 예측을 수행한다. 블록 크기에 따른 인트라 예측 특성을 살펴보면, 4×4 휘도 인트라 예측은 16×16 휘도 인트라 예측보다 세밀하거나 동적인 움직임을 표현하기 위한 블록에 더 적합하다.


2. 16×16 휘도 인트라 예측모드
16×16 휘도 예측은 모두 4가지의 방향성을 지원하는데, 그림 3은 4가지 방향성을 나타낸다. 그리고 8×8 색차예측은 16×16 휘도 예측과 예측모드의 번호만 다를 뿐 같은 종류의 방향성을 가진다.

16×16 블록 크기에서도 최적의 모드를 구하는 방법은 4×4 블록 크기에서와 마찬가지로 예측블록과 현재 블록과의 차이를 구해 최소가 되는 예측모드를 선택한다. 16×16 휘도 인트라 예측은 전반적으로 움직임의 변화가 적은 경우에 더 적합하다.

탐색영역 제한
움직임 예측의 계산 과정을 감소시킬 수 있는 방법에는 움직임 탐색영역 제한, 움직임 탐색영역의 시작위치 선택, 움직임 탐색유형 선택 등이 있다. 다음에서는 본 고에서 다루고 있는 움직임 탐색영역 제한에 관련된 연구를 설명한다.

움직임 탐색영역은 화면 내의 공통적인 움직임과 같은 특성을 이용하면 그 탐색되는 영역을 가변적으로 제한할 수 있다. 즉, 움직임 예측 과정 초기에 그 탐색영역이 정해지기 때문에 불필요한 탐색 과정을 차단할 수 있다.

화면상의 움직임 필드가 화면 사이에서 Smoothness 정도가 높고, 움직임 변화의 정도가 일반적으로 작다는 것에 착안한다. 이유는 현재 부호화되는 블록과 인접한 블록의 움직임 벡터는 밀접한 관계를 가지고 있기 때문이다. 따라서 인접한 주위의 움직임 벡터를 이용하여 현재 블록의 예측된 움직임 벡터(Predicted Motion Vector)를 이용하여 초기 탐색위치를 설정하고, 탐색영역을 예측된 움직임 벡터 크기에 따라 가변적으로 설정하여 움직임 탐색영역을 축소한다.

하지만 이 방법은 탐색영역의 형태가 움직임 특성과 상관없이 정사각형으로 고정되어 있고, 16×16 블록 크기 이외의 블록 크기에 대한 고려가 없다는 문제점이 있다.

효율적인 예측모드 결정과 탐색영역 제한

그림 4는 본 고의 빠른 부호화 기술들이 적용되는 H.264/ AVC 부호화기 구조도로, ' Fast Encoding' 이 해당 부분이 된다. 인터 및 인트라 예측모드 결정은 ' Mode Decision' 모듈에서 적용되고, 탐색영역 제한 알고리즘은 ' Motion Estimation' 모듈에서 적용된다.

단계별 인터 예측모드 결정
시·공간적 상관성과 픽셀값의 변화 정도를 이용하여 인터 예측모드를 빠르게 선택 가능하게 함으로써, 부호화 과정의 계산 시간을 감소시키는 방법을 제안한다.

1. 블록의 시·공간적 상관성을 이용한 SKIP 모드 선택
관련 연구의 인터 예측모드 결정에서 설명한 바와 같이 SKIP 모드는 전체 예측모드 중에서 가장 많이 선택된다. 즉, 빠른 시점에 SKIP 모드를 결정하면 부호화 시간을 감소시킬 수 있으므로 여기에서는 시간적, 공간적 상관성을 이용해 SKIP 모드를 빠른 시점에 결정하는 방법을 설명한다. 최종 부호화 모드가 SKIP 모드로 선택되면 추가 계산과정 없이 SKIP 모드만 수행하고, INTER 모드가 선택된 경우에는 다음 항에서 설명할 2단계, 3단계의 축소된 계산과정을 수행한다.

1단계에서 시·공간적 상관성을 이용하게 되는 이유는 그 두 가지 특성이 현재 부호화 예측모드에 많은 영향을 미치기 때문이다. 표 2는 시간적 상관성이 현재 부호화되는 블록에 미치는 영향이 어느 정도인지를 나타낸다.

표 2의 결과를 살펴보면, 시간적으로 이전의 매크로블록 T-2, T-1이 SKIP 또는 INTER 모드로 부호화되었을 때, 현재 부호화되는 블록의 모드도 동일하게 될 확률이 높다는 것을 알 수 있다. 그러나 표 2의 근거로는 예측모드의 결정이 시간적으로 절대적인 인과관계를 가지지 않기 때문에 예측모드 정확성이 떨어진다. 따라서 이에 추가하여 공간적 상관성을 이용하여 SKIP 또는 INTER 모드 선택의 신뢰도를 향상시켰다.



공간적 상관성은 현재 부호화되는 블록의 이웃한 블록이 비슷한 정보를 가질 확률이 높다는 것에 근거한다. 그림 5는 현재 부호화할 매크로블록과 공간적 상관성을 이용할 이미 부호화된 이웃 매크로블록에 대한 관계를 나타낸다.

현재 부호화되는 매크로블록 E는 시간적 상관성을 이용하여 SKIP 모드인지 INTER 모드인지 일시적으로 결정한 상태이다. 이에 추가하여 더욱 정확하게 예측모드를 판단하기 위해 이웃한 블록의 정보를 확인한다. 표 3은 그림 5의 매크로블록 E가 이웃한 매크로블록의 모드 정보를 확인하고 모드 타입을 결정하는 기준이 된다. 표 3에 대한 근거는 다양한 영상 시퀀스를 통한 실험적인 결과에 근거한다.




2. 오차 매크로블록의 픽셀값 방향성을 이용한 예측모드 선택
2단계에서는 1단계에서 INTER 모드로 결정된 경우에 오차 매크로블록의 픽셀값 방향성에 따라 세분화된 예측모드를 선택한다. 오차 매크로블록은 이전 매크로블록과 현재 매크로블록의 차이를 의미한다. 픽셀값 방향성을 살펴보는 이유는 일반적으로 시간적 움직임이 작으면 오차 매크로블록의 차이는 작고 큰 매크로블록 크기를 이용하기 때문이다. 따라서 매크로블록을 정확하게 4등분하여 만들어진 영역별 픽셀값의 차이가 작으면 '그룹 A'에 해당하는 SKIP, INTER16×16 모드로 나누고, 그렇지 않은 경우 '그룹 B'에 해당하는 INTER16×8, INTER8×16, INTER8×8로 나눈다. 이에 대한 기준 값을 구하는 방법은 식 (1)과 같다.

가로 기준값 = A - B
세로 기준값 = C - D
A= 1영역 + 2영역 , B = 3영역 + 4영역                        (1)
C= 1영역 + 3영역 , D = 2영역 + 4영역

그림 6은 Carphone 시퀀스를 대상으로 한 오차 매크로블록의 픽셀 차이값과 모드 분포도를 나타낸다. 그림 6에서와 같이 그룹 A와 B를 나누는 기준 값은 210을 사용한다. 이렇게 나누어진 그룹 A와 B는 3단계 과정을 수행하여 최종적으로 모드를 결정한다.
 

3. 최종 인터 예측모드 결정
2단계 과정의 수행 후 선택된 그룹 A는 SKIP, INTER16×16 모드를 포함하는 집합이기 때문에 오차 매크로블록의 픽셀값 차이를 이용하여 차이값이 임계값보다 작으면 SKIP 모드, 그렇지 않은 경우 INTER16×16 모드로 선택한다. 이에 대한 근거는 실험을 통한 그림 7의 결과에 근거한다.

그룹 B는 INTER16×8, INTER8×16, INTER8×8 모드 중에서 예측모드를 선택하게 되는데, 이 때 부호화되는 매크로블록의 최종 예측모드는 주변 매크로블록의 모드에 따른 경계 방향성을 이용하여 선택된다.

단계별 인트라 예측모드 결정
부호화 시간을 감소시키기 위한 효율적인 인트라 예측모드 결정 방법에 대해 설명한다. 본 고에서는 휘도 인트라 예측을 효과적으로 수행하기 위해 매크로블록의 Smoothness를 보여주는 픽셀의 변화량을 이용하고 있다.

1. 인트라 예측블록 크기 선택
본 고에서 제안하는 빠른 인트라 예측의 1단계 과정은 INTRA 16×16과 INTRA4×4 블록 크기 중에서 최종 예측모드가 포함된 것을 먼저 선택하는 것이다. 일반적으로 인트라 부호화 시 결정되는 부호화 블록의 크기는 블록의 Smoothness 정도와 관련이 있다. 즉, 세부적이고 복잡한 정보를 가진 블록은 INTRA4×4 모드로 부호화되고, 그렇지 않은 정보를 가진 블록은 INTRA 16×16 모드로 대부분 선택되어 부호화된다. 따라서 본 고에서는 Smoothness 정도의 기준으로 삼을 수 있는 픽셀값 변화량의 차이를 이용하여 빠른 시점에 이 두 가지 모드를 구분하여 부호화 시간을 단축시키는 방법을 제안한다.

1단계에서 예측블록 크기를 빠르게 결정하기 위해 매크로블록 내 부분 블록들(4×4, 8×8, 12×12)의 경계픽셀 차이의 합을 이용한다.

즉, 그림 8의 Smoothness 측정에 이용되는 경계픽셀을 수식 (2)에 적용하여 예측블록 크기를 결정할 수 있다. 이와 같이 구해진 Smoothness 값이 실험을 통해 구해진 임계값보다 작으면 그 블록은 움직임이 적은 블록으로 판단하고 INTRA16×16 블록 크기로 선택하고, 그렇지 않은 경우 INTRA4×4 블록 크기로 결정한다. 



2. 최종 인트라 예측모드 결정
1단계 과정을 통해 빠른 시점에 블록 크기가 결정되면 불필요한 블록 크기의 예측모드에 대한 계산과정을 제거하여 부호화 시간을 단축할 수 있다. 그러나 INTRA4×4 모드와 INTRA16×16 모드는 각각 9개, 4개의 방향성에 따른 최종 예측모드를 계산하는 과정이 필요하기 때문에, 이 계산과정을 효과적으로 줄일 수 있다면 추가적인 부호화 시간의 단축이 가능하다.

▶ 4×4 휘도 인트라 예측모드 결정
1단계에서 INTRA4×4 모드로 선택이 되었다면, 최종 예측모드를 결정하기 위해서 인접한 블록 내와 인접한 블록 주변의 대표 픽셀을 이용하여 후보 예측모드(candidate prediction mode)를 우선적으로 선택하고, 선택의 정확성을 높이기 위해 인접 방향성까지 고려하여 축소된 후보 예측모드로 재구성한다. 즉, H.264/AVC에서 이용하는 8가지 방향성 대신 그림 9와 같이 굵은 선으로 표시된 4가지 방향성을 이용하고, 마찬가지로 그림 9와 같이 원 안에 영소문자로 표시된 현재 블록 안의 대표 픽셀을 선정하여 인접한 블록의 원 안에 영대문자로 표시된 참조 픽셀과의 비교를 통해 빠르게 예측모드를 선택한다. 따라서 대표 픽셀과 참조 픽셀의 차이가 가장 작은 방향성을 1차 후보 예측모드로 결정한다.


다음으로 최종 예측모드의 정확성을 높이기 위해 1차 후보 예측모드에 인접한 방향성을 가진 모드 2가지와 DC 모드(모드 2)를 포함한다. 따라서 최종 후보 예측모드는 H.264/AVC에서 가지는 방향성보다 적은 4가지를 가지기 때문에 부호화 시간을 단축할 수 있다. 표 4는 최종 후보 예측모드 그룹을 나타낸다.

▶ 16×16 휘도 인트라 예측모드 결정
1단계에서 INTRA16×16 모드로 선택이 된 경우, 최종 예측모드의 결정은 INTRA4×4 모드에서 후보 예측모드를 선택하기 위해 대표 픽셀을 이용하는 방법과 유사하다.

그림 10은 16×16 휘도 인트라 예측을 위한 방향성과 대표 픽셀을 나타낸다. 그림 10에서 나타내는 방향성, 대표 픽셀, 참조 픽셀에 대한 설명은 그림 9에서와 같다. 따라서 INTRA4×4 모드에서와 마찬가지로 대표 픽셀과 참조 픽셀의 차이가 가장 작은 방향성을 1차 후보 예측모드로 결정한다.

다음으로 최종 예측모드의 정확성을 높이기 위해 1차 후보 예측모드에 DC 모드(모드 2)를 포함한다. 표 5는 최종 후보 예측모드 그룹을 나타낸다.




  단계별 가변적인 움직임 탐색영역 제한
본 고에서 제안하는 움직임 탐색영역 제한 방법은 블록모드의 정보와 예측 움직임 벡터의 특성을 이용하여 단계적으로 그 범위를 축소하여 계산과정을 감소시킨다.

1. 블록모드의 정보를 이용한 탐색영역 설정
움직임 탐색 과정에서는 먼저 초기 탐색 위치를 예측 움직임 벡터만큼 이동하는데, 이는 표준에서도 채택하고 있다. 다음으로 탐색영역의 형태는 정사각형 그대로 유지하면서, 현재 부호화되는 블록에서 이웃 블록의 모드정보를 이용하여 탐색영역을 가변적으로 설정한다.

블록모드의 정보는 블록 크기를 의미한다. 즉, 그림 5에 해당하는 이웃 블록에서 16×16 블록 크기에 해당하는 SKIP 모드 또는 INTER16×16 모드에 해당하는 블록의 개수가 2개 이상일 경우에 부호화 전 단계에 설정되는 탐색범위 값을 1/2로 축소시킨다. 이는 인접한 블록 간에는 공간적으로 상관성을 가지고 있고, 블록 크기에 따라 움직임의 Smoothness 정도에 차이가 있기 때문이다. 해당 조건에 부합하기 위해 설정된 이웃 블록에서 SKIP 모드 또는 INTER16×16 모드의 개수, 축소되는 탐색범위는 실험적으로 RD(Rate-Distortion) 성능을 고려하여 부호화 시간을 단축할 수 있는 값으로 하였다.

그림 11은 앞서 설명한 해당 조건이 만족되는 경우 탐색영역이 제한되는 것을 보여준다. 외부 정사각형 영역으로 표시된 기존 탐색영역이 내부 정사각형으로 표시된 내부 정사각형 영역으로 축소된 것을 확인할 수 있다. SR은 부호화 전 단계에 설정되는 탐색범위 값을 나타내고, CB는 대응블록을 의미한다. 그리고 PMV는 초기 탐색위치를 찾기 위한 예측 움직임 벡터를 나타낸다.

2. 예측 움직임 벡터를 이용한 탐색영역 설정
앞의 1단계를 수행한 후에 예측 움직임 벡터의 특성을 이용하여 탐색영역의 형태를 변형시켜 탐색 포인트 수를 더욱 감소시킬 수 있다. 즉, 예측 움직임 벡터의 x축 벡터값과 y축 벡터값의 비율이 1 : 2 또는 2 : 1 이상이 될 때, 탐색영역의 형태를 x축 방향으로만 1/2로 감소시키거나, y축 방향으로만 1/2로 감소시킨다. 이는 예측 움직임 벡터의 방향에 따른 운동성이 움직임 탐색 과정과 상관성을 가지고 있기 때문이다. 탐색영역의 형태를 결정하기 위해 기준이 되는 예측 움직임 벡터의 x축 및 y축 벡터값 비율, 탐색영역 형태의 비율은 실험적으로 RD 성능을 고려하여 부호화 시간을 단축할 수 있는 값으로 하였다.

예를 들어, 예측 움직임 벡터가 (4, 1)의 경우일 경우, x축 벡터값과 y축 벡터값의 비율이 2 : 1 이상이라는 해당 조건을 만족하기 때문에 x축 방향의 운동성이 y축보다 강하다고 판단한다. 따라서 y축 방향으로만 1/2로 탐색영역을 감소시킨다.

실험 및 성능평가

실험 환경
본 고에서 제안하는 빠른 부호화 방법의 성능을 측정하기 위한 실험은 표 6을 기반으로 수행되었다. 표 6의 항목 중에서 참조 소프트웨어 JM(Joint Model)은 JVT의 H.264/AVC 표준화 활동과 함께 독일의 연구기관 HHI(Heinrich-Hertz-Institute)에서 개발된 것으로써, 제안되는 기술은 이 플랫폼을 이용하여 구현해야 한다. 본 고에서 목적으로 하는 것은 빠른 부호화 방법을 이용한 경량화된 부호화기이기 때문에, B 슬라이스와 CABAC 엔트로피 부호화를 사용하지 않는 Baseline 프로파일 환경을 기본으로 실험이 수행되었다. 

 

제안하는 방법의 성능을 평가하기 위해 원래의 JM과 제안하는 방법을 적용한 JM을 비교하게 되는데, RD 성능과 부호화 시간을 측정인자로 둔다.

RD 성능은 압축효율을 평가하는 중요한 요소로서 객관적 화질의 측정기준이 PSNR(Peak Signal to Noise Ratio) 대비 비트율(bitrates)로 표현한다. 즉, 같은 PSNR 값에서 비트율이 낮게 나오면 압축효율이 좋다는 뜻이다. 그리고 계산 복잡도를 확인할 수 있는 부호화 시간 감소율은 수식 (3)과 같이 계산하였으며, 그 단위는 백분율로 나타내었다. 

  

성능 평가
표 7은 영상별 RD 성능을 QP 28과 32로 나누어 제안하는 빠른 부호화 방법과 기존의 JM 14.1과 비교한 것이다. 기존의 JM 14.1과 비교하여 유사한 PSNR 값을 가지면서 비트율이 근소하게 증가하는 것을 확인할 수 있다. 비교적 움직임이 빠른 영상인 Foreman 영상의 경우에도 RD 성능의 차이가 크지 않음을 볼 수 있다. 그림 12~14는 표 7의 영상에서 일부의 RD 성능 결과를 그림으로 나타낸 것이다.






표 8은 제안하는 빠른 부호화 방법의 RD 성능과 부호화 시간 감소를 JM 14.1과 비교를 통한 백분율로 나타내어 그 성능을 더욱 정확하게 보여준다.

제안하는 방법은 PSNR 값의 손실이 거의 없으면서 평균 약 4% 비트율의 근소한 증가를 보여준다. 반면에 부호화 시간 감소율은 영상별로 약 18%~53% 정도의 큰 폭을 유지한다. 부호화 시간 감소율의 편자가 다소 심한 이유는 영상의 움직임 정도가 부호화 성능에 영향을 미치기 때문이다. Suzie 영상이나 Tempete 영상과 같이 세부적인 움직임이 많은 영상은 빠른 시점에 예측모드를 결정하는 인터 및 인트라 예측의 효율성을 감소시키기 때문에 부호화 시간 감소율이 적다.

 

결론 및 향후과제

본 고는 H.264/AVC에서 사용하는 움직임 예측 및 보상 과정의 계산 복잡도를 감소시키기 위한 빠른 인터 및 인트라 예측 방법을 제안한다. 본 고에서 제안하는 빠른 부호화 방법은 크게 3가지로 나눌 수 있다.

첫째, 빠른 인터 예측모드 결정은 시·공간적 상관성 정보와 픽셀 방향성을 이용하여 빠른 시점에 예측모드를 결정하는 방법이다. 둘째, 빠른 인트라 예측모드 결정은 매크로블록 내·외부의 픽셀값 변화량으로 Smoothness 정도를 판단하여 블록 크기를 선택하고, 대표 픽셀과 참조 픽셀을 이용하여 예측모드를 결정한다. 마지막으로 탐색영역 제한은 주변 블록의 모드 정보와 예측 움직임 벡터를 이용하여 가변적인 탐색영역을 설정하는 방법이다.

실험결과, 제안한 방법을 적용하였을 경우에 기존 JM 14.1과 비교하여 부호화 시간 감소율은 최소 약 18%에서 최대 약 53% 정도를 보였으며, RD 성능 면에서는 PSNR 값의 감소는 거의 없으면서 비트율이 평균 약 4% 정도 근소하게 증가하는 결과를 보였다.

향후 과제로는 영상별로 비트율이 다소 증가하는 문제와 영상의 움직임 정도가 부호화 성능에 미치는 영향이 최소화 되도록 하는 것에 대한 연구를 수행할 것이다.


<본 내용은 천성환, 신광무, 강진미, 정기동 연구, 멀티미디어학회 논문지 제13권 제2호에 게재된 논문을 바탕으로 정리한 것입니다>



 

댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
0 / 400
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.