CN114786012B - 一种码率控制方法、装置和可读存储介质 - Google Patents

一种码率控制方法、装置和可读存储介质 Download PDF

Info

Publication number
CN114786012B
CN114786012B CN202210681318.5A CN202210681318A CN114786012B CN 114786012 B CN114786012 B CN 114786012B CN 202210681318 A CN202210681318 A CN 202210681318A CN 114786012 B CN114786012 B CN 114786012B
Authority
CN
China
Prior art keywords
image
pixel points
coded
calculating
frame
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210681318.5A
Other languages
English (en)
Other versions
CN114786012A (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 MicroBT Electronics Technology Co Ltd
Original Assignee
Shenzhen MicroBT Electronics 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 MicroBT Electronics Technology Co Ltd filed Critical Shenzhen MicroBT Electronics Technology Co Ltd
Priority to CN202210681318.5A priority Critical patent/CN114786012B/zh
Publication of CN114786012A publication Critical patent/CN114786012A/zh
Application granted granted Critical
Publication of CN114786012B publication Critical patent/CN114786012B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel

Landscapes

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

Abstract

本发明实施例提供了一种码率控制方法、装置和可读存储介质。其中的方法包括:根据待编码图像中的第一像素点数量和所述待编码图像的参考图像中的第一像素点数量,计算第一分配参数;图像中的第一像素点指:该图像中与该图像的参考图像中位置相同且差值大于预设阈值的像素点;根据所述待编码图像中的第一像素点数量在所述待编码图像中的占比,计算第二分配参数;根据所述第一分配参数和所述第二分配参数,确定所述待编码图像的码率。本发明实施例可以在保证编码质量的同时,节省更多的码率资源以及存储资源。

Description

一种码率控制方法、装置和可读存储介质
技术领域
本发明涉及图像处理技术领域,尤其涉及一种码率控制方法、装置和可读存储介质。
背景技术
码率控制是视频编码的关键技术之一,码率控制的目标是在满足码率约束的同时提高视频质量,通过选择合适的编码参数完成比特分配过程。常见的码率控制方式主要包括CBR(Constant Bit Rate,恒定码率)和VBR(Variable Bit Rate,可变码率)两种方式。
CBR指以恒定码率进行编码,当有运动发生时,由于码率固定,只能通过增大QP(Quantization Parameter,量化参数)来减少码字大小,图像质量变差,当场景静止时,图像质量又变好,因此图像质量不稳定。
VBR指码率可以随着图像的复杂程度的不同而变化,图像内容比较简单则分配较少的码率进行编码,图像内容复杂则分配较多的码率进行编码,以保证图像质量。然而,在采用VBR方式编码时,由于码率波动难以预估,通常使用VBR的码率上限值来计算存储空间,这会导致预估的存储设备容量过大,浪费存储资源。
发明内容
本发明实施例提供一种码率控制方法、装置和可读存储介质,可以根据前后帧图像的差异动态确定待编码图像的码率,在保证图像质量的同时可以节省存储资源。
第一方面,本发明实施例公开了一种码率控制方法,所述方法包括:
根据待编码图像中的第一像素点数量和所述待编码图像的参考图像中的第一像素点数量,计算第一分配参数;图像中的第一像素点指:该图像中与该图像的参考图像中位置相同且差值大于预设阈值的像素点;
根据所述待编码图像中的第一像素点数量在所述待编码图像中的占比,计算第二分配参数;
根据所述第一分配参数和所述第二分配参数,确定所述待编码图像的码率。
第二方面,本发明实施例公开了一种码率控制装置,所述装置包括:
第一分配参数计算模块,用于根据待编码图像中的第一像素点数量和所述待编码图像的参考图像中的第一像素点数量,计算第一分配参数;图像中的第一像素点指:该图像中与该图像的参考图像中位置相同且差值大于预设阈值的像素点;
第二分配参数计算模块,用于根据所述待编码图像中的第一像素点数量在所述待编码图像中的占比,计算第二分配参数;
码率确定模块,用于根据所述第一分配参数和所述第二分配参数,确定所述待编码图像的码率。
第三方面,本发明实施例公开了一种机器可读介质,其上存储有指令,当所述指令由装置的一个或多个处理器执行时,使得装置执行如前述一个或多个所述的码率控制方法。
本发明实施例包括以下优点:
本发明实施例在视频编码过程中,根据待编码图像中的第一像素点数量和所述待编码图像的参考图像中的第一像素点数量,计算第一分配参数;根据所述待编码图像中的第一像素点数量在所述待编码图像中的占比,计算第二分配参数;根据所述第一分配参数和所述第二分配参数,确定所述待编码图像的码率。所述第一分配参数可以体现前后不同帧之间的像素点变化情况,所述第二分配参数可以体现同一帧图像中的像素点变化情况。本发明实施例在视频编码过程中,根据所述第一分配参数和所述第二分配参数,动态确定待编码图像的码率,使得动态确定的码率更加符合待编码图像中像素点的动态变化情况,从而在保证编码质量的同时,可以节省更多的码率资源以及存储资源,从而提升预测的压缩性能。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的一种码率控制方法实施例的步骤流程图;
图2是本发明一个示例中的码率控制方法的流程示意图;
图3是本发明的一种码率控制装置实施例的步骤流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中的术语“和/或”用于描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本发明实施例中术语“多个”是指两个或两个以上,其它量词与之类似。
参照图1,示出了本发明的一种码率控制方法实施例的步骤流程图,所述方法可以包括如下步骤:
步骤101、根据待编码图像中的第一像素点数量和所述待编码图像的参考图像中的第一像素点数量,计算第一分配参数;图像中的第一像素点指:该图像中与该图像的参考图像中位置相同且差值大于预设阈值的像素点;
步骤102、根据所述待编码图像中的第一像素点数量在所述待编码图像中的占比,计算第二分配参数;
步骤103、根据所述第一分配参数和所述第二分配参数,确定所述待编码图像的码率。
本发明实施例提供了一种码率控制方法,可应用于视频编码场景。本发明实施例对视频编码采用的编码标准不做限制,例如,可以采用H.264或者H.265或者H.266等编码标准。
本发明实施例的码率控制方法适用于可变码率(VBR)方式,对于当前的待编码图像,本发明实施例首先计算所述待编码图像的第一分配参数(本发明实施例中记为base_ratio)和第二分配参数(本发明实施例中记为motion_ratio),然后根据所述第一分配参数和所述第二分配参数,确定所述待编码图像的码率。
所述第一分配参数根据所述待编码图像中的第一像素点数量和所述待编码图像的参考图像中的第一像素点数量计算得到。对于某个图像,该图像中的第一像素点是指:该图像中与该图像的参考图像中位置相同且差值大于预设阈值的像素点。例如,对于待编码图像(如图像A),假设图像A的参考图像为图像B。需要说明的是,对于某个图像,该图像的参考图像可以为该图像的前一帧图像或者前预设数目帧的图像。示例性地,对于某个视频,假设其中第5帧图像为图像A,则可以将第1帧至第4帧中任意一帧图像作为图像A的参考图像,为便于描述,本发明实施例将某个图像的前一帧图像作为该图像的参考图像。也即,对于待编码图像(如图像A),图像A的参考图像为图像A的前一帧图像(如图像B),则图像A中的第一像素点是指:图像A中与图像B中位置相同且差值大于预设阈值的像素点。
具体地,对于当前的待编码图像,本发明实施例在所述待编码图像包含的像素点中确定第一像素点,并统计所述待编码图像中的第一像素点数量。
进一步地,所述在所述待编码图像包含的像素点中确定第一像素点,可以包括:将所述待编码图像与所述待编码图像的参考图像中相同位置的像素点的值(即像素值)进行求差,得到两个图像中每个相同位置的像素点的差值,确定所述待编码图像中差值大于预设阈值的像素点为所述待编码图像中的第一像素点。所述预设阈值可以是预先设置的经验值。
以待编码图像为图像A为例,本发明实施例获取待编码图像(图像A)中的第一像素点数量和所述待编码图像的参考图像(图像B)中的第一像素点数量。也即,本发明实施例获取图像A中的第一像素点数量和图像B中的第一像素点数量。假设图像B的参考图像为图像B的前一帧图像(如图像C),则图像B中的第一像素点数量是指:图像B中与图像C中位置相同且差值大于预设阈值的像素点的数量。
本发明实施例根据待编码图像中的第一像素点数量和所述待编码图像的参考图像中的第一像素点数量,计算第一分配参数base_ratio。以待编码图像为图像A为例,假设确定待编码图像(图像A)中的第一像素点数量为motion_num_cur,以及确定待编码图像(图像A)的参考图像(图像B)中的第一像素点数量为motion_num_ref,则根据motion_num_cur和motion_num_ref可以计算第一分配参数base_ratio。
在本发明实施例中,待编码图像中的第一像素点数量表示待编码图像中与之前帧图像中差异大于预设阈值的像素点的数量,该数量越大,说明待编码图像中包含的发生变化的像素点越多,也即,待编码图像相对于之前帧存在较大的差异。因此,根据待编码图像中的第一像素点数量和所述待编码图像的参考图像中的第一像素点数量,计算得到的第一分配参数,可以体现前后帧图像之间的差异变化趋势,当该差异趋向于减小时,可以认为当前待编码图像所需消耗的码率减小;当该差异趋向于增大时,可以认为当前待编码图像所需消耗的码率增大。
在本发明的一种可选实施例中,所述第一分配参数可以与所述待编码图像的码率成正比关系,步骤101所述根据待编码图像中的第一像素点数量和所述待编码图像的参考图像中的第一像素点数量,计算第一分配参数,可以包括:
步骤S11、若所述待编码图像中的第一像素点数量小于所述待编码图像的参考图像中的第一像素点数量,则按照预设步长减小第一分配参数;或者,
步骤S12、若所述待编码图像中的第一像素点数量大于所述待编码图像的参考图像中的第一像素点数量,则按照预设步长增大第一分配参数。
在开始编码某段视频时,可以初始化预设阈值,初始化第一分配参数,以及初始化第二分配参数。本发明实施例每编码一帧图像,可以记录该帧图像中的第一像素点数量。
对于当前的待编码图像,可以获取待编码图像中的第一像素点数量和所述待编码图像的参考图像中的第一像素点数量。若所述待编码图像中的第一像素点数量小于所述待编码图像的参考图像中的第一像素点数量,说明所述待编码图像中发生变化的像素点趋向于减少,可以认为当前待编码图像所需消耗的码率减小,此时可以按照预设步长减小当前的第一分配参数,以减小待编码图像的码率。若所述待编码图像中的第一像素点数量大于所述待编码图像的参考图像中的第一像素点数量,说明所述待编码图像中发生变化的像素点趋向于增多,可以认为当前待编码图像所需消耗的码率增大,此时可以按照预设步长增大当前的第一分配参数,以增大待编码图像的码率。
需要说明的是,所述预设步长可以根据实际需要设置,本发明实施例对此不做限制。示例性地,以预设步长为0.01为例,可以通过下式计算第一分配参数base_ratio:
Figure 533062DEST_PATH_IMAGE001
(1)
上式(1)表示,若待编码图像中的第一像素点数量motion_num_cur小于所述待编码图像的参考图像中的第一像素点数量motion_num_ref,则将当前的第一分配参数base_ratio减小0.01;若待编码图像中的第一像素点数量motion_num_cur大于所述待编码图像的参考图像中的第一像素点数量motion_num_ref,则将当前的第一分配参数base_ratio增大0.01。
进一步地,若所述待编码图像中的第一像素点数量等于所述待编码图像的参考图像中的第一像素点数量,则可以保持当前的第一分配参数不变。
在具体实施中,可以设置第一分配参数base_ratio的上限值和下限值。例如,在视频编码过程中,若当前的第一分配参数base_ratio已经到达该上限值,则不再继续增大base_ratio。同样地,若当前的第一分配参数base_ratio已经到达该下限值,则不再继续减小base_ratio。
需要说明的是,本发明实施例对根据待编码图像中的第一像素点数量和所述待编码图像的参考图像中的第一像素点数量,计算第一分配参数的具体方式不做限制,上式(1)是通过线性变化的方式计算第一分配参数,上式(1)计算第一分配参数的方式仅作为本发明的一种应用示例。在具体实施中,还可以通过非线性变化的方式计算第一分配参数。示例性地,还可以通过下式计算第一分配参数base_ratio:
Figure 981361DEST_PATH_IMAGE002
(2)
本发明实施例根据所述待编码图像中的第一像素点数量在所述待编码图像中的占比,计算第二分配参数。所述第二分配参数可以体现待编码图像中变化差异大于预设阈值的像素点在当前图像中的占比。
在本发明的一种可选实施例中,步骤102所述根据所述待编码图像中的第一像素点数量在所述待编码图像中的占比,计算第二分配参数,可以包括:计算所述待编码图像的宽和高的乘积,并计算所述待编码图像中的第一像素点数量与所述乘积的比值,得到第二分配参数。
示例性地,本发明实施例可以通过下式计算第二分配参数motion_ratio:
motion_ratio=motion_num_cur/(N⨉M) (3)
上式(3)中,N表示待编码图像的宽,M表示待编码图像的高,N和M的单位为像素,N⨉M可以得到待编码图像的像素点个数,上式(3)可以得到待编码图像中的第一像素点数量在所述待编码图像中的占比。
需要说明的是,本发明实施例对根据所述待编码图像中的第一像素点数量在所述待编码图像中的占比,计算第二分配参数的具体方式不做限制,上式(3)是通过线性变化的方式计算第二分配参数,上式(3)计算第二分配参数的方式仅作为本发明的一种应用示例。在具体实施中,还可以通过非线性变化的方式计算第二分配参数。示例性地,还可以通过下式计算第二分配参数motion_ratio:
motion_ratio=motion_num_cur/(N⨉M)⨉0.5+ motion_num_ref⨉0.5 (4)
在本发明实施例中,第一分配参数可用于体现待编码图像中发生变化的像素点相对于之前帧图像是增多了还是减少了,第二分配参数可用于体现待编码图像中有多少发生变化的像素点。也即,第一分配参数可以体现前后不同帧之间的像素点变化情况,第二分配参数可以体现同一帧图像中的像素点变化情况。本发明实施例根据所述第一分配参数和所述第二分配参数,共同确定所述待编码图像的码率。示例性地,所述待编码图像的码率可以与所述第一分配参数成正比关系,所述待编码图像的码率可以与所述第二分配参数成正比关系。也即,对于待编码图像,其相对于之前帧像素点变化趋向于增大,则可以分配更大的码率,反之,其相对于之前帧像素点变化趋向于减小,则可以分配更小的码率。同理,对于待编码图像,其包含的发生变化的像素点占比越大,则可以分配更大的码率,反之,其包含的发生变化的像素点占比越小,则可以分配更小的码率。由此,本发明实施例在视频编码过程中,可以动态确定每一帧图像的码率,从而实现动态控制每一帧图像的码率,使得动态确定的码率更加符合待编码图像中像素点的动态变化情况,从而在保证编码质量的同时,可以节省更多的码率资源以及存储资源,从而提升预测的压缩性能。
在本发明的一种可选实施例中,步骤103所述根据所述第一分配参数和所述第二分配参数,确定所述待编码图像的码率,可以包括:
步骤S21、获取预设的恒定码率;
步骤S22、计算所述第一分配参数和所述第二分配参数的和与所述恒定码率的乘积,得到所述待编码图像的码率。
一个示例中,假设在CBR方式编码的场景中,预设的恒定码率为cb,本发明实施例可以利用该恒定码率cb,动态计算待编码图像的可变码率vb。假设计算得到待编码图像的第一分配参数为base_ratio,第二分配参数为motion_ratio,示例性地,可以通过下式计算待编码图像的码率vb:
vb=cb⨉(base_ratio+motion_ratio) (5)
本发明实施例在根据所述第一分配参数和所述第二分配参数,确定所述待编码图像的码率时,以预设的恒定码率为基础,将第一分配参数和第二分配参数作为调整该恒定码率的线性参数,计算得到待编码图像的码率,从而实现根据待编码图像中像素点的变化情况动态调整码率分配。
在本发明的一种可选实施例中,所述方法还可以包括:
步骤S31、初始化预设阈值;
步骤S32、在预设周期到达时,根据所述预设周期内各帧图像的像素点差值,更新所述预设阈值。
在编码开始时,可以初始化预设阈值,在编码过程中,可以周期性地对当前的预设阈值进行动态的自适应调整。所述预设周期可以按照帧数为单位,例如,在每编码S帧时,到达一个预设周期,S为正整数。具体地,在一个预设周期到达时,可以根据该预设周期内S帧图像中各帧图像的像素点差值,更新预设阈值,以使所述预设阈值可以不断适应图像的变化情况。参照图2,示出了本发明一个示例中的码率控制方法的流程示意图。图2所示的流程图包括如下步骤:
步骤201、获取待编码的图像帧序列中的当前图像为待编码图像,假设此时到达预设周期;
步骤202、根据所述预设周期内的S帧图像计算预设阈值;
步骤203、获取待编码图像中的第一像素点数量motion_num_cur和所述待编码图像的参考图像中的第一像素点数量motion_num_ref;
步骤204、计算第一分配参数base_ratio和第二分配参数motion_ratio;具体地,根据所述待编码图像中的第一像素点数量motion_num_cur和所述待编码图像的参考图像中的第一像素点数量motion_num_ref,计算第一分配参数base_ratio;以及根据所述待编码图像中的第一像素点数量在所述待编码图像中的占比,计算第二分配参数motion_ratio;
步骤205、根据第一分配参数base_ratio和第二分配参数motion_ratio,计算待编码图像的码率vb;
步骤206、根据所述码率vb对待编码图像进行编码;
步骤207、获取下一帧图像作为待编码图像,并判断预设周期是否到达,若到达,则执行步骤202,若未到达,则执行步骤206;
步骤208、直至图像帧序列编码完成。
可选地,在预设周期到达时,可以根据该预设周期内的S帧图像计算预设阈值,并将该预设阈值作为更新的预设阈值;或者,还可以记录每个预设周期计算得到的预设阈值,在当前的预设周期到达时,根据该预设周期内的S帧图像计算当前预设周期的预设阈值,将当前预设周期的预设阈值与记录的历史预设周期的预设阈值进行加权平均,得到更新的预设阈值。
在本发明的一种可选实施例中,步骤S32中所述根据所述预设周期内各帧图像的像素点差值,更新所述预设阈值,可以包括:
步骤S41、对于所述预设周期内的每帧图像,计算该帧图像与该帧图像的参考图像中相同位置像素点的差值,得到所述预设周期内每帧图像的像素点差值;
步骤S42、对所述预设周期内每帧图像的像素点差值进行求和,得到第一总和;
步骤S43、根据所述预设周期内每帧图像包含的像素点数量,计算第二总和;
步骤S44、计算所述第一总和与所述第二总和的比值,得到更新后的预设阈值。
示例性地,在预设周期到达时,可以通过下式计算预设阈值threshold:
threshold=total_num1/total_num2 (6)
上式(6)中,total_num1为第一总和,total_num2为第二总和。
以预设周期包括S帧为例,可以通过下式计算第一总和total_num1:
Figure 292257DEST_PATH_IMAGE003
(7)
上式(7)中,S表示预设周期内的帧数,N表示S帧图像中每帧图像的宽,M表示S帧图像中每帧图像的高,N和M的单位为像素。x表示像素点的横坐标,x的取值为0~N-1,y表示像素点的纵坐标,y的取值为0~M-1,z表示像素点所在图像的帧序列号,z的取值为0~S-1。Curvalue(x,y,z)表示当前图像中的像素点,Refvalue(x,y,z)表示当前图像的参考图像中的像素点。
示例性地,假设S=10帧,则每编码10帧图像,就利用这10帧图像更新当前的预设阈值。
本发明实施例提供两种计算第二总和total_num2的方式。
方式一、在本发明的一种可选实施例中,步骤S43所述根据所述预设周期内每帧图像包含的像素点数量,计算第二总和,可以包括:对所述预设周期内每帧图像包含的像素点数量进行求和,得到第二总和。
示例性地,假设S=10帧,则第二总和total_num2为这10帧图像包含的像素点数量的和。
方式二、在本发明的一种可选实施例中,步骤S43所述根据所述预设周期内每帧图像包含的像素点数量,计算第二总和,包括:
步骤S51、计算所述预设周期内每帧图像中的第二像素点数量,图像中的第二像素点指:该图像中与该图像的参考图像中位置相同且差值不为零的像素点;
步骤S52、对所述预设周期内每帧图像中的第二像素点数量进行求和,得到第二总和。
以预设周期为S帧为例,可以通过下式计算第二总和total_num2:
Figure 218624DEST_PATH_IMAGE004
(8)
上式(8)中,motion_num(z)表示S帧图像中每帧图像中的第二像素点数量。某个图像中的第二像素点指:该图像中与该图像的参考图像中位置相同且差值不为零的像素点。上式(8)用于计算所述预设周期内每帧图像中的第二像素点数量的和。
上述方式一考虑图像中所有像素点的运动情况,而方式二仅考虑图像中运动发生变化的像素点的运动情况。在实际应用中,在计算第二总和total_num2时,可以根据需要选择上述两种方式中的任意一种。相对于方式一,方式二需要判断每个像素点是否发生变化,因此,方式一的硬件实现更简单,计算量更少,但是方式二仅考虑运动发生变化的像素点的运动情况,使得编码效果更符合图像的变化情况,编码效果会更好。
综上,本发明实施例在视频编码过程中,根据待编码图像中的第一像素点数量和所述待编码图像的参考图像中的第一像素点数量,计算第一分配参数;根据所述待编码图像中的第一像素点数量在所述待编码图像中的占比,计算第二分配参数;根据所述第一分配参数和所述第二分配参数,确定所述待编码图像的码率。所述第一分配参数可以体现前后不同帧之间的像素点变化情况,所述第二分配参数可以体现同一帧图像中的像素点变化情况。本发明实施例在视频编码过程中,根据所述第一分配参数和所述第二分配参数,动态确定待编码图像的码率,使得动态确定的码率更加符合待编码图像中像素点的动态变化情况,从而在保证编码质量的同时,可以节省更多的码率资源以及存储资源,从而提升预测的压缩性能。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图3,示出了本发明的一种码率控制装置实施例的结构框图,所述装置可以包括:
第一分配参数计算模块301,用于根据待编码图像中的第一像素点数量和所述待编码图像的参考图像中的第一像素点数量,计算第一分配参数;图像中的第一像素点指:该图像中与该图像的参考图像中位置相同且差值大于预设阈值的像素点;
第二分配参数计算模块302,用于根据所述待编码图像中的第一像素点数量在所述待编码图像中的占比,计算第二分配参数;
码率确定模块303,用于根据所述第一分配参数和所述第二分配参数,确定所述待编码图像的码率。
可选地,所述装置还包括:
阈值初始化模块,用于初始化预设阈值;
阈值更新模块,用于在预设周期到达时,根据所述预设周期内各帧图像的像素点差值,更新所述预设阈值。
可选地,所述阈值更新模块,包括:
差值计算子模块,用于对于所述预设周期内的每帧图像,计算该帧图像与该帧图像的参考图像中相同位置像素点的差值,得到所述预设周期内每帧图像的像素点差值;
第一总和计算子模块,用于对所述预设周期内每帧图像的像素点差值进行求和,得到第一总和;
第二总和计算子模块,用于根据所述预设周期内每帧图像包含的像素点数量,计算第二总和;
阈值计算子模块,用于计算所述第一总和与所述第二总和的比值,得到更新后的预设阈值。
可选地,所述第二总和计算子模块,具体用于对所述预设周期内每帧图像包含的像素点数量进行求和,得到第二总和。
可选地,所述第二总和计算子模块,包括:
第二像素点数量计算单元,用于计算所述预设周期内每帧图像包含的第二像素点数量,图像中的第二像素点指:该图像中与该图像的参考图像中位置相同且差值不为零的像素点;
第二总和计算单元,用于对所述预设周期内每帧图像包含的第二像素点数量进行求和,得到第二总和。
可选地,所述第一分配参数计算模块,包括:
第一更新子模块,用于若所述待编码图像中的第一像素点数量小于所述待编码图像的参考图像中的第一像素点数量,则按照预设步长减小第一分配参数;
第二更新子模块,用于若所述待编码图像中的第一像素点数量大于所述待编码图像的参考图像中的第一像素点数量,则按照预设步长增大第一分配参数。
可选地,所述第二分配参数计算模块,具体用于计算所述待编码图像的宽和高的乘积,并计算所述待编码图像中的第一像素点数量与所述乘积的比值,得到第二分配参数。
可选地,所述码率确定模块,具体用于获取预设的恒定码率,并计算所述第一分配参数和所述第二分配参数的和与所述恒定码率的乘积,得到所述待编码图像的码率。
本发明实施例在视频编码过程中,根据待编码图像中的第一像素点数量和所述待编码图像的参考图像中的第一像素点数量,计算第一分配参数;根据所述待编码图像中的第一像素点数量在所述待编码图像中的占比,计算第二分配参数;根据所述第一分配参数和所述第二分配参数,确定所述待编码图像的码率。所述第一分配参数可以体现前后不同帧之间的像素点变化情况,所述第二分配参数可以体现同一帧图像中的像素点变化情况。本发明实施例在视频编码过程中,根据所述第一分配参数和所述第二分配参数,动态确定待编码图像的码率,使得动态确定的码率更加符合待编码图像中像素点的动态变化情况,从而在保证编码质量的同时,可以节省更多的码率资源以及存储资源,从而提升预测的压缩性能。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本发明实施例还提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由装置(服务器或者终端)的处理器执行时,使得装置能够执行前文图1所对应实施例中码率控制方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机程序产品或者计算机程序实施例中未披露的技术细节,请参照本申请方法实施例的描述。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本发明旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
以上对本发明所提供的一种码率控制方法、装置和机器可读存储介质,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (15)

1.一种码率控制方法,其特征在于,所述方法包括:
根据待编码图像中的第一像素点数量和所述待编码图像的参考图像中的第一像素点数量,计算第一分配参数;图像中的第一像素点指:该图像中与该图像的参考图像中位置相同且差值大于预设阈值的像素点;
根据所述待编码图像中的第一像素点数量在所述待编码图像中的占比,计算第二分配参数;
根据所述第一分配参数和所述第二分配参数,确定所述待编码图像的码率;
其中,所述根据待编码图像中的第一像素点数量和所述待编码图像的参考图像中的第一像素点数量,计算第一分配参数,包括:
若所述待编码图像中的第一像素点数量小于所述待编码图像的参考图像中的第一像素点数量,则按照预设步长减小第一分配参数;
若所述待编码图像中的第一像素点数量大于所述待编码图像的参考图像中的第一像素点数量,则按照预设步长增大第一分配参数。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
初始化预设阈值;
在预设周期到达时,根据所述预设周期内各帧图像的像素点差值,更新所述预设阈值。
3.根据权利要求2所述的方法,其特征在于,所述根据所述预设周期内各帧图像的像素点差值,更新所述预设阈值,包括:
对于所述预设周期内的每帧图像,计算该帧图像与该帧图像的参考图像中相同位置像素点的差值,得到所述预设周期内每帧图像的像素点差值;
对所述预设周期内每帧图像的像素点差值进行求和,得到第一总和;
根据所述预设周期内每帧图像包含的像素点数量,计算第二总和;
计算所述第一总和与所述第二总和的比值,得到更新后的预设阈值。
4.根据权利要求3所述的方法,其特征在于,所述根据所述预设周期内每帧图像包含的像素点数量,计算第二总和,包括:
对所述预设周期内每帧图像包含的像素点数量进行求和,得到第二总和。
5.根据权利要求3所述的方法,其特征在于,所述根据所述预设周期内每帧图像包含的像素点数量,计算第二总和,包括:
计算所述预设周期内每帧图像包含的第二像素点数量,图像中的第二像素点指:该图像中与该图像的参考图像中位置相同且差值不为零的像素点;
对所述预设周期内每帧图像包含的第二像素点数量进行求和,得到第二总和。
6.根据权利要求1所述的方法,其特征在于,所述根据所述待编码图像中的第一像素点数量在所述待编码图像中的占比,计算第二分配参数,包括:
计算所述待编码图像的宽和高的乘积,并计算所述待编码图像中的第一像素点数量与所述乘积的比值,得到第二分配参数。
7.根据权利要求1所述的方法,其特征在于,所述根据所述第一分配参数和所述第二分配参数,确定所述待编码图像的码率,包括:
获取预设的恒定码率;
计算所述第一分配参数和所述第二分配参数的和与所述恒定码率的乘积,得到所述待编码图像的码率。
8.一种码率控制装置,其特征在于,所述装置包括:
第一分配参数计算模块,用于根据待编码图像中的第一像素点数量和所述待编码图像的参考图像中的第一像素点数量,计算第一分配参数;图像中的第一像素点指:该图像中与该图像的参考图像中位置相同且差值大于预设阈值的像素点;
第二分配参数计算模块,用于根据所述待编码图像中的第一像素点数量在所述待编码图像中的占比,计算第二分配参数;
码率确定模块,用于根据所述第一分配参数和所述第二分配参数,确定所述待编码图像的码率;
其中,所述第一分配参数计算模块,包括:
第一更新子模块,用于若所述待编码图像中的第一像素点数量小于所述待编码图像的参考图像中的第一像素点数量,则按照预设步长减小第一分配参数;
第二更新子模块,用于若所述待编码图像中的第一像素点数量大于所述待编码图像的参考图像中的第一像素点数量,则按照预设步长增大第一分配参数。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
阈值初始化模块,用于初始化预设阈值;
阈值更新模块,用于在预设周期到达时,根据所述预设周期内各帧图像的像素点差值,更新所述预设阈值。
10.根据权利要求9所述的装置,其特征在于,所述阈值更新模块,包括:
差值计算子模块,用于对于所述预设周期内的每帧图像,计算该帧图像与该帧图像的参考图像中相同位置像素点的差值,得到所述预设周期内每帧图像的像素点差值;
第一总和计算子模块,用于对所述预设周期内每帧图像的像素点差值进行求和,得到第一总和;
第二总和计算子模块,用于根据所述预设周期内每帧图像包含的像素点数量,计算第二总和;
阈值计算子模块,用于计算所述第一总和与所述第二总和的比值,得到更新后的预设阈值。
11.根据权利要求10所述的装置,其特征在于,所述第二总和计算子模块,具体用于对所述预设周期内每帧图像包含的像素点数量进行求和,得到第二总和。
12.根据权利要求10所述的装置,其特征在于,所述第二总和计算子模块,包括:
第二像素点数量计算单元,用于计算所述预设周期内每帧图像包含的第二像素点数量,图像中的第二像素点指:该图像中与该图像的参考图像中位置相同且差值不为零的像素点;
第二总和计算单元,用于对所述预设周期内每帧图像包含的第二像素点数量进行求和,得到第二总和。
13.根据权利要求8所述的装置,其特征在于,所述第二分配参数计算模块,具体用于计算所述待编码图像的宽和高的乘积,并计算所述待编码图像中的第一像素点数量与所述乘积的比值,得到第二分配参数。
14.根据权利要求8所述的装置,其特征在于,所述码率确定模块,具体用于获取预设的恒定码率,并计算所述第一分配参数和所述第二分配参数的和与所述恒定码率的乘积,得到所述待编码图像的码率。
15.一种机器可读存储介质,其上存储有指令,当所述指令由装置的一个或多个处理器执行时,使得装置执行如权利要求1至7中任一所述的码率控制方法。
CN202210681318.5A 2022-06-16 2022-06-16 一种码率控制方法、装置和可读存储介质 Active CN114786012B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210681318.5A CN114786012B (zh) 2022-06-16 2022-06-16 一种码率控制方法、装置和可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210681318.5A CN114786012B (zh) 2022-06-16 2022-06-16 一种码率控制方法、装置和可读存储介质

Publications (2)

Publication Number Publication Date
CN114786012A CN114786012A (zh) 2022-07-22
CN114786012B true CN114786012B (zh) 2022-09-02

Family

ID=82420735

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210681318.5A Active CN114786012B (zh) 2022-06-16 2022-06-16 一种码率控制方法、装置和可读存储介质

Country Status (1)

Country Link
CN (1) CN114786012B (zh)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110166780A (zh) * 2018-06-06 2019-08-23 腾讯科技(深圳)有限公司 视频的码率控制方法、转码处理方法、装置和机器设备

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100468726B1 (ko) * 2002-04-18 2005-01-29 삼성전자주식회사 실시간 가변 비트율 제어를 수행하는 부호화 장치 및 방법
US20090097546A1 (en) * 2007-10-10 2009-04-16 Chang-Hyun Lee System and method for enhanced video communication using real-time scene-change detection for control of moving-picture encoding data rate
US20130136178A1 (en) * 2010-09-30 2013-05-30 Hisao Sasai Image decoding method, image coding method, image decoding apparatus, image coding apparatus, program, and integrated circuit
CN103533365B (zh) * 2012-07-04 2016-12-21 珠海扬智电子科技有限公司 比特率控制方法与比特率控制系统
CN104702964B (zh) * 2015-03-30 2018-05-15 北京布卡互动科技有限公司 一种图像处理方法及装置
US10178390B2 (en) * 2016-03-30 2019-01-08 Sony Interactive Entertainment Inc. Advanced picture quality oriented rate control for low-latency streaming applications
CN105847805A (zh) * 2016-03-30 2016-08-10 乐视控股(北京)有限公司 一种基于滑动窗口的码率控制方法和装置
CN110225343B (zh) * 2019-05-20 2021-07-13 北京佳讯飞鸿电气股份有限公司 一种视频编码的码率控制方法及装置
CN113438501B (zh) * 2020-03-23 2023-10-27 腾讯科技(深圳)有限公司 视频压缩方法、装置、计算机设备和存储介质

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110166780A (zh) * 2018-06-06 2019-08-23 腾讯科技(深圳)有限公司 视频的码率控制方法、转码处理方法、装置和机器设备

Also Published As

Publication number Publication date
CN114786012A (zh) 2022-07-22

Similar Documents

Publication Publication Date Title
CN104885455B (zh) 一种用于视频编码的计算机实现的方法及装置
CN110876060B (zh) 一种编码过程中的码率调整方法及装置
US7720145B2 (en) Model based bit rate control for a macroblock encoder
KR100974025B1 (ko) 레이트-왜곡 특징들을 사용하는 비디오 코딩을 위한 2 패스레이트 제어 기술들
JP4764136B2 (ja) 動画像符号化装置、及びフェードシーン検出装置
EP1667464B1 (en) Method and apparatus for encoding moving pictures
KR19990076563A (ko) 동화상 부호화 방식
KR102502614B1 (ko) 광학 흐름을 사용한 예측 미세조정을 위한 방법 및 장치
JPWO2005064947A1 (ja) 動画像符号化方法及び装置
US8774268B2 (en) Moving image encoding apparatus and method for controlling the same
US20140226724A1 (en) System and Method for the Dynamic Reduction of the Entropy of a Signal Upstream to a Data Compression Device
CN114786012B (zh) 一种码率控制方法、装置和可读存储介质
CN116506631B (zh) 一种视频编码方法、视频编码装置和可读存储介质
JP2001028753A (ja) 動画像符号化装置及びその方法
US20140177701A1 (en) System and method for time budget achievement in real-time video encoding
JPH07264595A (ja) 画像のソース符号化方法
CN112243129B (zh) 视频数据处理方法、装置、计算机设备及存储介质
US9426474B2 (en) Transcoder
JP2002152758A (ja) 画像符号化装置および画像符号化方法
JP2008252225A (ja) 動画像符号化装置及び方法
JP3753371B2 (ja) 動画像圧縮符号化レート制御装置
CN112422962A (zh) 一种控制视频编码层的方法及装置
CN115914629A (zh) 视频编码方法、装置及电子设备
EP2458861A1 (en) Bit rate regulation module and method for regulating bit rate
Tsai Rate control for low-delay video using a dynamic rate table

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