首页 / 专利库 / 多媒体工具与应用 / 视频编码 / 다시점 비디오 부호화/복호화 방법 및 장치

다시점 비디오 부호화/복호화 방법 및 장치

阅读:107发布:2024-02-29

专利汇可以提供다시점 비디오 부호화/복호화 방법 및 장치专利检索,专利查询,专利分析的服务。并且PURPOSE: A multiview video encoding/decoding method and an apparatus thereof are provided to correct brightness value between images in respectively different points configures multiview images. CONSTITUTION: A prediction unit determines a motion vector and a reference block of a current block through motion prediction about the encoded current block(710). An offset compensation unit determines difference between an average value of current block pixels and an average value of reference block pixels(720). The offset compensation unit generates an offset prediction value of the current block(730). An offset encoding unit encodes difference value between an offset value of the current block and the offset prediction value(740).,下面是다시점 비디오 부호화/복호화 방법 및 장치专利的具体信息内容。

  • 비디오 부호화 방법에 있어서,
    부호화되는 현재 블록에 대한 움직임 예측을 수행하여 상기 현재 블록의 움직임 벡터 및 참조 블록을 결정하는 단계;
    상기 현재 블록의 픽셀들의 평균값과 상기 참조 블록의 픽셀들의 평균값 사이의 차이인 오프셋 값을 결정하는 단계;
    이전에 부호화된 후 복원된 상기 현재 블록의 주변 블록들 및 상기 현재 블록의 예측 움직임 벡터 중 적어도 하나를 이용하여 상기 현재 블록의 오프셋 예측값을 생성하는 단계; 및
    상기 현재 블록의 오프셋 값과 상기 오프셋 예측값 사이의 차이값을 부호화하는 단계를 포함하는 것을 특징으로 하는 비디오 부호화 방법.
  • 제 1항에 있어서,
    상기 비디오는 3차원 비디오이고, 상기 참조 블록은 이전에 부호화된 후 복원된 좌안 비디오 및 우안 비디오 중 하나의 비디오의 블록이며, 상기 현재 블록은 상기 참조 블록과 다른 비디오의 블록인 것을 특징으로 하는 비디오 부호화 방법.
  • 제 1항에 있어서,
    상기 비디오는 다시점 비디오이며, 상기 참조 블록은 이전에 부호화된 후 복원된 제 1 시점의 비디오의 블록이며, 상기 현재 블록은 제 2 시점의 비디오의 블록인 것을 특징으로 하는 비디오 부호화 방법.
  • 제 1항에 있어서,
    상기 현재 블록의 오프셋 예측값을 생성하는 단계는
    상기 현재 블록에 바로 인접한 소정 크기의 블록들의 오프셋 평균값을 이용하여 상기 현재 블록의 오프셋 예측값을 결정하는 것을 특징으로 하는 비디오 부호화 방법.
  • 제 4항에 있어서,
    상기 소정 크기의 블록들은 4x4 크기의 블록들이며, 상기 4x4 크기의 블록들의 오프셋은 미리 계산된 값인 것을 특징으로 하는 비디오 부호화 방법.
  • 제 1항에 있어서,
    상기 현재 블록의 오프셋 예측값을 생성하는 단계는
    상기 현재 블록의 예측 움직임 벡터가 가리키는 참조 픽처의 대응 영역의 오프셋을 상기 현재 블록의 오프셋 예측값으로 결정하는 것을 특징으로 하는 비디오 부호화 방법.
  • 제 1항에 있어서,
    상기 현재 블록의 오프셋 예측값을 생성하는 단계는
    상기 현재 블록의 좌측에 인접한 주변 블록, 상측에 인접한 주변 블록 및 코너에 위치한 주변 블록들의 오프셋 평균값을 이용하여 생성되는 것을 특징으로 하는 비디오 부호화 방법.
  • 제 1항에 있어서,
    상기 현재 블록의 예측 움직임 벡터는
    상기 현재 블록과 동일한 참조 픽처를 참조하는 주변 블록이 존재하는 경우 상기 동일한 참조 픽처를 참조하는 주변 블록의 움직임 벡터로 결정되며,
    상기 현재 블록과 동일한 참조 픽처를 참조하는 주변 블록이 존재하지 않는 경우에는, 상기 현재 블록의 참조 픽처와 다른 참조 픽처를 참조하는 주변 블록의 움직임 벡터로 결정되는 것을 특징으로 하는 비디오 부호화 방법.
  • 제 1항에 있어서,
    상기 현재 블록의 오프셋값과 상기 참조 블록의 각 픽셀값을 더하여 움직임 보상을 수행하는 단계를 더 포함하는 것을 특징으로 하는 비디오 부호화 방법.
  • 제 1항에 있어서,
    상기 현재 블록에 대한 부호화 및 복원을 수행하는 단계; 및
    상기 복원된 현재 블록에 대한 상기 소정 크기의 블록 단위로 움직임 예측을 수행하고 상기 소정 크기의 블록 단위로 오프셋 값을 계산하는 단계를 더 포함하는 것을 특징으로 하는 비디오 부호화 방법.
  • 제 1항에 있어서,
    상기 현재 블록의 오프셋 예측값에 대한 정보를 비트스트림에 부가하는 단계를 더 포함하는 것을 특징으로 하는 비디오 부호화 방법.
  • 비디오 복호화 방법에 있어서,
    비트스트림으로부터 복호화되는 현재 블록의 오프셋 정보 및 움직임 벡터에 대한 정보를 복호화하는 단계;
    상기 복호화된 현재 블록의 오프셋 정보에 기초해 상기 현재 블록의 오프셋값을 생성하는 단계;
    상기 복호화된 현재 블록의 움직임 벡터 정보에 기초해 상기 현재 블록에 대한 움직임 보상을 수행하는 단계; 및
    상기 현재 블록의 움직임 보상값과 상기 현재 블록의 오프셋 값을 더하여 상기 현재 블록을 복원하는 단계를 포함하며,
    상기 오프셋 정보는 이전에 복원된 상기 현재 블록의 주변 블록들 및 상기 현재 블록의 예측 움직임 벡터 중 적어도 하나를 이용하여 생성된 상기 현재 블록의 오프셋 예측값과 상기 현재 블록의 오프셋 사이의 차이값을 포함하는 것을 특징으로 하는 비디오 복호화 방법.
  • 제 12항에 있어서,
    상기 비디오는 3차원 비디오이고, 상기 참조 블록은 이전에 복원된 좌안 비디오 및 우안 비디오 중 하나의 비디오의 블록이며, 상기 현재 블록은 상기 참조 블록과 다른 비디오의 블록인 것을 특징으로 하는 비디오 복호화 방법.
  • 제 12항에 있어서,
    상기 비디오는 다시점 비디오이며, 상기 참조 블록은 이전에 복원된 제 1 시점의 비디오의 블록이며, 상기 현재 블록은 제 2 시점의 비디오의 블록인 것을 특징으로 하는 비디오 복호화 방법.
  • 제 12항에 있어서,
    상기 현재 블록의 오프셋 값을 생성하는 단계는
    상기 현재 블록에 바로 인접한 소정 크기의 블록들의 오프셋 평균값을 이용하여 상기 현재 블록의 오프셋 예측값을 결정하고, 상기 차이값과 상기 오프셋 예측값을 가산하여 상기 오프셋 값을 생성하는 것을 특징으로 하는 비디오 복호화 방법.
  • 제 15항에 있어서,
    상기 소정 크기의 블록들은 4x4 크기의 블록들이며, 상기 4x4 크기의 블록들의 오프셋은 미리 계산된 값인 것을 특징으로 하는 비디오 복호화 방법.
  • 제 12항에 있어서,
    상기 현재 블록의 오프셋 값을 생성하는 단계는
    상기 현재 블록의 예측 움직임 벡터가 가리키는 참조 픽처의 대응 영역의 오프셋을 상기 현재 블록의 오프셋 예측값으로 결정하고, 상기 차이값과 상기 오프셋 예측값을 가산하여 상기 오프셋 값을 생성하는 것을 특징으로 하는 비디오 복호화 방법.
  • 제 12항에 있어서,
    상기 현재 블록의 오프셋 값을 생성하는 단계는
    상기 현재 블록의 좌측에 인접한 주변 블록, 상측에 인접한 주변 블록 및 코너에 위치한 주변 블록들의 오프셋 평균값을 이용하여 상기 현재 블록의 오프셋 예측값으로 결정하고, 상기 차이값과 상기 오프셋 예측값을 가산하여 상기 오프셋 값을 생성하는 것을 특징으로 하는 비디오 복호화 방법.
  • 제 12항에 있어서,
    상기 현재 블록의 예측 움직임 벡터는
    상기 현재 블록과 동일한 참조 픽처를 참조하는 주변 블록이 존재하는 경우 상기 동일한 참조 픽처를 참조하는 주변 블록의 움직임 벡터로 결정되며,
    상기 현재 블록과 동일한 참조 픽처를 참조하는 주변 블록이 존재하지 않는 경우에는, 상기 현재 블록의 참조 픽처와 다른 참조 픽처를 참조하는 주변 블록의 움직임 벡터로 결정되는 것을 특징으로 하는 비디오 복호화 방법.
  • 제 12항에 있어서,
    상기 복원된 현재 블록에 대한 상기 소정 크기의 블록 단위로 움직임 예측을 수행하고 상기 소정 크기의 블록 단위로 오프셋 값을 계산하는 단계를 더 포함하는 것을 특징으로 하는 비디오 복호화 방법.
  • 비디오 부호화 장치에 있어서,
    부호화되는 현재 블록에 대한 움직임 예측을 수행하여 상기 현재 블록의 움직임 벡터 및 참조 블록을 결정하는 움직임 예측부; 및
    상기 현재 블록의 픽셀들의 평균값과 상기 참조 블록의 픽셀들의 평균값 사이의 차이인 오프셋 값을 결정하고, 이전에 부호화된 후 복원된 상기 현재 블록의 주변 블록들 및 상기 현재 블록의 예측 움직임 벡터 중 적어도 하나를 이용하여 상기 현재 블록의 오프셋 예측값을 생성하고, 상기 현재 블록의 움직임 보상값과 상기 오프셋을 더하여 상기 현재 블록의 참조 블록의 밝기값을 보상하는 오프셋 보상부; 및
    상기 현재 블록의 오프셋 값과 상기 오프셋 예측값 사이의 차이값을 부호화하는 오프셋 부호화부를 포함하는 것을 특징으로 하는 비디오 부호화 장치.
  • 비디오 복호화 장치에 있어서,
    비트스트림으로부터 복호화되는 현재 블록의 오프셋 정보를 복호화하고, 복호화된 오프셋 정보에 기초해 상기 현재 블록의 오프셋 값을 생성하는 오프셋 복호화부;
    상기 현재 블록의 움직임 벡터 정보에 기초해 상기 현재 블록에 대한 움직임 보상을 수행하는 움직임 보상부; 및
    상기 현재 블록의 움직임 보상값과 상기 현재 블록의 오프셋 값을 더하여 상기 현재 블록의 참조 블록의 밝기값을 보상하는 오프셋 보상부를 포함하며,
    상기 오프셋 정보는 이전에 복원된 상기 현재 블록의 주변 블록들 및 상기 현재 블록의 예측 움직임 벡터 중 적어도 하나를 이용하여 생성된 상기 현재 블록의 오프셋 예측값 및 상기 현재 블록의 오프셋 사이의 차이값을 포함하는 것을 특징으로 하는 비디오 복호화 장치.

  • 说明书全文

    다시점 비디오 부호화/복호화 방법 및 장치{Method and apparatus for encoding/decoding multi view video}

    본 발명은 비디오 부호화 및 복호화에 관한 것으로서, 보다 상세하게는 스테레오 영상이나 다시점 비디오의 밝기값 보정을 위한 비디오 부호화 장치 및 방법, 그 복호화 방법 및 장치에 관한 것이다.

    3차원 디스플레이 애플리케이션을 위한 다시점 부호화(multi-view coding: MVC)는 인접한 시점 간의 예측시, 불완전하게 보정(calibration)된 카메라, 상이한 원근 투영 방향(different perspective projection direction), 상이한 반사 효과(different reflection effects) 등으로 인한 인접한 시점 간의 밝기(illumination) 변화가 발생하며, 이는 부호화 효율을 떨어뜨리는 문제가 있다. 또한, 단일 시점(single view)의 경우에도, 화면 전환 등의 경우 밝기 변화에 따른 부호화 효율이 떨어지는 문제가 있다.

    본 발명이 해결하고자 하는 기술적 과제는 스테레오 영상이나 다시점 영상의 밝기값 보정을 위한 비디오 부호화 장치 및 방법, 그 복호화 방법 및 장치를 제공하는 것이다.

    본 발명의 일 실시예에 따른 비디오 부호화 방법은 부호화되는 현재 블록에 대한 움직임 예측을 수행하여 상기 현재 블록의 움직임 벡터 및 참조 블록을 결정하는 단계; 상기 현재 블록의 픽셀들의 평균값과 상기 참조 블록의 픽셀들의 평균값 사이의 차이인 오프셋 값을 결정하는 단계; 이전에 부호화된 후 복원된 상기 현재 블록의 주변 블록들 및 상기 현재 블록의 예측 움직임 벡터 중 적어도 하나를 이용하여 상기 현재 블록의 오프셋 예측값을 생성하는 단계; 및 상기 현재 블록의 오프셋 값과 상기 오프셋 예측값 사이의 차이값을 부호화하는 단계를 포함한다.

    본 발명의 일 실시예에 따른 비디오 복호화 방법은 비트스트림으로부터 복호화되는 현재 블록의 오프셋 정보 및 움직임 벡터에 대한 정보를 복호화하는 단계; 상기 복호화된 현재 블록의 오프셋 정보에 기초해 상기 현재 블록의 오프셋값을 생성하는 단계; 상기 복호화된 현재 블록의 움직임 벡터 정보에 기초해 상기 현재 블록에 대한 움직임 보상을 수행하는 단계; 및 상기 현재 블록의 움직임 보상값과 상기 현재 블록의 오프셋 값을 더하여 상기 현재 블록을 복원하는 단계를 포함하며, 상기 오프셋 정보는 이전에 복원된 상기 현재 블록의 주변 블록들 및 상기 현재 블록의 예측 움직임 벡터 중 적어도 하나를 이용하여 생성된 상기 현재 블록의 오프셋 예측값 및 상기 현재 블록의 픽셀들의 평균값과 상기 현재 블록의 움직임 벡터가 가리키는 참조 블록의 픽셀들의 평균값 사이의 차이값인 오프셋 사이의 차이값을 포함한다.

    본 발명의 일 실시예에 따른 비디오 부호화 장치는 부호화되는 현재 블록에 대한 움직임 예측을 수행하여 상기 현재 블록의 움직임 벡터 및 참조 블록을 결정하는 움직임 예측부; 및 상기 현재 블록의 픽셀들의 평균값과 상기 참조 블록의 픽셀들의 평균값 사이의 차이인 오프셋 값을 결정하고, 이전에 부호화된 후 복원된 상기 현재 블록의 주변 블록들 및 상기 현재 블록의 예측 움직임 벡터 중 적어도 하나를 이용하여 상기 현재 블록의 오프셋 예측값을 생성하고, 상기 현재 블록의 오프셋 값과 상기 오프셋 예측값 사이의 차이값을 부호화하는 오프셋 부호화부를 포함한다.

    본 발명의 일 실시예에 따른 비디오 복호화 장치는 비트스트림으로부터 복호화되는 현재 블록의 오프셋 정보를 복호화하고, 복호화된 오프셋 정보에 기초해 상기 현재 블록의 오프셋 값을 생성하는 오프셋 복호화부; 상기 현재 블록의 움직임 벡터 정보에 기초해 상기 현재 블록에 대한 움직임 보상을 수행하는 움직임 보상부; 및 상기 현재 블록의 움직임 보상값과 상기 현재 블록의 오프셋 값을 더하여 상기 현재 블록을 복원하는 오프셋 보상부를 포함하며, 상기 오프셋 정보는 이전에 복원된 상기 현재 블록의 주변 블록들 및 상기 현재 블록의 예측 움직임 벡터 중 적어도 하나를 이용하여 생성된 상기 현재 블록의 오프셋 예측값 및 상기 현재 블록의 픽셀들의 평균값과 상기 현재 블록의 움직임 벡터가 가리키는 참조 블록의 픽셀들의 평균값 사이의 차이값인 오프셋 사이의 차이값을 포함한다.

    본 발명에 따르면 스테레오 영상이나 다시점 영상을 구성하는 서로 다른 시점 사이의 영상 사이의 밝기값을 보정함으로써 영상 화질을 향상시키는 한편, 밝기값 보정을 위한 오프셋 값을 효율적으로 예측함으로써 영상의 부호화 효율을 향상시킬 수 있다.

    도 1은 본 발명의 일 실시예에 따른 다시점 비디오 부호화 및 복호화 방법에 따라서 부호화되는 다시점 비디오 시퀀스를 나타낸 도면이다.
    도 2는 본 발명의 일 실시예에 따른 비디오 부호화 장치의 구성을 나타낸 블록도이다.
    도 3은 본 발명의 일 실시예에 따른 오프셋 예측 과정을 설명하기 위한 참조도이다.
    도 4a 내지 4e는 본 발명의 일 실시예에 따른 현재 블록에 인접한 다양한 크기의 블록들을 도시한다.
    도 5a 내지 5c는 본 발명의 다른 실시예에 따라서 현재 블록의 오프셋 예측값을 결정하는데 이용되는 예측 움직임 벡터를 결정하는 과정을 설명하기 위한 도면이다.
    도 6은 본 발명의 다른 실시예에 따른 예측 움직임 벡터를 이용하여 현재 블록의 오프셋 예측값을 결정하는 과정을 설명하기 위한 참조도이다.
    도 7은 본 발명의 일 실시예에 따른 비디오 부호화 방법을 나타낸 플로우 차트이다.
    도 8은 본 발명의 일 실시예에 따른 비디오 복호화 장치의 구성을 나타낸 블록도이다.
    도 9는 본 발명의 일 실시예에 따른 비디오 복호화 방법을 나타낸 플로우 차트이다.

    이하 첨부된 도면을 참조하여 본 발명의 실시예들에 대하여 구체적으로 설명한다.

    도 1은 본 발명의 일 실시예에 따른 다시점 비디오 부호화 및 복호화 방법에 따라서 부호화되는 다시점 비디오 시퀀스를 나타낸 도면이다.

    다시점 비디오 부호화(multi-view video coding)에서는 복수의 카메라로부터 입력되는 다시점 영상을 시간적 상관 관계(temporal correlation) 및 카메라들 사이(inter-view)의 공간적 상관 관계(spatial correlation)를 이용하여 압축 부호화한다.

    시간적 상관 관계를 이용하는 시간 예측(temporal prediction) 및 공간적 상관 관계를 이용하는 시점간 예측(inter-view prediction)에서는 하나 이상의 참조 픽처를 이용하여 현재 픽처의 움직임을 블록 단위로 예측하고 보상하여 영상을 부호화한다. 즉, 다시점 영상 부호화에서는 다른 시점의 카메라로부터 얻어진 픽처나 동일 시점의 픽처들 중 다른 시간에 입력된 픽처들을 참조 픽처로 결정하고 현재 블록과 가장 유사한 블록을 참조 픽처의 정해진 검색 범위에서 검색하며, 유사한 블록이 검색되면 현재 블록과 유사한 블록 사이의 차분 데이터만 전송함으로써 데이터의 압축률을 높인다.

    도 1을 참조하면, x축은 시간축이고, y축은 시점축이다. x축의 T0 내지 T8은 각각 영상의 샘플링 시간을 나타내며, y축의 S0 내지 S8은 각각 서로 다른 시점을 나타낸 것이다. 도 1에서 각각의 행은 동일한 시점에서 입력된 영상 픽처 그룹을 나타내며, 각각의 열은 동일한 시간에서의 다시점 영상들을 나타낸다.

    다시점 영상의 부호화에서는 기본 시점의 영상에 대하여 주기적으로 인트라 픽처를 생성하고, 생성된 인트라 픽처들을 기초로 시간적 예측 또는 시점간 예측을 수행하여 다른 픽처들을 예측 부호화한다.

    시간적 예측이란 동일한 시점(view) 즉, 도 1에서 동일한 행에 있는 영상 사이에 시간적인 상관 관계를 이용하는 예측이다. 시간적 예측을 위해서 계층적 B 픽처를 이용한 예측 구조가 이용될 수 있다. 시점간 예측은 같은 시간 즉, 동일한 열에 있는 영상 사이에 공간적인 상관 관계를 이용하는 예측이다.

    계층적 B 픽처를 이용한 다시점 영상 픽처의 예측 구조는 동일한 시점, 즉 동일한 행에 있는 영상 사이에 존재하는 시간적인 상관 관계를 이용한 예측을 수행할 때, 동일 시점의 영상 픽처 그룹을 앵커(Anchor) 픽처들을 이용하여 양방향 픽처(Bi-directional Picture, 이하 "B 픽처"라고 함)로 예측 부호화하는 것이다. 여기서, 앵커 픽처는 도 1에 도시된 열들 중에서 인트라 픽처를 포함하고 있는 처음(T0)과 마지막 시간(T8)에서의 열들(110 및 120)에 포함되어 있는 픽처들을 의미한다. 앵커 픽처들(110 및 120)은 인트라 픽처(Intra picture, 이하 "I 픽처"라고 함)를 제외하고 시점간 예측만을 이용해 예측 부호화된다. 인트라 픽처를 포함하고 있는 열들(110 및 120)을 제외한 나머지 열들(130)에 포함되어 있는 픽처들은 비앵커 픽처들(non-anchor pictures)이라고 한다.

    일 예로서, 첫 번째 시점(S0)에서 소정의 시간 동안 입력된 영상 픽처들을 계층적 B 픽처를 이용하여 부호화하는 경우를 설명한다. 첫 번째 시점(S0)에서 입력된 영상 픽처들 중 처음 시간(T0)에 입력된 픽처(111) 및 마지막 시간(T8)에 입력된 픽처(121)는 I 픽처로 부호화된다. 다음, T4 시간에 입력된 픽처(131)은 앵커 픽처들인 I 픽처들(111,121)을 참조하여 양방향 예측 부호화되어 B 픽처로 부호화된다. T2 시간에 입력된 픽처(132)는 I 픽처(111) 및 B 픽처(131)을 이용하여 양방향 예측 부호화되어 B 픽처로 부호화된다. 유사하게 T1 시간에 입력된 픽처(133)는 I 픽처(111) 및 B 픽처(132)를 이용하여 양방향 예측 부호화되고, T3 시간에 입력된 픽처(134)는 B 픽처(132) 및 B 픽처(131)을 이용하여 양방향 예측 부호화된다. 이와 같이, 동일 시점의 영상 시퀀스들은 앵커 픽처들을 이용하여 계층적으로 양방향 예측 부호화되기 때문에 이러한 예측 부호화 방식을 계층적 B 픽처라고 부르는 것이다. 한편, 도 1에 도시된 Bn(n=1,2,3,4)에서 n은 n번째 양방향 예측된 B 픽처를 나타내는 것으로, 예를 들어 B1은 I 픽처 또는 P 픽처인 앵커 픽처들을 이용하여 첫 번째로 양방향 예측된 픽처임을 나타내는 것이며, B2는 B1 픽처 이후에 양방향 예측된 픽처임을 나타내는 것이며, B3는 B2 픽처 이후에 양방향 예측된 픽처임을 나타내는 것이며, B4는 B3 픽처 이후에 양방향 예측된 픽처임을 나타낸다.

    다시점 비디오 시퀀스의 부호화시에는 먼저 기본 시점인 첫 번째 시점(S0)의 영상 픽처 그룹들을 전술한 계층적 B 픽처를 이용하여 부호화한다. 나머지 시점의 영상 시퀀스들을 부호화하기 위하여 먼저 첫 번째 시점(S0)의 I 픽처들(111,121)을 이용한 시점간 예측을 통해 앵커 픽처들(110, 120)에 구비된 홀수 번째 시점(S2,S4,S6) 및 마지막 시점(S7)의 영상 픽처들을 P 픽처들로 예측 부호화한다. 앵커 픽처들(110,120)에 구비된 짝수 번째 시점(S1, S3, S5)의 영상 픽처들은 시점간 예측을 통해 인접한 시점의 영상 픽처를 이용하여 양방향 예측되어 B 픽처로 부호화된다. 예를 들어, T0 시간에 두 번째 시점(S1)에서 입력된 B 픽처(113)는 인접한 시점(S0,S2)의 I 픽처(111) 및 P 픽처(112)를 이용하여 양방향 예측된다.

    앵커 픽처들(110,120)에 구비된 모든 시점의 영상 픽처들이 IBP 중 어느 하나의 픽처로 부호화되면, 비앵커 픽처들(130)은 전술한 바와 같이 계층적 B 픽처를 이용한 시간적 예측 및 시점간 예측을 통하여 양방향 예측 부호화된다.

    비앵커 픽처들(130) 중 홀수 번째 시점(S2,S4,S6) 및 마지막 시점(S7)의 영상 픽처들은 계층적 B 픽처를 이용한 시간적 예측을 통해 동일 시점의 앵커 픽처들을 이용하여 양방향 예측 부호화된다. 비앵커 픽처들(130) 중 짝수 번째 시점(S1,S3,S5,S7)의 픽처들은 계층적 B 픽처를 이용한 시간적 예측 뿐만 아니라, 인접한 시점의 픽처들을 이용한 시점간 예측을 통해 양방향 예측된다. 예를 들어, T4 시간에 두 번째 시점(S2)에서 입력된 픽처(136)는 앵커 픽처들(113,123) 및 인접한 시점의 픽처들(131,135)를 이용하여 예측된다.

    앵커 픽처들(110,120)에 구비된 P 픽처들은 전술한 바와 같이 동일 시간에 입력된 다른 시점의 I 픽처 또는 이전의 P 픽처를 이용하여 예측 부호화된다. 예를 들어, T8 시간에 세 번째 시점(S2)에서 입력된 P 픽처(122)는 동일 시간의 첫 번째 시점(S0)에서 입력된 I 픽처(121)을 참조 픽처로서 이용하여 예측 부호화된다.

    이하의 설명에서, 부호화되는 현재 블록은 도 1에 도시된 바와 같은 다시점 비디오 시퀀스에서 이전에 부호화된 후 복원된 어느 한 시점의 비디오의 참조 블록을 이용하여 부호화되는 다른 시점의 비디오의 블록인 것으로 가정한다. 예를 들어, 좌안 영상과 우안 영상의 2개의 시점의 비디오로 구성된 3차원 비디오에서 참조 블록은 이전에 부호화된 후 복원된 좌안 비디오 및 우안 비디오 중 하나의 비디오이며, 부호화되는 현재 블록은 참조 블록과 다른 시점의 비디오 블록일 수 있다.

    도 2는 본 발명의 일 실시예에 따른 비디오 부호화 장치의 구성을 나타낸 블록도이다.

    전술한 바와 같이, 서로 다른 시점의 카메라를 통해 입력되는 영상 시퀀스 사이에는 불완전하게 보정된 카메라, 상이한 원근 투영 방향, 상이한 반사 효과 등으로 인하여 서로 다른 시점의 동일 위치의 영상 사이에 밝기값 차이가 발생한다. 이러한 밝기값 차이를 보상하기 위하여 본 발명의 일 실시예에 따른 비디오 부호화 장치는 부호화되는 현재 블록과 현재 블록의 예측 블록 사이의 평균값 차이인 오프셋을 현재 블록의 예측 블록에 가산함으로써 예측 블록의 밝기값을 보상한다. 특히, 본 발명의 일 실시예에 따른 비디오 부호화 장치는 이러한 밝기값 보정을 위한 오프셋 계산시에 주변 블록의 오프셋 및 현재 블록의 예측 움직임 벡터를 이용하여 오프셋 예측값을 생성함으로써 오프셋 정보를 부호화하는데 필요한 비트량을 감소시킨다.

    도 2를 참조하면, 본 발명에 따른 비디오 부호화 장치(200)는 변환 및 양자화부(210), 역변환 및 역양자화부(220), 프레임 저장부(230), 오프셋 보상부(240), 오프셋 부호화부(245), 예측부(250), 감산부(260), 가산부(262) 및 엔트로피 부호화부(270)를 포함한다.

    예측부(250)는 부호화되는 현재 블록의 예측 블록을 생성하며, 움직임 예측시 현재 블록의 움직임 벡터와 참조 블록을 결정한다. 또한, 예측부(250)는 움직임 예측 결과 생성된 움직임 보상된 참조 블록을 오프셋 보상부(240)로 출력한다. 본 발명을 설명함에 있어서, 현재 블록에 움직임 예측값인 참조 픽처의 대응 블록은 참조 블록 또는 움직임 보상값이라 지칭되기도 한다. 전술한 바와 같이 참조 블록은 싱글 뷰인 경우에는 복원된 이전 프레임 내의 블록 또는 현재 프레임에서 이미 복원된 다른 컬러 성분의 프레임 내의 블록이 될 수 있으며, 다시점 비디오 부호화 방식에서는 복수 개의 시점의 비디오 시퀀스 중에서 먼저 부호화된 후 복원된 어느 한 시점의 프레임 내의 블록이 될 수 있다.

    변환 및 양자화부(210)는 영상 데이터의 공간 중복성(spatial redundancy)을 없애기 위해, 예측부(250)에서 예측되어 후술되는 오프셋 보상부(240)에 의하여 밝기값이 보정된 예측 블록과 현재 블록 사이의 차이값인 레지듀얼 데이터를 주파수 영역으로 변환(transform) 한다. 또한, 변환 및 양자화부(210)는 주파수 변환 결과 얻어진 변환 계수값들을 소정 양자화 스텝에 따라 양자화한다. 영상 변환의 예로는 DCT(Discrete Cosine Transform)를 들 수 있다.

    역변환 및 역양자화부(220)는 변환 및 양자화부(210)에서 양자화된 영상 데이터를 역양자화하고, 역양자화된 영상 데이터를 역변환한다.

    가산부(262)는 예측부(250)에서 출력된 밝기값이 보상된 현재 블록의 예측 영상과 역변환 및 역양자화부(220)에서 복원된 데이터를 가산하여 복원된 영상을 생성한다. 프레임 저장부(230)는 가산부(262)에서 복원된 영상을 프레임 단위로 저장한다.

    오프셋 보상부(240)는 현재 블록의 픽셀들의 평균값과 현재 블록의 예측값인 참조 블록의 픽셀들의 평균값 사이의 차이인 오프셋 값을 결정하고, 이전에 부호화된 후 복원된 현재 블록의 주변 블록들 및 현재 블록의 예측 움직임 벡터 중 적어도 하나를 이용하여 현재 블록의 오프셋 예측값을 생성한다. 또한, 오프셋 보상부(240)는 현재 블록의 움직임 보상값, 즉 참조 블록과 오프셋을 더하여 현재 블록의 예측 블록의 밝기값을 보상한다.

    오프셋 부호화부(245)는 현재 블록의 오프셋 값과 오프셋 예측값 사이의 차이값을 부호화한다.

    이하, 오프셋 보상부(240)에서 현재 블록의 픽셀들의 평균값과 현재 블록의 예측값인 참조 블록의 픽셀들의 평균값 사이의 차이인 오프셋 값을 예측하는 과정에 대하여 구체적으로 설명한다.

    도 3은 본 발명의 일 실시예에 따른 오프셋 예측 과정을 설명하기 위한 참조도이다.

    오프셋 보상부(240)는 입력된 NxM(N,M은 정수) 크기의 현재 블록과 예측부(250)로부터 출력된 현재 블록의 예측값인 참조 블록을 이용하여 참조 블록의 밝기값 보정을 위한 오프셋을 계산한다. 입력된 현재 블록의 (i,j)(i,j는 정수) 위치의 픽셀값을 ORG(i,j), 현재 블록의 예측값인 참조 블록의 (i,j) 위치의 픽셀값을 PRED(i,j)라고 하면 오프셋 offset은 다음의 수학식 1과 같이 계산된다.

    오프셋 보상부(240)는 현재 블록의 움직임 보상값, 즉 참조 블록의 각 픽셀 PRED(i,j)에 계산된 오프셋을 더한, 즉 PRED(i,j)+offset의 값을 갖는 밝기값 보상된 예측 블록을 감산부(260)로 출력한다.

    특히, 본 발명의 일 실시예에 따른 오프셋 보상부(240)는 이전에 부호화된 후 복원된 현재 블록의 주변 블록들 및 현재 블록의 예측 움직임 벡터 중 적어도 하나를 이용하여 현재 블록의 오프셋 예측값을 생성한다

    도 3을 참조하면, 현재 블록을 X(300), 좌측의 주변 블록을 A(310), 상측 주변 블록을 B(320), 코너에 위치한 주변 블록을 각각 C(330) 및 D(340)라고 한다. 오프셋 보상부(240)는 이전에 부호화된 후 복원된 주변 블록 A(310), B(320), C(330) 및 D(340) 중 적어도 하나의 주변 블록의 오프셋을 이용하여 현재 블록의 오프셋을 예측할 수 있다. 이는 현재 블록 X(300)과 인접한 주변 블록들은 현재 블록과 밝기값이 유사할 가능성이 크기 때문에, 현재 블록 X(300)의 주변 블록들이 갖는 오프셋 값을 이용하여 현재 블록의 오프셋 예측값으로 결정하고, 오프셋 값과 오프셋 예측값 사이의 차이값만을 오프셋 정보로서 부호화함으로써 복호화 측에 오프셋 정보를 전송하는데 소요되는 비트량을 감소시킬 수 있다.

    구체적으로, 오프셋 보상부(240)는 주변 블록들의 오프셋 값을 이용하여 다양한 방식으로 현재 블록 X(300)의 오프셋 예측값을 생성할 수 있다. 일 예로 오프셋 보상부(240)는 현재 블록 X(300)의 주변 블록들 중에서 일반적인 예측 움직임 벡터 결정에 이용되는 주변 블록 A(310), 주변 블록 B(320) 및 주변 블록 C(330)의 오프셋 평균값을 현재 블록의 오프셋 예측값으로 결정할 수 있다.

    또한, 오프셋 보상부(240)는 주변 블록들 전체의 오프셋을 이용하는 것이 아니라 주변 블록을 분할하고, 분할된 주변 블록의 영역들 중 현재 블록 X(300)에 바로 인접한 소정 크기의 블록들의 오프셋 평균값만을 이용하여 현재 블록 X(300)의 오프셋 예측값으로 결정할 수 있다. 예를 들어, 도 3에서 오프셋 보상부(240)는 현재 블록 X(300)에 인접한 주변 블록 A(310) 및 B(320)을 4x4 크기의 블록들로 분할하고, 현재 블록 X(300)에 바로 인접한 4x4 크기의 블록들(311,321)의 오프셋 값의 평균값을 현재 블록 X(300)의 오프셋 예측값으로 결정할 수 있다. 즉, 이전에 부호화된 후 복원된 주변 블록 A(310)을 4x4 크기의 블록들로 분할하였을 때 현재 블록 X(300)의 좌측에 바로 인접한 4x4 크기의 블록들(311)을 각각 a0,..,an이라고 하고, 이전에 부호화된 후 복원된 주변 블록 B(320)을 4x4 크기의 블록들로 분할하였을 때 현재 블록 X(300)의 상측에 바로 인접한 4x4 크기의 블록들(321)을 각각 b0,..,bn이라고 하면, 오프셋 보상부(240)는 a0,...,an, b0,..., bn(311,321)의 블록들 각각이 갖는 오프셋의 평균값을 계산하고 계산된 평균값을 현재 블록 X(300)의 오프셋 예측값으로 결정할 수 있다.

    또한, 오프셋 보상부(240)는 현재 블록 X(300)에 인접한 소정 크기의 블록 뿐만이 아니라 현재 블록 X(300)의 코너에 위치한 소정 크기의 블록들인 c0(331), d0(341) 및 e(351) 중 적어도 하나를 부가하여 오프셋 평균값을 계산하고 이를 현재 블록 X(300)의 오프셋 예측값으로 결정할 수 있다. 현재 블록의 오프셋을 예측할 때 이용되는 주변 블록들의 개수 및 종류는 전술한 바에 한정되지 않고 다양하게 변경될 수 있다.

    한편, 오프셋 보상부(240)는 현재 블록 X(300)의 부호화가 완료된 이후에 다음 부호화되는 블록의 오프셋 예측값을 생성하는데 이용하기 위하여 부호화된 후 복원된 현재 블록을 분할한 소정 크기의 블록 단위로 오프셋을 다시 계산하여 다음 블록의 오프셋 예측에 이용할 수 있도록 한다. 즉, 전술한 바와 같이 현재 블록 X(300)에 인접한 4x4 크기의 블록들(311,321)의 오프셋 평균값을 이용하여 오프셋 예측값이 생성되는 경우를 위하여, 오프셋 보상부(240)는 부호화가 완료된 블록을 복원한 다음, 복원된 블록을 소정 크기의 블록 단위로 다시 움직임 예측을 수행하여 예측 블록과 복원된 블록 사이의 평균값 차이인 오프셋을 계산함으로써 소정 크기의 블록 단위의 오프셋 값을 미리 준비해놓고 다음 블록의 부호화시에 이용할 수 있다.

    도 4a 내지 4e는 본 발명의 일 실시예에 따른 현재 블록에 인접한 다양한 크기의 블록들을 도시한다.

    본 발명의 일 실시예에 따른 비디오 부호화 방법 및 장치는 다양한 크기의 부호화 단위 및 예측 단위를 이용해 영상을 부호화할 수 있다. 따라서, 현재 블록에 인접한 블록들의 크기는 다양할 수 있기 때문에, 현재 블록의 크기와 일부 인접한 블록들의 크기는 많은 차이가 있을 수 있다.

    도 4a를 참조하면, 현재 블록(410)의 상측에 인접한 블록들(414 내지 418)은 현재 블록(410)의 크기보다 작은 블록들이다. 현재 블록(410)에 비하여 지나치게 작은 주변 블록은 현재 블록과 다른 영상 특성을 가질 수 있으므로, 오프셋 보상부(240)는 오프셋 예측시에 현재 블록의 크기와 비교하여 소정 크기 이상의 주변 블록들의 오프셋만을 이용하여 오프셋 예측값을 생성할 수 있다. 도 4a에서, 현재 블록(410)과 비교하여 1/4 크기 이상인 블록들(418, 419)만의 오프셋 평균값을 이용하여 현재 블록(410)의 오프셋 예측값으로 이용할 수 있다.

    도 4b를 참조하면, 현재 블록(420)의 좌측에 인접한 블록(422)의 크기는 현재 블록의 크기의 16배로서, 현저한 크기의 차이가 존재한다고 가정해본다. 현저한 크기의 차이로 인해 좌측에 인접한 블록(422)과 현재 블록(420)의 영상 특성은 다를 가능성이 크다. 따라서, 오프셋 보상부(240)는 좌측에 인접한 블록(422)의 오프셋 값을 제외하고, 상측에 인접한 블록(424) 및 우측상부에 인접한 블록(426)의 오프셋만의 평균값을 계산하여 현재 블록(420)의 오프셋 예측값으로 결정할 수 있다.

    이와 같이, 오프셋 보상부(240)는 현재 블록과 주변 블록의 크기에 따라서 현재 블록의 오프셋 예측에 이용되는 주변 블록을 결정하는 기준을 미리 마련하고, 기준에 따라서 선택된 주변 블록들의 오프셋의 평균값을 계산함으로써 현재 블록의 오프셋 예측값을 결정할 수 있다.

    한편, 본 발명의 다른 실시예에 따르면 오프셋 보상부(240)는 현재 블록의 예측 움직임 벡터가 가리키는 대응 영역의 오프셋 값을 현재 블록의 오프셋 예측값으로 결정할 수 있다.

    도 5a 내지 5c는 본 발명의 다른 실시예에 따라서 현재 블록의 오프셋 예측값을 결정하는데 이용되는 예측 움직임 벡터를 결정하는 과정을 설명하기 위한 도면이다.

    도 5a를 참조하면, 현재 블록 X(501)의 움직임 예측 결과 결정된 움직임 벡터는 주변 블록 A(502)의 움직임 벡터 mv_A, 주변 블록 B(503)의 움직임 벡터 mv_B, 주변 블록 C(504)의 움직임 벡터 mv_C와 밀접한 상관 관계를 갖는다. 따라서, 현재 블록 X(501)의 움직임 벡터 정보는 그대로 부호화되는 것이 아니라 주변 블록들로부터 현재 블록의 움직임 벡터를 예측하고 현재 블록의 움직임 벡터와 예측 움직임 벡터 사이의 차분값만이 움직임 벡터 정보로서 부호화된다. 본 발명의 다른 실시예에 따르면 오프셋 보상부(240)는 이러한 현재 블록 X(501)의 예측 움직임 벡터를 이용하여 참조 픽처의 대응 영역을 결정하고 예측 움직임 벡터가 가리키는 대응 영역의 오프셋 값을 현재 블록 X(501)의 오프셋 예측값으로 결정한다. 도 5a에서, 현재 블록 X(501)의 예측 움직임 벡터(mvp: motion vector prediction)는 주변 블록 A(502)의 움직임 벡터 mv_A, 주변 블록 B(503)의 움직임 벡터 mv_B, 주변 블록 C(504)의 움직임 벡터 mv_C의 중간값(median)으로 결정될 수 있다.

    도 5b를 참조하면, 오프셋 보상부(240)는 현재 블록(510)에 인접한 이전에 부호화된 블록들의 움직임 벡터 중 하나를 현재 블록의 예측 움직임 벡터로 이용할 수 있다. 현재 블록의 상측에 인접한 블록들 중 가장 좌측의 a0 블록(511), 좌상측의 b0 블록(512), 우측상부에 인접한 c 블록(513), 좌측상부에 인접한 d 블록(515) 및 좌측하부에 인접한 e 블록(514) 중 어느 하나를 현재 블록의 예측 움직임 벡터로 결정할 수 있다. 이 때, a0 블록(511), b0 블록(512), c 블록(513), d 블록(515) 및 e 블록(514)들 중 소정 순서에 따라서 스캔하였을 때 현재 블록(510)과 동일한 참조 픽처를 참조하는 블록의 움직임 벡터를 예측 움직임 벡터로 결정하거나, 현재 블록(520)과 동일한 참조 픽처를 참조하는 블록이 존재하지 않을 경우에는 다른 참조 픽처를 참조하는 움직임 블록의 움직임 벡터를 현재 블록(510)의 예측 움직임 벡터로 결정할 수 있다.

    도 5c를 참조하면, 오프셋 보상부(240)는 현재 블록이 참조하는 제 1 참조 픽처와 동일한 참조 픽처를 이용하는지 여부, 제 1 참조 픽처와 동일한 리스트 방향에 위치한 참조 픽처를 이용하는지 여부 및 제 1 참조 픽처와 다른 리스트 방향에 위치한 참조 픽처를 이용하는 움직임 블록인지 여부에 따라서 주변 블록으로부터 예측 움직임 벡터를 생성할 수 있다. 즉, 오프셋 보상부(240)는 현재 블록이 참조하는 제 1 참조 픽처와 동일한 참조 픽처를 이용하는 주변 블록의 움직임 벡터를 이용하거나, 이러한 제 1 참조 픽처와 동일한 참조 픽처를 이용하는 주변 블록이 존재하지 않는 경우 제 1 참조 픽처의 방향과 동일한 방향에 위치한 다른 참조 픽처를 이용하는 주변 블록의 움직임 벡터를 이용하거나, 이러한 제 1 참조 픽처의 방향과 동일한 방향에 위치한 다른 참조 픽처를 이용하는 주변 블록도 존재하지 않는 경우에는 제 1 참조 픽처와 다른 리스트 방향에 위치한 다른 참조 픽처를 참조하는 움직임 블록의 움직임 벡터를 이용하여 예측 움직임 벡터를 결정할 수 있다. 구체적으로 오프셋 보상부(240)는 소정 스캔 순서에 따라서 현재 블록의 주변 블록의 움직임 벡터 정보를 추출하여, 현재 블록이 참조하는 참조 픽처 정보와 주변 블록이 참조하는 움직임 벡터 정보를 비교하여 현재 블록과 동일 참조 픽처를 참조하는 먼저 스캔된 주변 블록의 움직임 벡터를 예측 움직임 벡터로 결정하거나, 현재 블록과 동일 참조 픽처를 참조하는 주변 블록이 존재하지 않는 경우에는 현재 블록과 다른 참조 픽처를 참조하는 먼저 스캔된 주변 블록의 움직임 벡터를 예측 움직임 벡터로 결정한다. 여기서, 소정 스캔 순서는 현재 블록의 좌측에 인접한 블록들(540)의 경우 위에서 아래쪽, 즉 b0부터 bn의 순서일 수 있으며, 현재 블록의 상측에 인접한 블록들(530)의 경우 좌측에서 우측, 즉 a0부터 an의 순서일 수 있다. 현재 블록의 코너에 위치한 블록들(521,522,523)의 경우 블록 c(521), 블록 d(523) 및 블록 e(522)의 순서로 스캔될 수 있다. 이러한 스캔 순서는 전술한 바에 한정되지 않고 변경될 수 있다. 또한, 현재 블록의 예측 움직임 벡터를 결정하는 방식은 전술한 바에 한정되지 않고 다양한 방식으로 구현될 수 있다.

    현재 블록의 예측 움직임 벡터가 결정되면, 오프셋 보상부(240)는 참조 픽처로부터 예측 움직임 벡터가 가리키는 대응 영역의 오프셋을 현재 블록의 오프셋 예측값으로 결정한다.

    도 6은 본 발명의 다른 실시예에 따른 예측 움직임 벡터를 이용하여 현재 블록의 오프셋 예측값을 결정하는 과정을 설명하기 위한 참조도이다.

    도 6을 참조하면, 전술한 도 5a 내지 도 5c와 같이 현재 블록(601)의 예측 움직임 벡터가 결정되면, 오프셋 보상부(240)는 참조 픽처(610)로부터 예측 움직임 벡터(mvp)가 가리키는 대응 영역(611)의 오프셋을 현재 블록의 오프셋 예측값으로 결정한다. 대응 영역(611)의 오프셋은 대응 영역(611)의 부호화된 후 복원된 픽셀값들의 평균값과 대응 영역(611)에 대한 움직임 예측 결과 생성되는 예측 블록의 픽셀값들의 평균값 사이의 차이값을 통해 계산될 수 있다.

    다시 도 2를 참조하면, 현재 블록의 오프셋이 결정되면 오프셋 부호화부(245)는 현재 블록의 오프셋 값과 오프셋 예측값 사이의 오프셋 차이값을 오프셋 정보로써 부호화한다. 부가적으로 전술한 다양한 오프셋 예측 방식을 서로 다른 오프셋 예측 모드로 설정한 경우, 부호화된 현재 블록의 오프셋 정보는 각 오프셋 예측 모드를 가리키는 인덱싱 정보를 포함할 수 있다.

    도 7은 본 발명의 일 실시예에 따른 비디오 부호화 방법을 나타낸 플로우 차트이다.

    도 7을 참조하면, 단계 710에서 예측부(250)는 부호화되는 현재 블록에 대한 움직임 예측을 수행하여 현재 블록의 움직임 벡터 및 참조 블록을 결정한다. 전술한 바와 같이 참조 블록은 싱글 뷰인 경우에는 복원된 이전 프레임 내의 블록 또는 현재 프레임에서 이미 복원된 다른 컬러 성분의 프레임 내의 블록이 될 수 있으며, 다시점 비디오 부호화 방식에서는 복수 개의 시점의 비디오 시퀀스 중에서 먼저 부호화된 후 복원된 어느 한 시점의 프레임 내의 블록이 될 수 있다.

    단계 720에서, 오프셋 보상부(240)는 현재 블록의 픽셀들의 평균값과 참조 블록의 픽셀들의 평균값 사이의 차이인 오프셋 값을 결정한다. 오프셋 값은 전술한 수학식 1과 같이 계산될 수 있다.

    단계 730에서, 오프셋 보상부(240)는 이전에 부호화된 후 복원된 현재 블록의 주변 블록들 및 현재 블록의 예측 움직임 벡터 중 적어도 하나를 이용하여 현재 블록의 오프셋 예측값을 생성한다. 전술한 바와 같이 오프셋 보상부(240)는 현재 블록의 주변 블록의 오프셋의 평균값을 현재 블록의 오프셋 예측값으로 결정하거나, 현재 블록에 바로 인접한 소정 크기의 블록들의 오프셋 평균값을 현재 블록의 오프셋 예측값으로 결정할 수 있다. 또한, 오프셋 보상부(240)는 현재 블록의 예측 움직임 벡터가 가리키는 참조 픽처의 대응 영역의 오프셋을 현재 블록의 오프셋 예측값으로 결정할 수 있다.

    단계 740에서, 오프셋 부호화부(245)는 현재 블록의 오프셋 값과 오프셋 예측값 사이의 차이값을 부호화한다.

    도 8은 본 발명의 일 실시예에 따른 비디오 복호화 장치의 구성을 나타낸 블록도이다.

    도 8을 참조하면, 비디오 복호화 장치(800)는 엔트로피 복호화부(810), 역양자화 및 역변환부(820), 오프셋 복호화부(825), 프레임 저장부(830), 움직임 보상부(840), 오프셋 보상부(850) 및 가산부(860)를 포함한다.

    엔트로피 복호화부(810)는 부호화된 비트스트림을 엔트로피 복호화하여, 영상 데이터, 예측 모드 정보 및 오프셋 정보 등을 추출한다. 엔트로피 복호화된 영상 데이터는 역양자화 및 역변환부(820)로 입력되고, 예측 모드 정보는 예측부(840)로 입력되며, 오프셋 정보는 오프셋 복호화부(825)로 입력된다.

    오프셋 복호화부(825)는 비트스트림에서 추출된 오프셋 정보를 이용하여 복호화되는 현재 블록의 오프셋을 복원한다. 구체적으로, 오프셋 복호화부(825)는 이전에 복원된 현재 블록의 주변 블록들 및 현재 블록의 예측 움직임 벡터 중 적어도 하나를 이용하여 현재 블록의 오프셋 예측값을 생성한다. 그리고, 오프셋 복호화부(825)는 비트스트림으로부터 추출된 현재 블록의 오프셋 차이값을 오프셋 예측값과 가산하여 오프셋을 복원한다. 오프셋 예측값을 생성하는 과정은 도 2의 오프셋 보상부(240)에서 오프셋 예측값을 생성하는 과정과 동일하므로 구체적인 설명은 생략한다.

    역변환 및 역양자화부(820)는 엔트로피 복호화부(810)에서 추출된 영상 데이터에 대해 역변환 및 역양자화를 수행한다. 가산부(860)는 역변환 및 역양자화부(820)에서 역양자화 및 역변환된 영상 데이터와 오프셋 보상부(850)에서 밝기값 보상된 예측 블록을 더하여 영상을 복원하며, 프레임 저장부(830)는 복원된 영상을 프레임 단위로 저장한다.

    예측부(840)는 비트스트림에서 추출된 예측 모드 정보를 이용하여 복호화되는 현재 블록의 움직임 벡터를 이용하여 현재 블록의 예측값인 움직임 보상된 참조 블록을 출력한다.

    오프셋 보상부(850)는 현재 블록의 움직임 보상값과 현재 블록의 오프셋 값을 더하여 현재 블록의 참조 블록의 밝기값을 보상한다. 또한, 오프셋 보상부(850)는 현재 블록의 복호화가 완료된 이후에 다음 복호화되는 블록의 오프셋 예측값을 생성하는데 이용하기 위하여 복원된 현재 블록을 분할한 소정 크기의 블록 단위로 오프셋을 다시 계산하여 다음 블록의 오프셋 예측에 이용할 수 있도록 한다.

    도 9는 본 발명의 일 실시예에 따른 비디오 복호화 방법을 나타낸 플로우 차트이다.

    도 9를 참조하면, 단계 910에서 엔트로피 복호화부(810)는 비트스트림으로부터 복호화되는 현재 블록의 오프셋 정보 및 움직임 벡터에 대한 정보를 복호화한다.

    단계 920에서, 오프셋 복호화부(825)는 복호화된 현재 블록의 오프셋 정보에 기초해 현재 블록의 오프셋값을 생성한다. 전술한 바와 같이, 오프셋 복호화부(825)는 이전에 복원된 현재 블록의 주변 블록들 및 현재 블록의 예측 움직임 벡터 중 적어도 하나를 이용하여 현재 블록의 오프셋 예측값을 생성한다. 그리고, 오프셋 복호화부(825)는 비트스트림으로부터 추출된 현재 블록의 오프셋과 오프셋 사이의 차이값을 오프셋 예측값과 가산하여 오프셋을 복원한다.

    단계 930에서, 움직임 보상부(840)는 복호화된 현재 블록의 움직임 벡터 정보에 기초해 현재 블록에 대한 움직임 보상을 수행하고, 움직임 보상된 현재 블록의 예측값인 참조 블록을 오프셋 보상부(850)로 출력한다.

    단계 940에서, 오프셋 보상부(850)는 현재 블록의 움직임 보상값과 현재 블록의 오프셋 값을 더하여 밝기값이 보상된 예측 블록을 출력한다. 가산부(860)은 밝기값이 보상된 예측 블록은 역양자화 및 역변환부(720)에서 출력된 레지듀얼 값을 가산하여 현재 블록을 복원한다.

    이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명이 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 아래에 기재된 특허청구범위에 의해서만 파악되어야 하고, 이와 균등하거나 또는 등가적인 변형 모두는 본 발명 사상의 범주에 속한다 할 것이다. 또한, 본 발명에 따른 시스템은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.

    高效检索全球专利

    专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

    我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

    申请试用

    分析报告

    专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

    申请试用

    QQ群二维码
    意见反馈