CN111770332A - 插帧处理方法、插帧处理装置、存储介质与电子设备 - Google Patents
插帧处理方法、插帧处理装置、存储介质与电子设备 Download PDFInfo
- Publication number
- CN111770332A CN111770332A CN202010500990.0A CN202010500990A CN111770332A CN 111770332 A CN111770332 A CN 111770332A CN 202010500990 A CN202010500990 A CN 202010500990A CN 111770332 A CN111770332 A CN 111770332A
- Authority
- CN
- China
- Prior art keywords
- frame
- reference frame
- original
- interpolated
- list
- 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
Images
Classifications
-
- 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/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本公开提供一种插帧处理方法、插帧处理装置、计算机可读存储介质与电子设备,涉及视频处理技术领域。该插帧处理方法包括:获取当前编码帧的参考帧列表,所述参考帧列表包括所述当前编码帧的原始参考帧的信息;基于所述原始参考帧,或者所述原始参考帧与所述当前编码帧进行插帧,得到至少一个插值参考帧;根据所述插值参考帧更新所述参考帧列表。本公开丰富参考帧列表,提高视频编码的性能。
Description
技术领域
本公开涉及视频处理技术领域,尤其涉及一种插帧处理方法、插帧处理装置、计算机可读存储介质与电子设备。
背景技术
视频编码是一种通过压缩技术将原始视频格式的文件转换成另一种视频格式文件的方式,能够在一定程度上降低视频数据的大小。在视频编码的过程中,通常会引入参考帧列表来对参考帧进行管理。通常,参考帧列表中的参考帧,按照播放顺序与当前编码帧会存在一定的时间差异,其差异越大,被参考的可能性越低。因此,现有技术在基于参考帧列表进行视频编码时,可能会出现由于参考帧与当前编码帧的差异较大,而导致参考效率降低的情况;或者参考帧列表中不存在较当前编码帧,前后向播放顺序,时间相位更为接近的参考帧,而导致视频编码的性能受到影响。因此,如何采取有效的方法对参考帧进行处理,以提高视频编码的性能,是现有技术亟待解决的问题。
发明内容
本公开提供了一种插帧处理方法、插帧处理装置、计算机可读存储介质与电子设备,进而至少在一定程度上提高视频编码的性能。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的第一方面,提供一种插帧处理方法,包括:获取当前编码帧的参考帧列表,所述参考帧列表包括所述当前编码帧的原始参考帧的信息;基于所述原始参考帧,或者所述原始参考帧与所述当前编码帧进行插帧,得到至少一个插值参考帧;根据所述插值参考帧更新所述参考帧列表。
根据本公开的第二方面,提供一种插帧处理装置,包括:参考帧列表获取模块,用于获取当前编码帧的参考帧列表,所述参考帧列表包括所述当前编码帧的原始参考帧的信息;插值参考帧获取模块,用于基于所述原始参考帧,或者所述原始参考帧与所述当前编码帧进行插帧,得到至少一个插值参考帧;参考帧列表更新模块,用于根据所述插值参考帧更新所述参考帧列表。
根据本公开的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述插帧处理方法。
根据本公开的第四方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述插帧处理方法。
本公开的技术方案具有以下有益效果:
根据上述插帧处理方法、插帧处理装置、计算机可读存储介质与电子设备,获取当前编码帧的参考帧列表,参考帧列表包括当前编码帧的原始参考帧的信息;基于原始参考帧,或者原始参考帧与当前编码帧进行插帧,得到至少一个插值参考帧;根据插值参考帧更新参考帧列表。一方面,本示例性实施例通过插帧的方式,得到至少一个插值参考帧,并更新参考帧列表,丰富了参考帧列表中的信息,从而提高了视频编码的性能;另一方面,基于原始参考帧或者原始参考帧与当前编码帧进行插帧,使得插帧得到的插值参考帧被参考的有效性更高,进一步保证了视频编码的准确性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出本示例性实施方式的电子设备的示意图;
图2示出本示例性实施方式的一种插帧处理方法的流程图;
图3示出本示例性实施方式的一种插帧处理方法的示意图;
图4示出本示例性实施方式中一种基于运动估计确定运动矢量的示意图;
图5示出本示例性实施方式中一种对修正后的运动矢量的示意图;
图6示出本示例性实施方式中一种基于运动补偿进行插帧的示意图;
图7示出本示例性实施方式中参考帧列表的更新示意图;
图8示出本示例性实施方式的一种插帧处理装置的结构框图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
本公开的示例性实施方式提供一种用于实现插帧处理方法的电子设备。该电子设备至少包括处理器和存储器,存储器用于存储处理器的可执行指令,处理器配置为经由执行可执行指令来执行插帧处理方法。
电子设备可以以各种形式来实施,例如可以包括手机、平板电脑、笔记本电脑、个人数字助理(Personal Digital Assistant,PDA)、导航装置、可穿戴设备、无人机等移动设备,以及台式电脑、智能电视等固定设备。下面以图1中的移动终端100为例,对电子设备的构造进行示例性说明。本领域技术人员应当理解,除了特别用于移动目的的部件之外,图1中的构造也能够应用于固定类型的设备。在另一些实施方式中,移动终端100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、软件或软件和硬件的组合实现。各部件间的接口连接关系只是示意性示出,并不构成对移动终端100的结构限定。在另一些实施方式中,移动终端100也可以采用与图1不同的接口连接方式,或多种接口连接方式的组合。
如图1所示,移动终端100具体可以包括:处理器110、内部存储器121、外部存储器接口122、通用串行总线(Universal Serial Bus,USB)接口130、充电管理模块140、电源管理模块141、电池142、天线1、天线2、移动通信模块150、无线通信模块160、音频模块170、扬声器171、受话器172、麦克风173、耳机接口174、传感器模块180、显示屏190、摄像模组191、指示器192、马达193、按键194以及用户标识模块(Subscriber Identification Module,SIM)卡接口195等。其中传感器模块180可以包括深度传感器1801、压力传感器1802、陀螺仪传感器1803、气压传感器1804等。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(Application Processor,AP)、调制解调处理器、图形处理器(Graphics ProcessingUnit,GPU)、图像信号处理器(Image Signal Processor,ISP)、控制器、视频编码器、视频解码器、数字信号处理器(Digital Signal Processor,DSP)、基带处理器和/或神经网络处理器(Neural-Network Processing Unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
在一些实施方式中,处理器110可以包括一个或多个接口。接口可以包括集成电路(Inter-Integrated Circuit,I2C)接口、集成电路内置音频(Inter-Integrated CircuitSound,I2S)接口、脉冲编码调制(Pulse Code Modulation,PCM)接口、通用异步收发传输器(Universal Asynchronous Receiver/Transmitter,UART)接口、移动产业处理器接口(Mobile Industry Processor Interface,MIPI)、通用输入输出(General-PurposeInput/Output,GPIO)接口、用户标识模块(Subscriber Identity Module,SIM)接口和/或通用串行总线(Universal Serial Bus,USB)接口等。通过不同的接口和移动终端100的其他部件形成连接。
USB接口130是符合USB标准规范的接口,具体可以是MiniUSB接口,MicroUSB接口,USBTypeC接口等。USB接口130可以用于连接充电器为移动终端100充电,也可以连接耳机,通过耳机播放音频,还可以用于移动终端100连接其他电子设备,例如连接电脑、外围设备等。
充电管理模块140用于从充电器接收充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
电源管理模块141用于连接电池142、充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110、内部存储器121、显示屏190、摄像模组191和无线通信模块160等供电,还可以用于监测电池的状态。
移动终端100的无线通信功能可以通过天线1、天线2、移动通信模块150、无线通信模块160、调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。移动终端100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。
无线通信模块160可以提供应用在移动终端100上的包括无线局域网(WirelessLocal Area Networks,WLAN)(如无线保真(Wireless Fidelity,Wi-Fi)网络)、蓝牙(Bluetooth,BT)、全球导航卫星系统(Global Navigation Satellite System,GNSS)、调频(Frequency Modulation,FM)、近距离无线通信技术(Near Field Communication,NFC)、红外技术(Infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施方式中,移动终端100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得移动终端100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(Global System for Mobilecommunications,GSM),通用分组无线服务(General Packet Radio Service,GPRS),码分多址接入(Code Division Multiple Access,CDMA),宽带码分多址(Wideband CodeDivision Multiple Access,WCDMA),时分码分多址(Time Division-Synchronous CodeDivision Multiple Access,TD-SCDMA),长期演进(Long Term Evolution,LTE),新空口(New Radio,NR),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。
移动终端100通过GPU、显示屏190及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏190和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。移动终端100可以包括一个或多个显示屏190,用于显示图像,视频等。
移动终端100可以通过ISP、摄像模组191、视频编码器、视频解码器、GPU、显示屏190及应用处理器等实现拍摄功能。
摄像模组191用于捕获静态图像或视频,通过感光元件采集光信号,转换为电信号。ISP用于处理摄像模组191反馈的数据,将电信号转换成数字图像信号。
视频编码器、与视频解码器用于对数字视频压缩或解压缩。移动终端100可以支持一种或多种视频编码器、视频解码器。这样,移动终端100可以播放或录制多种编码格式的视频,例如:动态图像专家组(Moving Picture Experts Group,MPEG)1,MPEG2,MPEG3,MPEG4等。
外部存储器接口122可以用于连接外部存储卡,例如Micro SD卡,实现扩展移动终端100的存储能力。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储移动终端100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(Universal Flash Storage,UFS)等。处理器110通过运行存储在内部存储器121的指令和/或存储在设置于处理器中的存储器的指令,执行移动终端100的各种功能应用以及数据处理。
移动终端100可以通过音频模块170、扬声器171、受话器172、麦克风173、耳机接口174及应用处理器等实现音频功能。例如音乐播放、录音等。音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。扬声器171,用于将音频电信号转换为声音信号。受话器172,用于将音频电信号转换成声音信号。当移动终端100接听电话或语音信息时,可以通过将受话器172靠近人耳接听语音。麦克风173,用于将声音信号转换为电信号。耳机接口174用于连接有线耳机。
深度传感器1801用于获取景物的深度信息。在一些实施方式中,深度传感器可以设置于摄像模组191。压力传感器1802用于感受压力信号,可以将压力信号转换成电信号。陀螺仪传感器1803可以用于确定移动终端100的运动姿态,可用于拍摄防抖、导航、体感游戏等场景。气压传感器1804用于测量气压,可以通过气压传感器1804测得的气压值计算海拔高度,辅助定位和导航。
此外,根据实际需要,还可以在传感器模块180中设置其他功能的传感器,例如磁传感器、加速度传感器、距离传感器、接近光传感器、指纹传感器、温度传感器、触摸传感器、环境光传感器、骨传导传感器等等。
按键194包括开机键,音量键等。按键194可以是机械按键。也可以是触摸式按键。移动终端100可以接收按键输入,产生与移动终端100的用户设置以及功能控制有关的键信号输入。
马达193可以产生振动提示,例如来电、闹钟、接收信息等的振动提示,也可以用于触摸振动反馈。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
移动终端100可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口195可以支持Nano SIM卡,Micro SIM卡,SIM卡等。移动终端100通过SIM卡和网络交互,实现通话以及数据通信等功能。
下面对本公开示例性实施方式的插帧处理方法和插帧处理装置进行具体说明。
图2示出了本示例性实施方式中一种插帧处理方法的流程,包括以下步骤S210~S230:
步骤S210,获取当前编码帧的参考帧列表,参考帧列表包括当前编码帧的原始参考帧的信息。
通常,需要编码的图像帧可以分为三种类型:I(Intra-coded picture,帧内编码图像)帧、P(Predictive-coded Picture,预测编码图像)帧和B(BidirectionllyPredicted Picture,双向预测编码图像)帧。其中,由于B帧和P帧类型的图像帧采用帧间编码的编码方式,而帧间编码又是以参考帧为基础进行的,因此,需要以参考帧列表来管理之前生成的参考帧,以方便用于对当前图像帧进行编码。
当前编码帧的参考帧列表,即为当前需要进行编码处理的图像帧,所对应的包含编码所需的参考帧的列表。在该参考帧列表中,可以包括当前编码帧的原始参考帧的信息,根据当前编码帧类型的不同,参考帧列表中所包含的原始参考帧的类型也可以不相同,例如当前编码帧为双向预测帧时,参考帧列表中可以包括当前编码帧的原始前向编码帧和原始后向编码帧;当前编码帧为单向预测帧时,参考帧列表中可以包括当前编码帧的原始前向编码帧或原始后向编码帧等。
步骤S220,基于原始参考帧,或者原始参考帧与当前编码帧进行插帧,得到至少一个插值参考帧。
本示例性实施例可以通过多种方式进行插帧,具体的,可以基于当前编码帧对应的参考帧列表中的原始参考帧进行插帧,例如从参考帧列表中选择位于当前编码帧之前一帧的原始前向参考帧,和位于当前编码帧之后一帧的原始后向参考帧,基于这两个原始参考帧,进行插帧;或者从参考帧列表中选择位于当前编码帧之前的两帧原始前向参考帧进行插帧;再或者从参考帧列表中选择位于当前编码帧之后的两帧原始后向参考帧进行插帧等。在本示例性实施例中,还可以基于原始参考帧与当前编码帧进行插帧,即可以将当前编码帧和原始参考帧共同作为输入帧确定插值参考帧,例如根据当前编码帧和当前帧之前的原始参考帧进行插帧等。此外,还可以将得到的插值参考帧作为输入帧,与原始参考帧,或者与当前编码帧进行新的插帧过程,以得到新的插值参考帧等等,本公开对此不做具体限定。
需要说明的是,在进行插帧时,本示例性实施例可以根据需要,自定义插值参考帧的插帧数量,例如,可以在两帧原始参考帧之间插入一个插值参考帧,也可以插入两个或多个插值参考帧等;也可以设置插值参考帧的插帧位置,例如在指定时间戳的位置进行插帧,或者进行等时间间隔插帧等。
在一示例性实施例中,当前编码帧为双向预测帧时,上述原始参考帧可以包括当前编码帧的原始前向参考帧和原始后向参考帧。
其中,双向预测帧是B帧,在编码时,需要之前的图像帧,也需要后来的图像帧,采用运动预测的方式进行帧间双向预测编码。原始前向参考帧,是相对当前编码帧的之前时间点的原始参考帧;原始后向参考帧,是相对当前编码帧的之后时间点的原始参考帧。需要说明的是,插帧得到的0时间相位的插值参考帧,可以认为是原始前向参考帧。相位信息是指将两帧原始帧之间的间隔等间距划分为N份,每一份为一个时间相位,当前帧与前一帧之间就是一个时间相位,当前帧与后一帧之间也是一个时间相位,因此,0时间相位可以是指与当前帧非常接近的一帧插帧参考帧。
进一步的,在一示例性实施例中,上述步骤S220可以包括:
基于至少两个原始参考帧,或者至少一个原始参考帧与当前编码帧,在第一原始前向参考帧与第一原始后向参考帧之间进行插帧,得到至少一个插值参考帧;
其中,第一原始前向参考帧为最接近当前编码帧的原始前向参考帧,第一原始后向参考帧为最接近当前编码帧的原始后向参考帧。
如果当前编码帧为双向预测帧时,可以基于至少两个原始参考帧,或者至少一个原始参考帧与当前编码帧进行插帧。
具体的,在通过至少两个原始参考帧进行插帧时,可以通过多种方式进行插帧,以下通过两种方式进行举例说明。
第一种方式,前后向对称原始参考帧插帧;
原始前向参考帧与原始后向参考帧,根据播放顺序,以当前编码帧为中间帧,进行前后向原始参考帧的对称插帧,若当前编码帧为第k帧,则可以选取第k-n帧和第k+n帧形成一对原始参考帧作为输入帧进行插帧,其中,n为正整数。例如,可以选取第k-1帧和第k+1帧形成一对原始参考帧作为输入帧,或者第k-2帧和第k+2帧形成一对原始参考帧作为输入帧,进行插帧,依次类推。另外,插帧的输入帧可为原始参考帧,也可为已经得到的插值参考帧。
第二种方式,前后向非对称原始参考帧插帧;
原始前向参考帧与原始后向参考帧,根据播放顺序,以当前编码帧为中间帧,进行前后向原始参考帧的非对称插帧,若当前帧为第k帧,则可以选择第k-i帧和第k+j帧形成一对原始参考帧作为输入帧进行插帧,其中,i与j为正整数,且i≠j。例如可以选取第k-2帧和第k+3帧形成一对原始参考帧作为输入帧进行插帧。另外,插帧的输入帧可为原始参考帧,也可为已经得到的插值参考帧。
此外,除了以上通过前后向对称原始参考帧插帧,和前后非对称原始参考帧插帧以外,还可以通过前向单向原始参考帧插帧,例如从原始前向参考帧中选择至少两帧进行插帧;以及通过后向单向原始参考帧插帧,例如,从原始后向参考帧中选择至少两帧进行插帧等,本示例性实施例对此不做具体限定。
在本示例性实施例中,插值参考帧的插帧位置可以根据需要进行设置,特别的,为了保证插值参考帧的可参照性,以提高编码性能。本示例性实施例可以将插值参考帧插入第一原始前向参考帧与第一原始后向参考帧之间插入至少一帧插值参考帧,其中,第一原始前向参考帧为最接近当前编码帧的原始前向参考帧,第一原始后向参考帧为最接近当前编码帧的原始后向参考帧。
在一示例性实施例中,上述基于至少两个原始参考帧,或者至少一个原始参考帧与当前编码帧,在第一原始前向参考帧与第一原始后向参考帧之间进行插帧,得到至少一个插值参考帧,可以包括:
基于第一原始前向参考帧与第一原始后向参考帧,在第一原始前向参考帧与当前编码帧之间插入至少一个插值前向参考帧,以及在当前编码帧与第一原始后向参考帧之间插入至少一个插值后向参考帧。
即本示例性实施例可以以当前编码帧为基准,分别在第一原始前向参考帧与当前编码帧之间,和第一原始后向参考帧与当前编码帧之间进行插帧。通过在当前编码帧两侧进行插帧,进一步减小插值参考帧与当前编码帧的时间差异,从而提高视频编码性能。
在一示例性实施例中,当前编码帧为单向预测帧,原始参考帧包括当前编码帧的原始前向参考帧或原始后向参考帧。
其中,单向预测帧在进行编码时,仅需要单向的图像帧,例如P帧。单向预测帧的参考帧列表中包括原始前向参考帧或原始后向参考帧的信息。
进一步的,在一示例性实施例中,上述基于原始参考帧,或者原始参考帧与当前编码帧进行插帧,得到至少一个插值参考帧,包括:
基于至少两个原始参考帧,或者至少一个原始参考帧与当前编码帧,在第一原始前向参考帧与当前编码帧之间,或者第一原始后向参考帧与当前编码帧之间进行插帧,得到至少一个插值参考帧;
其中,第一原始前向参考帧为最接近当前编码帧的原始前向参考帧,第一原始后向参考帧为最接近当前编码帧的原始后向参考帧。
如果当前编码帧为单向预测帧时,可以基于至少两个原始参考帧,或者至少一个原始参考帧与当前编码帧进行插帧。
具体的,在通过至少两个原始参考帧进行插帧时,本示例性实施例通过以下两种方式举例说明。
第一种方式,单向紧相邻原始参考帧插帧;
原始前向参考帧或原始后向参考帧,根据播放顺序,进行前向或后向紧相邻原始参考帧对插帧,以前向插帧为例,若当前编码帧为第k帧,则进行前向紧相邻插帧时,可以选取k+1和k+2形成一对原始参考帧,或者k+2和k+3等形成一对原始参考帧作为输入进行插帧,插帧的输入帧可为原始参考帧,也可为已经得到的插值参考帧。
第二种方式,单向非紧相邻原始参考帧插帧;
原始前向参考帧或原始后向参考帧,根据播放顺序,进行前向或后向非紧相邻原始参考帧对插帧,以前向插帧为例,若当前帧为第k帧,则进行前向非紧相邻插帧时,可以选取k+1和k+3形成一对原始参考帧,或者k+2和k+4形成一对原始参考帧,再或者k+1和k+4形成一对原始参考帧等,作为输入进行插帧,插帧的输入帧可为原始参考帧,也可为已经得到的插值参考帧。
在一示例性实施例中,上述基于至少两个原始参考帧,或者至少一个原始参考帧与当前编码帧,在第一原始前向参考帧与当前编码帧之间进行插帧,得到至少一个插值参考帧,可以包括:
基于第一原始前向参考帧与当前编码帧,在第一原始前向参考帧与当前编码帧之间进行插帧,得到至少一个插值参考帧。
即将与当前编码帧最接近的原始前向参考帧与当前编码帧作为输入帧,在这两帧之间进行插帧。
同理,还可以以第一原始后向参考帧与当前编码帧,在第一原始后向参考帧与当前编码帧之间进行插帧,得到至少一个差值参考帧。
在本示例性实施例中,插帧数量可以根据需要进行自定义设置,也可以根据实际的插帧方式确定,举例说明,如图3所示,原始前向参考帧的数量为N个,原始后向参考帧的数量为M个,若N<M,插帧时,可以以N作为插值参考帧的数量,进行原始前向参考帧与原始后向参考帧的插帧过程,得到N个0时间相位的前向插值参考帧。
本示例实施方式中,上述的插帧过程可以采用运动估计运动补偿法、光流法、神经网络插帧或者其他任意帧率转化技术。
举例而言,上述的运动估计运动补偿方法可以包括以下两个步骤:
1、运动估计
根据至少两幅图像,采用运动估计的方法确定两幅图像中所有物体或区域的运动矢量。具体的,可以将两幅图像记为当前图像和参考图像,按照预设大小对两幅图像进行分块,并对分块后的图像进行遍历,搜索当前图像中每个块在参考图像中的匹配块,确定当前图像每个块相对于参考图像的MV(Motion Vector,运动矢量),即前向MV,同理,采用上述方法确定参考图像每个块相对于当前图像的MV,即后向MV,如图4所示。
随后,对前向MV和后向MV进行修正操作,其中,修正操作包括滤波,加权等多种操作中至少一种或多种的组合,最终确定每个块的前向MV和后向MV,如图5所示。
2、运动补偿
通过插帧时间相位对最终确定的每个块的前向MV或后向MV进行校正,然后在插帧图像中生成每个插值块相对于当前图像和参考图像的映射MV,按照该映射MV在参考图像和当前图像中找到对应块,进行两个块的权重插值,生成该插值块的所有像素,最终得到插帧图像,如图6所示。
步骤S230,根据插值参考帧更新参考帧列表。
根据得到的插帧参考帧可以对参考帧列表进行更新,得到新的参考帧列表,具体的,可以是将得到的插帧参考帧与原始参考帧进行合并,也可以将插帧参考帧添加至初始的参考帧列表中等。在对参考帧列表进行更新时,为了提高参考帧列表的有效性,本示例性实施例可以选择性的对参考帧列表中参考帧的数量进行调整,例如删减部分的原始参考帧等。
图7示出了本示例性实施例中一种参考帧列表更新示意图,更新前的参考帧列表中包括n个原始前向参考帧,和m个原始后向参考帧,更新后的参考帧列表中包括n1个原始前向参考帧、m1个原始后向参考帧,x个插值前向参考帧、以及y个插值后向参考帧,其中,n1≤n,m1≤m。
在一示例性实施例中,上述步骤S230,可以包括以下步骤:
将插值参考帧添加到参考帧列表中;
对参考帧列表中的插值参考帧与原始参考帧进行重排。
将插帧得到的插值参考帧添加到参考帧列表中后,可以对插值参考帧和原始参考帧进行重排,其可以按照时间顺序进行排列,也可以按照距离当前编码帧的时间长短来排列,还可以按照原始参考帧和插值参考帧的类型分开进行重排等等。
在一示例性实施例中,在将插值参考帧添加到参考帧列表中时,插帧处理方法还可以包括:
从参考帧列表中移除与当前编码帧相距最远的一个或多个原始参考帧。
为了减小参考帧列表中各参考帧与当前编码帧的差异,提高各参考帧的可信度的同时,降低系统的存储压力,在进行插帧得到插值参考帧后,本示例性实施例还可以将部分原始参考帧从参考帧列表中移除,使得更新后的参考帧列表中的原始参考帧的数量小于更新前的参考帧列表中原始参考帧的数量。具体的,移除的原始参考帧可根据需要自定义设置移除的数量,或者移除哪一时间戳的原始参考帧,例如可为自适应移除时间距离当前编码帧最大的m个原始参考帧;或者在应用于H.264视频编码标准中,插帧后形成N个0时间相位的前向插值参考帧后抛弃所有原始参考帧,形成仅有N个0时间相位的前向插值参考帧列表等。
综上,本示例性实施方式中,获取当前编码帧的参考帧列表,参考帧列表包括当前编码帧的原始参考帧的信息;基于原始参考帧,或者原始参考帧与当前编码帧进行插帧,得到至少一个插值参考帧;根据插值参考帧更新参考帧列表。一方面,本示例性实施例通过插帧的方式,得到至少一个插值参考帧,并更新参考帧列表,丰富了参考帧列表中的信息,从而提高了视频编码的性能;另一方面,基于原始参考帧或者原始参考帧与当前编码帧进行插帧,使得插帧得到的插值参考帧被参考的有效性更高,进一步保证了视频编码的准确性。
本公开的示例性实施方式还提供一种插帧处理装置。如图8所示,该插帧处理装置800可以包括:参考帧列表获取模块810,用于获取当前编码帧的参考帧列表,参考帧列表包括当前编码帧的原始参考帧的信息;插值参考帧获取模块820,用于基于原始参考帧,或者原始参考帧与当前编码帧进行插帧,得到至少一个插值参考帧;参考帧列表更新模块830,用于根据插值参考帧更新参考帧列表。
在一示例性实施例中,当前编码帧为双向预测帧,原始参考帧包括当前编码帧的原始前向参考帧和原始后向参考帧。
在一示例性实施例中,插值参考帧获取模块包括:第一插帧单元,用于基于至少两个原始参考帧,或者至少一个原始参考帧与当前编码帧,在第一原始前向参考帧与第一原始后向参考帧之间进行插帧,得到至少一个插值参考帧;其中,第一原始前向参考帧为最接近当前编码帧的原始前向参考帧,第一原始后向参考帧为最接近当前编码帧的原始后向参考帧。
在一示例性实施例中,第一插帧单元用于基于第一原始前向参考帧与第一原始后向参考帧,在第一原始前向参考帧与当前编码帧之间插入至少一个插值前向参考帧,以及在当前编码帧与第一原始后向参考帧之间插入至少一个插值后向参考帧。
在一示例性实施例中,当前编码帧为单向预测帧,原始参考帧包括当前编码帧的原始前向参考帧或原始后向参考帧。
在一示例性实施例中,插值参考帧获取模块包括:第二插帧单元,用于基于至少两个原始参考帧,或者至少一个原始参考帧与当前编码帧,在第一原始前向参考帧与当前编码帧之间,或者第一原始后向参考帧与当前编码帧之间进行插帧,得到至少一个插值参考帧;其中,第一原始前向参考帧为最接近当前编码帧的原始前向参考帧,第一原始后向参考帧为最接近当前编码帧的原始后向参考帧。
在一示例性实施例中,参考帧列表更新模块包括:插值参考帧添加单元,用于将插值参考帧添加到参考帧列表中;参考帧重排单元,用于对参考帧列表中的插值参考帧与原始参考帧进行重排。
在一示例性实施例中,插帧处理方法还包括:原始参考帧移除模块,用于在将插值参考帧添加到参考帧列表中时,从参考帧列表中移除与当前编码帧相距最远的一个或多个原始参考帧。
上述装置中各模块的具体细节在方法部分实施方式中已经详细说明,未披露的细节内容可以参见方法部分的实施方式内容,因而不再赘述。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
本公开的示例性实施方式还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤,例如可以执行图2中的步骤。
本公开的示例性实施方式提供了一种用于实现上述方法的程序产品,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施方式。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施方式仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限。
Claims (11)
1.一种插帧处理方法,其特征在于,包括:
获取当前编码帧的参考帧列表,所述参考帧列表包括所述当前编码帧的原始参考帧的信息;
基于所述原始参考帧,或者所述原始参考帧与所述当前编码帧进行插帧,得到至少一个插值参考帧;
根据所述插值参考帧更新所述参考帧列表。
2.根据权利要求1所述的方法,其特征在于,所述当前编码帧为双向预测帧,所述原始参考帧包括所述当前编码帧的原始前向参考帧和原始后向参考帧。
3.根据权利要求2所述的方法,其特征在于,所述基于所述原始参考帧,或者所述原始参考帧与所述当前编码帧进行插帧,得到至少一个插值参考帧,包括:
基于至少两个所述原始参考帧,或者至少一个所述原始参考帧与所述当前编码帧,在第一原始前向参考帧与第一原始后向参考帧之间进行插帧,得到至少一个插值参考帧;
其中,所述第一原始前向参考帧为最接近所述当前编码帧的原始前向参考帧,所述第一原始后向参考帧为最接近所述当前编码帧的原始后向参考帧。
4.根据权利要求3所述的方法,其特征在于,所述基于至少两个所述原始参考帧,或者至少一个所述原始参考帧与所述当前编码帧,在第一原始前向参考帧与第一原始后向参考帧之间进行插帧,得到至少一个插值参考帧,包括:
基于所述第一原始前向参考帧与所述第一原始后向参考帧,在所述第一原始前向参考帧与所述当前编码帧之间插入至少一个插值前向参考帧,以及在所述当前编码帧与所述第一原始后向参考帧之间插入至少一个插值后向参考帧。
5.根据权利要求1所述的方法,其特征在于,所述当前编码帧为单向预测帧,所述原始参考帧包括所述当前编码帧的原始前向参考帧或原始后向参考帧。
6.根据权利要求5所述的方法,其特征在于,所述基于所述原始参考帧,或者所述原始参考帧与所述当前编码帧进行插帧,得到至少一个插值参考帧,包括:
基于至少两个所述原始参考帧,或者至少一个所述原始参考帧与所述当前编码帧,在第一原始前向参考帧与所述当前编码帧之间,或者第一原始后向参考帧与所述当前编码帧之间进行插帧,得到至少一个插值参考帧;
其中,所述第一原始前向参考帧为最接近所述当前编码帧的原始前向参考帧,所述第一原始后向参考帧为最接近所述当前编码帧的原始后向参考帧。
7.根据权利要求1所述的方法,其特征在于,所述根据所述插值参考帧更新所述参考帧列表,包括:
将所述插值参考帧添加到所述参考帧列表中;
对所述参考帧列表中的所述插值参考帧与所述原始参考帧进行重排。
8.根据权利要求7所述的方法,其特征在于,在将所述插值参考帧添加到所述参考帧列表中时,所述方法还包括:
从所述参考帧列表中移除与所述当前编码帧相距最远的一个或多个所述原始参考帧。
9.一种插帧处理装置,其特征在于,包括:
参考帧列表获取模块,用于获取当前编码帧的参考帧列表,所述参考帧列表包括所述当前编码帧的原始参考帧的信息;
插值参考帧获取模块,用于基于所述原始参考帧,或者所述原始参考帧与所述当前编码帧进行插帧,得到至少一个插值参考帧;
参考帧列表更新模块,用于根据所述插值参考帧更新所述参考帧列表。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至8任一项所述的方法。
11.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010500990.0A CN111770332B (zh) | 2020-06-04 | 2020-06-04 | 插帧处理方法、插帧处理装置、存储介质与电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010500990.0A CN111770332B (zh) | 2020-06-04 | 2020-06-04 | 插帧处理方法、插帧处理装置、存储介质与电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111770332A true CN111770332A (zh) | 2020-10-13 |
CN111770332B CN111770332B (zh) | 2022-08-09 |
Family
ID=72720095
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010500990.0A Active CN111770332B (zh) | 2020-06-04 | 2020-06-04 | 插帧处理方法、插帧处理装置、存储介质与电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111770332B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112804526A (zh) * | 2020-12-31 | 2021-05-14 | 紫光展锐(重庆)科技有限公司 | 图像数据存储方法、设备及存储介质、芯片、模组设备 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070230578A1 (en) * | 2006-04-04 | 2007-10-04 | Qualcomm Incorporated | Apparatus and method of enhanced frame interpolation in video compression |
CN101411204A (zh) * | 2006-04-04 | 2009-04-15 | 高通股份有限公司 | 视频压缩中增强帧内插的设备和方法 |
CN101491099A (zh) * | 2006-07-11 | 2009-07-22 | 汤姆森特许公司 | 使用虚拟参考画面的方法及装置 |
CN101491101A (zh) * | 2006-07-18 | 2009-07-22 | 汤姆森许可贸易公司 | 用于自适应参考滤波的方法和装置 |
CN101919255A (zh) * | 2007-12-10 | 2010-12-15 | 高通股份有限公司 | 用于视频内插或外推的参考选择 |
US20130101030A1 (en) * | 2011-10-20 | 2013-04-25 | Pontus Carlsson | Transmission of video data |
CN103975598A (zh) * | 2011-12-09 | 2014-08-06 | 高通股份有限公司 | 对于视图合成参考图片的参考图片列表修改 |
CN105052139A (zh) * | 2013-04-04 | 2015-11-11 | 高通股份有限公司 | 用于shvc的多个基础层参考图片 |
US20160057444A1 (en) * | 2013-04-05 | 2016-02-25 | Canon Kabushiki Kaisha | Method and apparatus for encoding or decoding an image with inter layer motion information prediction according to motion information compression scheme |
CN106604030A (zh) * | 2015-10-16 | 2017-04-26 | 中兴通讯股份有限公司 | 参考图像的处理方法及装置、编码器以及解码器 |
CN107580229A (zh) * | 2011-09-23 | 2018-01-12 | 维洛媒体国际有限公司 | 用于视频译码的参考图像列表构造 |
-
2020
- 2020-06-04 CN CN202010500990.0A patent/CN111770332B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070230578A1 (en) * | 2006-04-04 | 2007-10-04 | Qualcomm Incorporated | Apparatus and method of enhanced frame interpolation in video compression |
CN101411204A (zh) * | 2006-04-04 | 2009-04-15 | 高通股份有限公司 | 视频压缩中增强帧内插的设备和方法 |
CN101491099A (zh) * | 2006-07-11 | 2009-07-22 | 汤姆森特许公司 | 使用虚拟参考画面的方法及装置 |
CN101491101A (zh) * | 2006-07-18 | 2009-07-22 | 汤姆森许可贸易公司 | 用于自适应参考滤波的方法和装置 |
CN101919255A (zh) * | 2007-12-10 | 2010-12-15 | 高通股份有限公司 | 用于视频内插或外推的参考选择 |
CN107580229A (zh) * | 2011-09-23 | 2018-01-12 | 维洛媒体国际有限公司 | 用于视频译码的参考图像列表构造 |
US20130101030A1 (en) * | 2011-10-20 | 2013-04-25 | Pontus Carlsson | Transmission of video data |
CN103975598A (zh) * | 2011-12-09 | 2014-08-06 | 高通股份有限公司 | 对于视图合成参考图片的参考图片列表修改 |
CN105052139A (zh) * | 2013-04-04 | 2015-11-11 | 高通股份有限公司 | 用于shvc的多个基础层参考图片 |
US20160057444A1 (en) * | 2013-04-05 | 2016-02-25 | Canon Kabushiki Kaisha | Method and apparatus for encoding or decoding an image with inter layer motion information prediction according to motion information compression scheme |
CN106604030A (zh) * | 2015-10-16 | 2017-04-26 | 中兴通讯股份有限公司 | 参考图像的处理方法及装置、编码器以及解码器 |
Non-Patent Citations (2)
Title |
---|
彭磊: "H.264帧间预测算法研究与设计实现", 《中国优秀硕士论文全文数据库》 * |
赵悦: "基于运动补偿的帧率提升方法", 《中国优秀硕士学位论文全文数据库(电子期刊)》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112804526A (zh) * | 2020-12-31 | 2021-05-14 | 紫光展锐(重庆)科技有限公司 | 图像数据存储方法、设备及存储介质、芯片、模组设备 |
CN112804526B (zh) * | 2020-12-31 | 2022-11-11 | 紫光展锐(重庆)科技有限公司 | 图像数据存储方法、设备及存储介质、芯片、模组设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111770332B (zh) | 2022-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111580765B (zh) | 投屏方法、投屏装置、存储介质、被投屏设备与投屏设备 | |
WO2022037331A1 (zh) | 视频处理方法、视频处理装置、存储介质与电子设备 | |
CN111784614B (zh) | 图像去噪方法及装置、存储介质和电子设备 | |
CN111641828B (zh) | 视频处理方法及装置、存储介质和电子设备 | |
US8804832B2 (en) | Image processing apparatus, image processing method, and program | |
US11716438B2 (en) | Method for motion estimation, non-transitory computer-readable storage medium, and electronic device | |
CN112954251B (zh) | 视频处理方法、视频处理装置、存储介质与电子设备 | |
CN111741303B (zh) | 深度视频处理方法、装置、存储介质与电子设备 | |
CN111694978B (zh) | 图像相似度检测方法、装置、存储介质与电子设备 | |
CN112039699B (zh) | 网络切片选取方法、装置、存储介质与电子设备 | |
JPWO2010035733A1 (ja) | 画像処理装置および方法 | |
WO2010035730A1 (ja) | 画像処理装置および方法 | |
CN111161176B (zh) | 图像处理方法及装置、存储介质和电子设备 | |
CN111835973A (zh) | 拍摄方法、拍摄装置、存储介质与移动终端 | |
CN113986177A (zh) | 投屏方法、投屏装置、存储介质与电子设备 | |
CN113313776A (zh) | 图像处理方法、图像处理装置、存储介质与电子设备 | |
CN112599144A (zh) | 音频数据处理方法、音频数据处理装置、介质与电子设备 | |
CN111770332B (zh) | 插帧处理方法、插帧处理装置、存储介质与电子设备 | |
CN111598919A (zh) | 运动估计方法、运动估计装置、存储介质与电子设备 | |
CN111800581B (zh) | 图像生成方法、图像生成装置、存储介质与电子设备 | |
CN115550669B (zh) | 一种视频转码方法及装置、电子设备和存储介质 | |
CN111783962B (zh) | 数据处理方法、数据处理装置、存储介质与电子设备 | |
CN113781336B (zh) | 图像处理的方法、装置、电子设备与存储介质 | |
CN112217996B (zh) | 图像处理方法、图像处理装置、存储介质与电子设备 | |
CN113542739A (zh) | 图像编码方法及装置、图像解码方法及装置、介质、设备 |
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 |