CN102318345A - 动态图像编码装置、动态图像编码方法以及动态图像编码用计算机程序 - Google Patents
动态图像编码装置、动态图像编码方法以及动态图像编码用计算机程序 Download PDFInfo
- Publication number
- CN102318345A CN102318345A CN2009801566610A CN200980156661A CN102318345A CN 102318345 A CN102318345 A CN 102318345A CN 2009801566610 A CN2009801566610 A CN 2009801566610A CN 200980156661 A CN200980156661 A CN 200980156661A CN 102318345 A CN102318345 A CN 102318345A
- Authority
- CN
- China
- Prior art keywords
- data
- bitstream data
- sub
- picture
- buffer memory
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 48
- 238000004590 computer program Methods 0.000 title claims description 15
- 230000015654 memory Effects 0.000 claims description 242
- 238000013139 quantization Methods 0.000 claims description 87
- 238000006243 chemical reaction Methods 0.000 claims description 56
- 230000033228 biological regulation Effects 0.000 claims description 33
- 230000006870 function Effects 0.000 claims description 31
- 230000033001 locomotion Effects 0.000 claims description 27
- 238000003860 storage Methods 0.000 claims description 19
- 238000012546 transfer Methods 0.000 claims description 7
- 238000011002 quantification Methods 0.000 claims description 6
- 229920000468 styrene butadiene styrene block copolymer Polymers 0.000 description 86
- 238000013508 migration Methods 0.000 description 84
- 230000005012 migration Effects 0.000 description 81
- 230000014509 gene expression Effects 0.000 description 33
- 230000008569 process Effects 0.000 description 24
- 238000005520 cutting process Methods 0.000 description 22
- 241001269238 Data Species 0.000 description 13
- 238000013523 data management Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 8
- 239000013598 vector Substances 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 4
- 238000012937 correction Methods 0.000 description 4
- 108010022579 ATP dependent 26S protease Proteins 0.000 description 3
- 230000006866 deterioration Effects 0.000 description 3
- 239000012467 final product Substances 0.000 description 3
- 230000008676 import Effects 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 238000004886 process control Methods 0.000 description 3
- 238000012163 sequencing technique Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- PYHYGIPVYYRJHU-QWDNBKTCSA-N (2s,3r)-2-amino-n-[(2s)-4-amino-1-oxo-1-[[(3s,6s,9s,12s,15r,18s,21s)-6,9,18-tris(2-aminoethyl)-15-benzyl-3-[(1r)-1-hydroxyethyl]-12-(2-methylpropyl)-2,5,8,11,14,17,20-heptaoxo-1,4,7,10,13,16,19-heptazacyclotricos-21-yl]amino]butan-2-yl]-3-hydroxybutanamid Chemical compound N1C(=O)[C@H](CCN)NC(=O)[C@@H](NC(=O)[C@H](CCN)NC(=O)[C@@H](N)[C@@H](C)O)CCNC(=O)[C@H]([C@@H](C)O)NC(=O)[C@H](CCN)NC(=O)[C@H](CCN)NC(=O)[C@H](CC(C)C)NC(=O)[C@H]1CC1=CC=CC=C1 PYHYGIPVYYRJHU-QWDNBKTCSA-N 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000000205 computational method Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 239000000945 filler Substances 0.000 description 1
- 230000002401 inhibitory effect Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 108700026839 polymyxin B nonapeptide Proteins 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23424—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/115—Selection of the code volume for a coding unit prior to coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/146—Data rate or code amount at the encoder output
- H04N19/152—Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/177—Methods 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 group of pictures [GOP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/436—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23406—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving management of server-side video buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2401—Monitoring of the client buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25808—Management of client data
- H04N21/25833—Management of client data involving client hardware characteristics, e.g. manufacturer, processing or storage capabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
- G06F5/065—Partitioned buffers, e.g. allowing multiple independent queues, bidirectional FIFO's
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Business, Economics & Management (AREA)
- Marketing (AREA)
- Computer Graphics (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
动态图像编码装置将动态图像数据分割成多个子数据,使用多个编码器并行地对各子数据进行编码,然后,将编码后的各子比特流数据结合成一个比特流,该动态图像编码装置具有收敛目标导出功能,在该收敛目标导出功能中,决定第1占有量的目标值,使得在从第1虚拟缓存中取出第1子比特流数据所包含的相当于最后图片的数据的时点的第1占有量成为,该时点的第2子比特流数据在第2虚拟缓存中占据的第2占有量以上。
Description
技术领域
这里公开的实施方式涉及如下的动态图像编码装置、动态图像编码方法以及动态图像编码用计算机程序:通过并行地对将动态图像数据分割后的多个数据进行编码,高速地生成数据量比该动态图像数据少的比特流数据。
背景技术
动态图像数据一般具有非常大的数据量。因此,在处理动态图像数据的装置要向其他装置发送动态图像数据的情况下、或者要在存储装置中存储动态图像数据的情况下,通过对动态图像数据进行编码,对其数据量进行压缩。特别地,提出了如下的动态图像编码装置:为了高速地对动态图像数据进行编码,将动态图像数据分割成多个子数据,使用多个编码器并行地对各子数据进行编码,然后,将编码后的各子数据结合成一个比特流数据。
另外,在向解码装置传送编码后的动态图像数据时,该解码装置必须能够对编码后的动态图像数据进行解码。因此,假设解码装置具有用于临时存储编码后的动态图像数据的具有规定容量的缓存。该情况下,要求动态图像数据编码装置以在该缓存中蓄积的数据量始终收敛于该规定容量的范围内的方式,对动态图像数据进行编码。以下,将该解码装置所具有的虚拟缓存称为标准解码器缓存。例如,在Moving PictureExperts Group(MPEG)中,将与编码后的动态图像数据在标准解码器缓存中占据的占有量的推移有关的想法规定为Video Buffeting Verifier(VBV)。在VBV中,采用如下的模型:将编码后的动态图像数据以最大传送比特率、以初始延迟量蓄积在标准解码器缓存中后,以一定的时间间隔,从标准解码器缓存中瞬间取出1个图片量的数据。而且,在以固定比特率对动态图像数据进行编码的情况下,向标准解码器缓存传送的编码动态图像数据在标准解码器缓存中占据的占有量必须收敛于标准解码器缓存的最大允许值与最小允许值之间。
但是,在结合单独编码的多个动态图像数据的情况下,即使各个编码动态图像数据满足标准解码器缓存的规定,结合了这些编码动态图像数据后的比特流数据有时也不满足标准解码器缓存的规定。该问题是由于以下原因而产生的。即,定义为,在比特流数据的传送结束之前的期间,该比特流数据始终以最大传送比特率蓄积到标准解码器缓存中。但是,由于对连续传送的2个编码动态图像数据进行结合的定时,在对后侧被结合的编码动态图像数据进行结合之前的缓存的恢复量、与在结合点作为未被分割的连续动态图像数据进行处理时的缓存的恢复量之间,有时无法动态地取得匹配性。因此,在对这2个编码动态图像数据中的前侧的编码动态图像数据的最后图片进行解码时,后侧的编码动态图像数据在标准解码器缓存中占据的占有量与比特流数据的占有量不一致。
针对这种问题,提出了如下技术:根据对标准解码器缓存的占有量的迁移进行模拟后的结果,计算进行分割的各分割点中的初始延迟量,由此,以满足标准解码器缓存的规定的方式对动态图像数据进行编码。并且,提出了如下技术:在对分割后的MPEG图像数据的结合区间所包含的数据进行解码后,以使标准解码器缓存的占有量收敛于该缓存的最大允许值与最小允许值之间的方式,对结合区间所包含的数据进行再次编码。
专利文献1:日本特开2008-85673号公报
专利文献2:日本特开2004-297829号公报
发明内容
在对缓存占有量的迁移进行模拟的技术中,在该模拟结果表示违反标准解码器缓存的规定的情况下,需要调整用于决定针对各图片的编码比特的分配量的参数,并反复进行模拟。因此,使用该技术的动态图像编码装置可能在动态图像数据的编码处理中需要较长时间。
并且,在临时对结合区间所包含的数据进行解码后、对该解码后的数据进行再次编码的技术中,额外需要用于执行该再次编码处理的时间。进而,该技术不调整对分割后的各动态图像数据进行结合的时点的缓存量。因此,在该结合时点的设定不合适的情况下,对特定图片分配的编码比特量极少,其结果,可能产生剧烈的画质劣化。
因此,本说明书的目的在于,提供满足标准解码器缓存的规定、且能够在短时间内对动态图像数据进行编码的动态图像编码装置、动态图像编码方法以及动态图像编码程序。
根据一个实施方式,提供一种动态图像编码装置。该动态图像编码装置具有:存储部,其存储至少包含第1子数据和第2子数据的动态图像数据,该第1子数据和第2子数据分别包含多个图片;处理部,其通过对动态图像数据进行编码,生成数据量比该动态图像数据的数据量少的比特流数据;以及输出部,其输出比特流数据。该处理部实现如下功能:收敛目标导出功能,其决定第1占有量的目标值,使得在以规定的传送率向虚拟解码器传送比特流数据且蓄积在该解码器的缓存中、并以规定的时间间隔从该解码器的缓存中依次取出比特流数据所包含的与各个图片相当的数据时,在从该解码器的缓存中取出对第1子数据进行编码得到的第1子比特流数据所包含的与最后图片相当的数据的第1时点、比特流数据在该解码器的缓存中占据的第1占有量为在该第1时点对第2子数据进行编码得到的第2子比特流数据在该解码器的缓存中占据的第2占有量以上;第1编码功能,其以使第1占有量成为目标值的方式,决定针对第1子数据所包含的各个图片的编码比特的分配量,根据该分配量对第1子数据进行编码,从而生成第1子比特流数据;第2编码功能,其通过对第2子数据进行编码,生成第2子比特流数据;以及结合功能,其通过对第1子比特流数据和第2子比特流数据进行结合,生成比特流数据。
并且,根据其他实施方式,提供一种动态图像编码方法,该动态图像编码方法对至少包含分别包含有多个图片的第1子数据和第2子数据的动态图像数据进行编码,从而生成数据量比该动态图像数据的数据量少的比特流数据。在该动态图像编码方法中,决定第1占有量的目标值,使得在以规定的传送率向虚拟解码器传送比特流数据且蓄积在该解码器的缓存中、并以规定的时间间隔从该解码器的缓存中依次取出比特流数据所包含的与各个图片相当的数据时,在从该解码器的缓存中取出对第1子数据进行编码得到的第1子比特流数据所包含的与最后图片相当的数据的第1时点、比特流数据在该解码器的缓存中占据的第1占有量为在该第1时点对第2子数据进行编码得到的第2子比特流数据在该解码器的缓存中占据的第2占有量以上,以使第1占有量成为目标值的方式,决定针对第1子数据所包含的各个图片的编码比特的分配量,根据该分配量对第1子数据进行编码,从而生成第1子比特流数据,通过对第2子数据进行编码,生成第2子比特流数据,通过对第1子比特流数据和第2子比特流数据进行结合,生成比特流数据。
进而,根据其他实施方式,提供一种动态图像编码用计算机程序,该动态图像编码用计算机程序对至少包含分别包含有多个图片的第1子数据和第2子数据的动态图像数据进行编码,从而使计算机生成数据量比该动态图像数据的数据量少的比特流数据。该计算机程序包含使计算机执行如下步骤的命令:决定第1占有量的目标值,使得在以规定的传送率向虚拟解码器传送比特流数据且蓄积在该解码器的缓存中、并以规定的时间间隔从该解码器的缓存中依次取出比特流数据所包含的与各个图片相当的数据时,在从该解码器的缓存中取出对第1子数据进行编码得到的第1子比特流数据所包含的与最后图片相当的数据的第1时点、比特流数据在该解码器的缓存中占据的第1占有量为在该第1时点对第2子数据进行编码得到的第2子比特流数据在该解码器的缓存中占据的第2占有量以上,以使第1占有量成为目标值的方式,决定针对第1子数据所包含的各个图片的编码比特的分配量,根据该分配量对第1子数据进行编码,从而生成第1子比特流数据,通过对第2子数据进行编码,生成第2子比特流数据,通过对第1子比特流数据和第2子比特流数据进行结合,生成比特流数据。
通过权利要求书中特别指出的要素和组合,实现并达成本发明的目的和优点。
希望理解到,上述的一般记述和下述的详细记述均为例示性和说明性的,而不像权利要求书那样限制本发明。
本说明书所公开的动态图像编码装置、动态图像编码方法以及动态图像编码程序满足标准解码器缓存的规定,且能够在短时间内对动态图像数据进行编码。
附图说明
图1是一个实施方式的动态图像编码装置的概略结构图。
图2是示出为了执行对动态图像数据进行编码的处理而实现的功能的动态图像编码装置的处理部的功能框图。
图3(a)是示出1个子比特流数据在标准解码器缓存中占据的占有量的迁移的一例的图。图3(b)是示出被结合的2个子比特流数据分别在标准解码器缓存中占据的占有量的迁移的一例的图。图3(c)是示出将2个子比特流数据结合成1个后的比特流数据在标准解码器缓存中占据的占有量的迁移的一例的图。
图4是示出迁移时刻附近的被结合的2个子比特流数据中的后侧的子比特流数据在标准解码器缓存中占据的占有量的迁移的一例的图。
图5是编码部的功能框图。
图6(a)是示出标准解码器缓存的占有量的下限值的迁移的一例的曲线图。并且,图6(b)是示出标准解码器缓存的占有量的上限值的迁移的一例的曲线图。
图7是示出在迁移时刻中比特流数据在标准解码器缓存中占据的占有量的迁移与该比特流数据所包含的被结合的2个子比特流数据的对应关系的图。
图8是示出由在动态图像编码装置的处理部上执行的计算机程序控制的动态图像数据的编码处理的动作流程的图。
图9是示出由在动态图像编码装置的处理部上执行的计算机程序控制的各编码部进行的子数据的编码处理的动作流程的图。
标号说明
1:动态图像编码装置;11:存储部;12:处理部;13:输入输出部;21:控制部;22:分割部;23-1、23-2、…、23-n:编码部;24-1、24-2、…、24-(n-1):收敛目标导出部;25-1、25-2、…、25-(n-1):结合部;31:数据管理部;32:正交转换/量化部;33:可变长度编码部;34:缓存上限/下限控制部;35:信息量控制部。
具体实施方式
下面,参照附图说明一个实施方式的动态图像编码装置。
该动态图像编码装置将动态图像数据分割成多个子数据,将按照每个子数据使用不同编码器进行编码而生成的子比特流数据结合成一个比特流数据。该动态图像编码装置控制针对被结合的2个子比特流数据中的前侧的子比特流数据的编码比特分配量,以满足标准解码器缓存的规定。进而,该动态图像编码装置在前侧的子比特流数据与后侧的子比特流数据之间,插入对其最后图片进行解码时一并取出的无效比特列。由此,该动态图像编码装置消除了在对前侧的子比特流数据所包含的最后图片进行了解码的时点比特流数据在标准解码器缓存中占据的占有量与后侧的子比特流数据在标准解码器缓存中占据的占有量之差。
另外,作为编码对象的动态图像数据所包含的图片可以是以交错方式取得的字段、或者以渐进方式取得的帧的任一方。
图1是一个实施方式的动态图像编码装置1的概略结构图。如图1所示,动态图像编码装置1具有存储部11、处理部12、输入输出部13。
存储部11例如具有半导体存储器、磁盘装置或光盘装置中的至少任意一方。而且,存储部11存储在动态图像编码装置1中使用的计算机程序和各种数据。并且,存储部11存储作为编码对象的动态图像数据。并且,存储部11也可以存储由处理部12对动态图像数据进行编码而生成的比特流数据。
输入输出部13例如具有用于将动态图像编码装置1与通信网络(未图示)连接起来的通信接口及其控制电路。而且,输入输出部13经由通信网络向其他装置输出由处理部12对动态图像数据进行编码而生成的比特流数据。并且,输入输出部13也可以经由通信网络从其他装置取得作为编码对象的动态图像数据,将该动态图像数据转交给处理部12。
处理部12具有一个或多个处理器、存储器及其周边电路。而且,处理部12对从存储部11读入的动态图像数据或经由输入输出部13取得的动态图像数据进行编码。
图2是示出为了对动态图像数据进行编码而实现的功能的处理部12的功能框图。如图2所示,处理部12具有控制部21、分割部22、n个编码部23-1、23-2、…、23-n、(n-1)个收敛目标导出部24-1、24-2、…、24-(n-1)、(n-1)个结合部25-1、25-2、…、25-(n-1)。其中,n为2以上的整数。
处理部12所具有的这些各部是通过在处理部12所具有的处理器上执行的计算机程序而安装的功能模块。处理部12所具有的这些各部也可以分别作为单独的运算电路、或者作为对这些运算电路进行集成后的一个集成电路,安装在动态图像编码装置1上。
控制部21控制处理部12全体。因此,控制部21向各编码部23-m(其中m=1、2、…、n)输入用于使各编码部23-m决定针对输入到该编码部的子数据的编码比特分配量的参数。并且,控制部21向各收敛目标导出部24-k(其中k=1、2、…、n-1)输入用于使各收敛目标导出部24-k决定比特流数据在标准解码器缓存中占据的占有量的目标值的参数。另外,关于这些参数,与编码部23-m和收敛目标导出部24-k一起在后面叙述。
并且,控制部21从存储部11读入作为编码对象的动态图像数据、或者经由输入输出部13取得作为编码对象的动态图像数据,将该动态图像数据转交给处理部12。此时,在与动态图像数据一起取得与该动态图像数据的内容有关的信息的情况下,也可以将该信息转交给处理部12。并且,控制部21也可以从存储部11读入多个动态图像数据、或者经由输入输出部13取得多个动态图像数据,将这些多个动态图像数据转交给分割部22。进而,处理部12也可以通过单独的编码部23-m对预先分割得到的多个动态图像数据进行编码,结合对各个动态图像数据进行编码得到的子比特流数据,由此,生成一个比特流数据。该情况下,也可以省略分割部22。而且,控制部21将这些多个动态图像数据直接输入到各编码部23-m。
分割部22根据处理部12所具有的编码部23-m的个数n,对从控制部21受理的动态图像数据进行分割,从而生成子数据。例如,分割部22在时间上均等地将动态图像数据分割成n个,从而生成n个子数据。并且,在从控制部21受理与动态图像数据的内容有关的信息的情况下,分割部22也可以根据该信息而使各个子数据的时间长度不同。例如,分割部22也可以以使针对各子数据的编码处理所需要的时间均等的方式,对动态图像数据进行分割。因此,例如,分割部22也可以参照与动态图像数据的内容有关的信息,以延长包含大量静止场景等的编码处理所需要的时间相对较短即可的图片的子数据的时间长度的方式,对动态图像数据进行分割。相反,分割部22也可以以缩短包含大量运动较多的场景等的编码处理所需要的时间相对较长的图片的子数据的时间长度的方式,对动态图像数据进行分割。进而,分割部22也可以从动态图像数据中的多个部位取出动态图像数据中的一定长度的数据,将取出的各个数据作为要编码的子数据。进而,在从控制部21受理多个动态图像数据的情况下,分割部22也可以以编码部23-m的个数n,对结合了这些多个动态图像数据后的一个动态图像数据进行分割,生成子数据。
并且,分割部22也可以以各子数据所包含的图片的张数为Group Of Pictures(GOP)的倍数的方式,调整子数据的长度。另外,GOP是规定以一定周期重复的包含连续的多个图片的图片组的构造,在GOP中,规定针对各图片应用帧内编码方法还是应用帧间编码方法。另外,帧内编码方法是仅使用编码对象的一张图片内所包含的信息对该图片进行编码的方法。另一方面,帧间编码方法是使用编码对象的图片及其前后图片的信息对编码对象的图片进行编码的方法。
分割部22按照再现时的时间顺序,向编码部23-1、23-2、…、23-n中的任一方输入所生成的各个子数据。并且,分割部22向输入该子数据的编码部输入各子数据所包含的图片的数量。
收敛目标导出部24-1、24-2、…、24-(n-1)分别计算对被结合的2个子比特流数据中的前侧的子比特流数据所包含的最后图片进行解码的时点的与标准解码器缓存的占有量有关的目标值。另外,收敛目标导出部24-1、24-2、…、24-(n-1)具有相同的结构和功能,所以,下面对一个收敛目标导出部24-m(1≤m≤n-1)进行说明。
设对2个子比特流数据进行结合从而生成1个比特流数据,并向标准解码器缓存传送该比特流数据。该情况下,优选在前侧的子比特流数据的最后图片的解码时点该比特流数据在标准解码器缓存中占据的占有量与在该时点之前后侧的子比特流数据在标准解码器缓存中占据的占有量相等。如果满足该条件,则仅以遵守标准解码器缓存的规定的方式生成各子比特流数据,占有量不会高于标准解码器缓存的最大允许值,且不会低于标准解码器缓存的最小允许值。另外,以下,将被结合的2个子比特流数据中的前侧的子比特流数据的最后图片的解码时刻称为迁移时刻。并且,将被结合的2个子比特流数据中的后侧的子比特流数据开始蓄积在标准解码器缓存中的时点称为结合时刻。
使用图3(a)~图3(c)说明该状况。图3(a)是示出1个子比特流数据SBSm在标准解码器缓存中占据的占有量的迁移的一例的图。并且,图3(b)是示出被结合的2个子比特流数据SBSm、SBSm+1分别在标准解码器缓存中占据的占有量的迁移的一例的图。进而,图3(c)是示出将图3(b)所示的2个子比特流数据SBSm、SBSm+1结合成1个后的比特流数据BS在标准解码器缓存中占据的占有量的迁移的一例的图。
在图3(a)~图3(c)中,横轴表示时间,纵轴表示标准解码器缓存的占有量。并且,线301表示标准解码器缓存的占有量的最大允许值。并且,时刻t0表示子比特流数据SBSm开始蓄积在标准解码器缓存中的时刻。进而,期间td表示初始缓存延迟量,期间tf0表示由帧率确定的图片间隔,例如期间tf0为1/30秒。并且,在图3(a)和图3(b)中,曲线310表示子比特流数据SBSm在标准解码器缓存中占据的占有量的迁移。并且,在图3(b)和图3(c)中,曲线320表示与子比特流数据SBSm结合的下一个子比特流数据SBSm+1在标准解码器缓存中占据的占有量的迁移。进而,在图3(c)中,曲线330表示比特流数据BS在标准解码器缓存中占据的占有量的迁移。而且,在图3(b)和图3(c)中,时刻ttr表示对前侧的子比特流数据SBSm的最后图片进行解码的迁移时刻,时刻tj表示后侧的子比特流数据SBSm+1开始蓄积在标准解码器缓存中的结合时刻。
如图3(a)所示,从时刻t0起到经过初始缓存延迟量td为止,子比特流数据SBSm在标准解码器缓存中占据的占有量每单位时间以最大传送比特率增加。然后,在从时刻t0起经过了初始缓存延迟量td的时点,从标准解码器缓存中取出相当于最初图片的数据d1。因此,占有量降低d1。在该时点以后,每经过图片间隔tf0时,从标准解码器缓存中取出一张图片量的数据。并且,在向标准解码器缓存传送子比特流数据SBSm的过程中,在取出一张图片量的数据后到取出下一个图片量的数据为止的期间,占有量每单位时间以最大传送比特率增加。另一方面,在结束向标准解码器缓存传送子比特流数据SBSm的时刻te以后,占有量已经不增加,每经过图片间隔tf0时,减少一张图片量的数据。然后,当取出相当于最后图片的数据时,占有量成为0。
并且,如图3(b)所示,在结合时刻tj以后,子比特流数据SBSm+1接着子比特流数据SBSm而蓄积在标准解码器缓存中。该情况下,根据标准解码器缓存的规定,视为在时刻te以后也连续地向标准解码器缓存传送比特流数据BS。因此,如点线311所示,在时刻te以后,在对一张图片进行解码后到对下一张图片进行解码为止的期间,比特流数据BS在标准解码器缓存中占据的占有量视为每单位时间以最大传送比特率增加。另一方面,如曲线320所示,在结合时刻tj以后,在经过初始延迟量td之前,子比特流数据SBSm+1在标准解码器缓存中占据的占有量每单位时间以最大传送比特率增加。但是,如果时刻te以后解码的相当于子比特流数据SBSm的图片的数据较少,则迁移时刻ttr的比特流数据BS的残留占有量Sr比子比特流数据SBSm+1在标准解码器缓存中占据的迁移时占有量Str多。
因此,如图3(c)所示,在迁移时刻ttr以后,比特流数据BS在标准解码器缓存中占据的占有量成为,对子比特流数据SBSm+1在标准解码器缓存中占据的占有量加上残留占有量Sr与迁移时占有量Str之差的绝对值ΔSr而得到的值。另一方面,有时以在任意的时刻tn子比特流数据SBSm+1在标准解码器缓存中占据的占有量为标准解码器缓存的最大允许值附近的方式,生成子比特流数据SBSm+1。该情况下,对子比特流数据SBSm+1在标准解码器缓存中占据的占有量加上ΔSr,由此,比特流数据BS在标准解码器缓存中占据的占有量超过标准解码器缓存的最大允许值。
相反,如果时刻te以后解码的相当于子比特流数据SBSm的图片的数据较多,则迁移时刻ttr的比特流数据BS的残留占有量Sr比子比特流数据SBSm+1的迁移时占有量Str少。该情况下,在迁移时刻ttr以后,比特流数据BS在标准解码器缓存中占据的占有量成为,从子比特流数据SBSm+1在标准解码器缓存中占据的占有量中减去残留占有量Sr与迁移时占有量Str之差的绝对值ΔSr而得到的值。另一方面,有时以在任意的时刻中子比特流数据SBSm+1在标准解码器缓存中占据的占有量为标准解码器缓存的最小允许值附近的方式,生成子比特流数据SBSm+1。该情况下,从子比特流数据SBSm+1在标准解码器缓存中占据的占有量中减去ΔSr,由此,比特流数据BS在标准解码器缓存中占据的占有量低于标准解码器缓存的最小允许值。
因此,收敛目标导出部24-m求出在与由编码部23-m生成的子比特流数据SBSm有关的迁移时刻下、由编码部23-(m+1)生成的子比特流数据SBSm+1在标准解码器缓存中占据的迁移时占有量,作为一个目标值。并且,收敛目标导出部24-m决定在迁移时刻对子比特流数据SBSm和子比特流数据SBSm+1进行结合得到的比特流数据BS在标准解码器缓存中占据的残留占有量的收敛目标值。设该收敛目标值为迁移时占有量以上、且标准解码器缓存的最大允许值以下。
为了决定迁移时占有量和收敛目标值,从控制部21向收敛目标导出部24-m输入初始缓存延迟量、最大传送比特率、结合点帧间时间。另外,结合点帧间时间是从迁移时刻起到从标准解码器缓存中取出与子比特流数据SBSm+1的最初图片对应的数据的时刻为止的期间。
图4是示出迁移时刻附近的子比特流数据SBSm+1在标准解码器缓存中占据的占有量的迁移的图。在图4中,时刻tj表示结合时刻,时刻ttr表示迁移时刻。进而,时刻t1表示从标准解码器缓存中取出与子比特流数据SBSm+1的最初图片对应的数据的时刻。并且,期间td表示初始缓存延迟量,期间tf表示结合点帧间时间。进而,曲线401表示子比特流数据SBSm+1在标准解码器缓存中占据的占有量。并且,曲线402表示标准解码器缓存中的对子比特流数据SBSm和子比特流数据SBSm+1进行结合得到的比特流数据BS在标准解码器缓存中占据的占有量。
这里,根据标准解码器缓存的定义,在从时刻tj到时刻t1为止的期间蓄积在标准解码器缓存中的子比特流数据SBSm+1的占有量成为,在初始缓存延迟量td中乘以最大传送比特率而得到的值。并且,在从迁移时刻ttr到时刻t1为止的期间蓄积在标准解码器缓存中的子比特流数据SBSm+1的占有量成为,对结合点帧间时间tf乘以最大传送比特率而得到的值。因此,如图4所示,收敛目标导出部24-m能够根据以下的式子计算迁移时占有量Str。
[数式1]
Str=br×(td-trt) (1)
这里,br是最大传送比特率。
收敛目标导出部24-m计算出迁移时占有量Str后,对迁移时占有量Str加上规定的偏差,由此,计算收敛目标值。另外,规定的偏差具有0或正值。而且,规定的偏差被设定为,在迁移时刻ttr,取出与子比特流数据SBSm的最后图片对应的数据后,比特流数据BS在标准解码器缓存中占据的占有量为迁移时占有量Str以上。并且,规定的偏差被设定为,在迁移时刻ttr,在取出与子比特流数据SBSm的最后图片对应的数据之前,比特流数据BS在标准解码器缓存中占据的占有量为标准解码器缓存的最大允许值以下。因此,规定的偏差例如能够成为通过对一张图片或一个GOP进行编码而得到的编码比特数相对于分配比特数的偏移的标准偏差的3倍的值。
收敛目标导出部24-m将迁移时占有量转交给结合部25-m。并且,收敛目标导出部24-m将收敛目标值转交给编码部23-m。
编码部23-1、23-2、…、23-n对所输入的子数据进行编码,从而生成子比特流数据SBS1、SBS2、…、SBSn。另外,编码部23-1、23-2、…、23-n具有相同的结构和功能,所以,下面对一个编码部23-m进行说明。
图5是编码部23-m的功能框图。如图5所示,编码部23-m具有数据管理部31、正交转换/量化部32、可变长度编码部33、缓存上限/下限控制部34、信息量控制部35。
数据管理部31按照被编码的图片的顺序,将从分割部22受理的子数据以一张张图片的方式转交给正交转换/量化部32。并且,数据管理部31还向正交转换/量化部32输入表示对转交给正交转换/量化部32的图片进行帧间编码还是进行帧内编码的信号。
进而,数据管理部31向缓存上限/下限控制部34输入作为当前编码处理对象的图片的编码即当前图片编号,以便决定针对各图片的标准解码器缓存的占有量的上限值和下限值。
正交转换/量化部32对从数据管理部31受理的图片进行正交转换,并对通过该正交转换处理而得到的频率信号进行量化。由此,正交转换/量化部32生成比特数比原来图片所具有的比特数少的量化信号。因此,正交转换/量化部32例如也可以按照MPEG-2、MPEG-4或H.264MPEG-4Advanced Video Coding(H.264MPEG-4AVC)等的各种动态图像编码标准中的任一方,执行正交转换处理和量化处理。
作为正交转换处理和量化处理的一例,首先,正交转换/量化部32将从数据管理部31受理的当前图片分割成具有规定数像素的多个块。以下将该块称为宏块。并且,宏块例如包含16×16个像素。
正交转换/量化部32执行各个宏块与预测图像之间的差分运算。然后,正交转换/量化部32生成与通过该差分运算而得到的宏块内的各像素对应的差分值,作为预测误差信号。此时,正交转换/量化部32根据表示对从数据管理部31受理的当前图片进行帧间编码还是进行帧内编码的信号,选择帧间编码用的预测图像或帧内编码用的预测图像中的任一方。另外,如后所述,帧间编码用的预测图像是根据已经编码的图片而生成的。另一方面,帧内编码用的预测图像是根据当前图片的已经编码的宏块而生成的。
正交转换/量化部32通过对各宏块的预测误差信号进行正交转换,求出表示预测误差信号的水平方向的频率成分和垂直方向的频率成分的频率信号。例如,作为正交转换处理,正交转换/量化部32对预测误差信号执行离散余弦转换(Discrete CosineTransform、DCT),由此,得到每个宏块的DCT系数的组,作为频率信号。
接着,正交转换/量化部32根据由信息量控制部35决定的量化参数,对频率信号进行量化。该量化处理是利用一个信号值表示一定区间所包含的信号值的处理。而且,该一定区间被称为量化幅度。例如,正交转换/量化部32从频率信号中舍去相当于量化幅度的规定数的下位比特,由此对该频率信号进行量化。量化幅度由量化参数决定。例如,正交转换/量化部32根据表示针对量化参数的值的量化幅度的值的函数,决定使用的量化幅度。并且,该函数可以是针对量化参数的值的递增函数,是预先设定的。或者,预先准备多个用于规定与水平方向和垂直方向的频率成分分别对应的量化幅度的量化矩阵,将其存储在存储部11中。然后,正交转换/量化部32根据量化参数,选择存储在存储部11中的这些量化矩阵中的特定的量化矩阵。然后,正交转换/量化部32参照选择出的量化矩阵,决定针对频率信号的各频率成分的量化幅度。该情况下,正交转换/量化部32选择量化参数的值越大、针对各频率成分的量化幅度越大的量化矩阵。
正交转换/量化部32执行量化处理,由此,能够削减用于表示频率信号的各频率成分的比特数量,所以,能够减少各宏块所包含的信息量。正交转换/量化部32向可变长度编码部33提供量化信号。
并且,为了生成预测图像,正交转换/量化部32在量化信号中乘以相当于由量化参数决定的量化幅度的规定数,由此进行逆量化。通过该逆量化,对各宏块的频率信号、例如DCT系数的组进行复原。然后,正交转换/量化部32对频率信号进行逆正交转换处理。例如,在正交转换部22中进行DCT处理的情况下,正交转换/量化部32针对逆量化信号执行逆DCT处理。通过对量化信号执行逆量化处理和逆正交转换处理,再现具有与编码前的预测误差信号相同程度的信息的预测误差信号。
正交转换/量化部32针对帧间编码后的图片,对后述的运动补偿后的预测图像的各像素值加上与该像素对应的再现后的预测误差信号。另一方面,正交转换/量化部32针对帧内编码后的图片,对根据已经编码的宏块而生成的预测图像的各像素值加上与该像素对应的再现后的预测误差信号。针对各宏块执行这些处理,由此,正交转换/量化部32得到针对当前图片的预测图片。
正交转换/量化部32在处理部12所具有的存储器中临时存储预测图片,作为新的参照图片。然后,正交转换/量化部32在生成预测图像时利用该参照图片。另外,正交转换/量化部32存储预先确定的规定张数的参照图片,当参照图片的张数超过该规定张数时,按顺序丢弃旧的参照图片。
为了生成帧间编码用的预测图像,正交转换/量化部32使用当前图片的各宏块和已经编码的参照图片,求出运动矢量。运动矢量表示当前图片的宏块和与该宏块最相似的参照图片的块在空间上的移动量。例如,正交转换/量化部32执行当前图片的关注宏块与各参照图片的块匹配,由此,从各参照图片中决定与宏块最一致的参照图片和该参照图片上的区域。然后,正交转换/量化部32将分别具有如下要素的矢量作为运动矢量:当前图片的宏块位置和与该宏块最一致的区域在水平方向和垂直方向的移动量、以及表示该区域所属的参照图片的识别信息。
正交转换/量化部32针对当前图片所包含的各宏块,分别求出运动矢量。然后,正交转换/量化部32根据求出的运动矢量对参照图片进行运动补偿,由此,生成运动补偿后的块单位的预测图像。另外,运动补偿是如下处理:为了抵消由运动矢量表示的宏块和与该宏块最相似的参照图片的块的位置偏移量,移动该最相似的参照图片的块的位置。
并且,正交转换/量化部32针对当前图片中的关注宏块,从与该关注宏块的左侧或上侧相邻的已经编码的宏块所包含的像素值进行插值,生成帧内编码用的预测图像。
可变长度编码部33对从正交转换/量化部32受理的量化信号和运动矢量进行编码,由此,生成针对原来图片压缩了数据量后的比特的组。然后,可变长度编码部33按照编码处理的执行顺序,连接针对输入到编码部23-m的子数据所包含的各图片而生成的比特的组,由此,生成与该子数据对应的子比特流数据。因此,例如,可变长度编码部33针对该量化信号,执行分配发生概率越高信号值越短的、可变长度的码字的可变长度编码处理。例如,可变长度编码部33能够进行哈夫曼编码处理或算术编码处理,作为可变长度编码处理。
可变长度编码部33向结合部25-m输出所生成的子比特流数据。并且,可变长度编码部33向信息量控制部35通知实际对所生成的子比特流数据所包含的各图片、各宏块或各GOP分配的编码比特长度。
缓存上限/下限控制部34决定比特流数据在标准解码器缓存中占据的占有量的限制值。具体而言,缓存上限/下限控制部34决定从标准解码器缓存中取出与作为编码对象的当前图片对应的编码数据的时点的、标准解码器缓存的占有量的下限值。并且,缓存上限/下限控制部34决定在标准解码器缓存中蓄积与作为编码对象的当前图片对应的编码数据的时点的标准解码器缓存的占有量的上限值。
为了决定上限值和下限值,从控制部21向缓存上限/下限控制部34输入标准解码器缓存的初始设定上限值和初始设定下限值、以及输入到编码部23-m的子数据所包含的图片数量。并且,从数据管理部31向缓存上限/下限控制部34输入作为编码处理对象的当前图片的编号。进而,从收敛目标导出部24-m向缓存上限/下限控制部34输入对由编码部23-m生成的子比特流数据所包含的最后图片进行解码的迁移时刻的收敛目标值。
缓存上限/下限控制部34针对结合了分别由编码部23-m、23-(m+1)生成的子比特流数据SBSm、SBSm+1后的比特流数据BS在标准解码器缓存中占据的占有量,设定下限值。具体而言,缓存上限/下限控制部34如下决定下限值:在从子比特流数据SBSm向SBSm+1迁移的迁移时刻,比特流数据BS在标准解码器缓存中占据的占有量不低于收敛目标值。进而,缓存上限/下限控制部34设定从标准解码器缓存中取出子比特流数据SBSm的各图片的时点的比特流数据BS的占有量的下限值,使得对各图片分配的编码比特数不会急剧变动。
例如,在从子比特流数据SBSm开始蓄积在标准解码器缓存中起的经过时间到达规定的控制开始时刻之前,缓存上限/下限控制部34将下限值设为从控制部21输入的初始设定下限值。另外,根据下述式子计算该经过时间t。
[数式2]
t=(np-1)×fr+td (2)
这里,np表示从数据管理部31取得的作为编码处理对象的当前图片的编号。并且,fr表示每秒从标准解码器缓存中取出的子数据所包含的图片的张数。进而,td表示从子比特流数据SBSm开始蓄积在标准解码器缓存中后到取出与最初图片对应的数据为止的初始缓存延迟量。
另一方面,在经过时间t大于控制开始时刻的情况下,缓存上限/下限控制部34使下限值递增,使得经过时间t越大,下限值越接近收敛目标值。另外,控制开始时刻被设定为0以上且小于规定的控制结束时刻的值。但是,当仅修正针对接近子数据末端的几张图片的下限值时,能够对这些图片分配的比特数极少,针对这些图片的解码画质急剧劣化。因此,优选控制开始时刻被设定为,将由于伴随每个图片的下限值的上升而使编码比特数减少所导致的画质劣化抑制为观察者注意不到的程度。例如,控制开始时刻被设定为,与子数据所包含的图片的张数的一半以下的值对应的经过时间。并且,控制结束时刻能够设定为,从子比特流数据SBSm向子比特流数据SBSm+1迁移的迁移时刻以前、且在控制结束时刻以后的规定的定时。但是,优选控制开始时刻与控制结束时刻的间隔尽量长。通过这样设定控制结束时刻,缓存上限/下限控制部34能够使标准解码器缓存的占有量的下限值接近收敛目标值,而不使针对各图片的编码比特分配量急剧减少。
缓存上限/下限控制部34例如能够根据下述式子设定针对当前图片的下限值Lnp。
[数式3]
Lnp=Lini (tp≤tstart)
Lnp=α(tp-tstart)
(tstart<tp<tend) (3)
Lnp=Starget (tend≤tp)
这里,tp表示与当前图片对应的时刻。并且,tstart表示开始修正下限值的控制开始时刻,tend表示结束修正下限值的控制结束时刻。进而,Starget表示收敛目标值,Lini表示初始设定下限值。
并且,假设由控制部21决定的标准解码器缓存的初始设定上限值低于收敛目标值的情况。该情况下,编码部23-m无法以超过该初始设定上限值的方式决定针对各图片的编码比特分配量。因此,编码部23-m无法使从标准解码器缓存中取出子比特流数据SBSm所包含的相当于最后图片的数据的时点的比特流数据BS的残留占有量接近收敛目标值。因此,在这种情况下,缓存上限/下限控制部34将上限值修正为高于收敛目标值。例如,缓存上限/下限控制部34将针对全部图片的上限值设定为标准解码器缓存的占有量的最大允许值。或者,缓存上限/下限控制部34也可以在规定的控制开始时刻之后且控制结束时刻之前,逐渐提高从标准解码器缓存中取出图片的时刻的上限值,直到该上限值高于收敛目标值。另外,与上限值的设定有关的控制开始时刻和与下限值的设定有关的控制开始时刻也可以不一致。同样,与上限值的设定有关的控制结束时刻和与下限值的设定有关的控制结束时刻也可以不一致。但是,优选以如下方式设定上限值和下限值:在上限值与下限值之间始终设有与至少一张图片量的编码比特数相当的差。
图6(a)是示出由缓存上限/下限控制部34设定的标准解码器缓存的下限值的迁移的一例的曲线图。并且,图6(b)是示出由缓存上限/下限控制部34设定的标准解码器缓存的上限值的迁移的一例的曲线图。
在图6(a)和图6(b)中,横轴表示时间,纵轴表示标准解码器缓存的占有量。并且,在图6(a)中,线601表示标准解码器缓存的占有量的上限值,线602表示标准解码器缓存的占有量的下限值。进而,点线603和604分别表示收敛目标值和迁移时占有量。而且,曲线605表示对由编码部23-m生成的子比特流数据SBSm和由下一个编码部23-(m+1)生成的子比特流数据SBSm+1进行结合后的比特流数据BS在标准解码器缓存中占据的占有量的迁移。
如图6(a)所示,在从子比特流数据SBSm开始蓄积在标准解码器缓存中的时刻t0到控制开始时刻t1为止的期间,标准解码器缓存的占有量的下限值602被设定为初始设定下限值。然后,当经过控制开始时刻t1后到控制结束时刻t2为止的期间,下限值602直线地增加。然后,在控制结束时刻t2,下限值602达到被设定为迁移时占有量604以上的值的收敛目标值603,在时刻t2以后保持恒定。这样设定下限值,所以,在对子比特流数据SBSm的最后图片进行解码的迁移时刻ttr,比特流数据BS在标准解码器缓存中占据的占有量可靠地高于子比特流数据SBSm+1的迁移时占有量。另一方面,在该例子中,标准解码器缓存的占有量的上限值601被设定为,即使将下限值602设定为收敛目标值603,占有量605也不会超过该上限值601的充分高的值,所以,缓存上限/下限控制部34不修正上限值。
在图6(b)中,线611表示标准解码器缓存的占有量的上限值,线612表示标准解码器缓存的占有量的下限值。进而,点划线613表示收敛目标值。
如图6(b)所示,在从子比特流数据开始蓄积在标准解码器缓存中的时刻t0到控制开始时刻t1为止的期间,标准解码器缓存的占有量的下限值612被设定为初始设定下限值。然后,当经过控制开始时刻t1后到控制结束时刻t2为止的期间,下限值612直线地增加。然后,在控制结束时刻t2,下限值612达到收敛目标值613。另一方面,在从时刻t0到控制开始时刻t3为止的期间,标准解码器缓存的占有量的上限值611被设定为初始设定上限值。然后,当经过控制开始时刻t3后到控制结束时刻t4为止的期间,上限值611直线地增加。然后,在控制结束时刻t4,上限值611达到标准解码器缓存的最大允许值,在时刻t4以后保持恒定。
缓存上限/下限控制部34向信息量控制部35通知针对当前图片的上限值和下限值。
信息量控制部35决定量化参数,该量化参数用于控制对由正交转换/量化部32编码的图片分配的编码比特数。
因此,信息量控制部35能够采用与对图片分配的编码比特数对应的目标信息量的值越大、量化参数的值越小的各种量化参数的决定方法中的任意方法。作为这种方法,信息量控制部35可以采用如下的反馈型方法:根据将实际对已经编码的图片分配的编码比特数作为目标的编码比特数的计划,决定对下一个图片分配的编码比特数。并且,信息量控制部35也可以采用如下的前馈型方法:根据正交转换/量化部32中的运动预测处理等计算表示图片性质的统计量,根据该统计量决定对下一个图片分配的编码比特数。进而,信息量控制部35也可以使用对这种反馈型方法和前馈型方法进行组合后的方法。
例如,信息量控制部35根据在MPEG-2的标准测试模型5中采用的方法,求出各图片的基本目标信息量。该情况下,从控制部21向信息量控制部35输入最大传送比特率和帧率。并且,从数据管理部31向信息量控制部35输入表示作为编码对象的当前图片是帧间编码的图片还是帧内编码的图片的图片类别信息。进而,从缓存上限/下限控制部34向信息量控制部35输入针对当前图片的上限值和下限值。然后,信息量控制部35根据这些输入的参数,求出基本目标信息量,使得在向标准解码器缓存传送与当前图片对应的编码比特列时,标准解码器缓存的占有量不会超过上限值。并且,信息量控制部35根据这些输入的参数,求出基本目标信息量,使得在从标准解码器缓存中取出与当前图片对应的编码比特列时,标准解码器缓存的占有量不会低于下限值。
进而,信息量控制部35求出针对各图片的校正信息量,使得在将缓存占有量的下限值从初始设定下限值修正为接近收敛目标值的情况下,标准解码器缓存的占有量不会低于该修正后的下限值。然后,信息量控制部35从基本目标信息量中减去校正目标信息量,从而求出最终的目标信息量。然后,信息量控制部35求出与目标信息量的值对应的量化参数。另外,关于与MPEG-2的标准测试模型5有关的基本目标信息量和量化参数的计算方法,希望参照由http://www.mpeg.org/MPEG/MSSG/tm5/Ch10/Ch10.html确定的URL。并且,信息量控制部35也可以使用日本特开2008-252562号公报所公开的表示目标信息量和量化参数的关系的率失真函数,来决定量化参数。该情况下,在从初始设定下限值修正缓存占有量的下限值的情况下,信息量控制部35从目标信息量中减去针对各图片的校正信息量,由此,修正该目标信息量。
作为一例,首先,信息量控制部35计算针对当前图片估计出的复杂度。针对进行帧内编码的图片的复杂度、针对通过单向预测而进行帧间编码的图片的复杂度、以及针对通过双向预测而进行帧间编码的图片的复杂度分别通过下式计算。以下,将进行帧内编码的图片称为I图片。并且,将使用在时间上靠前的图片的信息进行帧间编码的图片称为P图片。进而,将使用在时间上靠前的图片和靠后的图片的双方的信息进行帧间编码的图片称为B图片。
[数式4]
Xi=SiQi
Xp=SpQp (4)
Xb=SbQb
这里,Xi是针对I图片的复杂度,Xp是针对P图片的复杂度,Xb是针对B图片的复杂度。并且,Si是在已经编码的前一个图片为I图片的情况下、针对该前一个图片通过编码而产生的比特数。同样,Sp是在已经编码的前一个图片为P图片的情况下、针对该前一个图片通过编码而产生的比特数。进而,Sb是在已经编码的前一个图片为B图片的情况下、针对该前一个图片通过编码而产生的比特数。并且,Qi、Qp、Qb分别是在前一个图片为I图片、P图片、B图片的情况下、对前一个图片进行编码时使用的平均量化参数,该平均量化参数是通过对全部宏块的量化参数进行平均而计算出的。另外,作为例子,如下设定Xi、Xp、Xb的初始值。
Xi=(160*bitrate)/115
Xp=(60*bitrate)/115
Xb=(42*bitrate)/115
其中,bitrate是最大传送比特率,表示在编码中赋予的每秒的信息量(bit/s)。
接着,信息量控制部35根据计算出的复杂度Xi、Xp、Xb,依据下式计算针对I图片的基本目标信息量Ti、针对P图片的基本目标信息量Tp以及针对B图片的基本目标信息量Tb。
[数式5]
这里,Kp、Kb是常数,一般设定为Kp=1.0、Kb=1.4。并且,R是能够对GOP分配的编码比特数的余量。在各图片的编码完成后,如下更新R。
R=R-Sj
其中,如果前一个图片为I图片,则Sj=Si。并且,如果前一个图片为P图片,则Sj=Sp。或者,如果前一个图片为B图片,则Sj=Sb。
并且,在对GOP的最初图片即I图片进行编码时,使用针对上一个GOP计算出的比特数的余量R,如下更新比特数的余量R。
R=G+R
G=bitrate*N/picturerate
其中,N是GOP所包含的图片的张数。另外,针对动态图像数据的最初的GOP,将R设定为0。进而,picturerate是在编码对象的动态图像数据中每秒期间内扫描的图片的张数(Hz)。
并且,在(5)式中,Np、Nb分别是编码顺序中的GOP内的未编码的剩余P图片和B图片的张数。并且,函数max(a、b)是输出变量a和b中的较大一方的值的函数。
进而,信息量控制部35使用校正信息量ΔT,调整针对在标准解码器缓存的占有量的下限值的控制开始时刻以后编码的图片的目标信息量,使得标准解码器缓存的占有量不会小于该下限值。即,在控制开始时刻之后对当前图片进行编码的情况下,信息量控制部35计算校正信息量ΔT。然后,如果当前图片为I图片,则信息量控制部35将从通过(5)式计算出的基本目标信息量Ti中减去校正信息量ΔT而得到的值作为针对当前图片的目标信息量T。并且,如果当前图片为P图片,则信息量控制部35将从基本目标信息量Tp中减去校正信息量ΔT而得到的值作为针对当前图片的目标信息量T。进而,如果当前图片为B图片,则信息量控制部35将从基本目标信息量Tb中减去校正信息量ΔT而得到的值作为针对当前图片的目标信息量T。
其中,优选校正信息量ΔT为与从标准解码器缓存中取出前一张被编码的图片时的下限值和从标准解码器缓存中取出当前图片时的下限值之差对应的值。例如,在通过(3)式求出下限值的情况下,通过下式计算校正信息量ΔT。
[数式6]
这里,Starget表示由收敛目标导出部24-m计算出的收敛目标值,Lini表示初始设定下限值。并且,Na是在从缓存上限/下限控制部34开始调整标准解码器缓存的占有量的下限值的控制开始时刻到结束调整该下限值的控制结束时刻为止的期间内编码的图片的张数。另外,信息量控制部35也可以将针对对其他图片的编码影响较大的I图片的校正信息量ΔT设定为0。该情况下,为了决定针对P图片和B图片的校正信息量ΔT,只要使(6)式中的Na为在从控制开始时刻到控制结束时刻为止的期间内编码的P图片和B图片的张数的合计即可。
接着,信息量控制部35根据目标信息量T决定量化参数。因此,信息量控制部35计算对第j个宏块进行编码之前的标准解码器缓存的充足度dij、dpj、dbj。另外,充足度dij对应于I图片,充足度dpj对应于P图片,充足度dbj对应于B图片。根据下式计算该充足度dij、dpj、dbj。
[数式7]
这里,Bj-1是通过对第1个到第(j-1)个的全部宏块进行编码而生成的比特数。MBN是图片所包含的宏块的数量。并且,di0、dp0、db0是充足度的初始值。另外,关于特定图片,对最后宏块进行编码时的充足度diMBN、dpMBN、dbMBN成为针对下一个相同类型的图片的充足度的初始值di0、dp0、db0。
最后,信息量控制部35使用该充足度dij、dpj、dbj,通过下式决定针对第j个宏块的量化参数。
[数式8]
其中,如果当前图片为I图片,则dj为dij,如果当前图片为P图片,则dj为dpj,如果当前图片为B图片,则dj为dbj。
信息量控制部35将求出的量化参数转交给正交转换/量化部32。并且,信息量控制部35向结合部25-m通知根据针对从可变长度编码部33受理的子比特流数据SBSm所包含的各图片的实际编码比特数计算出的迁移时刻的、包含子比特流数据SBSm的比特流数据BS的残留占有量。为了求出该残留占有量,信息量控制部35对从子比特流数据SBSm开始蓄积在标准解码器缓存中后到对子比特流数据SBSm的最后图片进行解码为止的期间长度,乘以最大传送比特率。然后,信息量控制部35从该乘法值中减去子比特流数据SBSm所包含的全部图片的编码比特数的合计,由此,计算残留占有量。
结合部25-1、25-2、…、25-(n-1)分别按照再现的时间顺序,结合输入到结合部25-1、25-2、…、25-(n-1)中的2个子比特流数据。如图2所示,向结合部25-1输入从编码部23-1输出的子比特流数据SBS1和从编码部23-2输出的子比特流数据SBS2。然后,结合部25-1在子比特流数据SBS1之后结合子比特流数据SBS2。然后,结合部25-1输出结合成一个的子比特流数据。
并且,向结合部25-m(其中2≤m≤n-1)输入从结合部25-(m-1)输出的子比特流数据和从编码部23-(m+1)输出的子比特流数据SBSm+1。然后,结合部25-m在从结合部25-(m-1)输出的子比特流数据之后结合子比特流数据SBSm+1。然后,结合部25-m输出结合成一个的子比特流数据。然后,结合部25-(n-1)输出结合了全部由各编码部生成的子比特流数据后的比特流数据。该比特流数据是对处理部12取得的动态图像数据进行编码后的数据。
另外,结合部25-1、25-2、…、25-(n-1)具有相同的结构和功能,所以,以下对一个结合部25-m进行说明。
结合部25-m求出从编码部23-m的信息量控制部35通知的残留占有量Sr与从收敛目标导出部24-m受理的迁移时占有量Str之差ΔSr。然后,如果该差ΔSr不为0,则结合部25-m在从结合部25-(m-1)输出的子比特流数据与子比特流数据SBSm+1之间,插入与该差ΔSr相当的量的无效比特列。在对子比特流数据SBSm的最后图片进行解码时,与相当于该最后图片的数据一起从标准解码器缓存中取出该无效比特列。因此,结合部25-m能够使迁移时刻的标准解码器缓存的占有量与迁移时占有量Str一致。另外,优选该无效比特列是不对要解码的图片的画质造成影响的比特列。例如,该无效比特列可以是在H.264MPEG-4AVC中规定的Network Abstraction Layer(NAL)格式的Filler数据。或者,该无效比特列可以是在MPEG-2中规定的填充字节。
图7是示出在迁移时刻中比特流数据在标准解码器缓存中占据的占有量的迁移与由结合部25-m结合后的子比特流数据的对应关系的图。在图7的上侧示出比特流数据701的概略结构。并且,在图7的下侧示出曲线710,该曲线710表示该比特流数据701在标准解码器缓存中占据的占有量的推移。关于下侧的曲线710,横轴表示时间,纵轴表示占有量。并且,时刻ttr表示迁移时刻。
如图7所示,比特流数据701具有前侧的子比特流数据702和后侧的子比特流数据703。进而,比特流数据701在这2个子比特流数据之间具有无效比特列704。其中,在从标准解码器缓存中取出与前侧的子比特流数据702所包含的最后图片对应的有效数据705时,如曲线710所示,标准解码器缓存的占有量减少与该有效数据705相当的量Sv。在迁移时刻ttr,与有效数据705一起从标准解码器缓存中取出无效比特列704,所以,标准解码器缓存的占有量进一步减少与无效比特列704相当的量ΔSr。因此,在迁移时刻ttr从标准解码器缓存中取出与前侧的子比特流数据702所包含的最后图片对应的有效数据705后的占有量,与后侧的子比特流数据703的迁移时占有量Str一致。
图8示出由在动态图像编码装置1的处理部12上执行的计算机程序控制的动态图像数据的编码处理的动作流程。
如图8所示,当处理部12取得作为编码对象的动态图像数据后,处理部12开始编码处理。然后,处理部12的分割部22将动态图像数据分割成n个子数据(步骤S101)。其中,n为2以上的整数,与编码部的个数相等。然后,分割部22按照再现的时间顺序,向各编码部23-m(1≤m≤n)输入各子数据。
并且,处理部12的收敛目标导出部24-k(1≤k≤n-1)分别计算从由编码部23-k生成的子比特流数据SBSk向由编码部23-(k+1)生成的子比特流数据SBSk+1迁移的迁移时刻的迁移时占有量和收敛目标值(步骤S102)。如上所述,该迁移时占有量是在迁移时刻子比特流数据SBSk+1在标准解码器缓存中占据的占有量。进而,收敛目标值是在迁移时刻对子比特流数据SBSk和子比特流数据SBSk+1进行结合后的比特流数据BS在标准解码器缓存中占据的占有量的目标值。收敛目标导出部24-k向结合部25-k通知迁移时占有量。并且,收敛目标导出部24-k向处理部12的编码部23-k通知收敛目标值。
各编码部23-m(1≤m≤n)根据所通知的收敛目标值或由控制部21设定的标准解码器缓存的上限值和下限值,对所输入的子数据所包含的各图片进行编码。然后,各编码部23-m生成对子数据所包含的各图片进行编码后的子比特流数据(步骤S103)。此时,各编码部23-k(1≤k≤n-1)分别生成子比特流数据SBSk,使得结合了所生成的子比特流数据SBSk和SBSk+1后的比特流数据在迁移时刻在标准解码器缓存中占据的残留占有量Sr接近收敛目标值。并且,编码部23-n生成子比特流数据SBSn,使得子比特流数据SBSn在标准解码器缓存中占据的占有量收敛于标准解码器缓存的最大允许值与最小允许值之间。然后,编码部23-1和编码部23-2向结合部25-1输出所生成的子比特流数据。并且,编码部23-m(3≤m≤n)向结合部25-(m-1)输出所生成的子比特流数据。
各结合部25-k(1≤k≤n-1)求出从编码部23-k的信息量控制部35通知的实际残留占有量Sr与从收敛目标导出部24-k受理的迁移时占有量Str之差ΔSr(步骤S104)。然后,结合部25-k在从结合部25-(k-1)输出的子比特流数据与从编码部23-(k+1)受理的子比特流数据之间,插入与该差ΔSr相当的量的无效比特列。然后,各结合部25-k对这2个子比特流数据进行结合(步骤S105)。
然后,全部结合部结束子比特流数据的结合,由此,生成对动态图像数据进行编码后的比特流数据。然后,处理部12结束动态图像编码处理。
图9示出由在动态图像编码装置1的处理部12上执行的计算机程序控制的各编码部23-k(1≤k≤n-1)进行的子数据的编码处理的动作流程。
如图9所示,编码部23-k的缓存上限/下限控制部34根据从收敛目标导出部24-k受理的收敛目标值,决定针对所输入的子数据的各图片的标准解码器缓存的上限值和下限值(步骤S201)。此时,缓存上限/下限控制部34以如下方式决定针对各图片的下限值,图片的位置越接近通过对所输入的子数据进行编码而得到的子比特流数据的末端,下限值越接近收敛目标值。并且,在上限值低于收敛目标值的情况下,缓存上限/下限控制部34修正针对各图片的上限值,以使该上限值高于收敛目标值。然后,缓存上限/下限控制部34向编码部23-k的信息量控制部35通知该上限值和下限值。
信息量控制部35决定与针对各图片的编码比特分配量对应的目标信息量(步骤S202)。此时,信息量控制部35将条件设为,对由编码部23-k生成的子比特流数据SBSk和由编码部23-(k+1)生成的子比特流数据SBSk+1进行结合后的比特流数据在标准解码器缓存中占据的占有量包含在该上限值与下限值之间。并且,信息量控制部35关于设定了与针对前一个被编码的图片的下限值不同的下限值的图片,计算与该下限值之差对应的校正信息量,从目标信息量中减去校正信息量,由此,对目标信息量进行校正(步骤S203)。然后,信息量控制部35根据该目标信息量,求出用于决定量化幅度的量化参数(步骤S204)。信息量控制部35向编码部23-k的正交转换/量化部32通知所求出的量化参数。
正交转换/量化部32针对所输入的子数据的各图片进行正交转换处理,求出频率信号。然后,正交转换/量化部32以根据从信息量控制部35通知的量化参数而决定的量化幅度,对该频率信号进行量化(步骤S205)。正交转换/量化部32将通过该量化处理而得到的量化信号转交给编码部23-k的可变长度编码部33。然后,可变长度编码部33针对从正交转换/量化部32受理的量化信号执行可变长度编码处理(步骤S206)。可变长度编码部33结合针对输入到编码部的子数据所包含的各图片而得到的编码比特列,由此,生成对该子数据进行编码后的子比特流数据(步骤S207)。然后,可变长度编码部33向对应的结合部输出所生成的子比特流数据(步骤S208)。并且,可变长度编码部33向信息量控制部35通知实际对所生成的子比特流数据的各图片分配的编码比特数(步骤S209)。然后,编码部23-k结束子数据的编码处理。
另外,在编码部23-n中,在上述步骤S201中,缓存上限/下限控制部34将标准解码器缓存的上限值和下限值分别设定为由控制部21决定的上限值和下限值本身。并且,省略上述步骤S203的处理。关于其他动作,编码部23-n与其他编码部同样动作。
另外,由动态图像编码装置1生成的比特流数据例如可以是以MPEG-2、MPEG-4或H.264MPEG-4AVC为基准的数据。因此,能够通过现有的动态图像解码装置对由动态图像编码装置1生成的比特流数据进行解码。
如以上说明的那样,该动态图像编码装置控制针对由结合部结合2个子比特流数据而生成的比特流数据中的前侧的子比特流数据的编码比特分配量。由此,该动态图像编码装置调整对前侧的子比特流数据的最后图片进行解码的迁移时刻、结合后的比特流数据在标准解码器缓存中占据的占有量。具体而言,动态图像编码装置使迁移时刻的结合后的比特流数据在标准解码器缓存中占据的占有量比在迁移时刻之前蓄积在标准解码器缓存中的后侧的子比特流数据占据的占有量高。进而,该动态图像编码装置在前侧的子比特流数据与后侧的子比特流数据之间,插入在对前侧的子比特流数据的最后图片进行解码时一并取出的无效比特列。由此,该动态图像编码装置能够消除迁移时刻的结合后的比特流数据在标准解码器缓存中占据的占有量与后侧的子比特流数据在标准解码器缓存中占据的占有量之差。因此,该动态图像编码装置不需要进行占有量的迁移的模拟,也不需要在临时对编码后的图片进行解码后再次进行编码,能够满足标准解码器缓存的规定。因此,该动态图像编码装置能够在短时间内对动态图像数据进行编码。进而,该动态图像编码装置逐渐修正结合后的比特流数据在标准解码器缓存中占据的占有量的下限值,所以,对该比特流数据所包含的各图片分配的编码比特数不会急剧减少。因此,该动态图像编码装置能够防止在动态图像数据全体中出现编码导致的画质劣化。
另外,本发明不限于上述实施方式。例如,该动态图像编码装置也可以以可变比特率对动态图像数据进行编码。该情况下,比特流数据在标准解码器缓存中占据的占有量不低于该占有量的最小允许值即可。因此,即使迁移时刻的比特流数据的残留占有量比迁移时刻之前蓄积在标准解码器缓存中的后侧的子比特流数据占据的占有量多,各结合器也可以不插入无效比特列。
并且,在动态图像编码装置按照规定的动态图像编码标准进行动作的情况下,根据该标准的种类,由结合部插入的无效比特列有时仅具有字节的整数倍的长度。另一方面,迁移时刻的对2个子比特流数据进行结合后的比特流数据在标准解码器缓存中占据的残留占有量与这2个子比特流数据中的后侧的子比特流数据占据的迁移时占有量之差为比特单位。因此,在该差不是字节的整数倍的情况下,即使结合部插入无效比特列,也无法使迁移时刻的残留占有量与迁移时占有量完全一致。因此,由于该无效比特列插入后的残留占有量与迁移时占有量的误差,比特流数据在标准解码器缓存中占据的占有量可能未收敛于标准解码器缓存的最大允许值与最小允许值之间。
因此,优选各编码部的缓存上限/下限控制部将迁移时刻的标准解码器缓存的下限值设定为比收敛目标值高规定的余量。并且,优选各编码部的缓存上限/下限控制部将标准解码器缓存的上限值设定为比标准解码器缓存的最大允许值低规定的余量。该规定的余量是与上述误差相当的量,例如可以是8比特。进而,优选各结合部从前一个结合器取得上述误差的合计,决定无效比特列的长度,使得在所取得的误差的合计中加上在该结合部中产生的误差而得到的值的绝对值始终在规定的余量以下。
该图像编码装置用于各种用途。例如,该图像编码装置组装在动态图像数据发布用服务器、影像传送装置、视频电话系统、计算机或便携电话机中。例如,在该图像编码装置组装在动态图像数据发布用服务器中的情况下,通过其处理部,与声音信号等的与动态图像数据同时取得的其他信号一起,将由该动态图像编码装置生成的编码后的动态图像数据转换为基于规定通信标准的数据流。然后,组装了图像编码装置的动态图像数据发布用服务器经由通信线路向动态图像解码装置发布该数据流。
并且,也可以以记录在计算机可读取的介质中的形式,提供使计算机实现该动态图像编码装置的处理部所具有的控制部、分割部、编码部、收敛目标导出部和结合部的各功能的计算机程序。
这里列举的全部例子和特定用语应该解释为,是以教示为目的的,用于帮助读者理解本发明和本发明人为推进该技术而提出的概念,不限于与表示本发明的优势和劣势有关的本说明书的任意例子的结构、以及这种特定的例子和条件。详细说明了本发明的实施方式,但是,希望理解到,在不脱离本发明的精神和范围的前提下能够对其进行各种变更、置换和修正。
Claims (8)
1.一种动态图像编码装置,其具有:
存储部,其存储至少包含第1子数据和第2子数据的动态图像数据,该第1子数据和第2子数据分别包含多个图片;
处理部,其通过对所述动态图像数据进行编码,生成数据量比该动态图像数据的数据量少的比特流数据;以及
输出部,其输出所述比特流数据,
所述处理部实现如下功能:
收敛目标导出功能,其决定第1占有量的目标值,使得在以规定的传送率向虚拟解码器传送所述比特流数据且蓄积在该解码器的缓存中、并以规定的时间间隔从所述缓存中依次取出所述比特流数据所包含的与各个图片相当的数据时,在从所述缓存中取出对所述第1子数据进行编码得到的第1子比特流数据所包含的与最后图片相当的数据的第1时点、所述比特流数据在所述缓存中占据的所述第1占有量为在该第1时点对所述第2子数据进行编码得到的第2子比特流数据在所述缓存中占据的第2占有量以上;
第1编码功能,其以使所述第1占有量成为所述目标值的方式,决定针对所述第1子数据所包含的各个图片的编码比特的分配量,根据该分配量对所述第1子数据进行编码,从而生成所述第1子比特流数据;
第2编码功能,其通过对所述第2子数据进行编码,生成所述第2子比特流数据;以及
结合功能,其通过对所述第1子比特流数据和所述第2子比特流数据进行结合,生成所述比特流数据。
2.根据权利要求1所述的动态图像编码装置,其中,
在所述结合功能中,在所述第1子比特流数据与所述第2子比特流数据之间,插入具有与从所述第1时点的所述第1占有量中减去所述第2占有量而得到的差相当的长度的比特列。
3.根据权利要求2所述的动态图像编码装置,其中,
所述比特列是在所述虚拟解码器中对所述第1子比特流数据所包含的最后图片进行解码时与相当于该最后图片的数据一起从所述缓存中取出、且不对该最后图片的解码造成影响的无效比特列。
4.根据权利要求1~3中的任一项所述的动态图像编码装置,其中,
所述第1编码功能具有:
占有量限制值决定功能,其在从所述缓存中取出所述第1子比特流数据所包含的与第1图片相当的数据时,增加所述比特流数据在所述缓存中占据的占有量的下限值,使得所述第1图片的位置越接近所述第1子比特流数据的最后,该下限值越接近所述目标值;以及
信息量控制功能,其在从所述缓存中取出所述第1图片时,以使所述比特流数据在所述缓存中占据的占有量为所述下限值以上的方式,决定针对所述第1图片的编码比特的分配量。
5.根据权利要求4所述的动态图像编码装置,其中,
在所述占有量限制值决定功能中,在所述虚拟缓存中蓄积了所述第1子比特流数据所包含的与第2图片相当的数据时,在所述比特流数据在所述虚拟缓存中占据的占有量的事先确定的上限值小于所述目标值的情况下,将该上限值修正为高于所述目标值。
6.根据权利要求4或5所述的动态图像编码装置,其中,
所述第1编码功能还具有:
量化功能,其分别针对所述第1子比特流数据所包含的多个图片,对与该图片的各像素对应的信号进行正交转换,从而生成频率信号,以所述编码比特的分配量越大、该频率信号越小的量化幅度,对所述频率信号进行量化;以及
可变长度编码功能,其通过对所述量化后的所述频率信号进行可变长度编码,生成所述第1子比特流数据,
在所述信息量控制功能中,从在第1下限值与第2下限值相等时对所述第1图片分配的编码比特的基本量中,减去相当于所述第1下限值与所述第2下限值之差的校正量,从而决定针对所述第1图片的所述编码比特的分配量,其中,所述第1下限值是针对所述第1子比特流数据所包含的所述第1图片的所述下限值,所述第2下限值是针对该第1图片的前一个被编码的图片的下限值。
7.一种动态图像编码方法,对至少包含分别包含有多个图片的第1子数据和第2子数据的动态图像数据进行编码,从而生成数据量比该动态图像数据的数据量少的比特流数据,其中,
决定第1占有量的目标值,使得在以规定的传送率向虚拟解码器传送所述比特流数据且蓄积在该解码器的缓存中、并以规定的时间间隔从所述缓存中依次取出所述比特流数据所包含的与各个图片相当的数据时,在从所述缓存中取出对所述第1子数据进行编码得到的第1子比特流数据所包含的与最后图片相当的数据的第1时点、所述比特流数据在所述缓存中占据的所述第1占有量为在该第1时点对所述第2子数据进行编码得到的第2子比特流数据在所述缓存中占据的第2占有量以上,
以使所述第1占有量成为所述目标值的方式,决定针对所述第1子数据所包含的各个图片的编码比特的分配量,根据该分配量对所述第1子数据进行编码,从而生成第1子比特流数据,
通过对所述第2子数据进行编码,生成第2子比特流数据,
通过对所述第1子比特流数据和所述第2子比特流数据进行结合,生成所述比特流数据。
8.一种动态图像编码用计算机程序,其对至少包含分别包含有多个图片的第1子数据和第2子数据的动态图像数据进行编码,从而使计算机生成数据量比该动态图像数据的数据量少的比特流数据,其中,
该动态图像编码用计算机程序具有使计算机执行如下步骤的命令:
决定第1占有量的目标值,使得在以规定的传送率向虚拟解码器传送所述比特流数据且蓄积在该解码器的缓存中、并以规定的时间间隔从所述缓存中依次取出所述比特流数据所包含的与各个图片相当的数据时,在从所述缓存中取出对所述第1子数据进行编码得到的第1子比特流数据所包含的与最后图片相当的数据的第1时点、所述比特流数据在所述缓存中占据的所述第1占有量为在该第1时点对所述第2子数据进行编码得到的第2子比特流数据在所述缓存中占据的第2占有量以上,
以使所述第1占有量成为所述目标值的方式,决定针对所述第1子数据所包含的各个图片的编码比特的分配量,根据该分配量对所述第1子数据进行编码,从而生成第1子比特流数据,
通过对所述第2子数据进行编码,生成第2子比特流数据,
通过对所述第1子比特流数据和所述第2子比特流数据进行结合,生成所述比特流数据。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2009/053739 WO2010097946A1 (ja) | 2009-02-27 | 2009-02-27 | 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102318345A true CN102318345A (zh) | 2012-01-11 |
CN102318345B CN102318345B (zh) | 2014-07-30 |
Family
ID=42665174
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200980156661.0A Active CN102318345B (zh) | 2009-02-27 | 2009-02-27 | 动态图像编码装置、动态图像编码方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9025664B2 (zh) |
EP (1) | EP2403248B1 (zh) |
JP (1) | JP5152402B2 (zh) |
KR (1) | KR101280700B1 (zh) |
CN (1) | CN102318345B (zh) |
WO (1) | WO2010097946A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103716621A (zh) * | 2012-10-01 | 2014-04-09 | 富士通株式会社 | 视频编码设备和解码设备、视频编码方法和解码方法 |
CN104125465A (zh) * | 2013-04-26 | 2014-10-29 | 英特尔公司 | 用于协调并行视频代码转换的技术 |
CN107846263A (zh) * | 2017-11-01 | 2018-03-27 | 中国电子科技集团公司第二十八研究所 | 一种基于分段计算的信源二进制算术编码方法和编码系统 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9973768B2 (en) * | 2010-03-16 | 2018-05-15 | Texas Instruments Incorporated | CABAC decoder with decoupled arithmetic decoding and inverse binarization |
WO2011138900A1 (ja) | 2010-05-06 | 2011-11-10 | 日本電信電話株式会社 | 映像符号化制御方法および装置 |
BR112012028184A2 (pt) * | 2010-05-07 | 2016-08-02 | Nippon Telegraph & Telephone | método de controle de codificação de vídeo, aparelho de codificação de vídeo e programa de codificação de vídeo |
CA2798354C (en) | 2010-05-12 | 2016-01-26 | Nippon Telegraph And Telephone Corporation | A video encoding bit rate control technique using a quantization statistic threshold to determine whether re-encoding of an encoding-order picture group is required |
US9888244B2 (en) * | 2011-10-05 | 2018-02-06 | Texas Instruments Incorporated | Methods and systems for encoding of multimedia pictures |
US9819964B2 (en) * | 2012-05-04 | 2017-11-14 | Environmental Systems Research Institute, Inc. | Limited error raster compression |
US9002126B2 (en) * | 2012-05-04 | 2015-04-07 | Environmental Systems Research Institute (ESRI) | Limited error raster compression |
WO2015134825A1 (en) * | 2014-03-07 | 2015-09-11 | Sensor Electronic Technology, Inc. | Ultraviolet surface illuminator |
US9979970B2 (en) * | 2014-08-08 | 2018-05-22 | Qualcomm Incorporated | System and method for determining buffer fullness for display stream compression |
KR101650696B1 (ko) | 2015-11-06 | 2016-08-24 | 연규수 | 스포트 용접용 팁의 제조 방법 |
JP2017168878A (ja) * | 2016-03-14 | 2017-09-21 | ルネサスエレクトロニクス株式会社 | 半導体装置、符号化制御方法及びカメラ装置 |
US11509938B2 (en) * | 2019-11-05 | 2022-11-22 | Hfi Innovation Inc. | Method and apparatus of signaling subpicture information in video coding |
US11749805B2 (en) | 2020-01-28 | 2023-09-05 | Ricoh Company, Ltd. | Liquid composition for forming electrochemical device, method of manufacturing electrodes, method of manufacturing electrochemical device and electrodes |
CN117319661B (zh) * | 2023-09-26 | 2024-04-12 | 中移凯普(北京)技术服务有限公司 | 一种用于视觉传达展示的图像传输系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1283045A (zh) * | 1999-06-01 | 2001-02-07 | 索尼公司 | 编码设备和方法、多路复用设备和方法 |
JP2002165214A (ja) * | 1997-06-19 | 2002-06-07 | Victor Co Of Japan Ltd | 画像信号符号化方法 |
JP2005136633A (ja) * | 2003-10-29 | 2005-05-26 | Sony Corp | 動画像符号化装置および動画像符号化制御方法 |
JP2006054529A (ja) * | 2004-08-10 | 2006-02-23 | Victor Co Of Japan Ltd | Mpeg画像データ記録装置及びmpeg画像データ記録方法 |
CN101330623A (zh) * | 2007-06-19 | 2008-12-24 | 松下电器产业株式会社 | 运动图像编码装置 |
Family Cites Families (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB8929152D0 (en) * | 1989-12-22 | 1990-02-28 | Gen Electric | A digital augmentation system for actv-ii |
CA2065979C (en) * | 1991-06-10 | 1999-01-19 | Stephen Patrick Thompson | Mode dependent minimum fifo fill level controls processor access to video memory |
GB9424429D0 (en) * | 1994-12-02 | 1995-01-18 | Philips Electronics Uk Ltd | Audio/video timing discrepancy management |
GB9424436D0 (en) * | 1994-12-02 | 1995-01-18 | Philips Electronics | Video editing buffer management |
JP3668556B2 (ja) * | 1996-06-13 | 2005-07-06 | ソニー株式会社 | ディジタル信号符号化方法 |
US5953020A (en) * | 1997-06-30 | 1999-09-14 | Ati Technologies, Inc. | Display FIFO memory management system |
KR100555164B1 (ko) * | 1997-07-25 | 2006-03-03 | 소니 가부시끼 가이샤 | 편집 장치, 편집 방법, 재부호화 장치, 재부호화 방법, 스플라이싱 장치 및 스플라이싱 방법 |
DE69838869T2 (de) * | 1997-10-03 | 2008-12-04 | Sony Corp. | Vorrichtung und Verfahren zum Spleißen von codierten Datenströmen sowie Vorrichtung und Verfahren zur Erzeugung von codierten Datenströmen |
JP4232209B2 (ja) * | 1998-01-19 | 2009-03-04 | ソニー株式会社 | 圧縮画像データの編集装置及び圧縮画像データの編集方法 |
JPH11261958A (ja) * | 1998-03-09 | 1999-09-24 | Sony Corp | 映像編集装置及び映像編集方法 |
FI106998B (fi) * | 1999-01-15 | 2001-05-15 | Nokia Mobile Phones Ltd | Bittinopeuden ohjaus multimedialaitteessa |
US6418474B1 (en) * | 1999-04-16 | 2002-07-09 | Peerless Systems Corporation | Data transfer protocol flow controller and method |
US6574193B1 (en) * | 1999-07-28 | 2003-06-03 | Veraz Networks Ltd. | Congestion control using variable rate encoding based on queue fill |
US6873654B1 (en) * | 2000-05-16 | 2005-03-29 | Redrock Semiconductor, Inc | Method and system for predictive control for live streaming video/audio media |
JP2001359153A (ja) * | 2000-06-15 | 2001-12-26 | Nec Corp | 無線通信システム、基地局及び移動局 |
GB0104785D0 (en) * | 2001-02-27 | 2001-04-18 | Pace Micro Tech Plc | MPEG decoder video in the form of cue and/or review streams of data |
JP2004297829A (ja) | 2001-05-30 | 2004-10-21 | Victor Co Of Japan Ltd | Mpegデータ再生装置 |
EP2403263A3 (en) * | 2002-04-26 | 2012-01-25 | Sony Corporation | Encoding device and method, decoding device and method, editing device and method, recoding medium, and program |
US7940843B1 (en) * | 2002-12-16 | 2011-05-10 | Apple Inc. | Method of implementing improved rate control for a multimedia compression and encoding system |
US7830889B1 (en) * | 2003-02-06 | 2010-11-09 | Juniper Networks, Inc. | Systems for scheduling the transmission of data in a network device |
US7420919B1 (en) * | 2003-11-10 | 2008-09-02 | Cisco Technology, Inc. | Self converging communication fair rate control system and method |
JP4717452B2 (ja) * | 2005-01-31 | 2011-07-06 | ルネサスエレクトロニクス株式会社 | データ多重化装置 |
US20060265485A1 (en) * | 2005-05-17 | 2006-11-23 | Chai Sek M | Method and apparatus for controlling data transfer in a processing system |
US20070116117A1 (en) * | 2005-11-18 | 2007-05-24 | Apple Computer, Inc. | Controlling buffer states in video compression coding to enable editing and distributed encoding |
KR20070074985A (ko) * | 2006-01-11 | 2007-07-18 | 삼성전자주식회사 | 표시 장치 및 그것의 구동 방법 |
US20080059154A1 (en) * | 2006-09-01 | 2008-03-06 | Nokia Corporation | Encoding an audio signal |
JP2008066851A (ja) * | 2006-09-05 | 2008-03-21 | Sony Corp | 情報処理装置および情報処理方法、記録媒体、並びに、プログラム |
JP4358215B2 (ja) | 2006-09-27 | 2009-11-04 | 株式会社東芝 | 動画像符号化装置及びその方法 |
US8126475B2 (en) * | 2006-10-09 | 2012-02-28 | Motorola Mobility, Inc. | Apparatus and method for uplink scheduling on shared channels |
JP4900945B2 (ja) * | 2007-01-18 | 2012-03-21 | キヤノン株式会社 | 記録装置、及び記録方法 |
JP4773377B2 (ja) * | 2007-01-29 | 2011-09-14 | ルネサスエレクトロニクス株式会社 | 通信システム、通信装置及びフロー制御方法 |
JP2008252562A (ja) | 2007-03-30 | 2008-10-16 | Renesas Technology Corp | 動画像符号化制御方法および動画像符号化装置 |
KR100928324B1 (ko) * | 2007-10-02 | 2009-11-25 | 주식회사 아이브이넷 | 압축된 동영상을 복원하기 위한 프레임 버퍼 메모리 운영방법 및 이에 적합한 디코딩 장치 |
JP5078852B2 (ja) * | 2007-12-06 | 2012-11-21 | キヤノン株式会社 | 動画像符号化装置及び動画像符号化方法 |
US9167007B2 (en) * | 2008-06-06 | 2015-10-20 | Amazon Technologies, Inc. | Stream complexity mapping |
US20100020654A1 (en) * | 2008-07-28 | 2010-01-28 | Mediatek Inc. | Method and apparatus for data buffer control of optical disc player |
US20100074111A1 (en) * | 2008-09-22 | 2010-03-25 | Krishnaprasad Vijayanand | Method of data traffic shaping, apparatus and wireless device |
US8527649B2 (en) * | 2010-03-09 | 2013-09-03 | Mobixell Networks Ltd. | Multi-stream bit rate adaptation |
-
2009
- 2009-02-27 CN CN200980156661.0A patent/CN102318345B/zh active Active
- 2009-02-27 WO PCT/JP2009/053739 patent/WO2010097946A1/ja active Application Filing
- 2009-02-27 EP EP09840799.2A patent/EP2403248B1/en active Active
- 2009-02-27 KR KR1020117019839A patent/KR101280700B1/ko active IP Right Grant
- 2009-02-27 JP JP2011501428A patent/JP5152402B2/ja not_active Expired - Fee Related
-
2011
- 2011-08-09 US US13/206,023 patent/US9025664B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002165214A (ja) * | 1997-06-19 | 2002-06-07 | Victor Co Of Japan Ltd | 画像信号符号化方法 |
CN1283045A (zh) * | 1999-06-01 | 2001-02-07 | 索尼公司 | 编码设备和方法、多路复用设备和方法 |
JP2005136633A (ja) * | 2003-10-29 | 2005-05-26 | Sony Corp | 動画像符号化装置および動画像符号化制御方法 |
JP2006054529A (ja) * | 2004-08-10 | 2006-02-23 | Victor Co Of Japan Ltd | Mpeg画像データ記録装置及びmpeg画像データ記録方法 |
CN101330623A (zh) * | 2007-06-19 | 2008-12-24 | 松下电器产业株式会社 | 运动图像编码装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103716621A (zh) * | 2012-10-01 | 2014-04-09 | 富士通株式会社 | 视频编码设备和解码设备、视频编码方法和解码方法 |
CN103716621B (zh) * | 2012-10-01 | 2017-11-21 | 富士通株式会社 | 视频编码设备和解码设备、视频编码方法和解码方法 |
CN104125465A (zh) * | 2013-04-26 | 2014-10-29 | 英特尔公司 | 用于协调并行视频代码转换的技术 |
CN104125465B (zh) * | 2013-04-26 | 2018-08-03 | 英特尔公司 | 用于协调并行视频代码转换的技术 |
CN107846263A (zh) * | 2017-11-01 | 2018-03-27 | 中国电子科技集团公司第二十八研究所 | 一种基于分段计算的信源二进制算术编码方法和编码系统 |
CN107846263B (zh) * | 2017-11-01 | 2020-07-14 | 南京莱斯电子设备有限公司 | 一种基于分段计算的信源二进制算术编码方法和编码系统 |
Also Published As
Publication number | Publication date |
---|---|
KR101280700B1 (ko) | 2013-07-01 |
EP2403248B1 (en) | 2018-07-04 |
EP2403248A1 (en) | 2012-01-04 |
US20110292995A1 (en) | 2011-12-01 |
JP5152402B2 (ja) | 2013-02-27 |
JPWO2010097946A1 (ja) | 2012-08-30 |
KR20110105875A (ko) | 2011-09-27 |
CN102318345B (zh) | 2014-07-30 |
WO2010097946A1 (ja) | 2010-09-02 |
EP2403248A4 (en) | 2014-11-05 |
US9025664B2 (en) | 2015-05-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102318345B (zh) | 动态图像编码装置、动态图像编码方法 | |
CN102630013B (zh) | 基于场景切换的码率控制视频压缩方法和装置 | |
CN101547349B (zh) | 一种对视频信号的二次avs编码码率控制的方法 | |
CN1251511C (zh) | 用于生成具有恒定质量的可缩放编码视频比特流的方法 | |
CN101867811B (zh) | 图像编码装置和图像编码方法 | |
CN1114320C (zh) | 利用量化活动度控制比特产生数量的图像编码方法和装置 | |
CN101505429B (zh) | 对视频数据进行内编码的方法和设备 | |
CN101401435A (zh) | 运动图像编码/译码方法、装置以及程序 | |
CN102595130B (zh) | 图像编码装置和图像解码装置 | |
CN101779468A (zh) | 图像处理装置和图像处理方法 | |
CN103533365B (zh) | 比特率控制方法与比特率控制系统 | |
CN101877784B (zh) | 一种适用于实时应用的h.264码率控制方法 | |
CN106937112A (zh) | 基于h.264视频压缩标准的码率控制方法 | |
JPH09331533A (ja) | 動画像符号化装置 | |
CN101816181A (zh) | 用于视频编解码中速率控制精度的方法和装置 | |
US6064324A (en) | Digital signal encoding and decoding method and apparatus without transmitting information on quantization width | |
CN103517080A (zh) | 实时视频流编码器和实时视频流编码方法 | |
CN100448295C (zh) | 一种低复杂度的积分码率控制方法 | |
CN103843346B (zh) | 用于对比特流形式的图片进行解码的方法 | |
CN1153473C (zh) | 具有几个数据压缩信道的数据压缩组件 | |
KR20000070810A (ko) | 부호화 장치 및 부호화 방법 | |
Lin et al. | A gradient-based rate control algorithm with applications to MPEG video | |
JPH09121359A (ja) | 画像符号化方法および画像復号化方法 | |
CN103281532A (zh) | 一种基于运动强度检测的量化调整方法及系统 | |
CN102271248A (zh) | 一种基于权重窗口模型的h.264/avc宏块级码率控制算法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |