CN116208780A - 一种数据处理的方法以及装置 - Google Patents

一种数据处理的方法以及装置 Download PDF

Info

Publication number
CN116208780A
CN116208780A CN202111450801.4A CN202111450801A CN116208780A CN 116208780 A CN116208780 A CN 116208780A CN 202111450801 A CN202111450801 A CN 202111450801A CN 116208780 A CN116208780 A CN 116208780A
Authority
CN
China
Prior art keywords
frame
redundant
frames
data
entropy
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.)
Pending
Application number
CN202111450801.4A
Other languages
English (en)
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202111450801.4A priority Critical patent/CN116208780A/zh
Publication of CN116208780A publication Critical patent/CN116208780A/zh
Pending legal-status Critical Current

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/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor

Landscapes

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

Abstract

本申请提供一种数据处理的方法以及装置,其中,方法包括:对压缩码流进行熵解码。再对熵解码后的数据进行语义分析,获取其中的冗余帧。根据熵解码后的数据中的冗余帧更新熵解码后的数据,以获取更新后的数据。再对更新后的数据进行熵编码,以获取再压缩码流。通过这种方式,不需要对压缩码流进行完整的解码,以及额外的编码过程,基于熵解码后获取的频域数据,就能够对视频进行冗余删减处理,节约了降低视频存储量所需的算力。

Description

一种数据处理的方法以及装置
技术领域
本申请涉及视频图像处理技术领域,尤其涉及一种数据处理的方法以及装置。
背景技术
目前摄像机被广泛使用,比如高速公路上基本每几公里就会有一个摄像机,城市道路的智能化管理也应用了大量的摄像机,还有停车场、工业园区、超市等多种场景也应用了大量的摄像机。
摄像机的广泛使用,也引发了视频或图像的存储量的爆炸式增长。这给视频或者图像的存储、传输带来了巨大的压力。如何能够在节省算力的基础上,降低视频或者图像的存储量是亟待解决的问题。
发明内容
本申请实施例提供一种数据处理的方法以及装置,能够在节省算力的基础上,降低视频或者图像的存储量。
为达到上述目的,本申请实施例提供如下技术方案:
第一方面,本申请提供一种数据处理的方法,可以适用于任何一种需要对图像或者视频进行冗余删减处理的场景。包括:获取压缩码流。具体的,编码端获取压缩码流,或者说源设备获取压缩码流。对压缩码流进行熵解码,以获取熵解码后的数据。本申请实施例对采用何种熵解码的方法对压缩码流进行熵解码并不限定对熵解码后的数据进行语义分析,以获取熵解码后的数据中的冗余帧。其中,冗余帧可以理解为图像或者视频中,用户不关注的图像帧,或者可以理解为与其他帧携带的内容非常相似的图像帧。根据冗余帧更新熵解码后的数据,以获取更新后的数据。本申请实施例中涉及的更新包括修改、删除以及替换。对更新后的数据进行编码处理,以获取再压缩码流。通过第一方面提供的方案,在编码端对视频进行冗余删减处理,使得通过通用的解码器就能够获取到的压缩码流进行解码。此外,本申请实施例提供的方案通过对熵解码后的数据语义分析,获取其中的冗余帧,并根据冗余帧更新熵解码后的数据,以降低存储这些冗余帧所需的数据量,进而达到降低视频或者图像的存储量的目的。通过这种方式,不需要对压缩码流进行完整的解码,以及额外的编码过程,基于熵解码后获取的频域数据,就能够对视频进行冗余删减处理,降低了计算量,节约算力。
在第一方面的一种可能的实施方式中,根据冗余帧更新熵解码后的数据,以获取更新后的数据,包括:根据模板帧更新冗余帧,以获取更新后的数据。在这种实施方式中,给出了一种具体的根据冗余帧更新熵解码后的数据的方式,通过这种方式,不对熵解码后的图像帧进行删除,保留了每一帧图像帧的位置,以保证解码端可以依照通用流程对再压缩码流进行解码操作。此外,通过这种方式,不需要完整保存每一帧冗余帧携带的内容,冗余帧携带的大部分内容可以根据模板帧携带的内容确定,降低了存储视频所需的数据量。
在第一方面的一种可能的实施方式中,根据模板帧更新冗余帧,以获取更新后的数据,包括:熵编码后的数据中单向预测编码帧(predicted frames,P-Frame)为冗余帧时,根据P帧的参考帧更新P帧,以获取更新后的数据。在这种实施方式中,给出冗余帧为P帧时一种优选的模板帧的确定方式。需要说明的是,在一种可能的实施方式中,也可以只利用模板帧更新冗余帧中的P帧,当然也可以更新冗余帧中除P帧之外的其他类型的图像帧。
在第一方面的一种可能的实施方式中,根据模板帧更新冗余帧,以获取更新后的数据,包括:熵编码后的数据中帧内编码帧(intra coded frames,I-Frame)为冗余帧时,根据目标帧更新I帧,以获取更新后的数据,目标帧是I帧的前一帧I帧。在这种实施方式中,给出冗余帧为I帧时一种优选的模板帧的确定方式。需要说明的是,在一种可能的实施方式中,也可以只利用模板帧更新冗余帧中的I帧,当然也可以更新冗余帧中除I帧之外的其他类型的图像帧。
在第一方面的一种可能的实施方式中,对熵解码后的数据进行语义分析,以获取熵解码后的数据中的冗余帧,包括:将熵解码后的数据输入至目标模型中,目标模型是基于标注了冗余帧和非冗余帧的熵解码数据作为训练数据得到的模型。根据目标模型的预测结果获取熵解码后的数据中的冗余帧。在这种实施方式中,可以以标注了冗余帧和非冗余帧的熵解码数据作为初始模型的训练数据,对模型进行迭代训练,以获取训练后的模型,即目标模型。再将熵解码后的数据作为目标模型的输入,以获取该熵解码后的数据中的冗余帧,或者非冗余帧。这种实施方式,给出了一种具体的确定冗余帧的方式,增加了方案的多样性。
在第一方面的一种可能的实施方式中,更新后的冗余帧包括冗余帧的标识,更新后的冗余帧中除冗余帧的标识之外的其他信息复用模板帧中除模板帧的标识之外的其他信息。在这种实施方式中,通过修改冗余帧的帧头(本申请也称之为标识),即达到了节省数据存储量的目的,还可以实现格式兼容,使得通过标准的解码器就可以针对基于更新后的数据获取的压缩码流进行解码处理。
在第一方面的一种可能的实施方式中,该方法还包括:获取监控视频。对监控视频进行编码处理,以获取压缩码流。
在第一方面的一种可能的实施方式中,更新后的冗余帧还包括指示标识,指示标识用于指示解码端更新后的冗余帧中除冗余帧的标识之外的其他信息复用模板帧中除模板帧的标识之外的其他信息。在这种实施方式中,更新后的冗余帧不需要保存完整的原数据,只需要包括指示标识,解码端就可以就可以根据该指示标识获取该冗余帧的原数据与模板帧的原数据相同,降低了需要存储的计算量。
在第一方面的一种可能的实施方式中,对熵解码后的数据进行语义分析,以获取熵解码后的数据中的冗余帧,包括:对熵解码后的数据中的相邻P帧进行相似性比对,若相似性超过阈值,则确定相邻P帧中的后一帧P帧为冗余帧。在这种实施方式中,给出了一种确定冗余帧的方式,增加了方案的多样性。
在第一方面的一种可能的实施方式中,对熵解码后的数据进行语义分析,以获取熵解码后的数据中的冗余帧,包括:对熵解码后的数据中全部I帧中相邻I帧进行相似性比对,若相似性超过阈值,则确定相邻I帧中的后一帧I帧为冗余帧。在这种实施方式中,给出了一种确定冗余帧的方式,增加了方案的多样性。
第二方面,本申请提供一种数据处理的装置,包括:第一获取模块,用于获取压缩码流。熵解码模块,用于对压缩码流进行熵解码,以获取熵解码后的数据。语义分析模块,用于对熵解码后的数据进行语义分析,以获取熵解码后的数据中的冗余帧。更新模块,用于根据冗余帧更新熵解码后的数据,以获取更新后的数据。熵编码模块,用于对更新后的数据进行编码处理,以获取再压缩码流。
在第二方面的一种可能的实施方式中,更新模块,具体用于:根据模板帧更新冗余帧,以获取更新后的数据。
在第二方面的一种可能的实施方式中,更新模块,具体用于:熵编码后的数据中P帧为冗余帧时,根据P帧的参考帧更新P帧,以获取更新后的数据。
在第二方面的一种可能的实施方式中,更新模块,具体用于:熵编码后的数据中I帧为冗余帧时,根据目标帧更新I帧,以获取更新后的数据,目标帧是I帧的前一帧I帧。
在第二方面的一种可能的实施方式中,语义分析模块,具体用于:将熵解码后的数据输入至目标模型中,目标模型是基于标注了冗余帧和非冗余帧的熵解码数据作为训练数据得到的模型。根据目标模型的预测结果获取熵解码后的数据中的冗余帧。
在第二方面的一种可能的实施方式中,更新后的冗余帧包括冗余帧的标识,更新后的冗余帧中除冗余帧的标识之外的其他信息复用模板帧中除模板帧的标识之外的其他信息。
在第二方面的一种可能的实施方式中,装置还包括第二获取模块,第二获取模块,用于获取监控视频。第一获取模块,具体用于对监控视频进行编码处理,以获取压缩码流。
在第二方面的一种可能的实施方式中,更新后的冗余帧还包括指示标识,指示标识用于指示解码端更新后的冗余帧中除冗余帧的标识之外的其他信息复用模板帧中除模板帧的标识之外的其他信息。
在第二方面的一种可能的实施方式中,语义分析模块,具体用于:对熵解码后的数据中的相邻P帧进行相似性比对,若相似性超过阈值,则确定相邻P帧中的后一帧P帧为冗余帧。
在第二方面的一种可能的实施方式中,语义分析模块,具体用于:对熵解码后的数据中全部I帧中相邻I帧进行相似性比对,若相似性超过阈值,则确定相邻I帧中的后一帧I帧为冗余帧。
第三方面,本申请提供一种数据处理装置,包括处理器和存储器,存储器用于存储程序指令,处理器用于调用程序指令来执行如第一方面或第一方面任意一种可能的实施方式中描述的方法。
第四方面,本申请实施例提供一种图像编码装置,包括:处理器和存储器,其中,处理器和存储器通过线路互联,处理器调用存储器中的程序代码用于执行上述第一方面任一项所示的数据处理方法中与处理相关的功能。可选地,该图像编码装置可以是芯片。
上述第四方面中的处理器既可以是中央处理器(central processing unit,CPU),也可以是CPU与神经网络运算处理器的组合,这里的神经网络运算处理器可以包括图形处理器(graphics processing unit,GPU)、神经网络处理器(neural-networkprocessing unit,NPU)和张量处理器(tensor processing unit,TPU)等等。其中,TPU是谷歌(google)为机器学习全定制的人工智能加速器专用集成电路。
第五方面,本申请提供一种编码器,包括处理电路,用于执行第一方面或第一方面任意一种可能的实施方式中描述的方法。
第六方面,本申请实施例提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行第一方面或第一方面任意一种可能的实施方式中描述的方法。
第七方面,本申请实施例提供了一种包含计算机程序/指令的计算机程序产品,当其被处理器执行时,使得处理器执行第一方面或第一方面任意一种可能的实施方式中描述的方法。
第八方面,本申请实施例提供了一种数字处理芯片或者芯片,芯片包括处理单元和通信接口,处理单元通过通信接口获取程序指令,程序指令被处理单元执行,处理单元用于执行如上述第一方面至第三方面中任一可选实施方式中与处理相关的功能。
可选地,作为一种实现方式,所述芯片还可以包括存储器,所述存储器中存储有指令,所述处理器用于执行所述存储器上存储的指令,当所述指令被执行时,所述处理器用于执行第一方面至第三方面中的任意一种实现方式中的方法。
上述芯片具体可以是现场可编程门阵列(field-programmable gate array,FPGA)或者专用集成电路(application-specific integrated circuit,ASIC)。
附图说明
图1为本申请实施例适用的一种系统架构的示意图;
图2为一种在编码端对视频进行冗余删减处理的流程示意图;
图3为本申请实施例提供的一种数据处理方法的流程示意图;
图4为本申请实施例提供的一种获取目标模型的系统架构示意图;
图5为本申请实施例提供的一种获取训练数据的示意图;
图6为本申请实施例提供的获取冗余帧的示意图;
图7为本申请实例提供的另一种获取冗余帧的示意图;
图8为本申请实施例适用的另一种系统架构的示意图;
图9为本申请实施例提供的另一种数据处理方法的流程示意图;
图10为本申请实施例提供的一种图像编码装置的结构示意图;
图11为本申请实施例提供的另一种图像编码装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供一种数据处理的方法以及装置,为了更好的理解本申请实施例提供的方案,下面首先对本申请实施例提供的方案的研究思路进行介绍:
为了能够降低视频或者图像的存储量,可以对视频或者图像中用户不关心的信息进行删减处理。但是,针对于不同的应用场景,用户关注的信息往往不同。比如,安防场景下,用户主要关心的是前景信息,所以针对于安防场景,可以对背景信息进行冗余删减处理,再比如,娱乐类型的视频,用户主要关心人物的主观互动,所以针对于娱乐类型的视频,可以对客观存在的内容可以进行冗余删减处理。
由于不同场景,进行冗余删减处理的内容的侧重点不同,通常的做法需要在像素级别上,对图像或者视频进行冗余删减处理。具体的,在像素级别对图像或者视频进行冗余删减处理,需要进行两次完整的编码处理,以及一次完整的解码处理,这种方式需要消耗大量的算力,下面结合图1和图2对此进行说明。
如图1所示,为本申请实施例可以适用的一种系统架构的示意图。如图1所示,该系统架构可以包括源设备和目的地设备,源设备产生经编码视频数据(也可以称为视频码流或者压缩码流),源设备也可被称为视频编码装置或者编码端。目的地设备可对由源设备所产生的经编码的视频数据进行解码,目的地设备也可被称为视频解码装置或者解码端。源设备、目的地设备或两个的各种实施方案可包含一或多个处理器以及耦合到所述一或多个处理器的存储器。其中,处理器可以是中央处理器、网络处理器(neural-networkprocessing unit,NPU)、图形处理器(graphics processing unit,GPU)、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integratedcircuit,ASIC)或现场可编程逻辑门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。存储器可包含但不限于随机存储存储器(random access memory,RAM)、只读存储器(read-only memory,ROM)、快闪存储器。源设备和目的地设备可以包括各种装置,包含桌上型计算机、移动计算装置、笔记型计算机、平板计算机、机顶盒、例如所谓的“智能”电话等电话手持机、电视机、相机、摄像机、显示装置、数字媒体播放器、视频游戏控制台、车载计算机、无线通信设备或其类似者。
源设备和目的地设备之间可通过链路进行通信连接,目的地设备可经由链路从源设备接收经编码视频数据。链路可包括能够将经编码视频数据从源设备移动到目的地设备的一或多个媒体或装置。在一个实例中,链路可包括使得源设备能够实时将经编码视频数据直接发射到目的地设备的一或多个通信媒体。在此实例中,源设备可根据通信标准(例如无线通信协议)来调制经编码视频数据,且可将经调制的视频数据发射到目的地设备。所述一或多个通信媒体可包含无线和/或有线通信媒体,例如射频频谱或一或多个物理传输线。所述一或多个通信媒体可形成基于分组的网络的一部分,基于分组的网络例如为局域网、广域网或全球网络(例如,因特网)。所述一或多个通信媒体可包含路由器、交换器、基站或促进从源设备到目的地设备的通信的其它设备。
源设备包括编码器,另外可选地,源设备还可以包括图像/视频获取装置、图片/视频存储装置、以及通信接口。具体实现形态中,所述编码器、图像/视频获取装置、图片/视频存储装置、以及通信接口可能是源设备中的硬件部件,也可能是源设备中的软件程序,分别描述如下:
图像/视频获取装置,可以包括或可以为任何类别的图片捕获设备,用于例如捕获现实世界图片,和/或任何类别的图片或评论(对于屏幕内容编码,屏幕上的一些文字也认为是待编码的图片或图像的一部分)生成设备,例如,用于生成计算机动画图片的计算机图形处理器,或用于获取和/或提供现实世界图片、计算机动画图片(例如,屏幕内容、虚拟现实(virtual reality,VR)图片)的任何类别设备,和/或其任何组合(例如,实景(augmentedreality,AR)图片)。图像/视频获取装置可以为用于捕获图片的相机或者用于存储图片的存储器,图像/视频获取装置还可以包括存储先前捕获或产生的图片和/或获取或接收图片的任何类别的(内部或外部)接口。当图像/视频获取装置为相机时,图像/视频获取装置可例如为本地的或集成在源设备中的集成相机;当所述图像/视频获取装置包括接口时,接口可例如为从外部视频源接收图片的外部接口,外部视频源例如为外部图片捕获设备,比如相机、外部存储器或外部图片生成设备,外部图片生成设备例如为外部计算机图形处理器、计算机或服务器。接口可以为根据任何专有或标准化接口协议的任何类别的接口,例如有线或无线接口、光接口。
其中,图片可以视为像素点(picture element)的二维阵列或矩阵。阵列中的像素点也可以称为采样点。阵列或图片在水平和垂直方向(或轴线)上的采样点数目定义图片的尺寸和/或分辨率。为了表示颜色,通常采用三个颜色分量,即图片可以表示为或包含三个采样阵列。例如在RBG格式或颜色空间中,图片包括对应的红色、绿色及蓝色采样阵列。但是,在视频编码中,每个像素通常以亮度/色度格式或颜色空间表示,例如对于YUV格式的图片,包括Y指示的亮度分量(有时也可以用L指示)以及U和V指示的两个色度分量。亮度(luma)分量Y表示亮度或灰度水平强度(例如,在灰度等级图片中两者相同),而两个色度(chroma)分量U和V表示色度或颜色信息分量。相应地,YUV格式的图片包括亮度采样值(Y)的亮度采样阵列,和色度值(U和V)的两个色度采样阵列。RGB格式的图片可以转换或变换为YUV格式,反之亦然,该过程也称为色彩变换或转换。如果图片是黑白的,该图片可以只包括亮度采样阵列。
图片/视频存储装置可以用于存储图像/视频获取装置获取的图像或者视频,图像/视频获取装置可为本地的或例如集成在源设备中的集成存储器。
编码器用于对图片/视频存储装置存储的图像/视频进行编码处理,本申请实施例对采用何种方式进行编码并不进行限定,示例性的,参照图2,给出一种典型的编码方式流程示意图。如图2所示,通常编码过程包括帧内预测(intra prediction)或帧间预测(interprediction)、变换(transform)、量化(quantization)、熵编码(entropy encode)、等环节。最终进行熵编码得到编码块(也称为码流)并输出编码块。此处编码块可以理解为由Q*P个像素点组成的阵列(Q和P均为正整数,且Q可以等于P,也可以不等于P),并且已知各个像素点的像素值。这一过程本申请将其称之为第一次完整的编码过程。
继续参阅图1,目的地设备包括解码器,另外可选地,目的地设备还可以包括通信接口和显示设备。分别描述如下:通信接口,可用于从源设备或任何其它源接收压缩码流,所述任何其它源例如为存储设备,存储设备例如为压缩码流的存储设备。通信接口可以用于藉由源设备和目的地设备之间的链路或藉由任何类别的网络传输或接收压缩码流,链路例如为直接有线或无线连接,任何类别的网络例如为有线或无线网络或其任何组合,或任何类别的私网和公网,或其任何组合。通信接口可以例如用于解封装通信接口所传输的数据包以获取压缩码流。目的地设备的的通信接口和源设备的通信接口都可以配置为单向通信接口或者双向通信接口。
解码器,用于接收编码后的压缩码流,并对该编码后的压缩码流进行解码处理。解码器的解码过程可以看做是编码器编码过程的逆过程。比如,对于当前待解码的编码块,可以先利用熵解码反量化反变换得到残差信息,确定当前编码块的预测方式为帧内预测还是帧间预测。如果是帧内预测,则利用当前编码块所在的周围已重建区域内像素点的像素值按照所使用的帧内预测方法构建预测信息。如果是帧间预测,则需要确定运动信息,并使用运动信息在已重建的特征中确定参考块,并将参考块内像素点的像素值作为预测信息(此过程称为运动补偿(motion compensation,MC))。最后使用预测信息加上残差信息经过滤波操作便可以实现对当前编码块的重建,进而,根据全部重建后获取的编码块获取完整的图像/视频。目的设备上还可以部署显示设备,用于播放解码器解码后获取的图像/视频。显示设备可以为或可以包括任何类别的用于呈现经重构图片的显示器,例如,集成的或外部的显示器或监视器。例如,显示器可以包括液晶显示器(liquid crystal display,LCD)、有机发光二极管(organic light emitting diode,OLED)显示器、等离子显示器、投影仪、微LED显示器、硅基液晶(liquid crystal on silicon,LCoS)、数字光处理器(digitallightprocessor,DLP)或任何类别的其它显示器。
为了能够利用通用的图像/视频播放设备对解码后的图像/视频进行解码播放,不再需要在解码端额外安装特别的插件,因此通常要在编码端,即在源设备上对图像/视频进行冗余删减处理。而在源设备上对图像/视频进行冗余删减处理,需要先对第一次完整的编码过程获取的压缩码流进行解码操作,然后再进行第二次完整的编码过程。如图2所示了,展示了在源设备上进行了两次完整的编码过程以及一次完整的解码过程的示意流程。本方案主要涉及对源设备上执行的过程进行改进,因此以下所描述的解码相关的过程都是指在源设备上进行执行的,至于解码端的执行过程已经在上文进行了介绍,由于和本申请实施例提供的方案无关,以下对此不再介绍和说明。
通过上述介绍可知,如果要在编码端对图像/视频进行冗余删减处理,需要对第一次完整的编码获取的压缩码流进行解码操作,获取了像素级别的数据后,再对该数据进行冗余删减处理,再对经过冗余删减处理后的数据重新进行编码处理,即需要第二次完整的编码过程,获取去冗余后的压缩码流。这一过程需要消耗大量的算力,主要体现在需要执行额外的完整的解码过程以及额外的完整的编码过程。
申请人发现,可以基于语义分析,利用熵解码后获取的数据就可以进行冗余删减处理,不需要再执行完整的解码过程,以及额外的完整的编码过程,下面对此进行具体介绍。
考虑到监控视频的特性,它获取的大量数据对于用户来说可能是无用的。比如,从停车场获取的监控视频中,静止画面、或者虽然不是绝对静止画面,但是只有灯光变化的画面,这些画面大概率并不是用户关心的画面,用户可能只关心画面中有车辆移动的画面。再比如,从夜晚的路段获取的监控视频中,静止画面、或者虽然不是绝对静止画面,但是只有风吹草动的画面,这些画面大概率并不是用户关心的画面,用户可能只关心画面中有特定对象的画面,具体的,比如有人物、车辆或者动物的画面,而这些用户关心的画面可能只在监控视频中占据很小的比例。因此,申请人想到,针对于这种类似监控视频等特定的场景,可以基于语义分析,获取熵解码后的数据中每一帧携带的内容是否是用户不关心的(本申请实施例将这种帧称为无效帧或者冗余帧)。如果是冗余帧,直接复用模板帧携带的内容,这样只需要保存模板帧携带的内容即可,不需要对每一帧的全部内容都进行保存。通过这种方式,不需要再执行完整的解码过程,以及额外的完整的编码过程,只需要利用熵解码后的数据,就可以对图像/视频进行冗余处理,降低图像/视频存储所需的空间,此外,为了保证可以通过通用方式解码压缩码流,可以保留该冗余帧的标识。
基于上述研究思路,下面对本申请实施例提供的方案进行详细的介绍:
参阅图3,为本申请实施例提供的一种数据处理的方法的流程示意图。
如图3所示,本申请实施例提供的一种数据处理的方法可以包括以下步骤:
301、获取压缩码流。
编码端获取压缩码流,或者说源设备获取压缩码流,为了简化说明,以下统一称之为编码端获取压缩码流。
具体的,编码端获取待编码的视频/图像,并对该待编码的视频/图像进行编码,以获取压缩码流。本申请实施例可以采用任意一种编码方式对待编码的视频/图像进行编码,以获取压缩码流。比如,可以采用基于概率模型的熵编码方法对待编码的视频/图像进行编码,再比如可以采用基于超先验(hyper prior)熵编码方法对待编码的视频/图像进行编码,本申请实施例对此并不进行限定,具体的关于编码的通用流程可以参照上文图1中源设备执行的流程进行理解,这里不再重复赘述。
本申请实施例提供的方案可以适用任何一种需要对图像或者视频进行冗余删减处理的场景。在一个优选的场景中,本申请实施例提供的方案尤其适用于监控领域。在一个可能的实施方式中,可以通过监控设备获取图像/视频,并对该监控设备获取的图像/视频进行编码处理,以获取压缩码流。
302、对压缩码流进行熵解码,以获取熵解码后的数据。
在一个可能的实施方式中,可以在编码端对获取到的压缩码流进行熵解码,以获取熵解码后的数据。
在一个可能的实施方式中,可以由云侧设备对获取到的压缩码流进行熵解码,以获取熵解码后的数据。
上文已经对熵解码的过程进行了介绍,这里不再重复赘述。需要说明的是,本申请实施例对采用何种熵解码的方法对压缩码流进行熵解码并不限定,熵解码的过程可以看做熵编码过程的逆过程。
303、对熵解码后的数据进行语义分析,以获取熵解码后的数据中的冗余帧。
其中,冗余帧可以理解为图像或者视频中,用户不关注的图像帧,或者可以理解为与其他帧携带的内容非常相似的图像帧。本申请实施例有时也将冗余帧称为无效帧,二者表示相同的意思。与此同时,本申请实施例将图像或者视频中,用户关注的图像帧称为非冗余帧或者有效帧。
本申请实施例提供的方案,可以采用多种方式对熵解码后的数据进行语义分析,以获取熵解码后的数据中的冗余帧,下面给出几种优选的实施方式:
方式一:通过目标模型的预测结果获取冗余帧。
在这种实施方式中,可以以标注了冗余帧和非冗余帧的熵解码数据作为初始模型的训练数据,对模型进行迭代训练,以获取训练后的模型,即目标模型。再将步骤302中获取的熵解码后的数据作为目标模型的输入,以获取该步骤302中获取的熵解码后的数据中的冗余帧,或者非冗余帧。
如图4所示,是本申请实施例提供的目标模型的获取系统的示意图。如图4所示,获取系统包括执行设备210、训练设备220、数据库230。在训练阶段,数据库230中存储有训练数据,参见图5,对训练数据的获取过程进行举例说明。如图5所示,可以通过对同一场景下获取的历史图像或者历史视频的压缩码流进行熵解码操作,以获取大量熵解码数据。根据用户对于关注重点的需求,对这些熵解码数据进行标注,标注其中的冗余帧以及非冗余帧。将熵解码数据,和标注了冗余帧以及非冗余帧的熵解码数据存入数据库230中,作为训练数据。
训练设备220生成初始模型,并利用数据库中的训练数据集合对初始模型进行迭代训练,得到成熟的模型,即目标模型201。需要说明的是,数据库230具体可以表现为任意形式的存储介质,不限定为传统意义上的数据库。在根据目标模型201执行预测冗余帧或者非冗余帧的任务时,执行设备210可以调用目标模型201,将熵解码数据作为目标模型201的输入,以根据目标模型201的输出判断图像帧是否为冗余帧。
方式二:通过比较相邻I帧的相似性,高于阈值时,相邻I帧中的后一帧I帧为冗余帧。
图像帧通常包括三种类型,分别是帧内编码帧(intra coded frames,I-Frame)、单向预测编码帧(predicted frames,P-Frame)以及双向预测编码帧(bi-directionalpredicted frames,B-Frame)。本申请将帧内编码帧简称为I帧,将单向预测编码帧简称为P帧,将双向预测编码帧简称为B帧。由于B帧的丢失对视频解码质量影响较小,本申请实施例对其不再具体讨论,主要讨论I帧和P帧。
如图6所示,熵解码数据中包括不同类型的图像帧,本申请中所描述的相邻I帧是指该两帧I帧之间再没有其他的I帧,但是该相邻I帧之间可能存在其他类型的图像帧,比如如图6中所示,相邻I帧之间还包括P帧。
如图7所示,本申请实施例提供的方案可以通过多种方式比较相邻I帧之间的相似性,本申请实施例对此并不进行限定。示例性的,可以将相邻I帧转化为张量表示,通过比较张量之间的差异,来获取相邻I帧之间的相似性,差异越小,表示该相邻I帧之间的相似性越高。
可以根据实际需求设计阈值的大小,如果相邻I帧的相似性过高,比如超过预设的阈值,则认为相邻I帧中的后一帧I帧为冗余帧。
方式三:通过比较相邻P帧的相似性,高于阈值时,相邻P帧中的后一帧I帧为冗余帧。
本申请中所描述的相邻P帧是指该两帧P帧之间再没有其他P帧,也没有其他任意一种类型的图像帧。
本申请实施例提供的方案可以通过多种方式比较相邻P帧之间的相似性,本申请实施例对此并不进行限定。示例性的,可以将相邻P帧转化为张量表示,通过比较张量之间的差异,来获取相邻P帧之间的相似性,差异越小,表示该相邻P帧之间的相似性越高。
可以根据实际需求设计阈值的大小,如果相邻P帧的相似性过高,比如超过预设的阈值,则认为相邻P帧中的后一帧P帧为冗余帧。
304、根据冗余帧更新熵解码后的数据,以获取更新后的数据。
本申请实施例中涉及的更新包括修改、删除以及替换。
通过步骤303获取了冗余帧后,可以对这些冗余帧进行更新处理,以降低存储这些冗余帧所需的数据量,进而达到降低视频或者图像的存储量的目的。下面结合几个优选的实施方式,对如何根据冗余帧更新熵解码后的数据进行具体的介绍。
方式一、通过模板帧更新冗余帧,以获取更新后的数据。
针对于不同类型的冗余帧,可以采用不同的帧作为模板帧。
在一种可能的实施方式中,如果I帧为冗余帧,则根据目标帧更新该I帧,以获取更新后的数据,其中,目标帧是该I帧的前一帧I帧。
在一种可能的实施方式中,如果P帧是冗余帧,则根据该P帧的参考帧更新该P帧,以获取更新后的数据。
在一种可能的实施方式中,通过模板帧更新冗余帧后,更新后的冗余帧的帧标识保持不变,除帧标识之外的其他信息复用模板帧除帧标识之外的其他信息。在一个可能的实施方式中,更新后的冗余帧包括该冗余帧的帧标识以及指示标识,指示标识用于指示解码端:更新后的冗余帧中除冗余帧的标识之外的其他信息复用模板帧中除模板帧的标识之外的其他信息。本申请有时也将帧标识称为帧头或者帧头部或者帧首部,帧头的信息对于解码端至关重要,为了能够满足格式兼容,通过通用的解码器就可以对针对基于更新后的数据获取的压缩码流进行解码处理,还可以根据冗余帧的帧头对模板帧的帧头进行修改,以符合格式兼容的需求,在一个可能的实施方式中,可以将模板帧的帧头修改为和冗余帧的帧头一致。
通过这种方式,不对熵解码后的图像帧进行删除,保留了每一帧图像帧的位置,此外,通过修改P帧(这里指为冗余帧的P帧),即达到了节省数据存储量的目的,还可以实现格式兼容,使得通过标准的解码器就可以针对基于更新后的数据获取的压缩码流进行解码处理。
方式二、对冗余帧进行删除处理,以获取更新后的数据。
在这种实施方式中,可以直接对冗余帧进行删除处理,以达到节省数据存储量的目的。此外,在这种实施方式中,可以在解码端采用插帧重建等方式,以使解码后获取的图像帧的数目和删除冗余帧之前的图像帧的数目相同,以达到更好的解码效果。
305、对更新后的数据进行熵编码处理,以获取再压缩码流。
关于熵编码的过程已经在上文进行了介绍,这里不再重复赘述。
如图8所示,为本申请实施例提供的另一种系统架构的示意图,本申请实施例提供的方案,可以包括端侧设备和云侧设备,其中源设备和目的设备可以看做端侧设备。在一些可能的实施方式中,步骤302至步骤305中的部分或者全部步骤可以通过云侧设备执行。
本申请实施例提供的方案,在编码端对视频进行冗余删减处理,既能够通过通用的解码器就能够获取到的压缩码流进行解码,又能够实现降低视频的存储量的目的。并且,本申请实施例提供的方案通过对熵解码后的数据语义分析,获取其中的冗余帧,并根据冗余帧,更新熵解码后的数据,通过这种方式,不需要对压缩码流进行完整的解码,以及额外的编码过程,就能够对视频进行冗余删减处理,降低了计算量,节约算力。
参阅图9,为了更好的理解本申请实施例提供的方案,下面以采用通过目标模型的预测结果获取冗余帧的方式,通过模板帧更新冗余帧,以获取更新后的数据的方式为例,对本申请实施例提供的方案进行介绍。
如图9所示,获取了压缩码流后,对其进行熵解码处理,以获取熵解码后的数据,熵解码后的数据是频域数据。将熵解码后的数据输入至目标网络中,以根据目标网络的预测结果,获取熵解码后的数据中哪些图像帧是冗余帧,哪些图像帧是非冗余帧。针对于冗余帧,通过模板帧对其进行更新处理,针对非冗余帧,本方案不再对其进行额外的处理。经过上述处理后,获取了更新后的熵解码后的数据,再对其进行熵编码处理,以获取再压缩码流。本申请有时也将再压缩码流称为去冗余后的码流,二者表示相同的意思。
下面结合图10和图11对本申请实施例的装置进行说明。应理解,下面描述的装置能够执行前述本申请实施例的方法,为了避免不必要的重复,下面在介绍本申请实施例的装置时适当省略重复的描述。本申请实施例中的图像编码装置可以部署在终端设备上也可以部署在云端设备上,也可以部分模块部署在终端设备,部分模块部署在云端设备上。
图10是本申请实施例的图像编码装置的示意性框图。图10所示的图像编码装置1000包括第一获取模块1001、熵解码模块1002、语义分析模块1003、更新模块1004以及熵编码模块1005。
上述模块可以用于执行本申请实施例的数据处理方法,具体地:
第一获取模块1001,用于执行图3对应的实施例中的步骤301,熵解码模块1002,用于执行图3对应的实施例中的步骤302,语义分析模块1003,用于执行图3对应的实施例中的步骤303,更新模块1004,用于执行图3对应的实施例中的步骤304,熵编码模块1005,用于执行图3对应的实施例中的步骤305。
在一个可能的实施方式中,第一获取模块1001,用于获取压缩码流。熵解码模块1002,用于对压缩码流进行熵解码,以获取熵解码后的数据。语义分析模块1003,用于对熵解码后的数据进行语义分析,以获取熵解码后的数据中的冗余帧。更新模块1004,用于根据冗余帧更新熵解码后的数据,以获取更新后的数据。熵编码模块1005,用于对更新后的数据进行编码处理,以获取再压缩码流。
在一个可能的实施方式中,更新模块1004,具体用于:根据模板帧更新冗余帧,以获取更新后的数据。
在一个可能的实施方式中,更新模块1004,具体用于:熵编码后的数据中P帧为冗余帧时,根据P帧的参考帧更新P帧,以获取更新后的数据。
在一个可能的实施方式中,更新模块1004,具体用于:熵编码后的数据中I帧为冗余帧时,根据目标帧更新I帧,以获取更新后的数据,目标帧是I帧的前一帧I帧。
在一个可能的实施方式中,语义分析模块1003,具体用于:将熵解码后的数据输入至目标模型中,目标模型是基于标注了冗余帧和非冗余帧的熵解码数据作为训练数据得到的模型。根据目标模型的预测结果获取熵解码后的数据中的冗余帧。
在一个可能的实施方式中,更新后的冗余帧包括冗余帧的标识,更新后的冗余帧中除冗余帧的标识之外的其他信息复用模板帧中除模板帧的标识之外的其他信息。
在一个可能的实施方式中,装置还包括第二获取模块1006,第二获取模块1006,用于获取监控视频。第一获取模块1001,具体用于对监控视频进行编码处理,以获取压缩码流。
在一个可能的实施方式中,更新后的冗余帧还包括指示标识,指示标识用于指示解码端更新后的冗余帧中除冗余帧的标识之外的其他信息复用模板帧中除模板帧的标识之外的其他信息。
在一个可能的实施方式中,语义分析模块1003,具体用于:对熵解码后的数据中的相邻P帧进行相似性比对,若相似性超过阈值,则确定相邻P帧中的后一帧P帧为冗余帧。
在一个可能的实施方式中,语义分析模块1003,具体用于:对熵解码后的数据中全部I帧中相邻I帧进行相似性比对,若相似性超过阈值,则确定相邻I帧中的后一帧I帧为冗余帧。
需要说明的是,上述装置1000以功能模块的形式体现。这里的术语“模块”可以通过软件和/或硬件形式实现,对此不作具体限定。本申请实施例有时也将“模块”称为“单元”,二者表示相同的意思。
例如,“模块”可以是实现上述功能的软件程序、硬件电路或二者结合。所述硬件电路可能包括应用特有集成电路(application specific integrated circuit,ASIC)、电子电路、用于执行一个或多个软件或固件程序的处理器(例如共享处理器、专有处理器或组处理器等)和存储器、合并逻辑电路和/或其它支持所描述的功能的合适组件。
因此,在本申请的实施例中描述的各示例的模块,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
图11是本申请实施例提供图像编码装置的硬件结构示意图。图11所示的图像编码装置1100(该装置1100具体可以是一种计算机设备)包括存储器1101、处理器1102、通信接口1103以及总线1104。其中,存储器1101、处理器1102、通信接口1103通过总线1104实现彼此之间的通信连接。
存储器1101可以是只读存储器(read only memory,ROM),静态存储设备,动态存储设备或者随机存取存储器(random access memory,RAM)。存储器1101可以存储程序,当存储器1101中存储的程序被处理器1102执行时,处理器1102可以执行上文中方法实施例中编码端执行的相关步骤中与处理相关的步骤,比如执行熵解码的过程、语义分析的过程、熵编码的过程以及更新的过程。
处理器1102可以采用通用的中央处理器(central processing unit,CPU),微处理器,应用专用集成电路(application specific integrated circuit,ASIC),图形处理器(graphics processing unit,GPU)或者一个或多个集成电路,用于执行相关程序,以实现本申请方法实施例的数据处理的方法。
处理器1102还可以是一种集成电路芯片,具有信号的处理能力,在实现过程中,本申请的图像编码的方法的各个步骤可以通过处理器1102中的硬件的集成逻辑电路或者软件形式的指令完成。
上述处理器1102还可以是通用处理器、数字信号处理器(digital signalprocessing,DSP)、专用集成电路(ASIC)、现成可编程门阵列(field programmable gatearray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1101,处理器1102读取存储器1101中的信息,结合其硬件完成图10所示的图像编码装置中包括的模块所需执行的功能,或者,执行本申请方法实施例的方法中编码端执行的相关步骤。
通信接口1103使用例如但不限于收发器一类的收发装置,来实现装置1100与其他设备或通信网络之间的通信。例如,可以通过通信接口1103获取待处理图像。
总线1104可包括在装置1100各个部件(例如,存储器1101、处理器1102、通信接口1103)之间传送信息的通路。
应注意,尽管上述装置1100和装置1000仅仅示出了存储器、处理器、通信接口,但是在具体实现过程中,本领域的技术人员应当理解,装置1100和装置1000还可以包括实现正常运行所必须的其他器件。同时,根据具体需要,本领域的技术人员应当理解,装置1100和装置1000还可包括实现其他附加功能的硬件器件。此外,本领域的技术人员应当理解,装置1100和装置1000也可仅仅包括实现本申请实施例所必须的器件,而不必包括图11中所示的全部器件。
应理解,本申请实施例中的处理器可以为中央处理单元(central processingunit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digital signalprocessor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
还应理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的随机存取存储器(random accessmemory,RAM)可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
上述实施例,可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令或计算机程序。在计算机上加载或执行所述计算机指令或计算机程序时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质。半导体介质可以是固态硬盘。
本申请的说明书和权利要求书及上述附图中的术语“第一”,“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,其中A,B可以是单数或者复数。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系,但也可能表示的是一种“和/或”的关系,具体可参考前后文进行理解。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

Claims (23)

1.一种数据处理的方法,其特征在于,包括:
获取压缩码流;
对所述压缩码流进行熵解码,以获取熵解码后的数据;
对所述熵解码后的数据进行语义分析,以获取所述熵解码后的数据中的冗余帧;
根据所述冗余帧更新所述熵解码后的数据,以获取更新后的数据;
对所述更新后的数据进行编码处理,以获取再压缩码流。
2.根据权利要求1所述的方法,其特征在于,所述根据所述冗余帧更新所述熵解码后的数据,以获取更新后的数据,包括:
根据模板帧更新所述冗余帧,以获取所述更新后的数据。
3.根据权利要求2所述的方法,其特征在于,所述根据模板帧更新所述冗余帧,以获取所述更新后的数据,包括:
所述熵编码后的数据中P帧为冗余帧时,根据所述P帧的参考帧更新所述P帧,以获取所述更新后的数据。
4.根据权利要求2所述的方法,其特征在于,所述根据模板帧更新所述冗余帧,以获取所述更新后的数据,包括:
所述熵编码后的数据中I帧为冗余帧时,根据目标帧更新所述I帧,以获取所述更新后的数据,所述目标帧是所述I帧的前一帧I帧。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述对所述熵解码后的数据进行语义分析,以获取所述熵解码后的数据中的冗余帧,包括:
将所述熵解码后的数据输入至目标模型中,所述目标模型是基于标注了冗余帧和非冗余帧的熵解码数据作为训练数据得到的模型;
根据所述目标模型的预测结果获取所述熵解码后的数据中的冗余帧。
6.根据权利要求2至4任一项所述的方法,其特征在于,更新后的所述冗余帧包括所述冗余帧的标识,更新后的所述冗余帧中除所述冗余帧的标识之外的其他信息复用所述模板帧中除所述模板帧的标识之外的其他信息。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述方法还包括:
获取监控视频;
对所述监控视频进行编码处理,以获取所述压缩码流。
8.根据权利要求2至4任一项所述的方法,其特征在于,更新后的所述冗余帧还包括指示标识,所述指示标识用于指示解码端更新后的所述冗余帧中除所述冗余帧的标识之外的其他信息复用所述模板帧中除所述模板帧的标识之外的其他信息。
9.根据权利要求1至4任一项所述的方法,其特征在于,所述对所述熵解码后的数据进行语义分析,以获取所述熵解码后的数据中的冗余帧,包括:
对所述熵解码后的数据中的相邻P帧进行相似性比对,若相似性超过阈值,则确定所述相邻P帧中的后一帧P帧为冗余帧。
10.根据权利要求1至4任一项所述的方法,其特征在于,所述对所述熵解码后的数据进行语义分析,以获取所述熵解码后的数据中的冗余帧,包括:
对所述熵解码后的数据中全部I帧中相邻I帧进行相似性比对,若相似性超过阈值,则确定所述相邻I帧中的后一帧I帧为冗余帧。
11.一种数据处理的装置,其特征在于,包括:
第一获取模块,用于获取压缩码流;
熵解码模块,用于对所述压缩码流进行熵解码,以获取熵解码后的数据;
语义分析模块,用于对所述熵解码后的数据进行语义分析,以获取所述熵解码后的数据中的冗余帧;
更新模块,用于根据所述冗余帧更新所述熵解码后的数据,以获取更新后的数据;
熵编码模块,用于对所述更新后的数据进行编码处理,以获取再压缩码流。
12.根据权利要求11所述的装置,其特征在于,所述更新模块,具体用于:
根据模板帧更新所述冗余帧,以获取所述更新后的数据。
13.根据权利要求12所述的装置,其特征在于,所述更新模块,具体用于:
所述熵编码后的数据中P帧为冗余帧时,根据所述P帧的参考帧更新所述P帧,以获取所述更新后的数据。
14.根据权利要求12所述的装置,其特征在于,所述更新模块,具体用于:
所述熵编码后的数据中I帧为冗余帧时,根据目标帧更新所述I帧,以获取所述更新后的数据,所述目标帧是所述I帧的前一帧I帧。
15.根据权利要求11至14任一项所述的装置,其特征在于,所述语义分析模块,具体用于:
将所述熵解码后的数据输入至目标模型中,所述目标模型是基于标注了冗余帧和非冗余帧的熵解码数据作为训练数据得到的模型;
根据所述目标模型的预测结果获取所述熵解码后的数据中的冗余帧。
16.根据权利要求12至14任一项所述的装置,其特征在于,更新后的所述冗余帧包括所述冗余帧的标识,更新后的所述冗余帧中除所述冗余帧的标识之外的其他信息复用所述模板帧中除所述模板帧的标识之外的其他信息。
17.根据权利要求11至16任一项所述的装置,其特征在于,所述装置还包括第二获取模块,
所述第二获取模块,用于获取监控视频;
所述第一获取模块,具体用于对所述监控视频进行编码处理,以获取所述压缩码流。
18.根据权利要求12至14任一项所述的装置,其特征在于,更新后的所述冗余帧还包括指示标识,所述指示标识用于指示解码端更新后的所述冗余帧中除所述冗余帧的标识之外的其他信息复用所述模板帧中除所述模板帧的标识之外的其他信息。
19.根据权利要求11至14任一项所述的装置,其特征在于,所述语义分析模块,具体用于:
对所述熵解码后的数据中的相邻P帧进行相似性比对,若相似性超过阈值,则确定所述相邻P帧中的后一帧P帧为冗余帧。
20.根据权利要求11至14任一项所述的装置,其特征在于,所述语义分析模块,具体用于:
对所述熵解码后的数据中全部I帧中相邻I帧进行相似性比对,若相似性超过阈值,则确定所述相邻I帧中的后一帧I帧为冗余帧。
21.一种数据处理装置,其特征在于,包括处理器和存储器,所述存储器用于存储程序指令,所述处理器用于调用所述程序指令来执行权利要求1至10中任一项所述的方法。
22.一种计算机可读存储介质,其特征在于,所述计算机可读介质存储用于设备执行的程序代码,该程序代码包括用于执行如权利要求1至10中任一项所述的方法。
23.一种编码器,其特征在于,包括处理电路,用于执行权利要求1至10任一项所述的方法。
CN202111450801.4A 2021-11-30 2021-11-30 一种数据处理的方法以及装置 Pending CN116208780A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111450801.4A CN116208780A (zh) 2021-11-30 2021-11-30 一种数据处理的方法以及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111450801.4A CN116208780A (zh) 2021-11-30 2021-11-30 一种数据处理的方法以及装置

Publications (1)

Publication Number Publication Date
CN116208780A true CN116208780A (zh) 2023-06-02

Family

ID=86511771

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111450801.4A Pending CN116208780A (zh) 2021-11-30 2021-11-30 一种数据处理的方法以及装置

Country Status (1)

Country Link
CN (1) CN116208780A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118101952A (zh) * 2024-02-21 2024-05-28 广州市时代物业管理有限公司 一种基于人工智能的视频处理方法及系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118101952A (zh) * 2024-02-21 2024-05-28 广州市时代物业管理有限公司 一种基于人工智能的视频处理方法及系统

Similar Documents

Publication Publication Date Title
US11800136B2 (en) Constrained motion field estimation for hardware efficiency
WO2021042957A1 (zh) 一种图像处理方法和装置
CN112673625A (zh) 混合视频以及特征编码和解码
US20120275524A1 (en) Systems and methods for processing shadows in compressed video images
WO2021036795A1 (zh) 视频超分辨率处理方法及装置
CN114339238A (zh) 视频编码的方法、视频解码的方法及其装置
CN115866356A (zh) 一种视频的水印添加方法、装置、设备及存储介质
CN114554205B (zh) 一种图像编解码方法及装置
US20230281881A1 (en) Video Frame Compression Method, Video Frame Decompression Method, and Apparatus
CN115361582B (zh) 一种视频实时超分辨率处理方法、装置、终端及存储介质
Joy et al. An overview of traditional and recent trends in video processing
WO2019036080A1 (en) ESTIMATION OF CONSTRAINED MOTION FIELD FOR INTERPRETING
CN111182310A (zh) 视频处理方法、装置、计算机可读介质及电子设备
CN116208780A (zh) 一种数据处理的方法以及装置
US20200221115A1 (en) Syntax-based Method of Extracting Region of Moving Object in Compressed Video
CN111246208B (zh) 视频处理方法、装置及电子设备
CN111225214B (zh) 视频处理方法、装置及电子设备
JP2022526547A (ja) 画像処理方法および電子デバイス
CN115209147B (zh) 摄像头视频传输带宽优化方法、装置、设备及存储介质
WO2023092256A1 (zh) 一种视频编码方法及其相关装置
JPWO2019135270A1 (ja) 動画像解析装置、動画像解析システム、動画像解析方法、及びプログラム
US20240244229A1 (en) Systems and methods for predictive coding
CN114449347B (zh) 一种视频渲染画面的智能优化方法
WO2024183387A1 (zh) 一种图像编解码方法、装置及系统
JP2004222262A (ja) 動画圧縮のための内蔵型メモリ装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication