CN115442609A - 特征数据编解码方法和装置 - Google Patents

特征数据编解码方法和装置 Download PDF

Info

Publication number
CN115442609A
CN115442609A CN202111091143.4A CN202111091143A CN115442609A CN 115442609 A CN115442609 A CN 115442609A CN 202111091143 A CN202111091143 A CN 202111091143A CN 115442609 A CN115442609 A CN 115442609A
Authority
CN
China
Prior art keywords
feature
value
characteristic
feature element
probability
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111091143.4A
Other languages
English (en)
Inventor
毛珏
赵寅
闫宁
杨海涛
张恋
王晶
师一博
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to JP2023574690A priority Critical patent/JP2024520151A/ja
Priority to CA3222179A priority patent/CA3222179A1/en
Priority to BR112023025167A priority patent/BR112023025167A2/pt
Priority to EP22815293.0A priority patent/EP4336829A1/en
Priority to KR1020237045517A priority patent/KR20240016368A/ko
Priority to PCT/CN2022/096510 priority patent/WO2022253249A1/zh
Priority to AU2022286517A priority patent/AU2022286517A1/en
Publication of CN115442609A publication Critical patent/CN115442609A/zh
Priority to US18/526,406 priority patent/US20240105193A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3068Precoding preceding compression, e.g. Burrows-Wheeler transformation
    • H03M7/3079Context modeling
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0475Generative networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/22Mode decision, i.e. based on audio signal content versus external parameters
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • 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/17Methods 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 an image region, e.g. an object
    • H04N19/176Methods 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 an image region, e.g. an object the region being a block, e.g. a macroblock
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/0017Lossless audio signal coding; Perfect reconstruction of coded audio signal by transmission of coding error
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/60General implementation details not specific to a particular type of compression
    • H03M7/6064Selection of Compressor
    • H03M7/6082Selection strategies

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本申请提供了特征数据编解码方法和装置,涉及基于人工智能(AI)的图像或音频的编解码技术领域,具体涉及基于神经网络的图像特征图或音频特征变量的编解码技术领域。其中编码方法包括:获取待编码目标,所述待编码目标包括多个特征元素,所述多个特征元素包括第一特征元素。所述方法还包括获取所述第一特征元素的概率估计结果,根据所述第一特征元素的概率估计结果,判断是否对所述第一特征元素执行熵编码;仅当判断出需要对所述第一特征元素执行熵编码时,对所述第一特征元素执行熵编码。本申请根据概率估计结果来判断是否对特征元素编码。这样,能够在不影响编解码性能情况下降低编解码复杂度,其中待编码目标包括图像特征图或音频特征变量。

Description

特征数据编解码方法和装置
技术领域
本发明实施例涉及基于人工智能(AI)的图像或音频压缩技术领域,尤其涉及一种特征数据编解码方法及装置。
背景技术
图像或音频编码和解码(简称为编解码)广泛用于数字图像或音频应用,例如广播数字电视、互联网和移动网络上的图像或音频传输、视频或语音聊天、和视频或语音会议等实时会话应用、DVD和蓝光光盘、图像或音频内容采集和编辑系统以及可携式摄像机的安全应用。视频由多帧图像组成,因此本申请中的图像可以是单独的图像,也可以为视频中的图像。
即使在影片较短的情况下也需要对大量的视频数据进行描述,当数据要在带宽容量受限的网络中发送或以其它方式传输时,这样可能会造成困难。因此,图像(或音频)数据通常要先压缩然后在现代电信网络中传输。由于内存资源可能有限,当在存储设备上存储视频时,图像(或音频)的大小也可能成为问题。图像(或音频)压缩设备通常在信源侧使用软件和/或硬件,以在传输或存储之前对图像(或音频)数据进行编码,从而减少用来表示数字图像(或音频)所需的数据量。然后,压缩的数据在目的地侧由图像(或音频)解压缩设备接收。在有限的网络资源以及对更高图像(或音频)质量的需求不断增长的情况下,需要改进压缩和解压缩技术,这些改进的技术能够提高压缩率而几乎不影响图像(或音频)质量。
近年来,将深度学习应用于在图像(或音频)编解码领域逐渐成为一种趋势。如谷歌已连续几年在CVPR(IEEE Conference on Computer Vision and PatternRecognition)会议上组织CLIC(Challenge on Learned Image Compression)专题竞赛,CLIC专注使用深度神经网络来提升图像的压缩效率,在2020年CLIC中还加入了图像挑战类别。基于竞赛方案的性能评估,当前基于深度学习技术的图像编解码方案的综合压缩效率已经与最新一代视频图像编解码标准VVC(Versatile Video Coding)相当,而且在提升用户感知质量方面有独特优势。
VVC的视频标准制定工作已于2020年6月完成,标准收纳几乎所有能够带来显著压缩效率提升的技术算法。因此沿传统信号处理路径继续研究新型的压缩编码算法在短时间内难以获得大的技术突破。区别于传统图像算法通过人工设计来对图像压缩的各模块进行优化,端到端AI的图像压缩是作为一个整体共同进行优化,因此AI图像压缩方案的压缩效果更好。变分自编码器(Variational Autoencoder,AE)方法是当前AI图像有损压缩技术的主流技术方案。在目前的主流技术方案是待编码图像通过编码网络获得图像特征图,并进一步对图像特征图执行熵编码,但是熵编码过程存在着复杂度过高的问题。
发明内容
本申请提供一种特征数据的编解码方法和装置,能够在不影响编解码性能情况下降低编解码复杂度。
第一方面,提供了一种特征数据的编码方法,包括:
获取待编码特征数据,所述待编码特征数据包括多个特征元素,所述多个特征元素包括第一特征元素;
获取所述第一特征元素的概率估计结果;
根据所述第一特征元素的概率估计结果,判断是否对所述第一特征元素执行熵编码;
仅当判断出需要对所述第一特征元素执行熵编码时,对所述第一特征元素执行熵编码。
其中,所述特征数据包括图像特征图,或音频特征变量,或图像特征图和音频特征变量。可以为编码网络所输出的一维、二维或多维数据,其中每个数据均为特征元素。需要说明的是,本申请中特征点和特征元素的含义相同。
具体的,所述第一特征元素为待编码特征数据中的任意一待编码特征元素。
一种可能性中,获取所述第一特征元素的概率估计结果的概率估计过程可以通过概率估计网络实现;在另一种可能性中,概率估计过程可以采用传统非网络的概率估计方法对特征数据进行概率估计。
需要说明的是,当只有边信息作为概率估计的输入时,可以并行输出各特征元素的概率估计结果;当概率估计的输入包括有上下文信息时,需要串行输出各特征元素概率估计结果。其中所述边信息为特征数据输入神经网络进一步提取得到的特征信息,所述边信息包含的特征元素的个数比特征数据的特征元素少。可选地,可以将特征数据的边信息编入码流。
一种可能性中,当所述特征数据的第一特征元素不满足预设条件下,不需要对所述特征数据的第一特征元素执行熵编码。
具体的,假如当前的第一特征元素为特征数据的第P个特征元素,则完成第P个特征元素的判断和根据判断结果执行或不执行熵编码后,开始特征数据的第P+1个特征元素的判断和根据判断结果执行或不执行熵编码过程,其中P为正整数且P小于M,其中M为整个的特征数据中特征元素的数量。比如对第二特征元素,当判断不需要对所述第二特征元素执行熵编码时,则对所述第二特征元素跳过执行熵编码。
上述技术方案中,通过对每个待编码的特征元素进行判定是否需要执行熵编码,从而跳过某些特征元素的熵编码过程,可以显著减少需执行熵编码的元素个数。这样,可以降低熵编码复杂度。
在一种可能的实现方式中,判断是否对所述第一特征元素执行熵编码包括:当所述第一特征元素的概率估计结果满足预设条件时,判断需要对所述第一特征元素执行熵编码;或当所述第一特征元素的概率估计结果不满足预设条件时,判断不需要对所述第一特征元素执行熵编码。
在一种可能的实现方式中,所述第一特征元素的概率估计结果为所述第一特征元素取值为k的概率值,所述预设条件为第一特征元素取值为k的概率值小于或等于第一阈值,其中k为整数。
k为上述第一特征元素取值所可能的取值范围中的某一取值。比如,第一特征元素可以取值的范围为【-255,255】。k可以设置为0,则对概率值小于或者等于0.5的第一特征元素,执行熵编码。对概率值大于0.5的第一特征元素,不执行熵编码。
在一种可能的实现方式中,所述第一特征元素取值为k的概率值为所述第一特征元素的所有可能的取值的概率值中的最大概率值。
其中,编码码流在低码率情况所选定的第一阈值小于编码码流在高码率情况所选定的第一阈值。具体码率高低与图像的分辨率以及图像内容相关,以公开的Kodak数据集为例,低于0.5bpp为低码率,反之为高码率。
在某一码率情况下,所述第一阈值可以根据实际需要进行配置,此处不做限定。
上述技术方案中,通过灵活的第一阈值设定方式使得产生可以根据要求灵活的降低熵编码复杂度。
在一种可能的实现方式中,所述第一特征元素的概率估计结果包括所述第一特征元素概率分布的第一参数和第二参数。
则当所述概率分布为高斯分布,所述第一特征元素概率分布的第一参数为所述第一特征元素高斯分布的均值,所述第一特征元素概率分布的第二参数为所述第一特征元素高斯分布的方差;或当所述概率分布为拉普拉斯分布,所述第一特征元素概率分布的第一参数为所述第一特征元素拉普拉斯分布的位置参数,所述第一特征元素概率分布的第二参数为所述第一特征元素拉普拉斯分布的尺度参数。则所述预设条件可以为以下任意一种:
所述第一特征元素的概率分布的第一参数与所述第一特征元素取值k的差的绝对值大于或等于第二阈值;或
所述第一特征元素的概率分布的第二参数大于或等于第三阈值;或
所述第一特征元素的概率分布的第一参数与所述第一特征元素取值k的差的绝对值与所述第一特征元素的概率分布的第二参数的和大于或等于第四阈值。
则当所述概率分布为混合高斯分布时,所述第一特征元素概率分布的第一参数为所述第一特征元素混合高斯分布的均值,所述第一特征元素概率分布的第二参数为所述第一特征元素混合高斯分布的方差,则所述预设条件可以为以下任意一种:
所述第一特征元素的混合高斯分布的所有均值与所述第一特征元素的取值为k的差的绝对值之和与所述第一特征元素的混合高斯分布的任一方差的和大于或等于第五阈值;或
所述第一特征元素的混合高斯分布的任一均值与所述第一特征元素的取值为k的差大于或等于第六阈值;或
所述第一特征元素的混合高斯分布的任一方差大于或等于第七阈值。
则当所述概率分布为非对称高斯分布时,所述第一特征元素概率分布的第一参数为所述第一特征元素非对称高斯分布的均值,所述第一特征元素概率分布的第二参数为所述第一特征元素非对称高斯分布的第一方差和第二方差,则所述预设条件可以为以下任意一种:
所述第一特征元素的非对称高斯分布的均值与所述第一特征元素的取值为k的差的绝对值大于或等于第八阈值;或
所述第一特征元素的非对称高斯分布的第一方差大于或等于第九阈值;
所述第一特征元素的非对称高斯分布的第二方差大于或等于第十阈值。
所述第一特征元素的概率分布为混合高斯分布情况,确定所述第一特征元素的判断取值范围,当所述第一特征元素的概率分布的多个均值均不在所述第一特征元素的判断取值范围。
所述第一特征元素的概率分布为高斯分布情况,确定所述第一特征元素的判断取值范围,当所述第一特征元素的概率分布的均值不在所述第一特征元素的判断取值范围。
所述第一特征元素的概率分布为高斯分布情况,确定所述第一特征元素的判断取值范围,判断取值范围中包括了多个所述第一特征元素可能的取值,当所述第一特征元素的高斯分布的均值参数与所述第一特征元素的判断取值范围中的每个取值的差的绝对值大于或等于第十一阈值,或所述第一特征元素的概率分布的方差大于或等于第十二阈值。
所述第一特征元素的取值不在所述第一特征元素的判断取值范围。
所述第一特征元素的取值对应的概率值小于或等于第十三阈值。
在一种可能的实现方式中,所述方法还包括:构建第一阈值的阈值候选列表,将所述第一阈值放入所述第一阈值的阈值候选列表中且对应有所述第一阈值的索引号,将所述第一阈值的索引号写入编码码流,其中所述第一阈值的阈值候选列表的长度可以设置为T;T为大于或等于1的整数。可以理解的,所述其他的阈值可以采用如第一阈值的阈值候选列表构建方式,且有对应阈值的索引号和写入编码码流中。
具体地,将所述索引号写入码流,可将其保存在序列头(sequence header)、图像头(picture header)、Slice/条带(slice header)或SEI(suplemental enhancementinformation)中传送到解码端,还可以使用其他方法,在此不做限定。构建候选列表的方式不做限定。
另一种可能性中,根据概率估计结果输入生成网络得到所述决策信息。所述生成网络可以为卷积网络,可以包括多个网络层,任意一网络层可以为卷积层、归一化层、非线性激活层等。
在一种可能的实现方式中,将所述特征数据的概率估计结果输入生成网络以得到所述第一特征元素的决策信息,所述决策信息用于指示是否对所述第一特征元素执行熵编码。
在一种可能的实现方式中,所述特征数据的决策信息为决策图,决策图也可以称为决策图map。决策图优选的为二元图,二元图也可以称为二元图map。二元图中特征元素的决策信息取值通常为0或1。因此当所述决策图中对应所述第一特征元素所在位置的值为预设值时,需要对所述第一特征元素执行熵编码;当所述决策图中对应所述第一特征元素所在位置的值不为预设值时,不需要对所述第一特征元素执行熵编码。
在一种可能的实现方式中,所述特征数据中的特征元素的决策信息为预设值。所述决策信息的预设值取值通常为1,因此当所述决策信息为预设值时,需要对所述第一特征元素执行熵编码;当所述决策信息不为预设值时,不需要对所述第一特征元素执行熵编码。决策信息可以为标识或者标识的值。判断是否对所述第一特征元素执行熵编码取决于所述标识或者标识的值是否为预设值,为预设值时,需要对所述第一特征元素执行熵编码;不为预设值时,不需要对所述第一特征元素执行熵编码。所述特征数据中各特征元素的决策信息的集合也可以为浮点数,也就是说取值可以为除0和1外的其他值。这时候,可以通过设置预设值,当所述第一特征元素的决策信息的值等于或者大于预设值时,判断需要对所述第一特征元素执行熵编码;或当所述第一特征元素的决策信息的值小于预设值时,判断不需要对所述第一特征元素执行熵编码。
在一种可能的实现方式中,所述方法还包括:待编码图像经过编码网络获取所述特征数据;待编码图像经过编码网络后经过取整获取所述特征数据;或待编码图像经过编码网络后经过量化和取整获取所述特征数据。
其中编码网络可以采用自编码器结构。编码网络可以为卷积神经网络。编码网络可以包括多个子网络,每个子网络包含一个或多个卷积层。子网络间的网络结构可以互为相同或不同。
其中待编码图像可以是原始图像,也可以是残差图像。
应理解,待编码图像可以为RGB格式或YUV、RAW等表示格式,待编码图像在输入编码网络前可以进行预处理操作,预处理操作可以包括转换、块划分、滤波、剪枝等操作。
应理解,允许在同一时间戳内或同一时刻将多个待编码图像或多个待编码图像块输入编解码网络进行处理以得到特征数据。
第二方面,提供了一种特征数据的解码方法,包括:
获取待解码特征数据的码流;
所述待解码特征数据包括多个特征元素,所述多个特征元素包括第一特征元素;
获取所述第一特征元素的概率估计结果;
根据所述第一特征元素的概率估计结果,判断是否对所述第一特征元素执行熵解码;
仅当判断出需要对所述第一特征元素执行熵解码时,对所述第一特征元素执行熵解码。
可以理解,所述第一特征元素为待解码特征数据中的任意特征元素,当待解码特征数据中所有特征元素完成了所述判断并根据判断结果执行或不执行熵解码后得到了解码特征数据。
其中,所述待解码特征数据可以为一维、二维或多维数据,其中每个数据均为特征元素。需要说明的是,本申请中特征点和特征元素的含义相同。
具体的,所述第一特征元素为待解码特征数据中的任意一待解码特征元素。
一种可能性中,获取所述第一特征元素的概率估计结果的概率估计过程可以通过概率估计网络实现;在另一种可能性中,概率估计过程可以采用传统非网络的概率估计方法对特征数据进行概率估计。
需要说明的是,当只有边信息作为概率估计的输入时,可以并行输出各特征元素的概率估计结果;当概率估计的输入包括有上下文信息时,需要串行输出各特征元素概率估计结果。其中,所述边信息包含的特征元素的个数比特征数据的特征元素少。
一种可能性中,码流中包含了边信息,解码码流过程需要对边信息进行解码。
具体的,特征数据中的每个特征元素的判断过程包括了条件判断以及根据条件判断结果决定是否执行熵解码。
一种可能性中,熵解码可以通过神经网络方式实现。
在另一种可能性中,熵解码可以通过传统熵解码方式实现。
具体的,假如当前的第一特征元素为特征数据的第P个特征元素,则完成第P个特征元素的判断和根据判断结果执行或不执行熵解码后,开始特征数据的第P+1个特征元素的判断和根据判断结果执行或不执行熵解码过程,其中P为正整数且P小于M,其中M为整个的特征数据中特征元素的数量。比如对第二特征元素,当判断不需要对所述第二特征元素执行熵解码时,则对所述第二特征元素跳过执行熵解码。
上述技术方案中,通过对每个待解码的特征元素进行判定是否需要执行熵解码,从而跳过某些特征元素的熵解码过程,可以显著减少需执行熵解码的元素个数。这样,可以降低熵解码复杂度。
在一种可能的实现方式中,所述判断是否对所述特征数据的第一特征元素执行熵解码包括:当所述特征数据的第一特征元素的概率估计结果满足预设条件,判断需要对所述第一特征元素执行熵解码;或当所述第一特征元素的概率估计结果不满足预设条件时,判断不需要对所述第一特征元素熵解码,将所述第一特征元素的特征值设置为k;其中k为整数。
在一种可能的实现方式中,所述第一特征元素的概率估计结果为所述第一特征元素取值为k的概率值,所述预设条件为第一特征元素取值为k的概率值小于或等于第一阈值,其中k为整数。
一种可能性中,所述第一特征元素在不满足所述预设条件下设置为k。比如,第一特征元素可以取值的范围为【-255,255】。k可以设置为0,则对概率值小于或者等于0.5的第一特征元素,执行熵编码。对概率值大于0.5的第一特征元素,不执行熵编码。
在另一种可能性中,所述第一特征元素在不满足所述预设条件下通过列表确定取值。
在另一种可能性中,所述第一特征元素在不满足所述预设条件下设置为固定整数值。
k为上述第一特征元素取值所可能的取值范围中的某一取值。
在一种可能性中,k为上述第一特征元素中所有可能的取值范围中最大概率所对应的值。
其中,解码码流在低码率情况所选定的第一阈值小于解码码流在高码率情况所选定的第一阈值。具体码率高低与图像的分辨率以及图像内容相关,以公开的Kodak数据集为例,低于0.5bpp为低码率,反之为高码率。
在某一码率情况下,所述第一阈值可以根据实际需要进行配置,此处不做限定。
上述技术方案中,通过灵活的第一阈值设定方式使得产生可以根据要求灵活的降低熵解码复杂度。
在一种可能的实现方式中,所述第一特征元素的概率估计结果包括所述第一特征元素概率分布的第一参数和第二参数。
则当所述概率分布为高斯分布,所述第一特征元素概率分布的第一参数为所述第一特征元素高斯分布的均值,所述第一特征元素概率分布的第二参数为所述第一特征元素高斯分布的方差;或当所述概率分布为拉普拉斯分布,所述第一特征元素概率分布的第一参数为所述第一特征元素拉普拉斯分布的位置参数,所述第一特征元素概率分布的第二参数为所述第一特征元素拉普拉斯分布的尺度参数。则所述预设条件可以为以下任意一种:
所述第一特征元素的概率分布的第一参数与所述第一特征元素取值k的差的绝对值大于或等于第二阈值;或
所述第一特征元素的第二参数大于或等于第三阈值;或
所述第一特征元素的概率分布的第一参数与所述第一特征元素取值k的差的绝对值与所述第一特征元素的概率分布的第二参数的和大于或等于第四阈值。
则当所述概率分布为混合高斯分布时,所述第一特征元素概率分布的第一参数为所述第一特征元素混合高斯分布的均值,所述第一特征元素概率分布的第二参数为所述第一特征元素混合高斯分布的方差,则所述预设条件可以为以下任意一种:
所述第一特征元素的混合高斯分布的所有均值与所述第一特征元素的取值为k的差的绝对值之和与所述第一特征元素的混合高斯分布的任一方差的和大于或等于第五阈值;或
所述第一特征元素的混合高斯分布的任一均值与所述第一特征元素的取值为k的差大于第六阈值;或
所述第一特征元素的混合高斯分布的任一方差大于或等于第七阈值。
则当所述概率分布为非对称高斯分布时,所述第一特征元素概率分布的第一参数为所述第一特征元素非对称高斯分布的均值,所述第一特征元素概率分布的第二参数为所述第一特征元素非对称高斯分布的第一方差和第二方差,则所述预设条件可以为以下任意一种:
所述第一特征元素的非对称高斯分布的均值参数与所述第一特征元素的取值为k的差的绝对值大于第八阈值;或
所述第一特征元素的非对称高斯分布的第一方差大于或等于第九阈值;
所述第一特征元素的非对称高斯分布的第二方差大于或等于第十阈值。
所述第一特征元素的概率分布为混合高斯分布情况,确定所述第一特征元素的判断取值范围,当所述第一特征元素的概率分布的多个均值均不在所述第一特征元素的判断取值范围。
所述第一特征元素的概率分布为高斯分布情况,确定所述第一特征元素的判断取值范围,当所述第一特征元素的概率分布的均值不在所述第一特征元素的判断取值范围。
所述第一特征元素的概率分布为高斯分布情况,确定所述第一特征元素的判断取值范围,判断取值范围中包括了多个所述第一特征元素可能的取值,当所述第一特征元素的高斯分布的均值参数与所述第一特征元素的判断取值范围中的每个取值的差的绝对值大于或等于第十一阈值,或所述第一特征元素的概率分布的方差大于或等于第十二阈值。
所述第一特征元素取值为k不在所述第一特征元素的判断取值范围。
所述第一特征元素取值为k对应的概率值小于或等于第十三阈值。
在一种可能的实现方式中,构建第一阈值的阈值候选列表,通过对所述码流进行解码以得到所述第一阈值的阈值候选列表的索引号,将所述第一阈值的索引号所对应所述第一阈值的阈值候选列表位置的值作为所述第一阈值的值,其中所述第一阈值的阈值候选列表的长度可以设置为T;T为大于或等于1的整数。可以理解的,所述其他任意的阈值可以采用如第一阈值的阈值候选列表构建方式,且可以解码对应阈值的索引号,并根据所述索引号选取构建列表里的值作为阈值。
另一种可能性中,根据概率估计结果输入生成网络得到所述决策信息。所述生成网络可以为卷积网络,可以包括多个网络层,任意一网络层可以为卷积层、归一化层、非线性激活层等。
在一种可能的实现方式中,将所述特征数据的概率估计结果输入生成网络以得到所述第一特征元素的决策信息,所述决策信息用于指示是否对所述第一特征元素执行熵解码。
在一种可能的实现方式中,所述特征数据中各特征元素的决策信息为决策图,决策图也可以称为决策图map。决策图优选的为二元图,二元图也可以称为二元图map。二元图中特征元素的决策信息取值通常为0或1。因此当所述决策图中对应所述第一特征元素所在位置的值为预设值时,需要对所述第一特征元素执行熵解码;当所述决策图中对应所述第一特征元素所在位置的值不为预设值时,不需要对所述第一特征元素执行熵解码。
所述特征数据中各特征元素的决策信息的集合也可以为浮点数,也就是说取值可以为除0和1外的其他值。这时候,可以通过设置预设值,当所述第一特征元素的决策信息的值等于或者大于预设值时,判断需要对所述第一特征元素执行熵解码;或当所述第一特征元素的决策信息的值小于预设值时,判断不需要对所述第一特征元素执行熵解码。
在一种可能的实现方式中,所述特征数据经过解码网络以得到重建图像。
在另一种可能的实现方式中,所述特征数据经过解码网络以得到面向机器任务数据,具体的,所述特征数据经过面向机器任务模块以得到面向机器任务数据,所述面向机器模块包括目标识别网络,分类网络或者语义分割网络。
第三方面,提供了一种特征数据编码装置,包括:
获得模块,用于获取待编码特征数据,所述待编码特征数据包括多个特征元素,所述多个特征元素包括第一特征元素,以及用于获取所述中第一特征元素的概率估计结果;
编码模块,用于根据所述第一特征元素的概率估计结果,判断是否对所述第一特征元素执行熵编码;仅当判断出需要对所述第一特征元素执行熵编码时,对所述第一特征元素执行熵编码。
上述获得模块、编码模块的进一步实现功能可以参考第一方面或者第一方面的任意一种实现方式,此处不再赘述。
第四方面,提供了一种特征数据解码装置,包括:
获得模块,用于获取待解码特征数据的码流,所述待解码特征数据包括多个特征元素,所述多个特征元素包括第一特征元素;获取所述第一特征元素的概率估计结果;
解码模块,用于根据所述第一特征元素的概率估计结果,判断是否对所述第一特征元素执行熵解码;仅当判断出需要对所述第一特征元素执行熵解码时,对所述第一特征元素执行熵解码。
上述获得模块、解码模块的进一步实现功能可以参考第二方面或者第二方面的任意一种实现方式,此处不再赘述。
第五方面,本申请提供一种编码器,包括处理电路,用于判断根据上述第一方面及第一方面任一项所述的方法。
第六方面,本申请提供一种解码器,包括处理电路,用于判断上述第二方面及第二方面任一项所述的方法。
第七方面,本申请提供一种计算机程序产品,包括程序代码,当其在计算机或处理器上判断时,用于判断上述第一方面及第一方面任一项、上述第二方面及第二方面任一项所述的方法。
第八方面,本申请提供一种编码器,包括:一个或多个处理器;非瞬时性计算机可读存储介质,耦合到所述处理器并存储由所述处理器判断的程序,其中所述程序在由所述处理器判断时,使得所述解码器判断上述第一方面及第一方面任一项所述的方法。
第九方面,本申请提供一种解码器,包括:一个或多个处理器;非瞬时性计算机可读存储介质,耦合到所述处理器并存储由所述处理器判断的程序,其中所述程序在由所述处理器判断时,使得所述编码器判断上述第二方面及第二方面任一项所述的方法所述的方法。
第十方面,本申请提供一种非瞬时性计算机可读存储介质,包括程序代码,当其由计算机设备判断时,用于判断上述第一方面及第一方面任一项、上述第二方面及第二方面任一项所述的方法。
第十一方面,本发明涉及编码装置,具有实现上述第一方面或第一方面任一项的方法实施例中行为的功能。所述功能可以通过硬件实现,也可以通过硬件判断相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。在一个可能的设计中,所述编码装置包括:获得模块,用于将原始图像或残差图像经过编码网络变换到特征空间,提取特征数据用来压缩。另外对特征数据进行概率估计获取特征数据各特征元素的概率估计结果;编码模块,利用特征数据各特征元素的概率估计结果,用于通过一定条件来判断特征数据中各特征元素是否执行熵编码并完成所述特征数据中所有特征元素的编码过程以得到特征数据的编码码流。这些模块可以判断上述第一方面或第一方面任一项方法示例中的相应功能,具体参见方法示例中的详细描述,此处不做赘述。
第十二方面,本发明涉及解码装置,具有实现上述第二方面或第二方面任一项的方法实施例中行为的功能。所述功能可以通过硬件实现,也可以通过硬件判断相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。在一个可能的设计中,所述解码装置包括:获得模块,用于获取待解码特征数据的码流,并根据待解码特征数据的码流,进行概率估计以得到特征数据各特征元素的概率估计结果;解码模块,利用特征数据各特征元素的概率估计结果,通过一定条件来判断特征数据中各特征元素是否执行熵解码并完成所述特征数据中所有特征元素的解码过程以得到所述特征数据,并对所述特征数据进行解码以得到重建图像或面向机器任务数据。这些模块可以判断上述第二方面或第二方面任一项方法示例中的相应功能,具体参见方法示例中的详细描述,此处不做赘述。
第十三方面,提供了一种特征数据的编码方法,包括:
获取待编码特征数据,所述特征数据包括多个特征元素,所述多个特征元素包括第一特征元素;
获取所述特征数据的边信息,对所述特征数据的边信息输入联合网络以得到所述第一特征元素的决策信息;
根据所述第一特征元素的决策信息,判断是否对所述第一特征元素执行熵编码;
仅当判断出需要对所述第一特征元素执行熵编码时,对所述第一特征元素执行熵编码。
所述特征数据为编码网络所输出的一维、二维或多维数据,其中每个数据均为特征元素。
一种可能性中,将特征数据的边信息编入码流。所述边信息为特征数据输入神经网络进一步提取得到的特征信息,所述边信息包含的特征元素的个数比特征数据的特征元素少。
所述第一特征元素为所述特征数据中的任意特征元素。
一种可能性中,所述特征数据各特征元素的决策信息的集合可以以决策图等方式来进行表示。其中决策图为一维、二维或多维图像数据且与所述特征数据的尺寸一致。
一种可能性中,联合网络还输出所述第一特征元素的概率估计结果,所述第一特征元素的概率估计结果包括所述第一特征元素的概率值,和/或所述概率分布的第一参数和所述概率分布的第二参数。
上述技术方案中,通过对每个待编码的特征元素进行判定是否需要执行熵编码,从而跳过某些特征元素的熵编码过程,可以显著减少需执行熵编码的元素个数。这样,可以降低熵编码复杂度。
在一种可能性中,当所述决策图中对应第一特征元素位置的值为预设值时,需要对所述第一特征元素执行熵编码;当所述决策图中对应第一特征元素位置的值不为预设值时,不需要对所述第一特征元素执行熵编码。
第十四方面,提供了一种特征数据的解码方法,包括:
获取待解码特征数据的码流和所述待解码特征数据的边信息;
所述待解码特征数据包括多个特征元素,所述多个特征元素包括第一特征元素;
对所述待解码特征数据的边信息输入联合网络以得到所述第一特征元素的决策信息;
根据所述第一特征元素的决策信息,判断是否对所述第一特征元素执行熵解码;
仅当判断出需要对所述第一特征元素执行熵解码时,对所述第一特征元素执行熵解码。
一种可能性中,解码待解码特征数据的码流以得到边信息。所述边信息包含的特征元素的个数比特征数据的特征元素少。
所述第一特征元素为所述特征数据中的任意特征元素。
一种可能性中,所述特征数据各特征元素的决策信息可以以决策图等方式来进行表示。其中决策图为一维、二维或多维图像数据且与所述特征数据的尺寸一致。
一种可能性中,联合网络还输出所述第一特征元素的概率估计结果,所述第一特征元素的概率估计结果包括所述第一特征元素的概率值,和/或所述概率分布的第一参数和所述概率分布的第二参数。
在一种可能性中,当所述决策图中对应第一特征元素位置的值为预设值时,需要对所述第一特征元素执行熵解码;当所述决策图中对应第一特征元素位置的值不为预设值时,不需要对所述第一特征元素执行熵解码,并将所述第一特征元素的特征值设置为k,其中k为整数。
上述技术方案中,通过对每个待编码的特征元素进行判定是否需要执行熵解码,从而跳过某些特征元素的熵解码过程,可以显著减少需执行熵解码的元素个数。这样,可以降低熵解码复杂度。
在现有端到端特征数据编解码主流方案中,在熵编解码或算术编解码过程中存在着复杂度过高问题。本申请利用了待编码特征数据中特征点概率分布相关信息,对每个待编解码特征数据中的特征元素进行判定是否需要进行熵编解码,从而跳过某些特征元素的熵编解码过程,可以显著减少需进行编解码的元素个数,降低了编解码复杂度。另一方面,可以根据码流的码率实际大小要求,灵活的对阈值大小进行设置以控制生成码流的码率大小。
附图及以下说明中将详细描述一个或多个实施例。其它特征、目的和优点在说明、附图以及权利要求中是显而易见的。
附图说明
下面对本申请实施例用到的附图进行介绍。
图1A为图像译码系统示例性框图;
图1B为图像译码系统处理电路实现;
图1C为图像译码设备示意性框图;
图1D为本申请实施例装置实现图;
图2A为本申请一种可能场景的系统架构图;
图2B为本申请一种可能场景的系统架构图;
图3A-3D为编码器示意性框图;
图4A为编码网络单元示意图;
图4B为编码网络的网络结构示意图;
图5为编码决策实现单元结构示意图;
图6为联合网络输出示例图;
图7为生成网络输出示例图;
图8为解码决策实现实现示意图;
图9为解码网络的网络结构示例图;
图10A为本申请实施例译码方法的一个示例图;
图10B为本申请实施例图像特征图解码器示意性框图;
图11A为本申请实施例译码方法的一个示例图;
图12为边信息提取模块网络结构示例图;
图13A为本申请实施例译码方法的一个示例图;
图13B为本申请实施例图像特征图解码器示意性框图;
图14为本申请实施例译码方法的一个示例图;
图15为联合网络的网络结构示例图;
图16为本申请实施例图像特征图解码器示意性框图;
图17为本申请实施例译码方法的一个示例图;
图18为本申请编码装置的一个示例性的结构示意图;
图19为本申请解码装置的一个示例性的结构示意图。
具体实施方式
本申请实施例所涉及的术语“第一”、“第二”等仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元。方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
本申请实施例提供一种基于AI的特征数据编解码技术,尤其是提供一种基于神经网络的图像特征图和/或音频特征变量的编解码技术,具体提供一种基于端到端的图像特征图和/或音频特征变量的编解码系统。
在图像编码领域,术语“图像(picture)”、或“图片(image)”,可以用作同义词。图像编码(或通常称为编码)包括图像编码和图像解码两部分,其中视频由多个图像所组成,是连续图像的表示方式。图像编码在源侧判断,通常包括处理(例如,压缩)原始视频图像以减少表示该视频图像所需的数据量(从而更高效存储和/或传输)。图像解码在目的地侧判断,通常包括相对于编码器作逆处理,以重建图像。实施例涉及的图像或音频的“译码”应理解为图像或音频的“编码”或“解码”。编码部分和解码部分也合称为编解码(编码和解码,CODEC)。
在无损图像编码情况下,可以重建原始图像,即重建的图像与原始图像具有相同的质量(假设存储或传输期间没有传输损耗或其它数据丢失)。在传统有损图像编码情况下,通过量化等判断进一步压缩,来减少表示视频图像所需的数据量,而解码器侧无法完全重建视频图像,即重建的视频图像的质量比原始视频图像的质量较低或较差。
由于本申请实施例涉及大量神经网络的应用,为了便于理解,下面先对本申请实施例可能涉及的神经网络的相关术语和概念进行介绍。
(1)神经网络
神经网络可以是由神经单元组成的,神经单元可以是指以xs和截距1为输入的运算单元,该运算单元的输出可以为:
Figure BDA0003267508820000151
其中,s=1、2、……n,n为大于1的自然数,Ws为xs的权重,b为神经单元的偏置。f为神经单元的激活函数(activation functions),用于将非线性特性引入神经网络中,来将神经单元中的输入信号转换为输出信号。该激活函数的输出信号可以作为下一层卷积层的输入,激活函数可以是sigmoid函数。神经网络是将多个上述单一的神经单元联结在一起形成的网络,即一个神经单元的输出可以是另一个神经单元的输入。每个神经单元的输入可以与前一层的局部接受域相连,来提取局部接受域的特征,局部接受域可以是由若干个神经单元组成的区域。
(2)深度神经网络
深度神经网络(deep neural network,DNN),也称多层神经网络,可以理解为具有多层隐含层的神经网络。按照不同层的位置对DNN进行划分,DNN内部的神经网络可以分为三类:输入层,隐含层,输出层。一般来说第一层是输入层,最后一层是输出层,中间的层数都是隐含层。层与层之间是全连接的,也就是说,第i层的任意一个神经元一定与第i+1层的任意一个神经元相连。
虽然DNN看起来很复杂,但是就每一层的工作来说,其实并不复杂,简单来说就是如
下线性关系表达式:
Figure BDA0003267508820000161
其中,
Figure BDA0003267508820000162
是输入向量,
Figure BDA0003267508820000163
是输出向量,
Figure BDA0003267508820000164
是偏移向量,W是权重矩阵(也称系数),α()是激活函数。每一层仅仅是对输入向量
Figure BDA0003267508820000165
经过如此简单的操作得到输出向量
Figure BDA0003267508820000166
由于DNN层数多,系数W和偏移向量
Figure BDA0003267508820000167
的数量也比较多。这些参数在DNN中的定义如下所述:以系数W为例:假设在一个三层的DNN中,第二层的第4个神经元到第三层的第2个神经元的线性系数定义为
Figure BDA0003267508820000168
上标3代表系数W所在的层数,而下标对应的是输出的第三层索引2和输入的第二层索引4。
综上,第L-1层的第k个神经元到第L层的第j个神经元的系数定义为
Figure BDA0003267508820000169
需要注意的是,输入层是没有W参数的。在深度神经网络中,更多的隐含层让网络更能够刻画现实世界中的复杂情形。理论上而言,参数越多的模型复杂度越高,“容量”也就越大,也就意味着它能完成更复杂的学习任务。训练深度神经网络的也就是学习权重矩阵的过程,其最终目的是得到训练好的深度神经网络的所有层的权重矩阵(由很多层的向量W形成的权重矩阵)。
(3)卷积神经网络
卷积神经网络(convolutional neuron network,CNN)是一种带有卷积结构的深度神经网络。卷积神经网络包含了一个由卷积层和子采样层构成的特征抽取器,该特征抽取器可以看作是滤波器。卷积层是指卷积神经网络中对输入信号进行卷积处理的神经元层。在卷积神经网络的卷积层中,一个神经元可以只与部分邻层神经元连接。一个卷积层中,通常包含若干个特征平面,每个特征平面可以由一些矩形排列的神经单元组成。同一特征平面的神经单元共享权重,这里共享的权重就是卷积核。共享权重可以理解为提取图像信息的方式与位置无关。卷积核可以以随机大小的矩阵的形式初始化,在卷积神经网络的训练过程中卷积核可以通过学习得到合理的权重。另外,共享权重带来的直接好处是减少卷积神经网络各层之间的连接,同时又降低了过拟合的风险。
(4)熵编码
熵编码用于将熵编码算法或方案(例如,可变长度编码(variable lengthcoding,VLC)方案、上下文自适应VLC方案(context adaptive VLC,CALVC)、算术编码方案、二值化算法、上下文自适应二进制算术编码(context adaptive binary arithmeticcoding,CABAC)、基于语法的上下文自适应二进制算术编码(syntax-based context-adaptive binary arithmetic coding,SBAC)、概率区间分割熵(probability intervalpartitioning entropy,PIPE)编码或其它熵编码方法或技术)应用于量化系数、其它语法元素,得到可以通过输出端以编码比特流等形式输出的编码数据,使得解码器等可以接收并使用用于解码的参数。可将编码比特流传输到解码器,或将其保存在存储器中稍后由解码器传输或检索。
在以下译码系统10的实施例中,编码器20A和解码器30A根据图1A至图15进行描述。
图1A为示例性译码系统10的示意性框图,例如可以利用本申请技术的图像(或音频)译码系统10(或简称为译码系统10)。图像译码系统10中的编码器20A和解码器30A代表可用于根据本申请中描述的各种示例判断各技术的设备等。
如图1A所示,译码系统10包括源设备12,源设备12用于将编码图像(或音频)等编码码流21提供给用于对编码码流21进行解码的目的设备14。
源设备12包括编码器20A,另外即可选地,图像源16、预处理器(或预处理单元)18、通信接口(或通信单元)26和概率估计(或概率估计单元)40。
图像(或音频)源16可包括或可以为任意类型的用于捕获现实世界图像(或音频)等的图像捕获设备,和/或任意类型的图像生成设备,例如用于生成计算机动画图像的计算机图形处理器或任意类型的用于获取和/或提供现实世界图像、计算机生成图像(例如,屏幕内容、虚拟现实(virtual reality,VR)图像和/或其任意组合(例如增强现实(augmentedreality,AR)图像)的设备。所述音频或图像源可以为存储上述任意音频或图像的任意类型的内存或存储器。
为了区分预处理器(或预处理单元)18判断的处理,图像或音频(图像或音频数据)17也可称为原始图像或音频(原始图像数据或音频数据)17。
预处理器18用于接收(原始)图像(或音频)数据17,并对图像(或音频)数据17进行预处理,得到预处理图像或音频(或预处理图像或音频数据)19。例如,预处理器18判断的预处理可包括修剪、颜色格式转换(例如从RGB转换为YCbCr)、调色或去噪。可以理解的是,预处理单元18可以为可选组件。
编码器20A包括编码网络20、熵编码24,另外即可选地,预处理器22。
图像(或音频)编码网络(或编码网络)20用于接收预处理图像(或音频)数据19并提供编码图像(或音频)数据21。
预处理器22用于接收待编码特征数据21,并对待编码特征数据21进行预处理,得到预处理待编码特征数据23。例如,预处理器22判断的预处理可包括修剪、颜色格式转换(例如从RGB转换为YCbCr)、调色或去噪。可以理解的是,预处理单元22可以为可选组件。
熵编码24用于接收待编码特征数据(或预处理待编码特征数据)23并根据概率估计40提供的概率估计结果41生成编码码流25。
源设备12中的通信接口26可用于:接收编码码流25并通过通信信道27向目的设备14等另一设备或任何其它设备发送编码码流25(或其它任意处理后的版本),以便存储或直接重建。
目的设备14包括解码器30A,另外即可选地,可包括通信接口(或通信单元)28、后处理器(或后处理单元)36和显示设备38。
目的设备14中的通信接口28用于直接从源设备12或从存储设备等任意其它源设备接收编码码流25(或其它任意处理后的版本),例如,存储设备为编码码流存储设备,并将编码码流25提供给解码器30A。
通信接口26和通信接口28可用于通过源设备12与目的设备14之间的直连通信链路,例如直接有线或无线连接等,或者通过任意类型的网络,例如有线网络、无线网络或其任意组合、任意类型的私网和公网或其任意类型的组合,发送或接收编码码流(或编码码流数据)25。
例如,通信接口26可用于将编码码流25封装为报文等合适的格式,和/或使用任意类型的传输编码或处理来处理所述编码码流,以便在通信链路或通信网络上进行传输。
通信接口28与通信接口26对应,例如,可用于接收传输数据,并使用任意类型的对应传输解码或处理和/或解封装对传输数据进行处理,得到编码码流25。
通信接口26和通信接口28均可配置为如图1A中从源设备12指向目的设备14的对应通信信道27的箭头所指示的单向通信接口,或双向通信接口,并且可用于发送和接收消息等,以建立连接,确认并交换与通信链路和/或例如编码后的图像数据传输等数据传输相关的任何其它信息,等等。
解码器30A包括解码网络34、熵解码30,另外即可选地,后处理器32。
熵解码30用于接收编码码流25并根据概率估计40提供的概率估计结果42提供解码特征数据31。
后处理器32用于对解码特征数据31进行后处理,得到后处理后的解码特征数据33。后处理单元32判断的后处理可以包括例如颜色格式转换(例如从YCbCr转换为RGB)、调色、修剪或重采样,可以理解的是,后处理单元32可以为可选组件。
解码网络34用于接收解码特征数据31或后处理后的解码特征数据33并提供重建图像数据35。
后处理器36用于对重建图像数据35进行后处理,得到后处理后的重建图像数据37。后处理单元36判断的后处理可以包括例如颜色格式转换(例如从YCbCr转换为RGB)、调色、修剪或重采样,可以理解的是,后处理单元36可以为可选组件。
显示设备38用于接收重建图像数据35或后处理后的重建图像数据37,以向用户或观看者等显示图像。显示设备38可以为或包括任意类型的用于表示重建后音频或图像的播放器或显示器,例如,集成或外部显示屏或显示器。例如,显示屏可包括液晶显示器(liquidcrystal display,LCD)、有机发光二极管(organic light emitting diode,OLED)显示器、等离子显示器、投影仪、微型LED显示器、硅基液晶显示器(liquid crystal on silicon,LCoS)、数字光处理器(digital light processor,DLP)或任意类型的其它显示屏。
尽管图1A示出了源设备12和目的设备14作为独立的设备,但设备实施例也可以同时包括源设备12和目的设备14或同时包括源设备12和目的设备14的功能,即同时包括源设备12或对应功能和目的设备14或对应功能。在这些实施例中,源设备12或对应功能和目的设备14或对应功能可以使用相同硬件和/或软件或通过单独的硬件和/或软件或其任意组合来实现。
根据描述,图1A所示的源设备12和/或目的设备14中的不同单元或功能的存在和(准确)划分可能根据实际设备和应用而有所不同,这对技术人员来说是显而易见的。
特征数据编码器20A(例如图像特征图编码器或音频特征变量编码器)或特征数据解码器30A(例如图像特征图解码器或音频特征变量解码器)或两者都可通过如图1B所示的处理电路实现,例如一个或多个微处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application-specific integrated circuit,ASIC)、现场可编程门阵列(field-programmable gate array,FPGA)、离散逻辑、硬件、图像编码专用处理器或其任意组合。特征数据编码器20A可以通过处理电路56实现,特征数据解码器30A可以通过处理电路56实现。所述处理电路56可用于判断下文论述的各种操作。如果部分技术在软件中实施,则设备可以将软件的指令存储在合适的非瞬时性计算机可读存储介质中,并且使用一个或多个处理器在硬件中判断指令,从而判断本发明技术。特征数据编码器20A和特征数据解码器30A中的其中一个可作为组合编解码器(encoder/decoder,CODEC)的一部分集成在单个设备中,如图1B所示。
源设备12和目的设备14可包括各种设备中的任一种,包括任意类型的手持设备或固定设备,例如,笔记本电脑或膝上型电脑、手机、智能手机、平板或平板电脑、相机、台式计算机、机顶盒、电视机、显示设备、数字媒体播放器、视频游戏控制台、视频流设备(例如,内容业务服务器或内容分发服务器)、广播接收设备、广播发射设备,等等,并可以不使用或使用任意类型的操作系统。在一些情况下,源设备12和目的设备14可配备用于无线通信的组件。因此,源设备12和目的设备14可以是无线通信设备。
在一些情况下,图1A所示的译码系统10仅仅是示例性的,本申请提供的技术可适用于图像特征图或音频特征变量编码设置(例如,图像特征图编码或图像特征图解码),这些设置不一定包括编码设备与解码设备之间的任何数据通信。在其它示例中,数据从本地存储器中检索,通过网络发送,等等。图像特征图或音频特征变量编码设备可以对数据进行编码并将数据存储到存储器中,和/或图像特征图或音频特征变量解码设备可以从存储器中检索数据并对数据进行解码。在一些示例中,编码和解码由相互不通信而只是编码数据到存储器和/或从存储器中检索并解码数据的设备来判断。
图1B是根据一示例性实施例包含图1A的特征数据编码器20A和/或图1B的特征数据解码器30A的译码系统50的实例的说明图。译码系统50可以包含成像(或产生音频)设备51、编码器20A、解码器30A(和/或藉由处理电路56实施的特征数据编/解码器)、天线52、一个或多个处理器53、一个或多个内存存储器54和/或显示(或音频播放)设备55。
如图1B所示,成像(或产生音频)设备51、天线52、处理电路56、编码器20A、解码器30A、处理器53、内存存储器54和/或显示(或音频播放)设备55能够互相通信。在不同实例中,译码系统50可以只包含编码器20A或只包含解码器30A。
在一些实例中,天线52可以用于传输或接收特征数据的经编码比特流。另外,在一些实例中,显示(或音频播放)设备55可以用于呈现图像(或音频)数据。处理电路56可以包含专用集成电路(application-specific integrated circuit,ASIC)逻辑、图形处理器、通用处理器等。译码系统50也可以包含可选的处理器53,该可选处理器53类似地可以包含专用集成电路(application-specific integrated circuit,ASIC)逻辑、图形处理器、音频处理器、通用处理器等。另外,内存存储器54可以是任何类型的存储器,例如易失性存储器(例如,静态随机存取存储器(static random access memory,SRAM)、动态随机存储器(dynamic random access memory,DRAM)等)或非易失性存储器(例如,闪存等)等。在非限制性实例中,内存存储器54可以由超速缓存内存实施。在其它实例中,处理电路56可以包含存储器(例如,缓存等)用于实施图像缓冲器等。
在一些实例中,通过逻辑电路实施的编码器20A可以包含(例如,通过处理电路56或内存存储器54实施的)图像缓冲器和(例如,通过处理电路56实施的)图形处理单元。图形处理单元可以通信耦合至图像缓冲器。图形处理单元可以包含通过处理电路56实施的编码器20A。逻辑电路可以用于判断本文所论述的各种操作。
在一些实例中,解码器30A可以以类似方式通过处理电路56实施,以实施参照图1B的解码器30和/或本文中所描述的任何其它解码器系统或子系统所论述的各种模块。在一些实例中,逻辑电路实施的解码器30A可以包含(通过处理电路56或内存存储器54实施的)图像缓冲器和(例如,通过处理电路56实施的)图形处理单元。图形处理单元可以通信耦合至图像缓冲器。图形处理单元可以包含通过处理电路56实施的图像解码器30A。
在一些实例中,天线52可以用于接收图像数据的经编码比特流。如所论述,经编码比特流可以包含本文所论述的与编码音频或视频帧相关的数据、指示符、索引值、模式选择数据等,例如与编码分割相关的数据。译码系统50还可包含耦合至天线52并用于解码经编码比特流的解码器30A。显示(或音频播放)设备55用于呈现图像(或音频)。
应理解,本申请实施例中对于参考编码器20A所描述的实例,解码器30A可以用于判断相反过程。关于信令语法元素,解码器30A可以用于接收并解析这种语法元素,相应地解码相关图像数据。在一些例子中,编码器20A可以将语法元素熵编码成经编码比特流。在此类实例中,解码器30A可以解析这种语法元素,并相应地解码相关图像数据。
图1C为本发明实施例提供的译码设备400的示意图。译码设备400适用于实现本文描述的公开实施例。在一个实施例中,译码设备400可以是解码器,例如图1A中的图像特征图解码器30A,也可以是编码器,例如图1A中的图像特征图编码器20A。
图像译码设备400包括:用于接收数据的入端口410(或输入端口410)和接收单元(receiver unit,Rx)420;用于处理数据的处理器、逻辑单元或中央处理器(centralprocessing unit,CPU)430;例如,这里的处理器430可以是神经网络处理器430;用于传输数据的发送单元(transmitter unit,Tx)440和出端口450(或输出端口450);用于存储数据的存储器460。图像(或音频)译码设备400还可包括耦合到入端口410、接收单元420、发送单元440和出端口450的光电(optical-to-electrical,OE)组件和电光(electrical-to-optical,EO)组件,用于光信号或电信号的出口或入口。
处理器430通过硬件和软件实现。处理器430可实现为一个或多个处理器芯片、核(例如,多核处理器)、FPGA、ASIC和DSP。处理器430与入端口410、接收单元420、发送单元440、出端口450和存储器460通信。处理器430包括译码模块470(例如,基于神经网络NN的译码模块470)。译码模块470实施上文所公开的实施例。例如,译码模块470判断、处理、准备或提供各种编码操作。因此,通过译码模块470为译码设备400的功能提供了实质性的改进,并且影响了译码设备400到不同状态的切换。或者,以存储在存储器460中并由处理器430判断的指令来实现译码模块470。
存储器460包括一个或多个磁盘、磁带机和固态硬盘,可以用作溢出数据存储设备,用于在选择判断程序时存储此类程序,并且存储在程序判断过程中读取的指令和数据。存储器460可以是易失性和/或非易失性的,可以是只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、三态内容寻址存储器(ternary content-addressable memory,TCAM)和/或静态随机存取存储器(static random-access memory,SRAM)。
图1D为示例性实施例提供的装置500的简化框图,装置500可用作图1A中的源设备12和目的设备14中的任一个或两个。
装置500中的处理器502可以是中央处理器。或者,处理器502可以是现有的或今后将研发出的能够操控或处理信息的任何其它类型设备或多个设备。虽然可以使用如图所示的处理器502等单个处理器来实施已公开的实现方式,但使用一个以上的处理器速度更快和效率更高。
在一种实现方式中,装置500中的存储器504可以是只读存储器(ROM)设备或随机存取存储器(RAM)设备。任何其它合适类型的存储设备都可以用作存储器504。存储器504可以包括处理器502通过总线512访问的代码和数据506。存储器504还可包括操作系统508和应用程序510,应用程序510包括允许处理器502判断本文所述方法的至少一个程序。例如,应用程序510可以包括应用1至N,还包括判断本文所述方法的图像译码应用。
装置500还可以包括一个或多个输出设备,例如显示器518。在一个示例中,显示器518可以是将显示器与可用于感测触摸输入的触敏元件组合的触敏显示器。显示器518可以通过总线512耦合到处理器502。
虽然装置500中的总线512在本文中描述为单个总线,但是总线512可以包括多个总线。此外,辅助储存器可以直接耦合到装置500的其它组件或通过网络访问,并且可以包括存储卡等单个集成单元或多个存储卡等多个单元。因此,装置500可以具有各种各样的配置。
图2A示出了一种可能的图像特征图或音频特征变量编解码场景下的系统架构1800,包括:
采集设备1801:视频采集设备完成原始视频(或音频)采集;
采集前处理1802:原始视频(或音频)采集经过一系列的前处理得到视频(或音频)数据;
编码1803:视频(或音频)编码用于降低编码冗余,降低图像特征图或音频特征变量压缩过程中的数据传输量;
发送1804:将编码后得到的压缩编码码流数据通过发送模块进行数据发送;
接收1805:压缩编码码流数据经过网络传输被接收模块所接收;
码流解码1806:对码流数据进行码流解码;
渲染显示(或播放)1807:对解码后的数据进行渲染显示(或播放);
图2B示出了一种可能的图像特征图(或音频特征变量)面向机器任务场景下的系统架构1900,包括:
特征提取1901:对图像(或音频)源进行特征提取;
边信息提取1902:对特征提取数据进行边信息提取;
概率估计1903:边信息作为概率估计的输入,对特征图(或特征变量)进行概率估计以得到概率估计结果;
编码1904:结合概率估计结果对特征提取数据执行熵编码以得到码流;
可选的,在进行编码以前对特征提取数据执行量化或取整操作,然后对量化或取整后的特征提取数据进行编码。
可选的,对边信息执行熵编码,使得码流中包括了边信息数据。
解码1905:结合概率估计结果对码流执行熵解码得到图像特征图(或音频特征变量);
其中可选的,如码流中包括了边信息编码数据,对边信息编码数据执行熵解码,并结合解码的边信息数据作为概率估计的输入以得到概率估计结果。
需要说明的是,当只有边信息作为概率估计的输入时,可以并行输出各特征元素的概率估计结果;当概率估计的输入包括有上下文信息时,需要串行输出各特征元素概率估计结果。其中所述边信息为图像特征图或音频特征变量输入神经网络进一步提取得到的特征信息,所述边信息包含的特征元素的个数比图像特征图或音频特征变量的特征元素少。可选地,可以将图像特征图或音频特征变量的边信息编入码流。
机器视觉任务1906:对解码特征图(或特征变量)执行机器视觉(或听觉)任务。
具体的,将解码特征数据输入值机器视觉(或听觉)任务网络,网路输出为视觉(或听觉)任务相关如分类、目标识别、语义分割等任务的一维、二维或多维数据。
在一种可能实现上,在系统架构1900实现过程中,特征提取、编码过程在终端上实现,对解码以及执行机器视觉任务在云端上实现。
编码器20A可用于通过输入端202等接收图像(或图像数据)或音频(或音频数据)17。接收图像、图像数据、音频、音频数据也可以是预处理后的图像(或预处理后的图像数据)或音频(或预处理后的音频数据)19。为简单起见,以下描述使用图像(或音频)17。图像(或音频)17也可称为当前图像或待编码的图像(尤其是在视频编码中将当前图像与其它图像区分开时,其它图像例如同一视频序列,即也包括当前图像的视频序列中的之前编码后图像和/或解码后图像)或当前音频或待编码的音频。
(数字)图像为或可以视为具有强度值的像素点组成的二维阵列或矩阵。阵列中的像素点也可以称为像素(pixel或pel)(图像元素的简称)。阵列或图像在水平方向和垂直方向(或轴线)上的像素点数量决定了图像的大小和/或分辨率。为了表示颜色,通常采用三个颜色分量,即图像可以表示为或包括三个像素点阵列。在RBG格式或颜色空间中,图像包括对应的红色、绿色和蓝色像素点阵列。同样,每个像素可以以亮度/色度格式或颜色空间表示,例如YCbCr,包括Y指示的亮度分量(有时也用L表示)以及Cb、Cr表示的两个色度分量。亮度(luma)分量Y表示亮度或灰度水平强度(例如,在灰度等级图像中两者相同),而两个色度(chrominance,简写为chroma)分量Cb和Cr表示色度或颜色信息分量。相应地,YCbCr格式的图像包括亮度像素点值(Y)的亮度像素点阵列和色度值(Cb和Cr)的两个色度像素点阵列。RGB格式的图像可以转换或变换为YCbCr格式,反之亦然,该过程也称为颜色变换或转换。如果图像是黑白的,则该图像可以只包括亮度像素点阵列。相应地,图像可以为例如单色格式的亮度像素点阵列或4:2:0、4:2:2和4:4:4彩色格式的亮度像素点阵列和两个相应的色度像素点阵列。图像编码器20A对图像的色彩空间不做限制。
在一个可能性中,编码器20A的实施例可包括图像(或音频)分割单元(图1A或图1B中未示出),用于将图像(或音频)17分割成多个(通常不重叠)图像块203或音频段。这些图像块在H.265/HEVC和VVC标准中也可以称为根块、宏块(H.264/AVC)或编码树块(CodingTree Block,CTB),或编码树单元(Coding Tree Unit,CTU)。分割单元可用于对视频序列中的所有图像使用相同的块大小和使用限定块大小的对应网格,或在图像或图像子集或图像组之间改变块大小,并将每个图像分割成对应块。
在另一个可能性中,编码器可用于直接接收图像17的块203,例如,组成所述图像17的一个、几个或所有块。图像块203也可以称为当前图像块或待编码图像块。
与图像17一样,图像块203同样是或可认为是具有强度值(像素点值)的像素点组成的二维阵列或矩阵,但是图像块203的比图像17的小。换句话说,块203可包括一个像素点阵列(例如,单色图像17情况下的亮度阵列或彩色图像情况下的亮度阵列或色度阵列)或三个像素点阵列(例如,彩色图像17情况下的一个亮度阵列和两个色度阵列)或根据所采用的颜色格式的任何其它数量和/或类型的阵列。块203的水平方向和垂直方向(或轴线)上的像素点数量限定了块203的大小。相应地,块可以为M×N(M列×N行)个像素点阵列,或M×N个变换系数阵列等。
在另一个可能性中,图1A-1B或图3A-3D所示的编码器20A用于逐块对图像17进行编码。
在另一个可能性中,图1A-1B或图3A-3D所示的编码器20A用于对图像17进行编码。
在另一个可能性中,图1A-1B或图3A-3D所示的编码器20A还可以用于使用片(也称为视频片)分割编码图像,其中图像可以使用一个或多个片(通常为不重叠的)进行分割或编码。每个片可包括一个或多个块(例如,编码树单元CTU)或一个或多个块组(例如H.265/HEVC/VVC标准中的编码区块(tile)和VVC标准中的子图像(subpicture)。
在另一个可能性中,图1A-1B或图3A-3D所示的编码器20A还可以用于使用片/编码区块组(也称为视频编码区块组)和/或编码区块(也称为视频编码区块)对图像进行分割和/或编码,其中图像可以使用一个或多个片/编码区块组(通常为不重叠的)进行分割或编码,每个片/编码区块组可包括一个或多个块(例如CTU)或一个或多个编码区块等,其中每个编码区块可以为矩形等形状,可包括一个或多个完整或部分块(例如CTU)。
编码网络20
编码网络20用于通过编码网络根据输入数据来得到图像特征图或音频特征变量。
在一个可能性中,编码网络20如图4A所示,编码网络20包含多个网络层,任意一网络层可以为卷积层、归一化层、非线性激活层等。
在一个可能性中,编码网络20输入为至少一张待编码图像或至少一个待编码图像块。待编码图像为可以为原始图像,有损图像或者为残差图像。
在一个可能性中,编码网络20中的编码网络的网络结构示例如图4B所示,可见示例中编码网络包含了5个网络层,具体包括了三个卷积层以及两个非线性激活层。
取整24
取整用于通过例如标量量化或矢量量化对图像特征图或音频特征变量进行取整,得到取整后的图像特征图或音频特征变量。
在一个可能性中,编码器20A可用于输出取整参数(quantization parameter,QP),例如,直接输出或由编码决策实现单元进行编码或压缩后输出,例如使得解码器30A可接收并使用量化参数进行解码。
在一个可能性中,输出特征图或特征音频特征变量在进行取整前进行预处理,预处理可包括修剪、颜色格式转换(例如从RGB转换为YCbCr)、调色或去噪等。
概率估计40
概率估计根据的输入特征图或特征变量信息以得到图像特征图或音频特征变量的概率估计结果。
概率估计用于对取整后的图像特征图或音频特征变量进行概率估计。
概率估计可以为概率估计网络,概率估计网络为卷积网络,卷积网络中包括了卷积层和非线性激活层。以图4B为例,概率估计网络包含了5个网络层,具体包括了三个卷积层以及两个非线性激活层。概率估计可以采用非网络的传统概率估计方法实现。概率估计方法包括且不限于等最大似然估计、最大后验估计、极大似然估计等统计方法。
编码决策实现26
如图5所示,编码决策实现包括了编码元素判断以及熵编码。所述图像特征图或音频特征变量为编码网络所输出的一维、二维或多维数据,其中每个数据均为特征元素。编码元素判断261
编码元素判断是根据概率估计的概率估计结果信息来对图像特征图或音频特征变量中的每一个特征元素进行判断并根据判断结果决定具体对哪些特征元素执行熵编码。
图像特征图或音频特征变量的第P个特征元素的元素判断过程完成后,开始图像特征图的第P+1个特征元素的元素判断过程,其中P为正整数且P小于M。
熵编码262
熵编码可以采用各种公开的熵编码算法进行编码,譬如采用方案例如,可变长度编码(variable length coding,VLC)方案、上下文自适应VLC方案(context adaptiveVLC,CAVLC)、熵编码方案、二值化算法、上下文自适应二进制熵编码(context adaptivebinary arithmetic coding,CABAC)、基于语法的上下文自适应二进制熵编码(syntax-based context-adaptive binary arithmetic coding,SBAC)、概率区间分割熵(probability interval partitioning entropy,PIPE)编码或其它熵编码方法或技术。得到可以通过输出端212以编码比特流25等形式输出的编码图像数据25,使得解码器30A等可以接收并使用用于解码的参数。可将编码比特流25传输到解码器30A,或将其保存在存储器中稍后由解码器30A传输或检索。
另一种可能性中,熵编码可以采用熵编码网络进行编码,譬如采用卷积网络实现。
在一个可能性中,熵编码由于不知道取整特征图的真实字符概率,可以统计这些或相关的信息添加至熵编码中,把这些信息传到解码端。
联合网络44
联合网络是根据输入边信息得到图像特征图或音频特征变量的概率估计结果和决策信息。联合网络为多层网络,联合网络可以为卷积网络,卷积网络中包括了卷积层和非线性激活层。联合网络任意一网络层可以为卷积层、归一化层、非线性激活层等。
其中所述决策信息可以为一维、二维或多维数据,所述决策信息尺寸可以与图像特征图尺寸一致。
所述决策信息可以在联合网络中任意一网络层后输出。
所述概率估计结果可以在联合网络中任意一网络层后输出。
图6为联合网络的网络结构输出示例,网络结构包括4个网络层,其中决策信息在第四网络层后进行输出,概率估计结果在第二网络层后输出。
生成网络46
生成网络是根据输入概率估计结果得到图像特征图中各特征元素的决策信息。生成网络为多层网络,生成网络可以为卷积网络,卷积网络中包括了卷积层和非线性激活层。生成网络任意一网络层可以为卷积层、归一化层、非线性激活层等。
所述决策信息可以在生成网络中任意一网络层后输出。所述决策信息可以为一维、二维或多维数据。
图7为生成网络的网络结构输出决策信息示例,网络结构包括4个网络层。
解码决策实现30
如图8所示,解码决策实现包括了元素判断以及熵解码。所述图像特征图或音频特征变量为解码决策实现所输出的一维、二维或多维数据,其中每个数据均为特征元素。
解码元素判断301
解码元素判断根据概率估计的概率估计结果来对图像特征图或音频特征变量中的每一个特征元素进行判断并根据判断结果决定具体对哪些特征元素执行熵解码。解码元素判断对图像特征图或音频特征变量中的每一个特征元素进行判断并根据判断结果决定具体对哪些特征元素执行熵解码,可以看作是编码元素判断对图像特征图中的每一个特征元素进行判断并根据判断结果决定具体对哪些特征元素执行熵编码的逆过程。
熵解码302
熵解码可以采用各种公开的熵解码算法进行编码,譬如采用方案例如,可变长度编码(variable length coding,VLC)方案、上下文自适应VLC方案(context adaptiveVLC,CAVLC)、熵解码方案、二值化算法、上下文自适应二进制熵解码(context adaptivebinary arithmetic coding,CABAC)、基于语法的上下文自适应二进制熵解码(syntax-based context-adaptive binary arithmetic coding,SBAC)、概率区间分割熵(probability interval partitioning entropy,PIPE)编码或其它熵编码方法或技术。得到可以通过输出端212以编码比特流25等形式输出的编码图像(或音频)数据25,使得解码器30A等可以接收并使用用于解码的参数。可将编码比特流25传输到解码器30A,或将其保存在存储器中稍后由解码器30A传输或检索。
另一种可能性中,熵解码可以采用熵解码网络进行解码,譬如采用卷积网络实现。
解码网络34
解码网络用于将解码图像特征图或音频特征变量31或后处理解码图像特征图或音频特征变量33通过解码网络34以在像素域中得到重建图像(或音频)数据35或面向机器任务数据。
解码网络包含多个网络层,任意一网络层可以为卷积层、归一化层、非线性激活层等。解码网络单元306中可以存在包括叠加(concat)、相加、相减等操作。
在一个可能性中,解码网络中各网络层结构可以互为相同或者不同。
解码网络的结构示例如图9所示,可见示例中解码网络包含了5个网络层,具体包括了一个归一化层、两个卷积层以及两个非线性激活层。
解码网络输出重建图像(或音频),或者输出得到面向机器任务数据。具体的,所述解码网络可以包括目标识别网络,分类网络或者语义分割网络。
应理解,在编码器20A和解码器30A中,可以对当前步骤的处理结果进一步处理,然后输出到下一步骤。例如,在编码器单元或解码器单元之后,可以对编码器单元或解码器单元的处理结果进行进一步的运算或处理,例如裁剪(clip)或移位(shift)运算或滤波处理。
基于上文的描述,下面给出本申请实施例提供的一些图像特征图或音频特征变量的编解码方法。对于下文描述的各方法实施例,为了方便起见,将其都表述为一系列的动作步骤的组合,但是本领域技术人员应该知悉,本申请技术方案的具体实现并不受所描述的一系列的动作步骤的顺序的限制。
下面结合附图,对本申请的流程进行详细的描述。需要说明的是,流程图中的编码端过程具体可以由上述的编码器20A来执行,流程图中的解码端过程具体可以由上述的解码器30A来执行。
实施例一至实施例五中,第一特征元素或第二特征元素即为当前待编码特征元素或为当前待解码特征元素或,比如
Figure BDA0003267508820000291
决策图也可以称为决策图map。决策图优选的为二元图,二元图也可以称为二元图map。
在本申请实施例一中,图10A示出了具体实现流程1400,运行步骤如下:
编码端:
步骤1401:获取图像的特征图
本步骤具体由图3A中的编码网络204来实现,具体可以参照上述对编码网络20的描述。将图像分别输入特征提取模块输出图像的特征图y,特征图y可以是维度为wxhxc的三维数据。具体的,特征提取模块可以使用现有的神经网络来实现,在此不做限定。本步骤为现有技术。
特征量化模块对特征图y中的每个特征值进行量化,将浮点数的特征值进行四舍五入得到整数特征值,得到量化后的特征图
Figure BDA0003267508820000292
可以参照上述实施例对取整24的描述。
步骤1402:对特征图
Figure BDA0003267508820000293
进行概率估计得到各特征元素的概率估计结果,即特征图
Figure BDA0003267508820000294
中的每个特征元素
Figure BDA0003267508820000295
的概率分布:
其中,参数x,y,i为正整数,坐标(x,y,i)表示当前待编码特征元素的位置,具体的,坐标(x,y,i)表示当前待编码特征元素在当前三维特征图中相对于左上顶点的特征元素的位置。本步骤具体由图3A中的概率估计210来实现,具体可以参照上述对概率估计40的描述。具体可以使用概率分布模型来获得概率分布,例如使用单高斯模型(Gaussiansingle model,GSM)或者混合高斯模型(Gaussian mixture model,GMM)建模,首先将边信息
Figure BDA0003267508820000301
和上下文信息输入概率估计网络,对特征图
Figure BDA0003267508820000302
中的每个特征元素
Figure BDA0003267508820000303
进行概率估计得到各特征元素
Figure BDA0003267508820000304
的概率分布。概率估计网络可以使用基于深度学习网络,例如循环神经网络(Recurrent Neural Network,RNN)和卷积神经网络(Convolutional NeuralNetwork,PixelCNN)等,在此不做限定。将模型参数代入概率分布模型中,得到概率分布。
步骤1403:对特征图
Figure BDA0003267508820000305
执行熵编码得到压缩码流,并生成压缩码流。
本步骤具体由图3A中的编码决策实现208来实现,具体可以参照上述对编码决策实现26的描述。根据所述概率分布,得到当前待编码特征元素
Figure BDA0003267508820000306
取值为k的概率P,当当前待编码特征元素
Figure BDA0003267508820000307
的概率估计结果P不满足预设条件:当P大于(或者等于)第一阈值T0时,跳过当前待编码特征元素执行熵编码过程;否则,当当前待编码特征元素的概率估计结果P满足预设条件:当P小于第一阈值T0时,对当前待编码特征元素执行熵编码写入码流。其中,k可为任意整数,例如0,1,-1,2,3等。所述第一阈值T0为满足0<T0<1中的任一数,例如取值为0.99,0.98,0.97,0.95等。(可以认为每个特征元素的阈值都相同)。
步骤1404、编码器发送或存储压缩码流。
解码端:
步骤1411:获取解码图像特征图的码流
步骤1412:根据码流进行概率估计得到各特征元素的概率估计结果
本步骤具体由图10B中的的概率估计302来实现,具体可以参照上述对概率估计40的描述。对待解码特征图
Figure BDA0003267508820000308
中的每个特征元素
Figure BDA0003267508820000309
进行概率估计,得到待解码特征元素
Figure BDA00032675088200003010
的概率分布。待解码特征图
Figure BDA00032675088200003011
中包括多个特征元素,所述多个特征元素包括当前待解码特征元素。
解码端使用的概率估计网络结构图与本实施例的编码端概率估计网络结构相同。
步骤1413:对待解码特征图
Figure BDA00032675088200003012
执行熵解码
本步骤具体由图10B中的解码决策实现304来实现,具体可以参照上述对解码决策实现30的描述。根据当前待解码特征元素的概率分布,得到当前待解码特征元素取值为k的概率P,即当前待解码特征元素的概率估计结果P,当概率估计结果P不满足预设条件:P大于所述第一阈值T0时,不需要对当前待解码特征元素执行熵解码,将当前待解码特征元素数值设置为k,否则,当当前待解码特征元素满足预设条件:P小于或者等于所述第一阈值T0时,对码流执行熵解码,得到当前待解码特征元素的值。
其中所述第一阈值T0可以通过解析码流,从码流中获取索引号,解码端使用编码端相同的方式来构建阈值候选列表,然后根据阈值候选列表中预置和索引号的对应关系得到对应的阈值。其中,从码流中获取索引号即从序列头、图像头、Slice/条带或SEI中获取索引号。
或者可以直接解析码流,从码流中获取阈值,具体地,从序列头、图像头、Slice/条带或SEI中获取阈值。
或者根据与解码的阈值约定策略,直接设置固定阈值。
步骤1414:对解码后的特征图
Figure BDA0003267508820000311
进行重建,或者输入面向机器视觉任务模块执行相应的机器任务。本步骤具体可以由图10B中的解码网络306来实现,具体可以参照上述对解码网络34的描述。
情况一:将熵解码后的特征图
Figure BDA0003267508820000312
输入图像重建模块,神经网络输出重建图。所述神经网络可以采用任一结构,例如全连接网络、卷积神经网络、循环神经网络等。所述神经网络可以采用多层的结构深度神经网络结构来达到更好的估计效果。
情况二:将熵解码后的特征图
Figure BDA0003267508820000313
输入面向机器视觉任务模块执行相应的机器任务。例如完成物体分类、识别、分割等机器视觉任务。
以上解码端的k值与编码端的k值相对应设置。
图11A示出了本申请实施例二的具体实现流程1500,运行步骤如下:
需要说明的是,本实施例的方法一至方法六中:概率估计结果包括第一参数和第二参数;当所述概率分布为高斯分布时,第一参数为均值μ,第二参数为方差σ;当所述概率分布为拉普拉斯分布时,第一参数为位置参数μ,第二参数为尺度参数b。
编码端:
步骤1501:获取图像的特征图
本步骤具体由图3B中的编码网络204来实现,具体可以参照上述对编码网络20的描述。将图像分别输入特征提取模块输出图像的特征图y,特征图y可以是维度为wxhxc的三维数据。。具体的,特征提取模块可以使用现有的神经网络来实现,在此不做限定。本步骤为现有技术。
特征量化模块对特征图y中的每个特征值进行量化,将浮点数的特征值进行四舍五入得到整数特征值,得到量化后的特征图
Figure BDA0003267508820000314
步骤1502:图像的特征图
Figure BDA0003267508820000321
输入边信息提取模块,输出边信息
Figure BDA0003267508820000322
本步骤具体由图3B中的边信息提取单元214来实现。其中,边信息提取模块可以使用图12所示的网络来实现,边信息
Figure BDA0003267508820000323
可以理解为对特征图
Figure BDA0003267508820000324
进行进一步提取得到的特征图
Figure BDA0003267508820000325
Figure BDA0003267508820000326
所含包含的特征元素的个数比特征图
Figure BDA0003267508820000327
少。
需要说明的是,可以在本步骤中,对边信息
Figure BDA0003267508820000328
执行熵编码并写入码流,也可以在后续的步骤1504中对边信息
Figure BDA0003267508820000329
执行熵编码并写入码流,在此不做限定。
步骤1503:对特征图
Figure BDA00032675088200003210
进行概率估计得到各特征元素的概率估计结果。
本步骤具体由图3B中的概率估计210来实现,具体可以参照上述对概率估计40的描述。可以使用概率分布模型来获得概率估计结果及概率分布。其中,概率分布模型可以为:单高斯模型(Gaussian single model,GSM)或者非对称高斯模型或者混合高斯模型(Gaussian mixture model,GMM)或者拉普拉斯分布模型(Laplace distribution)。
当概率分布模型为高斯模型时(单高斯模型或者非对称高斯模型或者混合高斯模型),首先将边信息
Figure BDA00032675088200003211
或者上下文信息输入概率估计网络,对特征图
Figure BDA00032675088200003212
中的每个特征元素
Figure BDA00032675088200003213
进行概率估计得到均值参数μ和方差σ的值。进一步地,将所述均值参数μ和方差σ输入所使用的概率分布模型中,得到概率分布。此时概率估计结果为均值参数μ和方差σ。
当概率分布模型拉普拉斯分布模型时,首先将边信息
Figure BDA00032675088200003214
或者上下文信息输入概率估计网络,对特征图
Figure BDA00032675088200003215
中的每个特征元素
Figure BDA00032675088200003216
进行概率估计得到位置参数μ和尺度参数b的值。进一步地,将所述位置参数μ和尺度参数b输入所使用的概率分布模型中,得到概率分布。此时概率估计结果为位置参数μ和尺度参数b。
还可以将边信息
Figure BDA00032675088200003217
和/或上下文信息输入概率估计网络,对待编码特征图
Figure BDA00032675088200003218
中的每个特征元素
Figure BDA00032675088200003219
进行概率估计得到当前待编码特征元素
Figure BDA00032675088200003220
的概率分布。根据所述概率分布,得到当前待编码特征元素
Figure BDA00032675088200003221
取值为m的概率P。此时概率估计结果为当前待编码特征元素
Figure BDA00032675088200003222
取值为m的概率P。
其中,概率估计网络可以使用基于深度学习网络,例如循环神经网络(RecurrentNeural Network,RNN)和卷积神经网络(Convolutional Neural Network,PixelCNN)等,在此不做限定。
步骤1504:根据概率估计结果判断当前待编码特征元素
Figure BDA00032675088200003223
是否需要执行熵编码,并根据判断结果执行熵编码写入压缩码流(编码码流)或者不执行熵编码。仅当判断出需要对所述当前待编码第一特征元素执行熵编码时,对所述当前待编码特征元素执行熵编码。
本步骤具体由图3B中的编码决策实现208来实现,具体可以参照上述编码决策实现26的描述。根据概率估计结果判断当前待编码特征元素
Figure BDA0003267508820000331
是否需要执行熵编码可以使用以下方法中的一项或者多项。其中,参数x,y,i为正整数,坐标(x,y,i)表示当前待编码特征元素的位置,具体的,坐标(x,y,i)表示当前待编码特征元素在当前三维特征图中相对于左上顶点的特征元素的位置。
方法一:当所述概率分布模型为高斯分布时,根据所述第一特元素的概率估计结果判断是否对所述当前待编码特征元素执行熵编码,当当前待编码特征元素的高斯分布的均值参数μ和方差σ的值不满足预设条件:当均值μ与k的差的绝对值小于第二阈值T1且方差σ小于第三阈值T2时,不需要对当前待编码特征元素
Figure BDA0003267508820000332
执行熵编码过程,否则,当满足预设条件:当均值μ与k的差的绝对值大于或者等于第二阈值T1或方差σ小于第三阈值T2时,对当前待编码特征元素
Figure BDA0003267508820000333
执行熵编码写入码流。其中,k为任意的整数,例如0,1,-1,2,3等。T2取值为满足0<T2<1中的任一数,例如取值为0.2,0.3,0.4等。T1是大于或等于0小于1的数,例如0.01,0.02,0.001,0.002。
特别地,k取值为0时为最优值,可以直接判断当高斯分布的均值参数μ绝对值小于T1且高斯分布的方差σ小于T2时,则跳过对当前待编码特征元素
Figure BDA0003267508820000334
执行熵编码过程,否则,对当前待编码特征元素
Figure BDA0003267508820000335
执行熵编码写入码流。其中,T2的取值为满足0<T2<1中的任一数,例如取值为0.2,0.3,0.4等。T1是大于或等于0小于1的数,例如0.01,0.02,0.001,0.002。
方法二:当所述概率分布为高斯分布时,根据所述概率估计结果,得到当前待编码特征元素
Figure BDA0003267508820000336
的高斯分布的均值参数μ和方差σ的值,当均值μ、方差σ与k的关系满足abs(μ-k)+σ<T3时(不满足预设条件),跳过对当前待编码特征元素
Figure BDA0003267508820000337
执行熵编码过程,其中,abs(μ-k)表示计算均值μ与k的差的绝对值;否则,当当前待编码特征元素的概率估计结果满足abs(μ-k)+σ≥T3时(预设条件),对当前待编码特征元素
Figure BDA0003267508820000338
执行熵编码写入码流。其中,k为任意的整数,例如0,1,-1,-2,3等。其中,第四阈值T3是大于或等于0小于1的数,例如取值为0.2,0.3,0.4等。
方法三:当所述概率分布为拉普拉斯分布时,根据所述概率估计结果,得到当前待编码特征元素
Figure BDA0003267508820000339
的拉普拉斯分布的位置参数μ、尺度参数b的值。当位置参数μ、尺度参数b与k的关系满足abs(μ-k)+σ<T4(不满足预设条件)时,跳过对当前待编码特征元素
Figure BDA00032675088200003310
执行熵编码过程,其中,abs(μ-k)表示计算位置参数μ与k的差的绝对值;否则,当当前待编码特征元素的概率估计结果满足abs(μ-k)+σ≥T4(预设条件),对当前待编码特征元素
Figure BDA0003267508820000341
执行熵编码写入码流。其中,k为任意的整数,例如0,1,-1,-2,3等。第四阈值T4是大于或等于0小于0.5的数,例如取值为0.05,0.09,0.17等。
方法四:当所述概率分布为拉普拉斯分布时,根据所述概率估计结果,得到当前待编码特征元素
Figure BDA0003267508820000342
的拉普拉斯分布的位置参数μ、尺度参数b的值。当位置参数μ与k的差的绝对值小于第二阈值T5且尺度参数b小于第三阈值T6(不满足预设条件)时,跳过对当前待编码特征元素
Figure BDA0003267508820000343
执行熵编码过程,否则,当位置参数μ与k的差的绝对值小于第二阈值T5或尺度参数b大于或者等于第三阈值T6(预设条件)时,对当前待编码特征元素
Figure BDA0003267508820000344
执行熵编码写入码流。其中,k为任意的整数,例如0,1,-1,-2,3等。T5取值为1e-2,T6取值为满足T6<0.5中的任一数,例如取值为0.05,0.09,0.17等。
特别地,k取值为0时为最优值,可以直接判断当位置参数μ绝对值小于T5且尺度参数b小于T6时,则跳过对当前待编码特征元素
Figure BDA0003267508820000345
执行熵编码过程,否则,对当前待编码特征元素
Figure BDA0003267508820000346
执行熵编码写入码流。其中,阈值T5取值为1e-2,T2的取值为满足T6<0.5中的任一数,例如取值为0.05,0.09,0.17等。
方法五:当所述概率分布为混合高斯分布时,根据所述概率估计结果,得到当前待编码特征元素
Figure BDA0003267508820000347
的混合高斯分布的所有均值参数μi和方差σi的值。当混合高斯分布的所有均值与k的差的绝对值之和与所述混合高斯分布的任一方差的和小于第五阈值T7(不满足预设条件)时,跳过对当前待编码特征元素
Figure BDA0003267508820000348
执行熵编码过程;否则,当混合高斯分布的所有均值与k的差的绝对值之和与所述混合高斯分布的任一方差的和大于或者等于第五阈值T7(预设条件),对当前待编码特征元素
Figure BDA0003267508820000349
执行熵编码写入码流。其中,k为任意的整数,例如0,1,-1,-2,3等。T7是大于或等于0小于1的数,例如取值为0.2,0.3,0.4等。(可以认为每个特征元素的阈值都相同)
方法六:根据所述概率分布,得到当前待编码特征元素
Figure BDA00032675088200003410
取值为k的概率P,当当前待编码特征元素的概率估计结果P不满足预设条件:当P大于(或者等于)第一阈值T0时,跳过当前待编码特征元素执行熵编码过程;否则,当当前待编码特征元素的概率估计结果P满足预设条件:当P小于第一阈值T0时,对当前待编码特征元素执行熵编码写入码流。其中,k可为任意整数,例如0,1,-1,2,3等。所述第一阈值T0为满足0<T0<1中的任一数,例如取值为0.99,0.98,0.97,0.95等。(可以认为每个特征元素的阈值都相同)
需要说明的是,在实际应用中,为保证平台的一致性,可以对所述阈值T1,T2,T3,T4,T5和T6进行整点化,即进行移位放大为整数。
需要说明的是,阈值的获取方法还可以使用以下方法之一,在此不做限定:
方法一:以阈值T1为例,取T1取值范围内的任意一个取值作为阈值T1,将阈值T1写入码流。具体地,将所述阈值写入码流,可将其保存在序列头、图像头、Slice/条带或SEI中传送到解码端,还可以使用其他方法,在此不做限定。其余阈值T0,T2,T3,T4,T5和T6也可以使用类似方法。
方法二:编码端采用与解码端约定的固定阈值,无需写入码流,无需传输到解码端。例如,以阈值T1为例,直接取T1取值范围内任一值作为T1的取值。其余阈值T0,T2,T3,T4,T5和T6也可以使用类似方法。
方法三:构建阈值候选列表,将在T1取值范围内最有可能的取值放入阈值候选列表中,每个阈值对应一个阈值索引号,确定一个最优的阈值,将最优阈值作为T1的值,并将最优阈值的索引号作为T1的阈值索引号,将T1的阈值索引号写入码流。具体地,将所述阈值写入码流,可将其保存在序列头、图像头、Slice/条带或SEI中传送到解码端,还可以使用其他方法,在此不做限定。其余阈值T0,T2,T3,T4,T5和T6也可以使用类似方法。
步骤1505:编码器发送或存储压缩码流。
解码端:
步骤1511:获取待解码图像特征图的码流
步骤1512:获取各特征元素的概率估计结果
本步骤具体由图11A中的概率估计单元302来实现,具体可以参照上述对概率估计40的描述。对边信息
Figure BDA0003267508820000351
执行熵解码得到边信息
Figure BDA0003267508820000352
结合边信息
Figure BDA0003267508820000353
对待解码特征图
Figure BDA0003267508820000354
中的每个特征元素
Figure BDA0003267508820000355
进行概率估计,得到当前待解码特征元素
Figure BDA0003267508820000356
的概率估计结果。
需要说明的是,解码端使用的概率估计方法与本实施例编码端的概率估计方法对应相同,概率估计网络结构图与本实施例的编码端概率估计网络结构相同,在此不做赘述。
步骤1513:本步骤具体由图11A中的解码决策实现304来实现,具体可以参照上述对解码决策实现30的描述。根据概率估计结果判断当前待解码特征元素
Figure BDA0003267508820000357
是否需要执行熵解码,并根据判断结果执行或者不执行熵解码,得到解码后的特征图
Figure BDA0003267508820000358
根据概率估计结果判断当前待解码特征元素
Figure BDA0003267508820000359
是否需要执行熵解码可以使用以下方法中的一项或者多项。
方法一:当所述概率分布模型为高斯分布时,根据所述概率估计结果,得到当前待解码特征元素
Figure BDA0003267508820000361
的均值参数μ和方差σ的值,当均值μ与k的差的绝对值小于第二阈值T1且方差σ小于第三阈值T2时(不满足预设条件),将当前待解码特征元素
Figure BDA0003267508820000362
的数值设置为k,跳过对当前待解码特征元素
Figure BDA0003267508820000363
执行熵解码过程;否则,当均值μ与k的差的绝对值小于第二阈值T1或方差σ大于或等于第三阈值T2时(预设条件),对当前待解码特征元素
Figure BDA0003267508820000364
执行熵解码,得到当前待解码特征元素
Figure BDA0003267508820000365
的值。
特别地,k取值为0时为最优值,可以直接判断当高斯分布的均值参数μ绝对值小于T1且高斯分布的方差σ小于T2时,将当前待解码特征元素
Figure BDA0003267508820000366
的数值设置为k,则跳过对当前待解码特征元素
Figure BDA0003267508820000367
执行熵解码过程,否则,对当前待解码特征元素
Figure BDA0003267508820000368
执行熵解码,得到当前待解码特征元素
Figure BDA0003267508820000369
的值。
方法二:当所述概率分布为高斯分布时,根据所述概率估计结果,得到当前待解码特征元素
Figure BDA00032675088200003610
的均值参数μ和方差σ的值,当均值μ、方差σ与k的关系满足abs(μ-k)+σ<T3时(不满足预设条件),T3为第四阈值,将当前待解码特征元素
Figure BDA00032675088200003611
的数值设置为k,跳过对当前待解码特征元素
Figure BDA00032675088200003612
执行熵解码过程,否则,当当前待解码特征元素的概率估计结果满足abs(μ-k)+σ≥T3时(预设条件),对当前待解码特征元素
Figure BDA00032675088200003613
执行熵解码,得到当前待解码特征元素
Figure BDA00032675088200003614
的值。
方法三:当所述概率分布为拉普拉斯分布时,根据所述概率估计结果,得到位置参数μ、尺度参数b的值。当位置参数μ、尺度参数b与k的关系满足abs(μ-k)+σ<T4时(不满足预设条件),T4为第四阈值,将当前待解码特征元素
Figure BDA00032675088200003615
的数值设置为k,跳过对当前待解码特征元素
Figure BDA00032675088200003616
执行熵解码过程,否则,当当前待解码特征元素的概率估计结果满足abs(μ-k)+σ≥T4(预设条件),对当前待解码特征元素
Figure BDA00032675088200003617
执行熵解码,得到当前待解码特征元素
Figure BDA00032675088200003618
的值。
方法四:当所述概率分布为拉普拉斯分布时,根据所述概率估计结果,得到位置参数μ、尺度参数b的值。当位置参数μ与k的差的绝对值小于第二阈值T5且尺度参数b小于第三阈值T6时(不满足预设条件),将当前待解码特征元素
Figure BDA00032675088200003619
的数值设置为k,跳过对当前待解码特征元素
Figure BDA00032675088200003620
执行熵解码过程,否则,当位置参数μ与k的差的绝对值小于第二阈值T5或尺度参数b大于或者等于第三阈值T6(预设条件)时,对当前待解码特征元素
Figure BDA00032675088200003621
执行熵解码,得到当前待解码特征元素
Figure BDA00032675088200003622
的值。
特别地,k取值为0时为最优值,可以直接判断当位置参数μ绝对值小于T5且尺度参数b小于T6时,将当前待解码特征元素
Figure BDA00032675088200003623
的数值设置为k,跳过对当前待解码特征元素
Figure BDA0003267508820000371
执行熵解码过程,否则,对当前待解码特征元素
Figure BDA0003267508820000372
执行熵解码,得到当前待解码特征元素
Figure BDA0003267508820000373
的值。
方法五:当所述概率分布为混合高斯分布时,根据所述概率估计结果,得到当前待解码特征元素
Figure BDA0003267508820000374
的混合高斯分布的所有均值参数μi和方差σi的值。当混合高斯分布的所有均值与当前待解码特征元素取值k的差的绝对值之和与所述混合高斯分布的任一方差的和小于第五阈值T7时(不满足预设条件),将当前待解码特征元素
Figure BDA0003267508820000375
的数值设置为k,跳过对当前待解码特征元素
Figure BDA0003267508820000376
执行熵解码过程,否则,当混合高斯分布的所有均值与所述当前待解码特征元素取值k的差的绝对值之和与所述混合高斯分布的任一方差的和大于或者等于第五阈值T7(预设条件),对当前待解码特征元素
Figure BDA0003267508820000377
执行熵解码,得到当前待解码特征元素
Figure BDA0003267508820000378
的值。
方法六:根据当前待解码特征元素的概率分布,得到当前待解码特征元素取值为k的概率P,即当前待解码特征元素的概率估计结果P,当概率估计结果P不满足预设条件:P大于所述第一阈值T0时,不需要对当前待解码特征元素执行熵解码,将当前待解码特征元素数值设置为k,否则,当当前待解码特征元素满足预设条件:P小于或者等于所述第一阈值T0时,对码流执行熵解码,得到当前待解码特征元素的值。
以上解码端的k值与编码端的k值相对应设置。
其中,获取阈值T0,T1,T2,T3,T4,T5,T6和T7的方法与编码端对应,可使用以下方法之一:
方法一:从码流中获取阈值,具体地,从序列头、图像头、Slice/条带或SEI中获取阈值。
方法二:解码端采用与编码端约定的固定阈值。
方法三:从码流中获取阈值索引号,具体地,从序列头、图像头、Slice/条带或SEI中获取阈值索引号。然后解码端使用与编码端相同的方式构建阈值候选列表,根据阈值索引号在阈值候选列表中得到相应的阈值。
需要说明的是,在实际应用中,为保证平台的一致性,可以对所述阈值T1,T2,T3,T4,T5和T6进行整点化,即进行移位放大为整数。
步骤1514:与步骤1414相同。
图13A示出了本申请实施例三提供的具体实现流程1600,运行步骤如下:
编码端:
步骤1601:与步骤1501相同,本步骤具体由图3C中的编码网络204来实现,具体可以参照上述对编码网络20的描述;
步骤1602:与步骤1502相同,本步骤具体由图3C中的边信息提取214来实现;
步骤1603:对特征图
Figure BDA0003267508820000386
进行概率估计得到各特征元素的概率估计结果;
本步骤具体可以由图3C中的概率估计210来实现,具体可以参照上述对概率估计40的描述。可以使用概率分布模型来获得概率估计结果。其中,概率分布模型可以为:单高斯模型或者非对称高斯模型或者混合高斯模型或者拉普拉斯分布模型。
当概率分布模型为高斯模型时(单高斯模型或者非对称高斯模型或者混合高斯模型),首先将边信息
Figure BDA0003267508820000383
或者上下文信息输入概率估计网络,对特征图
Figure BDA0003267508820000384
中的每个特征元素
Figure BDA0003267508820000381
进行概率估计得到模型参数均值参数μ和方差σ的值,即概率估计结果。
当概率分布模型拉普拉斯分布模型时,首先将边信息
Figure BDA00032675088200003813
或者上下文信息输入概率估计网络,对特征图
Figure BDA0003267508820000385
中的每个特征元素
Figure BDA0003267508820000382
进行概率估计得到模型参数位置参数μ和尺度参数b的值,即概率估计结果。
进一步地,将所述概率估计结果输入所使用的概率分布模型中,得到概率分布。或者,
将边信息
Figure BDA00032675088200003814
和/或上下文信息输入概率估计网络,对待编码特征图
Figure BDA00032675088200003810
中的每个特征元素
Figure BDA0003267508820000388
进行概率估计得到当前待编码特征元素
Figure BDA0003267508820000387
的概率分布。根据所述概率分布,得到当前待编码特征元素
Figure BDA0003267508820000389
取值为m的概率P。其中,m为任意的整数,例如0,1,-1,-2,3等。
其中,概率估计网络可以使用基于深度学习网络,例如循环神经网络和卷积神经网络等,在此不做限定。
步骤1604:根据概率估计结果判断是否对所述当前待编码特征元素执行熵编码。根据所述判断结果对所述当前待编码特征元素执行熵编码并写入编码码流或不执行熵编码。仅当判断出需要对所述当前待编码特征元素执行熵编码时,对所述当前待编码特征元素执行熵编码。
本步骤具体由图3C中的生成网络216以及编码决策实现208来实现,具体可以参照上述对生成网络46和编码决策实现26的描述。将所述概率估计结果211输入判断模块,输出与特征图
Figure BDA00032675088200003811
维度相同的决策信息217。本实施例中决策信息217可以为三维的决策图map。其中,判断模块可以使用网络的方法来实现,即将所述概率估计结果或者概率分布输入图7所示的生成网络,网络输出决策图map。决策图map[x][y][i]为预设值表示对应位置的当前待编码特征元素
Figure BDA00032675088200003812
需要熵编码,根据概率分布对当前待编码特征元素执行熵编码。决策图map[x][y][i]为预设值表示对应位置的当前待编码特征元素
Figure BDA0003267508820000391
高概率取值为k,决策图map[x][y][i]不为预设值表示对应位置的当前待编码特征元素
Figure BDA0003267508820000392
不需要熵编码,即跳过熵编码的过程。其中,决策信息是与特征图
Figure BDA0003267508820000393
维度相同的决策图map。决策图map[x][y][i]表示决策图map中坐标位置为(x,y,i)处的值。当生成网络输出的决策图map中所述当前待编码特征元素
Figure BDA0003267508820000394
只有两种可选值时,预设值为特定某一数值,例如当前待编码特征元素可选数值为0和1时,预设值为0或1;当生成网络输出决策图map中当前待编码特征元素
Figure BDA0003267508820000395
有多种可选值时,预设值为一些特定数值,例如当前待编码特征元素
Figure BDA0003267508820000396
元素可选数值为0~255时,预设值为0~255的真子集。
在一种可能实现的方式中,将所述当前待编码特征元素的概率估计结果或者概率分布输入判断模块,判断模块直接输出当前待编码特征元素是否需要执行熵编码的决策信息。例如,判断模块输出的决策信息为预设值时,表示当前待编码特征元素需要执行熵编码,判断模块输出的决策信息不为预设值时,表示当前待编码特征元素不需要执行熵编码。判断模块可以通过网络的方法来实现,即将所述概率估计结果或者概率分布输入图7所示的生成网络,网络输出决策信息,即预设值。
方法一:决策信息是与特征图
Figure BDA0003267508820000397
维度相同的决策图map,决策图map[x][y][i]为预设值表示对应位置的当前待编码特征元素
Figure BDA0003267508820000398
需要熵编码,根据概率分布对当前待编码特征元素执行熵编码。决策图map[x][y][i]不为预设值表示对应位置的当前待编码特征元素
Figure BDA0003267508820000399
高概率取值为k,决策图map[x][y][i]为0表示对应位置的当前待编码特征元素
Figure BDA00032675088200003910
不需要熵编码,即跳过熵编码的过程。当决策图map中所述特征元素
Figure BDA00032675088200003911
只有两种可选值时,预设值为特定某一数值,例如特征元素可选数值为0和1时,预设值为0或1;当决策图map中特征元素
Figure BDA00032675088200003912
有多种可选值时,预设值为一些特定数值,例如特征元素
Figure BDA00032675088200003913
元素可选数值为0~255时,预设值为0~255的真子集。
方法二:决策信息是与特征图
Figure BDA00032675088200003914
维度相同的决策图map,决策图map[x][y][i]大于或等于阈值T0表示对应位置的当前待编码特征元素
Figure BDA00032675088200003915
需要熵编码,根据概率分布对当前待编码特征元素执行熵编码。决策图map[x][y][i]小于阈值T0表示对应位置的当前待编码特征元素
Figure BDA00032675088200003916
高概率取值为k,表示对应位置的当前待编码特征元素
Figure BDA00032675088200003917
不需要熵编码,即跳过熵编码的过程。根据决策图的数值范围,T0可为数值范围内的均值。
方法三:决策信息还可以是所述联合网络直接输出的标识或者标识的值,当决策信息为预设值时,表示当前待编码特征元素需要执行熵编码,判断模块输出的决策信息不为预设值时,表示当前待编码特征元素不需要执行熵编码。例如标识或者标识的值的可选数值为0和1时,则相应地预设值为0或1。当标识或者标识的值也可以有多种可选值时,预设值为一些特定数值,例如标识或者标识的值的可选数值为0~255时,预设值为0~255的真子集。
其中高概率是指:当前待编码特征元素
Figure BDA0003267508820000401
取值为k时的概率很高,大于阈值P,其中P可以是大于0.9的数,例如0.9,0.95或0.98等。
步骤1605:编码器发送或存储压缩码流。
对特征图
Figure BDA0003267508820000402
中的至少一个特征元素执行上述步骤1601到1604,以得到压缩码流,并将压缩码流传输到解码端。
解码端:
步骤1611:获取待解码的压缩码流
步骤1612:对待解码特征图
Figure BDA0003267508820000403
进行概率估计得到各特征元素的概率估计结果
本步骤具体可以由图13B中的概率估计302来实现,具体可以参照上述对概率估计40的描述。从码流中获取边信息
Figure BDA0003267508820000404
使用步骤1603中方法获取当前待解码特征元素的概率估计结果
步骤1613:获取决策信息,并根据决策信息判断是否执行熵解码。
本步骤具体可以由图13B中的生成网络310以及解码决策实现304来实现,具体可以参照上述对生成网络46和解码决策实现30的描述。使用与本实施例编码端相同的方法获取决策信息311。决策图map[x][y][i]为预设值表示对应位置的当前待解码特征元素
Figure BDA0003267508820000405
需要熵解码,根据概率分布对当前待解码特征元素执行熵解码。决策图map[x][y][i]不为预设值表示对应位置的当前待解码特征元素
Figure BDA0003267508820000406
不需要熵解码,即表示对应位置
Figure BDA0003267508820000407
为特定数值k。
在一种可能实现的方式中,将所述当前待解码特征元素的概率估计结果或者概率分布输入判断模块,判断模块直接输出当前待解码特征元素是否需要执行熵解码的决策信息。例如,判断模块输出的决策信息为预设值时,表示当前待解码特征元素需要执行熵解码,判断模块输出的决策信息不为预设值时,表示当前待解码特征元素不需要执行熵解码,将当前待解码特征元素的值设置为k。判断模块可以通过网络的方法来实现,即将所述概率估计结果或者概率分布输入图8所示的生成网络,网络输出决策信息,即预设值。此决策信息用于指示是否对所述当前待解码特征元素执行熵解码,所述决策信息可以包括决策图map。
步骤1614:步骤1414相同。
以上解码端的k值与编码端的k值相对应设置。
图14示出了本申请实施例四的具体实现流程1700,运行步骤如下:
编码端:
步骤1701:与步骤1501相同,本步骤具体可以由图3D中的编码网络204来实现,具体可以参照上述对编码网络20的描述;
步骤1702:与步骤1502相同,本步骤具体由图3D中的边信息提取214来实现;
步骤1703:获取特征图
Figure BDA0003267508820000412
中每个特征元素的概率估计结果和决策信息;
本步骤具体可以由图3D中的联合网络218来实现,具体可以参照上述对联合网络34的描述。具体的,将边信息
Figure BDA0003267508820000411
和/或上下文信息输入联合网络,联合网络输出待编码特征图
Figure BDA0003267508820000415
中的每个特征元素
Figure BDA0003267508820000414
的概率分布和/或概率估计结果,及与特征图
Figure BDA0003267508820000413
维度相同的决策信息。例如,当同时将边信息
Figure BDA0003267508820000416
和上下文信息输入联合网络,可采用网络结构如图15所示。
需要说明的是,本实施例对联合网络的具体结构不做约束。
需要说明的是,决策信息、概率分布和/或概率估计结果均可以从联合网络的不同层输出。例如:情况1)网络中间层输出决策信息,最后层输出概率分布和/或概率估计结果;情况2)网络中间层输出概率分布和/或概率估计结果,最后层输出决策信息;情况3)网络最后层一起输出决策信息及概率分布和/或概率估计结果。
当概率分布模型为高斯模型时(单高斯模型或者非对称高斯模型或者混合高斯模型),首先将边信息
Figure BDA0003267508820000419
或者上下文信息输入联合网络,得到模型参数均值参数μ和方差σ的值,即概率估计结果。进一步地,将概率估计结果输入高斯模型中,得到概率分布。
当概率分布模型拉普拉斯分布模型时,首先将边信息
Figure BDA00032675088200004110
或者上下文信息输入联合网络,得到模型参数位置参数μ和尺度参数b的值,即概率估计结果。进一步地,将概率估计结果输入拉普拉斯分布模型中,得到概率分布。
或者,将边信息
Figure BDA00032675088200004111
和/或上下文信息输入联合网络,得到当前待编码特征元素
Figure BDA0003267508820000417
的概率分布。根据所述概率分布,得到当前待编码特征元素
Figure BDA0003267508820000418
取值为m的概率P,为概率估计结果。其中,m为任意的整数,例如0,1,-1,-2,3等。
步骤1704,并根据决策信息判断是否执行熵编码;根据判断结果执行熵编码并写入压缩码流(编码码流)或者不执行熵编码。仅当判断出需要对所述当前待编码特征元素执行熵编码时,对所述当前待编码特征元素执行熵编码。本步骤具体可以由图3D中的编码决策实现208来实现,具体可以参照上述编码决策实现26的描述。
方法一:决策信息是与特征图
Figure BDA0003267508820000421
维度相同的决策图map,决策图map[x][y][i]为预设值表示对应位置的当前待编码特征元素
Figure BDA0003267508820000422
需要熵编码,根据概率分布对当前待编码特征元素执行熵编码。决策图map[x][y][i]不为预设值表示对应位置的当前待编码特征元素
Figure BDA0003267508820000423
高概率取值为k,决策图map[x][y][i]为0表示对应位置的当前待编码特征元素
Figure BDA0003267508820000424
不需要熵编码,即跳过熵编码的过程。当决策图map中所述当前待编码特征元素
Figure BDA0003267508820000425
只有两种可选值时,预设值为特定某一数值,例如当前待编码特征元素可选数值为0和1时,预设值为0或1;当决策图map中当前待编码特征元素
Figure BDA0003267508820000426
有多种可选值时,预设值为一些特定数值,例如当前待编码特征元素
Figure BDA0003267508820000427
元素可选数值为0~255时,预设值为0~255的真子集。
方法二:决策信息是与特征图
Figure BDA0003267508820000428
维度相同的决策图map,决策图map[x][y][i]大于或等于阈值T0表示对应位置的当前待编码特征元素
Figure BDA0003267508820000429
需要熵编码,根据概率分布对当前待编码特征元素执行熵编码。决策图map[x][y][i]小于阈值T0表示对应位置的当前待编码特征元素
Figure BDA00032675088200004210
高概率取值为k,表示对应位置的当前待编码特征元素
Figure BDA00032675088200004211
不需要熵编码,即跳过熵编码的过程。根据决策图map的数值范围,T0可为数值范围内的均值。
方法三:决策信息还可以是所述联合网络直接输出的标识或者标识的值,当决策信息为预设值时,表示当前待编码特征元素需要执行熵编码,判断模块输出的决策信息不为预设值时,表示当前待编码特征元素不需要执行熵编码。当联合网络输出决策图map中所述当前待编码特征元素只有两种可选值时,预设值为特定某一数值,例如所述当前待编码特征元素可选数值为0和1时,预设值为0或1;当联合网络输出决策图map中所述当前待编码特征元素有多种可选值时,预设值为一些特定数值,例如所述当前待编码特征元素可选数值为0~255时,预设值为0~255的真子集。
其中高概率是指:当前待编码特征元素
Figure BDA00032675088200004212
取值为m时的概率很高,例如取值为k时的概率大于阈值P,其中P可以是大于0.9的数,例如0.9,0.95或0.98等。
步骤1705:编码器发送或存储压缩码流。
解码端:
步骤1711:获取待解码图像特征图的码流,从码流中获取边信息
Figure BDA00032675088200004213
步骤1712:获取特征图
Figure BDA00032675088200004214
中每个特征元素的概率估计结果和决策信息
本步骤具体可以由图16中的联合网络312来实现,具体可以参照上述对联合网络34的描述。获取特征图
Figure BDA0003267508820000431
中每个特征元素的概率估计结果和决策信息的方法同步骤1703。
步骤1713:根据决策信息判断是否执行熵解码;根据判断结果执行或者不执行熵解码,本步骤具体可以由图16中的解码决策实现304来实现,具体可以参照上述对解码决策实现30的描述。
方法一:决策信息是决策图map,决策图map[x][y][i]为预设值表示对应位置的当前待解码特征元素
Figure BDA0003267508820000432
需要熵解码,根据概率分布对当前待解码特征元素执行熵解码。决策图map[x][y][i]不为预设值表示对应位置的当前待解码特征元素
Figure BDA0003267508820000433
不需要熵解码,即表示对应位置
Figure BDA0003267508820000434
设定为特定数值k。
方法二:决策信息是与特征图
Figure BDA0003267508820000435
维度相同的决策图map,决策图map[x][y][i]大于或等于阈值T0表示对应位置的当前待解码特征元素
Figure BDA0003267508820000436
需要熵解码。决策图map[x][y][i]小于阈值T0表示对应位置的当前待解码特征元素
Figure BDA0003267508820000437
高概率取值为k,表示对应位置的当前待解码特征元素
Figure BDA0003267508820000438
不需要熵解码,即表示对应位置
Figure BDA0003267508820000439
设定为特定数值k。T0取值与编码端相同。
方法三:决策信息还可以是所述联合网络直接输出的标识或者标识的值,当所述决策信息为预设值时,表示当前待解码特征元素需要执行熵解码,判断模块输出所述决策信息不为预设值时,表示当前待解码特征元素不需要执行熵解码,将当前待解码特征元素的值设置为k。当联合网络输出决策图map中所述当前待解码特征元素只有两种可选值时,预设值为特定某一数值,例如所述当前待解码特征元素可选数值为0和1时,预设值为0或1;当联合网络输出决策图map中所述当前待解码特征元素有多种可选值时,预设值为一些特定数值,例如所述当前待解码特征元素可选数值为0~255时,预设值为0~255的真子集。
步骤1714:与步骤1414相同,本步骤具体可以由上述实施例的解码器9C中的解码网络单元306来实现,具体可以参照上述实施例对解码网络单元306的描述。
以上解码端的k值与编码端的k值相对应设置。
图17示出了本申请实施例五的具体实现流程1800,运行步骤如下:
步骤1801:获取待编码音频数据的特征变量
待编码音频信号可以是时域音频信号;待编码音频信号可以是时域信号经过时频变换后得到的频域信号,例如频域信号可以是时域音频信号经过MDCT变换后的频域信号,时域音频信号经过FFT变换后的频域信号;待编码信号也可以是QMF滤波后的信号;待编码信号还可以是残差信号,例如其他编码的残差信号或者LPC滤波后的残差信号。
获取待编码音频数据的特征变量:可以是根据待编码音频信号提取特征矢量,例如根据待编码音频信号提取梅尔倒谱系数;对提取的特征矢量进行量化,将量化后的特征矢量作为待编码音频数据的特征变量。
获取待编码音频数据的特征变量:还可以利用现有的神经网络来实现,例如将待编码音频信号经过编码神经网络处理获得潜在变量,对神经网络输出的潜在变量进行量化,将量化后的潜在变量作为待编码音频数据的特征变量。编码神经网络处理是预先训练好的,本发明对编码神经网络的具体网络结构和训练方法不做限定。例如编码神经网络可以选择全连接网络或者CNN网络。本发明对编码神经网络包含的层数和每一层的节点数也不做限定。
不同结构的编码神经网络输出的潜在变量的形式可能不同。例如,编码神经网络是全连接网络,输出的潜在变量为一个矢量,矢量的维数M是潜在变量的大小(latentsize),例如y=[y(0),y(1),…,y(M-1)]。编码神经网络是CNN网络,输出的潜在变量为一个N*M维矩阵,其中N为CNN网络的通道数(channel),M为CNN网络的每个通道潜在变量的大小(latent size),如
Figure BDA0003267508820000441
对神经网络输出的潜在变量进行量化的具体方法可以是对潜在变量的每个元素进行标量量化,标量量化的量化步长可以根据不同的编码速率来确定。标量量化还可以存在偏置量,例如待量化的潜在变量经过偏置处理后再按照确定好的量化步长进行标量量化。对潜在变量进行量化的量化方法还可以使用其他的现有量化技术实现,本发明不做限定。
量化后的特征矢量或者量化后的潜在变量均可记作
Figure BDA0003267508820000442
即待编码音频数据的特征变量。
步骤1802:待编码音频数据的特征变量
Figure BDA0003267508820000443
输入边信息提取模块,输出边信息
Figure BDA0003267508820000444
其中,边信息提取模块可以使用图12所示的网络来实现,边信息
Figure BDA0003267508820000445
可以理解为对特征变量
Figure BDA0003267508820000446
进行进一步提取得到的特征变量
Figure BDA0003267508820000447
所含包含的特征元素的个数比特征变量
Figure BDA0003267508820000448
少。
需要说明的是,可以在本步骤中,对边信息
Figure BDA0003267508820000449
进行熵编码并写入码流,也可以在后续的步骤1804中对边信息
Figure BDA00032675088200004410
进行熵编码并写入码流,在此不做限定。
步骤1803:对特征变量
Figure BDA00032675088200004411
进行概率估计得到各特征元素的概率估计结果。
可以使用概率分布模型来获得概率估计结果及概率分布。其中,概率分布模型可以为:单高斯模型(Gaussian single model,GSM)或者非对称高斯模型或者混合高斯模型(Gaussian mixture model,GMM)或者拉普拉斯分布模型(Laplace distribution)。
下面以特征变量
Figure BDA0003267508820000451
为N*M维矩阵为例进行说明。当前待编码特征变量
Figure BDA0003267508820000452
中的特征元素记作
Figure BDA0003267508820000453
j∈[0,N-1],i∈[0,M-1]。
当概率分布模型为高斯模型时(单高斯模型或者非对称高斯模型或者混合高斯模型),首先将边信息
Figure BDA0003267508820000454
或者上下文信息输入概率估计网络,对特征变量
Figure BDA0003267508820000455
中的每个特征元素
Figure BDA0003267508820000456
进行概率估计得到均值参数μ和方差σ的值。进一步地,将所述均值参数μ和方差σ输入所使用的概率分布模型中,得到概率分布。此时概率估计结果为均值参数μ和方差σ。
也可以值估计方差,例如当概率分布模型为高斯模型时(单高斯模型或者非对称高斯模型或者混合高斯模型),首先将边信息
Figure BDA00032675088200004520
或者上下文信息输入概率估计网络,对特征变量
Figure BDA0003267508820000457
中的每个特征元素
Figure BDA0003267508820000458
进行概率估计得到方差σ的值。进一步地,将所述方差σ输入所使用的概率分布模型中,得到概率分布。此时概率估计结果为方差σ。
当概率分布模型拉普拉斯分布模型时,首先将边信息
Figure BDA0003267508820000459
或者上下文信息输入概率估计网络,对特征图变量
Figure BDA00032675088200004510
中的每个特征元素
Figure BDA00032675088200004511
进行概率估计得到位置参数μ和尺度参数b的值。进一步地,将所述位置参数μ和尺度参数b输入所使用的概率分布模型中,得到概率分布。此时概率估计结果为位置参数μ和尺度参数b。
还可以将边信息
Figure BDA00032675088200004512
和/或上下文信息输入概率估计网络,对待编码特征图
Figure BDA00032675088200004513
中的每个特征元素
Figure BDA00032675088200004514
进行概率估计得到当前待编码特征元素
Figure BDA00032675088200004515
的概率分布。根据所述概率分布,得到当前待编码特征元素
Figure BDA00032675088200004516
取值为m的概率P。此时概率估计结果为当前待编码特征元素
Figure BDA00032675088200004517
取值为m的概率P。
其中,概率估计网络可以使用基于深度学习网络,例如循环神经网络(RecurrentNeural Network,RNN)和卷积神经网络(Convolutional Neural Network,PixelCNN)等,在此不做限定。
步骤1804:根据概率估计结果判断当前待编码特征元素是否需要执行熵编码,并根据判断结果执行熵编码写入压缩码流(编码码流)或者不执行熵编码。
根据概率估计结果判断当前待编码特征元素
Figure BDA00032675088200004518
是否需要执行熵编码可以使用以下方法中的一项或者多项。其中,参数j,i为正整数,坐标(j,i)表示当前待编码特征元素的位置。或者,根据概率估计结果判断当前待编码特征元素
Figure BDA00032675088200004519
是否需要执行熵编码可以使用以下方法中的一项或者多项。其中,参数i为正整数,坐标i表示当前待编码特征元素的位置。
下面以根据概率估计结果判断当前待编码特征元素
Figure BDA0003267508820000461
是否需要执行熵编码为例进行说明,判断当前待编码特征元素
Figure BDA0003267508820000462
是否需要执行熵编码的方法类似,这里不再赘述。
方法一:当所述概率分布模型为高斯分布时,根据所述第一特元素的概率估计结果判断是否对所述当前待编码特征元素执行熵编码,当当前待编码特征元素的高斯分布的均值参数μ和方差σ的值满足第二条件:当均值μ与k的差的绝对值小于第二阈值T1且方差σ小于第三阈值T2时,不需要对当前待编码特征元素
Figure BDA0003267508820000463
执行熵编码过程,否则,当满足第一条件:当均值μ与k的差的绝对值大于或者等于第二阈值T1或方差σ小于第三阈值T2时,对当前待编码特征元素
Figure BDA0003267508820000464
进行熵编码写入码流。其中,k为任意的整数,例如0,1,-1,2,3等。T2取值为满足0<T2<1中的任一数,例如取值为0.2,0.3,0.4等。T1是大于或等于0小于1的数,例如0.01,0.02,0.001,0.002。
特别地,k取值为0时为最优值,可以直接判断当高斯分布的均值参数μ绝对值小于T1且高斯分布的方差σ小于T2时,则跳过对当前待编码特征元素
Figure BDA0003267508820000465
进行熵编码过程,否则,对当前待编码特征元素
Figure BDA0003267508820000466
进行熵编码写入码流。其中,T2的取值为满足0<T2<1中的任一数,例如取值为0.2,0.3,0.4等。T1是大于或等于0小于1的数,例如0.01,0.02,0.001,0.002。
方法二:当所述概率分布为高斯分布时,根据所述概率估计结果,得到当前待编码特征元素
Figure BDA0003267508820000467
的高斯分布的均值参数μ和方差σ的值,当均值μ、方差σ与k的关系满足abs(μ-k)+σ<T3时(第二条件),跳过对当前待编码特征元素
Figure BDA0003267508820000468
进行熵编码过程,其中,abs(μ-k)表示计算均值μ与k的差的绝对值;否则,当当前待编码特征元素的概率估计结果满足abs(μ-k)+σ≥T3时(第一条件),对当前待编码特征元素
Figure BDA0003267508820000469
进行熵编码写入码流。其中,k为任意的整数,例如0,1,-1,-2,3等。其中,第四阈值T3是大于或等于0小于1的数,例如取值为0.2,0.3,0.4等。
当所述概率分布为高斯分布时,如果对特征变量
Figure BDA00032675088200004613
中的每个特征元素
Figure BDA00032675088200004611
进行概率估计仅得到当前待编码特征元素
Figure BDA00032675088200004610
的高斯分布的方差σ的值,当方差σ满足σ<T3时(第二条件),跳过对当前待编码特征元素
Figure BDA00032675088200004614
进行熵编码过程;否则,当当前待编码特征元素的概率估计结果满足σ≥T3时(第一条件),对当前待编码特征元素
Figure BDA00032675088200004612
进行熵编码写入码流。其中,第四阈值T3是大于或等于0小于1的数,例如取值为0.2,0.3,0.4等。
方法三:当所述概率分布为拉普拉斯分布时,根据所述概率估计结果,得到当前待编码特征元素
Figure BDA0003267508820000471
的拉普拉斯分布的位置参数μ、尺度参数b的值。当位置参数μ、尺度参数b与k的关系满足abs(μ-k)+σ<T4(第二条件)时,跳过对当前待编码特征元素
Figure BDA0003267508820000472
进行熵编码过程,其中,abs(μ-k)表示计算位置参数μ与k的差的绝对值;否则,当当前待编码特征元素的概率估计结果满足abs(μ-k)+σ≥T4(第一条件),对当前待编码特征元素
Figure BDA0003267508820000473
进行熵编码写入码流。其中,k为任意的整数,例如0,1,-1,-2,3等。第四阈值T4是大于或等于0小于0.5的数,例如取值为0.05,0.09,0.17等。
方法四:当所述概率分布为拉普拉斯分布时,根据所述概率估计结果,得到当前待编码特征元素
Figure BDA0003267508820000474
的拉普拉斯分布的位置参数μ、尺度参数b的值。当位置参数μ与k的差的绝对值小于第二阈值T5且尺度参数b小于第三阈值T6(第二条件)时,跳过对当前待编码特征元素
Figure BDA0003267508820000475
进行熵编码过程,否则,当位置参数μ与k的差的绝对值小于第二阈值T5或尺度参数b大于或者等于第三阈值T6(第一条件)时,对当前待编码特征元素
Figure BDA0003267508820000476
进行熵编码写入码流。其中,k为任意的整数,例如0,1,-1,-2,3等。T5取值为1e-2,T6取值为满足T6<0.5中的任一数,例如取值为0.05,0.09,0.17等。
特别地,k取值为0时为最优值,可以直接判断当位置参数μ绝对值小于T5且尺度参数b小于T6时,则跳过对当前待编码特征元素
Figure BDA0003267508820000477
进行熵编码过程,否则,对当前待编码特征元素
Figure BDA0003267508820000478
进行熵编码写入码流。其中,阈值T5取值为1e-2,T2的取值为满足T6<0.5中的任一数,例如取值为0.05,0.09,0.17等。
方法五:当所述概率分布为混合高斯分布时,根据所述概率估计结果,得到当前待编码特征元素
Figure BDA0003267508820000479
的混合高斯分布的所有均值参数μi和方差σi的值。当混合高斯分布的所有均值与k的差的绝对值之和与所述混合高斯分布的任一方差的和小于第五阈值T7(第二条件)时,跳过对当前待编码特征元素
Figure BDA00032675088200004710
进行熵编码过程;否则,当混合高斯分布的所有均值与k的差的绝对值之和与所述混合高斯分布的任一方差的和大于或者等于第五阈值T7(第一条件),对当前待编码特征元素
Figure BDA00032675088200004711
进行熵编码写入码流。其中,k为任意的整数,例如0,1,-1,-2,3等。T7是大于或等于0小于1的数,例如取值为0.2,0.3,0.4等。(可以认为每个特征元素的阈值都相同)
方法六:根据所述概率分布,得到当前待编码特征元素
Figure BDA00032675088200004712
取值为k的概率P,当当前待编码特征元素的概率估计结果P满足第二条件:当P大于(或者等于)第一阈值T0时,跳过当前待编码特征元素进行熵编码过程;否则,当当前待编码特征元素的概率估计结果P满足第一条件:当P小于第一阈值T0时,对当前待编码特征元素进行熵编码写入码流。其中,k可为任意整数,例如0,1,-1,2,3等。所述第一阈值T0为满足0<T0<1中的任一数,例如取值为0.99,0.98,0.97,0.95等。(可以认为每个特征元素的阈值都相同)
需要说明的是,在实际应用中,为保证平台的一致性,可以对所述阈值T1,T2,T3,T4,T5和T6进行整点化,即进行移位放大为整数。
需要说明的是,阈值的获取方法还可以使用以下方法之一,在此不做限定:
方法一:以阈值T1为例,取T1取值范围内的任意一个取值作为阈值T1,将阈值T1写入码流。具体地,将所述阈值写入码流,可将其保存在序列头、图像头、Slice/条带或SEI中传送到解码端,还可以使用其他方法,在此不做限定。其余阈值T0,T2,T3,T4,T5和T6也可以使用类似方法。
方法二:编码端采用与解码端约定的固定阈值,无需写入码流,无需传输到解码端。例如,以阈值T1为例,直接取T1取值范围内任一值作为T1的取值。其余阈值T0,T2,T3,T4,T5和T6也可以使用类似方法。
方法三:构建阈值候选列表,将在T1取值范围内最有可能的取值放入阈值候选列表中,每个阈值对应一个阈值索引号,确定一个最优的阈值,将最优阈值作为T1的值,并将最优阈值的索引号作为T1的阈值索引号,将T1的阈值索引号写入码流。具体地,将所述阈值写入码流,可将其保存在序列头、图像头、Slice/条带或SEI中传送到解码端,还可以使用其他方法,在此不做限定。其余阈值T0,T2,T3,T4,T5和T6也可以使用类似方法。
步骤1805:编码器发送或存储压缩码流。
解码端:
步骤1811:获取待解码音频特征变量的码流
步骤1812:获取各特征元素的概率估计结果
对边信息
Figure BDA0003267508820000483
进行熵解码得到边信息
Figure BDA0003267508820000482
结合边信息
Figure BDA0003267508820000481
对待解码音频特征变量
Figure BDA0003267508820000484
中的每个特征元素
Figure BDA0003267508820000485
进行概率估计,得到当前待解码特征元素
Figure BDA0003267508820000486
的概率估计结果。其中,参数j,i为正整数,坐标(j,i)表示当前待解码特征元素的位置。或者,对边信息
Figure BDA0003267508820000487
进行熵解码得到边信息
Figure BDA00032675088200004810
结合边信息
Figure BDA0003267508820000489
对待解码音频特征变量
Figure BDA0003267508820000488
中的每个特征元素[i]进行概率估计,得到当前待解码特征元素
Figure BDA00032675088200004811
的概率估计结果。其中,参数i为正整数,坐标i表示当前待解码特征元素的位置。
需要说明的是,解码端使用的概率估计方法与本实施例编码端的概率估计方法对应相同,概率估计网络结构图与本实施例的编码端概率估计网络结构相同,在此不做赘述。
步骤1813:根据概率估计结果判断当前待解码特征元素是否需要执行熵解码,并根据判断结果执行或者不执行熵解码,得到解码后的特征变量
Figure BDA0003267508820000491
根据概率估计结果判断当前待解码特征元素
Figure BDA0003267508820000492
是否需要执行熵解码可以使用以下方法中的一项或者多项。或者,根据概率估计结果判断当前待解码特征元素
Figure BDA0003267508820000493
是否需要执行熵解码可以使用以下方法中的一项或者多项。
下面以根据概率估计结果判断当前待解码特征元素
Figure BDA0003267508820000494
是否需要执行熵解码为例进行说明,判断当前待解码特征元素
Figure BDA0003267508820000495
是否需要执行熵解码的方法类似,这里不再赘述。
方法一:当所述概率分布模型为高斯分布时,根据所述概率估计结果,得到当前待解码特征元素
Figure BDA0003267508820000496
的均值参数μ和方差σ的值,当均值μ与k的差的绝对值小于第二阈值T1且方差σ小于第三阈值T2时(第二条件),将当前待解码特征元素
Figure BDA0003267508820000497
的数值设置为k,跳过对当前待解码特征元素
Figure BDA0003267508820000498
进行熵解码过程;否则,当均值μ与k的差的绝对值小于第二阈值T1或方差σ大于或等于第三阈值T2时(第一条件),对当前待解码特征元素
Figure BDA00032675088200004910
进行熵解码,得到当前待解码特征元素
Figure BDA0003267508820000499
的值。
特别地,k取值为0时为最优值,可以直接判断当高斯分布的均值参数μ绝对值小于T1且高斯分布的方差σ小于T2时,将当前待解码特征元素
Figure BDA00032675088200004911
的数值设置为k,则跳过对当前待解码特征元素
Figure BDA00032675088200004912
进行熵解码过程,否则,对当前待解码特征元素
Figure BDA00032675088200004913
进行熵解码,得到当前待解码特征元素
Figure BDA00032675088200004914
的值。
方法二:当所述概率分布为高斯分布时,根据所述概率估计结果,得到当前待解码特征元素
Figure BDA00032675088200004915
的均值参数μ和方差σ的值,当均值μ、方差σ与k的关系满足abs(μ-k)+σ<T3时(第二条件),T3为第四阈值,将当前待解码特征元素
Figure BDA00032675088200004916
的数值设置为k,跳过对当前待解码特征元素
Figure BDA00032675088200004917
进行熵解码过程,否则,当当前待解码特征元素的概率估计结果满足abs(μ-k)+σ≥T3时(第一条件),对当前待解码特征元素
Figure BDA00032675088200004918
进行熵解码,得到当前待解码特征元素
Figure BDA00032675088200004919
的值。当所述概率分布为高斯分布时,如果根据所述概率估计结果,仅得到当前待解码特征元素
Figure BDA00032675088200004920
的方差σ的值,当方差σ关系满足σ<T3时(第二条件),T3为第四阈值,将当前待解码特征元素
Figure BDA00032675088200004921
的数值设置为0,跳过对当前待解码特征元素
Figure BDA00032675088200004922
进行熵解码过程,否则,当当前待解码特征元素的概率估计结果满足σ≥T3时(第一条件),对当前待解码特征元素
Figure BDA00032675088200004923
进行熵解码,得到当前待解码特征元素
Figure BDA00032675088200004924
的值。
方法三:当所述概率分布为拉普拉斯分布时,根据所述概率估计结果,得到位置参数μ、尺度参数b的值。当位置参数μ、尺度参数b与k的关系满足abs(μ-k)+σ<T4时(第二条件),T4为第四阈值,将当前待解码特征元素
Figure BDA0003267508820000501
的数值设置为k,跳过对特征元素
Figure BDA0003267508820000502
进行熵解码过程,否则,当当前待解码特征元素的概率估计结果满足abs(μ-k)+σ≥T4(第一条件),对特征元素
Figure BDA0003267508820000503
进行熵解码,得到特征元素
Figure BDA0003267508820000504
的值。
方法四:当所述概率分布为拉普拉斯分布时,根据所述概率估计结果,得到位置参数μ、尺度参数b的值。当位置参数μ与k的差的绝对值小于第二阈值T5且尺度参数b小于第三阈值T6时(第二条件),将当前待解码特征元素
Figure BDA0003267508820000505
的数值设置为k,跳过对当前待解码特征元素
Figure BDA0003267508820000506
进行熵解码过程,否则,当位置参数μ与k的差的绝对值小于第二阈值T5或尺度参数b大于或者等于第三阈值T6(第一条件)时,对当前待解码特征元素
Figure BDA0003267508820000507
进行熵解码,得到当前待解码特征元素
Figure BDA00032675088200005018
的值。
特别地,k取值为0时为最优值,可以直接判断当位置参数μ绝对值小于T5且尺度参数b小于T6时,将当前待解码特征元素
Figure BDA0003267508820000509
的数值设置为k,跳过对当前待解码特征元素
Figure BDA00032675088200005011
进行熵解码过程,否则,对当前待解码特征元素
Figure BDA00032675088200005010
进行熵解码,得到当前待解码特征元素
Figure BDA00032675088200005012
的值。
方法五:当所述概率分布为混合高斯分布时,根据所述概率估计结果,得到当前待解码特征元素
Figure BDA00032675088200005013
的混合高斯分布的所有均值参数μi和方差σi的值。当混合高斯分布的所有均值与k的差的绝对值之和与所述混合高斯分布的任一方差的和小于第五阈值T7时(第二条件),将当前待解码特征元素
Figure BDA00032675088200005014
的数值设置为k,跳过对当前待解码特征元素
Figure BDA00032675088200005015
进行熵解码过程,否则,当混合高斯分布的所有均值与k的差的绝对值之和与所述混合高斯分布的任一方差的和大于或者等于第五阈值T7(第一条件),对当前待解码特征元素
Figure BDA00032675088200005017
进行熵解码,得到当前待解码特征元素
Figure BDA00032675088200005016
的值。
方法六:根据当前待解码特征元素的概率分布,得到当前待解码特征元素取值为k的概率P,即当前待解码特征元素的概率估计结果P,当概率估计结果P满足第二条件:P大于所述第一阈值T0时,不需要对第一特征元素执行熵解码,将当前待解码特征元素数值设置为k,否则,当当前待解码特征元素满足第一条件:P小于或者等于所述第一阈值T0时,对码流进行熵解码,得到第一特征元素的值。
以上解码端的k值与编码端的k值相对应设置。
其中,获取阈值T0,T1,T2,T3,T4,T5,T6和T7的方法与编码端对应,可使用以下方法之一:
方法一:从码流中获取阈值,具体地,从序列头、图像头、Slice/条带或SEI中获取阈值。
方法二:解码端采用与编码端约定的固定阈值。
方法三:从码流中获取阈值索引号,具体地,从序列头、图像头、Slice/条带或SEI中获取阈值索引号。然后解码端使用与编码端相同的方式构建阈值候选列表,根据阈值索引号在阈值候选列表中得到相应的阈值。
需要说明的是,在实际应用中,为保证平台的一致性,可以对所述阈值T1,T2,T3,T4,T5和T6进行整点化,即进行移位放大为整数。
步骤1814:对解码后的特征变量
Figure BDA0003267508820000511
进行重建,或者输入面向机器听觉任务模块执行相应的机器任务。本步骤具体可以由图10B中的解码网络306来实现,具体可以参照上述对解码网络34的描述。
情况一:将熵解码后的特征变量
Figure BDA0003267508820000512
输入图像重建模块,神经网络输出重建音频。所述神经网络可以采用任一结构,例如全连接网络、卷积神经网络、循环神经网络等。所述神经网络可以采用多层的结构深度神经网络结构来达到更好的估计效果。
情况二:将熵解码后的特征变量
Figure BDA0003267508820000513
输入面向机器听觉任务模块执行相应的机器任务。例如完成音频分类、识别等机器听觉任务。
以上解码端的k值与编码端的k值相对应设置。
图18为本申请编码装置的一个示例性的结构示意图,如图18所示,本示例的装置可以对应于编码器20A。该装置可以包括:获得模块2001和编码模块2002。获得模块2001可以包括前述实施例中的编码网络204、取整206(可选)、概率估计210、边信息提取214、生成网络216(可选)及联合网络218(可选)。编码模块2002包括前述实施例中的编码决策实现208。其中,
获得模块2001,用于获取待编码特征数据,所述待编码特征数据包括多个特征元素,所述多个特征元素包括第一特征元素,以及用于获取所述中第一特征元素的概率估计结果;编码模块2002,用于根据所述第一特征元素的概率估计结果,判断是否对所述第一特征元素执行熵编码;仅当判断出需要对所述第一特征元素执行熵编码时,对所述第一特征元素执行熵编码。
在一种可能的实现方式中,所述判断是否对所述特征数据的第一特征元素执行熵编码包括:当所述特征数据的第一特征元素的概率估计结果满足预设条件,需要对所述特征数据的第一特征元素熵编码;当所述特征数据的第一特征元素的概率估计结果不满足预设条件,不需要对所述特征数据的第一特征元素熵编码。
在一种可能的实现方式中,所述编码模块,还用于根据所述特征数据的概率估计结果判断:所述特征数据的概率估计结果输入生成网络,网络输出决策信息。当所述第一特征元素的决策信息的取值为1时,需要对所述特征数据的第一特征元素编码;当所述第一特征元素的决策信息的取值不为1时,不需要对所述特征数据的第一特征元素编码。
在一种可能的实现方式中,所述预设条件为第一特征元素取值为k的概率值小于或等于第一阈值,其中k为整数。
在一种可能的实现方式中,所述预设条件为所述第一特征元素的概率分布的均值与第一特征元素取值k的差的绝对值大于或等于第二阈值或所述第一特征元素的方差大于或等于第三阈值,其中k为整数。
在另一种可能的实现方式中,所述预设条件为所述第一特征元素的概率分布的均值与第一特征元素取值k的差的绝对值与所述第一特征元素的概率分布的方差的和大于或等于第四阈值,其中k为整数。
在一种可能的实现方式中,所述第一特征元素取值为k的概率值为所述第一特征元素的所有可能的取值的概率值中的最大概率值。
在一种可能的实现方式中,对所述特征数据进行概率估计以得到所述特征数据中各特征元素的概率估计结果,其中所述第一特征元素的概率估计结果包括所述第一特征元素的概率值,和/或所述概率分布的第一参数和所述概率分布的第二参数。
在一种可能的实现方式中,将所述特征数据的概率估计结果输入生成网络以得到所述第一特征元素的决策信息。根据所述第一特征元素的决策信息,判断是否对所述第一特征元素执行熵编码。
在一种可能的实现方式中,当所述特征数据的决策信息为决策图时,则所述决策图中对应所述第一特征元素所在位置的值为预设值时,判断需要对所述第一特征元素执行熵编码;当所述决策图中对应所述第一特征元素所在位置的值不为预设值时,判断不需要对所述第一特征元素执行熵编码。
在一种可能的实现方式中,当所述特征数据的决策信息为预设值时,判断需要对所述第一特征元素执行熵编码;当所述决策信息不为预设值时,判断不需要对所述第一特征元素执行熵编码。在一种可能的实现方式中,所述编码模块,还用于构建第一阈值的阈值候选列表,将所述第一阈值放入所述第一阈值的阈值候选列表中且对应有所述第一阈值的索引号,将所述第一阈值的索引号写入编码码流,其中所述第一阈值的阈值候选列表的长度可以设置为T;T为大于或等于1的整数。
本实施例的装置,可以用于图3A-3D所示方法实施例中由编码器实施的技术方案,其实现原理和技术效果类似,此处不再赘述。
图19为本申请解码装置的一个示例性的结构示意图,如图19所示,本示例的装置可以对应于解码器30。该装置可以包括:获得模块2101和解码模块2102。获得模块2101可以包括前述实施例中的概率估计302、生成网络310(可选)及联合网络312。解码模块2102包括前述实施例中的解码决策实现304和解码网络306。其中,
获得模块2101,用于获取待解码特征数据的码流,所述待解码特征数据包括多个特征元素,所述多个特征元素包括第一特征元素;获取所述第一特征元素的概率估计结果;解码模块2102,用于根据所述第一特征元素的概率估计结果,判断是否对所述第一特征元素执行熵解码;仅当判断出需要对所述第一特征元素执行熵解码时,对所述第一特征元素执行熵解码。
在一种可能的实现方式中,所述判断是否对所述特征数据的第一特征元素熵解码包括:当所述特征数据的第一特征元素的概率估计结果满足预设条件,需要对所述特征数据的第一特征元素解码;或当所述特征数据的第一特征元素的概率估计结果不满足预设条件,不需要对所述特征数据的第一特征元素解码,将第一特征元素的特征值设置为k;其中k为整数。
在一种可能的实现方式中,所述解码模块,还用于根据所述特征数据的概率估计结果判断:所述特征数据的概率估计结果输入判断网络模块,网络输出决策信息。当所述决策信息中对应所述特征数据的第一特征元素位置的取值为1时,对所述特征数据的第一特征元素解码;当所述决策信息中对应所述特征数据的第一特征元素位置的取值不为1时,不对所述特征数据的第一特征元素解码,将第一特征元素的特征值设置为k,其中k为整数。
在一种可能的实现方式中,所述预设条件为第一特征元素取值为k的概率值小于等于第一阈值,其中k为整数。
在另一种可能的实现方式中,所述预设条件为所述第一特征元素的概率分布的均值与所述第一特征元素取值k的差的绝对值大于或等于第二阈值或所述第一特征元素的概率分布的方差大于或等于第三阈值。
在另一种可能的实现方式中,所述预设条件为所述第一特征元素的概率分布的均值与所述第一特征元素取值k的差的绝对值与所述第一特征元素的概率分布的方差的和大于或等于第四阈值。
在一种可能的实现方式中,对所述特征数据进行概率估计以得到所述特征数据中各特征元素的概率估计结果,其中所述第一特征元素的概率估计结果包括所述第一特征元素的概率值,和/或所述概率分布的第一参数和所述概率分布的第二参数。
在一种可能的实现方式中,所述第一特征元素取值为k的概率值为所述第一特征元素的所有可能的取值的概率值中的最大概率值。
在一种可能的实现方式中,所述第N个特征元素的概率估计结果包括至少以下一项:所述第N个特征元素的概率值,概率分布的第一参数和概率分布的第二参数以及决策信息。当所述决策信息中对应所述特征数据的第一特征元素位置的取值为1时,对所述特征数据的第一特征元素解码;当所述决策信息中对应所述特征数据的第一特征元素位置的取值不为1时,不对所述特征数据的第一特征元素解码,将第一特征元素的特征值设置为k,其中k为整数。
在一种可能的实现方式中,将所述特征数据的概率估计结果输入生成网络以得到所述第一特征元素的决策信息;当所述第一特征元素的决策信息的值为预设值时,判断需要对所述第一特征元素执行熵解码;当所述第一特征元素的决策信息的值不为预设值时,判断不需要对所述第一特征元素执行熵解码,将第一特征元素的特征值设置为k,其中k为整数且k为所述第一特征元素的多个候选取值中的一个。
在一种可能的实现方式中,所述获得模块,还用于构建第一阈值的阈值候选列表,通过对所述码流进行解码以得到所述第一阈值的阈值候选列表的索引号,将所述第一阈值的索引号所对应所述第一阈值的阈值候选列表位置的值作为所述第一阈值的值,其中所述第一阈值的阈值候选列表的长度可以设置为T;T为大于或等于1的整数。
本实施例的装置,可以用于图10B,13B,16所示方法实施例中由解码器实施的技术方案,其实现原理和技术效果类似,此处不再赘述。
本领域技术人员能够领会,结合本文公开描述的各种说明性逻辑框、模块和算法步骤所描述的功能可以硬件、软件、固件或其任何组合来实施。如果以软件来实施,那么各种说明性逻辑框、模块、和步骤描述的功能可作为一或多个指令或代码在计算机可读媒体上存储或传输,且由基于硬件的处理单元判断。计算机可读媒体可包含计算机可读存储媒体,其对应于有形媒体,例如数据存储媒体,或包括任何促进将计算机程序从一处传送到另一处的媒体(例如,根据通信协议)的通信媒体。以此方式,计算机可读媒体大体上可对应于(1)非暂时性的有形计算机可读存储媒体,或(2)通信媒体,例如信号或载波。数据存储媒体可为可由一或多个计算机或一或多个处理器存取以检索用于实施本申请中描述的技术的指令、代码和/或数据结构的任何可用媒体。计算机程序产品可包含计算机可读媒体。
作为实例而非限制,此类计算机可读存储媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、快闪存储器或可用来存储指令或数据结构的形式的所要程序代码并且可由计算机存取的任何其它媒体。并且,任何连接被恰当地称作计算机可读媒体。举例来说,如果使用同轴缆线、光纤缆线、双绞线、数字订户线(DSL)或例如红外线、无线电和微波等无线技术从网站、服务器或其它远程源传输指令,那么同轴缆线、光纤缆线、双绞线、DSL或例如红外线、无线电和微波等无线技术包含在媒体的定义中。但是,应理解,所述计算机可读存储媒体和数据存储媒体并不包括连接、载波、信号或其它暂时媒体,而是实际上针对于非暂时性有形存储媒体。如本文中所使用,磁盘和光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光以光学方式再现数据。以上各项的组合也应包含在计算机可读媒体的范围内。
可通过例如一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效集成或离散逻辑电路等一或多个处理器来判断指令。因此,如本文中所使用的术语“处理器”可指前述结构或适合于实施本文中所描述的技术的任一其它结构中的任一者。另外,在一些方面中,本文中所描述的各种说明性逻辑框、模块、和步骤所描述的功能可以提供于经配置以用于编码和解码的专用硬件和/或软件模块内,或者并入在组合编解码器中。而且,所述技术可完全实施于一或多个电路或逻辑元件中。
本申请的技术可在各种各样的装置或设备中实施,包含无线手持机、集成电路(IC)或一组IC(例如,芯片组)。本申请中描述各种组件、模块或单元是为了强调用于判断所揭示的技术的装置的功能方面,但未必需要由不同硬件单元实现。实际上,如上文所描述,各种单元可结合合适的软件和/或固件组合在编码解码器硬件单元中,或者通过互操作硬件单元(包含如上文所描述的一或多个处理器)来提供。
以上所述,仅为本申请示例性的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。

Claims (70)

1.一种特征数据的编码方法,其特征在于,包括:
获取待编码特征数据,所述待编码特征数据包括多个特征元素,所述多个特征元素包括第一特征元素;
获取所述第一特征元素的概率估计结果;
根据所述第一特征元素的概率估计结果,判断是否对所述第一特征元素执行熵编码;
仅当判断出需要对所述第一特征元素执行熵编码时,对所述第一特征元素执行熵编码。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一特征元素的概率估计结果,判断是否对所述第一特征元素执行熵编码包括:
当所述第一特征元素的概率估计结果满足预设条件时,判断需要对所述第一特征元素执行熵编码;或
当所述第一特征元素的概率估计结果不满足预设条件时,判断不需要对所述第一特征元素执行熵编码。
3.根据权利要求2所述的方法,其特征在于,所述第一特征元素的概率估计结果为所述第一特征元素取值为k的概率值,则所述预设条件为所述第一特征元素取值为k的概率值小于或等于第一阈值,其中k为整数且k为所述第一特征元素的多个候选取值中的一个。
4.根据权利要求2所述的方法,其特征在于,所述第一特征元素的概率估计结果包括所述第一特征元素概率分布的第一参数和第二参数,则所述预设条件为:
所述第一特征元素的概率分布的所述第一参数与所述第一特征元素取值为k的差的绝对值大于或等于第二阈值;或
所述第一特征元素的概率分布的所述第二参数大于或等于第三阈值;或
所述第一特征元素的概率分布的所述第一参数与所述第一特征元素取值为k的差的绝对值与所述第一特征元素的概率分布的所述第二参数的和大于或等于第四阈值,其中k为整数且k为所述第一特征元素的多个候选取值中的一个。
5.根据权利要求4项所述的方法,其特征在于:
当所述概率分布为高斯分布,所述第一特征元素概率分布的第一参数为所述第一特征元素高斯分布的均值,所述第一特征元素概率分布的第二参数为所述第一特征元素高斯分布的方差;或
当所述概率分布为拉普拉斯分布,所述第一特征元素概率分布的第一参数为所述第一特征元素拉普拉斯分布的位置参数,所述第一特征元素概率分布的第二参数为所述第一特征元素拉普拉斯分布的尺度参数。
6.根据权利要求3所述的方法,其特征在于,所述方法还包括:
构建阈值候选列表,将所述第一阈值放入所述阈值候选列表中,且将对应有所述第一阈值的索引号写入编码码流,其中所述阈值候选列表的长度为T,T为大于或等于1的整数。
7.根据权利要求2所述的方法,其特征在于,所述第一特征元素的概率估计结果通过混合高斯分布获得时,则所述预设条件为:
所述第一特征元素的混合高斯分布的所有均值与所述第一特征元素的取值为k的差的绝对值之和与所述第一特征元素的混合高斯分布的任一方差的和大于或等于第五阈值;或
所述第一特征元素的混合高斯分布的任一均值与所述第一特征元素的取值为k的差大于或等于第六阈值;或
所述第一特征元素的混合高斯分布的任一方差大于或等于第七阈值;
其中k为整数且k为所述第一特征元素的多个候选取值中的一个。
8.根据权利要求2所述的方法,其特征在于,所述第一特征元素的概率估计结果通过非对称高斯分布获得时,则所述预设条件为:
所述第一特征元素的非对称高斯分布的均值与所述第一特征元素的取值为k的差的绝对值大于或等于第八阈值;或
所述第一特征元素的非对称高斯分布的第一方差大于或等于第九阈值;或
所述第一特征元素的非对称高斯分布的第二方差大于或等于第十阈值;
其中k为整数且k为所述第一特征元素的多个候选取值中的一个。
9.根据权利要求3-8任一所述的方法,其特征在于:
所述第一特征元素取值为k的概率值为所述第一特征元素的所有候选取值的概率值中的最大概率值。
10.根据权利要求1所述的方法,其特征在于,所述根据所述第一特征元素的概率估计结果,判断是否对所述第一特征元素执行熵编码包括:
将所述特征数据的概率估计结果输入生成网络以得到所述第一特征元素的决策信息,根据所述第一特征元素的决策信息,判断是否对所述第一特征元素执行熵编码。
11.根据权利要求10所述的方法,其特征在于,当所述特征数据的决策信息为决策图时,则所述决策图中对应所述第一特征元素所在位置的值为预设值时,判断需要对所述第一特征元素执行熵编码;
当所述决策图中对应所述第一特征元素所在位置的值不为预设值时,判断不需要对所述第一特征元素执行熵编码。
12.根据权利要求10所述的方法,其特征在于,当所述特征数据的决策信息为预设值时,判断需要对所述第一特征元素执行熵编码;
当所述决策信息不为预设值时,判断不需要对所述第一特征元素执行熵编码。
13.根据权利要求1-12任一所述的方法,其特征在于,所述多个特征元素还包括第二特征元素,当判断出不需要对所述第二特征元素执行熵编码时,跳过对所述第二特征元素执行熵编码。
14.根据权利要求1-13任一所述的方法,其特征在于,所述方法还包括:
将包括所述第一特征元素的多个特征元素的熵编码结果写入编码码流。
15.一种特征数据的解码方法,其特征在于,包括:
获取待解码特征数据的码流;
所述待解码特征数据包括多个特征元素,所述多个特征元素包括第一特征元素;
获取所述第一特征元素的概率估计结果;
根据所述第一特征元素的概率估计结果,判断是否对所述第一特征元素执行熵解码;
仅当判断出需要对所述第一特征元素执行熵解码时,对所述第一特征元素执行熵解码。
16.根据权利要求15所述的方法,其特征在于,所述根据所述第一特征元素的概率估计结果,判断是否对所述第一特征元素执行熵解码包括:
当所述第一特征元素的概率估计结果满足预设条件时,判断需要对所述特征数据的第一特征元素执行熵解码;或
当所述第一特征元素的概率估计结果不满足预设条件时,判断不需要对所述特征数据的第一特征元素执行熵解码,将所述第一特征元素的特征值设置为k,其中k为整数且k为所述第一特征元素的多个候选取值中的一个。
17.根据权利要求16所述的方法,其特征在于,当所述第一特征元素的概率估计结果为所述第一特征元素取值为k的概率值,则所述预设条件为所述第一特征元素取值为k的概率值小于或等于第一阈值,其中k为整数且k为所述第一特征元素的多个候选取值中的一个。
18.根据权利要求16所述的方法,其特征在于,当所述第一特征元素的概率估计结果包括所述第一特征元素概率分布的第一参数和第二参数,则所述预设条件为:
所述第一特征元素的概率分布的所述第一参数与所述第一特征元素取值为k的差的绝对值大于或等于第二阈值;或
所述第一特征元素的概率分布的所述第二参数大于或等于第三阈值;或
所述第一特征元素的概率分布的所述第一参数与所述第一特征元素取值为k的差的绝对值与所述第一特征元素的概率分布的所述第二参数的和大于或等于第四阈值,
其中k为整数且k为所述第一特征元素的多个候选取值中的一个。
19.根据权利要求18所述的方法,其特征在于:
当所述概率分布为高斯分布,所述第一特征元素概率分布的第一参数为所述第一特征元素高斯分布的均值,所述第一特征元素概率分布的第二参数为所述第一特征元素高斯分布的方差;或
当所述概率分布为拉普拉斯分布,所述第一特征元素概率分布的第一参数为所述第一特征元素拉普拉斯分布的位置参数,所述第一特征元素概率分布的第二参数为所述第一特征元素拉普拉斯分布的尺度参数。
20.根据权利要求16所述的方法,其特征在于,所述第一特征元素的概率估计结果通过混合高斯分布获得时,则所述预设条件为:
所述第一特征元素的混合高斯分布的所有均值与所述第一特征元素的取值为k的差的绝对值之和与所述第一特征元素的混合高斯分布的任一方差的和大于或等于第五阈值;或
所述第一特征元素的混合高斯分布的任一均值与所述第一特征元素的取值为k的差大于或等于第六阈值;或
所述第一特征元素的混合高斯分布的任一方差大于或等于第七阈值;
其中k为整数且k为所述第一特征元素的多个候选取值中的一个。
21.根据权利要求16所述的方法,其特征在于,所述第一特征元素的概率估计结果通过非对称高斯分布获得时,则所述预设条件为:
所述第一特征元素的非对称高斯分布的均值与所述第一特征元素的取值为k的差的绝对值大于或等于第八阈值;或
所述第一特征元素的非对称高斯分布的第一方差大于或等于第九阈值;或
所述第一特征元素的非对称高斯分布的第二方差大于或等于第十阈值;
其中k为整数且k为所述第一特征元素的多个候选取值中的一个。
22.根据权利要求16-21任一所述的装置,其特征在于,所述第一特征元素取值为k的概率值为所述第一特征元素的所有候选取值的概率值中的最大概率值。
23.根据权利要求15所述的方法,其特征在于,所述根据所述第一特征元素的概率估计结果,判断是否对所述第一特征元素执行熵解码包括:
将所述特征数据的概率估计结果输入生成网络以得到所述第一特征元素的决策信息,根据所述第一特征元素的决策信息,判断是否对所述第一特征元素执行熵解码。
24.根据权利要求23所述的方法,其特征在于,当所述特征数据的决策信息为决策图时,则所述决策图中对应所述第一特征元素所在位置的值为预设值时,判断需要对所述第一特征元素执行熵解码;
当所述决策图中对应所述第一特征元素所在位置的值不为预设值时,判断不需要对所述第一特征元素执行熵解码。
25.根据权利要求23所述的方法,其特征在于,当所述特征数据的决策信息为预设值时,判断需要对所述第一特征元素执行熵解码;
当所述决策信息不为预设值时,判断不需要对所述第一特征元素执行熵解码。
26.根据权利要求15-25任一所述的方法,其特征在于,所述方法还包括:
所述特征数据经过解码网络以得到所述重建数据或面向机器任务数据。
27.一种特征数据编码装置,其特征在于,包括:
获得模块,用于获取待编码特征数据,所述待编码特征数据包括多个特征元素,所述多个特征元素包括第一特征元素,以及用于获取所述中第一特征元素的概率估计结果;
编码模块,用于根据所述第一特征元素的概率估计结果,判断是否对所述第一特征元素执行熵编码;仅当判断出需要对所述第一特征元素执行熵编码时,对所述第一特征元素执行熵编码。
28.根据权利要求27所述的装置,其特征在于,所述根据所述第一特征元素的概率估计结果,判断是否对所述第一特征元素执行熵编码包括:
当所述第一特征元素的概率估计结果满足预设条件时,判断需要对所述特征数据的第一特征元素执行熵编码;或
当所述第一特征元素的概率估计结果不满足预设条件时,判断不需要对所述特征数据的第一特征元素执行熵编码。
29.根据权利要求28所述的装置,其特征在于,所述第一特征元素的概率估计结果为所述第一特征元素取值为k的概率值,则所述预设条件为所述第一特征元素取值为k的概率值小于或等于第一阈值,其中k为整数且k为所述第一特征元素的多个候选取值中的一个。
30.根据权利要求28所述的装置,其特征在于,所述第一特征元素的概率估计结果包括所述第一特征元素概率分布的第一参数和第二参数,则所述预设条件为:
所述第一特征元素的概率分布的所述第一参数与所述第一特征元素取值为k的差的绝对值大于或等于第二阈值;或
所述第一特征元素的概率分布的所述第二参数大于或等于第三阈值;或
所述第一特征元素的概率分布的所述第一参数与所述第一特征元素取值为k的差的绝对值与所述第一特征元素的概率分布的所述第二参数的和大于或等于第四阈值,
其中k为整数且k为所述第一特征元素的多个候选取值中的一个。
31.根据权利要求30所述的装置,其特征在于:
当所述概率分布为高斯分布,所述第一特征元素概率分布的第一参数为所述第一特征元素高斯分布的均值,所述第一特征元素概率分布的第二参数为所述第一特征元素高斯分布的方差;或
当所述概率分布为拉普拉斯分布,所述第一特征元素概率分布的第一参数为所述第一特征元素拉普拉斯分布的位置参数,所述第一特征元素概率分布的第二参数为所述第一特征元素拉普拉斯分布的尺度参数。
32.根据权利要求29所述的装置,其特征在于:
所述编码模块,还用于构建阈值候选列表,将所述第一阈值放入所述阈值候选列表中,且将对应有所述第一阈值的索引号写入编码码流,其中所述阈值候选列表的长度为T,T为大于或等于1的整数。
33.根据权利要求28所述的装置,其特征在于,所述第一特征元素的概率估计结果通过混合高斯分布获得时,则所述预设条件为:
所述第一特征元素的混合高斯分布的所有均值与所述第一特征元素的取值为k的差的绝对值之和与所述第一特征元素的混合高斯分布的任一方差的和大于或等于第五阈值;或
所述第一特征元素的混合高斯分布的任一均值与所述第一特征元素的取值为k的差大于或等于第六阈值;或
所述第一特征元素的混合高斯分布的任一方差大于或等于第七阈值;
其中k为整数且k为所述第一特征元素的多个候选取值中的一个。
34.根据权利要求28所述的装置,其特征在于,所述第一特征元素的概率估计结果通过非对称高斯分布获得时,则所述预设条件为:
所述第一特征元素的非对称高斯分布的均值与所述第一特征元素的取值为k的差的绝对值大于或等于第八阈值;或
所述第一特征元素的非对称高斯分布的第一方差大于或等于第九阈值;或
所述第一特征元素的非对称高斯分布的第二方差大于或等于第十阈值;
其中k为整数且k为所述第一特征元素的多个候选取值中的一个。
35.根据权利要求29-34任一所述的方法,其特征在于:
所述第一特征元素取值为k的概率值为所述第一特征元素的所有候选取值的概率值中的最大概率值。
36.根据权利要求27所述的装置,其特征在于,所述根据所述第一特征元素的概率估计结果,判断是否对所述第一特征元素执行熵编码包括:
将所述特征数据的概率估计结果输入生成网络以得到所述第一特征元素的决策信息,根据所述第一特征元素的决策信息,判断是否对所述第一特征元素执行熵编码。
37.根据权利要求36所述的装置,其特征在于,当所述特征数据的决策信息为决策图时,则所述决策图中对应所述第一特征元素所在位置的值为预设值时,判断需要对所述第一特征元素执行熵编码;
当所述决策图中对应所述第一特征元素所在位置的值不为预设值时,判断不需要对所述第一特征元素执行熵编码。
38.根据权利要求36所述的装置,其特征在于,当所述特征数据的决策信息为预设值时,判断需要对所述第一特征元素执行熵编码;
当所述决策信息不为预设值时,判断不需要对所述第一特征元素执行熵编码。
39.根据权利要求27-38任一所述的装置,其特征在于,所述多个特征元素还包括第二特征元素,当判断出不需要对所述第二特征元素执行熵编码时,跳过对所述第二特征元素执行熵编码。
40.根据权利要求27-39任一所述的装置,其特征在于,所述编码模块还包括:
将包括所述的第一特征元素的多个特征元素的熵编码结果写入编码码流。
41.一种特征数据解码装置,其特征在于,包括:
获得模块,用于获取待解码特征数据的码流,所述待解码特征数据包括多个特征元素,所述多个特征元素包括第一特征元素;获取所述第一特征元素的概率估计结果;
解码模块,用于根据所述第一特征元素的概率估计结果,判断是否对所述第一特征元素执行熵解码;仅当判断出需要对所述第一特征元素执行熵解码时,对所述第一特征元素执行熵解码。
42.根据权利要求41所述的装置,其特征在于,所述根据所述第一特征元素的概率估计结果,判断是否对所述第一特征元素执行熵解码包括:
当所述第一特征元素的概率估计结果满足预设条件时,判断需要对所述特征数据的第一特征元素执行熵解码;或
当所述第一特征元素的概率估计结果不满足预设条件时,判断不需要对所述特征数据的第一特征元素执行熵解码,将所述第一特征元素的特征值设置为k,其中k为整数且k为多个候选取值中的一个。
43.根据权利要求42所述的装置,其特征在于,当所述第一特征元素的概率估计结果为所述第一特征元素取值为k的概率值,则所述预设条件为所述第一特征元素取值为k的概率值小于或等于第一阈值,其中k为整数且k为所述第一特征元素的多个候选取值中的一个。
44.根据权利要求42所述的装置,其特征在于,当所述第一特征元素的概率估计结果包括所述第一特征元素概率分布的第一参数和第二参数,则所述预设条件为:
所述第一特征元素的概率分布的所述第一参数与所述第一特征元素取值为k的差的绝对值大于或等于第二阈值;或
所述第一特征元素的概率分布的所述第二参数大于或等于第三阈值;或
所述第一特征元素的概率分布的所述第一参数与所述第一特征元素取值为k的差的绝对值与所述第一特征元素的概率分布的所述第二参数的和大于或等于第四阈值,
其中k为整数且k为所述第一特征元素的多个候选取值中的一个。
45.根据权利要求44所述的装置,其特征在于:
当所述概率分布为高斯分布,所述第一特征元素概率分布的第一参数为所述第一特征元素高斯分布的均值,所述第一特征元素概率分布的第二参数为所述第一特征元素高斯分布的方差;或
当所述概率分布为拉普拉斯分布,所述第一特征元素概率分布的第一参数为所述第一特征元素拉普拉斯分布的位置参数,所述第一特征元素概率分布的第二参数为所述第一特征元素拉普拉斯分布的尺度参数。
46.根据权利要求42所述的装置,其特征在于,所述第一特征元素的概率估计结果通过混合高斯分布获得时,则所述预设条件为:
所述第一特征元素的混合高斯分布的所有均值与所述第一特征元素的取值为k的差的绝对值之和与所述第一特征元素的混合高斯分布的任一方差的和大于或等于第五阈值;或
所述第一特征元素的混合高斯分布的任一均值与所述第一特征元素的取值为k的差大于或等于第六阈值;或
所述第一特征元素的混合高斯分布的任一方差大于或等于第七阈值;
其中k为整数且k为所述第一特征元素的多个候选取值中的一个。
47.根据权利要求42所述的装置,其特征在于,所述第一特征元素的概率估计结果通过非对称高斯分布获得时,则所述预设条件为:
所述第一特征元素的非对称高斯分布的均值与所述第一特征元素的取值为k的差的绝对值大于或等于第八阈值;或
所述第一特征元素的非对称高斯分布的第一方差大于或等于第九阈值;或
所述第一特征元素的非对称高斯分布的第二方差大于或等于第十阈值;
其中k为整数且k为所述第一特征元素的多个候选取值中的一个。
48.根据权利要求42-47任一所述的装置,其特征在于,所述第一特征元素取值为k的概率值为所述第一特征元素的所有候选取值的概率值中的最大概率值。
49.根据权利要求41所述的装置,其特征在于,所述根据所述第一特征元素的概率估计结果,判断是否对所述第一特征元素执行熵解码包括:
将所述特征数据的概率估计结果输入生成网络以得到所述第一特征元素的决策信息,根据所述第一特征元素的决策信息,判断是否对所述第一特征元素执行熵解码。
50.根据权利要求49所述的装置,其特征在于,当所述特征数据的决策信息为决策图时,则所述决策图中对应所述第一特征元素所在位置的值为预设值时,需要对所述第一特征元素执行熵解码;
当所述决策图中对应所述第一特征元素所在位置的值不为预设值时,不需要对所述第一特征元素执行熵解码。
51.根据权利要求49所述的装置,其特征在于,当所述特征数据的决策信息为预设值时,判断需要对所述第一特征元素执行熵解码;
当所述决策信息不为预设值时,判断不需要对所述第一特征元素执行熵解码。
52.根据权利要求41-51任一所述的装置,其特征在于:
所述解码模块,还用于所述特征数据经过解码网络以得到所述重建数据或面向机器任务数据。
53.一种特征数据的编码方法,其特征在于,包括:
获取待编码特征数据,所述特征数据包括多个特征元素,所述多个特征元素包括第一特征元素;
获取所述特征数据的边信息,对所述特征数据的边信息输入联合网络以得到所述第一特征元素的决策信息;
根据所述第一特征元素的决策信息,判断是否对所述第一特征元素执行熵编码;
仅当判断出需要对所述第一特征元素执行熵编码时,对所述第一特征元素执行熵编码。
54.根据权利要求53所述的方法,其特征在于,当所述特征数据的决策信息为决策图时,则所述决策图中对应所述第一特征元素所在位置的值为预设值时,判断需要对所述第一特征元素执行熵编码;
当所述决策图中对应所述第一特征元素所在位置的值不为预设值时,判断不需要对所述第一特征元素执行熵编码。
55.根据权利要求53所述的方法,其特征在于,当所述特征数据的决策信息为预设值时,判断需要对所述第一特征元素执行熵编码;
当所述决策信息不为预设值时,判断不需要对所述第一特征元素执行熵编码。
56.根据权利要求53-55任一所述的方法,其特征在于,所述多个特征元素还包括第二特征元素,当判断出不需要对所述第二特征元素执行熵编码时,跳过对所述第二特征元素执行熵编码。
57.根据权利要求53-56任一所述的方法,其特征在于,所述方法还包括:
将包括所述的第一特征元素的多个特征元素的熵编码结果写入编码码流。
58.一种特征数据的解码方法,其特征在于,包括:
获取待解码特征数据的码流和所述待解码特征数据的边信息;
所述待解码特征数据包括多个特征元素,所述多个特征元素包括第一特征元素;
对所述待解码特征数据的边信息输入联合网络以得到所述第一特征元素的决策信息;
根据所述第一特征元素的决策信息,判断是否对所述第一特征元素执行熵解码;
仅当判断出需要对所述第一特征元素执行熵解码时,对所述第一特征元素执行熵解码。
59.根据权利要求58所述的方法,其特征在于,当所述特征数据的决策信息为决策图时,则所述决策图中对应所述第一特征元素所在位置的值为预设值时,判断需要对所述第一特征元素执行熵解码;
当所述决策图中对应所述第一特征元素所在位置的值不为预设值时,判断不需要对所述第一特征元素执行熵解码,将第一特征元素的特征值设置为k,其中k为整数。
60.根据权利要求58所述的方法,其特征在于,当所述特征数据的决策信息为预设值时,判断需要对所述第一特征元素执行熵编码;
当所述决策信息不为预设值时,判断不需要对所述第一特征元素执行熵编码,将第一特征元素的特征值设置为k,其中k为整数。
61.根据权利要求58-60任一所述的方法,其特征在于,所述方法还包括:
所述特征数据经过解码网络以得到所述重建数据或面向机器任务数据。
62.一种编码器,其特征在于,包括处理电路,用于执行权利要求1至14,53至57任一项所述的方法。
63.一种解码器,其特征在于,包括处理电路,用于执行权利要求15至26,58至61任一项所述的方法。
64.一种计算机程序产品,其特征在于,包括程序代码,当其在计算机或处理器上判断时,用于判断权利要求1至26,53至61任一项所述的方法。
65.一种非瞬时性计算机可读存储介质,其特征在于,包括根据权利要求14或57所述的编码方法获得的码流。
66.一种编码器,其特征在于,包括:
一个或多个处理器;
非瞬时性计算机可读存储介质,耦合到所述处理器并存储由所述处理器判断的程序,其中所述程序在由所述处理器判断时,使得所述编码器执行根据权利要求1至14,53至57任一项所述的方法。
67.一种解码器,其特征在于,包括:
一个或多个处理器;
非瞬时性计算机可读存储介质,耦合到所述处理器并存储由所述处理器判断的程序,其中所述程序在由所述处理器判断时,使得所述解码器执行根据权利要求15至26,58至61任一项所述的方法。
68.一种编码器,其特征在于,包括:
一个或多个处理器;
非瞬时性计算机可读存储介质,耦合到所述处理器并存储由所述处理器判断的程序,其中所述程序在由所述处理器判断时,使得所述编码器执行根据权利要求1至14,53至57任一项所述的方法。
69.一种图像或音频处理器,其特征在于,包括处理电路,用于执行根据权利要求1至26,53至61任一项所述的方法。
70.一种非瞬时性计算机可读存储介质,其特征在于,包括程序代码,当其由计算机设备判断时,用于执行根据权利要求1至26,53至61任一项所述的方法。
CN202111091143.4A 2021-06-02 2021-09-17 特征数据编解码方法和装置 Pending CN115442609A (zh)

Priority Applications (8)

Application Number Priority Date Filing Date Title
JP2023574690A JP2024520151A (ja) 2021-06-02 2022-06-01 特徴データ符号化および復号方法および装置
CA3222179A CA3222179A1 (en) 2021-06-02 2022-06-01 Feature data encoding and decoding method and apparatus
BR112023025167A BR112023025167A2 (pt) 2021-06-02 2022-06-01 Método e aparelho de codificação e decodificação de dados de característica
EP22815293.0A EP4336829A1 (en) 2021-06-02 2022-06-01 Feature data encoding method and apparatus and feature data decoding method and apparatus
KR1020237045517A KR20240016368A (ko) 2021-06-02 2022-06-01 특징 데이터 인코딩 및 디코딩 방법 및 장치
PCT/CN2022/096510 WO2022253249A1 (zh) 2021-06-02 2022-06-01 特征数据编解码方法和装置
AU2022286517A AU2022286517A1 (en) 2021-06-02 2022-06-01 Feature data encoding method and apparatus and feature data decoding method and apparatus
US18/526,406 US20240105193A1 (en) 2021-06-02 2023-12-01 Feature Data Encoding and Decoding Method and Apparatus

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN2021106160292 2021-06-02
CN202110616029 2021-06-02
CN202110674299 2021-06-17
CN2021106742999 2021-06-17

Publications (1)

Publication Number Publication Date
CN115442609A true CN115442609A (zh) 2022-12-06

Family

ID=84271885

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111091143.4A Pending CN115442609A (zh) 2021-06-02 2021-09-17 特征数据编解码方法和装置

Country Status (9)

Country Link
US (1) US20240105193A1 (zh)
EP (1) EP4336829A1 (zh)
JP (1) JP2024520151A (zh)
KR (1) KR20240016368A (zh)
CN (1) CN115442609A (zh)
AU (1) AU2022286517A1 (zh)
BR (1) BR112023025167A2 (zh)
CA (1) CA3222179A1 (zh)
WO (1) WO2022253249A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116828184A (zh) * 2023-08-28 2023-09-29 腾讯科技(深圳)有限公司 视频编码、解码方法、装置、计算机设备和存储介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016013629A1 (ja) 2014-07-24 2016-01-28 日本ポリエチレン株式会社 オレフィン重合触媒及びオレフィン重合体の製造方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10127913B1 (en) * 2017-07-07 2018-11-13 Sif Codec Llc Method of encoding of data stream, method of decoding of data stream, and devices for implementation of said methods
CN111107377A (zh) * 2018-10-26 2020-05-05 曜科智能科技(上海)有限公司 深度图像压缩方法及其装置、设备和存储介质
US10652581B1 (en) * 2019-02-27 2020-05-12 Google Llc Entropy coding in image and video compression using machine learning
CN111988629B (zh) * 2019-05-22 2024-02-09 富士通株式会社 图像编码装置和图像解码装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116828184A (zh) * 2023-08-28 2023-09-29 腾讯科技(深圳)有限公司 视频编码、解码方法、装置、计算机设备和存储介质
CN116828184B (zh) * 2023-08-28 2023-12-22 腾讯科技(深圳)有限公司 视频编码、解码方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
US20240105193A1 (en) 2024-03-28
CA3222179A1 (en) 2022-12-08
AU2022286517A1 (en) 2023-12-21
EP4336829A1 (en) 2024-03-13
BR112023025167A2 (pt) 2024-02-27
JP2024520151A (ja) 2024-05-21
WO2022253249A1 (zh) 2022-12-08
KR20240016368A (ko) 2024-02-06

Similar Documents

Publication Publication Date Title
CN114339262B (zh) 熵编/解码方法及装置
WO2022253249A1 (zh) 特征数据编解码方法和装置
WO2021249290A1 (zh) 环路滤波方法和装置
WO2023279961A1 (zh) 视频图像的编解码方法及装置
CN114125446A (zh) 图像编码方法、解码方法和装置
WO2022111233A1 (zh) 帧内预测模式的译码方法和装置
US20230396810A1 (en) Hierarchical audio/video or picture compression method and apparatus
US20240007637A1 (en) Video picture encoding and decoding method and related device
CN114915783A (zh) 编码方法和装置
WO2023193629A1 (zh) 区域增强层的编解码方法和装置
WO2022156688A1 (zh) 分层编解码的方法及装置
TW202318265A (zh) 基於注意力的圖像和視訊壓縮上下文建模
WO2022063267A1 (zh) 帧内预测方法及装置
CN117441333A (zh) 用于输入图像数据处理神经网络的辅助信息的可配置位置
CN117321989A (zh) 基于神经网络的图像处理中的辅助信息的独立定位
WO2023279968A1 (zh) 视频图像的编解码方法及装置
TWI834087B (zh) 用於從位元流重建圖像及用於將圖像編碼到位元流中的方法及裝置、電腦程式產品
WO2023165487A1 (zh) 特征域光流确定方法及相关设备
CN115834888A (zh) 特征图编解码方法和装置
TW202228081A (zh) 用於從位元流重建圖像及用於將圖像編碼到位元流中的方法及裝置、電腦程式產品
WO2023091040A1 (en) Generalized difference coder for residual coding in video compression
CN117501696A (zh) 使用在分块之间共享的信息进行并行上下文建模

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination