CN118020306A - 视频编解码方法、编码器、解码器及存储介质 - Google Patents
视频编解码方法、编码器、解码器及存储介质 Download PDFInfo
- Publication number
- CN118020306A CN118020306A CN202180102730.0A CN202180102730A CN118020306A CN 118020306 A CN118020306 A CN 118020306A CN 202180102730 A CN202180102730 A CN 202180102730A CN 118020306 A CN118020306 A CN 118020306A
- Authority
- CN
- China
- Prior art keywords
- network
- feature
- decoding
- characteristic information
- channels
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 146
- 238000004458 analytical method Methods 0.000 claims abstract description 235
- 238000012549 training Methods 0.000 claims description 51
- 238000013528 artificial neural network Methods 0.000 claims description 49
- 238000013139 quantization Methods 0.000 claims description 39
- 230000015654 memory Effects 0.000 claims description 34
- 238000004590 computer program Methods 0.000 claims description 25
- 238000011176 pooling Methods 0.000 claims description 21
- 230000006978 adaptation Effects 0.000 claims description 9
- 238000000513 principal component analysis Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 46
- 238000007906 compression Methods 0.000 description 29
- 230000006835 compression Effects 0.000 description 26
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 21
- 230000006870 function Effects 0.000 description 16
- 230000008569 process Effects 0.000 description 15
- 238000001914 filtration Methods 0.000 description 13
- 238000005516 engineering process Methods 0.000 description 12
- 238000010606 normalization Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 8
- 238000001514 detection method Methods 0.000 description 8
- 238000013527 convolutional neural network Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 6
- 238000005457 optimization Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 5
- 238000013135 deep learning Methods 0.000 description 5
- 238000011161 development Methods 0.000 description 5
- 230000018109 developmental process Effects 0.000 description 5
- 239000000203 mixture Substances 0.000 description 5
- 239000013598 vector Substances 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 230000004913 activation Effects 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000000605 extraction Methods 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 230000011218 segmentation Effects 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 125000004122 cyclic group Chemical group 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 238000000638 solvent extraction Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 230000001131 transforming effect Effects 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 241000023320 Luma <angiosperm> Species 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012958 reprocessing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 102220030673 rs59931416 Human genes 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 229920006395 saturated elastomer Polymers 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
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/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请提供一种视频编解码方法、编码器、解码器及存储介质,通过将当前图像的特征码流输入解码网络中,得到解码网络的第i个中间层输出的第一特征信息,i为正整数;将第一特征信息输入任务分析网络的第j个中间层中,得到任务分析网络输出的任务分析结果,j为正整数。本申请将解码网络中间层输出的特征信息输入任务分析网络中,使得任务分析网络基于解码网络输出的特征信息进行任务分析,节省了任务分析所占用的时间和计算资源,提高了任务分析的效率。
Description
本申请涉及视频编解码技术领域,尤其涉及一种视频编解码方法、编码器、解码器及存储介质。
数字视频技术可以并入多种视频装置中,例如数字电视、智能手机、计算机、电子阅读器或视频播放器等。随着视频技术的发展,视频数据所包括的数据量较大,为了便于视频数据的传输,视频装置执行视频压缩技术,以使视频数据更加有效的传输或存储。
随着视觉分析技术的快速发展,将神经网络技术与图像视频压缩技术相结合,提出了面向机器视觉的视频编码框架。
但是,目前的基于神经网络的先压缩后分析的模型中,计算量大,耗时长。
发明内容
本申请实施例提供了一种视频编解码方法、编码器、解码器及存储介质,以节省任务分析的时间和计算量,进而提高任务分析的效率。
第一方面,本申请提供了一种视频编码方法,包括:
将当前图像的特征码流输入解码网络中,得到所述解码网络的第i个中间层输出的第一特征信息,所述i为正整数;
将所述第一特征信息输入任务分析网络的第j个中间层中,得到所述任务分析网络输出的任务分析结果,所述j为正整数。
第二方面,本申请实施例提供一种视频解码方法,包括:
获取待编码的当前图像;
将所述当前图像输入编码网络中,得到所述编码网络输出的特征码流;
其中,在模型训练时,所述编码网络和解码网络一起进行端到端训练,所述解码网络的第i个中间层输出的第一特征信息输入任务分析网络的第j个中间层中。
第三方面,本申请提供了一种视频编码器,用于执行上述第一方面或其各实现方式中的方法。具体地,该编码器包括用于执行上述第一方面或其各实现方式中的方法的功能单元。
第四方面,本申请提供了一种视频解码器,用于执行上述第二方面或其各实现方式中的方法。具体地,该解码器包括用于执行上述第二方面或其各实现方式中的方法的功能单元。
第五方面,提供了一种视频编码器,包括处理器和存储器。该存储器用于存储计算机程序,该处理器用于调用并运行该存储器中存储的计算机程序,以执行上述第一方面或其各实现方式中的方法。
第六方面,提供了一种视频解码器,包括处理器和存储器。该存储器用于存储计算机程序,该处理器用于调用并运行该存储器中存储的计算机程序,以执行上述第二方面或其各实现方式中的方法。
第七方面,提供了一种视频编解码***,包括视频编码器和视频解码器。视频编码器用于执行上述第一方面或其各实现方式中的方法,视频解码器用于执行上述第二方面、或其各实现方式中的方法。
第八方面,提供了一种芯片,用于实现上述第一方面至第二方面中的任一方面或其各实现方式中的方法。具体地,该芯片包括:处理器,用于从存储器中调用并运行计算机程序,使得安装有该芯片的设备执行如上述第一方面至第二方面中的任一方面或其各实现方式中的方法。
第九方面,提供了一种计算机可读存储介质,用于存储计算机程序,该计算机程序使得计算机执行上述第一方面至第二方面中的任一方面或其各实现方式中的方法。
第十方面,提供了一种计算机程序产品,包括计算机程序指令,该计算机程序指令使得计算机执行上述第一方面至第二方面中的任一方面或其各实现方式中的方法。
第十一方面,提供了一种计算机程序,当其在计算机上运行时,使得计算机执行上述第一方面至第二方面中的任一方面或其各实现方式中的方法。
第十二方面,提供了一种码流,该码流通过上述第二方面所述的方法生成。
基于以上技术方案,通过将当前图像的特征码流输入解码网络中,得到解码网络的第i个中间层输出的第一特征信息,i为正整数;将第一特征信息输入任务分析网络的第j个中间层中,得到任务分析网络输出的任务分析结果,j为正整数。本申请将解码网络中间层输出的特征信息输入任务分析网络中,使得任务分析网络基于解码网络输出的特征信息进行任务分析,节省了任务分析所占用的时间和计算资源,进而提高任务分析的效率。
图1为本申请实施例涉及的一种视频编解码***的示意性框图;
图2为对图像先压缩后分析的流程示意图;
图3是本申请实施例涉及的视频编码器的示意性框图;
图4是本申请实施例涉及的视频解码器的示意性框图;
图5A为端到端编解码网络的流程示意图;
图5B为Cheng编解码网络的划分示意图;
图5C为Lee编解码网络的划分示意图;
图5D为Hu编解码网络的划分示意图;
图6A为任务分析网络的流程示意图;
图6B为目标识别网络的划分示意图;
图6C为目标检测网络的划分示意图;
图7为本申请实施例提供的视频解码方法的流程示意图;
图8A为本申请一实施例涉及的网络模型示意图;
图8B为本申请一实施例涉及的一解码网络的示意图;
图8C为本申请一实施例涉及的另一解码网络的示意图;
图8D为本申请一实施例涉及的另一解码网络的示意图;
图9A为本申请一实施例涉及的目标检测网络示意图;
图9B为图9A中的部分网络的示意图;
图9C为Cheng2020网络中部分组件的网络示意图;
图9D为端到端编解码网络和任务分析网络的网络示例图;
图9E为端到端编解码网络与任务分析网络的一种连接示意图;
图9F为端到端编解码网络与任务分析网络的另一种连接示意图;
图9G为端到端编解码网络与任务分析网络的另一种连接示意图;
图9H为本申请实施例涉及的另一种模型示意图;
图10A为端到端编解码网络与任务分析网络的一种连接示意图;
图10B为端到端编解码网络与任务分析网络的另一种连接示意图;
图10C为端到端编解码网络与任务分析网络的另一种连接示意图;
图11为本申请一实施例提供的视频解码方法流程示意图;
图12为本申请一实施例涉及的解码网络和任务分析网络的结构示意图;
图13为本申请一实施例提供的视频编码方法的流程示意图;
图14A为本申请涉及的编码网络的一种结构示意图;
图14B为本申请涉及的编码网络的另一种结构示意图;
图14C为本申请涉及的编码网络的另一种结构示意图;
图14D为本申请涉及的编码网络的一种模型示意图;
图14E为编码网络中的注意力模型的网络示意图;
图15为通用端到端编解码网络示意图;
图16是本申请实施例提供的视频解码器的示意性框图;
图17是本申请实施例提供的视频编码器的示意性框图;
图18是本申请实施例提供的电子设备的示意性框图;
图19是本申请实施例提供的视频编解码***的示意性框图。
本申请可应用于面向机器视觉以及人机混合视觉的各类视频编解码领域,将5G、AI、深度学***安城市、可穿戴、视频监控等机器视觉内容,相比日趋饱和的面向人类视频,应用场景更为广泛,面向机器视觉的视频编码将成为5G和后5G时代的主要增量流量来源之一。
例如,本申请的方案可结合至音视频编码标准(audio video coding standard,简称AVS),例如,H.264/音视频编码(audio video coding,简称AVC)标准,H.265/高效视频编码(high efficiency video coding,简称HEVC)标准以及H.266/多功能视频编码(versatile video coding,简称VVC)标准。或者,本申请的方案可结合至其它专属或行业标准而操作,所述标准包含ITU-TH.261、ISO/IECMPEG-1Visual、ITU-TH.262或ISO/IECMPEG-2Visual、ITU-TH.263、ISO/IECMPEG-4Visual,ITU-TH.264(还称为ISO/IECMPEG-4AVC),包含可分级视频编解码(SVC)及多视图视频编解码(MVC)扩展。应理解,本申请的技术不限于任何特定编解码标准或技术。
图1为本申请实施例涉及的一种视频编解码***的示意性框图。需要说明的是,图1只是一种示例,本申请实施例的视频编解码***包括但不限于图1所示。如图1所示,该视频编解码***100包含编码设备110和解码设备120。其中编码设备用于对视频数据进行编码(可以理解成压缩)产生码流,并将码流传输给解码设备。解码设备对编码设备编码产生的码流进行解码,得到解码后的视频数据。
本申请实施例的编码设备110可以理解为具有视频编码功能的设备,解码设备120可以理解为具有视频解码功能的设备,即本申请实施例对编码设备110和解码设备120包括更广泛的装置,例如包含智能手机、台式计算机、移动计算装置、笔记本(例如,膝上型)计算机、平板计算机、机顶盒、电视、相机、显示装置、数字媒体播放器、视频游戏控制台、车载计算机等。
在一些实施例中,编码设备110可以经由信道130将编码后的视频数据(如码流)传输给解码设备120。信道130可以包括能够将编码后的视频数据从编码设备110传输到解码设备120的一个或多个媒体和/或装置。
在一个实例中,信道130包括使编码设备110能够实时地将编码后的视频数据直接发射到解码设备120的一个或多个通信媒体。在此实例中,编码设备110可根据通信标准来调制编码后的视频数据,且将调制后的视频数据发射到解码设备120。其中通信媒体包含无线通信媒体,例如射频频谱,可选的,通信媒体还可以包含有线通信媒体,例如一根或多根物理传输线。
在另一实例中,信道130包括存储介质,该存储介质可以存储编码设备110编码后的视频数据。存储介质包含多 种本地存取式数据存储介质,例如光盘、DVD、快闪存储器等。在该实例中,解码设备120可从该存储介质中获取编码后的视频数据。
在另一实例中,信道130可包含存储服务器,该存储服务器可以存储编码设备110编码后的视频数据。在此实例中,解码设备120可以从该存储服务器中下载存储的编码后的视频数据。可选的,该存储服务器可以存储编码后的视频数据且可以将该编码后的视频数据发射到解码设备120,例如web服务器(例如,用于网站)、文件传送协议(FTP)服务器等。
一些实施例中,编码设备110包含视频编码器112及输出接口113。其中,输出接口113可以包含调制器/解调器(调制解调器)和/或发射器。
在一些实施例中,编码设备110除了包括视频编码器112和输入接口113外,还可以包括视频源111。
视频源111可包含视频采集装置(例如,视频相机)、视频存档、视频输入接口、计算机图形***中的至少一个,其中,视频输入接口用于从视频内容提供者处接收视频数据,计算机图形***用于产生视频数据。
视频编码器112对来自视频源111的视频数据进行编码,产生码流。视频数据可包括一个或多个图像(picture)或图像序列(sequence of pictures)。码流以比特流的形式包含了图像或图像序列的编码信息。编码信息可以包含编码图像数据及相关联数据。相关联数据可包含序列参数集(sequence parameter set,简称SPS)、图像参数集(picture parameter set,简称PPS)及其它语法结构。SPS可含有应用于一个或多个序列的参数。PPS可含有应用于一个或多个图像的参数。语法结构是指码流中以指定次序排列的零个或多个语法元素的集合。
视频编码器112经由输出接口113将编码后的视频数据直接传输到解码设备120。编码后的视频数据还可存储于存储介质或存储服务器上,以供解码设备120后续读取。
在一些实施例中,解码设备120包含输入接口121和视频解码器122。
在一些实施例中,解码设备120除包括输入接口121和视频解码器122外,还可以包括显示装置123。
其中,输入接口121包含接收器及/或调制解调器。输入接口121可通过信道130接收编码后的视频数据。
视频解码器122用于对编码后的视频数据进行解码,得到解码后的视频数据,并将解码后的视频数据传输至显示装置123。
显示装置123显示解码后的视频数据。显示装置123可与解码设备120整合或在解码设备120外部。显示装置123可包括多种显示装置,例如液晶显示器(LCD)、等离子体显示器、有机发光二极管(OLED)显示器或其它类型的显示装置。
此外,图1仅为实例,本申请实施例的技术方案不限于图1,例如本申请的技术还可以应用于单侧的视频编码或单侧的视频解码。
神经网络源于认知神经科学与数学的交叉研究,通过多层交替级联神经元与非线性激活函数构建的多层感知机(multi-layer perceptron,MLP)结构能够以足够小的误差实现对任意连续函数的逼近。神经网络的学习方法经历了由19世纪60年代提出感知机学习算法,到19世纪80年代通过链式法则和反向传播算法建立的MLP学习过程,再到如今被广泛使用的随机梯度下降方法。为了解决时域信号梯度计算复杂度过高以及信号依赖问题,提出长短期记忆(long short-term memory,LSTM)结构,通过循环网络结构控制梯度传递实现对序列信号的高效学习。通过对受限玻兹曼机(restricted Boltzmann machine,RBM)的每一层进行分层预训练,使得深层的神经网络训练变得可能。在解释了MLP结构具有更为优异的特征学习能力的同时,MLP在训练上的复杂度还可以通过逐层初始化和预训练来有效缓解。从此具有多隐含层的MLP结构研究再次成为热点,而神经网络也有了一个新的名称——深度学习(deep learning,DL)。
神经网络作为优化算法以及信号紧凑表征形式,可以与图像视频压缩相结合。
随着机器学习算法的发展和普及,基于深度学习的端到端图像/视频编解码器通过采用深度神经网络辅助编码工具,借助深度学习方法中的分层模型架构和大规模的数据先验信息,获得了比传统编解码器更优的性能。
通常用于图像压缩的编解码器和用于任务分析的智能任务网络是分开设计和优化的,流程如图2所示,在对压缩后的图像执行智能任务分析时,需要将不同的编解码器解码重建后的图像输入到智能任务网络中进行任务分析。
用于压缩的编解码框架方法通常可分为:传统混合编码框架;传统混合编码框架的改进(例如使用神经网络来替换传统框架中某几个模块);端到端编解码网络框架。这些压缩方法的输出端都为解码重建后的图像或视频。
在一些实施例中,用于压缩的编解码框架为传统混合编码框架时,可以采用如图3所示的视频编码器,和图4所示的视频解码器。
图3是本申请实施例涉及的视频编码器的示意性框图。应理解,该视频编码器200可用于对图像进行有损压缩(lossy compression),也可用于对图像进行无损压缩(lossless compression)。该无损压缩可以是视觉无损压缩(visually lossless compression),也可以是数学无损压缩(mathematically lossless compression)。
在一些实施例中,如图3所示,该视频编码器200可包括:预测单元210、残差单元220、变换/量化单元230、反变换/量化单元240、重建单元250、环路滤波单元260、解码图像缓存270和熵编码单元280。需要说明的是,视频编码器200可包含更多、更少或不同的功能组件。
可选的,在本申请中,当前块(current block)可以称为当前编码单元(CU)或当前预测单元(PU)等。预测块也可称为预测图像块或图像预测块,重建图像块也可称为重建块或图像重建图像块。
在一些实施例中,预测单元210包括帧间预测单元211和帧内估计单元212。由于视频的一个帧中的相邻像素之间存在很强的相关性,在视频编解码技术中使用帧内预测的方法消除相邻像素之间的空间冗余。由于视频中的相邻帧之间存在着很强的相似性,在视频编解码技术中使用帧间预测方法消除相邻帧之间的时间冗余,从而提高编码效率。
帧间预测单元211可用于帧间预测,帧间预测可以参考不同帧的图像信息,帧间预测使用运动信息从参考帧中找到参考块,根据参考块生成预测块,用于消除时间冗余;帧间预测所使用的帧可以为P帧和/或B帧,P帧指的是向前预测帧,B帧指的是双向预测帧。运动信息包括参考帧所在的参考帧列表,参考帧索引,以及运动矢量。运动矢量可以是整像素的或者是分像素的,如果运动矢量是分像素的,那么需要再参考帧中使用插值滤波做出所需的分像素的块, 这里把根据运动矢量找到的参考帧中的整像素或者分像素的块叫参考块。有的技术会直接把参考块作为预测块,有的技术会在参考块的基础上再处理生成预测块。在参考块的基础上再处理生成预测块也可以理解为把参考块作为预测块然后再在预测块的基础上处理生成新的预测块。
帧内估计单元212只参考同一帧图像的信息,预测当前码图像块内的像素信息,用于消除空间冗余。帧内预测所使用的帧可以为I帧。
帧内预测有多种预测模式,以国际数字视频编码标准H系列为例,H.264/AVC标准有8种角度预测模式和1种非角度预测模式,H.265/HEVC扩展到33种角度预测模式和2种非角度预测模式。HEVC使用的帧内预测模式有平面模式(Planar)、DC和33种角度模式,共35种预测模式。VVC使用的帧内模式有Planar、DC和65种角度模式,共67种预测模式。对于亮度分量有基于训练得到的预测矩阵(Matrix based intra prediction,MIP)预测模式,对于色度分量,有CCLM预测模式。
需要说明的是,随着角度模式的增加,帧内预测将会更加精确,也更加符合对高清以及超高清数字视频发展的需求。
残差单元220可基于CU的像素块及CU的PU的预测块来产生CU的残差块。举例来说,残差单元220可产生CU的残差块,使得残差块中的每一采样具有等于以下两者之间的差的值:CU的像素块中的采样,及CU的PU的预测块中的对应采样。
变换/量化单元230可量化变换系数。变换/量化单元230可基于与CU相关联的量化参数(QP)值来量化与CU的TU相关联的变换系数。视频编码器200可通过调整与CU相关联的QP值来调整应用于与CU相关联的变换系数的量化程度。
反变换/量化单元240可分别将逆量化及逆变换应用于量化后的变换系数,以从量化后的变换系数重建残差块。
重建单元250可将重建后的残差块的采样加到预测单元210产生的一个或多个预测块的对应采样,以产生与TU相关联的重建图像块。通过此方式重建CU的每一个TU的采样块,视频编码器200可重建CU的像素块。
环路滤波单元260可执行消块滤波操作以减少与CU相关联的像素块的块效应。
在一些实施例中,环路滤波单元260包括去块滤波单元和样点自适应补偿/自适应环路滤波(SAO/ALF)单元,其中去块滤波单元用于去方块效应,SAO/ALF单元用于去除振铃效应。
解码图像缓存270可存储重建后的像素块。帧间预测单元211可使用含有重建后的像素块的参考图像来对其它图像的PU执行帧间预测。另外,帧内估计单元212可使用解码图像缓存270中的重建后的像素块来对在与CU相同的图像中的其它PU执行帧内预测。
熵编码单元280可接收来自变换/量化单元230的量化后的变换系数。熵编码单元280可对量化后的变换系数执行一个或多个熵编码操作以产生熵编码后的数据。
图4是本申请实施例涉及的视频解码器的示意性框图。
如图4所示,视频解码器300包含:熵解码单元310、预测单元320、逆量化变换单元330、重建单元340、环路滤波单元350及解码图像缓存360。需要说明的是,视频解码器300可包含更多、更少或不同的功能组件。
视频解码器300可接收码流。熵解码单元310可解析码流以从码流提取语法元素。作为解析码流的一部分,熵解码单元310可解析码流中的经熵编码后的语法元素。预测单元320、逆量化变换单元330、重建单元340及环路滤波单元350可根据从码流中提取的语法元素来解码视频数据,即产生解码后的视频数据。
在一些实施例中,预测单元320包括帧内估计单元321和帧间预测单元322。
帧内估计单元321(也称为帧内预测单元)可执行帧内预测以产生PU的预测块。帧内估计单元321可使用帧内预测模式以基于空间相邻PU的像素块来产生PU的预测块。帧内估计单元321还可根据从码流解析的一个或多个语法元素来确定PU的帧内预测模式。
帧间预测单元322可根据从码流解析的语法元素来构造第一参考图像列表(列表0)及第二参考图像列表(列表1)。此外,如果PU使用帧间预测编码,则熵解码单元310可解析PU的运动信息。帧间预测单元322可根据PU的运动信息来确定PU的一个或多个参考块。帧间预测单元322可根据PU的一个或多个参考块来产生PU的预测块。
逆量化变换单元330(也称为反量化/变换单元)可逆量化(即,解量化)与TU相关联的变换系数。逆量化变换单元330可使用与TU的CU相关联的QP值来确定量化程度。
在逆量化变换系数之后,逆量化变换单元330可将一个或多个逆变换应用于逆量化变换系数,以便产生与TU相关联的残差块。
重建单元340使用与CU的TU相关联的残差块及CU的PU的预测块以重建CU的像素块。例如,重建单元340可将残差块的采样加到预测块的对应采样以重建CU的像素块,得到重建图像块。
环路滤波单元350可执行消块滤波操作以减少与CU相关联的像素块的块效应。
视频解码器300可将CU的重建图像存储于解码图像缓存360中。视频解码器300可将解码图像缓存360中的重建图像作为参考图像用于后续预测,或者,将重建图像传输给显示装置呈现。
由上述图3和图4可知,视频编解码的基本流程如下:在编码端,将一帧图像划分成块,对当前块,预测单元210使用帧内预测或帧间预测产生当前块的预测块。残差单元220可基于预测块与当前块的原始块计算残差块,例如将当前块的原始块减去预测块得到残差块,该残差块也可称为残差信息。该残差块经由变换/量化单元230变换与量化等过程,可以去除人眼不敏感的信息,以消除视觉冗余。可选的,经过变换/量化单元230变换与量化之前的残差块可称为时域残差块,经过变换/量化单元230变换与量化之后的时域残差块可称为频率残差块或频域残差块。熵编码单元280接收到变换量化单元230输出的量化后的变换系数,可对该量化后的变换系数进行熵编码,输出码流。例如,熵编码单元280可根据目标上下文模型以及二进制码流的概率信息消除字符冗余。
在解码端,熵解码单元310可解析码流得到当前块的预测信息、量化系数矩阵等,预测单元320基于预测信息对当前块使用帧内预测或帧间预测产生当前块的预测块。逆量化变换单元330使用从码流得到的量化系数矩阵,对量化 系数矩阵进行反量化、反变换得到残差块。重建单元340将预测块和残差块相加得到重建块。重建块组成重建图像,环路滤波单元350基于图像或基于块对重建图像进行环路滤波,得到解码图像。编码端同样需要和解码端类似的操作获得解码图像。该解码图像也可以称为重建图像,重建图像可以为后续的帧作为帧间预测的参考帧。
需要说明的是,编码端确定的块划分信息,以及预测、变换、量化、熵编码、环路滤波等模式信息或者参数信息等在必要时携带在码流中。解码端通过解析码流及根据已有信息进行分析确定与编码端相同的块划分信息,预测、变换、量化、熵编码、环路滤波等模式信息或者参数信息,从而保证编码端获得的解码图像和解码端获得的解码图像相同。
上述是基于块的混合编码框架下的视频编解码器的基本流程,随着技术的发展,该框架或流程的一些模块或步骤可能会被优化,本申请适用于该基于块的混合编码框架下的视频编解码器的基本流程,但不限于该框架及流程。
在一些实施例中,若用于压缩的编解码框架为传统混合编码框架的改进时,可以通过如下几种示例所示的方法对传统混合编码框架进行改进。
示例一,使用一种基于超分辨率卷积神经网络(Super Resolution Convolutional Neural Network,SRCNN)的分像素插值滤波器,用于HEVC的半像素运动补偿。
示例二,使用一种新的全连接网络IPFCN(Intra Prediction using Full connected Network,使用全连接网络的帧内预测)来进行HEVC的帧内预测,将帧内预测的参考像素展开作为向量的输入,从而预测当前块的像素值。
示例三,使用卷积神经网络来用于帧内编码加速,用网络对不同深度CU分类的方法来预测帧内编码的CU分割方法,从而代替传统HEVC率失真优化方法中遍历不同划分的方式。
在一些实施例中,用于压缩的编解码框架可以为端到端编解码网络框架。
传统的混合编解码框架或基于传统混合编码改进的方法都是分多个模块进行编解码的,每个模块主要依赖于模块内不同模型的优化从得到最优的率失真解。这种没有考虑模块间联动的方法常常会导致率失真优化陷入局部最优解。近年来端到端压缩网络的发展和广泛使用很大程度上缓解了这种分模块优化方法的弊端,通过训练网络的传输来实现率失真最优化,更显示地计算整体模型的率失真损失。
在一种示例中,该端到端编解码网络为基于循环神经网络(Recurrent Neural Network,RNN)的编解码网络。该方法将图像输入到一个多轮共享的循环神经网络中,将每轮输出的重建残差作为下一轮循环神经网络的输入,通过控制循环的次数来控制码率,从而获得可伸缩编码的效果。
在一些实施例中,该端到端编解码网络为基于卷积神经网络(Convolution Neural Network,CNN)的端到端图像编码网络。在该网络中采用了广义除法归一化激活函数,并对网络输出的变换函数系数采用均匀量化,在训练中通过添加均匀噪声来模拟量化过程,从而解决网络训练中量化不可导问题。可选的,可以采用高斯尺度混合(Gaussian Scale Mixture,GSM)超先验模型,来替换全分解模型来建模。
在一些实施例中,可以使用高斯混合(Gaussian Mixture Model,GMM)超先验模型来替代GSM,并使用了基于PixelCNN结构的自回归上下文条件概率模型来降低码率,提高建模精度。
在一些实施例中,该端到端编解码网络为Lee编解码网络,Lee编解码网络采用迁移学习的方法提升网络重建图像的质量。
在一些实施例中,该端到端编解码网络为Hu编解码网络,Hu编解码网络通过利用不同任务之间的内在可迁移性,成功地以低比特率构建了紧凑和表达性的表示,用以支持包括高级语义相关任务和中级几何解析任务等多样化的机器视觉任务集。编解码网络通过使用高层的语义图增强低级的视觉特征,并且验证了这种方法可以有效提升图像压缩的码率、精度和失真表现。
面向智能分析的应用场景下,视频及图像除了需要呈现给用户高质量地观看以外,还更多地被用于分析理解其中的语义信息。
本申请实施例涉及的智能任务网络包括但不限于目标识别网络、目标检测网络和实例分割网络等。
在一些实施例中,端到端编解码网络通常首先使用神经网络来压缩图像/视频,然后将压缩后的码流传输到解码器中,最后在解码端解码重建图像/视频。可选的,端到端编解码网络的流程如图5A所示,其中E1、E2模块构成端到端编解码网络的编码端,D2、D1模块构成端到端编解码网络的解码端。其中E1模块为特征提取网络,从图像中提取特征;E2模块为特征编码模块,继续提取特征并将提取的特征编码成码流;D2模块为特征解码模块,将码流解码还原成特征并重建到低层的特征;D1模块为解码网络,从D2重建的特征重建图像。
示例性的,若上述端到端编解码网络为如图5B所示的Cheng编解码网络时,E1模块、E2模块、D1模块和D2模块的划分方式如图5B虚线框所示。图5B中Conv为卷积的缩写,表示卷积层。
示例性的,若上述端到端编解码网络为如图5C所示的Lee编解码网络时,E1模块、E2模块、D1模块和D2模块的划分方式如图5C虚线框所示。图5C中FCN(Fully Convolutional Networks)表示全连接层、ReLU(Rectified Linear Unit,线性整流函数)为一种激活函数,leaky ReLU为leaky激活函数,abs表示求绝对值,exp表示e的次幂函数。
示例性的,若上述端到端编解码网络为如图5D所示的Hu编解码网络时,E1模块、E2模块、D1模块和D2模块的划分方式如图5D虚线框所示。
需要说明的是,上述各模块的划分方式只是一种示例,可以根据实际情况进行灵活划分。
在一些实施例中,智能任务网络是对输入的图像/视频内容进行智能任务分析,包括但不限于目标识别、实例分割等任务。可选的,智能任务网络的流程如图6A所示,其中A1模块为特征提取网络,用于从重建图像/视频中提取低层特征。A2模块为智能分析网络,继续提取特征并对提取的特征进行智能分析。
示例性的,若上述智能任务网络为如图6B所示的目标识别网络yolo_v3(you only look once_version3,只看一次部分3)时,A1模块和A2模块的划分方式如图6B虚线框所示。
示例性的,若上述智能任务网络为如图6C所示的目标检测网络ResNet-FPN(Residual Networks-Feature Pyramid Networks,残差-特征金字塔网络)时,A1模块和A2模块的划分方式如图6C虚线框所示。
示例性的,可选的上述智能任务网络还可以是实例分割网络Mask RCNN(Mask Region-CNN,基于掩膜的RCNN)。
目前当面临大量的数据和智能分析任务时,对图像先压缩存储,再解压进行分析的方法,任务分析均是基于图像的,也就是说解码网络重建图像,将重建图像输入任务分析网络进行任务分析,造成任务分析耗时长,计算量大,效率低。
为了解决上述技术问题,本申请实施例将解码网络中间层输出的特征信息输入任务分析网络中,使得任务分析网络基于解码网络输出的特征信息进行任务分析,节省了任务分析所占用的时间和计算资源,进而提高了任务分析的效率。
下面结合具体的示例,对本申请实施例涉及的视频解码方法进行详细描述。
首先以解码端为例,对图像解码过程进行介绍。
图7为本申请实施例提供的视频解码方法的流程示意图。本申请实施例的执行主体可以理解为图1所示的解码器,如图7所示,包括:
S701、将当前图像的特征码流输入解码网络中,得到解码网络的第i个中间层输出的第一特征信息,i为正整数;
S702、将第一特征信息输入任务分析网络的第j个中间层中,得到任务分析网络输出的任务分析结果,j为正整数。
图8A为本申请一实施例涉及的网络模型示意图,如图8A所示,该网络模型包括解码网络和任务分析网络,其中解码网络的第i个中间层的输出端与任务分析网络的第j个中间层的输入端连接,这样,解码网络的第i个中间层输出的第一特征信息可作为任务分析网络的第j个中间层的输入,进而使得任务分析网络可以根据第j个中间层所输入的特征信息进行任务分析。
如图8A所示,本申请实施例与解码网络通过解码出所有层的特征信息后,进行图像重建,并将重建图像输入任务分析网络,使得任务分析网络基于重建图像进行任务分析相比,只需解码出部分特征信息,例如解码出第i个中间层的特征信息,而无需解码出所有层的特征信息,也无需重建图像,进而节省了任务分析所占用的时间和计算资源,提高任务分析的效率。
本申请实施例对解码网络的具体网络结构不做限制。
在一些实施例中,上述解码网络可以为单独的神经网络。在模型训练时,该解码网络进行单独训练。
在一些实施例中,上述解码网络为端到端编解码网络中的解码部分。在模型训练时,该端到端编解码网络中,解码部分和编码部分一起进行端到端的训练。其中端到端编解码网络也称为自编码器。
在一些实施例中,如图8B所示,解码网络包括解码单元和第一解码子网络,该解码单元用于对特征码流进行解码,第一解码子网络用于对解码单元解码出的特征信息进行特征再提取,以重建图像。在该实施例中,解码单元可以理解为熵解码单元,可以对特征码流进行熵解码,得到当前图像的初始特征信息,该解码单元可以为神经网络。上述第i个中间层为第一解码子网络中除输出层之外的其他层,即第i个中间层为第一解码子网络的输入层或任一中间层。
基于图8B,则上述S701包括如下S701-A和S701-B:
S701-A、将当前图像的特征码流输入解码单元中,得到解码单元输出的当前图像的初始特征信息;
S701-B、将初始特征信息输入第一解码子网络中,得到第一解码子网络的第i个中间层输出的第一特征信息。
在一些实施例中,如图8C所示,解码网络除了包括解码单元和第一解码子网络之外,还可以包括反量化单元,此时,上述S701-B包括如下S701-B1和S701-B2的步骤:
S701-B1、将初始特征信息输入反量化单元中,得到反量化后的特征信息;
S701-B2、将反量化后的特征信息输入第一解码子网络中,得到第一解码子网络的第i个中间层输出的第一特征信息。
即如图8C所示,解码网络中的解码单元对特征码流进行解码,得到初始特征信息,该初始特征信息在编码网络中经过了量化,因此,解码网络需要对该初始特征信息进行反量化,具体是,将该初始特征信息输入反量化单元中进行反量化,得到反量化后的特征信息,再将反量化后的特征信息输入第一解码子网络中,得到第一解码子网络的第i个中间层输出的第一特征信息。
在一些实施例中,编码网络在对当前图像进行编码时,不仅对当前图像的特征信息进行编码,形成特征码流,还估计了当前图像的解码点的出现概率分布,并对解码点的概率分布进行编码,形成当前图像的解码点概率分布码流(也称为概率估计码流)。这样,解码网络除了对特征码流进行解码外,还需要对解码点概率分布码流进行解码。
基于此,如图8D所示,解码网络还包括第二解码子网络,该第二解码子网络用于对解码点概率分布码流进行解码。此时,本申请实施例还包括:将当前图像的解码点概率分布码流输入第二解码子网络中,得到当前图像的解码点的概率分布。对应的,上述S701-A包括:将当前图像的特征码流和当前图像的解码点的概率分布输入解码单元中,得到解码单元输出的当前图像的初始特征信息。
可选的,上述第二解码子网络可以为超先验网络。
本申请实施例对任务分析网络的具体网络结构不做限制。
可选的,任务分析网络可以为目标识别网络、目标检测网络、实例分割网络、分类网络等。
本申请实施例对第i个中间层和第j个中间层的具体选择不做限制。
在一些实施例中,上述第i个中间层可以为解码网络中除输入层和输出层之外的任意一个中间层,第j个中间层可以为解码网络中除输入层和输出层之外的任意一个中间层。
在一些实施例中,第i个中间层和第j个中间层为解码网络和任务分析网络中,特征相似度最高和/或模型损失最小的两个中间层。
示例性的,特征相似度的计算过程可以是:在网络模型搭建阶段,将图像A输入编码网络中,得到图像A的码流,将图像A的码流输入解码网络中,得到解码网络的各中间层输出的特征信息,以及图像A的重建图像。将重建图 像输入任务分析网络中,得到任务分析网络的各中间层输入的特征信息。接着,计算解码网络的各中间输出的特征信息和任务分析网络的各中间层输入的特征信息中两两特征信息之间的相似度。
举例说明,以端到端编解码网络为Cheng2020网络,任务分析网络为图9A所示的目标检测网络为例,该目标检测网络也称为Faster RCNN R50C4(faster regions with conventional neural network Resnet50Conv4,更快速的区域卷积神经网络R50C4)网络。如图9A所示,该目标检测网络包括骨干网络ResNet50-C4(Residual Networks50-C4,残差网络50-C4)、RPN(Region proposal network,区域提取网络)和ROI-Heads(Region of interest_Heads,感兴趣区域头),其中骨干网络ResNet50-C4包括4层,分别为Conv1、Conv2_X、Conv 3_X和Conv4_X。其中Conv为卷积(convolution)的缩写。示例性的,Conv1包括至少一个卷积层,Conv2_X包括最大池化层、BTINK(Bottle Neck,瓶颈)1和2个BTINK2,Conv3_X包括一个BTINK1和3个BTINK2,Conv4_X包括一个BTINK1和5个BTINK2。可选的,BTINK1和BTINK2的网络结构如图9B所示,BTINK1包括4个卷积层,BTINK2包括3个卷积层。
在一些实施例中,Cheng2020网络由图9C所示的Enc_GDNM(encoder generalized divisive normalization module,编码器广义除法归一化模块)、Enc_NoGDNM(encoder no generalized divisive normalization module,编码器没有广义的除法归一化模块)、Dec_IGDNM(decoder inverse generalized divisive normalization module,解码器逆广义除法归一化模块)和Dec_NoIGDNM(decoder no inverse generalized divisive normalization module,解码器无逆广义除法归一化模块)组成。
图9D为端到端编解码网络和任务分析网络的网络示例图,其中,端到端编解码网络为Cheng2020,任务分析网络为Faster RCNN R50C4网络。该端到端编解码网络包括编码网络和解码网络,其中,编码网络包括9个网络层,包括节点e0到节点e9,解码网络包括10个网络层,包括节点d10到节点d0。任务分析网络的骨干网络包括4个网络层,包括节点F0到节点F15。如图9D所示,节点e0为编码网络的输入节点,节点d0为解码网络的输出节点,F0为任务分析网络的输入节点,这三个节点对应的数据为图像数据,例如大小为WXHX3的图像,其中,WXH为图像的尺度,3为图像的通道数。
在一些实施例中,图9D所示的网络中各层卷积核大小如表1所示:
其中,表1中的卷积核“[3×3,N],/2”,3×3为卷积核的大小,N为通道数,/2表示下采样,2为下采样的倍数。表1中的卷积核“[3×3,N]×2”,3×3为卷积核的大小,N为通道数,×2表示卷积核的数量为2个。表1中的卷积核“[3×3,3],*2”,*2表示上采样,2为上采样的倍数。
需要说明的是,上述表1只是一种示例,图9D所示的网络中各层的卷积核包括但不限于上述表1所示。
图9D中编码网络、解码网络和任务分析网络中各节点对应的特征信息的大小如表2所示:
表2
根据上述表2所示的解码网络和任务分析网络中各中间层的特征信息的大小,计算解码网络的各中间输出的特征信息和任务分析网络的各中间层输入的特征信息中两两特征信息之间的相似度。
示例性的,假设根据上述确定出解码网络中节点d7对应的中间层输出的特征信息与任务分析网络的F9节点对应的中间层输入的特征信息的相似度最高,则如图9E所示,将节点d7对应的中间层作为第i个中间层,将F9对应的中间层作为第j个中间层,进而将节点d7对应的中间层的输出端与F9对应的中间层的输入端连接。
示例性的,假设根据上述确定出解码网络中节点d5对应的中间层输出的特征信息与任务分析网络的F5节点对应的中间层输入的特征信息的相似度最高,则如图9F所示,将节点d5对应的中间层作为第i个中间层,将F5对应的中间层作为第j个中间层,进而将节点d5对应的中间层的输出端与F5对应的中间层的输入端连接。
示例性的,假设根据上述确定出解码网络中节点d2对应的中间层输出的特征信息与任务分析网络的F1节点对应的中间层输入的特征信息的相似度最高,则如图9G所示,将节点d2对应的中间层作为第i个中间层,将F2对应的中间层作为第j个中间层,进而将节点d2对应的中间层的输出端与F1对应的中间层的输入端连接。
可选的,第i个中间层和第j个中间层之间的特征相似度包括如下至少一个:第i个中间层输出的特征图和第j个中间层输入的特征图之间的相似度、第i个中间层输出的特征大小和第j个中间层输入的特征大小之间的相似度、第i个中间层输出的特征图的统计直方图和第j个中间层输入的特征图的统计直方图之间的相似度。
上述特征相似度的计算过程进行了介绍,下面对模型损失的计算过程进行介绍。
继续以图9D所示的模型为例,假设将节点d5和节点F5相连,需要说明的是,这里的节点相连,可以理解为两个中间层相连,例如节点d5为解码网络中一个中间层的输出端,节点F5为任务分析网络的一个中间层的输入端。向图9D所示的模型中输入一张图像B,编码网络对该图像B进行特征编码,得到码流。解码网络对该码流进行解码,得到节点d5的特征信息1,将该特征信息1输入节点F5中进行任务分析,得到任务分析网络基于该特征信息1预测的分类结果1。计算任务分析网络预测的分类结果1与该图像B对应的分类结果真值之间的损失1,根据该损失1确定当前模型的损失。接着,将节点d5与节点F9连接,参照上述过程,计算出节点d5与节点F9连接时,模型的损失。依次类推,根据上述方法,可以计算出解码网络中不同节点与任务分析网络的不同节点连接时,模型的损失。
可选的,可以将模型损失最小时对应的相连的两个中间层(或两个节点),确定为第i个中间层和第j个中间层。
可选的,可以根据两个中间层之间的特征相似度和模型损失,来确定第i个中间层和第j个中间层。例如,根据上述特征相似度的计算方法,计算解码网络的中间层和任务分析网络的中间层之间的特征相似度,以及计算两个中间层连接时模型的损失,将特征相似度和模型损失之和最小的两个中间层,确定为第i个中间层和第j个中间层。
在一些实施例中,为了降低第i个中间层和第j个中间层确定过程中的复杂度,可以通过如下几种示例,来确定出第i个中间层和第j个中间层。
示例1,先从解码网络中随机选择一个中间层作为第i个中间层,将任务分析网络中与该第i个中间层的特征相似度最高的中间层确定为第j个中间层。
示例2,先从解码网络中随机选择一个中间层作为第i个中间层,将任务分析网络中的各中间层分别与该第i个中间层尝试相连后,确定任务分析网络中的不同中间层与解码网络中的第i个中间层连接后,网络模型的模型损失,将最小模型损失对应的中间层,确定为第j个中间层。
示例3,先从解码网络中随机选择一个中间层作为第i个中间层,确定任务分析网络中的各中间层与该第i个中间层的特征相似度,以及确定任务分析网络中的不同中间层与解码网络中的第i个中间层连接后,网络模型的模型损失,确定任务分析网络中的各中间层对应的特征相似度和模型损失的和值,将最小和值对应的中间层,确定为第j个中间层。
示例4,先从任务分析网络中随机选择一个中间层作为第j个中间层,将解码网络中与该第j个中间层的特征相似度最高的中间层确定为第i个中间层。
示例5,先从任务分析网络中随机选择一个中间层作为第j个中间层,将解码网络中的各中间层分别与该第j个中间层尝试相连后,确定解码网络中的不同中间层与任务分析网络中的第j个中间层连接后,网络模型的模型损失,将最小模型损失对应的中间层,确定为第i个中间层。
示例6,先从任务分析网络中随机选择一个中间层作为第j个中间层,确定解码网络中的各中间层与该第j个中间层的特征相似度,以及确定解码网络中的不同中间层与任务分析网络中的第j个中间层连接后,网络模型的模型损失, 确定解码网络中的各中间层对应的特征相似度和模型损失的和值,将最小和值对应的中间层,确定为第i个中间层。
需要说明的是,上述第i个中间层和第j个中间层的确定过程在网络搭建过程执行。
在一些实施例中,如第i个中间层输出的特征信息和第j个中间层的输入特征的大小不同时,还包括特征大小转换的过程。即上述S702包括如下S702-A1和S702-A2:
S702-A1、将第一特征信息输入特征适配器中进行特征适配,得到第二特征信息,该第二特征信息的大小与第j个中间层的预设输入大小一致;
S702-A2、将第二特征信息输入第j个中间层中,得到任务分析网络输出的任务分析结果。
例如,图9H所示,在解码网络的第i个中间层与任务分析网络的第j个中间层之间设置有特征适配器。
其中,第j个中间层的输入端所输入的特征信息的大小可以预先进行设置。
在一些实施例中,该特征适配器可以为神经网络单元,例如包括池化层或卷积层等,将这类特征适配器称为基于神经网络的特征适配器。
在一些实施例中,该特征适配器可以为算法单元,用于执行某一种或几种算数,以实现特征信息大小的转换,将这类特征适配器称为基于非神经网络的特征适配器。
其中,特征信息的大小包括特征信息的尺寸和/或特征信息的通道数。
在一些实施例中,若特征信息的大小包括特征信息的通道数,则上述特征适配器用于通道数的适配。即上述S702-A1中将第一特征信息输入特征适配器中进行特征适配包括如下几种情况:
情况1,若第一特征信息的通道数大于第j个中间层的输入通道数,则通过特征适配器将第一特征信息的通道数减小至与第j个中间层的输入通道数相同的通道。
该情况1中,将第一特征信息的通道数减少至与第j个中间层的输入通道数相同的方式包括但不限于如下几种:
方式一,若特征适配器为基于非神经网络的特征适配器,将第一特征信息输入特征适配器,以使特征适配器采用主成分分析(Principal Component Analysis,PCA)方式或随机选择的方式,从第一特征信息的通道中选出第j个中间层的输入通道数个通道。
例如,第一特征信息的通道数为64,第j个中间层的输入通道数为32,则可以从第一特征信息的64个通道数中随机选出32个通道,输入第j个中间层中。
再例如,将第一特征信息输入特征适配器,以使特征适配器采用PCA方式,从第一特征信息的通道中选择出与第j个中间层的输入通道数相同的主要特征通道。其中,PCA是一种常见的数据分析方式,常用于高维数据的降维,可用于提取数据的主要特征分量。
方式二,若特征适配器为基于神经网络的特征适配器,将第一特征信息输入特征适配器中,通过特征适配器中的至少一个卷积层,将第一特征信息的通道数减小至与第j个中间层的输入通道数相同。可选的,可以通过减少特征适配器中的卷积层的数量,和/或减少卷积核的数量,以减少第一特征信息的通道数。
情况2,若第一特征信息的通道数小于第j个中间层的输入通道数,则通过特征适配器将第一特征信息的通道数增加至与第j个中间层的输入通道数相同。
该情况2中,若特征适配器为基于非神经网络的特征适配器,将第一特征信息的通道数增加至与第j个中间层的输入通道数相同的方式包括但不限于如下几种:
方式一,若第j个中间层的输入通道数是第一特征信息的通道数的整数倍,则将第一特征信息的通道复制整数倍,以使复制后的第一特征信息的通道数与第j个中间层的输入通道数相同。
例如,第一特征信息的通道数为32,第j个中间层的输入通道数为64,则对第一特征信息的32个通道复制一份,得到64个通道的特征信息。
方式二,若第j个中间层的输入通道数不是第一特征信息的通道数的整数倍,则将第一特征信息的通道复制N倍,且从第一特征信息的通道中选出M个通道,对M个通道进行复制后与复制N倍的第一特征信息的通道进行合并,以使合并后的第一特征信息的通道数与第j个中间层的输入通道数相同,N为第j个中间层的输入通道数与第一特征信息的通道数相除后的商,M为第j个中间层的输入通道数与第一特征信息的通道数相除后的余数,N、M均为正整数。
例如,第一特征信息的通道数是64,第j个中间层的输入通道数是224,则224与64相除的商为3,余数为32,即N为3,M为32,则将第一特征信息的原有通道复制3份,得到192个通道,接着,从第一特征信息原有的64个通道中选出32个通道,对这32个通道进行复制,将复制后的32个通道与上述复制得到的192个通道合并,得到224个通道,这224个通道作为合并后的第一特征信息的通道。
可选的,上述从第一特征信息原有的64个通道中选出32个通道的方式可以是随机选择,也可以是采用PCA方式进行选择,或者其他方式进行选择,本申请对此不做限制。
上述32个通道与192个通道的合并方式可以是,将32个通道放置在192个通道后,或者放置在92个通道前,或者穿插在192个通道中,本申请对此不做限制。
方式三,从第一特征信息的通道中选出P个主要特征通道,对P个主要特征通道进行复制后与第一特征信息的通道进行合并,以使合并后的第一特征信息的通道数与第j个中间层的输入通道数相同,P为第j个中间层的输入通道数与第一特征信息的通道数之间的差值,P为正整数。
例如,第一特征信息的通道数是192,第j个中间层的输入通道数是256,256与192的差值为64,即P=64。从第一特征信息的192个通道中选出64个通道,对这64个通道进行复制后与第一特征信息的原有的192通道进行合并,得到256个通道。
可选的,上述从第一特征信息原有的192个通道中选出64个通道的方式可以是随机选择,也可以是采用PCA方式进行选择,或者其他方式进行选择,本申请对此不做限制。
该情况2中,若特征适配器为基于神经网络的特征适配器,则可以将所述第一特征信息输入所述特征适配器中, 通过所述特征适配器中的至少一个卷积层,将所述第一特征信息的通道数增加至与所述第j个中间层的输入通道数相同。可选的,可以通过增加特征适配器中的卷积层的数量,和/或增加卷积核的数量,以增加第一特征信息的通道数。
例如,第一特征信息的大小为
第j个中间层的输入大小为
此时通过特征适配器中的至少一个卷积层,将第一特征信息的大小增加至
在一些实施例中,若特征信息的大小包括特征信息的尺寸,则上述特征适配器用于尺寸的适配。即上述S702-A1中将第一特征信息输入特征适配器中进行特征适配的实现方式包括如下几种情况:
情况1,若第一特征信息的尺寸大于第j个中间层的输入尺寸,则通过特征适配器将第一特征信息下采样至与第j个中间层的输入尺寸相同。
该情况1中,通过特征适配器将第一特征信息下采样至与第j个中间层的输入尺寸相同的方式包括但不限于如下几种:
方式一,若特征适配器为基于非神经网络的特征适配器,则通过述特征适配器,对第一特征信息下采样,以使下采样后的第一特征信息的尺寸与第j个中间层的输入尺寸相同。
例如,第一特征信息的大小为
第j个中间层的输入大小为
此时通过将通道数复制一倍,并进行上采样,来使特征维度匹配。
方式二,若特征适配器为基于神经网络的特征适配器,则通过特征适配器中的至少一个池化层,将第一特征信息的尺寸下采样至与第j个中间层的输入尺寸相同。
可选的,上述池化层可以为最大池化层、平均池化层、重叠池化层等。
情况2,若第一特征信息的尺寸小于第j个中间层的输入尺寸,则通过特征适配器将第一特征信息上采样至与第j个中间层的输入尺寸相同。
该情况2中,通过特征适配器将第一特征信息上采样至与第j个中间层的输入尺寸相同的方式包括但不限于如下几种:
方式一,若特征适配器为基于非神经网络的特征适配器,则通过特征适配器,对第一特征信息上采样,以使上采样后的第一特征信息的尺寸与第j个中间层的输入尺寸相同。
例如,第一特征信息的大小为
第j个中间层的输入大小为
此时可以通过上述采样,来使特征维度匹配。
方式二,若特征适配器为基于神经网络的特征适配器,则通过特征适配器中的至少一个上池化层,将第一特征信息的尺寸上采样至与第j个中间层的输入尺寸相同。
可选的,在该方式二中,特征适配器可以理解为上采样单元,例如特征适配器可以包括双线性插值层和/或反卷积层和/或反池化层和/或上池化层等。该特征适配器对第一特征信息进行上采样,使得上采样后的第一特征信息的尺寸与第j个中间层的输入尺寸相同。
继续以图9D所示的网络模型为例,上述特征适配器的输入端可以与解码网络的第i个中间层的输出端连接,该特征适配器的输出端与任务分析网络的第j个中间层的输入端连接,以将第i个中间层输出的第一特征信息的大小进行转换,以适配第j个中间层的输入大小。
示例性的,假设解码网络中节点d7与任务分析网络的F9节点连接,则如图10A所示,将节点d7对应的中间层作为第i个中间层,将F9对应的中间层作为第j个中间层,进而在节点d7和节点F9之间连接特征适配器,该特征适配器用于将d7对应的中间层输出的第一特征信息转换为第二特征信息后输入节点F9对应的中间层。
示例性的,假设解码网络中节点d5与任务分析网络的F5节点连接,则如图10B所示,将节点d5对应的中间层作为第i个中间层,将F5对应的中间层作为第j个中间层,进而在节点d5和节点F5之间连接特征适配器,该特征适配器用于将d5对应的中间层输出的第一特征信息转换为第二特征信息后输入节点F5对应的中间层。
示例性的,假设解码网络中节点d2与任务分析网络的F2节点连接,则如图10C所示,将节点d2对应的中间层作为第i个中间层,将F1对应的中间层作为第j个中间层,进而在节点d2和节点F1之间连接特征适配器,该特征适配器用于将d2对应的中间层输出的第一特征信息转换为第二特征信息后输入节点F1对应的中间层。
本申请实施例提供的视频解码方法,通过将当前图像的特征码流输入解码网络中,得到解码网络的第i个中间层输出的第一特征信息,i为正整数;将第一特征信息输入任务分析网络的第j个中间层中,得到任务分析网络输出的任务分析结果,j为正整数。本申请将解码网络中间层输出的特征信息输入任务分析网络中,使得任务分析网络基于解码网络输出的特征信息进行任务分析,节省了任务分析所占用的时间和计算资源,进而提高了任务分析的效率。
图11为本申请一实施例提供的视频解码方法流程示意图,如图11所示,本申请实施例的方法包括:
S801、将当前图像的特征码流输入解码网络中,得到解码网络的第i个中间层输出的第一特征信息,以及解码网络输出的当前图像的重建图像。
在该实施例中,不仅获取解码网络的第i个中间层输出的第一特征信息,还需要获取该解码网络最终输出的当前图像的重建图像。
也就是说,该实施例中,一方面,可以将解码网络的第i个中间层输出的第一特征信息,并将该第一特征信息输入任务分析网络的第j个中间层中,以使任务分析网络基于该第一特征信息进行任务分析,输出任务分析结果。另一方面,该解码网络继续进行后续的特征恢复,以实现当前图像的重建,输出当图像的重建图像,可以满足任务分析和图像显示的场景。
在一些实施例中,本申请实施例还可包括如下S802和S803的步骤。
S802、将重建图像输入任务分析网络中,得到任务分析网络的第j-1层输出的第三特征信息。
S803、将第三特征信息和第一特征信息输入第j个中间层中,得到任务分析网络输出的任务分析结果。
图12为本申请一实施例涉及的解码网络和任务分析网络的结构示意图,如图12所示,解码网络的第i个中间层与任务分析网络的第j个中间层连接,且解码网络的输出端与任务分析网络的输入端连接。
即在一些实施例中,获得解码网络的第i个中间层输出的第一特征信息,以及解码网络最终输出的当前图像的重建图像。接着,将当前图像的重建图像输入任务分析网络的输入端进行特征分析,得到任务分析网络的第j-1个中间层输出的第三特征信息。接着,将任务分析网络的第j-1个中间层输出的第三特征信息和解码网络的第i个中间层输出的第一特征信息输入任务分析网络的第j个中间层中,以使任务分析网络基于第三特征信息和第一特征信息进行任务分析,由于第三特征信息是通过重建图像获得的,可以反映出重建图像的特征,这样基于第一特征信息和第三特征信息,进行任务分析时,可以提高任务分析的准确性。
在一些实施例中,上述S803将第三特征信息和第一特征信息输入第j个中间层中,得到任务分析网络输出的任务分析结果的实现方式包括但不限于如下几种:
方式一,将第三特征信息和第一特征信息进行联合,将联合后的特征信息输入第j个中间层中,得到任务分析网络输出的任务分析结果。
可选的,上述联合的方式可以是不同权重的级联、不同权重的融合或加权平均等操作。
可选的,若第三特征信息和第一特征信息的大小不一致,则可以采用上述特征转换器,将第三特征信息和第一特征信息转换为大小一致后进行级联。
可选的,若级联后的特征信息与第j个中间层的输入大小不一致时,可以采用上述特征转换器,将级联后的特征信息的大小转换为与第j个中间层的输入大小一致后,输入第j个中间层中。
可选的,还可以在级联之前,先将第三特征信息和/或第一特征信息的大小进行转换,使得转换后的第一特征信息和/或第三特征信息级联后的大小与第j个中间层的输入大小一致。
方式二,将第三特征信息和第一特征信息进行相加,将相加后的特征信息输入第j个中间层中,得到任务分析网络输出的任务分析结果。
方式二,将第三特征信息和第一特征信息进行相乘,将相乘后的特征信息输入第j个中间层中,得到任务分析网络输出的任务分析结果。
在一些实施例中,在模型训练时,解码网络和任务分析网络一起进行端到端训练。
在一些实施例中,在模型训练时,解码网络和编码网络一起进行端到端训练。
在一些实施例中,在模型训练时,编码网络、解码网络和任务分析网络一起进行端到端训练。
在一些实施例中,若编码网络、解码网络和任务分析网络一起进行端到端训练,编码网络、解码网络和任务分析网络在训练时的目标损失是根据编码网络输出的特征信息码流的比特率、解码点概率分布码流的比特率和任务分析网络的任务分析结果损失中的至少一个确定的。
例如,目标损失为任务分析结果损失、特征信息码流的比特率和解码点概率分布码流的比特率三者之和。
再例如,目标损失为预设参数与任务分析结果损失的乘积、与特征信息码流的比特率和解码点概率分布码流的比特率之和。
示例性的,可以通过如下公式(1)确定编码网络、解码网络和任务分析网络一起进行端到端训练时的目标损失loss:
其中,
和
分别是潜在特征表述的比特率(即特征码流的比特率),边信息的比特率(即解码点概率分布码流的比特率),λ表示预设参数,也称为率失真权衡参数,loss
task为任务分析网络的任务分析结果损失,例如为任务分析网络的预测的任务分析结果和任务分析结果真值之间的损失。
可选的,预设参数与解码网络和任务分析网络中至少一个的网络模型相关,例如,不同的预设参数λ对应不同的模型,即不同的总比特率,总比特率为特征码流的比特率和边信息的比特率之和。
本申请实施例提供的视频解码方法,通过将当前图像的特征码流输入解码网络中,得到解码网络的第i个中间层输出的第一特征信息,以及解码网络输出的当前图像的重建图像;可选的,还将重建图像输入任务分析网络中,得到任务分析网络的第j-1层输出的第三特征信息;将第三特征信息和第一特征信息输入第j个中间层中,得到任务分析网络输出的任务分析结果,提高任务分析的准确性。
上文对申请视频解码方法进行了介绍,下面结合实施例,对本申请实施例涉及的视频编码方法进行介绍。
图13为本申请一实施例提供的视频编码方法的流程示意图,本申请实施例的执行主体可以为图1所示的编码器。如图13所示,本申请实施例的方法包括:
S901、获取待编码的当前图像。
S902、将当前图像输入编码网络中,得到编码网络输出的特征码流。
在模型训练时,上述编码网络和上述解码网络一起进行端到端训练,其中解码网络的第i个中间层输出的第一特征信息输入任务分析网络的第j个中间层中。
本申请的当前图像可以理解为视频流中待编码的一帧图像或该帧图像中的部分图像;或者,当前图像可以理解为单张的待编码图像或该张待编码图像中的部分图像。
在一些实施例中,如图14A所示,编码网络包括第一编码子网络和编码单元,此时,上述S902包括:
S902-A1、将当前图像输入第一编码子网络中,得到当前图像的初始特征信息;
S902-A2、将初始特征信息输入编码单元中,得到编码单元输出的特征码流。
可选的,上述编码单元可以为熵编码单元,用于对初始特征信息进行熵编码,得到当前图像的特征码流。可选的,该编码单元为神经网络。
在一些实施例中,如图14B所示,编码网络还包括量化单元,此时,上述S902-A2包括:
S902-A21、将初始特征信息输入量化单元中进行量化,得到量化后的特征信息;
S902-A22、将量化后的特征信息输入编码单元中,得到编码单元输出的特征码流。
本申请实施例对量化步长不做限制。
在一些实施例中,如图14C所示,编码网络还包括第二编码子网络,此时,本申请实施例的方法还包括:将初始特征信息输入第二编码子网络中进行解码点的概率分布估计,得到第二编码子网络输出的当前图像的解码点概率分布码流。
可选的,上述第二编码子网络为超先验网络。
示例性的,假设编码网络为上述Cheng2020编解码网络中的编码部分,其网络结构如图14D所示。将当前图像输入第一编码子网络中,经过卷积层以及注意力模块后,得到从当前图像中提取的特征信息,将该特征信息经过量化单元的量化和编码单元的熵编码生成特征码流。另外,将该特征信息经过第二编码子网络的概率分布估计,得到解码点出现的概率分布,对其进行量化和熵编码生成解码点概率分布码流。
可选的,图14D中的注意力模块(attention module)使用简化后的注意力模块(simplified attention module)来替代,其结构如图14E所示,其中RB(Residual block)表示残差块。注意力模块通常用于提高图像压缩的性能,但是通常使用的注意力模块在训练的时候非常耗时,所以通过去除非局部块来简化通用的注意力模块,以减小训练的复杂度。
在本申请的一些实施例中,在模型训练时,编码网络、解码网络和任务分析网络一起进行端到端训练。
在一些实施例中,编码网络、解码网络和任务分析网络在训练时的目标损失是根据编码网络输出的特征信息码流的比特率、解码点概率分布码流的比特率和任务分析网络的任务分析结果损失中的至少一个确定的。
示例性的,目标损失为预设参数与任务分析结果损失的乘积、与特征信息码流的比特率和解码点概率分布码流的比特率之和。
可选的,预设参数与解码网络和任务分析网络中至少一个的网络模型相关。
在一些实施例中,本申请实施例的编码网络和解码网络为端到端编解码网络。下面对本申请实施例可能会涉及到的几种端到端编解码网络进行介绍。
图15为通用端到端编解码网络示意图,其中ga可以理解为第一编码子网络,ha为第二编码子网络,gs为第一解码子网络,hs为第二解码子网络。在一些实施例中,第一编码子网络ga也称为主编码网络或主编码器,第一解码子网络gs称为主解码网络或主解码器,第二编码子网络ha和第二解码子网络hs称为超先验网络。通用端到端编解码网络的压缩特征流程为:输入的原始图片通过第一解码子网络g
a得到特征信息y,特征信息y经过量化器Q后得到量化后的特征信息
第二编码子网络ha(即超先验网络)对特征信息
中的潜在表示用均值为0,方差为σ的高斯建模。由于编码单元AE以及解码单元AD在编解码阶段都需要得到解码点出现的概率分布,因此,第二编码子网络ha(即超先验网络)估计解码点的概率分布z,并将解码点的概率分布z进行量化为
并对
进行压缩,形成解码点概率分布码流。接着,将解码点概率分布码流输入到解码端,解码端进行解码,得到量化后的解码点的概率分布
将解码点的概率分布
输入解码端的第二解码子网络hs(即超先验网络)中,得到特征信息
的建模分布,编码单元结合特征信息
的建模分布解码特征码流,得到当前图像的特征信息
将当前图像的特征信息
输入第一解码子网络gs中,得到重建图像
IGDN(inverse generalized divisive normalization)为逆广义除法归一化。
在一些实施例中,本申请实施例的端到端编解码网络为如上述图5C所示网络,在一些实施例中,该端到端编解码网络也称为Lee编解码网络。Lee编解码网络采用迁移学习的方法提升网络重建图像的质量。通过利用不同任务之间的内在可迁移性,Lee编解码网络在基础编解码网络的框架上增加了质量增强模块,例如GRDN(Grouped Residual Dense Network,分组残差密集网络)。Lee编解码网络的压缩流程为:将图像x输入到第一编码子网络g
a(即主编码网络或变换分析网络)中得到隐含表示y,将y量化为y,对y进行编码,得到特征码流。将y输入到第二编码子网络h
a(即超先验模型)中,使用超先验模型来进一步表示y的空间关系z,z为解码点出现的概率分布。接着,将z量化后的
输入到熵编码器EC中对
编码,形成解码点概率分布码流,可选的,该解码点概率分布码流也称为参数码流。通过第二解码子网络hs,从将参数码流重建得到超先验参数c′
i,从特征码流中得到全局上下文参数等模型参数c″
i和c″′
i。将超先验参数c′
i,全局上下文参数等模型参数输入到参数估计器f中,并同特征码流输入解码单元中得到y。第一解码子网络基于特征信息y来重建图像
在一些实施例中,本申请实施例的端到端编解码网络为如上述图5D所示网络,在一些实施例中,该端到端编解码网络也称为Hu编解码网络。Hu编解码网络成功地以低比特率构建了紧凑和表达性的表示,用以支持包括高级语义相关任务和中级几何解析任务等多样化的机器视觉任务集。Hu编解码网络通过使用高层的语义图增强低级的视觉特征,并且验证了这种方法可以有效提升图像压缩的码率-精度-失真表现。Hu编解码网络的压缩流程为:首先从图像中提取出来的深度特征h
i,将特征h
i变换为便于编码和概率估计的离散值,由于特征分布未知,为了方便计算,引入了带隐变量z的高斯模型来估计特征分布,但是估计p
z的边缘概率分布非常困难,所以使用超分析转换(Hyper Analysis Transform)模块来为z建立超先验v,将超先验v输入到算数编器中,使用参数化分布模型q
v来近似估计概率分布p
v,将q
v的估计参数系数序列
进行解码输出。接着使用码书{C
1,C
2,...,C
τ}和系数序列A
l共同生成带空间信息的超先验Z。最后使用算数编解码器对超先验Z的均值和方差进行估计,从而重建特征h′
i,其中重建的特征为考虑了空间维度的特征输出和不考虑空间维度的特征输出,分别用于执行智能任务和分析图像的统计特征。
在一些实施例中,本申请实施例的端到端编解码网络为如上述图5B所示网络,在一些实施例中,该端到端编解码网络也称为Cheng2020编解码网络。Cheng2020编解码网络的压缩过程与图15所示的通用端到端编解码网络的压缩过程一致,不同在于其使用的不是高斯模型,而是离散高斯混合似然,具体压缩过程参照上述图15部分的描述,在此不再赘述。
本申请实施例的端到端编解码网络除了上述图所示的端到端编解码网络外,还可以是其他的端到端的编解码网络。
在一些实施例中,编码网络和解码端是单独的神经网络,不是端到端的神经网络。
应理解,上述图7至图15仅为本申请的示例,不应理解为对本申请的限制。
以上结合附图详细描述了本申请的优选实施方式,但是,本申请并不限于上述实施方式中的具体细节,在本申请的技术构思范围内,可以对本申请的技术方案进行多种简单变型,这些简单变型均属于本申请的保护范围。例如,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本申请对各种可能的组合方式不再另行说明。又例如,本申请的各种不同的实施方式之间也可以进行任意组合,只要其不违背本申请的思想,其同样应当视为本申请所公开的内容。
还应理解,在本申请的各种方法实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。另外,本申请实施例中,术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系。具体地,A和/或B可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
上文结合图7至图15,详细描述了本申请的方法实施例,下文结合图16到图18,详细描述本申请的装置实施例。
图16是本申请实施例提供的视频解码器的示意性框图。
如图16所示,视频解码器10包括:
解码单元11,用于将当前图像的特征码流输入解码网络中,得到所述解码网络的第i个中间层输出的第一特征信息,所述i为正整数;
任务单元12,用于将所述第一特征信息输入任务分析网络的第j个中间层中,得到所述任务分析网络输出的任务分析结果,所述j为正整数。
在一些实施例中,任务单元12,具体用于将所述第一特征信息输入特征适配器中进行特征适配,得到第二特征信息,所述第二特征信息的大小与所述第j个中间层的预设输入大小一致;将所述第二特征信息输入所述第j个中间层中,得到所述任务分析网络输出的任务分析结果。
可选的,特征信息的大小包括特征信息的尺寸和/或通道数。
在一些实施例中,若特征信息的大小包括特征信息的通道数,则任务单元12,具体用于若所述第一特征信息的通道数大于所述第j个中间层的输入通道数,则通过所述特征适配器将所述第一特征信息的通道数减小至与所述第j个中间层的输入通道数相同;若所述第一特征信息的通道数小于所述第j个中间层的输入通道数,则通过所述特征适配器将所述第一特征信息的通道数增加至与所述第j个中间层的输入通道数相同。
在一些实施例中,任务单元12,具体用于若所述特征适配器为基于非神经网络的特征适配器,将所述第一特征信息输入所述特征适配器,以使所述特征适配器采用主成分分析PCA方式或随机选择的方式,从所述第一特征信息的通道中选出所述第j个中间层的输入通道数个通道;若所述特征适配器为基于神经网络的特征适配器,将所述第一特征信息输入所述特征适配器中,通过所述特征适配器中的至少一个卷积层,将所述第一特征信息的通道数减小至与所述第j个中间层的输入通道数相同。
在一些实施例中,若所述特征适配器为基于非神经网络的特征适配器,则任务单元12,具体用于若所述第j个中间层的输入通道数是所述第一特征信息的通道数的整数倍,则将所述第一特征信息的通道复制所述整数倍,以使复制后的所述第一特征信息的通道数与所述第j个中间层的输入通道数相同;或者,
若所述第j个中间层的输入通道数不是所述第一特征信息的通道数的整数倍,则将所述第一特征信息的通道复制N倍,且从所述第一特征信息的通道中选出M个通道,对所述M个通道进行复制后与复制N倍的第一特征信息的通道进行合并,以使合并后的所述第一特征信息的通道数与所述第j个中间层的输入通道数相同,所述N为所述第j个中间层的输入通道数与所述第一特征信息的通道数相除后的商,所述M为所述第j个中间层的输入通道数与所述第一特征信息的通道数相除后的余数,所述N、M均为正整数;或者,
从所述第一特征信息的通道中选出P个主要特征通道,对所述P个主要特征通道进行复制后与所述第一特征信息的通道进行合并,以使合并后的所述第一特征信息的通道数与所述第j个中间层的输入通道数相同,所述P为所述第j个中间层的输入通道数与所述第一特征信息的通道数之间的差值,所述P为正整数;
在一些实施例中,若所述特征适配器为基于神经网络的特征适配器,则任务单元12,具体用于将所述第一特征信息输入所述特征适配器中,通过所述特征适配器中的至少一个卷积层,将所述第一特征信息的通道数增加至与所述第j个中间层的输入通道数相同。
在一些实施例中,任务单元12,具体用于将所述第一特征信息输入所述特征适配器,以使所述特征适配器采用主成分分析PCA方式,从所述第一特征信息的通道中选择出与所述第j个中间层的输入通道数相同的通道。
在一些实施例中,任务单元12,具体用于若所述特征适配器为基于非神经网络的特征适配器,则通过所述特征适配器,对所述第一特征信息下采样,以使下采样后的所述第一特征信息的尺寸与所述第j个中间层的输入尺寸相同;若所述特征适配器为基于神经网络的特征适配器,则通过所述特征适配器中的至少一个池化层,将所述第一特征信息的尺寸下采样至与所述第j个中间层的输入尺寸相同。
可选的,所述池化层为最大池化层、平均池化层、重叠池化层中的任意一个。
在一些实施例中,任务单元12,具体用于若所述特征适配器为基于非神经网络的特征适配器,则通过所述特征适配器,对所述第一特征信息上采样,以使上采样后的所述第一特征信息的尺寸与所述第j个中间层的输入尺寸相同; 若所述特征适配器为基于神经网络的特征适配器,则通过所述特征适配器中的至少一个上池化层,将所述第一特征信息的尺寸上采样至与所述第j个中间层的输入尺寸相同。
在一些实施例中,若特征信息的大小包括特征信息的尺寸,则任务单元12,具体用于若所述第一特征信息的尺寸大于所述第j个中间层的输入尺寸,则通过所述特征适配器将所述第一特征信息下采样至与所述第j个中间层的输入尺寸相同;若所述第一特征信息的尺寸小于所述第j个中间层的输入尺寸,则通过所述特征适配器将所述第一特征信息上采样至与所述第j个中间层的输入尺寸相同。
在一些实施例中,解码单元11,还用于将所述当前图像的特征码流输入所述解码网络中,得到所述解码网络输出的所述当前图像的重建图像。
在一些实施例中,任务单元12,具体用于将所述重建图像输入所述任务分析网络中,得到所述任务分析网络的第j-1层输出的第三特征信息;将所述第三特征信息和所述第一特征信息输入所述第j个中间层中,得到所述任务分析网络输出的任务分析结果。
在一些实施例中,任务单元12,具体用于将所述第三特征信息和所述第一特征信息进行联合,将联合后的特征信息输入所述第j个中间层中,得到所述任务分析网络输出的任务分析结果。
在一些实施例中,所述解码网络包括解码单元和第一解码子网络,所述解码单元11,具体用于将所述当前图像的特征码流输入所述解码单元中,得到所述解码单元输出的所述当前图像的初始特征信息;将所述初始特征信息输入所述第一解码子网络中,得到所述第一解码子网络的第i个中间层输出的第一特征信息。
在一些实施例中,所述解码网络还包括反量化单元,所述解码单元11,具体用于将所述初始特征信息输入所述反量化单元中,得到反量化后的特征信息;将所述反量化后的特征信息输入所述第一解码子网络中,得到所述第一解码子网络的第i个中间层输出的第一特征信息。
在一些实施例中,所述解码网络还包括第二解码子网络,解码单元11,还用于将所述当前图像的解码点概率分布码流输入所述第二解码子网络中,得到所述当前图像的解码点的概率分布;将所述当前图像的特征码流和所述当前图像的解码点的概率分布输入所述解码单元中,得到所述解码单元输出的所述当前图像的初始特征信息。
可选的,在模型训练时,所述解码网络和所述任务分析网络一起进行端到端训练。
可选的,在模型训练时,所述解码网络和编码网络一起进行端到端训练。
可选的,在模型训练时,编码网络、所述解码网络和所述任务分析网络一起进行端到端训练。
在一些实施例中,所述编码网络、所述解码网络和所述任务分析网络在训练时的目标损失是根据所述编码网络输出的特征信息码流的比特率、解码点概率分布码流的比特率和所述任务分析网络的任务分析结果损失中的至少一个确定的。
示例性的,所述目标损失为预设参数与所述任务分析结果损失的乘积、与所述特征信息码流的比特率和所述解码点概率分布码流的比特率之和。
可选的,所述预设参数与所述解码网络和所述任务分析网络中至少一个的网络模型相关。
在一些实施例中,所述第i个中间层和所述第j个中间层为所述解码网络和所述任务分析网络中,特征相似度最高和/或模型损失最小的两个中间层。
在一些实施例中,所述第i个中间层和所述第j个中间层之间的特征相似度包括如下至少一个:所述第i个中间层输出的特征图和所述第j个中间层输入的特征图之间的相似度、所述第i个中间层输出的特征大小和所述第j个中间层输入的特征大小之间的相似度、所述第i个中间层输出的特征图的统计直方图和所述第j个中间层输入的特征图的统计直方图之间的相似度。
应理解,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,图16所示的视频解码器10可以对应于执行本申请实施例的解码方法的相应主体,并且视频解码器10中的各个单元的前述和其它操作和/或功能分别为了实现解码方法等各个方法中的相应流程,为了简洁,在此不再赘述。
图17是本申请实施例提供的视频编码器的示意性框图。
如图17所示,视频编码器20包括:
获取单元21,用于获取待编码的当前图像;
编码单元22,用于将所述当前图像输入编码网络中,得到所述编码网络输出的特征码流,其中在模型训练时,所述编码网络和解码网络一起进行端到端训练,所述解码网络的第i个中间层输出的第一特征信息输入任务分析网络的第j个中间层中。
在一些实施例中,所述编码网络包括第一编码子网络和编码单元,所述编码单元22,具体用于将所述当前图像输入所述第一编码子网络中,得到所述当前图像的初始特征信息;将所述初始特征信息输入所述编码单元中,得到所述编码单元输出的特征码流。
在一些实施例中,所述编码网络还包括量化单元,所述编码单元22,具体用于将所述初始特征信息输入所述量化单元中进行量化,得到量化后的特征信息;将所述量化后的特征信息输入所述编码单元中,得到所述编码单元输出的特征码流。
在一些实施例中,所述编码网络还包括第二编码子网络,编码单元22,还用于将所述初始特征信息输入所述第二编码子网络中进行解码点的概率分布估计,得到所述第二编码子网络输出的所述当前图像的解码点概率分布码流。
可选的,在模型训练时,所述编码网络、解码网络和任务分析网络一起进行端到端训练。
在一些实施例中,所述编码网络、所述解码网络和所述任务分析网络在训练时的目标损失是根据所述编码网络输出的特征信息码流的比特率、解码点概率分布码流的比特率和所述任务分析网络的任务分析结果损失中的至少一个确定的。
示例性的,所述目标损失为预设参数与所述任务分析结果损失的乘积、与所述特征信息码流的比特率和所述解码点概率分布码流的比特率之和。
可选的,所述预设参数与所述解码网络和所述任务分析网络中至少一个的网络模型相关。
应理解,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,图17所示的视频编码器20可以对应于执行本申请实施例的编码方法的相应主体,并且视频编码器20中的各个单元的前述和其它操作和/或功能分别为了实现编码方法等各个方法中的相应流程,为了简洁,在此不再赘述。
上文中结合附图从功能单元的角度描述了本申请实施例的装置和***。应理解,该功能单元可以通过硬件形式实现,也可以通过软件形式的指令实现,还可以通过硬件和软件单元组合实现。具体地,本申请实施例中的方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路和/或软件形式的指令完成,结合本申请实施例公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件单元组合执行完成。可选地,软件单元可以位于随机存储器,闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等本领域的成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法实施例中的步骤。
图18是本申请实施例提供的电子设备的示意性框图。
如图18所示,该电子设备30可以为本申请实施例所述的视频编码器,或者视频解码器,该电子设备30可包括:
存储器33和处理器32,该存储器33用于存储计算机程序34,并将该程序代码34传输给该处理器32。换言之,该处理器32可以从存储器33中调用并运行计算机程序34,以实现本申请实施例中的方法。
例如,该处理器32可用于根据该计算机程序34中的指令执行上述方法中的步骤。
在本申请的一些实施例中,该处理器32可以包括但不限于:
通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等等。
在本申请的一些实施例中,该存储器33包括但不限于:
易失性存储器和/或非易失性存储器。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data Rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。
在本申请的一些实施例中,该计算机程序34可以被分割成一个或多个单元,该一个或者多个单元被存储在该存储器33中,并由该处理器32执行,以完成本申请提供的方法。该一个或多个单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述该计算机程序34在该电子设备30中的执行过程。
如图18所示,该电子设备30还可包括:
收发器33,该收发器33可连接至该处理器32或存储器33。
其中,处理器32可以控制该收发器33与其他设备进行通信,具体地,可以向其他设备发送信息或数据,或接收其他设备发送的信息或数据。收发器33可以包括发射机和接收机。收发器33还可以进一步包括天线,天线的数量可以为一个或多个。
应当理解,该电子设备30中的各个组件通过总线***相连,其中,总线***除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。
图19是本申请实施例提供的视频编解码***的示意性框图。
如图19所示,该视频编解码***40可包括:视频编码器41和视频解码器42,其中视频编码器41用于执行本申请实施例涉及的视频编码方法,视频解码器42用于执行本申请实施例涉及的视频解码方法。
本申请还提供了一种码流,该码流通过上述编码方法生成的。
本申请还提供了一种计算机存储介质,其上存储有计算机程序,该计算机程序被计算机执行时使得该计算机能够执行上述方法实施例的方法。或者说,本申请实施例还提供一种包含指令的计算机程序产品,该指令被计算机执行时使得计算机执行上述方法实施例的方法。
当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本申请实施例该的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如数字视频光盘(digital video disc,DVD))、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外 的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。例如,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
以上该,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以该权利要求的保护范围为准。
Claims (41)
- 一种视频解码方法,其特征在于,包括:将当前图像的特征码流输入解码网络中,得到所述解码网络的第i个中间层输出的第一特征信息,所述i为正整数;将所述第一特征信息输入任务分析网络的第j个中间层中,得到所述任务分析网络输出的任务分析结果,所述j为正整数。
- 根据权利要求1所述的方法,其特征在于,所述将所述第一特征信息输入任务分析网络的第j个中间层中,得到所述任务分析网络输出的任务分析结果,包括:将所述第一特征信息输入特征适配器中进行特征适配,得到第二特征信息,所述第二特征信息的大小与所述第j个中间层的预设输入大小一致;将所述第二特征信息输入所述第j个中间层中,得到所述任务分析网络输出的任务分析结果。
- 根据权利要求2所述的方法,其特征在于,特征信息的大小包括特征信息的尺寸和/或通道数。
- 根据权利要求3所述的方法,其特征在于,所述特征适配器包括基于神经网络的特征适配器和基于非神经网络的特征适配器。
- 根据权利要求4所述的方法,其特征在于,若特征信息的大小包括特征信息的通道数,则所述将所述第一特征信息输入特征适配器中进行特征适配,包括:若所述第一特征信息的通道数大于所述第j个中间层的输入通道数,则通过所述特征适配器将所述第一特征信息的通道数减小至与所述第j个中间层的输入通道数相同;若所述第一特征信息的通道数小于所述第j个中间层的输入通道数,则通过所述特征适配器将所述第一特征信息的通道数增加至与所述第j个中间层的输入通道数相同。
- 根据权利要求5所述的方法,其特征在于,所述通过所述特征适配器从所述第一特征信息的通道数减小至与所述第j个中间层的输入通道数相同,包括:若所述特征适配器为基于非神经网络的特征适配器,将所述第一特征信息输入所述特征适配器,以使所述特征适配器采用主成分分析PCA方式或随机选择的方式,从所述第一特征信息的通道中选出所述第j个中间层的输入通道数个通道;若所述特征适配器为基于神经网络的特征适配器,将所述第一特征信息输入所述特征适配器中,通过所述特征适配器中的至少一个卷积层,将所述第一特征信息的通道数减小至与所述第j个中间层的输入通道数相同。
- 根据权利要求5所述的方法,其特征在于,若所述特征适配器为基于非神经网络的特征适配器,则所述若所述第一特征信息的通道数小于所述第j个中间层的输入通道数,则通过所述特征适配器将所述第一特征信息的通道数增加至与所述第j个中间层的输入通道数相同,包括:若所述第j个中间层的输入通道数是所述第一特征信息的通道数的整数倍,则将所述第一特征信息的通道复制所述整数倍,以使复制后的所述第一特征信息的通道数与所述第j个中间层的输入通道数相同;或者,若所述第j个中间层的输入通道数不是所述第一特征信息的通道数的整数倍,则将所述第一特征信息的通道复制N倍,且从所述第一特征信息的通道中选出M个通道,对所述M个通道进行复制后与复制N倍的第一特征信息的通道进行合并,以使合并后的所述第一特征信息的通道数与所述第j个中间层的输入通道数相同,所述N为所述第j个中间层的输入通道数与所述第一特征信息的通道数相除后的商,所述M为所述第j个中间层的输入通道数与所述第一特征信息的通道数相除后的余数,所述N、M均为正整数;或者,从所述第一特征信息的通道中选出P个主要特征通道,对所述P个主要特征通道进行复制后与所述第一特征信息的通道进行合并,以使合并后的所述第一特征信息的通道数与所述第j个中间层的输入通道数相同,所述P为所述第j个中间层的输入通道数与所述第一特征信息的通道数之间的差值,所述P为正整数;
- 根据权利要求5所述的方法,其特征在于,若所述特征适配器为基于神经网络的特征适配器,则所述若所述第一特征信息的通道数小于所述第j个中间层的输入通道数,则通过所述特征适配器将所述第一特征信息的通道数增加至与所述第j个中间层的输入通道数相同,包括:将所述第一特征信息输入所述特征适配器中,通过所述特征适配器中的至少一个卷积层,将所述第一特征信息的通道数增加至与所述第j个中间层的输入通道数相同。
- 根据权利要求4所述的方法,其特征在于,若特征信息的大小包括特征信息的尺寸,则所述将所述第一特征信息输入特征适配器中进行特征适配,包括:若所述第一特征信息的尺寸大于所述第j个中间层的输入尺寸,则通过所述特征适配器将所述第一特征信息下采样至与所述第j个中间层的输入尺寸相同;若所述第一特征信息的尺寸小于所述第j个中间层的输入尺寸,则通过所述特征适配器将所述第一特征信息上采样至与所述第j个中间层的输入尺寸相同。
- 根据权利要求9所述的方法,其特征在于,所述若所述第一特征信息的尺寸大于所述第j个中间层的输入尺寸,则通过所述特征适配器将所述第一特征信息下采样至与所述第j个中间层的输入尺寸相同,包括:若所述特征适配器为基于非神经网络的特征适配器,则通过所述特征适配器,对所述第一特征信息下采样,以使下采样后的所述第一特征信息的尺寸与所述第j个中间层的输入尺寸相同;若所述特征适配器为基于神经网络的特征适配器,则通过所述特征适配器中的至少一个池化层,将所述第一特征信息的尺寸下采样至与所述第j个中间层的输入尺寸相同。
- 根据权利要求10所述的方法,其特征在于,所述池化层为最大池化层、平均池化层、重叠池化层中的任意一个。
- 根据权利要求9所述的方法,其特征在于,所述若所述第一特征信息的尺寸小于所述第j个中间层的输入尺 寸,则通过所述特征适配器将所述第一特征信息上采样至与所述第j个中间层的输入尺寸相同,包括:若所述特征适配器为基于非神经网络的特征适配器,则通过所述特征适配器,对所述第一特征信息上采样,以使上采样后的所述第一特征信息的尺寸与所述第j个中间层的输入尺寸相同;若所述特征适配器为基于神经网络的特征适配器,则通过所述特征适配器中的至少一个上池化层,将所述第一特征信息的尺寸上采样至与所述第j个中间层的输入尺寸相同。
- 根据权利要求1-12任一项所述的方法,其特征在于,所述方法还包括:将所述当前图像的特征码流输入所述解码网络中,得到所述解码网络输出的所述当前图像的重建图像。
- 根据权利要求13所述的方法,其特征在于,所述方法还包括:将所述重建图像输入所述任务分析网络中,得到所述任务分析网络的第j-1层输出的第三特征信息;所述将所述第一特征信息输入任务分析网络的第j个中间层中,得到所述任务分析网络输出的任务分析结果,包括:将所述第三特征信息和所述第一特征信息输入所述第j个中间层中,得到所述任务分析网络输出的任务分析结果。
- 根据权利要求14所述的方法,其特征在于,所述将所述第三特征信息和所述第一特征信息输入所述第j个中间层中,得到所述任务分析网络输出的任务分析结果,包括:将所述第三特征信息和所述第一特征信息进行联合,将联合后的特征信息输入所述第j个中间层中,得到所述任务分析网络输出的任务分析结果。
- 根据权利要求1-12任一项所述的方法,其特征在于,所述解码网络包括解码单元和第一解码子网络,所述将当前图像的特征码流输入解码网络中,得到所述解码网络的第i个中间层输出的第一特征信息,包括:将所述当前图像的特征码流输入所述解码单元中,得到所述解码单元输出的所述当前图像的初始特征信息;将所述初始特征信息输入所述第一解码子网络中,得到所述第一解码子网络的第i个中间层输出的第一特征信息。
- 根据权利要求16所述的方法,其特征在于,所述解码网络还包括反量化单元,所述将所述初始特征信息输入所述第一解码子网络中,得到所述第一解码子网络的第i个中间层输出的第一特征信息,包括:将所述初始特征信息输入所述反量化单元中,得到反量化后的特征信息;将所述反量化后的特征信息输入所述第一解码子网络中,得到所述第一解码子网络的第i个中间层输出的第一特征信息。
- 根据权利要求16所述的方法,其特征在于,所述解码网络还包括第二解码子网络,所述方法还包括:将所述当前图像的解码点概率分布码流输入所述第二解码子网络中,得到所述当前图像的解码点的概率分布;所述将所述当前图像的特征码流输入所述解码单元中,得到所述解码单元输出的所述当前图像的初始特征信息,包括:将所述当前图像的特征码流和所述当前图像的解码点的概率分布输入所述解码单元中,得到所述解码单元输出的所述当前图像的初始特征信息。
- 根据权利要求1-12任一项所述的方法,其特征在于,在模型训练时,所述解码网络和所述任务分析网络一起进行端到端训练。
- 根据权利要求1-12任一项所述的方法,其特征在于,在模型训练时,所述解码网络和编码网络一起进行端到端训练。
- 根据权利要求1-12任一项所述的方法,其特征在于,在模型训练时,编码网络、所述解码网络和所述任务分析网络一起进行端到端训练。
- 根据权利要求21所述的方法,其特征在于,所述编码网络、所述解码网络和所述任务分析网络在训练时的目标损失是根据所述编码网络输出的特征信息码流的比特率、解码点概率分布码流的比特率和所述任务分析网络的任务分析结果损失中的至少一个确定的。
- 根据权利要求22所述的方法,其特征在于,所述目标损失为预设参数与所述任务分析结果损失的乘积、与所述特征信息码流的比特率和所述解码点概率分布码流的比特率之和。
- 根据权利要求23所述的方法,其特征在于,所述预设参数与所述解码网络和所述任务分析网络中至少一个的网络模型相关。
- 根据权利要求1-12任一项所述的方法,其特征在于,所述第i个中间层和所述第j个中间层为所述解码网络和所述任务分析网络中,特征相似度最高和/或模型损失最小的两个中间层。
- 根据权利要求25所述的方法,其特征在于,所述第i个中间层和所述第j个中间层之间的特征相似度包括如下至少一个:所述第i个中间层输出的特征图和所述第j个中间层输入的特征图之间的相似度、所述第i个中间层输出的特征大小和所述第j个中间层输入的特征大小之间的相似度、所述第i个中间层输出的特征图的统计直方图和所述第j个中间层输入的特征图的统计直方图之间的相似度。
- 一种视频编码方法,其特征在于,包括:获取待编码的当前图像;将所述当前图像输入编码网络中,得到所述编码网络输出的特征码流;其中,在模型训练时,所述编码网络和解码网络一起进行端到端训练,所述解码网络的第i个中间层输出的第一特征信息输入任务分析网络的第j个中间层中。
- 根据权利要求27所述的方法,其特征在于,所述编码网络包括第一编码子网络和编码单元,所述将所述当前图像输入编码网络中,得到所述编码网络输出的特征码流,包括:将所述当前图像输入所述第一编码子网络中,得到所述当前图像的初始特征信息;将所述初始特征信息输入所述编码单元中,得到所述编码单元输出的特征码流。
- 根据权利要求28所述的方法,其特征在于,所述编码网络还包括量化单元,所述将所述初始特征信息输入所 述编码单元中,得到所述编码单元输出的特征码流,包括:将所述初始特征信息输入所述量化单元中进行量化,得到量化后的特征信息;将所述量化后的特征信息输入所述编码单元中,得到所述编码单元输出的特征码流。
- 根据权利要求28所述的方法,其特征在于,所述编码网络还包括第二编码子网络,所述方法还包括:将所述初始特征信息输入所述第二编码子网络中进行解码点的概率分布估计,得到所述第二编码子网络输出的所述当前图像的解码点概率分布码流。
- 根据权利要求27-30任一项所述的方法,其特征在于,在模型训练时,所述编码网络、解码网络和任务分析网络一起进行端到端训练。
- 根据权利要求31所述的方法,其特征在于,所述编码网络、所述解码网络和所述任务分析网络在训练时的目标损失是根据所述编码网络输出的特征信息码流的比特率、解码点概率分布码流的比特率和所述任务分析网络的任务分析结果损失中的至少一个确定的。
- 根据权利要求32所述的方法,其特征在于,所述目标损失为预设参数与所述任务分析结果损失的乘积、与所述特征信息码流的比特率和所述解码点概率分布码流的比特率之和。
- 根据权利要求33所述的方法,其特征在于,所述预设参数与所述解码网络和所述任务分析网络中至少一个的网络模型相关。
- 一种视频解码器,其特征在于,包括:解码单元,用于将当前图像的特征码流输入解码网络中,得到所述解码网络的第i个中间层输出的第一特征信息,所述i为正整数;任务网络,用于将所述第一特征信息输入任务分析网络的第j个中间层中,得到所述任务分析网络输出的任务分析结果,所述j为正整数。
- 一种视频编码器,其特征在于,包括:获取单元,用于获取待编码的当前图像;解码单元,用于将所述当前图像输入编码网络中,得到所述编码网络输出的特征码流,其中在模型训练时,所述编码网络和解码网络一起进行端到端训练,所述解码网络的第i个中间层输出的第一特征信息输入任务分析网络的第j个中间层中。
- 一种视频解码器,其特征在于,包括处理器和存储器;所示存储器用于存储计算机程序;所述处理器用于调用并运行所述存储器中存储的计算机程序,以实现上述权利要求1至26任一项所述的方法。
- 一种视频编码器,其特征在于,包括处理器和存储器;所示存储器用于存储计算机程序;所述处理器用于调用并运行所述存储器中存储的计算机程序,以实现如上述权利要求27至34任一项所述的方法。
- 一种视频编解码***,其特征在于,包括:根据权利要求37所述的视频解码器;以及根据权利要求38所述的视频编码器。
- 一种计算机可读存储介质,其特征在于,用于存储计算机程序;所述计算机程序使得计算机执行如上述权利要求1至26或27至34任一项所述的方法。
- 一种码流,其特征在于,所述码流是通过如上述权利要求27至34任一项所述的方法生成的。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2021/122473 WO2023050433A1 (zh) | 2021-09-30 | 2021-09-30 | 视频编解码方法、编码器、解码器及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118020306A true CN118020306A (zh) | 2024-05-10 |
Family
ID=85781225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180102730.0A Pending CN118020306A (zh) | 2021-09-30 | 2021-09-30 | 视频编解码方法、编码器、解码器及存储介质 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP4387233A1 (zh) |
CN (1) | CN118020306A (zh) |
WO (1) | WO2023050433A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116805971B (zh) * | 2023-04-11 | 2024-07-12 | 腾讯科技(深圳)有限公司 | 图像编解码方法、装置、设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106529589A (zh) * | 2016-11-03 | 2017-03-22 | 温州大学 | 采用降噪堆叠自动编码器网络的视觉目标检测方法 |
CN110334738A (zh) * | 2019-06-05 | 2019-10-15 | 大连理工大学 | 用于图像识别的多分类网络的方法 |
CN114616832A (zh) * | 2019-09-11 | 2022-06-10 | 南洋理工大学 | 基于网络的视觉分析 |
JP7333520B2 (ja) * | 2020-01-30 | 2023-08-25 | 富士通株式会社 | 学習プログラム、学習方法、及び情報処理装置 |
CN112037225A (zh) * | 2020-08-20 | 2020-12-04 | 江南大学 | 一种基于卷积神经的海洋船舶图像分割方法 |
CN112257858B (zh) * | 2020-09-21 | 2024-06-14 | 华为技术有限公司 | 一种模型压缩方法及装置 |
CN112587129B (zh) * | 2020-12-01 | 2024-02-02 | 上海影谱科技有限公司 | 一种人体动作识别方法及装置 |
-
2021
- 2021-09-30 EP EP21958999.1A patent/EP4387233A1/en active Pending
- 2021-09-30 WO PCT/CN2021/122473 patent/WO2023050433A1/zh unknown
- 2021-09-30 CN CN202180102730.0A patent/CN118020306A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2023050433A1 (zh) | 2023-04-06 |
EP4387233A1 (en) | 2024-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Cheng et al. | Energy compaction-based image compression using convolutional autoencoder | |
KR20230074137A (ko) | 머신 러닝 시스템들을 이용한 인스턴스 적응적 이미지 및 비디오 압축 | |
US11544606B2 (en) | Machine learning based video compression | |
TWI806199B (zh) | 特徵圖資訊的指示方法,設備以及電腦程式 | |
US20240064318A1 (en) | Apparatus and method for coding pictures using a convolutional neural network | |
KR20200089635A (ko) | 다수의 상이한 비트레이트로 영상 압축을 하기 위한 시스템들 및 방법들 | |
WO2022155974A1 (zh) | 视频编解码以及模型训练方法与装置 | |
WO2023279961A1 (zh) | 视频图像的编解码方法及装置 | |
KR20230136226A (ko) | 학습된 비디오 압축을 위한 다중 스케일 광학 흐름 | |
CN117730537A (zh) | 经由基于学习神经网络的过滤器对机器视觉任务的性能改进 | |
KR20240050435A (ko) | 조건부 이미지 압축 | |
CN117501696A (zh) | 使用在分块之间共享的信息进行并行上下文建模 | |
CN115118972A (zh) | 视频图像的编解码方法及相关设备 | |
CN118020306A (zh) | 视频编解码方法、编码器、解码器及存储介质 | |
WO2023193629A1 (zh) | 区域增强层的编解码方法和装置 | |
TWI826160B (zh) | 圖像編解碼方法和裝置 | |
WO2023208638A1 (en) | Post processing filters suitable for neural-network-based codecs | |
CN118120233A (zh) | 基于注意力的图像和视频压缩上下文建模 | |
KR20230145096A (ko) | 신경망 기반 픽처 프로세싱에서의 보조 정보의 독립적 위치결정 | |
US20240242467A1 (en) | Video encoding and decoding method, encoder, decoder and storage medium | |
US20240223762A1 (en) | A method, an apparatus and a computer program product for video encoding and video decoding | |
US11683515B2 (en) | Video compression with adaptive iterative intra-prediction | |
Le | Still image coding for machines: an end-to-end learned approach | |
US11825090B1 (en) | Bit-rate estimation for video coding with machine learning enhancement | |
US20240015314A1 (en) | Method and apparatus for encoding or decoding a picture using a neural network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |