WO2022073160A1 - 编码方法、解码方法、编码器、解码器以及存储介质 - Google Patents

编码方法、解码方法、编码器、解码器以及存储介质 Download PDF

Info

Publication number
WO2022073160A1
WO2022073160A1 PCT/CN2020/119853 CN2020119853W WO2022073160A1 WO 2022073160 A1 WO2022073160 A1 WO 2022073160A1 CN 2020119853 W CN2020119853 W CN 2020119853W WO 2022073160 A1 WO2022073160 A1 WO 2022073160A1
Authority
WO
WIPO (PCT)
Prior art keywords
feature
data
sequence
channel
submap
Prior art date
Application number
PCT/CN2020/119853
Other languages
English (en)
French (fr)
Inventor
虞露
朱炳杰
于化龙
谢志煌
戴震宇
Original Assignee
浙江大学
Oppo广东移动通信有限公司
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 浙江大学, Oppo广东移动通信有限公司 filed Critical 浙江大学
Priority to PCT/CN2020/119853 priority Critical patent/WO2022073160A1/zh
Priority to CN202080106001.8A priority patent/CN116368798A/zh
Priority to EP20956475.6A priority patent/EP4228255A4/en
Publication of WO2022073160A1 publication Critical patent/WO2022073160A1/zh
Priority to US18/132,194 priority patent/US20230247200A1/en

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/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
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods 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

Definitions

  • the first processing unit is configured to perform correlation processing on the input feature map data to obtain a plurality of feature submaps
  • the reordering unit is configured to perform reordering processing on the plurality of feature sub-maps to obtain a quasi-time domain sequence and corresponding reordering information
  • Quantization module 101/Inverse quantization module 106 When the original input feature map data is a floating point type, the feature map data needs to be quantized to convert it into integer data that meets the input requirements of traditional video encoders.
  • the method may further include:
  • the reordering information can also be recorded in the supplementary enhancement information.
  • the supplementary enhancement information may be supplemental enhancement information (Supplemental Enhancement Information, SEI) in VVC, HEVC, or extension data (Extension Data) of the AVS standard. Therefore, in some embodiments, the method may further include:
  • the reordering information may include at least one list, and each list stores a channel sequence number corresponding to the feature submap placed in each sequence in the at least one sequence.
  • the role of the at least one list is to guide the establishment of the reference relationship between the feature sub-maps when each sequence is encoded and decoded. Specifically, feature submaps in the same sequence can refer to each other, while feature submaps in different sequences cannot refer to each other.
  • the array data of the feature tensor size at the preset position is intercepted from the third feature data corresponding to each channel, and the intercepted array data is determined as the second feature data corresponding to each channel, so as to obtain the multi-channel data. a second feature data.
  • FIG. 5 shows a detailed schematic flowchart of a time-domain feature-like encoding and decoding process provided by an embodiment of the present application. As shown in Figure 5, the detailed process may include:
  • the information to be encoded by the encoder may include time domain-like YUV sequences and other at least additional data.
  • image size of the input network represented by image size
  • image processed_size the image processed by the original network of the input network
  • maximum corresponding to each channel of the feature tensor Value and minimum value, denoted by x min and x max .
  • a first determining unit 901 configured to determine input feature map data
  • the encoding unit 904 is further configured to write the minimum value and the maximum value corresponding to each channel into the code stream.
  • RAM Static RAM
  • DRAM Dynamic RAM
  • SDRAM Synchronous DRAM
  • SDRAM double data rate synchronous dynamic random access memory
  • Double Data Rate SDRAM DDRSDRAM
  • enhanced SDRAM ESDRAM
  • synchronous link dynamic random access memory Synchronous DRAM, SLDRAM
  • Direct Rambus RAM Direct Rambus RAM
  • a "unit” may be a part of a circuit, a part of a processor, a part of a program or software, etc., of course, it may also be a module, and it may also be non-modular.
  • each component in this embodiment may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit.
  • the above-mentioned integrated units can be implemented in the form of hardware, or can be implemented in the form of software function modules.
  • the hardware function of the second memory 1202 is similar to that of the first memory 1002, and the hardware function of the second processor 1203 is similar to that of the first processor 1003; details are not described here.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

一种编码方法、解码方法、编码器、解码器以及存储介质,该方法包括:确定输入特征图数据(S201);对所述输入特征图数据进行相关处理,得到多个特征子图(S202);对所述多个特征子图进行重排序处理,得到类时域序列以及对应的重排序信息(S203);对所述类时域序列以及所述重排序信息进行编码,生成码流(S204)。这样,将多个特征子图进行重排序,充分利用了特征子图之间的相关性信息,从而能够提高特征图数据的编解码效率。

Description

编码方法、解码方法、编码器、解码器以及存储介质 技术领域
本申请涉及编解码技术领域,尤其涉及一种编码方法、解码方法、编码器、解码器以及存储介质。
背景技术
随着计算机技术的发展,计算机视觉相关领域得到了越来越多的关注。近年来,图像处理技术在各行各业都取得了成功地应用。对于特征图的编解码过程而言,将经过预量化模块、重打包模块后的特征图数据以YUV视频数据形式送入传统视频编码器进行压缩编码,而传统视频编码器产生的码流包含在特征图数据码流中;然后再经过反重打包模块、反量化模块后送入传统视频解码器进行解码,以恢复出原始输入的特征图数据。
目前,重打包模块/反重打包模块可以有多个模式可选,分别为特征图指定顺序的叠加模式和特征图默认顺序或指定顺序的平铺模式等。然而,目前的这些模式仍然存在一些缺陷,比如在叠加模式中,仅适用单一的列表描述特征通道的顺序,考虑不全面而使得叠加后的特征通道之间的编码效率不高;在平铺模式中,特征的多通道数据被按照单一的列表顺序平铺在一幅图像中,多通道数据紧密相邻,这就导致在使用已有编解码方法对平铺图像进行编码时,由于不同通道数据之间存在非连续性,从而不能有效提高编解码效率,使得特征图数据的压缩效果不够好。
发明内容
本申请提供了一种编码方法、解码方法、编码器、解码器以及存储介质,充分利用特征子图之间的相关性信息,能够提高特征图数据的编解码效率。
本申请的技术方案可以如下实现:
第一方面,本申请实施例提供了一种编码方法,应用于编码器,该方法包括:
确定输入特征图数据;
对所述输入特征图数据进行相关处理,得到多个特征子图;
对所述多个特征子图进行重排序处理,得到类时域序列以及对应的重排序信息;
对所述类时域序列以及所述重排序信息进行编码,生成码流。
第二方面,本申请实施例提供了一种解码方法,应用于解码器,该方法包括:
解析码流,获取类时域序列以及重排序信息;
根据所述重排序信息对所述类时域序列进行反重排序处理,得到多个特征子图;
对所述多个特征子图进行相关处理,得到重建特征图数据。
第三方面,本申请实施例提供了一种编码器,该编码器包括第一确定单元、第一处理单元、重排序单元和编码单元;其中,
所述第一确定单元,配置为确定输入特征图数据;
所述第一处理单元,配置为对所述输入特征图数据进行相关处理,得到多个特征子图;
所述重排序单元,配置为对所述多个特征子图进行重排序处理,得到类时域序列以及对应的重排序信息;
所述编码单元,配置为对所述类时域序列以及所述重排序信息进行编码,生成码流。
第四方面,本申请实施例提供了一种编码器,该编码器包括第一存储器和第一处理器;其中,
第一存储器,用于存储能够在第一处理器上运行的计算机程序;
第一处理器,用于在运行所述计算机程序时,执行如第一方面所述的方法。
第五方面,本申请实施例提供了一种解码器,该解码器包括解析单元、反重排序单元和第二处理单元;其中,
所述解析单元,配置为解析码流,获取类时域序列以及重排序信息;
所述反重排序单元,配置为根据所述重排序信息对所述类时域序列进行反重排序处理,得到多个特 征子图;
所述第二处理单元,配置为对所述多个特征子图进行相关处理,得到重建特征图数据。
第六方面,本申请实施例提供了一种解码器,该解码器包括第二存储器和第二处理器;其中,
第二存储器,用于存储能够在第二处理器上运行的计算机程序;
第二处理器,用于在运行所述计算机程序时,执行如第二方面所述的方法。
第七方面,本申请实施例提供了一种计算机存储介质,该计算机存储介质存储有计算机程序,所述计算机程序被第一处理器执行时实现如第一方面所述的方法、或者被第二处理器执行时实现如第二方面所述的方法。
本申请实施例提供了一种编码方法、解码方法、编码器、解码器以及存储介质,在编码器侧,通过确定输入特征图数据;对所述输入特征图数据进行相关处理,得到多个特征子图;对所述多个特征子图进行重排序处理,得到类时域序列以及对应的重排序信息;对所述类时域序列以及所述重排序信息进行编码,生成码流。在解码器侧,通过解析码流,获取类时域序列以及重排序信息;根据所述重排序信息对所述类时域序列进行反重排序处理,得到多个特征子图;对所述多个特征子图进行相关处理,得到重建特征图数据。这样,将多个特征子图进行重排序,充分利用了特征子图之间的相关性信息,可以优化特征子图之间的参考关系,从而不仅提升了特征图数据的压缩效率,同时还提高了特征图数据的编解码效率。
附图说明
图1为相关技术提供的一种特征图编解码框架的结构示意图;
图2为本申请实施例提供的一种编码方法的流程示意图;
图3为本申请实施例提供的一种重排序结果表现的结构示意图;
图4为本申请实施例提供的一种解码方法的流程示意图;
图5为本申请实施例提供的一种类时域特征编解码的详细流程示意图;
图6为本申请实施例提供的一种类时域特征编解码框架的结构示意图;
图7为本申请实施例提供的一种预处理操作框架的结构示意图;
图8为本申请实施例提供的一种后处理操作框架的结构示意图;
图9为本申请实施例提供的一种编码器的组成结构示意图;
图10为本申请实施例提供的一种编码器的硬件结构示意图;
图11为本申请实施例提供的一种解码器的组成结构示意图;
图12为本申请实施例提供的一种解码器的硬件结构示意图。
具体实施方式
为了能够更加详尽地了解本申请实施例的特点与技术内容,下面结合附图对本申请实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本申请实施例。
在视频图像中,一般采用第一图像分量、第二图像分量和第三图像分量来表征编码块(Coding Block,CB)。其中,这三个图像分量分别为一个亮度分量、一个蓝色色度分量和一个红色色度分量,具体地,亮度分量通常使用符号Y表示,蓝色色度分量通常使用符号Cb或者U表示,红色色度分量通常使用符号Cr或者V表示;这样,视频图像可以用YCbCr格式表示,也可以用YUV格式表示。
下面将针对目前的特征图编解码过程进行相关技术方案描述。
参见图1,其示出了相关技术提供的一种特征图编解码框架的结构示意图。如图1所示,该特征图编解码框架可以包括:量化(Pre-Quantization)模块101、重打包(Repack)模块102、传统视频编码器(Video Encoder)103、传统视频解码器(Video Decoder)104、反重打包(DeRepack)模块105和反量化(Pre-DeQuantization)模块106。
其中,在编码过程中,针对输入的深度特征数据(Deep Features),首先经过量化模块101进行量化处理,然后再经过重打包模块102进行格式变换,比如将原始输入的Deep Features由三维数组变换为符合传统视频编码器103输入要求的YUV格式,再由传统视频编码器103对其进行编码,将所产生的码流(如010101010101010101…)包含在特征图数据的码流中,并将码流传输到传统视频解码器104中。在解码过程中,首先由传统视频解码器104解析码流,然后再经过反重打包模块105将YUV格式的特征图数据变换为数组形态的特征图数据,再通过反量化模块106对其进行反量化处理,可以恢复得 到重构深度特征数据(Reconstructed Deep Features)。
也就是说,该特征图编解码框架主要包括三部分:量化模块101/反量化模块106、重打包模块102/反重打包模块105、传统视频编码器103/传统视频解码器104。具体模块的内容如下,
量化模块101/反量化模块106:当原始输入的特征图数据为浮点型时,需要对特征图数据进行量化,使其转化为符合传统视频编码器输入要求的整型数据。
重打包模块102/反重打包模块105:重打包模块102将原始输入的特征图数据由三维数组变换为符合传统视频编码器输入要求的YUV格式。同时通过改变特征图数据的组合方式,可以提高传统视频编码器对特征图数据的编码效率。这里,重打包模块102/反重打包模块105均可以有多个模式可选,分别为特征图指定顺序的叠加模式和特征图默认顺序或指定顺序的平铺模式等。
特征图指定顺序的叠加模式:在该模式下,特征图的每个通道对应传统视频编码器输入数据中的一帧。特征图的高和宽被填充至符合统视频编码器输入要求的高度与宽度。其中,特征图数据的通道顺序是由repack_order_list记录,repack_order_list中的内容可以缺省为默认的顺序数组(例如[0,1,2,3,…])。
特征图默认顺序或指定顺序的平铺模式:在该模式下,特征图的多个通道平铺拼接成一个二维数组作为传统视频编码器输入数据中的一帧。拼接后数组的高和、宽被填充至符合统视频编码器输入要求的高度与宽度。拼接顺序为原始特征图数据的通道顺序,由数组宽方向优先,高方向其次依次排列,当前帧铺满后再创建下一帧继续平铺,直到特征图所有通道均平铺完毕。其中,特征图数据的通道顺是序由repack_order_list记录,内容可以缺省为默认的顺序数组(例如[0,1,2,3,…])。
除此之外,对于传统视频编码器103/传统视频解码器104来说,在经过量化和重打包处理后的特征图数组数据以YUV格式送入传统视频编码器103进行压缩编码,传统视频编码器103产生的码流包含在特征图数据码流中。示例性地,对于H.265/高效率视频编码(High Efficiency Video Coding,HEVC)的视频编码器,特征图数组数据将以4:0:0格式输入,对于第三代音视频编码标准(3rd Audio Video coding Standard,AVS3)的视频编码器,特征图数组数据将以4:2:0格式输入。
然而,目前的这些模式仍然存在一些缺陷。在叠加模式中,仅适用单一的列表描述特征通道的顺序,由于目前没有根据特征通道之间的相关性进行特征通道的顺序最优化排列,且没有对特征通道之间在视频编解码器中的参考关系进行指导和设计,考虑不全面而使得叠加之后的特征通道之间的编码效率并不高。另外,在平铺模式中,特征的多通道数据被按照单一的列表顺序平铺在一幅图像中,多通道数据紧密相邻,这就导致在使用已有编解码方法对平铺图像进行编码时,块划分操作会将多个通道的数据划分到同一个编码单元中;这时候由于不同通道数据之间存在非连续性,这就使得同一个编码单元中的不同通道数据的相关性较差,从而不能有效发挥现有编解码方法的效率,使得特征数据的压缩效果不够好。
基于此,本申请实施例提供了一种编码方法,该编码方法的基本思想是:确定输入特征图数据;对所述输入特征图数据进行相关处理,得到多个特征子图;对所述多个特征子图进行重排序处理,得到类时域序列以及对应的重排序信息;对所述类时域序列以及所述重排序信息进行编码,生成码流。本申请实施例还提供了一种解码方法,该解码方法的基本思想是:解析码流,获取类时域序列以及重排序信息;根据所述重排序信息对所述类时域序列进行反重排序处理,得到多个特征子图;对所述多个特征子图进行相关处理,得到重建特征图数据。这样,将多个特征子图进行重排序,充分利用了特征子图之间的相关性信息,可以优化特征子图之间的参考关系,从而不仅提升了特征图数据的压缩效率,同时还提高了特征图数据的编解码效率。
下面将结合附图对本申请各实施例进行详细阐述。
需要说明的是,在进行详细阐述之前,说明书通篇中提到的“第一”、“第二”、“第三”等,仅仅是为了区分不同的特征,不具有限定优先级、先后顺序、大小关系等功能。
本申请的一实施例中,本申请实施例提供的编码方法应用于视频编码设备,即编码器。该方法所实现的功能可以通过编码器中的第一处理器调用计算机程序来实现,当然计算机程序可以保存在第一存储器中,可见,该编码器至少包括第一处理器和第一存储器。
参见图2,其示出了本申请实施例提供的一种编码方法的流程示意图。如图2所示,该方法可以包括:
S201:确定输入特征图数据。
需要说明的是,该编码方法可以适用于H.265/HEVC标准的编码器,也可以适用于H.266/多功能视频编码(Versatile Video Coding,VVC)标准的编码器,甚至还可以适用于其他标准的编码器,比如适用于AVS标准的编码器、基本视频编码(Essential Video Coding,EVC)标准的编码器等,本申请实施例不作具体限定。
还需要说明的是,特征图数据是指图像或者视频输入预设神经网络模型后所提取得到的特征数据。 具体地,在一些实施例中,所述确定输入特征图数据,包括:
获取待处理图像;
通过预设神经网络模型对所述待处理图像进行特征提取,得到所述输入特征图数据;其中,所述输入特征图数据包括多个通道的特征数据。
这里,预设神经网络模型通常是卷积神经网络模型。其中,卷积神经网络(Convolutional Neural Networks,CNN)是一类包含卷积计算且具有深度结构的前馈神经网络(Feedforward Neural Networks),是深度学习(deep learning)的代表算法之一。卷积神经网络具有表征学习(representation learning)能力,能够按其阶层结构对输入信息进行平移不变分类(shift-invariant classification),因此也被称为“平移不变人工神经网络(Shift-Invariant Artificial Neural Networks,SIANN)”。神经网络已经发展到了深度学习阶段。深度学习是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法,其强大的表达能力使其在视频和图像处理上的表现取得了良好的效果。
也就是说,本申请实施例是将特征图数据作为输入的,而输入特征图数据是由待处理图像经过预设神经网络模型后由网络中间层提取出的特征数据。需要注意的是,这里的待处理图像可以是指图像,也可以是指视频帧,本申请实施例不作具体限定。
另外,输入特征图数据可以是张量形态,也可以是数组形态。对于一幅宽度为W1、高度为H1的图像来说,其对应的特征图数据大小可以用张量形态(C,W,H)进行表示。其中,C为通道数量,W为特征张量的宽度,H为特征张量的高度,这里的W和H即为特征张量尺寸。
在一些实施例中,当所述输入特征图数据为张量形态时,该方法还可以包括:
对所述输入特征图数据中多个通道的特征数据分别进行形态变换,得到多个第一特征数据;其中,每一通道对应一个第一特征数据,且所述第一特征数据为数组形态;
将所述多个第一特征数据确定为所述输入特征图数据。
也就是说,如果输入特征图数据为张量形态,那么需要对输入特征图数据进行形态变换,将其转化为数组形态,得到多个第一特征数据,而每一个第一特征数据为数组形态;这时候可以将这多个第一特征数据确定为输入特征图数据。
S202:对所述输入特征图数据进行相关处理,得到多个特征子图。
需要说明的是,相关处理可以包括有量化处理、填补处理和形态变换处理等。具体地,在一些实施例中,所述对所述输入特征图数据进行相关处理,得到多个特征子图,可以包括:
对所述多个第一特征数据分别进行量化,得到多个第二特征数据;
对所述多个第二特征数据分别进行填补,得到多个第三特征数据;
对所述多个第三特征数据分别进行形态变换,得到所述多个特征子图。
也就是说,针对这多个第一特征数据,可以对每一通道对应的第一特征数据进行量化,将量化后的特征数据确定为第二特征数据,这里的第二特征数据也为数组形态;对每一通道对应的第二特征数据进行填补,将填补后的特征数据确定为第三特征数据,这里的第三特征数据也为数组形态;最后可以对数组形态的第三特征数据变换为特征子图形态,从而得到每一通道对应的特征子图。需要注意的是,量化和填补这两个处理步骤,可以是先量化再填补,也可以是先填补再量化,本申请实施例是以先量化再填补为例进行描述,但是对该执行顺序并不作具体限定。
进一步地,所述对所述多个第一特征数据分别进行量化,得到多个第二特征数据,可以包括:
基于所述多个第一特征数据,从每一通道对应的第一特征数据中选择最小值和最大值;
根据每一通道对应的第一特征数据以及所述最小值和所述最大值,利用第一计算模型确定每一通道对应的第二特征数据,以得到所述多个第二特征数据。
需要说明的是,针对特征数据进行量化,在一种具体示例中,可以查询最小值(用x min表示)和最大值(用x max表示)。这里,x min是指单个通道的第一特征数据中的最小值,x max是指单个通道的第一特征数据中的最大值。这时候的量化公式(即第一计算模型)如下,
Figure PCTCN2020119853-appb-000001
这里,x ij表示未经量化的第一特征数据对应的数组(H,W)中的第i行、第j列的数据,x min表示未经量化的第一特征数据对应的数组(H,W)中的最小值,x max表示未经量化的第一特征数据对应的数组(H,W)中的最大值,
Figure PCTCN2020119853-appb-000002
表示量化后的第二特征数据对应的数组(H,W)中的第i行、第j列的数据,n表示比特数,int[]表示整数化函数。
在另一种具体示例中,这时候可以采用对数定点化公式。量化的作用即是将浮点数据整型为定点数据。这时候的量化公式可以用对数定点化公式替代,该对数定点化公式如下,
Figure PCTCN2020119853-appb-000003
其中,x ij表示未经量化的第一特征数据对应的数组(H,W)中的第i行、第j列的数据,
Figure PCTCN2020119853-appb-000004
表示量化后的第二特征数据对应的数组(H,W)中的第i行、第j列的数据,即x ij
Figure PCTCN2020119853-appb-000005
分别表示原始数据和定点化后的数据,max_num表示经过对数变换后的特征数据log 2(1+x ij)中的最大值,BitDepth表示定点化比特数,log 2(·)操作返回输入以2为底的对数值,int[]操作返回最接近输入数值的整型数值。
此外,对于x min和x max而言,由于每一通道对应的最小值(x min)和最大值(x max)还需要传输到解码器,以供解码器使用。因此,在一些实施例中,该方法还可以包括:将每一通道对应的最小值和最大值写入码流中。
进一步地,所述对所述多个第二特征数据分别进行填补,得到多个第三特征数据,可以包括:
基于所述多个第二特征数据,利用第二计算模型对每一通道对应的第二特征数据进行填补,确定每一通道对应的第三特征数据,以得到所述多个第三特征数据。
需要说明的是,针对量化后得到的第二特征数据,即数组(H,W)进行填补,在一种具体示例中,可以在该数组的右边和底部进行重复边界值的方式进行填补,这时候的填补公式(即第二计算模型)如下,
Figure PCTCN2020119853-appb-000006
这里,(H,W)表示未经填补的第二特征数据对应的数组尺寸;
Figure PCTCN2020119853-appb-000007
表示填补后的第三特征数据对应的数组尺寸;mod表示取余数;“>>”和“<<”表示位运算符,“>>”为右移运算符,“<<”为左移运算符;α表示根据具体的视频编码器输入尺寸所要求的填补常数。
进一步地,所述对所述多个第三特征数据分别进行形态变换,得到所述多个特征子图,可以包括:
基于所述多个第三特征数据,对每一通道对应的第三特征数据由数组形态向特征子图形态进行变换,确定每一通道对应的特征子图,以得到所述多个特征子图。
需要说明的是,在得到每一通道量化及填补后的数组(即第三特征数据)之后,可以将其由数组形态转化为特征子图形态,以得到每一通道对应的特征子图,从而能够得到所述多个通道所对应的多个特征子图。
还需要说明的是,在本申请实施例中,量化处理、填补处理和形态变换处理等并非是全部必须的处理步骤,这些步骤属于可选项。可选地,如果输入特征图数据已经为整型数据,这时候可以不需要量化处理,只需要经过填补和形态变换等相关处理即可;或者,如果未经填补的数组尺寸已经满足视频编码器输入尺寸要求,那么也可以不需要填补处理,这里不作任何限定。
S203:对所述多个特征子图进行重排序处理,得到类时域序列以及对应的重排序信息。
需要说明的是,在得到多个特征子图之后,该方法还可以包括:将所述多个特征子图的初始排序方式设置为按照通道序号顺序进行排列。
这样,由于初始排序方式没有考虑特征子图之间的相关性,需要对这多个特征子图进行重排序处理。具体地,在一些实施例中,所述对所述多个特征子图进行重排序处理,得到类时域序列,可以包括:
从所述多个特征子图中确定目标特征子图,并将所述目标特征子图设置为至少一个序列中每一序列的第零位元素;
确定第i+1剩余特征子图集合;其中,所述第i+1剩余特征子图集合包括除所述至少一个序列中每一序列已经设置在前i位的特征子图之外的剩余特征子图,i为大于或等于0的整数;
当所述第i+1剩余特征子图集合为非空时,计算所述第i+1剩余特征子图集合中每一特征子图与每一序列设置在第i位的特征子图之间的距离值,根据计算得到的多个距离值确定至少一个特征子图,并将所确定的至少一个特征子图对应设置为所述至少一个序列中每一序列的第i+1位元素;
对i执行i+1的操作后,返回所述确定第i+1剩余特征子图集合的步骤,直至所述第i+1剩余特征子图集合为空;
在得到特征子图形态的所述至少一个序列后,对所述至少一个序列进行形态变换,得到所述类时域序列。
需要说明的是,当i等于0时,所述将所确定的至少一个特征子图对应设置为所述至少一个序列中每一序列的第i+1位元素,可以包括:
确定第一剩余特征子图集合,所述第一剩余特征子图集合包括除所述目标特征子图之外的剩余特征子图;
计算所述第一剩余特征子图集合中每一特征子图与所述目标特征子图之间的距离值,根据计算得到的多个距离值确定至少一个特征子图,并将所确定的至少一个特征子图对应设置为所述至少一个序列中 每一序列的第一位元素。
当i等于1时,所述将所确定的至少一个特征子图对应设置为所述至少一个序列中每一序列的第i+1位元素,可以包括:
确定第二剩余特征子图集合,所述第二剩余特征子图集合包括除所述目标特征子图和每一序列已经设置在第1位的特征子图之外的剩余特征子图;
计算所述第二剩余特征子图集合中每一特征子图与每一序列设置在第1位的特征子图之间的距离值,根据计算得到的多个距离值确定至少一个特征子图,并将所确定的至少一个特征子图对应设置为所述至少一个序列中每一序列的第二位元素。
这样,继续对i执行i+1的操作后,重复上述的步骤,直至第i+1剩余特征子图集合为空。需要注意的是,这至少一个序列中每一序列内的特征子图数量可以相同,也可以不相同,本申请实施例对此不作具体限定。
还需要说明的是,针对计算所述第i+1剩余特征子图集合中每一特征子图与每一序列设置在第i位的特征子图之间的距离值,这里计算的距离值可以是L1距离,也可以是L2距离,甚至还可以是其他距离。其中,L1距离的计算公式如式(4)所示,L2距离的计算公式如式(5)所示。
Figure PCTCN2020119853-appb-000008
Figure PCTCN2020119853-appb-000009
这里,I 1,I 2表示p维向量,例如I 1=[0,1],I 2=[1,0],这时候p=2,计算得到的d 1(I 1,I 2)=2,
Figure PCTCN2020119853-appb-000010
以二维空间为例,L1距离表示第一维差的绝对值加上第二维差的绝对值,可以想象为直角三角形的两条直角边的长度和;L2距离表示第一维差的平方加上第二维差的平方再求和,然后对和值开根号,根据勾股定理可以想象为直角三角形的斜边长。
另外,所述根据计算得到的多个距离值确定至少一个特征子图,可以包括:根据最小值选取策略,从计算得到的多个距离值中选取至少一个距离值;根据所选取的至少一个距离值,确定所述至少一个特征子图。
也就是说,对于i等于0,选取与目标特征子图之间的距离最近的至少一个特征子图,将其作为每一序列的第一位元素;对于i等于1,选取与每一序列设置在第一位的特征子图之间的距离最近的至少一个特征子图,将其作为每一序列的第二位元素;然后对i执行i+1的操作后,重复上述的步骤,直至第i+1剩余特征子图集合为空。
这时候,在得到这至少一个序列之后,由于这至少一个序列位特征子图形态,需要对其进行形态变换,将其由特征子图形态转化为YUV形态,以得到类时域序列。这里,YUV形态是指利用YUV格式进行描述,故类时域序列也可称为YUV序列。
进一步地,对于目标特征子图来说,目标特征子图可以是中心点特征子图。在一些实施例中,所述从所述多个特征子图中确定目标特征子图,可以包括:
对所述多个特征子图进行聚类,得到至少一个类别;
确定所述至少一个类别各自的中心点,得到至少一个中心点;
根据所述至少一个中心点,从所述多个特征子图中确定中心点特征子图;其中,所述中心点特征子图表示所述多个特征子图中与所述至少一个中心点的中心点之间的距离值最小的特征子图;
将所述中心点特征子图确定为所述目标特征子图。
也就是说,在得到多个特征子图之后,可以对这多个特征子图进行聚类,得到至少一个类别,并确定出每一类别的中心点,然后选取距离这至少一个中心点的中心点距离最近的特征子图,将其作为中心点特征子图,即本申请实施例的目标特征子图。
示例性地,如图3所示,其示出了本申请实施例提供的一种重排序结果表现的结构示意图。在图3中,目标特征子图为中心点特征子图,且总共有l个序列。这里,这l个序列共享同一个中心点特征子图,即这l个序列的第零位均设置为该中心点特征子图。假定总共有C个特征子图,那么从剩下的C-1个特征子图中,计算与中心点特征子图的距离值,然后选取最近的l张特征子图排列在中心点特征子图之后,作为每一个序列的第一位;然后再从剩下的C-1-l个特征子图中,计算与每一个序列中排列在第一位的特征子图的距离值,选取最近的l张特征子图排列在每一序列的第二位;重复上一操作,直至这C个特征子图全部重排序完成(这l个序列中每一个序列的特征子图数量可以不相同),所得到的重排序结果即图3所示。
还需要说明的是,在对多个特征子图进行重排序处理之后,还可以得到类时域序列对应的重排序信息,即记录重排序后每个序列的特征子图所对应的通道序号,以便传输到解码器用于后处理的恢复。在一些实施例中,该方法还可以包括:
设置至少一个列表;其中,每一个列表用于存储所述至少一个序列中每一序列内所放置的特征子图对应的通道序号;
根据所述至少一个列表,得到所述重排序信息。
也就是说,重排序信息可以包括至少一个列表,即重排序信息可以使用列表的形式进行存储信息,如下式所示。
List 1[c]=X………………………………………………………………..(6)
这里,X表示第l序列重排序后排列在第c位的特征子图在排序前对应的通道序号;List l[]表示第l序列的重排序信息列表。
针对这至少一个列表,每一个列表内不仅记录了至少两个特征子图对应的通道序号,还记录两在该序列中的编号。另外,同一序列中的特征子图之间可以相互参考,而不同序列中的特征子图之间不能相互参考。如此,可以将内容相似的特征子图的重排序信息描述在一个序列内,内容差别大的特征子图的重排序信息描述在不同的序列中,从而确保相似特征子图之间的参考而避免差别大的特征子图之间的参考,可以使得在编码时,特征子图之间会进行相互参考以利用帧间预测提升编码效率的目的。
S204:对所述类时域序列以及所述重排序信息进行编码,生成码流。
需要说明的是,在得到类时域序列和重排序信息后,可以对类时域序列和重排序信息进行编码,生成码流。这里,类时域序列可以用YUV形态表示,即类时域序列也可称为类时域的YUV序列,而且类时域序列可包括至少一个序列,且每一序列内的特征子图之间具有参考关系;而重排序信息用于指示所述类时域序列中特征子图之间的参考关系。
还需要说明的是,编码器需要编码的信息,除了类时域序列以及重排序信息之外,还需要将输入特征图数据的张量形态写入码流中。因此,在一些实施例中,该方法还可以包括:
将所述输入特征图数据的张量形态写入所述码流中;其中,所述张量形态包括通道数量和特征张量尺寸,所述特征张量尺寸包括特征张量的高度和宽度。
这里,张量形态即特征张量形状,用(C,W,H)表示。其中,C为通道数量,W为特征张量的宽度,H为特征张量的高度,这里的W和H即为特征张量尺寸。
进一步地,重排序信息还可以记录在补充增强信息中。其中,补充增强信息可以是VVC、HEVC中的补充增强信息(Supplemental Enhancement Information,SEI),或者AVS标准的扩展数据(Extension Data)。因此,在一些实施例中,该方法还可以包括:
确定补充增强信息;其中,所述补充增强信息用于记录所述重排序信息;
将所述补充增强信息写入所述码流中。
示例性地,在AVC/HEVC/VVC/EVC的sei_rbsp(.)中的sei_message(.)的sei_payload(.)。更具体地,如表1和表2中所增加一种新的SEI类别,即feature_map_reorder_indication(.)的SEI message。针对新的SEI类别,payloadType可以定义为任意其他SEI没有使用过的编号,例如183,此时的语法结构如表1所示,而表2则示出了重排序信息的具体语法元素描述。
表1
Figure PCTCN2020119853-appb-000011
表2
Figure PCTCN2020119853-appb-000012
其中,语法元素的语义为:
(1)order_key_feature_channel_minus1:用于描述中心点特征子图的通道序号为order_key_feature_channel_minus1+1;
(2)num_lists_of_key_feature_channel_minus1:用于描述中心点特征子图对应的序列总数为num_lists_of_key_feature_channel_minus1+1;
(3)num_channels_of_list_minus1[i]:用于描述第i个序列中特征子图的数量为num_channels_of_list_minus1[i]+1;
(4)order_non_key_feature_channel_minus1[i][j]:用于描述第i个序列中第j个特征子图的通道序号为order_non_key_feature_channel_minus1[i][j]+1。
除此之外,编码器需要编码的信息,还可能包括有:输入网络的图像尺寸,用image size表示;以及输入网络的图像原网络处理后尺寸,用image processed_size表示,以便后端网络提取图像的目标框。
本实施例提供了一种编码方法,通过确定输入特征图数据;对所述输入特征图数据进行相关处理,得到多个特征子图;对所述多个特征子图进行重排序处理,得到类时域序列以及对应的重排序信息;对所述类时域序列以及所述重排序信息进行编码,生成码流。这样,将多个特征子图进行重排序,充分利用了特征子图之间的相关性信息,可以优化特征子图之间的参考关系,从而不仅提升了特征图数据的压缩效率,同时还提高了特征图数据的编码效率。
本申请的另一实施例中,本申请实施例提供的解码方法应用于视频解码设备,即解码器。该方法所实现的功能可以通过解码器中的第二处理器调用计算机程序来实现,当然计算机程序可以保存在第二存储器中,可见,该解码器至少包括第二处理器和第二存储器。
参见图4,其示出了本申请实施例提供的一种解码方法的流程示意图。如图4所示,该方法可以包括:
S401:解析码流,获取类时域序列以及重排序信息。
需要说明的是,该解码方法可以适用于H.265/HEVC标准的解码器,也可以适用于H.266/VVC标准的解码器,甚至还可以适用于其他标准的解码器,比如适用于AVS标准的解码器、EVC标准的解码器等,本申请实施例不作具体限定。
还需要说明的是,对于类时域序列来说,可以通过解析码流,直接获取得到。这里,类时域序列可以用YUV形态表示,即类时域序列也可称为类时域的YUV序列,而且类时域序列可包括至少一个序列,且每一序列内的特征子图之间具有参考关系;而重排序信息用于指示所述类时域序列中特征子图之间的参考关系。
对于重排序信息来说,也可以通过解析码流,直接获取得到。但是如果重排序信息记录在补充增强信息中,那么在一些实施例中,所述解析码流,获取重排序信息,可以包括:
解析码流,获取补充增强信息;
从所述补充增强信息中,获取所述重排序信息。
也就是说,补充增强信息中记录有重排序信息。这样,通过解析码流,获得补充增强信息后,可以从补充增强信息中得到重排序信息。
这里,重排序信息可以包括至少一个列表,且每一个列表内存储有至少一个序列中每一序列内所放置的特征子图对应的通道序号。这至少一个列表的作用在于用于指导每一序列在被进行编解码时特征子图之间的参考关系建立。具体地,同一个序列中的特征子图可以相互参考,而不同序列中的特征子图不能相互参考。
S402:根据所述重排序信息对所述类时域序列进行反重排序处理,得到多个特征子图。
需要说明的是,在得到类时域序列和重排序信息之后,可以根据重排序信息对类时域序列进行反重排序处理,以得到多个特征子图,且这多个特征子图按照初始排序方式进行排列。
具体地,在一些实施例中,所述根据所述重排序信息对所述类时域序列进行反重排序处理,得到多个特征子图,可以包括:
对所述类时域序列进行形态变换,得到特征子图形态的至少一个序列;
根据所述重排序信息对所述至少一个序列进行反重排序处理,得到所述多个特征子图。
需要说明的是,类时域序列用YUV形态表示,这时候需要将其转化为特征子图形态,从而得到特征子图形态的至少一个序列;其中,每一个序列内包含有至少两个特征子图。然后根据重排序信息对这至少一个序列进行反重排序处理,可以得到多个特征子图,且这多个特征子图是按照初始排序方式排列。
还需要说明的是,初始排序方式是指按照通道序号顺序进行排列。由于重排序信息可以包括至少一个列表,且每一个列表内存储有至少一个序列中每一序列内所放置的特征子图对应的通道序号;因此, 在一些实施例中,所述根据所述重排序信息对所述至少一个序列进行反重排序处理,得到所述多个特征子图,可以包括:
根据所述至少一个列表中每一列表内存储的特征子图对应的通道序号,将所述至少一个序列中所包含的特征子图重排序到所述通道序号对应的通道位置,得到按照通道序号顺序排列的所述多个特征子图。
也就是说,将解码后的YUV序列转化回特征子图形态,然后使用重排序信息(即List l[]),反重排序回原来的通道顺序,具体操作为:将第l序列内第c位的特征子图重排序到List l[c]原特征子图的通道位置,可以得到按照通道序号顺序排列的多个特征子图。
S403:对所述多个特征子图进行相关处理,得到重建特征图数据。
需要说明的是,在得到多个特征子图之后,可以对这多个特征子图进行相关处理。其中,相关处理可以包括有反量化处理、截取处理和形态变换处理等。具体地,在一些实施例中,所述对所述多个特征子图进行相关处理,得到重建特征图数据,可以包括:
对所述多个特征子图分别由特征子图形态向数组形态进行变换,得到多个第三特征数据;其中,每一通道对应一个第三特征数据,且所述第三特征数据为数组形态;
对所述多个第三特征数据分别进行截取,得到多个第二特征数据;
对所述多个第二特征数据分别进行反量化,得到多个第一特征数据;
对所述多个第一特征数据分别由数组形态向张量形态进行变换,得到多个特征张量数据;
根据所述多个特征张量数据,得到所述重建特征图数据。
需要说明的是,由于特征子图为特征子图形态,这时候需要先将其从特征子图形态转化为数组形态,可以得到多个第三特征数据;其中,每一通道对应一个第三特征数据。
还需要说明的是,对于这多个第三特征数据,首先对每一通道对应的第三特征数据进行反量化截取,得到每一通道对应的第二特征数据;然后对每一通道对应的第二特征数据进行反量化,得到每一通道对应的第一特征数据;再对每一通道对应的第一特征数据由数组形态向张量形态进行变换,得到每一通道对应的特征张量数据,以得到多个通道对应的多个特征张量数据;根据所述多个通道对应的多个特征张量数据,可以得到重建特征图数据。也就是说,在得到每一通道对应的特征张量数据后,由于存在有多个通道,根据这多个第三特征数据即可得到多个通道对应的多个特征张量数据,进而可以重构出所述重建特征图数据。还需要注意的是,这里不仅第三特征数据为数组形态,而且第二特征数据和第一特征数据也均为数组形态。
在一些实施例中,该方法还可以包括:
解析所述码流,获取张量形态;其中,所述张量形态包括通道数量和特征张量尺寸,所述特征张量尺寸包括特征张量的高度和宽度。
需要说明的是,由于在编码器中,将张量形态作为编码信息写入码流;那么在解码器,就可以通过解析码流以获得张量形态,用(C,W,H)表示。其中,C为通道数量,W为特征张量的宽度,H为特征张量的高度,这里的W和H即为特征张量尺寸。
进一步地,所述对所述多个第三特征数据分别进行截取,得到多个第二特征数据,可以包括:
从每一通道对应的第三特征数据中截取预设位置处的所述特征张量尺寸的数组数据,将所截取的数组数据确定为每一通道对应的第二特征数据,以得到所述多个第二特征数据。
需要说明的是,特征张量尺寸(H,W)可以是通过解析码流得到的,预设位置可以位于第二特征数据的左上角。也就是说,在形态转换之后,可以得到第三特征数据对应的数组尺寸为
Figure PCTCN2020119853-appb-000013
然后从
Figure PCTCN2020119853-appb-000014
中截取左上角处特征张量尺寸(H,W)的数组数据,将所截取的数组数据作为每一通道对应的第二特征数据,以得到所述多个第二特征数据。
进一步地,在一些实施例中,所述对所述多个第二特征数据分别进行反量化,得到多个第一特征数据,可以包括:
解析所述码流,获取每一通道对应的所述最小值和所述最大值;
根据每一通道对应的第二特征数据以及所述最小值和所述最大值,利用第三计算模型确定每一通道对应的第一特征数据,以得到所述多个第一特征数据。
需要说明的是,对于反量化来说,在一种具体示例中,通过解析码流可以得到每一通道对应的最小值(用x min表示)和最大值(用x max表示)。这样,读取每一通道对应的第二特征数据并进行反量化,这时候的反量化公式(即第三计算模型)如下,
Figure PCTCN2020119853-appb-000015
这里,x ij表示未经量化的第一特征数据对应的数组(H,W)中的第i行、第j列的数据,x min表示未经量化的第一特征数据对应的数组(H,W)中的最小值,x max表示未经量化的第一特征数据对应的数组 (H,W)中的最大值,
Figure PCTCN2020119853-appb-000016
表示量化后的第二特征数据对应的数组(H,W)中的第i行、第j列的数据,n表示比特数。
在另一种具体示例中,这时候可以采用浮点化公式。反量化的作用即是将定点数据转化为浮点数据。这时候的反量化公式可以用浮点化公式替代,该浮点化公式如下,
Figure PCTCN2020119853-appb-000017
其中,x ij表示未经量化的第一特征数据对应的数组(H,W)中的第i行、第j列的数据,
Figure PCTCN2020119853-appb-000018
表示量化后的第二特征数据对应的数组(H,W)中的第i行、第j列的数据,即
Figure PCTCN2020119853-appb-000019
和x ij为定点化后的数据和浮点化恢复后的原始数据,float(·)将输入的整型数据转化为浮点型数据,BitDepth表示定点化比特数,x max表示未经量化的第一特征数据对应的数组(H,W)中的最大值,这里,x max是通过解析码流得到的。
也就是说,在形态转换之后,可以针对第三特征数据进行截取和反量化处理,将所得到的数组形态的第一特征数据转化为张量形态,以得到每一通道对应的特征张量数据。需要注意的是,在执行过程中,可以是先截取再反量化处理,也可以是先反量化再截取处理,本申请实施例是以先截取再反量化处理为例进行描述,但是对该执行顺序并不作具体限定。
进一步地,所述根据所述多个特征张量数据,得到所述重建特征图数据,可以包括:
根据所述张量形态对所述多个特征张量数据进行通道合并,得到所述重建特征图数据。
也就是说,将所得到的多个特征张量数据(H,W),按照对应通道合并成最终所需的张量形态,其形状为(C,H,W),即该张量形态即为所重构出的重建特征图数据。
除此之外,如果编码器所编码的信息,还包括有:输入网络的图像尺寸,用image size表示;以及输入网络的图像原网络处理后尺寸,用image processed_sixe表示。这时候,在解码器中,对于目标框检测的网络而言,还需要通过解析码流,获取image size和image processed_size,然后将image size和image processed_size输入到后续的网络中,以供后端网络提取图像的目标框。
简言之,在本申请实施例中,从码流中解析得到包含至少一个列表的重排序信息,所述重排序信息记录了特征子图在特征图数据中的通道序号,这至少一个列表共享一个中心特征子图,每个列表中,除了中心点特征子图的通道序号之外,还记录了至少一个特征子图的通道序号。这至少一个列表的作用在于用于指导至少一个序列在被进行编解码时特征子图之间的参考关系建立。具体的,同一个序列中的特征子图可以相互参考,而不同序列中的特征子图不能相互参考。中心点特征子图作为这至少一个列表共享的特征子图,只能被其他特征子图参考,而不能参考其他特征子图。这样,根据特征子图的重排序信息和解码得到的类时域序列,将特征子图进行反重排序得到重建特征图数据,该重建特征图数据中包含所有通道的特征数据。
本实施例提供了一种解码方法,通过解析码流,获取类时域序列以及重排序信息;根据所述重排序信息对所述类时域序列进行反重排序处理,得到多个特征子图;对所述多个特征子图进行相关处理,得到重建特征图数据。这样,在编码器将多个特征子图进行重排序,然后在解码器渐进性反重排序处理,由于充分利用了特征子图之间的相关性信息,可以优化特征子图之间的参考关系,从而不仅提升了特征图数据的压缩效率,同时还提高了特征图数据的解码效率。
本申请的又一实施例中,参见图5,其示出了本申请实施例提供的一种类时域特征编解码过程的详细流程示意图。如图5所示,该详细流程可以包括:
S501:对输入特征图数据进行预处理,得到类时域序列以及对应的重排序信息;
S502:对类时域序列以及重排序信息进行编码,生成码流;
S503:解析所述码流,获取类时域序列以及重排序信息;
S504:根据所述重排序信息对所述类时域序列进行后处理,得到重建特征图数据。
这里,S501和S502是由编码器执行,在生成码流后,该码流将由编码器传输到解码器。然后解码器接收到码流后,解码器可以执行S503和S504,以得到重建特征图数据。
可以理解地,本申请实施例提出一种类时域的特征编码技术。这里,特征具体是指图像或视频输入预设神经网络模型后网络中间层输出的特征数据。对于一幅宽度为W1、高度为H1的图像来说,其对应的特征数据尺寸可以表示为张量形态(C,H,W),其中,通道数量为C、特征张量尺寸的高度为H、特征张量尺寸的宽度为W。
需要说明的是,类时域的特征编码技术的基本思路如图6所示,其示出了本申请实施例提供的一种类时域特征编解码框架的结构示意图。在图6中,该编解码框架可以包括输入特征图数据601、类时域序列602、码流603、重建的类时域序列604和重建特征图数据605。其中,输入特征图数据601包括有多个通道的特征数据,类时域序列602和重建的类时域序列604均为YUV序列。基于图6所示的编 解码框架,具体可以包括以下操作:
(1)预处理:将输入特征图数据601进行预处理后,得到类时域序列602;
(2)编码:将类时域序列602以及其预处理的重排序信息进行编码后,得到码流603。
(3)解码:从接收到的码流中,解析得到重建的类时域序列604;
(4)后处理:根据其解析得到重建的重排序信息,对所述重建的类时域序列604进行后处理后,得到重建特征图数据605;其中,重建特征图数据605用于后续网络以进行智能任务处理。
更具体的,以上的操作还可以进一步细分,下面将针对每一操作进行详细描述。
(1)预处理(Preprocess),图7示出了本申请实施例提供的一种预处理操作框架的结构示意图。如图7所示,该预处理操作框架可以包括输入特征图数据701、第一特征数据702、第二特征数据703、第三特征数据704、多个特征子图705和类时域序列706。其中,针对输入特征图数据701,可以通过形态变换为数组形态,得到第一特征数据702;然后对第一特征数据702进行量化,可以得到第二特征数据703;再对第二特征数据703进行填补,可以得到第三特征数据704;对第三特征数据704由数组形态变换为特征子图形态,可以得到多个特征子图705;然后对这多个特征子图705进行重排序,可以得到类时域序列706,即YUV序列。
具体来说,将每个通道(C)量化后的数组(H,W),在数组的右边和底部进行重复边界值的方式进行填补,其填补公式如上述式(3)所示;然后将每个通道量化填补后的数组转化为特征子图形态;再将每个通道的特征子图进行聚类重排序(如图3所示),将重排序后的特征子图合成为类时域的YUV序列。
除了重排序操作之外,在一些情况下,预处理还可以包括:将张量形态的特征变换为数组形态和将特征数据进行量化等操作,量化的具体操作详见前述内容,这里不再赘述。
(2)编码。编码器所需要编码的信息可以包括类时域的YUV序列和其他至少包括的额外数据。其中,其他至少包括的额外数据可以是特征张量形态,用(C,H,W)表示;还可以是重排序信息(例如使用列表形式进行存储信息),用List l[c]=X表示。
除此之外,其他还可能包括的信息为:输入网络的图像尺寸,用image size表示;以及输入网络的图像原网络处理后尺寸,用image processed_size表示;以及特征张量每个通道对应的最大值和最小值,用x min和x max表示。
(3)解码。解码器所需要解码的信息可以包括重建的类时域的YUV序列和其他至少包括的解码信息。其中,其他至少包括的解码信息可以是特征张量形态,用(C,H,W)表示;还可以是重排序信息(例如使用列表形式进行存储信息),用List l[c]=X表示。
在一种可能的实现方式中,所述重排序信息还可以记录在补充增强信息中,比如HEVC、VVC的SEI或AVS标准的extension data。示例性地,在AVC/HEVC/VVC/EVC的sei_rbsp(.)中的sei_message(.)的sei_payload(.)。更具体地,如上述的表1和表2中所增加一种新的SEI类别,即feature_map_reorder_indication(.)的SEI message。其中,表1和表2分别提供了语法结构以及语法元素的具体描述,这里不再赘述。
除此之外,解析码流后,其他还可能包括的信息为:输入网络的图像尺寸,用image size表示;以及输入网络的图像原网络处理后尺寸,用image processed_size表示;以及特征张量每个通道对应的最大值和最小值,用x min和x max表示。
(4)后处理(Postprocess),图8示出了本申请实施例提供的一种后处理操作框架的结构示意图。如图8所示,该后处理操作框架可以包括重建的类时域序列801、重排序的特征子图802、初始排序方式的特征子图803、第三特征数据804、第二特征数据805、第一特征数据806和重建特征图数据807。其中,重建的类时域序列801为YUV序列,首先将重建的类时域序列801转化为特征子图形态,得到重排序的特征子图802;对重排序的特征子图802进行反重排序处理,可以得到初始排序方式的特征子图803,即按照通道顺序进行排列的多个特征子图;然后在对其进行形态变换,得到数组形态的第三特征数据804;再对第三特征数据804进行截取处理,得到截取后的第二特征数据805,然后再对其进行反量化处理,可以得到未经量化的第一特征数据806;针对第一特征数据806由数组形态转化为张量形态,并合并成最终的重建特征图数据807,其张量形态表示为(C,H,W)。
具体来说,将解码后的YUV序列转化回特征子图形态,将特征子图使用重排序信息(List l[]),反重排序回原来的通道顺序,即将第l序列第c位的特征子图重排序到List l[c]原特征子图的通道位置;然后再以数组形态读取反重排序后的第c位的特征子图;对读取的数组进行截取,比如截取左上角原特征张量尺寸(H,W)的数组数据;再对截取后的数组进行反量化;然后再将对反量化后的数组转化回第c通道的特征张量(H,W),并将多个通道的特征张量(H,W),按照对应通道合并成最终的特征张量,以得到最终的重建特征图数据,其张量形态为(C,H,W)。或者,也可以是先执行反量化再执行截取的 操作,即再以数组形态读取反重排序后的第c位的特征子图后,先对读取的数组进行反量化;再将反量化的数组
Figure PCTCN2020119853-appb-000020
截取左上角原特征张量尺寸(H,W)的数组数据,然后再将截取的数组转化回第c通道的特征张量(H,W),按照对应通道合并成最终的特征张量,以得到最终的重建特征图数据。
最后,对于目标检测的网络而言,还需将码流中解码得到的信息image size,image processed_size输入到后续的网络中,以供后端网络提取图像的目标框。
基于此,本申请实施例的核心思想在于:将多通道的特征数据中所有通道的特征子图重排序为类时域的特征序列,以使用视频编解码方法进行压缩处理;而且为了在解码之后能够恢复出重排序前多通道的特征数据,还需要在码流中记录重排序信息。另外,由于在编解码的过程中,特征子图之间会进行相互参考以利用帧间预测提升压缩效率,因此,可以优化特征子图之间的参考关系使得压缩效率最优。这时候,可以根据重排序信息来指导并约束参考关系的构建。具体的,重排序信息可以包含多个列表,每一个列表记录了至少两个特征子图在至少一个序列中的编号以及其原始的通道序号(用于进行重排序恢复),同一序列中的特征子图之间可以相互参考,而不同序列中的特征子图之间不能相互参考。如此,可以将内容相似的特征子图的重排序信息描述在一个序列内,内容差别大的特征子图的重排序信息描述在不同的序列中,从而确保相似特征子图之间的参考而避免差别大的特征子图之间的参考,可以提升编码效率。
具体的,在本申请实施例中,可以从码流中解码得到特征子图的至少一个序列,这至少一个序列中每一帧图像为特征数据的至少一个通道的数据,即特征子图。另外,从码流中解码得到包含多个列表的重排序信息,所述重排序信息记录了特征子图在输入特征图数据中的通道序号,这多个列表共享一个中心点特征子图,每一个列表中,除了该中心点特征子图的通道序号之外,还记录了至少一个特征子图的通道序号。这多个列表的作用在于用于指导至少一个序列在被进行编解码时特征子图之间的参考关系建立,具体的,同一个序列中的特征子图可以相互参考,而不同序列中的特征子图不能相互参考。中心点特征子图作为多个列表共享的特征子图,只能被其他特征子图参考,而不能参考其他特征子图。从而根据特征子图的重排序信息和解码得到的类时域序列,将特征子图进行反重排序得到重建特征图数据,该重建特征图数据中包含所有通道的特征数据。
通过上述实施例,对前述实施例的具体实现进行了详细阐述,从中可以看出,通过前述实施例的技术方案,将多个特征子图进行重排序,充分利用了特征子图之间的相关性信息,从而使得帧间编码能够提高编码效率,同时还实现了特征图数据的压缩。
基于前述实施例相同的发明构思,参见图9,其示出了本申请实施例提供的一种编码器90的组成结构示意图。如图9所示,编码器90可以包括:第一确定单元901、第一处理单元902、重排序单元903和编码单元904;其中,
第一确定单元901,配置为确定输入特征图数据;
第一处理单元902,配置为对所述输入特征图数据进行相关处理,得到多个特征子图;
重排序单元903,配置为对所述多个特征子图进行重排序处理,得到类时域序列以及对应的重排序信息;
编码单元904,配置为对所述类时域序列以及所述重排序信息进行编码,生成码流。
在一些实施例中,第一确定单元901,具体配置为获取待处理图像;以及通过预设神经网络模型对所述待处理图像进行特征提取,得到所述输入特征图数据;其中,所述输入特征图数据包括多个通道的特征数据。
在一些实施例中,第一处理单元902,还配置为当所述输入特征图数据为张量形态时,对所述输入特征图数据中多个通道的特征数据分别进行形态变换,得到多个第一特征数据;其中,每一通道对应一个第一特征数据,且所述第一特征数据为数组形态;
第一确定单元901,还配置为将所述多个第一特征数据确定为所述输入特征图数据。
在一些实施例中,第一处理单元902,还配置为对所述多个第一特征数据分别进行量化,得到多个第二特征数据;以及对所述多个第二特征数据分别进行填补,得到多个第三特征数据;以及对所述多个第三特征数据分别进行形态变换,得到所述多个特征子图。
进一步地,第一处理单元902,具体配置为基于所述多个第一特征数据,从每一通道对应的第一特征数据中选择最小值和最大值;以及根据每一通道对应的第一特征数据以及所述最小值和所述最大值,利用第一计算模型确定每一通道对应的第二特征数据,以得到所述多个第二特征数据。
进一步地,第一处理单元902,具体配置为基于所述多个第二特征数据,利用第二计算模型对每一通道对应的第二特征数据进行填补,确定每一通道对应的第三特征数据,以得到所述多个第三特征数据。
进一步地,第一处理单元902,具体配置为基于所述多个第三特征数据,对每一通道对应的第三特 征数据由数组形态向特征子图形态进行变换,确定每一通道对应的特征子图,以得到所述多个特征子图。
在一些实施例中,编码单元904,还配置为将每一通道对应的所述最小值和所述最大值写入所述码流中。
在一些实施例中,参见图9,编码器90还可以包括设置单元905,配置为将所述多个特征子图的初始排序方式设置为按照通道序号顺序进行排列。
在一些实施例中,重排序单元903,具体配置为从所述多个特征子图中确定目标特征子图,并将所述目标特征子图设置为至少一个序列中每一序列的第零位元素;以及确定第i+1剩余特征子图集合;其中,所述第i+1剩余特征子图集合包括除所述至少一个序列中每一序列已经设置在前i位的特征子图之外的剩余特征子图,i为大于或等于0的整数;以及当所述第i+1剩余特征子图集合为非空时,计算所述第i+1剩余特征子图集合中每一特征子图与每一序列设置在第i位的特征子图之间的距离值,根据计算得到的多个距离值确定至少一个特征子图,并将所确定的至少一个特征子图对应设置为所述至少一个序列中每一序列的第i+1位元素;以及对i执行i+1的操作后,返回所述确定第i+1剩余特征子图集合的步骤,直至所述第i+1剩余特征子图集合为空;以及在得到特征子图形态的所述至少一个序列后,对所述至少一个序列进行形态变换,得到所述类时域序列。
进一步地,当i等于0时,重排序单元903,具体配置为确定第一剩余特征子图集合,所述第一剩余特征子图集合包括除所述目标特征子图之外的剩余特征子图;以及计算所述第一剩余特征子图集合中每一特征子图与所述目标特征子图之间的距离值,根据计算得到的多个距离值确定至少一个特征子图,并将所确定的至少一个特征子图对应设置为所述至少一个序列中每一序列的第一位元素。
在一些实施例中,第一确定单元901,还配置为对所述多个特征子图进行聚类,得到至少一个类别;以及确定所述至少一个类别各自的中心点,得到至少一个中心点;以及根据所述至少一个中心点,从所述多个特征子图中确定中心点特征子图;其中,所述中心点特征子图表示所述多个特征子图中与所述至少一个中心点的中心点之间的距离值最小的特征子图;以及将所述中心点特征子图确定为所述目标特征子图。
在一些实施例中,设置单元905,还配置为设置至少一个列表;其中,每一个列表用于存储所述至少一个序列中每一序列内所放置的特征子图对应的通道序号;以及根据所述至少一个列表,得到所述重排序信息。
在一些实施例中,第一确定单元901,还配置为确定补充增强信息;其中,所述补充增强信息用于记录所述重排序信息;
编码单元904,还配置为将所述补充增强信息写入所述码流中。
在一些实施例中,编码单元904,还配置为将所述输入特征图数据的张量形态写入所述码流中;其中,所述张量形态包括通道数量和特征张量尺寸,所述特征张量尺寸包括特征张量的高度和宽度。
可以理解地,在本申请实施例中,“单元”可以是部分电路、部分处理器、部分程序或软件等等,当然也可以是模块,还可以是非模块化的。而且在本实施例中的各组成部分可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或processor(处理器)执行本实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
因此,本申请实施例提供了一种计算机存储介质,应用于编码器90,该计算机存储介质存储有计算机程序,所述计算机程序被第一处理器执行时实现前述实施例中任一项所述的方法。
基于上述编码器90的组成以及计算机存储介质,参见图10,其示出了本申请实施例提供的编码器90的硬件结构示意图。如图10所示,可以包括:第一通信接口1001、第一存储器1002和第一处理器1003;各个组件通过第一总线系统1004耦合在一起。可理解,第一总线系统1004用于实现这些组件之间的连接通信。第一总线系统1004除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图10中将各种总线都标为第一总线系统1004。其中,
第一通信接口1001,用于在与其他外部网元之间进行收发信息过程中,信号的接收和发送;
第一存储器1002,用于存储能够在第一处理器1003上运行的计算机程序;
第一处理器1003,用于在运行所述计算机程序时,执行:
确定输入特征图数据;
对所述输入特征图数据进行相关处理,得到多个特征子图;
对所述多个特征子图进行重排序处理,得到类时域序列以及对应的重排序信息;
对所述类时域序列以及所述重排序信息进行编码,生成码流。
可以理解,本申请实施例中的第一存储器1002可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(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,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DRRAM)。本申请描述的系统和方法的第一存储器1002旨在包括但不限于这些和任意其它适合类型的存储器。
而第一处理器1003可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过第一处理器1003中的硬件的集成逻辑电路或者软件形式的指令完成。上述的第一处理器1003可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于第一存储器1002,第一处理器1003读取第一存储器1002中的信息,结合其硬件完成上述方法的步骤。
可以理解的是,本申请描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(Application Specific Integrated Circuits,ASIC)、数字信号处理器(Digital Signal Processing,DSP)、数字信号处理设备(DSP Device,DSPD)、可编程逻辑设备(Programmable Logic Device,PLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。对于软件实现,可通过执行本申请所述功能的模块(例如过程、函数等)来实现本申请所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
可选地,作为另一个实施例,第一处理器1003还配置为在运行所述计算机程序时,执行前述实施例中任一项所述的方法。
本实施例提供了一种编码器,该编码器可以包括第一确定单元、第一处理单元、重排序单元和编码单元;其中,第一确定单元配置为确定输入特征图数据;第一处理单元配置为对所述输入特征图数据进行相关处理,得到多个特征子图;重排序单元配置为对所述多个特征子图进行重排序处理,得到类时域序列以及对应的重排序信息;编码单元配置为对所述类时域序列以及所述重排序信息进行编码,生成码流。这样,通过将特征子图进行重排序,充分利用了特征子图之间的相关性信息,从而能够提高编码效率,同时还实现了特征图数据的压缩。
基于前述实施例相同的发明构思,参见图11,其示出了本申请实施例提供的一种解码器110的组成结构示意图。如图11所示,解码器110可以包括:解析单元1101、反重排序单元1102和第二处理单元1103;其中,
解析单元1101,配置为解析码流,获取类时域序列以及重排序信息;
反重排序单元1102,配置为根据所述重排序信息对所述类时域序列进行反重排序处理,得到多个特征子图;
第二处理单元1103,配置为对所述多个特征子图进行相关处理,得到重建特征图数据。
在一些实施例中,解析单元1101,还配置为解析码流,获取补充增强信息;以及从所述补充增强信息中,获取所述重排序信息。
在一些实施例中,反重排序单元1102,具体配置为对所述类时域序列进行形态变换,得到特征子图形态的至少一个序列;以及根据所述重排序信息对所述至少一个序列进行反重排序处理,得到所述多 个特征子图。
在一些实施例中,所述重排序信息包括至少一个列表,且每一个列表内存储所述至少一个序列中每一序列内所放置的特征子图对应的通道序号。
进一步地,反重排序单元1102,具体配置为根据所述至少一个列表中每一列表内存储的特征子图对应的通道序号,将所述至少一个序列中所包含的特征子图重排序到所述通道序号对应的通道位置,得到按照通道序号顺序排列的所述多个特征子图。
在一些实施例中,第二处理单元1103,还配置为对所述多个特征子图分别由特征子图形态向数组形态进行变换,得到多个第三特征数据;其中,每一通道对应一个第三特征数据,且所述第三特征数据为数组形态;以及对所述多个第三特征数据分别进行截取,得到多个第二特征数据;以及对所述多个第二特征数据分别进行反量化,得到多个第一特征数据;以及对所述多个第一特征数据分别由数组形态向张量形态进行变换,得到多个特征张量数据;以及根据所述多个特征张量数据,得到所述重建特征图数据。
进一步地,解析单元1101,还配置为解析所述码流,获取张量形态;其中,所述张量形态包括通道数量和特征张量尺寸,所述特征张量尺寸包括特征张量的高度和宽度;
第二处理单元1103,具体配置为从每一通道对应的第三特征数据中截取预设位置处的所述特征张量尺寸的数组数据,将所截取的数组数据确定为每一通道对应的第二特征数据,以得到所述多个第二特征数据。
进一步地,解析单元1101,还配置为解析所述码流,获取每一通道对应的最小值和最大值;
第二处理单元1103,具体配置为根据每一通道对应的第二特征数据以及所述最小值和所述最大值,利用第三计算模型确定每一通道对应的第一特征数据,以得到所述多个第一特征数据。
进一步地,第二处理单元1103,具体配置为根据所述张量形态对所述多个特征张量数据进行通道合并,得到所述重建特征图数据。
可以理解地,在本实施例中,“单元”可以是部分电路、部分处理器、部分程序或软件等等,当然也可以是模块,还可以是非模块化的。而且在本实施例中的各组成部分可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本实施例提供了一种计算机存储介质,应用于解码器110,该计算机存储介质存储有计算机程序,所述计算机程序被第二处理器执行时实现前述实施例中任一项所述的方法。
基于上述解码器110的组成以及计算机存储介质,参见图12,其示出了本申请实施例提供的解码器110的硬件结构示意图。如图12所示,可以包括:第二通信接口1201、第二存储器1202和第二处理器1203;各个组件通过第二总线系统1204耦合在一起。可理解,第二总线系统1204用于实现这些组件之间的连接通信。第二总线系统1204除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图12中将各种总线都标为第二总线系统1204。其中,
第二通信接口1201,用于在与其他外部网元之间进行收发信息过程中,信号的接收和发送;
第二存储器1202,用于存储能够在第二处理器1203上运行的计算机程序;
第二处理器1203,用于在运行所述计算机程序时,执行:
解析码流,获取类时域序列以及重排序信息;
根据所述重排序信息对所述类时域序列进行反重排序处理,得到多个特征子图;
对所述多个特征子图进行相关处理,得到重建特征图数据。
可选地,作为另一个实施例,第二处理器1203还配置为在运行所述计算机程序时,执行前述实施例中任一项所述的方法。
可以理解,第二存储器1202与第一存储器1002的硬件功能类似,第二处理器1203与第一处理器1003的硬件功能类似;这里不再详述。
本实施例提供了一种解码器,该解码器可以包括解析单元、反重排序单元和第二处理单元;其中,解析单元配置为解析码流,获取类时域序列以及重排序信息;反重排序单元配置为根据所述重排序信息对所述类时域序列进行反重排序处理,得到多个特征子图;第二处理单元配置为对所述多个特征子图进行相关处理,得到重建特征图数据。这样,在编码器将多个特征子图进行重排序,然后在解码器渐进性反重排序处理,由于充分利用了特征子图之间的相关性信息,可以优化特征子图之间的参考关系,从而不仅提升了特征图数据的压缩效率,同时还提高了特征图数据的解码效率。
需要说明的是,在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含, 从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本申请所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
本申请所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。
本申请所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
工业实用性
本申请实施例中,在编码过程中,确定输入特征图数据;对所述输入特征图数据进行相关处理,得到多个特征子图;对所述多个特征子图进行重排序处理,得到类时域序列以及对应的重排序信息;对所述类时域序列以及所述重排序信息进行编码,生成码流。在解码过程中,解析码流,获取类时域序列以及重排序信息;根据所述重排序信息对所述类时域序列进行反重排序处理,得到多个特征子图;对所述多个特征子图进行相关处理,得到重建特征图数据。这样,将多个特征子图进行重排序,充分利用了特征子图之间的相关性信息,可以优化特征子图之间的参考关系,从而不仅提升了特征图数据的压缩效率,同时还提高了特征图数据的编解码效率。

Claims (28)

  1. 一种编码方法,应用于编码器,所述方法包括:
    确定输入特征图数据;
    对所述输入特征图数据进行相关处理,得到多个特征子图;
    对所述多个特征子图进行重排序处理,得到类时域序列以及对应的重排序信息;
    对所述类时域序列以及所述重排序信息进行编码,生成码流。
  2. 根据权利要求1所述的方法,其中,所述确定输入特征图数据,包括:
    获取待处理图像;
    通过预设神经网络模型对所述待处理图像进行特征提取,得到所述输入特征图数据;其中,所述输入特征图数据包括多个通道的特征数据。
  3. 根据权利要求2所述的方法,其中,当所述输入特征图数据为张量形态时,所述方法还包括:
    对所述输入特征图数据中多个通道的特征数据分别进行形态变换,得到多个第一特征数据;其中,每一通道对应一个第一特征数据,且所述第一特征数据为数组形态;
    将所述多个第一特征数据确定为所述输入特征图数据。
  4. 根据权利要求3所述的方法,其中,所述对所述输入特征图数据进行相关处理,得到多个特征子图,包括:
    对所述多个第一特征数据分别进行量化,得到多个第二特征数据;
    对所述多个第二特征数据分别进行填补,得到多个第三特征数据;
    对所述多个第三特征数据分别进行形态变换,得到所述多个特征子图。
  5. 根据权利要求4所述的方法,其中,所述对所述多个第一特征数据分别进行量化,得到多个第二特征数据,包括:
    基于所述多个第一特征数据,从每一通道对应的第一特征数据中选择最小值和最大值;
    根据每一通道对应的第一特征数据以及所述最小值和所述最大值,利用第一计算模型确定每一通道对应的第二特征数据,以得到所述多个第二特征数据。
  6. 根据权利要求5所述的方法,其中,所述方法还包括:
    将每一通道对应的所述最小值和所述最大值写入所述码流中。
  7. 根据权利要求4所述的方法,其中,所述对所述多个第二特征数据分别进行填补,得到多个第三特征数据,包括:
    基于所述多个第二特征数据,利用第二计算模型对每一通道对应的第二特征数据进行填补,确定每一通道对应的第三特征数据,以得到所述多个第三特征数据。
  8. 根据权利要求4所述的方法,其中,所述对所述多个第三特征数据分别进行形态变换,得到所述多个特征子图,包括:
    基于所述多个第三特征数据,对每一通道对应的第三特征数据由数组形态向特征子图形态进行变换,确定每一通道对应的特征子图,以得到所述多个特征子图。
  9. 根据权利要求1所述的方法,其中,在所述得到多个特征子图之后,所述方法还包括:
    将所述多个特征子图的初始排序方式设置为按照通道序号顺序进行排列。
  10. 根据权利要求1至9任一项所述的方法,其中,所述对所述多个特征子图进行重排序处理,得到类时域序列,包括:
    从所述多个特征子图中确定目标特征子图,并将所述目标特征子图设置为至少一个序列中每一序列的第零位元素;
    确定第i+1剩余特征子图集合;其中,所述第i+1剩余特征子图集合包括除所述至少一个序列中每一序列已经设置在前i位的特征子图之外的剩余特征子图,i为大于或等于0的整数;
    当所述第i+1剩余特征子图集合为非空时,计算所述第i+1剩余特征子图集合中每一特征子图与每一序列设置在第i位的特征子图之间的距离值,根据计算得到的多个距离值确定至少一个特征子图,并将所确定的至少一个特征子图对应设置为所述至少一个序列中每一序列的第i+1位元素;
    对i执行i+1的操作后,返回所述确定第i+1剩余特征子图集合的步骤,直至所述第i+1剩余特征子图集合为空;
    在得到特征子图形态的所述至少一个序列后,对所述至少一个序列进行形态变换,得到所述类时域序列。
  11. 根据权利要求10所述的方法,其中,当i等于0时,所述将所确定的至少一个特征子图对应 设置为所述至少一个序列中每一序列的第i+1位元素,包括:
    确定第一剩余特征子图集合,所述第一剩余特征子图集合包括除所述目标特征子图之外的剩余特征子图;
    计算所述第一剩余特征子图集合中每一特征子图与所述目标特征子图之间的距离值,根据计算得到的多个距离值确定至少一个特征子图,并将所确定的至少一个特征子图对应设置为所述至少一个序列中每一序列的第一位元素。
  12. 根据权利要求10所述的方法,其中,所述从所述多个特征子图中确定目标特征子图,包括:
    对所述多个特征子图进行聚类,得到至少一个类别;
    确定所述至少一个类别各自的中心点,得到至少一个中心点;
    根据所述至少一个中心点,从所述多个特征子图中确定中心点特征子图;其中,所述中心点特征子图表示所述多个特征子图中与所述至少一个中心点的中心点之间的距离值最小的特征子图;
    将所述中心点特征子图确定为所述目标特征子图。
  13. 根据权利要求10所述的方法,其中,所述方法还包括:
    设置至少一个列表;其中,每一个列表用于存储所述至少一个序列中每一序列内所放置的特征子图对应的通道序号;
    根据所述至少一个列表,得到所述重排序信息。
  14. 根据权利要求13所述的方法,其中,所述方法还包括:
    确定补充增强信息;其中,所述补充增强信息用于记录所述重排序信息;
    将所述补充增强信息写入所述码流中。
  15. 根据权利要求3所述的方法,其中,所述方法还包括:
    将所述输入特征图数据的张量形态写入所述码流中;其中,所述张量形态包括通道数量和特征张量尺寸,所述特征张量尺寸包括特征张量的高度和宽度。
  16. 一种解码方法,应用于解码器,所述方法包括:
    解析码流,获取类时域序列以及重排序信息;
    根据所述重排序信息对所述类时域序列进行反重排序处理,得到多个特征子图;
    对所述多个特征子图进行相关处理,得到重建特征图数据。
  17. 根据权利要求16所述的方法,其中,所述解析码流,获取重排序信息,包括:
    解析码流,获取补充增强信息;
    从所述补充增强信息中,获取所述重排序信息。
  18. 根据权利要求16或17所述的方法,其中,所述根据所述重排序信息对所述类时域序列进行反重排序处理,得到多个特征子图,包括:
    对所述类时域序列进行形态变换,得到特征子图形态的至少一个序列;
    根据所述重排序信息对所述至少一个序列进行反重排序处理,得到所述多个特征子图。
  19. 根据权利要求18所述的方法,其中,所述重排序信息包括至少一个列表,且每一个列表内存储所述至少一个序列中每一序列内所放置的特征子图对应的通道序号;
    所述根据所述重排序信息对所述至少一个序列进行反重排序处理,得到所述多个特征子图,包括:
    根据所述至少一个列表中每一列表内存储的特征子图对应的通道序号,将所述至少一个序列中所包含的特征子图重排序到所述通道序号对应的通道位置,得到按照通道序号顺序排列的所述多个特征子图。
  20. 根据权利要求16至19任一项所述的方法,其中,所述对所述多个特征子图进行相关处理,得到重建特征图数据,包括:
    对所述多个特征子图分别由特征子图形态向数组形态进行变换,得到多个第三特征数据;其中,每一通道对应一个第三特征数据,且所述第三特征数据为数组形态;
    对所述多个第三特征数据分别进行截取,得到多个第二特征数据;
    对所述多个第二特征数据分别进行反量化,得到多个第一特征数据;
    对所述多个第一特征数据分别由数组形态向张量形态进行变换,得到多个特征张量数据;
    根据所述多个特征张量数据,得到所述重建特征图数据。
  21. 根据权利要求20所述的方法,其中,所述方法还包括:
    解析所述码流,获取张量形态;其中,所述张量形态包括通道数量和特征张量尺寸,所述特征张量尺寸包括特征张量的高度和宽度;
    所述对所述多个第三特征数据分别进行截取,得到多个第二特征数据,包括:
    从每一通道对应的第三特征数据中截取预设位置处的所述特征张量尺寸的数组数据,将所截取的数 组数据确定为每一通道对应的第二特征数据,以得到所述多个第二特征数据。
  22. 根据权利要求20所述的方法,其中,所述对所述多个第二特征数据分别进行反量化,得到多个第一特征数据,包括:
    解析所述码流,获取每一通道对应的最小值和最大值;
    基于所述多个第二特征数据,根据每一通道对应的第二特征数据以及所述最小值和所述最大值,利用第三计算模型确定每一通道对应的第一特征数据,以得到所述多个第一特征数据。
  23. 根据权利要求21所述的方法,其中,所述根据所述多个特征张量数据,得到所述重建特征图数据,包括:
    根据所述张量形态对所述多个特征张量数据进行通道合并,得到所述重建特征图数据。
  24. 一种编码器,所述编码器包括第一确定单元、第一处理单元、重排序单元和编码单元;其中,
    所述第一确定单元,配置为确定输入特征图数据;
    所述第一处理单元,配置为对所述输入特征图数据进行相关处理,得到多个特征子图;
    所述重排序单元,配置为对所述多个特征子图进行重排序处理,得到类时域序列以及对应的重排序信息;
    所述编码单元,配置为对所述类时域序列以及所述重排序信息进行编码,生成码流。
  25. 一种编码器,所述编码器包括第一存储器和第一处理器;其中,
    所述第一存储器,用于存储能够在所述第一处理器上运行的计算机程序;
    所述第一处理器,用于在运行所述计算机程序时,执行如权利要求1至15任一项所述的方法。
  26. 一种解码器,所述解码器包括解析单元、反重排序单元和第二处理单元;其中,
    所述解析单元,配置为解析码流,获取类时域序列以及重排序信息;
    所述反重排序单元,配置为根据所述重排序信息对所述类时域序列进行反重排序处理,得到多个特征子图;
    所述第二处理单元,配置为对所述多个特征子图进行相关处理,得到重建特征图数据。
  27. 一种解码器,所述解码器包括第二存储器和第二处理器;其中,
    所述第二存储器,用于存储能够在所述第二处理器上运行的计算机程序;
    所述第二处理器,用于在运行所述计算机程序时,执行如权利要求16至23任一项所述的方法。
  28. 一种计算机存储介质,其中,所述计算机存储介质存储有计算机程序,所述计算机程序被第一处理器执行时实现如权利要求1至15任一项所述的方法、或者被第二处理器执行时实现如权利要求16至23任一项所述的方法。
PCT/CN2020/119853 2020-10-07 2020-10-07 编码方法、解码方法、编码器、解码器以及存储介质 WO2022073160A1 (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
PCT/CN2020/119853 WO2022073160A1 (zh) 2020-10-07 2020-10-07 编码方法、解码方法、编码器、解码器以及存储介质
CN202080106001.8A CN116368798A (zh) 2020-10-07 2020-10-07 编码方法、解码方法、编码器、解码器以及存储介质
EP20956475.6A EP4228255A4 (en) 2020-10-07 2020-10-07 ENCODING METHOD, DECODING METHOD, ENCODER, DECODER AND STORAGE MEDIUM
US18/132,194 US20230247200A1 (en) 2020-10-07 2023-04-07 Encoding method, decoding method, encoder, decoder, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2020/119853 WO2022073160A1 (zh) 2020-10-07 2020-10-07 编码方法、解码方法、编码器、解码器以及存储介质

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/132,194 Continuation US20230247200A1 (en) 2020-10-07 2023-04-07 Encoding method, decoding method, encoder, decoder, and storage medium

Publications (1)

Publication Number Publication Date
WO2022073160A1 true WO2022073160A1 (zh) 2022-04-14

Family

ID=81125696

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/119853 WO2022073160A1 (zh) 2020-10-07 2020-10-07 编码方法、解码方法、编码器、解码器以及存储介质

Country Status (4)

Country Link
US (1) US20230247200A1 (zh)
EP (1) EP4228255A4 (zh)
CN (1) CN116368798A (zh)
WO (1) WO2022073160A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114721601A (zh) * 2022-05-26 2022-07-08 昆仑智汇数据科技(北京)有限公司 一种工业设备数据的存储方法及装置
WO2023221061A1 (zh) * 2022-05-19 2023-11-23 北京小米移动软件有限公司 获取信道质量的方法、装置、存储介质和芯片

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107392305A (zh) * 2016-05-13 2017-11-24 三星电子株式会社 实现和执行神经网络的方法及计算机可读介质
US20180365794A1 (en) * 2017-06-15 2018-12-20 Samsung Electronics Co., Ltd. Image processing apparatus and method using multi-channel feature map
CN109889839A (zh) * 2019-03-27 2019-06-14 上海交通大学 基于深度学习的感兴趣区域图像编码、解码系统及方法
CN110494892A (zh) * 2017-05-31 2019-11-22 三星电子株式会社 用于处理多通道特征图图像的方法和装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101663394B1 (ko) * 2011-11-11 2016-10-06 지이 비디오 컴프레션, 엘엘씨 적응적 분할 코딩
US10402700B2 (en) * 2016-01-25 2019-09-03 Deepmind Technologies Limited Generating images using neural networks
CN110188765B (zh) * 2019-06-05 2021-04-06 京东方科技集团股份有限公司 图像语义分割模型生成方法、装置、设备及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107392305A (zh) * 2016-05-13 2017-11-24 三星电子株式会社 实现和执行神经网络的方法及计算机可读介质
CN110494892A (zh) * 2017-05-31 2019-11-22 三星电子株式会社 用于处理多通道特征图图像的方法和装置
US20180365794A1 (en) * 2017-06-15 2018-12-20 Samsung Electronics Co., Ltd. Image processing apparatus and method using multi-channel feature map
CN109889839A (zh) * 2019-03-27 2019-06-14 上海交通大学 基于深度学习的感兴趣区域图像编码、解码系统及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP4228255A4 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023221061A1 (zh) * 2022-05-19 2023-11-23 北京小米移动软件有限公司 获取信道质量的方法、装置、存储介质和芯片
CN114721601A (zh) * 2022-05-26 2022-07-08 昆仑智汇数据科技(北京)有限公司 一种工业设备数据的存储方法及装置
CN114721601B (zh) * 2022-05-26 2022-08-30 昆仑智汇数据科技(北京)有限公司 一种工业设备数据的存储方法及装置

Also Published As

Publication number Publication date
EP4228255A4 (en) 2023-11-29
US20230247200A1 (en) 2023-08-03
EP4228255A1 (en) 2023-08-16
CN116368798A (zh) 2023-06-30

Similar Documents

Publication Publication Date Title
CN103314591B (zh) 时间可缩放性的高层句法
US20230247200A1 (en) Encoding method, decoding method, encoder, decoder, and storage medium
CN112232346B (zh) 语义分割模型训练方法及装置、图像语义分割方法及装置
US11893762B2 (en) Method and data processing system for lossy image or video encoding, transmission and decoding
CN109413434B (zh) 图像处理方法、装置、系统、存储介质和计算机设备
US8582876B2 (en) Hybrid codec for compound image compression
US12088805B2 (en) Context adaptive transform set
US20150117515A1 (en) Layered Encoding Using Spatial and Temporal Analysis
KR20110091849A (ko) 중첩 변환 처리에서의 감소된 dc 이득 부정합 및 dc 누설
CN113256744B (zh) 一种图像编码、解码方法及系统
WO2022183345A1 (zh) 编码方法、解码方法、编码器、解码器以及存储介质
WO2022141461A1 (zh) 点云编解码方法、编码器、解码器以及计算机存储介质
US10075716B2 (en) Parallel encoding of weight refinement in ASTC image processing encoders
WO2024007144A1 (zh) 编解码方法、码流、编码器、解码器以及存储介质
US9930354B2 (en) Skip scanlines on JPEG image decodes
WO2022000324A1 (zh) 数据编码方法、数据解码方法、数据处理方法、编码器、解码器、系统、可移动平台与计算机可读介质
WO2024119420A1 (zh) 编解码方法、码流、编码器、解码器以及存储介质
WO2024187388A1 (zh) 点云的编解码方法、码流、编码器、解码器以及存储介质
US9955163B2 (en) Two pass quantization of video data
WO2024178565A1 (zh) 一种解码方法、解码器以及存储介质
CN116472708A (zh) 特征数据的编解码方法、装置、设备及存储介质
WO2023173238A1 (zh) 编解码方法、码流、编码器、解码器以及存储介质
US20230070216A1 (en) Method, apparatus, and storage medium for compressing feature map
WO2024060161A1 (zh) 编解码方法、编码器、解码器以及存储介质
Chen A new data transmission paradigm for visual analysis in edge-cloud collaboration

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20956475

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2020956475

Country of ref document: EP

Effective date: 20230508