KR20080041748A - 가변 길이 부호화 방법 및 가변 길이 복호화 방법 - Google Patents

가변 길이 부호화 방법 및 가변 길이 복호화 방법 Download PDF

Info

Publication number
KR20080041748A
KR20080041748A KR1020087008522A KR20087008522A KR20080041748A KR 20080041748 A KR20080041748 A KR 20080041748A KR 1020087008522 A KR1020087008522 A KR 1020087008522A KR 20087008522 A KR20087008522 A KR 20087008522A KR 20080041748 A KR20080041748 A KR 20080041748A
Authority
KR
South Korea
Prior art keywords
variable length
coefficient
code
value
decoding
Prior art date
Application number
KR1020087008522A
Other languages
English (en)
Other versions
KR100975487B1 (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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=29255105&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=KR20080041748(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by 마쯔시다덴기산교 가부시키가이샤 filed Critical 마쯔시다덴기산교 가부시키가이샤
Publication of KR20080041748A publication Critical patent/KR20080041748A/ko
Application granted granted Critical
Publication of KR100975487B1 publication Critical patent/KR100975487B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/4006Conversion to or from arithmetic code
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/29Flow control; Congestion control using a combination of thresholds
    • 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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • 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/124Quantisation
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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/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/18Methods 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 a set of transform coefficients
    • 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/182Methods 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 a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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/93Run-length coding
    • 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

Abstract

동화상에서의 화상 데이터를 소정의 크기를 갖는 블록 단위로 주파수 변환한 각 블록 내의 계수값을 부호화하는 가변 길이 부호화 방법으로서, 블록 내의 계수값을 소정의 순서로 주사하는 계수값 주사 단계와, 부호화에 이용하는 다수의 테이블을 전환하여, 계수값 주사 단계에 의해 주사된 계수값을 소정의 순서로 가변 길이 부호로 부호화하는 부호화 단계를 포함한다. 여기에서, 각 상기 테이블의 전환 방향이 일 방향인 구성으로 해도 된다. 또, 상기 부호화가 비산술 부호화인 구성으로 해도 된다.

Description

가변 길이 부호화 방법 및 가변 길이 복호화 방법{VARIABLE LENGTH CODING METHOD AND VARIABLE LENGTH DECODING METHOD}
본 발명은, 동화상에서의 화상 데이터를 소정의 크기를 갖는 블록 단위로 주파수 변환한 각 블록 내의 계수값을 부호화하는 가변 길이 부호화 및 가변 길이 복호화 방법 등에 관한 것이다.
동화상 부호화 처리에서는, 일반적으로 동화상이 갖는 공간 방향 및 시간 방향의 용장성(冗長性)을 이용하여 정보량의 압축이 행해진다. 여기에서 일반적으로, 공간 방향의 용장성을 이용하는 방법으로서는, 주파수 영역으로의 변환이 이용되고, 시간 방향의 용장성을 이용하는 방법으로서는, 픽처간 예측 부호화 처리가 이용된다.
종래의 MPEG-4 동화상 부호화 방식(예를 들면, 비특허 문헌 1 참조)의 부호화 효율을 더욱 높이기 위해서, 현재 규격화 작업 중인 동화상 부호화 방식에서는, 4 ×4화소의 크기를 갖는 블록 단위로 주파수 변환을 행한 후, 양자화를 행하여, 계수값을 생성한다. 그리고, 직류 성분으로부터 고주파수 성분을 향하여 주사하고, 연속하는 값이 「0」인 계수의 개수(R)(Run, 이하 간단히「R」이라고도 기재 함)와 이것에 계속되는 계수값(L)(Level, 이하 간단히「L」이라고도 기재함)의 조합을 작성하여, (R, L)의 조합열로 한다. 그리고, 이 (R, L)을 소정의 코드 테이블을 이용하여 코드 번호로 변환한 후, 또한 1개의 가변 길이 부호(VLC : Variable Length Coding) 테이블을 이용하여, 코드 번호를 VLC 코드로 변환함으로써, 부호화를 행한다. 이 때의 코드 테이블은 일반적으로 발생 빈도가 높을수록 작은 코드 번호가 할당된다. 예를 들면, R, L 모두 작은 조합은 발생 빈도가 높기 때문에, 작은 코드 번호가 할당된다. 또, VLC 테이블은, 작은 코드 번호에 대해서 짧은 부호 길이를 갖는 VLC 코드가 할당되도록 하고 있는 것도 있다.(ISO/IEC 14496-2 : “Information technology--Coding of audio-visual objects--Part2 : Visual” 7. 4. 1, pp. 119-120, 1999. 12).
그러나, 상기 종래의 방법에서는, 계수값(「0」)을 갖는 계수의 연속수(R) 및 계수값(L)이 커지면, 부호 길이가 길어져서 부호화 효율의 저하를 초래한다. 일반적으로, 저주파수 성분값의 계수값(L)은 큰 값이 되기 때문에, 저주파수 성분값을 부호화할 때의 부호화 효율의 저하가 현저해진다.
요컨대, 발생 빈도에 따라서 1개의 VLC 테이블(R, L)의 페어에 대해서 1개의 유니크한 가변 길이 코드가 할당되는 결과, 값이 큰 계수값(L)에는 항상 부호 길이가 대단히 긴 가변 길이 부호로 변환되어 버린다. 또, R과 별개로 L을 부호화하는 경우(L의 일차원 부호화)에서도, 1개의 가변 길이 부호 테이블을 이용할 때에는, R, L의 페어로 부호화하는 경우와 동일한 문제가 발생한다.
본 발명은, 이와 같은 문제를 감안하여 이루어진 것으로, 계수값(L)을 부호화할 때에, 부호화 효율을 향상시킬 수 있는 가변 길이 부호화 방법 및 가변 길이 복호화 방법을 제공하는 것을 목적으로 한다.
상기 목적을 달성하기 위해서, 본 발명에 관한 가변 길이 부호화 방법은, 동화상에서의 화상 데이터를 소정의 크기를 갖는 블록 단위로 주파수 변환한 각 블록 내의 계수값을 부호화하는 가변 길이 부호화 방법으로서, 상기 블록 내의 계수값을 소정의 순서로 주사하는 계수값 주사 단계와, 부호화에 이용하는 다수의 테이블을 전환하여, 상기 계수값 주사 단계에 의해 주사된 상기 계수값을 소정의 순서로 가 변 길이 부호로 부호화하는 부호화 단계를 포함하는 것을 특징으로 한다.
이것에 의해서, 계수값에 따른 부호 길이의 가변 길이 부호를 각 테이블에 적용시키는 것이 가능해지기 때문에, 부호화 효율을 향상시킬 수 있다. 요컨대, 어느 테이블에서는 계수값이 작은 경우에 다른 테이블보다도 짧은 부호 길이의 가변 길이 부호로 부호화하도록 하고, 다른 어느 테이블에서는 계수값이 큰 경우에 다른 테이블보다도 짧은 부호 길이의 가변 길이 부호로 부호화하도록 하여, 계수값에 따라서 테이블을 전환함으로써, 부호 길이를 비약적으로 짧게 할 수 있다.
여기에서, 각 상기 테이블의 전환 방향이 일 방향인 것을 특징으로 해도 된다. 이것에 의해서, 계수값에 의해서, 테이블이 빈번하게 교체되는 것이 방지되고, 테이블의 전환 횟수가 줄어든다. 따라서, 부호화 효율을 향상시킬 수 있다. 예를 들면, 메모리의 작업 영역이 한정되기 때문에 다음에 사용하는 테이블만을 작업 영역에 두는 것이 일반적이다. 이 경우에는, 테이블을 전환할 때마다 ROM으로부터 다음의 테이블을 독출하여 작업 영역에 전개하는 데에 시간이 걸리기 때문에, 다음 계수값의 부호화까지 시간이 걸린다. 이 때문에, 일 방향으로 함으로써, 테이블의 전환 횟수를 제한하여, 다음 계수값의 부호화까지 시간을 토탈로서 단축할 수 있다고 하는 효과가 발휘된다.
또, 상기 부호화 단계는, 블록 내에서 상기 다수의 테이블을 전환하여 부호화하는 것을 특징으로 하는 구성으로 해도 좋고, 상기 계수값은 일차원화된 「0」이외의 계수값인 것을 특징으로 하는 구성으로 해도 된다.
또, 상기 부호화가 비산술 부호화인 것을 특징으로 하는 것이 바람직하다. 이것에 의해서, 부호화에 이용하는 테이블이 결정되면 그 테이블을 참조하는 것 만으로 가변 길이 부호로 부호화할 수 있다.
또, 각 상기 테이블은, 계수값의 최소값에서의 부호 길이가 각 상기 테이블에 각각 부여되는 번호의 순서로 길어지고, 계수값의 최대값에서의 부호 길이가 상기 번호의 순서로 길어지지 않도록 계수값에 대한 부호 길이의 변화율을 다르게 하여 구성되는 것이 바람직하다. 또, 각 상기 테이블은, 계수값의 증가분에 대한 부호 길이의 증가율이, 각 상기 테이블에 각각 부여되는 번호의 순서로 작아지도록 구성되는 것도 바람직하다. 이것에 의해서, 각 테이블마다 부호 길이가 짧아지는 범위를 할당할 수 있기 때문에, 부호화 효율의 향상을 확실하게 실현할 수 있다.
또, 상기 부호화 단계는, 미리 설정된 계수값의 절대값에 대한 임계값에 기초하여 각 상기 테이블을 전환하는 것이 바람직하다. 이것에 의해서, 테이블의 전환의 타이밍을 간단히 판단할 수 있어, 부호화 효율의 향상을 실현할 수 있다.
또, 상기 계수값 주사 단계는, 상기 계수값을 고주파수 성분부터 저주파수 성분을 향하는 순서로 주사하는 것이 바람직하다. 이것에 의해서, 계수의 절대값이「1」부근에서 점점 커지는 경향이 강하기 때문에, 블록 내의 최초의 계수값을 부호화하는 데에 이용하는 테이블을 결정하기 쉽게 하거나, 각 테이블의 구성을 간단히 결정할 수 있게 하거나, 임계값을 결정하기 쉽게 하거나 할 수 있다.
또한, 상기 부호화 단계는, 부호화 대상의 계수의 절대값이 임계값을 넘으면, 부호화 대상의 계수의 부호화에 이용한 테이블로부터 상기 테이블에 부여된 번호보다 번호가 큰 테이블로 전환하여 다음 계수값을 부호화하는 것이 바람직하다. 이것에 의해서, 다음 계수값을 부호화할 때에 부호 길이를 짧게 할 수 있기 때문에, 부호화 효율의 향상을 실현할 수 있다.
또, 본 발명에 관한 가변 길이 복호화 방법은, 동화상에서의 화상 데이터를 소정의 크기를 갖는 블록 단위로 주파수 변환한 각 블록 내의 계수값을 부호화하여 생성된 가변 길이 부호를 복호화하는 가변 길이 복호화 방법으로서, 복호화에 이용하는 다수의 테이블을 전환하고, 각 상기 블록 내의 가변 길이 부호를 소정의 순서로 계수값으로 복호화하는 복호화 단계와, 상기 복호화 단계에 의해서 생성된 계수값에 기초하여 상기 블록 내의 계수값을 생성하는 계수 생성 단계를 포함하는 것을 특징으로 한다. 이것에 의해서, 고 압축 부호화된 부호를 바르게 복호화 할 수 있다.
여기에서, 각 상기 테이블의 전환 방향이 일 방향인 것을 특징으로 해도 된다.
또, 상기 복호화 단계는, 블록 내에서 상기 다수의 테이블을 전환하여 부호화하는 것을 특징으로 해도 된다.
또, 상기 계수값은, 일차원화된 「0」이외의 계수값인 것을 특징으로 해도 된다.
또, 상기 복호화가 비산술 복호화인 것을 특징으로 해도 된다.
또, 각 상기 테이블은, 계수값의 최소값에서의 부호 길이가 각 상기 테이블에 각각 부여되는 번호의 순서로 길어지고, 계수값의 최대값에서의 부호 길이가 상기 번호의 순서로 길어지지 않도록 계수값에 대한 부호 길이의 변화율을 다르게 하 여 구성되는 것을 특징으로 해도 된다.
또, 각 상기 테이블은, 계수값의 증가분에 대한 부호 길이의 증가율이, 각 상기 테이블에 각각 부여되는 번호의 순서로 작아지는 것을 특징으로 해도 된다.
또, 상기 복호화 단계는, 미리 정해진 계수값의 절대값에 대한 임계값에 기초하여 각 상기 테이블을 전환하는 것을 특징으로 해도 된다.
또한, 상기 계수 생성 단계는, 상기 계수값을 고주파 성분부터 저주파 성분을 향하는 순서로 주사하는 것을 특징으로 해도 된다.
또한, 상기 부호화 단계는, 복호화된 계수의 절대값이 임계값을 넘으면, 복호화 대상의 가변 길이 부호의 복호화에 이용한 테이블로부터 해당 테이블에 부여된 번호보다 번호가 큰 테이블로 전환하여 다음 가변 길이 부호를 계수값으로 복호화 하는 것을 특징으로 해도 된다.
또한, 본 발명은, 이와 같은 가변 길이 부호화 방법이나, 가변 길이 복호화 방법으로서 실현할 수 있을 뿐만 아니라, 이와 같은 가변 길이 부호화 방법이나, 가변 길이 복호화 방법이 포함하는 특징적인 단계를 수단으로 하는 가변 길이 부호화 장치나, 가변 길이 복호화 장치로서 실현하거나, 가변 길이 부호화 방법이나, 가변 길이 복호화 방법이 포함하는 특징적인 단계를 이용한 동화상의 부호화 방법이나, 복호화 방법으로서 실현하거나, 이들 단계를 컴퓨터에 실행시키는 프로그램으로서 실현하거나 할 수도 있다. 그리고, 이와 같은 프로그램은, CD-ROM 등의 기록 매체나 인터넷 등의 전송 매체를 통해서 배송할 수 있는 것은 말할 필요도 없다.
본 발명에 의하면, 계수값을 부호화할 때에, 부호화 효율을 향상시킬 수 있는 가변 길이 복호화 방법 및 장치를 얻을 수 있다.
이하, 본 발명에 관한 실시 형태를 도면을 참조하여 설명한다.
(실시 형태 1)
도 1은, 본 발명의 동화상 부호화 방법이 적용되는 부호화 장치의 기능 구성을 도시하는 블록도이다. 또한, 이 실시 형태 1에서는, 본 발명의 동화상 부호화 방법으로 입력 화상을 프레임 내 부호화 처리하는 경우의 기능 구성이 도시되어 있다.
상기 도면에 도시되는 바와 같이, 부호화 장치(100a)는, 블록 변환부(110)와, 주파수 변환부(120)와, 양자화부(130)와, 가변 길이 부호화부(140)로 구성된다. 또한, 이와 같은 부호화 장치(100a)를 구성하는 각 부는, CPU, CPU에 의해서 실행되는 프로그램이나 데이터를 미리 격납하는 ROM, 프로그램 실행시에 작업 영역을 제공하거나, 입력 화상 등을 일시적으로 격납하는 메모리 등에 의해 실현된다.
블록 변환부(110)는, 입력 화상을 수평 4화소, 수직 4화소의 크기를 갖는 블록으로 분할하여, 각 화소 블록마다 주파수 변환부(120)에 출력한다.
주파수 변환부(120)는, 입력된 화소 블록에 대해서 주파수 변환을 실시하여, 주파수 계수로 변환한다. 그리고, 주파수 변환부(120)는 변환된 주파수 계수를 양자화부(130)에 출력한다.
양자화부(130)는, 입력된 주파수 계수에 대해서 양자화 처리를 행한다. 여기에서 양자화 처리란, 주파수 계수값을 소정의 양자화 값에 의해서 제산하는 처리에 상당하는 처리를 의미한다. 이 양자화 값은, 일반적으로 블록마다, 주파수 대역마다에 따라서 다르다. 양자화된 주파수 계수는 가변 길이 부호화부(140)에 입력된다.
가변 길이 부호화부(140)는, 소정 사이즈의 블록(수평 4화소, 수직 4화소)의 주파수 계수값을 가변 길이 부호화한다.
도 2는 가변 길이 부호화부(140)의 상세한 기능 구성을 도시하는 블록도이다.
도 2에 도시하는 바와 같이 가변 길이 부호화부(140)는, RL열 생성부(141), 재배열부(142), 코드 할당부(143), 테이블 기억부(144)로 구성된다.
양자화부(130)로부터 출력된 양자화된 주파수 계수는, RL열 생성부(141)에 입력된다.
RL열 생성부(141)는 먼저 양자화된 주파수 계수값을 소정의 주사 방법으로 일차원화한다. 그리고, RL열 생성부(141)는, 일차원화된 계수값에 대해서, 연속하는 계수값(「0」)의 개수(R)와 이것에 계속되는 「0」이외의 계수값(L)의 조합(이하, RL값이라고 부름)의 열(이하, RL열이라고 부름)을 생성한다. 그 예를 도 3, 도 4를 이용하여 설명한다.
도 3(a)는, 양자화부(130)로부터 출력된 양자화된 1블록 내의 주파수 계수를 도시하는 도면이다. 여기에서, 좌측 위의 계수가 직류 성분을 나타내고 것으로서, 오른쪽을 향할수록 수평 방향의 주파수 성분이 높아지고, 아래를 향할수록 수직 방향의 주파수 성분이 높아진다. 도 3(b)는 양자화된 주파수 계수값을 일차원화할 때의 주사 방법을 도시하는 도면이다. RL열 생성부(141)는, 저주파수 영역부터 고주파수 영역을 향해서 주사함으로써, 일차원화를 행한다.
그리고, RL열 생성부(141)에 의해서 일차원화된 계수값에 대해서, RL열을 생성한 결과가 도 4(a)에 도시되게 된다. 여기에서 도 4(a) 중에서, EOB(End Of Block)란 블록 중의 그 이후의 계수값이 전부 「0」인 것을 나타내는 식별자이다. 일반적으로 고주파수 성분일수록 계수값이 「0」이 되기 쉽기 때문에, 저주파수 영역부터 고주파수 영역을 향해서 주사함으로써, RL열의 정보량을 작게 할 수 있다. 생성된 RL열은 재배열부(142)에 입력된다.
재배열부(142)는 입력된 RL열을 역방향으로 다시 배열한다. 단, EOB는 재배열의 대상으로부터는 제외한다. 재배열한 후의 상태는 도 4(b)에 도시되는 바와 같이 된다. 이와 같이 재배열된 RL열은 코드 할당부(143)에 입력된다.
테이블 기억부(144)는, RL값과 이 RL값에 대해서 할당되는 코드 번호를 대응시킨 테이블(코드 테이블, 도 5 참조)과, 코드 번호와 가변 길이 부호를 대응시킨 다수 종류의 테이블(가변 길이 부호 테이블, 도 6) 등을 미리 유지한다.
코드 할당부(143)는 테이블 기억부(144)에 유지되어 있는 테이블을 이용하여 RL열의 각 조에 대해서 가변 길이 부호를 할당한다.
구체적으로는, 코드 할당부(143)는, 먼저, RL값에 대해서 코드 번호를 할당한다. 이 때에는, 테이블 기억부(144)에 유지되어 있는 미리 정해진 코드 테이블 (도 5 참조)을 이용하여 코드 번호로의 변환을 행한다.
도 5는 코드 테이블의 일례를 도시하는 도면이다.
이 코드 테이블은, 일반적으로 RL값의 빈도가 클수록 작은 코드 번호가 할당되지만, 일반적으로는 R, L 모두 작은 값일수록 빈도가 높아지기 때문에, 이 성질을 이용하여 구성된다. 이 코드 테이블을 이용한 경우, 예를 들면 최초의 RL값(0, -1)은 코드 번호「2」가 된다. 또 2번째∼5번째의 RL값 (1, 1), (0, -2), (0, 3), (0, 4)은, 각각 코드 번호「3」,「8」,「13」,「15」가 된다.
그리고, 코드 할당부(143)는, 계속해서 코드 번호를 가변 길이 부호로 변환한다. 이 가변 길이 부호로의 변환시에는, 테이블 기억부(144)에 유지되어 있는 다수의 가변 길이 부호 테이블(도 6 참조)을 이용하여 가변 길이 부호로의 변환을 행한다.
도 6은 가변 길이 부호 테이블의 일례를 도시하는 도면이다.
이 실시 형태 1에서는, 가변 길이 부호 테이블은 2종류 유지되어 구성된다.
제1 가변 길이 부호 테이블 1 및 제2 가변 길이 부호 테이블 2는 코드 번호가 커짐에 따라서 가변 길이 부호 길이가 길어지도록 구성되는 한편, 가변 길이 부호 테이블 1은, 가변 길이 부호 테이블 2와 비교하여, 코드 번호가 작을 때에 가변 길이 부호 길이가 짧아지도록 구성되며, 가변 길이 부호 테이블 2는, 가변 길이 부호 테이블 1과 비교하여, 코드 번호가 클 때에 가변 길이 부호 길이가 짧아지도록 구성된다. 즉, 작은 코드 번호에서는 가변 길이 부호 테이블 1 쪽이 짧은 부호가 할당되고, 큰 코드 번호에서는 가변 길이 부호 테이블 2 쪽이 짧은 부호가 할당되 는 구성으로 되어 있다.
1번째의 RL값에 대해서는, 가변 길이 부호 테이블 1이 이용된다. 그리고, 이 경우에는, 1번째의 RL값의 코드 번호는「2」이기 때문에, 이 때의 가변 길이 부호는「011」이 된다. 그리고 순서대로 가변 길이 부호로의 변환을 행해 가서, L의 절대값이 임계값을 넘으면, 다음 RL값 이후에서는 가변 길이 부호 테이블 2를 이용한다. 여기에서 L의 절대값에 대한 임계값을「2」로 하면, 4번째의 RL값(0, 3)에서 임계값을 넘게 된다. 따라서, 1∼4번째의 RL값에 대해서는, 가변 길이 부호 테이블 1을 이용하여 변환을 행하고, 5번째 이후의 RL값에 대해서는, 가변 길이 부호 테이블 2를 이용하여 변환을 행하게 된다.
여기에서, 7번째의 RL값(1,2)에서 L의 절대값이 다시 임계값 이하가 되지만, 가변 길이 부호 테이블 1로의 전환은 행하지 않고, 가변 길이 부호 테이블 2를 이용하여 변환한다. 요컨대, 테이블의 전환 방향이 일 방향이다. 여기에서, 일 방향이란 일단 사용이 완료된 테이블을 재사용하지 않는 것을 말한다. 이것에 의해서, 계수값에 의해서, 테이블이 빈번히 교체되는 것이 방지되어, 테이블의 전환 횟수가 줄어든다. 고주파수 성분부터 저주파수 성분을 향해서 일차원화한 경우, 일반적으로 L의 절대값은 증가 경향에 있다. 따라서, L의 절대값이 한번 임계값을 넘은 경우, 그 후의 L의 절대값이 재차 그 임계값을 하회하였다고 해도, 임계값을 하회하는 것은 그 계수만인 경우가 많다. 따라서, L의 절대값이 재차 임계값을 하회하였다고 해도, 다시 원래의 가변 길이 부호 테이블은 이용하지 않도록 함으로써, 부호화 효율을 향상시킬 수 있다. 예를 들면, 메모리의 작업 영역이 한정되기 때문에 다음에 사용하는 테이블만을 작업 영역에 두는 것이 일반적이다. 이 경우에는, 테이블을 전환할 때마다 ROM으로부터 다음 테이블을 독출하여 작업 영역에 전개하는 데에 시간이 걸리기 때문에, 다음 계수값의 부호화까지 시간이 걸린다. 이 때문에, 일 방향으로 함으로써, 테이블의 전환 횟수를 제한하여, 다음 계수값의 부호화까지의 시간을 토탈로서 단축할 수 있다고 하는 효과가 발휘된다.
또, RL열 생성부(141)에서는 계수값열의 계수값을 저주파수 성분부터 고주파수 성분을 향하는 순서로 주사하고, 코드 할당부(143)에서는, 계수값열의 뒤에서 순서대로 가변 길이 부호로 부호화하도록 하고 있는 것은, 계수의 절대값이「1」부근에서 점점 커지는 경향이 강하기 때문에, 블록 내의 최초의 계수값을 부호화하는 데에 이용하는 테이블을 결정하기 쉽게 하거나, 각 테이블의 구성을 간단하게 결정할 수 있게 하거나, 임계값을 결정하기 쉽게 하거나 할 수 있기 때문이다.
이상과 같이, 본 실시 형태 1의 가변 길이 부호화 방법은, 블록 내의 주파수 계수값을 저주파수 영역부터 고주파수 영역을 향해서 주사하여 일차원화한다. 그리고, 일차원화된 계수값에 대해서, 연속하는 계수값(「0」)의 개수(R)와 이것에 계속되는「0」이외의 계수값(L)의 조합인 RL값의 열을 생성한다. 그리고, RL값을 주사순과는 역순으로 가변 길이 부호로 변환하여 간다. 요컨대, RL값을 직접 가변 길이 부호로 변환해도 된다. 가변 길이 부호로 변환할 때에는, 가변 길이 부호 테이블을 다수 준비한다. 그리고, 먼저, 제1 가변 길이 부호 테이블을 이용하여 변환을 행하고, L의 절대값이 임계값을 넘으면, 이후의 RL값에 대해서는 제2 가변 길이 부호 테이블을 이용하여 변환을 행한다. 이 때에는, 제1 가변 길이 부호 테이 블은, 제2 가변 길이 부호 테이블과 비교하여, 코드 번호가 작을 때에 가변 길이 부호 길이가 짧아지는 구성으로 하고, 제2 가변 길이 부호 테이블은, 제1 가변 길이 부호 테이블과 비교하여, 코드 번호가 클 때에 가변 길이 부호 길이가 짧아지는 구성으로 한다.
일반적으로 저주파수 성분일수록 L의 절대값은 커지기 때문에, 저주파수 영역부터 고주파수 영역으로 주사하여 RL값을 생성한 것과는 역순으로 RL값을 가변 길이 부호로 변환해 가면, L의 절대값은 커져 간다.
따라서, L의 절대값이 임계값을 넘은 후에, 코드 번호가 클 때, 즉 L의 절대값이 클 때에 가변 길이 부호 길이가 짧아지는 가변 길이 부호 테이블을 이용함으로써, 합계의 부호량을 작게 할 수 있다. 요컨대, L을 R과 별개로, 또한 다수의 가변 길이 부호 테이블을 이용하여 부호화함으로써도, L에 대한 합계의 부호량을 작게 할 수 있다.
또한, 본 실시 형태 1에서는, 프레임 내 부호화에 의해 화상을 부호화하는 경우에 대해서 설명하였지만, 이것은 동화상 입력에 대해서 움직임 보상 등을 이용하여 프레임간 부호화를 행하는 경우이어도 좋고, 본 실시 형태의 방법에 의해 동일한 효과를 얻을 수 있다.
또, 본 실시 형태 1에서는, 입력 화상을 수평 4화소, 수직 4화소의 블록으로 분할하는 경우에 대해서 설명하였지만, 블록의 크기는 다른 크기이어도 된다.
또, 본 실시 형태 1에서는, 블록 내의 주사 방법으로서 도 3(b)를 이용하여 설명하였지만, 이것은 저주파수 영역부터 고주파수 영역으로의 주사이면 다른 주사 순서이어도 된다.
또, 본 실시 형태 1에서는, 코드 테이블의 예로서 도 5를 이용하여 설명하였지만, 이것은 다른 코드 테이블이어도 된다.
또, 본 실시 형태 1에서는, 가변 길이 부호 테이블의 예로서 도 6을 이용하여 설명하였지만, 이것은 다른 테이블이어도 된다.
또, 가변 길이 부호 테이블을 2개 이용하는 경우에 대해서 설명하였지만, 이것은 가변 길이 부호 테이블을 3개 이상 이용하고, 다수의 임계값을 이용하며, 각 임계값을 넘을 때마다 가변 길이 부호 테이블을 전환하도록 해도 된다.
또, 본 실시 형태에서는, L의 절대값이 임계값을 넘은 경우에, 가변 길이 부호 테이블을 전환하는 경우에 대해서 설명하였지만, 이것은 코드 번호가 임계값을 넘은 경우에, 가변 길이 부호 테이블을 전환해도 동일한 효과를 얻을 수 있다.
또, 본 실시 형태에서는, RL열의 최후에 EOB를 부가하는 경우에 대해서 설명하였지만, 이것은 RL열의 최초에 RL값의 개수를 부가해도 된다. 이 경우의 도 4에 대응하는, 부호화해야 할 RL값의 개수, 및 RL열은, 도 7(a), 도 7(b)와 같이 된다. 또, 도 5에 도시하는 코드 테이블에서, EOB로의 코드 번호의 할당은 불필요하게 된다.
(실시 형태 2)
도 8은 본 발명의 실시 형태에 관한 가변 길이 복호화 방법이 적용되는 복호화 장치의 기능 구성을 도시하는 블록도이다. 또한, 여기에서는, 실시 형태 1에서 설명한 본 발명의 가변 길이 부호화 방법에 의해 생성된 부호열이 입력되는 것으로 한다.
도 8에 도시되는 바와 같이, 복호화 장치(500a)는, 가변 길이 복호화부(510)와, 역양자화부(520)와, 역주파수 변환부(530)와, 프레임 메모리(540)로 구성된다. 또한, 이와 같은 복호화 장치(500a)를 구성하는 각 부는, 부호화 장치(100a)와 동일하게 CPU, CPU에 의해서 실행되는 프로그램이나 데이터를 미리 격납하는 ROM, 프로그램 실행시에 작업 영역을 제공하거나, 입력 부호화열 등을 일시적으로 격납하는 메모리 등에 의해 실현된다.
부호열은 가변 길이 복호화부(510)에 입력된다. 가변 길이 복호화부(510)는, 가변 길이 부호화된 부호열을 복호화한다. 이 부호열은, 상기한 바와 같이, 화상 데이터를 소정의 크기를 갖는 블록 단위로 분할하여, 상기 블록의 주파수 계수값을 소정의 주사 순서로 일차원화하여, 연속하는 계수값이 0인 계수의 연속수(R)와, 이것에 계속되는 계수값(L)와의 조합(RL값)의 열을 부호화함으로써 생성되어 있다.
도 9는 가변 길이 복호화부(510)의 상세한 기능 구성을 도시하는 블록도이다.
도 9에 도시하는 바와 같이 가변 길이 복호화부(510)는, 코드 변환부(511)와, 테이블 기억부(512)와, 재배열부(513)와, 계수 생성부(514)로 구성된다.
테이블 기억부(512)는, 테이블 기억부(144)의 경우와 동일하게 구성되고, 코드 번호와 가변 길이 부호를 대응시킨 다수 종류의 테이블(가변 길이 부호 테이블, 도 6)과, 테이블 기억부(144)의 경우와 동일하게 구성되며, RL값과 이 RL값에 대해 서 할당되는 코드 번호를 대응시킨 테이블(코드 테이블, 도 5 참조) 등을 미리 유지한다.
코드 변환부(511)는, 테이블 기억부(512)에 유지되어 있는 테이블(다수의 가변 길이 부호 테이블)을 이용하여, 먼저 입력된 부호열에 대해서, 가변 길이 부호로부터 코드 번호로의 변환을 행한다. 코드 번호로의 변환은, 다수의 가변 길이 부호 테이블을 이용하여 행한다. 이 가변 길이 부호 테이블은 테이블 기억부(512)에 유지되어 있고, 테이블 기억부(512)를 참조함으로써 코드 번호로의 변환을 행한다.
가변 길이 부호 테이블의 일례를 도 6을 이용하여 설명한다. 가변 길이 부호 테이블은 2종류 유지되어 있다. 작은 코드 번호에서는 가변 길이 부호 테이블 1 쪽이 짧은 부호가 할당되고, 큰 코드 번호에서는 가변 길이 부호 테이블(VLC) 쪽이 짧은 부호가 할당되는 구성으로 되어 있다. 여기에서는, 입력 부호열의 선두부의 부호가 「01100100000100100011100010011」인 것으로 한다. 1번째의 가변 길이 부호에 대해서는, 가변 길이 부호 테이블 1이 이용된다. 현재, 도 6의 가변 길이 부호 테이블 1을 참조한 경우, 입력 부호열에 일치하는 것은 가변 길이 부호「011」이고, 이 경우의 코드 번호는「2」가 된다.
다음에 코드 변환부(511)에서는, 얻어진 코드 번호를 RL값으로 변환한다. 이 때에는, 미리 정해진 코드 테이블을 이용하여 행한다. 코드 테이블은 테이블 기억부(512)에 유지되어 있고, 테이블 기억부(512)를 참조함으로써 RL값으로의 변환을 행한다. 코드 테이블의 일례를 도 5에 도시한다. 이 경우의 코드 번호는「2 」이기 때문에, RL값은 (0, -1)이 된다.
동일하게 하여, 가변 길이 부호로부터 코드 번호로의 변환을 순서대로 행해 가면, 가변 길이 부호 테이블 1을 이용하여, 가변 길이 부호「00100」이 코드 번호 「3」으로, 가변 길이 부호「0001001」이 코드 번호「8」로, 가변 길이 부호 「0001110」이 코드 번호「13」으로 변환되고, 또한 각각의 코드 번호는 RL값 (1, 1), (0, -2), (0, 3)으로 변환된다.
여기에서, 코드 변환부(511)는, 얻어진 RL값 중, L의 절대값이 임계값을 넘으면, 이후의 가변 길이 부호의 변환에서는, 가변 길이 부호 테이블 2를 이용한다. 여기에서 L의 절대값에 대한 임계값을「2」로 하면, 4번째의 RL값(0, 3)에서 임계값을 넘게 된다. 따라서, 이 이후의 RL값에 대해서는, 가변 길이 부호 테이블 2를 이용하여 변환을 행하게 된다. 따라서, 다음 가변 길이 부호 「0010011」는 코드 번호 15로 변환되고, 또한 RL값 (0, 4)으로 변환된다.
또, 이후의 복호화에서 얻어진 RL값 중, L의 절대값이 다시 임계값 이하가 되어도, 가변 길이 부호 테이블 1로의 전환은 행하지 않고, 가변 길이 부호 테이블 2를 이용하여 변환을 행한다. 이상과 같이 하여, 1블록분의 RL값이 생성되면(EOB가 검출되면), 이것들은 재배열부(513)에 입력된다. 여기에서는, 도 10(a)의 RL열이 생성되었다고 한다.
재배열부(513)는, 입력된 RL열을 역방향으로 다시 배열한다. 단, EOB는 재배열의 대상으로부터는 제외한다. 재배열한 후의 상태는 도 10(b)가 된다. 이와 같이 재배열된 RL열은 계수 생성부(514)에 입력된다.
계수 생성부(514)는, 입력된 RL열을 계수값으로 변환하고, 소정의 주사 방법으로 계수 블록으로 이차원화한다. 이 계수값으로의 변환시에는, 소정의 주사 순서에 기초하여, R로 나타내어진 값만큼 계수값(「0」)을 생성하고, 그 다음에 L로 나타내어진 값의 계수값을 생성하는 것을 반복함으로써, RL열로부터 계수값으로의 변환을 행한다. 여기에서는, 저주파수 영역부터 고주파수 영역을 향해서 지그재그로 주사하는 것으로 하면, 도 10(b)의 RL열은 도 11에 도시되는 계수 블록으로 변환되게 된다. 생성된 계수 블록은 역양자화부(520)에 입력된다.
역양자화부(520)는, 입력된 계수 블록에 대해서, 역양자화 처리를 행한다. 여기에서 역양자화 처리란, 계수값에 소정의 양자화 값을 적산하는 처리에 상당하는 처리를 의미한다. 여기에서 양자화 값은, 일반적으로 블록마다, 주파수 대역마다에 따라서 다르고, 부호열 중에서 얻어지거나, 또는 소정의 값을 이용하는 것으로 한다. 역양자화된 계수 블록은 역주파수 변환부(530)에 입력된다.
역주파수 변환부(530)는, 역양자화된 계수 블록에 대해서, 역주파수 변환을 실시하여 화소 블록으로 변환한다. 변환된 화소 블록은 프레임 메모리(540)에 입력된다.
프레임 메모리(540)에는, 복호화된 화소 블록이 순서대로 축적되고, 1화면분의 화소 블록이 축적되면, 출력 화상으로서 출력된다.
이상과 같이, 본 발명의 가변 길이 복호화 방법은, 입력 부호열을 먼저 제1 가변 길이 부호 테이블을 이용하여 복호화하고, 연속하는 계수값(0)의 개수(R)와 이것에 계속되는 0 이외의 계수값(L)의 조합인 RL값의 열을 생성한다. 그리고, L 의 절대값이 임계값을 넘으면, 그 이후의 가변 길이 부호의 복호화에는, 제2 가변 길이 부호 테이블을 이용한다. 그리고, RL값을 역순으로 재배열한 후, 블록 내의 소정의 주사 순서에 기초하여, RL값을 계수값으로 변환한다.
이상의 동작에 의해, 본 발명의 가변 길이 복호화 방법을 이용함으로써, 본 발명의 가변 길이 부호화 방법을 이용하여 부호화된 부호열을 바르게 복호화하는 것이 가능해진다.
또한, 본 실시 형태 2에서는, 프레임 내 부호화에 의해 생성된 부호열을 복호화하는 경우에 대해서 설명하였지만, 이것은 동화상 입력에 대해서 움직임 보상 등을 이용하여 프레임간 부호화를 하여 생성된 부호열을 복호화하는 경우이어도 좋고, 본 실시 형태의 방법에 의해, 동일한 효과를 얻을 수 있다.
또, 본 실시 형태 2에서는, 입력 화상이 수평 4화소, 수직 4화소의 블록으로 분할되어 부호화되어 있는 경우에 대해서 설명하였지만, 블록의 크기는 다른 크기이어도 된다.
또, 본 실시 형태 2에서는, 블록 내의 주사 방법으로서 도 11을 이용하여 설명하였지만, 이것은 부호화시에 이용한 주사 방법과 동일하면, 다른 주사 순서이어도 된다.
또, 본 실시 형태 2에서는, 코드 테이블의 예로서 도 5를 이용하여 설명하였지만, 이것은 부호화시에 이용한 코드 테이블과 동일하면, 다른 코드 테이블이어도 된다.
또, 본 실시 형태 2에서는, 가변 길이 부호 테이블의 예로서 도 6을 이용하 여 설명하였지만, 이것은 부호화시에 이용한 가변 길이 부호 테이블과 동일하면, 다른 테이블이어도 된다. 또, 가변 길이 부호 테이블을 2개 이용하는 경우에 대해서 설명하였지만, 이것은 가변 길이 부호 테이블을 3개 이상 이용하여, 다수의 임계값을 이용하고, 각 임계값을 넘을 때마다 가변 길이 부호 테이블을 전환하도록 해도 된다. 단, 이 때의 가변 길이 부호 테이블의 구성 및 임계값은 부호화시에 이용한 것과 동일하지 않으면 안된다.
또, 본 실시 형태 2에서는, L의 절대값이 임계값을 넘은 경우에, 가변 길이 부호 테이블을 전환하는 경우에 대해서 설명하였지만, 이것은 코드 번호가 임계값을 넘은 경우에, 가변 길이 부호 테이블을 전환해도 동일한 효과를 얻을 수 있다.
또, 본 실시 형태 2에서는, RL열의 최후에 EOB가 부가되어 부호화되어 있는 부호열을 복호화하는 경우에 대해서 설명하였지만, 이것은 RL열의 최초에 RL값의 개수가 부가되어 부호화되어 있는 부호열을 복호화해도 된다. 이 경우의 도 10에 대응하는, 복호화에 의해 얻어지는 RL값의 개수 및 RL열은, 도 12(a) 및 도 12(b)와 같아진다. 또 이 때, 도 5에 도시하는 코드 테이블에서, EOB로의 코드 번호의 할당은 불필요하게 된다.
이상과 같이 본 발명의 가변 길이 부호화 방법에서는, 블록 내의 주파수 계수값을 저주파수 영역부터 고주파수 영역을 향해서 주사하여 일차원화한다. 그리고, 일차원화된 계수값에 대해서, 연속하는 계수값(0)의 개수(R)와 이것에 계속되는 0 이외의 계수값(L)의 조합인 RL값의 열을 생성한다. 그리고, RL값을 주사 순서와는 역순으로 가변 길이 부호로 변환해 간다. 가변 길이 부호로 변환할 때에 는, 가변 길이 부호 테이블을 다수 준비한다. 그리고, 먼저, 제1 가변 길이 부호 테이블을 이용하여 변환을 행하고, L의 절대값 또는 코드 번호가 임계값을 넘으면, 이후의 RL값에 대해서는 제2 가변 길이 부호 테이블을 이용하여 변환을 행한다. 이 때에는, 제1 가변 길이 부호 테이블은, 제2 가변 길이 부호 테이블과 비교하여, 코드 번호가 작을 때에 가변 길이 부호 길이가 짧아지는 구성으로 하고, 제2 가변 길이 부호 테이블은, 제1 가변 길이 부호 테이블과 비교하여, 코드 번호가 클 때에 가변 길이 부호 길이가 짧아지는 구성으로 한다.
일반적으로 저주파수 성분일수록 L의 절대값이나 코드 번호는 커지기 때문에, 저주파수 영역부터 고주파수 영역으로 주사하여 RL값을 생성한 것과는 역순으로 RL값을 가변 길이 부호로 변환해 가면, L의 절대값은 커져간다. 따라서, L의 절대값이 임계값을 넘은 후에, 코드 번호가 클 때에 가변 길이 부호 길이가 짧아지는 가변 길이 부호 테이블을 이용함으로써, 합계의 부호량을 작게 할 수 있다.
또, 본 발명의 가변 길이 복호화 방법은, 입력 부호열을 먼저 제1 가변 길이 부호 테이블을 이용하여 복호화하고, 연속하는 계수값(0)의 개수(R)와 이것에 계속되는 0 이외의 계수값(L)의 조합인 RL값의 열을 생성한다. 그리고, L의 절대값 또는 코드 번호가 임계값을 넘으면, 이 이후의 가변 길이 부호의 복호화에는, 제2 가변 길이 부호 테이블을 이용한다. 그리고, RL값을 역순으로 재배열한 후, 블록 내의 소정의 주사 순서에 기초하여, RL값을 계수값으로 변환한다.
이상의 동작에 의해, 본 발명의 가변 길이 복호화 방법을 이용함으로써, 본 발명의 가변 길이 부호화 방법을 이용하여 부호화된 부호열을 바르게 복호화하는 것이 가능해진다.
(실시 형태 3)
이하, 본 발명의 제3 실시 형태에서의 부호화 장치에 대해서 도면을 참조하면서 설명한다.
도 13은 본 발명의 제3 실시 형태에서의 부호화 장치(100b)의 구성을 도시하는 블록도이다.
이 부호화 장치(100b)는, 입력 화상(화상 데이터)에 대해서 부호화 효율을 향상하여 픽처 내 부호화 처리를 행하는 것으로서, 블록 변환부(101), 주파수 변환부(102), 양자화부(103), 및 가변 길이 부호화부(150)를 구비하고 있다.
블록 변환부(101)는, 입력 화상을 수평 4 ×수직 4화소의 크기의 화소 블록으로 분할하여 주파수 변환부(102)에 출력한다.
주파수 변환부(102)는, 분할된 상기 각 화소 블록에 대해서, 주파수 변환을 실시하여 주파수 계수를 생성한다. 그리고 주파수 변환부(102)는, 생성된 주파수 계수를 양자화부(103)에 출력한다.
양자화부(103)는, 주파수 변환부(102)로부터 출력된 주파수 계수에 대해서 양자화 처리를 행한다. 여기에서 양자화 처리란, 주파수 계수를 소정의 양자화 값에 의해서 제산하는 것에 상당하는 처리를 의미한다. 또 양자화 값은, 일반적으로 화소 블록마다, 주파수 대역마다에 따라서 다르다. 그리고 양자화부(103)는 양자화된 주파수 계수를 가변 길이 부호화부(150)에 출력한다.
가변 길이 부호화부(150)는, 양자화부(103)에서 양자화된 주파수 계수를 가 변 길이 부호화한다.
도 14는 가변 길이 부호화부(150)의 내부 구성을 도시하는 블록도이다.
이 도 14에 도시하는 바와 같이, 가변 길이 부호화부(150)는, RL열 생성부(201), 재배열부(202), 2값화부(203), 테이블 기억부(204), 및 산술 부호화부(205)를 구비하고 있다.
RL열 생성부(201)는, 양자화부(103)로부터 출력된 양자화된 주파수 계수(이하, 「계수」라고 약칭함)를 소정의 주사 방법으로 일차원화한다. 그리고, RL열 생성부(201)는, 일차원화된 계수에 대해서, 연속하는 계수의 값「0」의 개수(R)와 이것에 계속되는「0」이외의 계수의 값(L)의 조합(이하,「RL값」이라고 칭함)의 열(이하, 「RL열」이라고 칭함)을 생성한다. 그 예를 도 15, 도 16을 이용하여 설명한다.
도 15의 (a)는, 양자화부(103)로부터 출력되는 다수의 계수에 의해 구성되는 계수 블록을 도시한다. 여기에서, 계수 블록 내의 좌측 위의 주파수 계수가 직류 성분을 나타내고, 오른쪽으로 향할수록 수평 방향의 주파수 성분이 높아지고, 아래를 향할수록 수직 방향의 주파수 성분이 높아진다.
도 15의 (b)는, 계수 블록 내의 다수의 계수를 일차원화할 때의 주사 방법을 설명하기 위한 설명도이다. RL열 생성부(201)는, 도 15의 (b)의 화살표로 도시하는 바와 같이, 계수 블록 내를 저주파수 영역부터 고주파수 영역을 향해서 주사함으로써, 계수의 일차원화를 행한다.
도 16의 (a)는, RL열 생성부(201)로부터 출력되는 RL열을 도시한다.
이 도 16의 (a) 중에서, 최초의 숫자는 계수의 개수를 도시한다. 일반적으로, 고주파수 영역일수록 계수의 값이 「0」으로 되기 쉽기 때문에, 저주파수 영역부터 고주파수 영역을 향해서 주사함으로써, RL열의 정보량(중의 개수(R)의 정보량)을 작게 할 수 있다. 생성된 RL열은 재배열부(202)에 입력된다.
재배열부(202)는 입력된 RL열을 역방향으로 다시 배열한다. 단, 계수의 개수는 재배열의 대상으로부터는 제외한다.
도 16의 (b)는, 재배열부(202)에서 재배열된 RL열을 도시한다. 이와 같이 재배열함으로써, 상술한 바와 같이 정보량을 작게 하면서도, 결과적으로, 계수 블록 내를 고주파수 영역부터 저주파수 영역을 향해서 주사하여 계수의 일차원화가 행해지게 된다. 그리고, 이와 같이 재배열된 RL열은 2값화부(203)에 출력된다.
2값화부(203)는, 계수의 개수 및 각 RL값에 대해서, 2값화, 즉「0」이나「1」로 이루어지는 2값화 데이터로의 변환을 행한다. 여기에서, 개수(R)와 계수값(L)은 각각 별개로 2값화된다.
도 16의 (c)는, 재배열부(202)에서 재배열된 RL열의 계수값(L)만을 도시한다. 이들 계수값(L)에 대해서는, 그 절대값과 정부(正負) 부호가 별개로 처리된다. 또 2값화부(203)는 예를 들면 도 21에 도시하는 바와 같은 미리 정해진 2값화 테이블을 이용하여, 개수(R)와 계수값(L)의 절대값에 대해서 2값화를 행한다. 그리고 2값화부(203)는 이들에 대해서 2값화가 행해진 2값화 데이터를 산술 부호화부(205)에 대해서 출력한다.
산술 부호화부(205)는, 2값화 데이터로서 나타나는 개수(R)값 및 계수값(L) 의 절대값에 대해서 2값 산술 부호화를 행하는 동시에, 계수값(L)의 정부 부호에 대해서도 부호화를 행한다. 여기에서는, 계수값(L)의 절대값의 산술 부호화에 대해서 설명한다. 산술 부호화부(205)는, 2값화 데이터로서 나타나는 계수값(L)의 절대값에 산술 부호화를 실시하는 경우에는, 다수의 확률 테이블을 전환하여 이용한다. 이들 다수의 확률 테이블은 테이블 기억부(204)에 기억되어 있다.
도 17은 확률 테이블의 전환 방법을 도시하는 천이도이다.
이 도 17에 도시하는 바와 같이, 산술 부호화부(205)는 확률 테이블을 4개 이용하여, 선두의 계수값(L)의 절대값에 대해서는 확률 테이블 1을 이용하여 이것을 산술 부호화한다. 그리고, 그 이후의 계수값(L)의 절대값에 대해서는, 산술 부호화부(205)는 직전의 계수값(L)의 절대값을 부호화할 때에 이용된 확률 테이블의 테이블 번호와, 그 절대값에 따라서 사용되는 확률 테이블을 전환한다. 여기에서, 4개의 확률 테이블은, 확률 테이블 1, 확률 테이블 2, 확률 테이블 3, 확률 테이블 4이고, 확률 테이블 1의 테이블 번호는「1」, 확률 테이블 2의 테이블 번호는「2」, 확률 테이블 3의 테이블 번호는「3」, 확률 테이블 4의 테이블 번호는「4」이다.
구체적으로, 직전의 계수값(L)의 절대값이 확률 테이블 1를 이용하여 부호화되고, 또한 그 절대값이「1」인 경우, 또는, 직전의 계수값(L)의 절대값이 확률 테이블 2를 이용하여 부호화되고, 또한 그 절대값이「1」인 경우에는, 확률 테이블 2가 이용된다. 직전의 계수값(L)의 절대값이 확률 테이블 1을 이용하여 부호화되고, 또한 그 절대값이「2」인 경우, 또는, 직전의 계수값(L)의 절대값이 확률 테이 블 2을 이용하여 부호화되며, 또한 그 절대값이「2」인 경우, 또는, 직전의 계수값(L)의 절대값이 확률 테이블 3을 이용하여 부호화되고, 또한 그 절대값이「2 이하」인 경우에는 확률 테이블 3이 이용된다. 직전의 계수값(L)의 절대값이「3 이상」인 경우, 또는, 직전의 계수값(L)의 절대값이 확률 테이블 4를 이용하여 부호화되어 있는 경우에는, 확률 테이블 4가 이용된다.
이와 같이 확률 테이블의 전환은, 테이블 번호가 작은 확률 테이블로부터 테이블 번호가 큰 확률 테이블로의 일 방향이고, 직전의 계수값(L)의 절대값이 소정의 임계값 이하가 되어도, 역방향으로의 전환은 행해지지 않는다. 이것이 종래예와는 다른 점이다.
도 18은 상기 4개의 확률 테이블(1∼4)의 내용을 도시하는 확률 테이블 내용 표시도이다.
확률 테이블(1∼4)의 각각은, 도 18에 도시하는 바와 같이, 「0」이 발생하는 확률과, 「1」이 발생하는 확률로 구성된다.
예를 들면 확률 테이블 1은, 「0」이 발생하는 확률「0.1」과, 「1」이 발생하는 확률 「0.9」로 구성되고, 확률 테이블 2은, 「0」이 발생하는 확률 「0.2」과, 「1」이 발생하는 확률「0.8」로 구성되어 있다.
요컨대, 계수값(L)의 절대값이「2」이면, 이「2」가 2값화된 것이 「01」이기 때문에, 산술 부호화부(205)는, 이것을 확률 테이블 1을 이용하여 산술 부호화할 때에는, 상기「01」의「0」에 대응하는 확률「0.1」과, 상기 「01」의「1」에 대응하는 확률 「0.9」을 이용하고, 이 「01」을 산술 부호화한다.
여기에서, 「0」이 발생하는 확률과「1」이 발생하는 확률의 합계는 1.0이기 때문에, 양자의 확률을 유지해 둘 필요는 없고, 한쪽의 확률만을 유지해도 된다.
도 16의 (c)에 도시하는 계수값(L)의 절대값(2값화된 것)이 부호화되는 경우 에서의 확률 테이블의 전환 예를 이하에 설명한다.
산술 부호화부(205)는, 최초의 계수값(L(-2))의 절대값에 대해서는, 확률 테이블 1을 이용한다. 여기에서 계수값(L)의 절대값이 2이기 때문에, 산술 부호화부(205)는 사용되는 확률 테이블을 확률 테이블 1로부터 확률 테이블 3으로 천이시킨다. 이것에 의해 산술 부호화부(205)는 2번째의 계수값(L(3))의 절대값을 확률 테이블 3을 이용하여 산술 부호화한다. 여기에서의 계수값(L)의 절대값은「3」이기 때문에, 산술 부호화부(205)는 사용되는 확률 테이블을 확률 테이블 3으로부터 확률 테이블 4로 천이시킨다. 이것에 의해 산술 부호화부(205)는 3번째의 계수값(6)의 절대값을 확률 테이블 4를 이용하여 산술 부호화한다. 여기에서 사용되는 확률 테이블이 확률 테이블 4로 천이되었기 때문에, 산술 부호화부(205)는, 이후의 계수값(L)의 절대값을 전부 확률 테이블 4를 이용하여 산술 부호화한다. 예를 들면, 5번째의 계수값(L)의 절대값은「2」가 되지만, 종래예와는 달리, 산술 부호화부(205)는, 6번째 이후의 계수값(L)의 절대값을 산술 부호화할 때에는, 확률 테이블을 천이시키지 않고 확률 테이블 4를 이용한다.
또, 각 확률 테이블은, 입력이「0」인지「1」인지에 따라서 수시로 갱신되기 때문에, 입력에 적응한 확률 테이블로 갱신되어 간다.
이상과 같이, 본 발명에 관한 화상의 부호화 장치(100b)의 가변 길이 부호화 부(150)에서의 가변 길이 부호화 방법은, 계수 블록 내의 계수를 저주파수 영역부터 고주파수 영역을 향해서 주사하여 일차원화한다. 그리고, 일차원화된 계수에 대해서, 연속하는 계수값(「0」)의 개수(R)와 이것에 계속되는「0」이외의 계수값(L)의 조합인 RL값의 열(RL열)을 생성한다. 그리고, RL값을 주사 순서와는 역순으로 가변 길이 부호로 변환해 간다. 가변 길이 부호로 변환할 때에는, 개수(R), 계수값(L)의 절대값, 계수값(L)의 정부 부호를 개별로 변환한다. 이들의 변환시에는, 먼저 2값화를 행하고, 그 후, 산술 부호를 실시한다. 계수값(L)의 절대값에 대해서 산술 부호를 행할 때에는, 다수의 확률 테이블을 전환한다. 확률 테이블을 전환할 때에는, 현재의 확률 테이블의 테이블 번호 및 계수값(L)의 절대값에 의해서, 다음 계수값(L)의 절대값을 부호화할 때의 확률 테이블을 결정한다. 그리고, 확률 테이블의 천이는 일 방향만으로 하여, 계수값(L)의 절대값이 한번 소정의 값을 넘으면, 그 이후에는 모두 동일 확률 테이블에서 산술 부호화를 행한다.
일반적으로 저주파수 영역일수록 계수값(L)의 절대값은 크기 때문에, 고주파수 영역부터 저주파수 영역의 순서로 주사하면, 계수값(L)의 절대값은 순서대로 커져가는 경우가 많다. 따라서, 계수값(L)의 절대값이 한번 소정의 값을 넘으면, 그 이후는 계수값(L)의 절대값이 소정값보다도 작아졌다고 해도, 작아진 것은 그 계수값(L)의 절대값만일 가능성이 대단히 높고, 동일 확률 테이블을 이용하여 산술 부호화함으로써, 확률 테이블의 갱신이 입력에 적응하기 쉽게 되어, 그것에 의해 각 확률 테이블의 심벌(2값화 데이터의 「0」또는「1」)의 발생 확률에 편차가 생기기 쉽게 된다(즉, 「0」또는「1」의 어느 하나의 발생 확률이 1.0에 가까운 값이 된 다). 산술 부호화는, 확률 테이블 내의 확률값에 편차가 생길수록, 부호화 효율이 높아지는 특징을 갖는다. 따라서, 본 발명의 가변 길이 부호화 방법을 이용함으로써, 부호화 효율의 개선을 도모할 수 있다.
이상, 본 발명에 관한 화상 부호화 장치에 대해서 본 실시 형태를 이용하여 설명하였지만, 본 발명은 이들에 한정되는 것은 아니다.
예를 들면, 본 실시 형태에서는, 픽처 내 부호화에 의해 화상을 부호화하는 경우에 대해서 설명하였지만, 이것은 동화상 입력에 대해서 움직임 보상 등을 이용하여 픽처간 부호화를 하는 경우이어도 좋고, 동일 효과를 얻을 수 있다.
또, 본 실시 형태에서는, 입력 화상을 수평 4 ×수직 4화소의 화소 블록으로 분할하는 경우에 대해서 설명하였지만, 그 화소 블록의 크기는 다른 크기이어도 된다.
또, 본 실시 형태에서는, 계수 블록 내의 주사 방법으로서 도 15의 (b)를 이용하여 설명하였지만, 이것은 저주파수 영역부터 고주파수 영역으로의 주사이면 다른 주사 순서이어도 된다.
또, 본 실시 형태에서는, RL열 생성부(201)가, 양자화된 주파수 계수를 소정의 주사 방법으로 일차원화하여, 일차원화된 계수에 대해서, 연속하는 계수값(「0」)의 개수(R)와 이것에 계속되는「0」이외의 계수값(L)의 조합의 열(RL 열)을 생성하는 경우에 대해서 설명하였지만, 개수(R)의 열과 계수값(L)의 열을 개별로 생성해도 된다. 예를 들면, 계수값(L)의 열을 생성하는 경우, 고주파수 영역부터 저주파수 영역을 향해서 주사하여, 계수값이 0 이외의 계수를 선택함으로써 생성하 면, 재배열부(202)를 생략할 수 있다.
또, 본 실시 형태에서는 4개의 확률 테이블을 이용하여, 도 17에 도시하는 천이도에 기초하여 확률 테이블이 천이하는 경우에 대해서 설명하였지만, 확률 테이블의 수나, 도 17에서의 천이시의 계수값(L)의 절대값에 대한 임계값은 다른 값이어도 된다.
또, 본 실시 형태에서는, 2값화 테이블의 예로서 도 21을 이용하여 설명하였지만, 이것은 다른 테이블이어도 된다.
또, 본 실시 형태에서는, 산술 부호화부가 2값 산술 부호를 행하는 경우에 대해서 설명하였지만, 다값 산술 부호를 행해도 된다. 이 경우, 2값화부(203)를 생략할 수 있다.
(실시 형태 4)
이하, 본 발명의 제4 실시 형태에서의 화상 복호화 장치에 대해서 도면을 참조하면서 설명한다.
도 19는 본 발명의 제4 실시 형태에서의 복호화 장치(500b)의 구성을 도시하는 블록도이다.
이 복호화 장치(500b)는, 화상 데이터가 픽처 내 부호화 처리된 부호열에 대해서, 픽처 내 복호화 처리를 행하는 것으로서, 가변 길이 복호화부(601), 역양자화부(602), 역주파수 변환부(603), 및 프레임 메모리(604)를 구비하고 있다. 여기에서 입력되는 상기 부호열은, 예를 들면, 실시 형태 3의 부호화 장치(100b)의 가변 길이 부호화 방법에 의해 생성된 것으로, 먼저 가변 길이 복호화부(601)가 이것 을 취득한다.
가변 길이 복호화부(601)는, 부호열을 취득하면, 이 부호열에 대해서 가변 길이 복호화함으로써 도 15의 (a)에 도시하는 바와 같은 다수의 계수로 구성되는 계수 블록을 작성한다.
역양자화부(602)는, 가변 길이 복호화부(601)로부터 상기 계수 블록을 취득하면, 이 계수 블록에 대해서 역양자화 처리를 행한다. 여기에서 역양자화 처리란, 계수 블록의 각 계수에 소정의 양자화 값을 적산하는 것을 의미한다. 여기에서 양자화 값은, 일반적으로 각각의 계수 블록이나 주파수 대역마다에 따라서 다르고, 부호열 중에서 얻어진다. 그리고 역양자화부(602)는, 역양자화된 계수 블록을 역주파수 변환부(603)에 출력한다.
역주파수 변환부(603)는, 역양자화된 계수 블록에 대해서, 역주파수 변환을 실시하여, 계수 블록을 화소 블록으로 변환한다. 그리고 역주파수 변환부(603)는 변환된 화소 블록을 프레임 메모리(604)에 출력한다.
프레임 메모리(604)는, 복호화된 화소 블록을 순서대로 축적하여, 1화면분의 화소 블록이 축적되면, 이들 화소 블록을 출력 화상으로서 출력한다.
여기에서 상술한 가변 길이 복호화부(601)에 대해서 상세히 설명한다.
도 20은 가변 길이 복호화부(601)의 내부 구성을 도시하는 블록도이다.
이 도 20에 도시하는 바와 같이 가변 길이 복호화부(601)는, 산술 복호화부(701), 다값화부(702), 테이블 기억부(704), 재배열부(704), 및 계수 생성부(705)를 구비하고 있다.
테이블 기억부(704)는, 예를 들면 도 18에 도시하는 바와 같은 4개의 확률 테이블(1∼4)을 유지하고 있다.
산술 복호화부(701)는, 부호열을 취득하면, 먼저 이 부호열에 대해서, 산술 복호화를 행한다. 여기에서는, 부호열에 포함되는 부호화된 계수값(L)의 절대값(2값화된 것)에 대한 2값 산술 복호화에 대해서 설명한다.
산술 복호화부(701)는, 부호화된 계수값(L)의 절대값에 대해서 산술 복호화를 행할 때에는, 이미 복호화되어 다값화된 직전의 계수값(L)의 절대값을 다값화부(702)로부터 취득하여, 그 계수값(L)의 절대값에 따라서 테이블 기억부(704)에 유지되어 있는 확률 테이블(1∼4)을 도 17에 도시하는 바와 같이 전환하여 이용하고, 부호화된 각 계수값(L)의 절대값을 2값 산술 복호화하여 이들에 대응하는 2값화 데이터를 출력한다.
다값화부(702)는, 산술 부호화부(701)로부터 출력되는 2값화 데이터에 대해서, 예를 들면 도 21에 도시하는 바와 같은 2값화 테이블을 이용함으로써 다값화하고, 계수값(L)의 절대값으로 한다. 그리고 다값화부(702)는 계수값(L)의 절대값을 산술 복호화부(701)와 재배열부(704)에 출력한다.
이와 같은 산술 복호화부(701) 및 다값화부(702)의 상세한 동작에 대해서 설명한다.
먼저 산술 복호화부(701)는, 부호화된 선두의 계수값(L)의 절대값을 확률 테이블 1을 이용하여 산술 복호화한다. 그리고, 산술 복호화부(701)는, 산술 복호화하여 얻어진 2값화 데이터를 다값화부(702)에 대해서 출력한다. 다값화부(702)는, 2값화 테이블을 이용함으로써 2값화 데이터로부터 계수값(L)의 절대값으로의 변환을 행하고, 그 절대값을 산술 복호화부(701) 및 재배열부(704)에 대해서 출력한다.
다음에, 산술 복호화부(701)는, 그 이후의 부호화된 계수값(L)의 절대값에 대해서는, 직전의 부호화된 계수값(L)의 절대값을 2값 산술 복호화할 때에 이용된 확률 테이블의 테이블 번호와, 다값화부(702)로부터 취득된 직전의 계수값(L)의 절대값에 의해서, 사용되는 확률 테이블을 전환한다. 도 17에 도시하는 바와 같이, 직전의 부호화된 계수값(L)의 절대값이 확률 테이블 1를 이용하여 산술 복호화되고, 또한 다값화부(702)로부터 취득된 직전의 계수값(L)의 절대값이「1」인 경우, 또는, 직전의 부호화된 계수값(L)의 절대값이 확률 테이블 2를 이용하여 산술 복호화되고, 또한 다값화부(702)로부터 취득된 직전의 계수값(L)의 절대값이「1」인 경우에는, 확률 테이블 2가 이용된다. 직전의 부호화된 계수값(L)의 절대값이 확률 테이블 1을 이용하여 산술 복호화되고, 또한 다값화부(702)로부터 취득된 직전의 계수값(L)의 절대값이「2」인 경우, 또는, 직전의 부호화된 계수값(L)의 절대값이 확률 테이블 2를 이용하여 산술 복호화되고, 또한 다값화부(702)로부터 취득된 직전의 계수값(L)의 절대값이「2」인 경우, 또는, 직전의 부호화된 계수값(L)의 절대값이 확률 테이블 3을 이용하여 산술 복호화되고, 또한 다값화부(702)로부터 취득된 직전의 계수값(L)의 절대값이「2 이하」인 경우에는, 확률 테이블 3이 이용된다. 다값화부(702)로부터 취득된 직전의 계수값(L)의 절대값이「3 이상」의 경우, 또는, 직전의 부호화된 계수값(L)의 절대값이 확률 테이블 4를 이용하여 산술 복호화되어 있는 경우에는, 확률 테이블 4가 이용된다. 이와 같이 확률 테이블(1∼4) 의 전환은, 테이블 번호가 작은 확률 테이블로부터 테이블 번호가 큰 확률 테이블로의 일 방향이고, 다값화부(702)로부터 취득된 직전의 계수값(L)의 절대값이 소정의 임계값 이하가 되어도, 역방향으로의 전환은 행해지지 않는다. 이것이 종래예와는 다른 점이다.
도 16의 (c)에 도시하는 계수값(L)의 절대값으로 복호화되는 경우에서의 확률 테이블의 전환 예를 이하에 설명한다.
산술 복호화부(701)는, 최초의 부호화된 계수값(L(-2))의 절대값에 대해서는, 확률 테이블 1을 이용하여 2값화 데이터 「01」로 산술 복호화한다. 여기에서, 산술 복호화부(701)는, 그 2값화 데이터 「01」에 대해서 다값화된 「2」를 다값화부(702)로부터 취득하기 때문에, 사용되는 확률 테이블을 확률 테이블 1로부터 확률 테이블 3으로 천이시킨다. 이것에 의해 산술 복호화부(701)는, 2번째의 부호화된 계수값(L(3))의 절대값을 확률 테이블 3을 이용하여 2값화 데이터 「001」로 산술 복호화한다. 여기에서, 산술 복호화부(701)는, 그 2값화 데이터「001」에 대해서 다값화된「3」을 다값화부(702)로부터 취득하기 때문에, 사용되는 확률 테이블을 확률 테이블 3으로부터 확률 테이블 4로 천이시킨다. 이것에 의해 산술 복호화부(701)는 3번째의 부호화된 계수값(L(6))의 절대값을 확률 테이블 4를 이용하여 2값화 데이터 「000001」로 산술 복호화한다. 여기에서 사용되는 확률 테이블이 확률 테이블 4로 천이되었기 때문에, 산술 복호화부(701)는, 이후의 부호화된 계수값(L)의 절대값을 전부 확률 테이블 4를 이용하여 산술 복호화한다. 예를 들면, 5번째의 부호화된 계수값(L)의 절대값이 복호화되어 다값화된 결과는「2」가 되지 만, 종래예와는 달리, 산술 복호화부(701)는, 6번째 이후의 부호화된 계수값(L)의 절대값을 산술 복호화할 때에는, 확률 테이블을 천이시키지 않고 확률 테이블 4를 이용한다.
이상과 같은 동작에 의해, 1개의 계수 블록분의 계수값(L)의 절대값 및 개수(R) 및 계수값(L)의 정부 부호가 생성되면, 이들은 RL열로서 재배열부(704)에 입력된다.
재배열부(704)는 입력된 RL열을 역방향으로 다시 배열한다. 단, 계수의 개수는 재배열의 대상으로부터는 제외한다. 재배열 후의 상태는 도 16의 (a)가 된다. 그리고 재배열부(704)는 이와 같이 재배열된 RL열을 계수 생성부(705)에 출력한다.
계수 생성부(705)는, 입력된 RL열을 계수 블록으로 변환한다. 이 때에는, 계수 생성부(705)는, 소정의 주사 순서에 기초하여, 개수(R)에서 나타내어진 개수만큼 값「0」의 계수를 생성하고, 그 다음에 계수값(L)에서 나타내어진 값의 계수를 생성하는 것을 반복함으로써, RL열로부터 계수 블록으로의 변환을 행한다. 여기에서는, 계수 생성부(705)는, 도 15의 (b)에 도시하는 바와 같이 저주파수 영역부터 고주파수 영역을 향해서 지그재그로 주사하여, 도 16의 (a)에 도시하는 RL열을 도 15의 (a)에 도시하는 계수 블록으로 변환한다. 그리고 계수 생성부(705)는, 이와 같이 생성된 계수 블록을 역양자화부(602)에 출력한다.
이상과 같이, 본 발명에 관한 복호화 장치(500b)의 가변 길이 복호화부(601)에서의 가변 길이 복호화 방법은, 입력 부호열 중의 계수값(L)의 절대값의 산술 복 호화를 행하는 경우에, 다수의 확률 테이블을 전환한다. 확률 테이블을 전환할 때에는, 현재의 확률 테이블의 테이블 번호 및 복호화에 의해 얻어진 계수값(L)의 절대값에 의해서, 다음 계수값(L)의 절대값을 복호화할 때의 확률 테이블을 결정한다. 이 때의, 확률 테이블의 천이는 일 방향만으로 하고, 복호화에 의해 얻어진 계수값(L)의 절대값이 한번 소정의 값을 넘으면, 그 이후는 모두 동일 확률 테이블에서 산술 복호화를 행한다.
이와 같이, 본 발명의 가변 길이 복호화 방법을 이용함으로써, 본 발명의 가변 길이 부호화 방법을 이용하여 부호화된 부호열을 바르게 복호화하는 것이 가능해진다.
이상, 본 발명에 관한 복호화 장치에 대해서, 본 실시 형태를 이용하여 설명하였지만, 본 발명은 이들에 한정되는 것은 아니다.
예를 들면, 본 실시 형태에서는, 픽처 내 부호화에 의해 생성된 부호열을 복호화하는 경우에 대해서 설명하였지만, 이것은 동화상 입력에 대해서 움직임 보상 등을 이용하여 픽처간 부호화를 하여 생성된 부호열을 복호화하는 경우이어도 좋고, 동일한 효과를 얻을 수 있다.
또, 본 실시 형태에서는, 화상 데이터가 수평 4 ×수직 4화소의 화소 블록으로 분할되어 부호화되어 있는 부호열에 대해서 설명하였지만, 그 화소 블록의 크기는 다른 크기이어도 된다.
또, 본 실시 형태에서는 4개의 확률 테이블을 이용하여, 도 17에 도시하는 천이도에 기초하여 확률 테이블이 천이하는 경우에 대해서 설명하였지만, 확률 테 이블의 수나, 도 17에서의 천이시의 계수값(L)의 절대값에 대한 임계값은 다른 값이어도 된다.
또, 본 실시 형태에서는, 계수 블록 내의 주사 방법으로서 도 15(b)를 이용하여 설명하였지만, 이것은 부호화시에 이용한 주사 방법과 동일하면, 다른 주사 순서이어도 된다.
또, 본 실시 형태에서는, 2값화 테이블의 예로서 도 21을 이용하여 설명하였지만, 이것은 부호화시에 이용한 2값화 테이블과 동일하면, 다른 테이블이어도 된다.
또, 본 실시 형태에서는, 산술 복호화부(701)가 2값 산술 복호화를 행하는 경우에 대해서 설명하였지만, 이것은 다값 산술 복호화를 행해도 된다. 이 경우, 다값화부(702)를 생략할 수 있다.
다음에, 본 발명에 관한 또 다른 실시 형태를 도면을 참조하면서 설명한다.
(실시 형태 5)
도 22는 본 발명의 가변 길이 부호화 방법 및 이것을 이용한 동화상 부호화 방법이 적용되는 부호화 장치의 기능 구성을 도시하는 블록도이다. 또한, 이 실시 형태 5에서도, 실시 형태 1, 3의 부호화 장치(100a, 100b)와 동일하게, 본 발명의 동화상 부호화 방법으로 입력 화상을 프레임 내 부호화 처리하는 경우의 기능 구성이 도시되어 있다. 또, 이와 같은 부호화 장치(100c)를 구성하는 각 부는, CPU, CPU에 의해서 실행되는 프로그램이나 데이터를 미리 격납하는 ROM, 프로그램 실행시에 작업 영역을 제공하거나, 입력 화상 등을 일시적으로 격납하는 메모리 등에 의해 실현된다.
도 22에 도시되는 바와 같이, 이 실시 형태 5에 관한 부호화 장치(100c)는, 블록 변환부(110), 주파수 변환부(120), 양자화부(130), 가변 길이 부호화부(160)로 구성된다.
여기에서, 상기 실시 형태 1에 관한 부호화 장치(100a)에서는 R와 L의 페어를 다수의 가변 길이 부호 테이블(VLC 테이블)을 이용하여 부호화하도록 구성되고, 상기 실시 형태 3에 관한 부호화 장치(100b)에서는 L을 R과 별개로 다수의 확률 테이블을 이용하여 산술 부호화하도록 구성되어 있었지만, 이 실시 형태 5에 관한 부호화 장치(100c)에서는, L을 R과 별개로, 또한 다수의 가변 길이 부호 테이블을 이용하여 부호화하도록 구성되어 있는 점이 부호화 장치(100a, 100b)와 다르다. 이 때문에, 부호화 장치(100c)는 부호화 장치(100a, 100b)의 가변 길이 부호화부(140, 150) 대신에 가변 길이 부호화부(160)를 이용하여 구성된다. 또한, 다른 구성에 대해서는, 부호화 장치(100a, 100b)와 동일하기 때문에 그 설명을 생략하고, 가변 길이 부호화부(160)에 대해서 상세히 설명한다.
이 가변 길이 부호화부(160)는, 양자화부(130)에 의해서 양자화된 주파수 계수에 기초하여 L열과 R열을 개별로 생성하고, 1차원 VLC 전환 방식으로 계수의 절대값(|L|) 등의 부호열을 생성한다.
도 23은 가변 길이 부호화부(160)의 상세한 기능 구성을 도시하는 블록도이다.
도 23에 도시되는 바와 같이, 가변 길이 부호화부(160)는, R열 ·L열 생성 부(161)와, 코드 할당부(163)와, 테이블 기억부(164)로 구성된다.
R열 ·L열 생성부(161)는, 양자화된 주파수 계수(이하, 간단히「계수」라고도 기재함)를 주파수가 낮은 쪽으로부터 높은 쪽으로 지그재그 스캔하여 L열과 R열을 개별로 생성한다.
구체적으로는, 도 3(a)에 도시되는 블록의 계수가 입력된 경우, R열 ·L열 생성부(161)는 도 3(b)에 도시되는 바와 같이 지그재그 스캔한다. 그리고, R열 ·L열 생성부(161)는, 먼저, L열에 대해서, 도 24(a)에 도시되는 바와 같이, 계수값이「0」이외인 L의 개수(m)와, 그 계수의 절대값(|L|)의 열과, 그 계수의 부호의 열을 취득한다. 이것은, R이 L에 의존하는 것에 반해서, L은 R에 의존하지 않고, 독립하여 취득할 수 있기 때문이다. 다음에, R열 ·L열 생성부(161)는, 도 24(b)에 도시되는 바와 같이, R의 열(R열)을 생성한다.
테이블 기억부(164)는, L열의 각 계수의 절대값(|L|)을 가변 길이 부호화하기 위한 다수(예는, 8개)의 가변 길이 부호 테이블(1641a∼1641g)과, 계수의 절대값(|L|)에 대한 임계값을 다수 유지하여, 계수의 절대값(|L|)에 따라서 각 가변 길이 부호 테이블(1641a∼1641g)을 적응적으로 전환하기 위한 임계값 테이블(1642) 등을 유지하고 있다.
도 25는 각 가변 길이 부호 테이블(1641a∼1641g)의 구성예를 도시하는 도면이다. 또한, 각 가변 길이 부호 테이블(1641a∼1641g)은, 실제로는 계수의 절대값(|L|)과 그 2값화 코드를 각각 대응시켜서 구성되지만, 이 도면에서는 1개의 테이블로 도시되어 있다.
여기에서, 계수의 절대값(|L|)의 출현 빈도가 높을수록 작은 코드 번호가 할당되지만, 일반적으로는 계수의 절대값(|L|)이 작은 값일수록 출현 빈도가 높아진다. 이것은, 계수의 절대값(|L|)의 최대값은 영상에 의해서도, 화면 중에 의해서도, 그 값이 분산하여, 동일 값의 출현 빈도가 적은 것에 반해서, 계수의 절대값(|L|)의 최소값, 즉 고주파 성분은 거의「1」이나「2」정도로 집중하는 경향이 강하여, 동일 값의 출현 빈도가 많아지기 때문이다. 한편, 계수의 절대값(|L|)과 2값화 코드와 1개의 가변 길이 부호 테이블만으로 대응해 버리면, 계수의 절대값(|L|)이 클수록 그 부호 길이가 대단히 길어져 버린다. 이 때문에, 계수의 절대값(|L|)이 커져도 그 부호 길이가 그다지 길어지지 않도록, 계수의 절대값(|L|)에 따라서 적용되는 가변 길이 부호 테이블(1641a∼1641g)이 미리 준비된다.
각 가변 길이 부호 테이블(1641a∼1641g)은, 계수값의 최소값에서의 부호 길이가 각 상기 테이블에 각각 부여되는 번호(k)의 순서로 길어지고, 계수값의 최대값에서의 부호 길이가 번호(k)의 순서로 짧아지도록 계수값에 대한 부호 길이의 변화율을 다르게 하여 구성된다.
보다 상세하게는, 가변 길이 부호 테이블(1641a)은, 각 테이블 중에서, 계수의 절대값(|L|)이 작을 때에는 그 부호 길이가 가장 짧고, 계수의 절대값(|L|)이 클 때에는 그 부호 길이가 가장 긴 테이블이다. 즉, 가변 길이 부호 테이블(1641a)은, 각 가변 길이 부호 테이블(1641a∼1641g) 중에서, 계수의 절대값(|L|)에 대한 부호 길이의 변화율이 가장 큰 테이블로서, 계수의 절대값(|L|)이 작 은 경우(예를 들면, 「1」∼「3」)에 적용하는 데에 적합하다.
가변 길이 부호 테이블(1641g)은, 각 테이블 중에서, 계수의 절대값(|L|)이 작을 때에는 그 부호 길이가 가장 길고, 계수의 절대값(|L|)이 클 때에는 그 부호 길이가 가장 짧은 테이블이다. 즉, 가변 길이 부호 테이블(1641g)은, 각 가변 길이 부호 테이블(1641a∼1641g) 중에서, 계수의 절대값(|L|)에 대한 부호 길이의 변화율이 가장 작은 테이블로서, 계수의 절대값(|L|)이 큰 경우(예를 들면, 「193」∼)에 적용하는 데에 적합하다.
그 사이의 가변 길이 부호 테이블(1641b∼1641f)은, 1641b∼1641f의 순서로, 계수의 절대값(|L|)이 작을 때에는 그 부호 길이가 서서히 길어지고, 계수의 절대값(|L|)이 클 때에는 그 부호 길이가 서서히 짧아지는 테이블이다. 즉, 가변 길이 부호 테이블(1641b∼1641f)은, 1641b∼1641f의 순서로, 계수의 절대값(|L|)에 대한 부호 길이의 변화율이 서서히 작아지는 테이블로서, 가변 길이 부호 테이블(1641b)에서는 계수의 절대값(|L|)이 예를 들면「4」∼「6」인 경우에 사용하는 데에, 가변 길이 부호 테이블(1641c)에서는 계수의 절대값(|L|)이 예를 들면「7」∼「12」인 경우에 적용하는 데에, …, 각각 적합하다.
이것에 의해서, 계수값에 따른 부호 길이의 가변 길이 부호를 각 테이블에 적응시키는 것이 가능해지기 때문에, 부호화 효율을 향상시킬 수 있다. 요컨대, 어느 테이블에서는 계수값이 작은 경우에 다른 테이블보다도 짧은 부호 길이의 가변 길이 부호로 부호화하도록 하고, 다른 어느 테이블에서는 계수값이 큰 경우에 다른 테이블보다도 짧은 부호 길이의 가변 길이 부호로 부호화하도록 하여, 계수값 에 따라서 테이블을 전환함으로써, 부호 길이를 비약적으로 짧게 할 수 있다. 또한, 각 테이블마다 부호 길이가 짧아지는 범위를 할당할 수 있기 때문에, 부호화 효율의 향상을 실현할 수 있다. 또한, 부호화가 비산술 부호화, 즉 VLC 방식이기 때문에, 산술 부호화와 같은 복잡한 처리가 불필요하게 되고, 부호화에 이용하는 테이블이 결정되면 그 테이블을 참조하는 것만으로 간단히 가변 길이 부호로 부호화할 수 있다.
도 26은 임계값 테이블(1642)의 구성예를 도시하는 도면이다.
이 임계값 테이블(1642)은, 가변 길이 부호 테이블(1641a∼1641g)의 특성에 따라서 미리 설정되고, 각 가변 길이 부호 테이블(1641a∼1641f)의 전환에 이용하는 임계값을 다수 유지한다. 예를 들면, 가변 길이 부호 테이블(1641a, 1641b)의 전환에 대한 임계값은「4」로, 가변 길이 부호 테이블(1641b, 1641c)의 전환(천이)에 대한 임계값은 「7」로, …, 가변 길이 부호 테이블(1641f, 1641g)의 전환에 대한 임계값은「193」으로, 각각 설정된다. 이것에 의해서, 테이블의 전환의 타이밍을 간단히 판단할 수 있고, 계수의 절대값(|L|)에 따른 알맞은 테이블로 전환하는 것이 가능해진다.
코드 할당부(163)는, 테이블 기억부(164)가 유지하는 가변 길이 부호 테이블(1641a∼1641g) 및 임계값 테이블(1642)을 이용하여, R열 ·L열 생성부(161)로부터 출력된 계수의 절대값(|L|)을 R열과 개별로 가변 길이 부호화하여, 2값 코드를 할당한다. 즉, 코드 할당부(163)는 계수의 절대값(|L|)을 1차원 부호화한다.
다음에, 부호화 장치(100c)에서의 부호화 동작을 설명한다. 또한, 블록 변 환부(110)∼양자화부(130)의 동작에 대해서는, 상기한 부호화 장치(100a, 100b)에서의 동작과 동일하기 때문에 그 동작의 설명을 생략하고, 가변 길이 부호화부(160)에서의 가변 길이 부호화 동작을 상세히 설명한다.
양자화부(130)에 의해서 양자화된 주파수 계수는 가변 길이 부호화부(160)의 R열 ·L열 생성부(161)에 입력된다.
R열 ·L열 생성부(161)는, 먼저, 상기 도 3(b)의 경우와 같이, 블록 내의 양자화된 주파수 계수값을 직류 성분의 영역으로부터 고주파 성분의 영역을 향해서 지그재그 스캔함으로써 주파수 계수값을 일차원화한다. 다음에, R열 ·L열 생성부(161)는,「0」이외의 계수값(L)의 열(이하, 「L열」이라고도 기재함)과, 연속하는 계수값 (「0」)의 개수(R)의 열(이하, 「R열」이라고도 기재함)을 개별로 생성한다. 이 생성된 L열과 R열의 예를 도 24에 도시한다. 또한, L열에 대해서는, 계수의 개수(m)와, 계수의 절대값(|L|)과, 계수의 정부 부호 등으로 나누어진다. 또한, 계수의 정부 부호에 대해서는, 예를 들면, 정은「0」에, 부는「1」에 대응시킨다.
여기에서, 일반적으로 고주파수 성분일수록 계수값이 「0」이 되기 쉽기 때문에, 저주파수 영역부터 고주파수 영역을 향해서 주사함으로써, L열의 계수값이 「1」에 가까워진다.
코드 할당부(163)는, R열 ·L열 생성부(161)에 의해서 생성된 L열의 각 L값을 지그재그 스캔과 역순, 즉 주파수가 높은 쪽부터 순서대로 부호화한다. 즉, 코드 할당부(163)는 L열의 뒤부터 순서대로 가변 길이 부호 테이블(1641a∼1641g)을 이용하여 계수의 절대값(|L|)에 대응하는 호프만 부호(가변 길이 부호)를 순서대로 구한다.
또한, 지그재그 스캔의 순서와 역순으로 하는 이유는, 고주파 영역의「0」이외의 계수값「1」근방에 수속에 수속하여, 부호화에 이용하는 최초의 테이블을 결정하기 쉽고, 가변 길이 부호 테이블(1641a∼1641g)을 작성하기 쉬우며, 또한, 임계값을 결정하기 쉽기 때문이다.
코드 할당부(163)는, 테이블 기억부(164)에 유지되어 있는 다양한 테이블을 이용하여 L열의 L 및 R열의 각 R에 대해서 가변 길이 부호를 할당한다. 또한, 코드 할당부(163)는, 계수의 개수(m)에 대해서도 가변 길이 부호를 할당하거나 하지만, 여기에서는, 계수의 절대값(|L|)에 대해서 가변 길이 부호를 할당하는 처리를 설명한다.
도 27은 코드 할당부(163)가 실행하는 가변 길이 부호의 할당 처리를 도시하는 플로 차트이다.
코드 할당부(163)는, 블록 내 계수값(계수의 절대값(|L|))의 부호화를 개시함에 있어서 R열 ·L열 생성부(161)로부터 출력된 계수값의 개수(m)를 설정한다(S101). 다음에, 코드 할당부(163)는, 참조하는 가변 길이 부호 테이블의 초기값으로서 테이블 번호(k)에「0」을 설정한다(S102). 다음에, 코드 할당부(163)는 임계값 테이블(1642)을 참조하여 임계값(=4)을 설정한다(S103).
계수의 개수(m), 가변 길이 부호 테이블의 참조처(이 경우, 가변 길이 부호 테이블(1641a)) 및 임계값의 설정이 끝나면, 코드 할당부(163)는, R열 ·L열 생성 부(161)로부터 출력된 계수의 절대값(|L|)을 뒤에서 독출하여(S104), 설정된 번호의 가변 길이 부호 테이블을 이용하여 독출한 계수의 절대값(|L|)을 가변 길이 부호로 부호화한다(S105). 그리고, 부호화가 끝나면, 코드 할당부(163)는, 부호화에 의해서 얻어진 2값화 코드를 도시하지 않은 버퍼(예를 들면, FIFO 버퍼)에 격납하여(S106), 계수의 개수(m)을「1」감소시키고(S107), 감소한 개수(m)가 「0」인지의 여부, 즉 L열에 포함되는 계수의 전부를 부호화하여 종료되었는지의 여부를 판단한다(S108).
계수의 개수(m)가 「0」이 아니면(S108에서 No), 직전의 계수의 절대값(|L|)이 임계값을 넘었는지의 여부를 판단한다(S109). 넘지 않았으면(S109에서 No), 코드 할당부(163)는, 다음 계수의 절대값(|L|)을 뒤에서 독출하여(S104), 단계 S105∼단계 S108 등을 실행한다. 즉, 다음 계수의 절대값(|L|)을 전과 동일하게 가변 길이 부호 테이블을 이용하여 부호화한다.
직전의 계수의 절대값(|L|)이 임계값을 넘은 경우(S109에서 No), 코드 할당부(163)는 테이블 번호(k)를「1」증가시킨다(S110). 이것에 의해서, 다음 계수의 절대값(|L|)의 부호화시에는, 부호 길이의 변화율이 보다 적고, 부호 길이가 긴 계수의 절대값(|L|)의 부호화에 적합한 가변 길이 부호 테이블(예를 들면, 앞의 가변 길이 부호 테이블이 k=0의 1641a이면, k=1의 1641b)이 참조되게 된다.
테이블 번호(k)의 증가가 끝나면, 코드 할당부(163)는, 임계값 테이블(1642)을 참조하여, 다음의 임계값으로 갱신한다(예를 들면, 앞의 임계값이 「4」이면 「7」)(S111). 이것에 의해서, 계수의 절대값(|L|)이 새로운 임계값을 넘은 경우 에만, 부호 길이의 변화율이 보다 적고, 부호 길이가 긴 계수의 절대값(|L|)의 부호화에 적합한 다음 가변 길이 부호 테이블로 천이시킬 수 있다.
보다 상세하게는, 직전의 계수의 절대값(|L|)이 테이블 번호(「0」)의 가변 길이 부호 테이블(1641a)과 테이블 번호(「1」)의 가변 길이 부호 테이블(1641b) 사이의 임계값(「4」)을 넘은 경우, 도 28에 도시되는 바와 같이, 다음 계수의 절대값(|L|)의 부호화시의 참조처로서, 가변 길이 부호 테이블(1641a)로부터 가변 길이 부호 테이블(1641b)로 참조처가 전환되고, 임계값(「7」)이 설정된다.
직전의 계수의 절대값(|L|)이 테이블 번호(「1」∼「6」)의 가변 길이 부호 테이블(1641b∼1641g) 사이의 임계값(「7」∼「193」)을 넘은 경우에 대해서도, 임계값(「4」)의 경우와 동일하게, 다음 계수의 절대값(|L|)의 부호화시의 참조처로서, 테이블 번호(「1」)의 가변 길이 부호 테이블(1641b)에서 테이블 번호(2)의 가변 길이 부호 테이블(1641c)로, …, 가변 길이 부호 테이블(1641g)로 순차적으로 전환된다. 이 모양을 도 28에 도시한다.
여기에서, 테이블의 전환 방향은, 일 방향이고, 되돌아가는 경우는 없다. 이것에 의해서, 계수값에 의해서, 테이블이 빈번하게 교체되는 것이 방지되고, 테이블의 전환 횟수가 줄어든다. 따라서, 부호화 효율을 향상시킬 수 있다. 예를 들면, 메모리의 작업 영역이 한정되기 때문에 다음에 사용하는 테이블만을 작업 영역에 두는 것이 일반적이다. 이 경우에는, 테이블을 전환할 때마다 ROM으로부터 다음 테이블을 독출하여 작업 영역에 전개하는 데에 시간이 걸리기 때문에, 다음 계수값의 부호화까지 시간이 걸린다. 이 때문에, 일 방향으로 함으로써, 테이블의 전환 횟수를 제한하여, 다음 계수값의 부호화까지 시간을 토탈로서 단축할 수 있다고 하는 효과가 발휘된다.
이와 같은, 테이블 번호의 증가와, 임계값의 갱신이 종료되면, 코드 할당부(163)는, 다음 계수의 절대값(|L|)을 뒤에서 독출하여(S104), 단계 S105∼단계 S108 등을 실행한다. 즉, 전보다도 계수의 절대값(|L|)이 큰 것에 적합한 가변 길이 부호 테이블을 이용하여 부호화한다.
이와 같은 처리(S104∼S111)를 계수의 개수(m)가「0」이 될 때까지 반복하여 실행하고, 계수의 개수(m)가 「0」이 되면 상기 블록 내의 계수의 절대값(|L|)의 부호화를 종료한다.
구체적으로는, 블록 내에서의 계수의 절대값(|L|)의 열이 뒤에서부터「1」,「1」,「2」,「3」,「4」,「12」,「2」,「3」,「31」,「22」,「5」,「9」,「38」인 경우, 코드 할당부(163)는, 도 29에 도시되는 바와 같이, 먼저 가변 길이 부호 테이블(1641a)을 이용하여 「1」,「1」,「2」,「3」,「4」,「12」를 이 순서대로 2값 코드(「1」,「1」, 「010」, 「011」, 「00100」, 「0001100」)로 각각 부호화한다. 그리고, 계수의 절대값(|L|=「12」)의 코드화시에 임계값(「4」)을 넘었기 때문에, 코드 할당부(163)는, 부호화에 사용하는 테이블을 테이블 번호(k=1)의 가변 길이 부호 테이블(1641b)로 전환한다.
다음에, 코드 할당부(163)는, 전환한 가변 길이 부호 테이블(1641b)을 이용하여 다음 계수의 절대값(|L|=「2」,「3」,「31」)을 이 순서대로 2값 코드(「11 」,「0100」,「0000100000」)로 각각 부호화한다. 그리고, 계수의 절대값(|L|=「31」)의 코드화시에 임계값(「7」)를 넘었기 때문에, 코드 할당부(163)는 부호화에 사용하는 테이블을 테이블 번호(k=2)의 가변 길이 부호 테이블(1641c)로 전환한다.
또한, 코드 할당부(163)는 전환한 가변 길이 부호 테이블(1641c)을 이용하여 다음 계수의 절대값(|L|=「22」)을 2값화 코드「0011001」로 부호화한다. 그리고, 계수의 절대값(|L|=「22」)의 코드화시에 임계값(「13」)을 넘었기 때문에, 코드 할당부(163)는 부호화에 사용하는 테이블을 테이블 번호(k=3)의 가변 길이 부호 테이블(1641d)로 전환한다.
다음에, 코드 할당부(163)는, 전환한 가변 길이 부호 테이블(1641d)을 이용하여 다음 계수의 절대값(|L|=「5」,「9」,「38」)을 이 순서대로 가변 길이 부호 테이블(1641d)을 이용하여 2값 코드(「1100」, 「010000」, 「00101101」)로 각각 부호화한다.
이것에 의해서, 버퍼에는, 2값화 코드(「1101001100100000110011010000001000000011001110001000000101101」)가 격납된다.
또한, 이 버퍼에는 부호화된 L열의 계수의 개수(m)나, 계수의 정부 부호, R열의 R값 2값화 코드도 격납되어 있고, 버퍼에 격납된 부호화된 L열의 계수의 개수(m), 계수의 절대값(|L|)의 2값화 코드, 계수의 정부 부호, R열의 R값 2값화 코드는, CD 등의 기록 매체나, 인터넷, 위성 방송 등의 전송 매체를 통해서 복호화 장치로 보내진다.
여기에서, 상기 L열의 계수의 절대값(|L|)(「1」,「1」,「2」,「3」,「4」,「12」,「2」,「3」,「31」,「22」,「5」,「9」,「38」)을 가변 길이 부호 테이블(1641a)만으로 부호화한 경우를 상정하면, 그 2값화 코드는「1」,「1」, 「010」, 「011」, 「00100」, 「0001100」, 「010」, 「011」, 「000011111」, 「000010110」, 「00101」, 「001001」, 「00000100110」가 되고, 64비트의 부호 길이가 된다.
이것에 대해서, 본 실시 형태 5의 부호화 방법에서는, 블록 내의 계수의 절대값(|L|)의 최대값이 비교적 낮고, 또한 계수의 절대값(|L|)이 서서히 상승하지 않는 경우에도, 61비트의 부호 길이가 되어, 부호화 효율을 향상시킬 수 있다. 이것은, 계수의 절대값(|L|)이 예를 들면「22」,「38」인 경우, 가변 길이 부호 테이블(1641a)만으로는, 「000010110」의 9비트, 「00000100110」의 11비트를 각각 요하는 것에 반해서, 본 방식에서는 「0011001」의 7비트, 「00101101」의 8비트로 되는 것이 크게 기여하고 있다. 따라서, 통상의 블록 내의 계수의 절대값(|L|)의 최대값이 비교적 높고, 계수의 절대값(|L|)이 서서히 상승하는 경우에는, 부호화 효율을 비약적으로 상승시킬 수 있다.
또한, 상기 실시 형태 5에서는, 직전의 계수의 절대값(|L|)이 임계값을 넘으면(S109에서 Yes), 테이블 번호(k)를 1개 증가시키고(S110), 다음 번호의 가변 길이 부호 테이블을 이용하여 부호화하도록 하였지만(도 28 참조), 임계값을 넘은 직전의 계수의 절대값(|L|)에 의해서, 그 계수의 절대값(|L|)에 적응한 가변 길이 부호 테이블을 건너뛰어 전환하도록 해도 된다. 요컨대, 예를 들면 번 호(k=1)의 테이블을 참조하여 부호화하기 직전의 계수의 절대값(|L|)이「20」인 경우, 그 다음 계수의 절대값(|L|)이「20」보다 커질 가능성이 높기 때문에, 그 다음 계수의 절대값(|L|)의 부호화에는 k=3의 테이블을 참조하여 부호화하도록 해도 된다. 이 경우에는, 임계값도 그 가변 길이 부호 테이블에 합치한 임계값(예를 들면, 25)을 설정하면 좋다.
또, 가변 길이 부호 테이블을 8개 이용하는 경우에 대해서 설명하였지만, 이것은 가변 길이 부호 테이블을 2개∼7개, 또는 8개 이상 이용하여, 다수의 임계값을 이용하고, 각 임계값을 넘을 때마다 가변 길이 부호 테이블을 전환하도록 해도 된다.
또, 본 실시 형태 5에서는, 계수값을 절대값과 정부 부호로 나누어 부호화하고, 계수값의 절대값용의 각 가변 길이 부호 테이블을 정부 부호없이(절대값) 구성하였지만, 계수값을 정부 부호를 부착하여 부호화해도 좋고, 그 경우에는, 2값화 코드를 정부 부호를 부착하여 구성하면 좋다. 이 경우에는, 예를 들면 가변 길이 부호의 LSB비트에 정부 부호를 1비트 부가하면 좋다.
또, 본 실시 형태 5에서는, 프레임 내 부호화에 의해 화상을 부호화하는 경우 에 대해서 설명하였지만, 이것은 동화상 입력에 대해서 움직임 보상 등을 이용하여 프레임간 부호화를 하는 경우이어도 좋고, 본 실시 형태의 방법에 의해, 동일한 효과를 얻을 수 있다.
또, 본 실시 형태 5에서는, 입력 화상을 수평 4화소, 수직 4화소의 블록으로 분할하는 경우에 대해서 설명하였지만, 블록의 크기는 다른 크기이어도 된다.
또, 본 실시 형태 5에서는, 블록 내의 주사 방법으로서 도 3(b)를 이용하여 설명하였지만, 이것은 저주파수 영역부터 고주파수 영역으로의 주사이면 다른 주사 순서이어도 된다.
또, 본 실시 형태 5에서는, 가변 길이 부호 테이블의 예로서 도 25를 이용하여 설명하였지만, 이것은 다른 테이블이어도 된다.
또, 본 실시 형태 5에서는, 이것은 L열의 최초에 L값의 개수를 부가하는 경우에 대해서 설명하였지만, L열의 최후에 EOB를 부가해도 된다.
(실시 형태 6)
도 30은, 본 발명의 실시 형태에 관한 가변 길이 복호화 방법 및 이것을 이용한 동화상 복호화 방법이 적용되는 복호화 장치의 기능 구성을 도시하는 블록도이다. 또한, 여기에서는, 실시 형태 5에서 설명한 본 발명의 가변 길이 부호화 방법에 의해 생성된 부호열이 입력되는 것으로서 설명한다.
도 30에 도시되는 바와 같이, 복호화 장치(500c)는, 가변 길이 복호화부(560)와, 역양자화부(520)와, 역주파수 변환부(530)와, 프레임 메모리(540)로 구성된다. 또한, 이와 같은 복호화 장치(500c)를 구성하는 각 부는, 부호화 장치(100c)와 동일하게 CPU, CPU에 의해서 실행되는 프로그램이나 데이터를 미리 격납하는 ROM, 프로그램 실행시에 작업 영역을 제공하거나, 입력 부호화열 등을 일시적으로 격납하는 메모리 등에 의해 실현된다. 또, 역양자화부(520)와, 역주파수 변환부(530)와, 프레임 메모리(540)는, 상기 복호화 장치(500a, 500b)의 경우와 동일하기 때문에 그 설명을 생략하고, 가변 길이 복호화부(560)의 구성을 상세히 설 명한다.
가변 길이 복호화부(560)는, 코드 변환부(561)와, 테이블 기억부(562)와, 계수 생성부(564)로 구성된다.
테이블 기억부(562)는, 가변 길이 부호와 계수의 절대값(|L|)을 대응시킨 다수 종류(8개)의 가변 길이 부호(복호) 테이블(5621a∼5621g)과, 임계값 테이블(5622) 등을 미리 유지한다. 또한, 이 가변 길이 부호 테이블(5621a∼5621g)은 도 25에 도시되는 가변 길이 부호 테이블(1641a∼1641g)과 각각 동일하게 구성되고, 임계값 테이블(5622)은 도 26에 도시되는 임계값 테이블(1642)과 동일하게 구성된다.
코드 변환부(561)는, 테이블 기억부(562)에 유지되어 있는 테이블(가변 길이 부호 테이블(5621a∼5621g), 임계값 테이블(5622) 등)을 이용하여, 입력된 부호열에 대해서, 가변 길이 부호로부터 L열의 계수의 개수(m), 계수의 절대값(|L|), R열의 R값으로의 변환을 행한다. 계수의 절대값(|L|)으로의 변환은 가변 길이 부호 테이블(5621a∼5621g)을 이용하여 행한다.
계수 생성부(564)는, 입력된 L열과 R열에 기초하여 계수값으로 변환하고, 소정의 주사 방법으로 이차원화한다. 이 계수값으로의 변환시에는, 소정의 주사 순서에 기초하여, R로 나타내어진 값만큼 계수값(「0」)를 생성하고, 그 다음에 L로 나타내어진 값의 계수값을 생성하는 것을 반복함으로써, L열과 R열로부터 계수값으로의 변환을 행한다. 여기에서는, 저주파수 영역부터 고주파수 영역을 향해서 지그재그로 주사한다고 하면, 상기한 도 11에 도시되는 계수 블록으로 변환되게 된 다. 생성된 계수 블록은 역양자화부(520)에 입력된다.
다음에, 가변 길이 복호화부(560)의 각 부에서의 복호화 동작을 설명한다.
또한, 여기에서는 코드 변환부(561)에 입력된 2값화 코드 입력 부호열의 부호가 선두부터 순서대로「1」,「1」, 「010」, 「011」, 「00100」, 「0001100」,「11」, 「0100」, 「0000100000」,「0011001」,「1100」, 「010000」,「00101101」인 것으로서 설명한다.
코드 변환부(561)는, 가변 길이 부호의 복호화를 개시할 때에, 부호화 장치(100c)로부터 출력된 계수의 개수(m)를 복호화하고, 복호화한 계수의 개수(m)을 설정한다. 다음에, 코드 변환부(561)는, 참조하는 가변 길이 부호 테이블의 초기값으로서 테이블 번호(k)에 「0」을 설정한다. 다음에, 코드 할당부(163)는 임계값 테이블(5622)을 참조하여, 임계값(=4)을 설정한다(S103). 계수의 개수(m), 가변 길이 부호 테이블의 참조처(이 경우, 가변 길이 부호 테이블(5621a)) 및 임계값의 설정이 종료되면, 코드 변환부(561)는, 부호화 장치(100c)로부터 출력된 순서대로 계수의 절대값(|L|)을 앞(즉, 고주파측)에서 독출하여, 설정된 번호의 가변 길이 부호 테이블을 이용하여 독출한 가변 길이 부호를 계수의 절대값(|L|)으로 가변 길이 복호화한다. 그리고, 복호화가 종료되면, 코드 변환부(561)는, 복호화에 의해서 얻어진 계수의 절대값(|L|)을 도시하지 않은 버퍼(예를 들면, FILO 버퍼)에 격납하여, 계수의 개수(m)을「1」 감소시키고, 감소 후의 개수(m)가 「0」인지의 여부, 즉 L열에 포함되는 계수의 전부를 복호화하였는지의 여부를 판단한다.
계수의 개수(m)가 「0」이 아니면, 가변 길이 복호화한 직전의 계수의 절대 값(|L|)이 임계값을 넘었는지의 여부를 판단한다. 넘지 않았으면, 코드 변환부(561)는, 다음 가변 길이 부호를 앞에서 독출하고, 전과 동일한 가변 길이 부호 테이블을 이용하여 계수의 절대값(|L|)으로 복호화한다.
가변 길이 복호화한 직전의 계수의 절대값(|L|)이 임계값을 넘은 경우, 코드 변환부(561)는 테이블 번호(k)를「1」증가시킨다. 이것에 의해서, 다음 계수의 절대값(|L|)의 부호화시에는, 부호 길이의 변화율이 보다 적은, 부호 길이가 긴 계수의 절대값(|L|)의 부호화에 적합한 가변 길이 부호 테이블(예를 들면, 앞의 가변 길이 부호 테이블이 5621a이면, 5621b)이 참조되게 된다. 테이블 번호(k)의 증가가 종료하면, 코드 변환부(561)는 임계값 테이블(5622)을 참조하여, 다음 임계값으로 갱신한다(예를 들면, 앞의 임계값이「4」이면「7」). 이것에 의해서, 계수의 절대값(|L|)이 새로운 임계값을 넘은 경우에만, 부호 길이의 변화율이 보다 적고, 부호 길이가 긴 계수의 가변 길이 부호의 복호화에 적합한 다음 가변 길이 부호 테이블로 천이시킬 수 있다.
보다 상세하게는, 1번째의 가변 길이 부호에 대해서는, k=0의 가변 길이 부호 테이블(5621a)을 참조한다. 현재, 가변 길이 부호 테이블(5621a)을 참조한 경우, 입력 부호열에 일치하는 것은, 가변 길이 부호(「1」)이고, 이 경우의 계수의 절대값(|L|)은「1」이 된다. 동일하게 하여, 가변 길이 부호 테이블(5621a)을 이용하여, 가변 길이 부호로부터 계수의 절대값(|L|)으로의 변환을 순서대로 행해 가면, 가변 길이 부호(「1」)가 계수의 절대값(|L|=「1」)으로, 가변 길이 부호(「010」)가 계수의 절대값(|L|=「3」)으로, 가변 길이 부호 (「00100」)가 계 수의 절대값(|L|=「4」)으로, 가변 길이 부호 (「0001100」)가 계수의 절대값(|L|=「12」)으로 각각 변환된다.
여기에서 계수의 절대값(|L|)에 대한 임계값을「4」로 하면, 6번째의 계수의 절대값(|L|=「12」)에서 임계값을 넘게 된다. 따라서, 코드 변환부(561)는, 이후의 가변 길이 부호의 계수의 절대값(|L|) 으로의 변환에서는, k=1인 다음 가변 길이 부호 테이블(5621b)을 이용하여 임계값으로 7을 설정하고, 계수의 절대값(|L|)으로 변환한다. 따라서, 다음 7번째의 가변 길이 부호(「11」)는 계수의 절대값 (|L|=「2」)으로 변환된다.
다음 8번째의 가변 길이 부호(「0100」)는 계수의 절대값(|L|=「3」)으로, 9번째의 가변 길이 부호(「000010000」)는 계수의 절대값(|L|=「31」)으로, 각각 변환된다. 여기에서 계수의 절대값(|L|)에 대한 임계값을「7」로 하면, 9번째의 계수의 절대값(|L|=「31」)에서 임계값을 넘게 된다. 따라서, 코드 변환부(561)는, 이후의 가변 길이 부호의 계수의 절대값(|L|)으로의 변환에서는, k=2인 다음 가변 길이 부호 테이블(5621b)을 이용하여 임계값으로 13을 설정하고, 계수의 절대값(|L|)으로 변환한다. 또한, 7번째의 계수의 절대값(|L|)으로의 복호화에서 얻어진 계수의 절대값(|L|)이 다시 임계값 7 이하가 되어도, 가변 길이 부호 테이블(5621a)로의 전환은 행하지 않고, 가변 길이 부호 테이블(5621b)을 이용하여 변환을 행한다.
이상과 같은 처리를 반복하여, 1블록분(m개)의 계수의 절대값(|L|)이 생성되면, 그것들은 FILO 버퍼에 의한 선입 후출에 의해서 역순으로 재배열된다. 또, 계수의 정부 부호에 대해서도, FILO 버퍼에 의한 선입 후출에 의해서 역순으로 재배열된다. 단, 개수는 재배열의 대상으로부터는 제외한다. 여기에서는, 도 24(a)에 도시되는 L열과 동일 순서(즉, 저주파부터 고주파를 향하는 순서)의 열이 생성된 것으로 한다. 이와 같이 재배열된 L열의 각 계수의 절대값(|L|)은 계수 생성부(564)에 입력된다. 또한, 코드 변환부(561)는 R열의 각 R에 대해서도 계수의 절대값(|L|)과 동일한 처리에 의해서 복호화하고, 도 24(a)에 도시되는 R열을 계수 생성부(564)에 출력한다.
계수 생성부(564)는, 입력된 L열과 R열에 기초하여, 계수값로 변환한다. 이 때에는, 소정의 주사 순서에 기초하여, R로 나타내어진 값만큼 계수값(「0」)를 생성하고, 그 다음에 L로 나타내어진 값의 계수값을 정부 부호를 부가하여 생성하는 것을 반복함으로써, L열과 R열로부터 계수값으로의 변환을 행한다. 여기에서는, 도 11에 도시되는 바와 같이 저주파수 영역부터 고주파수 영역을 향해서 지그재그로 주사하는 것으로 하면, 도 24(a)에 도시되는 L열과 도 24에 도시되는 R열은 계수 블록으로 변환되게 된다. 생성된 계수 블록은 역양자화부(520)에 입력된다.
이상과 같이, 본 발명의 실시 형태 6에 관한 가변 길이 복호화 방법은, 먼저, 복호화 단계에서, 복호화에 이용하는 다수의 가변 길이 부호(복호) 테이블을 일 방향으로 전환하면서, 전환한 가변 길이 부호 테이블을 이용하여 상기 부호열의 가변 길이 부호를 소정의 순서대로 주파수 영역에 관한 「0」이외의 계수값으로 복호화한다. 다음에, 계수값 변환 단계에서, 생성된 계수값에 기초하여 블록 내의 계수값으로 변환한다. 여기에서, 각 상기 테이블은, 최소의 계수값에서의 부호 길 이가 각 상기 테이블에 각각 부여되는 번호의 순서로 길어지고, 최대의 계수값에서의 부호 길이가 상기 번호의 순서로 짧아지도록 계수값에 대한 부호 길이의 변화율을 다르게 하여 구성된다. 또, 상기 임계값은, 계수값에 대응하는 부호 길이가 다른 테이블보다도 짧아지는 각 테이블의 적응 특성에 기초하여 설정된다. 상기 부호열의 가변 길이 부호는 고주파 성분부터 저주파 성분을 향하는 순서로 배열되고, 상기 복호화 단계는, 상기 부호열의 배열의 순서로 계수값으로 복호화하고, 복호화한 계수값을 부호열의 배열의 뒤에서 순서대로 출력함으로써 계수값의 계수값열을 생성하고, 상기 계수 생성 단계는 상기 계수값열의 배열의 순서로 계수값을 주사한다.
상기 부호화 단계는, 복호화된 계수의 절대값이 임계값을 넘으면, 복호화 대상의 가변 길이 부호의 복호화에 이용한 테이블로부터 상기 테이블에 부여된 번호보다 번호가 큰 테이블로 전환하여 다음 가변 길이 부호를 계수값로 복호화한다.
이상의 동작에 의해, 본 발명의 가변 길이 복호화 방법을 이용함으로써, 본 발명의 가변 길이 부호화 방법을 이용하여 부호화된 부호열을 바르게 복호화하는 것이 가능해진다.
또한, 상기 실시 형태 6에서는, 실시 형태 5의 경우와 동일하게 복호화된 직전의 계수의 절대값(|L|)이 임계값을 넘으면, 테이블 번호(k)를 1개 증가시키고, 다음 번호의 가변 길이 부호 테이블을 이용하여 복호화하도록 하였지만, 부호화시에 이용한 이용한 테이블의 전환 방법과 동일하면, 임계값을 넘은 직전의 계수의 절대값(|L|)에 의해서, 그 계수의 절대값(|L|)에 적응한 가변 길이 부호 테이 블로 건너뛰어 전환하도록 해도 된다. 이 경우에는, 임계값도 그 가변 길이 부호 테이블에 합치한 임계값을 설정하면 좋다.
또, 본 실시 형태 6에서는, 가변 길이 부호 테이블의 예로서 도 25를 이용하여 설명하였지만, 이것은 부호화시에 이용한 테이블과 동일하면, 다른 테이블이어도 된다. 또, 가변 길이 부호 테이블을 8개 이용하는 경우에 대해서 설명하였지만, 이것은 가변 길이 부호 테이블을 2개∼6개, 혹은 8개 이상 이용하고, 다수의 임계값을 이용하여, 각 임계값을 넘을 때마다 가변 길이 부호 테이블을 전환하도록 해도 된다. 단, 이 때의 가변 길이 부호 테이블의 구성 및 임계값은 부호화시에 이용한 것과 동일하지 않으면 안된다.
또, 본 실시 형태 6에서는, 계수값을 절대값과 정부 부호로 나누어 부호화하고, 계수값의 절대값용의 각 가변 길이 부호 테이블을 정부 부호없이(절대값) 구성하였지만, 계수값을 정부 부호를 부착하여 부호화해도 좋고, 그 경우에는 2값화 코드를 정부 부호 부착하여 구성해도 된다. 이 경우에는, 예를 들면 가변 길이 부호의 LSB비트에 정부 부호를 1비트 부가하면 좋다.
또, 본 실시 형태 6에서는, L의 값이 임계값을 넘은 경우에, 가변 길이 부호 테이블을 전환하도록 하였지만, 계수의 절대값(|L|)이 큰 순서(즉, 고주파측으로부터의 순서)로 복호화하는 경우에는, 번호가 큰 가변 길이 부호 테이블을 이용하여 복호화하고, 복호화한 계수의 절대값(|L|)이 임계값 미만으로 된 경우에, 번호가 작은 가변 길이 부호 테이블로 전환하도록 해도 된다.
또, 본 실시 형태 6에서는, 프레임 내 부호화에 의해 생성된 부호열을 복호 화 하는 경우에 대해서 설명하였지만, 이것은 동화상 입력에 대해서 움직임 보상 등을 이용하여 프레임간 부호화를 하여 생성된 부호열을 복호화하는 경우이어도 좋고, 본 실시 형태의 방법에 의해, 동일한 효과를 얻을 수 있다.
또, 본 실시 형태 6에서는, 입력 화상이 수평 4화소, 수직 4화소의 블록으로 분할되어 부호화되어 있는 경우에 대해서 설명하였지만, 블록의 크기는 다른 크기이어도 된다.
또, 본 실시 형태 6에서는, 블록 내의 주사 방법으로서 도 11을 이용하여 설명하였지만, 이것은 부호화시에 이용한 주사 방법과 동일하면, 다른 주사 순서이어도 된다.
(실시 형태 7)
다음에, 본 발명에 관한 가변 길이 부호화 방법, 가변 길이 복호화 방법, 가변 길이 부호화 장치, 가변 길이 복호화 장치, 동화상 부호화 방법, 동화상 복호화 방법, 동화상 부호화 장치 및 동화상 복호화 장치를 별도의 형태로 실현한 예에 대해서 설명한다.
상기 각 실시 형태에서 나타낸 부호화 장치 또는 복호화 장치의 구성을 실현하기 위한 프로그램을, 플렉시블 디스크 등의 기억 매체에 기록하도록 함으로써, 상기 각 실시 형태에서 나타낸 처리를 독립한 컴퓨터 시스템에서 간단히 실시하는 것이 가능해진다.
도 32는, 상기 실시 형태 1, 3, 5의 동화상 부호화 방법 또는 실시 형태 2, 4, 6의 동화상 복호화 방법의 처리를 행하기 위한 프로그램을 격납한 플렉시블 디 스크를 이용하여, 컴퓨터 시스템에 의해 실시하는 경우의 설명도이다.
도 32(b)는, 플렉시블 디스크의 정면에서 본 외관, 단면 구조, 및 플렉시블 디스크를 도시하고, 도 32(a)는 기록 매체 본체인 플렉시블 디스크의 물리 포맷의 예를 도시하고 있다. 플렉시블 디스크(FD)는 케이스(F) 내에 내장되고, 이 디스크의 표면에는, 동심원 형상으로 외주로부터는 내주를 향해서 다수의 트랙(Tr)이 형성되며, 각 트랙은 각도 방향으로 16의 섹터(Se)로 분할되어 있다. 따라서, 상기 프로그램을 격납한 플렉시블 디스크에서는, 상기 플렉시블 디스크(FD) 상에 할당된 영역에, 상기 프로그램으로서의 동화상 부호화 장치가 기록되어 있다.
또, 도 32(c)는, 플렉시블 디스크(FD)에 상기 프로그램의 기록 재생을 행하기 위한 구성을 도시한다. 상기 프로그램을 플렉시블 디스크(FD)에 기록하는 경우는, 컴퓨터 시스템(Cs)으로부터 상기 프로그램으로서의 동화상 부호화 장치 또는 동화상 복호화 장치를 플렉시블 디스트 드라이브를 통해서 기입한다. 또, 플렉시블 디스크 내의 프로그램에 의해 상기 동화상 부호화 장치를 컴퓨터 시스템 내에 구축하는 경우는, 플렉시블 디스크 드라이브에 의해 프로그램을 플렉시블 디스크로부터 독출하여 컴퓨터 시스템에 전송한다.
또한, 상기 설명에서는, 기록 매체로서 플렉시블 디스크를 이용하여 설명을 행하였지만, 광 디스크를 이용해도 동일하게 행할 수 있다. 또, 기록 매체는 이것에 한정되지 않고, IC 카드, ROM 카세트 등, 프로그램을 기록할 수 있는 것이면 동일하게 실시할 수 있다.
또한 여기에서, 상기 실시 형태에서 나타낸 동화상 예측 방법, 동화상 부호 화 장치, 동화상 복호화 장치의 응용예와 이것을 이용한 시스템을 설명한다.
도 33은, 콘텐츠 배송 서비스를 실현하는 콘텐츠 공급 시스템(ex100)의 전체 구성을 도시하는 블록도이다. 통신 서비스의 제공 영역을 소망의 크기로 분할하고, 각 셀 내에 각각 고정 무선국인 기지국(ex107∼ex110)이 설치되어 있다.
이 콘텐츠 공급 시스템(ex100)은, 예를 들면, 인터넷(ex101)에 인터넷 서비스 프로바이더(ex102) 및 전화망(ex104), 및 기지국(ex107∼ex110)을 통해서, 컴퓨터(ex111), PDA(personal digital assistant)(ex112), 카메라(ex113), 휴대 전화(ex114), 카메라가 부착된 휴대 전화(ex115) 등의 각 기기가 접속된다.
그러나, 콘텐츠 공급 시스템(ex100)은 도 33과 같은 조합에 한정되지 않고, 어느 하나를 조합하여 접속하도록 해도 된다. 또, 고정 무선국인 기지국(ex107∼ex110)을 통하지 않고, 각 기기가 전화망(ex104)에 직접 접속되어도 된다.
카메라(ex113)는 디지털 비디오 카메라 등의 동화상 촬영이 가능한 기기이다. 또, 휴대 전화는, PDC(Personal Digital Communications) 방식, CDMA(Code Division Multiple Access) 방식, W-CDMA(Wideband-Code Division Multiple Access) 방식, 혹은 GSM(Global System for Mobile Communications) 방식의 휴대 전화기, 또는 PHS(Personal Handyphone System) 등이고, 어느 것이라도 상관없다.
또, 스트리밍 서버(ex103)는, 카메라(ex113)로부터 기지국(ex109), 전화망(ex104)을 통해서 접속되어 있고, 카메라(ex113)를 이용하여 사용자가 송신하는 부호화 처리된 데이터에 기초한 라이브 배송 등이 가능해진다. 촬영한 데이터의 부호화 처리는 카메라(ex113)에서 행해도, 데이터의 송신 처리를 하는 서버 등에서 행해도 된다. 또, 카메라(116)로 촬영한 동화상 데이터는 컴퓨터(ex111)를 통해서 스트리밍 서버(ex103)로 송신되어도 된다. 카메라(ex116)는 디지털 카메라 등의 정지화상, 동화상이 촬영 가능한 기기이다. 이 경우, 동화상 데이터의 부호화는 카메라(ex116)에서 행해도 컴퓨터(ex111)에서 행해도 어느 쪽이라도 된다. 또, 부호화 처리는 컴퓨터(ex111)나 카메라(ex116)가 갖는 LSI(ex117)에서 처리하게 된다. 또한, 화상 부호화 ·복호화용의 소프트웨어를 컴퓨터(ex111) 등으로 독취 가능한 기록 매체인 어떠한 축적 미디어(CD-ROM, 플렉시블 디스크, 하드 디스크 등)에 내장해도 된다. 또한, 카메라가 부착된 휴대 전화(ex115)로 동화상 데이터를 송신해도 된다. 이 때의 동화상 데이터는 휴대 전화(ex115)가 갖는 LSI에서 부호화 처리된 데이터이다.
이 콘텐츠 공급 시스템(ex100)에서는, 사용자가 카메라(ex113), 카메라(ex116) 등으로 촬영하고 있는 콘텐츠(예를 들면, 음악 라이브를 촬영한 영상 등)를 상기 실시 형태와 동일하게 부호화 처리하여 스트리밍 서버(ex103)로 송신하는 한편, 스트리밍 서버(ex103)는 요구가 있었던 클라이언트에 대해서 상기 콘텐츠 데이터를 스트림 배송한다. 클라이언트로서는, 상기 부호화 처리된 데이터를 복호화하는 것이 가능한, 컴퓨터(ex111), PDA(ex112), 카메라(ex113), 휴대 전화(ex114) 등이 있다. 이와 같이 함으로써 콘텐츠 공급 시스템(ex100)은, 부호화된 데이터를 클라이언트에서 수신하여 재생할 수 있고, 또한 클라이언트에서 실시간으로 수신하여 복호화하여 재생함으로써, 개인 방송도 실현 가능하게 되는 시스템이다.
이 시스템을 구성하는 각 기기의 부호화, 복호화에는 상기 각 실시 형태에서 나타낸 화상 부호화 장치 혹은 화상 복호화 장치를 이용하도록 하면 된다.
그 일례로서 휴대 전화에 대해서 설명한다.
도 34는, 상기 실시 형태에서 설명한 동화상 예측 방법, 동화상 부호화 장치 및 동화상 복호화 장치를 이용한 휴대 전화(ex115)를 도시하는 도면이다. 휴대 전화(ex115)는, 기지국(ex110)과의 사이에서 전파를 송수신하기 위한 안테나(ex201), CCD 카메라 등의 영상, 정지화상을 찍는 것이 가능한 카메라부(ex203), 카메라부(ex203)에서 촬영한 영상, 안테나(ex201)로 수신한 영상 등이 복호화된 데이터를 표시하는 액정 디스플레이 등의 표시부(ex202), 조작 키(ex204)군으로 구성되는 본체부, 음성 출력을 하기 위한 스피커 등의 음성 출력부(ex208), 음성 입력을 하기 위한 마이크 등의 음성 입력부(ex205), 촬영한 동화상 또는 정지화상의 데이터, 수신한 메일의 데이터, 동화상의 데이터 또는 정지화상의 데이터 등, 부호화된 데이터 또는 복호화된 데이터를 보존하기 위한 기록 미디어(ex207), 휴대 전화(ex115)에 기록 미디어(ex207)를 장착 가능하게 하기 위한 슬롯부(ex206)를 갖고 있다. 기록 미디어(ex207)는 SD 카드 등의 플라스틱 케이스 내에 전기적으로 고쳐쓰기나 소거가 가능한 불휘발성 메모리인 EEPROM(Electrically Erasable and Programmable Read Only Memory)의 일종인 플래시 메모리 소자를 격납한 것이다.
또한, 휴대 전화(ex115)에 대해서 도 35를 이용하여 설명한다. 휴대 전화(ex115)는 표시부(ex202) 및 조작 키(ex204)를 구비한 본체부의 각 부를 통괄적으로 제어하도록 이루어진 주 제어부(ex311)에 대해서, 전원 회로부(ex310), 조작 입력 제어부(ex304), 화상 부호화부(ex312), 카메라 인터페이스부(ex303), LCD(Liquid Crystal Display) 제어부(ex302), 화상 복호화부(ex309), 다중 분리부(ex308), 기록 재생부(ex307), 변복조 회로부(ex306) 및 음성 처리부(ex305)가 동기 버스(ex313)를 통해서 서로 접속되어 있다.
전원 회로부(ex310)는, 사용자의 조작에 의해 전화 및 전원 키가 온 상태로 되면, 배터리 팩으로부터 각 부에 대해서 전력을 공급함으로써 카메라가 부착된 디지털 휴대 전화(ex115)를 동작 가능한 상태로 기동한다.
휴대 전화(ex115)는, CPU, ROM 및 RAM 등으로 이루어지는 주 제어부(ex311)의 제어에 기초하여, 음성 통화 모드시에 음성 입력부(ex205)에서 집음한 음성 신호를 음성 처리부(ex305)에 의해서 디지털 음성 데이터로 변환하고, 이것을 변복조 회로부(ex306)에서 스펙트럼 확산 처리하여, 송수신 회로부(ex301)에서 디지털 아날로그 변환 처리 및 주파수 변환 처리를 행한 후에 안테나(ex201)를 통해서 송신한다. 또 휴대 전화기(ex115)는, 음성 통화 모드시에 안테나(ex201)에서 수신한 수신 신호를 증폭하여 주파수 변환 처리 및 아날로그 디지털 변환 처리를 실시하고, 변복조 회로부(ex306)에서 스펙트럼 역확산 처리하여, 음성 처리부(ex305)에 의해서 아날로그 음성 신호로 변환한 후, 이것을 음성 출력부(ex208)를 통해서 출력한다.
또한, 데이터 통신 모드시에 전자 메일을 송신하는 경우, 본체부의 조작 키(ex204)의 조작에 의해서 입력된 전자 메일의 텍스트 데이터는 조작 입력 제어부(ex304)를 통해서 주 제어부(ex311)에 송출된다. 주 제어부(ex311)는, 텍스트 데이터를 변복조 회로부(ex306)에서 스펙트럼 확산 처리하고, 송수신 회로부(ex301)에서 디지털 아날로그 변환 처리 및 주파수 변환 처리를 행한 후에 안테나(ex201)를 통해서 기지국(ex110)으로 송신한다.
데이터 통신 모드시에 화상 데이터를 송신하는 경우, 카메라부(ex203)에서 촬상된 화상 데이터를 카메라 인터페이스부(ex303)를 통해서 화상 부호화부(ex312)에 공급한다. 또, 화상 데이터를 송신하지 않은 경우에는, 카메라부(ex203)에서 촬상한 화상 데이터를 카메라 인터페이스부(ex303) 및 LCD 제어부(ex302)를 통해서 표시부(ex202)에 직접 표시하는 것도 가능하다.
화상 부호화부(ex312)는, 본원 발명에서 설명한 화상 부호화 장치를 구비한 구성으로, 카메라부(ex203)로부터 공급된 화상 데이터를 상기 실시 형태에서 나타낸 화상 부호화 장치에 이용한 부호화 방법에 의해서 압축 부호화함으로써 부호화 화상 데이터로 변환하여, 이것을 다중 분리부(ex308)에 송출한다. 또, 이 때 동시에 휴대 전화기(ex115)는, 카메라부(ex203)에서 촬상 중에 음성 입력부(ex205)에서 집음한 음성을 음성 처리부(ex305)를 통해서 디지털의 음성 데이터로서 다중 분리부(ex308)에 송출한다.
다중 분리부(ex308)는, 화상 부호화부(ex312)로부터 공급된 부호화 화상 데이터와 음성 처리부(ex305)로부터 공급된 음성 데이터를 소정의 방식으로 다중화하고, 그 결과 얻어지는 다중화 데이터를 변복조 회로부(ex306)에서 스펙트럼 확산 처리하고, 송수신 회로부(ex301)에서 디지털 아날로그 변환 처리 및 주파수 변환 처리를 실시한 후에 안테나(ex201)를 통해서 송신한다.
데이터 통신 모드시에 홈페이지 등에 링크된 동화상 파일의 데이터를 수신하는 경우, 안테나(ex201)를 통해서 기지국(ex110)으로부터 수신한 수신 신호를 변복조 회로부(ex306)에서 스펙트럼 역확산 처리하고, 그 결과 얻어지는 다중화 데이터를 다중 분리부(ex308)에 송출한다.
또, 안테나(ex201)를 통해서 수신된 다중화 데이터를 복호화하기 위해서는, 다중 분리부(ex308)는, 다중화 데이터를 분리함으로써 화상 데이터의 부호화 비트 스트림과 음성 데이터의 부호화 비트 스트림으로 나누고, 동기 버스(ex313)를 통해서 상기 부호화 화상 데이터를 화상 복호화부(ex309)에 공급하는 동시에 상기 음성 데이터를 음성 처리부(ex305)에 공급한다.
다음에, 화상 복호화부(ex309)는 본원 발명에서 설명한 화상 복호화 장치를 구비한 구성으로, 화상 데이터의 부호화 비트 스트림을 상기 실시 형태에서 나타낸 부호화 방법에 대응한 복호화 방법으로 복호함으로써 재생 동화상 데이터를 생성하고, 이것을 LCD 제어부(ex302)를 통해서 표시부(ex202)에 공급하며, 이것에 의해서, 예를 들면 홈페이지에 링크된 동화상 파일에 포함되는 동화상 데이터가 표시된다. 이 때 동시에 음성 처리부(ex305)는 음성 데이터를 아날로그 음성 신호로 변환한 후, 이것을 음성 출력부(ex208)에 공급하고, 이것에 의해, 예를 들면 홈페이지에 링크된 동화상 파일에 포함되는 음성 데이터가 재생된다.
또한, 상기 시스템의 예에 한정되지 않고, 최근에는 위성, 지상파에 의한 디지털 방송이 화제가 되고 있으며, 도 36에 도시하는 바와 같이 디지털 방송용 시스템에도 상기 실시 형태의 적어도 화상 부호화 장치 또는 화상 복호화 장치의 어느 하나를 장착할 수 있다. 구체적으로는, 방송국(ex409)에서는 영상 정보의 부호화 비트 스트림이 전파를 통해서 통신 또는 방송 위성(ex410)으로 전송된다. 이것을 받은 방송 위성(ex410)은, 방송용의 전파를 발신하고, 이 전파를 위성 방송 수신 설비를 갖는 가정의 안테나(ex406)에서 수신하여, 텔레비전(수신기)(ex401) 또는 셋톱박스(STB)(ex407) 등의 장치에 의해 부호화 비트 스트림을 복호화하여 이것을 재생한다. 또, 기록 매체인 CD나 DVD 등의 축적 미디어(ex402)에 기록한 부호화 비트 스트림을 독취하여, 복호화하는 재생 장치(ex403)에도 상기 실시 형태에서 나타낸 화상 복호화 장치를 실장하는 것이 가능하다. 이 경우, 재생된 영상 신호는 모니터(ex404)에 표시된다. 또, 케이블 텔레비전용의 케이블(ex405) 또는 위성/지상파 방송의 안테나(ex406)에 접속된 셋톱박스(ex407) 내에 화상 복호화 장치를 실장하고, 이것을 텔레비전의 모니터(ex408)에서 재생하는 구성도 생각할 수 있다. 이 때 셋톱박스가 아니라, 텔레비전 내에 화상 복호화 장치를 장착해도 된다. 또, 안테나(ex411)를 갖는 차(ex412)에서 위성(ex410)으로부터 또는 기지국(ex107) 등으로부터 신호를 수신하여, 차(ex412)가 갖는 카 내비게이션(ex413) 등의 표시 장치에 동화상을 재생하는 것도 가능하다.
또한, 화상 신호를 상기 실시 형태에서 나타낸 화상 부호화 장치로 부호화하여, 기록 매체에 기록할 수도 있다. 구체예로서는, DVD 디스크(ex421)에 화상 신호를 기록하는 DVD 리코더나, 하드 디스크에 기록하는 디스크 리코더 등의 리코더(ex420)가 있다. 또한 SD 카드(ex422)에 기록할 수도 있다. 리코더(ex420)가 상기 실시 형태에서 나타낸 화상 복호화 장치를 구비하고 있으면, DVD 디스 크(ex421)나 SD 카드(ex422)에 기록한 화상 신호를 재생하여, 모니터(ex408)에서 표시할 수 있다.
또한, 카 내비게이션(ex413)의 구성은 예를 들면 도 36에 도시하는 구성 중, 카메라부(ex203)와 카메라 인터페이스부(ex303), 화상 부호화부(ex312)를 제외한 구성을 생각할 수 있고, 동일한 것을 컴퓨터(ex111)나 텔레비전(수신기)(ex401) 등에서도 생각할 수 있다.
또, 상기 휴대 전화(ex114) 등의 단말은, 부호화기 ·복호화기를 양쪽 가지는 송수신형의 단말 외에, 부호화기만의 송신 단말, 복호화기만의 수신 단말의 3종류의 실장 형식을 생각할 수 있다.
이와 같이, 상기 실시 형태에서 나타낸 가변 길이 부호화 방법, 가변 길이 복호화 방법, 이들 방법을 이용한 가변 길이 부호화 장치, 가변 길이 복호화 장치, 동화상 부호화 방법, 동화상 복호화 방법, 동화상 부호화 장치 및 화상 복호화 장치를 상술한 어느 하나의 기기 ·시스템에 이용하는 것은 가능하고, 그렇게 함으로써, 상기 실시 형태에서 설명한 효과를 얻을 수 있다.
또한, 본 발명의 모든 실시 형태에 대해서, 본 발명은 이러한 상기 실시 형태에 한정되는 것이 아니라, 본 발명의 범위를 일탈하지 않는 범위 내에서 다양한 변형 또는 수정이 가능하다.
또, 상기 실시 형태 1 내지 6의 가변 길이 부호화 장치, 가변 길이 복호화 장치에서는 계수값을 저주파 성분부터 고주파 성분을 향하는 순서로 주사하도록 하였지만, 본 발명의 변형예로서, 계수값을 고주파 성분부터 저주파 성분을 향하는 순서로 주사하도록 구성해도 된다. 이 경우에는, 계수값의 재배열 등의 처리를 생략할 수 있다.
본원 발명에 관한 가변 길이 부호화 방법 및 가변 길이 복호화 방법은, 휴대 전화기나, 휴대 정보 단말, 텔레비전 방송 장치, 텔레비전 수신기 또는 셋톱박스 등의 컴퓨터 장치에서, 동화상에서의 화상 데이터를 소정의 크기를 갖는 블록 단위로 주파수 변환한 각 블록 내의 계수값을 부호화하거나, 복호화하거나 하는 데에 적합하다.
도 1은 본 발명의 실시 형태 1에 관한 가변 길이 부호화 방법 및 동화상 부호화 방법을 이용한 부호화 장치의 기능 구성을 도시하는 블록도,
도 2는 도 1에 도시되는 가변 길이 부호화부의 상세한 기능 구성을 도시하는 블록도,
도 3은 도 2에 도시되는 RL열 생성부가 실행하는 처리를 설명하기 위한 모식도,
도 4는 RL열 생성부가 생성한 RL열 및 도 2에 도시되는 재배열부가 실행하는 재배열 처리를 설명하기 위한 모식도,
도 5는 도 2에 도시되는 테이블 기억부가 유지하는 코드 테이블의 일례를 도시하는 도면,
도 6은 도 2에 도시되는 테이블 기억부가 유지하는 가변 길이 부호 테이블의 일례를 도시하는 도면,
도 7은 RL열 생성부가 생성한 RL열 및 재배열부가 실행하는 재배열 처리의 다른 예를 설명하기 위한 모식도,
도 8은 본 발명의 실시 형태 2에 관한 가변 길이 복호화 방법 및 동화상 복호화 방법을 이용한 복호화 장치의 기능 구성을 도시하는 블록도,
도 9는 도 8에 도시되는 가변 길이 복호화부의 상세한 기능 구성을 도시하는 블록도,
도 10은 도 9에 도시되는 코드 변환부가 생성한 RL열 및 재배열부가 실행하 는 재배열 처리를 설명하기 위한 모식도,
도 11은 도 9에 도시되는 계수 생성부가 실행하는 처리를 설명하기 위한 모식도,
도 12는 코드 변환부가 생성한 RL열 및 재배열부가 실행하는 재배열 처리의 다른 예를 설명하기 위한 모식도,
도 13은 본 발명의 제3 실시 형태에서의 부호화 장치의 구성을 도시하는 블록도,
도 14는 상동의 가변 길이 부호화부의 내부 구성을 도시하는 블록도,
도 15는 상동의 양자화부로부터 출력되는 계수 블록을 모식적으로 도시하는 모식도,
도 16은 상동의 RL열 생성부로부터 출력되는 RL열을 모식적으로 도시하는 모식도,
도 17은 상동의 확률 테이블의 전환 방법을 도시하는 천이도,
도 18은 상동의 확률 테이블의 내용을 도시하는 확률 테이블 내용 표시도,
도 19는 본 발명의 제4 실시 형태에서의 화상 복호화 장치의 구성을 도시하는 블록도,
도 20은 상동의 가변 길이 복호화부의 내부 구성을 도시하는 블록도,
도 21은 2값화 테이블의 일례를 도시하는 테이블도,
도 22는 본 발명의 실시 형태 5에 관한 가변 길이 부호화 방법 및 동화상 부호화 방법이 적용되는 부호화 장치의 기능 구성을 도시하는 블록도,
도 23은 도 22에 도시되는 가변 길이 부호화부의 상세한 기능 구성을 도시하는 블록도,
도 24는 도 23에 도시되는 R열·L열 생성부가 생성하는 L열 및 R열의 일례를 도시하는 도면,
도 25는 도 23에 도시되는 기억부가 유지하는 각 가변 길이 부호 테이블의 구성예를 도시하는 도면,
도 26은 도 23에 도시되는 기억부가 유지하는 임계값 테이블의 구성예를 도시하는 도면,
도 27은 도 23에 도시되는 코드 할당부가 실행하는 가변 길이 부호의 할당 처리를 도시하는 플로 차트,
도 28은 부호화에 이용되는 가변 길이 부호 테이블과 임계값과의 관계를 도시하는 도면,
도 29는 코드 할당부의 부호화 처리의 모양을 도시하는 모식도,
도 30은 본 발명의 실시 형태 6에 관한 가변 길이 복호화 방법 및 동화상 복호화 방법을 이용한 복호화 장치의 기능 구성을 도시하는 블록도,
도 31은 도 30에 도시되는 가변 길이 복호화부의 상세한 기능 구성을 도시하는 블록도,
도 32는 실시 형태 1, 3, 5의 동화상 부호화 방법 또는 실시 형태 2, 4, 6의 동화상 복호화 방법을 실행하기 위한 프로그램을 격납한 플렉시블 디스크를 이용하여, 컴퓨터 시스템에 의해 실시하는 경우의 설명도,
도 33은 콘텐츠 배송 서비스를 실현하는 콘텐츠 공급 시스템의 전체 구성을 도시하는 블록도,
도 34는 본 발명에 관한 동화상 예측 방법, 동화상 부호화 장치 및 동화상 복호화 장치를 이용한 휴대 전화를 도시하는 도면,
도 35는 본 발명에 관한 휴대 전화의 구성을 도시하는 블록도,
도 36은 본 발명에 관한 디지털 방송용 시스템의 전체 구성을 도시하는 블록도이다.

Claims (6)

  1. 미리 정해진 크기의 픽셀을 갖는 블록의 화상 데이터에 주파수 변환을 실행함으로써 획득되는 상기 블록의 계수에 가변 길이 부호화를 실행하여 획득되는 부호화된 데이터에 가변 길이 복호화를 실행하는 복호화 방법으로서,
    복호화를 위해 사용되고 증가하는 임계값이 할당되는, 복수의 테이블들 사이에서 전환하면서, 고주파수 성분으로부터 저주파수 성분을 향해 상기 부호화된 데이터에 가변 길이 복호화를 실행하여 상기 블록의 1차원 계수를 획득하는 복호화 단계; 및
    상기 복호화된 1차원 계수를 상기 블록의 2차원 계수로 변환하는 계수 변환 단계를 포함하며;
    상기 복호화 단계에서, 복호화될 현재의 계수의 절대값이 상기 현재의 계수를 복호화하는 데 사용된 테이블에 할당되는 임계값을 초과하는 경우에, 상기 현재의 계수에 후속하여 복호화될 이후의 계수는, 상기 임계값이 증가된 후, 그리고 상기 테이블이, 상기 증가된 임계값이 할당되는 테이블로 전환된 후에, 복호화되는, 복호화 방법.
  2. 청구항 1에 있어서,
    임계값이 상기 테이블의 각 전환을 위한 복수의 임계값들 중에서 결정되는, 복호화 방법.
  3. 청구항 2에 있어서,
    상기 테이블의 전환은 더 큰 임계값을 갖는 테이블을 향한 방향으로 실행되는, 복호화 방법.
  4. 청구항 1에 있어서,
    상기 테이블의 전환은 일 방향으로 실행되는, 복호화 방법.
  5. 청구항 1에 있어서,
    최소 계수에 대한 부호 길이는 각각의 테이블에 각각 할당되는 번호들의 오름차순으로 테이블마다 더 커지는, 복호화 방법.
  6. 미리 정해진 크기의 픽셀을 갖는 블록의 화상 데이터에 주파수 변환을 실행함으로써 획득되는 상기 블록의 계수에 가변 길이 부호화를 실행하여 획득되는 부호화된 데이터에 가변 길이 복호화를 실행하는 복호화 장치로서,
    복호화를 위해 사용되고 증가하는 임계값이 할당되는, 복수의 테이블들 사이에서 전환하면서, 고주파수 성분으로부터 저주파수 성분을 향해 부호화된 데이터에 가변 길이 복호화를 실행하여 상기 블록의 1차원 계수를 획득하는 복호화 유닛; 및
    상기 복호화된 1차원 계수를 상기 블록의 2차원 계수로 변환하는 변환 유닛을 포함하며;
    복호화될 현재의 계수의 절대값이 상기 현재의 계수를 복호화하는 데 사용된 테이블에 할당되는 임계값을 초과하는 경우에, 상기 복호화 유닛은, 상기 임계값이 증가된 후, 그리고 상기 테이블이, 상기 증가된 임계값이 할당되는 테이블로 전환된 후에, 상기 현재의 계수에 후속하여 복호화될 이후의 계수를 복호화하는, 복호화 장치.
KR1020087008522A 2002-04-19 2003-04-16 가변 길이 부호화 방법 및 가변 길이 복호화 방법 KR100975487B1 (ko)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP2002118483 2002-04-19
JPJP-P-2002-00118483 2002-04-19
JP2002126029 2002-04-26
JPJP-P-2002-00126029 2002-04-26
JP2002363106A JP4368575B2 (ja) 2002-04-19 2002-12-13 可変長復号化方法、可変長復号化装置およびプログラム
JPJP-P-2002-00363106 2002-12-13

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020037011694A Division KR101001411B1 (ko) 2002-04-19 2003-04-16 가변 길이 부호화 방법 및 가변 길이 복호화 방법

Publications (2)

Publication Number Publication Date
KR20080041748A true KR20080041748A (ko) 2008-05-13
KR100975487B1 KR100975487B1 (ko) 2010-08-11

Family

ID=29255105

Family Applications (8)

Application Number Title Priority Date Filing Date
KR1020087008524A KR101001417B1 (ko) 2002-04-19 2003-04-16 가변 길이 부호화 방법 및 가변 길이 복호화 방법
KR1020107006564A KR101001053B1 (ko) 2002-04-19 2003-04-16 가변 길이 부호화 방법 및 가변 길이 복호화 방법
KR1020107006563A KR101001097B1 (ko) 2002-04-19 2003-04-16 가변 길이 부호화 방법 및 가변 길이 복호화 방법
KR1020087008521A KR100975486B1 (ko) 2002-04-19 2003-04-16 가변 길이 부호화 방법 및 가변 길이 복호화 방법
KR1020087008523A KR101001478B1 (ko) 2002-04-19 2003-04-16 가변 길이 부호화 방법 및 가변 길이 복호화 방법
KR1020037011694A KR101001411B1 (ko) 2002-04-19 2003-04-16 가변 길이 부호화 방법 및 가변 길이 복호화 방법
KR1020087008522A KR100975487B1 (ko) 2002-04-19 2003-04-16 가변 길이 부호화 방법 및 가변 길이 복호화 방법
KR1020087008525A KR101001459B1 (ko) 2002-04-19 2003-04-16 가변 길이 부호화 방법 및 가변 길이 복호화 방법

Family Applications Before (6)

Application Number Title Priority Date Filing Date
KR1020087008524A KR101001417B1 (ko) 2002-04-19 2003-04-16 가변 길이 부호화 방법 및 가변 길이 복호화 방법
KR1020107006564A KR101001053B1 (ko) 2002-04-19 2003-04-16 가변 길이 부호화 방법 및 가변 길이 복호화 방법
KR1020107006563A KR101001097B1 (ko) 2002-04-19 2003-04-16 가변 길이 부호화 방법 및 가변 길이 복호화 방법
KR1020087008521A KR100975486B1 (ko) 2002-04-19 2003-04-16 가변 길이 부호화 방법 및 가변 길이 복호화 방법
KR1020087008523A KR101001478B1 (ko) 2002-04-19 2003-04-16 가변 길이 부호화 방법 및 가변 길이 복호화 방법
KR1020037011694A KR101001411B1 (ko) 2002-04-19 2003-04-16 가변 길이 부호화 방법 및 가변 길이 복호화 방법

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020087008525A KR101001459B1 (ko) 2002-04-19 2003-04-16 가변 길이 부호화 방법 및 가변 길이 복호화 방법

Country Status (17)

Country Link
US (12) US7305035B2 (ko)
EP (13) EP1744560B1 (ko)
JP (1) JP4368575B2 (ko)
KR (8) KR101001417B1 (ko)
CN (1) CN1319385C (ko)
AT (5) ATE447295T1 (ko)
AU (1) AU2003235171C1 (ko)
BR (2) BRPI0304543B8 (ko)
CA (2) CA2625292C (ko)
DE (5) DE60329873D1 (ko)
DK (5) DK2752994T3 (ko)
ES (11) ES2730954T3 (ko)
HU (1) HUE044271T2 (ko)
MX (1) MXPA03011198A (ko)
PT (7) PT1744560E (ko)
SI (2) SI1742483T1 (ko)
WO (1) WO2003090472A1 (ko)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101448162B (zh) 2001-12-17 2013-01-02 微软公司 处理视频图像的方法
JP4368575B2 (ja) * 2002-04-19 2009-11-18 パナソニック株式会社 可変長復号化方法、可変長復号化装置およびプログラム
JP2005004718A (ja) * 2003-05-16 2005-01-06 Canon Inc 信号処理装置及び制御方法
US10554985B2 (en) 2003-07-18 2020-02-04 Microsoft Technology Licensing, Llc DC coefficient signaling at small quantization step sizes
US20070230805A1 (en) * 2004-07-27 2007-10-04 Yoshihisa Yamada Coded Data Recording Apparatus, Decoding Apparatus and Program
CN103118252B (zh) * 2005-09-26 2016-12-07 三菱电机株式会社 运动图像编码装置以及运动图像译码装置
JP4540585B2 (ja) 2005-10-20 2010-09-08 パナソニック株式会社 符号化装置及び復号化装置
US7903973B1 (en) * 2005-12-23 2011-03-08 Lockheed Martin Corporation Dynamic temporal duration optical transmission privacy
JP4863840B2 (ja) * 2006-10-27 2012-01-25 株式会社リコー 画素形成装置、光走査装置、光走査方法、画像形成装置、カラー画像形成装置
KR100987028B1 (ko) * 2008-08-20 2010-10-11 연세대학교 산학협력단 무작위 데이터가 가지는 정렬 구조의 불확실성을 산출하는 장치 및 그 방법, 상기 방법을 구현하는 프로그램이 기록된기록매체
TR201001101A2 (tr) * 2010-02-12 2011-09-21 Vestel Elektroni̇k Sanayi̇ Ve Ti̇caret A.Ş. Bir veri sıkıştırma metodu.
KR101780921B1 (ko) * 2010-04-01 2017-09-21 소니 주식회사 화상 처리 장치, 방법 및 기록매체
US8410959B2 (en) 2010-04-09 2013-04-02 Qualcomm, Incorporated Variable length codes for coding of video data
US20120082230A1 (en) * 2010-10-01 2012-04-05 Qualcomm Incorporated Variable length coding of video block coefficients
US9490839B2 (en) 2011-01-03 2016-11-08 Qualcomm Incorporated Variable length coding of video block coefficients
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
US8687904B2 (en) 2011-01-14 2014-04-01 Panasonic Corporation Image coding method, image coding apparatus, image decoding method, image decoding apparatus, and image coding and decoding apparatus which include arithmetic coding or arithmetic decoding
US9516316B2 (en) 2011-06-29 2016-12-06 Qualcomm Incorporated VLC coefficient coding for large chroma block
US9338456B2 (en) 2011-07-11 2016-05-10 Qualcomm Incorporated Coding syntax elements using VLC codewords
KR101710633B1 (ko) * 2011-08-05 2017-02-27 삼성전자주식회사 자동 초점 조절 방법, 자동 초점 조절 장치, 및 이를 포함하는 디지털 촬영장치
WO2013065262A1 (ja) * 2011-11-04 2013-05-10 日本電気株式会社 映像符号化装置、映像復号装置、映像符号化方法、映像復号方法およびプログラム
CN105940676B (zh) * 2014-01-24 2019-06-21 联发科技股份有限公司 解码装置与相关的解码方法
US10171810B2 (en) 2015-06-22 2019-01-01 Cisco Technology, Inc. Transform coefficient coding using level-mode and run-mode
US10206176B2 (en) * 2016-09-06 2019-02-12 Mediatek Inc. Efficient coding switching and modem resource utilization in wireless communication systems
JP2018085008A (ja) * 2016-11-25 2018-05-31 株式会社ジャパンディスプレイ 画像処理装置および画像処理装置の画像処理方法
US10666985B1 (en) * 2018-11-18 2020-05-26 Sony Corporation Sub-block based entropy coding for image coding
US10728555B1 (en) * 2019-02-06 2020-07-28 Sony Corporation Embedded codec (EBC) circuitry for position dependent entropy coding of residual level data
CN112399181B (zh) * 2019-08-19 2022-08-26 华为技术有限公司 图像编解码的方法、装置和存储介质
CN113889046B (zh) * 2020-07-02 2022-12-09 京东方科技集团股份有限公司 显示面板及其驱动方法、以及显示装置

Family Cites Families (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4541012A (en) * 1982-01-04 1985-09-10 Compression Labs, Inc. Video bandwidth reduction system employing interframe block differencing and transform domain coding
CA1296430C (en) * 1986-11-10 1992-02-25 Masahide Kaneko Encoding system capable of accomplishing a high efficiency by anterior and/or posterior processing to quantization
JPH04100390A (ja) * 1990-08-20 1992-04-02 Hitachi Ltd 高能率符号化方式
US6546145B1 (en) * 1991-02-05 2003-04-08 Canon Kabushiki Kaisha Image compression using selection of quantization method
JP3205028B2 (ja) 1991-02-05 2001-09-04 キヤノン株式会社 画像圧縮装置及びその方法
JPH04315270A (ja) 1991-04-15 1992-11-06 Toshiba Corp 符号化装置
JP2670201B2 (ja) * 1991-08-30 1997-10-29 富士写真フイルム株式会社 画像データ圧縮符号化装置および方法
JP3016456B2 (ja) 1992-06-15 2000-03-06 日本電信電話株式会社 適応的可変長符号化方法
JPH06178282A (ja) 1992-12-02 1994-06-24 Mitsubishi Electric Corp 画像の符号化装置
US5367629A (en) * 1992-12-18 1994-11-22 Sharevision Technology, Inc. Digital video compression system utilizing vector adaptive transform
JP3278948B2 (ja) * 1993-02-05 2002-04-30 日本電信電話株式会社 可変長符号化方法
JP3277425B2 (ja) * 1993-03-19 2002-04-22 ソニー株式会社 ディジタル信号の符号化方法、符号化用テーブル生成方法、符号化装置及び符号化方法
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
JP3111750B2 (ja) 1993-06-08 2000-11-27 松下電器産業株式会社 可変長符号復号方式
JPH0759086A (ja) * 1993-07-30 1995-03-03 Canon Inc 画像処理装置
JP3210996B2 (ja) * 1993-07-30 2001-09-25 三菱電機株式会社 高能率符号化装置及び高能率復号化装置
JP3220598B2 (ja) * 1994-08-31 2001-10-22 三菱電機株式会社 可変長符号テーブルおよび可変長符号化装置
KR100209877B1 (ko) * 1994-11-26 1999-07-15 윤종용 복수개의 허프만부호테이블을 이용한 가변장부호화장치 및 복호화장치
JP3305140B2 (ja) 1994-12-28 2002-07-22 キヤノン株式会社 符号化装置及び方法
US5883976A (en) * 1994-12-28 1999-03-16 Canon Kabushiki Kaisha Selectively utilizing multiple encoding methods
JP3624450B2 (ja) 1995-02-06 2005-03-02 ソニー株式会社 画像データ符号化方法及び画像データ符号化装置
JP3431331B2 (ja) * 1995-03-01 2003-07-28 株式会社日立製作所 動画像符号化装置及び動画像伝送装置並びにテレビ会議装置
US6704494B1 (en) * 1995-03-15 2004-03-09 Kabushiki Kaisha Toshiba Moving picture coding and/or decoding systems, and variable-length coding and/or decoding system
US6104754A (en) * 1995-03-15 2000-08-15 Kabushiki Kaisha Toshiba Moving picture coding and/or decoding systems, and variable-length coding and/or decoding system
JPH08256266A (ja) * 1995-03-17 1996-10-01 Mitsubishi Electric Corp 画像符号化方式
JP3992303B2 (ja) * 1995-06-22 2007-10-17 ソニー株式会社 信号圧縮装置と信号伸長装置および信号圧縮方法と信号伸長方法
EP0762771A3 (en) 1995-09-11 1998-09-23 Matsushita Electric Industrial Co., Ltd. Apparatus and method for variable-length coding
JP3114796B2 (ja) 1995-09-11 2000-12-04 松下電器産業株式会社 可変長符号化装置及び方法
US5818877A (en) * 1996-03-14 1998-10-06 The Regents Of The University Of California Method for reducing storage requirements for grouped data values
JPH09307901A (ja) 1996-05-13 1997-11-28 Toshiba Corp 映像信号処理装置
JP3743837B2 (ja) 1996-06-14 2006-02-08 株式会社大宇エレクトロニクス ランレングス符号器
US5831977A (en) 1996-09-04 1998-11-03 Ericsson Inc. Subtractive CDMA system with simultaneous subtraction in code space and direction-of-arrival space
TW366669B (en) 1996-10-30 1999-08-11 Matsushita Electric Ind Co Ltd Picture encoding device and picture encoding method, picture decoding device and picture decoding method, and data recording media
JP2870515B2 (ja) * 1996-12-27 1999-03-17 日本電気株式会社 可変長符号化装置
US5995148A (en) * 1997-02-14 1999-11-30 At&T Corp Video coder having scalar dependent variable length coder
JP3410629B2 (ja) * 1997-05-21 2003-05-26 シャープ株式会社 可変長符号化回路及び可変長符号化方法
US6118822A (en) 1997-12-01 2000-09-12 Conexant Systems, Inc. Adaptive entropy coding in adaptive quantization framework for video signal coding systems and processes
JPH11243343A (ja) 1998-02-25 1999-09-07 Victor Co Of Japan Ltd 可変長符号化方法、可変長復号化方法、及び可変長符号記録媒体
JPH11341497A (ja) 1998-05-29 1999-12-10 Matsushita Electric Ind Co Ltd 画像符号化復号化装置及び、画像符号化復号化方法
JP3888597B2 (ja) * 1998-06-24 2007-03-07 日本ビクター株式会社 動き補償符号化装置、及び動き補償符号化復号化方法
JP2000059234A (ja) * 1998-08-10 2000-02-25 Mitsubishi Electric Corp 可変長符号処理装置
JP2001024515A (ja) * 1999-07-07 2001-01-26 Sony Corp 信号処理方法及び装置
US6748113B1 (en) * 1999-08-25 2004-06-08 Matsushita Electric Insdustrial Co., Ltd. Noise detecting method, noise detector and image decoding apparatus
JP2001308715A (ja) * 2000-04-20 2001-11-02 Mitsubishi Electric Corp 可変長符号化装置および可変長復号装置
TW515192B (en) 2000-06-06 2002-12-21 Noa Kk Off Compression method of motion picture image data and system there for
JP2002261623A (ja) * 2001-02-28 2002-09-13 Canon Inc 復号装置、復号方法、記憶媒体及びプログラムソフトウェア
WO2002078355A1 (en) * 2001-03-23 2002-10-03 Nokia Corporation Variable length coding
CN1301014C (zh) * 2001-11-22 2007-02-14 松下电器产业株式会社 可变长度编码方法以及可变长度解码方法
US7099387B2 (en) * 2002-03-22 2006-08-29 Realnetorks, Inc. Context-adaptive VLC video transform coefficients encoding/decoding methods and apparatuses
JP4090862B2 (ja) * 2002-04-26 2008-05-28 松下電器産業株式会社 可変長符号化方法および可変長復号化方法
JP4368575B2 (ja) * 2002-04-19 2009-11-18 パナソニック株式会社 可変長復号化方法、可変長復号化装置およびプログラム
US6646578B1 (en) * 2002-11-22 2003-11-11 Ub Video Inc. Context adaptive variable length decoding system and method
US7602850B2 (en) * 2003-12-19 2009-10-13 Intel Corporation Content adaptive variable length coding (CAVLC) decoding
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
US7643694B2 (en) * 2004-12-31 2010-01-05 Zoran Corporation Method and apparatus for processing a compressed image in an order other than the order in which it was compressed
JP4540585B2 (ja) * 2005-10-20 2010-09-08 パナソニック株式会社 符号化装置及び復号化装置
US7903973B1 (en) * 2005-12-23 2011-03-08 Lockheed Martin Corporation Dynamic temporal duration optical transmission privacy
KR100813877B1 (ko) * 2006-05-11 2008-03-18 전자부품연구원 효율적인 h.264/avc cavlc 디코딩 방법
US7885473B2 (en) * 2007-04-26 2011-02-08 Texas Instruments Incorporated Method of CABAC coefficient magnitude and sign decoding suitable for use on VLIW data processors
US7813567B2 (en) * 2007-04-26 2010-10-12 Texas Instruments Incorporated Method of CABAC significance MAP decoding suitable for use on VLIW data processors
CN101335000B (zh) * 2008-03-26 2010-04-21 华为技术有限公司 编码的方法及装置
US7876257B2 (en) * 2008-04-28 2011-01-25 Mitsubishi Electric Research Laboratories, Inc. Method and apparatus for compressing SAR signals

Also Published As

Publication number Publication date
ES2886861T3 (es) 2021-12-21
US20080260037A1 (en) 2008-10-23
ES2297811T3 (es) 2008-05-01
KR20080041751A (ko) 2008-05-13
ES2886874T3 (es) 2021-12-21
EP3515072A1 (en) 2019-07-24
ATE397355T1 (de) 2008-06-15
ES2549252T3 (es) 2015-10-26
EP2919390A1 (en) 2015-09-16
KR20080041750A (ko) 2008-05-13
US20080260038A1 (en) 2008-10-23
US7305035B2 (en) 2007-12-04
EP2919390B1 (en) 2019-04-03
EP2752994A1 (en) 2014-07-09
DE60329873D1 (de) 2009-12-10
US20050099522A1 (en) 2005-05-12
KR20100051864A (ko) 2010-05-18
AU2003235171B2 (en) 2007-12-20
PT1965590E (pt) 2009-11-24
AU2003235171C1 (en) 2009-01-08
WO2003090472A1 (fr) 2003-10-30
EP2343903A1 (en) 2011-07-13
SI1742484T1 (sl) 2008-08-31
KR20080041749A (ko) 2008-05-13
EP2117236A3 (en) 2011-05-04
ATE385140T1 (de) 2008-02-15
DE60321406D1 (de) 2008-07-10
EP1965590B1 (en) 2009-10-28
DK2919390T3 (da) 2019-07-15
EP2117236A2 (en) 2009-11-11
KR20080041747A (ko) 2008-05-13
US20170034541A1 (en) 2017-02-02
US20170034539A1 (en) 2017-02-02
CA2448771C (en) 2012-05-29
ES2388479T3 (es) 2012-10-15
EP1742484A1 (en) 2007-01-10
DE60311734D1 (de) 2007-03-29
EP1424856A1 (en) 2004-06-02
KR101001411B1 (ko) 2010-12-14
EP2765707A3 (en) 2014-08-20
US9031133B2 (en) 2015-05-12
JP4368575B2 (ja) 2009-11-18
EP2271118A2 (en) 2011-01-05
US10623781B2 (en) 2020-04-14
BRPI0304543B8 (pt) 2020-12-29
BRPI0304543B1 (pt) 2018-02-14
US10063890B2 (en) 2018-08-28
DE60323171D1 (de) 2008-10-02
US9661353B2 (en) 2017-05-23
HUE044271T2 (hu) 2019-10-28
PT1744560E (pt) 2008-09-10
US10057602B2 (en) 2018-08-21
EP3515071B1 (en) 2021-06-30
US9020041B2 (en) 2015-04-28
DK2765707T3 (en) 2015-10-12
CA2625292C (en) 2012-05-29
US20080260039A1 (en) 2008-10-23
CA2448771A1 (en) 2003-10-30
US20150208099A1 (en) 2015-07-23
DK1742484T3 (da) 2008-08-18
EP2271118B1 (en) 2012-11-07
AU2003235171B8 (en) 2003-11-03
DK2752994T3 (en) 2015-11-09
ATE406051T1 (de) 2008-09-15
EP2343903B1 (en) 2014-05-21
KR101001417B1 (ko) 2010-12-14
DK1742483T3 (da) 2008-05-13
ES2730954T3 (es) 2019-11-13
KR101001459B1 (ko) 2010-12-14
KR100975486B1 (ko) 2010-08-11
EP2752994B8 (en) 2015-09-02
ATE447295T1 (de) 2009-11-15
US20180332311A1 (en) 2018-11-15
EP3515071A1 (en) 2019-07-24
SI1742483T1 (sl) 2008-04-30
EP1965590A1 (en) 2008-09-03
KR20040105543A (ko) 2004-12-16
ES2279945T3 (es) 2007-09-01
US10027990B2 (en) 2018-07-17
PT2919390T (pt) 2019-07-11
EP1742483B1 (en) 2008-01-23
EP2117236B1 (en) 2012-07-11
US20080056374A1 (en) 2008-03-06
KR101001478B1 (ko) 2010-12-14
ES2309913T3 (es) 2008-12-16
MXPA03011198A (es) 2004-02-26
PT2117236E (pt) 2012-09-24
CN1319385C (zh) 2007-05-30
KR101001097B1 (ko) 2010-12-14
KR20100052547A (ko) 2010-05-19
US20170034514A1 (en) 2017-02-02
ES2332159T3 (es) 2010-01-27
EP1744560B1 (en) 2008-08-20
EP2765707A2 (en) 2014-08-13
JP2004007381A (ja) 2004-01-08
EP2271118A3 (en) 2011-05-04
EP1424856A4 (en) 2004-11-24
EP1742484B1 (en) 2008-05-28
ATE354258T1 (de) 2007-03-15
PT2752994E (pt) 2015-10-26
US9020040B2 (en) 2015-04-28
DE60311734T2 (de) 2007-11-15
ES2307267T3 (es) 2008-11-16
EP1744560A1 (en) 2007-01-17
EP1742483A1 (en) 2007-01-10
EP2752994B1 (en) 2015-07-29
DE60318918T2 (de) 2009-01-08
US9025671B2 (en) 2015-05-05
AU2003235171A1 (en) 2003-11-03
US20170034540A1 (en) 2017-02-02
US9054734B2 (en) 2015-06-09
BR0304543A (pt) 2004-08-03
EP2765707B1 (en) 2015-08-19
EP3515072B1 (en) 2021-06-30
DE60318918D1 (de) 2008-03-13
EP1424856B1 (en) 2007-02-14
PT2765707E (pt) 2015-11-17
KR100975487B1 (ko) 2010-08-11
US10034025B2 (en) 2018-07-24
KR101001053B1 (ko) 2010-12-14
CA2625292A1 (en) 2003-10-30
CN1522544A (zh) 2004-08-18
US20080063083A1 (en) 2008-03-13
PT1742484E (pt) 2008-06-12
ES2550993T3 (es) 2015-11-13

Similar Documents

Publication Publication Date Title
KR100975487B1 (ko) 가변 길이 부호화 방법 및 가변 길이 복호화 방법
KR101019358B1 (ko) 가변길이 부호화 방법 및 가변길이 복호화 방법
JP5208157B2 (ja) 復号化システム
JP4091107B1 (ja) 可変長符号化装置および画像符号化装置
JP4091108B1 (ja) 可変長復号化装置および画像復号化装置
JP4722233B1 (ja) 復号化システム

Legal Events

Date Code Title Description
A107 Divisional application of patent
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: 20130722

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140722

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20150716

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160630

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20170720

Year of fee payment: 8