CN109996076A - 码率控制的方法、计算机系统和装置 - Google Patents

码率控制的方法、计算机系统和装置 Download PDF

Info

Publication number
CN109996076A
CN109996076A CN201910258306.XA CN201910258306A CN109996076A CN 109996076 A CN109996076 A CN 109996076A CN 201910258306 A CN201910258306 A CN 201910258306A CN 109996076 A CN109996076 A CN 109996076A
Authority
CN
China
Prior art keywords
band
quota
frame
bit number
noise
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
Application number
CN201910258306.XA
Other languages
English (en)
Other versions
CN109996076B (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.)
Shenzhen Dajiang Innovations Technology Co Ltd
Original Assignee
Shenzhen Dajiang Innovations Technology Co Ltd
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 Shenzhen Dajiang Innovations Technology Co Ltd filed Critical Shenzhen Dajiang Innovations Technology Co Ltd
Priority to CN201910258306.XA priority Critical patent/CN109996076B/zh
Publication of CN109996076A publication Critical patent/CN109996076A/zh
Application granted granted Critical
Publication of CN109996076B publication Critical patent/CN109996076B/zh
Expired - Fee Related 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/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/115Selection of the code volume for a coding unit prior to 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/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/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/15Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at 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/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/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/186Methods 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 colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters

Landscapes

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

Abstract

一种码率控制的方法、计算机系统和装置。该方法包括:根据帧中未编码的第一条带的配额和该帧中至少一个已编码条带的配额,确定用于编码该第一条带的第一编码参数的调整值,其中,该配额关联编码条带使用比特的份数;根据该调整值,确定该第一编码参数。本发明实施例的码率控制的方法、计算机系统和装置,能够有效地控制码率。

Description

码率控制的方法、计算机系统和装置
本申请是申请日为2016年10月12日、中国申请号为201680003464.5、发明名称为“码率控制的方法、计算机系统和装置”的发明申请的分案申请。版权申明
本专利文件披露的内容包含受版权保护的材料。该版权为版权所有人所有。版权所有人不反对任何人复制专利与商标局的官方记录和档案中所存在的该专利文件或者该专利披露。
技术领域
本发明涉及信息技术领域,并且更具体地,涉及一种码率控制的方法、计算机系统和装置。
背景技术
视频通信系统的通信信道带宽一般是恒定、有限的,码率不断变化的码流不适合在恒定信道中传输。因此,在视频编码中引入了码率控制,目的是将产生的码流码率控制在一定波动范围之内。
有效的码率控制可以使视频通信系统在一定数据带宽的限制下能有较稳定的传输码率以及较小的视频时延。因此,如何有效地控制码率成为亟待解决的一个技术问题。
发明内容
本发明实施例提供了一种码率控制的方法、计算机系统和装置,能够有效地控制码率。
第一方面,提供了一种码率控制的方法,该方法包括:根据帧中未编码的第一条带的配额和该帧中至少一个已编码条带的配额,确定用于编码该第一条带的第一编码参数的调整值,其中,该配额关联编码条带使用比特的份数;根据该调整值,确定该第一编码参数。
第二方面,提供了一种计算机系统,该计算机系统包括:存储器,用于存储计算机可执行指令;处理器,用于访问该存储器,并执行该计算机可执行指令,以进行如下操作:根据帧中未编码的第一条带的配额和该帧中至少一个已编码条带的配额,确定用于编码该第一条带的第一编码参数的调整值,其中,该配额关联编码条带使用比特的份数;根据该调整值,确定该第一编码参数。
第三方面,提供了一种码率控制的装置,该装置包括:调整值确定模块,用于根据帧中未编码的第一条带的配额和该帧中至少一个已编码条带的配额,确定用于编码该第一条带的第一编码参数的调整值,其中,该配额关联编码条带使用比特的份数;编码参数确定模块,用于根据该调整值,确定该第一编码参数。
第四方面,提供了一种计算机存储介质,该计算机存储介质中存储有程序代码,该程序代码可以用于指示执行上述第一方面的方法。
本发明实施例的技术方案,基于配额确定编码参数,可以适时地对编码参数进行调整,从而能够有效地控制码率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是可应用本发明实施例的技术方案的系统的示意图。
图2是本发明实施例的输入数据的示意图。
图3是本发明一个实施例的码率控制的方法的示意性流程图。
图4是本发明另一个实施例的码率控制的方法的示意性流程图。
图5是本发明实施例的去除高频系数的示意图。
图6是本发明实施例的计算机系统的示意性框图。
图7是本发明实施例的码率控制的装置的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
应理解,本文中的具体的例子只是为了帮助本领域技术人员更好地理解本发明实施例,而非限制本发明实施例的范围。
还应理解,本发明实施例中的公式只是一种示例,而非限制本发明实施例的范围,各公式可以进行变形,这些变形也应属于本发明保护的范围。
还应理解,在本发明的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本发明实施例的技术方案可以用于控制视频或其他媒体数据的码率。例如,在规定视频序列的每一帧编码后的比特数不能超过特定比特数的情况下,本发明实施例的技术方案可以不需要预处理,而能一次性地实现码率控制。
在本发明的各种实施例中,每一帧编码后的比特数不能超过的特定比特数也可以称为分配给该帧的比特数或者该帧可用的比特数。
图1示出了可应用本发明实施例的技术方案的系统100的示意图。如图1所示,系统100可以接收并编码输入数据102,以产生输出数据108。例如,系统100可以接收视频数据,压缩视频数据以产生压缩的比特流。在数据编码过程中,系统100可以采用本发明实施例的技术方案控制编码数据的码率。在一些实施例中,系统100中的部件可以由一个或多个处理器实现,该处理器可以是计算设备中的处理器,也可以是可移动设备(例如无人机)中的处理器。该处理器可以包括ARM处理器,现场可编程门阵列(Field-Programmable GateArray,FPGA),中央处理器(Central Processing unit,CPU),图形处理器(GraphicsProcessing Unit,GPU)等。
如图1所示,系统100可以包括编码器104和码率控制器106。编码器104和码率控制器106可以由相同或不同的计算设备实现。在一些实施例中,码率控制器106可以为编码器104中的一个集成部分,或者,编码器104可以为码率控制器106中的一个集成部分。编码器104用于接收输入数据102,编码输入数据102,并提供包括编码的输入数据的输出数据108。输入数据可以包括文本,图像,图形对象,动画序列,音频,视频,或者任何需要编码的其他数据。在一些情况下,输入数据可以包括来自传感器的传感数据,该传感器可以为视觉传感器(例如,照相机、红外传感器),麦克风,近场传感器(例如,超声波传感器、雷达),位置传感器,温度传感器,触摸传感器等。在一些情况下,输入数据可以包括来自用户的信息,例如,生物信息,该生物信息可以包括面部特征,指纹扫描,视网膜扫描,嗓音记录,DNA采样等。
编码对于高效和/或安全的传输或存储数据是必需的。对输入数据的编码可以包括数据压缩,加密,纠错编码,格式转换等。例如,对多媒体数据(例如视频或音频)压缩可以减少在网络中传输的比特数量。敏感数据,例如金融信息和个人标识信息,在传输和存储前可以加密以保护机密和/或隐私。
任何合适的编码技术都可以用于编码输入数据。编码类型依赖于被编码的数据和具体的编码需求。
在一些实施例中,编码器104可以实现一种或多种不同的编解码器。每种编解码器可以包括实现不同编码算法的代码,指令或计算机程序。基于各种因素,包括输入数据的类型和/或来源,编码数据的接收实体,可用的计算资源,网络环境,商业环境,规则和标准等,可以选择一种合适的编码器编码给定的输入数据集。
例如,编码器可以被配置为编码一系列视频帧。编码每个帧中的数据可以采用一系列步骤。编码可以完全地基于帧内的空间信息。在一些实施例中,编码步骤可以包括变换步骤,量化步骤和熵编码步骤。
在图1中,码率控制器106可以通过给编码器104提供编码参数110(也可以称为码率控制参数)以控制输出数据的码率。码率可以被控制到一个特定的范围内(例如,低于最大码率,高于最小码率)或者接近目标平均码率。可选地,可以控制码率依赖于帧的复杂度,带宽限制,缓存容量或其他因素而变化。在一些情况下,码率控制可以有一个或多个层级,例如画面组(Group of Picture,GOP)级,帧级,条带级,宏块级,块级,像素级等。
在本发明各种实施例中,编码参数可以包括一个或多个控制编码流程中的量化步骤的量化参数,从而编码参数可以控制产生的输出数据的码率。例如,量化参数可以包括量化步长,表示量化步长或者与量化步长相关的值,例如,H.264或者类似的编码器中的量化参数(Quantization Parameter,QP),或者,量化矩阵或其参考矩阵等。编码参数也可以包括控制编码流程中其他方面的参数。
码率控制器106可以基于有关输出数据108或编码器104的输出信息112控制码率,或者,基于有关输入数据102的输入信息114控制码率。
在一些实施例中,码率控制器106可以基于一个或多个码率控制预定值116控制码率。
本发明各实施例中的预定值可以预先设定和/或动态更新。预定值可以用于获取编码参数。
在一些实施例中,码率控制器106还可以基于其他附加信息控制码率。
图2示出了根据本发明实施例的输入数据的示意图。
如图2所示,输入数据202可以包括多个帧204。例如,多个帧204可以表示视频流中的连续的图像帧。每个帧204可以包括一个或多个条带206。每个条带206可以包括一个或多个宏块208。每个宏块208可以包括一个或多个块210。每个块210可以包括一个或多个像素212。每个像素212可以包括一个或多个数据集,对应于一个或多个数据部分,例如,亮度数据部分和色度数据部分。数据单元可以为帧,条带,宏块,块,像素或以上任一种的组。在不同的实施例中,数据单元的大小可以变化。作为举例,一个帧204可以包括100个条带206,每个条带206可以包括10个宏块208,每个宏块208可以包括4个(例如,2x2)块210,每个块210可以包括64个(例如,8x8)像素212。
以下以条带为例描述本发明实施例的技术方案。应理解,本发明实施例的技术方案中的条带也可以变换为其他数据单元,例如,宏块、块等,本发明对此并不限定。
图3示出了本发明实施例的码率控制的方法300的示意性流程图。该方法300可以由图1所示的系统100执行,具体地,可以由图1中的码率控制器106执行。
310,根据帧中未编码的第一条带的配额和该帧中至少一个已编码条带的配额,确定用于编码该第一条带的第一编码参数的调整值,其中,该配额关联编码条带使用比特的份数。
本发明实施例中的配额关联编码条带使用比特的份数。也就是说,编码某一条带使用比特的份数与该条带的配额相关。例如,若某一条带的配额为N,则编码该条带可以使用N份的比特,其中1份的比特的数量后续将具体描述。
在本发明实施例中,第一条带表示待编码的条带,第一编码参数表示用于编码该第一条带的编码参数。对于第一条带,根据第一条带的配额和帧中至少一个已编码条带的配额,确定第一编码参数的调整值。该调整值用于确定该第一编码参数。也就是说,在本发明实施例中,用于编码第一条带的编码参数基于第一条带的配额和帧中至少一个已编码条带的配额。
可选地,编码参数可以为量化参数。关于编码参数的说明可以参见前述的描述,在此不再赘述。
可选地,如图4所示,在步骤310之前,该方法300还可以包括:
306,确定该帧中每个条带的配额。
本发明对配额的确定方式不做限定,条带的配额可以与条带的数据特性关联,也可以与特定的信息关联。
可选地,在本发明一个实施例中,可以根据该帧中每个条带的数据特性确定该帧中每个条带的配额。
具体而言,在本实施例中,条带的配额可以与条带的数据特性关联。数据特性包括但不限于复杂度、有趣度或纹理度等。可选地,每个条带的配额与每个条带的数据特性之间可以为正向映射关系。例如,条带的复杂度越高,其配额越大。
可选地,复杂度信息可以根据图像处理的方法获得。例如通过sobel算子获取相关梯度值来评价图像的复杂度;或者通过Roberts算子获取相关高频分量幅值来评价图像的复杂度;或者通过边界检测(Edge detection)获取边界幅值(Edge magnitude)来评价图像的复杂度。
可选地,条带可以根据以下方式分类:
若帧中某一条带行中的条带的复杂度的平均值大于预定值N1,且该条带行中复杂度大于预定值N2的条带的数目大于预定值N3,则该条带行为噪声条带行,噪声条带行中的条带为噪声条带;
否则,该条带行为非噪声条带行,非噪声条带行中的条带为非噪声条带;
若非噪声条带行中的某一条带的复杂度大于预定值N4,N4不小于N2,则该条带为包含有规律高频分量的非噪声条带;
若非噪声条带行中的每一个条带的复杂度为0,则为零条带行,零条带行中的条带为零条带。
应理解,上述条带的分类方式只是示例,本发明对此并不限定,也就是说,也可以根据其他方式对条带进行分类。
可选地,在本发明另一个实施例中,可以根据该帧中每个条带的位置或预配置信息确定该帧中每个条带的配额。
具体而言,条带的配额也可以根据条带的位置确定,例如,可以根据条带所在的位置是否是图像中的关键区域确定配额。或者,条带的配额也可以根据预配置信息确定,例如,预先配置哪些条带的配额高,哪些条带的配额低等。
可选地,以复杂度为例,作为一个实施例,可以根据以下公式(1)确定帧中噪声条带的配额,
Quotai=staDatai*M1/sumStaDataNoise (1)
其中,Quotai为该帧中噪声条带i的配额,staDatai为该条带i的复杂度,sumStaDataNoise为该帧中所有噪声条带的复杂度的累加和,M1为预定值。
类似地,可以根据以下公式(2)确定该帧中非噪声条带的配额,
Quotaj=staDataj*M2/sumStaDataNonNoise (2)
其中,Quotaj为该帧中非噪声条带j的配额,staDataj为该条带j的复杂度,sumStaDataNonNoise为该帧中所有非噪声条带的复杂度的累加和,M2为预定值。
可选地,作为一个实施例,在该帧中非噪声条带j的配额Quotaj大于某一预定值时,Quotaj可以被设置为该预定值。也就是说,若根据上述公式(2)得到的某一非噪声条带的配额较大时,则设置其配额为预定值,这样可以使得非噪声条带的配额不至于特别大。
在确定了条带的配额后,接下来可以确定每份配额对应的比特数。下面进行详细描述。
可选地,如图4所示,该方法300还可以包括:
308,确定每份配额对应的比特数。
可选地,在本发明一个实施例中,在该帧包括噪声条带时,
根据分配给该帧的比特数中编码该帧中所有噪声条带可用的比特数,该帧中所有噪声条带的配额的累加和,和该帧中的噪声条带中配额为零的条带的数目,确定该帧中噪声条带的每份配额对应的比特数;
根据分配给该帧的比特数中编码该帧中所有非噪声条带可用的比特数,该帧中所有非噪声条带的配额的累加和,和该帧中的非噪声条带中配额为零的条带的数目,确定该帧中非噪声条带的每份配额对应的比特数。
具体而言,在帧中包括噪声条带时,可以将分配给该帧的比特数分为编码该帧中所有噪声条带可用的比特数,以及编码该帧中所有非噪声条带可用的比特数,二者的比例可以为该帧中所有噪声条带的复杂度的累加和与该帧中所有非噪声条带的复杂度的累加和的比例。噪声条带的每份配额对应的比特数和非噪声条带的每份配额对应的比特数分别与编码该帧中所有噪声条带可用的比特数和编码该帧中所有非噪声条带可用的比特数关联。
具体地,作为一个实施例,该帧中噪声条带的每份配额对应的比特数可以为,
size4Noise/(sumQuotaNoise+numQuota0Noise) (3)
其中,size4Noise为分配给该帧的比特数中编码该帧中所有噪声条带可用的比特数,sumQuotaNoise为该帧中所有噪声条带的配额的累加和,numQuota0Noise该帧中的噪声条带中配额为零的条带的数目;
类似地,该帧中非噪声条带的每份配额对应的比特数可以为,
size4NonNoise/(sumQuotaNonNoise+numQuota0NonNoise) (4)
其中,size4NonNoise为分配给该帧的比特数中编码该帧中所有非噪声条带可用的比特数,sumQuotaNonNoise为该帧中所有非噪声条带的配额的累加和,numQuota0NonNoise该帧中的非噪声条带中配额为零的条带的数目。
可选地,在本发明另一个实施例中,在该帧不包括噪声条带时,根据分配给该帧的比特数,该帧中所有非噪声条带的配额的累加和,和该帧中的非噪声条带中配额为零的条带的数目,确定每份配额对应的比特数。
具体地,作为一个实施例,在该帧不包括噪声条带时,每份配额对应的比特数可以为,
sizeTotal/(sumQuotaNonNoise+numQuota0NonNoise) (5)
其中,sizeTotal为分配给该帧的比特数,sumQuotaNonNoise为该帧中所有非噪声条带的配额的累加和,numQuota0NonNoise该帧中的非噪声条带中配额为零的条带的数目。
可选地,在本发明另一个实施例中,在该帧不包括噪声条带时,还可以根据如下的另一种方式确定每份配额对应的比特数:
在该帧不包括噪声条带时,
该帧中零条带行中的每一个零条带使用的编码比特数可以为预定值;
根据分配给该帧的比特数,该帧中所有零条带行中的零条带使用的编码比特数,该帧中零条带行中的零条带的数目,该帧中所有非噪声条带的配额的累加和,和该帧中的非噪声条带中配额为零的条带的数目,确定每份配额对应的比特数。
具体地,作为一个实施例,在该帧不包括噪声条带时,每份配额对应的比特数可以为,
remSize/(sumQuotaNonNoise+numQuota0NonNoise-numZeroSlice) (6)
其中,remSize为分配给该帧的比特数中,除去该帧中所有零条带行中的零条带使用的编码比特数后剩余的比特数,numZeroSlice为该帧中零条带行中的零条带的数目,sumQuotaNonNoise为该帧中所有非噪声条带的配额的累加和,numQuota0NonNoise该帧中的非噪声条带中配额为零的条带的数目。
可选地,这种方式可以在该帧满足以下条件之一时采用:
存在一个条带的配额大于或等于某一预定值;
在非零条带行中,存在至少一个条带的配额是0;
复杂度为0的条带的数目大于某一预定值。
若以上条件都不满足,则可以采用前一种方式。
以上详细描述了条带的配额,以及每份配额对应的比特数的确定方式,下面详细描述调整值的确定方式。
可选地,在本发明一个实施例中,可以根据该第一条带的配额和该帧中该第一条带附近的至少一个已编码条带的配额,确定该调整值。
具体而言,在本实施例中,所采用的至少一个已编码条带可以是该第一条带附近的条带,但应理解,本发明对所采用的已编码条带并不限定。
可选地,在本发明一个实施例中,可以根据该第一条带的配额和该帧中与该第一条带相邻的至少一个已编码条带的配额,确定该调整值。
也就是说,在本实施例中,所采用的至少一个已编码条带可以是与该第一条带相邻的条带。
应理解,所采用的至少一个已编码条带与编码顺序有关,例如,在编码顺序为从左到右、从上到下时,所采用的至少一个已编码条带可以为该第一条带的左侧、上方或左上的条带;在编码顺序为从右到左、从下到上时,所采用的至少一个已编码条带可以为该第一条带的右侧、下方或右下的条带。为了便于描述,以下以编码顺序为从左到右、从上到下为例进行说明,对于其他编码顺序可以以此进行等效变换。
可选地,在本发明一个实施例中,在该帧中该第一条带的左侧条带和上方条带中的至少一个满足第一条件时,根据该第一条带的配额和该第一条带的左侧条带和上方条带中的至少一个的配额,确定该调整值,
其中,该第一条带的左侧条带满足第一条件表示该第一条带不是该第一条带所在的条带行的第一个条带,
该第一条带的上方条带满足第一条件表示该第一条带所在的条带行不是该帧的第一个条带行,而且,
在该第一条带是非噪声条带时该第一条带上方的条带行是非噪声条带行或者在该第一条带是噪声条带时该第一条带上方的条带行是噪声条带行。
具体而言,条带满足第一条件表示该条带可用,即可以采用该条带。在本实施例中,在第一条带的左侧条带和上方条带中的至少一个可用时,根据该第一条带的配额和可用的条带的配额确定该调整值。
可选地,在该第一条带的左侧条带和上方条带中的至少一个满足第一条件时,可以采用以下方式确定该调整值。
若该第一条带的配额为0,且该第一条带的左侧条带和上方条带的配额均不为0,则确定该调整值为第一预定值。
在该帧中已编码的条带所使用的比特数大于分配给该帧中已编码的条带的比特数时,该第一预定值大于0,在该帧中已编码的条带所使用的比特数不大于分配给该帧中已编码的条带的比特数时,该第一预定值不大于0。
若该第一条带的配额不为0,且该第一条带的左侧条带和上方条带的配额均为0,则确定该调整值为第二预定值。
在该帧中已编码的条带所使用的比特数大于分配给该帧中已编码的条带的比特数时,该第二预定值大于0,在该帧中已编码的条带所使用的比特数不大于分配给该帧中已编码的条带的比特数时,该第二预定值不大于0。
若该第一条带的配额不为0,且该第一条带的左侧条带和上方条带中的至少一个的配额不为0,则根据该第一条带的配额,和该第一条带的左侧条带和上方条带中配额不为0的条带的配额和所使用的比特数,确定该调整值。
具体地,在该第一条带的左侧条带和上方条带的配额均不为0时,根据该第一条带的配额,该第一条带可用的比特数,该第一条带的左侧条带和上方条带的配额和所使用的比特数,用于编码该第一条带的左侧条带和上方条带的编码参数,确定编码参数预测值。
可选地,可以根据以下公式确定该编码参数预测值,
nextQIdx=predQIdx*predSize/alloSize (7)
其中,alloSize为该第一条带可用的比特数,在该第一条带的配额不为0时,该第一条带可用的比特数可以为该第一条带的配额与每份配额对应的比特数的乘积。
在该第一条带的左侧条带和上方条带的配额均不为0时,上述公式(7)中的predSize和predQIdx可以根据以下公式(8)-(11)确定,
predSizeT=sizeT*quotaC/quotaT (8)
predSizeL=sizeL*quotaC/quotaL (9)
predSize=(predSizeT+predSizeL)/2 (10)
predQIdx=(qIdxT+qIdxL)/2 (11)
其中,quotaC、quotaL和quotaT分别为该第一条带、该第一条带的左侧条带和该第一条带的上方条带的配额,qIdxL和qIdxT分别为用于编码该第一条带的左侧条带和上方条带的编码参数,sizeL和sizeT分别为该第一条带的左侧条带和该第一条带的上方条带所使用的比特数。
在该第一条带的左侧条带的配额不为0,该第一条带的上方条带的配额为0时,根据该第一条带的配额,该第一条带可用的比特数,该第一条带的左侧条带的配额和所使用的比特数,用于编码该第一条带的左侧条带的编码参数,确定编码参数预测值。
具体地,在该第一条带的左侧条带的配额不为0,该第一条带的上方条带的配额为0时,上述公式(7)中的predSize和predQIdx可以根据以下公式(12)-(14)确定,
predSize=predSizeL (12)
predSizeL=sizeL*quotaC/quotaL (13)
predQIdx=qIdxL (14)
在该第一条带的上方条带的配额不为0,该第一条带的左侧条带的配额为0时,根据该第一条带的配额,该第一条带可用的比特数,该第一条带的上方条带的配额和所使用的比特数,用于编码该第一条带的上方条带的编码参数,确定编码参数预测值。
具体地,在该第一条带的上方条带的配额不为0,该第一条带的左侧条带的配额为0时,上述公式(7)中的predSize和predQIdx可以根据以下公式(15)-(17)确定,
predSize=predSizeT (15)
predSizeT=sizeT*quotaC/quotaT (16)
predQIdx=qIdxT (17)
在得到编码参数预测值后,可以根据该编码参数预测值和用于编码第二条带的第二编码参数,确定该调整值,其中,该第二条带为该帧中已编码的最后一个条带。
具体地,可以根据以下公式确定该调整值,
qIdxDelta=nextQIdx–preQIdx(18)
其中,qIdxDelta为该调整值,preQIdx为该第二编码参数,nextQIdx为该编码参数预测值。
若该第一条带的配额为0,且该第一条带的左侧条带和上方条带中的至少一个的配额为0,则根据该第一条带的左侧条带和上方条带中配额为0的条带所使用的比特数,确定该调整值。
具体地,在该第一条带的左侧条带和上方条带的配额均为0时,根据该第一条带可用的比特数,该第一条带的左侧条带和上方条带所使用的比特数,用于编码该第一条带的左侧条带和上方条带的编码参数,确定编码参数预测值。
可选地,可以根据上述公式(7)确定该编码参数预测值。其中,在该第一条带的配额为0时,该第一条带可用的比特数alloSize可以为1份配额对应的比特数或者预定的比特数。
在该第一条带的左侧条带和上方条带的配额均为0时,上述公式(7)中的predSize和predQIdx可以根据以下公式(19)-(22)确定,
predSizeT=sizeT (19)
predSizeL=sizeL (20)
predSize=(predSizeT+predSizeL)/2 (21)
predQIdx=(qIdxT+qIdxL)/2 (22)
在该第一条带的左侧条带的配额为0,该第一条带的上方条带的配额不为0时,根据该第一条带可用的比特数,该第一条带的左侧条带所使用的比特数,用于编码该第一条带的左侧条带的编码参数,确定编码参数预测值。
具体地,在该第一条带的左侧条带的配额为0,该第一条带的上方条带的配额不为0时,上述公式(7)中的predSize和predQIdx可以根据以下公式(23)-(25)确定,
predSize=predSizeL (23)
predSizeL=sizeL (24)
predQIdx=qIdxL (25)
在该第一条带的上方条带的配额为0,该第一条带的左侧条带的配额不为0时,根据该第一条带可用的比特数,该第一条带的上方条带所使用的比特数,用于编码该第一条带的上方条带的编码参数,确定编码参数预测值。
具体地,在该第一条带的上方条带的配额为0,该第一条带的左侧条带的配额不为0时,上述公式(7)中的predSize和predQIdx可以根据以下公式(26)-(28)确定,
predSize=predSizeT (26)
predSizeT=sizeT (27)
predQIdx=qIdxT (28)
类似地,在得到编码参数预测值后,可以根据该编码参数预测值和用于编码第二条带的第二编码参数,确定该调整值。例如,可以根据上述公式(18)确定该调整值。
可选地,在本发明各种实施例中,在该帧中已编码的条带所使用的比特数大于分配给该帧中已编码的条带的比特数时,限定该调整值大于0,在该帧中已编码的条带所使用的比特数小于分配给该帧中已编码的条带的比特数时,限定该调整值小于0。
也就是说,在该帧中,如果已编码条带积累的比特数超过了分配给这些条带的比特数,那么限定该调整值大于零;如果已编码条带积累的比特数小于了分配给这些条带的比特数,那么限定该调整值小于零。
320,根据该调整值,确定该第一编码参数。
在得到调整值后,基于该调整值确定用于编码该第一条带的编码参数。
可选地,在本发明一个实施例中,可以根据该调整值和第二编码参数,确定该第一编码参数,其中,该第二编码参数为用于编码第二条带的编码参数,该第二条带为该帧中已编码的最后一个条带。
可选地,作为一个实施例,该第一编码参数可以为该第二编码参数与该调整值的和,如以下公式(29)所示。
qIdx=preQIdx+qIdxDelta (29)
其中,qIdx为该第一编码参数,preQIdx为该第二编码参数,qIdxDelta该调整值。
可选地,作为一个实施例,在该帧中未编码的条带的数目不大于某一预定值,且该帧中已编码的条带所使用的比特数大于分配给该帧中已编码的条带的比特数时,该第一编码参数为该第二编码参数与该调整值以及大于0的预定值的和,如以下公式(30)所示。
qIdx=preQIdx+N+qIdxDelta (30)
其中,qIdx为该第一编码参数,preQIdx为该第二编码参数,N为大于0的预定值,qIdxDelta该调整值。
可选地,在本发明一个实施例中,在该第一编码参数超出编码参数取值范围时,限定该第一编码参数在该编码参数取值范围内。
编码参数要限定在编码参数取值范围内。若通过上述方式得到的第一编码参数超出编码参数取值范围,则限定该第一编码参数在该编码参数取值范围内。
对于编码参数和编码参数取值范围可以设定初始值,编码参数可通过上述方式不断调整,编码参数取值范围也可以不断调整。
可选地,如图4所示,该方法300还可以包括:
302,确定初始编码参数。
本发明对初始编码参数的确定方式不做限定,例如,可以根据数据特性设定。
可选地,对于该帧中的非噪声条带,可以根据该帧中所有非噪声条带的平均复杂度确定初始编码参数,其中,该平均复杂度越小时,该初始编码参数越小。可选地,在该平均复杂度大于某一预定值时,若该帧中包括包含有规律高频分量的非噪声条带,则该初始编码参数可以为预定值N5;若该帧中不包括包含有规律高频分量的非噪声条带,则该初始编码参数为预定值N6,其中N6大于N5。
可选地,对于该帧中的噪声条带,可以确定初始编码参数为预定值N7,N7不小于N6。
可选地,如图4所示,该方法300还可以包括:
304,确定初始编码参数取值范围。
也就是说,确定编码参数取值范围的初始值。
可选地,可以根据初始编码参数,确定初始编码参数取值范围。
具体地,作为一个实施例,该初始编码参数取值范围的上限可以为,
maxQIdx=qIdx0+delta1 (31)
该初始编码参数取值范围的下限可以为,
minQIdx=qIdx0–delta2 (32)
其中,maxQIdx和minQIdx分别为该初始编码参数取值范围的上限和下限,qIdx0为初始编码参数,delta1和delta2为大于零的常数。
可选地,在本发明一个实施例中,在该帧中未编码的条带(表示为第三条带)的左侧条带和上方条带均满足第二条件时,确定用于编码该第三条带的第三编码参数为初始编码参数,
其中,该第三条带的左侧条带满足第二条件表示该第三条带是该第三条带所在的条带行的第一个条带,
该第三条带的上方条带满足第二条件表示该第三条带所在的条带行是该帧的第一个条带行,或者,在该第三条带是非噪声条带时该第三条带上方的条带行是噪声条带行,或者,在该第三条带是噪声条带时该第三条带上方的条带行是非噪声条带行。
与第一条件相反,条带满足第二条件表示该条带不可用。在某一条带的左侧条带和上方条带均不可用时,用于编码该条带的编码参数采用初始编码参数。
这样,结合初始编码参数以及前述的根据调整值确定编码参数的方式,可以得到用于编码每一条带的编码参数。
可选地,用于限定编码参数的取值的编码参数取值范围也可以不断调整。
可选地,在本发明一个实施例中,可以根据已编码结果,调整该编码参数取值范围。
具体地,若在该帧的编码过程中,连续出现该帧中已编码的条带所使用的比特数小于分配给该帧中已编码的条带的比特数的情况,则将该编码参数取值范围的下限减小某一预定值。可选地,在该帧的编码过程中该编码参数取值范围的下限累积减小的和不大于某一预定值。
若在该帧的编码过程中,连续出现该帧中已编码的条带所使用的比特数大于分配给该帧中已编码的条带的比特数的情况,则将该编码参数取值范围的上限增大某一预定值。可选地,在该帧的编码过程中该编码参数取值范围的上限累积增大的和不大于某一预定值。
可选地,在本发明一个实施例中,若该帧中已编码的条带所使用的比特数大于分配给该帧中已编码的条带的比特数,在编码该第一条带时去除该第一条带中的预定高频系数对应的分量。
具体而言,当编码产生的比特数过高时,在下一条带编码时,将根据设定参数,特定的高频系数会被cut-off(即视为零),不再进行编码。
例如,如图5所示,假如cut-off的系数值设置为60,则图中高于60的系数都将被视为0。
本发明实施例的码率控制的方法,基于配额确定编码参数,可以适时地对编码参数进行调整,从而能够有效地控制码率。
上文中详细描述了根据本发明实施例的码率控制的方法,下面将描述根据本发明实施例的计算机系统和码率控制的装置。
图6示出了本发明实施例的计算机系统600的示意性框图。如图6所示,该计算机系统600可以包括处理器610和存储器620。
应理解,该计算机系统600还可以包括其他计算机系统中通常所包括的部件,例如,输入输出设备、通信接口等,本发明对此并不限定。
存储器620用于存储计算机可执行指令。
存储器620可以是各种种类的存储器,例如可以包括高速随机存取存储器(RandomAccess Memory,RAM),还可以包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器,本发明对此并不限定。
处理器610用于访问该存储器620,并执行该计算机可执行指令,以进行上述本发明实施例的码率控制的方法中的操作。
处理器610可以包括ARM处理器,FPGA,CPU,GPU等,本发明对此并不限定。
图7示出了本发明实施例的码率控制的装置700的示意性框图。该装置700可以执行上述本发明实施例的码率控制的方法。该装置700可以设置于上述系统100中,例如,该装置700可以为图1中的码率控制器106。
如图7所示,该装置700可以包括:
调整值确定模块710,用于根据帧中未编码的第一条带的配额和该帧中至少一个已编码条带的配额,确定用于编码该第一条带的第一编码参数的调整值,其中,该配额关联编码条带使用比特的份数;
编码参数确定模块720,用于根据该调整值,确定该第一编码参数。
本发明实施例的码率控制的装置,基于配额确定编码参数,可以适时地对编码参数进行调整,从而能够有效地控制码率。
可选地,在本发明一个实施例中,该调整值确定模块710用于,
根据该第一条带的配额和该帧中与该第一条带相邻的至少一个已编码条带的配额,确定该调整值。
可选地,在本发明一个实施例中,该调整值确定模块710用于,
在该帧中该第一条带的左侧条带和上方条带中的至少一个满足第一条件时,根据该第一条带的配额和该第一条带的左侧条带和上方条带中的至少一个的配额,确定该调整值,
其中,该第一条带的左侧条带满足第一条件表示该第一条带不是该第一条带所在的条带行的第一个条带,
该第一条带的上方条带满足第一条件表示该第一条带所在的条带行不是该帧的第一个条带行,而且,
在该第一条带是非噪声条带时该第一条带上方的条带行是非噪声条带行或者在该第一条带是噪声条带时该第一条带上方的条带行是噪声条带行。
可选地,在本发明一个实施例中,该调整值确定模块710用于,
若该第一条带的配额为0,且该第一条带的左侧条带和上方条带的配额均不为0,则确定该调整值为第一预定值,
其中,在该帧中已编码的条带所使用的比特数大于分配给该帧中已编码的条带的比特数时,该第一预定值大于0,在该帧中已编码的条带所使用的比特数不大于分配给该帧中已编码的条带的比特数时,该第一预定值不大于0;或者
若该第一条带的配额不为0,且该第一条带的左侧条带和上方条带的配额均为0,则确定该调整值为第二预定值,
其中,在该帧中已编码的条带所使用的比特数大于分配给该帧中已编码的条带的比特数时,该第二预定值大于0,在该帧中已编码的条带所使用的比特数不大于分配给该帧中已编码的条带的比特数时,该第二预定值不大于0。
可选地,在本发明一个实施例中,该调整值确定模块710用于,
若该第一条带的配额不为0,且该第一条带的左侧条带和上方条带中的至少一个的配额不为0,则根据该第一条带的配额,和该第一条带的左侧条带和上方条带中配额不为0的条带的配额和所使用的比特数,确定该调整值。
可选地,在本发明一个实施例中,该调整值确定模块710用于,
在该第一条带的左侧条带和上方条带的配额均不为0时,根据该第一条带的配额,该第一条带可用的比特数,该第一条带的左侧条带和上方条带的配额和所使用的比特数,用于编码该第一条带的左侧条带和上方条带的编码参数,确定编码参数预测值,或者,
在该第一条带的左侧条带的配额不为0,该第一条带的上方条带的配额为0时,根据该第一条带的配额,该第一条带可用的比特数,该第一条带的左侧条带的配额和所使用的比特数,用于编码该第一条带的左侧条带的编码参数,确定编码参数预测值,或者,
在该第一条带的上方条带的配额不为0,该第一条带的左侧条带的配额为0时,根据该第一条带的配额,该第一条带可用的比特数,该第一条带的上方条带的配额和所使用的比特数,用于编码该第一条带的上方条带的编码参数,确定编码参数预测值;
根据该编码参数预测值和用于编码第二条带的第二编码参数,确定该调整值,其中,该第二条带为该帧中已编码的最后一个条带。
可选地,在本发明一个实施例中,该调整值确定模块710用于,
若该第一条带的配额为0,且该第一条带的左侧条带和上方条带中的至少一个的配额为0,则根据该第一条带的左侧条带和上方条带中配额为0的条带所使用的比特数,确定该调整值。
可选地,在本发明一个实施例中,该调整值确定模块710用于,
在该第一条带的左侧条带和上方条带的配额均为0时,根据该第一条带可用的比特数,该第一条带的左侧条带和上方条带所使用的比特数,用于编码该第一条带的左侧条带和上方条带的编码参数,确定编码参数预测值,或者,
在该第一条带的左侧条带的配额为0,该第一条带的上方条带的配额不为0时,根据该第一条带可用的比特数,该第一条带的左侧条带所使用的比特数,用于编码该第一条带的左侧条带的编码参数,确定编码参数预测值,或者,
在该第一条带的上方条带的配额为0,该第一条带的左侧条带的配额不为0时,根据该第一条带可用的比特数,该第一条带的上方条带所使用的比特数,用于编码该第一条带的上方条带的编码参数,确定编码参数预测值;
根据该编码参数预测值和用于编码第二条带的第二编码参数,确定该调整值,其中,该第二条带为该帧中已编码的最后一个条带。
可选地,在本发明一个实施例中,该编码参数确定模块720用于,
根据该调整值和第二编码参数,确定该第一编码参数,其中,该第二编码参数为用于编码第二条带的编码参数,该第二条带为该帧中已编码的最后一个条带。
可选地,在本发明一个实施例中,该第一编码参数为该第二编码参数与该调整值的和。
可选地,在本发明一个实施例中,在该帧中未编码的条带的数目不大于第三预定值,且该帧中已编码的条带所使用的比特数大于分配给该帧中已编码的条带的比特数时,该第一编码参数为该第二编码参数与该调整值以及大于0的第四预定值的和。
可选地,在本发明一个实施例中,该编码参数确定模块720用于,
在该第一编码参数超出编码参数取值范围时,限定该第一编码参数在该编码参数取值范围内。
可选地,在本发明一个实施例中,该装置700还包括:
取值范围确定模块730,用于根据已编码结果,调整该编码参数取值范围。
可选地,在本发明一个实施例中,该装置700还包括:
配额确定模块740,用于确定该帧中每个条带的配额。
可选地,在本发明一个实施例中,该配额确定模块740用于,
根据该帧中每个条带的数据特性确定该帧中每个条带的配额。
可选地,在本发明一个实施例中,该帧中每个条带的配额与每个条带的数据特性之间为正向映射关系。
可选地,在本发明一个实施例中,该装置700还包括:
比特数确定模块750,用于确定每份配额对应的比特数。
可选地,在本发明一个实施例中,该比特数确定模块750用于,在该帧包括噪声条带时,
根据分配给该帧的比特数中编码该帧中所有噪声条带可用的比特数,该帧中所有噪声条带的配额的累加和,和该帧中的噪声条带中配额为零的条带的数目,确定该帧中噪声条带的每份配额对应的比特数;
根据分配给该帧的比特数中编码该帧中所有非噪声条带可用的比特数,该帧中所有非噪声条带的配额的累加和,和该帧中的非噪声条带中配额为零的条带的数目,确定该帧中非噪声条带的每份配额对应的比特数。
可选地,在本发明一个实施例中,在该帧不包括噪声条带时,根据分配给该帧的比特数,该帧中所有非噪声条带的配额的累加和,和该帧中的非噪声条带中配额为零的条带的数目,确定每份配额对应的比特数。
可选地,在本发明一个实施例中,在该帧不包括噪声条带时,
该帧中零条带行中的每一个零条带使用的编码比特数为第十一预定值;
根据分配给该帧的比特数,该帧中所有零条带行中的零条带使用的编码比特数,该帧中零条带行中的零条带的数目,该帧中所有非噪声条带的配额的累加和,和该帧中的非噪声条带中配额为零的条带的数目,确定每份配额对应的比特数。
可选地,在本发明一个实施例中,该编码参数确定模块720还用于,确定初始编码参数。
可选地,在本发明一个实施例中,该取值范围确定模块730还用于,确定初始编码参数取值范围。
可选地,在本发明一个实施例中,该编码参数确定模块720用于,
在该帧中未编码的第三条带的左侧条带和上方条带均满足第二条件时,确定用于编码该第三条带的第三编码参数为初始编码参数,
其中,该第三条带的左侧条带满足第二条件表示该第三条带是该第三条带所在的条带行的第一个条带,
该第三条带的上方条带满足第二条件表示该第三条带所在的条带行是该帧的第一个条带行,或者,在该第三条带是非噪声条带时该第三条带上方的条带行是噪声条带行,或者,在该第三条带是噪声条带时该第三条带上方的条带行是非噪声条带行。
根据本发明实施例的计算机系统和码率控制的装置可对应于根据本发明实施例的码率控制的方法的执行主体,并且计算机系统和码率控制的装置中的各个模块的上述和其它操作和/或功能分别为了实现前述各个方法的相应流程,为了简洁,在此不再赘述。
本发明实施例还提供了一种计算机存储介质,该计算机存储介质中存储有程序代码,该程序代码可以用于指示执行上述本发明实施例的码率控制的方法。
应理解,在本发明实施例中,术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系。例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (70)

1.一种码率控制的方法,其特征在于,包括:
根据帧中第五条带的复杂度,确定所述第五条带的配额;
根据所述帧中第六条带的复杂度,确定所述第六条带的配额;
其中,所述配额关联编码条带使用比特的份数,所述第五条带的复杂度大于所述第六条带的复杂度,且所述第五条带的配额大于所述第六条带的配额。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述帧中每个条带的复杂度,确定所述帧中每个条带的类型。
3.根据权利要求2所述的方法,其特征在于,所述根据帧中每个条带的复杂度,确定所述帧中每个条带的类型,包括:
若所述帧中第一条带行中的条带的复杂度的平均值大于第十五预定值,且所述第一条带行中复杂度大于第十六预定值的条带的数目大于第十七预定值,则所述第一条带行为噪声条带行,噪声条带行中的条带为噪声条带;
否则,所述第一条带行为非噪声条带行,非噪声条带行中的条带为非噪声条带。
4.根据权利要求3所述的方法,其特征在于,所述根据帧中每个条带的复杂度,确定所述帧中每个条带的类型,还包括:
若非噪声条带行中的第四条带的复杂度大于第十八预定值,所述第十八预定值不小于所述第十六预定值,则所述第四条带为包含有规律高频分量的非噪声条带;或者
若非噪声条带行中的每一个条带的复杂度为0,则为零条带行,零条带行中的条带为零条带。
5.根据权利要求1所述的方法,其特征在于,在所述第五条带和所述第六条带为噪声条带时,根据所述第五条带的复杂度和所述帧中所有噪声条带的复杂度的累加和,确定所述第五条带的配额;根据所述第六条带的复杂度和所述帧中所有噪声条带的复杂度的累加和,确定所述第六条带的配额。
6.根据权利要求1所述的方法,其特征在于,在所述第五条带和所述第六条带为非噪声条带时,根据所述第五条带的复杂度和所述帧中所有非噪声条带的复杂度的累加和,确定所述第五条带的配额;根据所述第六条带的复杂度和所述帧中所有非噪声条带的复杂度的累加和,确定所述第六条带的配额。
7.根据权利要求6所述的方法,其特征在于,在所述第五条带的配额大于第九预定值时,所述第五条带的配额被设置为所述第九预定值。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
确定每份配额对应的比特数。
9.根据权利要求8所述的方法,其特征在于,在所述帧包括噪声条带时,
根据分配给所述帧的比特数中编码所述帧中所有噪声条带可用的比特数,所述帧中所有噪声条带的配额的累加和,和所述帧中的噪声条带中配额为零的条带的数目,确定所述帧中噪声条带的每份配额对应的比特数;
根据分配给所述帧的比特数中编码所述帧中所有非噪声条带可用的比特数,所述帧中所有非噪声条带的配额的累加和,和所述帧中的非噪声条带中配额为零的条带的数目,确定所述帧中非噪声条带的每份配额对应的比特数。
10.根据权利要求8所述的方法,其特征在于,在所述帧不包括噪声条带时,根据分配给所述帧的比特数,所述帧中所有非噪声条带的配额的累加和,和所述帧中的非噪声条带中配额为零的条带的数目,确定每份配额对应的比特数。
11.根据权利要求8所述的方法,其特征在于,在所述帧不包括噪声条带时,
所述帧中零条带行中的每一个零条带使用的编码比特数为第十预定值;
根据分配给所述帧的比特数,所述帧中所有零条带行中的零条带使用的编码比特数,所述帧中零条带行中的零条带的数目,所述帧中所有非噪声条带的配额的累加和,和所述帧中的非噪声条带中配额为零的条带的数目,确定每份配额对应的比特数。
12.根据权利要求1至11中任一项所述的方法,其特征在于,所述方法还包括:
根据所述帧中未编码的第一条带的配额和所述帧中至少一个已编码条带的配额,确定用于编码所述第一条带的第一编码参数的调整值;
根据所述调整值,确定所述第一编码参数。
13.根据权利要求12所述的方法,其特征在于,所述第一编码参数为量化参数。
14.根据权利要求12所述的方法,其特征在于,所述根据帧中未编码的第一条带的配额和所述帧中至少一个已编码条带的配额,确定用于编码所述第一条带的第一编码参数的调整值,包括:
根据所述第一条带的配额和所述帧中所述第一条带附近的至少一个已编码条带的配额,确定所述调整值。
15.根据权利要求14所述的方法,其特征在于,所述根据所述第一条带的配额和所述帧中所述第一条带附近的至少一个已编码条带的配额,确定所述调整值,包括:
根据所述第一条带的配额和所述帧中与所述第一条带相邻的至少一个已编码条带的配额,确定所述调整值。
16.根据权利要求15所述的方法,其特征在于,所述根据所述第一条带的配额和所述帧中与所述第一条带相邻的至少一个已编码条带的配额,确定所述调整值,包括:
在所述帧中所述第一条带的左侧条带和上方条带中的至少一个满足第一条件时,根据所述第一条带的配额和所述第一条带的左侧条带和上方条带中的至少一个的配额,确定所述调整值,
其中,所述第一条带的左侧条带满足第一条件表示所述第一条带不是所述第一条带所在的条带行的第一个条带,
所述第一条带的上方条带满足第一条件表示所述第一条带所在的条带行不是所述帧的第一个条带行,而且,
在所述第一条带是非噪声条带时所述第一条带上方的条带行是非噪声条带行或者在所述第一条带是噪声条带时所述第一条带上方的条带行是噪声条带行。
17.根据权利要求16所述的方法,其特征在于,所述根据所述第一条带的配额和所述第一条带的左侧条带和上方条带中的至少一个的配额,确定所述调整值,包括:
若所述第一条带的配额为0,且所述第一条带的左侧条带和上方条带的配额均不为0,则确定所述调整值为第一预定值,
其中,在所述帧中已编码的条带所使用的比特数大于分配给所述帧中已编码的条带的比特数时,所述第一预定值大于0,在所述帧中已编码的条带所使用的比特数不大于分配给所述帧中已编码的条带的比特数时,所述第一预定值不大于0;或者
若所述第一条带的配额不为0,且所述第一条带的左侧条带和上方条带的配额均为0,则确定所述调整值为第二预定值,
其中,在所述帧中已编码的条带所使用的比特数大于分配给所述帧中已编码的条带的比特数时,所述第二预定值大于0,在所述帧中已编码的条带所使用的比特数不大于分配给所述帧中已编码的条带的比特数时,所述第二预定值不大于0。
18.根据权利要求16所述的方法,其特征在于,所述根据所述第一条带的配额和所述第一条带的左侧条带和上方条带中的至少一个的配额,确定所述调整值,包括:
若所述第一条带的配额不为0,且所述第一条带的左侧条带和上方条带中的至少一个的配额不为0,则根据所述第一条带的配额,和所述第一条带的左侧条带和上方条带中配额不为0的条带的配额和所使用的比特数,确定所述调整值。
19.根据权利要求18所述的方法,其特征在于,所述根据所述第一条带的配额,和所述第一条带的左侧条带和上方条带中配额不为0的条带的配额和所使用的比特数,确定所述调整值,包括:
在所述第一条带的左侧条带和上方条带的配额均不为0时,根据所述第一条带的配额,所述第一条带可用的比特数,所述第一条带的左侧条带和上方条带的配额和所使用的比特数,用于编码所述第一条带的左侧条带和上方条带的编码参数,确定编码参数预测值,或者,
在所述第一条带的左侧条带的配额不为0,所述第一条带的上方条带的配额为0时,根据所述第一条带的配额,所述第一条带可用的比特数,所述第一条带的左侧条带的配额和所使用的比特数,用于编码所述第一条带的左侧条带的编码参数,确定编码参数预测值,或者,
在所述第一条带的上方条带的配额不为0,所述第一条带的左侧条带的配额为0时,根据所述第一条带的配额,所述第一条带可用的比特数,所述第一条带的上方条带的配额和所使用的比特数,用于编码所述第一条带的上方条带的编码参数,确定编码参数预测值;
根据所述编码参数预测值和用于编码第二条带的第二编码参数,确定所述调整值,其中,所述第二条带为所述帧中已编码的最后一个条带。
20.根据权利要求19所述的方法,其特征在于,所述第一条带可用的比特数为所述第一条带的配额与每份配额对应的比特数的乘积。
21.根据权利要求16所述的方法,其特征在于,所述根据所述第一条带的配额和所述第一条带的左侧条带和上方条带中的至少一个的配额,确定所述调整值,包括:
若所述第一条带的配额为0,且所述第一条带的左侧条带和上方条带中的至少一个的配额为0,则根据所述第一条带的左侧条带和上方条带中配额为0的条带所使用的比特数,确定所述调整值。
22.根据权利要求21所述的方法,其特征在于,所述根据所述第一条带的左侧条带和上方条带中配额为0的条带所使用的比特数,确定所述调整值包括:
在所述第一条带的左侧条带和上方条带的配额均为0时,根据所述第一条带可用的比特数,所述第一条带的左侧条带和上方条带所使用的比特数,用于编码所述第一条带的左侧条带和上方条带的编码参数,确定编码参数预测值,或者,
在所述第一条带的左侧条带的配额为0,所述第一条带的上方条带的配额不为0时,根据所述第一条带可用的比特数,所述第一条带的左侧条带所使用的比特数,用于编码所述第一条带的左侧条带的编码参数,确定编码参数预测值,或者,
在所述第一条带的上方条带的配额为0,所述第一条带的左侧条带的配额不为0时,根据所述第一条带可用的比特数,所述第一条带的上方条带所使用的比特数,用于编码所述第一条带的上方条带的编码参数,确定编码参数预测值;
根据所述编码参数预测值和用于编码第二条带的第二编码参数,确定所述调整值,其中,所述第二条带为所述帧中已编码的最后一个条带。
23.根据权利要求22所述的方法,其特征在于,所述第一条带可用的比特数为1份配额对应的比特数或者预定的比特数。
24.根据权利要求18所述的方法,其特征在于,在所述帧中已编码的条带所使用的比特数大于分配给所述帧中已编码的条带的比特数时,限定所述调整值大于0,在所述帧中已编码的条带所使用的比特数小于分配给所述帧中已编码的条带的比特数时,限定所述调整值小于0。
25.根据权利要求12所述的方法,其特征在于,所述根据所述调整值,确定所述第一编码参数,包括:
根据所述调整值和第二编码参数,确定所述第一编码参数,其中,所述第二编码参数为用于编码第二条带的编码参数,所述第二条带为所述帧中已编码的最后一个条带。
26.根据权利要求25所述的方法,其特征在于,所述第一编码参数为所述第二编码参数与所述调整值的和。
27.根据权利要求25所述的方法,其特征在于,在所述帧中未编码的条带的数目不大于第三预定值,且所述帧中已编码的条带所使用的比特数大于分配给所述帧中已编码的条带的比特数时,所述第一编码参数为所述第二编码参数与所述调整值以及大于0的第四预定值的和。
28.根据权利要求25所述的方法,其特征在于,在所述第一编码参数超出编码参数取值范围时,限定所述第一编码参数在所述编码参数取值范围内。
29.根据权利要求28所述的方法,其特征在于,在所述确定所述第一编码参数之前,所述方法还包括:
根据已编码结果,调整所述编码参数取值范围。
30.根据权利要求29所述的方法,其特征在于,所述调整所述编码参数取值范围,包括:
若在所述帧的编码过程中,连续出现所述帧中已编码的条带所使用的比特数小于分配给所述帧中已编码的条带的比特数的情况,则将所述编码参数取值范围的下限减小第五预定值。
31.根据权利要求30所述的方法,其特征在于,在所述帧的编码过程中所述编码参数取值范围的下限累积减小的和不大于第六预定值。
32.根据权利要求29述的方法,其特征在于,所述调整所述编码参数取值范围,包括:
若在所述帧的编码过程中,连续出现所述帧中已编码的条带所使用的比特数大于分配给所述帧中已编码的条带的比特数的情况,则将所述编码参数取值范围的上限增大第七预定值。
33.根据权利要求32所述的方法,其特征在于,在所述帧的编码过程中所述编码参数取值范围的上限累积增大的和不大于第八预定值。
34.根据权利要求12所述的方法,其特征在于,所述方法还包括:
若所述帧中已编码的条带所使用的比特数大于分配给所述帧中已编码的条带的比特数,在编码所述第一条带时去除所述第一条带中的预定高频系数对应的分量。
35.根据权利要求12所述的方法,其特征在于,所述方法还包括:
确定初始编码参数。
36.根据权利要求35所述的方法,其特征在于,所述确定初始编码参数,包括:
对于所述帧中的非噪声条带,根据所述帧中所有非噪声条带的平均复杂度确定所述初始编码参数。
37.根据权利要求36所述的方法,其特征在于,在所述平均复杂度大于第十一预定值时,
若所述帧中包括包含有规律高频分量的非噪声条带,则所述初始编码参数为第十二预定值;若所述帧中不包括包含有规律高频分量的非噪声条带,则所述初始编码参数为第十三预定值,其中所述第十三预定值大于所述第十二预定值。
38.根据权利要求35所述的方法,其特征在于,所述确定初始编码参数,包括:
对于所述帧中的噪声条带,确定所述初始编码参数为第十四预定值。
39.根据权利要求12所述的方法,其特征在于,所述方法还包括:
确定初始编码参数取值范围。
40.根据权利要求39所述的方法,其特征在于,所述确定初始编码参数取值范围,包括:
根据初始编码参数,确定所述初始编码参数取值范围。
41.根据权利要求12所述的方法,其特征在于,所述方法还包括:
在所述帧中未编码的第三条带的左侧条带和上方条带均满足第二条件时,确定用于编码所述第三条带的第三编码参数为初始编码参数,
其中,所述第三条带的左侧条带满足第二条件表示所述第三条带是所述第三条带所在的条带行的第一个条带,
所述第三条带的上方条带满足第二条件表示所述第三条带所在的条带行是所述帧的第一个条带行,或者,在所述第三条带是非噪声条带时所述第三条带上方的条带行是噪声条带行,或者,在所述第三条带是噪声条带时所述第三条带上方的条带行是非噪声条带行。
42.一种计算机系统,其特征在于,包括:
存储器,用于存储计算机可执行指令;
处理器,用于访问所述存储器,并执行所述计算机可执行指令,以进行根据权利要求1至41中任一项所述的方法中的操作。
43.一种码率控制的装置,其特征在于,包括:
配额确定模块,用于:
根据帧中第五条带的复杂度,确定所述第五条带的配额;
根据所述帧中第六条带的复杂度,确定所述第六条带的配额;
其中,所述配额关联编码条带使用比特的份数,所述第五条带的复杂度大于所述第六条带的复杂度,且所述第五条带的配额大于所述第六条带的配额。
44.根据权利要求43所述的装置,其特征在于,所述配额确定模块还用于根据所述帧中每个条带的复杂度,确定所述帧中每个条带的类型。
45.根据权利要求44所述的装置,其特征在于,所述配额确定模块用于根据以下方式确定所述帧中每个条带的类型:
若所述帧中第一条带行中的条带的复杂度的平均值大于第十五预定值,且所述第一条带行中复杂度大于第十六预定值的条带的数目大于第十七预定值,则所述第一条带行为噪声条带行,噪声条带行中的条带为噪声条带;
否则,所述第一条带行为非噪声条带行,非噪声条带行中的条带为非噪声条带。
46.根据权利要求45所述的装置,其特征在于,若非噪声条带行中的第四条带的复杂度大于第十八预定值,所述第十八预定值不小于所述第十六预定值,则所述第四条带为包含有规律高频分量的非噪声条带;或者
若非噪声条带行中的每一个条带的复杂度为0,则为零条带行,零条带行中的条带为零条带。
47.根据权利要求43所述的装置,其特征在于,所述配额确定模块用于,在所述第五条带和所述第六条带为噪声条带时,根据所述第五条带的复杂度和所述帧中所有噪声条带的复杂度的累加和,确定所述第五条带的配额;根据所述第六条带的复杂度和所述帧中所有噪声条带的复杂度的累加和,确定所述第六条带的配额。
48.根据权利要求43所述的装置,其特征在于,所述配额确定模块用于在所述第五条带和所述第六条带为非噪声条带时,根据所述第五条带的复杂度和所述帧中所有非噪声条带的复杂度的累加和,确定所述第五条带的配额;根据所述第六条带的复杂度和所述帧中所有非噪声条带的复杂度的累加和,确定所述第六条带的配额。
49.根据权利要求48所述的装置,其特征在于,在所述第五条带的配额大于第九预定值时,所述第五条带的配额被设置为所述第九预定值。
50.根据权利要求43所述的装置,其特征在于,所述装置还包括:
比特数确定模块,用于确定每份配额对应的比特数。
51.根据权利要求50所述的装置,其特征在于,所述比特数确定模块用于,在所述帧包括噪声条带时,
根据分配给所述帧的比特数中编码所述帧中所有噪声条带可用的比特数,所述帧中所有噪声条带的配额的累加和,和所述帧中的噪声条带中配额为零的条带的数目,确定所述帧中噪声条带的每份配额对应的比特数;
根据分配给所述帧的比特数中编码所述帧中所有非噪声条带可用的比特数,所述帧中所有非噪声条带的配额的累加和,和所述帧中的非噪声条带中配额为零的条带的数目,确定所述帧中非噪声条带的每份配额对应的比特数。
52.根据权利要求50所述的装置,其特征在于,所述比特数确定模块用于,在所述帧不包括噪声条带时,根据分配给所述帧的比特数,所述帧中所有非噪声条带的配额的累加和,和所述帧中的非噪声条带中配额为零的条带的数目,确定每份配额对应的比特数。
53.根据权利要求50所述的装置,其特征在于,在所述帧不包括噪声条带时,
所述帧中零条带行中的每一个零条带使用的编码比特数为第十预定值;
根据分配给所述帧的比特数,所述帧中所有零条带行中的零条带使用的编码比特数,所述帧中零条带行中的零条带的数目,所述帧中所有非噪声条带的配额的累加和,和所述帧中的非噪声条带中配额为零的条带的数目,确定每份配额对应的比特数。
54.根据权利要求43至53中任一项所述的装置,其特征在于,所述装置还包括:
调整值确定模块,用于根据帧中未编码的第一条带的配额和所述帧中至少一个已编码条带的配额,确定用于编码所述第一条带的第一编码参数的调整值,其中,所述配额关联编码条带使用比特的份数;
编码参数确定模块,用于根据所述调整值,确定所述第一编码参数。
55.根据权利要求54所述的装置,其特征在于,所述第一编码参数为量化参数。
56.根据权利要求54所述的装置,其特征在于,所述调整值确定模块用于,
根据所述第一条带的配额和所述帧中与所述第一条带相邻的至少一个已编码条带的配额,确定所述调整值。
57.根据权利要求56所述的装置,其特征在于,所述调整值确定模块用于,
在所述帧中所述第一条带的左侧条带和上方条带中的至少一个满足第一条件时,根据所述第一条带的配额和所述第一条带的左侧条带和上方条带中的至少一个的配额,确定所述调整值,
其中,所述第一条带的左侧条带满足第一条件表示所述第一条带不是所述第一条带所在的条带行的第一个条带,
所述第一条带的上方条带满足第一条件表示所述第一条带所在的条带行不是所述帧的第一个条带行,而且,
在所述第一条带是非噪声条带时所述第一条带上方的条带行是非噪声条带行或者在所述第一条带是噪声条带时所述第一条带上方的条带行是噪声条带行。
58.根据权利要求57所述的装置,其特征在于,所述调整值确定模块用于,
若所述第一条带的配额为0,且所述第一条带的左侧条带和上方条带的配额均不为0,则确定所述调整值为第一预定值,
其中,在所述帧中已编码的条带所使用的比特数大于分配给所述帧中已编码的条带的比特数时,所述第一预定值大于0,在所述帧中已编码的条带所使用的比特数不大于分配给所述帧中已编码的条带的比特数时,所述第一预定值不大于0;或者
若所述第一条带的配额不为0,且所述第一条带的左侧条带和上方条带的配额均为0,则确定所述调整值为第二预定值,
其中,在所述帧中已编码的条带所使用的比特数大于分配给所述帧中已编码的条带的比特数时,所述第二预定值大于0,在所述帧中已编码的条带所使用的比特数不大于分配给所述帧中已编码的条带的比特数时,所述第二预定值不大于0。
59.根据权利要求57所述的装置,其特征在于,所述调整值确定模块用于,
若所述第一条带的配额不为0,且所述第一条带的左侧条带和上方条带中的至少一个的配额不为0,则根据所述第一条带的配额,和所述第一条带的左侧条带和上方条带中配额不为0的条带的配额和所使用的比特数,确定所述调整值。
60.根据权利要求59所述的装置,其特征在于,所述调整值确定模块用于,
在所述第一条带的左侧条带和上方条带的配额均不为0时,根据所述第一条带的配额,所述第一条带可用的比特数,所述第一条带的左侧条带和上方条带的配额和所使用的比特数,用于编码所述第一条带的左侧条带和上方条带的编码参数,确定编码参数预测值,或者,
在所述第一条带的左侧条带的配额不为0,所述第一条带的上方条带的配额为0时,根据所述第一条带的配额,所述第一条带可用的比特数,所述第一条带的左侧条带的配额和所使用的比特数,用于编码所述第一条带的左侧条带的编码参数,确定编码参数预测值,或者,
在所述第一条带的上方条带的配额不为0,所述第一条带的左侧条带的配额为0时,根据所述第一条带的配额,所述第一条带可用的比特数,所述第一条带的上方条带的配额和所使用的比特数,用于编码所述第一条带的上方条带的编码参数,确定编码参数预测值;
根据所述编码参数预测值和用于编码第二条带的第二编码参数,确定所述调整值,其中,所述第二条带为所述帧中已编码的最后一个条带。
61.根据权利要求57所述的装置,其特征在于,所述调整值确定模块用于,
若所述第一条带的配额为0,且所述第一条带的左侧条带和上方条带中的至少一个的配额为0,则根据所述第一条带的左侧条带和上方条带中配额为0的条带所使用的比特数,确定所述调整值。
62.根据权利要求61所述的装置,其特征在于,所述调整值确定模块用于,
在所述第一条带的左侧条带和上方条带的配额均为0时,根据所述第一条带可用的比特数,所述第一条带的左侧条带和上方条带所使用的比特数,用于编码所述第一条带的左侧条带和上方条带的编码参数,确定编码参数预测值,或者,
在所述第一条带的左侧条带的配额为0,所述第一条带的上方条带的配额不为0时,根据所述第一条带可用的比特数,所述第一条带的左侧条带所使用的比特数,用于编码所述第一条带的左侧条带的编码参数,确定编码参数预测值,或者,
在所述第一条带的上方条带的配额为0,所述第一条带的左侧条带的配额不为0时,根据所述第一条带可用的比特数,所述第一条带的上方条带所使用的比特数,用于编码所述第一条带的上方条带的编码参数,确定编码参数预测值;
根据所述编码参数预测值和用于编码第二条带的第二编码参数,确定所述调整值,其中,所述第二条带为所述帧中已编码的最后一个条带。
63.根据权利要求54所述的装置,其特征在于,所述编码参数确定模块用于,
根据所述调整值和第二编码参数,确定所述第一编码参数,其中,所述第二编码参数为用于编码第二条带的编码参数,所述第二条带为所述帧中已编码的最后一个条带。
64.根据权利要求63所述的装置,其特征在于,所述第一编码参数为所述第二编码参数与所述调整值的和。
65.根据权利要求63所述的装置,其特征在于,在所述帧中未编码的条带的数目不大于第三预定值,且所述帧中已编码的条带所使用的比特数大于分配给所述帧中已编码的条带的比特数时,所述第一编码参数为所述第二编码参数与所述调整值以及大于0的第四预定值的和。
66.根据权利要求63所述的装置,其特征在于,所述编码参数确定模块用于,
在所述第一编码参数超出编码参数取值范围时,限定所述第一编码参数在所述编码参数取值范围内。
67.根据权利要求66所述的装置,其特征在于,所述装置还包括:
取值范围确定模块,用于根据已编码结果,调整所述编码参数取值范围。
68.根据权利要求54所述的装置,其特征在于,所述编码参数确定模块还用于,确定初始编码参数。
69.根据权利要求67所述的装置,其特征在于,所述取值范围确定模块还用于,确定初始编码参数取值范围。
70.根据权利要求54所述的装置,其特征在于,所述编码参数确定模块用于,
在所述帧中未编码的第三条带的左侧条带和上方条带均满足第二条件时,确定用于编码所述第三条带的第三编码参数为初始编码参数,
其中,所述第三条带的左侧条带满足第二条件表示所述第三条带是所述第三条带所在的条带行的第一个条带,
所述第三条带的上方条带满足第二条件表示所述第三条带所在的条带行是所述帧的第一个条带行,或者,在所述第三条带是非噪声条带时所述第三条带上方的条带行是噪声条带行,或者,在所述第三条带是噪声条带时所述第三条带上方的条带行是非噪声条带行。
CN201910258306.XA 2016-10-12 2016-10-12 码率控制的方法、计算机系统和装置 Expired - Fee Related CN109996076B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910258306.XA CN109996076B (zh) 2016-10-12 2016-10-12 码率控制的方法、计算机系统和装置

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
PCT/CN2016/101939 WO2018068239A1 (zh) 2016-10-12 2016-10-12 码率控制的方法、计算机系统和装置
CN201680003464.5A CN107113430B (zh) 2016-10-12 2016-10-12 码率控制的方法、计算机系统和装置
CN201910258306.XA CN109996076B (zh) 2016-10-12 2016-10-12 码率控制的方法、计算机系统和装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201680003464.5A Division CN107113430B (zh) 2016-10-12 2016-10-12 码率控制的方法、计算机系统和装置

Publications (2)

Publication Number Publication Date
CN109996076A true CN109996076A (zh) 2019-07-09
CN109996076B CN109996076B (zh) 2021-08-06

Family

ID=59676460

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201680003464.5A Expired - Fee Related CN107113430B (zh) 2016-10-12 2016-10-12 码率控制的方法、计算机系统和装置
CN201910258306.XA Expired - Fee Related CN109996076B (zh) 2016-10-12 2016-10-12 码率控制的方法、计算机系统和装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201680003464.5A Expired - Fee Related CN107113430B (zh) 2016-10-12 2016-10-12 码率控制的方法、计算机系统和装置

Country Status (3)

Country Link
US (2) US10917652B2 (zh)
CN (2) CN107113430B (zh)
WO (1) WO2018068239A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108012163B (zh) * 2017-12-19 2020-08-18 希诺麦田技术(深圳)有限公司 视频编码的码率控制方法及装置
CN110875744B (zh) * 2018-08-31 2023-06-20 阿里巴巴集团控股有限公司 编码方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101127909A (zh) * 2007-09-29 2008-02-20 华为技术有限公司 一种图像码率控制方法及装置
CN101159871A (zh) * 2007-11-12 2008-04-09 中兴通讯股份有限公司 宏块组级视频码率控制方法
CN102868883A (zh) * 2012-06-26 2013-01-09 中国科学技术大学 一种视频编码的码率控制方法
US20130016786A1 (en) * 2011-07-11 2013-01-17 Sharp Laboratories Of America, Inc. Video decoder for tiles
CN103533359A (zh) * 2013-10-16 2014-01-22 武汉大学 一种h.264码率控制方法
US20140247882A1 (en) * 2011-07-11 2014-09-04 Sharp Kabushiki Kaisha Video decoder parallelization for tiles

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5144426A (en) * 1989-10-13 1992-09-01 Matsushita Electric Industrial Co., Ltd. Motion compensated prediction interframe coding system
EP0479510B1 (en) * 1990-09-29 2000-06-28 Victor Company Of Japan, Ltd. Image signal coding/decoding system using adaptive quantization
US5144424A (en) * 1991-10-15 1992-09-01 Thomson Consumer Electronics, Inc. Apparatus for video data quantization control
JP2646921B2 (ja) * 1991-11-15 1997-08-27 日本ビクター株式会社 適応量子化装置
JPH05167998A (ja) * 1991-12-16 1993-07-02 Nippon Telegr & Teleph Corp <Ntt> 画像の符号化制御処理方法
JPH0974566A (ja) * 1995-09-04 1997-03-18 Sony Corp 圧縮符号化装置及び圧縮符号化データの記録装置
CN1193616C (zh) * 2000-09-29 2005-03-16 中兴通讯股份有限公司 一种用于图像压缩传输的量化与码流控制方法
US7050497B2 (en) * 2001-03-28 2006-05-23 Thomson Licensing Process and device for the video coding of high definition images
KR100973216B1 (ko) * 2002-04-23 2010-07-30 노키아 코포레이션 비디오 부호화 시스템에서 양자화 변수들을 표시하는 방법 및 장치
US7889792B2 (en) * 2003-12-24 2011-02-15 Apple Inc. Method and system for video encoding using a variable number of B frames
US8594186B1 (en) * 2007-02-27 2013-11-26 Xilinx, Inc. Digital video coding using quantized DC block values
TW200837663A (en) * 2007-03-13 2008-09-16 Univ Nat Taiwan Constant picture quality bit rate control system for a multiple-video encoder in single video signal source and the method
US8238423B2 (en) * 2007-09-12 2012-08-07 Sony Corporation Image processing apparatus and method
CN101888556B (zh) * 2008-03-19 2012-04-25 华为技术有限公司 编码、解码方法和编码、解码装置
US8473990B2 (en) * 2008-04-30 2013-06-25 Zeevee, Inc. System and method for local broadcasting
CN101340571B (zh) * 2008-08-15 2012-04-18 北京中星微电子有限公司 一种码率控制方法及控制装置
JP5479470B2 (ja) * 2009-06-23 2014-04-23 パナソニック株式会社 動画像符号化方法、動画像符号化装置、プログラム、および集積回路
KR101702948B1 (ko) * 2010-07-20 2017-02-06 삼성전자주식회사 깊이영상 부호화를 위한 율-왜곡 최적화 장치 및 방법
KR20120016980A (ko) * 2010-08-17 2012-02-27 한국전자통신연구원 영상 부호화 방법 및 장치, 그리고 복호화 방법 및 장치
CN106534872B (zh) * 2011-03-11 2019-05-17 索尼公司 图像处理装置和方法
CN102355584B (zh) * 2011-10-31 2013-09-25 电子科技大学 基于帧内预测编码模式的码率控制方法
PL3448029T3 (pl) * 2012-01-30 2021-12-20 Samsung Electronics Co., Ltd. Sposób i urządzenie do kodowania i dekodowania wideo w oparciu o dane hierarchiczne z uwzględnieniem predykcji parametrów kwantyzacji
US9800869B2 (en) * 2012-06-15 2017-10-24 Google Technology Holdings LLC Method and apparatus for efficient slice header processing
CN103391439B (zh) * 2013-07-18 2016-08-10 西安交通大学 一种基于主动宏块隐藏的h.264/avc码率控制方法
KR102070484B1 (ko) * 2013-10-25 2020-01-29 미디어텍 인크. 슬라이스 높이로 균등하게 분할할 수 없는 화상 높이 및/또는 화소 그룹 폭으로 균등하게 분할할 수 없는 슬라이스 폭을 갖는 화상을 처리하는 방법 및 장치
JP6300565B2 (ja) * 2014-02-19 2018-03-28 株式会社メガチップス 動画像符号化装置、プログラム、および、集積回路
US9848193B2 (en) * 2014-04-15 2017-12-19 Qualcomm Incorporated System and method for selecting quantization parameter (QP) in display stream compression (DSC)
US9924175B2 (en) * 2014-06-11 2018-03-20 Qualcomm Incorporated Determining application of deblocking filtering to palette coded blocks in video coding
US10574988B2 (en) * 2015-11-19 2020-02-25 Qualcomm Incorporated System and methods for reducing slice boundary visual artifacts in display stream compression (DSC)

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101127909A (zh) * 2007-09-29 2008-02-20 华为技术有限公司 一种图像码率控制方法及装置
CN101159871A (zh) * 2007-11-12 2008-04-09 中兴通讯股份有限公司 宏块组级视频码率控制方法
US20130016786A1 (en) * 2011-07-11 2013-01-17 Sharp Laboratories Of America, Inc. Video decoder for tiles
US20140247882A1 (en) * 2011-07-11 2014-09-04 Sharp Kabushiki Kaisha Video decoder parallelization for tiles
CN102868883A (zh) * 2012-06-26 2013-01-09 中国科学技术大学 一种视频编码的码率控制方法
CN103533359A (zh) * 2013-10-16 2014-01-22 武汉大学 一种h.264码率控制方法

Also Published As

Publication number Publication date
CN109996076B (zh) 2021-08-06
CN107113430B (zh) 2019-04-30
WO2018068239A1 (zh) 2018-04-19
US20210160516A1 (en) 2021-05-27
US20190246124A1 (en) 2019-08-08
CN107113430A (zh) 2017-08-29
US10917652B2 (en) 2021-02-09

Similar Documents

Publication Publication Date Title
JP6842395B2 (ja) ニューラルネットワークにトレーニングデータを提供するための画像解析アルゴリズムの使用
EP3707906B1 (en) Electronic apparatus and control method thereof
CN103188493B (zh) 图像编码装置及图像编码方法
CN104718753B (zh) 利用切片速率控制的有界率压缩
US20150023411A1 (en) Encoding an image
CN103313047B (zh) 一种视频编码方法及装置
WO2010050152A1 (ja) 画素予測値生成手順自動生成方法、画像符号化方法、画像復号方法、それらの装置、それらのプログラム、およびこれらのプログラムを記録した記録媒体
CN106030652A (zh) 针对频繁变化区域避免使用帧缓冲器显示输出面的方法和设备
US20140092209A1 (en) System and method for improving video encoding using content information
JP5995864B2 (ja) 表示データの符号化方法及びシステム
CN103763559B (zh) 一种视频文件转码方法
JP6226578B2 (ja) 画像符号化装置、画像符号化方法及びプログラム
CN104639946A (zh) 图像处理设备和方法
CN107113430B (zh) 码率控制的方法、计算机系统和装置
CN114501029B (zh) 图像编码、图像解码方法、装置、计算机设备和存储介质
CN104980740A (zh) 图像处理方法、装置和电子设备
Muruganandham et al. Adaptive fractal image compression using PSO
CN107105240A (zh) 一种hevc‑scc复杂度控制方法及其系统
Zhou et al. Bandwidth-efficient edge video analytics via frame partitioning and quantization optimization
US20230108722A1 (en) Allocating bit rate between video streams using machine learning
US11330258B1 (en) Method and system to enhance video quality in compressed video by manipulating bit usage
CN107025433A (zh) 视频事件类人概念学习方法及装置
CN113191210A (zh) 一种图像处理方法、装置及设备
US10015507B2 (en) Transform system and method in video and image compression
GB2606000A (en) Global quantization variable value selection for compression of multi-frame content items

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20210806