CN103609114B - 编码装置、解码装置、编解码系统、编码方法以及解码方法 - Google Patents

编码装置、解码装置、编解码系统、编码方法以及解码方法 Download PDF

Info

Publication number
CN103609114B
CN103609114B CN201280030597.3A CN201280030597A CN103609114B CN 103609114 B CN103609114 B CN 103609114B CN 201280030597 A CN201280030597 A CN 201280030597A CN 103609114 B CN103609114 B CN 103609114B
Authority
CN
China
Prior art keywords
data
decoding
code
coding
value
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN201280030597.3A
Other languages
English (en)
Other versions
CN103609114A (zh
Inventor
山口雅之
山田晃久
中前贵司
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Publication of CN103609114A publication Critical patent/CN103609114A/zh
Application granted granted Critical
Publication of CN103609114B publication Critical patent/CN103609114B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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
    • 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
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
    • 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/1887Methods 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 variable length codeword

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

本发明涉及一种编码装置和编码方法、解码装置和解码方法以及编解码系统,该编码装置和编码方法在保证目标压缩率的同时抑制图像数据的劣化,该解码装置和解码方法对由该编码装置和编码方法进行了编码的数据进行解码,该编解码系统包括该编码装置及解码装置。该编码装置包括:预测值数据生成器,该预测值数据生成器依次生成预测值数据;预测误差数据生成器,该预测误差数据生成器依次生成预测误差数据,该预测误差数据是像素数据与预测值数据间的差值;编码器,该编码器依次对预测值误差数据进行编码,从而依次生成可变长编码数据;以及编码控制器,该编码控制器依次控制该编码器。编码控制器通过累积编码长度与可变长编码数据的目标编码长度间的差值,来依次计算出累计值,并对编码器进行控制,以使得最终的累计值为0或更小。

Description

编码装置、解码装置、编解码系统、编码方法以及解码方法
技术领域
本发明涉及一种对像素数据进行编码的编码装置及编码方法,尤其涉及一种对存储在帧存储器等中的数据进行编码的编码装置及编码方法。本发明还涉及一种解码装置及解码方法,用于对经过上述编码装置及编码方法编码后的数据进行解码。此外,本发明还涉及包括该编码装置及该解码装置的编解码系统。
背景技术
在电视机等所使用的一些图像处理装置中,已经过处理的图像数据(包括经过加运算及减运算等规定计算后的图像数据,下文也同样)被用于对作为处理对象的图像数据进行处理。例如,在上述图像处理装置中,需要利用帧存储器来依次存储经过处理的图像数据。
另一方面,如今,随着图像数据的高分辨率化及高速处理的迅速发展,需要由图像处理装置进行处理的大量图像数据也持续增加。因此,帧存储器的存储容量或传输能力也持续增强,而满足这些要求的帧存储器的制造变得更为艰难。
例如,专利文献1提出了一种编码装置,该编码装置通过执行固定长度编码(一种编码后的数据的编码长度(比特数)均一的编码方法),来减少存储在帧存储器中的数据量。
然而,从简化帧存储器及降低帧存储器的成本的角度来看,还有进一步减少数据量的需求。例如,专利文献2至5提出了一种编码装置,该编码装置使用变长编码(一种经过编码的数据的数据长度可能不同的编码方法),使得数据量与固定长度编码相比可能得到了减小。
现有技术文献
专利文献
专利文献1:日本公开专利申请:特开2010-4514号公报
专利文献2:日本公开专利申请:特开2009-017505号公报
专利文献3:日本公开专利申请:特开2006-135370号公报
专利文献4:日本公开专利申请:特开08-084338号公报
专利文献5:日本公开专利申请:特开06-022152号公报
发明内容
本发明所要解决的技术问题
然而,对于变长编码,由于编码后的数据的编码长度不定,因此可能使得数据量无法充分减少(无法实现最小压缩率)。在该情况下,存在有如下问题,即编码后的数据的数据量可能会超过帧存储器的存储容量。
为了解决该问题,例如专利文献2提出了一种编码装置,该编码装置在部分排除预测误差在规定值以上的数据之后执行编码,从而减少经过编码的数据量。然而,在该编码装置中,由于编码后的数据量被不必要地减少,使得图像数据有时被无意义地劣化,从而产生问题。特别是,在该编码装置中,即使能通过普通的变长编码来充分地减少图像数据的数据量,也仍在预测误差增大的部分排除一部分数据后执行编码。使得该部分的图像数据被劣化。
在专利文献3中的编码装置中,准确地对压缩率进行预测并设定,从而对图像的劣化进行抑制。然而,由于预测压缩率需要较长时间,使得难以实时地执行编码,或编码后的数据的数据量无法充分减少,从而产生问题。
在专利文献4的编码装置中,系统能够基于每单位时间的传输量来实时地执行量化(压缩),从而实现告诉处理,其中,该传输量根据系统中的另一装置的情况来确定。然而,由于该量化不考虑图像数据,使得图像数据可能被无意义地劣化。
在专利文献5所提出的编码装置中,在图像数据已在单元块中被编码时,每个块中的数据量受到了限制,从而能可靠地将该经编码后的数据存储到存储器中。然而,该编码装置需要设置线路存储器等,这是由于编码在单位块中执行,这将导致仅有特定块会被劣化这一问题。
鉴于上述,本发明的目的在于提供一种编码装置及编码方法,能在保证目标压缩率的同时,抑制像素数据的劣化。本发明的另一目的在于提供一种解码装置及解码方法,用于对经过上述编码装置及编码方法编码后的数据进行解码。此外,本发明的又另一目的在于提供一种包括上述编码装置及解码装置的编解码系统。
解决技术问题所采用的技术方案
为了实现上述目的,本发明提供一种编码装置,包括:预测值数据生成器,该预测值数据生成器依次生成预测值数据,该预测值数据是像素数据的预测值;预测误差数据生成器,该预测误差数据生成器依次生成预测误差数据,该预测误差数据是像素数据与预测值数据间的差值;编码器,该编码器依次对预测值误差数据进行编码,从而依次生成可变长编码数据,该可变长编码数据的编码长度可变且小于等于设定最大编码长度;以及编码控制器,该编码控制器依次控制该编码器,其特征在于,在生成了规定个数的可变长编码数据时,编码控制器通过累积由编码器生成的可变长编码数据的编码长度与目标编码长度间的差值,来依次计算出累计值,并且编码控制器基于累计值以及编码次数来依次设定最大编码长度,以使得在生成了规定个数的可变长编码数据时,累计值为0或更小,其中,编码次数是由编码器执行的编码的次数。
在所述编码装置中,优选为,编码控制器根据与编码次数相对应的累计值的限制值与累计值之间的差值来设定最大编码长度,
因此,累计值能在编码的过程中依次受到控制。
在所述编码装置中,优选为,编码控制器在累计值大于限制值的情况下将该最大编码长度设定得短于目标编码长度。
因此,在累计值超过该限制值时,该累计值能可靠地被减小。
在所述编码装置中,优选为,限制值随着编码次数的增加而连续减小或阶梯式减小,该限制值至少在编码次数达到规定数之前变为0。
因此,累计值的上限值(限制值)在编码过程中受到限制,由此最终的累计值能可靠地被设定为0。
在所述编码装置中,优选为,作为两个独立变量的所述累计值及编码次数可以取到值的区域至少被分割成两个小区域,最大编码长度被分配给各个小区域,而编码控制器对被分配给利用编码次数及累计值确定出的各个小区域的最大编码长度进行设定。
因此,最大编码长度能利用阶梯式方法来控制。
在所述编码装置中,优选为,多个小区域至少沿着该累计值增大和减小的方向出现,并且,在小区域中的累计值增大的情况下,分配给小区域的最大编码长度短于编码次数。
因此,所分配的最大编码长度随着累积值的增大而缩小。由此,累计值的增大能被有效抑制。
在所述编码装置中,优选为,相邻小区域间的至少一条边界线具有死区宽度,并且在编码次数及累计值变化得超过该死区宽度时,所述规定的小区域发生变化。
因此,所分配的最大编码长度的变化具有滞后。
在所述编码装置中,优选为所述编码器包括:量化器,该量化器通过利用规定的量化系数对预测误差数据进行量化,从而依次生成量化预测误差数据;以及可变长编码数据生成器,该可变长编码数据生成器根据规定的编码系统来依次生成与量化预测误差数据相对应的可变长编码数据。
在所述编码装置中,优选为,编码控制器基于累计值及编码次数来选出适用于量化器的量化系数,并根据所选出的量化系数及编码系统来设定最大编码长度。
因此,通过选出用于控制最大编码长度的量化系数来对量化预测误差数据的编码长度所能取的范围进行控制。
在所述编码装置中,优选为,像素数据包括多个分量数据,预测值数据生成器对各个分量数据生成预测值数据,预测误差数据生成器对各个分量数据生成预测误差数据,量化器通过利用各个分量数据的量化系数来对各个分量数据的预测误差数据进行量化,从而对各个分量数据生成量化预测误差数据,可变长编码数据生成器根据各个分量数据的量化预测误差数据来对各个分量数据生成可变长编码数据,编码控制器通过累积各个分量数据的可变长编码数据的总编码长度与目标编码长度间的差值,来计算该累计值,编码控制器基于累计值及编码次数来选出适用于量化器的各个分量数据的量化系数。
因此,为像素数据中所包含的各分量数据设定了量化系数,并能对各分量数据的编码长度进行控制。由此,能够根据人类的视觉特征(例如感知等级)来设定量化系数。
在所述编码装置中,优选为,编码控制器基于累计值及编码次数来选出适用于可变长编码数据生成器的编码系统,并根据所选出的编码系统及量化系数来设定最大编码长度。
因此,可变长编码数据的最大编码长度能通过选择编码系统来受到控制。
在所述编码装置中,优选为,可变长编码数据生成器将量化预测误差数据转换为编码变量,从而在量化预测误差数据的绝对值增大时,该编码变量也增大,并在量化预测误差数据的绝对值为0时,编码变量也为0,该编码变量与量化预测误差数据一一对应,来生成可变长编码数据,从而使得编码变量越小,可变长编码数据的编码长度越短。
因此,与构成自然图像数据的像素数据相同,也当量化预测误差数据的绝对值变为0或接近于0的值的概率较高时,能有效地减小该编码变量。由此,能够有效地缩短可变长编码数据的编码长度。
在所述编码装置中,优选为,预测值数据生成器暂时且依次地保持依次生成的预测值数据,并利用逆量化预测误差数据来生成新的预测值数据以及至少一个预测值数据,其中,该逆量化预测误差数据是通过对由量化器生成的量化预测误差数据乘上量化系数而得到的,该至少一个预测值数据是根据与预测目标的像素数据接近的像素数据而生成并被预先保持。
因此,与预测误差数据的量化相关的误差被重置,从而能对预测误差数据中的误差的累积进行抑制。预测对象的像素数据的预测值数据是利用接近于像素数据的预测值数据而生成的,由此,能够减小预测误差数据。
在所述编码装置中,优选为,预测值数据生成器暂时且依次地保持依次生成的预测值数据,并通过对逆量化预测误差数据加上最新保持的预测值数据,从而生成新的预测值数据,其中,逆量化预测误差数据是通过对由量化器生成的量化预测误差数据乘上量化系数。
因此,只有一个预测值数据应由预测值数据生成器来保持。由此,能减小电路规模。
在所述编码装置中,优选为,在编码控制器发现在预测误差数据变为0的情况满足规定条件时,编码控制器控制编码器,以使得编码器在预测误差数据为0时生成具有1比特的编码长度的可变长编码数据。
因此,压缩率能有效地增强。
在所述编码装置中,优选为,目标编码长度小于等于通过对像素数据的编码长度乘上目标压缩率后得到的长度。
因此,能可靠地保证目标压缩率。
本发明也提供一种解码装置,该解码装置包括:解码器,该解码器通过执行设定解码处理并依次生成解码预测误差数据,来对由编码装置生成的可变长编码数据进行解码;解码预测值数据生成器,该解码预测值数据生成器依次生成解码预测值数据,该解码预测值数据是解码像素数据的预测值;解码像素数据生成器,该解码像素数据生成器依次生成解码像素数据,该解码像素数据是解码预测误差数据与解码预测值数据的总和;以及解码控制器,该解码控制器依次控制解码器,其特征在于,在生成了规定数量的解码像素数据时,解码控制器通过累积经过解码器进行解码的可变长编码数据的编码长度与编码装置所使用的目标编码长度的差值,来依次计算解码累计值,该编码控制器基于解码累计值及由解码器执行的解码的次数即解码次数来估计对要由解码器解码的可变长编码数据执行的编码处理,解码控制器设定解码器,从而对可变长编码数据执行解码处理、即所估计的编码处理的逆处理。
在所述解码装置中,优选为,解码控制器通过在连续输入的数据中依次检测构成一部分或整个可变长编码数据的头部来识别出可变长编码数据。
因此,可变长编码数据能够通过简单的检测头部的方法在连续输入的数据中被识别出。
在所述解码装置中,优选为,解码预测值数据生成器暂时且依次地保持依次由解码像素数据生成器生成的解码像素数据,并利用至少一个解码像素数据来生成新的解码预测值数据,该解码像素数据接近于预测对象的解码像素数据并被事先保持。
因此,能够生成与由编码装置进行了编码的像素数据相对应的解码像素数据。
在所述解码装置中,优选为,解码预测值数据生成器暂时且依次地保持依次由解码像素数据生成器生成的解码像素数据,并生成最新保持的解码像素数据来作为新的解码预测值数据。
因此,只有一个解码像素数据应由解码预测值数据生成器来保持。由此,能减小电路规模。
本发明也提供一种编解码系统,该编解码系统包括:编码装置、解码装置以及具有规定存储容量的存储装置,其特征在于,由编码装置生成的可变长编码数据被写入存储装置中,解码装置利用从存储装置中读取出的可变长编码数据来生成解码像素数据。
本发明也提供一种编码方法,该编码方法包括如下步骤:预测值数据生成步骤,该预测值数据生成步骤生成预测值数据,该预测值数据是像素数据的预测值;预测误差数据生成步骤,该预测误差数据生成步骤生成预测误差数据,该误差数据是像素数据与在预测值数据生成步骤中生成的预测值数据间的差值;编码步骤,该编码步骤对在预测误差数据生成步骤中生成的预测误差数据进行编码,从而生成可变长编码数据,该可变长编码数据的编码长度可变且小于等于设定最大编码长度;累计值计算步骤,该累计值计算步骤通过累积在编码步骤中生成的可变长编码数据的编码长度与目标编码长度的差值,来计算出累计值;以及最大编码长度设定步骤,该最大编码长度设定步骤基于在累计值计算步骤中计算出的累计值以及编码次数来设定在下一个编码步骤中的最大编码长度,其中,编码次数是执行编码步骤的次数,其特征在于,所述预测值数据生成步骤、预测误差数据生成步骤、编码步骤、累计值计算步骤以及最大编码长度设定步骤被重复执行,直到生成了规定个数的可变长编码数据,最大编码长度在最大编码长度设定步骤中被设定,由此,在生成了规定个数的可变长编码数据时,累计值为0或更小。
本发明也提供一种解码方法,该解码方法包括如下步骤:解码步骤,该解码步骤通过执行设定解码处理并生成解码预测误差数据,来对利用所述编码方法生成的可变长编码数据进行解码;解码累计值计算步骤,该解码累计值计算步骤通过累积在解码步骤中经过解码的可变长编码数据的编码长度与在编码方法中使用的目标编码长度的差值,来计算解码累计值;解码处理设定步骤,该解码处理设定步骤基于在解码累计值计算步骤中计算出的解码累计值以及解码次数来估计对将在下一个解码步骤中进行解码的可变长编码数据进行的编码处理,并设定与所估计的编码处理的逆转换相对应的解码处理,以作为在下一个解码步骤中的解码处理,其中,所述解码次数是执行解码步骤的次数;解码预测值数据生成步骤,该解码预测值数据生成步骤生成解码预测值数据,该解码预测值数据是解码像素数据的预测值;以及解码像素数据生成步骤,该解码像素数据生成步骤生成解码像素数据,该解码像素数据是在解码步骤中生成的解码预测误差数据与在解码预测值数据生成步骤中生成的解码预测值数据的总和,其特征在于,所述解码步骤、所述解码累计值计算步骤、所述解码处理设定步骤、解码预测值数据生成步骤以及解码像素数据生成步骤被重复执行,直到生成了规定个数的解码像素数据。
技术效果
根据上述编码装置及编码方法,可变长编码数据的最大编码长度依次受到控制,以至于累计值最终变为0或更小。因此,在目标压缩率得到保证的同时,在累计值具有余量的情况下可变长编码数据的最大编码长度被加长,由此,能抑制图像数据的劣化。
附图说明
图1是表示使用本发明实施方式中的编解码系统的图像处理系统的结构的模块图。
图2是表示本发明实施方式中的编码装置的结构例的模块图。
图3是表示量化系数为1且预测值数据为100时、图像数据、经量化后的预测误差数据以及编码变量间的关系的表。
图4是与预测出的出现概率一起表示的图3中的表的值的曲线图。
图5是表示量化系数为1、2或4且预测值数据为100时、经量化后的预测误差数据与编码变量间的关系的表。
图6是表示编码表的具体示例的表。
图7是表示增大状态变量的条件的曲线图。
图8是表示减少状态变量的条件的曲线图。
图9是表示由变化处理选择器执行的量化系数选择方法的示例的表。
图10是表示依次生成的变长编码数据的总编码长度变为图9所示的最大编码长度时的累计值的变化的曲线图。
图11是表示各种图像中的编码变量的出现概率的表。
图12是表示对构成图11所示的图像数据的像素数据利用图6所示的编码表1-3生成变长编码数据时的各编码长度的期待值。
图13是表示本发明实施方式中的解码装置的结构例的模块图。
图14是表示编码表的另一示例的表。
具体实施方式
(编解码系统)
首先,参照附图对本发明的实施方式所涉及的编解码系统进行说明。图1是表示使用该编解码系统所使用的图像处理系统的结构例的模块图。
如图1所示,图像处理系统PS包括:输入端IN,向该输入端IN输入图像图像数据;图像处理装置P,该图像处理装置P对从所述输入端IN输入的图像数据进行处理并输出经过处理后的图像数据;输出端OUT,该输出端OUT将图像处理装置P所输出的经过处理的图像数据输出至外部;以及编解码系统CD,该编解码系统CD存储有图像处理装置P进行图像处理时所需的数据。
图像处理装置P利用先前已经过处理的图像数据来执行过冲处理(也被成为OS处理或过驱动处理,该处理调整图像数据的灰度值、以加快显示于液晶显示器等上的移动图像的响应速度)等处理。图像处理装置P可以执行任何处理,只要该处理使用之前已经过处理的数据。
该编解码系统CD包括编码装置1、存储装置2以及解码装置3。该编码装置1以目标压缩率以上的压缩率对由图像处理装置P提供且具有规定单位(例如以一帧为单位)的数据(像素数据)执行压缩编码,经编码装置1编码后的数据(变长编码数据)被写入存储装置2中。解码装置3将通过对从存储装置2读取到的数据进行解码从而得到的数据(解码后的像素数据)输入至图像处理装置P。例如,存储装置2由能暂时存储帧存储器中的数据的装置构成。
在本实施方式的编解码系统CD中,经过编码装置1编码后的数据存储于存储装置2中,存储于存储装置2中的数据由解码装置3进行解码,从而降低存储在存储装置2中的数据量。
本实施方式中的编码装置1与编码方法以及解码装置3与解码方法可适用于编解码系统CD,下面将对其进行说明。
(编码装置及编码方法)
下面,参照附图对本实施方式的编码装置1及编码方法进行说明。参照图2对编码装置1的结构进行说明。图2是表示本实施方式中的编码装置的结构例的模块图。
如图2所示,编码装置1包括:第1输入端it1,该第1输入端it1依次输入有像素数据di以及像素坐标数据dz;第2输入端it2,该第2输入端it2输入有设定信息dm;预测值数据生成器11,该预测值数据生成器11依次生成预测值数据dip,该预测值数据dip是像素数据di的预测值;预测误差数据生成器12,该预测误差数据生成器12利用像素数据di及预测值数据dip依次生成预测误差数据dp;编码器13,该编码器13通过对预测误差数据dp进行编码,从而依次生成可变长编码数据dc;输出端ot1,该输出端ot1依次输出该可变长编码数据dc;以及编码控制器14,该编码控制器14基于可变长编码数据dc、设定信息dm以及图像坐标数据dz来控制编码器13。
该预测值数据生成器11包括预测值缓存器111,该预测值缓存器111能暂时且依次地保持所生成的预测值数据dip。
编码器13包括量化器131以及可变长编码数据生成器132,该量化器131利用量化系数r对预测误差数据dp进行量化,以依次生成量化预测误差数据dq,该可变长编码数据生成器132根据该量化预测误差数据dq来依次生成可变长编码数据dc。
编码控制器14包括量化系数设定单元141、编码表设定单元142以及编码处理选择器143。该量化系数设定单元141设定量化系数r。该编码表设定单元142设定(相当于编码系统的选择)编码表t,该编码表t表示出量化预测误差数据dq与可变长编码数据dc之间的关系。编码处理选择器143输出量化系数指示数据rs、编码表指示数据ts、设定信息dm以及图像坐标数据dz,其中,该量化系数指示数据rs指示要设定的量化系数r,该编码表指示数据ts基于可变长编码数据dc指示要设定的编码表t。
下面,参照附图对编码装置1的具体操作进行说明。为更具体地进行说明,对以下情况进行说明,即编码装置1按照每个YUV分量数据对具有8比特的灰度级(256色)并由YUV分量数据(Y是亮度分量数据,U及V是色差分量数据)表示的全高清(水平方向有1920个像素,垂直方向有1080个像素)图像数据进行编码。为了方便,以下示例中,各Y、U、V分量数据均事先经过标准化,Y、U、V分量数据可取0至255中的整数值。例如,设定信息dm指示图像尺寸(1920X1080)以及目标压缩比(例如是对构成图像数据的所有像素数据等规定数量的所有像素数据进行设定的压缩率的目标值,具体来说可以是50%或1/2的压缩)。
构成图像数据的像素数据di依次输入至第1输入端ti1。像素数据di可按照任何顺序进行输入。然而,当图像数据中的相邻间的像素数据依次输入时,优选为,预测误差数据dp的绝对值变小,从而使可变长编码数据dc的编码长度缩短(在后面详细说明)。例如,像素数据的输入顺序可以为对图像数据进行光栅扫描的顺序(即为进行排列的像素数据在垂直方向上移动一步的同时从一端到另一端地持续进行水平扫描、的顺序)。为了进行详细说明,举出以下示例,即像素数据di按照对图像数据进行光栅扫描的顺序、依次输入至第1输入端it1。
第1输入端it1还输入有像素坐标数据dz,该像素坐标数据dz指示输入像素数据di在图像数据中的坐标位置。像素坐标数据dz可为任意信息,只要编码处理选择器143能识别出输入像素数据di在图像数据中的坐标位置。例如,当构成图像数据的像素数据di按照规定的顺序(例如为光栅扫描的顺序)输入进第1输入端it1时,像素坐标数据dz可为输入至第1输入端it1的像素数据di的计数信息。
如下式(1)所示,预测误差数据生成器12通过对从第1输入端it1获取到的第k个像素数据dik减去从预测值数据生成器11的预测值缓存器111获取到的第k个预测值数据dipk来生成第k个预测误差数据dpk。此外,k表示编码次数,k可以是1至1920x1080中的自然数。后面将对利用预测值数据生成器11来生成第k个预测值数据dipk的方法进行说明
dpk=dik-dipk(1)
然后,编码器13通过对从预测误差数据生成器12获取到的第k个预测误差数据dpk进行编码,从而生成第k个可变长编码数据dck
如下式(2)所述,量化器131利用第k个量化系数rk对第k个预测误差数据dpk进行量化,以生成第k个量化预测误差数据dqk。具体而言,第k个预测误差数据dpk被除以第k个量化系数rk,而其商的小数点以后四舍五入,从而生成第k个量化预测误差数据dqk
商的小数点以后四舍五入,从而生成第k个量化预测误差数据dqk,由此,能够抑制第k个量化预测误差数据dqk在0附近的误差增大。在下式(2)中,sign(x)表示x的正负符号,[x]表示x的整数部分(最接近的对x向下取整的整数)(在下述说明中也相同)。
在下面对设定第k个量化系数rk的方法进行说明。
dqk=sign(dpk)[(|dpk|+rk/2)/rk]
(2)
在等式(2)中,在第k个量化系数rk为1的情况下,第k个量化预测误差数据dqk等于第k个预测误差数据dpk。另一方面,在第k个量化系数rk大于1的情况下,第k个量化预测误差数据dqk所能取的值的数量([255/r]+2)可小于第k个预测误差数据dpk所能取的值的数量(256)。
然而,在该情况下,即使第k个预测误差数据dpk的值不同,第k个量化预测误差数据dqk也可能变得相同(即,可能产生误差)。
如下式(3)所示,预测值数据生成器11利用第k-1个量化系数k-1来对从量化器131获取到的第k-1个量化预测误差数据dqk-1进行逆量化,从而得到预测误差数据dqk-1*rk-1,并将预测误差数据dqk-1*rk-1加上第k-1个预测值数据dipk-1,由此,生成第k个预测值数据dipk。因此,第k个预测值数据dipk是接近于第k-1个像素数据dik-1的值(由于对第k-1个预测误差数据dpk-1进行了量化及逆量化,因此第k个预测值数据dipk并非始终与第k-1个像素数据dik-1相匹配)。预测值数据生成器11在预测值缓存器111中暂时存储从下式(3)生成的第k个预测值数据dipk
dipk=dipk-1+dqk-1*rk-1(3)
一般来说,对于自然图像数据,图像数据中互相靠近的像素数据(特别是相邻数据)通常具有较高的相关度。因此,预测值数据生成器11如等式(3)所示那样生成第k个预测值数据dipk,从而能使第k个预测误差数据dpk接近于0。如后述那样进行详细说明,在本实施方式的编码装置1中,随着第k个预测误差数据dpk接近于0,可将所生成的第k个可变长编码数据dck的编码长度缩短。
当生成第k个预测值数据dipk时,预测值数据生成器11通过对第k-1个预测误差数据dpk-1执行量化及逆量化,从而重置与预测误差数据dpk-1的量化有关的误差。因此,能够抑制第k个预测误差数据dpk中与量化有关的误差的累积。
预测值数据生成器11可利用不同于等式(3)的方法来生成第k个预测值数据dipk。例如,在等式(3)中,第k-a个预测值数据dipk-a可用于计算第k个预测值数据dipk。具体而言,在a=1920的情况下,可以在计算第k个预测值数据dipk时使用图像数据中在垂直方向上与第k个像素数据dik相邻的像素数据dik-1920的预测值数据dipk-1920。具体而言,在a=2的情况下,可以在计算第k个预测值数据dipk时使用位于第k个像素数据dik前2个的像素数据dik-2的预测值数据dipk-2。例如,多个第k-a个预测值数据dik-a(例如a=1及2)的平均值可用于计算第k个预测值数据dipk。然而,在使用上述方法时,需要设置保存像素数据dik-a的线路存储器,这可能造成电路规模的扩大。根据像素数据扫描方法,所使用的预测值数据可能因要预测的像素数据在图像数据中的位置(例如像素数据是否位于端部)的不同而有所不同。
另一方面,为了实现简化生成第k个可变长编码数据dck的计算以及缩短第k个可变长编码数据dck的编码长度,可变长编码数据生成器132将从量化器131获取到的第k个量化预测误差数据dqk转换为如下式(4)所示的第k个编码变量nk
在下式(4)中,当第k个量化系数rk为1时,mk变为第k个预测值数据dipk与255-dipk中较小的值。即,mk=min(dipk,255-dipk)。另一方面,当第k个量化系数rk在1以上时,等式(4)中的mk变为第k个量化预测值数据diqk与[255/rk]+1–diqk中较小的值,其中,第k个量化预测值数据diqk通过将第k个预测值数据dipk代入等式(2)中的第k个预测值数据dpk来得到。
即,mk=min(diqk,[255/rk]+1-diqk)。
在等式(4)中,s是在dqk≥0时s=0且dqk<0时s=1的数。在量化系数rk为1时,第k个编码变量nk变为0至255的连续整数,与量化预测误差数据dqk一一对应。另一方面,在量化系数rk大于1的情况下,第k个编码变量nk变为0至[255/rk]+1的连续整数,与量化预测误差数据dqk一一对应。
当|dqk|≤mk,nk=2|dqk|-s,
当|dqk|>mk,nk=dqk+mk,(4)
参照附图对编码变量n进行说明。图3是表示图像数据、量化预测误差数据以及量化系数为1且预测值数据为100的情况下的编码变量之间的关系的表。图4是与预测出现概率一起表示的图3中的表的值的曲线图。图5是表示量化预测误差数据与量化系数为1、2或4且预测值数据为100的情况下的编码变量之间的关系的表。在图4中的曲线图中,横轴表示预测误差数据dp及编码变量n,纵轴表示出现概率f。
如图3所示,在量化系数r为1的情况下,量化预测值数据diq等于预测值数据dip,而量化预测误差数据dq等于预测误差数据dp。可变长编码数据生成器132将量化预测误差数据dq转换为编码变量n,从而使得编码变量n随着量化预测误差数据dq的绝对值的增大而增大,并使得在量化预测误差数据dq为0时,编码变量n变为0。
如上所述,通常来说,自然图像数据中,互相靠近的像素数据具有较高的相关度。因此,如图4所示,得到一种分布,即当量化预测误差数据dq的绝对值向0靠近时,出现概率f增加(例如类似于拉普拉斯分布)。由此,当利用等式(4)将该量化预测误差数据dq转换成编码变量n时,在编码变量n为0的情况下,出现概率f最大,由此,得到出现概率f随着编码变量n的增加而单调减小的分布。
如图5所示,随着量化系数r的增加,量化预测误差数据dq所能取的值(整数值)的数量减少。因此,与量化预测误差数据dq一一对应的编码变量n所能取的值的数量也减少。编码变量n所能取的最大值随着量化系数r的增大而减小。
可变长编码数据生成器132根据第k个编码表tk来生成与第k个编码变量nk相对应的第k个可变长编码数据dck。在下述说明中,为了便于说明,设可变长编码数据生成器132使用图6中的编码表1至3作为粒子。图6是表示编码表的具体示例的表。下面,将对利用第k个编码表tk来生成第k个可变长编码数据dck的方法进行说明。在下面也将对选择第k个编码表tk的方法进行说明。
图6中的各个编码表1至3可以包括由规定比特数表示的头部、以及由星号表示的主体部。头部对应于多个编码变量n被大致分割的各范围,主体部对应于被大致分隔的范围内的编码变量n的值。
例如,图6的编码表1被选为第k个编码表tk,而由可变长编码数据生成器132确定的第k个编码变量nk为“10”。在该情况下,由于第k个编码变量nk为“10”,因此可变长编码数据生成器132识别出第k个编码变量nk属于范围“8至15”,并且所生成的第k个可变长编码数据dck的头部为“1110”(主体部为###)。
由于在范围“8至15”中,“10”是第三小的数,因此可变长编码数据生成器132识别出主体部“###”为由3比特的2进数表示的3,即“010”。由此,在该情况下,可变长编码数据生成器132生成“1110010”,以作为第k个可变长编码数据dck。第k个可变长编码数据dck从输出端ot1输出。
编码控制器14通过监视依次生成的可变长编码数据dc来控制编码器13的动作。下面将对利用编码控制器14来控制编码器13的方法进行说明。
当第k个可变长编码数据dck生成时,编码处理选择器143如下式(5)所示那样计算第k个累计值Ck。如下那样得到第k个累计值Ck。第k个可变长编码数据dck的编码长度Bk被加上第k-1个累计值Ck-1,并减去目标编码长度T。也就是说,累计值C是通过依次累加上由编码器13依次生成的编码长度B与目标编码长度T的差值来得到的。当目标长度T被设为对一个像素数据的编码长度(8比特*3=24比特)乘上目标压缩率(50%)后得到的值(12比特)时,能够保证编码装置1实现该目标压缩率。第1累计值C1被设为从第1可变长编码数据dc1的编码长度B1减去目标编码长度T后得到的值。
Ck=Ck-1+Bk-T(5)
编码处理选择器143如下那样基于第k个累计值Ck来设定第k个状态变量STk。例如,状态变量ST能取0至10的整数值。在对第k+1个预测误差数据dpk进行编码的过程中,编码处理选择器143根据第k个状态变量STk来选择量化系数rk+1以及编码表tk+1。在下式(6)至(8)中,h是图像数据的垂直尺寸(像素数,例如为1080),而jk+1是第k+1个像素数据dik+1在图像数据中的垂直坐标(0至h-1,例如为0至1079)。设ST0为0。
在第k-1个状态变量STk-1在0至9的范围内时,若满足下式(6),则第k个状态变量STk变为第k-1个状态变量STk-1加1后得到的值。等式(6)示于图7中。图7是表示增大状态变量的条件的曲线图。图7的曲线图中,纵轴表示累计值C,横轴表示像素数据在图像数据中的垂直坐标j。
Ck>(2×STk-1+2)×(h-1)-20×jk+1(6)
在第k-1个状态变量STk-1在1至9的范围内时,若满足下式(7),则第k个状态变量STk变为第k-1个状态变量STk-1减去1后得到的值。
Ck<(2×STk-1-1)×(h-1)-20×jk+1(7)
在等式(8)满足第k-1个状态变量STk-1为10的情况下,第k个状态变量STk变为第k-1个状态变量STk-1减1后得到的值(即9)。等式(7)及(8)示于图8中。图8是表示减小状态变量的条件的曲线图。图8的曲线图中,纵轴表示累计值C,横轴表示像素数据在图像数据中的垂直坐标j。
Ck≤(2×9+2)×(h-1)-20×jk+1(8)
等式(6)至(8)可被解释成状态变量ST变为互相相等的各小区域的边界。然而,该边界仅为一示例。可以设置成任意的边界。例如,由于滞后现象导致状态变量ST发生变化,因此等式(6)及(7)所示的边界线互不相同(该边界具有规定的死区宽度)。或者,也可以统一该边界线。
具体而言,例如,增大状态变量ST的边界线与减小状态变量ST的边界线可以均与由等式(6)所示的边界线相一致。在由等式(6)至(8)所示的边界线上,像素数据在图像数据中的垂直坐标j用作为变量。或者,也可以使用其它数来作为变量,例如表示编码装置1进行编码处理的进展的编码次数k。
编码处理选择器143基于所计算出的第k个状态变量STk来选出第k+1个量化系数rk+1,以将其用于量化第k+1个预测误差数据dpk+1。编码处理选择器143对量化系数设定单元141输入量化系数指示数据rsk+1,该量化系数指示数据rsk+1用于指示对所选出的第k+1个量化系数rk+1进行设定。因此,量化系数设定单元141设定量化器131对第k+1个预测误差数据dpk+1进行量化时使用的第k+1个量化系数rk+1进行。
下面将参照附图对利用编码处理选择器143选出量化系数r的方法的示例进行说明。图9是表示利用编码处理选择器执行量化系数选择方法的示例的表。图9中的“可变长编码数据的最大编码长度”表示可变长编码数据生成器132仅使用图6中的编码表1。
如图9所示,随着状态变量ST的增大(随着累计值C的增大),编码处理选择器143增大量化系数r。因此,由于编码变量n变小,因此可变长编码数据的最大编码长度可被缩短(参照等式(2)及(4))。
关于这点,如图9所示,优选为,量化系数根据YUV分量数据来分开设定。例如,考虑到人类视觉上对亮度分量Y的灵敏度较高而对色差分量U及V的敏感度较低,对色差分量U及V设定的量化系数r可以大于对亮度分量Y设定的量化系数r。
因此,当量化系数如上述那样设定时,人类可能无法察觉到由于量化系数r的增大(缩短可变长编码数据dc的编码长度)而造成的图像数据劣化。
在本实施方式的编码装置1中,当图7中的状态变量ST变为最大值10时,可变长编码数据dc的最大编码长度(10比特)被设定得比目标编码长度T(12比特)要短。当状态变量ST从9增加到最大值10时,边界处的累计值C(图7中的粗线所示的限制值)被设定成至少在端部(j=1079)变为0或更小。因此,当状态变量ST在低压缩率下变为最大值10时,大于目标压缩率(50%)的压缩率被实现,至少最后能实现目标压缩率。
下面将参照附图来具体说明本实施方式中的编码装置1能保证目标压缩率。图10是表示依次生成的可变长编码数据的总编码长度变为图9所示的最大编码长度时的累计值的变化的曲线图。为了说明方便,图10中仅示出了增大状态变量ST的边界线(参照等式(6))。
如图10所示,即使累计值C的增加率逐渐减小,累计值C仍随着状态变量ST的增大而持续增大,直到状态变量ST变为9。一旦状态变量ST变为9,累计值C就停止变化,这是由于,如图9所示,可变长编码数据dc的最大编码长度变为12比特,与目标编码长度T相等。此时,累加值C仍大于0,未实现目标压缩率。
虽然累加值C不产生变化,但仍对像素数据di进行编码,而像素数据di(编码目标)在图像数据中的垂直坐标j增大。即使累加值C不发生变动,像素数据di的垂直坐标j随着对像素数据di的编码的进行而超过限制值。因此,状态变量ST增大至10。
依次生成的可变长编码数据dc的最大编码长度变为小于目标编码长度T的10。由此,累加值C逐渐减小。在该示例中,累加值C沿着状态变量ST增大至10的边界线减小。最终,限制值变为0,累计值C变为0或更小的值,由此能保证目标压缩率。
编码处理选择器143基于所计算出的第k个状态变量STk及累加值Ck来选出用来生成第k+1个可变长编码数据k+1的第k+1个量化系数rk+1。编码处理选择器143对编码表设定单元142输入编码表指示数据tsk+1,该编码表指示数据tsk+1用于指示对所选出的第k+1个编码表tk+1进行设定。因此,编码表设定单元142设定对量化器132生成第k+1个可变长编码数据dck+1时使用的第k+1个编码表tk+1
下面将参照附图来对由编码处理选择器143选出编码表t的方法的示例进行说明。图11是表示编码变量n在各种图像中的出现概率(%)的表。图12是表示对构成图像数据的像素数据利用图6中的编码表1至3来生成可变长编码数据时、各编码长度的期望值的表。
图11中的“图像”不仅解释为整个图像数据,也是图像数据的一部分。图11及图12示出了量化系数r各不相同(该例中为1与4),而图像一致的情况。在量化系数r发生变化的情况下,编码变量n的范围如图5所示那样发生变化。
如图11所示,在图像1中,较小的编码变量n中出现概率发生偏离。在另一方面,在图像2中,出现概率相对于较小的编码变量n具有较小的偏差,而较大编码变量n的出现概率则相对较大。即,在图像1中,相互靠近的像素数据的变化相对较小且平滑。在图像2中,相互靠近的像素数据的变化(亮度或颜色上的变化)则相对较大。
图像3是将图像1的特征充分显现的特殊图像,而图4是将图2的特征充分显现的特殊图像。即,图像3是互相靠近的像素数据不发生变化的单幅(固定)图像,图像4是互相靠近的像素数据发生剧烈变化的图像,例如由线构成的条纹在垂直方向上延伸并在其之间具有一个像素的间隙。如上所述,量化系数r可以根据状态变量ST而发生变动。然而,此时,为了描述编码表1至3间的区别,将量化系数r固定为1或4。
图12示出了对图11中的各个图像1至4利用图6中的编码表1至3来生成可变编码长度数据dc时的、编码长度的预期值。与编码表1至3相对应的图12中的编码长度的预期值如下那样获取。图6中各编码表1至3的编码长度按照各个所对应的编码变量n、乘上图11中的各图像1至4的出现概率,并将该积相加起来。
如图6所示,当编码变量n较小时,利用编码表1获取到的可变编码长度数据dc的编码长度比利用编码表2获取到的可变编码长度数据dc的编码长度要短,而当编码变量n较大时,编码长度比利用编码表2获取到的要长。因此,如图12所示,对于图像1,利用编码表1获取到的可变编码长度数据dc的编码长度的期望值比利用编码表2获取到的可变编码长度数据dc的编码长度的期望值要短。也就是说,使用编码表1与使用编码表2相比,压缩率较高。图3也如此。
另一方面,对于图像2,相反地,利用编码表2获取到的可变编码长度数据dc的编码长度的期望值比利用编码表1获取到的可变编码长度数据dc的编码长度的期望值要短。也就是说,使用编码表2与使用编码表1相比,压缩率较高。图4也如此。
例如,编码处理选择器143能基于状态变量ST及累加值C来识别出编码变量n的出现概率的趋势,并适当选出希望可变长编码数据dc的编码长度变短的编码表。由此,编码处理选择器143选出编码表来缩短可变长编码数据dc的编码长度,从而增强压缩率。
从保证目标压缩率的角度来看,优选为,在编码变量n增大得较多时(例如在对图像4进行编码的情况),编码处理选择器143选出能缩短可变长编码数据dc的编码长度的编码表3。例如,在状态变量ST或累计值C在规定值以上时,编码处理选择器143选出编码表3。因此,压缩率能有效地增强。相似地,编码处理选择器143能根据状态变量ST或累计值C来选出编码表1至3。
如上所述,在本实施方式的编码装置1及编码方法中,可变长编码数据dc的最大编码长度依次受到控制,使得累计值C最终等于0或小于0。因此,在保证目标压缩率的同时,在累计值C具有余量时,可变长编码数据dc的最大编码长度能被拉长,从而能抑制图像数据的劣化。
(解码装置及解码方法)
下面,参照附图对本实施方式的解码装置3及解码方法进行说明。首先,参照图13对解码装置3的结构进行说明。图13是表示本实施方式中的解码装置的结构例的模块图。图13中,对与图2中的编码装置1相同的组件标注相同标号,并省略详细说明。出于详细说明的目的,假设在编码装置1中说明的各种设定也适用于下述说明。
如图13所示,解码装置3包括:第1输入端IT1,该第1输入端IT1依次输入可变长编码数据dc以及像素坐标数据dz;第2输入端IT2,该第2输入端IT2输入有设定信息dm;解调器31,该解调器31通过依次对可变长编码数据进行解码来依次生成解码预测像素数据ddp;解码控制器32,该解码控制器32基于可变长编码数据dc、设定信息dm以及图像坐标数据dz依次控制解码器31;解码预测值数据生成器33,解码预测值数据生成器33依次生成解码预测值数据dop、即解码像素数据do的预测值;解码像素数据生成器34,该解码像素数据生成器34利用解码预测误差数据ddp以及解码预测值数据dop来依次生成解码像素数据do;以及输出端OT1,该输出端OT1依次输出解码像素数据do。
该解码预测值数据生成器33包括解码预测值缓存器331,该解码预测值缓存器331能暂时且依次地保持所生成的解码预测值数据dop。
解码器31包括可变长编码数据解码器311以及逆量化器312,其中,该可变长编码数据解码器311根据可变长编码数据dc依次地生成量化预测误差数据dq,该逆量化器312通过利用逆量化系数R对量化预测误差数据dq进行逆量化,来依次生成解码预测误差数据ddp。
解码控制器32包括解码表设定单元321、逆量化系数设定单元322以及解码处理选择器323。解码表设定单元321设定解码表T,该解码表T示出可变长编码数据dc与量化预测误差数据dq之间的对应关系。逆量化系数设定单元322设定逆量化系数R。解码处理选择器323基于可变长编码数据dc、设定信息dm以及图像坐标数据dz输出解码表指示数据Ts、逆量化系数指示数据Rs,其中,该解码表指示数据Ts指示要设定的解码表T,该逆量化系数指示数据Rs指示要设定的逆量化系数R。
下面,参照附图对解码装置3的具体操作进行说明。首先,可变长编码数据dc依次输入至第1输入端IT1。优选为,可变长编码数据dc的输入顺序与可变长编码数据dc从编码装置1输出的顺序相同。像素坐标数据dz也依次输入至第1输入端IT1。
解码处理选择器323利用与编码处理选择器143相同的选择方法(基于累计值C及状态变量ST的选择方法)、选出解码表T以及逆量化系数R,其中,该解码表T示出了与编码表t相同的对应关系,该逆量化系数R与量化系数r相等。解码处理选择器323对解码表设定单元321输出用于指示在设定所选择的解码表T的解码表指示数据Ts,解码处理选择器323对逆量化系数设定单元322输出用于指示设定所选择的逆量化系数R的逆量化系数指示数据Rs。
可变长编码数据解码器311基于由解码表设定单元321设定的解码表T确定出输入数据中的头部,由此,第u个可变长编码数据dcu得以确定,第u个编码变量nu得以决定。U是解码次数,是1至1920×1080的自然数,类似于编码次数k。
具体而言,示出与图6中的编码表1相同对应关系的解码表T得到设定,逆量化系数R设定为1。此时,在依次输入至第1输入端IT1中的数据被检测出为“1110”的情况下,发现7比特的“1110###”为可变长编码数据dc。例如,当跟在头部后的“###”为“010”时,可以确定编码变量n是“8至15”的范围中第三小的数,即“10”。
然后,可变长编码数据解码器311通过对所确定的第u个编码变量nu执行可变长编码数据生成器132的逆操作(即等式(4)的逆变换),从而生成第u个量化预测误差数据dqu
如下式(9)所示,逆量化器312通过利用第u个逆量化系数Ru对第u个量化预测误差数据dqu进行逆量化,来生成第u个解码预测误差数据ddpu。具体而言,第u个量化预测误差数据dqu的绝对值乘上第u个逆量化系数Ru,并从该积中减去1,然后,对所得到的值赋予第u个量化预测误差数据dqu的符号,由此,生成第u个解码预测误差数据ddpu
ddpu=sign(dqu)(|dqu|*Ru-1)(9)
如下式(10)所示,解码预测值数据生成器33直接将第u-1个解码像素数据dou-1设定为解码预测值数据dopu。第u-1个解码像素数据dou-1被暂时保存在解码预测值缓存器311中。通过在编码装置1中对预测值数据dip的计算,解码预测值数据生成器33可以利用与等式(10)不同的方法来生成第u个解码预测值数据dopu。然而,优选为,解码预测值数据生成器33采用与预测值数据生成器11相对应的方法。具体而言,例如在预测值数据生成器11在计算第k个预测值数据dipk时使用第k-a个预测值数据dipk-a的情况下,优选为,解码预测值数据生成器33将第u-a个解码像素数据dou-a设定为第u个解码预测值数据dopu
dopu=dou-1(10)
如下式(11)所示,解码像素数据生成器34通过对第u个解码预测误差数据ddpu加上第u个解码预测值数据dopu,从而计算出第u个解码像素数据dou
dou=ddpu+dopu(11)
如上所述,在解码装置3及该解码方法中,可以通过对由编码装置1及编码方法进行了编码的可变长编码数据dc进行解码,从而生成解码像素数据do。
(变形例)
<1>图14所示的编码表4可以包括在能被编码装置1的编码处理选择器143选出的编码表内。图14是示出编码表的另一示例的表格。
当可变长编码数据生成器132使用图14中的编码表时,则在编码变量n为0的情况下,生成为0且1比特的可变长编码数据dc。另一方面,当编码变量n不为0时,“1”与“n-1的编码”相组合后得到的编码、即1+(“n-1的编码”的编码长度)比特的可变长编码数据dc得以生成。该“n-1的编码”可以是通过利用图6中的编码表1至3中的某一个来得到的编码。
在编码变量n为0时,使用编码表4能有效地增强压缩率。因此,在编码变量n连续了规定数以上的次数(例如2次)的情况下,编码处理选择器143优先选择出该编码表4。
<2>编码装置1的可变长数据生成器132可以在量化器131的量化的基础上(或代替量化器131的量化),执行量化。具体而言,例如在上述示例中,当编码变量n为10时,编码表1被选出,则头部“1110”与主体部“010”被组合总而生成可变长编码数据dc。或者,主体部所能取的3比特的值(8种情况)被进一步用2来量化,从而生成2比特(4种情况)的主体部。在该情况下,由“1110”的头部及“01”的主体部组合而成的可变长编码数据dc得以生成。
因此,可变长编码数据dc的编码长度可有效地缩短。只有当累加值C或状态变量ST变得大于规定值的特殊情况下,可变长数据生成器132才能执行上述量化,或该可变长数据生成器132可以持续执行上述量化。
<3>在该实施方式中,编码装置1的编码处理选择器143通过选出量化系数r及编码表t这两项来控制可变长编码数据dc的编码长度(压缩率)。或者,也可以在编码表t不变的情况下,仅选择量化系数r。然而,当编码处理选择器143构成为选择编码表t时,优选为,在压缩率被有效提高的同时,对图像的劣化进行抑制。在不选择编码表t的情况下,编码处理选择器143可以选择指示编码系统的计算公式。
<4>在该实施方式中,编码装置1的编码处理选择器143基于状态变量ST来选出量化系数r及编码表t。或者,也可以基于累计值C及坐标j(或累计值C及编码次数k)来直接选出量化系数r及编码表t,而不计算状态变量ST。
在等式(6)至(8)及图7及8中,在等间隔配置的边界线处,累计值随着坐标j的增大而减小。边界线可用任何方法来设定。例如,该边界线可设定成在坐标j位于图像数据的垂直方向上的中间坐标(例如为1079的一半、即539)附近时、累计值增大,或者边界线也可以不设定成等间隔。
<5>在该实施方式中,构成该图像数据的像素数据包括各分量YUV。或者,该像素数据包括R(红)、G(绿)、B(蓝)的分量数据,或者像素数据也可以包括其它分量数据。像素数据所包含的分量数据的种类不局限于上述三种,可以是4种或更多,或者也可以是2种或更少。YUV与RGB可以利用下式(11)及(12)来相互转换。
Y=[(R+2G+B)/4]
U=B-G
V=R-G(11)
G=Y-[(U+V)/4]
R=V+G
B=U+G(12)
<6>在该实施方式中,编码装置1对构成图像数据的所有像素数据(1920×1080个)执行压缩率得到保证的编码。或者,可以对1920×1080个像素数据以外的像素数据中的规定个数执行编码。具体而言,例如,编码装置1可以对图像数据的一条水平线上的像素数据或构成图像数据的所有像素数据的上半部分或下半部分执行压缩率有保证的编码。
工业实用性
本发明可适用于编码装置即编码方法,在由电视机等重放的图像数据保存于帧存储器等中时,对构成该图像数据的像素数据进行编码。本发明也可以适用于解码装置及解码方法,对从帧存储器等中读取出的编码像素数据进行解码。此外,本发明也可适用于包括上述编码装置及解码装置在内的编解码系统。
标记说明
1编码装置
11预测值数据生成器
111预测值缓存器
12预测值误差数据生成器
13编码器
131量化器
132可变长编码数据生成器
14编码控制器
141量化系数设定单元
142编码表设定单元
143编码处理选择器
2存储装置
3解码装置
31解码器
311可变长编码数据解码器
312逆量化器
32解码控制器
321编码表设定单元
322逆量化系数设定单元
323解码处理选择器
33解码预测值数据生成器
331解码预测值缓存器
34解码像素数据生成器

Claims (10)

1.一种编码装置,包括:
预测值数据生成器,该预测值数据生成器依次生成预测值数据,该预测值数据是像素数据的预测值;
预测误差数据生成器,该预测误差数据生成器依次生成预测误差数据,该预测误差数据是像素数据与预测值数据间的差值;
编码器,该编码器依次对预测值误差数据进行编码,从而依次生成可变长编码数据,该可变长编码数据的编码长度可变且小于等于设定的最大编码长度;以及
编码控制器,该编码控制器依次控制该编码器,其特征在于,
在生成了规定个数的可变长编码数据时,编码控制器通过累积由编码器生成的可变长编码数据的编码长度与目标编码长度间的差值,来依次计算出累计值,
并且编码控制器基于累计值以及编码次数来依次设定最大编码长度,以使得在生成了规定个数的可变长编码数据时,累计值为0或更小,其中,编码次数是由编码器执行的编码的次数。
2.如权利要求1所述的编码装置,其特征在于,
编码控制器设定与累计值的限制值和累计值之间的差值相对应的最大编码长度,该限制值根据编码次数而确定。
3.如权利要求1所述的编码装置,其特征在于,
作为独立变量的所述累计值及编码次数可以取到值的区域至少被分割成两个小区域,最大编码长度被分配给各个小区域,而编码控制器对被分配给利用编码次数及累计值确定出的各个小区域的最大编码长度进行设定。
4.如权利要求1所述的编码装置,其特征在于,
所述编码器包括:
量化器,该量化器通过利用规定的量化系数对预测误差数据进行量化,从而依次生成量化预测误差数据;以及
可变长编码数据生成器,该可变长编码数据生成器根据规定的编码系统来依次生成与量化预测误差数据相对应的可变长编码数据。
5.如权利要求1所述的编码装置,其特征在于,
在编码控制器发现在预测误差数据变为0的情况满足规定条件时,编码控制器控制编码器,以使得编码器在预测误差数据为0时生成具有1比特的编码长度的可变长编码数据。
6.如权利要求1所述的编码装置,其特征在于,
目标编码长度小于等于通过对像素数据的编码长度乘上目标压缩率后得到的长度。
7.一种解码装置,包括:
解码器,该解码器通过执行设定解码处理并依次生成解码预测误差数据,来对由权利要求1所述的编码装置生成的可变长编码数据进行解码;
解码预测值数据生成器,该解码预测值数据生成器依次生成解码预测值数据,该解码预测值数据是解码像素数据的预测值;
解码像素数据生成器,该解码像素数据生成器依次生成解码像素数据,该解码像素数据是解码预测误差数据与解码预测值数据的总和;以及
解码控制器,该解码控制器依次控制解码器,其特征在于,
在生成了规定数量的解码像素数据时,
解码控制器通过累积经过解码器进行解码的可变长编码数据的编码长度与编码装置所使用的目标编码长度的差值,来依次计算解码累计值,
该解码控制器基于解码累计值及由解码器执行的解码的次数即解码次数来估计对要由解码器解码的可变长编码数据执行的编码处理,
解码控制器设定解码器,从而对可变长编码数据执行解码处理、即所估计的编码处理的逆处理。
8.一种编解码系统,包括:
权利要求1所述的编码装置;
权利要求7所述的解码装置;以及
具有规定存储容量的存储装置,其特征在于,
由编码装置生成的可变长编码数据被写入存储装置中,
解码装置利用从存储装置中读取出的可变长编码数据来生成解码像素数据。
9.一种编码方法,包括以下步骤:
预测值数据生成步骤,该预测值数据生成步骤生成预测值数据,该预测值数据是像素数据的预测值;
预测误差数据生成步骤,该预测误差数据生成步骤生成预测误差数据,该误差数据是像素数据与在预测值数据生成步骤中生成的预测值数据间的差值;
编码步骤,该编码步骤对在预测误差数据生成步骤中生成的预测误差数据进行编码,从而生成可变长编码数据,该可变长编码数据的编码长度可变且小于等于设定最大编码长度;
累计值计算步骤,该累计值计算步骤通过累积在编码步骤中生成的可变长编码数据的编码长度与目标编码长度的差值,来计算出累计值;以及
最大编码长度设定步骤,该最大编码长度设定步骤基于在累计值计算步骤中计算出的累计值以及编码次数来设定在下一个编码步骤中的最大编码长度,其中,编码次数是执行编码步骤的次数,其特征在于,
所述预测值数据生成步骤、预测误差数据生成步骤、编码步骤、累计值计算步骤以及最大编码长度设定步骤被重复执行,直到生成了规定个数的可变长编码数据,
最大编码长度在最大编码长度设定步骤中被设定,由此,在生成了规定个数的可变长编码数据时,累计值为0或更小。
10.一种解码方法,包括以下步骤:
解码步骤,该解码步骤通过执行设定解码处理并生成解码预测误差数据,来对利用权利要求9所述的编码方法生成的可变长编码数据进行解码;
解码累计值计算步骤,该解码累计值计算步骤通过累积在解码步骤中经过解码的可变长编码数据的编码长度与在编码方法中使用的目标编码长度的差值,来计算解码累计值;
解码处理设定步骤,该解码处理设定步骤基于在解码累计值计算步骤中计算出的解码累计值以及解码次数来估计对将在下一个解码步骤中进行解码的可变长编码数据进行的编码处理,并设定与所估计的编码处理的逆转换相对应的解码处理,以作为在下一个解码步骤中的解码处理,其中,所述解码次数是执行解码步骤的次数;
解码预测值数据生成步骤,该解码预测值数据生成步骤生成解码预测值数据,该解码预测值数据是解码像素数据的预测值;以及
解码像素数据生成步骤,该解码像素数据生成步骤生成解码像素数据,该解码像素数据是在解码步骤中生成的解码预测误差数据与在解码预测值数据生成步骤中生成的解码预测值数据的总和,其特征在于,
所述解码步骤、所述解码累计值计算步骤、所述解码处理设定步骤、解码预测值数据生成步骤以及解码像素数据生成步骤被重复执行,直到生成了规定个数的解码像素数据。
CN201280030597.3A 2011-06-22 2012-06-11 编码装置、解码装置、编解码系统、编码方法以及解码方法 Active CN103609114B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2011-137967 2011-06-22
JP2011137967A JP5149427B2 (ja) 2011-06-22 2011-06-22 符号化装置、復号化装置、符復号化システム、符号化方法及び復号化方法
PCT/JP2012/003776 WO2012176397A1 (en) 2011-06-22 2012-06-11 Coding device, decoding device, coding/decoding system, coding method, and decoding method

Publications (2)

Publication Number Publication Date
CN103609114A CN103609114A (zh) 2014-02-26
CN103609114B true CN103609114B (zh) 2016-11-09

Family

ID=47422257

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280030597.3A Active CN103609114B (zh) 2011-06-22 2012-06-11 编码装置、解码装置、编解码系统、编码方法以及解码方法

Country Status (6)

Country Link
US (1) US9332260B2 (zh)
EP (1) EP2724539A4 (zh)
JP (1) JP5149427B2 (zh)
CN (1) CN103609114B (zh)
TW (1) TWI506965B (zh)
WO (1) WO2012176397A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101881332B (zh) * 2010-06-30 2013-10-30 长城汽车股份有限公司 一种防锁死自动变速器油压控制装置
US9185424B2 (en) * 2011-07-05 2015-11-10 Qualcomm Incorporated Image data compression
CN106101711B (zh) * 2016-08-26 2019-03-01 成都杰华科技有限公司 一种快速实时视频编解码压缩算法
US20190110055A1 (en) * 2017-10-11 2019-04-11 HKC Corporation Limited Picture storage method and display panel
US10769039B2 (en) * 2018-12-03 2020-09-08 Himax Technologies Limited Method and apparatus for performing display control of a display panel to display images with aid of dynamic overdrive strength adjustment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007181051A (ja) * 2005-12-28 2007-07-12 Seiko Epson Corp 画像符号化装置及び画像符号化方法
WO2010041488A1 (ja) * 2008-10-10 2010-04-15 株式会社東芝 動画像符号化装置
CN101816182A (zh) * 2007-10-01 2010-08-25 夏普株式会社 图像编码装置、图像编码方法、图像编解码系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3222554B2 (ja) 1992-06-30 2001-10-29 キヤノン株式会社 画像処理装置及び方法
KR0129558B1 (ko) * 1992-10-26 1998-04-10 배순훈 적응적 가변길이 부호화 방법 및 장치
JP3082585B2 (ja) 1994-09-09 2000-08-28 富士ゼロックス株式会社 画像情報符号化処理装置、画像情報復号化処理装置及び画像情報符号化復号化処理装置
JPH10243399A (ja) * 1997-02-25 1998-09-11 Sharp Corp 符号量制御装置及び該符号量制御装置を含む動画像符号化装置
JP4227067B2 (ja) * 2004-04-28 2009-02-18 株式会社東芝 動画像符号化方法と装置及びプログラム
JP2006135370A (ja) 2004-11-02 2006-05-25 Fuji Xerox Co Ltd 符号化装置および符号化プログラム
JP2009017505A (ja) * 2007-07-09 2009-01-22 Toshiba Corp 画像圧縮装置、画像伸張装置及び画像処理装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007181051A (ja) * 2005-12-28 2007-07-12 Seiko Epson Corp 画像符号化装置及び画像符号化方法
CN101816182A (zh) * 2007-10-01 2010-08-25 夏普株式会社 图像编码装置、图像编码方法、图像编解码系统
WO2010041488A1 (ja) * 2008-10-10 2010-04-15 株式会社東芝 動画像符号化装置

Also Published As

Publication number Publication date
EP2724539A1 (en) 2014-04-30
WO2012176397A1 (en) 2012-12-27
TWI506965B (zh) 2015-11-01
CN103609114A (zh) 2014-02-26
JP5149427B2 (ja) 2013-02-20
US20140192867A1 (en) 2014-07-10
TW201313030A (zh) 2013-03-16
JP2013005414A (ja) 2013-01-07
EP2724539A4 (en) 2015-03-25
US9332260B2 (en) 2016-05-03

Similar Documents

Publication Publication Date Title
CN101816182B (zh) 图像编码装置、图像编码方法、图像编解码系统
CN103609114B (zh) 编码装置、解码装置、编解码系统、编码方法以及解码方法
CN104247422A (zh) 用于改进帧内预测的新的角度表
CN103636204A (zh) 基于位预算的图像数据的选择性无损-有损压缩
CN108848387A (zh) 推导参考预测模式值的方法
CN101371583A (zh) 高动态范围编解码器
CN103581679B (zh) 解码行程编码数据的解码器和方法
US20140064612A1 (en) Apparatus and a method for coding an image
CN101507277A (zh) 图像编码/解码方法和设备
CN104718753B (zh) 利用切片速率控制的有界率压缩
CN109905711A (zh) 一种图像的处理方法、系统及终端设备
CN105898296A (zh) 视频编码帧选择方法及装置
CN101710985B (zh) 一种用于图像编码的图像亮度补偿方法
CN108353175A (zh) 使用系数引起的预测处理视频信号的方法和装置
CN103391437A (zh) 一种高动态图像视觉无损压缩的方法及装置
CN105578016A (zh) 一种调整图像动态范围的方法及终端
US8787686B2 (en) Image processing device and image processing method
US20230108722A1 (en) Allocating bit rate between video streams using machine learning
CN104539967B (zh) 混合视频编码标准中帧间预测方法
CN103002285B (zh) 视频单元的复杂度生成方法及装置
CN103548350B (zh) 图像编码设备和图像解码设备
JP2009071472A (ja) 画像符号化方法、画像復号化方法、画像符号化装置、画像復号化装置、及び半導体集積回路
CN105874802A (zh) 处理视频信号以便减小块赝像的可见性的方法和装置
CN115100031B (zh) 图像处理方法以及图像处理装置
CN102843561B (zh) 帧间图像预测编解码的参考帧序号编解码方法及编解码器

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant