KR20130026436A - 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법 및 화상 복호 방법 - Google Patents

화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법 및 화상 복호 방법 Download PDF

Info

Publication number
KR20130026436A
KR20130026436A KR1020127028411A KR20127028411A KR20130026436A KR 20130026436 A KR20130026436 A KR 20130026436A KR 1020127028411 A KR1020127028411 A KR 1020127028411A KR 20127028411 A KR20127028411 A KR 20127028411A KR 20130026436 A KR20130026436 A KR 20130026436A
Authority
KR
South Korea
Prior art keywords
image
predictive
predictive image
decoded
generating
Prior art date
Application number
KR1020127028411A
Other languages
English (en)
Other versions
KR101420957B1 (ko
Inventor
?이치 세키구치
유스케 이타니
가즈오 스기모토
요시히사 야마다
Original Assignee
미쓰비시덴키 가부시키가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 미쓰비시덴키 가부시키가이샤 filed Critical 미쓰비시덴키 가부시키가이샤
Publication of KR20130026436A publication Critical patent/KR20130026436A/ko
Application granted granted Critical
Publication of KR101420957B1 publication Critical patent/KR101420957B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

부호화 대상의 매크로 블록의 화상과 움직임 보상 예측부(2)에 의해 움직임 예측 모드 A로 생성된 예측 화상 A 사이의 차분 화상 A의 부호화 효율을 평가함과 아울러, 부호화 대상의 매크로 블록의 화상과 움직임 보상 예측부(2)에 의해 움직임 예측 모드 B로 생성된 예측 화상 B 사이의 차분 화상 B의 부호화 효율을 평가하여, 부호화 효율이 높은 쪽의 차분 화상을 선택하는 부호화 모드 판정부(4)를 마련하도록 구성한다.

Description

화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법 및 화상 복호 방법{IMAGE ENCODING DEVICE, IMAGE DECODING DEVICE, IMAGE ENCODING METHOD, AND IMAGE DECODING METHOD}
본 발명은, 화상 압축 부호화 기술이나 압축 화상 데이터 전송 기술 등에 이용되는 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법 및 화상 복호 방법에 관한 것이다.
예컨대, MPEG(Moving Picture Experts Group)나 'ITU-T H.26x' 등의 국제 표준 영상 부호화 방식에서는, 휘도 신호 16×16 화소와, 이 휘도 신호 16×16 화소에 대응하는 색차 신호 8×8 화소를 조합한 블록 데이터(이하, '매크로 블록'이라 함)를 1단위로 해서, 움직임 보상 기술이나 직교 변환/변환 계수 양자화 기술에 따라 압축하는 방법이 채용되고 있다.
움직임 보상 기술은, 비디오 프레임간에 존재하는 높은 상관을 이용해서 매크로 블록별로 시간 방향의 신호의 용장도(冗長度)(redundancy)를 삭감하는 기술이다.
즉, 움직임 보상 기술에서는, 이미 부호화가 완료된 부호화 완료 프레임을 참조 화상으로서 메모리에 축적하고, 이 메모리에 축적하고 있는 참조 화상 내의 소정의 탐색 범위 내에서, 움직임 보상 예측의 대상 블록인 현 매크로 블록과 가장 차분 전력이 작은 블록 영역을 탐색한다.
그리고, 가장 차분 전력이 작은 블록 영역의 공간 위치와 현 매크로 블록의 공간 위치의 변위를 움직임 벡터로서 부호화하는 기술이다.
상기 움직임 벡터는, 예측의 효율뿐만 아니라, 비디오 프레임간의 각 블록에 있어서의 국소적인 움직임을 나타내고 있는 경우도 많기 때문에, 최근, 이 움직임 벡터의 정보를 이용해서, 영상의 단위 시간당 프레임수(프레임 레이트)를 늘릴 목적으로, 보간 화상을 생성하는 기술이 개발되어 있다.
가장 단순한 모델로서는, 예컨대, 시간적으로 비디오 프레임 사이의 정중앙에 보간 화상을 생성할 때, 움직임 벡터의 값을 반으로 한 값을 보간 화상의 움직임 벡터로서 채용하고, 이 움직임 벡터를 이용해서, 전후의 프레임으로부터 움직임을 보상하는 방법이 있다.
이것은 비디오 프레임간의 움직임이 리니어인 것을 가정한 경우의 모델로, 비디오 프레임의 간격이 짧을수록 상기 가정이 성립되고, 또한 그 움직임 벡터가 작을수록 상기 가정이 성립되기 때문에, 어느 정도의 보간 화상을 작성하는 것이 가능하다.
단, 움직임 벡터는, 상술한 바와 같이, 비디오 프레임 사이의 각 블록에 있어서의 국소적인 움직임을 나타내고 있는 경우가 많지만, 실제로는 가장 차분 전력이 작은 블록 영역을 탐색하여 구해지는 것으로, 국소적인 움직임을 나타내지 않는 것도 있다.
이와 같은 경우, 보간 화상에 왜곡이 발생하고, 이 왜곡이 상당히 눈에 띄는 경우가 많기 때문에, '움직임을 정확하게 표현할 수 없는 움직임 벡터'를 어떻게 판정하고, 이들을 제외시키면서 원래의 움직임을 어디까지 정확하게 추정할 수 있는지가 중요하다.
예컨대, 이하의 비특허문헌 1이나 특허문헌 1에는, 범용의 영상 부호화 방식에 의해서 획득한 비트스트림으로부터 움직임 파라미터를 추출하고, 이 움직임 파라미터에 의존해서, 수신측에서의 재생 동영상의 프레임 레이트를 의사적으로 증가시키는 것을 목적으로 하는 프레임 보간 기술이 개시되어 있다.
일본 특허 공개 제 2009-188996호 공보
H.Sasai, S.Kondoh 및 S.Kadono, "Frame-rate Up-conversion using Reliable Analysis of Transmitted Motion Information". IEEE International Conference on Acoustic, Speech and Signal Processing(ICASSP) 2004, ITT-L1.5, 2004년 5월.
종래의 화상 부호화 장치는 이상과 같이 구성되어 있기 때문에, 수신측에서, 재생 동영상의 프레임 레이트를 의사적으로 증가시킴으로써, 어느 정도는 재생 동영상의 품질을 높일 수 있다. 그러나, 부호화 처리의 과정에서 충분한 부호화 품질이 얻어지도록, 최적의 부호화 제어를 실시하고 있는 것이 아니기 때문에, 수신측에서 얻어지는 재생 동영상의 품질 향상에는 한도가 있어, 재생 동영상의 품질의 최적성을 보증할 수 없다는 과제가 있었다.
본 발명은 상기와 같은 과제를 해결하기 위해서 이루어진 것으로, 수신측에서의 재생 화상의 품질을 높일 수 있는 화상 부호화 장치 및 화상 부호화 방법을 얻는 것을 목적으로 한다.
또한, 본 발명은, 화상 부호화 장치로부터 송신된 부호화 데이터로부터 품질이 높은 화상을 재생할 수 있는 화상 복호 장치 및 화상 복호 방법을 얻는 것을 목적으로 한다.
본 발명에 따른 화상 부호화 장치는, 블록의 움직임 벡터를 검출하는 움직임 검출 수단과, 움직임 검출 수단에 의해 검출된 움직임 벡터를 이용해서 제 1 예측 화상을 생성하는 제 1 예측 화상 생성 수단과, 움직임 검출 수단에 의해 검출된 움직임 벡터를 유지하는 메모리와, 메모리에 유지되는 움직임 벡터를 바탕으로 부호화 대상인 블록의 움직임 벡터를 생성하는 움직임 벡터 생성 수단과, 움직임 벡터 생성 수단에 의해 생성된 움직임 벡터를 이용해서 제 2 예측 화상을 생성하는 제 2 예측 화상 생성 수단과, 제 1 예측 화상 생성 수단에 의해 생성된 제 1 예측 화상과 부호화 대상인 블록의 차분 화상을 부호화함과 아울러, 제 1 예측 화상의 생성에 이용한 움직임 벡터를 부호화하는 부호화 수단과, 이 차분 화상의 국부 복호 화상을 생성하고, 이 국부 복호 화상을 제 1 예측 화상과 가산함으로써 국부 복호 화상을 생성하는 국부 복호 수단과, 제 2 예측 화상 생성 수단에 의해 생성된 제 2 예측 화상에 대해, 블록 경계에 대한 평활화 처리를 행하는 필터링 수단을 구비하되, 국부 복호 수단에 의해 얻어지는 블록의 제 1 국부 복호 화상이나, 필터링 수단에 의해 얻어지는 화상 중 어느 하나를, 하나 내지 복수의 블록으로 구성되는 소정 화상 영역 내의 국부 복호 화상으로서 선택하고, 그 선택 결과를 비트스트림에 다중하여 부호화 전송하도록 한 것이다.
본 발명에 의하면, 블록의 움직임 벡터를 검출하는 움직임 검출 수단과, 움직임 검출 수단에 의해 검출된 움직임 벡터를 이용해서 제 1 예측 화상을 생성하는 제 1 예측 화상 생성 수단과, 움직임 검출 수단에 의해 검출된 움직임 벡터를 유지하는 메모리와, 메모리에 유지되는 움직임 벡터를 바탕으로 부호화 대상인 블록의 움직임 벡터를 생성하는 움직임 벡터 생성 수단과, 움직임 벡터 생성 수단에 의해 생성된 움직임 벡터를 이용해서 제 2 예측 화상을 생성하는 제 2 예측 화상 생성 수단과, 제 1 예측 화상 생성 수단에 의해 생성된 제 1 예측 화상과 부호화 대상인 블록의 차분 화상을 부호화함과 아울러, 제 1 예측 화상의 생성에 이용한 움직임 벡터를 부호화하는 부호화 수단과, 그 차분 화상의 국부 복호 화상을 생성하고, 이 국부 복호 화상을 제 1 예측 화상과 가산함으로써 국부 복호 화상을 생성하는 국부 복호 수단과, 제 2 예측 화상 생성 수단에 의해 생성된 제 2 예측 화상에 대해, 블록 경계에 대한 평활화 처리를 행하는 필터링 수단을 구비하며, 국부 복호 수단에 의해 얻어지는 블록의 제 1 국부 복호 화상이나, 필터링 수단에 의해 얻어지는 화상 중 어느 하나를, 하나 내지 복수의 블록으로 구성되는 소정 화상 영역 내의 국부 복호 화상으로서 선택하고, 그 선택 결과를 비트스트림에 다중하여 부호화 전송하도록 구성했기 때문에, 수신측에서의 재생 화상의 품질을 높일 수 있다는 효과가 있다.
도 1은 본 발명의 실시예 1에 따른 화상 부호화 장치를 나타내는 구성도,
도 2는 픽쳐 타입에 따라 선택 가능한 움직임 예측 모드의 일례를 나타내는 설명도,
도 3은 시간 다이렉트 모드에 있어서의 다이렉트 벡터의 산출 방법을 나타내는 모식도,
도 4는 공간 다이렉트 모드에 의한 움직임 벡터의 추정 방법을 나타내는 모식도,
도 5는 오버랩 움직임 보상 처리를 나타내는 설명도,
도 6은 가변 길이 부호화부(11)로부터 출력되는 비트스트림을 나타내는 설명도,
도 7은 본 발명의 실시예 1에 따른 화상 복호 장치를 나타내는 구성도,
도 8은 본 발명의 실시예 1에 따른 화상 부호화 장치의 처리 내용을 나타내는 흐름도,
도 9는 본 발명의 실시예 1에 따른 화상 복호 장치의 처리 내용을 나타내는 흐름도,
도 10은 움직임 보상 예측부(2)에 의한 예측 화상 B의 생성 처리(부호화 완료 픽쳐 Ft -1, Ft +1에 대해, 시간적으로 정중앙에 있는 픽쳐 Ft를 스킵 픽쳐로 해서 부호화하는 경우의 생성 처리)의 일례를 나타내는 설명도,
도 11은 매크로 블록 X의 움직임 벡터 df(x,t)의 추정 내용을 나타내는 설명도,
도 12는 매크로 블록 내의 각 화소 위치에 따라 정의되는 가중 파라미터를 나타내는 설명도,
도 13은 매크로 블록 내의 각 화소 위치에 따라 정의되는 가중 파라미터를 나타내는 설명도이다.
이하, 본 발명의 실시예에 대해서 도면을 참조하면서 구체적으로 설명한다.
(실시예 1)
도 1은 본 발명의 실시예 1에 따른 화상 부호화 장치를 나타내는 구성도이다.
도 1의 화상 부호화 장치에서는, 입력 화상이 매크로 블록 단위(또는, 매크로 블록이 분할된 서브 매크로 블록 단위)로 분할되고, 매크로 블록 단위(또는, 서브 매크로 블록 단위)의 입력 화상이 움직임 보상 예측부(2) 및 감산기(3)에 입력된다. 부호화 처리는 매크로 블록별로 실행되는 것으로 하여, 입력 화상을 구성하는 모든 매크로 블록의 부호화 처리가 종료된 시점에, 상기 입력 화상의 부호화 처리가 종료되는 것으로 한다.
이하, 이 실시예 1에서는, 설명의 편의상, 매크로 블록 단위의 입력 화상이 움직임 보상 예측부(2) 및 감산기(3)에 입력되는 것으로 해서 설명한다. 움직임 보상 예측부(2) 및 감산기(3)에의 입력이 서브 매크로 블록 단위가 되는 경우, '매크로 블록'을 '서브 매크로 블록'으로 바꿔서 읽고, 하나의 매크로 블록의 처리는, 그 내부의 모든 서브 매크로 블록의 처리가 종료하는 것으로, 종료로 한다.
또한, 도 1의 화상 부호화 장치에서는, '매크로 블록별로 움직임 파라미터나 예측 잔차 정보의 부호화를 따르는 통상의 픽쳐 부호화를 행한다'인지, '스킵 픽쳐 부호화를 행한다'인지를 나타내는 픽쳐 부호화 방법 제어 정보(제어 정보)가 움직임 보상 예측부(2), 부호화 모드 판정부(4), 선택 스위치(7), 루프 필터(9) 및 가변 길이 부호화부(11)에 입력된다.
도 1에 있어서, 움직임 파라미터 메모리(1)는 예컨대, 부호화 완료 매크로 블록의 예측 파라미터(움직임 예측 모드, 움직임 벡터, 참조 화상의 식별 번호) 등을 저장하는 예컨대, RAM 등의 기록 매체이다.
움직임 보상 예측부(2)는 프레임 메모리(10)에 저장되어 있는 1 프레임 이상의 움직임 보상 예측용 참조 화상 중에서 실제로 예측에 이용하는 참조 화상을 선택하고, 입력 화상을 구성하고 있는 매크로 블록의 단위로, 움직임 보상 예측 처리를 실시함으로써 예측 화상을 생성하는 처리를 실시한다.
움직임 보상 예측부(2)는 예측 화상을 생성할 때의 예측 화상 생성 방식으로서, 제 1 예측 화상 생성 방식('움직임 예측 모드 A'에 의한 예측 화상 생성 방식)과, 제 2 예측 화상 생성 방식('움직임 예측 모드 B'에 의한 예측 화상 생성 방식)을 구비하고 있고, 움직임 예측 모드 A와 움직임 예측 모드 B에 의해서 예측 화상을 각각 생성한다.
움직임 예측 모드 A의 경우, 하나의 움직임 벡터는, 프레임 메모리(10)에 저장되어 있는 1 프레임 이상의 참조 화상 중 어느 하나를 선택하고, 상기 선택한 참조 화상 중에서, 움직임 보상 예측의 대상이 되는 매크로 블록의 화면내 위치를 기점으로 해서, 평행 이동 변위한 위치 중, 대상 매크로 블록의 화상 패턴을 더 잘 표현하는 블록을 특정함으로써 그 화면내 변위량으로서 구해진다. 즉, 움직임 벡터는, 그 산출에 이용한 참조 화상과 쌍으로 규정되기 때문에, 프레임 메모리(10)에 저장되어 있는 1 프레임 이상의 참조 화상 중 어느 참조 화상을 이용해서 산출되는지를 참조 화상 식별 번호에 의해서 지정한다. 움직임 보상 예측의 대상이 되는 매크로 블록에 대해 2개 이상의 움직임 벡터가 할당되는 경우에는, 각각의 움직임 벡터가 각각 어느 참조 화상을 이용해서 얻어지는지를, 개별적으로 참조 화상 식별 번호에 의해 지정한다. 한편, 움직임 보상 예측의 대상이 되는 매크로 블록에 대해 2개 이상의 움직임 벡터가 사용되는 경우에, 각각이 다른 참조 화상 식별 번호를 나타내고 있어도 되고, 그 중 몇 개가 같은 참조 화상 식별 번호여도 상관없다. 획득한 움직임 벡터 및 참조 화상 식별 번호를 이용해서 예측 화상 A를 생성한다(움직임 보상 예측의 대상이 되는 매크로 블록의 화면내 위치로부터, 그 움직임 벡터만큼 변이한 위치의 화상 영역을 이용해서, 예측 화상 A를 생성한다).
움직임 예측 모드 B의 경우, 움직임 파라미터 메모리(1)에 저장되어 있는 부호화 완료 매크로 블록의 예측 파라미터 부호화 대상의 매크로 블록의 추정 벡터를 생성하고, 이 추정 벡터를 이용한 움직임 보상 예측 처리를 실시하여 예측 화상 B를 생성한다.
단, 움직임 보상 예측부(2)는 픽쳐 부호화 방법 제어 정보가 '통상의 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 움직임 예측 모드 A와 움직임 예측 모드 B에 의해서, 예측 화상을 각각 생성하지만, '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 움직임 예측 모드 A를 사용하지 않고, 움직임 예측 모드 B만으로 예측 화상을 생성한다.
한편, 움직임 보상 예측부(2)는 예측 화상 생성 수단을 구성하고 있다.
감산기(3)는 부호화 대상의 매크로 블록의 화상과 움직임 보상 예측부(2)에 의해 움직임 예측 모드 A로 생성된 예측 화상 A의 차분을 구하여 차분 화상 A를 산출함과 아울러, 부호화 대상의 매크로 블록의 화상과 움직임 보상 예측부(2)에 의해 움직임 예측 모드 B로 생성된 예측 화상 B의 차분을 구하여 차분 화상 B를 산출하는 처리를 실시한다.
단, 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있는 경우, 예측 화상 A가 생성되지 않기 때문에, 부호화 대상의 매크로 블록의 화상과 움직임 예측 모드 A로 생성된 예측 화상 A의 차분을 구하여 차분 화상 A를 산출하는 처리는 행하지 않는다.
부호화 모드 판정부(4)는 부호화 대상의 매크로 블록의 화상과 움직임 예측 모드 A로 생성된 예측 화상 A 사이의 차분 화상 A의 부호화 효율을 평가함과 아울러, 부호화 대상의 매크로 블록과 움직임 예측 모드 B로 생성된 예측 화상 B 사이의 차분 화상 B의 부호화 효율을 평가하여, 가장 부호화 효율이 높은 차분 화상을 선택하는 처리를 실시한다.
또한, 부호화 모드 판정부(4)는 가장 부호화 효율이 높은 차분 화상을 나타내는 예측 차분 신호를 압축부(5)에 출력함과 아울러, 그 차분 화상에 관한 예측 화상의 생성에 사용되는 예측 파라미터(움직임 예측 모드(예측 화상 식별 정보), 움직임 벡터(또는 다이렉트 벡터), 참조 화상의 식별 번호)를 움직임 파라미터 메모리(1)에 저장하고, 또한 그 예측 파라미터(움직임 예측 모드(예측 화상 식별 정보), 움직임 벡터(차분 화상 A를 선택한 경우에만, 움직임 벡터를 예측 파라미터에 포함시키고, 차분 화상 B를 선택한 경우에는, 움직임 벡터를 예측 파라미터에 포함시키지 않는다), 참조 화상의 식별 번호)를 가변 길이 부호화부(11)에 출력하는 처리를 실시한다.
단, 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있는 경우, 예측 화상 A가 생성되지 않기 때문에, 차분 화상 A의 부호화 효율을 평가하는 처리는 행하지 않는다.
한편, 감산기(3) 및 부호화 모드 판정부(4)로 차분 화상 선택 수단이 구성되어 있다.
압축부(5)는 부호화 모드 판정부(4)로부터 출력된 예측 차분 신호에 관한 DCT(이산 코사인 변환) 처리를 실시함으로써 DCT 계수를 산출함과 아울러, 그 DCT 계수를 양자화하여, 양자화후의 DCT 계수인 압축 데이터를 국부 복호부(6) 및 가변 길이 부호화부(11)에 출력하는 처리를 실시한다.
한편, 압축부(5)는 양자화 수단을 구성하고 있다.
국부 복호부(6)는 압축부(5)로부터 출력된 압축 데이터를 역양자화하여 DCT 계수를 구하고, 그 DCT 계수에 관한 역 DCT(역이산 코사인 변환) 처리를 실시함으로써, 부호화 모드 판정부(4)로부터 출력된 예측 차분 신호에 상당하는 국부 복호 예측 차분 신호를 산출하는 처리를 실시한다.
선택 스위치(7)는 픽쳐 부호화 방법 제어 정보가 '통상의 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 국부 복호부(6)에 의해 산출된 국부 복호 예측 차분 신호를 선택하여 가산기(8)에 출력하고, 그 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 올 제로(all zero)값을 선택하여 가산기(8)에 출력하는 처리를 실시한다.
가산기(8)는 선택 스위치(7)에 의해 선택된 국부 복호 예측 차분 신호 또는 올 제로값을 움직임 보상 예측부(2)에 의해 생성된 예측 화상(가장 부호화 효율이 높은 차분 화상에 관한 예측 화상)을 나타내는 예측 신호에 가산함으로써, 국부 복호 화상을 나타내는 국부 복호 화상 신호를 생성하는 처리를 실시한다.
루프 필터(9)는 픽쳐 부호화 방법 제어 정보가 '통상의 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, DCT 블록 경계에 관한 블록 왜곡 제거 필터(디블로킹(deblocking) 필터)를 이용해서, 가산기(8)에 의해 생성된 국부 복호 화상에 포함되어 있는 부호화 왜곡을 보상하는 왜곡 보상 처리를 실시하고, 그 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 예측 화상의 움직임 벡터 할당 영역에 발생하는 블록 경계(움직임 예측 모드 B에서는, 매크로 블록 경계)의 불연속성을 완화하는 움직임 블록 경계 평활화 처리를 실시한다.
한편, 국부 복호부(6), 선택 스위치(7), 가산기(8) 및 루프 필터(9)로, 참조 화상 생성 수단이 구성되어 있다.
프레임 메모리(10)는 루프 필터(9)로부터 출력된 루프 필터 화상(필터 처리후의 국부 복호 화상)을 참조 화상으로서 저장하는 RAM 등의 기록 매체이다.
가변 길이 부호화부(11)는 압축부(5)로부터 출력된 압축 데이터(DCT 계수를 양자화할 때의 양자화 파라미터를 포함함), 부호화 모드 판정부(4)로부터 출력된 예측 파라미터 및 픽쳐 부호화 방법 제어 정보를 엔트로피 부호화하고, 그 부호화 결과를 나타내는 비트스트림(부호화 데이터)을 생성하며, 그 비트스트림을 출력하는 처리를 실시한다.
한편, 가변 길이 부호화부(11)는 가변 길이 부호화 수단을 구성하고 있다.
도 1에서는, 화상 부호화 장치의 구성 요소인 움직임 보상 예측부(2), 감산기(3), 부호화 모드 판정부(4), 압축부(5), 국부 복호부(6), 선택 스위치(7), 가산기(8), 루프 필터(9) 및 가변 길이 부호화부(11) 각각이 전용의 하드웨어(예컨대, CPU를 실장하고 있는 반도체 집적 회로, 또는, 원칩-마이크로컴퓨터 등)으로 구성되어 있는 것을 상정하고 있지만, 화상 부호화 장치가 컴퓨터로 구성되는 경우, 움직임 보상 예측부(2), 감산기(3), 부호화 모드 판정부(4), 압축부(5), 국부 복호부(6), 선택 스위치(7), 가산기(8), 루프 필터(9) 및 가변 길이 부호화부(11)의 처리 내용을 기술하고 있는 프로그램을 상기 컴퓨터의 메모리에 저장하고, 상기 컴퓨터의 CPU가 상기 메모리에 저장되어 있는 프로그램을 실행하도록 해도 된다.
도 8은 본 발명의 실시예 1에 따른 화상 부호화 장치의 처리 내용을 나타내는 흐름도이다.
도 7은 본 발명의 실시예 1에 따른 화상 복호 장치를 나타내는 구성도이다. 복호 처리는 매크로 블록별로 실행되는 것으로 하고, 복호 화상을 구성하는 모든 매크로 블록의 복호 처리가 종료된 시점에, 해당 복호 화상의 복호 처리가 종료되는 것으로 한다. 또한, 하나의 매크로 블록이 복수의 서브 매크로 블록으로 구성되는 경우, 하나의 매크로 블록의 복호 처리는, 그 내부의 모든 서브 매크로 블록의 복호 처리가 종료되는 것으로, 종료로 한다. 이하에서는, 설명의 편의상, 부호화 장치측에 맞춰서 '매크로 블록'을 처리 단위로서 설명을 하지만, '매크로 블록'을 '서브 매크로 블록'으로 바꿔서 읽음으로써, 서브 매크로 블록에 대한 복호 처리로서 설명 가능하다.
도 7에 있어서, 움직임 파라미터 메모리(21)는 예컨대 복호 완료 매크로 블록(또는, 복호 완료 서브 매크로 블록)의 예측 파라미터(움직임 예측 모드, 움직임 벡터, 참조 화상의 식별 번호) 등을 저장하는 예컨대 RAM 등의 기록 매체이다.
가변 길이 복호부(22)는 도 1의 화상 부호화 장치로부터 출력된 비트스트림(부호화 데이터)을 입력하고, 그 비트스트림으로부터 압축 데이터(DCT 계수를 양자화할 때의 양자화 파라미터를 포함함), 예측 파라미터(움직임 예측 모드(예측 화상 식별 정보), 움직임 벡터(도 1의 부호화 모드 판정부(4)에 의해 차분 화상 A가 선택되어 있는 경우, 움직임 벡터가 예측 파라미터에 포함되어 있지만, 차분 화상 B가 선택되어 있는 경우에는, 움직임 벡터는 예측 파라미터에 포함되어 있지 않다), 참조 화상의 식별 번호) 및 픽쳐 부호화 방법 제어 정보를 엔트로피 복호하고, 그 압축 데이터를 예측 오차 복호부(23)에 출력하며, 그 예측 파라미터를 움직임 보상부(24)에 출력하고, 그 픽쳐 부호화 방법 제어 정보를 움직임 보상부(24), 선택 스위치(25) 및 루프 필터(27)에 출력하는 처리를 실시한다. 한편, 가변 길이 복호부(22)는 가변 길이 복호 수단을 구성하고 있다.
예측 오차 복호부(23)는 가변 길이 복호부(22)으로부터 출력된 압축 데이터를 역양자화하여 DCT 계수를 구하고, 그 DCT 계수에 관한 역 DCT 처리를 실시함으로써, 차분 화상을 나타내는 예측 오차 신호 복호값(도 1의 부호화 모드 판정부(4)로부터 출력된 예측 차분 신호에 상당하는 신호)을 산출하는 처리를 실시한다. 한편, 예측 오차 복호부(23)는 역양자화 수단을 구성하고 있다.
움직임 보상부(24)는 프레임 메모리(28)에 저장되어 있는 1 프레임 이상의 참조 화상 중에서, 가변 길이 복호부(22)로부터 출력된 예측 파라미터 내의 식별 번호가 나타내는 참조 화상을 판독하고, 가변 길이 복호부(22)로부터 출력된 픽쳐 부호화 방법 제어 정보가 '통상의 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 가변 길이 복호부(22)로부터 출력된 예측 파라미터 내의 움직임 예측 모드 및 움직임 벡터와 상기 참조 화상을 이용하는 움직임 보상 처리를 실시함으로써, 예측 화상 A를 생성하는 처리를 실시한다.
한편, 가변 길이 복호부(22)로부터 출력된 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 움직임 파라미터 메모리(21)에 저장된 복호 완료 매크로 블록의 움직임 벡터로부터 복호 대상의 매크로 블록의 추정 벡터를 생성하고, 그 추정 벡터를 이용하는 움직임 보상 처리를 실시하여 예측 화상 B를 생성하는 처리를 실시한다.
한편, 움직임 보상부(24)는 예측 화상 생성 수단을 구성하고 있다.
선택 스위치(25)는 가변 길이 복호부(22)로부터 출력된 픽쳐 부호화 방법 제어 정보가 '통상의 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 예측 오차 복호부(23)에 의해 산출된 예측 오차 신호 복호값을 선택하여 가산기(26)에 출력하고, 그 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 올 제로값을 선택하여 가산기(26)에 출력하는 처리를 실시한다.
가산기(26)는 선택 스위치(25)에 의해 선택된 국부 복호 예측 차분 신호 또는 올 제로값을 움직임 보상부(24)에 의해 생성된 예측 화상을 나타내는 예측 신호에 가산함으로써, 복호 화상을 나타내는 복호 화상 신호를 생성하는 처리를 실시한다.
루프 필터(27)는 가변 길이 복호부(22)로부터 출력된 픽쳐 부호화 방법 제어 정보가 '통상의 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, DCT 블록 경계에 관한 블록 왜곡 제거 필터(디블로킹 필터)를 이용해서, 가산기(26)에 의해 생성된 복호 화상에 포함되어 있는 부호화 왜곡을 보상하는 왜곡 보상 처리를 실시하고, 그 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 예측 화상의 움직임 벡터 할당 영역에 발생하는 블록 경계(움직임 예측 모드 B에서는, 매크로 블록 경계)의 불연속성을 완화하는 움직임 블록 경계 평활화 처리를 실시한다.
한편, 선택 스위치(25), 가산기(26) 및 루프 필터(27)로부터 복호 화상 생성 수단이 구성되어 있다.
프레임 메모리(28)는 루프 필터(27)로부터 출력된 재생 화상(필터 처리 이후의 복호 화상)을 참조 화상으로서 저장하는 RAM 등의 기록 매체이다.
도 7에서는, 화상 복호 장치의 구성 요소인 가변 길이 복호부(22), 예측 오차 복호부(23), 움직임 보상부(24), 선택 스위치(25), 가산기(26) 및 루프 필터(27) 각각이 전용의 하드웨어(예컨대, CPU를 실장하고 있는 반도체 집적 회로, 또는, 원칩 마이크로컴퓨터 등)으로 구성되어 있는 것을 상정하고 있지만, 화상 복호 장치가 컴퓨터로 구성되는 경우, 가변 길이 복호부(22), 예측 오차 복호부(23), 움직임 보상부(24), 선택 스위치(25), 가산기(26) 및 루프 필터(27)의 처리 내용을 기술하고 있는 프로그램을 상기 컴퓨터의 메모리에 저장하고, 상기 컴퓨터의 CPU가 상기 메모리에 저장되어 있는 프로그램을 실행하도록 해도 된다.
도 9는 본 발명의 실시예 1에 따른 화상 복호 장치의 처리 내용을 나타내는 흐름도이다.
다음으로 동작에 대해서 설명한다.
먼저, 화상 부호화 장치의 처리 내용을 설명한다.
움직임 보상 예측부(2)는, 지정되는 픽쳐 타입에 따라 선택 가능한 모든 움직임 예측 모드(매크로 블록 혹은 서브 블록 내에서의 움직임 벡터 할당 패턴)에 대해, 각각 예측 화상을 생성한다.
도 2는 픽쳐 타입에 따라 선택 가능한 움직임 예측 모드의 일례를 나타내는 설명도이다.
도 2에 있어서, mc_mode0는 매크로 블록(M×L 화소 블록) 전체에 대해, 하나의 움직임 벡터를 할당하는 모드이다.
mc_mode1는 매크로 블록을 수평 방향으로 등분배하고, 분할한 좌우의 서브 블록에 대해, 각각 다른 움직임 벡터를 할당하는 모드이다.
mc_mode2는 매크로 블록을 수직 방향으로 등분배하고, 분할한 상하의 서브 블록에 대해, 각각 다른 움직임 벡터를 할당하는 모드이다.
mc_mode3는 매크로 블록을 4분할하고, 분할한 4개의 서브 블록에 대해, 각각 다른 움직임 벡터를 할당하는 모드이다. mc_mode3에 있어서의 매크로 블록을 4분할한 단위가 서브 매크로 블록이 되고, 서브 매크로 블록은, 또한 mc_mode0~mc_mode3와 같은 분할을 행하여 움직임 벡터 할당이 가능하다. 매크로 블록의 크기가 충분히 큰 경우(예컨대, 32×32 화소 블록이나 64×64 화소 블록 등), 서브 매크로 블록은 16×16 화소 블록에 대응하기 때문에, 이를 더 미세하게 분할함으로써 트리 구조의 계층 분할 구조를 취하도록 구성해도 된다. 본 실시예 1의 부호화 장치·복호 장치는, 이와 같은 서브 매크로 블록 구조에 대해서도 대응 가능하다.
단, 이 실시예 1에서는, 움직임 보상 예측부(2)가, 예측 화상을 생성할 때의 예측 화상 생성 방식으로서, 매크로 블록에 대해 하나의 움직임 벡터가 할당되는 도 2의 mc_mode0 상당의 케이스로 한정하고, 움직임 예측 모드 A에 의한 예측 화상 생성 방식과, 움직임 예측 모드 B를 이용하는 예에 대해서 설명한다. 상기와 같은 서브 매크로 블록의 계층 분할 구조에 대응하는 경우에는, 움직임 예측 모드 A, 움직임 예측 모드 B도, 개개의 움직임 벡터 할당 단위 블록에 대해 적용하면 바람직하다.
움직임 보상 예측부(2)는, 입력된 픽쳐 부호화 방법 제어 정보가 '통상의 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면(도 8의 스텝 ST1), 움직임 예측 모드 A에 의해서 예측 화상 A를 생성함과 아울러, 움직임 예측 모드 B에 의해서 예측 화상 B를 생성한다(스텝 ST2).
한편, 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면(스텝 ST1), 움직임 예측 모드 A에서는 예측 화상 A를 생성하지 않고, 움직임 예측 모드 B에 의해서 예측 화상 B를 생성한다(스텝 ST3).
(1) 움직임 예측 모드 A에 의한 예측 화상 A의 생성
움직임 보상 예측부(2)는, 프레임 메모리(10)에 저장되어 있는 1 프레임 이상의 움직임 보상 예측용 참조 화상 중에서 1 프레임의 참조 화상을 선택하여, 부호화 대상의 매크로 블록과 참조 화상의 사이에서 움직임 벡터를 탐색한다(참조 화상 상의 소정의 움직임 탐색 범위 내에서 움직임 벡터를 탐색한다).
그리고, 이 움직임 벡터를 이용하는 움직임 보상 예측 처리를 실시하여 예측 화상 A를 생성한다(부호화 대상의 매크로 블록의 화면내 위치로부터, 이 움직임 벡터만큼 변이한 위치의 화상 영역을 이용해서, 예측 화상 A를 생성한다).
(2) 움직임 예측 모드 B에 의한 예측 화상 B의 생성
움직임 보상 예측부(2)는, 움직임 파라미터 메모리(1)에 의해 저장되어 있는 부호화 완료 매크로 블록의 움직임 벡터로부터 부호화 대상의 매크로 블록의 추정 벡터를 생성하고, 그 추정 벡터를 이용하는 움직임 보상 예측 처리를 실시하여 예측 화상 B를 생성한다.
움직임 예측 모드 B에서는 예컨대, MPEG-4 비주얼(ISO/IEC 14496-2)이나, MPEG-4 AVC/ITU-T H.264(이하, 'AVC'라고 함) 등의 표준 부호화 방식에서 채용되는 다이렉트 예측에 의한 예측 화상 생성 방식을 이용할 수 있다.
AVC의 다이렉트 예측에 의한 예측 화상 생성 방식은, 하나의 움직임 벡터 할당 가능 블록에 대해 최대 2개의 움직임 벡터를 이용한 예측이 가능한 B 픽쳐에서 이용할 수 있고, 시간 다이렉트 모드와 공간 다이렉트 모드 두 가지가 준비되어 있다.
시간 다이렉트 모드는, 이미 부호화 완료 다른 픽쳐의 움직임 벡터를 참조하여, 부호화 완료 픽쳐와 부호화 대상 픽쳐 사이의 시간차에 따라 움직임 벡터의 스케일링 처리를 행함으로써 부호화 대상의 매크로 블록에서 이용하는 움직임 벡터(다이렉트 벡터)를 산출하는 것이다.
한편, 공간 다이렉트 모드는, 부호화 대상의 매크로 블록 주위에 위치하고 있는 적어도 하나 이상의 부호화 완료 매크로 블록의 움직임 벡터를 참조하여, 부호화 대상의 매크로 블록으로 이용하는 움직임 벡터(다이렉트 벡터)를 산출하는 것이다.
AVC의 다이렉트 예측에서는, 시간 다이렉트 모드 또는 공간 다이렉트 모드 중 어느 하나를 슬라이스 단위로 선택한다.
여기서, 도 3은 시간 다이렉트 모드에 있어서의 다이렉트 벡터의 산출 방법을 나타내는 모식도이다.
도 3에 있어서, 'P'는 P 픽쳐를 나타내고, 'B'는 B 픽쳐를 나타내고 있다. P 픽쳐는, 하나의 움직임 벡터 할당 가능 블록에 대해 하나의 움직임 벡터를 이용한 예측이 가능한 픽쳐이다.
또한, 숫자 0-3은 픽쳐의 표시 순서를 나타내고, 시간 T0, T1, T2, T3의 표시 화상인 것을 나타내고 있다.
픽쳐의 부호화 처리는, P0, P3, B1, B2의 순서로 실시되는 것으로 한다.
예컨대, 픽쳐 B2 중의 매크로 블록 MB1을 시간 다이렉트 모드로 부호화하는 경우를 상정한다.
이 경우, 픽쳐 B2의 시간축상 후방에 있는 부호화 완료 픽쳐 중, 픽쳐 B2에 가장 가까운 픽쳐 P3의 움직임 벡터로서, 매크로 블록 MB1과 공간적으로 같은 위치에 있는 매크로 블록 MB2의 움직임 벡터 MV를 이용한다.
이 움직임 벡터 MV는 픽쳐 P0를 참조하고 있으며(움직임 벡터 MV는 픽쳐 P0를 참조 화상으로서 탐색한 결과의 움직임 벡터이다), 매크로 블록 MB1을 부호화할 때에 이용하는 움직임 벡터 MVL0, MVL1는, 이하의 식 (1)로 구해진다.
Figure pct00001
따라서, 시간 다이렉트 모드로, 부호화 대상의 매크로 블록의 움직임 벡터를 구하기 위해서는, 부호화 완료 픽쳐의 움직임 벡터 MV를 1화면만큼 필요로 하기 때문에, 그 움직임 벡터 MV를 유지하는 움직임 파라미터 메모리(1)가 필요하게 된다.
움직임 파라미터 메모리(1)에 대한 움직임 벡터의 저장은, 도 3에 나타낸 바와 같이, P 픽쳐 혹은, 그 이후의 움직임 보상 예측에 참조 화상으로서 이용하는 픽쳐를 부호화했을 때에, 그 부호화에 이용한 움직임 벡터를 1화면만큼 순차적으로 저장한다.
도 4는 공간 다이렉트 모드에 의한 움직임 벡터의 추정 방법을 나타내는 모식도이다.
도 4에 있어서, current MB는, 부호화 대상의 매크로 블록을 나타내고 있다.
이 때, 부호화 대상의 매크로 블록 좌측의 부호화 완료 매크로 블록 A의 움직임 벡터를 MVa, 부호화 대상의 매크로 블록 상측의 부호화 완료 매크로 블록 B의 움직임 벡터를 MVb, 부호화 대상의 매크로 블록의 우상측의 부호화 완료 매크로 블록 C의 움직임 벡터를 MVc라고 하면, 하기의 식 (2)에 나타낸 바와 같이, 이들 움직임 벡터 MVa, MVb, MVc의 미디언(median)(중앙값)을 구함으로써, 부호화 대상의 매크로 블록의 움직임 벡터 MV를 추정할 수 있다.
Figure pct00002
한편, 공간 다이렉트 모드의 경우에도, 부호화 완료 매크로 블록의 움직임 벡터 MV 등을 움직임 파라미터 메모리(1)에 유지해 둘 필요가 있다.
이하, 이 실시예 1에서는, 움직임 예측 모드 B로서, 이 AVC의 다이렉트 예측 모드를 상정한다.
감산기(3)는, 움직임 보상 예측부(2)로부터 움직임 예측 모드 A, B로 생성된 예측 화상 A, B를 받으면, 부호화 대상의 매크로 블록의 화상으로부터 예측 화상 A를 감산하고, 그 감산 결과인 차분 화상 A를 나타내는 예측 차분 신호를 부호화 모드 판정부(4)에 출력한다. 또한, 부호화 대상의 매크로 블록의 화상으로부터 예측 화상 B를 감산하고, 그 감산 결과인 차분 화상 B를 나타내는 예측 차분 신호를 부호화 모드 판정부(4)에 출력한다(스텝 ST4).
단, 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있는 경우, 차분 화상을 산출하는 처리는 행하지 않는다.
부호화 모드 판정부(4)는, 픽쳐 부호화 방법 제어 정보가 '통상의 픽쳐 부호화를 행한다'는 취지를 나타내고 있는 경우, 감산기(3)로부터 출력된 차분 화상 A, B를 나타내는 예측 차분 신호를 이용해서, 그 차분 화상 A, B의 부호화 효율의 평가값으로서, 레이트 왜곡 코스트 J를 산출한다(스텝 ST5).
Figure pct00003
단, 'λ'은 양(正)의 정수이다.
'D'는 차분 화상 A를 나타내는 예측 차분 신호 또는 차분 화상 B를 나타내는 예측 차분 신호의 매크로 블록내 절대값의 합, 또는 차분 화상 A를 나타내는 예측 차분 신호 또는 차분 화상 B를 나타내는 예측 차분 신호가 압축부(5)에 출력되었을 때, 국부 복호부(6)로부터 출력되는 국부 복호 예측 차분 신호로 입력된 매크로 블록의 화상 사이의 자승 왜곡 합 등이 이용된다.
'R'은 차분 화상 A를 나타내는 예측 차분 신호 또는 차분 화상 B를 나타내는 예측 차분 신호와, 그들의 예측 차분 신호에 대응하는 예측 파라미터가 부호화된 경우의 부호량(또는, 그 추정값)이 이용된다.
부호화 모드 판정부(4)는, 차분 화상 A, B의 부호화 효율의 평가값으로서, 레이트 왜곡 코스트 J를 산출하면, 레이트 왜곡 코스트 J가 작은 쪽의 차분 화상을 선택하고, 이 차분 화상을 나타내는 예측 차분 신호를 압축부(5)에 출력한다(스텝 ST6).
예컨대, 차분 화상 A의 레이트 왜곡 코스트 J가 작은 경우, 이 차분 화상 A를 나타내는 예측 차분 신호를 압축부(5)에 출력하고, 움직임 예측 모드 A에 의한 예측 화상 A의 생성에서 이용된 예측 파라미터(움직임 예측 모드 A, 움직임 벡터, 참조 화상의 식별 번호)를 움직임 파라미터 메모리(1)에 저장함과 아울러, 그 예측 파라미터를 가변 길이 부호화부(11)에 출력한다.
차분 화상 B의 레이트 왜곡 코스트 J가 작은 경우, 이 차분 화상 B를 나타내는 예측 차분 신호를 압축부(5)에 출력하고, 움직임 예측 모드 B에 의한 예측 화상 B의 생성에서 사용된 예측 파라미터(움직임 예측 모드 B, 다이렉트 벡터, 참조 화상의 식별 번호)를 움직임 파라미터 메모리(1)에 저장함과 아울러, 그 예측 파라미터(움직임 예측 모드 B, 참조 화상의 식별 번호)를 가변 길이 부호화부(11)에 출력한다.
한편, 부호화 모드 판정부(4)는, 움직임 예측 모드 B로 생성된 예측 화상 B로부터 산출된 차분 화상 B를 나타내는 예측 차분 신호의 전력이 제로가 되지 않는 경우, DCT 처리나 양자화 처리에 의해서 얻어지는 비제로 변환 계수(압축 데이터)를 부호화하기 위해서, 그 예측 차분 신호를 압축부(5)에 출력한다.
부호화 모드 판정부(4)는, 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있는 경우, 항상 제로값의 예측 차분 신호를 출력한다.
즉, 부호화 모드 판정부(4)는, 감산기(3)로부터 출력된 차분 화상 B를 나타내는 예측 차분 신호의 전력이 제로가 되지 않는 경우에도, 그 예측 차분 신호를 강제적으로 제로값으로 치환하여, 제로값의 예측 차분 신호를 압축부(5)에 출력한다(스텝 ST7). 또는, 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있는 경우, 부호화 모드 판정부(4)는 처리를 스킵하도록 하여, 압축부(5) 및 국부 복호부(6)가 올 제로의 예측 차분 신호를 내부적으로 생성하도록 구성해도 된다.
또한, 움직임 예측 모드 B에 의한 예측 화상 B의 생성에 이용된 예측 파라미터(움직임 예측 모드 B, 다이렉트 벡터, 참조 화상의 식별 번호)를 움직임 파라미터 메모리(1)에 저장한다.
픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있는 경우의 각 매크로 블록의 레이트 왜곡 코스트 J는, 예측 차분 신호를 강제적으로 제로값화한 결과로서 얻어지는 왜곡이 산출되고, 비용 J는 예측 차분 신호를 강제적으로 제로값화한 결과로서 얻어지는 왜곡을 나타내는 'D'와 거의 같은 값이 된다. 또한, 'R'에 대해서는, 상술한 바와 같이, 예측 차분 신호와 예측 파라미터가 부호화된 경우의 부호량이 사용되지만, 움직임 파라미터 메모리(1)에 의해 저장되어 있는 부호화 완료 매크로 블록의 움직임 벡터를 참조하여(화상 복호 장치라면 움직임 파라미터 메모리(21)에 의해 저장되어 있는 복호 완료 매크로 블록의 움직임 벡터를 참조한다), AVC의 다이렉트 예측의 순서로 다이렉트 벡터가 산출되기 때문에, 예측 파라미터의 부호량은 제로로 간주된다. 또한, 예측 차분 신호의 부호량도, 그 예측 차분 신호가 강제적으로 제로값화되어 있기 때문에 제로로 간주된다.
이 때문에, 부호화 대상의 매크로 블록의 부호화에 요하는 부호량은 제로로 간주되고, 비용 J는 'D'와 거의 같은 값이 된다.
압축부(5)는, 부호화 모드 판정부(4)로부터 예측 차분 신호를 받으면, 그 예측 차분 신호에 대한 DCT 처리를 실시함으로써 DCT 계수를 산출함과 아울러, 그 DCT 계수를 양자화하고, 양자화 이후의 DCT 계수인 압축 데이터(DCT 계수를 양자화할 때의 양자화 파라미터를 포함한다)를 국부 복호부(6) 및 가변 길이 부호화부(11)에 출력한다(스텝 ST8).
단, 압축부(5)는, 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있는 경우, 부호화 모드 판정부(4)로부터 올 제로값의 예측 차분 신호가 주어지기 때문에, 처리를 스킵하도록 구성해도 된다(스텝 ST9). 혹은, 픽쳐 부호화 방법 제어 정보를 받아서, 자신이 강제적으로 제로값을 출력하도록 해도 된다.
국부 복호부(6)은, 압축부(5)로부터 압축 데이터를 받으면, 그 압축 데이터에 포함되어 있는 양자화 파라미터를 이용해서, 그 압축 데이터를 역양자화하여 DCT 계수를 구하고, 이 DCT 계수에 관한 역 DCT 처리를 실시함으로써, 부호화 모드 판정부(4)로부터 출력된 예측 차분 신호에 상당하는 국부 복호 예측 차분 신호를 산출한다(스텝 ST8).
단, 국부 복호부(6)은, 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있는 경우, 압축부(5)로부터 올 제로값의 압축 데이터가 주어지기 때문에, 처리를 스킵하도록 구성해도 된다(스텝 ST9). 또는, 픽쳐 부호화 방법 제어 정보를 받아서, 자신이 강제적으로 제로값을 출력하도록 해도 된다.
선택 스위치(7)는, 픽쳐 부호화 방법 제어 정보가 '통상의 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 국부 복호부(6)에 의해 산출된 국부 복호 예측 차분 신호를 선택하여 가산기(8)에 출력한다.
한편, 그 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 올 제로값을 선택하여 가산기(8)에 출력한다(스텝 ST9).
가산기(8)는, 선택 스위치(7)에 의해 선택된 국부 복호 예측 차분 신호 또는 올 제로값과, 움직임 보상 예측부(2)에 의해 생성된 예측 화상(가장 부호화 효율이 높은 차분 화상에 관한 예측 화상)을 나타내는 예측 신호를 가산함으로써, 국부 복호 화상을 나타내는 국부 복호 화상 신호를 생성한다(스텝 ST8, ST9).
루프 필터(9)는, 픽쳐 부호화 방법 제어 정보가 '통상의 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, DCT 블록 경계에 관한 블록 왜곡 제거 필터(디블로킹 필터)를 이용해서, 가산기(8)에 의해 생성된 국부 복호 화상에 포함되어 있는 부호화 왜곡을 보상하는 왜곡 보상 처리를 실시한다(스텝 ST10).
한편, 그 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 가산부(8)로부터 예측 화상이 루프 필터(9)에 직접 입력되기 때문에, 예측 화상의 움직임 벡터 할당 영역에 발생하는 블록 경계(움직임 예측 모드 B에서는, 매크로 블록 경계)의 불연속성을 완화하는 움직임 블록 경계 평활화 처리를 실시한다(스텝 ST11).
프레임 메모리(10)에는, 루프 필터(9)로부터 출력된 루프 필터 화상(필터 처리후의 국부 복호 화상)를 참조 화상으로서 저장된다.
이 실시예 1에서는, 루프 필터(9)에 있어서의 움직임 블록 경계 평활화 처리는, 매크로 블록 경계에서의 오버랩 움직임 보상 처리를 이용한다.
여기서, 도 5는 오버랩 움직임 보상 처리를 나타내는 설명도이다.
도 5(a)의 매크로 블록 X는, 현재의 처리 대상의 매크로 블록이고, 매크로 블록 A, B, C, D는 매크로 블록 X를 둘러싸는 위치에 있는 매크로 블록이다.
본 실시예 1의 움직임 블록 경계 평활화 처리는, 프레임의 단위로 처리를 행하는 것을 전제로 하여, 매크로 블록 X에 대한 평활화 처리를 행하는 시점에는, 이미 그 주위의 매크로 블록 A, B, C, D에 대해서도 같이 움직임 벡터 MVL0, MVL1가 결정되어 있는 상태라고 한다.
이를 이용해서, 도 5(b)에 나타내는 매크로 블록 X 내의 블록 경계 영역 X0~X3에 대해, 이하에 나타내는 화상 데이터를 재생성한다.
Figure pct00004
u0i=MVL0i의 수평 성분, v0=MVL0i의 수직 성분(i:A, B, C, D 중 어느 하나)
u1i=MVL1i의 수평 성분, v1=MVL1i의 수직 성분(i:A, B, C, D 중 어느 하나)
I(x,y) : 화소 위치(x, y)의 화소값
I'(x, y) : 오버랩 움직임 보상 처리에 의한 화소 위치(x, y)의 화소값
w0~w4 : 가중 파라미터
가중 파라미터 w0~w4는, 예컨대, 도 12 및 도 13과 같이 매크로 블록 내의 각 화소 위치에 따라 정의된다(매크로 블록이 16×16 화소 블록인 경우).
이러한 가중으로 평활화 처리를 행함으로써, 매크로 블록 X 내의 움직임 블록 경계만이 평활화 처리 대상이 되고, 경계 위치에 따라 적절한 주변 매크로 블록의 움직임 벡터가 고려된다. 또한, 같은 도면의 가중치는 비트 시프트로 승제산(乘除算)이 가능하여, 연산량을 억제한 처리로 실현할 수 있다. 입력 화상이 휘도 신호와 색차 신호(또는 RGB 등)로 이루어지는 컬러 화상으로, 매크로 블록에도 각 색 성분의 블록이 포함되는 경우에는, 본 평활화 처리는 각 색 성분의 특성에 맞춰서 결정한 가중 파라미터에 의해, 각각의 색 성분 블록에 대해 실행된다.
또한, X0~X3 영역에서 비 제로의 가중을 정의하는 면적은, 매크로 블록의 크기가 가변이 되는 경우, 매크로 블록의 크기에 따라 정하도록 구성해도 된다.
매크로 블록 사이즈가 큰 경우, 매크로 블록 X의 중심 부근의 화소값은, 주변 매크로 블록 A, B, C, D의 움직임 벡터에는 영향을 거의 받지 않기 때문에, 매크로 블록 전역을 대상으로 해서 상기와 같은 오버랩 움직임 보상 처리를 행함으로써 화소값을 부당히 왜곡시켜버릴 가능성이 있다.
그래서, 매크로 블록 사이즈가 큰 경우, 보다 매크로 블록 경계에 인접하고 있는 화소만을 오버랩 움직임 보상 처리의 대상이 되도록 해도 된다.
또는, 매크로 블록 사이즈에 따라, 매크로 블록 X의 중심 부근에 대한 주변움직임 벡터에 의한 값의 가중이 작아지도록, 가중 파라미터를 설계하도록 해도 된다.
또한, 화상 부호화 장치측에서, 가중 파라미터를 최적의 값으로 제어하고, 가변 길이 부호화부(11)가, 그 가중 파라미터를 부호화하여 비트스트림으로 다중화하도록 해도 된다.
예컨대, 복잡한 움직임이 많이 않고, 매크로 블록 경계가 크게 불연속인 상태로 되지 않는 경우에는, 극력 주변의 매크로 블록의 영향이 작아지도록, 가중 파라미터를 정하는 편이 바람직하다고 생각된다.
한편, 복잡한 움직임이 많은 경우에는, 매크로 블록 경계가 불연속인 상태가 되는 케이스가 증가하기 때문에, 극력 주변의 매크로 블록의 영향을 가미하도록, 가중 파라미터를 결정하는 편이 바람직하다고 생각된다.
이러한 상태는, 부호화 처리 과정에서 영상 신호의 성질이나 부호화 비트레이트 등에 의해 변동하기 때문에, 화상 부호화 장치측에서, 가중 파라미터를 최적의 값으로 제어할 수 있으면 부호화 효율을 높일 수 있게 된다. 가중 파라미터를 부호화하는 단위는, 픽쳐 단위여도 되고, 매크로 블록을 복수 모은 슬라이스 단위여도 된다.
이상의 처리의 결과, 부호화 장치에서는, 픽쳐 부호화 방법 제어 정보를 이용해서 각 부를 제어함으로써 '통상의 픽쳐 부호화를 행한다'인 경우의 국부 복호 화상 및 픽쳐 부호량과, '스킵 픽쳐 부호화를 행한다'인 경우의 국부 복호 화상 및 픽쳐 부호량(거의 제로라고 간주할 수 있다)을 각각 얻을 수 있다. 이로써, 이들 양쪽 처리 결과로부터, 각각 픽쳐로서의 레이트 왜곡 코스트를 계산하고(스텝 ST12, ST13), 산출한 비용이 작은 쪽을 상기 픽쳐의 부호화에 이용하도록 구성한다(스텝 ST14).
상기 비용 비교의 결과 '통상의 픽쳐 부호화를 행한다'가 선택된 경우, 가변 길이 부호화부(11)는, 압축부(5)로부터 출력된 압축 데이터(DCT 계수를 양자화할 때의 양자화 파라미터를 포함한다), 부호화 모드 판정부(4)로부터 출력된 예측 파라미터(움직임 예측 모드, 움직임 벡터, 참조 화상의 식별 번호) 및 픽쳐 부호화 방법 제어 정보를 엔트로피 부호화하고, 그 부호화 결과를 나타내는 비트스트림(부호화 데이터)을 생성하여, 이 비트스트림을 출력한다(스텝 ST10).
단, 가변 길이 부호화부(11)는, 부호화 모드 판정부(4)가 차분 화상 A를 선택한 경우, 움직임 벡터를 포함하고 있는 예측 파라미터를 엔트로피 부호화하지만, 부호화 모드 판정부(4)가 차분 화상 B를 선택한 경우, 움직임 벡터(다이렉트 벡터)를 포함하고 있지 않은 예측 파라미터를 엔트로피 부호화한다.
한편, 상기 비용 비교의 결과 '스킵 픽쳐 부호화를 행한다'가 선택된 경우는, 가변 길이 부호화부(11)는 픽쳐 부호화 방법 제어 정보를 부호화할 뿐, 매크로 블록 레벨의 일체의 부호화 데이터를 비트스트림으로 다중화하지않는다. 단, 가중 파라미터를 적응적으로 변화시켜서 부호화하는 경우에는, 변화시키는 단위로 가중 파라미터값을 비트스트림으로 다중화한다.
한편, 본 실시예 1에서는, 이상과 같이, '통상의 픽쳐 부호화를 행한다'인 경우와 '스킵 픽쳐 부호화를 행한다'인 경우 각각을 모두 부호화·효율 평가한 후에, 레이트 왜곡 코스트가 작은 쪽을 선택하여 부호화하도록 구성했지만, 부호화 순서는, 이러한 2 패스 부호화로 한정되지 않는다. 예컨대, '통상의 픽쳐 부호화를 행한다' 처리 순서 중에서, '스킵 픽쳐 부호화를 행한다'인 경우에도 이용하는 움직임 예측 모드 B에 상당하는 예측 처리를 실행 완료했기 때문에, 움직임 예측 모드 B를 평가한 결과로서 얻어지는 움직임 파라미터를 전체 매크로 블록만큼 별도 유지해 두고, 루프 필터(9)에 도달하는 시점에 '통상의 픽쳐 부호화를 행한다'인 경우와 '스킵 픽쳐 부호화를 행한다'인 경우 각각의 결과가 동시에 얻어지도록 구성할 수 있다. 또한, 도시하고 있지는 않지만, 미리 픽쳐 레벨에서 '스킵 픽쳐 부호화를 행하는' 것으로 충분한 부호화 성능을 실현할 수 있는지 여부를 판단하기 위한 액티비티 정보를 취득하고, 이에 기초해서, 상기 픽쳐에 대해 '스킵 픽쳐 부호화를 행하는' 처리를 평가할지 여부를 결정하도록 구성해도 된다. 예컨대, 프레임 레이트가 소정의 수치보다 높은 경우에만 '스킵 픽쳐 부호화를 행하는' 것을 허용하거나, 인접하는 프레임간의 단순 차분이 소정의 임계값 이하인 경우(프레임간에서의 움직임이 비교적 작은 경우)에만 '스킵 픽쳐 부호화를 행하는' 것을 허용하거나, 과거의 프레임간 예측 부호화의 결과로부터 움직임 파라미터나 예측 차분 신호의 부호량으로부터 인접하는 프레임간에서, 이와 같이 구성함으로써, 2 패스의 부호화 처리·평가를 행하는 일없이, 연산량을 억제한 부호화를 행할 수 있다.
여기서, 도 6은 가변 길이 부호화부(11)로부터 출력되는 비트스트림을 나타내는 설명도이다. 특히 픽쳐 부호화 데이터 부분을 나타내고 있다.
가변 길이 부호화부(11)는, 픽쳐 부호화 방법 제어 정보가 '통상의 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 도 6(a)에 나타낸 바와 같이, 픽쳐 레벨의 헤더 데이터에 더해서, 픽쳐 내의 복수의 매크로 블록의 부호화 데이터(압축 데이터의 부호화 데이터, 예측 파라미터)를 삽입하고 있는 비트스트림을 생성하여 출력한다.
한편, 그 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 도 6(b)에 나타낸 바와 같이, 비트스트림에는, 매크로 블록의 부호화 데이터(압축 데이터의 부호화 데이터)가 다중되지 않는다. 단, 도 6(b)에서는 명기하지 않고 있지만, 매크로 블록의 부호화 데이터(움직임 예측 모드 및 참조 화상의 식별 번호를 나타내는 예측 파라미터)는 비트스트림으로 다중된다.
한편, AVC의 다이렉트 예측에서는, 화상 복호 장치의 움직임 보상부(24)가 독자적으로 다이렉트 벡터를 생성하기 때문에, 예측 파라미터에는, 움직임 보상 예측부(2)에 의해 생성된 다이렉트 벡터가 포함되지 않고, 비트스트림으로 다중되지 않는다.
이것은, 상술한 바와 같이, 스킵 픽쳐 부호화를 행하는 경우, 모든 매크로 블록에 대한 움직임 벡터(다이렉트 벡터)를 부호화 완료 매크로 블록의 움직임 벡터로부터 추정하고, 이 움직임 벡터를 이용해서 생성한 예측 화상으로부터 복호 화상을 생성하도록 하고 있기 때문에, 화상 복호 장치라면 매크로 블록 레벨의 부호화 데이터가 없어도, 화상 부호화 장치와 같은 방법으로 예측 화상을 생성하고, 그 예측 화상으로부터 복호 화상을 생성할 수 있기 때문이다.
단, 화상 복호 장치에 있어서, 통상 픽쳐 부호화가 행해지고 있는 것인지, 스킵 픽쳐 부호화가 행해지고 있는 것인지를 판별할 수 있도록 하기 위해서, 가변 길이 부호화부(11)가, 화상 부호화 장치에 입력되고 있는 픽쳐 부호화 방법 선택 정보를 픽쳐 레벨의 헤더 데이터에 다중하고 있다.
또한, 화상 부호화 장치가 오버랩 움직임 보상 처리의 가중 파라미터 w0~w7를 최적의 값으로 제어하고 있으면, 가변 길이 부호화부(11)가, 이 가중 파라미터 w0~w7를 픽쳐 레벨의 헤더 데이터에 다중한다.
이 실시예 1에서는, 통상 픽쳐 부호화 또는 스킵 픽쳐 부호화를 픽쳐의 레벨로 선택하는 것에 대해서 나타내었지만, 화면 내의 특정 부분 영역을 정의하는 슬라이스의 단위로 선택하도록 해도 된다.
이 경우, 화상 부호화 장치의 처리는, 슬라이스마다 나눠서 실행하도록 구성하고, 픽쳐 부호화 방법 선택 정보는, 슬라이스 부호화 방법 선택 정보로서, 슬라이스 레벨의 헤더 데이터에 다중하고, 또한, 가중 파라미터 w0~w4도 슬라이스 레벨의 헤더 데이터에 다중하도록 구성하면 된다.
또한, 이 실시예 1에서는, 스킵 픽쳐 부호화를 하는 경우에, 통상의 픽쳐 부호화를 행하는 경우의 움직임 예측 모드 B를, 함께 적용하는 예를 나타냈지만, 스킵 픽쳐 부호화를 행하는 경우에는, 상기 픽쳐의 부호 데이터를 일체 비트스트림으로 다중하지 않기 때문에, 다이렉트 벡터를 구하는 블록의 단위는 반드시 매크로 블록으로 한정할 필요는 없다. 스킵 픽쳐로서는, 움직임 벡터 할당 단위의 블록 사이즈가 작아지더라도 움직임 벡터의 부호는 발생하지 않기 때문에, 이 자유도를 높임으로써, 스킵 픽쳐의 부호화 효율을 높일 수 있다. 예컨대, 스킵 픽쳐 부호화를 행하는 경우의 블록 사이즈를, 입력 화상의 크기나 매크로 블록의 크기에 따라, 부호화 장치·복호 장치가 공통의 규칙으로 정하도록 구성하거나, 픽쳐 레벨의 헤더에, 스킵 픽쳐 부호화를 행하는 경우의 블록 사이즈를 부호화하여, 복호 장치측으로 전송하도록 구성해도 된다(이 부호화는 픽쳐로 한정되지 않는다. 슬라이스단위여도 상관없다).
이 실시예 1에서는, 움직임 예측 모드 B를 이용하는 경우, 매크로 블록의 단위로 움직임 벡터(다이렉트 벡터)를 추정하여, 루프 필터(9)에 있어서의 오버랩 움직임 보상 처리를 적용하는 것을 나타내었지만, 움직임 예측 모드에 있어서의 움직임 벡터의 추정 단위가 서브 블록 등이어도, 루프 필터(9)에 있어서의 오버랩 움직임 보상 처리를 적용하는 것이 가능하다는 것은 말할 필요도 없다.
그 밖에, 움직임 블록 경계 평활화 처리로서는, 움직임 벡터 할당 블록 경계에 대해서, 움직임 벡터의 크기, 참조 화상의 식별 번호의 차이, 경계에서의 화소 어긋남 크기 등에 따라 액티비티값을 구하고, 이들 액티비티값의 크기에 따라 경계에 인접하는 화소의 평활화 필터링을 행하는 등의 처리를 도입해도 된다.
이상으로 분명한 바와 같이, 이 실시예 1에 의하면, 부호화 대상의 매크로 블록의 화상과 움직임 보상 예측부(2)에 의해 움직임 예측 모드 A로 생성된 예측 화상 A 사이의 차분 화상 A의 부호화 효율을 평가함과 아울러, 부호화 대상의 매크로 블록의 화상과 움직임 보상 예측부(2)에 의해 움직임 예측 모드 B로 생성된 예측 화상 B 사이의 차분 화상 B의 부호화 효율을 평가하여, 부호화 효율이 높은 쪽의 차분 화상을 선택하는 부호화 모드 판정부(4)와, 부호화 모드 판정부(4)에 의해 선택된 차분 화상을 나타내는 예측 차분 신호에 대한 DCT 처리 및 양자화 처리를 실시하여 압축 데이터(양자화 파라미터를 포함한다)를 생성하는 압축부(5)를 마련하고, 가변 길이 부호화부(11)가, 압축부(5)로부터 출력된 압축 데이터(DCT 계수를 양자화할 때의 양자화 파라미터를 포함한다), 부호화 모드 판정부(4)로부터 출력된 예측 파라미터 및 픽쳐 부호화 방법 제어 정보를 가변 길이 부호화하여 비트스트림을 생성하도록 구성했기 때문에, 부호화 처리의 과정에서 충분한 부호화 품질을 얻을 수 있게 되며, 그 결과, 화상 부호화 장치와 무관하게 화상 복호 장치측에서 움직임 벡터를 추정하여 보간 프레임을 생성하는 종래 예에 비해서, 동등한 부호량으로, 화상 복호 장치에 있어서의 재생 화상의 품질을 높일 수 있다는 효과를 낸다.
즉, 스킵 픽쳐의 부호화를 행하는 움직임 예측 모드 B로 예측 화상 B가 생성된 경우, 픽쳐 부호화 데이터(부호화된 압축 데이터)를 비트스트림에 다중할 필요가 없기 때문에, 통상 픽쳐의 부호화를 행하는 움직임 예측 모드 A에서 예측 화상 A가 생성된 경우보다, 부호량을 대폭 삭감할 수 있는 한편, 움직임 예측 모드 B로 생성된 예측 화상 B에서는, 충분한 품질을 확보할 수 없는 경우, 움직임 예측 모드 A로 생성된 예측 화상 A를 이용할 수 있기 때문에, 부호화 품질을 유지할 수 있다.
스킵 픽쳐의 부호화를 행하는 움직임 예측 모드 B를 이용하는 것이 가능한 케이스로서는, 다이렉트 예측에 있어서, 예측 화상의 움직임 벡터 할당 영역에 발생하는 블록 경계의 불연속성을 완화하는 것만으로, 품질적으로 충분한 화상을 재현할 수 있는 케이스로, 예컨대 프레임 레이트가 높고, 프레임간의 움직임이 매우 적은 경우 등에는, 매크로 블록별로, 예측 차분 신호가 제로라는 것을 나타내는 매크로 블록 스킵의 제어 정보를 전송하는 것보다, 시그널링의 데이터량을 줄일 수 있다. 특히, 영상 해상도가 높고, 픽쳐 내의 매크로 블록수가 많아지는 케이스에는, 제어 정보의 부호량 삭감 효과가 커진다.
또, 이 실시예 1에 의하면, 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있는 경우, 부호화 모드 판정부(4)가, 부호화 대상의 매크로 블록의 화상과 움직임 예측 모드 B로 생성된 예측 화상 B 사이의 차분 화상 B를 나타내는 예측 오차 신호를 강제적으로 제로값으로 치환하도록 구성했기 때문에, 부호화 대상의 매크로 블록의 부호화에 요하는 부호량이 거의 제로가 되어, 비트스트림의 부호량을 대폭 삭감할 수 있다는 효과를 낸다.
이 실시예 1에 의하면, 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있는 경우, 압축부(5)가 부호화 대상의 매크로 블록의 화상과 움직임 예측 모드 B로 생성된 예측 화상 B 사이의 차분 화상 B를 나타내는 예측 오차 신호(올 제로값의 신호)에 대한 DCT 처리나 양자화 처리를 행하지 않고, 그 예측 오차 신호(올 제로값의 신호)를 가변 길이 부호화부(11)에 출력하도록 구성했기 때문에, 화상 부호화 장치의 처리량을 경감할 수 있다는 효과를 낸다.
또한, 이 실시예 1에 의하면, 픽쳐 부호화 방법 제어 정보가 '통상의 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 루프 필터(9)가, 국부 복호 화상에 포함되어 있는 부호화 왜곡을 보상하는 왜곡 보상 처리를 실시하여, 그 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있는 경우, 루프 필터(9)가, 블록의 경계에 존재하고 있는 불연속성을 완화하는 블록 경계 평활화 처리를 실시하도록 구성했기 때문에, 움직임 예측 모드 A, B 중 어느 것에서도, 국부 복호 화상의 품질을 높일 수 있다는 효과를 낸다.
이 실시예 1에 의하면, 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있는 경우, 국부 복호부(6)가 압축부(5)로부터 출력된 압축 데이터에 관한 역양자화 처리나 역 DCT 처리를 행하지 않고, 움직임 보상 예측부(2)에 의해 생성된 예측 화상 B를 국부 복호 화상으로서 취급하도록 구성했기 때문에, 화상 부호화 장치의 처리량을 경감할 수 있다는 효과를 낸다.
다음으로 화상 복호 장치의 처리 내용을 설명한다.
가변 길이 복호부(22)는, 도 1의 화상 부호화 장치로부터 출력된 비트스트림을 입력하면, 그 비트스트림에 있어서의 픽쳐 레벨의 헤더 데이터를 해석하여, 픽쳐 부호화 방법 선택 정보를 복호한다(도 9의 스텝 ST11).
가변 길이 복호부(22)은, 그 픽쳐 부호화 방법 제어 정보가 '통상의 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면(스텝 ST12), 픽쳐 레벨의 헤더 데이터 이후의 매크로 블록 부호화 데이터에 대한 엔트로피 복호 처리를 실시하여, 픽쳐 내의 복수의 매크로 블록의 압축 데이터(DCT 계수를 양자화할 때의 양자화 파라미터를 포함한다) 및 예측 파라미터를 복호한다(스텝 ST13).
가변 길이 복호부(22)에 의해 복호된 압축 데이터(DCT 계수를 양자화할 때의 양자화 파라미터를 포함한다)는 예측 오차 복호부(23)로 출력되고, 예측 파라미터는 움직임 보상부(24)로 출력된다.
가변 길이 복호부(22)는, 그 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면(스텝 ST12), 픽쳐 레벨의 헤더 데이터를 해석하여, 비트스트림에 다중화되어 있는 경우에는 가중 파라미터 w0~w4나, 움직임 예측 모드 B의 처리 대상이 되는 움직임 벡터 할당 블록 사이즈의 정보를 복호한다.
또한, 픽쳐 레벨의 헤더 데이터 이후의 매크로 블록 부호화 데이터에 대한 엔트로피 복호 처리를 실시하여, 픽쳐 내의 복수의 매크로 블록의 예측 파라미터를 복호한다(스텝 ST14).
가변 길이 복호부(22)에 의해 복호된 예측 파라미터 및 가중 파라미터 w0~w4는 움직임 보상부(24)에 출력된다.
한편, 가변 길이 복호부(22)에 의해 복호된 픽쳐 부호화 방법 선택 정보는, 움직임 보상부(24), 선택 스위치(25) 및 루프 필터(27)에 출력된다.
예측 오차 복호부(23)는, 가변 길이 복호부(22)로부터 압축 데이터를 받으면, 도 1의 국부 복호부(6)와 같이, 그 압축 데이터에 포함되어 있는 양자화 파라미터를 이용해서, 그 압축 데이터를 역양자화하여 DCT 계수를 구하고, 그 DCT 계수에 대한 역 DCT 처리를 실시함으로써, 차분 화상을 나타내는 예측 오차 신호 복호값(도 1의 부호화 모드 판정부(4)로부터 출력된 예측 차분 신호에 상당하는 신호)를 산출한다(스텝 ST15).
선택 스위치(25)는, 가변 길이 복호부(22)로부터 출력된 픽쳐 부호화 방법 제어 정보가 '통상의 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 예측 오차 복호부(23)에 의해 산출된 예측 오차 신호 복호값을 선택하여 가산기(26)에 출력한다(스텝 ST16).
한편, 그 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 올 제로값을 선택하여 가산기(26)에 출력한다(스텝 ST17).
움직임 보상부(24)는, 가변 길이 복호부(22)로부터 예측 파라미터를 받으면, 프레임 메모리(28)에 저장되어 있는 1 프레임 이상의 참조 화상 중에서, 그 예측 파라미터 내의 식별 번호가 나타내는 참조 화상의 판독을 행한다.
움직임 보상부(24)는, 가변 길이 복호부(22)로부터 출력된 픽쳐 부호화 방법 제어 정보가 '통상의 픽쳐 부호화를 행한다'는 취지를 나타내고 있는 경우, 가변 길이 복호부(22)로부터 출력된 예측 파라미터 내의 움직임 예측 모드가 움직임 예측 모드 A이면(스텝 ST18), 도 1의 움직임 보상 예측부(2)와 같이, 움직임 예측 모드 A에서 예측 화상 A를 생성한다(스텝 ST19).
단, 움직임 보상부(24)는, 도 1의 움직임 보상 예측부(2)와 달리, 스스로 움직임 벡터의 탐색 처리를 실시하지 않고, 가변 길이 복호부(22)로부터 출력된 예측 파라미터 내의 움직임 벡터를 사용한다.
한편, 가변 길이 복호부(22)로부터 출력된 예측 파라미터 내의 움직임 예측 모드가 움직임 예측 모드 B이면(스텝 ST18), 도 1의 움직임 보상 예측부(2)와 같이, 움직임 예측 모드 B로 예측 화상 B를 생성한다(스텝 ST20)
즉, 움직임 보상부(24)는, 움직임 파라미터 메모리(21)에 저장되어 있는 복호 완료 매크로 블록의 움직임 벡터로부터 복호 대상의 매크로 블록의 다이렉트 벡터를 생성하고, 그 다이렉트 벡터를 이용한 움직임 보상 예측 처리를 실시하여 예측 화상 B를 생성한다.
한편, 움직임 보상부(24)는, 상기 매크로 블록의 예측 화상을 생성하면, 다음 매크로 블록의 예측 화상을 움직임 예측 모드 B로 생성하는 경우에 대비하기 위해서, 상기 매크로 블록의 예측 화상의 생성에 이용한 움직임 벡터(다이렉트 벡터)나 관련 정보(움직임 예측 모드 B, 참조 화상의 식별 번호, 예측 오차량 등)를 1 화면만큼 움직임 파라미터 메모리(21)에 저장한다.
움직임 보상부(24)는, 가변 길이 복호부(22)로부터 출력된 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 도 1의 움직임 보상 예측부(2)와 같이, 움직임 예측 모드 B로 예측 화상 B를 생성한다(스텝 ST21).
가산기(26)는, 선택 스위치(25)에 의해 예측 오차 신호 복호값이 선택된 경우, 그 예측 오차 신호 복호값과 움직임 보상부(24)에 의해 생성된 예측 화상 A 또는 예측 화상 B를 나타내는 예측 신호를 가산함으로써, 복호 화상을 나타내는 복호 화상 신호를 생성한다(스텝 ST22).
한편, 선택 스위치(25)에 의해 올 제로값이 선택된 경우, 그 올 제로값과 움직임 보상부(24)에 의해 생성된 예측 화상 B를 나타내는 예측 신호를 가산함으로써, 복호 화상을 나타내는 복호 화상 신호를 생성한다(스텝 ST23).
루프 필터(27)는, 가변 길이 복호부(22)로부터 출력된 픽쳐 부호화 방법 제어 정보가 '통상의 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 도 1의 루프 필터(9)와 같이, DCT 블록 경계에 관한 블록 왜곡 제거 필터(디블로킹 필터)를 이용해서, 가산기(26)에 의해 생성된 복호 화상에 포함되어 있는 부호화 왜곡을 보상하는 왜곡 보상 처리를 실시한다(스텝 ST24).
한편, 그 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 도 1의 루프 필터(9)와 같이, 예측 화상의 움직임 벡터 할당 영역에 발생하는 블록 경계(움직임 예측 모드 B에서는, 매크로 블록 경계)의 불연속성을 완화하는 움직임 블록 경계 평활화 처리를 실시한다(스텝 ST25).
프레임 메모리(28)에는, 루프 필터(27)로부터 출력된 재생 화상(필터 처리 이후의 복호 화상)이 참조 화상으로서 저장된다.
이상으로 분명한 바와 같이, 이 실시예 1에 의하면, 가변 길이 복호부(22)에 의해 복호된 픽쳐 부호화 방법 제어 정보가 '통상의 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 가변 길이 복호부(22)에 의해 복호된 움직임 벡터를 이용해서, 움직임 예측 모드 A에서 예측 화상 A를 생성하고, 가변 길이 복호부(22)에 의해 복호된 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 움직임 예측 모드 B로 예측 화상을 생성하는 움직임 보상부(24)와, 움직임 보상부(24)에 의해 생성된 예측 화상과 예측 오차 복호부(23)로부터 출력된 차분 화상을 가산하여, 화상 부호화 장치의 입력 화상에 상당하는 복호 화상을 생성하도록 구성했기 때문에, 화상 부호화 장치에서 송신된 비트스트림으로부터 품질이 높은 화상을 재생할 수 있다는 효과를 낸다.
또, 이 실시예 1에 의하면, 가변 길이 복호부(22)에 의해 복호된 픽쳐 부호화 방법 제어 정보가 '통상의 픽쳐 부호화를 행한다'는 취지를 나타내고 있으면, 루프 필터(27)가, 복호 화상에 포함되어 있는 부호화 왜곡을 보상하는 왜곡 보상 처리를 실시하고, 그 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있는 경우, 루프 필터(27)가, 블록의 경계에 존재하고 있는 불연속성을 완화하는 블록 경계 평활화 처리를 실시하도록 구성했기 때문에, 재생 화상의 품질을 높일 수 있다는 효과를 낸다.
(실시예 2)
상기 실시예 1에서는, 픽쳐 부호화 방법 제어 정보가 '스킵 픽쳐 부호화를 행한다'는 취지를 나타내고 있는 경우, 움직임 예측 모드 B가 AVC의 다이렉트 예측 모드라고 하여, 움직임 보상 예측부(2)가 예측 화상 B를 생성하는 것에 대해서 설명했지만, 움직임 예측 모드 B가 AVC의 다이렉트 예측 모드인 것으로 한정하는 것이 아니라, 다른 모드로서, 움직임 보상 예측부(2)가 예측 화상 B를 생성하도록 해도 된다.
이하, 움직임 보상 예측부(2)에 의한 예측 화상 B의 생성 처리를 구체적으로 설명한다.
도 10은 움직임 보상 예측부(2)에 의한 예측 화상 B의 생성 처리(부호화 완료 픽쳐 Ft -1, Ft +1에 대해, 시간적으로 정중앙에 있는 픽쳐 Ft를 스킵 픽쳐로서 부호화하는 경우의 생성 처리)의 일례를 나타내는 설명도이다.
또한, 도 11은 매크로 블록 X의 움직임 벡터 df(x,t)의 추정 내용을 나타내는 설명도이다.
움직임 보상 예측부(2)는, 움직임 예측 모드 B로 예측 화상 B를 생성하는 준비로서, P 픽쳐 혹은 그 이후의 움직임 보상 예측에 참조하는 화상으로서 픽쳐 F를 부호화하면, 그 픽쳐 F 내의 복수의 매크로 블록의 움직임 예측 모드, 움직임 벡터, 움직임 예측 오차량을 움직임 파라미터 메모리(1)에 저장하는 것으로 한다.
움직임 보상 예측부(2)는, 도 10에 나타낸 바와 같이, 부호화 완료 픽쳐 Ft -1, Ft +1에 대해, 시간적으로 정중앙에 있는 픽쳐 Ft를 스킵 픽쳐로서 부호화하는 경우, 처리 대상의 매크로 블록에 관해서, 도 10에 나타내는 양방향 보간을 실시한다.
이 경우의 보간 식은, 하기의 식 (4)로 주어진다.
Figure pct00005
식 (4)에 있어서, df(x,t) 및 db(x,t)는 움직임 벡터로, 움직임 파라미터 메모리(1)에 저장되어 있는 부호화 완료 픽쳐 Ft +1의 움직임 벡터로부터 도 11에 나타내는 순서로 추정해서 구하는 것이다.
우선, 움직임 보상 예측부(2)는, 부호화 완료 픽쳐 Ft +1에 있어서의 영역 R을 구성하고 있는 9개의 매크로 블록(부호화 대상의 픽쳐 Ft에서의 처리 대상의 매크로 블록 X와 공간적으로 같은 위치에 있는 부호화 완료 픽쳐 Ft +1 내의 매크로 블록과, 그 매크로 블록 근방에 위치하고 있는 8개의 매크로 블록)의 움직임 벡터, 움직임 예측 모드 및 예측 잔차량을 움직임 파라미터 메모리(1)로부터 취득하여 참조한다.
이 때, 움직임 벡터를 d(x+vi, t+1), 0≤i≤8, (V4=0)로 하여, 예측 오차량을 e(x+vi, t+1), 0≤i≤8, (V4=0)라고 하면, 하기의 식 (5)의 연산을 행함으로써 보간 화상 상에서의 처리 해당 블록에 있어서의 부호화 완료 픽쳐 Ft -1에 대한 참조 벡터인 움직임 벡터 df(x,t)의 추정이 가능하게 된다.
Figure pct00006
예측 오차량의 역수로 벡터를 가중함으로써, 예측 오차량이 작은 블록에 있어서의 벡터에 강한 가중을 주어진다.
여기서의 움직임 벡터 df(x,t)의 추정 수법은, 예측 오차량이 작을수록, 벡터 자체의 신뢰성이 높고, 예측 잔차 절대값 합이 클수록, 벡터 자체의 신뢰성이 낮다는 성질에 기초한 수법이다.
α는 픽쳐 Ft와 픽쳐 Ft +1 사이의 시간 간격으로 결정되는 가중 계수이다. 단, 도 11에 나타내는 R 영역을 구성하고 있는 9개의 매크로 블록 중, 프레임 내 부호화되는 블록은 상기 연산에서 제외한다.
영역 R 내의 9개 매크로 블록 중, 일정한 비율 이상이 프레임 내 부호화의 블록인 경우, 움직임 벡터 df(x,t)가 (0,0)이라고 추정한다.
이 실시예 2와 같이, 움직임 벡터 df(x,t)의 추정을 행함으로써, 다이렉트 예측만으로 움직임 벡터를 추정하는 경우보다, 움직임 벡터의 신뢰성을 가미한 정밀도가 높은 움직임 벡터의 추정이 가능하게 된다. 이 때문에, 스킵 픽쳐의 품질을 개선할 수 있어서, 부호화 처리 과정에서, 보다 많은 스킵 픽쳐를 이용할 수 있게 되어, 전체의 부호량 삭감 효과를 높일 수 있다.
한편, 스킵 픽쳐를 생성하는 추정 움직임 벡터를 구하는 데 있어서는, 미리 공간·시간적으로 근방에 위치하는 복수의 움직임 벡터를 추정 움직임 벡터 후보로서 유지해 두고, 그 중에서 최적의 추정 움직임 벡터를, 부호화 장치 단독 혹은 부호화 장치와 복호 장치의 연계에 의해서 선택하여, 스킵 픽쳐의 복호 화상의 생성에 이용하도록 구성해도 된다. 부호화 장치로 선택하는 경우에는, 추정 움직임 벡터를 구하는 단위마다 최적의 추정 움직임 벡터의 인덱스를 비트스트림으로 다중화하도록 구성한다. 한편, 부호화 장치와 복호 장치측에서 같은 판정 방법을 이용해서 선택하는 경우에는, 복호 장치측에 추정 움직임 벡터 선택을 위한 추가 처리가 필요하게 되는 한편, 추정 움직임 벡터의 인덱스를 비트스트림으로 다중화할 필요가 없기 때문에, 부호화 효율을 높일 수 있다. 이와 같이 구성함으로써 추정 움직임 벡터를 복수의 후보 중에서 선택할 수 있게 되기 때문에, 어느 특정의 추정 방법에 의해서 일의적으로 얻어지는 추정 움직임 벡터의 정밀도가 충분하지 않은 경우에도 품질을 유지한 부호화를 행할 수 있다는 효과가 있다.
(산업상 이용 가능성)
본 발명에 따른 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법 및 화상 복호 방법은, 수신측에서의 재생 화상의 품질을 높일 수 있기 때문에, 화상 압축 부호화 기술이나 압축 화상 데이터 전송 기술 등에 이용하기에 적합하다.
1 : 움직임 파라미터 메모리
2 : 움직임 보상 예측부(예측 화상 생성 수단, 움직임 검출 수단, 제 1 예측 화상 생성 수단, 움직임 벡터 생성 수단, 제 2 예측 화상 생성 수단)
3 : 감산기(차분 화상 선택 수단, 부호화 수단)
4 : 부호화 모드 판정부(차분 화상 선택 수단, 부호화 수단)
5 : 압축부(양자화 수단)
6 : 국부 복호부(참조 화상 생성 수단, 국부 복호 수단)
7 : 선택 스위치(참조 화상 생성 수단, 국부 복호 수단)
8 : 가산기(참조 화상 생성 수단, 국부 복호 수단)
9 : 루프 필터(참조 화상 생성 수단, 필터링 수단)
10 : 프레임 메모리
11 : 가변 길이 부호화부(가변 길이 부호화 수단, 부호화 수단)
21 : 움직임 파라미터 메모리
22 : 가변 길이 복호부(가변 길이 복호 수단, 제 1 예측 화상 생성 수단, 복호 수단)
23 : 예측 오차 복호부(역양자화 수단, 복호 수단)
24 : 움직임 보상부(예측 화상 생성 수단, 제 1 예측 화상 생성 수단, 움직임 벡터 생성 수단, 제 2 예측 화상 생성 수단)
25 : 선택 스위치(복호 화상 생성 수단)
26 : 가산기(복호 화상 생성 수단, 가산 수단)
27 : 루프 필터(복호 화상 생성 수단, 필터링 수단)
28 : 프레임 메모리

Claims (13)

  1. 입력 화상을 소정의 블록별로 움직임 보상 예측을 이용해서 압축 부호화를 행하는 화상 부호화 장치에 있어서,
    상기 블록의 움직임 벡터를 검출하는 움직임 검출 수단과, 상기 움직임 검출 수단에 의해 검출된 움직임 벡터를 이용해서 제 1 예측 화상을 생성하는 제 1 예측 화상 생성 수단과,
    상기 움직임 검출 수단에 의해 검출된 움직임 벡터를 유지하는 메모리와,
    상기 메모리에 유지되는 움직임 벡터를 바탕으로 부호화 대상인 블록의 움직임 벡터를 생성하는 움직임 벡터 생성 수단과,
    상기 움직임 벡터 생성 수단에 의해 생성된 움직임 벡터를 이용해서 제 2 예측 화상을 생성하는 제 2 예측 화상 생성 수단과,
    상기 제 1 예측 화상 생성 수단에 의해 생성된 제 1 예측 화상과 부호화 대상인 블록의 차분 화상을 부호화함과 아울러, 상기 제 1 예측 화상의 생성에 이용한 움직임 벡터를 부호화하는 부호화 수단과,
    상기 차분 화상의 국부(局部) 복호 화상을 생성하여, 상기 국부 복호 화상을 상기 제 1 예측 화상과 가산함으로써 국부 복호 화상을 생성하는 국부 복호 수단과,
    상기 제 2 예측 화상 생성 수단에 의해 생성된 제 2 예측 화상에 대해 블록 경계에 대한 평활화 처리를 행하는 필터링 수단
    을 구비하고,
    상기 국부 복호 수단에 의해서 얻어지는 상기 블록의 제 1 국부 복호 화상이나, 상기 필터링 수단에 의해서 얻어지는 화상 중 어느 하나를, 하나 내지 복수의 상기 블록으로 구성되는 소정 화상 영역 내의 국부 복호 화상으로서 선택하고, 그 선택 결과를 비트스트림에 다중하여 부호화 전송하는
    것을 특징으로 하는 화상 부호화 장치.
  2. 입력 화상을 구성하고 있는 블록별로, 부호화 대상인 블록과 참조 화상 사이에서 움직임 벡터를 탐색하고, 상기 움직임 벡터를 이용하는 움직임 보상 예측 처리를 실시하여 예측 화상을 생성하는 제 1 예측 화상 생성 방식을 구비함과 아울러, 부호화 완료 블록의 움직임 벡터로부터 부호화 대상인 블록의 다이렉트 벡터를 생성하며, 상기 다이렉트 벡터를 이용하는 움직임 보상 예측 처리를 실시하여 예측 화상을 생성하는 제 2 예측 화상 생성 방식을 구비하고 있는 예측 화상 생성 수단과,
    부호화 대상인 블록과 상기 예측 화상 생성 수단에 의해 제 1 예측 화상 생성 방식으로 생성된 예측 화상 사이의 차분 화상의 부호화 효율을 평가함과 아울러, 부호화 대상인 블록과 상기 예측 화상 생성 수단에 의해 제 2 예측 화상 생성 방식으로 생성된 예측 화상 사이의 차분 화상의 부호화 효율을 평가하여, 상기 부호화 효율이 높은 쪽의 차분 화상을 선택하는 차분 화상 선택 수단과,
    상기 차분 화상 선택 수단에 의해 선택된 차분 화상을 양자화하여, 상기 차분 화상의 양자화 계수를 출력하는 양자화 수단과,
    상기 양자화 수단으로부터 출력된 양자화 계수 및 상기 차분 화상 선택 수단에 의해 선택된 차분 화상에 관한 예측 화상이 제 1 예측 화상 생성 방식으로 생성된 예측 화상인지, 제 2 예측 화상 생성 방식으로 생성된 예측 화상인지를 나타내는 예측 화상 식별 정보를 가변 길이 부호화함과 아울러, 상기 차분 화상 선택 수단에 의해 선택된 차분 화상이 제 1 예측 화상 생성 방식으로 생성된 예측 화상에 관한 차분 화상인 경우, 상기 예측 화상 생성 수단에 의해 탐색된 움직임 벡터를 가변 길이 부호화하여 부호화 데이터를 생성하는 가변 길이 부호화 수단
    을 구비한 화상 부호화 장치.
  3. 제 2 항에 있어서,
    예측 화상 생성 수단은, 제 1 예측 화상 생성 방식과 제 2 예측 화상 생성 방식 모두의 사용을 지시하는 제어 정보가 입력된 경우, 제 1 예측 화상 생성 방식으로 예측 화상을 생성함과 아울러, 제 2 예측 화상 생성 방식으로 예측 화상을 생성하고, 제 2 예측 화상 생성 방식만의 사용을 지시하는 제어 정보가 입력된 경우, 제 1 예측 화상 생성 방식으로는 예측 화상을 생성하지 않고, 제 2 예측 화상 생성 방식만으로 예측 화상을 생성하는 것을 특징으로 하는 화상 부호화 장치.
  4. 제 3 항에 있어서,
    차분 화상 선택 수단은, 제 2 예측 화상 생성 방식만의 사용을 지시하는 제어 정보가 입력된 경우, 부호화 대상인 블록과 예측 화상 생성 수단에 의해 제 2 예측 화상 생성 방식으로 생성된 예측 화상 사이의 차분 화상을 나타내는 예측 오차 신호를 제로값으로 치환하는 것을 특징으로 하는 화상 부호화 장치.
  5. 제 4 항에 있어서,
    양자화 수단은, 제 2 예측 화상 생성 방식만의 사용을 지시하는 제어 정보가 입력된 경우, 차분 화상 선택 수단에 의해 선택된 차분 화상을 나타내는 예측 오차 신호에 대한 양자화 처리를 행하지 않고, 제로값의 예측 오차 신호를 가변 길이 부호화 수단에 출력하는 것을 특징으로 하는 화상 부호화 장치.
  6. 제 2 항에 있어서
    양자화 수단으로부터 출력된 양자화 계수를 역양자화하고, 그 역양자화 결과가 나타내는 차분 화상과 예측 화상 생성 수단에 의해 생성된 예측 화상을 가산하여 국부 복호 화상을 생성하며, 상기 국부 복호 화상을 참조 화상으로서 프레임 메모리에 저장하는 참조 화상 생성 수단을 마련하고,
    상기 참조 화상 생성 수단은, 상기 예측 화상이 제 1 예측 화상 생성 방식으로 생성된 경우, 상기 국부 복호 화상에 포함되어 있는 부호화 왜곡을 보상하는 왜곡 보상 처리를 실시하고, 상기 예측 화상이 제 2 예측 화상 생성 방식으로 생성된 경우, 블록의 경계에 존재하고 있는 불연속성을 완화하는 블록 경계 평활화 처리를 실시하는
    것을 특징으로 하는 화상 부호화 장치.
  7. 제 6 항에 있어서,
    참조 화상 생성 수단은, 제 2 예측 화상 생성 방식만의 사용을 지시하는 제어 정보가 입력된 경우, 양자화 수단으로부터 출력된 양자화 계수에 대한 역양자화 처리를 행하지 않고, 예측 화상 생성 수단에 의해 생성된 예측 화상을 국부 복호 화상으로서 취급하는 것을 특징으로 하는 화상 부호화 장치.
  8. 화상을 소정의 블록별로 움직임 보상 예측을 이용해서 압축 부호화한 비트스트림을 입력으로 해서, 상기 블록별로 복호 신장(伸張) 처리를 행하는 화상 복호 장치에 있어서,
    상기 블록별로 움직임 벡터를 비트스트림으로부터 복호하고, 상기 움직임 벡터를 이용해서 제 1 예측 화상을 생성하는 제 1 예측 화상 생성 수단과,
    상기 블록별로 움직임 보상 예측의 차분 화상의 부호화 데이터를 비트스트림으로부터 복호하고, 상기 부호화 데이터로부터 복호 차분 화상을 생성하는 복호 수단과,
    상기 제 1 예측 화상과 상기 복호 차분 화상을 가산하여 복호 화상을 얻는 가산 수단과,
    상기 비트스트림으로부터 복호된 움직임 벡터를 유지하는 메모리와,
    상기 메모리에 유지되는 움직임 벡터를 바탕으로 복호 대상인 블록의 움직임 벡터를 생성하는 움직임 벡터 생성 수단과,
    상기 움직임 벡터 생성 수단에 의해 생성된 움직임 벡터를 이용해서 제 2 예측 화상을 생성하는 제 2 예측 화상 생성 수단과,
    상기 제 2 예측 화상 생성 수단에 의해 생성된 제 2 예측 화상에 대해, 블록 경계에 대한 평활화 처리를 행하는 필터링 수단
    을 구비하고,
    하나 내지 복수의 상기 블록으로 구성되는 소정 화상 영역의 단위로, 상기 가산 수단으로부터 출력되는 복호 화상 혹은 상기 필터링 수단으로부터 출력되는 화상 중 어느 하나가, 상기 화상 영역 중의 모든 상기 블록에서의 최종적인 복호 화상이 되는지를 나타내는 식별 정보를 비트스트림으로부터 복호하고, 상기 식별 정보에 기초해서 최종 복호 화상을 생성하는
    것을 특징으로 하는 화상 복호 장치.
  9. 부호화 데이터로부터, 양자화 계수와, 화상 부호화 장치에서 예측 화상이 제 1 예측 화상 생성 방식으로 생성된지, 제 2 예측 화상 생성 방식으로 생성된지를 나타내는 예측 화상 식별 정보를 복호함과 아울러, 예측 화상이 제 1 예측 화상 생성 방식으로 생성된 경우, 부호화 데이터로부터 움직임 벡터를 복호하는 가변 길이 복호 수단과,
    상기 가변 길이 복호 수단에 의해 복호된 양자화 계수를 역양자화하는 역양자화 수단과,
    상기 가변 길이 복호 수단에 의해 복호된 예측 화상 식별 정보가, 화상 부호화 장치에서 예측 화상이 제 1 예측 화상 생성 방식으로 생성되고 있다는 취지를 나타내고 있는 경우, 상기 가변 길이 복호 수단에 의해 복호된 움직임 벡터를 이용하는 움직임 보상 예측 처리를 실시하여 예측 화상을 생성하고, 상기 가변 길이 복호 수단에 의해 복호된 예측 화상 식별 정보가, 상기 화상 부호화 장치측에서 예측 화상이 제 2 예측 화상 생성 방식으로 생성되고 있다는 취지를 나타내고 있는 경우, 복호 완료 블록의 움직임 벡터로부터 복호 대상인 블록의 다이렉트 벡터를 생성하며, 상기 다이렉트 벡터를 이용하는 움직임 보상 예측 처리를 실시하여 예측 화상을 생성하는 예측 화상 생성 수단과,
    상기 예측 화상 생성 수단에 의해 생성된 예측 화상과 상기 역양자화 수단의 역양자화 결과가 나타내는 차분 화상을 가산하여, 상기 화상 부호화 장치의 입력 화상에 상당하는 복호 화상을 생성하는 복호 화상 생성 수단
    을 구비한 화상 복호 장치.
  10. 제 9 항에 있어서,
    복호 화상 생성 수단은, 가변 길이 복호 수단에 의해 복호된 예측 화상 식별 정보가, 화상 부호화 장치측에서 예측 화상이 제 2 예측 화상 생성 방식으로 생성되고 있다는 취지를 나타내고 있는 경우, 예측 화상 생성 수단에 의해 생성된 예측 화상을 복호 화상으로서 취급하는 것을 특징으로 하는 화상 복호 장치.
  11. 제 9 항에 있어서,
    복호 화상 생성 수단은, 가변 길이 복호 수단에 의해 복호된 예측 화상 식별 정보가, 화상 부호화 장치측에서 예측 화상이 제 1 예측 화상 생성 방식으로 생성되고 있다는 취지를 나타내고 있는 경우, 복호 화상에 포함되어 있는 부호화 왜곡을 보상하는 왜곡 보상 처리를 실시하고, 상기 가변 길이 복호 수단에 의해 복호된 예측 화상 식별 정보가, 화상 부호화 장치측에서 예측 화상이 제 2 예측 화상 생성 방식으로 생성되고 있다는 취지를 나타내고 있는 경우, 블록의 경계에 존재하고 있는 불연속성을 완화하는 블록 경계 평활화 처리를 실시하는 것을 특징으로 하는 화상 복호 장치.
  12. 예측 화상 생성 수단이, 입력 화상을 구성하고 있는 블록별로, 부호화 대상인 블록과 참조 화상 사이에서 움직임 벡터를 탐색하고, 상기 움직임 벡터를 이용하는 움직임 보상 예측 처리를 실시해서 예측 화상을 생성하는 제 1 예측 화상 생성 방식을 실시하는 제 1 예측 화상 생성 처리 단계와,
    상기 예측 화상 생성 수단이, 부호화 완료 블록의 움직임 벡터로부터 부호화 대상인 블록의 다이렉트 벡터를 생성하고, 상기 다이렉트 벡터를 이용하는 움직임 보상 예측 처리를 실시하여 예측 화상을 생성하는 제 2 예측 화상 생성 방식을 실시하는 제 2 예측 화상 생성 처리 단계와,
    차분 화상 선택 수단이, 부호화 대상인 블록과 상기 제 1 예측 화상 생성 처리 단계에서 생성된 예측 화상 사이의 차분 화상의 부호화 효율을 평가함과 아울러, 부호화 대상인 블록과 상기 제 2 예측 화상 생성 처리 단계에서 생성된 예측 화상 사이의 차분 화상의 부호화 효율을 평가하여, 상기 부호화 효율이 높은 쪽의 차분 화상을 선택하는 차분 화상 선택 처리 단계와,
    양자화 수단이, 상기 차분 화상 선택 처리 단계에서 선택된 차분 화상을 양자화하여, 상기 차분 화상의 양자화 계수를 출력하는 양자화 처리 단계와,
    가변 길이 부호화 수단이, 상기 양자화 처리 단계에서 출력된 양자화 계수 및 상기 차분 화상 선택 처리 단계에서 선택된 차분 화상에 관한 예측 화상이 제 1 예측 화상 생성 방식으로 생성된 예측 화상인지, 제 2 예측 화상 생성 방식으로 생성된 예측 화상인지를 나타내는 예측 화상 식별 정보를 가변 길이 부호화함과 아울러, 상기 차분 화상 선택 수단에 의해 선택된 차분 화상이 제 1 예측 화상 생성 방식으로 생성된 예측 화상에 관한 차분 화상인 경우, 상기 제 1 예측 화상 생성 처리 단계에서 탐색된 움직임 벡터를 가변 길이 부호화하여 부호화 데이터를 생성하는 가변 길이 부호화 처리 단계
    를 구비한 화상 부호화 방법.
  13. 가변 길이 복호 수단이, 부호화 데이터로부터, 양자화 계수와, 화상 부호화 장치에서 예측 화상이 제 1 예측 화상 생성 방식으로 생성된지, 제 2 예측 화상 생성 방식으로 생성된지를 나타내는 예측 화상 식별 정보를 복호를 복호함과 아울러, 예측 화상이 제 1 예측 화상 생성 방식으로 생성된 경우, 부호화 데이터로부터 움직임 벡터를 복호하는 가변 길이 복호 처리 단계와,
    역양자화 수단이 상기 가변 길이 복호 처리 단계에서 복호된 양자화 계수를 역양자화하는 역양자화 처리 단계와,
    예측 화상 생성 수단이, 상기 가변 길이 복호 처리 단계에서 복호된 예측 화상 식별 정보가, 화상 부호화 장치에서 예측 화상이 제 1 예측 화상 생성 방식으로 생성되고 있다는 취지를 나타내고 있는 경우, 상기 가변 길이 복호 처리 단계에서 복호된 움직임 벡터를 이용하는 움직임 보상 예측 처리를 실시하여 예측 화상을 생성하고, 상기 가변 길이 복호 처리 단계에서 복호된 예측 화상 식별 정보가, 상기 화상 부호화 장치에서 예측 화상이 제 2 예측 화상 생성 방식으로 생성되고 있다는 취지를 나타내고 있는 경우, 복호 완료 블록의 움직임 벡터로부터 복호 대상인 블록의 다이렉트 벡터를 생성하고, 상기 다이렉트 벡터를 이용하는 움직임 보상 예측 처리를 실시하여 예측 화상을 생성하는 예측 화상 생성 처리 단계와,
    복호 화상 생성 수단이 상기 예측 화상 생성 처리 단계에서 생성된 예측 화상과 상기 역양자화 처리 단계에서의 역양자화 결과가 나타내는 차분 화상을 가산하여, 상기 화상 부호화 장치의 입력 화상에 상당하는 복호 화상을 생성하는 복호 화상 생성 처리 단계
    를 구비한 화상 복호 방법.
KR1020127028411A 2010-03-31 2011-03-07 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법 및 화상 복호 방법 KR101420957B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2010-081830 2010-03-31
JP2010081830 2010-03-31
PCT/JP2011/001329 WO2011121894A1 (ja) 2010-03-31 2011-03-07 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法

Publications (2)

Publication Number Publication Date
KR20130026436A true KR20130026436A (ko) 2013-03-13
KR101420957B1 KR101420957B1 (ko) 2014-07-30

Family

ID=44711665

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127028411A KR101420957B1 (ko) 2010-03-31 2011-03-07 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법 및 화상 복호 방법

Country Status (7)

Country Link
US (1) US8948243B2 (ko)
EP (1) EP2555523A4 (ko)
JP (1) JPWO2011121894A1 (ko)
KR (1) KR101420957B1 (ko)
CN (1) CN102823250B (ko)
TW (1) TW201206203A (ko)
WO (1) WO2011121894A1 (ko)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8605786B2 (en) * 2007-09-04 2013-12-10 The Regents Of The University Of California Hierarchical motion vector processing method, software and devices
TWI463878B (zh) * 2009-02-19 2014-12-01 Sony Corp Image processing apparatus and method
US9160978B2 (en) * 2010-08-10 2015-10-13 Google Technology Holdings LLC Method and apparatus related to variable duration media segments
JP5594841B2 (ja) * 2011-01-06 2014-09-24 Kddi株式会社 画像符号化装置及び画像復号装置
WO2013111593A1 (ja) 2012-01-27 2013-08-01 パナソニック株式会社 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置及び画像符号化復号装置
JP6422011B2 (ja) 2012-05-11 2018-11-14 サン パテント トラスト 動画像符号化方法、動画像復号化方法、動画像符号化装置および動画像復号化装置
JP6399433B2 (ja) * 2013-05-31 2018-10-03 サン パテント トラスト 画像符号化方法、画像復号方法、画像符号化装置及び画像復号装置
JP6481457B2 (ja) * 2015-03-26 2019-03-13 富士通株式会社 動画像符号化装置、動画像符号化方法、動画像復号装置、及び動画像復号方法
KR20170096088A (ko) * 2016-02-15 2017-08-23 삼성전자주식회사 영상처리장치, 영상처리방법 및 이를 기록한 기록매체
KR102338356B1 (ko) 2016-05-24 2021-12-13 한국전자통신연구원 영상 부호화/복호화 방법 및 이를 위한 기록 매체
US10567793B2 (en) * 2016-06-06 2020-02-18 Google Llc Adaptive overlapped block prediction in variable block size video coding
US10390033B2 (en) * 2016-06-06 2019-08-20 Google Llc Adaptive overlapped block prediction in variable block size video coding
KR20190029748A (ko) 2016-09-22 2019-03-20 엘지전자 주식회사 영상 코딩 시스템에서 인터 예측 방법 및 장치
CN108304846B (zh) * 2017-09-11 2021-10-22 腾讯科技(深圳)有限公司 图像识别方法、装置及存储介质
KR20220152299A (ko) * 2020-03-12 2022-11-15 인터디지털 브이씨 홀딩스 프랑스 비디오 인코딩 및 디코딩을 위한 방법 및 장치
US11949877B2 (en) * 2021-10-01 2024-04-02 Microsoft Technology Licensing, Llc Adaptive encoding of screen content based on motion type

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0817499A3 (en) * 1996-06-28 2002-05-22 Matsushita Electric Industrial Co., Ltd. Image coding method using extrapolated pixels in insignificant areas of blocks
EP1237376B1 (en) * 1997-06-09 2015-08-05 Hitachi, Ltd. Image information recording medium
EP1404136B1 (en) * 2001-06-29 2018-04-04 NTT DoCoMo, Inc. Image encoder, image decoder, image encoding method, and image decoding method
JP2003102013A (ja) 2001-09-21 2003-04-04 Hitachi Ltd 復号装置、符号化装置、及び符号化復号装置
CN100452883C (zh) 2001-12-17 2009-01-14 微软公司 处理视频图像的方法
CN101448162B (zh) * 2001-12-17 2013-01-02 微软公司 处理视频图像的方法
US20040252758A1 (en) 2002-08-14 2004-12-16 Ioannis Katsavounidis Systems and methods for adaptively filtering discrete cosine transform (DCT) coefficients in a video encoder
US7567617B2 (en) 2003-09-07 2009-07-28 Microsoft Corporation Predicting motion vectors for fields of forward-predicted interlaced video frames
JP2007513566A (ja) * 2003-12-02 2007-05-24 ソンギュングァン ユニヴァーシティ 動画符号化方法及び装置
KR20050053297A (ko) * 2003-12-02 2005-06-08 학교법인 성균관대학 동영상 부호화 방법 및 장치
CN1332563C (zh) * 2003-12-31 2007-08-15 中国科学院计算技术研究所 一种视频图像跳过宏块的编码方法
JP4414904B2 (ja) * 2004-04-16 2010-02-17 株式会社エヌ・ティ・ティ・ドコモ 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号装置、動画像復号方法、及び動画像復号プログラム
US8204126B2 (en) 2008-01-10 2012-06-19 Panasonic Corporation Video codec apparatus and method thereof
KR101505195B1 (ko) * 2008-02-20 2015-03-24 삼성전자주식회사 직접 모드 부호화 및 복호화 방법
JP2009232324A (ja) * 2008-03-25 2009-10-08 Panasonic Corp 画像符号化装置、画像符号化方法および画像符号化プログラム
JP5219089B2 (ja) * 2009-04-30 2013-06-26 株式会社メガチップス 画像データの生成方法

Also Published As

Publication number Publication date
JPWO2011121894A1 (ja) 2013-07-04
TW201206203A (en) 2012-02-01
US8948243B2 (en) 2015-02-03
CN102823250B (zh) 2015-08-19
WO2011121894A1 (ja) 2011-10-06
US20130022124A1 (en) 2013-01-24
KR101420957B1 (ko) 2014-07-30
EP2555523A4 (en) 2016-05-11
CN102823250A (zh) 2012-12-12
EP2555523A1 (en) 2013-02-06

Similar Documents

Publication Publication Date Title
KR101420957B1 (ko) 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법 및 화상 복호 방법
US11496749B2 (en) Video decoding device and method using inverse quantization
KR102013093B1 (ko) 동화상 복호 장치, 동화상 복호 방법, 동화상 부호화 장치, 동화상 부호화 방법 및 기록 매체
KR102024516B1 (ko) 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법, 화상 복호 방법 및 기억 매체
KR101431545B1 (ko) 영상의 부호화, 복호화 방법 및 장치
KR101269116B1 (ko) 인터 예측 부호화된 동영상 복호화 방법
KR101430048B1 (ko) 동영상 복호화 장치
KR100750136B1 (ko) 영상의 부호화, 복호화 방법 및 장치
KR101365575B1 (ko) 인터 예측 부호화, 복호화 방법 및 장치
US9264731B2 (en) Method and an apparatus for decoding a video
KR100772391B1 (ko) 직교 변환 및 벡터 양자화에 기반한 동영상 부호화 및복호화 방법과 이를 이용한 장치
KR20090095317A (ko) 영상 부호화 및 복호화 방법 및 장치
KR101891192B1 (ko) 영상 부호화 방법 및 장치
JP5442039B2 (ja) 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法
JP2013077865A (ja) 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法
KR100774297B1 (ko) 움직임 벡터 복호화 방법 및 그 장치
KR101895389B1 (ko) 영상 부호화 방법 및 장치
KR100774300B1 (ko) 움직임 벡터 복호화 방법 및 그 장치
KR100774298B1 (ko) 움직임 벡터 복호화 방법 및 그 장치
KR20140129420A (ko) 잔차 변환을 이용한 인트라 예측 방법 및 장치

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170616

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180619

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190619

Year of fee payment: 6