Abstract
A bi-directional symmetric prediction technique has been developed to improve coding efficiency of B-slice and to reduce the computational complexity required to estimate two motion vectors. On the contrary to the conventional bi-directional mode which encodes both forward and backward motion vectors, it only encodes a single forward motion vector, and the missing backward motion vector is derived in a symmetric way from the forward motion vector using temporal distance between forward/backward reference frames to and from the current B picture. Since the backward motion vector is derived from the forward motion vector, it can halve the computational complexity for motion estimation, and also reduces motion vector data to encode. This technique always derives the backward motion vector from the forward motion vector, however, there are cases when the forward motion vector is better to be derived from the backward motion vector especially in scene changes. In this paper, we generalize the idea of the symmetric coding with forward motion vector coding, and propose a new symmetric coding with backward motion vector coding and adaptive selection between the conventional symmetric mode and the proposed symmetric mode based on rate-distortion optimization.
H.264/AVC의 B 슬라이스의 부호화 효율 향상과 두 개의 움직임벡터를 탐색하는데 소요되는 계산량 감소를 위하여 양방향 대칭(Bi-directional Symmetric) 기법이 개발된 바 있다. 이 기법은, 전방향과 역방향 참조영상 각각에 대하여 움직임 벡터를 구하고 이 두 개를 각각 다 전송하는 종래의 양방향 예측기법과는 달리, 전방향 참조영상에 대해 움직임 벡터를 찾는 동시에 역방향 참조영상에 대한 역방향 움직임 벡터를 전방향 참조영상, 역방향 참조영상, 그리고 현재 영상간의 상대적 거리를 고려한 대칭(Symmetric) 구조로 동시에 계산하여 추정하는 방법이다. 이 기법에 따르면, 전방향 움직임 벡터가 정해지면, 역방향 움직임벡터는 이와 대칭적으로 계산하여 얻어지므로 움직임벡터 추정 복잡도를 반으로 줄이고, 전방향 움직임벡터만을 전송하도록 하여 부호화할 움직임벡터의 양도 줄일 수 있다. 그러나 이 방법은 항상 전방향 움직임 벡터를 기준으로 역방향 움직임 벡터를 계산하여 얻다 보니, 장면전환등의 경우 오히려 역방향 움직임벡터를 기준으로 전방향 움직임벡터를 추산하는 것이 더욱 효율적인 경우도 있다. 본 논문에서는 전방향 참조영상에 대한 움직임 벡터를 중심으로 역방향 움직임 예측벡터를 추정하는 방법을 일반화시켜, 역방향 움직임 벡터를 중심으로 전방향 움직임 벡터를 추산하여 사용하는 방법을 제안하고 아울러 기존 방법과 제안 방법을 율왜곡 관점에서 최적으로 선택하여 사용하는 방법을 제안한다.