CN117915093A - 基于神经网络的数据处理和生成方法及装置 - Google Patents
基于神经网络的数据处理和生成方法及装置 Download PDFInfo
- Publication number
- CN117915093A CN117915093A CN202211250091.5A CN202211250091A CN117915093A CN 117915093 A CN117915093 A CN 117915093A CN 202211250091 A CN202211250091 A CN 202211250091A CN 117915093 A CN117915093 A CN 117915093A
- Authority
- CN
- China
- Prior art keywords
- model
- neural network
- decoding
- task
- code stream
- 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
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 161
- 238000000034 method Methods 0.000 title claims abstract description 119
- 238000012545 processing Methods 0.000 title claims abstract description 33
- 230000008569 process Effects 0.000 claims description 24
- 238000000605 extraction Methods 0.000 claims description 11
- 238000003062 neural network model Methods 0.000 claims description 8
- 238000003672 processing method Methods 0.000 claims description 7
- 238000011084 recovery Methods 0.000 claims description 2
- 230000008901 benefit Effects 0.000 abstract description 9
- 239000000284 extract Substances 0.000 abstract description 2
- 238000004458 analytical method Methods 0.000 description 13
- 230000009466 transformation Effects 0.000 description 9
- 238000013527 convolutional neural network Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000012549 training Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 230000003247 decreasing effect Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- 238000012952 Resampling Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000013139 quantization Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000006798 recombination Effects 0.000 description 1
- 238000005215 recombination Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Classifications
-
- 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
-
- 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/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
-
- 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/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种基于神经网络的数据处理和生成方法及装置。该方法从图像视频中提取特征,并在码率控制下将其编码得到码流,再经解码得到重建特征,并用于机器智能任务网络模型得到智能任务结果。更进一步地,重建特征还能被恢复为图像或视频,以供人眼观看或用于完成更多机器智能任务。本发明的有益效果在于能够使用单个编解码模型生成对应多个码率或质量的码流数据;还在于解码直接得到特征能够减少计算量,并能有效保持或提升智能任务的结果精度。
Description
技术领域
本发明涉及图像或视频或特征张量数据处理和生成技术领域,更具体的说,尤其涉及基于神经网络的数据处理和生成方法及装置。
背景技术
现有的图像视频的编解码处理包括传统编解码方法以及基于神经网络的智能编解码方法。传统编解码方法通过预测、变换、量化、熵编码和环路滤波等操作消除图像视频的冗余信息。智能编解码方法则是利用神经网络对图像视频进行变换将图像视频转换为特征张量并进行降采样、量化和熵编码等操作来实现压缩编码。
图像智能编解码方法提出许多高效的神经网络结构用于图像的特征信息提取。卷积神经网络CNN是最早用于图像编解码的网络结构。在CNN基础上,衍生了许多改良的网络结构以及概率估计模型,以网络结构为例,包括生成对抗网络GAN、循环神经网络RNN等网络结构,都大大提升了基于神经网络的端到端图像压缩性能。其中,基于生成对抗网络GAN的图像编解码方法在提升图像主观质量上取得了明显效果。
视频智能编解码方法主要集中于三个方面:1)混合式神经网络编码,2)神经网络率失真优化编码,以及3)端到端视频编码。混合式神经网络编码将神经网络代替传统编码模块嵌入到视频框架,一般以帧间预测模块,环路滤波模块以及熵编码模块应用较多。神经网络率失真优化编码则利用神经网络高度非线性特点,将神经网络训练成为高效的判别器与分类器,例如应用于视频编码模式决策环节。端到端视频编码目前一般分为使用CNN替换传统编码方法的所有模块,或是扩大神经网络的输入维度对所有帧进行端到端压缩。
在使用端到端神经网络的图像或视频编解码方法中,常用的操作是先对图像视频提取特征,再进行编码解码,再还原到图像。如图1所示,提取特征张量的流程为E1,对E1得到的特征张量进行编码并得到码流的流程为E2,编码方法由E1和E2组成。相对应的,解码方法由D1和D2组成,其中D1指将特征张量变换为解码图像的流程,D2指将码流解码为特征张量的流程。
经过编解码之后图像视频,在目前的主流应用场景中,并不仅仅用于被人观看,还常常用于完成机器智能任务。智能任务网络通过对图像或视频进行分析,完成目标检测,目标跟踪或是行为识别等任务目标。
上述方法通常是将编码的图像视频完全恢复得到重建图像视频,再输入任务网络模型完成任务目标,这样会导致计算成本的额外消耗,因为任务网络模型是在特征张量上处理得到任务结果的。因此,学术研究已经公开一种先提取特征再编码解码再直接用特征推理得到任务结果的方法,如图2所示。这种方法在解码时无需重构到解码图像,而只需要重构到特征,之后将特征作为智能任务网络的输入而不使用解码图像。但是这种方法要求编码端已知解码端要完成的机器智能任务类型,才能在编码端提取相应的特征,导致其能够完成的任务是被限定好的,无法处理编码端未知的新任务。
相似的,如图3所示,还有一种学术界公开的方案是,在编码图像视频之前,先在对图像视频使用多个任务网络模型处理得到多个任务所需要特征张量,然后再补充一些结合特征张量可以恢复图像的补充数据,从而在解码端实现快速多样的任务分析和图像重建。但是这种方法为每种任务各自提取了特征数据并将其编码入码流,这导致码流占用了极大的数据量。
发明内容
为了解决现有技术上述不足,本发明提出了一种基于神经网络的数据处理和生成方法及装置,能够通过解码模型信息灵活选择神经网络解码模型以完成多种任务,并能够通过码率参数控制单个解码模型处理对应不同码率的码流的方法。
为此,本发明的第一目的在于提出一种基于神经网络的数据处理方法,包括如下步骤:
1)从输入的码流数据中获取解码信息,所述解码信息包含以下信息:
a)解码模型信息,用于选择解码码流所用的神经网络解码模型;
b)特征张量的类型信息,用于标明特征张量适用的机器智能任务类型;
2)根据所述解码模型信息,使用对应的神经网络解码模型解码码流获得重建特征张量;
3)根据特征张量的类型信息,使用对应的神经网络任务模型处理重建特征张量得到机器智能任务结果。
作为优选,所述解码模型信息至少包含以下信息之一:
a)模型结构索引,用于选定神经网络解码模型的网络结构;
b)模型参数集索引,用于选定神网络解码模型的模型参数;
c)码率控制参数,用于调整选定的神经网络解码模型中的部分模型参数或网络层间的特征张量。
作为优选,所述特征张量类型至少包括以下任一种或组合:用于完成多个智能任务的特征张量;用于完成某个典型智能任务的特征张量。
作为优选,所述使用对应的神经网络任务模型处理重建特征张量得到机器智能任务结果包括:
使用神经网络恢复模型处理所述重建特征张量,恢复得到重建图像或视频;
使用与机器智能任务相对应的神经网络任务模型处理重建图像或视频得到机器智能任务结果。
本发明的第二目的在于提出一种基于神经网络的数据生成方法,包括如下步骤:
1)根据需要完成的机器智能任务,选择对应的神经网络特征提取模型从输入图像或视频中提取特征张量;
2)使用神经网络编码模型将特征张量编码得到码流;
3)将解码模型信息写入码流,该解码模型信息包含与所述神经网络特征提取模型和神经网络编码模型对应的神经网络解码模型的模型信息;
4)将特征张量的类型信息写入码流,该特征张量的类型信息用于标明被编码的特征张量适用的机器智能任务类型。
作为优选,所述解码模型信息至少包含以下信息之一:
a)模型结构索引,用于选定神经网络解码模型的网络结构;
b)模型参数集索引,用于选定神网络解码模型的模型参数;
c)码率控制参数,用于调整选定的神经网络解码模型中的部分模型参数或网络层间的特征张量。
作为优选,所述特征张量类型至少包括以下任一种或组合:用于完成多个智能任务的特征张量;用于完成某个典型智能任务的特征张量。
本发明的第三目的在于提出一种基于神经网络的数据处理装置,包括:
处理器;
用于存储码流、神经网络模型和特征张量的存储器;以及
一个或多个程序用于完成以下方法:
1)处理器从输入的码流数据中获取解码信息,所述解码信息包含以下信息:
a)解码模型信息,用于选择解码码流所用的神经网络解码模型;
b)特征张量的类型信息,用于标明特征张量适用的机器智能任务类型;
2)处理器根据所述解码模型信息,使用对应的神经网络解码模型解码码流获得重建特征张量;
3)处理器根据特征张量的类型信息,使用对应的神经网络任务模型处理特征张量得到机器智能任务结果。
作为优选,所述使用对应的神经网络任务模型处理重建特征张量得到机器智能任务结果包括:
处理器使用神经网络恢复模型处理所述重建特征张量,恢复得到重建图像或视频;
处理器使用与机器智能任务相对应的神经网络任务模型处理重建图像或视频得到机器智能任务结果。
本发明的第四目的在于提出一种基于神经网络的数据生成装置,包括:
处理器;
用于存储输入图像或视频、神经网络模型、特征张量和码流的存储器;以及
一个或多个程序用于完成以下方法:
1)处理器根据需要完成的机器智能任务,选择对应的神经网络特征提取模型从输入图像或视频中提取特征张量;
2)处理器使用神经网络编码模型将特征张量编码得到码流;
3)处理器将解码模型信息写入码流,该解码模型信息包含与所述神经网络特征提取模型和神经网络编码模型对应的解码模型的模型信息;
4)处理器将特征张量的类型信息写入码流,该信息用于标明被编码的特征张量适用的机器智能任务类型。
本发明的有益效果在于使用码率控制参数调整编解码中神经网络模型的处理,从而能够使用单个编解码模型生成对应多个码率或质量的码流数据;有益效果还在于解码码流时直接得到特征能够减少恢复图像部分的解码计算量,同时使用保留了关键信息的特征直接完成机器智能任务可以有效保持或提升智能任务的结果精度。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术的一种使用端到端神经网络的图像编解码***;
图2为现有技术的一种智能任务网络与编解码方法联合处理的方法;
图3为现有技术的一种融合多种任务特征张量和恢复图像数据的实施方案;
图4为本发明实施例一种使用神经网络解码模型解码码流得到重建图像的解码流程示意图;
图5为本发明实施例一种由码率控制参数调整神经网络层以实现解码不同码流的流程示意图;
图6为本发明实施例一种由码率控制参数调整特征张量以实现解码不同码流的流程示意图;
图7为本发明实施例一种使用神经网络解码模型解码码流得到重建特征张量的解码流程示意图;
图8为本发明实施例一种通过复制关键图像实现的视频解码流程示意图;
图9为本发明实施例一种通过帧间预测实现的视频解码流程示意图;
图10为本发明实施例一种使用神经网络编码模型编码图像得到编码码流的编码流程示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面结合附图和实施例对本发明作进一步的详细描述。
名词定义:
特征:又称特征张量,通常有三个或多个维度的数据,典型的特征张量有宽度、高度和通道数等维度。
模型:神经网络网络模型,包含模型结构和模型参数,通常又多个神经网络层组成。
本实施例公开一种使用神经网络的码流处理方法,对于输入的码流,从码流中解析得到解码所需要的信息,使用神经网络对其进行处理得到输出结果,输出的结果可以是重建图像、重建视频、重建特征张量和机器智能任务结果中的任意一种或任意多种的组合。下文将详细描述所述码流处理方法的实施方案以及其各种扩展实施方案。
本实施例公开的码流处理方法包含对码流的解码方法,具体的,对于输入的码流,其中至少包含一幅待解码图像的编码码流,从其中一幅待解码图像的编码码流中获取解码模型信息,用于选择解码该待解码图像的编码码流所用的神经网络解码模型,调用选定的神经网络解码模型对所述待解码图像的编码码流进行解码,得到输出数据。在一种实施方案中,该解码模型信息可以是模型结构索引,用于选定神经网络解码模型的网络结构。例如编码方法提供了多种适用于不同图像内容、或不同机器智能任务、或不同码率或不同质量等神经网络编码模型,解码方法需要选择与编码方法适配的神经网络解码模型来相应地解码码流。这些可选的不同的神经网络解码模型可以拥有不同的网络结构,例如网络使用的网络层数不同、或使用的激活函数不同、使用的注意力机制不同、使用的降采样的次数不同或使用的熵编码方法不同等。
一种可以使用的神经网络解码模型的结构和其处理数据的流程如图4所示,其中[#*#,Conv,#]和[#*#,Conv,#,#]都表示神经网络中的卷积层,其卷积核、输入的特征张量通道数和输出的特征张量通道数不尽相同。在该示例中,码流包含第一子码流和第二子码流,第一子码流经过熵解码后经过一系列的卷积层得到概率模型,该概率模型作用于第二子码流的熵解码过程以完成对第二子码流的解析,解析之后的特征张量经过一系列的卷积层处理后得到重建图像。本技术领域内的技术人员可以容易地想到,通过增加或减少神经网络的层数,增加或减少特征张量在神经网络中的被降采样或升采样的次数,都可以将神经网络解码模型调整到适用于不同码流的解码。
在另一种实施方案中,该解码模型信息还可以是模型参数集索引,用于选定神经网络解码模型的模型参数。同样的网络结构可以使用不同的模型参数达到不同的解码效果,例如对应不同码率、或质量、或机器智能任务精度的码流需要使用不同的网络参数进行解码。通常情况下,神经网络的模型参数集是在给定了神经网络结构之后,使用大量的训练数据在代价函数的约束下通过多次训练得到的。通过使用不同的代价函数,例如选择神经网络中不同层的输出特征进行计算码率或失真、或使用不同的码率和失真之间的权重、或在码率和失真之外使用额外的度量方法如平方差、均方误差等,或者通过使用不同的训练迭代次数,或者通过使用不同的收敛速率等,都可以通过训练得到不同的模型参数集。
在另一种实施方案中,该解码模型信息还可以是码率控制参数,用于调整神经网络解码模型中的码率控制网络参数或调整解码过程中的网络层输出的特征张量,这种调整可以在给定神经网络结构和网络参数的情况下实现按照一段范围内的码率或质量编码生成的码流的解码。这样的好处在于,可以使用一个给定网络结构和模型参数集地神经网络模型在一定程度上解码多个不同码率的码流。
在一种情况下,码率控制参数可以作为神经网络解码模型的输入,其数据形态可以是标量、或矢量、或二维特征图或拥有多通道的三维特征图。为了尽量减少该码率控制参数在码流中占用的数据量,其可以被变换或融合或压缩或共享。在对神经网络解码模型进行控制时,该码率控制参数或其经过转化之后的控制特征张量可以对神经网络的模型参数进行调整,从而调整神经网络对特征张量的处理,实现不同码流的解码。码率控制参数可以调整神经网络中的单个或多个网络层,如图5所示,(a)表示码率控制参数对单一网络层进行调整,(b)表示码率控制参数对神经网络中的一部分网络层进行调整,(c)表示码率控制参数对神经网络中的所有网络层进行调整。调整的方式有很多种,例如加权,或缩放、或函数映射、或掩膜、或加偏置。假设对于某一个卷积网络层,输入特征张量fin经过卷积之后得到输出特征张量fout的过程表示为:
其中i表示输出特征张量的第i个通道,j表示输入特征张量的第j个通道,hi,j表示将fj in加权到fi out的权重参数,ci表示对应到输出特征张量的第i个通道的偏置参数,(x,y)表示特征张量在某一个通道的二维平面上的坐标。那么加权操作的一种实施方法可以表示为:
其中,wi,j(x,y)是由码率控制参数决定的控制特征张量。在不同的实施方案中,根据码率调控的精细程度,wi,j(x,y)可以在i,h,x,y等4个维度进行精简。例如对于输出特征张量的所有通道,使用相同的控制特征张量,则wi,j(x,y)可以简化为wj(x,y),即对于输出特征张量的任意第i个通道和第k个通道,其中i≠k,控制特征张量相同,wi,j(x,y)=wk,j(x,y)。又例如,对于某一个通道的二维平面上所有的特征值,使用相同的控制特征张量,则wi,j(x,y)可以简化为we,j。缩放操作的一种实施方法可以表示为:
其中,wi是对应输出特征张量的第i个通道的尺度缩放参数,λi是相应的偏置缩放参数。函数映射操作的一种实施方法可以表示为:
其中,映射函数p()由码率控制参数决定。掩膜操作的一种实施方法可以是加权操作的特例,例如将wi,j(x,y)的取值进行0和1二值化,这样可以选择特征张量在各维度上的一部分数据组成输出特征张量,可以有效降低表达输出特征张量所需要的数据量。加偏置操作的一种实施方法可以表示为:
其中,wi(x,y)是对输入特征张量的偏置,可以增大或减小输入特征张量的值。
该码率控制参数或其经过转化之后的控制特征张量也可以和神经网络层间输出的特征张量进行融合,如图6所示。例如拼接、或穿插、或加减等,通过调整特征张量的值来实现不同码流的解码。例如:拼接操作的一种实施方法可以表示为:
其中,fout2(x,y)是网络层输出的特征张量fout1(x,y)经过码率控制参数对应的特征张量w(x,y)调整之后得到的新的输出特征张量,fout2(x,y)由fout1(x,y)和w(x,y)在通道上串联得到,fout2(x,y)的通道数为fout1(x,y)的通道数i和w(x,y)的通道数j的总和。穿插操作的一种实施方法可以表示为:
其中w(x,y)的通道数可以和fout1(x,y)的通道数不同,即只穿插在部分通道中间。加减操作不会改变输出特征张量的通道数,可以表示为:
fout2(x,y)=fout1(x,y)±w(x,y)
对于上述解码方法,在一种可能的实施方案中,使用神经网络解码模型对码流进行解码得到重建的特征张量。特征张量至少有三个维度,例如宽度、高度和通道数,宽度和高度决定了特征张量在一个通道上的二维平面的大小,通道数则决定了特征张量中二维平面的数量。与常用的三通道的图像相比,特征张量的通道数通常大于或远大于三个,且与图像的三通道表示亮度和色度不同,特征张量的多个通道记录的是特征张量所对应的输入数据在不同物理意义上的特征信息,而不包括彩色图像的YUV,YCbCr,RGB等。
一种可以解码码流得到重建特征张量的神经网络解码模型的结构及其处理数据的流程如图7所示。该示例的主体与图4中解码码流得到重建图像的神经网络解码模型的结构相似,主要的区别在于,重建特征张量的神经网络解码模型去除了最后若干层将特征张量恢复到图像的网络层,从而可以直接输出重建特征张量。这样做的好处是可以避免从特征张量恢复到图像的过程,减少运算量,并在特征域使用保留了关键信息的重建特征张量用于完成后续的机器智能任务,这样可以使得任务精度更高。在一种实施方案中,考虑到输出的重建特征张量的维度与后续的神经网络任务模型要求的输入特征张量的维度不同,重建特征张量还需要经过特征适配模型的处理,例如图7中左边的一个卷积层,从而将特征张量转换到与后续的神经网络任务模型匹配的特征张量。在一种可能的实施方案中,完成不同机器智能任务的神经网络任务模型使用不同的特征适配模型。
解码方法使用神经网络解码模型进行解码得到的重建特征张量与最终输出的特征张量之间可以存在格式上的不同。在这种情况下,解码方法需要从码流中获取输出特征张量的维度信息,使用反扫描、插值、重采样、或卷积、或反卷积、或边界填充等方式将重建特征张量重组(对应反扫描)或转换(对应插值、重采样等需要进行再运算的)到输出特征张量的维度信息。在一种实施方案中,解码方法还可以从码流中获取重建特征张量转换到输出特征张量的重组方法信息,根据重组方法信息,将重建特征张量在任意一个或多个维度上进行重组排列得到输出的特征张量,例如对重建特征张量在通道上进行重排序、或复制、或删减。这样做的好处在于,可以通过恰当的维度变换和重组,使得解码得到的一种重建特征张量能够在一定程度上支持后续多种不同机器智能任务的神经网络的处理。
对于上述解码方法,在一种可能的实施方案中,使用神经网络解码模型对码流进行解码得到重建的图像。神经网络解码模型解码得到的重建图像与最终输出的图像之间可以存在格式上的不同。在这种情况下,解码方法需要从码流中获取输出图像的维度信息,使用插值、或卷积、或反卷积、或边界填充等方式将重建图像从其原始的维度变换到输出图像的维度信息。这样做的好处是,在面向机器智能任务时,分辨率过大或过小对编码压缩或完成机器智能任务并没有更多的贡献,将原始大分辨率的图像转换为小分辨率图像进行编码和解码,可以在保持机器智能任务精度的情况下降低码流消耗的码率;而将原始小分辨率的图像转换为大分辨率的图像进行编码和解码,可以降低图像在编码中的损失,避免输出图像在后续完成机器智能任务时带来精度损失。
对于上述解码方法,在一种可能的实施方案中,使用神经网络解码模型对码流进行解码的过程可以进一步被拆分为至少两个部分,一部分是将码流解码得到特征张量,该特征张量可以作为后续神经网络的输入数据,用于通过后续神经网络的处理以完成某种机器智能任务如分类、检测、分割、姿态估计等等;另一部分是将解码得到的特征张量进一步恢复为图像,图像可以用于人眼观看、或用于解码得到的特征张量所无法支持的机器智能任务。在一种实施方案中,神经网络解码模型将待解码图像的编码码流解码得到重建特征张量,该特征张量已经可以输出并用于完成后续的机器智能任务,但是在一些如监控安防、车联网等场景中,解码得到的数据在用于完成机器智能任务的同时,有时也需要对图像的内容进行回看或审查等。在这种情况下,重建特征张量可以进一步经过神经网络解码模型中恢复模型的处理,得到重建图像。在另一种情况下,由于重建特征张量能够支持的机器智能任务有限,当解码之后需要完成重建特征张量无法完成的任务时,重建特征张量也需要被恢复到重建图像。一种恢复到重建图像的神经网络恢复模型的结构如图4所示,特征解码使用的神经网络解码模型对码流进行解码,在d3节点得到重建特征,重建特征再经过图像重建使用的神经网络恢复模型进行恢复,在d0节点得到重建图像。
在一种实施方案中,上述解码方法按照分块的形式逐个或并行解码待解码图像的码流得到待解码图像的图像块,将图像块组成待解码图像的重建图像。
上述解码方法可以从对待解码图像的编码码流的解码扩展到对待解码视频的编码码流的解码。其中,对于待解码视频中的一些关键图像,解码方法仍然使用上述解码图像的方法获得重建图像;对于待解码视频中的另外一些非关键图像,从码流中获取非关键图像的复制信息,根据复制信息以及其要复制的关键图像的重建图像,获得非关键图像的重建图像。具体的,在一种情况下,非关键图像的复制信息可以是关键图像的重复输出次数,表明关键图像的重建图像在其相应的输出时刻输出后需要连续重复输出的次数;在另一种情况下,非关键图像的复制信息可以是关键图像的重复输出时间段信息,表明关键图像的重建图像在所述时间段中按照码流中解析得到的帧率连续重复输出,直到时间段结束;在又一种情况下,非关键图像的复制信息可以是关键图像的索引信息,表明在该非关键图像的输出时刻重复输出索引指向的关键图像的重建图像。一种可能的网络结构及其处理数据的流程如图8所示。其中x0,xL,x2L是关键图像,经过神经网络编码模型EI编码压缩再经过神经网络解码模型DI解码重建得到重建图像,其他图像为非关键图像,通过复制之前已经解码得到的重建关键图像来作为重建非关键图像。重建关键图像和重建非关键图像联合组成重建视频。
另一种可能的视频解码方法如图9所示。对于待解码视频中的一些关键图像,解码方法仍然使用上述解码图像的方法获得重建图像;对于待解码视频中的另外一些非关键图像的解码,解码方法将之前已经解码的关键图像作为预测图像输入到神经网络解码模型中,从而为非关键图像的解码提供参考信息。如图9中,x1在解码时使用重建关键图像作为预测图像。
本发明实施例公开的码流处理方法包含机器智能任务分析方法,该方法对解码得到的重建数据使用神经网络任务模型处理得到任务分析结果。
在一种实施方案中,解码方法使用的神经网络解码模型和机器智能任务分析方法使用的神经网络任务模型可以串联为一个神经网络解码任务模型。在一种情况下,解码模型输出的重建图像直接输入到任务模型中执行机器智能任务得到分析结果;在另一种情况下,任务模型中对输入图像提取特征的部分网络结构被删减或精简或和解码模型中恢复重建特征张量的部分网络结构融合,此时,解码模型输出重建特征张量,任务模型处理重建特征张量得到分析结果。上述串联得到的神经网络解码任务模型在训练时,可以联合训练、或先训练一部分再训练另一部分。
在一种实施方案中,码流处理方法同时包含解码方法和机器智能任务分析方法,且码流被解码得到重建特征。由于完成不同的机器智能任务的神经网络任务模型通常在模型结构或模型参数上有所不同,任务模型能够处理的特征张量的维度和信息分布也是不同的。这就导致重建特征不能适用于所有的任务模型以完成所有的机器智能任务。因此,解码得到的重建特征通常是有适用的任务范围的。例如,完成目标识别任务的神经网络任务模型Faster R-CNN X101-FPN的特征张量的信息分布和完成跟踪任务的神经网络任务模型JDE-1088x608的特征张量的信息分布不同,当完成跟踪任务的任务模型处理用于目标识别任务的特征以完成任务时,任务结果的精度会非常低。但是,在另一种情况下,有些机器智能任务使用的特征的维度和信息分布是相似的,例如完成目标识别任务的神经网络任务模型Faster R-CNN X101-FPN和完成目标分割任务的神经网络任务模型Mask R-CNN X101-FPN,这两个模型拥有相似的主干网络,处理的特征的信息分布非常相似。为了标明解码得到的重建特征能够适用的机器智能任务或任务模型,例如分类、目标检测、目标分割、目标跟踪、姿态估计、人脸识别等,解码方法应从码流中获取重建数据的任务类型信息,该类型信息标明了重建特征张量能够适用的任务类型,从而指导后续的操作使用相应的神经网络任务模型来处理重建特征张量以获得机器智能任务结果。
解码方法还可以分为三个部分,一部分是使用神经网络超先验模型将待解码图像的编码码流中的一部分数据解码得到概率模型,第二部分是根据概率模型使用熵解码模型从待解码图像的编码码流中的一部分数据解析得到解析数据,还有一部分是使用神经网络反变换模型将解析数据进行变换得到重建数据。
具体的,解码方法从待解码图像码流中获取用于超先验的第一子码流和用于重建的第二子码流。第一子码流和第二子码流在码流中由子码流分界标识进行区分。码流分界标识可以是第一子码流的起始比特位置(第一子码流的第一个比特相较于码流的第一个比特的位置)和第一子码流的总比特数;码流分界标识也可以是一串特定的起始码或结束码。使用神经网络超先验模型对第一子码流进行解码,得到用于解析第二子码流的熵解码模型信息;该熵解码模型信息包括概率信息和预测信息,概率信息用于选择概率模型对第二子码流进行熵解码,预测信息用于补偿从第二子码流中熵解码得到的数据。由于码流是以二进制串的形式存在的,将码流解码到可以被神经网络模型处理的形态需要对解码数据进行维度变换。在这种情况下,从第一子码流中获取第一解析数据的维度信息,用于对第一子码流熵解码得到的第一解析数据进行格式调整。从第二子码流中获取第二解析数据的维度信息,用于对第二子码流熵解码得到的第二解析数据进行格式调整。其中维度信息可以包括分辨率、通道数、位宽。
上述从待解码图像的编码码流中获取的信息,通常作为码流中的语法元素按照如固定长度字符、无符号字符、有符号字符或指数哥伦布编码字符等任意字符形式存在于码流中头信息或扩展信息或增强信息中,一种包含上述信息的码流的语法结构的样例如表1所示,为了方便描述,所有上述信息都被列出,但是在可能的实施方案中,码流的语法结构可以包含上述信息中的任意一种或多种的组合。
表1一种码流结构示意
/>
本发明实施例公开一种使用神经网络的码流数据生成方法,对于输入的图像或视频,使用神经网络编码模型将其压缩编码成码流,并在码流中写入解码码流所需要的信息,使得解码方法可以根据这些信息选择合适的解码操作解码码流得到重建图像或视频。下文将详细描述所述码流生成方法的实施方案以及其各种扩展实施方案。
在一种实施方案中,所述神经网络编码模型包含两部分,如图10所示,一部分是特征提取,一部分是特征编码。所述码流生成方法执行以下操作:在特征提取部分对输入图像进行特征提取得到特征张量;在特征编码部分对所述特征张量码流进行编码压缩得到码流。具体的,对于至少一幅输入图像,根据图像在解码之后的用途选择合适的编码模型。为了让解码方法能够选择与编码模型匹配的解码模型,码流生成方法在码流数据中写入处理该输入图像所使用编码模型的模型信息。模型信息的类型和用途在上述解码方法中已经描述,在此处不再赘述。
一种可以使用的神经网络编码模型的结构及其处理数据的流程如图10所示。在该示例中,输入图像经过编码模型中的变换模型部分处理得到第二特征张量y,y再经过超先验变换模型部分处理得到第一特征张量z。z经过熵编码得到第一子码流,再经过超先验反变换模型部分处理得到概率模型。概率模型被用于估计y的概率分布,并对y进行熵编码得到第二子码流。两个子码流合并成为输入图像的编码码流。
在另一种实施方案中,所述数据生成方法使用码率控制参数调整编码模型来实现获得不同码率的码流的效果。具体的码率控制方法与上述解码方法中描述的码率控制方法一致。
在一种实施方案中,输入图像经过编码和解码之后被直接恢复为重建特征张量,以用于完成后续的机器智能任务。由于完成任务的神经网络任务模型对输入数据的维度有限定,所以通常情况下,在不适用编解码,直接使用原始图像输入任务模型时,任务模型会对输入图像的维度进行转换,以适配任务模型中的网络层处理能力。对于本发明中输入图像经过编解码之后直接输入任务模型的情况,为了能够让重建特征张量适配任务模型,在输入图像被编码模型处理之前,可以对输入图像进行前处理以调整输入图像的维度。这样做的好处在于避免在重建特征张量输入任务模型之前进行特征的维度变换,因为特征域的维度变换可能对最终执行任务的精度有比较大的影响,如此可以避免任务精度的损失。
在一种实施方案中,为了标明码流生成方法中特征提取到的特征能够适用的机器智能任务或任务模型,编码方法在码流中写入编码数据的任务类型信息,该类型信息标明了特征张量能够适用的任务类型,从而指导解码之后的操作使用相应的神经网络任务模型来处理特征张量以获得机器智能任务结果。
在一种实施方案中,上述码流生成方法按照分块的形式逐个或并行编码输入图像中的图像块,将图像块的码流合并得到输入图像的码流。
上述码流生成方法可以从图像扩展到视频。其中,对于输入视频中的一些关键图像,码流生成方法仍然使用上述编码图像的方法获得编码码流;对于输入视频中的另外一些非关键图像,不执行编码,而是在码流中写入其使用复制的重建关键图像作为其重建非关键图像的复制信息。复制信息的类型和用法与上述视频解码方法中的描述一致。一种可能的流程如图8所示。其中x0,xL,x2L是关键图像,经过神经网络编码模型EI编码压缩再经过神经网络解码模型DI解码重建得到重建图像,其他图像为非关键图像,通过复制之前已经解码得到的重建关键图像来作为重建非关键图像。重建关键图像和重建非关键图像联合组成重建视频。
另一种可能的视频编码方法如图9所示。对于输入视频中的一些关键图像,编码方法仍然使用上述编码图像的方法获得码流,并解码获得重建图像以用于后续非关键图像的预测编码;对于输入视频中的另外一些非关键图像的编码,编码方法将之前已经解码的关键图像作为预测图像输入到神经网络编码模型中,从而为非关键图像的编码提供参考信息。如图9中,x1在编码时使用重建关键图像作为预测图像。/>
Claims (10)
1.一种基于神经网络的数据处理方法,其特征在于包括如下步骤:
1)从输入的码流数据中获取解码信息,所述解码信息包含以下信息:
a)解码模型信息,用于选择解码码流所用的神经网络解码模型;
b)特征张量的类型信息,用于标明特征张量适用的机器智能任务类型;
2)根据所述解码模型信息,使用对应的神经网络解码模型解码码流获得重建特征张量;
3)根据特征张量的类型信息,使用对应的神经网络任务模型处理重建特征张量得到机器智能任务结果。
2.根据权利要求1所述的方法,其特征在于,所述解码模型信息至少包含以下信息之一:
a)模型结构索引,用于选定神经网络解码模型的网络结构;
b)模型参数集索引,用于选定神网络解码模型的模型参数;
c)码率控制参数,用于调整选定的神经网络解码模型中的部分模型参数或网络层间的特征张量。
3.根据权利要求1所述的方法,其特征在于,所述特征张量类型至少包括以下任一种或组合:用于完成多个智能任务的特征张量;用于完成某个典型智能任务的特征张量。
4.根据权利要求1所述的方法,其特征在于,所述使用对应的神经网络任务模型处理重建特征张量得到机器智能任务结果包括:
使用神经网络恢复模型处理所述重建特征张量,恢复得到重建图像或视频;
使用与机器智能任务相对应的神经网络任务模型处理重建图像或视频得到机器智能任务结果。
5.一种基于神经网络的数据生成方法,其特征在于包括如下步骤:
1)根据需要完成的机器智能任务,选择对应的神经网络特征提取模型从输入图像或视频中提取特征张量;
2)使用神经网络编码模型将特征张量编码得到码流;
3)将解码模型信息写入码流,该解码模型信息包含与所述神经网络特征提取模型和神经网络编码模型对应的神经网络解码模型的模型信息;
4)将特征张量的类型信息写入码流,该特征张量的类型信息用于标明被编码的特征张量适用的机器智能任务类型。
6.根据权利要求5所述的方法,其特征在于,所述解码模型信息至少包含以下信息之一:
a)模型结构索引,用于选定神经网络解码模型的网络结构;
b)模型参数集索引,用于选定神网络解码模型的模型参数;
c)码率控制参数,用于调整选定的神经网络解码模型中的部分模型参数或网络层间的特征张量。
7.根据权利要求5所述的方法,其特征在于,所述特征张量类型至少包括以下任一种或组合:用于完成多个智能任务的特征张量;用于完成某个典型智能任务的特征张量。
8.一种基于神经网络的数据处理装置,包括:
处理器;
用于存储码流、神经网络模型和特征张量的存储器;以及
一个或多个程序用于完成以下方法:
1)处理器从输入的码流数据中获取解码信息,所述解码信息包含以下信息:
a)解码模型信息,用于选择解码码流所用的神经网络解码模型;
b)特征张量的类型信息,用于标明特征张量适用的机器智能任务类型;
2)处理器根据所述解码模型信息,使用对应的神经网络解码模型解码码流获得重建特征张量;
3)处理器根据特征张量的类型信息,使用对应的神经网络任务模型处理特征张量得到机器智能任务结果。
9.根据权利要求8所述的装置,其特征在于,所述使用对应的神经网络任务模型处理重建特征张量得到机器智能任务结果包括:
处理器使用神经网络恢复模型处理所述重建特征张量,恢复得到重建图像或视频;
处理器使用与机器智能任务相对应的神经网络任务模型处理重建图像或视频得到机器智能任务结果。
10.一种基于神经网络的数据生成装置,包括:
处理器;
用于存储输入图像或视频、神经网络模型、特征张量和码流的存储器;以及
一个或多个程序用于完成以下方法:
1)处理器根据需要完成的机器智能任务,选择对应的神经网络特征提取模型从输入图像或视频中提取特征张量;
2)处理器使用神经网络编码模型将特征张量编码得到码流;
3)处理器将解码模型信息写入码流,该解码模型信息包含与所述神经网络特征提取模型和神经网络编码模型对应的解码模型的模型信息;
4)处理器将特征张量的类型信息写入码流,该信息用于标明被编码的特征张量适用的机器智能任务类型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211250091.5A CN117915093A (zh) | 2022-10-12 | 2022-10-12 | 基于神经网络的数据处理和生成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211250091.5A CN117915093A (zh) | 2022-10-12 | 2022-10-12 | 基于神经网络的数据处理和生成方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117915093A true CN117915093A (zh) | 2024-04-19 |
Family
ID=90695163
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211250091.5A Pending CN117915093A (zh) | 2022-10-12 | 2022-10-12 | 基于神经网络的数据处理和生成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117915093A (zh) |
-
2022
- 2022-10-12 CN CN202211250091.5A patent/CN117915093A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11589041B2 (en) | Method and apparatus of neural network based processing in video coding | |
CN110225341B (zh) | 一种任务驱动的码流结构化图像编码方法 | |
Hu et al. | Towards coding for human and machine vision: A scalable image coding approach | |
CN112203093B (zh) | 一种基于深度神经网络的信号处理方法 | |
KR20180100976A (ko) | 딥 신경망 기반 블러 영상 학습을 이용한 영상 부호화/복호화 방법 및 장치 | |
CN113132727B (zh) | 可伸缩机器视觉编码方法和运动引导图像生成网络的训练方法 | |
CN115131675A (zh) | 一种基于参考影像纹理迁移的遥感影像压缩方法及*** | |
CN116233445B (zh) | 视频的编解码处理方法、装置、计算机设备和存储介质 | |
Jiang et al. | Multi-modality deep network for extreme learned image compression | |
US20220335560A1 (en) | Watermark-Based Image Reconstruction | |
CN117061760A (zh) | 一种基于注意力机制的视频压缩方法和*** | |
CN117915093A (zh) | 基于神经网络的数据处理和生成方法及装置 | |
Liu et al. | Exploring effective mask sampling modeling for neural image compression | |
CN115643406A (zh) | 视频解码方法、视频编码方法、装置、存储介质及设备 | |
EP4315866A1 (en) | Multi-distribution entropy modeling of latent features in image and video coding using neural networks | |
CN117615148B (zh) | 一种基于多尺度框架的端到端特征图分层压缩方法 | |
WO2022088101A1 (zh) | 编码方法、解码方法、编码器、解码器及存储介质 | |
WO2024093627A1 (zh) | 一种视频压缩方法、视频解码方法和相关装置 | |
US20230239470A1 (en) | Video encoding and decoding methods, encoder, decoder, and storage medium | |
CN113507607B (zh) | 一种无需运动补偿的压缩视频多帧质量增强方法 | |
CN113256521B (zh) | 一种数据缺失的错误隐藏方法及装置 | |
US11670011B2 (en) | Image compression apparatus and learning apparatus and method for the same | |
Xiong et al. | Texture-guided Coding for Deep Features | |
TW202416712A (zh) | 使用神經網路進行圖像區域的並行處理-解碼、後濾波和rdoq | |
TW202420815A (zh) | 使用神經網路進行圖像區域的並行處理-解碼、後濾波和rdoq |
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 |