首页 / 专利库 / 广播 / 帧内预测 / 서브블록 내 임의 화소를 이용한 영상 부호화/복호화 방법 및 장치

서브블록 내 임의 화소를 이용한 영상 부호화/복호화 방법 및 장치

阅读:186发布:2022-10-01

专利汇可以提供서브블록 내 임의 화소를 이용한 영상 부호화/복호화 방법 및 장치专利检索,专利查询,专利分析的服务。并且PURPOSE: A video encoding/decoding method using a pixel in a sub block and an apparatus thereof are provided to improve prediction accuracy during intra prediction about pixels of a block that a user wants to encode or decode, thereby improving encoding efficiency. CONSTITUTION: A random pixel extractor(702) extracts a pixel to generate a pixel block. The first predicting unit(704) predicts the pixel block to generate a prediction pixel block. The first subtracting unit(706) subtracts the pixel block and the prediction pixel block to generate a pixel residual block. The first converting unit(708) converts the pixel residual block.,下面是서브블록 내 임의 화소를 이용한 영상 부호화/복호화 방법 및 장치专利的具体信息内容。

  • 영상을 부호화하는 장치에 있어서,
    영상의 현재 매크로블록의 각 서브블록에서 임의 화소를 추출하여 임의 화소 블록을 생성하는 임의 화소 추출부;
    상기 임의 화소 블록을 예측하여 예측 임의 화소 블록을 생성하는 제 1 예측부;
    상기 임의 화소 블록과 상기 예측 임의 화소 블록을 감산하여 임의 화소 잔차 블록을 생성하는 제 1 감산부;
    상기 임의 화소 잔차 블록을 변환하는 제 1 변환부;
    상기 변환된 임의 화소 잔차 블록을 양자화하는 제 1 양자화부;
    상기 양자화된 임의 화소 잔차 블록을 역 양자화하는 제 1 역 양자화부;
    상기 역 양자화된 임의 화소 잔차 블록을 역 변환하는 제 1 역 변환부;
    상기 예측 임의 화소 블록과 상기 역 변환된 임의 화소 잔차 블록을 가산하여 복원된 임의 화소 블록을 생성하는 제 1 가산부;
    상기 현재 매크로블록의 인접 화소들 및 상기 복원된 임의 화소 블록의 각 복원된 임의 화소를 이용하여 상기 각 서브블록의 나머지 화소를 예측하여 예측 매크로블록을 생성하는 제 2 예측부;
    상기 현재 매크로블록에서 상기 예측 매크로블록을 감산하여 잔차 매크로블록을 생성하는 제 2 감산부;
    상기 역 변환된 임의 화소 잔차 블록의 각 역 변환된 임의 잔차 화소를 상기 잔차 매크로블록의 각 위치에 결합하는 임의 잔차 화소 결합부;
    상기 각 역 변환된 임의 잔차 화소가 결합된 잔차 매크로블록을 변환하는 제 2 변환부;
    상기 변환된 잔차 매크로블록을 양자화하는 제 2 양자화부; 및
    상기 양자화된 잔차 매크블록을 부호화하여 비트스트림을 생성하는 부호화부
    를 포함하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 1 항에 있어서, 상기 제 2 변환부는,
    이산 코사인 변환을 이용하여 4x4 블록 단위로 상기 잔차 매크로블록을 변환하되, 상기 이산 코사인 변환의 1차원 변환 방향의 순서에 따라 다른 베이직 벡터를 사용하며, 상기 1차원 변환 방향의 순서는 상기 제 1 예측부의 예측 방향에 따라 결정되는 것을 특징으로 하는 영상 부호화 장치.
  • 제 2 항에 있어서, 상기 제 2 변환부는,
    1차원 수평 변환을 수행한 후 1차원 수직 변환을 수행하는 경우에는, 상기 각 4x4 블록의 제 1 행 내지 제 3 행은 기존 베이직 벡터를 이용하고 상기 각 4x4 블록의 제 4 행은 수정된 베이직 벡터를 이용하여 상기 1차원 수평 변환을 수행하며, 상기 각 4x4 블록의 제 1 열은 수정된 베이직 벡터를 이용하고 상기 각 4x4 블록의 제 2 열 내지 제 4 열은 수정된 베이직 벡터를 이용하여 상기 1차원 수직 변 환을 수행하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 2 항에 있어서, 상기 제 2 변환부는,
    1차원 수직 변환을 수행한 후 1차원 수평 변환을 수행하는 경우에는, 상기 각 4x4 블록의 제 1 열 내지 제 3 열은 기존 베이직 벡터를 이용하고 상기 각 4x4 블록의 제 4 열은 수정된 베이직 벡터를 이용하여 상기 1차원 수직 변환을 수행하며, 상기 각 4x4 블록의 제 1 행은 수정된 베이직 벡터를 이용하고 상기 각 4x4 블록의 제 2 행 내지 제 4 행은 수정된 베이직 벡터를 이용하여 상기 1차원 수평 변환을 수행하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 1 항에 있어서, 상기 영상 부호화 장치는,
    상기 양자화된 잔차 매크로블록을 역 양자화하는 제 2 역 양자화부;
    상기 역 양자화된 잔차 매츠로블록을 역 변환하는 제 2 역 변환부;
    상기 역 변환된 잔차 매크로블록을 상기 예측 매크로블록과 가산하여 복원된 현재 매크로블록을 생성하는 제 2 가산부; 및
    상기 복원된 임의 화소 블록의 각 복원된 임의 화소를 상기 복원된 현재 매크로블록의 각 위치에 결합하는 임의 복원 화소 결합부
    를 추가로 포함하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 5 항에 있어서, 상기 제 2 역 변환부는,
    역 이산 코사인 변환을 이용하여 4x4 블록 단위로 상기 잔차 매크로블록의 주파수 계수를 역 변환하되, 상기 역 이산 코사인 변환의 1차원 역 변환 방향의 순서에 따라 다른 베이직 벡터를 사용하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 6 항에 있어서, 상기 제 2 역 변환부는,
    상기 제 2 변환부의 1차원 변환 방향의 순서의 역 순으로 1차원 역 변환 방향의 순서를 결정하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 6 항에 있어서, 상기 제 2 역 변환부는,
    1차원 수평 역 변환을 수행한 후 1차원 수직 역 변환을 수행하는 경우에는, 상기 각 4x4 블록의 제 1 행은 수정된 베이직 벡터를 이용하고 상기 각 4x4 블록의 제 2 행 내지 제 4 행은 기존 베이직 벡터를 이용하여 상기 1차원 수평 역 변환을 수행하며, 상기 각 4x4 블록의 제 1 열 내지 제 3 열은 기존 베이직 벡터를 이용하고 상기 각 4x4 블록의 제 4 열은 수정된 베이직 벡터를 이용하여 1차원 수직 역 변환을 수행하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 6 항에 있어서, 상기 제 2 역 변환부는,
    1차원 수직 역 변환을 수행한 후 1차원 수평 역 변환을 수행하는 경우에는, 상기 각 4x4 블록의 제 1 열은 수정된 베이직 벡터를 이용하고 상기 각 4x4 블록의 제 2 열 내지 제 4 열은 기존 베이직 벡터를 이용하여 상기 1차원 수직 역 변환을 수행하며, 상기 각 4x4 블록의 제 1 행 내지 제 3 행은 기존 베이직 벡터를 이용하고 상기 각 4x4 블록의 제 4 행은 수정된 베이직 벡터를 이용하여 상기 1차원 수평 역 변환을 수행하는 것을 특징으로 하는 영상 부호화 장치.
  • 영상을 부호화하는 장치에 있어서,
    영상의 현재 매크로블록의 각 서브블록에서 임의 화소를 추출하여 임의 화소 블록을 생성하는 임의 화소 추출부;
    상기 임의 화소 블록을 예측하여 예측 임의 화소 블록을 생성하는 제 1 예측부;
    상기 임의 화소 블록과 상기 예측 임의 화소 블록을 감산하여 임의 화소 잔차 블록을 생성하는 제 1 감산부;
    상기 임의 화소 잔차 블록을 변환하는 제 1 변환부;
    상기 변환된 임의 화소 잔차 블록을 양자화하는 제 1 양자화부;
    상기 양자화된 임의 화소 잔차 블록을 역 양자화하는 제 1 역 양자화부;
    상기 역 양자화된 임의 화소 잔차 블록을 역 변환하는 제 1 역 변환부;
    상기 예측 임의 화소 블록과 상기 역 변환된 임의 화소 잔차 블록을 가산하여 복원된 임의 화소 블록을 생성하는 제 1 가산부;
    상기 각 서브블록의 인접 화소들 및 상기 복원된 임의 화소 블록의 각 복원된 임의 화소를 이용하여 상기 각 서브블록의 나머지 화소를 예측하여 각 예측 서브블록을 생성하는 제 2 예측부;
    상기 각 서브블록에서 상기 각 예측 서브블록을 감산하여 각 잔차 서브블록을 생성하는 제 2 감산부;
    상기 역 변환된 임의 화소 잔차 블록의 각 역 변환된 임의 잔차 화소를 상기 각 잔차 서브블록의 각 위치에 결합하는 임의 잔차 화소 결합부;
    상기 각 역 변환된 임의 잔차 화소가 결합된 각 잔차 서브블록을 변환하는 제 2 변환부;
    상기 변환된 각 잔차 서브블록을 양자화하는 제 2 양자화부; 및
    상기 양자화된 각 잔차 서브블록을 부호화하여 비트스트림을 생성하는 부호화부
    를 포함하되, 상기 각 서브블록은 하나의 서브 블록이 부호화되고 복호된 후 다음 서브블록이 부호화되고 복호화되는 것을 특징으로 하는 영상 부호화 장치.
  • 제 10 항에 있어서,
    상기 각 서브 블록을 부호화하고 복호화하는 순서는 H.264/AVC의 인트라 4x4 매크로블록을 부호화하고 복호화하는 순서이거나 래스터 스캔 방향인 것을 특징으로 하는 영상 부호화 장치.
  • 제 10 항에 있어서, 상기 제 2 예측부는,
    상기 각 서브블록마다 예측 방향을 결정하여 상기 결정된 예측 방향으로 상기 각 서브블록의 나머지 화소를 예측하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 12 항에 있어서, 상기 제 2 예측부는,
    상기 각 서브블록의 인접 화소들 중 상기 각 복원된 임의 화소와의 값의 차이가 최소인 인접 화소에서 상기 각 복원된 임의 화소를 향하는 방향을 상기 예측 방향으로서 결정하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 12 항에 있어서, 상기 제 2 예측부는,
    상기 각 서브블록에 대한 예측 방향에 따른 예측 모드에 대한 정보를 생성하여 상기 부호화부로 전달하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 1 항 또는 10 항에 있어서, 상기 제 1 변환부는,
    상기 임의 화소 잔차 블록의 각 임의 화소 잔차 신호만을 독립적으로 변환 및 역 변환하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 15 항에 있어서, 상기 제 1 변환부는,
    상기 임의 화소 잔차 블록의 각 임의 화소 잔차 신호를 수정된 베이직 벡터를 이용하여 이산 코사인 변환을 수행함으로써 상기 각 임의 화소 잔차 신호만을 독립적으로 변환하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 16 항에 있어서, 상기 제 1 변환부는,
    상기 이산 코사인 변환을 수행한 후 하다마드 변환을 추가로 수행하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 1 항 또는 제 10 항에 있어서, 상기 제 1 역 변환부는,
    상기 각 임의 화소 잔차 신호가 변환된 주파수 계수를 수정된 베이직 벡터를 이용하여 역 이산 코사인 변환을 수행함으로써 상기 각 임의 화소 잔차 신호만을 독립적으로 역 변환하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 18 항에 있어서, 상기 제 1 역 변환부는,
    상기 각 임의 화소 잔차 신호가 변환된 주파수 계수를 역 하다마드 변환한 후 상기 역 이산 코사인 변환을 수행하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 10 항에 있어서, 상기 제 2 변환부는,
    이산 코사인 변환을 이용하여 4x4 블록 단위로 상기 잔차 매크로블록을 변환하되, 상기 이산 코사인 변환의 1차원 변환 방향의 순서에 따라 다른 베이직 벡터를 사용하며, 상기 1차원 변환 방향의 순서는 상기 제 1 예측부의 예측 방향에 따라 결정되는 것을 특징으로 하는 영상 부호화 장치.
  • 제 20 항에 있어서, 상기 제 2 변환부는,
    1차원 수평 변환을 수행한 후 1차원 수직 변환을 수행하는 경우에는, 상기 각 4x4 블록의 제 1 행 내지 제 3 행은 기존 베이직 벡터를 이용하고 상기 각 4x4 블록의 제 4 행은 수정된 베이직 벡터를 이용하여 상기 1차원 수평 변환을 수행하며, 상기 각 4x4 블록의 제 1 열은 수정된 베이직 벡터를 이용하고 상기 각 4x4 블록의 제 2 열 내지 제 4 열은 수정된 베이직 벡터를 이용하여 상기 1차원 수직 변환을 수행하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 20 항에 있어서, 상기 제 2 변환부는,
    1차원 수직 변환을 수행한 후 1차원 수평 변환을 수행하는 경우에는, 상기 각 4x4 블록의 제 1 열 내지 제 3 열은 기존 베이직 벡터를 이용하고 상기 각 4x4 블록의 제 4 열은 수정된 베이직 벡터를 이용하여 상기 1차원 수직 변환을 수행하며, 상기 각 4x4 블록의 제 1 행은 수정된 베이직 벡터를 이용하고 상기 각 4x4 블록의 제 2 행 내지 제 4 행은 수정된 베이직 벡터를 이용하여 상기 1차원 수평 변환을 수행하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 10 항에 있어서, 상기 영상 부호화 장치는,
    상기 양자화된 각 잔차 서브블록을 역 양자화하는 제 2 역 양자화부;
    상기 역 양자화된 각 잔차 서브블록을 역 변환하는 제 2 역 변환부;
    상기 역 변환된 각 잔차 서브 블록을 상기 각 예측 서브블록과 가산하여 복원된 각 서브블록을 생성하는 제 2 가산부; 및
    상기 복원된 임의 화소 블록의 각 복원된 임의 화소를 상기 복원된 각 서브 블록의 각 위치에 결합하는 임의 복원 화소 결합부
    를 추가로 포함하되, 상기 제 1 예측부 및 상기 제 2 예측부는 상기 각 복원된 임의 화소가 결합된 각 서브블록을 저장하며 저장된 각 서브블록을 이용하여 다음 서브블록을 예측하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 23 항에 있어서, 상기 제 2 역 변환부는,
    역 이산 코사인 변환을 이용하여 4x4 블록 단위로 주파수 계수를 역 변환하되, 상기 역 이산 코사인 변환의 1차원 역 변환 방향의 순서에 따라 다른 베이직 벡터를 사용하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 24 항에 있어서, 상기 제 2 역 변환부는,
    상기 제 2 변환부의 1차원 변환 방향의 순서의 역 순으로 1차원 역 변환 방향의 순서를 결정하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 24 항에 있어서, 상기 제 2 역 변환부는,
    1차원 수평 역 변환을 수행한 후 1차원 수직 역 변환을 수행하는 경우에는, 상기 각 4x4 블록의 제 1 행은 수정된 베이직 벡터를 이용하고 상기 각 4x4 블록의 제 2 행 내지 제 4 행은 기존 베이직 벡터를 이용하여 상기 1차원 수평 역 변환을 수행하며, 상기 각 4x4 블록의 제 1 열 내지 제 3 열은 기존 베이직 벡터를 이용하고 상기 각 4x4 블록의 제 4 열은 수정된 베이직 벡터를 이용하여 1차원 수직 역 변환을 수행하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 24 항에 있어서, 상기 제 2 역 변환부는,
    1차원 수직 역 변환을 수행한 후 1차원 수평 역 변환을 수행하는 경우에는, 상기 각 4x4 블록의 제 1 열은 수정된 베이직 벡터를 이용하고 상기 각 4x4 블록의 제 2 열 내지 제 4 열은 기존 베이직 벡터를 이용하여 상기 1차원 수직 역 변환을 수행하며, 상기 각 4x4 블록의 제 1 행 내지 제 3 행은 기존 베이직 벡터를 이용하고 상기 각 4x4 블록의 제 4 행은 수정된 베이직 벡터를 이용하여 상기 1차원 수평 역 변환을 수행하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 23 항에 있어서, 상기 제 2 역 변환부는,
    역 이산 코사인 변환을 이용하여 4x4 블록 단위로 주파수 계수를 역 변환하되, 기존 베이직 벡터를 사용하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 28 항에 있어서, 상기 제 2 역 변환부는,
    상기 주파수 계수 중 일부의 주파수 계수와 상기 각 복원된 임의 화소 중 일부의 화소를 이용하여 상기 주파수 계수 중 나머지 주파수 계수를 예측하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 1 항 또는 제 10 항에 있어서, 상기 제 1 예측부는,
    상기 현재 매크로블록의 인접 화소들을 저역 통과 필터링을 수행하고 다운 샘플링한 화소들을 이용하여 상기 임의 화소 블록을 예측하는 것을 특징으로 하는 영상 부호화 장치.
  • 제 1 항에 있어서, 상기 제 1 예측부 및 상기 제 2 예측부는,
    상기 현재 매크로블록의 예측 모드에 따른 예측 방향과 동일한 예측 방향으로 예측하는 것을 특징으로 하는 영상 부호화 장치.
  • 영상을 부호화하는 방법에 있어서,
    상기 영상의 현재 매크로블록의 각 서브블록에서 임의 화소를 추출하여 임의 화소 블록을 생성하는 임의 화소 추출 단계;
    상기 임의 화소 블록을 예측하여 예측 임의 화소 블록을 생성하는 제 1 예측 단계;
    상기 임의 화소 블록과 상기 예측 임의 화소 블록을 감산하여 임의 화소 잔차 블록을 생성하는 제 1 감산 단계;
    상기 임의 화소 잔차 블록을 변환하는 제 1 변환 단계;
    상기 변환된 임의 화소 잔차 블록을 양자화하는 제 1 양자화 단계;
    상기 양자화된 임의 화소 잔차 블록을 역 양자화하는 제 1 역 양자화 단계;
    상기 역 양자화된 임의 화소 잔차 블록을 역 변환하는 제 1 역 변환 단계;
    상기 예측 임의 화소 블록과 상기 역 변환된 임의 화소 잔차 블록을 가산하 여 복원된 임의 화소 블록을 생성하는 제 1 가산 단계;
    상기 현재 매크로블록의 인접 화소들 및 상기 복원된 임의 화소 블록의 각 복원된 임의 화소를 이용하여 상기 각 서브블록의 나머지 화소를 예측하여 예측 매크로블록을 생성하는 제 2 예측 단계;
    상기 현재 매크로블록에서 상기 예측 매크로블록을 감산하여 잔차 매크로블록을 생성하는 제 2 감산 단계;
    상기 역 변환된 임의 화소 잔차 블록의 각 역 변환된 임의 잔차 화소를 상기 잔차 매크로블록의 각 위치에 결합하는 임의 잔차 화소 결합 단계;
    상기 각 역 변환된 임의 잔차 화소가 결합된 잔차 매크로블록을 변환하는 제 2 변환 단계;
    상기 변환된 잔차 매크로블록을 양자화하는 제 2 양자화 단계; 및
    상기 양자화된 잔차 매크블록을 부호화하여 비트스트림을 생성하는 부호화 단계
    를 포함하는 것을 특징으로 하는 영상 부호화 방법.
  • 제 32 항에 있어서, 상기 영상 부호화 방법은,
    상기 양자화된 잔차 매크로블록을 역 양자화하는 제 2 역 변환 단계;
    상기 역 양자화된 잔차 매츠로블록을 역 변환하는 제 2 역 변환 단계;
    상기 역 변환된 잔차 매크로블록을 상기 예측 매크로블록과 가산하여 복원된 현재 매크로블록을 생성하는 제 2 가산 단계; 및
    상기 복원된 임의 화소 블록의 각 복원된 임의 화소를 상기 복원된 현재 매크로블록의 각 위치에 결합하는 임의 복원 화소 결합 단계
    를 추가로 포함하는 것을 특징으로 하는 영상 부호화 방법.
  • 영상을 부호화하는 방법에 있어서,
    영상의 현재 매크로블록의 각 서브블록에서 임의 화소를 추출하여 임의 화소 블록을 생성하는 임의 화소 추출 단계;
    상기 임의 화소 블록을 예측하여 예측 임의 화소 블록을 생성하는 제 1 예측 단계;
    상기 임의 화소 블록과 상기 예측 임의 화소 블록을 감산하여 임의 화소 잔차 블록을 생성하는 제 1 감산 단계;
    상기 임의 화소 잔차 블록을 변환하는 제 1 변환 단계;
    상기 변환된 임의 화소 잔차 블록을 양자화하는 제 1 양자화 단계;
    상기 양자화된 임의 화소 잔차 블록을 역 양자화하는 제 1 역 양자화 단계;
    상기 역 양자화된 임의 화소 잔차 블록을 역 변환하는 제 1 역 변환 단계;
    상기 예측 임의 화소 블록과 상기 역 변환된 임의 화소 잔차 블록을 가산하여 복원된 임의 화소 블록을 생성하는 제 1 가산 단계;
    상기 각 서브블록의 인접 화소들 및 상기 복원된 임의 화소 블록의 각 복원된 임의 화소를 이용하여 상기 각 서브블록의 나머지 화소를 예측하여 각 예측 서브블록을 생성하는 제 2 예측 단계;
    상기 각 서브블록에서 상기 각 예측 서브블록을 감산하여 각 잔차 서브블록을 생성하는 제 2 감산 단계;
    상기 역 변환된 임의 화소 잔차 블록의 각 역 변환된 임의 잔차 화소를 상기 각 잔차 서브블록의 각 위치에 결합하는 임의 잔차 화소 결합 단계;
    상기 각 역 변환된 임의 잔차 화소가 결합된 각 잔차 서브블록을 변환하는 제 2 변환 단계;
    상기 변환된 각 잔차 서브블록을 양자화하는 제 2 양자화 단계; 및
    상기 양자화된 각 잔차 서브블록을 부호화하여 비트스트림을 생성하는 부호화 단계
    를 포함하되, 상기 각 서브블록이 부호화되고 복호된 후 다음 서브블록이 부호화되고 복호화되는 것을 특징으로 하는 영상 부호화 방법.
  • 제 34 항에 있어서, 상기 영상 부호화 방법은,
    상기 양자화된 각 잔차 서브블록을 역 양자화하는 제 2 역 양자화 단계;
    상기 역 양자화된 각 잔차 서브블록을 역 변환하는 제 2 역 변환 단계;
    상기 역 변환된 각 잔차 서브 블록을 상기 각 예측 서브블록과 가산하여 복원된 각 서브블록을 생성하는 제 2 가산 단계; 및
    상기 복원된 임의 화소 블록의 각 복원된 임의 화소를 상기 복원된 각 서브블록의 각 위치에 결합하는 임의 복원 화소 결합 단계
    를 추가로 포함하되, 상기 제 1 예측 단계 및 상기 제 2 예측 단계는 상기 각 복원된 임의 화소가 결합된 각 서브블록을 저장하며 저장된 각 서브블록을 이용하여 다음 서브블록을 예측하는 것을 특징으로 하는 영상 부호화 방법.
  • 영상을 복호화하는 장치에 있어서,
    비트스트림을 복호화하여 잔차 매크로블록 및 예측 모드를 추출하는 복호화부;
    상기 잔차 매크로블록을 역 양자화하는 역 양자화부;
    상기 역 양자화된 잔차 매크로블록에서 각 서브블록의 임의 화소의 위치에 대응하는 주파수 계수를 추출하는 계수 추출부;
    상기 추출된 주파수 계수를 역 변환하여 역 변환된 임의 화소 잔차 블록을 생성하는 제 1 역 변환부;
    상기 예측 모드에 따른 예측 방향에 따라 임의 화소 블록을 예측하여 예측 임의 화소 블록을 생성하는 제 1 예측부;
    상기 예측 임의 화소 블록과 상기 역 변환된 임의 화소 잔차 블록을 가산하여 복원된 임의 화소 블록을 생성하는 제 1 가산부;
    상기 역 양자화된 잔차 매크로블록을 역 변환하여 역 변환된 잔차 매크로블록을 생성하는 제 2 역 변환부;
    상기 영상의 현재 매크로블록의 인접 화소 및 상기 복원된 임의 화소 블록의 각 복원된 임의 화소를 이용하여 상기 예측 모드에 따른 예측 방향에 따라 상기 영상의 현재 매크로블록을 예측하여 예측 현재 매크로블록을 생성하는 제 2 예측부;
    상기 예측 현재 매크로블록과 상기 역 변환된 잔차 매크로블록을 이용하여 복원된 현재 매크로블록을 생성하는 제 2 가산부; 및
    상기 각 복원된 임의 화소를 상기 복원된 현재 매크로블록의 각 위치에 결합하는 임의 화소 결합부
    를 포함하는 것을 특징으로 하는 영상 복호화 장치.
  • 영상을 복호화하는 방법에 있어서,
    비트스트림을 복호화하여 잔차 매크로블록 및 예측 모드를 추출하는 복호화 단계;
    상기 잔차 매크로블록을 역 양자화하는 역 양자화 단계;
    상기 역 양자화된 잔차 매크로블록에서 각 서브블록의 임의 화소의 위치에 대응하는 주파수 계수를 추출하는 계수 추출 단계;
    상기 추출된 주파수 계수를 역 변환하여 복원된 임의 화소 잔차 블록을 생성하는 제 1 역 변환 단계;
    상기 예측 모드에 따른 예측 방향에 따라 임의 화소 블록을 예측하여 예측 임의 화소 블록을 생성하는 제 1 예측 단계;
    상기 예측 임의 화소 블록과 상기 복원된 임의 화소 잔차 블록을 가산하여 복원된 임의 화소 블록을 생성하는 제 1 가산 단계;
    상기 역 양자화된 잔차 매크로블록을 역 변환하여 역 변환된 잔차 매크로블록을 생성하는 제 2 역 변환 단계;
    상기 영상의 현재 매크로블록의 인접 화소 및 상기 복원된 임의 화소 블록의 각 복원된 임의 화소를 이용하여 상기 예측 모드에 따른 예측 방향에 따라 상기 영상의 현재 매크로블록을 예측하여 예측 현재 매크로블록을 생성하는 제 2 예측 단계;
    상기 예측 현재 매크로블록과 상기 역 변환된 잔차 매크로블록을 이용하여 복원된 현재 매크로블록을 생성하는 제 2 가산 단계; 및
    상기 각 복원된 임의 화소를 상기 복원된 현재 매크로블록의 각 위치에 결합하는 임의 화소 결합 단계
    를 포함하는 것을 특징으로 하는 영상 복호화 방법.
  • 说明书全文

    서브블록 내 임의 화소를 이용한 영상 부호화/복호화 방법 및 장치{Video Encoding/Decoding Method and Apparatus Using Arbitrary Pixel in Subblock}

    본 발명은 서브블록 내 임의 화소를 이용한 영상 부호화/복호화 방법 및 장치에 관한 것이다. 더욱 상세하게는, 영상을 부호화하거나 복호화하는 데 있어서, 현재 부호화하거나 복호화하고자 하는 블록의 화소를 인트라 예측할 때 예측의 정확도를 향상시켜 부호화 효율을 향상시키는 방법 및 장치에 관한 것이다.

    MPEG(Moving Picture Experts Group)과 VCEG(Video Coding Experts Group)은 기존의 MPEG-4 Part 2와 H.263 표준안보다 우수하고 뛰어난 비디오 압축 기술을 개발하였다. 이 새로운 표준안은 H.264/AVC(Advanced video Coding)이라 하며, MPEG-4 Part 10 AVC와 ITU-T Recommendation H.264로 공동으로 발표되었다. 이러한 H.264/AVC(이하 'H.264'라 약칭함)에서는 MPEG-1, MPEG-2, MPEG-4 Part2 Visual 등 기존의 동영상 부호화와 관련된 국제 표준과는 다른 방법인 공간 예측 부호화(Spatial Predictive Coding) 방법을 사용한다.

    기존의 동영상 부호화 방법에서는 이산 코사인 변환 영역(DCT Domain: Discrete Cosine Transform Domain)에서 변환된 계수(Coefficient)값에 대한 "인트 라 예측(Intra Prediction)"을 사용함으로써 부호화 효율 증대를 추구하며, 그로 인해 저역 전송 비트율 대의 주관적 화질을 열화시키는 결과를 초래하였다. 하지만, H.264에서는 변환 영역(Transform Domain)이 아닌 공간 영역(Spatial Domain)에서의 공간적 인트라 예측(Spatial Intra Prediction)을 기반으로 하는 부호화 방법을 채택하고 있다.

    기존의 공간적 인트라 예측을 기반으로 하는 부호화 방법을 사용하는 부호화기(Encoder)는 이미 부호화가 완료되어 재생된 이전 블록의 정보로부터 현재 부호화하고자 하는 블록을 예측하고 부호화하고자 하는 실제 블록과의 차이(Difference) 정보만을 부호화해서 복호화기(Decoder)로 전송한다. 이때, 블록을 예측하는 데 필요한 파라미터를 복호화기로 전송하거나, 부호화기와 복호화기를 동기화시켜 예측에 필요한 파라미터를 공유하도록 함으로써 복호화기가 블록을 예측하도록 할 수도 있다. 복호화기는 이미 복호화가 완료된 주변 블록을 이용하여 현재 블록을 예측하고, 부호화기로부터 전송된 차이 정보와 예측된 현재 블록과 합을 구하여 원하는 현재 복호화하고자 하는 블록을 생성하여 재생한다. 이때도 역시 부호화기로부터 예측에 필요한 파라미터가 전송되었다면, 복호화기는 해당 파라미터를 이용하여 현재 블록을 예측하는데 이용한다.

    하지만, 통상적인 영상 부호화 방법 또는 영상 복호화 방법에 따라 인트라 예측을 이용하여 예측하는 경우, 현재 부호화하고자 하는 블록 주위의 주변 블록(주로 현재 블록의 왼쪽 블록과 위쪽 블록)에 있는 이미 복원된 인접 화소를 이용하여 현재 블록의 화소들을 예측한다. 이 경우, 주변 블록의 인접 화소와 먼 위치 에 있는 현재 블록의 화소들은 멀리 떨어진 인접 화소의 화소값으로 예측되기 때문에 그 예측 정확도가 저하될 수 있다. 이러한 예측 정확도의 저하는 원래의 화소의 화소값과 예측된 화소의 화소값의 차이를 증가시켜서 궁극적으로는 압축 효율을 저하시키는 문제점이 있다.

    전술한 문제점을 해결하기 위해 본 발명은, 영상을 부호화하거나 복호화하는 데 있어서, 현재 부호화하거나 복호화하고자 하는 블록의 화소를 인트라 예측할 때 예측의 정확도를 향상시켜 부호화 효율을 향상시키는 데 주된 목적이 있다.

    전술한 목적을 달성하기 위해 본 발명은, 영상을 부호화하는 장치에 있어서, 영상의 현재 매크로블록의 각 서브블록에서 임의 화소를 추출하여 임의 화소 블록을 생성하는 임의 화소 추출부; 임의 화소 블록을 예측하여 예측 임의 화소 블록을 생성하는 제 1 예측부; 임의 화소 블록과 예측 임의 화소 블록을 감산하여 임의 화소 잔차 블록을 생성하는 제 1 감산부; 임의 화소 잔차 블록을 변환하는 제 1 변환부; 변환된 임의 화소 잔차 블록을 양자화하는 제 1 양자화부; 양자화된 임의 화소 잔차 블록을 역 양자화하는 제 1 역 양자화부; 역 양자화된 임의 화소 잔차 블록을 역 변환하는 제 1 역 변환부; 예측 임의 화소 블록과 역 변환된 임의 화소 잔차 블록을 가산하여 복원된 임의 화소 블록을 생성하는 제 1 가산부; 현재 매크로블록의 인접 화소들 및 복원된 임의 화소 블록의 각 복원된 임의 화소를 이용하여 각 서브 블록의 나머지 화소를 예측하여 예측 매크로블록을 생성하는 제 2 예측부; 현재 매크로블록에서 예측 매크로블록을 감산하여 잔차 매크로블록을 생성하는 제 2 감산부; 역 변환된 임의 화소 잔차 블록의 각 역 변환된 임의 잔차 화소를 잔차 매크로블록의 각 위치에 결합하는 임의 잔차 화소 결합부; 각 역 변환된 임의 잔차 화소가 결합된 잔차 매크로블록을 변환하는 제 2 변환부; 변환된 잔차 매크로블록을 양자화하는 제 2 양자화부; 및 양자화된 잔차 매크블록을 부호화하여 비트스트림을 생성하는 부호화부를 포함하는 것을 특징으로 하는 영상 부호화 장치를 제공한다.

    또한, 본 발명의 다른 목적에 의하면, 영상을 부호화하는 장치에 있어서, 영상의 현재 매크로블록의 각 서브블록에서 임의 화소를 추출하여 임의 화소 블록을 생성하는 임의 화소 추출부; 임의 화소 블록을 예측하여 예측 임의 화소 블록을 생성하는 제 1 예측부; 임의 화소 블록과 예측 임의 화소 블록을 감산하여 임의 화소 잔차 블록을 생성하는 제 1 감산부; 임의 화소 잔차 블록을 변환하는 제 1 변환부; 변환된 임의 화소 잔차 블록을 양자화하는 제 1 양자화부; 양자화된 임의 화소 잔차 블록을 역 양자화하는 제 1 역 양자화부; 역 양자화된 임의 화소 잔차 블록을 역 변환하는 제 1 역 변환부; 예측 임의 화소 블록과 역 변환된 임의 화소 잔차 블록을 가산하여 복원된 임의 화소 블록을 생성하는 제 1 가산부; 각 서브블록의 인접 화소들 및 복원된 임의 화소 블록의 각 복원된 임의 화소를 이용하여 각 서브블록의 나머지 화소를 예측하여 각 예측 서브블록을 생성하는 제 2 예측부; 각 서브블록에서 각 예측 서브블록을 감산하여 각 잔차 서브블록을 생성하는 제 2 감산부; 역 변환된 임의 화소 잔차 블록의 각 역 변환된 임의 잔차 화소를 각 잔차 서브블 록의 각 위치에 결합하는 임의 잔차 화소 결합부; 각 역 변환된 임의 잔차 화소가 결합된 각 잔차 서브블록을 변환하는 제 2 변환부; 변환된 각 잔차 서브블록을 양자화하는 제 2 양자화부; 및 양자화된 각 잔차 서브블록을 부호화하여 비트스트림을 생성하는 부호화부를 포함하되, 각 서브블록은 하나의 서브 블록이 부호화되고 복호된 후 다음 서브블록이 부호화되고 복호화되는 것을 특징으로 하는 영상 부호화 장치를 제공한다.

    또한, 본 발명의 다른 목적에 의하면, 영상을 부호화하는 방법에 있어서, 영상의 현재 매크로블록의 각 서브블록에서 임의 화소를 추출하여 임의 화소 블록을 생성하는 임의 화소 추출 단계; 임의 화소 블록을 예측하여 예측 임의 화소 블록을 생성하는 제 1 예측 단계; 임의 화소 블록과 예측 임의 화소 블록을 감산하여 임의 화소 잔차 블록을 생성하는 제 1 감산 단계; 임의 화소 잔차 블록을 변환하는 제 1 변환 단계; 변환된 임의 화소 잔차 블록을 양자화하는 제 1 양자화 단계; 양자화된 임의 화소 잔차 블록을 역 양자화하는 제 1 역 양자화 단계; 역 양자화된 임의 화소 잔차 블록을 역 변환하는 제 1 역 변환 단계; 예측 임의 화소 블록과 역 변환된 임의 화소 잔차 블록을 가산하여 복원된 임의 화소 블록을 생성하는 제 1 가산 단계; 현재 매크로블록의 인접 화소들 및 복원된 임의 화소 블록의 각 복원된 임의 화소를 이용하여 각 서브블록의 나머지 화소를 예측하여 예측 매크로블록을 생성하는 제 2 예측 단계; 현재 매크로블록에서 예측 매크로블록을 감산하여 잔차 매크로블록을 생성하는 제 2 감산 단계; 역 변환된 임의 화소 잔차 블록의 각 역 변환된 임의 잔차 화소를 잔차 매크로블록의 각 위치에 결합하는 임의 잔차 화소 결합 단 계; 각 역 변환된 임의 잔차 화소가 결합된 잔차 매크로블록을 변환하는 제 2 변환 단계; 변환된 잔차 매크로블록을 양자화하는 제 2 양자화 단계; 및 양자화된 잔차 매크블록을 부호화하여 비트스트림을 생성하는 부호화 단계를 포함하는 것을 특징으로 하는 영상 부호화 방법을 제공한다.

    또한, 본 발명의 또 다른 목적에 의하면, 영상을 부호화하는 방법에 있어서, 영상의 현재 매크로블록의 각 서브블록에서 임의 화소를 추출하여 임의 화소 블록을 생성하는 임의 화소 추출 단계; 임의 화소 블록을 예측하여 예측 임의 화소 블록을 생성하는 제 1 예측 단계; 임의 화소 블록과 예측 임의 화소 블록을 감산하여 임의 화소 잔차 블록을 생성하는 제 1 감산 단계; 임의 화소 잔차 블록을 변환하는 제 1 변환 단계; 변환된 임의 화소 잔차 블록을 양자화하는 제 1 양자화 단계; 양자화된 임의 화소 잔차 블록을 역 양자화하는 제 1 역 양자화 단계; 역 양자화된 임의 화소 잔차 블록을 역 변환하는 제 1 역 변환 단계; 예측 임의 화소 블록과 역 변환된 임의 화소 잔차 블록을 가산하여 복원된 임의 화소 블록을 생성하는 제 1 가산 단계; 각 서브블록의 인접 화소들 및 복원된 임의 화소 블록의 각 복원된 임의 화소를 이용하여 각 서브블록의 나머지 화소를 예측하여 각 예측 서브블록을 생성하는 제 2 예측 단계; 각 서브블록에서 각 예측 서브블록을 감산하여 각 잔차 서브블록을 생성하는 제 2 감산 단계; 역 변환된 임의 화소 잔차 블록의 각 역 변환된 임의 잔차 화소를 각 잔차 서브블록의 각 위치에 결합하는 임의 잔차 화소 결합 단계; 각 역 변환된 임의 잔차 화소가 결합된 각 잔차 서브블록을 변환하는 제 2 변환 단계; 변환된 각 잔차 서브블록을 양자화하는 제 2 양자화 단계; 및 양자화된 각 잔차 서브블록을 부호화하여 비트스트림을 생성하는 부호화 단계를 포함하되, 각 서브블록이 부호화되고 복호된 후 다음 서브블록이 부호화되고 복호화되는 것을 특징으로 하는 영상 부호화 방법을 제공한다.

    또한, 본 발명의 또 다른 목적에 의하면, 영상을 복호화하는 장치에 있어서, 비트스트림을 복호화하여 잔차 매크로블록 및 예측 모드를 추출하는 복호화부; 잔차 매크로블록을 역 양자화하는 역 양자화부; 역 양자화된 잔차 매크로블록에서 각 서브블록의 임의 화소의 위치에 대응하는 주파수 계수를 추출하는 계수 추출부; 추출된 주파수 계수를 역 변환하여 역 변환된 임의 화소 잔차 블록을 생성하는 제 1 역 변환부; 예측 모드에 따른 예측 방향에 따라 임의 화소 블록을 예측하여 예측 임의 화소 블록을 생성하는 제 1 예측부; 예측 임의 화소 블록과 역 변환된 임의 화소 잔차 블록을 가산하여 복원된 임의 화소 블록을 생성하는 제 1 가산부; 역 양자화된 잔차 매크로블록을 역 변환하여 역 변환된 잔차 매크로블록을 생성하는 제 2 역 변환부; 영상의 현재 매크로블록의 인접 화소 및 복원된 임의 화소 블록의 각 복원된 임의 화소를 이용하여 예측 모드에 따른 예측 방향에 따라 영상의 현재 매크로블록을 예측하여 예측 현재 매크로블록을 생성하는 제 2 예측부; 예측 현재 매크로블록과 역 변환된 잔차 매크로블록을 이용하여 복원된 현재 매크로블록을 생성하는 제 2 가산부; 및 각 복원된 임의 화소를 복원된 현재 매크로블록의 각 위치에 결합하는 임의 화소 결합부를 포함하는 것을 특징으로 하는 영상 복호화 장치를 제공한다.

    또한, 본 발명의 또 다른 목적에 의하면, 영상을 복호화하는 방법에 있어서, 비트스트림을 복호화하여 잔차 매크로블록 및 예측 모드를 추출하는 복호화 단계; 잔차 매크로블록을 역 양자화하는 역 양자화 단계; 역 양자화된 잔차 매크로블록에서 각 서브블록의 임의 화소의 위치에 대응하는 주파수 계수를 추출하는 계수 추출 단계; 추출된 주파수 계수를 역 변환하여 복원된 임의 화소 잔차 블록을 생성하는 제 1 역 변환 단계; 예측 모드에 따른 예측 방향에 따라 임의 화소 블록을 예측하여 예측 임의 화소 블록을 생성하는 제 1 예측 단계; 예측 임의 화소 블록과 복원된 임의 화소 잔차 블록을 가산하여 복원된 임의 화소 블록을 생성하는 제 1 가산 단계; 역 양자화된 잔차 매크로블록을 역 변환하여 역 변환된 잔차 매크로블록을 생성하는 제 2 역 변환 단계; 영상의 현재 매크로블록의 인접 화소 및 복원된 임의 화소 블록의 각 복원된 임의 화소를 이용하여 예측 모드에 따른 예측 방향에 따라 영상의 현재 매크로블록을 예측하여 예측 현재 매크로블록을 생성하는 제 2 예측 단계; 예측 현재 매크로블록과 역 변환된 잔차 매크로블록을 이용하여 복원된 현재 매크로블록을 생성하는 제 2 가산 단계; 및 각 복원된 임의 화소를 복원된 현재 매크로블록의 각 위치에 결합하는 임의 화소 결합 단계를 포함하는 것을 특징으로 하는 영상 복호화 방법을 제공한다.

    이상에서 설명한 바와 같이 본 발명에 의하면, 영상을 부호화하거나 복호화하는 데 있어서, 현재 부호화하거나 복호화하고자 하는 블록의 화소를 인트라 예측할 때 예측의 정확도를 향상시켜 부호화 효율을 향상시킬 수 있다.

    이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.

    또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.

    도 1은 영상 부호화 장치의 전자적인 구성을 간략하게 나타낸 블록 구성도이다.

    영상 부호화 장치(100)는 영상을 부호화하는 장치로서, 예측부(110), 감산기(120), 변환부(130), 양자화부(140), 부호화부(150) , 역 양자화부(160), 역 변환부(170) 및 가산부(180)를 포함하여 구성될 수 있다.

    예측부(110)는 영상에서 현재 부호화하고자 하는 현재 블록을 예측하여 예측 블록을 생성한다. 즉, 예측부(110)는 영상에서 부호화하고자 하는 현재 블록의 각 화소의 화소값(Pixel Value)을 기 결정된 최적의 예측 모드(Prediction Mode)에 따라 예측하여 예측된 각 화소의 예측 화소값(Predicted Pixel Value)을 갖는 예측 블록(Predicted Block)을 생성한다. 또한, 예측부(110)는 예측 모드에 대한 정보를 부호화부(150)로 전달하여 부호화부(150)로 하여금 예측 모드에 대한 정보를 부호화하도록 할 수 있다.

    여기서, 최적의 예측 모드란 인트라 예측을 위한 다양한 인트라 예측 모드(즉, 인트라 8×8 예측과 인트라 4 X 4 예측 각각에서의 9 가지의 예측 모드와 인트라 16 X 16 예측에서의 4 가지의 예측 모드) 중 부호화 비용이 최소인 예측 모드가 결정될 수 있다.

    도 2 및 도 3은 인트라 예측 모드를 나타낸 예시도이다.

    도 2를 참조하면, 인트라 4×4 예측에는, 수직(Vertical) 모드, 수평(Horizontal) 모드, DC(Direct Current) 모드, 대각선 왼쪽(Diagonal down-left) 모드, 대각선 오른쪽(Diagonal down-right), 수직 오른쪽(Vertical-right) 모드, 수평 아래쪽(Horizontal-down) 모드, 수직 왼쪽(Vertical-left) 및 수평 위쪽(Horizontal-up) 모드를 포함하는 9 가지의 예측 모드가 있다. 인트라 8×8 예측도 인트라 4×4 예측과 유사하게 9 가지의 예측 모드가 있다. 또한, 도 3을 참조하면, 인트라 16×16 예측에는, 수직(Vertical) 모드, 수평(Horizontal) 모드, DC 모드 및 플래인(Plane) 모드를 포함하는 4 가지의 예측 모드가 있다.

    예측부(110)는 현재 블록의 블록 모드 또는 블록 크기에 따라 도시한 9 개의 예측 모드 또는 4 개의 예측 모드에 따라 부호화 비용을 계산하고 부호화 비용이 최소인 예측 모드를 최적의 예측 모드로서 결정할 수 있다.

    감산부(120)는 현재 블록에서 예측 블록을 감산하여 잔차 블록(Residual Block)을 생성한다. 즉, 감산부(120)는 부호화하고자 하는 현재 블록의 각 화소의 화소값과 예측부(110)에서 예측한 예측 블록의 각 화소의 예측 화소값의 차이를 계산하여 블록 형태의 잔차 신호(Residual Signal)인 잔차 블록을 생성한다.

    변환부(130)는 잔차 블록을 주파수 영역으로 변환하여 잔차 블록의 각 화소값을 주파수 계수로 변환한다. 여기서, 변환부(130)는 하다마드 변환(Hadamard Transform), 이산 코사인 변환 기반 변환(DCT based Transform: Discrete Cosine Transform Based Transform) 등과 같은 시간축의 화상 신호를 주파수축으로 변환하는 다양한 변환 기법을 이용하여 잔차 신호를 주파수 영역으로 변환할 수 있는데, 주파수 영역으로 변환된 잔차 신호가 주파수 계수가 된다.

    도 4 및 도 5에는 DCT 변환 및 역 변환을 위한 베이직 벡터를 예시적으로 나타내었다. 예를 들면, 변환부(130)는 수학식 1에 의해 만들어진 도 4에 도시한 베이직 벡터를 이용하여 가로 방향으로 1차원 DCT를 수행하고 세로 방향으로 1차원 DCT를 수행하여 총 2차원의 DCT를 수행함으로써 공간 도메인의 화소값을 주파수 도메인으로 변환한다. 이때, 블록 모드가 인트라 16x16인 경우에는 4x4 블록 크기의 16 개의 각 서브블록에 대해 16개(4x4)의 DC 성분의 주파수 계수들만 모아서 다시 수학식 2와 같이 하다마드 변환을 수행한다.

    양자화부(140)는 변환부(130)에 의해 주파수 영역으로 변환된 잔차 신호를 갖는 잔차 블록을 양자화(Quantization)한다. 여기서, 양자화부(240)는 변환된 잔차 블록을 데드존 균일 경계 양자화(DZUTQ: Dead Zone Uniform Threshold Quantization, 이하 'DZUTQ'라 칭함), 양자화 가중치 매트릭스(Quantization Weightrd Matrix) 또는 이를 개량한 양자화 기법 등을 사용하여 양자화할 수 있다.

    부호화부(150)는 변환되고 양자화된 잔차 블록을 엔트로피 부호화(Entropy Coding) 기법 등을 이용하여 부호화함으로써 비트스트림을 출력한다. 이때, 부호화부(150)는 양자화된 잔차 블록의 양자화 주파수 계수들을 다양한 방법으로 스캔하여 양자화 주파수 계수열을 생성하고 양자화 주파수 계수 열을 엔트로피 부호화 기 법 등을 이용하여 부호화하여 비트스트림으로 출력할 수 있다. 또한, 부호화부(150)는 예측부(110)에서 현재 블록을 예측한 예측 모드에 대한 정보를 함께 부호화할 수 있다.

    역 양자화부(160)는 양자화부(140)에 의해 양자화된 잔차 블록을 역 양자화(Inverse Quantization)한다. 즉, 역 양자화부(160)는 앙자화된 잔차 블록의 양자화 주파수 계수들을 역 양자화하여 주파수 계수를 갖는 잔차 블록을 생성한다.

    역 변환부(170)는 역 양자화부(160)에 의해 역 양자화된 잔차 블록을 역 변환(Inverse Transform)한다. 즉, 역 변환부(170)는 역 양자화된 잔차 블록의 주파수 계수들을 역 변환하여 화소값을 갖는 잔차 블록 즉, 복원된 잔차 블록을 생성한다. 여기서, 역 변환부(170)는 변환부(130)에서 사용한 변환한 방식을 역으로 사용하여 역 변환할 수 있다. 예를 들면, 역 변환부(170)는 DC 성분의 주파수 계수들을 모아서 수학식 3과 같이 역 하다마드 변환을 수행하고, 도 5에 도시한 베이직 벡터를 이용하여 현재 블록을 세로 방향으로 1차원 역 DCT를 수행하고 가로 방향으로 1차원 역 DCT를 수행함으로써 주파수 도메인의 주파수 계수를 공간 도메인 화소값으로 역 변환한다.

    가산부(180)는 예측부(110)에서 예측된 예측 블록과 역 변환부(170)에 의해 복원된 잔차 블록을 가산하여 현재 블록을 복원한다. 복원된 현재 블록은 예측부(110)에 참조 픽처로서 저장되어 현재 블록의 다음 블록이나 향후 다른 블록을 부호화할 때 참조 픽처로서 사용된다.

    도 1에서는 도시하지 않았지만, 예측부(110)와 가산부(180) 사이에는 디블로킹 필터부(미도시)가 추가로 연결될 수 있다. 디블로킹 필터부는 가산부(180)에 의해 복원된 현재 블록을 디블로킹 필터링(Deblcking Filtering)한다. 여기서, 디블로킹 필터링이란 영상을 블록 단위로 부호화하면서 발생하는 블록 왜곡을 감소시키는 작업을 말하며, 블록 경계와 매크로블록 경계에 디블로킹 필터를 적용하거나 매크로블록 경계에만 디블로킹 필터를 적용하거나 디블로킹 필터를 사용하지 않는 방법 중 하나를 선택적으로 사용할 수 있다.

    도 6은 본 발명의 일 실시예에 따른 서브블록 내의 임의 화소를 나타낸 예시도이다.

    본 발명은 임의의 크기의 매크로블록을 부호화할 때, 임의의 크기의 서브블록 단위로 부호화하되, 서브블록 내의 임의의 위치의 화소인 임의 화소를 먼저 예측하고 부호화하고 복호화함으로써 복원하고 복원된 임의 화소를 이용하여 서브블록 내의 나머지 화소를 예측함으로써 매크로블록 내의 모든 화소들이 먼 위치에 있는 인접 화소로부터 예측되는 것이 아니라 가까운 위치의 화소로부터 예측될 수 있도록 하여 예측의 정확도가 저하되는 것을 방지한다.

    여기서, 임의의 크기의 매크로블록(610)은 사용자에 의해 그 크기가 NxM 크기로 지정될 수 있으며, 임의의 크기의 매크로블록(610) 내의 임의의 크기의 서브 블록(620)도 사용자에 의해 그 크기가 OxP 크기(단, O≤N, P≤M)로 지정될 수 있다.

    도 6에서는 현재 부호화하고자 하는 임의의 크기의 매크로블록(610)이 16x16 블록이고 서브블록(620)이 4x4 블록인 경우의 임의 화소(630)를 나타내었다. 이하의 실시예에서는 도시한 바와 같은 예를 통해 본 발명을 설명한다. 또한, 본 발명에서는 임의 화소를 서브블록 내에서 오른쪽 끝과 아래쪽 끝의 위치에 있는 화소로서 결정하고 X i (630)라 칭한다. 하지만, 이러한 매크로블록의 크기, 서브블록의 크기, 임의 화소의 위치 등은 예시적인 것으로서 다양한 블록 크기 또는 다양한 위치의 화소가 사용될 수 있다.

    도 7은 본 발명의 일 실시예에 따른 영상 부호화 장치의 전자적인 구성을 간략하게 나타낸 블록 구성도이다.

    본 발명의 일 실시예에 따른 영상 부호화 장치(700)는 영상을 부호화하는 장치로서, 임의 화소 추출부(702), 제 1 예측부(704), 제 1 감산부(706), 제 1 변환부(708), 제 1 양자화부(710), 제 1 역 양자화부(712), 제 1 역 변환부(714), 제 1 가산부(716), 제 1 예측부(718), 제 2 감산부(720), 임의 잔차 화소 결합부(7220), 제 2 변환부(724), 제 2 양자화부(726), 부호화부(728), 제 2 역 양자화부(730), 제 2 역 변환부(732), 제 2 가산부(734) 및 임의 복원 화소 결합부(736)를 포함하여 구성될 수 있다.

    이러한 영상 부호화 장치(700)는 이러한 영상 부호화 장치(100)는 개인용 컴 퓨터(PC: Personal Computer), 노트북 컴퓨터, 개인 휴대 단말기(PDA: Personal Digital Assistant), 휴대형 멀티미디어 플레이어(PMP: Portable Multimedia Player), 플레이스테이션 포터블(PSP: PlayStation Portable), 이동통신 단말기(Mobile Communication Terminal) 등일 수 있으며, 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신 장치, 영상을 부호화하기 위한 각종 프로그램과 데이터를 저장하기 위한 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하는 다양한 장치를 의미한다.

    임의 화소 추출부(702)는 영상의 현재 매크로블록의 각 서브블록에서 임의 화소를 추출하여 임의 화소 블록을 생성한다. 즉, 임의 화소 추출부(700)는 도 6에 도시한 현재 매크로블록(610)의 각 서브블록(620) 내에 있는 화소들 중 임의의 위치에 있는 임의의 화소(630) X 0 ~ X 15 를 추출하여, 도 8에 도시한 바와 같이 임의 화소 블록을 생성한다. 도 8에는 현재 매클로블록에서 임의 화소 블록을 추출하는 모습을 예시적으로 나타내었다.

    제 1 예측부(704)는 임의 화소 블록을 예측하여 예측 임의 화소 블록을 생성한다. 즉, 제 1 예측부(704)는 도 8에 예시적으로 도시한 바와 같은 현재 매크로블록의 왼쪽과 위쪽의 매크로블록의 화소 중 현재 매클로블록과 인접해 있으며 현재 매클로블록이 부호화되기 이전에 이미 복호화된 화소 V i (V 0 ~V 15 )와 H i (H 0 ~H 15 )를 임의 화소 블록을 예측하기 위한 인접 화소로서 사용하여, 임의 화소 블록의 각 임의 화소를 예측하여 예측된 임의 화소를 갖는 예측 임의 화소 블록을 생성한다.

    또한, 제 1 예측부(704)는 현재 매크로블록의 인접 화소들을 저역 통과 필터링을 수행하고 다운 샘플링한 화소들을 이용하여 임의 화소 블록을 예측할 수 있다. 도 9에는 현재 매크로블록의 인접 화소를 이용하여 임의 화소 블록을 예측하는 모습을 예시적으로 나타내었다. 도 9를 참조하면, 제 1 예측부(704)는 현재 매크로블록의 인접 화소 중 V i (V 0 ~V 15 )를 저역 통과 필터링한 후 다운 샘플링하여 V a , V b , V c , V d 를 계산함으로써 임의 화소 블록의 왼쪽 인접 화소를 결정할 수 있다. 마찬가지로, 제 1 예측부(704)는 현재 매크로블록의 인접 화소 중 H i (H 0 ~H 15 )를 저역 통과 필터링한 후 다운 샘플링하여 H a , H b , H c , H d 를 계산함으로써 임의 화소 블록의 위쪽 인접 화소를 결정할 수 있다.

    이때, 제 1 예측부(704)는 현재 매크로블록의 예측 모드에 따른 예측 방향과 동일한 예측 방향으로 임의 화소 블록을 예측할 수 있다. 여기서, 현재 매크로블록의 예측 방향은 도 3에 도시한 바와 같은 인트라 16x16 예측의 예측 모드에 따른 예측 방향이 될 수 있으며, 각 예측 모드에 따른 예측을 수행하여 부호화할 때의 부호화 비용이 최소인 예측 방향을 최적의 예측 방향으로서 결정할 수 있으며, 그에 따른 예측 모드에 대한 정보를 부호화부(728)로 전달할 수 있다.

    제 1 감산부(706)는 임의 화소 블록과 예측 임의 화소 블록을 감산하여 임의 화소 잔차 블록을 생성한다. 즉, 제 1 감산부(706)는 임의 화소 블록의 각 임의 화소의 화소값과 예측 임의 화소 블록의 각 예측 임의 화소의 화소값을 뺀 값을 갖는 잔차 신호를 갖는 잔차 블록인 임의 화소 잔차 블록을 생성한다.

    제 1 변환부(708)는 임의 화소 잔차 블록을 변환한다. 즉, 제 1 변환부(708)는 임의 화소 잔차 블록의 각 임의 잔차 신호를 주파수 영역으로 변환하여 임의 잔차 화소에 대한 주파수 계수를 생성한다. 또한, 제 1 변환부(708)는 임의 화소 잔차 블록의 각 임의 화소 잔차 신호만을 독립적으로 변환할 수 있다. 이를 위해, 제 1 변환부(708)는 임의 화소 잔차 블록의 각 임의 화소 잔차 신호를 DCT 변환을 위한 수정된 베이직 벡터를 이용하여 DCT 변환을 수행함으로써 각 임의 화소 잔차 신호만을 독립적으로 변환할 수 있다.

    또한, 제 1 변환부(708)는 DCT 변환을 수행한 후 하다마드 변환을 추가로 수행할 수 있다. 즉, 제 1 변환부(708)는 현재 매크로블록이 인트라 16x16 블록인 경우에는 DCT 변환된 주파수 계수를 다시 하다마드 변환할 수 있으며, 현재 매클로블록이 인트라 4x4 블록인 경우에는 하다마드 변환을 추가로 수행하지 않을 수 있다. 현재 매클로블록이 인트라 4x4 블록으로 결정된 경우에는 영상의 상관성이 작으므로 하다마드 변환을 수행하는 경우 그 효율이 오히려 저하될 수 있기 때문이다.

    제 1 양자화부(710)는 변환된 임의 화소 잔차 블록을 양자화한다. 즉, 제 1 양자화부(710)는 임의 화소 잔차 블록의 주파수 계수를 양자화하여 양자화 주파수 계수를 갖는 임의 화소 잔차 블록을 생성한다.

    제 1 역 양자화부(710)는 양자화된 임의 화소 잔차 블록을 역 양자화한다. 즉, 제 1 역 양자화부(710)는 임의 화소 잔차 블록의 양자화 주파수 계수를 역 양자화하여 주파수 계수를 갖는 임의 화소 잔차 블록을 생성한다.

    제 1 역 변환부(712)는 역 양자화된 임의 화소 잔차 블록을 역 변환한다. 즉, 제 1 역 변환부(712)는 임의 화소 잔차 블록의 주파수 계수를 공간 영역으로 변환하여 복원된 임의 잔차 신호를 갖는 복원된 임의 화소 잔차 블록을 생성한다. 이때, 제 1 역 변환부(712)는 각 임의 화소 잔차 신호가 변환된 주파수 계수를 DCT 역 변환을 위한 수정된 베이직 벡터를 이용하여 역 이산 코사인 변환을 수행함으로써 각 임의 화소 잔차 신호만을 독립적으로 역 변환할 수 있다. 또한, 제 1 역 변환부(712)는 각 임의 화소 잔차 신호가 변환된 주파수 계수를 역 하다마드 변환한 후 역 이산 코사인 변환을 수행할 수 있다.

    여기서, DCT 변환과 DCT 역 변환을 위한 수정된 베이직 벡터란 임의 화소를 각 서브블록의 나머지 화소들과 독립적으로 변환하고 역 변환하기 위해, 도 4 및 도 5에 도시한 DCT 변환 베이직 벡터와 DCT 역 변환 베이직 벡터 즉, 기존 베이직 벡터들을 개량한 베이직 벡터로서, 도 10 및 도 11에 도시한 바와 같이 결정될 수 있다. 도 10 및 도 11에는 DCT 변환 및 역 변환을 위한 수정된 베이직 벡터를 예시적으로 나타내었다. 즉, 제 1 변환부(708)와 제 1 역 변환부(712)는 제 2 변환부(724)와 제 2 역 변환부(732)에서 서브블록의 나머지 화소를 변환 및 역 변환할 때 임의 화소 잔차 신호(Xd i )만 독립적으로 변환 및 역변환할 수 있도록 하기 위해, 도 10 및 도 11에 도시한 수정된 베이직 벡터를 사용한다.

    예를 들어 도 10에 도시한 수정된 DCT 변환의 베이직 벡터를 가지고 4개의 화소(P 0~3 )를 1차원 변환을 하는 경우, 변환된 첫 번째 주파수 계수(Coeff 0 )와 대응되는 베이직 벡터(0, 0, 0, 2)는 임의 화소 잔차 신호(Xd i )의 성분만 반영되므로, 첫 번째 주파수 계수는 수학식 4와 같이 계산될 수 있다.

    Coeff

    0 = 0×P

    0 + 0×P

    1 + 0×P

    2 + 2×P

    3 = 2×P

    3

    따라서, 변환할 때, 도 10의 수정된 DCT 변환의 베이직 벡터를 사용하면 첫 번째 주파수 계수는 화소 P 3 의 성분만 있다. 따라서, 나머지 화소들(P 0~2 )의 값이 변하더라도 첫 번째 주파수 계수의 값이 변화가 없으므로, 임의 화소들을 나머지 화소들(P 0~2 )과 독립적으로 변환할 수 있다.

    제 1 변환부(708)는 현재 매크로블록 내의 각 서브블록에서 추출한 임의 화소의 잔차 신호인 임의 화소 잔차 신호(Xd i )를 각 서브블록의 나머지 화소들과 독립적으로 변환하기 위해, 변환된 첫 번째 주파수 계수(Coeff 0 )와 대응되는 베이직 벡터(0, 0, 0, 2)로 총 2차원 변환한다. 1차원 변환을 수행할 때는 임의 화소 잔차 신호(Xd i )의 값에 2를 곱한 것과 같으므로, 2차원 변환을 수행하면 임의 화소 잔차 신호(Xd i )의 값에 4를 곱한 것과 같다. 즉, 현재 매크로블록의 각 서브블록을 도 10에 도시한 수정된 DCT 변환의 베이직 벡터로 2차원 변환을 수행한 다음에 각 서브블록의 왼쪽 위의 주파수 계수만 모은 결과와 동일하다. 따라서, 제 1 변환부(708)는 현재 매크로블록 내의 각 서브블록에서 추출한 16개(4x4)의 임의 위치 화소 잔차 신호(Xd i )의 값에 4를 곱하여 수직 방향 및 수평 방향으로 2차원 변환을 수행한 다음, 변환된 주파수 계수를, H.264의 인트라 16x16 블록의 각 서브블록의 DC 성분 의 주파수 계수들처럼, 수학식 2를 이용하여 하다마드 변환을 수행한다.

    마찬가지로, 임의 화소 잔차 신호에 대응하는 주파수 계수는 다른 주파수 계수(Coeff 1~3 )와는 독립적으로 역변환될 수 있다. 역변환할 때의 해당 주파수 계수는 수학식 5와 같이 계산될 수 있다.

    P

    3 ' = Coeff

    0 /2

    제 1 가산부(716)는 예측 임의 화소 블록과 역 변환된 임의 화소 잔차 블록을 가산하여 복원된 임의 화소 블록을 생성한다.

    제 2 예측부(718)는 현재 매크로블록의 인접 화소들 및 복원된 임의 화소 블록의 각 복원된 임의 화소를 이용하여 각 서브블록의 나머지 화소를 예측함으로써 예측 매크로블록을 생성한다. 즉, 제 2 예측부(718)는 현재 매크로블록 내의 각 서브블록을 예측하는데, 각 서브블록의 임의 화소를 제외한 나머지 화소를 예측한다.

    도 12 내지 도 15에는 각 서브블록의 나머지 화소를 예측하는 모습을 예시적으로 나타내었다. 제 2 예측부(718)는 도 12 내지 도 15와 같이, 이미 부호화되고 복호화되어 복원된 임의 화소 블록의 각 복원된 임의 화소와 현재 매크로블록 주변의 매크로블록 중 현재 매크로블록과 인접한 화소 V i (V 0 ~V 15 )와 H i (H 0 ~H 15 )를 각 서브블록의 나머지 화소를 예측한다. 이때, 예측 방향은 제 1 예측부(704)의 예측 방향과 동일할 수 있다.

    도 12를 참조하면, 예측 방향이 수직 방향인 경우, 현재 매크로블록에서 좌 표 (0,0)~(0,15)에 위치한 나머지 화소는 H 0 화소의 값으로 예측되고, 좌표 (1,0)~(1,15)에 위치한 나머지 화소는 H 1 화소의 값으로 예측되며, 좌표 (2,0)~(2,15)에 위치한 나머지 화소는 H 2 화소의 값으로 예측된다. 하지만, 복원된 임의 화소(X 0 ', X 4 ', X 8 ', X 12 ')를 지나가는 구간인 좌표 (3,0)~(3,15)에 위치한 화소의 경우는, 좌표 (3,0)~(3,2)에 위치한 화소까지는 H 3 화소의 값으로 예측되지만, 좌표 (3,4)~(3,6)에 위치한 화소까지는 복원된 임의 화소 X 0 '으로 예측되고, 좌표 (3,8)~(3,10)에 위치한 화소까지는 복원된 임의 화소 X 4 '로 예측되며, 좌표 (3,12)~(3,14)에 위치한 화소까지는 복원된 임의 화소 X 8 '로 예측된다. 현재 매크로블록의 나머지 열들도 전술한 바와 유사하게 예측되나.

    도 13을 참조하면, 예측 방향이 수평 방향인 경우는 수직 방향인 경우와 유사하게, 현재 매크로블록에서 좌표 (0,0)~(15,0), (0,1)~(15,1), (0,2)~(15,2)에 위치한 화소는 각각 V 0 , V 1 , V 2 화소의 값으로 예측되지만, 복원된 임의 화소(X 0 ', X 1 ', X 2 ', X 3 ')를 지나가는 구간인 좌표 (0,3)~(15,3)에 위치한 화소의 경우에는, 좌표 (0,3)~(2,3)에 위치한 화소는 V 3 화소의 값으로 예측되고, 좌표 (4,3)~(6,3)에 위치한 화소는 X 0 '으로 예측되며, 좌표 (8,3)~(10,3)에 위치한 화소는 X 1 '로 예측되며, 좌표 (12,3)~(14,3)에 위치한 화소는 X 2 '로 예측된다.

    도 14를 참조하면, 예측 방향이 DC 평균값 예측인 경우, 현재 매크로블록의 왼쪽의 매크로블록의 인접 화소 V i (V 0 ~V 15 )과 위쪽 매크로블록의 인접 화소 H i (H 0 ~H 15 )의 화소들과 각 서브블록의 각 복원된 임의 화소(X i ')에 임의의 가중치를 준 후 평균값을 계산하여 예측을 수행한다

    도 15를 참조하면, 예측 방향이 플래인 방향인 경우, 좌표 (3,0)~(3,2)에 위치한 화소는 H 3 화소 값과 X 0 ' 값을 거리에 따른 임의의 가중치를 주어 예측하고, 좌표 (0,3)~(2,3)에 위치한 화소는 V 3 화소 값과 X 0 ' 값을 거리에 따라 임의의 가중치를 주어 예측한 후, 예측된 좌표 (3,0)~(3,2)에 위치한 화소와 좌표 (0,3)~(2,3)에 위치한 화소 및 복원된 임의 화소 X 0 ', 인접 화소 V 0 ~V 3 와 H 0 ~H 3 에 거리에 따라 거리에 따른 임의의 가중치를 주어 좌표 (0,0)~(2,2)에 위치한 화소를 예측한다. 다른 서브블록도 이와 유사하게 예측된다.

    제 2 감산부(720)는 원 영상의 현재 매크로블록에서 예측 매크로블록을 감산하여 잔차 매크로블록을 생성한다. 즉, 제 2 감산부(720)는 현재 매크로블록 내의 각 서브블록에서 임의 위치 화소(X i )를 제외한 나머지 화소들의 잔차 신호를 계산하여, 잔차 신호를 갖는 잔차 매크로블록을 생성한다.

    임의 잔차 화소 결합부(722)는 역 변환된 임의 화소 잔차 블록의 각 역 변환된 임의 잔차 화소를 잔차 매크로블록의 각 위치에 결합한다. 즉, 임의 잔차 화소 결합부(722)는 역 변환부(714)에 의해 역 변환된 임의 화소 잔차 블록 내의 각 역 변환되어 복원된 임의 잔차 화소(Xd i ')를 제 2 감산부(720)에서 생성된 잔차 매크로블록에서 해당 각 서브블록의 해당 화소의 위치에 결합한다. 따라서, 제 2 감산부(720)에 의해 생성된 잔차 매크로블록은 나머지 화소들의 잔차 신호만이 있었지만, 임의 잔차 화소 결합부(722)에 의해 복원된 임의 잔차 화소가 결합되어 전체의 잔차 매크로블록이 완성된다. 이와 같이, 잔차 매클로블록의 각 잔차 서브블록의 임의 잔차 화소의 위치에 이미 복원된 임의 화소 잔차 신호(Xd i ')를 결합함으로써, 변환과 양자화에 따라 발생할 수 있는 양자화 오류를 줄일 수 있다. 즉, 복원된 임의 잔차 화소에는 이미 양자화 오류가 반영되어 있기 때문에, 영상 부호화 장치와 영상 복호화 장치가 양자화 오류와 관계없이 복원된 임의 화소 잔차 신호(Xd i ')는 동일한 값으로 부호화 및 복호화가 가능하다. 따라서, 부호화 및 복호화 과정에서 나머지 화소들의 양자화 오류만 추가되므로, 양자화 오류가 반영되지 않은 임의 화소 잔차 신호(Xd i )를 사용하는 경우보다 양자화 오류를 줄일 수 있다.

    제 2 변환부(724)는 역 변환된 임의 잔차 화소가 결합된 잔차 매크로블록을 변환한다. 즉, 제 2 변환부(724)는 임의 잔차 화소 결합부(722)에 의해 역 변환된 임의 잔차 화소가 결합된 잔차 매크로 블록의 각 잔차 신호를 주파수 영역으로 변환하여 주파수 계수를 갖는 잔차 매크로블록을 생성한다.

    또한, 제 2 변환부(724)는 DCT 변환을 이용하여 4x4 블록 단위로 잔차 매크로블록을 변환하되, DCT 변환의 1차원 변환 방향의 순서에 따라 다른 베이직 벡터를 사용할 수 있다. 여기서, 1차원 변환 방향의 순서는 제 1 예측부(704)의 예측 방향에 따라 결정될 수 있다.

    도 16에는 2차원 DCT 변환을 위한 1차원 변환을 예시적으로 나타내었다. 도 16을 참조하면, 제 2 변환부(724)는 수평 방향으로 1차원 변환을 먼저 수행하고 수직 방향으로 1차원 변환을 수행하여 2차원의 DCT 변환을 수행하거나 수직 방향으로 1차원 변환을 먼저 수행하고 수평 방향으로 1차원 변환을 수행하여 2차원의 DCT 변환을 수행할 수 있는데, 수평 방향으로 1차원 변환을 먼저 수행할지 또는 수직 방향으로 1차원 변환을 먼저 수행할지 여부 제 1 예측부(704)에서 임의 화소 블록을 예측한 예측 방향에 따라 결정될 수 있다.

    제 2 변환부(724)는 이와 같이 결정된 1차원 변환 방향의 순서에 따라 1차원 변환에 사용하는 베이직 벡터를 다르게 적용할 수 있다. 도 17 및 도 18에는 역 변환 방향의 순서에 따라 수정된 베이직 벡터를 이용하여 역 변환하는 과정을 예시적으로 나타내었다. 제 2 변환부(724)는 1차원 수평 변환을 수행한 후 1차원 수직 변환을 수행하는 경우에는, 도 17에 도시한 바와 같이, 각 4x4 블록의 제 1 행 내지 제 3 행은 기존 베이직 벡터를 이용하고 각 4x4 블록의 제 4 행은 수정된 베이직 벡터를 이용하여 1차원 수평 변환을 수행하며, 각 4x4 블록의 제 1 열은 수정된 베이직 벡터를 이용하고 각 4x4 블록의 제 2 열 내지 제 4 열은 수정된 베이직 벡터를 이용하여 1차원 수직 변환을 수행할 수 있다.

    또한, 제 2 변환부(724)는 1차원 수직 변환을 수행한 후 1차원 수평 변환을 수행하는 경우에는, 도 18에 도시한 바와 같이, 각 4x4 블록의 제 1 열 내지 제 3열은 기존 베이직 벡터를 이용하고 각 4x4 블록의 제 4 열은 수정된 베이직 벡터를 이용하여 1차원 수직 변환을 수행하며, 각 4x4 블록의 제 1 행은 수정된 베이직 벡터늘 이용하고 각 4x4 블록의 제 2 행 내지 제 4 행은 수정된 베이직 벡터를 이용하여 1차원 수평 변환을 수행할 수 있다.

    이와 같이, 예측 방향에 따라 1차원 변환의 방향의 순서를 결정하고 결정된 순서에 따라 변환할 때 사용하는 베이직 벡터를 기존 베이직 벡터 또는 수정된 베이직 벡터를 선택적으로 사용하여 변환함으로써, 고주파 성분을 줄일 수 있을 뿐만 아니라 각 서브블록의 나머지 화소에 대한 잔차 신호를 변환할 때 각 임의 화소 잔차 신호와 독립적으로 변환할 수 있다. 여기서, 기존 베이직 벡터와 수정된 베이직 벡터는 도 10을 통해 전술한 바와 같다.

    제 2 양자화부(726)는 변환된 잔차 매크로블록을 양자화한다. 즉, 제 2 양자화부(726)는 제 2 변환부(724)에 의해 변환된 잔차 매크로블록의 주파수 계수를 양자화하여 양자화 주파수 계수를 갖는 잔차 매크로블록인 양자화된 잔차 매크로블록을 생성한다.

    부호화부(728)는 양자화된 잔차 매크로블록을 부호화하여 비트스트림을 생성한다. 즉, 부호화부(728)는 양자화된 잔차 매크로블록의 양자화 주파수 계수를 지그재그 스캐닝 등 다양한 스캐닝 방식을 이용하여 스캐닝함으로써 양자화 주파수 계수열을 생성하고 생성된 양자화 주파수 계수열을 엔트로피 부호화 등 다양한 부호화 기법을 이용하여 부호화함으로써 비트스트림을 출력한다. 이때, 부호화부(728)는 양자화된 잔차 매크로블록뿐만 아니라 제 1 예측부(704) 또는 제 2 예측부(718)로부터 전달되는 예측 모드에 대한 정보를 추가로 부호화할 수 있다.

    제 2 역 양자화부(730)는 양자화된 잔차 매크로블록을 역 양자화한다. 즉, 제 2 역 양자화부(730)는 제 2 양자화부(726)에 의해 양자화된 잔차 매크로블록의 양자화 주파수 계수를 역 양자화하여 주파수 계수를 갖는 역 양자화된 잔차 매크로블록을 생성한다.

    제 2 역 변환부(732)는 역 양자화된 잔차 매크로블록을 역 변환한다. 즉, 제 2 역 변환부(732)는 제 2 역 양자화주(730)에 의해 역 양자화된 잔차 매크로블록의 주파수 계수를 공간 영역으로 역 변환하여 임의 화소 잔차 신호를 복원하여 복원된 임의 화소 잔차 블록을 생성한다.

    제 2 역 변환부(732)는 역 양자화된 잔차 매크로블록을 역 변환하는 데 있어서, 역 DCT 변환을 이용하여 4x4 블록 단위로 잔차 매크로블록의 주파수 계수를 역 변환하되, 역 DCT 변환의 1차원 역 변환 방향의 순서에 따라 다른 베이직 벡터를 사용하여 역 변환할 수 있다. 또한, 제 2 역 변환부(732)는 제 2 변환부(724)의 1차원 변환 방향의 순서의 역 순으로 1차원 역 변환 방향의 순서를 결정할 수 있다.

    즉, 제 2 역 변환부(732)는, 1차원 수평 역 변환을 수행한 후 1차원 수직 역 변환을 수행하는 경우에는 도 17에 도시한 바와 같이, 각 4x4 블록의 제 1 행은 수정된 베이직 벡터를 이용하고 각 4x4 블록의 제 2 행 내지 제 4 행은 기존 베이직 벡터를 이용하여 1차원 수평 역 변환을 수행하며, 각 4x4 블록의 제 1 열 내지 제 3열은 기존 베이직 벡터를 이용하고 각 4x4 블록의 제 4 열은 수정된 베이직 벡터를 이용하여 1차원 수직 역 변환을 수행할 수 있다.

    또한, 제 2 역 변환부(732)는, 1차원 수직 역 변환을 수행한 후 1차원 수평 역 변환을 수행하는 경우에는 도 18에 도시한 바와 같이, 각 4x4 블록의 제 1열은 수정된 베이직 벡터를 이용하고 각 4x4 블록의 제 2 열 내지 제 4 열은 기존 베이직 벡터를 이용하여 1차원 수직 역 변환을 수행하며, 각 4x4 블록의 제 1 행 내지 제 3 행은 기존 베이직 벡터를 이용하고 각 4x4 블록의 제 4 행은 수정된 베이직 벡터를 이용하여 1차원 수평 역 변환을 수행할 수 있다.

    제 2 가산부(734)는 역 변환된 잔차 매크로블록을 예측 매크로블록과 가산하여 복원된 현재 매크로블록을 생성한다. 즉, 제 2 가산부(734)는 제 2 역 변환부(732)에 의해 역 변환된 잔차 매크로블록의 각 잔차 신호와 제 2 예측부(718)에 의해 예측된 예측 매크로블록의 각 화소를 가산하여 복원된 화소를 갖는 매크로블록인 복원된 현재 매크로블록을 생성한다.

    임의 복원 화소 결합부(736)는 복원된 임의 화소 블록의 각 복원된 임의 화소를 복원된 현재 매크로블록의 각 위치에 결합한다. 즉, 임의 복원 화소 결합부(736)는 제 1 가산부(716)에 의해 복원된 임의 화소 블록의 각 복원된 임의 화소를 제 2 가산부(734)에 의해 복원된 현재 매크로블록의 각 서브블록의 해당 위치에 복사하여 최종으로 복원되는 현재 매크로블록을 생성한다. 이와 같이 최종으로 복원된 현재 매크로블록은 메모리(미도시)에 저장되어 제 1 예측부(704)와 제 2 예측부(718)에서 다음 매크로블록을 부호화할 때 활용된다.

    도 19는 본 발명의 일 실시예에 따른 영상 부호화 방법을 설명하기 위한 순서도이다.

    영상 부호화 장치(700)는 부호화하고자 하는 영상이 입력되면 영상을 매크로 블록 단위로 구분하고 다양한 부호화 모드 중 최적의 블록 모드를 결정하여 결정된 블록 모드에 따라 현재 부호화하고자 하는 매크로블록을 예측하여 부호화한다.

    이때, 부호화 모드로서 인트라 모드가 결정되어 인트라 예측을 수행하는 경우, 영상 부호화 장치(700)는 현재 매크로블록의 각 서브블록에서 임의 화소를 추출하여 임의 화소 블록을 생성하고(S1910), 임의 화소 블록을 예측하여 예측 임의 화소 블록을 생성하고, 임의 화소 블록과 예측 임의 화소 블록을 감산하여 임의 화소 잔차 블록을 생성한다(S1920).

    영상 부호화 장치(700)는 임의 화소 잔차 블록을 변환하고 변환된 임의 화소 잔차 블록을 양자화한 후 양자화된 임의 화소 잔차 블록을 역 양자화하고 역 양자화된 임의 화소 잔차 블록을 역 변환하며(S1930), 예측 임의 화소 블록과 역 변환된 임의 화소 잔차 블록을 가산하여 복원된 임의 화소 블록을 생성한다(S1940). 영상 부호화 장치(700)는 현재 매크로블록의 인접 화소들과 복원된 임의 화소 블록의 각 복원된 임의 화소를 이용하여 각 서브블록의 나머지 화소를 예측함으로써 예측 매크로블록을 생성하고 현재 매크로블록에서 예측 매크로블록을 감산하여 잔차 매크로블록을 생성한다(S1950).

    또한, 영상 부호화 장치(700)는 역 변환된 임의 화소 잔차 블록의 각 역 변환된 임의 잔차 화소를 잔차 매크로블록의 각 위치에 결합하며(S1960), 각 역 변환된 임의 잔차 화소가 결합된 잔차 매크로블록을 변환하고 변환된 잔차 매크로블록을 양자화하고 양자화된 잔차 매크로블록을 부호화함으로써 비트스트림을 생성한다(S1970).

    이후, 영상 부호화 장치(700)는 도 20에 도시한 바와 같이, 현재 매크로블록을 복원할 수 있다. 즉, 영상 부호화 장치(700)는 단계 S1960에서 양자화한 잔차 매크로블록을 역 양자화하고 역 양자화된 잔차 매크로블록을 역 변환하며(S2010), 역 변환된 잔차 매크로블록을 예측 매크로블록과 가산하여 복원된 현재 매크로블록을 생성하며(S2020), 복원된 임의 화소 블록의 각 복원된 임의 화소를 복원된 현재 매크로블록의 각 위치에 결합하여 최종적으로 복원된 현재 매크로블록을 생성한다(S2030).

    전술한 바와 같이, 영상 부호화 장치(700)에 의해 비트스트림으로 부호화된 영상은 실시간 또는 비실시간으로 인터넷, 근거리 무선 통신망, 무선랜망, 와이브로망, 이동통신망 등의 유무선 통신망 등을 통하거나 케이블, 범용 직렬 버스(USB: Universal Serial Bus) 등의 통신 인터페이스를 통해 후술할 영상 복호화 장치로 전송되어 영상 복호화 장치에서 복호화되어 영상으로 복원되고 재생될 수 있다.

    도 21은 본 발명의 일 실시예에 따른 영상 복호화 장치의 전자적인 구성을 간략하게 나타낸 블록 구성도이다.

    본 발명의 일 실시예에 따른 영상 복호화 장치(2100)는 영상을 복호화하는 장치로서, 복호화부(2102), 역 양자화부(2104), 계수 추출부(2106), 제 1 역 변환부(2108), 제 1 예측부(2110), 제 1 가산부(2112), 제 2 역 변환부(2114), 제 2 예측부(2116), 제 2 가산부(2118) 및 화소 결합부(2120)를 포함하여 구성될 수 있다.

    복호화부(2102)는 비트스트림을 복호화하여 잔차 매크로블록 및 예측 모드를 추출한다. 즉, 복호화부(2102)는 비트스트림을 복호화하여 양자화 주파수 계수열과 예측 모드를 추출하고, 양자화 주파수 계수열을 역 지그재그 스캔 등 다양한 역 스캐닝 방식으로 역 스캐닝하여 잔차 매크로블록을 생성한다,

    역 양자화부(2104)는 잔차 매크로블록을 역 양자화하고, 계수 추출부(2106)는 역 양자화된 잔차 매크로블록에서 각 서브블록의 임의 화소의 위치에 대응하는 주파수 계수를 추출한다. 여기서, 임의 화소의 위치에 대응하는 주파수 계수는 DC 성분의 주파수 계수가 될 수 있다.

    제 1 역 변환부(2108)는 계수 추출부(2106)에 의해 추출된 주파수 계수를 역 변환하여 역 변환된 임의 화소 잔차 블록을 생성한다. 제 1 역 변환부(2108)가 추출된 주파수 계수를 역 변환하는 방법은 도 7을 통해 전술한 제 1 역 변환부(714)가 역 변환하는 방식과 동일 또는 유사하므로 상세한 설명은 생략한다.

    제 1 예측부(2110)는 복호화부(2102)에서 추출된 예측 모드에 따른 예측 방향에 따라 임의 화소 블록을 예측하여 예측 임의 화소 블록을 생성한다. 제 1 예측부(2110)가 예측 방향에 따라 임의 화소 블록을 예측하는 방법은 도 7을 통해 전술한 제 1 예측부(704)가 예측하는 방식과 동일 또는 유사하므로 상세한 설명은 생략한다. 제 1 가산부(2112)는 예측 임의 화소 블록과 역 변환된 임의 화소 잔차 블록을 가산하여 복원된 임의 화소 블록을 생성한다.

    제 2 역 변환부(2114)는 역 양자화된 잔차 매크로블록을 역 변환하여 역 변환된 잔차 매크로블록을 생성한다. 제 2 역 변환부(2108)가 역 양자화된 잔차 매크로블록의 주파수 계수를 역 변환하는 방법은 도 7을 통해 전술한 제 2 역 변환부(724)가 역 변환하는 방식과 동일 또는 유사하므로 상세한 설명은 생략한다.

    제 2 예측부(2116)는 영상의 현재 매크로블록의 인접 화소 및 복원된 임의 화소 블록의 각 복원된 임의 화소를 이용하여 예측 모드에 따른 예측 방향에 따라 영상의 현재 매크로블록을 예측하여 예측 현재 매크로블록을 생성한다. 제 2 예측부(2116)가 영상의 현재 매크로블록의 인접 화소 및 복원된 임의 화소 블록의 각 복원된 임의 화소를 이용하여 예측 모드에 따른 예측 방향에 따라 영상의 현재 매크로블록을 예측하는 방법은 도 7을 통해 전술한 제 2 예측부(718)가 예측하는 방법과 동일 또는 유사하므로 상세한 설명은 생략한다.

    제 2 가산부(2118)는 예측 현재 매크로블록과 역 변환된 잔차 매크로블록을 이용하여 복원된 현재 매크로블록을 생성한다. 임의 화소 결합부(2120)는 복원된 임의 화소를 복원된 현재 매크로블록의 각 위치에 결합한다. 이와 같이, 결합된 현재 매크로블록이 최종으로 복원된 현재 매크로블록이 되며, 최종으로 복원된 현재 매크로블록이 픽처 단위로 결합되어 복원 영상으로서 출력된다. 또한, 최종으로 복원된 현재 매크로블록은 제 1 예측부(2110) 및 제 2 예측부(2116)에서 다음 매크로블록을 복호화할 때 활용된다.

    도 22는 본 발명의 일 실시예에 따른 영상 복호화 방법을 설명하기 위한 순서도이다.

    유무선 통신망 또는 케이블 등을 통해 영상에 대한 비트스트림을 수신하여 저장한 영상 복호화 장치(2100)는 사용자의 선택 또는 실행 중인 다른 프로그램의 알고리즘에 따라 영상을 재생하기 위해, 영상을 복호화하여 복원한다.

    이를 위해, 영상 복호화 장치(2100)는 비트스트림을 복호화하여 잔차 매크로 블록 및 예측 모드를 추출하고(S2210), 추출된 잔차 매크로블록을 역 양자화한다(S2220).

    영상 복호화 장치(2100)는 역 양자화된 잔차 매크로블록에서 각 서브블록의 임의 화소의 위치에 대응하는 주파수 계수를 추출하고(S2230), 추출된 주파수 계수를 역 변환하여 복원된 임의 화소 잔차 블록을 생성하며(S2240), 예측 모드에 따른 예측 방향에 따라 임의 화소 블록을 예측하여 예측 임의 화소 블록을 생성한다(S2250). 또한, 영상 복호화 장치(2100)는 단계 S2250에서 생성된 예측 임의 화소 블록과 단계 S2240에서 역 변환된 복원된 임의 화소 잔차 블록을 가산하여 복원된 임의 화소 블록을 생성한다(S2250).

    영상 복호화 장치(2100)는 역 양자화된 잔차 매크로블록을 역 변환하여 역 변환된 잔차 매크로블록을 생성하고(S2260), 영상의 현재 매크로블록의 인접 화소 및 복원된 임의 화소 블록의 각 복원된 임의 화소를 이용하여 예측 모드에 따른 예측 방향에 따라 영상의 현재 매크로블록을 예측하여 예측 현재 매크로블록을 생성한다(S2270). 영상 복호화 장치(2100)는 예측 현재 매크로블록과 역 변환된 잔차 매크로블록을 이용하여 복원된 현재 매크로블록을 생성하고(S2280), 각 복원된 임의 화소를 복원된 현재 매크로블록의 각 위치에 결합하여 복원 영상을 생성하여 출력한다(S2290).

    이하에서는 본 발명의 다른 실시예에 따른 영상 부호화 장치에 대해 설명한다. 본 발명의 다른 실시예에 따른 영상 부호화 장치는 도 7을 통해 전술한 본 발명의 일 실시예에 따른 영상 부호화 장치(700)와 그 구성 요소는 동일하지만, 그 구성 요소의 기능이 상이하다.

    즉, 본 발명의 일 실시예에 따른 영상 부호화 장치(700)는 현재 부호화하고자 하는 현재 매크로브록의 각 서브블록을 부호화하고 복호화하는 데 있어서, 모든 서브블록을 모두 부호화한 후 모든 서브블록을 복호화하여 현재 매크로블록 단위로 변환과 양자화를 수행한다. 하지만, 본 발명의 다른 실시예에 따른 영상 부호화 장치는 현재 매크로블록의 모든 서브블록을 부호화하고 복호화하는 데 있어서, 하나의 서브블록을 부호화하고 복호화한 후 다음 서브블록을 부호화하고 복호화하는 방식으로 모든 서브블록을 부호화하고 복호화한다. 따라서, 본 발명의 다른 실시예에 따르면, 변환과 양자화가 서브블록 단위로 이루어진다.

    도 23을 참조하면, 본 발명의 일 실시예에 따른 영상 부호화 장치(700)는 현재 매크로블록 내의 각 서브블록을 도시한 바와 같은 순서로 부호화를 완료한 후, 각 서브블록을 복호화한다. 즉, 본 발명의 일 실시예에 따른 영상 부호화 장치(700)는 1번 서브블록 내지 16번 서브블록을 현재 매크로블록의 인접 화소들과 각 서브블록의 복원된 임의 화소를 이용하여 순서대로 예측하고 감산한 후 매크로블록 단위로 변환하고 양자화하여 모든 서브블록을 부호화한 후 다시 양자화된 매크로블록을 역 양자화하고 역 변환한 후 변환된 잔차 매크로블록에서 예측된 각 서브블록을 감산하여 1번 서브블록 내지 16번 서브블록을 복호화한다.

    하지만, 본 발명의 다른 실시예에 따른 영상 부호화 장치는 제 2 예측부(718)가 1번 서브블록을 인접 화소와 복원된 임의 화소를 이용하여 예측하고, 제 2 감산부(720)에서 1번 서브블록에 대한 잔차 서브블록을 생성하며, 제 2 변환 부(724)에서 잔차 서브블록을 변환하고 제 2 양자화부(726)에서 변환된 잔차 서브블록을 양자화한다. 그리고 제 2 역 양자화부(730)는 양자화된 잔차 서브블록을 역 양자화하고, 제 2 역 변환부(732)는 역 양자화된 잔차 서브블록을 역 변환하여 예측된 예측 서브블록과 가산하여 1번 서브블록을 복원한다. 이후, 제 2 예측부(718)는 2번 서브블록을 예측하는데, 예측에 사용할 인접 화소는 현재 매클로블록의 인접 화소가 되는 것이 아니라 왼쪽의 인접 화소는 2번 서브블록과 인접해 있는 복원된 1번 서브블록의 인접 화소를 이용하고 위쪽의 인접 화소는 현재 매클로블록의 인접 화소가 되며, 이러한 인접 화소들과 2번 서브블록 내의 복원된 임의 화소를 이용하여 2번 서브블록을 예측한다. 예측된 2번 서브블록을 2번 서브블록과 감산하여 잔차 서브블록을 생성하고 변환하고 양자화한 후 역 양자화하고 역 변환하여 2번 서브블록을 복원한다. 이러한 과정을 도시한 순서대로 수행하여 각 서브블록을 부호화하는 데 복원된 각 서브블록을 이용한다.

    이러한 본 발명의 다른 실시예에 따른 영상 부호화 장치는, 영상의 현재 매크로블록의 각 서브블록에서 임의 화소를 추출하여 임의 화소 블록을 생성하고, 임의 화소 블록을 예측하여 예측 임의 화소 블록을 생성하여, 임의 화소 블록과 예측 임의 화소 블록을 감산하여 임의 화소 잔차 블록을 생성한 후, 임의 화소 잔차 블록을 변환하고 변환된 임의 화소 잔차 블록을 양자화하며, 양자화된 임의 화소 잔차 블록을 역 양자화하고 역 양자화된 임의 화소 잔차 블록을 역 변환하며, 예측 임의 화소 블록과 역 변환된 임의 화소 잔차 블록을 가산하여 복원된 임의 화소 블록을 생성한다. 그리고 각 서브블록의 인접 화소들 및 복원된 임의 화소 블록의 각 복원된 임의 화소를 이용하여 각 서브블록의 나머지 화소를 예측하여 각 예측 서브블록을 생성하고, 서브블록에서 각 예측 서브블록을 감산하여 각 잔차 서브블록을 생성하고, 역 변환된 임의 화소 잔차 블록의 각 역 변환된 임의 잔차 화소를 각 잔차 서브블록의 각 위치에 결합하며, 각 역 변환된 임의 잔차 화소가 결합된 각 잔차 서브블록을 변환하고 변환된 각 잔차 서브블록을 양자화한 후, 양자화된 각 잔차 서브블록을 부호화하여 비트스트림을 생성한다. 이때, 각 서브블록은 하나의 서브블록이 부호화되고 복호화된 후 다음 서브블록이 부호화되고 복호화된다.

    또한, 본 발명의 다른 실시예에 따른 영상 부호화 장치는 양자화된 각 잔차 서브블록을 역 양자화하고 역 양자화된 각 잔차 서브블록을 역 변환하며 역 변환된 각 잔차 서브 블록을 각 예측 서브블록과 가산하여 복원된 각 서브블록을 생성한 후, 복원된 임의 화소 블록의 각 복원된 임의 화소를 복원된 각 서브블록의 각 위치에 결합한다. 이때, 각 서브블록의 나머지 화소를 예측하는 데 있어서, 각 복원된 임의 화소가 결합된 각 서브블록을 저장하며 저장된 각 서브블록을 이용하여 다음 서브블록을 예측한다.

    또한, 본 발명의 다른 실시예에 따른 영상 부호화 장치는 현재 매크로블록의 예측 방향 또는 제 1 예측부(704)의 예측 방향을 이용하는 것이 아니라, 각 서브블록마다 예측 방향을 결정하여 결정된 예측 방향으로 각 서브블록의 나머지 화소를 예측할 수 있다. 이를 위해, 본 발명의 다른 실시예에 따른 영상 부호화 장치의 제 2 예측부(718)는 각 서브블록의 인접 화소들 중 각 복원된 임의 화소와의 값의 차이가 최소인 인접 화소에서 각 복원된 임의 화소를 향하는 방향을 예측 방향으로서 결정할 수 있다. 이 경우, 본 발명의 다른 실시예에 따른 제 2 예측부(718)는 각 서브블록에 대한 예측 방향에 따른 예측 모드에 대한 정보를 생성하여 부호화부(728)로 전달할 수도 있고 전달하지 않을 수 있다. 각 서브블록에 대한 예측 모드에 대한 정보가 부호화부(728)로 전달되는 경우, 부호화부(728)는 각 서브블록에 대한 예측 모드에 대한 정보를 부호화하여 비트스트림에 각 서브블록에 대한 예측 모드에 대한 정보가 포함되며, 영상 복호화 장치에서 각 서브블록을 예측할 때 예측 모드에 대한 정보를 이용하여 예측 방향을 동기화할 수 있다. 만일 각 서브블록에 대한 예측 모드에 대한 정보가 부호화되지 않을 때에는 영상 복호화 장치에서는, 영상 부호화 장치에서와 마찬가지로, 각 서브블록의 예측 방향을 결정하여 결정된 예측 방향으로 예측한다.

    도 24를 참조하면, 본 발명의 다른 실시예에 따른 제 2 예측부(718)는 제 1 예측부(704)의 예측 방향과는 별도로 서브블록의 왼쪽(V i )과 위쪽(H i )의 먼저 복원된 화소들과 복원된 임의 화소(X i ')를 비교하여 각 서브블록의 새로운 최적의 예측 방향을 결정한 후, 결정된 새로운 최적의 예측 방향에 따라 각 서브블록을 예측한다. 각 서브블록의 새로운 최적의 예측 방향을 방법은 임의 화소(X i )와 현재 매크로블록의 주위의 인접 화소(V 0 ~ V 3 , H 0 ~ H 7 )를 이용하여 모서리(Edge)의 방향을 예측함으로써 결정한다.

    예를 들어, X i 와 H 3 의 값이 가장 비슷하면 해당 서브블록의 최적의 예측 방 향은 수직 방향으로 결정되고, X i 와 V 3 의 값이 가장 비슷하면 해당 서브블록의 최적의 예측 방향은 수평방향으로 결정된다. DC예측 모드는 V 0 ~ V 3, H 0 ~ H 7 와 X i 값이 비슷할 때 결정된다. 대각선 왼쪽은 V 0 와 H 0 , V 1 과 H 1 , V 2 와 H 2 , V 3 와 H 3 및 H 7 과 X i 값이 비슷할 결정된다. 대각선 오른쪽 방향인 경우는 N과 X i 값이 비슷할 때 결정된다. 수직 오른쪽 방향인 경우는 H 1 과 X i 값이 비슷할 때 결정된다. 수평 아래쪽 방향인 경우는 V 2 과 X i 값이 비슷할 때 결정된다. 수직 왼쪽 방향인 경우는 H 5 과 X i 값이 비슷하고, H 0 과 V 1 , H 1 과 V 2 및 H 2 과 V 3 이 비슷할 때 결정된다. 수평 위쪽 방향인 경우는 H 1 과 V 0 , H 2 과 V 1 , H 3 과 V 2 및 H 4 과 V 3 이 비슷할 때 결정된다. 이와 같이, 본 발명의 다른 실시예에 따른 제 2 예측부(718)는 각 서브블록마다 최적의 예측 방향을 결정하여 예측함으로써 예측의 정확도를 높일 수 있다. 즉, 각 서브블록마다 복원된 임의 화소를 이용하여 나머지 화소를 예측하므로 복원된 임의 화소와 인접 화소들의 관계에 따라 기존의 예측 방법과는 달리 각 서브블록마다 최적의 예측 방향이 결정될 수 있으며, 이와 같은 예측 방향의 전환을 통해 부호화 및 복호화를 통한 압축 효율을 향상시킬 수 있다.

    여기서, 본 발명의 다른 실시예에 따른 영상 부호화 장치가 각 서브블록을 부호화하고 복호화하는 순서는 H.264/AVC의 인트라 4x4 매크로블록을 부호화하고 복호화하는 순서이거나 래스터(Raster) 스캔 방향일 수 있다. 도 23에 도시한 순서가 H.264/AVC 표준에서 인트라 4x4 매크로블록을 부호화하고 복호화하는 순서를 나 타낸 것이고, 도 25에서는 래스터 스캔 방향에 따른 각 서브블록의 부호화 복호화 순서를 나타낸 것이다. 도시한 바와 같이, 본 발명의 다른 실시예에 따른 영상 부호화 장치는 그 순서에 관계없이, 하나의 서브블록을 예측, 변환, 양자화, 역 양자화, 역 변환하여 복원한 후 다음 서브블록을 이전에 복원된 서브블록을 이용하여 예측, 변환, 양자화, 역 양자화, 역 변환하는 방식으로 각 서브블록을 부호화하고 복호화하는 것이다.

    도 26에는 각 서브블록의 나머지 화소를 복원된 임의 화소(X)와 인접 화소(H, V, N)를 이용하여 새롭게 결정된 최적의 예측 방향에 따라 예측하는 모습을 예시적으로 나타내었다. 본 발명의 다른 실시예에서는 도시한 바와 같은 방법으로 각 서브블록의 나머지 화소들을 예측한다.

    또한, 본 발명의 다른 실시예에 따른 영상 부호화 장치는 본 발명의 일 실시예에 따른 영상 부호화 장치(700)의 다른 특징들을 모두 포함한다. 즉, 본 발명의 다른 실시예에 따른 영상 부호화 장치의 제 1 변환부(708)는 임의 화소 잔차 블록의 각 임의 화소 잔차 신호만을 독립적으로 변환 및 역 변환할 수 있으며, 임의 화소 잔차 블록의 각 임의 화소 잔차 신호를 수정된 베이직 벡터를 이용하여 이산 코사인 변환을 수행함으로써 각 임의 화소 잔차 신호만을 독립적으로 변환할 수 있으며, 이산 코사인 변환을 수행한 후 하다마드 변환을 추가로 수행할 수 있다.

    또한, 본 발명의 다른 실시예에 따른 영상 부호화 장치의 제 1 역 변환부(714)는 각 임의 화소 잔차 신호가 변환된 주파수 계수를 수정된 베이직 벡터를 이용하여 역 이산 코사인 변환을 수행함으로써 각 임의 화소 잔차 신호만을 독립적 으로 역 변환할 수 있으며, 각 임의 화소 잔차 신호가 변환된 주파수 계수를 역 하다마드 변환한 후 역 이산 코사인 변환을 수행할 수 있다.

    또한, 본 발명의 다른 실시예에 따른 영상 부호화 장치의 제 2 변환부(724)는 이산 코사인 변환을 이용하여 4x4 블록 단위로 잔차 매크로블록을 변환하되, 이산 코사인 변환의 1차원 변환 방향의 순서에 따라 다른 베이직 벡터를 사용할 수 있다. 이때, 1차원 변환 방향의 순서는 제 1 예측부의 예측 방향에 따라 결정될 수 있다. 또한, 제 2 변환부(724)는 1차원 수평 변환을 수행한 후 1차원 수직 변환을 수행하는 경우에는, 각 4x4 블록의 제 1 행 내지 제 3 행은 기존 베이직 벡터를 이용하고 각 4x4 블록의 제 4 행은 수정된 베이직 벡터를 이용하여 1차원 수평 변환을 수행하며, 각 4x4 블록의 제 1 열은 수정된 베이직 벡터를 이용하고 각 4x4 블록의 제 2 열 내지 제 4 열은 수정된 베이직 벡터를 이용하여 1차원 수직 변환을 수행할 수 있으며, 1차원 수직 변환을 수행한 후 1차원 수평 변환을 수행하는 경우에는, 각 4x4 블록의 제 1 열 내지 제 3 열은 기존 베이직 벡터를 이용하고 각 4x4 블록의 제 4 열은 수정된 베이직 벡터를 이용하여 1차원 수직 변환을 수행하며, 각 4x4 블록의 제 1 행은 수정된 베이직 벡터를 이용하고 각 4x4 블록의 제 2 행 내지 제 4 행은 수정된 베이직 벡터를 이용하여 1차원 수평 변환을 수행할 수 있다.

    또한, 본 발명의 다른 실시예에 따른 영상 부호화 장치의 제 2 역 변환부(732)는 역 이산 코사인 변환을 이용하여 4x4 블록 단위로 주파수 계수를 역 변환하되, 역 이산 코사인 변환의 1차원 역 변환 방향의 순서에 따라 다른 베이직 벡터를 사용할 수 있으며, 제 2 변환부(724)의 1차원 변환 방향의 순서의 역 순으로 1차원 역 변환 방향의 순서를 결정할 수 있다. 또한, 제 2 역 변환부(732)는 1차원 수평 역 변환을 수행한 후 1차원 수직 역 변환을 수행하는 경우에는, 각 4x4 블록의 제 1 행은 수정된 베이직 벡터를 이용하고 각 4x4 블록의 제 2 행 내지 제 4 행은 기존 베이직 벡터를 이용하여 1차원 수평 역 변환을 수행하며, 각 4x4 블록의 제 1 열 내지 제 3 열은 기존 베이직 벡터를 이용하고 각 4x4 블록의 제 4 열은 수정된 베이직 벡터를 이용하여 1차원 수직 역 변환을 수행할 수 있으며, 1차원 수직 역 변환을 수행한 후 1차원 수평 역 변환을 수행하는 경우에는, 각 4x4 블록의 제 1 열은 수정된 베이직 벡터를 이용하고 각 4x4 블록의 제 2 열 내지 제 4 열은 기존 베이직 벡터를 이용하여 1차원 수직 역 변환을 수행하며, 각 4x4 블록의 제 1 행 내지 제 3 행은 기존 베이직 벡터를 이용하고 각 4x4 블록의 제 4 행은 수정된 베이직 벡터를 이용하여 1차원 수평 역 변환을 수행할 수 있다. 또한, 제 2 역 변환부(732)는 역 이산 코사인 변환을 이용하여 4x4 블록 단위로 주파수 계수를 역 변환하되, 기존 베이직 벡터를 사용할 수 있으며, 주파수 계수 중 일부의 주파수 계수와 각 복원된 임의 화소 중 일부의 화소를 이용하여 주파수 계수 중 나머지 주파수 계수를 예측할 수 있다.

    또한, 본 발명의 다른 실시예에 따른 제 1 예측부(704)는 현재 매크로블록의 인접 화소들을 저역 통과 필터링을 수행하고 다운 샘플링한 화소들을 이용하여 임의 화소 블록을 예측할 수 있으며, 현재 매크로블록의 예측 모드에 따른 예측 방향과 동일한 예측 방향으로 예측할 수도 있다.

    한편, 본 발명의 일 실시예에 따른 영상 부호화 장치와 본 발명의 다른 실시 예에 따른 영상 부호화 장치에서, 제 2 역 변환부(732)는 주파수 계수 중 일부의 주파수 계수와 각 복원된 임의 화소 중 일부의 화소를 이용하여 주파수 계수 중 나머지 주파수 계수를 예측할 수 있으며, 이를 통해 수정된 베이직 벡터를 사용하지 않고 기존 베이직 벡터를 사용하여 역 DCT 변환하면서도 임의 화소를 나머지 화소와 독립적으로 역 변환하도록 할 수 있다.

    이와 같은 2차원 역 변환에서는 제 2 역 변환부(732)에서 수정된 베이직 벡터가 아닌 도 5에 도시한 DCT 역 변환 베이직 벡터 즉, 기존 베이직 벡터를 사용하여 2차원 변환한다. 역 변환된 후에는 양자화된 주파수 계수를 DC 성분의 주파수 계수의 위치에 대입하여 전송한다.

    도 27 및 도 28은 본 발명의 일 실시예 및 다른 실시예에 따라 일부의 주파수 계수를 이용하여 나머지 주파수 계수를 예측하는 과정을 나타낸 예시도이다.

    제 2 변환부(724)에서 수평 방향으로 먼저 1차원 변환한 후 수직 방향으로 1차원 변환한 경우, 제 2 역 변환부(732)는 수학식 6을 통해 DC P 를 계산할 수 있다. 수학식 6은 도 5에 도시한 역 변환을 위한 기존 베이직 벡터를 이용하여 1차원 역 DCT 변환하기 위한 수학식이다.

    (1)에 나타낸 DC 00 는 제 1 변환부(708)에서 변환된 주파수 계수이고 나머지 AC 01 ~AC 33 의 주파수 계수들은 제 2 변환부(724)에서 변환된 후 주파수 계수들이고, 해당 서브블록의 복원된 임의 화소(X i ')가 (2)와 같다면, (3)과 같이 1번 내지 3번 열만을 세로 방향으로 1차원 역 DCT 변환을 수행하여 AC①, AC②, AC③를 구하고, (4)와 같이 AC①, AC②, AC③, 복원된 임의 화소(X i ')를 이용하여 DC P 를 계산한다.

    0.5×Coef① - 0.6533×Coef② + 0.5×Coef③ - 0.2706×Coef④ = X

    i "

    수학식 6을 Coef①에 대해 정리하면, 수학식 7을 도출할 수 있다.

    2×(- 0.6533×Coef② + 0.5×Coef③ - 0.2706×Coef④ - X

    i ") = Coef①

    여기서, Coef②, Coef③, Coef④가 각각 도 27 및 도 28에서의 AC①, AC②, AC③이고, Coef①가 DC P 이다.

    이후, (5)와 같이 AC 10 , AC 20 , AC 30 과 DCp를 가지고 DC 00 p를 계산한다. DC 00 p를 계산하는 방법은 전술한 DC P 를 계산하는 방법과 같다. 계산된 DC 00 p와 AC 10 , AC 20 , AC 30 를 이용하여, (6)과 같이 나머지 1번 열을 세로 방향으로 1차원 역 변환한다. 나머지 수평 방향의 1차원 역 변환도 도 5의 DCT 역변환 베이직 벡터 즉, 기존 베이직 벡터를 이용하여 (7)과 같이 역 변환하여 (8)과 같은 해당 서브블록의 복원된 화소가 출력된다. 이와 같은 방법을 사용하면 도 11과 같은 수정된 베이직 벡터를 이용할 때보다 AC 성분의 주파수 계수들의 값을 줄일 수 있다. 또한, 수정된 베이직 벡터가 아닌 기존 베이직 벡터를 이용하여 임의 화소를 서브블록의 나머지 화소 또는 나머지 화소의 주파수 계수들과 독립적으로 역 변환할 수 있다.

    이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합하 거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.

    또한, 이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재될 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥 상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.

    이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.

    이상에서 설명한 바와 같이 본 발명은 영상을 부호화하거나 복호화하는 장치 및 방법 분야에 적용되어, 현재 부호화하거나 복호화하고자 하는 블록의 화소를 인트라 예측할 때 예측의 정확도를 향상시켜 부호화 효율을 향상시키는 효과를 발생하는 매우 유용한 발명이다.

    도 1은 영상 부호화 장치의 전자적인 구성을 간략하게 나타낸 블록 구성도,

    도 2 및 도 3은 인트라 예측 모드를 나타낸 예시도,

    도 4 및 도 5는 DCT 변환 및 역 변환을 위한 베이직 벡터를 나타낸 예시도,

    도 6은 본 발명의 일 실시예에 따른 서브블록 내의 임의 화소를 나타낸 예시도,

    도 7은 본 발명의 일 실시예에 따른 영상 부호화 장치의 전자적인 구성을 간략하게 나타낸 블록 구성도,

    도 8는 현재 매클로블록에서 임의 화소 블록을 추출하는 모습을 나타낸 예시도,

    도 9는 현재 매크로블록의 인접 화소를 이용하여 임의 화소 블록을 예측하는 모습을 나타낸 예시도,

    도 10 및 도 11은 DCT 변환 및 역 변환을 위한 수정된 베이직 벡터를 나타낸 예시도,

    도 12 내지 도 15는 각 서브블록의 나머지 화소를 예측하는 모습을 나타낸 예시도,

    도 16는 2차원 DCT 변환을 위한 1차원 변환을 나타낸 예시도,

    도 17 및 도 18은 역 변환 방향의 순서에 따라 수정된 베이직 벡터를 이용하여 역 변환하는 과정을 나타낸 예시도,

    도 19는 본 발명의 일 실시예에 따른 영상 부호화 방법을 설명하기 위한 순 서도,

    도 20은 본 발명의 일 실시예에 따른 영상 부호화 방법에 따라 현재 매크로블록을 복원하는 과정을 나타낸 순서도이다.

    도 21은 본 발명의 일 실시예에 따른 영상 복호화 장치의 전자적인 구성을 간략하게 나타낸 블록 구성도,

    도 22는 본 발명의 일 실시예에 따른 영상 복호화 방법을 설명하기 위한 순서도,

    도 23은 본 발명의 다른 실시예에 따라 각 서브블록을 부호화하는 순서를 나타낸 예시도,

    도 24는 본 발명의 다른 실시에에 따라 각 서브블록의 예측 방향을 결정하는 모습을 나타낸 예시도,

    도 25는 래스터 스캔 방향에 따른 각 서브블록의 부호화 복호화 순서를 나타낸 예시도,

    도 26은 각 서브블록을 새롭게 결정된 최적의 예측 방향에 따라 예측하는 모습을 나타낸 예시도,

    도 27 및 도 28은 본 발명의 일 실시예 및 다른 실시예에 따라 일부의 주파수 계수를 이용하여 나머지 주파수 계수를 예측하는 과정을 나타낸 예시도이다.

    高效检索全球专利

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

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

    申请试用

    分析报告

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

    申请试用

    QQ群二维码
    意见反馈