KR20040068535A - 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법,화상 복호 방법, 화상 부호화 프로그램 및 화상 복호프로그램 - Google Patents

화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법,화상 복호 방법, 화상 부호화 프로그램 및 화상 복호프로그램 Download PDF

Info

Publication number
KR20040068535A
KR20040068535A KR10-2004-7001198A KR20047001198A KR20040068535A KR 20040068535 A KR20040068535 A KR 20040068535A KR 20047001198 A KR20047001198 A KR 20047001198A KR 20040068535 A KR20040068535 A KR 20040068535A
Authority
KR
South Korea
Prior art keywords
encoding
decoding
procedure
image
macroblock
Prior art date
Application number
KR10-2004-7001198A
Other languages
English (en)
Other versions
KR100627597B1 (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 KR20040068535A publication Critical patent/KR20040068535A/ko
Application granted granted Critical
Publication of KR100627597B1 publication Critical patent/KR100627597B1/ko

Links

Classifications

    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/192Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • 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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • 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/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

가변 길이 부호화부(16)에서는 입력 심볼(H1)로서 가변 길이 부호 출력부(30)에 CBP가 입력된다. 또한, 부호화 심볼 메모리(31)로부터 부호화 맵 테이블 제공부(32)에 부호화 맵 테이블 참조 정보(H2)로서 주위 블록에 있어서의 CBP가 입력된다. 이들 주위 블록에 있어서의 CBP에 기초하여, 부호화 맵 테이블 제공부(32)에 있어서, CBP의 부호화에 대하여 사용하는 부호화 맵 테이블이 결정되고, 부호화 맵 테이블(H4)이 가변 길이 부호 출력부(30)에 제공된다. 또한, 가변 길이 부호화 테이블 제공부(33)로부터 가변 길이 부호화 테이블(H5)이 가변 길이 부호 출력부(30)에 입력된다. 그리고, 부호화 대상 CBP은 가변 길이 부호화되고, 부호화 데이터(D9)로서 출력된다. 이로써, 부호화 심볼의 정보원 부호화를 부호화 조건이나 화상의 성질에 따라서, 효율적으로 행할 수 있다.

Description

화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법, 화상 복호 방법, 화상 부호화 프로그램 및 화상 복호 프로그램{Image encoding apparatus, image decoding apparatus, image encoding method, image decoding method, image encoding program, and image decoding program}
최근, 포토 CD, 비디오 CD, DVD 비디오(Digital Versatile Disk-Video), 텔레비전 전화, 텔레비전 회의, 디지털 텔레비전 방송, VOD(Video On Demand) 등, 화상 신호의 축적 재생이나 전송을 하는 시스템이 보급되어 있다. 도 29a에 도시하는 바와 같이 화상 전송 시스템에 있어서, 송신측에서는 입력된 화상이 화상 부호화부(1)에 의해서 비트 스트림으로 부호화되고, 비트 스트림은 비트 스트림 송신부(2)에 의해서 네트워크를 통해 전송되고, 수신측에서는 비트 스트림 수신부(3)에 의해서 비트 스트림이 수신되고, 수신된 비트 스트림은 화상 복호부(4)로 복호되어 화상이 출력된다. 또한, 도 29b에 도시하는 바와 같이, 화상 축적 시스템에서는 입력 화상은 화상 부호화부(1)에 의해서 비트 스트림에 부호화되고, 비트 스트림은 기억 매체 등의 비트 스트림 축적부(5)에 축적된다. 또한, 도 29c에 도시하는 바와 같이, 화상 재생 시스템에서는 비트 스트림 축적부(5)에 축적된 비트 스트림은 화상 복호부(4)에 의해서 복호되어 재생 화상이 출력된다.
이들의 시스템에서는 전송 대역이나 축적 용량에 제한이 있기 때문에, 가능한 한 압축율이 높은 화상 부호화 방식을 사용함으로써 이들의 자원을 유효하게 이용하고자 하는 요구가 있다. 화상 부호화 방식에는 정지 화상 부호화 방식과 동화상 부호화 방식으로 구별할 수 있지만, 그 일 예로서 동화상 부호화 방식을 사용하여 설명한다.
종래, 동화상 신호의 부호화 방식으로서, ITU-T Recommendation H.263이나 ISO/IEC International Standard 14496-2(MPEG-4 Visual) 등의 국제 표준화 동화상 부호화 방식이 알려져 있다.
일반적으로, 이들의 동화상 부호화 방식에 있어서는 부호화 대상으로서 입력된 동화상 신호를 구성하는 프레임 화상에 대하여, 다른 프레임 화상과의 사이에서 움직임 보상 프레임간 예측을 하여 동화상 신호에 있어서의 시간적인 용장도를 삭감하고, 또한 프레임간 예측 결과로서의 차분 화상 신호나 프레임간 예측을 하지 않은 화상 신호에 대하여 직교 변환 및 양자화를 하여 동화상 신호에 있어서의 공간적인 용장도를 삭감하고, 또한, 얻어진 움직임 벡터나 직교 변환 계수 등의 예측·변환 데이터에 대하여 정보원 부호화를 하여 데이터 표현의 용장도를 삭감한다. 이들의 처리에 의해 동화상 신호에 포함되는 용장도를 제거하여, 효율적인 동화상부호화가 달성된다.
또한 이들의 동화상 부호화 방식에 있어서는 상기와 같은 처리는 매크로 블록이라고 불리는 프레임 화상 내의 부분마다 행해진다. 일반적으로 한 개의 매크로 블록은 16화소 ×16화소로 이루어지고, 복수개가 모여 슬라이스, 프레임을 구성하는 한편, 한 개의 매크로 블록 중에는 보다 작게 분할한 블록의 단위를 갖고, 상술한 움직임 보상이나 직교 변환 등의 처리는 매크로 블록을 최대 단위로서, 필요에 따라서 보다 작은 블록의 단위로 행해진다.
도 1은 동화상 부호화 방법의 일 예를 개략적으로 도시하는 플로차트이다. 본 부호화 방법은 동화상 등에서의 프레임 화상인 입력 화상(D1)에 대하여 소정의 변환 처리 조작 및 부호화 처리 조작을 하여, 화상 전송 시스템이나 화상 축적 시스템에 있어서 전송 또는 축적 가능한 데이터 압축된 부호화 데이터(D9)를 생성하는 화상 부호화 방법이다.
도 1에 도시한 화상 부호화 방법에 있어서, 데이터 처리 조작은 입력 화상(D1)을 소정의 사이즈(소정의 화소수)로 분할한 매크로 블록 단위로 행해진다. 우선, 입력 화상(D1)에 대하여 소정의 데이터 처리 조작을 하여 화상 데이터를 변환하고, 공간 좌표에 의해서 나타나는 예측 잔차 화상(D5) 및 데이터 처리 조작의 정보를 나타내는 부호화 모드 정보(D3) 및 움직임 벡터 정보(D2)를 출력한다(스텝 S101). 여기서, 움직임 벡터 정보(D2)에는 예를 들면, 움직임 벡터의 값 그 자체가 포함되어 있어도 좋고, 대상이 되는 블록에 있어서의 움직임 벡터와 근린의 블록에 있어서의 움직임 벡터와의 차분인 움직임 벡터 차분치가 포함되어 있어도 좋다.
구체적으로는, 뒤에 설명하는 국부 복호 화상(D12)내의 소정의 화상 영역을 참조하여, 상기 부호화 대상 매크로 블록의 화상과 유사한 화상 영역을 탐색하고(움직임 탐색), 탐색의 결과 검출된 상기 부호화 대상 매크로 블록과 유사한 화상 영역에 대한 상기 부호화 대상 매크로 블록의 사이가 공간적인 이동량에 의해서 움직임 벡터를 결정한다(움직임 보상 예측). 또한, 탐색의 결과 검출된 상기 부호화 대상 매크로 블록의 화상 데이터와 유사한 화상 영역과 상기 부호화 대상 매크로 블록과의 화소치의 차분 데이터를 예측 잔차 화상(D5)으로서 생성한다. 그리고, 움직임 탐색의 결과 얻어진 이들의 움직임 벡터 및 화소치의 차분 데이터에 기초하여, 준비된 복수의 매크로 블록 부호화 모드로부터 화상 데이터에 적용하는 매크로 블록 부호화 모드를 선택한다.
매크로 블록 부호화 모드로서는 움직임 보상을 사용하는 인터 부호화 모드와, 움직임 보상을 사용하지 않은 인트라 부호화 모드로 대별할 수 있다. 인터 부호화 모드에서는 매크로 블록에 움직임 보상을 적용하여, 그 결과 얻어지는 화소치의 예측 잔차를 예측 잔차 화상(D5)으로서 출력한다. 또한, 인트라 부호화 모드에서는 매크로 블록 내의 화소치의 예측치를 0으로 함으로써, 입력 화상(D1)이 그대로 예측 잔차 화상(D5)으로서 출력된다. 또한, 선택된 부호화 모드 및 양자화 파라미터를 나타내는 정보를 부호화 모드 정보(D3)로서, 움직임 벡터에 관한 정보를 움직임 벡터 정보(D2)로서 출력한다.
다음에, 예측 잔차 화상(D5)에 대하여 직교 변환 조작을 하여, 공간 주파수에 의해서 나타나는 화상 데이터(주파수 화상 데이터)인 복수의 직교 변환계수(D6)를 생성한다(스텝 S102). 이 직교 변환은 매크로 블록을 더 분할한 블록마다 행해지고, 각각의 직교 변환 계수가 얻어진다.
이 직교 변환 계수는 소정의 양자화 파라미터에 의해서 양자화되고, 양자화 직교 변환 계수(D7)가 얻어진다(스텝 S103).
그런데 블록에 따라서는 양자화에 의해서 블록 내의 직교 변환 계수가 모두 0이 되는 경우가 있다. 그와 같이 모든 직교 변환 계수가 영인 무효 블록에 대해서는 직교 변환 계수에 관한 정보를 부호화할 필요가 없다. 그래서, 상기 블록 내에 유의(有意)인 양자화 직교 변환 계수 있는지의 여부를 나타내는 부호화 블록 패턴 정보(이하, CBP라고 부른다. Coded Block Pattern의 약기)를 사용함으로써 무효 블록의 계수 정보의 부호화를 생략하여, 부호화 효율을 높인다.
또한, 양자화 처리의 결과, 매크로 블록 내의 모든 블록 내의 직교 변환 계수가 모두 영이 되고, 게다가 움직임 벡터의 각 성분도 영이 되는 경우가 있다. 그와 같은 모든 직교 변환 계수가 영인 무효 매크로 블록에 대해서는 상기 매크로 블록에 관한 정보를 부호화할 필요가 없다. 정지하고 있는 배경 부분 등에 이러한 무효 매크로 블록이 많이 발생하기 때문에, 각 매크로 블록에 대하여 매크로 블록 부호화 플래그(COD 플래그)를 사용함으로써 상기 매크로 블록의 유효·무효를 식별한다.
상기 CBP 및 상기 COD 플래그를 부호화 보조 정보(D8)로서 출력한다.
계속해서, 움직임 벡터 정보(D2), 부호화 모드 정보(D3), 양자화 직교 변환 계수(D7), 부호화 보조 정보(D8)에 대하여 가변 길이 부호화 및 다중화를 하여, 압축 데이터인 부호화 데이터(D9)를 생성한다(스텝 S104).
구체적으로는, 움직임 벡터 정보(D2), 부호화 모드 정보(D3), 양자화 직교 변환 계수(D7), 부호화 보조 정보(D8)에 포함되는 각각의 부호화 심볼에 대하여 가변 길이 부호화 테이블을 사용하여 가변 길이 부호화를 함으로써 부호화 데이터(D9)가 생성된다.
도 2는 화상 부호화 장치의 구성의 일 예를 도시하는 블록도이다. 이하, 도 2에 도시한 화상 부호화 장치를 참조하면서, 도 1에 도시한 화상 부호화 방법에 관해서 추가로 설명한다.
부호화 대상으로서 입력된 입력 화상(D1)에 대하여, 우선, 휘도 신호 화상 프레임은 16화소 ×16라인, 색차 신호 화상 프레임은 8화소 ×8라인의 사이즈로 정방형의 화상 블록인 매크로 블록으로 분할된다. 이 매크로 블록은 움직임 보상 등의 데이터 처리의 단위가 되는 화상 블록이다. 또, 후술하는 DCT(직교 변환)에서는 예를 들면 MPEG-4 부호화 방식에서는 8화소 ×8라인의 사이즈의 DCT 블록이 사용된다. 이 경우, 1개의 매크로 블록은 DCT에 있어서, 4개의 휘도(Y) 블록과, 2개의 색차(Cb, Cr) 블록을 갖는다. 화상 부호화는 이들의 블록마다 행해진다.
입력 화상(D1)은 움직임 검출부(11) 및 움직임 보상부(12)로 이루어지는 움직임 보상 수단으로 입력된다. 우선, 입력 화상(D1)은 움직임 검출부(11)에 입력되고, 매크로 블록마다 화상의 움직임이 검출된다. 움직임 검출부(11)는 상기 부호화 대상 매크로 블록의 화상 데이터와, 국부 복호 화상 내의 매크로 블록과 동일한 크기의 화상 영역에서의 화상 데이터를 비교함으로써, 상기 부호화 대상 매크로 블록의 화상과 유사한 화상 영역을 검출하여, 화상의 움직임을 나타내는 움직임 벡터(D2)를 생성한다.
구체적으로는 움직임 검출부(11)에서는 부호화가 완료된 프레임 화상으로서 프레임 메모리(20)에 격납되어 있는 국부 복호 화상(D12)내의 소정의 화상 영역을 참조하여, 입력 화상(D1)내의 부호화 대상으로 되어 있는 매크로 블록과 유사한 화상 영역을 탐색한다. 그리고, 탐색의 결과 검출된 상기 부호화 대상 매크로 블록의 화상 데이터와 유사한 화상 영역과 상기 부호화 대상 매크로 블록의 사이의 공간적인 이동량에 의해서, 움직임 벡터 정보(D2)를 결정한다.
또한 이 때, 미리 준비된 복수의 부호화 모드 중에서, 상기 부호화 대상 매크로 블록에 사용되는 부호화 모드가 선택된다. 도 3a 내지 도 3c는 움직임 보상에 관해서 준비되는 부호화 모드의 일 예를 도시하는 모식도이다. 도 3a에 예시한 부호화 모드는 인터 부호화 모드 0이고, 도 3b에 예시한 부호화 모드는 인터 부호화 모드 1이고, 도 3c에 예시한 부호화 모드는 인트라 부호화 모드 2이다.
인터 부호화 모드 0 내지 1은 각각 다른 움직임 보상용 블록으로의 블록 구분을 사용하여 프레임간 부호화를 하는 경우의 모드이다. 각각에서의 움직임 보상용 블록에 대해서는 도 3a에 도시하는 바와 같이, 인터 부호화 모드 0에서는 휘도 성분 화상에 대하여 16화소 ×16라인의 사이즈로 1개의 블록이 사용된다. 또한, 도 3b에 도시하는 바와 같이, 인터 부호화 모드 1에서는 휘도 성분 화상에 대하여 8화소 ×8라인의 사이즈로 4개의 블록이 사용된다.
상기 움직임 벡터 정보(D2)는 선택된 인터 부호화 모드에 있어서의 구분된움직임 보상용 블록마다 부여된다. 따라서, 각 매크로 블록에 대하여, 구분된 블록의 개수분의 움직임 벡터 정보(D2)가 부여된다. 각 움직임 보상용 블록으로의 움직임 벡터 정보(D2)의 부여의 수순에 대해서는 예를 들면, 도 3a 내지 도 3c 중의 각 부호화 모드에 있어서, 블록 내의 숫자에 의해서 나타낸 수순으로 행해진다. 또, 색차 성분 화상에 대해서는 양 인터 부호화 모드 모두 8화소 ×8라인의 사이즈의 블록을 사용하여, 휘도 성분 화상에 대한 움직임 벡터의 반의 길이의 움직임 벡터가 할당된다.
부호화 모드의 선택 방법으로서 일 예를 들면, 예를 들면 매크로 블록 내의 움직임 보상 후의 예측 잔차 화상의 화소치의 분산치를 구하고, 상기 분산치가 미리 설정해 둔 임계치보다 큰 경우, 혹은 입력 화상에 있어서의 상기 매크로 블록의 화소치의 분산치보다 큰 경우에는 인트라 부호화 모드를 선택하고, 그 이외의 경우에는 인터 부호화 모드를 선택한다. 이것은 상기 매크로 블록의 화상 데이터가 복잡한 경우에 인트라 부호화 모드를 선택하는 것을 의미한다.
인터 부호화 모드가 선택된 경우에는 매크로 블록을 4개로 분할한 블록마다 움직임 탐색을 함으로써 각 블록에 대응하는 움직임 벡터 및 화상 데이터의 차분치를 생성한다. 그리고, 인터 부호화 모드 0에 있어서의 1개의 움직임 벡터에 대한 부호량 M(MV), 인터 부호화 모드 1에 있어서의 4개의 움직임 벡터에 대한 부호량의 합계치 M(4MV)를 산출한다. 또한 인터 부호화 모드 0에 있어서의 화상 데이터의 차분치 D(MV), 인터 부호화 모드 1에 있어서의 화상 데이터의 차분치의 합계치 D(4MV)를 산출한다. 그리고, 미리 설정하고 있는 계수 α를 사용하여,M(MV)+α·D(MV)와 M(4 MV)+α·D(4 MV)의 값을 비교하여, 예를 들면 전자 쪽이 작거나 같으면 인터 부호화 모드 0을 선택하고, 후자 쪽이 작으면 인터 부호화 모드 1을 선택한다.
상기 부호화 모드가 인터 부호화 모드인 경우에는 각 움직임 보상용 블록에 대하여 움직임 벡터가 구해지면, 움직임 보상부(12)에 있어서, 움직임 검출부(11)로부터의 움직임 벡터 정보(D2)와, 프레임 메모리(20)로부터의 국부 복호 화상(D12)을 사용하여, 예측 화상(D4)을 생성한다. 계속해서, 감산기(13)에 있어서, 입력 화상(D1)과 예측 화상(D4)의 사이의 차분(예측 잔차)을 구함으로써 예측 잔차 화상(D5)이 생성된다.
상기 부호화 모드가 인트라 부호화 모드인 경우에는 예측 화상(D4)의 화소 데이터를 0으로 함으로써, 입력 화상(D1)이 그대로 예측 잔차 화상(D5)으로서 출력된다.
또한, 선택된 부호화 모드를 나타내는 정보 및 양자화 파라미터를 부호화 모드 정보(D3)로서, 움직임 벡터에 관한 정보를 움직임 벡터 정보(D2)로서 출력한다.
예측 잔차 화상(D5)의 화상 데이터는 직교 변환부(직교 변환 수단; 14)로 입력된다. 직교 변환부(14)에서는 예측 잔차 화상(D5)에 대하여, 매크로 블록에 포함되는 직교 변환 블록마다 직교 변환이 행해지고, 주파수 화상 데이터인 직교 변환 계수(D6)가 생성된다. 예를 들면 MPEG-4에서는 휘도 성분 화상에 대하여 8화소 ×8라인의 사이즈의 4개의 블록이, 각각의 색차 성분 화상에 대하여 8화소 ×8라인의 사이즈의 1개의 직교 변환 블록이 매크로 블록에 포함된다.
도 4a, 도 4b는 화상 데이터의 직교 변환에 관해서 도시하는 도면이다. 예측 잔차 화상(D5)내에 있는 직교 변환용으로 분할된 각 블록의 화상 데이터는 공간화상 데이터이고, 도 4a에 8화소 ×8라인의 화상 성분에 의해서 예시하는 것처럼, 수평 좌표와 수직 좌표로 규정되는 8화소 ×8라인의 공간 화상 성분 a11내지 a88에 의해서 나타난다. 직교 변환부(14)는 이 공간 화상 데이터를 소정의 변환 방법으로 직교 변환함으로써, 도 4b에 도시하는 주파수 화상 데이터로 변환한다. 이 주파수 화상 데이터는 수평 주파수와 수직 주파수로 규정되는 8화소 ×8라인의 주파수 화상 성분인 직교 변환 계수 f11내지 f88에 의해서 나타난다.
구체적인 직교 변환으로서는 예를 들면, 이산 코사인 변환(DCT: Discrete Cosine Transform)을 적용할 수 있다. DCT는 푸리에 변환의 코사인의 항을 사용하는 직교 변환이고, 화상 부호화에 있어서 많이 사용되고 있다. 공간 화상 데이터에 대하여 DCT를 행함으로써, 주파수 화상 데이터인 DCT 계수 f11내지 f88이 생성된다. 또, DCT에서는 예를 들면 MPEG-4 부호화 방식으로서는 직교 변환용의 블록으로서, 도 4a, 도 4b에 도시하는 바와 같이 8화소 ×8라인의 DCT 블록이 사용된다.
이렇게 하여 생성된 직교 변환 계수(D6)는 양자화부(15)에 있어서 소정의 양자화 파라미터에 의해서 양자화되어, 양자화 직교 변환 계수(D7)가 얻어진다. 또한, 블록 단위에 유의인 직교 변환 계수 있는지의 여부를 나타내는 CBP 및 매크로 블록 내에 유의인 직교 변환 계수가 있는지의 여부를 나타내는 COD 플래그를 생성하여, 부호화 보조 정보(D8)로서 출력한다.
양자화부(15)에 의해서 생성된 양자화 직교 변환 계수(D7) 및 부호화 보조 정보(D8)는 가변 길이 부호화부(16)에 있어서 가변 길이 부호화되고, 이로써 입력 화상(D1)의 압축 데이터인 부호화 데이터(D9)가 생성된다. 또한, 가변 길이 부호화부(16)에는 또한 움직임 검출부(11)에 의해서 검출된 움직임 벡터 정보(D2)와, 움직임 검출부(11)에 있어서 선택된 부호화 모드 및 양자화 파라미터를 나타내는 부호화 모드 정보(D3)가 입력되어 있다. 이들의 움직임 벡터 정보(D2) 및 부호화 모드 정보(D3)도 가변 길이 부호화부(16)에 있어서 가변 길이 부호화되고, 부호화 데이터(D9)에 다중화된다.
또한, 양자화부(15)에 있어서 생성된 양자화 직교 변환 계수(D7)는 본 화상 부호화 장치 내에서, 역양자화부(17)에 의해서 역양자화되어 역양자화 직교 변환 계수(D10)가 되고, 또한 역직교 변환부(18)에 의해서 역직교 변환되어 국부 복호 잔차 화상(D11)이 된다. 그리고, 국부 복호 잔차 화상(D11)과 예측 화상(D4)이 가산기(19)에 있어서 가산되어, 국부 복호 화상(D12)이 생성된다. 이 국부 복호 화상(D12)은 프레임 메모리(20)에 격납되어, 다른 프레임 화상의 움직임 보상에 이용된다.
다음에, 동화상 복호 방법 및 동화상 복호 장치의 일 예를 제시한다.
도 5는 화상 복호 방법의 일 예를 개략적으로 도시하는 플로차트이다. 상기 복호 방법은 도 1에 도시한 화상 부호화 방법에 의해서 생성된 부호화 데이터(D9)에 대하여 소정의 복호 처리 조작 및 변환 처리 조작을 하여, 국부 복호 화상(D12)과 동일한 화상으로서 복호 화상(D12)을 복원하는 화상 복호 방법이다.
도 5에 도시한 화상 복호 방법에 있어서는 우선, 부호화 데이터(D9)에 대하여 가변 길이 복호 테이블을 사용하여 가변 길이 복호를 하여, 양자화 직교 변환 계수(D7)를 생성한다(스텝 S201). 또한, 움직임 벡터 정보(D2), 부호화 모드 정보(D3), 부호화 보조 정보(D8)도 마찬가지로 가변 길이 복호 테이블을 사용하여 부호화 데이터(D9)로부터 가변 길이 복호된다.
구체적으로는 우선, 부호화 데이터(D9)에 대하여 적용하는 가변 길이 복호 테이블이 설정되고, 그 가변 길이 복호 테이블을 사용하여 부호화 데이터(D9)가 가변 길이 복호되어 각각의 부호화 심볼이 생성된다.
다음에, 양자화 직교 변환 계수(D7)에 대하여 역양자화 조작을 하여 역양자화 직교 변환 계수(D10)를 생성하고(스텝 S202), 또한 역직교 변환 조작을 하여 국부 복호 잔차 화상(D11)을 생성한다(스텝 S203). 그리고, 국부 복호 잔차 화상(D11) 및 이미 복호 프레임을 사용하여 부호화 모드 정보(D3)가 나타나는 부호화 모드를 적용하여 움직임 보상을 하여, 복호 화상(D12)을 복원한다(S204).
도 6은 동화상 복호 장치의 일 예의 구성을 개략적으로 도시하는 블록도이다.
복호 대상으로서 입력된 부호화 데이터(D9)는 가변 길이 복호부(21)에 입력되고, 소정의 가변 길이 복호 테이블을 사용하여 가변 길이 복호되어 움직임 벡터 정보(D2), 부호화 모드 정보(D3), 양자화 직교 변환 계수(D7), 부호화 보조 정보(D8)의 각 복호 심볼이 생성된다. 구체적으로는 가변 길이 복호부(21)는 데이터 압축된 부호화 데이터(D9)에 관해서, 프레임 화상의 선두로부터, 매크로 블록마다 부호화 데이터(D9)에 포함되어 있는 각 데이터를 비트 스트림으로부터 판독하고, 그것을 가변 길이 복호하여, 움직임 벡터 정보(D2), 부호화 모드 정보(D3), 양자화 직교 변환 계수(D7), 부호화 보조 정보(D8)를 생성한다. 또, 가변 길이 복호에 사용하는 가변 길이 복호 테이블은 상술한 바와 같이 적절하게 각 심볼에 따라서 바뀌어진다.
양자화 직교 변환 계수(D7)는 역양자화부(22) 및 역직교 변환부(23)에 의해서 역양자화, 역직교 변환된다. 이로써, 국부 복호 잔차 화상(D11)이 생성된다. 이 국부 복호 잔차 화상(D11)은 부호화전의 예측 잔차 화상(D5)에 대응한 화상이지만, 양자화·역양자화의 프로세스에 의해서 정보가 없어져 있다.
한편, 움직임 벡터 정보(D2) 및 부호화 모드 정보(D3)는 움직임 보상부(24)로 입력된다. 움직임 보상부(24)에서는 부호화 모드 정보(D3)가 나타내는 부호화 모드에 의해서 화상의 움직임 보상이 행해지고, 가변 길이 복호부(21)로부터의 움직임 벡터 정보(D2)와, 프레임 메모리(25)에 격납되어 있는 복호 화상을 사용하여, 예측 화상(D4)이 생성된다. 그리고, 가산기(26)에 있어서, 국부 복호 잔차 화상(D11)과 예측 화상(D4)이 가산되고, 복원된 프레임 화상이 복호 화상(Dl2)으로서 출력된다.
본 발명은 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법, 화상 복호 방법, 화상 부호화 프로그램 및 화상 복호 프로그램에 관한 것이다.
도 1은 종래의 기술에 따른 동화상 부호화 수법의 일 예를 개략적으로 도시하는 플로차트.
도 2는 종래의 기술에 따른 동화상 부호화 장치의 일 예를 개략적으로 도시하는 블록도.
도 3a 내지 도 3c는 종래의 기술에 따른 매크로 블록 부호화 모드 종별의 일 예를 도시하는 도면.
도 4a, 도 4b는 종래의 기술에 따른 직교 변환의 일 예를 도시하는 도면.
도 5는 종래의 기술에 따른 동화상 복호 수법의 일 예를 개략적으로 도시하는 플로차트.
도 6은 종래의 기술에 따른 동화상 복호 장치의 일 예를 개략적으로 도시하는 블록도.
도 7a, 도 7b는 비영 양자화 직교 변환 계수의 분포의 일 예를 도시하는 도면.
도 8은 매크로 블록 내의 블록과 인접하는 블록의 관계를 도시하는 도면.
도 9a, 도 9b는 휘도 신호의 부호화 블록 패턴 정보와 인덱스치의 관계를 나타내는 맵 테이블의 일 예 및, 인덱스치와 가변 길이 부호의 관계를 나타내는 가변 길이 부호화 테이블의 일 예를 도시하는 도면.
도 10a, 도 10b는 휘도 신호의 부호화 블록 패턴 정보에 본 발명에 따른 맵 테이블의 교체를 적용한 일 예를 도시하는 도면.
도 11a, 도 11b는 색차 신호의 부호화 블록 패턴 정보와 인덱스치의 관계를 나타내는 맵 테이블의 일 예 및, 인덱스치와 가변 길이 부호의 관계를 나타내는 가변 길이 부호화 테이블의 일 예를 도시하는 도면.
도 12a, 도 12b는 색차 신호의 부호화 블록 패턴 정보에 본 발명에 따른 맵 테이블의 교체를 적용한 일 예를 도시하는 도면.
도 13은 본 발명에 따른 가변 길이 부호화부의 일 예를 개략적으로 도시하는 블록도.
도 14는 본 발명에 따른 가변 길이 복호부의 일 예를 개략적으로 도시하는 블록도.
도 15a, 도 15b는 본 발명에 따른 부호화 블록 패턴 정보의 콘텍스트(context) 생성에 사용하는 블록의 위치의 일 예를 도시하는 도면이다.
도 16a, 도 16b는 H.26L 부호화 방식에 있어서의 매크로 블록 및 부호화 블록 패턴 정보의 구성을 개략적으로 도시하는 도면.
도 17a, 도 17b는 H.26L 부호화 방식에 있어서 본 발명을 적용하는 경우의 매크로 블록과 인접하는 블록의 관계를 도시하는 도면.
도 18a 내지 도 18d는 H.26L 부호화 방식에 있어서의 부호화 블록 패턴 정보에 본 발명에 따른 맵 테이블의 교체를 적용한 일 예를 도시하는 도면.
도 19는 H.26L 부호화 방식에 있어서의 색차 신호의 부호화 블록 패턴 정보에 본 발명에 따른 맵 테이블의 교체를 적용한 일 예를 도시하는 도면.
도 20a, 도 20b는 부호화 블록 패턴 정보의 각 심볼의 출현 확률의 분포의 일 예를 도시하는 도면.
도 21a 내지 도 21c는 복수의 특성이 다른 가변 길이 부호화 테이블의 일 예를 도시하는 도면.
도 22a 내지 도 22d는 양자화 직교 변환 계수의 부호화 방법을 개략적으로 도시한 도면.
도 23은 부호화 대상 매크로 블록과, 인접하는 매크로 블록의 위치 관계를 도시하는 도면.
도 24a 내지 도 24j는 매크로 블록 부호화 모드 종별의 다른 일 예를 개략적으로 도시한 도면.
도 25는 매크로 블록 부호화 모드에 대한 포인트의 정의의 일 예를 도시한 도면.
도 26a, 도 26b는 매크로 블록 부호화 모드와 인덱스치의 관계를 도시하는 맵 테이블의 일 예 및, 인덱스치와 가변 길이 부호의 관계를 도시하는 가변 길이 부호화 테이블의 일 예를 도시하는 도면.
도 27은 매크로 블록 부호화 모드에 대한 포인트의 정의의 다른 일 예를 도시한 도면.
도 28a, 도 28b는 매크로 블록 부호화 모드와 인덱스치의 관계를 나타내는 맵 테이블의 다른 일 예 및, 인덱스치와 가변 길이 부호의 관계를 나타내는 가변 길이 부호화 테이블의 다른 일 예를 도시하는 도면.
도 29a는 화상 전송 시스템의 구성을 개략적으로 도시하는 도면.
도 29b는 화상 축적 시스템의 구성을 개략적으로 도시하는 도면.
도 29c는 화상 재생 시스템의 구성을 개략적으로 도시하는 도면.
도 30은 본 발명에 따른 가변 길이 부호화부의 일 예를 개략적으로 도시하는 블록도.
도 31은 CX가 0으로부터 7까지의 값을 취하는 경우의 맵 테이블 MT(CX)을 도시하는 도면.
도 32는 본 발명에 따른 가변 길이 복호부의 일 예를 개략적으로 도시하는 블록도.
도 33은 부호화 대상 매크로 블록과, 인접하는 매크로 블록의 위치 관계를 도시한 도면.
도 34a, 도 34b는 비영 양자화 직교 변환 계수치와 인덱스치의 관계를 나타내는 맵 테이블의 일 예 및, 인덱스치와 가변 길이의 관계를 나타내는 길이 부호화 테이블의 일 예를 도시하는 도면.
도 35a, 도 35b는 본 발명에 따른 맵 테이블의 변경예, 및 변경 후의 맵 테이블을 사용한 부호열의 일 예를 도시하는 도면.
도 36은 레벨치의 절대치가 1인 것이 연속하는 수를 부호표에 할당한 맵 테이블의 일 예를 도시하는 도면.
도 37a 내지 도 37c는 복수의 특성이 다른 가변 길이 부호화 테이블의 다른 일 예를 도시하는 도면.
도 38a 내지 도 38c는 확률 테이블을 도시하는 도면.
상술한 바와 같이, 종래의 일반적인 동화상 부호화 방식에 있어서는 매크로 블록 내의 소정의 블록마다, 유의인 화상 데이터가 포함되는지의 여부를 나타내는부호화 블록 패턴 정보(CBP)를 전송함으로써, 블록마다의 화상 데이터 전송을 생략할 수 있도록 하여, 부호화의 효율을 높이고 있었다. 또한 부호화 블록 패턴 정보는 휘도 신호와 색차 신호에서 다른 엔트로피 부호를 사용함으로써, 각각의 신호의 특성에 맞추어서 보다 적합한 엔트로피 부호를 적용하여 부호화하여, 부호화의 효율을 높이고 있었다.
블록마다의 유의인 화상 데이터를 나타내는 부호화 블록 패턴 정보는 상기 마이크로 블록에 있어서의 유의인 화상 데이터를 발생하기 쉽거나, 혹은 유의인 화상 데이터를 가지는 블록마다의 출현 패턴을 나타내고 있다고 할 수 있다. 이러한 정보는 휘도 신호 또는 색차 신호의 동일한 신호에 있어서도, 부호화 조건이나 화상의 성질에 따라, 그 성질이 크게 다르다.
예를 들면, 동화상 부호화에 있어서는 양자화 파라미터에 의해서 직교 변환 계수를 양자화하고, 그 과정에 있어서, 작은 값을 갖고 복호 화상의 품질에 큰 영향을 주지 않는 직교 변환 계수를 0으로서 생략함으로써, 화상 데이터의 양을 적게 하는 처리가 행해진다.
이 때, 양자화 파라미터가 큰 값을 취하는 경우에는, 보다 거친 양자화가 이루어지기 때문에, 많은 직교 변환 계수가 0으로서 생략되고, 따라서 유의인 화상 데이터를 갖는 블록이 적어진다. 이 때, 유의인 화상 데이터를 가진 블록이 적은 부호화 블록 패턴 정보에 대하여 보다 부호 길이가 짧은 부호가 할당된 정보원 부호화를 하면, 효율적인 부호화를 할 수 있다.
다른 한편으로 양자화 파라미터가 작은 값을 취하는 경우에는, 보다 미세한양자화가 이루어지기 때문에, 0으로서 생략되어 버리는 직교 변환 계수는 적어지고, 따라서 유의인 화상 데이터를 가지는 블록은 많아진다. 이러한 경우, 유의인 화상 데이터를 가지는 블록이 많은 부호화 블록 패턴 정보에 대하여 보다 부호 길이가 긴 부호가 할당된 정보원 부호화를 하면, 효율적인 부호화를 할 수 없게 된다.
또한 예를 들면, 동화상 부호화에 있어서는 움직임 보상 프레임간 예측 부호화의 처리에 의해, 화상 상에서의 움직임이 크고 또한 복잡한 영역에서는 예측이 들어맞기 어렵게 차분 화상의 신호가 커지는 경향이 있는 것에 대하여, 화상 상에서의 움직임이 작고 또한 단순한 영역에서는 예측이 들어맞기 쉽게 차분 화상의 신호가 작아지는 경향이 있다.
이 때, 차분 화상의 신호가 커지는 경우에는 유의인 화상 데이터를 가지는 블록이 많아지고, 또한 차분 화상의 신호가 작게 되는 경우에는 유의인 화상 데이터를 가지는 블록은 적어진다. 이러한 경우에도 한 개의 정보원 부호화 수단에 의해 부호화 블록 패턴 정보를 부호화하면, 어느 쪽의 경우에 있어서도 효율적으로 되는 부호화를 하는 것은 어렵다.
또한, 통상, 움직임 벡터는 주위의 블록의 움직임 벡터의 값으로부터 부호화 대상이 되는 블록에 있어서의 움직임 벡터치를 예측한 예측 움직임 벡터와 실제의 움직임 벡터와의 차분인 차분 움직임 벡터가 정보원 부호화된다. 차분 움직임 벡터는 주변 화상의 움직임이 단조로운 경우에는 그 크기가 0에 집중하는 경향이 있는 것에 대하여, 주변 화상의 움직임이 심한 경우에는 차분 움직임 벡터의 크기가 0에집중하지 않는 경향이 있다. 따라서 이러한 경우에도, 한 개의 정보원 부호화 수단에 의해 차분 움직임 벡터를 부호화하면, 어느 쪽의 경우에 있어서도 효율적으로 되는 부호화를 하는 것은 어렵다.
또한, 매크로 블록의 부호화 모드에 대해서도 주변 화상의 움직임이나 텍스처(texture)가 복잡한 경우와 단조로운 경우에서 발생하는 부호화 모드의 확률 분포의 특성이 크게 다르기 때문에, 1개의 정보원 부호화 수단에 의해 부호화 모드를 부호화하면, 어떠한 경우에 있어서도 효율적이 되는 부호화를 하는 것은 어렵다.
또한, 양자화 직교 변환 계수에 대해서도, 부호화 조건이나 화상의 성질에 따라, 블록 내에 발생하는 계수의 분포의 특성이 크게 다르다. 예를 들면, 양자화 파라미터가 작은 값을 취하는 경우에는, 보다 미세한 양자화가 이루어지기 때문에, 값이 큰 양자화 직교 변환 계수가 대부분 발생하는 경향이 있는 것에 대하여, 양자화 파라미터가 큰 값을 취하는 경우에는 값의 작은 양자화 직교 변환 계수가 발생하기 쉬운 경향이 있다. 이러한 경우에도, 한 개의 정보원 부호화 수단에 의해 양자화 직교 변환 계수를 부호화하면, 어느 쪽의 경우에 있어서도 효율적으로 되는 것은 부호화를 하는 것은 어렵다.
여기서, 양자화 직교 변환 계수에 대하여 보다 상세하게 언급해 둔다. 상술한 바와 같이, 종래의 일반적인 화상 부호화 방식에 있어서는 양자화된 직교 변환 계수에 대하여 또한 가변 길이 부호화, 즉 정보원 부호화를 하고, 직교 변환 계수의 전송에 필요한 정보량을 삭감함으로써, 부호화의 효율을 높이고 있었다.
직교 변환 계수에 대하여, 어떠한 정보가 발생하기 쉬운가라는 성질은 화상의 성질에 따라 변화한다. 예를 들면 동화상 부호화에 있어서 인트라 부호화 모드이거나 또는 인터 부호화 모드인지에 따라서, 직교 변환되는 화상이 화상 그 자체이거나, 혹은 움직임 보상이 행해진 후의 잔차 화상인지가 다르기 때문에, 직교 변환 계수의 성질도 크게 달라진다. 이 때문에 일반적인 동화상 부호화 방식에 있어서는 각각의 부호화 모드에 있어서의 직교 변환 계수에 대하여 각각 전용의 가변 길이 부호화 테이블을 준비함으로써, 각각의 직교 변환 계수의 성질에 적합한 정보원 부호화가 이루어지도록 되어 있다.
그러나 직교 변환 계수는 부호화하고자 하는 직교 변환 계수 그 자체의 상황에 의해서도, 어떠한 정보가 발생하기 쉬운가라는 성질이 변화한다.
직교 변환 계수는 화상 신호를 직교 변환에 의해 공간 주파수 영역에서의 이산 신호로 변환한 결과로서 얻어지는 것이다. 따라서, 자연 화상에 있어서는 인접하는 화소끼리의 상관이 높게 공간 저주파 영역의 신호가 보다 강하게 되기 때문에, 이것을 직교 변환한 직교 변환 계수는 일반적으로, 저주파 영역에서 큰 계수치가 빈틈없이 발생하기 쉬워지는 한편, 고주파 영역에서는 비제로의 계수치가 발생하기 어렵게 되고 또 큰 계수치를 취하는 것도 적다는 특징이 있다. 더욱이 일반적인 화상 부호화 방식에 있어서는 상술한 양자화에 의해, 고주파 영역에서의 값의 작은 직교 변환 계수가 제로가 되는 처리가 이루어진다. 이것은 사람의 시각상에 있어서의 영향이 작은 신호를 삭감하여 보다 부호화 효율을 높이고자 하는 것이지만, 이러한 처리에 의해, 고주파 영역에서는 계수치가 발생하기 어려워진다는 경향이 보다 강해진다.
또한 직교 변환 계수에서는 자연 화상에 있어서는 각 계수의 발생은 전혀 상관없는 것은 아니며, 예를 들면 화상 신호에 화소치가 큰 신호가 포함되어 있으면, 이것을 직교 변환 한 계수치는 큰 값을 취하는 것이 많아진다. 혹은 반대로, 각각의 직교 변환 계수가 속하는 주파수 영역이 이격된 영역이면, 상술한 주파수 영역에 의한 성질의 차이도 있어, 각 계수의 상관은 낮아진다.
이와 같이 직교 변환 계수는 그것이 속하는 주파수 영역 등에 의해서 그 성질이 크게 변화하지만, 일반적인 화상 부호화 방식에 있어서는 그 변화에 관계없이 일률적인 정보원 부호화를 하고 있고, 효율적인 정보원 부호화가 실현되어 있지 않다는 문제가 있었다.
이와 같이 종래의 동화상 부호화에 있어서는 부호화 관련 정보에 대하여, 그 성질이, 부호화 조건이나 화상의 성질에 따라 다르기 때문에, 정보원 부호화를 효율적으로 행할 수 없다는 문제가 있었다.
본 발명은 이상과 같은 문제점을 해결하기 위해서 이루어진 것으로, 부호화 관련 정보의 정보원 부호화가, 부호화 조건이나 화상의 성질에 따라서 효율적으로 이루어질 수 있는 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법, 화상 복호 방법, 화상 부호화 프로그램 및 화상 복호 프로그램을 제공하는 것을 과제로 한다.
상기 과제를 해결하기 위해서, 본 발명의 화상 부호화 장치는 부호화 대상 화상을 소정 사이즈의 매크로 블록으로 분할하고, 상기 매크로 블록을 매크로 블록 타입에 기초하여 특정되는 소정의 형상 및 사이즈의 블록으로 분할하고, 상기 블록을 단위로 하여 움직임 보상 예측을 하여 움직임 벡터를 출력하는 움직임 검출부와, 상기 움직임 검출부에 의해서 출력된 상기 움직임 벡터에 기초하여 참조 화상으로부터 예측 화상을 생성하는 움직임 보상부와, 상기 움직임 보상부에 의해서 생성된 상기 예측 화상과 상기 부호화 대상 화상과의 차분 연산을 행하고 예측 잔차 화상을 출력하는 감산부와, 상기 감산부에 의해서 출력된 상기 예측 잔차 화상을 소정의 변환 블록을 단위로 하여 변환 부호화하여 변환 계수를 출력하는 변환부와, 상기 변환부에 의해서 출력된 상기 변환 계수를 양자화 계수에 기초하여 양자화하여 양자화 변환 계수를 출력하는 양자화부와, 상기 움직임 검출부에 의해서 출력된 상기 움직임 벡터와 상기 매크로 블록 타입과 상기 양자화 계수와 상기 양자화부에 의해서 출력된 상기 양자화 변환 계수를 포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 출력하는 부호화부를 구비하는 화상 부호화 장치로서, 상기 부호화부는 상기 부호화 관련 정보를 기억하는 부호화 심볼 메모리와, 1개 또는 복수 종류의 부호화 수순을 제공하는 부호화 수순 제공부와, 상기 부호화 심볼 메모리에 격납되어 있는 부호화 관련 정보를 이용하여, 소정의 부호화 수순 선택 기준에 기초하여, 상기 부호화 수순 제공부가 제공하는 어느 하나의 부호화 수순을 선택하고, 선택된 부호화 수순에 기초하여 상기 부호화 관련 정보를 압축 부호화하여 부호화 데이터를 출력하는 부호화 데이터 출력부를 구비하는 것을 특징으로 하고 있다.
또한, 이것에 대응하는 화상 복호 장치는 부호화 대상 화상이 소정 사이즈의 매크로 블록으로 분할되고, 상기 매크로 블록이 매크로 블록 타입에 기초하여 특정되는 소정의 형상 및 사이즈의 블록으로 분할되고, 상기 블록을 단위로 하여 움직임 보상 예측이 행해져 출력된 움직임 벡터와, 상기 움직임 벡터에 기초하여 참조 화상으로부터 예측 화상이 생성되고, 상기 예측 화상과 상기 부호화 대상 화상과의 차분 연산이 행해져 예측 화상이 출력되고, 상기 예측 잔차 화상이 소정의 변환 블록을 단위로 하여 변환 부호화되어 변환 계수가 출력되고, 상기 변환 계수가 양자화 계수에 기초하여 양자화된 양자화 변환 계수와, 상기 매크로 블록 타입과, 상기 양자화 계수를 포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 복호하는 복호부를 구비한 화상 복호 장치로서, 상기 복호부는 복호가 완료된 상기 부호화 관련 정보를 기억하는 복호 심볼 메모리와, 1개 또는 복수 종류의 복호 수순을 제공하는 복호 수순 제공부와, 상기 복호 심볼 메모리에 격납되어 있는 복호가 완료된 부호화 관련 정보를 이용하여, 소정의 복호 수순 선택 기준에 기초하여, 상기 복호 수순 제공부가 제공하는 어느 하나의 복호 수순으로서 복호 대상이 되는 부호화 관련 정보의 부호화에 사용된 부호화 수순에 대응하는 복호 수순을 선택하고, 선택된 복호 수순에 기초하여 상기 부호화 관련 정보를 복호하여 복호 데이터를 출력하는 복호 데이터 출력부를 구비하는 것을 특징으로 하고 있다.
또한, 상기 과제를 해결하기 위해서 본 발명의 화상 부호화 방법은 부호화 대상 화상을 소정 사이즈의 매크로 블록으로 분할하고, 상기 매크로 블록을 매크로 블록 타입에 기초하여 특정되는 소정의 형상 및 사이즈의 블록으로 분할하고, 상기 블록을 단위로 하여 움직임 보상 예측을 하여 움직임 벡터를 출력하는 움직임 검출 스텝과, 상기 움직임 검출 스텝에 있어서 출력된 상기 움직임 벡터에 기초하여 참조 화상으로부터 예측 화상을 생성하는 움직임 보상 스텝과, 상기 움직임 보상 스텝에 있어서 생성된 상기 예측 화상과 상기 부호화 대상 화상과의 차분 연산을 행하여 예측 잔차 화상을 출력하는 감산 스텝과, 상기 감산 스텝에 있어서 출력된 상기 예측 잔차 화상을 소정의 변환 블록을 단위로 하여 변환 부호화하여 변환 계수를 출력하는 변환 스텝과, 상기 변환 스텝에 있어서 출력된 상기 변환 계수를 양자화 계수에 기초하여 양자화하여 양자화 변환 계수를 출력하는 양자화 스텝과, 상기 움직임 검출스텝에 있어서 출력된 상기 움직임 벡터와 상기 매크로 블록 타입과 상기 양자화 계수와 상기 양자화 스텝에 있어서 출력된 상기 양자화 변환 계수를 포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 출력하는 부호화 스텝을 구비하는 화상 부호화 방법으로서, 상기 부호화 스텝은 1개 또는 복수 종류의 부호화 수순을 준비해 두고, 부호화 심볼 메모리에 격납되어 있는 부호화 관련 정보를 이용하여, 소정의 부호화 수순 선택 기준에 기초하여, 상기 1개 또는 복수 종류의 부호화 수순 중에서 어느 하나의 부호화 수순을 선택하고, 선택된 부호화 수순에 기초하여 상기 부호화 관련 정보를 압축 부호화하여 부호화 데이터를 출력하는 것을 특징으로 하고 있다.
또한, 이것에 대응하는 화상 복호 방법은 부호화 대상 화상이 소정 사이즈의 매크로 블록으로 분할되고, 상기 매크로 블록이 매크로 블록 타입에 기초하여 특정되는 소정의 형상 및 사이즈의 블록으로 분할되고, 상기 블록을 단위로 하여 움직임 보상 예측이 행해져 출력된 움직임 벡터와, 상기 움직임 벡터에 기초하여 참조 화상으로부터 예측 화상이 생성되고, 상기 예측 화상과 상기 부호화 대상 화상의차분 연산이 행해지고 예측 화상이 출력되고, 상기 예측 잔차 화상이 소정의 변환 블록을 단위로 하여 변환 부호화되어 변환 계수가 출력되고, 상기 변환 계수가 양자화 계수에 기초하여 양자화된 양자화 변환 계수와, 상기 매크로 블록 타입과, 상기 양자화 계수를 포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 복호하는 복호 스텝을 구비한 화상 복호 방법으로서, 상기 복호 스텝은 1개 또는 복수 종류의 복호 수순을 준비해 두고, 복호 심볼 메모리에 격납되어 있는 복호가 완료된 부호화 관련 정보를 이용하여, 소정의 복호 수순 선택 기준에 기초하여, 상기 1개 또는 복수 종류의 복호 수순 중에서 어느 하나의 복호 수순으로서 복호 대상이 되는 부호화 관련 정보의 부호화에 사용된 부호화 수순에 대응하는 복호 수순을 선택하고, 선택된 복호 수순에 기초하여 상기 부호화 관련 정보를 복호하여 복호 데이터를 출력하는 것을 특징으로 하고 있다.
또한, 상기 과제를 해결하기 위해서, 본 발명의 화상 부호화 프로그램은 컴퓨터를 부호화 대상 화상을 소정 사이즈의 매크로 블록으로 분할하고, 상기 매크로 블록을 매크로 블록 타입에 기초하여 특정되는 소정의 형상 및 사이즈의 블록으로 분할하고, 상기 블록을 단위로 하여 움직임 보상 예측을 하여 움직임 벡터를 출력하는 움직임 검출 수단과, 상기 움직임 검출 수단에 의해서 출력된 상기 움직임 벡터에 기초하여 참조 화상으로부터 예측 화상을 생성하는 움직임 보상 수단과, 상기 움직임 보상 수단에 의해서 생성된 상기 예측 화상과 상기 부호화 대상 화상과의 차분 연산을 행하고 예측 잔차 화상을 출력하는 감산 수단과, 상기 감산 수단에 의해서 출력된 상기 예측 잔차 화상을 소정의 변환 블록을 단위로 하여 변환 부호화하여 변환 계수를 출력하는 변환 수단과, 상기 변환 수단에 의해서 출력된 상기 변환 계수를 양자화 계수에 기초하여 양자화하여 양자화 변환 계수를 출력하는 양자화 수단과, 상기 움직임 검출 수단에 의해서 출력된 상기 움직임 벡터와 상기 매크로 블록 타입과 상기 양자화 계수와 상기 양자화 수단에 의해서 출력된 상기 양자화 변환 계수를 포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 출력하는 부호화 수단으로서 기능시키는 화상 부호화 프로그램으로서, 상기 부호화 수단은 1개 또는 복수 종류의 부호화 수순을 제공하는 부호화 수순 제공 수단과, 부호화 심볼 메모리에 격납되어 있는 부호화 관련 정보를 이용하여, 소정의 부호화 수순 선택 기준에 기초하여, 상기 부호화 수순 제공 수단이 제공하는 어느 하나의 부호화 수순을 선택하고, 선택된 부호화 수순에 기초하여 상기 부호화 관련 정보를 압축 부호화하여 부호화 데이터를 출력하는 부호화 데이터 출력 수단을 구비하는 것을 특징으로 하고 있다.
또한, 이것에 대응하는 화상 복호 프로그램은 컴퓨터를 부호화 대상 화상이 소정 사이즈의 매크로 블록으로 분할되고, 상기 매크로 블록이 매크로 블록 타입에 기초하여 특정되는 소정의 형상 및 사이즈의 블록으로 분할되고, 상기 블록을 단위로 하여 움직임 보상 예측이 행해져 출력된 움직임 벡터와, 상기 움직임 벡터에 기초하여 참조 화상으로부터 예측 화상이 생성되고, 상기 예측 화상과 상기 부호화 대상 화상의 차분 연산이 행해지고 예측 화상이 출력되고, 상기 예측 잔차 화상이 소정의 변환 블록을 단위로 하여 변환 부호화되어 변환 계수가 출력되고, 상기 변환 계수가 양자화 계수에 기초하여 양자화된 양자화 변환 계수와, 상기 매크로 블록 타입과, 상기 양자화 계수를 포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 복호하는 복호 수단으로서 기능시키는 화상 복호 프로그램으로서, 상기 복호 수단은 1개 또는 복수 종류의 복호 수순을 제공하는 복호 수순 제공 수단과, 복호 심볼 메모리에 격납되어 있는 복호가 완료된 부호화 관련 정보를 이용하여, 소정의 복호 수순 선택 기준에 기초하여, 상기 복호 수순 제공 수단이 제공하는 어느 하나의 복호 수순으로서 복호 대상이 되는 부호화 관련 정보의 부호화에 사용된 부호화 수순에 대응하는 복호 수순을 선택하고, 선택된 복호 수순에 기초하여 상기 부호화 관련 정보를 복호하여 복호 데이터를 출력하는 복호 데이터 출력 수단을 구비하는 것을 특징으로 하고 있다.
상술한 화상 부호화 장치, 화상 부호화 방법 및 화상 부호화 프로그램은 한 개의 부호화 관련 정보에 대하여 정보원 부호화를 하기 위한 수순을 복수 준비하고, 블록에 있어서의 상기 부호화 관련 정보의 정보원 부호화에 사용하는 수순을 이들 복수의 수순으로부터 선택한다. 따라서, 상술한 바와 같이 변화하는 부호화 심볼의 성질에 적합한 정보원 부호화에 사용하는 수순을, 복수의 수순 중에서 선택할 수 있다. 그 결과, 부호화 조건이나 화상의 성질에 따라서, 부호화 심볼의 정보원 부호화를 효율적으로 행하는 것이 가능해진다.
또한, 상술한 화상 복호 장치, 화상 복호 방법 및 화상 복호 프로그램은 한 개의 부호화 관련 정보에 대하여 정보원 복호를 하기 위한 수순을 복수 준비하고, 블록에 있어서의 상기 부호화 관련 정보의 정보원 복호에 사용하는 수순을 이들 복수의 수순으로부터 선택한다. 따라서, 상술한 화상 부호화 장치, 화상 부호화 방법및 화상 부호화 프로그램에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
또한, 본 발명의 화상 부호화 장치에 있어서는 상기 부호화부는 상기 매크로 블록 내의 각각의 상기 변환 블록에 대하여, 비영(非零)인 상기 양자화 변환 계수가 존재하는지의 여부를 나타내는 비영 계수 존재 플래그를 포함하는 부호화 블록 패턴 정보를 압축 부호화하는 기능을 구비하고, 상기 부호화 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 부호화 블록 패턴 정보를 부호화할 때, 상기 부호화 대상 매크로 블록의 주위 매크로 블록과 상기 부호화 대상 매크로 블록의 사이에서 상기 부호화 블록 패턴 정보의 공간적 상관이 높아질수록 부호 길이가 짧아지는 부호화 수순을 제공하는 것을 특징으로 하는 것도 가능하다.
또한, 이것에 대응하는 화상 복호 장치에 있어서는 상기 복호부는 상기 매크로 블록 내의 각각의 상기 변환 블록에 대하여, 비영인 상기 양자화 변환 계수가 존재하는지의 여부를 나타내는 비영 계수 존재 플래그를 포함하는 부호화 블록 패턴 정보를 복호하는 기능을 구비하고, 상기 복호 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 부호화 블록 패턴 정보를 복호할 때, 상기 부호화 대상 매크로 블록의 주위 매크로 블록과 상기 부호화 대상 매크로 블록의 사이에서 상기 부호화 블록 패턴 정보의 공간적 상관이 높아질수록 부호 길이가 짧아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공한다.
또한, 본 발명의 화상 부호화 장치에 있어서는 상기 부호화 수순 제공부는 상기 부호화 대상 매크로 블록의 주위 매크로 블록에 있어서의 매크로 블록 타입이상기 부호화 대상 매크로 블록을 가장 많은 블록으로 분할하는 것을 나타내는 매크로 블록 타입인 경우에는 상기 부호화 대상 매크로 블록 내의 모든 부호화 블록은 비영인 양자화 변환 계수를 가지는 것을 나타내는 부호화 블록 패턴 정보를 가지는 것으로 하고, 상기 부호화 대상 매크로 블록에 있어서의 부호화 블록 패턴 정보를 부호화할 때, 상기 부호화 대상 매크로 블록의 주위 매크로 블록과 상기 부호화 대상 매크로 블록의 사이에서 상기 부호화 블록 패턴 정보의 공간적 상관이 높아질수록 부호 길이가 짧아지는 부호화 수순을 제공하는 것을 특징으로 하는 것도 가능하다.
또한, 이것에 대응하는 화상 복호 장치에 있어서는 상기 복호 수순 제공부는 상기 부호화 대상 매크로 블록의 주위 매크로 블록에 있어서의 매크로 블록 타입이 상기 부호화 대상 매크로 블록을 가장 많은 블록으로 분할하는 것을 나타내는 매크로 블록 타입인 경우에는 상기 부호화 대상 매크로 블록 내의 모든 부호화 블록은 비영인 양자화 변환 계수를 가지는 것을 나타내는 부호화 블록 패턴 정보를 가지는 것으로 하고, 상기 부호화 대상 매크로 블록에 있어서의 부호화 블록 패턴 정보를 복호할 때, 상기 부호화 대상 매크로 블록의 주위 매크로 블록과 상기 부호화 대상 매크로 블록의 사이에서 상기 부호화 블록 패턴 정보의 공간적 상관이 높아질수록 부호 길이가 짧아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공한다.
또한, 본 발명의 화상 부호화 장치에 있어서는 상기 부호화 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 부호화 블록 패턴 정보를 부호화할 때, 상기 부호화 대상 매크로 블록에 있어서의 양자화 계수의 크기가 미리 설정된임계치보다 큰 경우에는 비영인 양자화 변환 계수를 포함하는 블록수가 보다 적은 것을 나타내는 상기 부호화 블록 패턴 정보에 대하여 부호 길이가 보다 짧아지는 것 같은 부호화 수순을 제공하는 것을 특징으로 하는 것도 가능하다.
이것에 대응하는 화상 복호 장치에 있어서는 상기 복호 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 부호화 블록 패턴 정보를 복호할 때에 상기 부호화 대상 매크로 블록에 있어서의 양자화 계수의 크기가 미리 설정된 임계치보다 큰 경우에는 비영인 양자화 변환 계수를 포함하는 블록수가 보다 적은 것을 나타내는 상기 부호화 블록 패턴 정보에 대하여 부호 길이가 보다 짧아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공한다.
또한, 본 발명의 화상 부호화 장치에 있어서는 상기 부호화 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 부호화 블록 패턴 정보를 부호화할 때에 상기 부호화 대상 매크로 블록의 주위 매크로 블록에 포함되는 블록수가 많을수록 부호 길이의 치우침이 작아지는 부호화 수순을 제공하는 것을 특징으로 하는 것도 가능하다.
또한, 이것에 대응하는 화상 복호 장치에 있어서는 상기 복호 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 부호화 블록 패턴 정보를 복호할 때, 상기 부호화 대상 매크로 블록의 주위 매크로 블록에 포함되는 블록수가 많을수록 부호 길이의 치우침이 작아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공한다.
또한, 본 발명의 화상 부호화 장치에 있어서는 상기 부호화 수순 제공부는상기 부호화 대상 매크로 블록에 있어서의 상기 양자화 변환 계수를 부호화할 때, 상기 부호화 대상 매크로 블록의 주위 매크로 블록에 있어서의 상기 양자화 변환 계수의 절대치가 클수록 부호 길이의 치우침이 작아지는 부호화 수순을 제공하는 것을 특징으로 하는 것도 가능하다.
이것에 대응하는 화상 복호 장치에 있어서는 상기 복호 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 양자화 변환 계수를 복호할 때, 상기 부호화 대상 매크로 블록의 주위 매크로 블록에 있어서의 상기 양자화 변환 계수의 절대치가 클수록 부호 길이의 치우침이 작아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공한다.
또한, 본 발명의 화상 부호화 장치에 있어서는 상기 부호화 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 매크로 블록 타입을 부호화할 때, 상기 부호화 대상 매크로 블록의 주위 매크로 블록과 상기 부호화 대상 매크로 블록의 사이에서 상기 매크로 블록 타입의 공간적 상관이 높아질수록 부호 길이가 짧아지는 부호화 수순을 제공하는 것을 특징으로 하는 것도 가능하다.
이것에 대응하는 화상 복호 장치에 있어서는 상기 복호 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 매크로 블록 타입을 복호할 때, 상기 부호화 대상 매크로 블록의 주위 매크로 블록과 상기 부호화 대상 매크로 블록의 사이에서 상기 매크로 블록 타입의 공간적 상관이 높아질수록 부호 길이가 짧아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공한다.
또한, 본 발명의 화상 부호화 장치에 있어서는 상기 부호화 수순 제공부는상기 부호화 대상 매크로 블록에 있어서의 상기 매크로 블록 타입을 부호화할 때, 보다 많은 블록을 포함하는 매크로 블록 타입에 대하여 부호 길이가 보다 짧아지는 부호화 수순을 제공하는 것을 특징으로 하는 것도 가능하다.
이것에 대응하는 화상 복호 장치에 있어서는 상기 복호 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 매크로 블록 타입을 복호할 때, 보다 많은 블록을 포함하는 매크로 블록 타입에 대하여 부호 길이가 보다 짧아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공한다.
또한, 본 발명의 화상 부호화 장치에 있어서는 상기 부호화부는 상기 블록 내의 상기 비영인 양자화 변환 계수의 수를 부호화하는 기능을 구비하고, 상기 부호화 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 비영인 양자화 변환 계수의 수를 부호화할 때, 상기 부호화 대상 블록의 주위 블록에 있어서의 상기 비영인 양자화 변환 계수의 수가 미리 설정된 임계치보다 작은 경우에는 상기 비영인 양자화 변환 계수의 수가 작을수록 부호 길이가 짧아지는 부호화 수순을 제공하는 것을 특징으로 하는 것도 가능하다.
이것에 대응하는 화상 복호 장치에 있어서는 상기 복호부는 상기 블록 내의 상기 비영인 양자화 변환 계수의 수를 복호하는 기능을 구비하고, 상기 복호 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 비영인 양자화 변환 계수의 수를 복호할 때, 상기 부호화 대상 블록의 주위 블록에 있어서의 상기 비영인 양자화 변환 계수의 수가 미리 설정된 임계치보다 작은 경우에는 상기 비영인 양자화 변환 계수의 수가 작을수록 부호 길이가 짧아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공한다.
또한, 본 발명의 화상 부호화 장치에 있어서는 상기 부호화 심볼 메모리는 주위 블록으로부터 예측한 예측 움직임 벡터와 실제의 움직임 벡터의 차분치인 차분 움직임 벡터치를 보유하는 기능을 구비하고, 상기 부호화 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 부호화 블록 패턴 정보를 부호화할 때, 상기 부호화 대상 매크로 블록의 주위 매크로 블록에 있어서의 차분 움직임 벡터치의 크기가 미리 설정된 임계치보다 큰 경우에는 비영인 양자화 변환 계수를 포함하는 블록수가 보다 많은 것을 나타내는 부호화 블록 패턴 정보에 대하여 부호 길이가 보다 짧아지는 부호화 수순을 제공하는 것을 특징으로 하는 것도 가능하다.
이것에 대응하는 화상 복호 장치에 있어서는 상기 복호 심볼 메모리는 주위 블록으로부터 예측한 예측 움직임 벡터와 실제의 움직임 벡터의 차분치인 차분 움직임 벡터치를 보유하는 기능을 구비하고, 상기 복호 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 부호화 블록 패턴 정보를 복호할 때, 상기 부호화 대상 매크로 블록의 주위 매크로 블록에 있어서의 차분 움직임 벡터치의 크기가 미리 설정된 임계치보다 큰 경우에는 비영인 양자화 변환 계수를 포함하는 블록수가 보다 많은 것을 나타내는 부호화 블록 패턴 정보에 대하여 부호 길이가 보다 짧아지도록 제공되는 부호화 수순에 대응하는 복호 수순을 제공한다.
또한, 본 발명의 화상 부호화 장치에 있어서는 상기 부호화 심볼 메모리는 주위 블록으로부터 예측한 예측 움직임 벡터와 실제의 움직임 벡터의 차분치인 차분 움직임 벡터치를 보유하는 기능을 구비하고, 상기 부호화 수순 제공부는 상기부호화 대상 매크로 블록에 있어서의 상기 차분 움직임 벡터치를 부호화할 때에 상기 부호화 대상 블록의 주위 블록에 있어서의 차분 움직임 벡터치의 크기가 미리 설정된 임계치보다 작은 경우에는, 보다 작은 차분 움직임 벡터치에 대하여 부호 길이가 보다 짧아지는 부호화 수순을 제공하는 것을 특징으로 하는 것도 가능하다.
이것에 대응하는 화상 복호 장치에 있어서는 상기 복호 심볼 메모리는 주위 블록으로부터 예측한 예측 움직임 벡터와 실제의 움직임 벡터의 차분치인 차분 움직임 벡터치를 보유하는 기능을 구비하고, 상기 복호 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 차분 움직임 벡터치를 복호할 때에 상기 부호화 대상 블록의 주위 블록에 있어서의 차분 움직임 벡터치의 크기가 미리 설정된 임계치보다 작은 경우에는, 보다 작은 차분 움직임 벡터치에 대하여 부호 길이가 보다 짧아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공한다.
또한, 본 발명의 화상 부호화 장치에 있어서는 상기 부호화 심볼 메모리는 주위 블록으로부터 예측한 예측 움직임 벡터와 실제의 움직임 벡터의 차분치인 차분 움직임 벡터치를 보유하는 기능을 구비하고, 상기 부호화 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 매크로 블록 타입을 부호화할 때에 상기 부호화 대상 블록의 주위 블록에 있어서의 차분 움직임 벡터치의 크기가 미리 설정된 임계치보다 큰 경우에는, 보다 많은 블록을 포함하는 매크로 블록 타입에 대하여 부호 길이가 보다 짧아지는 부호화 수순을 제공하는 것을 특징으로 하는 것도 가능하다.
이것에 대응하는 화상 복호 장치에 있어서는 상기 복호 심볼 메모리는 주위블록으로부터 예측한 예측 움직임 벡터와 실제의 움직임 벡터의 차분치인 차분 움직임 벡터치를 보유하는 기능을 구비하고, 상기 복호 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 매크로 블록 타입을 복호할 때에 상기 부호화 대상 블록의 주위 블록에 있어서의 차분 움직임 벡터치의 크기가 미리 설정된 임계치보다 큰 경우에는, 보다 많은 블록을 포함하는 매크로 블록 타입에 대하여 부호 길이가 보다 짧아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공한다.
또한, 상기 과제를 해결하기 위해서, 본 발명의 화상 부호화 장치는 부호화 대상 화상 또는 상기 부호화 대상 화상에 기초하여 생성된 예측 잔차 화상을 소정의 변환 블록으로 분할하고, 상기 부호화 대상 화상 또는 상기 예측 잔차 화상을 상기 변환 블록을 단위로 하여 변환 부호화하여 변환 계수를 출력하는 변환부와, 상기 변환부에 의해서 출력된 상기 변환 계수를 양자화 계수에 기초하여 양자화하여 양자화 변환 계수를 출력하는 양자화부와, 상기 양자화 계수와 상기 양자화부에 의해서 출력된 상기 양자화 변환 계수를 포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 출력하는 부호화부를 구비하는 화상 부호화 장치로서, 상기 부호화부는 상기 부호화 대상 블록 내의 상기 양자화 변환 계수를 주파수에 따라서 1차원 계열로 변환하고, 상기 1차원 계열에 있어서의 상기 양자화 변환 계수의 절대치가 0이 되는 계수의 연속수인 제로런(zero run)치와 상기 양자화 변환 계수의 절대치인 레벨치와 상기 양자화 변환 계수의 양음을 나타내는 양음 부호를 부호화하는 기능을 구비하고, 상기 부호화 관련 정보를 기억하는 부호화 심볼 메모리와, 1개 또는 복수 종류의 부호화 수순을 제공하는 부호화 수순 제공부와, 상기 부호화심볼 메모리에 격납되어 있는 부호화 관련 정보를 이용하여, 소정의 부호화 수순 선택 기준에 기초하여, 상기 부호화 수순 제공부가 제공하는 어느 하나의 부호화 수순을 선택하여, 선택된 부호화 수순에 기초하여 상기 부호화 관련 정보를 압축 부호화하여 부호화 데이터를 출력하는 부호화 데이터 출력부를 구비하는 것을 특징으로 하고 있다.
이것에 대응하는 화상 복호 장치는 부호화 대상 화상 또는 상기 부호화 대상 화상에 기초하여 생성된 예측 잔차 화상을 소정의 변환 블록으로 분할하고, 상기 부호화 대상 화상 또는 상기 예측 잔차 화상을 상기 변환 블록을 단위로 하여 변환 부호화하여 변환 계수를 출력하고, 출력된 상기 변환 계수를 양자화 계수에 기초하여 양자화하여 출력된 양자화 변환 계수와, 상기 양자화 계수를 포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 복호하는 복호부를 구비하는 화상 복호 장치로서, 상기 복호부는 상기 부호화 대상 블록 내의 상기 양자화 변환 계수를 주파수에 따라서 1차원 계열로 변환하고, 상기 1차원 계열에 있어서의 상기 양자화 변환 계수의 절대치가 0이 되는 계수의 연속수인 제로런치와 상기 양자화 변환 계수의 절대치인 레벨치와 상기 양자화 변환 계수의 양음을 나타내는 양음 부호를 복호하는 기능을 구비하고, 복호가 완료된 상기 부호화 관련 정보를 기억하는 복호 심볼 메모리와, 1개 또는 복수 종류의 복호 수순을 제공하는 복호 수순 제공부와, 상기 복호 심볼 메모리에 격납되어 있는 복호가 완료된 부호화 관련 정보를 이용하여, 소정의 부호화 수순 선택 기준에 기초하여, 상기 복호 수순 제공부가 제공하는 어느 하나의 복호 수순으로서 복호 대상이 되는 부호화 관련 정보의 부호화에 사용된 부호화 수순에 대응하는 복호 수순을 선택하고, 선택된 복호 수순에 기초하여 상기 부호화 관련 정보를 복호하여 복호 데이터를 출력하는 복호 데이터 출력부를 구비하는 것을 특징으로 하고 있다.
또한, 상기 과제를 해결하기 위해서, 본 발명의 화상 부호화 방법은 부호화 대상 화상 또는 상기 부호화 대상 화상에 기초하여 생성된 예측 잔차 화상을 소정의 변환 블록으로 분할하고, 상기 부호화 대상 화상 또는 상기 예측 잔차 화상을 상기 변환 블록을 단위로 하여 변환 부호화하여 변환 계수를 출력하는 변환 스텝과, 상기 변환 스텝에 있어서 출력된 상기 변환 계수를 양자화 계수에 기초하여 양자화하여 양자화 변환 계수를 출력하는 양자화 스텝과, 상기 양자화 계수와 상기 양자화 스텝에 있어서 출력된 상기 양자화 변환 계수를 포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 출력하는 부호화 스텝을 구비하는 화상 부호화 방법으로서, 상기 부호화 스텝은 상기 부호화 대상 블록 내의 상기 양자화 변환 계수를 주파수에 따라서 1차원 계열로 변환하고, 상기 1차원 계열에 있어서의 상기 양자화 변환 계수의 절대치가 0이 되는 계수의 연속수인 제로런치와 상기 양자화 변환 계수의 절대치인 레벨치와 상기 양자화 변환 계수의 양음을 나타내는 양음 부호를 부호화하는 스텝에 있어서, 1개 또는 복수 종류의 부호화 수순을 준비해 두고, 부호화 심볼 메모리에 격납되어 있는 부호화 관련 정보를 이용하여, 소정의 부호화 수순 선택 기준에 기초하여, 상기 1개 또는 복수 종류의 부호화 수순 중에서 어느 하나의 부호화 수순을 선택하고, 선택된 부호화 수순에 기초하여 상기 부호화 관련 정보를 압축 부호화하여 부호화 데이터를 출력하는 것을 특징으로 하고 있다.
이것에 대응하는 화상 복호 방법은 부호화 대상 화상 또는 상기 부호화 대상 화상에 기초하여 생성된 예측 잔차 화상을 소정의 변환 블록으로 분할하고, 상기 부호화 대상 화상 또는 상기 예측 잔차 화상을 상기 변환 블록을 단위로 하여 변환 부호화하여 변환 계수를 출력하고, 출력된 상기 변환 계수를 양자화 계수에 기초하여 양자화하여 출력된 양자화 변환 계수와, 상기 양자화 계수를 포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 복호하는 복호 스텝을 구비하는 화상 복호 방법으로서, 상기 복호 스텝은 상기 부호화 대상 블록 내의 상기 양자화 변환 계수를 주파수에 따라서 1차원 계열로 변환하고, 상기 1차원 계열에 있어서의 상기 양자화 변환 계수의 절대치가 O이 되는 계수의 연속수인 제로런치와 상기 양자화 변환 계수의 절대치인 레벨치와 상기 양자화 변환 계수의 양음을 나타내는 양음 부호를 복호하는 스텝으로서, 1개 또는 복수 종류의 복호 수순을 준비해 두고, 복호 심볼 메모리에 격납되어 있는 복호가 완료된 부호화 관련 정보를 이용하여, 소정의 부호화 수순 선택 기준에 기초하여, 상기 1개 또는 복수 종류의 복호 수순 중에서 어느 하나의 복호 수순으로서 복호 대상이 되는 부호화 관련 정보의 부호화에 사용된 부호화 수순에 대응하는 복호 수순을 선택하고, 선택된 복호 수순에 기초하여 상기 부호화 관련 정보를 복호하여 복호 데이터를 출력하는 것을 특징으로 하고 있다.
또한, 상기 과제를 해결하기 위해서, 본 발명의 화상 부호화 프로그램은 컴퓨터를, 부호화 대상 화상 또는 상기 부호화 대상 화상에 기초하여 생성된 예측 잔차 화상을 소정의 변환 블록으로 분할하고, 상기 부호화 대상 화상 또는 상기 예측잔차 화상을 상기 변환 블록을 단위로 하여 변환 부호화하여 변환 계수를 출력하는 변환 수단과, 상기 변환 수단에 의해서 출력된 상기 변환 계수를 양자화 계수에 기초하여 양자화하여 양자화 변환 계수를 출력하는 양자화 수단과, 상기 양자화 계수와 상기 양자화 수단에 의해서 출력된 상기 양자화 변환 계수를 포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 출력하는 부호화 수단으로서 기능시키는 화상 부호화 프로그램으로서, 상기 부호화 수단은 상기 부호화 대상 블록 내의 상기 양자화 변환 계수를 주파수에 따라서 1차원 계열로 변환하고, 상기 1차원 계열에 있어서의 상기 양자화 변환 계수의 절대치가 0이 되는 계수의 연속수인 제로런치와 상기 양자화 변환 계수의 절대치인 레벨치와 상기 양자화 변환 계수의 양음을 나타내는 양음 부호를 부호화하는 수단을 구비하고, 1개 또는 복수 종류의 부호화 수순을 제공하는 부호화 수순 제공 수단과, 부호화 심볼 메모리에 격납되어 있는 부호화 관련 정보를 이용하고, 소정의 부호화 수순 선택 기준에 기초하여, 상기 부호화 수순 제공 수단이 제공하는 어느 하나의 부호화 수순을 선택하고, 선택된 부호화 수순에 기초하여 상기 부호화 관련 정보를 압축 부호화하여 부호화 데이터를 출력하는 부호화 데이터 출력 수단을 구비하는 것을 특징으로 하고 있다.
이것에 대응하는 화상 복호 프로그램은 컴퓨터를 부호화 대상 화상 또는 상기 부호화 대상 화상에 기초하여 생성된 예측 잔차 화상을 소정의 변환 블록으로 분할하고, 상기 부호화 대상 화상 또는 상기 예측 잔차 화상을 상기 변환 블록을 단위로 하여 변환 부호화하여 변환 계수를 출력하고, 출력된 상기 변환 계수를 양자화 계수에 기초하여 양자화하여 출력된 양자화 변환 계수와, 상기 양자화 계수를포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 복호하는 복호 수단으로서 기능시키는 화상 복호 프로그램으로서, 상기 복호 수단은 상기 부호화 대상 블록 내의 상기 양자화 변환 계수를 주파수에 따라서 1차원 계열로 변환하고, 상기 1차원 계열에 있어서의 상기 양자화 변환 계수의 절대치가 0이 되는 계수의 연속수인 제로런치와 상기 양자화 변환 계수의 절대치인 레벨치와 상기 양자화 변환 계수의 양음을 나타내는 양음 부호를 복호하는 수단을 구비하고, 1개 또는 복수 종류의 복호 수순을 제공하는 복호 수순 제공 수단과, 복호 심볼 메모리에 격납되어 있는 부호화 관련 정보를 이용하여, 소정의 부호화 수순 선택 기준에 기초하여, 상기 복호 수순 제공 수단이 제공하는 어느 하나의 복호 수순이고 복호 대상이 되는 부호화 관련 정보의 부호화에 사용된 부호화 수순에 대응하는 복호 수순을 선택하고, 선택된 복호 수순에 기초하여 상기 부호화 관련 정보를 복호하여 복호 데이터를 출력하는 복호 데이터 출력 수단을 구비하는 것을 특징으로 하고 있다.
상술한 화상 부호화 장치, 화상 부호화 방법 및 화상 부호화 프로그램은 한 개의 부호화 관련 정보에 대하여 정보원 부호화를 하기 위한 수순을 복수 준비하고, 블록에 있어서의 상기 부호화 관련 정보의 정보원 부호화에 사용하는 수순을 이들 복수의 수순으로부터 선택한다. 따라서, 상술한 바와 같이 변화하는 부호화 심볼의 성질에 적합한 정보원 부호화에 사용하는 수순을, 복수의 수순 중에서 선택할 수 있다. 그 결과, 부호화 조건이나 화상의 성질에 따라서, 부호화 심볼의 정보원 부호화를 효율적으로 행하는 것이 가능해진다.
또한, 상술한 화상 복호 장치, 화상 복호 방법 및 화상 복호 프로그램은 한개의 부호화 관련 정보에 대하여 정보원 복호를 하기 위한 수순을 복수 준비하고, 블록에 있어서의 상기 부호화 관련 정보의 정보원 복호에 사용하는 수순을 이들 복수의 수순으로부터 선택한다. 따라서, 상술한 화상 부호화 장치, 화상 부호화 방법 및 화상 부호화 프로그램에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
본 발명의 화상 부호화 장치에 있어서는 상기 부호화 수순 제공부는 상기 레벨치를 부호화할 때에 부호화 대상 레벨치의 근방의 주파수에 있어서의 레벨치에 의해 가까운 값에 대하여 부호 길이가 보다 짧아지는 부호화 수순을 제공하는 것을 특징으로 하는 것도 가능하다.
이것에 대응하는 화상 복호 장치에 있어서는 상기 복호 수순 제공부는 상기 레벨치를 복호할 때에 부호화 대상 레벨치의 근방의 주파수에 있어서의 레벨치에 의해 가까운 값에 대하여 부호 길이가 보다 짧아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공한다.
또한, 본 발명의 화상 부호화 장치에 있어서는 상기 부호화 수순 제공부는 상기 레벨치를 부호화할 때에 부호화 대상 레벨치의 근방의 주파수에 있어서의 제로런치가 미리 설정된 임계치보다 큰 경우에는 작은 레벨일수록 부호 길이가 짧아지는 부호화 수순을 제공하는 것을 특징으로 하는 것도 가능하다.
이것에 대응하는 화상 복호 장치에 있어서는 상기 복호 수순 제공부는 상기 레벨치를 복호할 때 부호화 대상 레벨치의 근방의 주파수에 있어서의 제로런치가 미리 설정된 임계치보다 큰 경우에는 작은 레벨치일수록 부호 길이가 짧아지도록제공된 부호화 수순에 대응하는 복호 수순을 제공한다.
또한, 본 발명의 화상 부호화 장치에 있어서는 상기 부호화 수순 제공부는 상기 레벨치를 부호화할 때에 부호화 대상 레벨치의 주파수 대역이 클수록 부호 길이의 치우침이 커지는 부호화 수순을 제공하는 것을 특징으로 하는 것도 가능하다.
이것에 대응하는 화상 복호 장치에 있어서는 상기 복호 수순 제공부는 상기 레벨치를 복호할 때에 부호화 대상 레벨치의 주파수 대역이 클수록 부호 길이의 치우침이 커지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공한다.
또한, 본 발명의 화상 부호화 장치에 있어서는 상기 부호화 수순 제공부는 상기 레벨치를 부호화할 때에 부호화 대상 레벨치의 근방의 주파수에 있어서의 레벨치가 작을수록 부호 길이의 치우침이 작아지는 부호화 수순을 제공하는 것을 특징으로 하는 것도 가능하다.
이것에 대응하는 화상 복호 장치에 있어서는 상기 복호 수순 제공부는 상기 레벨치를 복호할 때에 부호화 대상 레벨치의 근방의 주파수에 있어서의 레벨치가 작을수록 부호 길이의 치우침이 작아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공한다.
또한, 본 발명의 화상 부호화 장치에 있어서는 상기 부호화 수순 제공부는 상기 제로런치를 부호화할 때에 부호화 대상 제로런치의 근방의 주파수에 있어서의 레벨치가 작을수록 부호 길이의 치우침이 커지는 부호화 수순을 제공하는 것을 특징으로 하는 것도 가능하다.
이것에 대응하는 화상 복호 장치에 있어서는 상기 복호 수순 제공부는 상기제로런치를 복호할 때에 부호화 대상 제로런치의 근방의 주파수에 있어서의 레벨치가 작게 과연 부호 길이의 치우침이 커지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공한다.
또한, 본 발명의 화상 부호화 장치에 있어서는 상기 부호화부는 상기 부호화 대상 블록 내의 비영인 양자화 변환 계수의 수를 압축 부호화하는 기능을 구비하고, 상기 부호화 대상 블록의 비영인 양자화 계수의 수가 미리 설정된 임계치보다 작은 경우에는 상기 레벨치 및 상기 제로런치를 저주파 성분으로부터 차례로 부호화하여, 상기 부호화 대상 블록의 비영인 양자화 계수의 수가 미리 설정된 임계치보다 큰 경우에는 상기 레벨치 및 상기 제로런치를 고주파 성분으로부터 차례로 부호화하는 것을 특징으로 하는 것도 가능하다.
이것에 대응하는 화상 복호 장치에 있어서는 상기 복호부는 상기 부호화 대상 블록 내의 비영인 양자화 변환 계수의 수를 복호하는 기능을 구비하고, 상기 부호화 대상 블록의 비영인 양자화 계수의 수가 미리 설정된 임계치보다 작은 경우에는 상기 레벨치 및 상기 제로런치를 저주파 성분으로부터 차례로 복호하고, 상기 부호화 대상 블록의 비영인 양자화 계수의 수가 미리 설정된 임계치보다 큰 경우에는 상기 레벨치 및 상기 제로런치를 고주파 성분으로부터 차례로 복호한다.
또한, 상기 과제를 해결하기 위해서, 본 발명의 화상 부호화 방법은 화상을 소정 사이즈의 블록으로 분할하여 부호화하고, 상기 블록의 단위로써 부호화 관련 정보를 정보원 부호화하여 부호화 데이터 출력으로 하는 화상 부호화 방법으로서, 한 개의 부호화 관련 정보에 대하여 상기 정보원 부호화를 하기 위한 수단을 복수준비하고, 상기 블록에 있어서의 상기 부호화 관련 정보의 정보원 부호화에 사용하는 수단을 상기 복수의 수단으로부터 선택하는 것을 특징으로 한다.
또한, 상기 과제를 해결하기 위해서 본 발명의 화상 부호화 장치는 화상을 소정 사이즈의 블록에 분할하여 부호화하고, 상기 블록의 단위로써 부호화 관련 정보를 정보원 부호화하여 부호화 데이터 출력으로 하는 화상 부호화 장치로서, 한 개의 부호화 관련 정보에 대하여 상기 정보원 부호화를 하기 위한 수단을 복수 구비하고, 상기 블록에 있어서의 상기 부호화 관련 정보의 정보원 부호화에 사용하는 수단을 상기 복수의 수단으로부터 선택하는 것을 특징으로 한다.
한 개의 부호화 관련 정보에 대하여 정보원 부호화를 하기 위한 수단을 복수준비하고, 블록에 있어서의 상기 부호화 관련 정보의 정보원 부호화에 사용하는 수단을 이들 복수의 수단으로부터 선택함으로써, 다양하게 변화하는 부호화 심볼의 성질에 적합한 정보원 부호화에 사용하는 수단을 복수의 수단 중에서 선택할 수 있다.
또한, 본 발명의 화상 복호 방법은 화상이 소정 사이즈의 블록으로 분할되고, 상기 블록의 단위로써 부호화 관련 정보가 정보원 부호화된 부호화 데이터 입력을 복호하는 화상 복호 방법으로서, 한 개의 부호화 관련 정보에 대하여 정보원 복호를 하기 위한 수단을 복수 준비하고, 상기 블록에 있어서의 상기 부호화 관련 정보의 정보원 복호에 사용하는 수단을 상기 복수의 수단으로부터 선택하는 것을 특징으로 한다.
또한, 본 발명의 화상 복호 장치는 화상이 소정 사이즈의 블록으로 분할되고, 상기 블록의 단위로써 부호화 관련 정보가 정보원 부호화된 부호화 데이터 입력을 복호하는 화상 복호 장치로서, 한 개의 부호화 관련 정보에 대하여 정보원 복호를 하기 위한 수단을 복수 구비하고, 상기 블록에 있어서의 상기 부호화 관련 정보의 정보원 복호에 사용하는 수단을 상기 복수의 수단으로부터 선택하는 것을 특징으로 한다.
이러한 구성을 취함으로써, 상술한 화상 부호화 방법 또는 화상 부호화 장치에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
또한, 본 발명의 화상 부호화 방법, 화상 부호화 장치에 있어서는 상기 정보원 부호화에 사용하는 수단의 선택은 상기 블록에 있어서 적용되는 부호화 관련 정보에 기초하는 것을 특징하는 것이 적합하다.
정보원 부호화에 사용하는 수단의 선택을, 상기 블록에 있어서 적용되는 부호화 관련 정보에 기초하여 행함으로써, 상술한 바와 같이 상기 블록에 적용되는 부호화 조건에 따라서 변화하는 부호화 심볼의 성질에 적합한, 정보원 부호화를 할 수 있다.
또한, 본 발명의 화상 복호 방법, 화상 복호 장치에 있어서는 상기 정보원 복호에 사용하는 수단의 선택은 상기 블록에 있어서 적용되는 부호화 관련 정보에 기초하는 것을 특징하는 것이 적합하다.
이러한 구성을 취함으로써, 상술한 화상 부호화 방법 또는 화상 부호화 장치에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
이 경우, 부호화 관련 정보에는 상기 부호화 관련 정보의 부호화에 앞서서부호화되는 동일한 종류의 부호화 관련 정보, 상기 부호화 관련 정보의 부호화에 앞서서 부호화되는 다른 종류의 부호화 관련 정보를 포함시킬 수 있고, 또한, 정보원 부호화에 사용하는 수단의 선택을 부호화 관련 정보가 정보원 부호화될 때의 부호표 상의 순위에 기초하여 행하도록 하는 것도 가능하다.
또한, 본 발명의 화상 부호화 방법, 화상 부호화 장치에 있어서는 상기 정보원 부호화에 사용하는 수단의 선택은 상기 블록의 근린에 위치하는 블록에 있어서 적용되는 부호화 관련 정보에 기초하는 것을 특징하는 것도 가능하다.
정보원 부호화에 사용하는 수단의 선택을, 상기 블록의 근린에 위치하는 블록에 있어서 적용되는 부호화 관련 정보에 기초하여 행함으로써, 상술한 바와 같이 상기 블록이 포함되는 화상상의 영역에서의 화상의 성질에 의해서 변화하는 부호화 관련 정보의 성질을, 근린에 위치하는 블록에 있어서의 부호화 관련 정보로부터 예측하여, 부호화 관련 정보의 성질에 적합한 정보원 부호화를 할 수 있다.
또한, 본 발명의 화상 복호 방법, 화상 복호 장치에 있어서는 상기 정보원 복호에 사용하는 수단의 선택은 상기 블록의 근린에 위치하는 블록에 있어서 적용되는 부호화 관련 정보에 기초하는 것을 특징하는 것도 가능하다.
이러한 구성을 취함으로써, 상술한 화상 부호화 방법 또는 화상 부호화 장치에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
이 경우, 부호화 관련 정보에는 상기 부호화 관련 정보와 동일한 종류의 부호화 관련 정보, 상기 부호화 관련 정보와 다른 종류의 부호화 관련 정보를 포함시킬 수 있고, 또한, 정보원 부호화에 사용하는 수단의 선택을 부호화 관련 정보가정보원 부호화될 때의 부호표 상의 순위에 기초하여 행하도록 하는 것도 가능하다.
또한, 본 발명의 화상 부호화 방법, 화상 부호화 장치에 있어서는 상기 정보원 부호화에 사용하는 복수의 수단은 각각 상기 부호화 관련 정보의 정보원 부호화에 있어서의 부호표로의 할당 순위가 다른 것을 특징으로 하는 것이 적합하다.
이로써, 상술한 바와 같이 부호화 심볼의 성질의 변화에 따라서 부호화 심볼의 출현 빈도의 분포가 변화한 부호화 심볼에 대해서도 그 성질에 적합한 정보원 부호화를 할 수 있다.
또한, 본 발명의 화상 복호 방법, 화상 복호 장치에 있어서는 상기 정보원 복호에 사용하는 복수의 수단은 각각 상기 부호화 관련 정보의 정보원 복호에 있어서의 부호표 상의 할당 순위가 다른 것을 특징으로 하는 것이 적합하다.
이러한 구성을 취함으로써, 상술한 화상 부호화 방법 또는 화상 부호화 장치에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
또한, 본 발명의 화상 부호화 방법, 화상 부호화 장치에 있어서는 상기 정보원 부호화에 사용하는 복수의 수단은 각각 상기 부호화 관련 정보의 정보원 부호화에 있어서의 부호의 구성 방법이 다른 것을 특징으로 하는 것도 가능하다.
이로써, 상술한 바와 같이 부호화 심볼의 성질의 변화에 따라서 부호화 심볼의 출현 빈도의 분포의 치우침이 변화한 부호화 심볼에 대하여도 그 성질에 적합한 정보원 부호화를 할 수 있다.
또한, 본 발명의 화상 복호 방법, 화상 복호 장치에 있어서는 상기 정보원 복호에 사용하는 복수의 수단은 각각 상기 부호화 관련 정보의 정보원 복호에 있어서의 부호의 구성 방법이 다른 것을 특징으로 하는 것도 가능하다.
이러한 구성을 취함으로써, 상술한 화상 부호화 방법 또는 화상 부호화 장치에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
또한, 본 발명의 화상 부호화 방법, 화상 부호화 장치에 있어서는 상기 부호화 관련 정보에 대한 복수의 예측 수단과, 상기 복수의 예측 수단의 결과 얻어진 복수의 예측치의 유사도를 생성하는 예측치 유사도 생성 수단을 준비하고, 상기 정보원 부호화에 사용하는 수단의 선택은 상기 복수의 예측 수단의 유사도에 기초하는 것을 특징으로 하는 것이 적합하다.
복수의 예측 수단의 결과 얻어진 복수의 예측치의 유사도에 기초하여 정보원 부호화에 사용하는 수단의 선택을 함으로써, 정보원 부호화에 사용하는 수단을 효율 좋게 선택할 수 있다.
또한, 본 발명의 화상 복호 방법, 화상 복호 장치에 있어서는 상기 부호화 관련 정보에 대한 복수의 예측 수단과, 상기 복수의 예측 수단의 결과 얻어진 복수의 예측치의 유사도를 생성하는 예측치 유사도 생성 수단을 준비하고, 상기 정보원 복호에 사용하는 수단의 선택은 상기 복수의 예측 수단의 유사도에 기초하는 것을 특징으로 하는 것이 적합하다.
이러한 구성을 취함으로써, 상술한 화상 부호화 방법 또는 화상 부호화 장치에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
또한, 본 발명의 화상 부호화 방법, 화상 부호화 장치, 화상 복호 방법, 화상 복호 장치에 있어서 부호화되고, 혹은 복호되는 부호화 관련 정보로서는 부호화대상이 되는 블록에 있어서의 부호화 모드 정보, 상기 블록에 있어서의 부호화 블록 패턴 정보, 상기 블록에 있어서의 움직임 벡터 정보, 상기 블록에 있어서의 직교 변환 계수의 레벨치, 상기 블록에 있어서의 직교 변환 계수의 비영 계수 수 등이 해당한다.
또한, 본 발명의 화상 부호화 방법, 화상 부호화 장치, 화상 복호 방법, 화상 복호 장치에 있어서, 상기 수단의 선택에 사용되는 부호화 관련 정보에는 부호화 모드 정보, 양자화 파라미터, 부호화 블록 패턴 정보, 움직임 벡터, 직교 변환 계수의 레벨치, 직교 변환 계수의 비영 계수 수 등을 포함할 수 있다. 상기 수단의 선택에 사용되는 부호화 관련 정보에 부호화 모드 정보를 포함시킨 경우는 상기 부호화 모드 정보에 의해 정의되는 주위 블록에 있어서의 활성도를 이용하도록 하여도 좋다. 또한, 상기 수단의 선택에 사용되는 부호화 관련 정보에 부호화 블록 패턴 정보를 포함시킨 경우는 상기 부호화 블록 패턴 정보에 의해 나타난, 주위 블록에 있어서의 유의 직교 변환 계수의 출현 패턴의 방향적 치우침을 이용하도록 하여도 좋다.
또한, 본 발명의 화상 부호화 방법, 화상 부호화 장치에 있어서는 상기 정보원 부호화에 사용하는 복수의 수단은 부호화 결과에 따라서 각각의 수단이 독립적으로 갱신되는 것을 특징으로 하는 것이 적합하다.
부호화 결과에 따라서 각각의 수단이 독립적으로 갱신됨으로써, 보다 부호화 조건이나 화상의 성질에 적합한 정보원 부호화를 할 수 있다.
또한, 본 발명의 화상 복호 방법, 화상 복호 장치에 있어서는 상기 정보원복호에 사용하는 복수의 수단은 복호 결과에 따라서 각각의 수단이 독립적으로 갱신되는 것을 특징으로 하는 것이 적합하다.
이러한 구성을 취함으로써, 상술한 화상 부호화 방법 또는 화상 부호화 장치에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
또한, 상기 과제를 해결하기 위해서, 본 발명의 화상 전송 시스템은 화상을 부호화하는 화상 부호화부와, 상기 화상 부호화부에 의해서 부호화된 비트 스트림을 송신하는 비트 스트림 송신부와, 상기 송신된 비트 스트림을 수신하는 비트 스트림 수신부와, 상기 수신된 비트 스트림을 복호하는 화상 복호부를 구비하는 화상 전송 시스템으로서, 상기 화상 부호화부는 상기 어느 하나의 화상 부호화 방법에 의해서 부호화를 하는 것을 특징으로 한다.
상기 어느 하나의 화상 부호화 방법에 의해서 부호화를 함으로써, 다양하게 변화하는 부호화 심볼의 성질에 적합한 정보원 부호화에 사용하는 수단을 복수의 수단 중에서 선택할 수 있다.
또한, 본 발명의 화상 전송 시스템은 화상을 부호화하는 화상 부호화부와, 상기 화상 부호화부에 의해서 부호화된 비트 스트림을 송신하는 비트 스트림 송신부와, 상기 송신된 비트 스트림을 수신하는 비트 스트림 수신부와, 상기 수신된 비트 스트림을 복호하는 화상 복호부를 구비하는 화상 전송 시스템으로서, 상기 화상 복호부는 상기 어느 하나의 화상 복호 방법에 의해서 복호를 하는 것을 특징으로 한다.
이러한 구성을 취함으로써, 상기 어느 하나의 화상 부호화 방법에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
또한, 상기 과제를 해결하기 위해서, 본 발명의 화상 축적 시스템은 화상을 부호화하는 화상 부호화부와, 상기 화상 부호화부에 의해서 부호화된 비트 스트림을 축적하는 비트 스트림 축적부를 구비하는 화상 축적 시스템으로서, 상기 화상 부호화부는 상기 어느 하나의 화상 부호화 방법에 의해서 부호화를 하는 것을 특징으로 한다.
상기 어느 하나의 화상 부호화 방법에 의해서 부호화를 함으로써, 다양하게 변화하는 부호화 심볼의 성질에 적합한 정보원 부호화에 사용하는 수단을 복수의 수단 중에서 선택할 수 있다.
또한, 본 발명의 화상 재생 시스템은 축적된 비트 스트림을 보유하는 비트 스트림 축적부와, 상기 비트 스트림 축적부로부터 판독한 비트 스트림을 복호하는 화상 복호부를 구비하는 화상 재생 시스템으로서, 상기 화상 복호부는 상기 어느 하나의 화상 복호 방법에 의해서 복호를 하는 것을 특징으로 한다.
이러한 구성을 취함으로써, 상기 어느 하나의 화상 부호화 방법에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
상기 과제를 해결하기 위해서, 본 발명의 화상 부호화 방법은 화상을 소정 사이즈의 블록으로 분할하여 직교 변환을 하고, 직교 변환 계수 정보에 대하여 정보원 부호화를 하는 화상 부호화 방법으로서, 상기 정보원 부호화를 하기 위한 수단을 복수 준비하고, 상기 직교 변환 계수 정보의 정보원 부호화에 사용하는 수단을 상기 복수의 수단으로부터 선택하는 것을 특징으로 한다.
또한, 본 발명의 화상 부호화 장치는 화상을 소정 사이즈의 블록으로 분할하여 직교 변환을 하여, 직교 변환 계수 정보에 대하여 정보원 부호화를 하는 화상 부호화 장치로서, 상기 정보원 부호화를 하기 위한 수단을 복수 구비하고, 상기 직교 변환 계수 정보의 정보원 부호화에 사용하는 수단을 상기 복수의 수단으로부터 선택하는 것을 특징으로 한다.
직교 변환 계수 정보에 대하여 정보원 부호화를 하기 위한 수단을 복수 준비하고, 상기 직교 변환 계수 정보의 정보원 부호화에 사용하는 수단을 상기 복수의 수단으로부터 선택함으로써, 다양하게 변화하는 직교 변환 계수 정보의 성질에 적합한 정보원 부호화에 사용하는 수단을, 상기 복수의 수단 중에서 선택할 수 있다.
또한, 본 발명의 화상 복호 방법은 화상이 소정 사이즈의 블록으로 분할되어 직교 변환이 행해지고, 직교 변환 계수 정보에 대하여 정보원 부호화가 행해진 부호화 데이터 입력을 복호하는 화상 복호 방법으로서, 정보원 복호를 하기 위한 수단을 복수 준비하고, 상기 직교 변환 계수 정보의 정보원 복호에 사용하는 수단을 상기 복수의 수단으로부터 선택하는 것을 특징으로 한다.
또한, 본 발명의 화상 복호 장치는 화상이 소정 사이즈의 블록으로 분할되어 직교 변환이 행해지고, 직교 변환 계수 정보에 대하여 정보원 부호화가 행해진 부호화 데이터 입력을 복호하는 화상 복호 장치로서, 정보원 복호를 하기 위한 수단을 복수 구비하고, 상기 직교 변환 계수 정보의 정보원 복호에 사용하는 수단을 상기 복수의 수단으로부터 선택하는 것을 특징으로 한다.
이러한 구성을 취함으로써, 상술한 화상 부호화 방법 또는 화상 부호화 장치에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
또한, 본 발명의 화상 부호화 방법, 화상 부호화 장치에 있어서는 상기 정보원 부호화에 사용하는 수단의 선택은 사전에 전송된 직교 변환 계수 정보에 있어서의 유의 계수의 계수치에 기초하는 것을 특징하는 것이 적합하다.
직교 변환 계수 정보에 있어서의 유의 계수의 계수치에 기초하여, 정보원 부호화에 사용하는 수단을 선택함으로써, 다양하게 변화하는 직교 변환 계수 정보의 성질의 변화를, 사전에 전송된 계수치로부터 예측하고, 직교 변환 계수 정보의 성질에 적합한 정보원 부호화를 할 수 있다.
또한, 본 발명의 화상 복호 방법, 화상 복호 장치에 있어서는 상기 정보원 복호에 사용하는 수단의 선택은 사전에 전송된 직교 변환 계수 정보에 있어서의 유의 계수의 계수치에 기초하는 것을 특징하는 것이 적합하다.
이러한 구성을 취함으로써, 상술한 화상 부호화 방법 또는 화상 부호화 장치에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
또한, 본 발명의 화상 부호화 방법, 화상 부호화 장치에 있어서는 상기 정보원 부호화에 사용하는 수단의 선택은 사전에 전송된 직교 변환 계수 정보에 있어서의 제로런수에 기초하는 것을 특징하는 것도 가능하다.
직교 변환 계수 정보 에 있어서의 제로런수에 기초하여, 정보원 부호화에 사용하는 수단을 선택함으로써, 다양하게 변화하는 직교 변환 계수 정보의 성질의 변화를, 사전에 전송된 제로런수로부터 예측하여, 직교 변환 계수 정보의 성질에 적합한 정보원 부호화를 할 수 있다.
또한, 본 발명의 화상 복호 방법, 화상 복호 장치에 있어서는 상기 정보원 복호에 사용하는 수단의 선택은 사전에 전송된 직교 변환 계수 정보에 있어서의 제로런수에 기초하는 것을 특징하는 것도 가능하다.
이러한 구성을 취함으로써, 상술한 화상 부호화 방법 또는 화상 부호화 장치에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
또한, 본 발명의 화상 부호화 방법, 화상 부호화 장치에 있어서는 상기 정보원 부호화에 사용하는 수단의 선택은 상기 직교 변환 계수 정보에 속하는 공간 주파수에 기초하는 것을 특징하는 것도 가능하다.
직교 변환 계수 정보가 속하는 공간 주파수에 기초하여, 정보원 부호화에 사용하는 수단을 선택함으로써, 다양하게 변화하는 직교 변환 계수 정보의 성질의 변화를, 공간 주파수로부터 예측하여, 직교 변환 계수 정보의 성질에 적합한 정보원 부호화를 할 수 있다.
또한, 본 발명의 화상 복호 방법, 화상 복호 장치에 있어서는 상기 정보원 복호에 사용하는 수단의 선택은 상기 직교 변환 계수 정보가 속하는 공간 주파수에 기초하는 것을 특징하는 것도 가능하다.
이러한 구성을 취함으로써, 상술한 화상 부호화 방법 또는 화상 부호화 장치에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
또한, 본 발명의 화상 부호화 방법, 화상 부호화 장치에 있어서는 상기 정보원 부호화에 사용하는 복수의 수단은 각각 직교 변환 계수 정보의 정보원 부호화에 있어서의 부호표로의 할당 순위가 다른 것을 특징으로 하는 것이 적합하다.
이로써, 직교 변환 계수 정보의 성질이 변화하고, 그 정보마다의 출현 빈도가 변화한 경우에 있어서도, 직교 변환 계수 정보의 성질에 적합한 정보원 부호화를 할 수 있다.
또한, 본 발명의 화상 복호 방법, 화상 복호 장치에 있어서는 상기 정보원 복호에 사용하는 복수의 수단은 각각 직교 변환 계수 정보의 정보원 복호에 있어서의 부호표로의 할당 순위가 다른 것을 특징으로 하는 것이 적합하다.
이러한 구성을 취함으로써, 상술한 화상 부호화 방법 또는 화상 부호화 장치에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
또한, 본 발명의 화상 부호화 방법, 화상 부호화 장치에 있어서는 상기 정보원 부호화에 사용하는 복수의 수단은 각각 직교 변환 계수 정보의 정보원 부호화에 있어서의 부호의 구성 방법이 다른 것을 특징으로 하는 것이 적합하다.
이로써, 직교 변환 계수 정보의 성질이 변화하고, 그 정보마다의 출현 빈도의 분포의 치우침이 변화한 경우에 있어서도, 직교 변환 계수 정보의 성질에 적합한 정보원 부호화를 할 수 있다.
또한, 본 발명의 화상 복호 방법, 화상 복호 장치에 있어서는 상기 정보원 복호에 사용하는 복수의 수단은 각각 직교 변환 계수 정보의 정보원 복호에 있어서의 부호의 구성 방법이 다른 것을 특징으로 하는 것이 적합하다.
이러한 구성을 취함으로써, 상술한 화상 부호화 방법 또는 화상 부호화 장치에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
또한, 본 발명의 화상 부호화 방법, 화상 부호화 장치에 있어서는 상기 직교변환 계수 정보에 대한 정보원 부호화는 직교 변환 계수열에 있어서의 제로런수 및 계수치의 조합에 대하여 행해져도 좋고, 직교 변환 계수열에 있어서의 제로런수 및 계수치 각각에 대하여 개별로 행해져도 좋다.
동일하게, 본 발명의 화상 복호 방법, 화상 복호 장치에 있어서는 상기 직교 변환 계수 정보에 대한 정보원 복호는 직교 변환 계수열에 있어서의 제로런수 및 계수치의 조합에 관해서 행해져도 좋고, 직교 변환 계수열에 있어서의 제로런수 및 계수치 각각에 대하여 개별로 행해지더라도 좋다.
또한, 본 발명의 화상 부호화 방법, 화상 부호화 장치에 있어서는 상기 직교 변환 계수 정보로서, 같은 크기의 레벨치가 연속되는 수가 부호표로 할당되는 것을 특징으로 하는 것이 적합하다.
이러한 구성을 취함으로써, 더욱 효율이 좋은 부호화가 가능해진다.
또한, 본 발명의 화상 복호 방법, 화상 복호 장치에 있어서는 상기 직교 변환 계수 정보로서, 같은 크기의 레벨치가 연속되는 수가 부호표로 할당되는 것을 특징으로 하는 것이 적합하다.
이러한 구성을 취함으로써, 상술한 화상 부호화 방법 또는 화상 부호화 장치에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
또한, 본 발명의 화상 부호화 방법, 화상 부호화 장치에 있어서는 부호화 대상 블록에 있어서의 부호화 정보에 따라서 상기 직교 변환 계수 정보를 저주파 성분과 고주파 성분의 어떠한 것으로부터 차례로 부호화하는지를 결정하는 것을 특징으로 하는 것이 적합하다.
이러한 구성을 취함으로써, 더욱 효율이 좋은 부호화가 가능해진다.
또한, 본 발명의 화상 복호 방법, 화상 복호 장치에 있어서는 복호 대상 블록에 있어서의 복호가 완료된 정보에 따라서 상기 직교 변환 계수 정보를 저주파성분과 고주파 성분의 어떠한 것으로부터 차례로 복호하는지를 결정하는 것을 특징으로 하는 것이 적합하다.
이러한 구성을 취함으로써, 상술한 화상 부호화 방법 또는 화상 부호화 장치에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
또한, 본 발명의 화상 부호화 방법, 화상 부호화 장치에 있어서는 상기 정보원 부호화에 사용하는 수단의 선택은 사전에 전송된 부호화 대상 블록에 있어서의 움직임 벡터 차분치에 기초하는 것을 특징하는 것이 적합하다.
사전에 전송된 부호화 대상 블록에 있어서의 움직임 벡터 차분치에 기초하여, 정보원 부호화에 사용하는 수단을 선택함으로써, 다양하게 변화하는 직교 변환 계수 정보의 성질의 변화를, 사전에 전송된 움직임 벡터 차분치로부터 예측하여, 직교 변환 계수 정보의 성질에 적합한 정보원 부호화를 할 수 있다.
또한, 본 발명의 화상 복호 방법, 화상 복호 장치에 있어서는 상기 정보원 복호화에 사용하는 수단의 선택은 사전에 전송된 복호 대상 블록에 있어서의 움직임 벡터 차분치에 기초하는 것을 특징하는 것이 적합하다.
이러한 구성을 취함으로써, 상술한 화상 부호화 방법 또는 화상 부호화 장치에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
또한, 본 발명의 화상 부호화 방법, 화상 부호화 장치에 있어서는 상기 부호화 대상이 되는 직교 변환 계수 정보는 블록 내의 제로런 길이의 합계치인 것을 특징으로 하는 것이 적합하다.
이러한 구성을 취함으로써, 제로런 길이의 합계치를 효율 좋게 부호화할 수 있다.
또한, 본 발명의 화상 복호 방법, 화상 복호 장치에 있어서는 상기 복호 대상이 되는 직교 변환 계수 정보는 블록 내의 제로런 길이의 합계치인 것을 특징으로 하는 것이 적합하다.
이러한 구성을 취함으로써, 상술한 화상 부호화 방법 또는 화상 부호화 장치에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
또한, 상기 과제를 해결하기 위해서 본 발명의 화상 전송 시스템은 화상을 부호화하는 화상 부호화부와, 상기 화상 부호화부에 의해서 부호화된 비트 스트림을 송신하는 비트 스트림 송신부와, 상기 송신된 비트 스트림을 수신하는 비트 스트림 수신부와, 상기 수신된 비트 스트림을 복호하는 화상 복호부를 구비하는 화상 전송 시스템으로서, 상기 화상 부호화부는 상기 어느 하나의 화상 부호화 방법에 의해서 부호화를 하는 것을 특징으로 한다.
상기 어느 하나의 화상 부호화 방법에 의해서 부호화를 함으로써, 다양하게 변화하는 직교 변환 계수 정보의 성질에 적합한 정보원 부호화를 할 수 있다.
또한, 상기 과제를 해결하기 위해서, 본 발명의 화상 전송 시스템은 화상을 부호화하는 화상 부호화부와, 상기 화상 부호화부에 의해서 부호화된 비트 스트림을 송신하는 비트 스트림 송신부와, 상기 송신된 비트 스트림을 수신하는 비트 스트림 수신부와, 상기 수신된 비트 스트림을 복호하는 화상 복호부를 구비하는 화상 전송 시스템으로서, 상기 화상 복호부는 상기 어느 하나의 화상 복호 방법에 의해서 복호를 하는 것을 특징으로 한다.
이러한 구성을 취함으로써, 상기 어느 하나의 화상 부호화 방법에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
또한, 상기 과제를 해결하기 위해서, 본 발명의 화상 축적 시스템은 화상을 부호화하는 화상 부호화부와, 상기 화상 부호화부에 의해서 부호화된 비트 스트림을 축적하는 비트 스트림 축적부를 구비하는 화상 축적 시스템으로서, 상기 화상 부호화부는 상기 어느 하나의 화상 부호화 방법에 의해서 부호화를 하는 것을 특징으로 한다.
상기 어느 하나의 화상 부호화 방법에 의해서 부호화를 함으로써, 다양하게 변화하는 직교 변환 계수 정보의 성질에 적합한 정보원 부호화를 할 수 있다.
또한, 상기 과제를 해결하기 위해서, 본 발명의 화상 재생 시스템은 축적된 비트 스트림을 보유하는 비트 스트림 축적부와, 상기 비트 스트림 축적부로부터 판독한 비트 스트림을 복호하는 화상 복호부를 구비하는 화상 재생 시스템으로서, 상기 화상 복호부는 상기 어느 하나의 화상 복호 방법에 의해서 복호를 하는 것을 특징으로 한다.
이러한 구성을 취함으로써, 상기 어느 하나의 화상 부호화 방법에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
본 발명의 화상 부호화 방법, 화상 부호화 장치는 한 개의 부호화 관련 정보에 대하여 정보원 부호화를 하기 위한 수단을 복수 준비하고, 블록에 있어서의 상기 부호화 관련 정보의 정보원 부호화에 사용하는 수단을 이들 복수의 수단으로부터 선택한다. 따라서, 상술한 바와 같이 변화하는 부호화 심볼의 성질에 적합한 정보원 부호화에 사용하는 수단을, 복수의 수단 중에서 선택할 수 있다. 그 결과, 부호화 조건이나 화상의 성질에 따라서, 부호화 심볼의 정보원 부호화를 효율적으로 행하는 것이 가능해진다.
또한, 본 발명의 화상 복호 방법, 화상 복호 장치는 한 개의 부호화 관련 정보에 대하여 정보원 복호를 하기 위한 수단을 복수 준비하고, 블록에 있어서의 상기 부호화 관련 정보의 정보원 복호에 사용하는 수단을 이들 복수의 수단으로부터 선택한다. 따라서, 상술한 화상 부호화 방법 또는 화상 부호화 장치에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
본 발명의 화상 부호화 방법, 화상 부호화 장치는 직교 변환 계수 정보에 대하여 정보원 부호화를 하기 위한 수단을 복수 준비하고, 상기 직교 변환 계수 정보의 정보원 부호화에 사용하는 수단을 상기 복수의 수단으로부터 선택한다. 따라서, 다양하게 변화하는 직교 변환 계수 정보의 성질에 적합한 정보원 부호화에 사용하는 수단을, 상기 복수의 수단 중에서 선택할 수 있다. 그 결과, 직교 변환 계수의 주파수 영역이나 다른 직교 변환 계수의 경향에 따라서 변화한, 직교 변환 계수 정보의 성질에 적합한 정보원 부호화를 할 수 있게 되어, 효율적인 부호화를 하는 것이 가능해진다.
또한, 본 발명의 화상 복호 방법, 화상 복호 장치는 정보원 복호를 하기 위한 수단을 복수 준비하고, 상기 직교 변환 계수 정보의 정보원 복호에 사용하는 수단을 상기 복수의 수단으로부터 선택한다. 따라서, 상술한 화상 부호화 방법 또는 화상 부호화 장치에 의해서 부호화된 부호화 데이터를 정확하게 복호할 수 있다.
(제 1 실시예)
이하, 도면과 함께 본 발명의 제 1 실시예에 따른 화상 부호화 방법, 화상 복호 방법, 화상 부호화 장치, 화상 복호 장치, 화상 전송 시스템, 화상 축적 시스템, 화상 재생 시스템의 실시예에 관해서 상세하게 설명한다. 또, 도면의 설명에 있어서는 동일 요소에는 동일 부호를 붙이고, 중복하는 설명은 생략한다. 또한, 도형의 치수 비율은 설명한 것과 반드시 일치하지 않고 있다. 이하에 있어서는 부호화 대상으로서 입력되는 입력 프레임 화상에 관해서, 시계열의 프레임 화상으로 이루어지는 동화상을 상정하여 설명한다.
이하, 본 발명의 제 1 실시예의 특징인 부호화 보조 정보(D8)에 포함되는 CBP의 가변 길이 부호화의 수순 및 그 적합한 부호화 조건에 관해서, MPEG-4 부호화 방식을 예로서, 구체예를 제시하면서 설명한다. 또, 이하에 설명하는 부호화 방법 및 부호화 조건에 대해서는 도 1, 도 2에 도시한 화상 부호화 방법 및 화상 부호화 장치, 도 5, 도 6에 도시한 화상 복호 방법 및 화상 복호 장치에 대해서도 동일하게 적용하는 것이 가능하다. 또한, 구체적인 부호화 방식, 복호 방식에 관해서는 상기한 MPEG-4 부호화 방식에는 한정되지 않는다.
MPEG-4에 있어서 CBP는 인트라 부호화 모드가 선택된 매크로 블록에 있어서는 각 블록에 있어서 직교 변환 계수의 비영 교류 성분이 있는지의 여부를 나타내는 플래그이다. 또한, 인터 부호화 모드가 선택된 매크로 블록에 있어서는 각 블록에 있어서 직교 변환 계수의 비영 직류 성분 또는 비영 교류 성분이 있는지의 여부를 나타내는 플래그이다.
그런데, 비영 직교 변환 계수가 존재하는 영역은 화상의 공간적 특징 및 양자화 파라미터에 크게 의존한다. 도 7a, 도 7b는 화상의 공간적 특징과 비영 직교 변환 계수의 관계를 도시한 개념도이다. 도 7a, 도 7b에 도시하는 바와 같이, 화면 중의 배경 부분은 움직임이 적고, 비교적 움직임 보상 예측이 들어맞기 때문에, 비영 직교 변환 계수는 출현하기 어렵다. 반대로, 화면 중을 이동하는 인물의 부분은 움직임이 심하고 텍스처의 변화도 심하기 때문에, 움직임 보상 예측에 의한 잔차가 많이 출현된다. 그 때문에, 이러한 영역에는 비영 직교 변환 계수가 출현하기 쉽다. 즉, 텍스처나 움직임에 변화가 적은 영역은 비영 직교 변환 계수가 출현하기 어렵고, 반대로 텍스처나 움직임에 변화가 많은 영역은 비영 직교 변환 계수가 출현하기 쉽다. 또한, 특히 자연 화상 등에서는 형상이나 움직임의 변화의 경향이 근방 영역에서 유사한 것이 많다.
여기서 도 8에 도시하는 바와 같이, 휘도 성분 화상에 있어서 부호화 대상 매크로 블록의 각 블록을 각각 래스터 스캔순으로 블록(A), 블록(B), 블록(C), 블록(D)으로 하고, 상에 인접하는 매크로 블록의 하측의 블록을 각각 블록(E),블록(F)으로 한다. 또한, 왼쪽에 인접하는 매크로 블록의 우측의 블록을 각각 블록(G), 블록(H)으로 한다. 또한, 부호화 대상 매크로 블록에 있어서의 Cb, Cr의 블록을 각각 블록(I, L)으로 하고, 각각의 위에 인접하는 블록을 블록(J, M), 왼쪽에 인접하는 블록을 각각 블록(K, N)으로 한다.
그렇게 하면 예를 들어 블록(E, F, G)의 전부에 비영 직교 변환 계수가 존재하는 경우에는 화상의 공간적 연속성을 고려하면 블록(A)에도 비영 직교 변환 계수가 존재할 가능성이 높다고 유추할 수 있다. 또한 반대로 예를 들면 블록(E, F, G)이 모두 비영 직교 변환 계수를 가지지 않은 경우에는 블록(A)에도 비영 직교 변환 계수가 존재하지 않을 가능성이 높다고 유추할 수 있다. 이와 같이, 부호화 대상 매크로 블록의 각 블록에 대하여, 근방의 블록의 비영 직교 변환 계수의 유무에 의해서 부호화 대상 매크로 블록에 있어서의 비영 직교 변환 계수가 존재할 확률이 변화한다. 상기를 기초로 하여, 본 발명의 제 1 실시예에 있어서의 화상 부호화 방법은 부호화 대상 매크로 블록의 근방의 블록의 비영 직교 변환 계수의 유무를 바탕으로 공간 콘텍스트를 생성하고, 공간 콘텍스트에 기초하여 부호화 대상 매크로 블록의 CBP의 가변 길이 부호화에 사용하는 맵 테이블을 바꿈으로써 효율 좋게 부호화를 할 수 있는 것을 특징으로 하고 있다.
이하, 본 발명의 제 1 실시예에 있어서의 CBP의 부호화에 있어서의 가변 길이 부호화에 사용하는 맵 테이블의 교체 수단의 일 예를 이하에 설명한다. 우선, 휘도 성분에 대한 CBP인 CBPY 및 색차 성분에 대한 CBP인 CBPC에 대하여 아래와 같이 공간 콘텍스트를 도입하여, 공간 콘텍스트에 따라서 맵 테이블을 바꾸도록 구성한다.
도 9a에 CBPY와 각각의 CBPY에 대응하는 인덱스치를 관련시킨 맵 테이블을 도시한다. 또한, 도 9b에는 인덱스치와 각각의 인덱스치에 대응하는 가변 길이 부호를 관련시킨 가변 길이 부호화 테이블의 일 예를 도시한다. CBPY는 4비트로 나타내고, MSB(Most Significant Bit)측에서 차례로 블록(A, B, C, D)에 대응하고 있고, 비영 직교 변환 계수가 존재하는 경우에 1로 하고, 존재하지 않은 경우에 0으로 한다. 여기서, 블록(A, B, C, D)과 그 근방의 블록과의 상관 관계를 나타내기 위해서, 포인트 P(A), P(B), P(C), 및 연산자「==」를 도입한다. 연산자「==」는 2개의 수치가 일치하고 있는 경우에는 1을 돌려주고, 일치하고 있지 않은 경우에는 0을 돌려주는 연산자이다. 즉, 블록(A)의 CBP인 CBP(A)가 블록(G)의 CBP인 CBP(G)와 일치하고 있는 경우에는 이하에 나타내는 식 1의 연산 결과는 1이 된다.
식 1 : CBP(A) == CBP(G)
즉, CBP(A) 및 CBP(G)가 모두 1이거나, 혹은 모두 0이면 식 1의 연산 결과는 1이 되고, 그 이외의 경우는 식 1의 연산 결과는 0이 된다. 여기서, 포인트 P(A), P(B), P(C)를 이하의 식 2, 식 3, 식 4에 의해서 정의한다.
식 2: P(A)=2·(CBP(A)==CBP(E))+2·(CBP(A)==CBP(G))+(CBP(A)==CBP(H))+
(CBP(A)== CBP(F))
식 3: P(B)= 4·(CBP(B)==CBP(F))+ 2·(CBP(B)==CBP(E))
식 4: P(C)= 4·(CBP(C)==CBP(H))+ 2·(CBP(C)==CBP(G))
이들 식에 의해서 블록(A, B, C)에 대하여 근방 블록과의 CBP에 관한 상관도를 포인트 P(A), P(B), P(C)에 의해서 나타낼 수 있다.
도 9a, 도 9b에 도시한 맵 테이블의 모든 패턴에 대하여 P(A), P(B), P(C)를 산출하고, 그 합계치를 P(CBPY)로 한다. 즉, P(CBPY)는 다음 식으로 나타난다.
식 5: P(CBPY)=P(A)+P(B)+P(C)
단, 부호화 대상 매크로 블록의 근방 블록이 화면 외 또는 슬라이스 외가 되는 경우에는 상관성이 인정되지 않기 때문 연산자「==」에 의한 연산 결과를 항상 0으로 한다. 즉 예를 들면 블록(G, H)이 화면 외 또는 슬라이스 외가 되는 경우에는 예를 들면(CBP(A)==CBP(G)) 및 (CBP(A)==CBP(H))의 값은 항상 0으로 한다.
이렇게 해서 구해진 P(CBPY)는 부호화 대상 매크로 블록의 주위에서의 CBPY와의 공간적 상관이 높은 CBPY 일수록 큰 값을 제공한다. 즉, 공간적 콘텍스트를 기초로 한 경우에 출현할 확률이 높다고 추정되는 CBPY일수록 P(CBPY)가 큰 값이 된다. 그래서, 이렇게 해서 구해진 P(CBPY)의 값이 큰 순으로 도 9a에서의 CBPY의 인덱스치가 작아지도록 배열이 바뀐 맵 테이블을 작성한다. 단, P(CBPY)가 같은 경우에는 도 9a의 맵 테이블에 있어서 인덱스치가 작은 것이 새로운 맵 테이블에 있어서도 인덱스치가 작아지도록 한다. 도 10a, 도 10b에는 블록(E, F, G, H)의 CBP가 각각 1, 1, 0, 0인 경우(도 10a)와, 0, 1, 1, 0인 경우(도 10b)를 예로서 CBPY의 맵 테이블을 도시한다.
다음에, CBPC에 대해서도 동일하게 공간 콘텍스트를 바탕으로 하여 맵 테이블을 바꾼다. 도 11a에 CBPC의 맵 테이블을 도시하고, 도 11b에 CBPC의 가변 길이 부호화 테이블의 일 예를 도시한다. CBPC는 2비트로 나타내고, MSB 측에서 차례로Cb, Cr 대응하고 있어, 비영 직교 변환 계수가 존재하는 경우에 1로 하고, 존재하지 않은 경우에 0으로 한다. 도 8에 따라서, CBPY일 때와 같이, P(I), P(L), P(CBPC)를 이하의 식 6, 식 7, 식 8에 의해서 정의한다.
식 6: P(I)= (CBP(I)==CBP(J))+(CBP(I)==CBP(K))
식 7: P(L)=(CBP(L)==CBP(M))+(CBP(L)==CBP(N))
식 8: P(CBPC)=P(I)+ P(L)
단, 부호화 대상 매크로 블록의 근방 블록이 화면 외 또는 슬라이스 외가 되는 경우에는 상관성이 인정되지 않기 때문에 연산자「==」에 의한 연산 결과를 항상 0으로 한다. 즉 예를 들면 블록(K)이 화면 외 또는 슬라이스 외가 되는 경우에는 예를 들면 (CBP(I)==CBP(K))의 값은 항상 0으로 한다.
이렇게 해서 구해진 P(CBPC)는 부호화 대상 매크로 블록의 주위에서의 CBPC와의 공간적 상관이 높은 CBPC일수록 큰 값을 제공한다. 즉, 공간 콘텍스트를 기초로 한 경우에 출현할 확률이 높다고 추정되는 CBPC일수록 P(CBPC)가 큰 값이 된다. 그래서, 이렇게 하여 구해진 P(CBPC)의 값이 큰 순으로 도 11a에서의 CBPC의 인덱스치가 작아지도록 바꾸어 배열한 맵 테이블을 작성한다. 단, P(CBPC)가 같은 경우에는 도 11a의 맵 테이블에 있어서 인덱스치가 작은 것이 새로운 맵 테이블에 있어서도 인덱스치가 작아지도록 한다. 도 12a, 도 12b에는 도 8에 있어서의 J, K, M, N의 CBP가 각각 (0, 1, 0, 0)인 경우(도 12a)와, (0, 0, 1, 1)인 경우(도 12b)를 예로서 CBPC의 맵 테이블을 도시한다.
이상과 같이 본 발명의 제 1 실시예에서는 CBPY 및 CBPC의 맵 테이블을 화상의 연속성을 고려하여 바꾸도록 구성하였기 때문에, 출현하기 쉬운 심볼에 짧은 부호어를, 출현하기 어려운 심볼에 긴 부호어를 할당할 수 있어, CBP를 적합하게 부호화할 수 있다.
도 13은 본 발명의 제 1 실시예에 따른 가변 길이 부호화부(16)의 블록도를 도시한 도면이다. 즉, 도 13의 가변 길이 부호화부(16)에 있어서 우선 입력 심볼(H1)로서 가변 길이 부호 출력부(30)에 CBP가 입력된다. 그리고 부호화 심볼 메모리(31)로부터, 부호화 맵 테이블 제공부(32)에 부호화 맵 테이블 참조 정보(H2)로서 주위 블록에 있어서의 CBP가 입력된다. 그리고, 부호화 맵 테이블 제공부(32)에서 상기 수법에 기초하여 CBP의 부호화에 대하여 사용하는 부호화 맵 테이블이 결정되고, 부호화 맵 테이블(H4)이 가변 길이 부호 출력부(30)에 제공된다. 또한, 가변 길이 부호화 테이블 제공부(33)로부터 가변 길이 부호화 테이블(H5)이 가변 길이 부호 출력부(30)에 입력된다. 또, 가변 길이 부호화 테이블 제공부(33)에는 가변 길이 부호화 테이블 참조 정보(H3)를 입력할 수 있지만, 본 실시 예에서는 이 입력이 없어도 좋다. 그리고, 부호화 대상 CBP는 가변 길이 부호화되어, 부호화 데이터(D9)로서 출력된다.
본 발명의 제 1 실시예에서는 CBP의 공간 콘텍스트를 생성할 때에 부호화 대상 매크로 블록에 인접하는 블록만을 참조했었지만, 물론 인접하고 있는 블록에 한정되지 않고, 예를 들면 도 15a에 도시하는 바와 같은 부호화 대상 매크로 블록에 인접은 하지 않고 있지만 근방에 존재하는 블록의 CBP의 정보도 더하여 이용함으로써 공간 콘텍스트를 생성하여도 좋고, 물론, 예를 들면 도 15b에 도시하는 바와 같이, 본 발명의 제 1 실시예로서는 사용하지 않은 매크로 블록 내의 블록의 정보를 이용하여 공간 콘텍스트를 생성하여도 동일한 효과를 얻을 수 있다.
또한, 본 발명의 제 1 실시예에 따른 부호화 방법에서는 CBPY와 CBPC를 별도의 가변 길이 부호화 테이블을 사용하여 각각 별도로 가변 길이 부호화하도록 설명하였지만, 물론 예를 들면 6비트로 나타나고 MSB측의 4비트가 CBPY, LSB측의 2비트가 CBPC로 되어 있는 CBP에 대한 가변 길이 부호화 테이블 및 맵 테이블을 사용하여 맵 테이블을 바꿈으로써 CBPY와 CBPC를 나누지 않고서 부호화하여도 동일한 효과를 얻을 수 있다. 이 경우에는 식 5와 식 8에 의해서 산출되는 P(CBPY) 및 P(CBPC)를 사용하여, 예를 들면 이하의 식 9에 의해서 얻어지는 P(CBP)의 값을 이용하여, 가변 길이 부호화 테이블을 바꾸도록 구성하여도 좋다.
식 9: P(CBP)= P(CBPY)+P(CBPC)
또, 본 발명의 제 1 실시예에 따른 부호화 방법에서는 이미 부호화가 완료된 근방 블록에 있어서의 정보를 바탕으로 공간 콘텍스트를 생성하였기 때문에, 복호할 때에도 같은 공간 콘텍스트를 재생할 수 있고, 부호화측과 마찬가지로 가변 길이 복호 테이블을 바꿀 수 있다.
즉, 도 14에 도시한 가변 길이 복호부(21)의 블록도에 있어서, 본 발명의 제 1 실시예에 따른 부호화 방법에 의해서 부호화된 부호화 데이터(D9)가 가변 길이 복호부(21)의 복호 심볼 출력부(40)에 입력되면, 이미 복호가 완료된 심볼로부터 주변 블록의 CBP가 복호 심볼 메모리(41)로부터 복호 맵 테이블 참조 정보(H7)로서 복호 맵 테이블 제공부(42)에 입력된다. 그리고, 복호 맵 테이블 제공부(42)로부터복호 맵 테이블(H9)이 부호화와 같은 수속으로써 선택되어 복호 심볼 출력부(40)에 입력된다. 또한, 가변 길이 복호 테이블 제공부(43)로부터는 가변 길이 복호 테이블(H10)이 복호 심볼 출력부(40)에 입력된다. 또, 가변 길이 복호 테이블 제공부(43)에는 가변 길이 복호 테이블 참조 정보(H8)를 입력할 수 있지만, 본 실시의 예에서는 이 입력이 없어도 좋다. 그리고, 복호 심볼 출력부(40)에 있어서 가변 길이 복호가 이루어지고, 복호 심볼(H6)로서 CBP가 복호되어 출력되는 동시에, 복호 심볼 메모리(41)에 기억된다.
따라서, 본 발명의 제 1 실시예에 따른 복호 방법에 의해서 본 발명의 제 1 실시예에 따른 부호화 방법에 의해서 부호화된 CBP를 적합하게 복호할 수 있다.
또한, 본 발명의 제 1 실시예에 따른 부호화 방법의 설명으로서 MPEG-4 부호화 방식을 예로 설명하였지만, 물론 그 밖의 부호화 방식에 있어서도 CBP의 부호화에 공간 콘텍스트를 동일하게 생성하고, 공간 콘텍스트에 기초하여 가변 길이 부호화 테이블을 바꿈으로써 동일한 효과를 얻을 수 있다. 그 밖의 부호화 방식으로서 H.26L 부호화 방식에 있어서의 CBP의 부호화 방법에 관해서 본 발명의 제 1 실시 형태를 적용한 예를 이하에 제시한다.
도 16a, 도 16b에 H.26L 부호화 방식에 있어서의 매크로 블록의 구성 및 CBP의 구성을 도시한다. H.26L에서 매크로 블록은 휘도 성분 화상이 16화소 ×16라인의 크기로 이루어지고, 2종류의 색차 성분 화상이 8화소 ×8라인의 크기로 이루어진다. 직교 변환은 각각 4화소 ×4라인 단위로 행해지지만, 이렇게 해서 생성된 직교 변환 계수 중 색차 성분 화상의 DC 성분은 또한 2화소 ×2라인의 직교 변환이행해진다. 인트라 부호화된 매크로 블록의 경우, 부호화 모드로서 인트라 4 ×4 부호화 모드와 인트라 16 ×16 부호화 모드의 2종류의 부호화 모드가 있고, 각각 CBP의 구성이 다르다.
우선, 인트라 4 ×4부호화 모드에서는 CBPY에 대해서는 MPEG-4와 동일하게 매크로 블록을 4개의 8화소 ×8라인의 블록으로 분할하고, 각각의 블록 내에 비영 직교 변환 계수가 존재하는지의 여부를 나타낸다. 한편, CBPC는 「0」,「1」,「2」의 3가지가 있다. CBPC로서 「0」은 색차 성분에 관해서는 비영 직교 변환 계수가 존재하지 않은 것을 나타낸다. 「1」은 색차 성분의 DC 성분에만 비영 직교 변환 계수가 존재하고, AC 성분에는 비영 직교 변환 계수가 존재하지 않는 것을 나타낸다. 「2」는 색차 성분의 AC 성분에 비영 직교 변환 계수가 적어도 1개 이상 존재하는 것을 나타낸다. 또 인터 부호화된 매크로 블록으로서는 인트라 4 ×4 부호화 모드와 같은 CBP의 구성으로 되어 있다. 인트라 16 ×l6 부호화 모드에 있어서의 CBP에서, CBPY는 매크로 블록 내의 AC 성분에 비영 직교 변환 계수인지의 여부를 나타내는 1 비트만으로 구성된다. 인트라 16 ×16 부호화 모드에 있어서의 CBPC는 인트라 4 ×4부호화 모드와 동일하다.
우선, CBPY의 구성은 인트라 16 ×16 부호화 모드의 경우를 제외하고는 MPEG-4와 동일하게 구성되어 있기 때문에, 인트라 16 ×16 부호화 모드에 있어서의 경우만 예외 처리로서 취급하고, 그 밖의 부호화 방법은 MPEG-4에 적용한 경우와 같은 방법을 사용할 수 있다. 도 8에 있어서의 부호화 대상 매크로 블록이 인트라 16 ×16 부호화 모드로 부호화되는 경우에는 예를 들면 이하의 식 10을 사용하여P(CBPY)를 산출하고, P(CBPY)의 값이 큰 것을 우선도가 높은 CBPY로 한다. 도 17a에 도시하는 바와 같이 상기 부호화 대상 매크로 블록 전체를 블록(Q)으로 하여, CBP(Q)는 부호화 대상 매크로 블록에 있어서의 CBPY의 값을 나타내는 것으로 한다. 또한 도 18a, 도 18b에는 도 9a, 도 9b와 같이 H.26L에 적용한 경우의 CBPY의 부호화에 있어서의 맵 테이블 및 가변 길이 부호화 테이블을 도시한다.
식 10: P(CBPY)=(CBP(Q)==CBP(E))+(CBP(Q)==CBP(F))+(CBP(Q)==CBP(G))+(CBP
(Q)== CBP(H))
부호화 대상 매크로 블록에 인접하는 매크로 블록이 인트라 16 ×16 부호화 모드로 부호화되어 있는 경우에는 상기 인트라 16 ×16 부호화 모드로 부호화되어 있는 매크로 블록의 휘도 성분에 대한 CBP는 전부 상기 인트라 16 ×l6부호화 모드로 부호화되어 있는 매크로 블록의 CBPY와 동일한 값으로 하여, 본 발명의 제 1 실시예에 있어서 MPEG-4에 적용한 경우와 동일한 방법에 의해서 부호화를 한다. 즉, 예를 들면 부호화 대상 매크로 블록의 왼쪽에 인접하는 매크로 블록의 부호화 모드가 인트라 16 ×16 부호화 모드이고, 또한, 그 CBPY가 「1」인 경우에는 도 8에 있어서의 블록(G) 및 블록(H)의 CBP의 값인 CBP(G) 및 CBP(H)예 어긋남도 「1」로 하여 공간 콘텍스트를 생성한다.
다음에, CBPC의 구성은 부호화 모드에 한정되지 않고 공통이기 때문에, 부호화 방법에 예외 처리는 필요하지 않다. 도 17b에 도시하는 바와 같이, 부호화 대상 매크로 블록의 색차 성분 화상의 블록을 블록(I)으로 하고, 상에 인접하는 블록을 J로 하고, 왼쪽에 인접하는 블록을 K로 한다. H.26L에 적용한 경우의 CBPC의 부호화에 있어서의 맵 테이블 및 가변 길이 부호화 테이블을 도 18c, 도 18d에 도시한다. H.26L에 적용한 경우의 CBPC는 「0」,「1」,「2」의 어느 하나의 값을 취할 수 있다. 이 값은 근방 블록에 있어서의 CBPC의 값과 유사하다고 생각되기 때문에, 블록(I)의 CBPC의 값을 블록(J) 및 블록(K)의 CBPC의 값으로부터 추측하도록 공간 콘텍스트를 생성한다. 즉, 블록(J)에서의 CBPC의 값을 CBPC(J), 블록(K)에서의 CBPC의 값을 CBPC(K)로 하면, 다음에 나타내는 식 11에 의해서 산출되는 P(CBPC)를 구하고, CBPC의 값이 P(CBPC)에 가까운 순으로 인덱스치가 작아지도록 맵 테이블을 바꾼다.
식 11: P(CBPC)=(CBPC(K)+ CBPC(J))/2
즉, 예를 들면 CBPC(J)=CBPC(K)=2인 경우에는 식 11로부터 P(CBPC)=2가 되기 때문에, 도 19에 도시하는 테이블처럼 부호화 대상 매크로 블록에 있어서의 CBPC로서 CBPC=2의 인덱스치가 가장 작은 값이 되고, 계속해서 CBPC=1, 맨 마지막에 CBPC=0의 순으로 인덱스치가 증가하도록 맵 테이블을 생성한다.
이상과 같이 구성하면, H.26L 부호화 방식에 있어서도, CBP의 부호화를 부호화 대상 매크로 블록의 근방 블록에서의 정보를 이용한 공간 콘텍스트에 기초하여 맵 테이블을 바꿀 수 있고, 출현 확률이 높은 심볼에 짧은 부호어를 할당할 수 있기 때문에, CBP의 적합한 부호화가 실현된다.
(제 2 실시예)
본 발명의 제 1 실시예에서는 CBP의 부호화를 할 때에 근방 블록에 있어서의CBP의 정보를 이용하여 공간 콘텍스트를 생성하고, 상기 공간 콘텍스트에 기초하여 맵 테이블을 바꾸도록 구성함으로써 CBP의 적합한 부호화를 실현하는 방법을 나타내었지만, 본 발명의 제 2 실시예에 따른 부호화 방법 및 장치에서는 CBP의 부호화를 할 때에 또한 근방 블록에 있어서의 부호화 모드 정보를 이용하여 공간 콘텍스트를 생성함으로써 맵 테이블을 바꿈으로써, 부호화 효율을 향상시키는 것을 특징으로 한다.
본 발명의 제 2 실시예에 따른 부호화 및 복호에 있어서는 본 발명의 제 1 실시예에서 설명한 것과 동일하게 MPEG-4 부호화 방식을 바탕으로 하여 설명한다. 본 발명의 제 1 실시예에서는 부호화 대상 매크로 블록의 CBP의 부호화를 할 때에 그 근방 블록에 있어서의 CBP의 값을 이용하여 공간 콘텍스트를 생성하고, 상기 공간 콘텍스트에 따라서 CBP의 맵 테이블을 바꾸도록 구성하였지만, 본 발명의 제 2 실시예에 있어서는 또한 상기 공간 콘텍스트의 생성에 근방 매크로 블록에 있어서의 부호화 모드 정보를 이용한다.
이미 설명한 것처럼, MPEG-4에 있어서 매크로 블록의 부호화 모드는 2종류의 인터 부호화 모드 및 1종류의 인트라 부호화 모드로 구성된다. 인터 부호화 모드 중 4개의 움직임 벡터를 사용하는 것을 특징으로 하는 인터 부호화 모드 1은 매크로 블록 내의 각각의 블록의 움직임이 다르기 때문에 선택된다고 생각되고, 이 경우에는 움직임이 단조롭지 않기 때문에 비영 직교 변환 계수가 발생하기 쉽다고 생각된다. 따라서, 예를 들면 도 8에 도시한 부호화 대상 매크로 블록의 근방 블록의 CBP에 대하여, 만약 근방 블록이 속하는 매크로 블록이 인터 부호화 모드 1에 의해서 부호화되어 있는 경우에는 실제의 CBP의 값에 관계없이 CBP=1인 것으로서 공간 콘텍스트를 생성하도록 구성한다. 이와 같이 구성하면, 움직임이 복잡하다고 생각되는 인터 부호화 모드 1의 주변 영역의 움직임도 복잡하기 때문에 비영 직교 변환 계수가 출현하기 쉬운 것을 반영한 맵 테이블의 설정이 가능해져, CBP의 부호화 효율을 향상시킬 수 있다.
또한, 복호할 때에도 상기와 같은 수단에 의해서 맵 테이블을 설정함으로써, 상기 방법에 의해서 부호화된 부호화 데이터를 적합하게 복호할 수 있다.
또한, 본 발명의 제 2 실시예에 따른 부호화 방법에 있어서는 부호화 대상 매크로 블록의 근방 매크로 블록에 있어서의 부호화 모드에 따라서 공간 콘텍스트 을 생성하도록 설명하였지만, 물론, 상기 부호화 대상 매크로 블록에 있어서의 부호화 모드도 참조하여 공간 콘텍스트를 생성하여도 좋다.
(제 3 실시예)
본 발명의 제 3 실시예에 따른 부호화 방법은 CBP의 부호화에 있어서, CBP의 각각의 패턴이 출현할 확률의 분포에 따라서 가변 길이 부호화 테이블을 바꾸는 것을 특징으로 한다. 즉, 도 20a, 도 20b에 도시하는 바와 같이, 예를 들면 CBPY의 인덱스 순으로 대한 심볼의 발생률이 화상에 의해서 다른 경우가 있다. 도 20a는 상위의 몇 개의 인덱스치에 대한 발생 확률이 높고, 그 밖의 발생 확률이 낮은 경우를 나타낸 표이다. 도 20b는 인덱스치에 대한 발생 확률에 그다지 치우침이 없는 경우를 나타낸 표이다. 이와 같이 특성이 다른 발생률의 분포가 생기는 경우, 각각의 특성에 적합한 가변 길이 부호화 테이블로 바꿈으로써 부호화 효율을 더욱 향상시킬 수 있다.
예를 들면 도 21a 내지 도 21c에 도시하는 바와 같이 복수의 가변 길이 부호화 테이블을 준비해두고, 이들을 적응적으로 바꾸도록 제어한다. 일 예로서 도 21a 내지 도 21c에 도시한 복수의 가변 길이 부호화 테이블은 exp-Golomb 부호라고 불리고, 아래와 같이 구성된다. 즉, j+1 비트의 Unary 파트에 대하여, k+j 비트의 Binary 파트를 추가함으로써 부호를 구성한다(j= 0, 1, . . . ). 즉, j는 그 부호에 있어서의 Binary 파트의 「O」의 개수에, 또한 k는 0번째의 부호에 있어서의 Binary 파트의 부호 길이와 같다. 도 21a는 k=0인 경우, 도 21b는 k=1인 경우, 도 21c는 k=2인 경우의 exp-Golomb 부호이다. 도면으로부터 분명한 바와 같이, k의 값이 클수록 부호 길이의 분포의 치우침이 작아지는 경향이 있다.
그런데, 이와 같이 부호 길이의 분포의 치우침의 특성이 다른 가변 길이 부호화 테이블을 복수 준비하고, 적응적으로 이들을 바꾼다. 이들의 가변 길이 부호화 테이블의 교체 방법으로서는 예를 들면, 양자화 파라미터가 큰 경우에는 비영 직교 변환 계수가 발생하기 때문에, CBPY 각 비트가 「0」으로 될수록 출현하기 쉽고, 공간 콘텍스트에 의한 예측도 들어맞기 쉽다. 반대로 CBPY의 각 비트가 「1」이 되는 것은 출현하기 어렵기 때문에, 공간 콘텍스트에 의한 예측이 어긋나기 쉽다. 양자화 파라미터가 작은 경우에는 비영 직교 변환 계수가 발생하기 쉽기 때문에, CBPY의 각 비트가 「1」로 될수록 출현하기 쉽고, 공간 콘텍스트에 의한 예측도 들어맞기 쉽다. 반대로 CBPY의 각 비트가 「0」이 되는 것은 출현하기 어렵기때문에, 공간 콘텍스트에 의한 예측은 어긋나기 쉽다. 양자화 파라미터가 크지도 작지도 않은 경우에는 CBPY의 각 비트가「0」이나 「1」에 치우치기 않기 때문에, 각각의 패턴이 발생하고, 공간 콘텍스트에 의한 예측도 들어맞기 어렵다. 그래서, 상기 부호화 대상 매크로 블록의 양자화 파라미터의 값을 참조하여, 양자화 파라미터가 미리 설정한 임계치 Th1보다 큰 경우에는 예를 들면 도 21a의 테이블을 사용하도록, 양자화 파라미터가 임계치 Th1 이하이고 임계치 Th2보다 큰 경우에는 예를 들면 도 21c의 테이블을 사용하도록, 양자화 파라미터가 임계치 Th2보다 작은 경우에는 도 21a의 테이블을 사용하도록 제어함으로써, 각각의 경우에 적합한 가변 길이 부호화 테이블을 제공할 수 있어, 부호화 효율이 좋은 가변 길이 부호화를 실현할 수 있다.
또한, 가변 길이 부호화 테이블의 교체 방법의 다른 예에서는 CBPY의 인덱스치에 따른 실제의 CBPY의 출현수를 카운트한다. 즉, C(n)를 CBPY의 각각의 인덱스치에 따른 출현 회수의 카운터로 하고(n=1 내지 15), C(n)를 정규화한 C′(n)의 분산치가 미리 설정한 임계치 Th3보다도 작은 경우에는 예를 들면 도 21c의 테이블을 사용하도록, 임계치 Th3 이상의 경우에는 예를 들면 도 21a의 테이블을 사용하도록 제어함으로써, 각각의 경우에 적합한 가변 길이 부호화 테이블을 제공할 수 있고, 부호화 효율이 좋은 가변 길이 부호화를 실현할 수 있다.
또, 도 21a 내지 도 21c에서는 3개의 가변 길이 부호화 테이블을 사용하여 설명하였지만, 물론 가변 길이 부호화 테이블의 개수나 그 값은 도 21a 내지 도 21c에 한정되는 것이 아니다. 또한, 복수의 가변 길이 부호화 테이블을 메모리에보유하여 둠으로써 가변 길이 부호화 테이블을 바꿀 수도 있지만, 예로서 나타낸 exp-Golomb 부호 등의 Universal 부호를 사용하여 그 파라미터를 바꿈으로써 가변 길이 부호화 테이블을 바꾸는 것도 가능하다.
즉, 도 13의 가변 길이 부호화부(16)에 있어서 우선 입력 심볼(H1)로서 가변 길이 부호 출력부(30)에 CBP가 입력된다. 그리고 부호화 심볼 메모리(31)로부터, 부호화 맵 테이블 제공부(32)에 가변 길이 부호화 테이블 참조 정보(H2)로서 주위 블록에 있어서의 CBP가 입력된다. 그리고, 부호화 맵 테이블 제공부(32)에서 예를 들면 본 발명의 제 1 실시예에 따른 수법에 기초하여 CBP의 부호화에 대하여 사용하는 부호화 맵 테이블이 결정되고, 부호화 테이블(H4)이 가변 길이 부호 출력부(30)에 제공된다. 또한, 가변 길이 부호화 테이블 제공부(33)에는 부호화 심볼 메모리(31)로부터, 부호화 대상 매크로 블록의 양자화 파라미터가 가변 길이 부호화 테이블 참조 정보(H3)로서 입력된다. 그리고, 가변 길이 부호화 테이블 제공부(33)에서, 본 발명의 제 3 실시예에 따른 수법에 기초하여 CBP의 부호화에 대하여 사용하는 가변 길이 부호화 테이블이 결정되고, 상기 가변 길이 부호화 테이블(H5)이 가변 길이 부호 출력부(30)에 입력된다. 그리고, 부호화 대상 CBP은 가변 길이 부호화되고, 부호화 데이터(D9)로서 출력된다.
또한, 마찬가지로 도 14에 도시한 가변 길이 복호부(21)의 블록도에 있어서, 본 발명의 제 3 실시예에 따른 부호화 방법에 의해서 부호화된 부호화 데이터(D9)가 가변 길이 복호부(21)의 복호 심볼 출력부(40)에 입력되면, 이미 복호가 완료된 심볼로부터 복호 대상 매크로 블록의 양자화 파라미터가 복호 심볼 메모리(41)로부터 복호 맵 테이블 참조 정보(H7)로서 복호 맵 테이블 제공부(42)에 입력된다. 그리고, 복호 맵 테이블 제공부(42)로부터 복호 맵 테이블(H9)이 부호화와 같은 수속으로써 선택되어 복호 심볼 출력부(40)에 입력된다. 또한, 복호 심볼 메모리(41)로부터 가변 길이 복호 테이블 참조 정보(H8)로서 복호 대상 매크로 블록의 이미 복호 완료된 주변 블록에 있어서의 CBP가 가변 길이 복호 테이블 제공부(43)에 입력된다. 그리고, 가변 길이 복호 테이블 제공부(43)에서, 부호화와 같은 수속으로써 가변 길이 복호 테이블이 선택되고, 가변 길이 복호 테이블(H10)로서 복호 심볼 출력부(40)에 입력된다. 그리고, 복호 심볼 출력부(40)에 있어서 가변 길이 복호가 이루어지고, 복호 심볼(H6)로서 CBP가 복호되어 출력되는 동시에, 복호 심볼 메모리(41)에 기억된다.
또, 본 발명의 제 3 실시예에 따른 부호화 방법에서는 상기 부호화 대상 매크로 블록에 있어서의 양자화 파라미터에 기초하여 가변 길이 부호화 테이블을 바꾸도록 구성하였지만, 물론, 상기 부호화 대상 매크로 블록의 부호화해야 할 화상이 복잡함에 영향을 미치는 부호화 정보라면, 어떠한 정보라도 동일한 수단에 의해서 본 발명을 적용할 수 있다. 예를 들면, 매크로 블록 부호화 모드는 매크로 블록이 보다 미세한 블록으로 분할되는 모드일수록, 화상의 복잡함의 정도가 높다고 생각된다. 반대로, 분할 블록수가 적을수록, 화상이 복잡함의 정도가 낮다고 생각된다. 따라서, 매크로 블록 부호화 모드에 기초하여 화상이 복잡함의 정도가 높다고 생각되는 경우에는 비영 양자화 직교 변환 계수가 발생하기 쉽기 때문에, 모든 CBP의 발생 가능성이 생각되기 때문에, CBP 부호화를 위한 가변 길이 부호화 테이블로서 보다 부호 길이의 치우침이 작은 가변 길이 부호화 테이블을 사용하여 부호화하도록 제어한다. 반대로 화상이 복잡함의 정도가 낮다고 생각되는 경우에는 CBP 부호화를 위한 가변 길이 부호화 테이블로서 보다 부호 길이의 치우침이 큰 가변 길이 부호화 테이블을 사용하여 부호화하도록 제어한다. 또한, 예를 들면 움직임 벡터에 대해서도, 움직임 벡터가 길면 길수록 부호화해야 할 화상이 복잡할 가능성이 높아지는 경향이 있다. 그 때문에, 상기 매크로 블록에 있어서의 움직임 벡터의 길이가 길수록, 가변 길이 부호화 테이블로서 부호 길이의 치우침이 보다 작은 것을 사용하도록 제어하도록 구성하여도 좋다. 또한, 주위 블록의 움직임 벡터로부터 부호화 대상 블록의 움직임 벡터를 예측하여, 예측치와 실제의 움직임 벡터의 차분치를 부호화하는 부호화 방식의 경우에는 부호화 대상이 되는 매크로 블록에 있어서의 움직임 벡터 차분치를 기초로 가변 길이 부호화 테이블을 바꾸도록 구성하여도 좋다. 즉, 움직임 벡터 차분치가 크면 클수록, 부호화 대상 매크로 블록근방에 있어서의 움직임이 복잡하고, 그 결과로서 비영 양자화 직교 변환 계수가 발생하기 쉽다고 유추할 수 있기 때문에, 이 경우에는 예를 들면 부호화 대상 매크로 블록에 있어서의 차분 움직임 벡터의 절대치가 크면 클수록, 부호 길이의 치우침이 적은 가변 길이 부호화 테이블을 사용하도록 제어하도록 구성하여도 좋다.
이와 같이, 본 발명의 제 3 실시예에서는 각 CBP가 발생할 확률의 분포에 따라서 가변 길이 부호화 테이블을 바꾸도록 구성하였기 때문에, 효율 좋게 부호화를 할 수 있다.
(제 4 실시예)
다음에 본 발명의 제 4 실시예에 따른 부호화 방법에 있어서의 직교 변환 계수의 가변 길이 부호화의 수순에 대하여 설명한다. 여기서는 공간 화상 데이터를 주파수 화상 데이터로 변환하는 직교 변환으로서는 이산 코사인 변환(DCT: Discrete Cosine Transform)을 상정한다. 도 22a는 도 4b에 도시한 8화소 ×8라인의 직교 변환 계수 f11내지 f88에 양자화 처리를 가한 양자화 직교 변환 계수 q11내지 q88의 구체적인 일 수치예를 나타내고 있다. 화상 부호화 장치의 가변 길이 부호화부에서는 이러한 양자화 직교 변환 계수에 대하여 소정의 처리 수순으로 가변 길이 부호화를 하여, 부호화 데이터를 생성한다.
계수 qij의 첨자의 값 i, j가 대응하는 수직 주파수, 수평 주파수를 각각 나타내고 있는 양자화 직교 변환 계수 q11내지 q88에 있어서는 공간 화상 데이터에서의 화상 성분 a11내지 a88(도 4a 참조)과는 달리, 각 양자화 직교 변환 계수가 그 계수치의 크기 등에 대하여, 대응하는 공간 주파수의 값에 의존한 데이터 특성을 갖고 있다. 일반적으로, 자연 화상에 있어서는 저주파수 영역으로 큰 직교 변환의 계수치가 얻어져, 고주파수가 됨에 따라서 계수치가 작아진다. 이 분포는 영을 피크에 갖는 라플라스(Laplace) 분포에 의해 근사할 수 있다. 또한, 그 때 각 블록 내의 각 화소의 농도의 변화가 격심할수록 변환 계수의 분포의 확대도 커져, 계수의 평균 진폭치가 증대한다.
양자화 직교 변환 계수의 가변 길이 부호화의 처리 수순에 있어서는 우선, 2차원 데이터인 양자화 직교 변환 계수 q11내지 q88이, 예를 들면 도 22b에 도시하는 지그재그·스캔에 의해서, 1차원 데이터로 변환된다. 이 지그재그·스캔으로서는 스캔 후의 1차원 데이터가 저주파수 영역으로부터 고주파수 영역으로 이행해 가는 데이터열이 되도록, 양자화 직교 변환 계수가 스캔된다. 이로써, 저주파수 영역으로부터 고주파수 영역으로 양자화 직교 변환 계수가 나란히 배열되는 도 22c에 도시하는 1차원 데이터가 얻어진다.
이 양자화 직교 변환 계수의 1차원 데이터는 그 데이터량을 저감하기 위해서, 또한, 도 22d에 도시하는 Level(레벨) 및 Run(런)으로 이루어지는 데이터로 변환된다. 여기서, Level은 복수의 양자화 직교 변환 계수 중에 비영 계수치를 갖는 양자화 직교 변환 계수에서의 계수 레벨을 나타낸다. 또한, Run은 0이 아닌 양자화 직교 변환 계수의 직전에 있는 계수치가 0의 데이터의 수인 제로 런 길이를 나타낸다.
예를 들면, 도 22a에 도시한 DCT 계수의 데이터예에서는 도 22c에 도시하는 바와 같이, 64개의 DCT 계수 q11내지 q88이, O이 아닌 계수치를 가지는 DCT 계수의 출현 위치에 기초하여, 계수 q11로 이루어지는 계수군 S1, 계수 q12, q21로 이루어지는 계수군 S2, 계수 q31내지 q13으로 이루어지는 계수군 S3, 계수 q14내지 q32로 이루어지는 계수군 S4, 계수 q41내지 q15로 이루어지는 계수군 S5, 및 계수 q16내지q88로 이루어지는 계수군 S6으로 구분된다.
그리고, 이들의 계수군 Si(i=1 내지 6)에 대하여, 도 22d에 도시하는 바와 같이, 각각 Level치 Li및 Run치 Ri가 구해진다. 구체적으로는 계수군 S1에서는 L1=q11=10, R1=O 이다. 또한, 계수군 S2에서는 L2=q21=-2, R2=1이다. 또한, 계수군 S3에서는 L3=q13=2, R3=2이다. 또한, 계수군 S4에서는 L4=q32=-1, R4=2이다. 또한, 계수군 S5에서는 L5=q15=1, R5=5이다. 또한, 최후의 계수군 S6은 모든 계수 q16내지 q88의 계수치가 O으로 되어 있는 계수군이고, L6=0이고, R6은 미정의이다.
그런데, 도 22d에 도시한 Level 및 Run으로 이루어지는 데이터로부터, 상기 부호화 대상 블록에 있어서의 비영 계수 수 CC 및 Run 합계치 RT를 산출한다. 예를 들면, 구체적으로는 도 22d로부터 비영 계수 수 CC=5, Run 합계치 RT=10이 된다.
여기서, 이들의 계수군 및 비영 계수 수 CC나 Run 합계치 RT의 부호화를 할 때에 사용하는 가변 길이 부호화 테이블로서 예를 들면 도 9b에 도시한 것과 동일한 것을 사용할 수 있다. 이 가변 길이 부호화 테이블의 좌측의 항은 인덱스치를 나타내고, 우측은 인덱스치에 대응하는 가변 길이 부호를 나타내고 있다.
도 13은 본 발명의 제 4 실시예에 따른 가변 길이 부호화부(16)의 블록도를 도시한 도면이다. 우선 입력 심볼(H1)로서 비영 계수 수 CC 및 Run 합계치 RT가 가변 길이 부호 출력부(30) 및 가변 길이 부호화 테이블 제공부(33)에 입력된다. 가변 길이 부호화 테이블 제공부(33)는 입력 심볼(H1)에 대응하는 가변 길이 부호화테이블로서, 예를 들면 도 9b에 도시한 바와 같은 가변 길이 부호화 테이블(H5)을 가변 길이 부호 출력부(30)에 제공하여, 입력 심볼(H1)은 가변 길이 부호화 테이블(H5)을 사용하여 부호화된다. 즉, 비영 계수 수 CC의 값으로부터 1을 줄인 값을 인덱스치로서 대응하는 가변 길이 부호를 부호화 데이터(D9)로서 출력한다. 또한 같이 Run 합계치 RT의 값을 인덱스치로서 대응하는 가변 길이 부호화 데이터(D9)로서 출력한다.
다음에, 고주파측의 계수군으로부터 차례로 부호화한다. 단, 모든 계수치가 0으로 되어 있는 계수군에 관해서는 부호화하지 않는다. 우선, 모든 계수군의 Run치 Ri가 입력 심볼(H1)로서 가변 길이 부호 출력부(30)에 입력되면, Run치 Ri를 인덱스로서 같이 가변 길이 부호화 테이블을 사용하여 부호화되고, 부호화 데이터(D9)로서 출력된다.
다음에, Level치의 부호화를 고주파측의 계수군으로부터 차례로 모든 비영 Level치에 대하여 행한다.
본 발명의 제 4 실시예에 따른 부호화 방법에 있어서는 부호화 대상이 되는 블록의 Level치의 부호화를 할 때의 가변 길이 부호화 테이블을, 부호화 대상이 되는 블록의 주변에서 부호화가 완료된 블록에 있어서의 Level치에 따라서 바꾸는 것을 특징으로 한다.
여기서, 도 23에 도시하는 바와 같이, 부호화 대상이 되는 블록을 블록(A), 상에 인접하는 블록을 블록(B), 왼쪽에 인접하는 블록을 블록(C)으로 한다. 화상신호에 있어서 텍스처나 움직임에 변화가 적은 영역은 비영 직교 변환 계수가 출현하기 어렵고, 반대로 텍스처나 움직임에 변화가 많은 영역은 비영 직교 변환 계수가 출현하기 쉬운 것이 알려져 있다. 또한, 특히 자연 화상 등에서는 텍스처나 움직임의 변화의 경향이 근방 영역에서 유사한 것이 많다. 따라서, 부호화 대상이 되는 블록의 주변 블록에 있어서의 부호화 계수가 출현하는 경향으로부터 부호화 대상이 되는 블록에 있어서의 부호화 계수의 출현하는 경향을 유추할 수 있다.
즉, 부호화 대상이 되는 블록(A)에 인접하는 블록(B) 및 블록(C)에서 예를 들면 Level치가 큰 계수가 다수 출현하고 있으면, 그 근방 영역은 화상 신호에 있어서 텍스처나 움직임의 변화가 복잡하다고 생각되기 때문에, 부호화 대상 블록(A)에서도 Level치가 큰 계수가 다수 출현한다고 유추할 수 있다. 반대로 예를 들면 부호화 대상이 되는 블록(A)에 인접하는 블록(B) 및 블록(C)에서 Level치가 작은 계수밖에 출현하지 않거나, 또는 Level치가 비영의 계수가 존재하지 않으면, 그 근방 영역은 화상 신호에 있어서 텍스처나 움직임이 단조롭다고 생각되기 때문에, 부호화 대상 블록(C)에서도 Level치가 작은 계수가 출현하기 쉽다고 유추할 수 있다.
그런데, Level치가 큰 값이 다수 출현하는 경우에는 Level치가 작은 값을 취할지 큰 값을 취할지를 유추하는 것은 어렵기 때문에, 가능한 한 각 Level치에 대한 부호 길이가 치우치지 않는 가변 길이 부호화 테이블을 사용함으로써 부호화를 효율 좋게 행할 수 있다. 반대로, Level치가 작은 값을 취하기 쉬운 경우에는 Level치가 작은 계수에 대한 부호 길이가 짧아지도록 가변 길이 부호화 테이블을 사용함으로써, 부호화를 효율 좋게 행할 수 있다.
그래서, 예를 들면 도 21a 내지 21c에 도시하는 바와 같이 부호 길이의 분포의 치우침의 특성이 다른 가변 길이 부호화 테이블을 복수 준비하고, 주위 매크로 블록에 있어서의 Level치에 따라서 상기 부호화 대상 Level치에 대한 가변 길이 부호화 테이블을 바꾼다. 즉, 주위 매크로 블록에 있어서의 Level치보다, 부호화 대상 매크로 블록에 있어서의 Level치는 작은 값이 출현하기 쉽다고 유추되는 경우에는 도 21a에 도시하는 바와 같이, 부호 길이의 치우침이 큰 테이블을 사용하도록 제어하고, Level치가 큰 값도 출현하기 쉽다고 유추되는 경우에는 도 21c에 도시하는 바와 같이, 부호 길이의 치우침이 작은 테이블을 사용하도록 제어한다.
구체적으로는 부호화 대상이 되는 블록에 있어서의 Level치를 부호화할 때에 예를 들면 도 23에 있어서의 블록(B) 및 블록(C)에서의 Level치의 절대치의 최대치 MaxL를 구하고, 미리 설정한 임계치 Th7 및 Th8(Th7<Th8)에 대하여, MaxL이 Th7보다 작으면 도 21a의 가변 길이 부호화 테이블을 사용하도록, MaxL이 Th7 이상이고 Th8보다 작으면 도 21b의 가변 길이 부호화 테이블을 사용하도록, MaxL이 Th8 이상이면 도 21c의 가변 길이 부호화 테이블을 사용하도록 바꾼다.
즉, 도 13의 가변 길이 부호화부(16)에 있어서, 가변 길이 부호 출력부(30)에 입력 심볼(H1)로서 Level치가 입력되면, 부호화 심볼 메모리(31)로부터 MaxL이 가변 길이 부호화 테이블 참조 정보(H3)로서 입력되고, 가변 길이 부호화 테이블 제공부(33)는 가변 길이 부호화 테이블 참조 정보(H3)에 기초하여 상기 제어 수법에 의해서 선택되는 가변 길이 부호화 테이블(H5)을 가변 길이 부호 출력부(30)에 제공한다. 다른 동작은 본 발명의 제 1 실시예 내지 제 3 실시예와 같다.
이렇게 구성하면, 부호화 대상이 되는 블록의 근방 블록으로부터 부호화 대상이 되는 블록에 있어서의 Level치의 출현 경향을 유추할 수 있고, 작은 Level치가 출현하기 쉬운 경우에는 작은 Level치에 대하여 짧은 부호 길이를 할당하고, Level치가 작은 값을 취할지 큰 값을 취할지 유추하기 어려운 경우에는 큰 Level치에 대하여도 길지 않는 부호 길이를 할당할 수 있기 때문에, Level치의 부호화를 효율 좋게 행할 수 있다.
본 발명의 제 4 실시예에 따른 부호화 방법에 있어서는 가변 길이 부호화 테이블 참조 정보(H3)로서 부호화 대상 블록의 근방에 있는 블록(B) 및 블록(C)의 Level치의 절대치 MaxL을 사용하도록 설명하였지만, 물론 본 발명은 이것에 한정되지 않고, 예를 들면 다른 부호화가 완료된 근방 블록도 참조의 범위에 넣은 후에 Level치의 절대치의 최대치를 사용하여도 좋고, 최대치의 대신에 중간치, 절대치의 합계치, 분산치, 절대치의 평균치 등, 근방 블록에 있어서의 Level치의 특징을 나타내는 정보이면 여러 가지 정보를 이용할 수 있다.
또, 본 발명의 제 4 실시예에 따른 부호화 방법에 있어서, Run치의 부호화를 Level치의 앞에 행하도록 기술하였지만, 물론 본 발명은 Run치를 Level치의 뒤에 부호화하여도 Run치와 Level치를 교대로 부호화하여도 좋다.
도 14는 본 발명의 제 4 실시예에 따른 가변 길이 복호부(21)의 블록도를 도시한 도면이다. 본 발명의 제 4 실시예에 따른 부호화 방법에 의해서 부호화된 부호화 데이터(D9)가 가변 길이 복호부(21)의 복호 심볼 출력부(40)에 입력되면, 복호 심볼 메모리(41)로부터 MaxL이 가변 길이 복호 테이블 제공부(43)에 입력된다.그리고, 부호화일 때와 동일한 처리에 의해서 가변 길이 복호 테이블 제공부(43)는 사용하는 가변 길이 복호 테이블을 결정하고, 가변 길이 복호 테이블 (H9)이 복호 심볼 출력부(40)에 입력된다. 그리고, 복호 심볼 출력부(40)에 있어서 가변 길이 복호가 이루어지고, 복호 심볼(H6)로서 Level치가 복호되어 출력되는 동시에, 복호 심볼 메모리(41)에 기억된다.
상기한 바와 같이 가변 길이 복호부를 구성하였기 때문에, 본 발명의 제 4 실시예에 따른 부호화 방법에 의해서 부호화된 부호화 데이터를 적합하게 복호할 수 있다.
또, 본 발명의 제 4 실시예에 따른 부호화 방법 및 복호 방법에 있어서는 구체적인 테이블치를 사용하여 설명하였지만, 물론 본 발명은 이들의 값에 한정되는 것이 아니다. 또한, 본 발명의 실시예에 있어서는 8화소 ×8라인의 DCT 계수를 예로 사용하여 설명하였지만, 물론 직교 변환의 종류나 블록의 크기가 이들에 한정되는 것이 아니다.
(제 5 실시예)
다음에, 본 발명의 제 5 실시예에 따른 부호화 방법에 관해서 설명한다. 그런데, 움직임 벡터정보(D2)는 예를 들면 MPEG-4에 있어서의 부호화에서는 부호화 대상이 되는 매크로 블록의 움직임 벡터에 대하여, 주변 매크로 블록에 있어서의 움직임 벡터의 중간치가 예측치로서 생성되고, 상기 예측치와 실제의 움직임 벡터와의 차분치 MVD를 부호화한다.
여기서, 도 23에 도시하는 바와 같이, 부호화 대상이 되는 매크로 블록을 매크로 블록(A), 위에 인접하는 블록을 매크로 블록(B), 왼쪽에 인접하는 블록을 매크로 블록(C)으로 한다. 화상 신호에 있어서, 특히 자연 화상 등인 한 영역의 텍스처나 움직임의 변화의 경향이 그 근방 영역에서 유사하고 있는 것이 많다. 따라서, 부호화 대상이 되는 매크로 블록의 주변 매크로 블록에 있어서의 움직임의 변화가 심한 경우에는 부호화 대상이 되는 매크로 블록에 있어서의 움직임의 변화도 심하고, 움직임 벡터 차분치의 절대치가 어떠한 값을 취하는지를 유추하는 것은 어렵다. 반대로, 주변 매크로 블록에 있어서의 움직임의 변화가 너무 없는 경우에는 그 근방 영역은 단조로운 움직임을 하고 있는지 또는 정지하고 있을 가능성이 높다고 유추할 수 있기 때문에, 부호화 대상이 되는 매크로 블록에 있어서도 움직임 벡터 차분치의 절대치는 작은 값을 취하는 것이라고 유추할 수 있다.
따라서, 부호화 대상이 되는 매크로 블록의 주변 매크로 블록에 있어서의 움직임 벡터 차분치의 절대치가 작은 경우에는 상기 부호화 대상이 되는 움직임 벡터 차분치의 절대치는 0 근방에 집중할 가능성이 높기 때문에, 0 근방의 부호 길이가 짧아지는 가변 길이 부호화 테이블을 사용함으로써 효율 좋게 부호화할 수 있다. 반대로, 부호화 대상이 되는 매크로 블록의 주변 매크로 블록에 있어서의 움직임 벡터 차분치의 절대치가 큰 경우에는 상기 부호화 대상이 되는 움직임 벡터 차분치의 절대치가 O 근방에 집중한다고는 한정하지 않는다. 따라서, 이러한 경우에는 움직임 벡터 차분치의 절대치가 큰 값이라도 작은 값이라도 부호 길이에게 그다지 차가 없는 가변 길이 부호 테이블을 사용함으로써 효율 좋게 부호화할 수 있다.
이러한 사실을 염두에 두고, 본 발명의 제 5 실시예에 있어서는 예를 들면 도 21a 내지 도 21c에 도시하는 바와 같이 부호 길이의 분포의 치우침의 특성이 다른 가변 길이 부호화 테이블을 복수 준비하고, 부호화 대상 매크로 블록의 주변 매크로 블록에 있어서의 움직임 벡터 차분치의 절대치의 크기에 따라서, 부호화 대상 매크로 블록에 있어서의 움직임 벡터 차분치에 대한 가변 길이 부호화 테이블을 바꾼다.
구체적으로는 예를 들면 도 23에 도시한 부호화 대상 매크로 블록(A)의 주변 매크로 블록으로서 위에 인접하는 매크로 블록(B) 및 왼쪽에 인접하는 매크로 블록(C)에서의 움직임 벡터 차분치의 절대치를 MVD(B) 및 MVD(C)로 한다. 미리 설정한 임계치 Th0에 대하여, MVD(B) 및 MVD(C)의 모두 Th0보다 작으면, 매크로 블록(A)에서의 움직임 벡터 차분치의 가변 길이 부호화 테이블로서 도 21a의 테이블을, MVD(B) 또는 MVD(A)의 어느 한쪽만 Th0과 동일하거나 Th0보다 크면 도 21b의 테이블을, MVD(B) 및 MVD(C)의 양쪽이 Th0과 동일하거나 Th0보다 크면 도 21c의 테이블을 사용하여 가변 길이 부호화를 하도록 구성한다. 단, 매크로 블록(B) 또는 매크로 블록(C)이 화면 외 또는 슬라이스 외에 존재하는 경우에는 그 매크로 블록의 움직임 벡터 차분치의 절대치는 미리 설정하여 둔 값 Z(Z≥Th0)로서 처리한다. 이것은 인접하는 매크로 블록이 화면 외 또는 슬라이스 외이면, 움직임 벡터의 예측치가 들어맞기 어렵고, 부호화 대상의 움직임 벡터 차분치의 취할 수 있는 값이 O 근방에 집중한다고는 한정하지 않기 때문이다. 또한, 인접하는 매크로 블록이 인트라 매크로 블록인 경우에도 마찬가지로 그 매크로 블록의 움직임 벡터 차분치의절대치는 Z라고 처리한다. 이것도, 상기와 같이 부호화 대상의 움직임 벡터의 예측치가 들어맞기 어렵고, 부호화 대상의 움직임 벡터 차분치의 취할 수 있는 값이 0 근방에 집중한다고는 한정하지 않기 때문이다.
즉, 도 13의 가변 길이 부호화부(16)에 있어서 우선 입력 심볼(H1)로서 가변 길이 부호 출력부(30)에 움직임 벡터 차분치 MVD가 입력된다. 그리고 부호화 심볼 메모리(31)로부터, 가변 길이 부호화 테이블 제공부(33)에 가변 길이 부호화 테이블 참조 정보(H3)로서 MVD(B) 및 MVD(C)이 입력된다. 그리고, 가변 길이 부호화 테이블 제공부(33)에서 상기한 바와 같이 MVD(B) 및 MVD(C)가 미리 설정해 둔 임계치 Th0과 비교되고, 그것에 기초하여 부호화 대상 움직임 벡터에 대하여 사용하는 가변 길이 부호화 테이블이 결정되고, 가변 길이 부호화 테이블(H5)이 가변 길이 부호 출력부(30)에 제공된다. 그리고, 부호화 대상 움직임 벡터는 가변 길이 부호화되어, 부호화 데이터(D9)로서 출력된다.
본 발명의 제 5 실시예에 따른 부호화 방법에 있어서는 이상과 같이 MVD치가 0 근방에 집중하기 쉬운 경우에는 0 근방의 부호 길이가 짧은 가변 길이 부호화 테이블로 바꿈으로써 MVD치가 0 근방인 경우의 부호 길이가 짧아지도록 제어하고, MVD치가 0 근방에 집중한다고는 한정하지 않는 경우에는 부호 길이의 치우침이 작은 테이블로 바꿈으로써 MVD치가 큰 값이라도 부호 길이가 길어지도록 구성하였기 때문에, MVD치를 효율 좋게 부호화할 수 있다.
또, 도 21a 내지 도 21c에서는 3개의 가변 길이 부호화 테이블을 사용하여 설명하였지만, 물론 가변 길이 부호화 테이블의 개수나 그 값은 도 21a 내지 도21c에 한정되는 것이 아니다. 또한, 복수의 가변 길이 부호화 테이블을 가변 길이 부호화 테이블 제공부(33)내의 메모리에 보유해두고, 가변 길이 부호화 테이블(H3)의 제공을 교체함으로써 실현하더라도, 예로서 제시한 exp-Golomb 부호 등의 Universal 부호를 사용하여 그 파라미터를 바꿈으로써 가변 길이 부호화 테이블 제공부(33)내에서 가변 길이 부호화 테이블(H3)을 생성함으로써 실현하여도 좋다.
도 14는 본 발명의 제 5 실시예에 따른 가변 길이 복호부(21)의 블록도를 도시한 도면이다. 본 발명의 제 5 실시예에 따른 부호화 방법에 의해서 부호화된 부호화 데이터(D9)가 가변 길이 복호부(21)의 복호 심볼 출력부(40)에 입력되면, 이미 복호가 완료된 심볼로부터 산출된 MVD(B) 및 MVD(C)가 복호 심볼 메모리(41)로부터 가변 길이 복호 테이블 참조 정보(H8)로서 가변 길이 복호 테이블 제공부(43)에 입력된다. 그리고, 가변 길이 복호 테이블 제공부(43)로부터 가변 길이 복호 테이블(H10)이 부호화와 같은 수속으로써 선택되어 복호 심볼 출력부(40)에 입력된다. 그리고, 복호 심볼 출력부(40)에 있어서 가변 길이 복호가 이루어지고, 복호 심볼(H6)로서 MVD치가 복호되어 출력되는 동시에, 복호 심볼 메모리(41)에 기억된다.
상기한 바와 같이 가변 길이 복호부를 구성하였기 때문에, 본 발명의 제 5 실시예에 따른 부호화 방법에 의해서 부호화된 부호화 데이터를 적합하게 복호할 수 있다.
(제 6 실시예)
본 발명의 제 5 실시예에 따른 부호화 방법에서는 부호화 대상이 되는 매크로 블록의 주위의 매크로 블록에 있어서의 움직임 벡터에 따라서 가변 길이 부호화 테이블을 바꾸도록 구성하였지만, 본 발명의 제 6 실시예에 따른 부호화 방법에서는 부호화 대상이 되는 매크로 블록의 주위의 매크로 블록에 있어서의 매크로 블록 부호화 모드에 따라서 가변 길이 부호화 테이블을 바꾸는 것을 특징으로 한다.
이미 도 3a 내지 도 3c에 도시한 바와 같이, 예를 들면 MPEG-4에 있어서는 매크로 블록의 부호화 모드로서, 인터 부호화 모드 0, 인터 부호화 모드 1, 인트라 부호화 모드의 3개로 분류된다. 그런데, 인터 부호화 모드 1은 인터 부호화 모드 0보다도 화면의 움직임이 복잡한 경우에 의해 효과적으로 4개의 움직임 벡터를 사용하여 움직임 보상을 하는 부호화 모드이다. 따라서, 인터 부호화 모드 1이 선택되어 있는 매크로 블록에 있어서는 화면의 움직임은 인터 부호화 모드 0이 선택되어 있는 매크로 블록에 비교하고 복잡하다고 유추할 수 있다. 따라서, 본 발명의 제 2 실시예에 따른 부호화 방법에 있어서는 도 25에 도시하는 바와 같이 임의의 매크로 블록(MB)에 대하여 각 부호화 모드에 따라서 복잡함을 나타내는 포인트 P(MB)를 정의한다. 이들을 부호화 대상이 되는 매크로 블록에 인접하는 도 8에 도시한 매크로 블록(B 및 C)에 대하여 산출한 포인트를, 포인트 P(B) 및 P(C)로 한다. 그리고, 부호화 대상이 되는 매크로 블록(A) 에 대한 포인트를 이하의 식 12에 의해서 정의한다.
식 12: P(A)= P(B)+P(C)
그런데, 이상에 의해서 산출된 포인트 P(A)는 부호화 대상이 되는 매크로 블록에 인접하는 매크로 블록에 있어서의 화면의 움직임의 복잡함 및 인접하는 매크로 블록으로부터 부호화 대상이 되는 매크로 블록의 움직임 벡터의 예측이 어려움을 나타내고 있다. 포인트가 크면 클수록 예측이 어렵거나 움직임이 복잡한 것을 나타낸다.
따라서, 도 21a 내지 도 21c에 도시하는 바와 같은 부호 길이의 분포의 치우침의 특성이 다른 가변 길이 부호화 테이블을 복수 준비하고, 부호화 대상 매크로 블록의 주변 매크로 블록에 있어서의 매크로 블록 부호화 모드로부터 산출한 포인트 P(A)의 크기에 따라서, 부호화 대상 매크로 블록에 있어서의 움직임 벡터 차분치에 대한 가변 길이 부호화 테이블을 바꾼다.
구체적으로는, 예를 들면 미리 설정한 임계치 Th1 및 Th2(Th1<Th2)에 대하여, 포인트 P(A)가 Th1보다 작으면, 움직임이 복잡하지 않고 움직임 벡터 예측치가 들어맞기 쉽다고 유추할 수 있기 때문에, 움직임 벡터의 절대치가 0에 가까운 부호가 보다 짧은 부호 길이가 되도록 구성되어 있는 도 21a의 테이블을 사용하여 가변 길이 부호화를 하도록 구성한다. 마찬가지로, P(A)가 Th1 이상이고 Th2보다 작으면 도 21b의 테이블을, P(A)가 Th2 이상이면 도 21c의 테이블을 사용하여 가변 길이 부호화를 하도록 구성한다. 단, 매크로 블록(B) 또는 매크로 블록(C)이 화면 외 또는 슬라이스 외에 존재하는 경우에는 예를 들면 그 매크로 블록의 포인트 P(X); 단 X는 B 또는 C는 인트라 부호화 모드(AC 계수 있음)에 대한 포인트와 같은 포인트를 사용하는 것으로 한다. 이것은 인접하는 매크로 블록이 화면 외 또는 슬라이스 외이면, 움직임 벡터의 예측치가 들어맞기 어렵고, 부호화 대상의 움직임 벡터 차분치가 취할 수 있는 값이 0 근방에 집중한다고는 한정하지 않기 때문이다.
즉, 도 13의 가변 길이 부호화부(16)에 있어서 우선 입력 심볼(H1)로서 가변 길이 부호 출력부(30)에 움직임 벡터 차분치 MVD가 입력된다. 그리고 부호화 심볼 메모리(31)로부터, 가변 길이 부호화 테이블 제공부(33)에 가변 길이 부호화 테이블 참조 정보(H3)로서 매크로 블록(B) 및 매크로 블록(C)의 부호화 모드 정보가 입력된다. 그리고, 가변 길이 부호화 테이블 제공부(33)에서 상기한 바와 같이 포인트 P(A)가 산출되어 미리 설정해 둔 임계치 Th1 및 Th2와 비교되고, 그것에 기초하여 부호화 대상 움직임 벡터에 대하여 사용하는 가변 길이 부호화 테이블이 결정되고, 가변 길이 부호화 테이블(H5)이 가변 길이 부호 출력부(30)에 제공된다. 그리고, 부호화 대상 움직임 벡터는 가변 길이 부호화되고, 부호화 데이터(D9)로서 출력된다.
본 발명의 제 6 실시예에 따른 부호화 방법에 있어서는 이상과 같이 부호화 대상이 되는 매크로 블록의 주위의 매크로 블록에 있어서의 매크로 블록 부호화 모드로부터 유추하여, MVD치가 0 근방에 집중하기 쉬운 경우에는 0 근방의 부호 길이가 짧은 가변 길이 부호화 테이블로 바꿈으로써 MVD치가 0 근방인 경우의 부호 길이가 짧아지도록 제어하고, MVD치가 0 근방에 집중한다고는 한정하지 않은 경우에는 부호 길이의 치우침이 작은 테이블로 바꿈으로써 MVD치가 큰 값이더라도 부호 길이가 길어지지 않도록 구성하였기 때문에, MVD치를 효율 좋게 부호화할 수 있다.
또, 도 21a 내지 도 21c에서는 3개의 가변 길이 부호화 테이블을 사용하여 설명하였지만, 물론 가변 길이 부호화 테이블의 개수나 그 값은 도 21a 내지 도21c에 한정되는 것이 아니다. 또한, 복수의 가변 길이 부호화 테이블을 가변 길이 부호화 테이블 제공부(33)내의 메모리에 보유해 두고, 가변 길이 부호화 테이블(H5)의 제공을 바꿈으로써 실현하더라도, 예로서 제시한 exp-Golomb 부호 등의 Universal 부호를 사용하여 그 파라미터를 바꿈으로써 가변 길이 부호화 테이블 제공부(33)내에서 가변 길이 부호화 테이블(H5)을 생성함으로써 실현하여도 좋다.
도 14는 본 발명의 제 6 실시예에 따른 가변 길이 복호부(21)의 블록도를 도시한 도면이다. 본 발명의 제 6 실시예에 따른 부호화 방법에 의해서 부호화된 부호화 데이터(D9)가 가변 길이 복호부(21)의 복호 심볼 출력부(40)에 입력되면, 이미 복호가 완료된 심볼로부터 산출된 부호화 대상이 되는 매크로 블록에 인접하는 매크로 블록(B 및 C)에 있어서의 매크로 블록 부호화 모드가 복호 심볼 메모리(41)로부터 가변 길이 복호 테이블 참조 정보(H8)로서 가변 길이 복호 테이블 제공부(43)에 입력된다. 그리고, 가변 길이 복호 테이블 제공부(43)로부터 가변 길이 복호 테이블(H10)이 부호화와 같은 수속으로써 선택되어 복호 심볼 출력부(40)에 입력된다. 그리고, 복호 심볼 출력부(40)에 있어서 가변 길이 복호가 이루어지고, 복호 심볼(H6)로서 MVD치가 복호되어 출력되는 동시에, 복호 심볼 메모리(41)에 기억된다.
상기한 바와 같이 가변 길이 복호부를 구성하였기 때문에, 본 발명의 제 6 실시예에 따른 부호화 방법에 의해서 부호화된 부호화 데이터를, 적합하게 복호할 수 있다.
본 발명의 제 6 실시예에 있어서는 매크로 블록 부호화 모드를 이용한 움직임 벡터 차분치가 적합한 부호화 방법 및 복호 방법을 MPEG-4에 적용한 예를 사용하여 설명하였지만, 물론, 부호화 방법은 이것에 한정되지 않는다. 그 일 예로서, H.26L 부호화 방식에 적용한 부호화 방법을 이하에 제시한다.
H.26L 부호화 방식에 있어서는 매크로 블록 부호화 모드는 도 24a 내지 도 24j에 도시하는 바와 같이 1개의 스킵(Skip) 모드 0과, 7개의 인터 모드 1 내지 7과, 2개의 인트라 모드 8, 9의 10개의 부호화 모드가 준비되어 있다.
이 중, 스킵 모드 0은 화상의 움직임이 검출되지 않고, 움직임 보상에 사용하는 참조 프레임과 동일 위치의 화상을 카피하는 모드이다.
또한, 인터 모드 1 내지 7은 각각 다른 블록 구분을 사용하여 인터 프레임 부호화(프레임간 부호화)를 하는 경우의 모드이다. 각각에서의 움직임 보상용 블록에 대해서는, 도 24a 내지 도 24j에 도시하는 바와 같이, 모드 1에서는 16화소 ×16라인의 사이즈로 1개의 블록이 사용된다. 모드 2에서는 16화소 ×8라인의 사이즈로 2개의 블록이 사용된다. 모드 3에서는 8화소 ×16라인의 사이즈로 2개의 블록이 사용된다. 모드 4에서는 8화소 ×8라인의 사이즈로 4개의 블록이 사용된다. 모드 5에서는 8화소 ×4라인의 사이즈로 8개의 블록이 사용된다. 모드 6에서는 4화소 ×8라인의 사이즈로 8개의 블록이 사용된다. 모드 7에서는 4화소 ×4라인의 사이즈로 16개의 블록이 사용된다. 도 28a에는 이들의 모드와 인덱스치의 대응을 나타내는 맵 테이블을 도시하고, 도 28b에는 각각의 인덱스치와 대응하는 부호를 나타내는 가변 길이 부호화 테이블을 도시한다.
또한, 인트라 모드 8, 9는 각각 다른 블록 구분을 사용하여 인트라 프레임부호화(프레임내 부호화)를 하는 경우의 모드이다. 각각에서의 블록에 대해서는 도 24a 내지 도 24j에 도시하는 바와 같이, 모드 8에서는 4화소 ×4화소의 사이즈로 16개의 블록이 사용된다. 모드 9에서는 16 ×16의 사이즈로 1개의 블록이 사용된다.
그런데, 이들의 10개의 부호화 모드에 대하여, MPEG-4에 적용한 예와 마찬가지로 포인트(P)를 정의한다. 예를 들면, 도 27에 도시하는 바와 같이 포인트를 정의한다. 즉, 인터 부호화 모드에 있어서는 블록 구분수가 많을수록 움직임이 복잡하다고 유추되기 때문에, 블록 구분수가 많을수록 포인트가 큰 값을 취하도록 정의하고 있다. 또한, 스킵 모드에서는 움직임이 없다고 생각되기 때문에, 주위의 움직임도 없거나 작은 것이 많다고 유추할 수 있기 때문에, 포인트가 작은 값을 취하도록 정의하고 있다. 또한, 인트라 부호화 모드에 있어서도, 블록 구분수가 많은 경우에는 움직임이 복잡하고, 부호화 대상 매크로 블록에 있어서의 움직임 벡터의 예측이 들어맞기 어렵고, 블록 구분수가 적은 경우에는 움직임은 복잡하지 않을 가능성이 있지만 움직임 벡터의 예측은 들어맞기 어렵다고 예상되기 때문에, 모드 8에서는 포인트가 큰 값을 취하도록, 모드 9에서는 모드 8보다도 포인트가 작은 값을 취하도록 정의하고 있다. 이들의 값은 설명을 알기 쉽게 하기 위해서 일 예로서 들었을 뿐이고, 본 발명은 이들의 테이블의 구체적인 값에 한정되는 것이 아니다.
그런데, 도 27에 있어서의 부호화 모드에 대한 포인트의 표를 사용하여, MPEG-4에 적용한 예와 동일하게, 부호화 대상이 되는 매크로 블록에 인접하는 매크로 블록(B) 및 매크로 블록(C)의 포인트 P(B) 및 P(C)를 구한다. 그리고, P(B) 및P(C)로부터, 부호화 대상이 되는 매크로 블록에 대한 포인트 P(A)가 구해진다.
이하, 같이 P(A)와 임계치를 비교하여, 그 결과에 따라서 가변 길이 부호화 테이블을 바꿈으로써, H.26L 부호화 방식에 있어서도, 본 발명을 적용할 수 있다.
(제 7 실시예)
다음에 본 발명의 제 7 실시예에 따른 부호화 방법에 관해서 설명한다. 그런데, 매크로 블록 부호화 모드는 이미 도 3a 내지 도 3c에 도시한 바와 같이, 예를 들면 MPEG-4에 있어서는 매크로 블록의 부호화 모드로서, 인터 부호화 모드 0, 인터 부호화 모드 1, 인트라 부호화 모드의 3개로 분류된다. 그런데, 인터 부호화 모드 1은 인터 부호화 모드 0보다도 화면의 움직임이 복잡한 경우나 텍스처가 복잡한 경우에 의해 효과적으로 4개의 움직임 벡터를 사용하여 움직임 보상을 하는 부호화 모드이다. 따라서, 인터 부호화 모드 1이 선택되어 있는 매크로 블록에 있어서는 화면의 움직임이나 텍스처는 인터 부호화 모드 0이 선택되어 있는 매크로 블록과 비교하여 복잡하다고 유추할 수 있다. 또한, 인트라 부호화 모드에 대해서는 매크로 블록에 포함되는 비영 계수 수가 많으면 텍스처가 복잡하다고 생각되고, 반대로 비영 계수 수가 적으면 텍스처가 단조롭다고 생각된다.
여기서, 도 23에 도시하는 바와 같이, 부호화 대상이 되는 매크로 블록을 매크로 블록(A), 상에 인접하는 블록을 매크로 블록(B), 왼쪽에 인접하는 블록을 매크로 블록(C)으로 한다. 화상 신호에 있어서, 특히 자연 화상 등인 영역의 텍스처나 움직임의 변화의 경향이 그 근방 영역에서 유사한 것이 많다. 따라서, 부호화대상이 되는 매크로 블록의 주변 매크로 블록에 있어서의 움직임이나 텍스처가 복잡한 경우에는 부호화 대상이 되는 매크로 블록에 있어서의 움직임이나 텍스처도 복잡하다고 유추할 수 있다. 반대로, 주변 매크로 블록에 있어서의 움직임이나 텍스처가 단조로운 경우에는 부호화 대상이 되는 매크로 블록에 있어서의 움직임이나 텍스처도 단조롭다고 유추할 수 있다.
따라서, 부호화 대상이 되는 매크로 블록의 주변 매크로 블록에 있어서의 매크로 블록 부호화 모드 등의 정보로부터, 부호화 대상 매크로 블록에 있어서 출현하기 쉬운 부호화 모드를 유추할 수 있다.
그래서, 본 발명의 제 7 실시예에 따른 부호화 방법에 있어서는 도 25에 도시하는 바와 같이 임의의 매크로 블록(MB)에 대하여 각 부호화 모드에 따라서 복잡함을 나타내는 포인트 P(MB)를 정의한다. 단, 인트라 부호화 모드에 대해서는 휘도 성분의 직교 변환 계수의 AC 성분이 있는지의 여부에 의해서 다른 포인트를 정의하고 있다.
이들을 부호화 대상이 되는 매크로 블록에 인접하는 도 23에 도시한 매크로 블록(B 및 C) 대하여 산출한 포인트를, 포인트 P(B) 및 P(C)로 한다. 그리고, 부호화 대상이 되는 매크로 블록(A)에 대한 포인트를, 이하의 식 13에 의해서 정의한다.
식 13: P(A)=(P(B)+ P(C))/2
그런데, 이상에 의해서 산출된 포인트 P(A)는 부호화 대상이 되는 매크로 블록에 인접하는 매크로 블록에 있어서의 움직임이나 텍스처의 복잡함을 나타내고 있다. 포인트가 크면 클수록 움직임이나 텍스처가 복잡한 것을 나타낸다.
따라서, 도 26a에 도시하는 바와 같은 맵 테이블 및 도 26b에 도시하는 바와 같은 가변 길이 부호화 테이블을 준비하고, 부호화 대상 매크로 블록의 주변 매크로 블록에 있어서의 매크로 블록 부호화 모드로부터 산출한 포인트 P(A)의 크기에 따라서, 맵 테이블을 바꿈으로써 부호화 대상 매크로 블록에 있어서의 매크로 블록 부호화 모드의 가변 길이 부호화에 있어서의 부호어의 할당을 바꾼다. 단, 인트라 매크로 블록에 대해서는 2개의 포인트가 산출되기 때문에, 작은 값쪽을 채용하는 것으로 한다.
구체적으로는 예를 들면 산출한 포인트 P(A)와 각 부호화 모드에 대하여 정의된 포인트의 차 DP를 구하고, DP가 작은 부호화 모드일수록 맵 테이블에 있어서의 인덱스치가 작아지도록 맵 테이블을 바꾼다.
즉, 도 13의 가변 길이 부호화부(16)에 있어서 우선 입력 심볼(H1)로서 가변 길이 부호 출력부(30)에 매크로 블록 부호화 모드가 입력된다. 그리고 부호화 심볼 메모리(31)로부터, 부호화 맵 테이블 제공부(32)에 부호화 맵 테이블 참조 정보(H2)로서 매크로 블록(B) 및 매크로 블록(C)의 부호화 모드 정보 및 CBP가 입력된다. 그리고 부호화 맵 테이블 제공부(32)에서 상기한 바와 같이 포인트 P(A)가 산출되고, 그것에 기초하여 부호화 맵 테이블이 결정되고, 부호화 맵 테이블(H4)이 가변 길이 부호 출력부(30)에 제공된다. 또한, 가변 길이 부호화 테이블 제공부(33)로부터 가변 길이 부호화 테이블(H5)이 가변 길이 부호 출력부(30)에 제공된다. 그리고, 매크로 블록 부호화 모드가 가변 길이 부호화되고, 부호화데이터(D9)로서 출력된다.
본 발명의 제 7 실시예에 따른 부호화 방법에 있어서는 이상과 같이 출현하기 쉽다고 유추되는 매크로 블록 부호화 모드가 보다 짧은 부호 길이로 부호화되도록 맵 테이블을 바꾸도록 구성하였기 때문에, 매크로 블록 부호화 모드를 효율 좋게 부호화할 수 있다.
도 14는 본 발명의 제 7 실시예에 따른 가변 길이 복호부(21)의 블록도를 도시한 도면이다. 본 발명의 제 7 실시예에 따른 부호화 방법에 의해서 부호화된 부호화 데이터(D9)가 가변 길이 복호부(21)의 복호 심볼 출력부(40)에 입력되면, 이미 복호가 완료된 심볼인 매크로 블록(B 및 C)에서의 매크로 블록 부호화 모드 및 CBP가 복호 심볼 메모리(41)로부터 복호 맵 테이블 참조 정보(H7)로서 복호 맵 테이블 제공부(42)에 입력된다. 그리고, 복호 맵 테이블 제공부(42)로부터 복호 맵 테이블(H9)이 부호화와 같은 수속으로써 선택되어 복호 심볼 출력부(40)에 입력된다. 또한, 가변 길이 복호 테이블 제공부(43)로부터 가변 길이 복호 테이블(H10)이 복호 심볼 출력부(40)에 입력된다. 그리고, 복호 심볼 출력부(40)에 있어서 가변 길이 복호가 이루어지고, 복호 심볼(H6)로서 부호화 모드가 복호되어 출력되는 동시에, 복호 심볼 메모리(41)에 기억된다.
상기한 바와 같이 가변 길이 복호부를 구성하였기 때문에, 본 발명의 제 7 실시예에 따른 부호화 방법에 의해서 부호화된 부호화 데이터를, 적합하게 복호할 수 있다.
본 발명의 제 7 실시예에 있어서는 부호화 대상이 되는 매크로 블록의 주위의 매크로 블록의 부호화 정보를 이용한 매크로 블록 부호화 모드의 적합한 부호화 방법 및 복호 방법을 MPEG-4에 적용한 예를 사용하여 설명하였지만, 물론, 부호화 방법은 이것에 한정되지 않는다. 그 일 예로서, H.26L 부호화 방식에 적용한 부호화 방법을 이하에 나타낸다.
H.26L 부호화 방식에 있어서는 매크로 블록 부호화 모드는 도 24a 내지 도 24j에 도시하는 바와 같이 1개의 스킵(Skip) 모드 0과, 7개의 인터 모드 1 내지 7과, 2개의 인트라 모드 8, 9의 10개의 부호화 모드가 준비되어 있다.
이 중, 스킵 모드 0은 화상의 움직임이 검출되지 않고, 움직임 보상에 사용하는 참조 프레임과 동일 위치의 화상을 카피하는 모드이다.
또한, 인터 모드 1 내지 7은 각각 다른 블록 구분을 사용하여 인터 프레임 부호화(프레임간 부호화)를 하는 경우의 모드이다. 각각에서의 움직임 보상용 블록에 대해서는 도 24a 내지 도 24j에 도시하는 바와 같이, 모드 1에서는 16화소 ×16라인의 사이즈로 1개의 블록이 사용된다. 모드2에서는 16화소 ×8라인의 사이즈로 2개의 블록이 사용된다. 모드 3에서는 8화소 ×16라인의 사이즈로 2개의 블록이 사용된다. 모드 4에서는 8화소 ×8라인의 사이즈로 4개의 블록이 사용된다. 모드 5에서는 8화소 ×4라인의 사이즈로 8개의 블록이 사용된다. 모드 6에서는 4화소 ×8라인의 사이즈로 8개의 블록이 사용된다. 모드 7에서는 4화소 ×4라인의 사이즈로 16개의 블록이 사용된다.
또한, 인트라 모드 8, 9는 각각 다른 블록 구분을 사용하여 인트라 프레임 부호화(프레임내 부호화)를 하는 경우의 모드이다. 각각에서의 블록에 대해서는 도24a 내지 도 24j에 도시하는 바와 같이, 모드 8에서는 4화소 ×4화소의 사이즈로 16개의 블록이 사용된다. 모드 9에서는 16 ×l6의 사이즈로 1개의 블록이 사용된다.
그런데, 이들의 10개의 부호화 모드에 대하여, MPEG-4에 적용한 예와 동일하게 포인트 P를 정의한다. 예를 들면, 도 27에 도시하는 바와 같이 포인트를 정의한다. 즉, 인터 부호화 모드에 있어서는 블록 구분수가 많을수록 움직임이나 텍스처가 복잡하다고 유추되기 때문에, 블록 구분수가 많을수록 포인트가 큰 값을 취하도록 정의하고 있다. 또한, 스킵 모드에서는 움직임이 없다고 생각되기 때문에, 주위의 움직임도 없거나 작은 것이 많다고 유추할 수 있기 때문에, 포인트가 작은 값을 취하도록 정의하고 있다. 또한, 인트라 부호화 모드에 있어서도, 블록 구분수가 많은 경우에는 움직임이나 텍스처가 복잡하고, 부호화 대상 매크로 블록에 있어서의 움직임 벡터의 예측이 들어맞기 어렵고, 블록 구분수가 적은 경우에는 움직임이나 텍스처는 복잡하지 않을 가능성이 있지만 움직임 벡터의 예측은 들어맞기 어렵다고 예상되기 때문에, 모드 8에서는 포인트가 큰 값을 취하도록, 모드 9에서는 모드 8보다도 포인트가 작은 값을 취하도록 정의하고 있다. 이들의 값은 설명을 알기 쉽게 하기 위해서 일 예로서 들었을 뿐이고, 본 발명은 이들의 테이블의 구체적인 값에 한정되는 것이 아니다.
그런데, 도 27에 있어서의 부호화 모드에 대한 포인트의 표를 사용하여, MPEG-4에 적용한 예와 같이, 부호화 대상이 되는 매크로 블록에 인접하는 매크로 블록(B) 및 매크로 블록(C)의 포인트 P(B) 및 P(C)를 구한다. 그리고, P(B) 및P(C)로부터 식 13을 사용하여 부호화 대상이 되는 매크로 블록에 대한 포인트 P(A)가 구해진다.
이하, 동일하게 P(A)의 값을 참조하여, 각 부호화 모드의 포인트가 포인트 P(A)의 값에 가까울수록 인덱스치가 작아지도록 맵 테이블을 바꿈으로써, H.26L 부호화 방식에 있어서도, 본 발명을 적용할 수 있다.
(제 8 실시예)
본 발명의 제 7 실시예에 있어서는 맵 테이블만을 바꿔, 가변 길이 부호화 테이블을 바꾸지 않았지만, 본 발명의 제 8 실시예에 따른 부호화 방법에 있어서는 부호화 대상이 되는 매크로 블록의 주위의 매크로 블록의 부호화 모드에 따라서 가변 길이 부호화 테이블을 바꿈으로써, 보다 효율이 좋은 부호화를 실현하는 것을 특징으로 한다.
그런데, 도 23에 이미 도시한 부호화 대상이 되는 매크로 블록(A)에 인접하는 매크로 블록(B와 C)에서, 동일한 정도의 복잡함을 나타내는 부호화 모드가 선택되고 있는 경우에는 매크로 블록(A)에서도 매크로 블록(B) 및 매크로 블록(C)과 동일한 정도의 복잡함을 나타내는 부호화 모드가 선택될 가능성이 높다고 유추할 수 있다. 그러나, 매크로 블록(B와 C)에서 완전히 다른 복잡함을 나타내는 부호화 모드가 선택되고 있는 경우에는 매크로 블록(A)에서 어떠한 부호화 모드가 선택되는지를 유추할 수 없다. 그래서, 매크로 블록(B 및 C)에서 선택된 부호화 모드의 복잡도가 유사한 경우에는 인덱스치가 작은 부호화 모드에 대하여 보다 짧은 부호 길이로 부호화하는 부호 길이의 치우침이 큰 가변 길이 부호화 테이블을 사용하고, 반대로 매크로 블록(B 및 C)에서 선택된 부호화 모드의 복잡도가 유사하지 않는 경우에는 인덱스치가 작은 부호화 모드라도 큰 부호화 모드라도 부호 길이에 큰 차가 나지 않는 부호 길이의 치우침이 적은 가변 길이 부호화 테이블을 사용함으로써, 효율 좋게 부호화 모드를 가변 길이 부호화할 수 있다.
예를 들면 도 21a 내지 도 21c에 도시하는 바와 같이 부호 길이의 분포의 치우침의 특성이 다른 가변 길이 부호화 테이블을 복수 준비하고, 부호화 대상 매크로 블록의 주변 매크로 블록에 있어서의 포인트 P(B) 및 P(C)의 차의 크기에 따라서, 부호화 대상 매크로 블록에 있어서의 가변 길이 부호화 테이블을 바꾼다.
구체적으로는 예를 들면 H.26L 부호화 방식에 적용한 경우에는 본 발명의 제 7 실시예에 따른 맵 테이블을 바꾸는 동시에, 도 27에 있어서의 표로부터 매크로 블록(B 및 C)에 대하여 구해진 포인트 P(B) 및 P(C)의 차분치의 절대치 PD를 산출한다. 그리고, 예를 들면 미리 설정한 임계치 Th1 및 Th2에 대하여 (Th1<Th2), PD가 Th1보다 작은 경우에는 부호 길이의 치우침이 큰 도 21a의 가변 길이 부호화 테이블을 사용하여, PD가 Th1 이상이고 동시에 Th2보다 작은 경우에는 도 21b의 가변 길이 부호화 테이블을, PD가 Th2 이상이면 부호 길이의 치우침이 작은 도 21c의 가변 길이 부호화 테이블을 바꿈으로써, 매크로 블록 부호화 모드를 효율 좋게 부호화할 수 있다.
즉, 도 13의 가변 길이 부호화부(16)에 있어서 우선 입력 심볼(H1)로서 가변 길이 부호 출력부(30)에 매크로 블록 부호화 모드가 입력된다. 그리고 부호화 심볼메모리(31)로부터, 부호화 맵 테이블 제공부(32)에 부호화 맵 테이블 참조 정보(H2)로서 매크로 블록(B) 및 매크로 블록(C)의 부호화 모드 정보가 입력된다. 또한, 동일하게 부호화 심볼 메모리(31)로부터, 가변 길이 부호화 테이블 제공부(33)에 가변 길이 부호화 테이블 참조 정보(H3)로서 매크로 블록(B) 및 매크로 블록(C)의 부호화 모드 정보가 입력된다. 그리고 부호화 맵 테이블 제공부(32)에서 상기한 바와 같이 포인트 P(A)가 산출되고, 그것에 기초하여 부호화 맵 테이블이 결정되고, 부호화 맵 테이블(H4)이 가변 길이 부호 출력부(30)에 제공된다. 또한, 가변 길이 부호화 테이블 제공부(33)에서 상기한 바와 같이 포인트 P(B)와 포인트 P(C)의 차분치의 절대치 PD와 미리 설정한 임계치 Th1 및 Th2를 비교함으로써 선택된 가변 길이 부호화 테이블(H5)이 가변 길이 부호 출력부(30)에 제공된다. 그리고, 매크로 블록 부호화 모드가 가변 길이 부호화되고, 부호화 데이터(D9)로서 출력된다.
또한 도 14에 도시한 본 발명의 제 8 실시예에 따른 가변 길이 복호부에서는 본 발명의 제 8 실시예에 따른 부호화 방법에 의해서 부호화된 부호화 데이터(D9)가 가변 길이 복호부(21)의 복호 심볼 출력부(40)에 입력되면, 이미 복호가 완료된 심볼인 매크로 블록(B 및 C)에서의 매크로 블록 부호화 모드 정보가 복호 심볼 메모리(41)로부터 복호 맵 테이블 참조 정보(H7)로서 복호 맵 테이블 제공부(42)에 입력된다. 마찬가지로 이미 복호가 완료된 심볼인 매크로 블록(B 및 C)에서의 매크로 블록 부호화 모드 정보가 복호 심볼 메모리(41)로부터 가변 길이 복호 테이블 참조 정보(H8)로서 가변 길이 복호 테이블 제공부(43)에 입력된다. 그리고, 복호맵 테이블 제공부(42)로부터 복호 맵 테이블(H9)이 부호화와 동일한 수속으로써 선택되어 복호 심볼 출력부(40)에 입력된다. 또한, 가변 길이 복호 테이블 제공부(43)로부터 가변 길이 복호 테이블(H10)이 부호화와 같은 수속으로써 선택된 복호 심볼 출력부(40)에 입력된다. 그리고, 복호 심볼 출력부(40)에 있어서 가변 길이 복호가 이루어지고, 복호 심볼(H6)로서 부호화 모드가 복호되어 출력되는 동시에, 복호 심볼 메모리(41)에 기억된다.
상기한 바와 같이 가변 길이 복호부를 구성하였기 때문에, 본 발명의 제 8 실시예에 따른 부호화 방법에 의해서 부호화된 부호화 데이터를, 적합하게 복호할 수 있다.
(제 9 실시예)
본 발명의 제 1 내지 제 8 실시예에 따른 부호화 방법에 있어서는 주위의 콘텍스트에 따라서 적응적으로 부호화 맵 테이블 혹은 가변 길이 부호화 테이블을 바꾸는 것을 특징으로 하고 있었지만, 본 발명의 제 9 실시예에 따른 부호화 방법에 있어서는 또한 각 부호화 맵 테이블에 있어서의 각 인덱스치에 대응하는 부호화 정보를 과거의 부호화 결과로부터 학습시키는 것을 특징으로 한다.
도 30은 본 발명의 제 9 실시예에 따른 학습 기능 첨부 가변 길이 부호화부(50)의 구성을 도시하는 블록도이다. 도 30에 있어서는 도 13에 있어서의 가변 길이 부호화부(16)와 동일 요소에는 동일 부호를 붙이고, 중복하는 설명은 생략한다. 본 발명의 제 9 실시예에 따른 학습 기능 첨부 가변 길이 부호화부(50)에있어서, 피드백 기능 첨부 가변 길이 부호 출력부(51)는 도 13에 있어서의 가변 길이 부호 출력부(30)의 기능에 더하여, 또한 부호화 맵 테이블에 있어서의 입력 심볼에 대한 인덱스치인 채용 인덱스치 H11을 출력하는 기능을 구비하는 것을 특징으로 하고 있다. 또한, 학습 기능 첨부 부호화 맵 테이블 제공부(52)는 도 13에 있어서의 부호화 맵 테이블 제공부(32)의 기능에 더하여, 또한 채용 인덱스치 H11을 입력하고, 입력 심볼(H1)에 대한 콘텍스트에 있어서의 맵 테이블을 갱신하는 기능을 구비하는 것을 특징으로 하고 있다.
그런데, 본 발명의 제 9 실시예에 따른 학습 기능 첨부 가변 길이 부호화부(50)에 입력 심볼(H1)이 입력되면, 학습 기능 첨부 부호화 맵 테이블 제공부(52)는 부호화 맵 테이블 참조 정보(H2) 및 과거의 학습 결과를 기초로 사용하는 맵 테이블을 결정하고, 사용하는 맵 테이블(H4)을 피드백 기능 첨부 가변 길이 부호 출력부(51)에 제공한다. 또한, 가변 길이 부호화 테이블 제공부(33)는 필요하면 가변 길이 부호화 테이블 참조 정보(H3)를 기초로 사용하는 가변 길이 부호화 테이블을 결정하여, 사용하는 가변 길이 부호화 테이블(H5)을 피드백 기능 첨부 가변 길이 부호 출력부(51)에 제공한다. 피드백 기능 첨부 가변 길이 부호 출력부(51)는 이렇게 해서 얻어진 맵 테이블 및 가변 길이 부호화 테이블에 의해서 입력 심볼(H1)을 가변 길이 부호화하여, 부호화 데이터(D9)를 출력하는 동시에, 입력 심볼(H1)에 대응하는 맵 테이블에 있어서의 인덱스치인 채용 인덱스치 H11을 학습 기능 첨부 부호화 맵 테이블 제공부(52)에 제공한다. 학습 기능 첨부 부호화 맵 테이블 제공부(52)에서는 입력된 채용 인덱스치 H11을 기초로 하여 사용한 맵 테이블을갱신하고, 다음 번과 같은 콘텍스트가 선택된 경우에는 이렇게 해서 갱신된 맵 테이블을 사용하여 부호화가 행해진다.
다음에, 구체적인 예를 제시하면서 맵 테이블의 갱신에 관해서 자세히 설명한다. 여기서는 부호화 대상 심볼로서 H.26L에서의 매크로 블록의 부호화 모드를 예로 들어, 본 발명의 제 7 실시예에 적용한 경우에 관해서 설명한다.
H.26L에서의 매크로 블록의 부호화 모드는 도 24a 내지 도 24j에 도시하는 바와 같이 10이지 존재하고, 본 발명의 제 7 실시예의 일 예로서는 도 27에 도시하는 바와 같은 포인트를 정의하여, 도 23에 도시하는 부호화 대상 매크로 블록(A)에 인접하는 매크로 블록(B 및 C)의 부호화 모드에 대한 포인트 P(B) 및 P(C)로부터 식 13에 의해서 포인트 P(A)를 구하여, 포인트 P(A)를 콘텍스트로서 맵 테이블을 바꾸고 있었다.
식 13으로부터, P(A)가 취할 수 있는 값은 O에서 7까지의 8종류의 정수인 것은 자명하다. P(A)의 값 CX에 따라서 생성되는 맵 테이블 MT(CX)은 8종류인 것이 자명하다. 여기서, CX가 0부터 7까지의 값을 취하는 경우의 맵 테이블 MT(CX)을 도 31에 도시한다. 도 31에 도시한 테이블에 있어서, 맵 테이블 MT(CX)에 있어서 부호화 모드 M에 대응하는 인덱스치를 MT(CX, M)로 나타내는 것으로 한다. 도 31로부터 알 수 있는 바와 같이, 예를 들면 P(A)=3에 대한 맵 테이블 MT(3, M)는 M=0으로부터 9의 수순으로, 7, 2, 0, 1, 3, 4, 5, 8, 9, 6의 인덱스치를 취하도록 구성되어 있다.
여기서, 콘텍스트로서 P(A)=3이고, 부호화 대상이 되는 부호화 모드가 모드8인 경우, 맵 테이블 MT(3)을 사용하여 MT(3,8)에 해당하는 인덱스치 9에 대응하는 부호를 예를 들면 도 9b에 도시하는 가변 길이 부호화 테이블에 의해서 출력한다. 그런데, 혹시, 콘텍스트 P(A)=3이 발생한 경우에 부호화 모드로서 모드 8이 선택되는 빈도가 많은 경우에는 대응해야 할 인덱스치를 보다 작은 값으로 함으로써, 짧은 부호를 모드 8에 할당해야 하는 것이다.
따라서, 예를 들면 MT(3)에 있어서 모드 8이 선택되는 회수 C(3,8)를 카운트하여, 그 회수가 미리 설정한 임계치 Th9보다 커진 경우에는 모드 8에 대응하는 인덱스치 MT(3,8)를, MT(3,8)의 다음에 작은 인덱스치를 가지는 MT(3,7)와 교체한다. 또한, 모드 8에 대응하는 선택 회수 C(3,8)를 리셋으로 하여 0으로 한다. 이와 같이, 선택 회수가 많은 모드는 인덱스치가 작아지도록 제어하여, 각 맵 테이블마다 독립하여 맵 테이블을 갱신해감으로써, 각 콘텍스트에 따라서 각각의 맵 테이블을 최적화할 수 있다.
여기서 설명한 맵 테이블의 갱신 방법 불과 일 예에 불과하지만, 이와 같이 콘텍스트마다 맵 테이블의 최적화를 하면, 보다 부호화 조건이나 화상의 성질에 따라서 효율 좋은 가변 길이 부호화를 할 수 있다.
도 32는 본 발명의 제 9 실시예에 따른 학습 기능 첨부 가변 길이 복호부(60)의 구성을 도시하는 블록도이다. 도 32에 있어서는 도 14에 있어서의 가변 길이 복호부(21)와 동일 요소인 것에는 동일 부호를 붙이고, 중복하는 설명은 생략한다. 본 발명의 제 9 실시예에 따른 학습 기능 첨부 가변 길이 복호부(60)에 있어서, 피드백 기능 첨부 복호 심볼 출력부(61)는 도 14에 있어서의 복호 심볼 출력부(40)의 기능에 더하여, 또한 복호 맵 테이블에 있어서의 출력 심볼에 대한 인덱스치인 사용 인덱스치 H12를 출력하는 기능을 구비하는 것을 특징으로 하고 있다. 또한, 학습 기능 첨부 복호 맵 테이블 제공부(62)는 도 14에 있어서의 복호 맵 테이블 제공부(42)의 기능에 더하여, 또한 사용 인덱스치 H12를 입력하여, 출력 심볼(H6)에 대한 콘텍스트에 있어서의 맵 테이블을 갱신하는 기능을 구비하는 것을 특징으로 하고 있다.
이와 같이 구성한 본 발명의 제 9 실시예에 따른 학습 기능 첨부 가변 길이 복호부(60)에 있어서 학습의 과정을 본 발명의 제 9 실시예에 따른 학습의 과정과 동일하게 함으로써, 본 발명의 제 9 실시예에 따른 부호화 방법에 의해서 부호화된 부호화 데이터를 적합하게 복호할 수 있다.
또, 본 발명의 제 9 실시예에 있어서는 H.26L 부호화 방식에 있어서의 매크로 블록의 부호화 모드를 예로 하여 학습의 과정을 설명하였지만, 물론 이것에 한정되지 않고 모든 부호화 심볼에 대해서도 적용할 수 있고, 그 결과로서 적합한 부호화 방법 및 복호 방법을 제공할 수 있다.
또한, 본 발명의 제 9 실시예에 있어서는 본 발명의 제 7 실시예에 따른 맵 테이블의 교체 방법을 사용하여 설명하였지만, 물론 이것에 한정되지 않고 콘텍스트에 기초하여 심볼에 할당하는 부호어를 선택하는 수단을 갖는 모든 부호화 방법 및 복호 방법에 본 발명을 적용할 수 있고, 그 결과로서 적합한 부호화 방법 및 복호 방법을 제공할 수 있다.
(제 10 실시예)
다음에, 본 발명의 제 10 실시예에 따른 부호화 방법에 관해서 설명한다. 본 발명의 제 5 실시예에 따른 부호화 방법에 있어서는 부호화 대상이 되는 매크로 블록의 움직임 벡터 차분치 MVD를 움직임 벡터정보 D2로서 부호화할 때에 주위의 매크로 블록에 있어서의 움직임 벡터 차분치를 참조하여 가변 길이 부호화 테이블을 바꾸도록 구성하였지만, 본 발명의 제 10 실시예에 따른 부호화 방법에 있어서는 주변 매크로 블록에 있어서의 움직임 벡터를 참조하여 가변 길이 부호화 테이블을 바꾸는 것을 특징으로 한다.
즉, 상술한 바와 같이 움직임 벡터 정보(D2)는 예를 들면 MPEG-4에 있어서의 부호화에서는 부호화 대상이 되는 매크로 블록의 움직임 벡터에 대하여, 주변 매크로 블록에 있어서의 움직임 벡터의 중간치가 예측치로서 생성되고, 상기 예측치와 실제의 움직임 벡터의 차분치 MVD를 부호화하지만, 주변 매크로 블록에 있어서의 움직임 벡터가 서로 같은 값이 되는 경우에는 움직임 벡터의 예측치를 신뢰할 수 있는 값이라고 생각되기 때문에, 움직임 벡터 차분치 MVD는 0 근방에 집중할 가능성이 높아진다. 따라서 이러한 경우에는 O 근방의 부호 길이가 짧아지는 가변 길이 부호화 테이블을 사용함으로써 효율 좋게 부호화할 수 있다. 반대로, 주변 매크로 블록에 있어서의 움직임 벡터가 서로 크게 다른 값이 되는 경우에는 움직임 벡터 예측치가 신뢰할 수 없는 값이라고 생각되기 때문에, 움직임 벡터 차분치 MVD는 0 근방에 집중한다고는 한정하지 않는다. 따라서, 이러한 경우에는 움직임 벡터 차분치의 절대치가 큰 값이라도 작은 값이라도 부호 길이에 그다지 차가 없는 가변 길이 부호화 테이블을 사용함으로써 효율 좋게 부호화할 수 있다.
이러한 사실을 염두에 두고, 본 발명의 제 10 실시예에 있어서는 예를 들면 도 21a 내지 도 21c에 도시하는 바와 같이 부호 길이의 분포의 치우침의 특성이 다른 가변 길이 부호화 테이블을 복수 준비하고, 부호화 대상 매크로 블록의 주변 매크로 블록에 있어서의 각 움직임 벡터끼리의 절대 차분합의 크기에 따라서, 부호화 대상 매크로 블록에 있어서의 움직임 벡터 차분치에 대한 가변 길이 부호화 테이블을 바꾼다.
구체적으로는 예를 들면 도 33에 도시한 부호화 대상 매크로 블록(A)의 주변 매크로 블록으로서 위에 인접하는 매크로 블록(B) 및 왼쪽에 인접하는 매크로 블록(C) 및 오른쪽 위에 있는 매크로 블록(D)에서의 움직임 벡터를 MV(B) 및 MV(C)및 MV(D)으로 한다. 미리 설정한 임계치 Th10, Th11에 대하여(단 Th10<Th11로 한다), 각각의 움직임 벡터의 절대 차분합으로서 S=│MV(B)-MVD(C)│+│MV(C)-MV(D)│의 값이 Th10보다 작으면, 매크로 블록(A)에서의 움직임 벡터 차분치의 가변 길이 부호화 테이블로서 도 21a의 테이블을, S가 Th10 이상이고 또한 Th11보다 작으면 도 21b의 테이블을 사용하여, S가 Th11 이상이면 도 21c의 테이블을 사용하여 가변 길이 부호화를 하도록 구성한다. 단, 매크로 블록(B) 또는 매크로 블록(C) 또는 매크로 블록(D)이 화면 외나 슬라이스 외에 존재하는 경우 또는 인트라 부호화된 매크로 블록인 경우에는 그 매크로 블록의 움직임 벡터와의 절대 차분치는 미리 설정해 둔 값 Z10(Z10≥Th10)으로서 처리한다. 이것은 움직임 벡터 예측치를 생성하기 위한 매크로 블록이 화면 외나 슬라이스 외 또는 인트라 부호화되어 있는 것이면, 움직임 벡터의 예측치가 들어맞기 어렵고, 부호화 대상의 움직임 벡터 차분치의 취할 수 있는 값이 0 근방에 집중한다고는 한정하지 않기 때문이다.
즉, 도 13의 가변 길이 부호화부(16)에 있어서 우선 입력 심볼(H1)로서 가변 길이 부호 출력부(30)에 움직임 벡터 차분치 MVD가 입력된다. 그리고 부호화 심볼 메모리(31)로부터, 가변 길이 부호화 테이블 제공부(33)에 가변 길이 부호화 테이블 참조 정보(H3)로서 MV(B), MV(C) 및 MV(D)가 입력된다. 그리고, 가변 길이 부호화 테이블 제공부(33)에서 상기한 바와 같이 MV(B), MV(C) 및 MV(D)의 절대 차분합(S)이 미리 설정해 둔 임계치 Th10 및 Th11과 비교되고, 그것에 기초하여 부호화 대상 움직임 벡터에 대하여 사용하는 가변 길이 부호화 테이블이 결정되고, 가변 길이 부호화 테이블(H5)이 가변 길이 부호 출력부(30)에 제공된다. 그리고, 부호화 대상 움직임 벡터는 가변 길이 부호화되고, 부호화 데이터(D9)로서 출력된다.
본 발명의 제 10 실시예에 따른 부호화 방법에 있어서는 이상과 같이 MVD치가 0 근방에 집중하기 쉬운 경우에는 0 근방의 부호 길이가 짧은 가변 길이 부호화 테이블로 바꿈으로써 MVD치가 0 근방인 경우의 부호 길이가 짧아지도록 제어하여, MVD치의 예측이 0 근방에 집중한다고는 한정하지 않은 경우에는 부호 길이의 치우침이 작은 테이블로 바꿈으로써 MVD치가 큰 값이라도 부호 길이가 길어지도록 구성하였기 때문에, MVD치를 효율 좋게 부호화할 수 있다.
또, 도 21a 내지 도 21c에서는 3개의 가변 길이 부호화 테이블을 사용하여 설명하였지만, 물론 가변 길이 부호화 테이블의 개수나 그 값은 도 21a 내지 도21c에 한정되는 것이 아니다. 또한, 복수의 가변 길이 부호화 테이블을 가변 길이 부호화 테이블 제공부(33)내의 메모리에 보유해두고, 가변 길이 부호화 테이블(H3)의 제공을 바꿈으로써 실현하더라도, 예로서 나타낸 exp-Colomb 부호 등의 Universal 부호를 사용하여 그 파라미터를 바꿈으로써 가변 길이 부호화 테이블 제공부(33)내에서 가변 길이 부호화 테이블(H3)을 생성함으로써 실현하여도 좋다.
도 14는 본 발명의 제 10 실시예에 따른 가변 길이 복호부(21)의 블록도를 도시한 도면이다. 본 발명의 제 10 실시예에 따른 부호화 방법에 의해서 부호화된 부호화 데이터(D9)가 가변 길이 복호부(21)의 복호 심볼 출력부(40)에 입력되면, 이미 복호가 완료된 심볼로부터 산출된 MV(B), MV(C) 및 MV(D)이 복호 심볼 메모리(41)로부터 가변 길이 복호 테이블 참조 정보(H8)로서 가변 길이 복호 테이블 제공부(42)에 입력된다. 그리고, 가변 길이 복호 테이블 제공부(43)로부터 가변 길이 복호 테이블(H10)이 부호화와 같은 수속으로써 선택되어 복호 심볼 출력부(40)에 입력된다. 그리고, 복호 심볼 출력부(40)에 있어서 가변 길이 복호가 이루어지고, 복호 심볼(H6)로서 움직임 벡터가 복호되어 출력되는 동시에, 복호 심볼 메모리(41)에 기억된다.
상기한 바와 같이 가변 길이 복호부를 구성하였기 때문에, 본 발명의 제 10 실시예에 따른 부호화 방법에 의해서 부호화된 부호화 데이터를, 적합하게 복호할 수 있다.
(제 11 실시예)
다음에, 본 발명의 제 11 실시예에 따른 부호화 방법에 관해서 설명한다. 본 발명의 제 4 실시예에 따른 부호화 방법에 있어서는 블록 내의 비영 계수 수 CC를 부호화할 때에 가변 길이 부호화 테이블을 바꾸는 것을 하지 않았지만, 본 발명의 제 11 실시예에 따른 부호화 방법에 있어서는 비영 계수 수 CC를 부호화할 때에 주위의 블록에 있어서의 비영 계수 수를 참조하여 가변 길이 부호화 테이블을 바꾸는 것을 특징으로 한다.
즉, 상술한 바와 같이 화면내의 어떤 지점에서의 화상의 특징은 그 근방 영역에서의 화상의 특징과 유사한 경향이 있기 때문에, 어떤 블록에 있어서의 비영 계수 수는 근방 블록에 있어서의 비영 계수 수에 가까운 값을 취할 가능성이 높다. 따라서, 부호화 대상이 되는 블록의 주변 블록에 있어서의 비영 계수 수가 0에 가까운 값인 경우에는 부호화 대상이 되는 블록에 있어서의 비영 계수 수 CC도 0에 가까운 값일 가능성이 높아진다. 따라서 이러한 경우에는 0 근방의 부호 길이가 짧아지는 가변 길이 부호화 테이블을 사용함으로써 효율 좋게 부호화할 수 있다. 반대로, 주변 블록에 있어서의 비영 계수 수가 0에 가까운 값인 경우에는 부호화 대상이 되는 블록에 있어서의 비영 계수 수 CC는 0 근방에 집중한다고는 한정하지 않는다. 따라서, 이러한 경우에는 비영 계수 수 CC의 값이 큰 값이라도 작은 값이라도 부호 길이에 그다지 차가 없는 가변 길이 부호테이블을 사용함으로써 효율 좋게 부호화할 수 있다.
이러한 사실을 염두에 두고, 본 발명의 제 11 실시예에 있어서는 예를 들면 도 21a 내지 도 21c에 도시하는 바와 같이 부호 길이의 분포의 치우침의 특성이 다른 가변 길이 부호화 테이블을 복수 준비하고, 부호화 대상 블록의 주변 블록에 있어서의 각 비영 계수 수의 값의 평균치에 따라서, 부호화 대상 블록에 있어서의 비영 계수 수 CC에 대한 가변 길이 부호화 테이블을 바꾼다.
구체적으로는, 예를 들면 도 23에 도시한 부호화 대상 블록(A)의 주변 블록으로서 위에 인접하는 블록(B) 및 왼쪽에 인접하는 블록(C)에서의 비영 계수 수를 CC(B) 및 CC(C)로 한다. 미리 설정한 임계치 Th12, Th13에 대하여(단 Th12<Th13으로 한다), 각각의 블록에 있어서의 비영 계수 수의 평균치로서 MC=(CC(B)+ CC(C))/2의 값이 Th12보다 작으면, 블록(A)에서의 비영 계수 수 CC(A)의 가변 길이 부호화 테이블로서 도 21a의 테이블을 사용하여, MC가 Th12 이상이고 또한 Th13보다 작으면 도 21b의 테이블을 사용하여, MC이 Th13 이상이면 도 21c의 테이블을 사용하여 가변 길이 부호화를 하도록 구성한다. 단, 블록(B) 또는 블록(C)이 화면 외나 슬라이스 외에 존재하는 경우에는 그 블록의 비영 계수 수는 미리 설정하여 둔 값 Z11(Z11≥Th12)로서 처리한다. 이것은 인접 블록이 화면 외나 슬라이스 외 또는 인트라 부호화되어 있는 것이면, 부호화 대상의 비영 계수 수의 취할 수 있는 값이 예상되기 어렵기 때문에, 0 근방에 집중한다고는 한정하지 않기 때문이다.
즉, 도 13의 가변 길이 부호화부(16)에 있어서 우선 입력 심볼(H1)로서 가변 길이 부호 출력부(30)에 비영 계수 수 CC가 입력된다. 그리고 부호화 심볼 메모리(31)로부터, 가변 길이 부호화 테이블 제공부(33)에 가변 길이 부호화 테이블 참조 정보(H3)로서 CC(B) 및 CC(C)′이 입력된다. 그리고, 가변 길이 부호화 테이블 제공부(33)로써 상기한 바와 같이 CC(B) 및 CC(C)의 평균치 MC가 미리 설정해둔 임계치 Th12 및 Th13과 비교되고, 그것에 기초하여 부호화 대상 비영 계수 수에 대하여 사용하는 가변 길이 부호화 테이블이 결정되고, 가변 길이 부호화 테이블(H5)이 가변 길이 부호 출력부(30)에 제공된다. 그리고, 부호화 대상 움직임 벡터는 가변 길이 부호화되어, 부호화 데이터(D9)로서 출력된다.
본 발명의 제 11 실시예에 따른 부호화 방법에 있어서는 이상과 같이 비영 계수 수 CC가 0 근방에 집중하기 쉬운 경우에는 0 근방의 부호 길이가 짧은 가변 길이 부호화 테이블로 바꿈으로써 비영 계수 수 CC가 0 근방인 경우의 부호 길이가 짧아지도록 제어하고, 비영 계수 수 CC의 예측이 0 근방에 집중한다고는 한정하지 않는 경우에는 부호 길이의 치우침이 작은 테이블로 바꿈으로써 비영 계수 수 CC가 큰 값이더라도 부호 길이가 길지 않도록 구성하였기 때문에, 비영 계수 수 CC를 효율 좋게 부호화할 수 있다.
또, 도 21a 내지 도 21c에서는 3개의 가변 길이 부호화 테이블을 사용하여 설명하였지만, 물론 가변 길이 부호화 테이블의 개수나 그 값은 도 21a 내지 도 21c에 한정되는 것은 아니다. 또한, 복수의 가변 길이 부호화 테이블을 가변 길이 부호화 테이블 제공부(33)내의 메모리에 보유해두고, 가변 길이 부호화 테이블(H3)의 제공을 바꿈으로써 실현하더라도, 예로서 나타낸 exp-Golomb 부호 등의 Universal 부호를 사용하여 그 파라미터를 바꿈으로써 가변 길이 부호화 테이블 제공부(33)내에서 가변 길이 부호화 테이블(H3)을 생성함으로써 실현하여도 좋다.
도 14는 본 발명의 제 11 실시예에 따른 가변 길이 복호부(21)의 블록도를 도시한 도면이다. 본 발명의 제 11 실시예에 따른 부호화 방법에 의해서 부호화된부호화 데이터(D9)가 가변 길이 복호부(21)의 복호 심볼 출력부(40)에 입력되면, 이미 복호가 완료된 심볼로부터 산출된 CC(B) 및 CC(C)가 복호 심볼 메모리(41)로부터 가변 길이 복호 테이블 참조 정보(H8)로서 가변 길이 복호 테이블 제공부(42)에 입력된다. 그리고, 가변 길이 복호 테이블 제공부(43)로부터 가변 길이 복호 테이블(H10)이 부호화와 같은 수속으로써 선택되어 복호 심볼 출력부(40)에 입력된다. 그리고, 복호 심볼 출력부(40)에 있어서 가변 길이 복호가 이루어지고, 복호 심볼(H6)로서 비영 계수 수 CC가 복호되어 출력되는 동시에, 복호 심볼 메모리(41)에 기억된다.
(제 12 실시예)
우선, 도 22a 내지 도 22d를 참조하여, 본 발명의 제 12 실시예에 따른 부호화 방법에 있어서의 화상 데이터인 직교 변환 계수의 가변 길이 부호화의 수순에 대하여 설명한다. 여기서는 공간 화상 데이터를 주파수 화상 데이터로 변환하는 직교 변환으로는 이산 코사인 변환(DCT: Discrete Cosine Transform)을 상정한다. 도 22a는 도 4b에 도시한 8화소 ×8라인의 직교 변환 계수 f11내지 f88에 양자화 처리를 가한 양자화 직교 변환 계수 q11내지 q88의 구체적인 일 수치예를 나타내고 있다. 화상 부호화 장치의 가변 길이 부호화부에서는 이러한 양자화 직교 변환 계수에 대하여 소정의 처리 수순으로 가변 길이 부호화를 하여, 부호화 데이터를 생성한다.
계수 qij의 첨자의 값(i, j)이 대응하는 수직 주파수, 수평 주파수를 각각 나타내고 있는 양자화 직교 변환 계수 q11내지 q88에 있어서는 공간 화상 데이터에서의 화상 성분 a11내지 a88(도 4a 참조)과는 달리, 각 양자화 직교 변환 계수가 그 계수치의 크기 등에 관해서, 대응하는 공간 주파수의 값에 의존한 데이터 특성을 갖고 있다. 일반적으로 자연 화상에 있어서는 저주파 영역에서 절대치가 큰 직교 변환의 계수치가 얻어지고, 고주파수가 됨에 따라서 계수치의 절대치는 작아진다. 이 분포는 영을 피크에 갖는 라플라스 분포에 의해 근사할 수 있다. 또한, 그 때 각 블록 내의 각 화소의 농도의 변화가 격렬할수록 변환 계수의 분포의 확장도 커져, 계수의 평균 진폭치가 증대한다.
양자화 직교 변환 계수의 가변 길이 부호화의 처리 수순에 있어서는 우선, 2차원 데이터인 양자화 직교 변환 계수 q11내지 q88이, 예를 들면 도 22b에 도시하는 지그재그·스캔에 의해서, 1차원 데이터로 변환된다. 이 지그재그·스캔으로서는 스캔 후의 1차원 데이터가 저주파수 영역으로부터 고주파수 영역으로 이행하는 데이터열이 되도록, 양자화 직교 변환 계수가 스캔된다. 이로써, 저주파수 영역으로부터 고주파수 영역으로 양자화 직교 변환 계수가 나란히 배열되는, 도 22c에 도시하는 1차원 데이터가 얻어진다.
이 양자화 직교 변환 계수의 1차원 데이터는 그 데이터량을 저감하기 때문에, 또한, 도 22d에 도시하는 Level(레벨) 및 Run(런)으로 이루어지는 데이터로 변환된다. 여기서, Level은 복수의 양자화 직교 변환 계수 중에 비영 계수치를 갖는양자화 직교 변환 계수에서의 계수치를 나타낸다. 또한, Run은 0이 아닌 양자화 직교 변환 계수의 직전에 있는 계수치가 0의 데이터의 수인 제로 런 길이를 나타낸다.
예를 들면, 도 22a에 도시한 DCT 계수의 데이터예로서는 도 22c에 도시하는 바와 같이, 64개의 DCT 계수 q11내지 q88이, 0이 아닌 계수치를 가지는 DCT 계수의 출현 위치에 기초하여, 계수 q11로 이루어지는 계수군 S1, 계수 q12, q21로 이루어지는 계수군 S2, 계수 q31내지 q13로 이루어지는 계수군 S3, 계수 q14내지 q32로 이루어지는 계수군 S4, 계수q41내지 q15로 이루어지는 계수군 S5및 계수 q16내지 q88로 이루어지는 계수군 S6으로 구분된다.
그리고, 것들의 계수군 si(i=1 내지 6)에 대하여, 도 22d에 도시하는 바와 같이, 각각 Level치 Li및 Run치 Ri가 구해진다. 구체적으로는, 계수군 S1으로서는 L1=q11=10, R1=0이다. 또한, 계수군 S2으로서는 L2=q2l=-2, R2=1이다. 또한, 계수군 S3으로서는 L3=q13=2, R3=2이다. 또한, 계수군 S4으로서는 L4=q32=-1, R4= 2이다. 또한, 계수군 S5으로서는 L5=q15=1, R5=5이다. 또한, 최후의 계수군 S6은 모든 계수 q16내지 q88의 계수치가 O으로 되어 있는 계수군이고, L6=O, R6은 미정의이지만, 편의 상, O으로서 취급하기로 한다.
그런데, 도 22d에 도시한 Level 및 Run으로 이루어지는 데이터로부터, 상기부호화 대상 블록에 있어서의 비영 계수 수 CC 및 Run 합계치 RT를 산출한다. 예를 들면, 구체적으로는 도 22d로부터 비영 계수 수 CC=5, Run 합계치 RT=10이 된다.
여기서, 계수군 Si의 Run치를 Ri, Level치를 Li, 스캔 후의 비영 계수의 주파수 위치를 Pi, 직전에 부호화한 Si+1의 Level치를 Li+1로 한다. 또한, 상기 부호화 대상 블록에 있어서의 Run 합계치를 RT, 비영 계수 수를 CC로 하고, 계수군 Si에서의 Run 합계치 나머지를 RTi, 비영 계수 나머지수를 CCi로 한다. RTi 및 CCi는 다음에 나타내는 식 1 및 식 2에 의해서, Pi는 다음 식 3에 의해서 산출된다. 단, 최후의 계수군 Sj에 대한 비영 계수 나머지수는 편의 상, CCj=CC+1로 한다.
식 1: RTi=RTi+1-Ri+1
식 2: CCi=CCi+1-1
식 3: Pi=RTi+CCi
여기서, 이들의 계수군 및 비영 계수 수 CC나 Run 합계치 RT의 부호화를 할 때에 사용하는 가변 길이 부호화 테이블의 일 예를 도 34b에 도시한다. 이 가변 길이 부호화 테이블의 좌측의 항은 인덱스치를 나타내고, 중앙은 인덱스치에 대응하는 가변 길이 부호를 나타내고, 우측은 가변 길이 부호 각각의 부호 길이를 나타내고 있다.
도 13은 본 발명의 제 12 실시예에 따른 가변 길이 부호화부(16)의 블록도를도시한 도면이다. 우선 입력 심볼(H1)로서 비영 계수 수 CC 및 Run 합계치 RT가 가변 길이 부호 출력부(30)에 입력된다. 가변 길이 부호화 테이블 제공부(33)는 입력 심볼(H1)에 대응하는 가변 길이 부호화 테이블로서, 예를 들면 도 34b에 도시하는 바와 같은 가변 길이 부호화 테이블(H5)을 가변 길이 부호 출력부(30)에 제공하고, 입력 심볼(H1)은 가변 길이 부호화 테이블(H5)을 사용하여 부호화된다. 즉, 비영 계수 수 CC의 값으로부터 1 뺀 값을 인덱스치로서 대응하는 가변 길이 부호를 부호화 데이터(D9)로서 출력한다. 또한 마찬가지로 Run 합계치 RT의 값을 인덱스치로서 대응하는 가변 길이 부호를, 부호화 데이터(D9)로서 출력한다.
다음에, 고주파측의 계수군으로부터 차례로 부호화를 한다. 단, 모든 계수치가 0으로 되어 있는 계수군에 대해서는 부호화하지 않는다. 우선, 모든 계수군의 Run치 Ri가 입력 심볼(H1)로서 가변 길이 부호 출력부(30)에 입력되면, Run치 Ri를 인덱스로서 같이 가변 길이 부호화 테이블을 사용하여 부호화되어, 부호화 데이터(D9)로서 출력된다.
다음에, Level치의 부호화를 고주파측의 계수군으로부터 차례로 모든 비영 Level치에 대하여 행한다. 상술한 바와 같이 DCT에서 직교 변환 계수는 고주파수가 됨에 따라서 Level치의 절대치가 작아지고, 이 분포는 영을 피크에 갖는 라플라스 분포에 의해 근사할 수 있다. 따라서, 부호화 대상으로 되어 있는 Level치의 절대치는 상기 부호화 대상으로 되어 있는 계수의 직전에 부호화한 Level치의 절대치로부터 유추할 수 있다. 즉, 주파수축 상에서 고주파측에서 차례로 부호화를 하기 위해서, 부호화 대상 Level치가 1개 고주파측의 계수군에 있어서의 Level치에 주파수축 상에서 가까운 위치에 있기 때문에, 부호화 대상 Level치의 절대치는 1개 고주파측의 계수군에 있어서의 Level치의 절대치와 동일한 정도의 값을 취할 가능성이 높다고 유추할 수 있다. 이상의 사실로부터, 부호화 대상 Level치의 1개 고주파측의 계수군에 있어서의 Level치의 절대치에 의해서 콘텍스트를 생성하고, 상기 콘텍스트에 기초하여 가변 길이 부호화 테이블에 있어서의 인덱스치와 Level치의 절대치를 관련짓기 위한 맵 테이블을 교체함으로써 부호화 효율을 높일 수 있다.
여기서, 상기 부호화 대상 Level치의 절대치를 |Li|, 양음을 나타내는 부호를 sign(Li), 1개 고주파측의 계수군 Si+1에 있어서의 Level치의 절대치를 |Li+1|로 한다. 우선, 부호화 맵 테이블 제공부(32)에는 부호화 심볼 메모리(31)로부터 부호화 맵 테이블 참조 정보(H2)로서 |Li+1|가 입력되고, |Li|는 |Li+1|에 가까운 값을 취하는 것으로 유추되므로, |Li+1|이 가장 짧은 가변 길이 부호가 되는 인덱스치에 대응하여, 계속해서 |Li+1|-1 및 |Li+1|+ 1이 다음에 짧은 가변 길이 부호가 되는 인덱스치에 대응하도록, 마찬가지로 |Li+1|에 가까울수록 짧은 가변 길이 부호가 되는 인덱스치에 대응하도록 맵 테이블(H4)을 작성한다.
즉 구체적으로는 도 22c에 도시한 계수군 S5에 대해서는 S6의 Level치의 절대치인 「0」에 가까울수록 인덱스치가 작아지도록 도 34a에 도시하는 바와 같은 맵 테이블을 구성한다. 마찬가지로 계수군 S4에 대해서는 S5의 Level치의 절대치인「1」에 가까울수록 인덱스치가 작아지도록 도 34a에 도시하는 바와 같은 맵 테이블을 구성한다. 계수군 S3에 대해서는 S4의 Level치의 절대치인 「1」에 가까울수록 인덱스치가 작아지도록 도 34a에 도시하는 바와 같은 맵 테이블을 구성한다. 계수군 S2에 대해서는 S3의 Level치의 절대치인 「2」에 가까울수록 인덱스치가 작아지도록 도 35a에 도시하는 바와 같은 맵 테이블을 구성한다. 계수군 S1에 대해서는 S2의 Level치의 절대치인 「2」에 가까울수록 인덱스치가 작아지도록 도 35a에 도시하는 바와 같은 맵 테이블을 구성한다.
이와 같이 맵 테이블(H4)을 생성하고, 각각 대응하는 Level치의 절대치를 인덱스치로서 가변 길이 부호화 테이블(H5)을 사용하여 가변 길이 부호 출력부(30)에 있어서 가변 길이 부호화를 하여, 각각의 가변 길이 부호에 계속되어 양음을 나타내는 부호를 양의 경우에는「0」, 음의 경우는「1」로 나타나는 1 비트에 의해서 부호화한다. 결국, 가변 길이 부호 출력부(30)에 입력 심볼로서 Level치 Li가 입력되면, 부호화 맵 테이블 제공부(32)에는 부호화 심볼 메모리(31)로부터 부호화 맵 테이블 참조 정보(H2)로서 |Li+1|이 입력되고, 대응하는 부호화 맵 테이블(H4)이 가변 길이 부호 출력부(30)에 제공되는 동시에, 가변 길이 부호화 테이블 제공부(33)로부터 가변 길이 부호화 테이블(H5)이 가변 길이 부호 출력부(30)에 제공되어, 입력 심볼(H1)이 가변 길이 부호화되어 부호화 데이터(D9)가 출력된다.
도 22c에 도시한 구체예의 계수열을 본 발명의 제 12 실시예에 따른 부호화를 한 경우의 Level치의 부호화 결과와, 종래의 맵 테이블을 바꾸지 않은 경우의 부호화 결과를 도 35b에 도시한다.
본 발명의 제 12 실시예에 따른 부호화 방법에 있어서는 부호화 대상 계수에 대하여 주파수축 상에서 근방에 있는 Level치를 참조하여, 부호화 대상 Level치로서 발생할 가능성이 높은 값이 짧은 가변 길이 부호에 할당되도록 맵 테이블을 바꿔 가변 길이 부호화하도록 구성하였기 때문에, Level치를 효율 좋게 부호화할 수 있다.
또, 본 발명의 제 12 실시예에 따른 부호화 방법에 있어서, Run치의 부호화를 Level치의 앞에 행하도록 기술하였지만, 물론 본 발명은 Run치를 Level치의 뒤에 부호화하더라도 Run치와 Level치를 교대로 부호화하더라도 적용할 수 있다.
도 36은 본 발명의 제 12 실시예에 따른 가변 길이 복호부(21)의 블록도를 도시한 도면이다. 본 발명의 제 12 실시예에 따른 부호화 방법에 의해서 부호화된 부호화 데이터(D9)가 가변 길이 복호부(21)의 복호 심볼 출력부(40)에 입력되면, 이미 복호가 완료된 심볼 |Li+1|이 복호 심볼 메모리(41)로부터 복호 맵 테이블 참조 정보(H7)로서 복호 맵 테이블 제공부(42)에 입력된다. 그리고, 복호 맵 테이블 제공부(42)로부터 복호 맵 테이블(H9)이 부호화와 같은 수속으로써 선택되어 복호 심볼 출력부(40)에 입력되고, 가변 길이 복호 테이블 제공부(43)로부터는 가변 길이 복호 테이블(H10)이 복호 심볼 출력부(40)에 입력된다. 그리고, 복호 심볼 출력부(40)에 있어서 가변 길이 복호가 이루어지고, 복호 심볼(H6)로서 Level치가 복호되어 출력되는 동시에, 복호 심볼 메모리(41)에 기억된다.
상기한 바와 같이 가변 길이 복호부를 구성하였기 때문에, 본 발명의 제 12 실시예에 따른 부호화 방법에 의해서 부호화된 부호화 데이터는 적합하게 복호할 수 있다.
또, 본 발명의 제 12 실시예에 있어서는 Level치를 DCT 계수의 고주파 성분으로부터 차례로 부호화하도록 구성하였지만, 그 때는 Level치의 고주파 성분의 절대치가 「1」로 될 가능성이 높기 때문에, 고주파측에서 「1」의 연속하는 수를 Level치의 맵 테이블에 더함으로써 더욱 적합한 부호화 및 복호를 실현할 수 있다. 그 맵 테이블의 일 예를 도 36에 도시한다.
(제 13 실시예)
본 발명의 제 12 실시예에 따른 부호화 방법에 더하여, 본 발명의 제 13 실시예에 따른 부호화 방법에 있어서는 Level치의 부호화를 할 때에 상기 부호화 대상 계수군에 있어서의 Run치를 사용하여 맵 테이블을 바꾸는 것을 특징으로 한다. 따라서 본 발명의 제 13 실시예에 따른 부호화 방법에 있어서는 부호화 대상이 되는 Level치의 앞에 상기 부호화 대상 계수군에 있어서의 Run치가 부호화되도록 구성한다. 즉 본 발명의 제 13 실시예에 따른 부호화 방법에 있어서는 도 13에 도시한 가변 길이 부호화부(16)에 있어서, 부호화 심볼 메모리(31)로부터 부호화 맵 테이블 참조 정보(H2)로서 Level치 |Li+1|에 더하여 Run치가 부호화 맵 테이블 제공부(32)에 입력된다. 즉, 예를 들면 Run치가 큰 경우에는 부호화 대상 계수는 라플라스 분포에 있어서 기슭에 위치한다고 생각되기 때문에, 출현하는 Level치는 작은 값이라고 생각된다. 그래서, 예를 들면 미리 임계치 Th0을 설정해두고, Run치가 임계치 Th0보다 큰 경우에는 Level치에 대한 맵 테이블은 Level치가 작으면 작을수록 인덱스치가 작아지도록 구성된 맵 테이블을 사용하도록 제어한다. 그 밖의 동작은 본 발명의 제 12 실시예에 따른 부호화 방법과 같다.
이상과 같이 구성하였으므로, 본 발명의 제 13 형태에 따른 부호화 방법에서는 Run치가 큰 경우에는 Level치가 작아질 가능성이 높기 때문에, Run치가 큰 경우에는 출현하기 쉬운 작은 Level치를 짧은 부호 길이로 부호화할 수 있기 때문에, Level치를 효율 좋게 부호화할 수 있다.
또한, 본 발명의 제 13 실시예에 따른 부호화 방법과 동일한 수속으로써 부호화 맵 테이블(복호 맵 테이블)의 교체를 행하고, 본 발명의 제 12 실시예에 따른 복호 방법과 동일한 처리를 함으로써, 본 발명의 제 13 실시예에 따른 복호 방법이 실현된다. 본 발명의 제 13 실시예에 따른 복호 방법에 의해서, 본 발명의 제 13 실시예에 따른 부호화 방법에 의해서 부호화된 부호화 데이터를 적합하게 복호할 수 있다.
(제 14 실시예)
본 발명의 제 12 및 제 13 실시예에 따른 부호화 방법에 더하여, 본 발명의 제 14 실시예에 따른 부호화 방법에 있어서는 또한 부호화 대상 계수군에 있어서의Level치의 부호화를 할 때에 상기 부호화 대상 계수군에 있어서의 주파수 위치 P를 사용하여 가변 길이 부호화 테이블을 바꾸는 것을 특징으로 한다. 따라서 본 발명의 제 14 실시예에 따른 부호화 방법에 있어서는 부호화 대상이 되는 Level치의 앞에 상기 부호화 대상 계수군에 있어서의 Run치가 부호화되도록 구성한다.
즉, 예를 들면 주파수 위치 P가 크면 클수록, 부호화 대상 계수는 라플라스 분포에 있어서 범위 쪽이라고 생각되기 때문에, 출현하는 Level치는 1개 고주파측의 계수군에 있어서의 Level치에 가까운 값일 가능성이 높다고 유추할 수 있다. 또한, 주파수 위치 P가 작으면 작을수록, 부호화 대상 계수는 라플라스 분포에 있어서 정상에 가깝다고 생각되기 때문에, 출현하는 Level치는 1개 고주파측의 계수군에 있어서의 Level치로부터의 유추 정밀도가 저하된다. 그래서, 예를 들면 도 21a 내지 도 21c에 도시하는 바와 같이 복수의 가변 길이 부호화 테이블을 준비해 두고, 이들을 적응적으로 바꾸도록 제어한다. 일 예로서 도 21a 내지 도 21c에 도시한 복수의 가변 길이 부호화 테이블은 exp-Golomb 부호라고 불리고, 아래와 같이 구성된다. 즉, j+1 비트의 Unary 파트에 대하여, k+j 비트의 Binary 파트를 추가함으로써 부호를 구성한다(j=O, 1, …). 즉, j는 그 부호에 있어서의 Binary 파트의 「0」의 개수와 같고, 또한 k는 O번째의 부호에 있어서의 Binary 파트의 부호 길이와 같다. 도 21a는 k=0의 경우, 도 21b는 k=1인 경우, 도 21c는 k=2의 경우의 exp-Golomb 부호이다. 도면으로부터 자명한 바와 같이, k의 값이 클수록 부호 길이의 분포의 치우침이 작아지는 경향이 있다.
그런데, 이와 같이 부호 길이의 분포의 치우침의 특성이 다른 가변 길이 부호화 테이블을 복수 준비하고, 상기 부호화 대상 계수군에 있어서의 주파수 위치 P에 따라서 상기 부호화 대상 Level치에 대한 가변 길이 부호화 테이블을 바꾼다. 즉, 주파수 위치 P가 큰 경우에는 도 21a에 도시하는 바와 같이, 부호 길이의 치우침이 큰 테이블을 사용하도록 제어하고, 주파수 위치가 작은 경우에는 도 21c에 도시하는 바와 같이, 부호 길이의 치우침이 작은 테이블을 사용하도록 제어한다.
구체적으로는 예를 들면, 미리 임계치 Th1 및 Th2를 설정해두고(단 Th1> Th2), 부호화 대상으로 되어 있는 계수군 Si)에서의 주파수 위치 Pi가 임계치 Th1보다 큰 경우에는 도 21a의 가변 길이 부호화 테이블을 사용하도록, Pi가 임계치 Th1 이하이고 Th2보다 큰 경우에는 도 21b의 가변 길이 부호화 테이블을 사용하도록, Pi가 임계치 Th2보다 작은 경우에는 도 21c의 가변 길이 부호화 테이블을 사용하도록 바꾼다.
즉, 도 13의 가변 길이 부호화부(16)에 있어서, 가변 길이 부호 출력부(30)에 입력 심볼(H1)로서 Level치가 입력되면, 부호화 심볼 메모리(31)에 있어서 산출된 부호화 대상 계수군 Si에서의 주파수 위치 Pi가 가변 길이 부호화 테이블 참조 정보(H3)로서 입력되고, 가변 길이 부호화 테이블 제공부(33)는 가변 길이 부호화 테이블 참조 정보(H3)에 기초하여 상기 의 제어 수법에 의해서 선택되는 가변 길이 부호화 테이블(H5)을 가변 길이 부호 출력부(30)에 제공한다. 다른 동작은 본 발명의 제 12 및 제 13 실시예와 동일하다.
본 발명의 제 14 실시예에 따른 부호화 방법에 있어서는 이상과 같이 Level치의 예측이 들어맞기 쉬운 경우에는 부호 길이의 치우침이 큰 테이블로 바꿈으로써 예측이 들어맞는 경우의 부호 길이가 짧아지도록 제어하고, Level치의 예측이 들어맞기 어려운 경우에는 부호 길이의 치우침이 작은 테이블로 바꿈으로써 예측이 들어맞지 않은 경우의 부호 길이가 길어지지 않도록 구성하였기 때문에, Level치를 효율 좋게 부호화할 수 있다.
또, 도 21a 내지 도 21c에서는 3개의 가변 길이 부호화 테이블을 사용하여 설명하였지만, 물론 가변 길이 부호화 테이블의 개수나 그 값은 도 21a 내지 도 21c에 한정되는 것이 아니다. 또한, 복수의 가변 길이 부호화 테이블을 가변 길이 부호화 테이블 제공부(32)내의 메모리에 보유해두고, 가변 길이 부호화 테이블(H5)의 제공을 바꿈으로써 실현하더라도, 예로서 나타낸 exp-Golomb 부호 등의 Universal 부호를 사용하여 그 파라미터를 바꿈으로써 가변 길이 부호화 테이블 제공부(32)내에서 가변 길이 부호화 테이블(H5)을 생성함으로써 실현하여도 좋다.
또, 본 발명의 제 14 실시예에 따른 부호화 방법과 같은 수속으로써 부호화 맵 테이블(복호 맵 테이블)의 교체를 행하고, 본 발명의 제 12 실시예에 따른 복호 방법과 동일한 처리를 함으로써, 본 발명의 제 14 실시예에 따른 복호 방법이 실현된다. 본 발명의 제 14 실시예에 따른 복호 방법에 의해서, 본 발명의 제 14 실시예에 따른 부호화 방법에 의해서 부호화된 부호화 데이터를 적합하게 복호할 수 있다.
(제 15 실시예)
본 발명의 제 12 내지 제 14 실시예에 따른 부호화 방법에 더하여, 본 발명의 제 15 실시예에 따른 부호화 방법에 있어서는 또한 부호화 대상 계수군에 있어서의 Level치의 부호화를 할 때에 상기 부호화 대상 계수군의 1개 고주파측의 계수군에 있어서의 Level치의 절대치를 사용하여 가변 길이 부호화 테이블을 바꾸는 것을 특징으로 한다.
즉, 예를 들면 1개 고주파측의 계수군에 있어서의 Level치의 절대치가 크면, 상기 부호화 대상 계수군에 있어서의 Level치는 예측하기 어려워진다. 반대로 1개 고주파측의 계수군에 있어서의 Level치의 절대치가 작으면, 상기 부호화 대상 계수군에 있어서의 Level치에 대한 예측은 들어맞기 쉽다. 그래서, 본 발명의 제 14 실시예에 따른 부호화 방법과 동일하게, 예를 들면 도 21a 내지 도 21c에 도시하는 바와 같은 복수의 가변 길이 부호화 테이블을 준비해 두고, 이들을 적응적으로 바꾸도록 제어한다. 구체적으로는 예를 들면, 미리 임계치 Th3 및 Th4를 설정해두고(단 Th3<Th4), 부호화 대상으로 되어 있는 계수군 Si에서의 Level치 Li의 부호화 시에 1개 고주파측의 계수군 Si+1에서의 Level치의 절대치 |Li+1|가 Th3보다 작은 경우에는 도 21a의 가변 길이 부호화 테이블을 사용하도록, |Li+1|이 Th3 이상이고 Th4보다 작은 경우에는 도 21b의 가변 길이 부호화 테이블을 사용하도록, |Li+1|이 Th4 이상인 경우에는 도 21c의 가변 길이 부호화 테이블을 사용하도록 바꾼다.
즉, 도 13의 가변 길이 부호화부(16)에 있어서, 가변 길이 부호 출력부(30)에 입력 심볼(H1)로서 Level치가 입력되면, 부호화 심볼 메모리(31)로부터 |Li+1|가 가변 길이 부호화 테이블 참조 정보(H3)로서 입력되고, 가변 길이 부호화 테이블 제공부(33)는 가변 길이 부호화 테이블 참조 정보(H3)에 기초하여 상기 제어 수법에 의해서 선택되는 가변 길이 부호화 테이블(H5)을 가변 길이 부호 출력부(30)에 제공한다. 다른 동작은 본 발명의 제 12 내지 제 14 실시예와 같다.
본 발명의 제 15 실시예에 따른 부호화 방법에 있어서는 이상과 같이 Level치의 예측이 들어맞기 쉬운 경우에는 부호 길이의 치우침이 큰 테이블로 바꿈으로써 예측이 들어맞는 경우의 부호 길이가 짧아지도록 제어하고, Level치의 예측이 들어맞기 어려운 경우에는 부호 길이의 치우침이 작은 테이블로 바꿈으로써 예측이 들어맞지 않은 경우의 부호 길이가 길어지도록 구성하였기 때문에, Level치를 효율 좋게 부호화할 수 있다.
또, 본 발명의 제 15 실시예에 따른 부호화 방법에 있어서, Run치의 부호화를 Level치의 앞에 행하도록 기술하였지만, 물론 본 발명은 Run치를 Level치의 뒤에 부호화하더라도 Run치와 Level치를 교대로 부호화하여도 적용할 수 있다.
또한, 본 발명의 제 15 실시예에 따른 부호화 방법과 같은 수속으로써 부호화 맵 테이블(복호 맵 테이블)을 바꾸고, 본 발명의 제 12 실시 형태에 따른 복호 방법과 동일한 처리를 함으로써, 본 발명의 제 15 실시예에 따른 복호 방법이 실현된다. 본 발명의 제 15 실시예에 따른 복호 방법에 의해서, 본 발명의 제 15 실시예에 따른 부호화 방법에 의해서 부호화된 부호화 데이터를 적합하게 복호할 수 있다.
(제 16 실시예)
본 발명의 제 16 실시예에 따른 부호화 방법에 있어서는 부호화 대상 계수군에 있어서의 Run치의 부호화를 할 때 상기 부호화 대상 계수군에 있어서의 Level치의 절대치를 사용하여 가변 길이 부호화 테이블을 바꾸는 것을 특징으로 한다. 따라서 본 발명의 제 16 실시예에 따른 부호화 방법에 있어서는 부호화 대상이 되는 Run치의 앞에 상기 부호화 대상 계수군에 있어서의 Level치가 부호화되도록 구성한다.
즉, 상기 부호화 대상 계수군에 있어서의 Level치의 절대치가 크면, 상기 부호화 대상 계수는 라플라스 분포에 있어서 정상에 가까운 부분에 위치한다고 생각되고, 근방의 주파수 성분도 비영이 될 가능성이 높다고 생각되기 때문에, Run치는 작은 값을 취한다고 예측할 수 있다. 반대로 상기 부호화 대상군에 있어서의 Level치의 절대치가 작으면, 상기 부호화 대상 계수는 라플라스 분포에 있어서 기슭의 부분에 위치한다고 생각되고, 근방의 주파수 성분도 비영이 될 가능성이 높다고는 한정하지 않기 때문에, Run치의 예측을 하기 어려워진다. 그래서, 본 발명의 제 15 실시예에 따른 부호화 방법과 동일하게, 예를 들면 도 21a 내지 도 21c에 도시하는 바와 같은 복수의 가변 길이 부호화 테이블을 준비해 두고, 이들을 적응적으로 바꾸도록 제어한다. 구체적으로는 예를 들면, 미리 임계치 Th5 및 Th6을 설정해두고(단 Th5>Th6), 부호화 대상으로 되어 있는 계수군 Si에서의 Run치 Ri의 부호화 시에 계수군 Si에서의 Level치의 절대치 |Li|가 Th5보다 큰 경우에는 도 21a의 가변 길이 부호화 테이블을 사용하도록, |Li|이 Th5 이하이고 Th6보다 큰 경우에는 도 21b의 가변 길이 부호화 테이블을 사용하도록, |Li|이 Th6 이하인 경우에는 도 21c의 가변 길이 부호화 테이블을 사용하도록 바꾼다.
즉, 도 13의 가변 길이 부호화부(16)에 있어서, 가변 길이 부호 출력부(30)에 입력 심볼(H1)로서 Run치가 입력되면, 부호화 심볼 메모리(31)보다 |Li|이 가변 길이 부호화 테이블 참조 정보(H3)로서 입력되고, 가변 길이 부호화 테이블 제공부(33)는 가변 길이 부호화 테이블 참조 정보(H3)에 기초하여 상기 제어 수법에 의해서 선택되는 가변 길이 부호화 테이블(H5)을 가변 길이 부호 출력부(30)에 제공한다. 다른 동작은 본 발명의 제 12 내지 제 15 실시예와 동일하다.
본 발명의 제 16 실시예에 따른 부호화 방법에 있어서는 이상과 같이 Run치가 작은 값을 취하면 예측하기 쉬운 경우에는 부호 길이의 치우침이 큰 테이블로 바꿈으로써 예측이 들어맞는 경우의 부호 길이가 짧아지도록 제어하고, Run치의 예측이 어려운 경우에는 부호 길이의 치우침이 작은 테이블로 바꿈으로써 예측이 들어맞지 않은 경우의 부호 길이가 길어지지 않도록 구성하였기 때문에, Run치를 효율 좋게 부호화할 수 있다.
또한, 본 발명의 제 16 실시예에 따른 부호화 방법과 동일한 수속으로써 부호화 맵 테이블(복호 맵 테이블)을 바꾸고, 본 발명의 제 15 실시예에 따른 복호 방법과 동일한 처리를 함으로써, 본 발명의 제 16 실시예에 따른 복호 방법이 실현된다. 본 발명의 제 16 실시예에 따른 복호 방법에 의해서, 본 발명의 제 16 실시예에 따른 부호화 방법에 의해서 부호화된 부호화 데이터를 적합하게 복호할 수 있다.
(제 17 실시예)
다음에, 본 발명의 제 17 실시예에 따른 부호화 방법에 관해서 설명한다. 본 발명의 제 12 실시예에 따른 부호화 방법에 있어서는 블록 내의 Run 합계치 RT를 부호화할 때에 가변 길이 부호화 테이블을 바꾸는 것을 하지 않았지만, 본 발명의 제 17 실시예에 따른 부호화 방법에 있어서는 블록 내의 Run 합계치 RT를 부호화할 때에 상기 부호화 대상 블록에 대한 움직임 벡터 차분치 DMV에 따라서 가변 길이 부호화 테이블을 바꾸는 것을 특징으로 한다.
블록 내의 Run 합계치 RT는 블록 내의 비영 계수 수 CC의 값 및 DCT 계수가 자연 화상으로서는 라플라스 분포로 근사할 수 있는 것 등으로부터 예측할 수 있다. 이렇게 하여 예측된 Run 합계치를 PRT로 한다. 그런데, 주변 블록으로부터 예측된 움직임 벡터 예측치와 부호화 대상 블록의 움직임 벡터의 차분치인 움직임 벡터 차분치 DMV가 작은 경우에는 상기 부호화 대상 블록에 있어서 출현하는 DCT 계수는 라플라스 분포로 근사하기 쉬울 가능성이 높다. 따라서 이러한 경우에는 블록 내의 Run 합계치 RT의 가변 길이 부호화 테이블을 Run 합계치의 예측치 PRT의 근방에 있어서 부호 길이가 짧아지는 가변 길이 부호화 테이블을 사용함으로써 효율 좋게 부호화할 수 있다. 반대로 상기 부호화 대상 블록에 있어서의 움직임 벡터 차분치 DMV가 큰 경우에는 상기 부호화 대상 블록 주변에서 움직임이나 텍스처가 복잡하게 변화하고 있을 가능성이 높다. 이러한 경우에는 DCT 계수는 라플라스 분포로 근사할 수 없는 가능성이 높고, 부호화 대상이 되는 블록에 있어서의 Run 합계치 RT는 Run 합계치의 예측치 PRT의 근방에 집중한다고는 한정하지 않는다. 따라서, 이러한 경우에는 Run 합계치 RT가 어떠한 값이라도 부호 길이에 그다지 차가 없는 가변 길이 부호 테이블을 사용함으로써 효율 좋게 부호화할 수 있다.
이러한 사실을 염두에 두고, 본 발명의 제 17 실시예에 있어서는 예를 들면 도 21a 내지 도 21c에 도시하는 바와 같이 부호 길이의 분포의 치우침의 특성이 다른 가변 길이 부호화 테이블을 복수 준비하고, 부호화 대상 블록에 있어서의 움직임 벡터 차분치 DMV의 크기에 따라서, 부호화 대상 블록에 있어서의 Run 합계치 RT에 대한 가변 길이 부호화 테이블을 바꾼다.
구체적으로는 예를 들면 부호화 대상 블록에 있어서의 움직임 벡터 차분치 DMV의 크기|DMV|에 대하여 미리 설정한 임계치 Th7, Th8(단 Th7<Th8로 한다)과 비교함으로써 가변 길이 부호화 테이블을 바꾼다. IDMVI의 값이 Th7보다 작으면, 부호화 대상 블록에 있어서의 Run 합계치 RT의 가변 길이 부호화 테이블로서 도 21a의 테이블을 사용하여, IDMV1이 Th7 이상이고 또한 Th8보다 작으면 도 21b의 테이블을 사용하여, |DMV|가 Th8 이상이면 도 21c의 테이블을 사용하여 가변 길이 부호화를 하도록 구성한다.
즉, 도 13의 가변 길이 부호화부(16)에 있어서 우선 입력 심볼(H1)로서 가변 길이 부호 출력부(30)에 Run 합계치 RT가 입력된다. 그리고 부호화 심볼 메모리(31)로부터, 가변 길이 부호화 테이블 제공부(33)에 가변 길이 부호화 테이블 참조 정보(H3)로서 부호화 대상 블록에 있어서의 |DMV|가 입력된다. 그리고, 가변 길이 부호화 테이블 제공부(33)에서 상기한 바와 같이 |DMV|가 미리 설정해둔 임계치 Th7 및 Th8과 비교되고, 그것에 기초하여 부호화 대상 블록에 있어서의 Run 합계치 RT에 대하여 사용하는 가변 길이 부호화 테이블이 결정되고, 가변 길이 부호화 테이블(H5)이 가변 길이 부호 출력부(30)에 제공된다. 그리고, Run 합계치 RT는 가변 길이 부호화되고, 부호화 데이터(D9)로서 출력된다.
본 발명의 제 17 실시예에 따른 부호화 방법에 있어서는 이상과 같이 Run 합계치가 Run 합계치의 예측치 PRT의 근방에 집중하기 쉬운 경우에는 PRT의 근방의 부호 길이가 짧은 가변 길이 부호화 테이블로 바꿈으로써 PRT의 근방인 경우의 부호 길이가 짧아지도록 제어하고, Run 합계치가 Run 합계치의 예측치 PRT의 근방에 집중한다고는 한정하지 않는 경우에는 부호 길이의 치우침이 작은 테이블로 바꿈으로써 Run 합계치 RT가 어떠한 값이더라도 부호 길이가 길어지지 않도록 구성하였기 때문에, Run 합계치 RT를 효율 좋게 부호화할 수 있다.
도 36은 본 발명의 제 17 실시예에 따른 가변 길이 복호부(21)의 블록도를 도시한 도면이다. 본 발명의 제 17 실시예에 따른 부호화 방법에 의해서 부호화된 부호화 데이터(D9)가 가변 길이 복호부(21)의 복호 심볼 출력부(40)에 입력되면, 이미 복호가 완료된 심볼로부터 산출된 |DMV|가 복호 심볼 메모리(41)로부터 가변 길이 복호 테이블 참조 정보(H8)로서 가변 길이 복호 테이블 제공부(43)에 입력된다. 그리고, 가변 길이 복호 테이블 제공부(43)로부터 가변 길이 복호 테이블(H10)이 부호화와 같은 수속으로써 선택되어 복호 심볼 출력부(40)에 입력된다. 그리고, 복호 심볼 출력부(40)에 있어서 가변 길이 복호가 이루어지고, 복호 심볼(H6)로서 Run 합계치 RT가 복호되어 출력된다
상기 실시예에서는 부호화 장치 및 복호 장치를 사용하여 설명하였지만, 이들은 하드웨어로 실현하더라도 소프트웨어로 실현하여도 좋다. 또한, 설명을 알기 쉽게 하기 위해서 구체적인 가변 길이 부호화 테이블이나 화상 부호화 방식을 사용하여 설명하였지만, 물론 본 발명은 이들에 한정되지 않는다.
또한, 상기 실시예에서 설명한 바와 같이, 부호화 조건이나 화상 특징을 사용하여 부호화 테이블 및 맵 테이블을 바꾸는 방법은 용이하게 여러 가지의 변경예를 상상할 수 있지만, 그 전부에 본 발명이 적용할 수 있다.
또한, 상기 실시예에서는 동화상 부호화의 일 예를 사용하여 설명하였지만, 물론 여기에 한정되지 않고, 대상이 되는 부호화 심볼 및 이용하는 콘텍스트를 적용할 수 있는 방식이면, 모든 동화상 부호화 방식 및 정지화상 부호화 방식에 적용할 수 있다.
또한, 상기 실시예에 따른 화상 부호화 방식 및 화상 복호 방식은 도 29a, 도 29b, 도 29c에 도시한 화상 전송 시스템, 화상 축적 시스템, 화상 재생 시스템에 적용함으로써, 전송 대역이나 축적 용량 등의 자원을 유효하게 활용하는 데 적합한 것이다.
또, 상기 실시예에서는 도 21a 내지 도 21c의 3개의 가변 길이 부호화 테이블을 사용하여 설명하였지만, 물론 가변 길이 부호화 테이블의 개수나 그 값은 도 21a 내지 21c에 한정되는 것이 아니다. 예를 들면 도 37a 내지 37c에 도시하는 바와 같이 exp-Golomb 부호의 다른 계수를 바꿈으로써 생성한 부호 길이 분포가 다른 가변 길이 부호가 테이블을 사용하여도 좋다.
또, 상기 실시예에 따른 부호화 방법 및 복호 방법에 있어서는 구체적인 테이블치를 사용하고 설명하였지만, 물론 본 발명은 이들의 값에 한정되는 것이 아니다. 또한, 상기 실시예에 있어서는 8화소 ×8라인의 DCT 계수를 예로 사용하여 설명하였지만, 물론 직교 변환의 종류나 블록의 크기가 이들에 한정되는 것이 아니다.
또한, 상기 실시예에 따르면, Run치는 고주파 성분에 관한 것으로부터 차례로 처리하도록 구성하였지만, 물론, 저주파 성분으로부터 처리하더라도 동일한 효과를 얻을 수 있다. 그리고, 예를 들면 상기 처리 대상 블록에 있어서의 비영 계수 수 CC의 값에 따라서 Run치를 처리하는 수순을 변경하도록 구성하면, 더욱 적합한 부복호가 가능하다. 즉, 예를 들면 미리 설정한 임계치 ThC에 대하여, 비영 계수 수 CC가 작은 경우에는 Run치를 저주파 성분으로부터, 상기 임계치 ThC에 대하여 비영 계수 수 CC가 동일하거나 큰 경우에는 Run치를 고주파 성분으로부터 처리함으로써, Run치에 대하여 보다 작은 값이 처리되는 가능성이 높게 되기 때문에, 보다 적합한 부호화 및 복호가 가능해진다.
또한, 상기 실시예에 따른 부호화 방법 및 복호 방법은 각각 별도의 실시예로서 기술하였지만, 물론 그 중의 복수 방법을 동시에 사용하더라도 동일한 효과가 얻어진다.
또한, 상기 실시예에 따른 부호화 방법 및 복호 방법에 있어서는 Run치 및 Level치를 각각 1차원의 가변 길이 부호화 테이블을 사용하여 직렬적으로 부복호하도록 설명하였지만, 물론 2차원의 가변 길이 부호화 테이블을 사용하여 병렬적으로 Run치와 Level치의 조합에 대하여 부복호하도록 구성하더라도 동일한 효과가 얻어진다. 그러나, Run과 Level의 상관 관계를 이용한 2차원 가변 길이 테이블에 있어서 맵 테이블의 교체에 의한 인덱스치를 변경하면, Run과 Level의 상관 관계가 무너져 버려 부호화 효율이 나빠지기 때문에, 본 발명의 실시예에 있어서 설명한 1차원의 가변 길이 부호화 테이블을 사용하는 쪽이 효율이 좋은 부호화를 할 수 있다.
또, 실시예에서는 가변 길이 부호화 테이블을 바꾸는 가변 길이 부호화를 사용하여 부호화를 하도록 기술하였지만, 물론 산술 부호화를 사용하여 이러한 처리를 하더라도 동일한 효과를 얻을 수 있다. 산술 부호화를 사용하는 경우에는 상기 실시예에 있어서, 짧은 부호 길이를 할당하는 부호화 대상 심볼에 대해서는 산술 부호화에 있어서의 심볼 발생 확률이 큰 확률 테이블을, 긴 부호 길이를 할당하는 부호화 대상 심볼에 대해서는 산술 부호화에 있어서의 심볼 발생 확률이 작은 확률 테이블을 사용함으로써 동일한 효과가 얻어진다.
또한, 상기 실시예에 있어서 사용한 부호 길이에 치우침이 큰 가변 길이 부호화 테이블에 대해서는 산술 부호화에 있어서의 각각의 심볼에 대응하는 심볼 발생 확률의 치우침이 큰 확률 테이블을, 부호 길이에게 치우침이 작은 가변 길이 부호화 테이블에 대해서는 산술부호화에 있어서의 각각의 심볼에 대응하는 심볼 발생 확률의 치우침이 작은 확률 테이블을 사용함으로써 동일한 효과를 얻을 수 있다. 구체적으로는, 예를 들면 도 21a 내지 도 21c의 가변 길이 부호화 테이블에 대하여, 다음의 도 38a 내지 도 38c의 확률 테이블을 사용함으로써 동일한 효과를 얻을 수 있다. 또, 다른 동작에 대해서는 지금까지 언급한 실시 형태와 같기 때문에 상세를 생략한다.
또한, 상기 각 실시예에 있어서 나타낸 움직임 검출부(11),움직임 보상부(12), 직교 변환부(14), 양자화부(15), 가변 길이 부호화부(16), 역양자화부(17), 역직교 변환부(18), 가변 길이 복호부(21), 역양자화부(22), 역직교 변환부(23), 움직임 보상부(24), 부호화 맵 테이블 제공부(32), 가변 길이 부호화 테이블 제공부(33), 가변 길이 부호 출력부(30), 복호 심볼 출력부(40), 복호 맵 테이블 제공부(42), 가변 길이 복호 테이블 제공부(43), 학습 기능 첨부 부호화 맵 테이블 제공부(52), 피드백 기능 첨부 가변 길이 부호 출력부(51), 학습 기능 첨부 복호 맵 테이블 제공부(62), 피드백 기능 첨부 복호 심볼 출력부(61) 각각의 기능은 컴퓨터 프로그램으로서 제공하는 것도 가능하다. 또한 이 컴퓨터 프로그램을 반송파에 실어 전파시키는 것도 가능하다.
본 발명은 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법, 화상 복호 방법, 화상 부호화 프로그램 및 화상 복호 프로그램으로서 이용 가능하다.

Claims (46)

  1. 부호화 대상 화상을 소정 사이즈의 매크로 블록으로 분할하고, 상기 매크로 블록을 매크로 블록 타입에 기초하여 특정되는 소정의 형상 및 사이즈의 블록으로 분할하고, 상기 블록을 단위로 하여 움직임 보상 예측을 하여 움직임 벡터를 출력하는 움직임 검출부와,
    상기 움직임 검출부에 의해서 출력된 상기 움직임 벡터에 기초하여 참조 화상으로부터 예측 화상을 생성하는 움직임 보상부와,
    상기 움직임 보상부에 의해서 생성된 상기 예측 화상과 상기 부호화 대상 화상의 차분 연산을 행하고 예측 잔차(殘差) 화상을 출력하는 감산부와,
    상기 감산부에 의해서 출력된 상기 예측 잔차 화상을 소정의 변환 블록을 단위로 하여 변환 부호화하여 변환 계수를 출력하는 변환부와,
    상기 변환부에 의해서 출력된 상기 변환 계수를 양자화 계수에 기초하여 양자화하여 양자화 변환 계수를 출력하는 양자화부와,
    상기 움직임 검출부에 의해서 출력된 상기 움직임 벡터와 상기 매크로 블록과 상기 양자화 계수와 상기 양자화부에 의해서 출력된 상기 양자화 변환 계수를 포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 출력하는 부호화부를 구비하는 화상 부호화 장치로서,
    상기 부호화부는 상기 부호화 관련 정보를 기억하는 부호화 심볼 메모리와, 1개 또는 복수 종류의 부호화 수순을 제공하는 부호화 수순 제공부와, 상기 부호화심볼 메모리에 격납되어 있는 부호화 관련 정보를 이용하여, 소정의 부호화 수순 선택 기준에 기초하여, 상기 부호화 수순 제공부가 제공하는 어느 하나의 부호화 수순을 선택하고, 선택된 부호화 수순에 기초하여 상기 부호화 관련 정보를 압축 부호화하여 부호화 데이터를 출력하는 부호화 데이터 출력부를 구비하는 것을 특징으로 하는, 화상 부호화 장치.
  2. 제 1 항에 있어서, 상기 부호화부는 상기 매크로 블록 내의 각각의 상기 변환 블록에 대하여, 비영(非零)인 상기 양자화 변환 계수가 존재하는지의 여부를 나타내는 비영 계수 존재 플래그를 포함하는 부호화 블록 패턴 정보를 압축 부호화하는 기능을 구비하고,
    상기 부호화 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 부호화 블록 패턴 정보를 부호화할 때에 상기 부호화 대상 매크로 블록의 주위 매크로 블록과 상기 부호화 대상 매크로 블록과의 사이에서 상기 부호화 블록 패턴 정보의 공간적 상관이 높아질수록 부호 길이가 짧아지는 부호화 수순을 제공하는 것을 특징으로 하는, 화상 부호화 장치.
  3. 제 1 항에 있어서, 상기 부호화 수순 제공부는 상기 부호화 대상 매크로 블록의 주위 매크로 블록에 있어서의 매크로 블록 타입이 상기 부호화 대상 매크로 블록을 가장 많은 블록으로 분할하는 것을 나타내는 매크로 블록 타입인 경우에는 상기 부호화 대상 매크로 블록 내의 모든 부호화 블록은 비영인 양자화 변환 계수를 가지는 것을 나타내는 부호화 블록 패턴 정보를 가지는 것으로 하고, 상기 부호화 대상 매크로 블록에 있어서의 부호화 블록 패턴 정보를 부호화할 때에 상기 부호화 대상 매크로 블록의 주위 매크로 블록과 상기 부호화 대상 매크로 블록의 사이에서 상기 부호화 블록 패턴 정보의 공간적 상관이 높아질수록 부호 길이가 짧아지는 부호화 수순을 제공하는 것을 특징으로 하는, 화상 부호화 장치.
  4. 제 1 항에 있어서, 상기 부호화 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 부호화 블록 패턴 정보를 부호화할 때에 상기 부호화 대상 매크로 블록에 있어서의 양자화 계수의 크기가 미리 설정된 임계치보다 큰 경우에는 비영인 양자화 변환 계수를 포함하는 블록수가 보다 적은 것을 나타내는 상기 부호화 블록 패턴 정보에 대하여 부호 길이가 보다 짧아지는 부호화 수순을 제공하는 것을 특징으로 하는, 화상 부호화 장치.
  5. 제 1 항에 있어서, 상기 부호화 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 부호화 블록 패턴 정보를 부호화할 때에 상기 부호화 대상 매크로 블록의 주위 매크로 블록에 포함되는 블록수가 많을수록 부호 길이의 치우침이 작아지는 부호화 수순을 제공하는 것을 특징으로 하는, 화상 부호화 장치.
  6. 제 1 항에 있어서, 상기 부호화 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 양자화 변환 계수를 부호화할 때에 상기 부호화 대상 매크로블록의 주위 매크로 블록에 있어서의 상기 양자화 변환 계수의 절대치가 클수록 부호 길이의 치우침이 작아지는 부호화 수순을 제공하는 것을 특징으로 하는, 화상 부호화 장치.
  7. 제 1 항에 있어서, 상기 부호화 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 매크로 블록 타입을 부호화할 때에 상기 부호화 대상 매크로 블록의 주위 매크로 블록과 상기 부호화 대상 매크로 블록의 사이에서 상기 매크로 블록 타입의 공간적 상관이 높아질수록 부호 길이가 짧아지는 부호화 수순을 제공하는 것을 특징으로 하는, 화상 부호화 장치.
  8. 제 1 항에 있어서, 상기 부호화 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 매크로 블록 타입을 부호화할 때에 보다 많은 블록을 포함하는 매크로 블록 타입에 대하여 부호 길이가 보다 짧아지는 부호화 수순을 제공하는 것을 특징으로 하는, 화상 부호화 장치.
  9. 제 1 항에 있어서, 상기 부호화부는 상기 블록 내의 상기 비영인 양자화 변환 계수의 수를 부호화하는 기능을 구비하고,
    상기 부호화 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 비영인 양자화 변환 계수의 수를 부호화할 때에 상기 부호화 대상 블록의 주위 블록에 있어서의 상기 비영인 양자화 변환 계수의 수가 미리 설정된 임계치보다 작은경우에는 상기 비영인 양자화 변환 계수의 수가 작을수록 부호 길이가 짧아지는 부호화 수순을 제공하는 것을 특징으로 하는, 화상 부호화 장치.
  10. 제 1 항에 있어서, 상기 부호화 심볼 메모리는 주위 블록으로부터 예측한 예측 움직임 벡터와 실제의 움직임 벡터의 차분치인 차분 움직임 벡터치를 보유하는 기능을 구비하고,
    상기 부호화 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 부호화 블록 패턴 정보를 부호화할 때에 상기 부호화 대상 매크로 블록의 주위 매크로 블록에 있어서의 차분 움직임 벡터치의 크기가 미리 설정된 임계치보다 큰 경우에는 비영인 양자화 변환 계수를 포함하는 블록수가 보다 많은 것을 나타내는 부호화 블록 패턴 정보에 대하여 부호 길이가 보다 짧아지는 부호화 수순을 제공하는 것을 특징으로 하는, 화상 부호화 장치.
  11. 제 1 항에 있어서, 상기 부호화 심볼 메모리는 주위 블록으로부터 예측한 예측 움직임 벡터와 실제의 움직임 벡터의 차분치인 차분 움직임 벡터치를 보유하는 기능을 구비하고,
    상기 부호화 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 차분 움직임 벡터치를 부호화할 때에 상기 부호화 대상 블록의 주위 블록에 있어서의 차분 움직임 벡터치의 크기가 미리 설정된 임계치보다 작은 경우에는, 보다 작은 차분 움직임 벡터치에 대하여 부호 길이가 보다 짧아지는 부호화 수순을 제공하는 것을 특징으로 하는, 화상 부호화 장치.
  12. 제 1 항에 있어서, 상기 부호화 심볼 메모리는 주위 블록으로부터 예측한 예측 움직임 벡터와 실제의 움직임 벡터의 차분치인 차분 움직임 벡터치를 보유하는 기능을 구비하고,
    상기 부호화 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 매크로 블록 타입을 부호화할 때에 상기 부호화 대상 블록의 주위 블록에 있어서의 차분 움직임 벡터치의 크기가 미리 설정된 임계치보다 큰 경우에는, 보다 많은 블록을 포함하는 매크로 블록 타입에 대하여 부호 길이가 보다 짧아지는 부호화 수순을 제공하는 것을 특징으로 하는, 화상 부호화 장치.
  13. 부호화 대상 화상 또는 상기 부호화 대상 화상에 기초하여 생성된 예측 잔차 화상을 소정의 변환 블록으로 분할하고, 상기 부호화 대상 화상 또는 상기 예측 잔차 화상을 상기 변환 블록을 단위로 하여 변환 부호화하여 변환 계수를 출력하는 변환부와,
    상기 변환부에 의해서 출력된 상기 변환 계수를 양자화 계수에 기초하여 양자화하여 양자화 변환 계수를 출력하는 양자화부와,
    상기 양자화 계수와 상기 양자화부에 의해서 출력된 상기 양자화 변환 계수를 포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 출력하는 부호화부를 구비하는 화상 부호화 장치로서,
    상기 부호화부는 상기 부호화 대상 블록 내의 상기 양자화 변환 계수를 주파수에 따라서 1차원 계열로 변환하고, 상기 1차원 계열에 있어서의 상기 양자화 변환 계수의 절대치가 O이 되는 계수의 연속수인 제로런(zero run)치와 상기 양자화 변환 계수의 절대치인 레벨치와 상기 양자화 변환 계수의 양음을 나타내는 양음 부호를 부호화하는 기능을 구비하고, 상기 부호화 관련 정보를 기억하는 부호화 심볼 메모리와, 1개 또는 복수 종류의 부호화 수순을 제공하는 부호화 수순 제공부와, 상기 부호화 심볼 메모리에 격납되어 있는 부호화 관련 정보를 이용하여, 소정의 부호화 수순 선택 기준에 기초하여, 상기 부호화 수순 제공부가 제공하는 어느 하나의 부호화 수순을 선택하고, 선택된 부호화 수순에 기초하여 상기 부호화 관련 정보를 압축 부호화하여 부호화 데이터를 출력하는 부호화 데이터 출력부를 구비하는 것을 특징으로 하는, 화상 부호화 장치.
  14. 제 13 항에 있어서, 상기 부호화 수순 제공부는 상기 레벨치를 부호화할 때에 부호화 대상 레벨치의 근방의 주파수에 있어서의 레벨치에 의해 가까운 값에 대하여 부호 길이가 보다 짧아지는 부호화 수순을 제공하는 것을 특징으로 하는, 화상 부호화 장치.
  15. 제 13 항에 있어서, 상기 부호화 수순 제공부는 상기 레벨치를 부호화할 때에 부호화 대상 레벨치의 근방의 주파수에 있어서의 제로런치가 미리 설정된 임계치보다 큰 경우에는 작은 레벨치일수록 부호 길이가 짧아지는 부호화 수순을 제공하는 것을 특징으로 하는, 화상 부호화 장치.
  16. 제 13 항에 있어서, 상기 부호화 수순 제공부는 상기 레벨치를 부호화할 때에 부호화 대상 레벨치의 주파수 대역이 클수록 부호 길이의 치우침이 커지는 부호화 수순을 제공하는 것을 특징으로 하는, 화상 부호화 장치.
  17. 제 13 항에 있어서, 상기 부호화 수순 제공부는 상기 레벨치를 부호화할 때에 부호화 대상 레벨치의 근방의 주파수에 있어서의 레벨치가 작을수록 부호 길이의 치우침이 작아지는 부호화 수순을 제공하는 것을 특징으로 하는, 화상 부호화 장치.
  18. 제 13 항에 있어서, 상기 부호화 수순 제공부는 상기 제로런치를 부호화할 때에 부호화 대상 제로런치의 근방의 주파수에 있어서의 레벨치가 작을수록 부호 길이의 치우침이 커지는 부호화 수순을 제공하는 것을 특징으로 하는, 화상 부호화 장치.
  19. 제 13 항에 있어서, 상기 부호화부는 상기 부호화 대상 블록 내의 비영인 양자화 변환 계수의 수를 압축 부호화하는 기능을 구비하고, 상기 부호화 대상 블록의 비영인 양자화 계수의 수가 미리 설정된 임계치보다 작은 경우에는 상기 레벨치 및 상기 제로런치를 저주파 성분으로부터 차례로 부호화하고, 상기 부호화 대상 블록의 비영인 양자화 계수의 수가 미리 설정된 임계치보다 큰 경우에는 상기 레벨치 및 상기 제로런치를 고주파 성분으로부터 차례로 부호화하는 것을 특징으로 하는, 화상 부호화 장치.
  20. 부호화 대상 화상이 소정 사이즈의 매크로 블록으로 분할되고, 상기 매크로 블록이 매크로 블록 타입에 기초하여 특정되는 소정의 형상 및 사이즈의 블록으로 분할되고, 상기 블록을 단위로 하여 움직임 보상 예측이 행해져 출력된 움직임 벡터와, 상기 움직임 벡터에 기초하여 참조 화상으로부터 예측 화상이 생성되고, 상기 예측 화상과 상기 부호화 대상 화상의 차분 연산이 행해지고 예측 화상이 출력되고, 상기 예측 잔차 화상이 소정의 변환 블록을 단위로 하여 변환 부호화되어 변환 계수가 출력되고, 상기 변환 계수가 양자화 계수에 기초하여 양자화된 양자화 변환 계수와, 상기 매크로 블록 타입과, 상기 양자화 계수를 포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 복호하는 복호부를 구비한 화상 복호 장치로서,
    상기 복호부는 복호가 완료된 상기 부호화 관련 정보를 기억하는 복호 심볼 메모리와, 1개 또는 복수 종류의 복호 수순을 제공하는 복호 수순 제공부와, 상기 복호 심볼 메모리에 격납되어 있는 복호가 완료된 부호화 관련 정보를 이용하여, 소정의 복호 수순 선택 기준에 기초하여, 상기 복호 수순 제공부가 제공하는 어느 하나의 복호 수순으로서 복호 대상이 되는 부호화 관련 정보의 부호화에 사용된 부호화 수순에 대응하는 복호 수순을 선택하여, 선택된 복호 수순에 기초하여 상기부호화 관련 정보를 복호하여 복호 데이터를 출력하는 복호 데이터 출력부를 구비하는 것을 특징으로 하는, 화상 복호 장치.
  21. 제 20 항에 있어서, 상기 복호부는 상기 매크로 블록 내의 각각의 상기 변환 블록에 대하여, 비영인 상기 양자화 변환 계수가 존재하는지의 여부를 나타내는 비영 계수 존재 플래그를 포함하는 부호화 블록 패턴 정보를 복호하는 기능을 구비하고,
    상기 복호 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 부호화 블록 패턴 정보를 복호할 때에 상기 부호화 대상 매크로 블록의 주위 매크로 블록과 상기 부호화 대상 매크로 블록의 사이에서 상기 부호화 블록 패턴 정보의 공간적 상관이 높아질수록 부호 길이가 짧아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공하는 것을 특징으로 하는, 화상 복호 장치.
  22. 제 20 항에 있어서, 상기 복호 수순 제공부는 상기 부호화 대상 매크로 블록의 주위 매크로 블록에 있어서의 매크로 블록 타입이 상기 부호화 대상 매크로 블록을 가장 많은 블록으로 분할하는 것을 나타내는 매크로 블록 타입인 경우에는 상기 부호화 대상 매크로 블록내의 모든 부호화 블록은 비영인 양자화 변환 계수를 가지는 것을 나타내는 부호화 블록 패턴 정보를 가지는 것으로 하고, 상기 부호화 대상 매크로 블록에 있어서의 부호화 블록 패턴 정보를 복호할 때에 상기 부호화 대상 매크로 블록의 주위 매크로 블록과 상기 부호화 대상 매크로 블록의 사이에서상기 부호화 블록 패턴 정보의 공간적 상관이 높아질수록 부호 길이가 짧아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공하는 것을 특징으로 하는, 화상 복호 장치.
  23. 제 20 항에 있어서, 상기 복호 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 부호화 블록 패턴 정보를 복호할 때에 상기 부호화 대상 매크로 블록에 있어서의 양자화 계수의 크기가 미리 설정된 임계치보다 큰 경우에는 비영인 양자화 변환 계수를 포함하는 블록수가 보다 적은 것을 나타내는 상기 부호화 블록 패턴 정보에 대하여 부호 길이가 보다 짧아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공하는 것을 특징으로 하는, 화상 복호 장치.
  24. 제 20 항에 있어서, 상기 복호 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 부호화 블록 패턴 정보를 복호할 때에 상기 부호화 대상 매크로 블록의 주위 매크로 블록에 포함되는 블록수가 많을수록 부호 길이의 치우침이 작아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공하는 것을 특징으로 하는, 화상 복호 장치.
  25. 제 20 항에 있어서, 상기 복호 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 양자화 변환 계수를 복호할 때에 상기 부호화 대상 매크로 블록의 주위 매크로 블록에 있어서의 상기 양자화 변환 계수의 절대치가 클수록 부호길이의 치우침이 작아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공하는 것을 특징으로 하는, 화상 복호 장치.
  26. 제 20 항에 있어서, 상기 복호 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 매크로 블록 타입을 복호할 때에 상기 부호화 대상 매크로 블록의 주위 매크로 블록과 상기 부호화 대상 매크로 블록의 사이에서 상기 매크로 블록 타입의 공간적 상관이 높아질수록 부호 길이가 짧아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공하는 것을 특징으로 하는, 화상 복호 장치.
  27. 제 20 항에 있어서, 상기 복호 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 매크로 블록 타입을 복호할 때에 보다 많은 블록을 포함하는 매크로 블록 타입에 대하여 부호 길이가 보다 짧아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공하는 것을 특징으로 하는, 화상 복호 장치.
  28. 제 20 항에 있어서, 상기 복호부는 상기 블록 내의 상기 비영인 양자화 변환 계수의 수를 복호하는 기능을 구비하고,
    상기 복호 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 비영인 양자화 변환 계수의 수를 복호할 때에 상기 부호화 대상 블록의 주위 블록에 있어서의 상기 비영인 양자화 변환 계수의 수가 미리 설정된 임계치보다 작은 경우에는 상기 비영인 양자화 변환 계수의 수가 작을수록 부호 길이가 짧아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공하는 것을 특징으로 하는, 화상 복호 장치.
  29. 제 20 항에 있어서, 상기 복호 심볼 메모리는 주위 블록으로부터 예측한 예측 움직임 벡터와 실제의 움직임 벡터의 차분치인 차분 움직임 벡터치를 보유하는 기능을 구비하고,
    상기 복호 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 부호화 블록 패턴 정보를 복호할 때에 상기 부호화 대상 매크로 블록의 주위 매크로 블록에 있어서의 차분 움직임 벡터치의 크기가 미리 설정된 임계치보다 큰 경우에는 비영인 양자화 변환 계수를 포함하는 블록수가 보다 많은 것을 나타내는 부호화 블록 패턴 정보에 대하여 부호 길이가 보다 짧아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공하는 것을 특징으로 하는, 화상 복호 장치.
  30. 제 20 항에 있어서, 상기 복호 심볼 메모리는 주위 블록으로부터 예측한 예측 움직임 벡터와 실제의 움직임 벡터의 차분치인 차분 움직임 벡터치를 보유하는 기능을 구비하고,
    상기 복호 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 차분 움직임 벡터치를 복호할 때에 상기 부호화 대상 블록의 주위 블록에 있어서의 차분 움직임 벡터치의 크기가 미리 설정된 임계치보다 작은 경우에는, 보다 작은 차분 움직임 벡터치에 대하여 부호 길이가 보다 짧아지도록 제공된 부호화 수순에대응하는 복호 수순을 제공하는 것을 특징으로 하는, 화상 복호 장치.
  31. 제 20 항에 있어서, 상기 복호 심볼 메모리는 주위 블록으로부터 예측한 예측 움직임 벡터와 실제의 움직임 벡터의 차분치인 차분 움직임 벡터치를 보유하는 기능을 구비하고,
    상기 복호 수순 제공부는 상기 부호화 대상 매크로 블록에 있어서의 상기 매크로 블록 타입을 복호할 때에 상기 부호화 대상 블록의 주위 블록에 있어서의 차분 움직임 벡터치의 크기가 미리 설정된 임계치보다 큰 경우에는, 보다 많은 블록을 포함하는 매크로 블록 타입에 대하여 부호 길이가 보다 짧아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공하는 것을 특징으로 하는, 화상 복호 장치.
  32. 부호화 대상 화상 또는 상기 부호화 대상 화상에 기초하여 생성된 예측 잔차 화상을 소정의 변환 블록으로 분할하고, 상기 부호화 대상 화상 또는 상기 예측 잔차 화상을 상기 변환 블록을 단위로 하여 변환 부호화하여 변환 계수를 출력하고, 출력된 상기 변환 계수를 양자화 계수에 기초하여 양자화하여 출력된 양자화 변환 계수와, 상기 양자화 계수를 포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 복호하는 복호부를 구비하는 화상 복호 장치로서,
    상기 복호부는 상기 부호화 대상 블록 내의 상기 양자화 변환 계수를 주파수에 따라서 1차원 계열로 변환하고, 상기 1차원 계열에 있어서의 상기 양자화 변환 계수의 절대치가 O이 되는 계수의 연속수인 제로런치와 상기 양자화 변환 계수의절대치인 레벨치와 상기 양자화 변환 계수의 양음을 나타내는 양음 부호를 복호하는 기능을 구비하고, 복호가 완료된 상기 부호화 관련 정보를 기억하는 복호 심볼 메모리와, 1개 또는 복수 종류의 복호 수순을 제공하는 복호 수순 제공부와, 상기 복호 심볼 메모리에 격납되어 있는 복호가 완료된 부호화 관련 정보를 이용하여, 소정의 부호화 수순 선택 기준에 기초하여, 상기 복호 수순 제공부가 제공하는 어느 하나의 복호 수순으로서 복호 대상이 되는 부호화 관련 정보의 부호화에 사용된 부호화 수순에 대응하는 복호 수순을 선택하고, 선택된 복호 수순에 기초하여 상기 부호화 관련 정보를 복호하여 복호 데이터를 출력하는 복호 데이터 출력부를 구비하는 것을 특징으로 하는, 화상 복호 장치.
  33. 제 32 항에 있어서, 상기 복호 수순 제공부는 상기 레벨치를 복호할 때에 부호화 대상 레벨치의 근방의 주파수에 있어서의 레벨치에 의해 가까운 값에 대하여 부호 길이가 보다 짧아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공하는 것을 특징으로 하는, 화상 복호 장치.
  34. 제 32 항에 있어서, 상기 복호 수순 제공부는 상기 레벨치를 복호할 때에 부호화 대상 레벨치의 근방의 주파수에 있어서의 제로런치가 미리 설정된 임계치보다 큰 경우에는 작은 레벨치일수록 부호 길이가 짧아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공하는 것을 특징으로 하는, 화상 복호 장치.
  35. 제 32 항에 있어서, 상기 복호 수순 제공부는 상기 레벨치를 복호할 때에 부호화 대상 레벨치의 주파수 대역이 클수록 부호 길이의 치우침이 커지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공하는 것을 특징으로 하는, 화상 복호 장치.
  36. 제 32 항에 있어서, 상기 복호 수순 제공부는 상기 레벨치를 복호할 때에 부호화 대상 레벨치의 근방의 주파수에 있어서의 레벨치가 작을수록 부호 길이의 치우침이 작아지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공하는 것을 특징으로 하는, 화상 복호 장치.
  37. 제 32 항에 있어서, 상기 복호 수순 제공부는 상기 제로런치를 복호할 때에 부호화 대상 제로런치의 근방의 주파수에 있어서의 레벨치가 작을수록 부호 길이의 치우침이 커지도록 제공된 부호화 수순에 대응하는 복호 수순을 제공하는 것을 특징으로 하는, 화상 복호 장치.
  38. 제 32 항에 있어서, 상기 복호부는 상기 부호화 대상 블록 내의 비영인 양자화 변환 계수의 수를 복호하는 기능을 구비하고, 상기 부호화 대상 블록의 비영인 양자화 계수의 수가 미리 설정된 임계치보다 작은 경우에는 상기 레벨치 및 상기 제로런치를 저주파 성분으로부터 차례로 복호하고, 상기 부호화 대상 블록의 비영인 양자화 계수의 수가 미리 설정된 임계치보다 큰 경우에는 상기 레벨치 및 상기제로런치를 고주파 성분으로부터 차례로 복호하는 것을 특징으로 하는, 화상 복호 장치.
  39. 부호화 대상 화상을 소정 사이즈의 매크로 블록으로 분할되고, 상기 매크로 블록을 매크로 블록 타입에 기초하여 특정되는 소정의 형상 및 사이즈의 블록으로 분할되고, 상기 블록을 단위로 하여 움직임 보상 예측을 하여 움직임 벡터를 출력하는 움직임 검출 스텝과,
    상기 움직임 검출 스텝에 있어서 출력된 상기 움직임 벡터에 기초하여 참조 화상으로부터 예측 화상을 생성하는 움직임 보상 스텝과,
    상기 움직임 보상 스텝에 있어서 생성된 상기 예측 화상과 상기 부호화 대상 화상과의 차분 연산을 행하고 예측 잔차 화상을 출력하는 감산 스텝과,
    상기 감산 스텝에 있어서 출력된 상기 예측 잔차 화상을 소정의 변환 블록을 단위로 하여 변환 부호화하여 변환 계수를 출력하는 변환 스텝과,
    상기 변환 스텝에 있어서 출력된 상기 변환 계수를 양자화 계수에 기초하여 양자화하여 양자화 변환 계수를 출력하는 양자화 스텝과,
    상기 움직임 검출 스텝에 있어서 출력된 상기 움직임 벡터와 상기 매크로 블록 타입과 상기 양자화 계수와 상기 양자화 스텝에 있어서 출력된 상기 양자화 변환 계수를 포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 출력하는 부호화 스텝을 구비하는 화상 부호화 방법으로서,
    상기 부호화 스텝은 1개 또는 복수 종류의 부호화 수순을 준비해 두고, 부호화 심볼 메모리에 격납되어 있는 부호화 관련 정보를 이용하여, 소정의 부호화 수순 선택 기준에 기초하여, 상기 1개 또는 복수 종류의 부호화 수순 중에서 어느 하나의 부호화 수순을 선택하고, 선택된 부호화 수순에 기초하여 상기 부호화 관련 정보를 압축 부호화하여 부호화 데이터를 출력하는 것을 특징으로 하는 화상 부호화 방법.
  40. 부호화 대상 화상 또는 상기 부호화 대상 화상에 기초하여 생성된 예측 잔차 화상을 소정의 변환 블록으로 분할하고, 상기 부호화 대상 화상 또는 상기 예측 잔차 화상을 상기 변환 블록을 단위로 하여 변환 부호화하여 변환 계수를 출력하는 변환 스텝과,
    상기 변환 스텝에 있어서 출력된 상기 변환 계수를 양자화 계수에 기초하여 양자화하여 양자화 변환 계수를 출력하는 양자화 스텝과,
    상기 양자화 계수와 상기 양자화 스텝에 있어서 출력된 상기 양자화 변환 계수를 포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 출력하는 부호화 스텝을 구비하는 화상 부호화 방법으로서,
    상기 부호화 스텝은 상기 부호화 대상 블록 내의 상기 양자화 변환 계수를 주파수에 따라서 1차원 계열로 변환하고, 상기 1차원 계열에 있어서의 상기 양자화 변환 계수의 절대치가 O이 되는 계수의 연속수인 제로런치와 상기 양자화 변환 계수의 절대치인 레벨치와 상기 양자화 변환 계수의 양음을 나타내는 양음 부호를 부호화하는 스텝이고, 1개 또는 복수 종류의 부호화 수순을 준비해 두고, 부호화 심볼 메모리에 격납되어 있는 부호화 관련 정보를 이용하여, 소정의 부호화 수순 선택 기준에 기초하여, 상기 1개 또는 복수 종류의 부호화 수순 중에서 어느 하나의 부호화 수순을 선택하고, 선택된 부호화 수순에 기초하여 상기 부호화 관련 정보를 압축 부호화하여 부호화 데이터를 출력하는 것을 특징으로 하는 화상 부호화 방법.
  41. 부호화 대상 화상이 소정 사이즈의 매크로 블록으로 분할되고, 상기 매크로 블록이 매크로 블록 타입에 기초하여 특정되는 소정의 형상 및 사이즈의 블록으로 분할되고, 상기 블록을 단위로 하여 움직임 보상 예측이 행해져 출력된 움직임 벡터와, 상기 움직임 벡터에 기초하여 참조 화상으로부터 예측 화상이 생성되고, 상기 예측 화상과 상기 부호화 대상 화상의 차분 연산이 행해지고 예측 화상이 출력되고, 상기 예측 잔차 화상이 소정의 변환 블록을 단위로 하여 변환 부호화되어 변환 계수가 출력되고, 상기 변환 계수가 양자화 계수에 기초하여 양자화된 양자화 변환 계수와, 상기 매크로 블록 타입과, 상기 양자화 계수를 포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 복호하는 복호 스텝을 구비한 화상 복호 방법으로서,
    상기 복호 스텝은 1개 또는 복수 종류의 복호 수순을 준비해 두고, 복호 심볼 메모리에 격납되어 있는 복호가 완료된 부호화 관련 정보를 이용하여, 소정의 복호 수순 선택 기준에 기초하여, 상기 1개 또는 복수 종류의 복호 수순 중에서 어느 하나의 복호 수순으로서 복호 대상이 되는 부호화 관련 정보의 부호화에 사용된 부호화 수순에 대응하는 복호 수순을 선택하고, 선택된 복호 수순에 기초하여 상기부호화 관련 정보를 복호하여 복호 데이터를 출력하는 것을 특징으로 하는 화상 복호 방법.
  42. 부호화 대상 화상 또는 상기 부호화 대상 화상에 기초하여 생성된 예측 잔차 화상을 소정의 변환 블록으로 분할하고, 상기 부호화 대상 화상 또는 상기 예측 잔차 화상을 상기 변환 블록을 단위로 하여 변환 부호화하여 변환 계수를 출력하고, 출력된 상기 변환 계수를 양자화 계수에 기초하여 양자화하여 출력된 양자화 변환 계수와, 상기 양자화 계수를 포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 복호하는 복호 스텝을 구비하는 화상 복호 방법으로서,
    상기 복호 스텝은 상기 부호화 대상 블록 내의 상기 양자화 변환 계수를 주파수에 따라서 1차원 계열로 변환하고, 상기 1차원 계열에 있어서의 상기 양자화 변환 계수의 절대치가 0이 되는 계수의 연속수인 제로런치와 상기 양자화 변환 계수의 절대치인 레벨치와 상기 양자화 변환 계수의 양음을 나타내는 양음 부호를 복호하는 스텝으로서, 1개 또는 복수 종류의 복호 수순을 준비해 두고, 복호 심볼 메모리에 격납되어 있는 복호가 완료된 부호화 관련 정보를 이용하고, 소정의 부호화 수순 선택 기준에 기초하여, 상기 1개 또는 복수 종류의 복호 수순 중에서 어느 하나의 복호 수순으로서 복호 대상이 되는 부호화 관련 정보의 부호화에 사용된 부호화 수순에 대응하는 복호 수순을 선택하고, 선택된 복호 수순에 기초하여 상기 부호화 관련 정보를 복호하여 복호 데이터를 출력하는 것을 특징으로 하는 화상 복호 방법.
  43. 컴퓨터를,
    부호화 대상 화상을 소정 사이즈의 매크로 블록으로 분할하고, 상기 매크로 블록을 매크로 블록 타입에 기초하여 특정되는 소정의 형상 및 사이즈의 블록으로 분할하고, 상기 블록을 단위로 하여 움직임 보상 예측을 하여 움직임 벡터를 출력하는 움직임 검출 수단과,
    상기 움직임 검출 수단에 의해서 출력된 상기 움직임 벡터에 기초하여 참조 화상으로부터 예측 화상을 생성하는 움직임 보상 수단과,
    상기 움직임 보상 수단에 의해서 생성된 상기 예측 화상과 상기 부호화 대상 화상과의 차분 연산을 행하고 예측 잔차 화상을 출력하는 감산 수단과,
    상기 감산 수단에 의해서 출력된 상기 예측 잔차 화상을 소정의 변환 블록을 단위로 하여 변환 부호화하여 변환 계수를 출력하는 변환 수단과,
    상기 변환 수단에 의해서 출력된 상기 변환 계수를 양자화 계수에 기초하여 양자화하여 양자화 변환 계수를 출력하는 양자화 수단과,
    상기 움직임 검출 수단에 의해서 출력된 상기 움직임 벡터와 상기 매크로 블록 타입과 상기 양자화 계수와 상기 양자화 수단에 의해서 출력된 상기 양자화 변환 계수를 포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 출력하는 부호화 수단으로서 기능시키는 화상 부호화 프로그램으로서,
    상기 부호화 수단은 1개 또는 복수 종류의 부호화 수순을 제공하는 부호화 수순 제공 수단과, 부호화 심볼 메모리에 격납되어 있는 부호화 관련 정보를 이용하여, 소정의 부호화 수순 선택 기준에 기초하여, 상기 부호화 수순 제공 수단이 제공하는 어느 하나의 부호화 수순을 선택하고, 선택된 부호화 수순에 기초하여 상기 부호화 관련 정보를 압축 부호화하여 부호화 데이터를 출력하는 부호화 데이터 출력 수단을 구비하는 것을 특징으로 하는 화상 부호화 프로그램.
  44. 컴퓨터를,
    부호화 대상 화상 또는 상기 부호화 대상 화상에 기초하여 생성된 예측 잔차 화상을 소정의 변환 블록으로 분할하고, 상기 부호화 대상 화상 또는 상기 예측 잔차 화상을 상기 변환 블록을 단위로 하여 변환 부호화하여 변환 계수를 출력하는 변환 수단과,
    상기 변환 수단에 의해서 출력된 상기 변환 계수를 양자화 계수에 기초하여 양자화하여 양자화 변환 계수를 출력하는 양자화 수단과,
    상기 양자화 계수와 상기 양자화 수단에 의해서 출력된 상기 양자화 변환 계수를 포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 출력하는 부호화 수단으로서 기능시키는 화상 부호화 프로그램으로서,
    상기 부호화 수단은 상기 부호화 대상 블록 내의 상기 양자화 변환 계수를 주파수에 따라서 1차원 계열로 변환하고, 상기 1차원 계열에 있어서의 상기 양자화 변환 계수의 절대치가 0이 되는 계수의 연속수인 제로런치와 상기 양자화 변환 계수의 절대치인 레벨치와 상기 양자화 변환 계수의 양음을 나타내는 양음 부호를 부호화하는 수단을 구비하고, 1개 또는 복수 종류의 부호화 수순을 제공하는 부호화수순 제공 수단과, 부호화 심볼 메모리에 격납되어 있는 부호화 관련 정보를 이용하고, 소정의 부호화 수순 선택 기준에 기초하여, 상기 부호화 수순 제공 수단이 제공하는 어느 하나의 부호화 수순을 선택하고, 선택된 부호화 수순에 기초하여 상기 부호화 관련 정보를 압축 부호화하여 부호화 데이터를 출력하는 부호화 데이터 출력 수단을 구비하는 것을 특징으로 하는 화상 부호화 프로그램.
  45. 컴퓨터를,
    부호화 대상 화상이 소정 사이즈의 매크로 블록으로 분할되고, 상기 매크로 블록이 매크로 블록 타입에 기초하여 특정되는 소정의 형상 및 사이즈의 블록으로 분할되고, 상기 블록을 단위로 하여 움직임 보상 예측이 행해져 출력된 움직임 벡터와, 상기 움직임 벡터에 기초하여 참조 화상으로부터 예측 화상이 생성되고, 상기 예측 화상과 상기 부호화 대상 화상과의 차분 연산이 행해지고 예측 화상이 출력되고, 상기 예측 잔차 화상이 소정의 변환 블록을 단위로 하여 변환 부호화되어 변환 계수가 출력되고, 상기 변환 계수가 양자화 계수에 기초하여 양자화된 양자화 변환 계수와, 상기 매크로 블록 타입과, 상기 양자화 계수를 포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 복호하는 복호 수단으로서 기능시키는 화상 복호 프로그램으로서,
    상기 복호 수단은 1개 또는 복수 종류의 복호 수순을 제공하는 복호 수순 제공 수단과, 복호 심볼 메모리에 격납되어 있는 복호가 완료된 부호화 관련 정보를 이용하여, 소정의 복호 수순 선택 기준에 기초하여, 상기 복호 수순 제공 수단이제공하는 어느 하나의 복호 수순이고 복호 대상이 되는 부호화 관련 정보의 부호화에 사용된 부호화 수순에 대응하는 복호 수순을 선택하고, 선택된 복호 수순에 기초하여 상기 부호화 관련 정보를 복호하는 복호 데이터를 출력하는 복호 데이터 출력 수단을 구비하는 것을 특징으로 하는 화상 복호 프로그램.
  46. 컴퓨터를,
    부호화 대상 화상 또는 상기 부호화 대상 화상에 기초하여 생성된 예측 잔차 화상을 소정의 변환 블록으로 분할하고, 상기 부호화 대상 화상 또는 상기 예측 잔차 화상을 상기 변환 블록을 단위로 하여 변환 부호화하여 변환 계수를 출력하고, 출력된 상기 변환 계수를 양자화 계수에 기초하여 양자화하여 출력된 양자화 변환 계수와, 상기 양자화 계수를 포함하는 부호화 관련 정보를 압축 부호화한 부호화 데이터를 복호하는 복호 수단으로서 기능시키는 화상 복호 프로그램으로서,
    상기 복호 수단은 상기 부호화 대상 블록 내의 상기 양자화 변환 계수를 주파수에 따라서 1차원 계열로 변환하고, 상기 1차원 계열에 있어서의 상기 양자화 변환 계수의 절대치가 0이 되는 계수의 연속수인 제로런치와 상기 양자화 변환 계수의 절대치인 레벨치와 상기 양자화 변환 계수의 양음을 나타내는 양음 부호를 복호하는 수단을 구비하고, 1개 또는 복수 종류의 복호 수순을 제공하는 복호 수순 제공 수단과, 복호 심볼 메모리에 격납되어 있는 부호화 관련 정보를 이용하여, 소정의 부호화 수순 선택 기준에 기초하여, 상기 복호 수순 제공 수단이 제공하는 어느 하나의 복호 수순으로서 복호 대상이 되는 부호화 관련 정보의 부호화에 사용된부호화 수순에 대응하는 복호 수순을 선택하고, 선택된 복호 수순에 기초하여 상기 부호화 관련 정보를 복호하여 복호 데이터를 출력하는 복호 데이터 출력 수단을 구비하는 것을 특징으로 하는, 화상 복호 프로그램.
KR20047001198A 2002-04-26 2003-04-25 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법, 화상 복호 방법, 화상 부호화 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 및 화상 복호 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 KR100627597B1 (ko)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
JPJP-P-2002-00127471 2002-04-26
JP2002127471 2002-04-26
JP2002127485 2002-04-26
JPJP-P-2002-00127485 2002-04-26
JP2002195158 2002-07-03
JP2002195162 2002-07-03
JPJP-P-2002-00195162 2002-07-03
JPJP-P-2002-00195158 2002-07-03
PCT/JP2003/005388 WO2004039083A1 (ja) 2002-04-26 2003-04-25 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法、画像符号化プログラム及び画像復号プログラム

Publications (2)

Publication Number Publication Date
KR20040068535A true KR20040068535A (ko) 2004-07-31
KR100627597B1 KR100627597B1 (ko) 2006-09-25

Family

ID=32180613

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20047001198A KR100627597B1 (ko) 2002-04-26 2003-04-25 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법, 화상 복호 방법, 화상 부호화 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 및 화상 복호 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체

Country Status (8)

Country Link
US (5) US7596279B2 (ko)
EP (3) EP2202989B1 (ko)
JP (1) JP3944225B2 (ko)
KR (1) KR100627597B1 (ko)
CN (1) CN100420308C (ko)
ES (1) ES2401991T3 (ko)
TW (1) TWI273832B (ko)
WO (1) WO2004039083A1 (ko)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011100347A2 (en) * 2010-02-09 2011-08-18 Vanguard Software Solutions, Inc. Video sequence encoding system and algorithms
US8665960B2 (en) 2007-09-07 2014-03-04 Vanguard Software Solutions, Inc. Real-time video coding/decoding
US8693551B2 (en) 2011-11-16 2014-04-08 Vanguard Software Solutions, Inc. Optimal angular intra prediction for block-based video coding
KR20140093909A (ko) * 2014-06-12 2014-07-29 에스케이텔레콤 주식회사 인터 예측을 이용한 영상 부호화 및 복호화 방법과 장치
KR101491591B1 (ko) * 2012-11-05 2015-02-09 주식회사 케이티 웹앱 가상화 서비스를 제공하는 가상화 서버 및 웹앱 가상화 서비스 제공을 위한 데이터 전송방법
US9106922B2 (en) 2012-12-19 2015-08-11 Vanguard Software Solutions, Inc. Motion estimation engine for video encoding
US9172963B2 (en) 2010-11-01 2015-10-27 Qualcomm Incorporated Joint coding of syntax elements for video coding

Families Citing this family (123)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100993443B1 (ko) * 2001-11-22 2010-11-09 파나소닉 주식회사 복호화 방법
EP1500281A2 (de) * 2002-05-02 2005-01-26 Fraunhofer-Gesellschaft Zur Förderung Der Angewandten Forschung E.V. Kodierung von transformations-koeffizienten in bild- oder videokodierern
US9351013B2 (en) * 2003-11-13 2016-05-24 Qualcomm Incorporated Selective and/or scalable complexity control for video codecs
US7573406B2 (en) * 2004-05-21 2009-08-11 Broadcom Corporation System and method for decoding context adaptive variable length coding
US7843997B2 (en) * 2004-05-21 2010-11-30 Broadcom Corporation Context adaptive variable length code decoder for decoding macroblock adaptive field/frame coded video data
US7570827B2 (en) * 2004-07-14 2009-08-04 Slipstream Data Inc. Method, system and computer program product for optimization of data compression with cost function
US7298297B1 (en) * 2004-08-18 2007-11-20 Mediatek Inc. Hardware-implemented Huffman decoder
US8548055B2 (en) * 2005-03-10 2013-10-01 Qualcomm Incorporated Encoding of multimedia data
KR100703770B1 (ko) * 2005-03-25 2007-04-06 삼성전자주식회사 가중 예측을 이용한 비디오 코딩 및 디코딩 방법, 이를위한 장치
US20070005553A1 (en) * 2005-06-30 2007-01-04 Ravi Sahita System for composite instrumented resource data
WO2007027011A1 (en) * 2005-07-15 2007-03-08 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding image
JP4534935B2 (ja) * 2005-10-04 2010-09-01 株式会社日立製作所 トランスコーダ、記録装置及びトランスコード方法
KR20070046752A (ko) * 2005-10-31 2007-05-03 엘지전자 주식회사 신호 처리 방법 및 장치
KR100791295B1 (ko) * 2006-01-12 2008-01-04 삼성전자주식회사 플래그 부호화 방법, 플래그 복호화 방법, 및 상기 방법을이용한 장치
US8306118B1 (en) * 2006-03-01 2012-11-06 Maxim Integrated, Inc. High quality low bitrate video coding by enabling and disabling a non-residual mode
EP1995967A4 (en) * 2006-03-16 2009-11-11 Huawei Tech Co Ltd METHOD AND APPARATUS FOR ADAPTIVE QUANTIFICATION IN AN ENCODING PROCEDURE
KR100809298B1 (ko) * 2006-06-22 2008-03-04 삼성전자주식회사 플래그 인코딩 방법, 플래그 디코딩 방법, 및 상기 방법을이용한 장치
KR100829169B1 (ko) * 2006-07-07 2008-05-13 주식회사 리버트론 H.264 코딩의 압축모드 예측 장치 및 방법
US8577171B1 (en) * 2006-07-31 2013-11-05 Gatan, Inc. Method for normalizing multi-gain images
KR20080035891A (ko) * 2006-10-20 2008-04-24 포스데이타 주식회사 움직임의 스마트 서치를 지원하는 영상 재생 장치 및 방법
US8315466B2 (en) * 2006-12-22 2012-11-20 Qualcomm Incorporated Decoder-side region of interest video processing
US8335261B2 (en) * 2007-01-08 2012-12-18 Qualcomm Incorporated Variable length coding techniques for coded block patterns
JP4901772B2 (ja) * 2007-02-09 2012-03-21 パナソニック株式会社 動画像符号化方法及び動画像符号化装置
EP3107292B1 (en) 2007-03-20 2018-08-15 Fujitsu Limited Video encoding method and apparatus, and video decoding apparatus
JP4964689B2 (ja) * 2007-06-25 2012-07-04 日本電信電話株式会社 画像符号化方法,画像復号方法,画像符号化装置,画像復号装置,画像符号化プログラム,画像復号プログラムおよびコンピュータ読み取り可能な記録媒体
JP5217270B2 (ja) * 2007-06-26 2013-06-19 ソニー株式会社 画像処理装置およびその方法、並びにプログラム
US8127233B2 (en) * 2007-09-24 2012-02-28 Microsoft Corporation Remote user interface updates using difference and motion encoding
US8619877B2 (en) * 2007-10-11 2013-12-31 Microsoft Corporation Optimized key frame caching for remote interface rendering
JP2009182623A (ja) * 2008-01-30 2009-08-13 Panasonic Corp 画像符号化方法
GB2457262A (en) * 2008-02-08 2009-08-12 Linear Algebra Technologies Compression / decompression of data blocks, applicable to video reference frames
EP2249572A4 (en) * 2008-03-07 2012-05-23 Toshiba Kk METHOD AND DEVICE FOR DYNAMIC IMAGE CODING / DECODING
JP5007259B2 (ja) * 2008-03-27 2012-08-22 ルネサスエレクトロニクス株式会社 画像符号化装置
JP5756921B2 (ja) * 2008-06-10 2015-07-29 パナソニックIpマネジメント株式会社 画像復号装置、画像復号方法、画像符号化装置、画像符号化方法、プログラムおよび集積回路
US8311116B2 (en) 2008-07-09 2012-11-13 Marvell World Trade Ltd. Method and apparatus for periodic structure handling for motion compensation
WO2010018992A2 (en) * 2008-08-12 2010-02-18 Lg Electronics Inc. Method of processing a video signal
JP5680283B2 (ja) * 2008-09-19 2015-03-04 株式会社Nttドコモ 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、動画像符号化プログラム、及び動画像復号プログラム
KR101377660B1 (ko) * 2008-09-30 2014-03-26 에스케이텔레콤 주식회사 복수 개의 움직임 벡터 추정을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
TWI482499B (zh) * 2008-10-03 2015-04-21 Ind Tech Res Inst 影像訊號處理裝置和方法
WO2010041858A2 (en) * 2008-10-06 2010-04-15 Lg Electronics Inc. A method and an apparatus for decoding a video signal
MX2011005749A (es) * 2008-12-03 2011-06-20 Nokia Corp Conmutacion entre modos de codificacion de coeficientes dct.
JP4834179B2 (ja) * 2008-12-09 2011-12-14 日本電信電話株式会社 符号化方法、その装置、プログラム及び記録媒体
US8044831B2 (en) * 2009-01-16 2011-10-25 Canon Kabushiki Kaisha Decoding apparatus and control method thereof
JP4866484B2 (ja) * 2009-01-23 2012-02-01 日本電信電話株式会社 パラメータ選択方法、パラメータ選択装置、プログラム及び記録媒体
KR101690291B1 (ko) * 2009-02-05 2016-12-27 톰슨 라이센싱 적응형 모드 비디오 인코딩 및 디코딩 방법 및 장치
JP5258664B2 (ja) 2009-04-14 2013-08-07 株式会社エヌ・ティ・ティ・ドコモ 画像符号化装置、方法およびプログラム、並びに、画像復号装置、方法およびプログラム
CA2904730C (en) * 2009-05-29 2023-11-21 Mitsubishi Electric Corporation Image encoding device, image decoding device, image encoding method, and image decoding method
WO2010143853A2 (ko) 2009-06-07 2010-12-16 엘지전자 주식회사 비디오 신호의 디코딩 방법 및 장치
US9635368B2 (en) 2009-06-07 2017-04-25 Lg Electronics Inc. Method and apparatus for decoding a video signal
JP5184447B2 (ja) * 2009-06-22 2013-04-17 株式会社Kddi研究所 動画像符号化装置および復号装置
KR101719382B1 (ko) * 2009-06-22 2017-03-23 톰슨 라이센싱 이미지 시퀀스에 대한 비디오 데이터의 일치 추적 기반 코딩을 위한 프로세스
JP2011024066A (ja) * 2009-07-17 2011-02-03 Sony Corp 画像処理装置および方法
KR101624649B1 (ko) * 2009-08-14 2016-05-26 삼성전자주식회사 계층적인 부호화 블록 패턴 정보를 이용한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
KR101441874B1 (ko) 2009-08-21 2014-09-25 에스케이텔레콤 주식회사 적응적 움직임 벡터 해상도를 이용한 영상 부호화/복호화 방법 및 장치
WO2011021914A2 (ko) 2009-08-21 2011-02-24 에스케이텔레콤 주식회사 적응적 움직임 벡터 해상도를 이용한 영상 부호화/복호화 방법 및 장치
TW201121335A (en) * 2009-12-02 2011-06-16 Sunplus Core Technology Co Ltd Method and apparatus for adaptively determining compression modes to compress frames
JP2013514718A (ja) 2009-12-17 2013-04-25 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 映像符号化の方法及び装置
JP5556996B2 (ja) * 2010-01-06 2014-07-23 ソニー株式会社 画像処理装置および方法
KR101703327B1 (ko) * 2010-01-14 2017-02-06 삼성전자 주식회사 계층적 데이터 단위의 패턴 정보를 이용하는 비디오 부호화 방법과 그 장치, 및 비디오 복호화 방법과 그 장치
JP5583992B2 (ja) * 2010-03-09 2014-09-03 パナソニック株式会社 信号処理装置
US8942282B2 (en) * 2010-04-12 2015-01-27 Qualcomm Incorporated Variable length coding of coded block pattern (CBP) in video compression
US20110249754A1 (en) * 2010-04-12 2011-10-13 Qualcomm Incorporated Variable length coding of coded block pattern (cbp) in video compression
HUE040296T2 (hu) 2010-04-13 2019-02-28 Ge Video Compression Llc Szignifikancia térképek és transzformációs együttható blokkok kódolása
KR20110135763A (ko) * 2010-06-11 2011-12-19 에스케이 텔레콤주식회사 문맥 모델링 방법 및 장치와 이를 이용한 영상 부호화/복호화 방법 및 장치
KR101181970B1 (ko) * 2010-07-09 2012-09-11 (주)에프씨아이 송수신데이터의 복호화 방법 및 장치
JP2012060376A (ja) * 2010-09-08 2012-03-22 Olympus Corp データ圧縮装置、データ復号装置、データ圧縮方法、データ復号方法およびデータ圧縮および復号システム
KR20120035096A (ko) * 2010-10-04 2012-04-13 한국전자통신연구원 쿼드 트리 변환 구조에서 부가 정보의 시그널링 방법 및 장치
US9532059B2 (en) 2010-10-05 2016-12-27 Google Technology Holdings LLC Method and apparatus for spatial scalability for video coding
CA2810899C (en) 2010-10-05 2016-08-09 General Instrument Corporation Coding and decoding utilizing adaptive context model selection with zigzag scan
US8787459B2 (en) * 2010-11-09 2014-07-22 Sony Computer Entertainment Inc. Video coding methods and apparatus
FR2968862A1 (fr) * 2010-12-13 2012-06-15 France Telecom Procedes de codage et de decodage d'une valeur n-aire, dispositifs et programme d'ordinateur correspondants.
WO2012080627A1 (fr) * 2010-12-13 2012-06-21 France Telecom Procedes de codage et de decodage d'une valeur n-aire, dispositifs et programme d'ordinateur correspondants
US9490839B2 (en) 2011-01-03 2016-11-08 Qualcomm Incorporated Variable length coding of video block coefficients
AU2011354441B2 (en) * 2011-01-07 2014-07-17 Hfi Innovation Inc. Method and apparatus of improved intra luma prediction mode coding
US8755620B2 (en) 2011-01-12 2014-06-17 Panasonic Corporation Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus for performing arithmetic coding and/or arithmetic decoding
WO2012118358A2 (ko) * 2011-03-03 2012-09-07 한국전자통신연구원 변환 계수 스캔 방법 및 그 장치
KR20120100836A (ko) * 2011-03-03 2012-09-12 한국전자통신연구원 변환 계수 스캔 방법 및 그 장치
US20120230396A1 (en) * 2011-03-11 2012-09-13 Mitsubishi Electric Research Laboratories, Inc. Method for Embedding Decoding Information in Quantized Transform Coefficients
US8938001B1 (en) 2011-04-05 2015-01-20 Google Inc. Apparatus and method for coding using combinations
US20120294353A1 (en) * 2011-05-16 2012-11-22 Mediatek Inc. Apparatus and Method of Sample Adaptive Offset for Luma and Chroma Components
US8989256B2 (en) 2011-05-25 2015-03-24 Google Inc. Method and apparatus for using segmentation-based coding of prediction information
JP2013034162A (ja) * 2011-06-03 2013-02-14 Sony Corp 画像処理装置及び画像処理方法
US9516316B2 (en) 2011-06-29 2016-12-06 Qualcomm Incorporated VLC coefficient coding for large chroma block
EP3285489B1 (en) * 2011-06-30 2019-04-24 JVC KENWOOD Corporation Image coding device, image coding method, image coding program, image decoding device, image decoding method, and image decoding program
US9338456B2 (en) 2011-07-11 2016-05-10 Qualcomm Incorporated Coding syntax elements using VLC codewords
US8891616B1 (en) 2011-07-27 2014-11-18 Google Inc. Method and apparatus for entropy encoding based on encoding cost
ES2754784T3 (es) 2011-07-29 2020-04-20 Sun Patent Trust Procedimiento de decodificación de vídeo, aparato de decodificación de vídeo
JP2011229190A (ja) * 2011-08-17 2011-11-10 Sharp Corp 動画像符号化装置及び動画像復号装置
PL2876883T3 (pl) * 2011-11-01 2019-10-31 Velos Media Int Ltd Wielopoziomowe mapy znaczeń do kodowania i dekodowania
US9571833B2 (en) 2011-11-04 2017-02-14 Nokia Technologies Oy Method for coding and an apparatus
US9247257B1 (en) 2011-11-30 2016-01-26 Google Inc. Segmentation based entropy encoding and decoding
EP3416385B1 (en) * 2011-12-13 2020-09-23 JVC KENWOOD Corporation Video coding device, video coding method, video coding program, video decoding device, video decoding method, and video decoding program
EP2795901A1 (en) * 2011-12-20 2014-10-29 Motorola Mobility LLC Method and apparatus for efficient transform unit encoding
RU2652505C1 (ru) * 2011-12-22 2018-04-26 Самсунг Электроникс Ко., Лтд. Способ кодирования видео с использованием регулировки смещения согласно классификации пикселей посредством максимальных единиц кодирования и устройство для этого, способ декодирования видео и устройство для этого
US8660374B1 (en) * 2011-12-23 2014-02-25 Massachusetts Institute Of Technology Selecting transform paths for compressing visual data
JP5988577B2 (ja) * 2011-12-28 2016-09-07 キヤノン株式会社 画像符号化装置、画像符号化方法及びプログラム
WO2013128526A1 (ja) * 2012-02-28 2013-09-06 パナソニック株式会社 画像処理装置、及び、画像処理方法
US9094681B1 (en) 2012-02-28 2015-07-28 Google Inc. Adaptive segmentation
US11039138B1 (en) 2012-03-08 2021-06-15 Google Llc Adaptive coding of prediction modes using probability distributions
US9143781B2 (en) * 2012-04-03 2015-09-22 Qualcomm Incorporated Weighted prediction parameter coding
HUE044347T2 (hu) * 2012-04-13 2019-10-28 Jvc Kenwood Corp Képdekódoló készülék, képdekódolási eljárás, képdekódoló program
JP2014007469A (ja) * 2012-06-21 2014-01-16 Canon Inc 画像符号化装置及び画像符号化方法
US9774856B1 (en) 2012-07-02 2017-09-26 Google Inc. Adaptive stochastic entropy coding
US9332276B1 (en) 2012-08-09 2016-05-03 Google Inc. Variable-sized super block based direct prediction mode
US9380298B1 (en) 2012-08-10 2016-06-28 Google Inc. Object-based intra-prediction
US9979960B2 (en) 2012-10-01 2018-05-22 Microsoft Technology Licensing, Llc Frame packing and unpacking between frames of chroma sampling formats with different chroma resolutions
US10127624B1 (en) * 2012-12-28 2018-11-13 Amazon Technologies, Inc. Block mapping in high efficiency video coding compliant encoders and decoders
US9509998B1 (en) 2013-04-04 2016-11-29 Google Inc. Conditional predictive multi-symbol run-length coding
CN104244002B (zh) * 2013-06-14 2019-02-05 北京三星通信技术研究有限公司 一种视频编/解码中运动信息的获取方法及装置
US9967594B2 (en) * 2013-06-28 2018-05-08 Mozilla Corporation Probability modeling of intra prediction modes
US9392288B2 (en) 2013-10-17 2016-07-12 Google Inc. Video coding using scatter-based scan tables
US9179151B2 (en) 2013-10-18 2015-11-03 Google Inc. Spatial proximity context entropy coding
EP3152907B1 (en) * 2015-05-29 2021-01-06 SZ DJI Technology Co., Ltd. System and method for video processing
US10171810B2 (en) 2015-06-22 2019-01-01 Cisco Technology, Inc. Transform coefficient coding using level-mode and run-mode
JP6622820B2 (ja) * 2015-12-15 2019-12-18 日本電信電話株式会社 画像差異検出装置、画像差異検出方法及びコンピュータプログラム
US10368080B2 (en) 2016-10-21 2019-07-30 Microsoft Technology Licensing, Llc Selective upsampling or refresh of chroma sample values
CN107862729B (zh) * 2017-08-24 2021-07-02 平安普惠企业管理有限公司 层级动画生成方法、终端及可读存储介质
WO2020046041A1 (en) 2018-08-31 2020-03-05 Samsung Electronics Co., Ltd. Electronic device for high-speed compression processing of feature map of cnn utilizing system and controlling method thereof
US10873747B2 (en) * 2018-11-18 2020-12-22 Sony Corporation Residual mapping method for image/video compression
BR112021013117A2 (pt) 2019-01-02 2021-09-21 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Aparelho para decodificar e codificar uma imagem usando codificação preditiva e codificação residual de transformada com base em bloco, métodos e fluxo de dados
US10897268B2 (en) * 2019-02-21 2021-01-19 Cirrus Logic, Inc. Probability-based synchronization of a serial code stream
CN110266316B (zh) * 2019-05-08 2023-02-21 创新先进技术有限公司 一种数据压缩、解压方法、装置和设备
WO2020255578A1 (ja) * 2019-06-19 2020-12-24 ソニー株式会社 画像処理装置および方法
WO2024107210A1 (en) * 2022-11-15 2024-05-23 Google Llc Dc only transform coefficient mode for image and video coding

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US1000000A (en) * 1910-04-25 1911-08-08 Francis H Holton Vehicle-tire.
JPS5816665B2 (ja) * 1975-10-30 1983-04-01 ケイディディ株式会社 フアクシミリシンゴウノフゴウカホウシキ
JP2787944B2 (ja) 1988-01-11 1998-08-20 富士通株式会社 動き補償動ベクトル探索方法
JPH02179584A (ja) 1988-12-29 1990-07-12 Suzuki Motor Co Ltd 車両の4輪操舵装置
US5875266A (en) * 1990-07-31 1999-02-23 Fujitsu Limited Image data processing a method and apparatus
US5116684A (en) * 1990-09-28 1992-05-26 Corning Incorporated Composite ophthalmic lens
JPH04185119A (ja) * 1990-11-20 1992-07-02 Matsushita Electric Ind Co Ltd 可変長符号化装置
US5122875A (en) * 1991-02-27 1992-06-16 General Electric Company An HDTV compression system
US5227878A (en) 1991-11-15 1993-07-13 At&T Bell Laboratories Adaptive coding and decoding of frames and fields of video
US5510785A (en) * 1993-03-19 1996-04-23 Sony Corporation Method of coding a digital signal, method of generating a coding table, coding apparatus and coding method
JPH08205140A (ja) 1995-01-31 1996-08-09 Canon Inc 画像圧縮装置
JP3624450B2 (ja) 1995-02-06 2005-03-02 ソニー株式会社 画像データ符号化方法及び画像データ符号化装置
US6101276A (en) * 1996-06-21 2000-08-08 Compaq Computer Corporation Method and apparatus for performing two pass quality video compression through pipelining and buffer management
JP4034380B2 (ja) * 1996-10-31 2008-01-16 株式会社東芝 画像符号化/復号化方法及び装置
EP1689194A3 (en) * 1996-11-07 2008-12-10 Panasonic Corporation Image encoder and image decoder
JP3208101B2 (ja) * 1996-11-07 2001-09-10 松下電器産業株式会社 画像符号化方法および画像符号化装置並びに画像符号化プログラムを記録した記録媒体
JP3304870B2 (ja) * 1997-03-26 2002-07-22 ソニー株式会社 画像符号化方法及び装置並びに画像復号方法及び装置
US6462791B1 (en) * 1997-06-30 2002-10-08 Intel Corporation Constrained motion estimation and compensation for packet loss resiliency in standard based codec
KR100226722B1 (ko) * 1997-07-30 1999-10-15 구자홍 동영상 움직임 벡터 추정 방법
ES2241085T3 (es) 1997-09-26 2005-10-16 Matsushita Electric Industrial Co., Ltd. Procedimiento y aparato de decodificacion de imagenes, y medios de registro de datos.
DE10022520A1 (de) 2000-05-10 2001-11-15 Bosch Gmbh Robert Verfahren zur örtlichen skalierbaren Bewegtbildcodierung
TW515192B (en) * 2000-06-06 2002-12-21 Noa Kk Off Compression method of motion picture image data and system there for
JP2002112268A (ja) * 2000-09-29 2002-04-12 Toshiba Corp 圧縮画像データ復号装置
JP3959039B2 (ja) 2003-02-28 2007-08-15 株式会社エヌ・ティ・ティ・ドコモ 画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法、及び画像復号プログラム

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8665960B2 (en) 2007-09-07 2014-03-04 Vanguard Software Solutions, Inc. Real-time video coding/decoding
WO2011100347A2 (en) * 2010-02-09 2011-08-18 Vanguard Software Solutions, Inc. Video sequence encoding system and algorithms
WO2011100347A3 (en) * 2010-02-09 2011-12-08 Vanguard Software Solutions, Inc. Video sequence encoding system and algorithms
US8526488B2 (en) 2010-02-09 2013-09-03 Vanguard Software Solutions, Inc. Video sequence encoding system and algorithms
US9172963B2 (en) 2010-11-01 2015-10-27 Qualcomm Incorporated Joint coding of syntax elements for video coding
US8891633B2 (en) 2011-11-16 2014-11-18 Vanguard Video Llc Video compression for high efficiency video coding using a reduced resolution image
US9131235B2 (en) 2011-11-16 2015-09-08 Vanguard Software Solutions, Inc. Optimal intra prediction in block-based video coding
US8693551B2 (en) 2011-11-16 2014-04-08 Vanguard Software Solutions, Inc. Optimal angular intra prediction for block-based video coding
US9307250B2 (en) 2011-11-16 2016-04-05 Vanguard Video Llc Optimization of intra block size in video coding based on minimal activity directions and strengths
US9451266B2 (en) 2011-11-16 2016-09-20 Vanguard Video Llc Optimal intra prediction in block-based video coding to calculate minimal activity direction based on texture gradient distribution
KR101491591B1 (ko) * 2012-11-05 2015-02-09 주식회사 케이티 웹앱 가상화 서비스를 제공하는 가상화 서버 및 웹앱 가상화 서비스 제공을 위한 데이터 전송방법
US9106922B2 (en) 2012-12-19 2015-08-11 Vanguard Software Solutions, Inc. Motion estimation engine for video encoding
KR20140093909A (ko) * 2014-06-12 2014-07-29 에스케이텔레콤 주식회사 인터 예측을 이용한 영상 부호화 및 복호화 방법과 장치

Also Published As

Publication number Publication date
US7596279B2 (en) 2009-09-29
KR100627597B1 (ko) 2006-09-25
JPWO2004039083A1 (ja) 2006-02-23
CN1545813A (zh) 2004-11-10
US20110228842A1 (en) 2011-09-22
TWI273832B (en) 2007-02-11
ES2401991T3 (es) 2013-04-26
EP1478190B1 (en) 2013-01-02
US20120106630A1 (en) 2012-05-03
EP2202989B1 (en) 2014-04-16
US20040234144A1 (en) 2004-11-25
WO2004039083A1 (ja) 2004-05-06
JP3944225B2 (ja) 2007-07-11
US20100002945A1 (en) 2010-01-07
US7970223B2 (en) 2011-06-28
US7903891B2 (en) 2011-03-08
US8265405B2 (en) 2012-09-11
EP2367358A1 (en) 2011-09-21
US20070242892A1 (en) 2007-10-18
EP2202989A1 (en) 2010-06-30
EP1478190A1 (en) 2004-11-17
TW200401560A (en) 2004-01-16
EP1478190A4 (en) 2009-04-01
CN100420308C (zh) 2008-09-17

Similar Documents

Publication Publication Date Title
KR100627597B1 (ko) 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법, 화상 복호 방법, 화상 부호화 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 및 화상 복호 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체
RU2751082C1 (ru) Способ кодирования и декодирования изображений, устройство кодирования и декодирования и соответствующие компьютерные программы
CN102172025B (zh) 用大宏块进行视频译码
US8170357B2 (en) Apparatus and method for generating coded block pattern for alpha channel image and alpha channel image encoding/decoding apparatus and method using the same
CN102172021B (zh) 用大宏块进行视频译码
KR20180082393A (ko) 쿼드 트리를 이용한 블록 정보 부/복호화 방법 및 이러한 방법을 사용하는 장치
JP2016167830A (ja) 大型マクロ・ブロックを用いたビデオ・コーディング
JP2006501740A (ja) 適応ブロック変換のためのコンテキストベース適応可変長符号化
JP5220247B2 (ja) ブロック変換ベースの符号化システムで用いられる方法
CN101946515A (zh) Cabac译码器的二回合量化
KR20070032111A (ko) 동영상의 무손실 부호화, 복호화 방법 및 장치
KR20040106401A (ko) 신호 부호화 방법, 신호 복호 방법, 신호 부호화 장치,신호 복호 장치, 신호 부호화 프로그램 및 신호 복호프로그램
JP2014501084A (ja) ビデオコーディングにおける並列コンテキスト計算
US9491491B2 (en) Run-mode based coefficient coding for video coding
KR20080013843A (ko) 동영상의 무손실 부호화, 복호화 방법 및 장치
Tew et al. A SURVEY OF INFORMATION HIDING IN H. 264/AVC
Ng et al. An adaptive multiresolution modification of the H. 263 video coding algorithm

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: 20120821

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20130822

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee