CN116781897A - 编解码方法及电子设备 - Google Patents
编解码方法及电子设备 Download PDFInfo
- Publication number
- CN116781897A CN116781897A CN202210224692.2A CN202210224692A CN116781897A CN 116781897 A CN116781897 A CN 116781897A CN 202210224692 A CN202210224692 A CN 202210224692A CN 116781897 A CN116781897 A CN 116781897A
- Authority
- CN
- China
- Prior art keywords
- frame
- network parameter
- preset
- network
- parameter set
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 129
- 238000007906 compression Methods 0.000 claims abstract description 148
- 230000006835 compression Effects 0.000 claims abstract description 147
- 238000012549 training Methods 0.000 claims description 63
- 230000006870 function Effects 0.000 claims description 13
- 238000004364 calculation method Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 11
- 239000000758 substrate Substances 0.000 claims 1
- 230000008569 process Effects 0.000 description 49
- 238000010586 diagram Methods 0.000 description 42
- 230000009466 transformation Effects 0.000 description 35
- 230000000694 effects Effects 0.000 description 32
- 238000012545 processing Methods 0.000 description 6
- 238000013139 quantization Methods 0.000 description 4
- 230000004913 activation Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000006837 decompression Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- NUHSROFQTUXZQQ-UHFFFAOYSA-N isopentenyl diphosphate Chemical compound CC(=C)CCO[P@](O)(=O)OP(O)(O)=O NUHSROFQTUXZQQ-UHFFFAOYSA-N 0.000 description 2
- 241000023320 Luma <angiosperm> Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 238000004148 unit process Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/109—Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/172—Methods 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 picture, frame or field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
本申请实施例提供了一种编解码方法及电子设备。该编码方法包括:首先,获取待编码帧,该待编码帧为P帧;然后,从M个预设网络参数集合中,确定待编码帧对应的网络参数集合,其中,M个预设网络参数集合分别对应不同的压缩性能信息,M为大于1的整数;接着,由编码网络根据待编码帧对应的网络参数集合,对待编码帧进行编码,以得到待编码帧的码流。这样,能够实现对相邻的多帧采用不同的网络参数集合进行编码,使得相邻的多帧的压缩性能高低相间,在时序上构造了压缩性能对抗,进而从结构上减弱了累积误差,从而可以提升压缩性能。
Description
技术领域
本申请实施例涉及数据处理领域,尤其涉及一种编解码方法及电子设备。
背景技术
随着神经网络在图像压缩领域的发展,以及超越传统压缩方法的表现,基于深度学习的视频压缩方法逐渐被广泛应用。
基于深度学习的视频压缩与解压缩过程中,前一帧的重建图像会参与后一帧的重建,因此前一帧的重建图像的质量会影响后一帧的重建图像的质量。当某一帧的质量下降后,随着时间的增加,会形成时序上的累积误差,从而形成连锁反应,使得该帧之后所有帧的压缩性能均会下降。
发明内容
为了解决上述技术问题,本申请提供一种编解码方法及电子设备。在该方法中,能够降低累积误差,提升压缩性能。
第一方面,本申请实施例提供一种编码方法,该方法包括:首先,获取待编码帧,其中,该待编码帧为P帧(Predictive-frame,前向预测帧);接着,从M个预设网络参数集合中,确定待编码帧对应的网络参数集合,其中,M个预设网络参数集合分别对应不同的压缩性能信息,M为大于1的整数;然后,由编码网络根据待编码帧对应的网络参数集合,对待编码帧进行编码,以得到待编码帧的码流。这样,在编码网络编码过程中,能够对相邻的多帧使用不同的网络参数进行编码,使得相邻的多帧的压缩性能高低相间,在时序上构造了压缩性能对抗,进而从结构上减弱了累积误差,从而能够提升压缩性能。
示例性的,M个预设网络参数集合是通过M种不同的训练方式得到。
示例性的,压缩性能信息可以包括图像质量和/或压缩率。
根据第一方面,M等于2,M个预设网络参数集合包括第一预设网络参数集合和第二预设网络参数集合;从M个预设网络参数集合中,确定待编码帧对应的网络参数集合,包括:当待编码帧的帧标识为奇数时,将第一预设网络参数集合确定为待编码帧对应的网络参数集合;当待编码帧的帧标识为偶数时,将第二预设网络参数集合确定为待编码帧对应的网络参数集合。这样,能够实现对相邻两帧采用不同的网络参数集合进行编码。
应该理解的是,当待编码帧的帧标识为奇数时,也可以将第二预设网络参数集合确定为待编码帧对应的网络参数集合;当待编码帧的帧标识为偶数时,也可以将第一预设网络参数集合确定为待编码帧对应的网络参数集合。也就是说,本申请不限制是编码网络是采用第一预设网络参数集合对帧标识为奇数的待编码帧进行编码,还是采用第二预设网络参数集合对帧标识为奇数的待编码帧进行编码。
示例性的,待编码帧的帧标识可以是POC(Picture Order Count,图像顺序号)值,也可以是待编码帧的帧序号,本申请对此不作限制。
根据第一方面,或者以上第一方面的任意一种实现方式,第一预设网络参数集合对应的压缩性能信息,高于第二预设网络参数集合对应的压缩性能信息;或,第二预设网络参数集合对应的压缩性能信息,高于第一预设网络参数集合对应的压缩性能信息。
示例性的,当压缩性能信息为图像质量时,则第一预设网络参数集合对应的图像质量,高于第二预设网络参数集合对应的图像质量;或者,第二预设网络参数集合对应的图像质量,高于第一预设网络参数集合对应的图像质量。
示例性的,当压缩性能信息为压缩率时,则第一预设网络参数集合对应的压缩率,高于第二预设网络参数集合对应的压缩率;或者,第二预设网络参数集合对应的压缩率,高于第一预设网络参数集合对应的压缩率。
示例性的,当压缩性能信息包括图像质量和压缩率时,则第一预设网络参数集合对应的图像质量,高于第二预设网络参数集合对应的图像质量,且第一预设网络参数集合对应的压缩率,高于第二预设网络参数集合对应的压缩率。或者,第二预设网络参数集合对应的图像质量,高于第一预设网络参数集合对应的图像质量,且第二预设网络参数集合对应的压缩率,高于第一预设网络参数集合对应的压缩率。
根据第一方面,或者以上第一方面的任意一种实现方式,从M个预设网络参数集合中,确定待编码帧对应的网络参数集合,包括:当待编码帧的前N帧对应的网络参数集合相同时,根据预设规则,选取M个预设网络参数集合中,除待编码帧的前一帧对应的网络参数集合之外的一预设网络参数集合,作为待编码帧对应的网络参数集合;否则,将待编码帧的前一帧对应的网络参数集合,确定为待编码帧对应的网络参数集合,其中,N为大于1的整数。这样,能够实现对每连续的N帧采用同一种网络参数集合编码。
示例性的,可以预先设置预设规则,具体可以按照需求设置,本申请对此不作限制。例如,k(i)=k(i-1)+1,其中,k(i)为待编码帧对应的网络参数集合的序号,k(i-1)为待编码帧的上一帧对应的网络参数集合的序号,M个预设网络参数集合的编号可以为1~M。
根据第一方面,或者以上第一方面的任意一种实现方式,从M个预设网络参数集合中,确定待编码帧对应的网络参数集合,包括:确定M个预设网络参数集合分别对应的压缩性能信息;依据M个预设网络参数集合分别对应的压缩性能信息,从M个预设网络参数集合中,确定待编码帧对应的网络参数集合。
根据第一方面,或者以上第一方面的任意一种实现方式,依据M个预设网络参数集合分别对应的压缩性能信息,从M个预设网络参数集合中,确定待编码帧对应的网络参数集合,包括:当待编码帧的前K帧对应的压缩性能信息高于阈值时,将M个预设网络参数集合中对应的压缩性能信息低于阈值的一预设网络参数集合,作为待编码帧对应的网络参数集合;若待编码帧的前K帧对应的压缩性能信息低于阈值,则将M个预设网络参数集合中对应的压缩性能信息高于阈值的一预设网络参数集合,作为待编码帧对应的网络参数集合,K为正整数;否则,若待编码帧的前一帧对应的压缩性能信息低于阈值,则将M个预设网络参数集合中对应的压缩性能信息低于阈值的一预设网络参数集合,作为待编码帧对应的网络参数集合;若待编码帧的前一帧对应的压缩性能信息高于阈值,则将M个预设网络参数集合中对应的压缩性能信息高于阈值的一预设网络参数集合,作为待编码帧对应的网络参数集合。这样,能够实现每连续的K帧采用一种网络参数集合编码。
示例性的,K可以大于N,也可以小于N,还可以等于N,本申请对此不作限制。
根据第一方面,或者以上第一方面的任意一种实现方式,一个预设网络参数集合包括多个预设网络参数组;编码网络包括多个子网络,多个子网络与多个预设网络参数组分别对应;M个预设网络参数集合中任意两个预设网络参数集合的部分预设网络参数组不同。
根据第一方面,或者以上第一方面的任意一种实现方式,待编码帧的码流包括待编码帧对应的网络参数集合的集合标识。这样,解码端能够从码流中解析出集合标识,从而确定用于对码流解码的网络参数集合。
第二方面,本申请实施例提供一种解码方法,该方法包括:首先,获取待解码帧的码流,其中,该待解码帧为P帧;接着,从M个预设网络参数集合中,确定待解码帧对应的网络参数集合,其中,M个预设网络参数集合分别对应不同的压缩性能信息,M为大于1的整数;然后,由解码网络根据待解码帧对应的网络参数集合,对待解码帧的码流进行解码,以得到待解码帧的重建图像。这样,解码端能够与编码端相对应,采用不同的网络参数集合对码流进行解码。
根据第二方面,M等于2,M个预设网络参数集合包括第一预设网络参数集合和第二预设网络参数集合;从M个预设网络参数集合中,确定待解码帧对应的网络参数集合,包括:当待解码帧的帧标识为奇数时,将第一预设网络参数集合确定为待解码帧对应的网络参数集合;当待解码帧的帧标识为偶数时,将第二预设网络参数集合确定为待解码帧对应的网络参数集合。这样,能够实现对相邻的两帧采用不同的网络参数集合进行解码。
根据第二方面,或者以上第二方面的任意一种实现方式,第一预设网络参数集合对应的压缩性能信息,高于第二预设网络参数集合对应的压缩性能信息;或,第二预设网络参数集合对应的压缩性能信息,高于第一预设网络参数集合对应的压缩性能信息。
根据第二方面,或者以上第二方面的任意一种实现方式,从M个预设网络参数集合中,确定待解码帧对应的网络参数集合,包括:从待解码帧的码流中,解析出集合标识;将M个预设网络参数集合中,与集合标识匹配的预设网络参数集合,确定为待解码帧对应的网络参数集合。
根据第二方面,或者以上第二方面的任意一种实现方式,从M个预设网络参数集合中,确定待解码帧对应的网络参数集合,包括:当待解码帧的前N帧分别对应的网络参数集合相同时,根据预设规则,选取M个预设网络参数集合中,除待解码帧的前一帧对应的网络参数集合之外的一预设网络参数集合,作为待解码帧对应的网络参数集合;否则,将待解码帧的前一帧对应的网络参数集合,确定为待解码帧对应的网络参数集合,其中,N为大于1的整数。
第三方面,本申请提供了一种训练方法,该训练方法包括:首先,获取训练图像;然后,获取目标网络,目标网络具有M对初始网络参数集合,M为大于1的整数;接着,基于损失值的M种确定方式和训练图像,分别对目标网络的M对初始网络参数集合进行更新,以得到M对预设网络参数集合;其中,目标网络包括编码网络和解码网络,一对预设网络参数集合包括:编码网络对应的一个预设网络参数集合和解码网络对应的一个预设网络参数集合。这样,通过对编码网络和解码网络的联合训练,得到编码网络的M个预设网络参数集合,以及解码网络的M个预设网络参数集合。
示例性的,目标网络中解码网络连接在编码网络之后,即编码网络的输出与解码网络的输入连接。其中,编码网络的输入为目标网络的输入,解码网络的输出为目标网络的输出。
根据第三方面,基于损失值的M种确定方式和训练图像,分别对目标网络的M对初始网络参数集合进行更新,以得到M对预设网络参数集合,包括:针对第i对初始网络参数集合,i的取值范围为1至M:由目标网络加载第i对初始网络参数集合,并将训练图像输入至目标网络中,得到目标网络输出的重建图像;按照损失值的第i种确定方式,根据重建图像和训练图像,确定第i对初始网络参数集合对应的损失值;根据第i对初始网络参数集合对应的损失值,对第i对初始网络参数集合进行更新,以得到第i对预设网络参数集合。这样,采用损失值的一种确定方式和训练图像,训练出一对预测网络参数集合。
根据第三方面,或者以上第三方面的任意一种实现方式,目标网络还具有初始共用网络参数组,基于损失值的M种确定方式和训练图像,分别对目标网络的M对初始网络参数集合进行更新,以得到M对预设网络参数集合,还包括:在目标网络加载第i对初始网络参数集合时,加载初始共用网络参数组;在根据第i对初始网络参数集合对应损失值,对第i对初始网络参数集合进行更新时,根据第i对初始网络参数集合对应的损失值,对初始共用网络参数组进行第i组更新;将对初始共用网络参数组进行M组更新所得到的预设共用网络参数组,分别添加至M对预设网络参数集合中。这样,通过采用损失值的M种确定方式对初始共用网络参数组交替训练,以得到预设共用网络参数组,能够提高训练速度。
根据第三方面,或者以上第三方面的任意一种实现方式,M种确定方式对应M种损失函数,和/或;M种确定方式对应M组计算数据,M组计算数据用于计算M组损失值。
第四方面,本申请实施例提供一种编码系统,该编码系统包括:选择器和编码网络,其中:
选择器,用于从M个预设网络参数集合中,确定待编码帧对应的网络参数集合,其中,待编码帧为P帧,M个预设网络参数集合分别对应不同的压缩性能信息,M为大于1的整数;
编码网络,用于根据待编码帧对应的网络参数集合,对待编码帧进行编码,以得到待编码帧的码流。
根据第四方面,选择器可以用于执行上述第一方面的任意一种实现方式对应的编码方法。
第四方面以及第四方面的任意一种实现方式所对应的技术效果可参见上述第一方面以及第一方面的任意一种实现方式所对应的技术效果,此处不再赘述。
第五方面,本申请实施例提供一种解码系统,该解码系统包括:选择器和解码网络,其中:
选择器,用于从M个预设网络参数集合中,确定待解码帧对应的网络参数集合,其中,待解码帧为P帧,M个预设网络参数集合分别对应不同的压缩性能信息,M为大于1的整数;
解码网络,用于根据待解码帧对应的网络参数集合,对待解码帧的码流进行解码,以得到待解码帧的重建图像。
根据第五方面,选择器可以用于执行上述第二方面的任意一种实现方式对应的解码方法。
第五方面以及第五方面的任意一种实现方式所对应的技术效果可参见上述第二方面以及第二方面的任意一种实现方式所对应的技术效果,此处不再赘述。
第六方面,本申请实施例提供一种电子设备,包括:存储器和处理器,存储器与处理器耦合;存储器存储有程序指令,当程序指令由处理器执行时,使得电子设备执行第一方面或第一方面的任意可能的实现方式中的编码方法。
第六方面以及第六方面的任意一种实现方式分别与第一方面以及第一方面的任意一种实现方式相对应。第六方面以及第六方面的任意一种实现方式所对应的技术效果可参见上述第一方面以及第一方面的任意一种实现方式所对应的技术效果,此处不再赘述。
第七方面,本申请实施例提供一种电子设备,包括:存储器和处理器,存储器与处理器耦合;存储器存储有程序指令,当程序指令由处理器执行时,使得电子设备执行第二方面或第二方面的任意可能的实现方式中的解码方法。
第七方面以及第七方面的任意一种实现方式分别与第二方面以及第二方面的任意一种实现方式相对应。第七方面以及第七方面的任意一种实现方式所对应的技术效果可参见上述第二方面以及第二方面的任意一种实现方式所对应的技术效果,此处不再赘述。
第八方面,本申请实施例提供一种电子设备,包括:存储器和处理器,存储器与处理器耦合;存储器存储有程序指令,当程序指令由处理器执行时,使得电子设备执行第三方面或第三方面的任意可能的实现方式中的训练方法。
第八方面以及第八方面的任意一种实现方式分别与第三方面以及第三方面的任意一种实现方式相对应。第八方面以及第八方面的任意一种实现方式所对应的技术效果可参见上述第三方面以及第三方面的任意一种实现方式所对应的技术效果,此处不再赘述。
第九方面,本申请实施例提供一种芯片,包括一个或多个接口电路和一个或多个处理器;接口电路用于从电子设备的存储器接收信号,并向处理器发送信号,信号包括存储器中存储的计算机指令;当处理器执行计算机指令时,使得电子设备执行第一方面或第一方面的任意可能的实现方式中的编码方法。
第九方面以及第九方面的任意一种实现方式分别与第一方面以及第一方面的任意一种实现方式相对应。第九方面以及第九方面的任意一种实现方式所对应的技术效果可参见上述第一方面以及第一方面的任意一种实现方式所对应的技术效果,此处不再赘述。
第十方面,本申请实施例提供一种芯片,包括一个或多个接口电路和一个或多个处理器;接口电路用于从电子设备的存储器接收信号,并向处理器发送信号,信号包括存储器中存储的计算机指令;当处理器执行计算机指令时,使得电子设备执行第二方面或第二方面的任意可能的实现方式中的解码方法。
第十方面以及第十方面的任意一种实现方式分别与第二方面以及第二方面的任意一种实现方式相对应。第十方面以及第十方面的任意一种实现方式所对应的技术效果可参见上述第二方面以及第二方面的任意一种实现方式所对应的技术效果,此处不再赘述。
第十一方面,本申请实施例提供一种芯片,包括一个或多个接口电路和一个或多个处理器;接口电路用于从电子设备的存储器接收信号,并向处理器发送信号,信号包括存储器中存储的计算机指令;当处理器执行计算机指令时,使得电子设备执行第三方面或第三方面的任意可能的实现方式中的训练方法。
第十一方面以及第十一方面的任意一种实现方式分别与第三方面以及第三方面的任意一种实现方式相对应。第十一方面以及第十一方面的任意一种实现方式所对应的技术效果可参见上述第三方面以及第三方面的任意一种实现方式所对应的技术效果,此处不再赘述。
第十二方面,本申请实施例提供一种计算机存储介质,计算机可读存储介质存储有计算机程序,当计算机程序运行在计算机或处理器上时,使得计算机或处理器执行第一方面或第一方面的任意可能的实现方式中的编码方法。
第十二方面以及第十二方面的任意一种实现方式分别与第一方面以及第一方面的任意一种实现方式相对应。第十二方面以及第十二方面的任意一种实现方式所对应的技术效果可参见上述第一方面以及第一方面的任意一种实现方式所对应的技术效果,此处不再赘述。
第十三方面,本申请实施例提供一种计算机存储介质,计算机可读存储介质存储有计算机程序,当计算机程序运行在计算机或处理器上时,使得计算机或处理器执行第二方面或第二方面的任意可能的实现方式中的解码方法。
第十三方面以及第十三方面的任意一种实现方式分别与第二方面以及第二方面的任意一种实现方式相对应。第十三方面以及第十三方面的任意一种实现方式所对应的技术效果可参见上述第二方面以及第二方面的任意一种实现方式所对应的技术效果,此处不再赘述。
第十四方面,本申请实施例提供一种计算机存储介质,计算机可读存储介质存储有计算机程序,当计算机程序运行在计算机或处理器上时,使得计算机或处理器执行第三方面或第三方面的任意可能的实现方式中的训练方法。
第十四方面以及第十四方面的任意一种实现方式分别与第三方面以及第三方面的任意一种实现方式相对应。第十四方面以及第十四方面的任意一种实现方式所对应的技术效果可参见上述第三方面以及第三方面的任意一种实现方式所对应的技术效果,此处不再赘述。
第十五方面,本申请实施例提供一种计算机程序产品,计算机程序产品包含软件程序,当软件程序被计算机或处理器执行时,使得第一方面或第一方面的任意可能的实现方式中方法的步骤被执行。
第十五方面以及第十五方面的任意一种实现方式分别与第一方面以及第一方面的任意一种实现方式相对应。第十五方面以及第十五方面的任意一种实现方式所对应的技术效果可参见上述第一方面以及第一方面的任意一种实现方式所对应的技术效果,此处不再赘述。
第十六方面,本申请实施例提供一种计算机程序产品,计算机程序产品包含软件程序,当软件程序被计算机或处理器执行时,使得第二方面或第二方面的任意可能的实现方式中方法的步骤被执行。
第十六方面以及第十六方面的任意一种实现方式分别与第二方面以及第二方面的任意一种实现方式相对应。第十六方面以及第十六方面的任意一种实现方式所对应的技术效果可参见上述第二方面以及第二方面的任意一种实现方式所对应的技术效果,此处不再赘述。
第十七方面,本申请实施例提供一种计算机程序产品,计算机程序产品包含软件程序,当软件程序被计算机或处理器执行时,使得第三方面或第三方面的任意可能的实现方式中方法的步骤被执行。
第十七方面以及第十七方面的任意一种实现方式分别与第三方面以及第三方面的任意一种实现方式相对应。第十七方面以及第十七方面的任意一种实现方式所对应的技术效果可参见上述第三方面以及第三方面的任意一种实现方式所对应的技术效果,此处不再赘述。
附图说明
图1为示例性示出应用场景示意图;
图2为示例性示出的训练过程示意图;
图3a为示例性示出的编码流程示意图;
图3b为示例性示出的编码过程示意图;
图3c为示例性示出的编码系统的结构示意图;
图3d为示例性示出的编码过程示意图;
图4a为示例性示出的解码流程示意图;
图4b为示例性示出的解码过程示意图;
图4c为示例性示出的解码系统的结构示意图;
图4d为示例性示出的解码过程示意图;
图5a为示例性示出的编码过程示意图;
图5b为示例性示出的子网络的结构示意图;
图5c为示例性示出的解码过程示意图;
图6为示例性示出的编码流程示意图;
图7为示例性示出的解码流程示意图;
图8为示例性示出的编码流程示意图;
图9为示例性示出的解码流程示意图;
图10为示例性示出的编码流程示意图;
图11为示例性示出的解码流程示意图;
图12a为示例性示出的压缩性能效果示意图;
图12b为示例性示出的图像质量示意图;
图13为示例性示出的装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
本申请实施例的说明书和权利要求书中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一目标对象和第二目标对象等是用于区别不同的目标对象,而不是用于描述目标对象的特定顺序。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
在本申请实施例的描述中,除非另有说明,“多个”的含义是指两个或两个以上。例如,多个处理单元是指两个或两个以上的处理单元;多个系统是指两个或两个以上的系统。
图1为示例性示出应用场景示意图。
参照图1,示例性的,图像的压缩过程可以如下:可以对待编码帧进行AI编码,得到中间数据,其中,中间数据可以是指待传输至解码端的数据;例如,可以包括帧间边信息(可以是指待编码帧相对于上一帧各像素的相对运动信息)、残差信息(待解码帧与对应预测信息的差值)等,本申请对此不作限制。接着,可以对中间数据进行熵编码,得到待编码帧的码流。
继续参照图1,示例性的,图像的解压过程可以如下:在获取到码流后,可以对码流进行熵解码,得到对应的中间数据;然后基于中间数据进行AI解码,得到对应的重建图像。
示例性的,熵编码是指编码过程中按熵原理不丢失任何信息的编码,熵编码可以包括多种,如香农(Shannon)编码、哈夫曼(Huffman)编码和算术编码(arithmetic coding)等,本申请对此不作限制。
示例性的,待编码帧可以是RAW(未加工)图像、RGB(一种色彩模式,“R”表示红色(Red),“G”表示绿色(Green),“B”表示蓝色(Blue))图像和YUV(一种色彩模式,“Y”表示明亮度(Luminance、Luma),“U”和“V”则是色度、浓度(Chrominance、Chroma))图像中的任意一种,本申请对此不作限制。
示例性的,压缩过程和解压过程可以在同一个电子设备中进行,也可以在不同电子设备中进行,本申请对此不作限制。
示例性的,本申请可以应用于对一张独立的图像进行压缩和解压,也可以应用于对视频序列中多帧图像进行压缩和解压,本申请对此不作限制。
示例性的,本申请可以应用于多种场景,例如,华为云存储(或传输)图像(或视频)的场景,又例如,视频监控场景,还例如,直播场景等等,本申请对此不作限制。
应该理解的是,图1中的编码过程仅是本申请编码过程的一个范例,本申请的编码过程可以具有比图1中所示的更多的步骤,本申请对此不作限制。类似的,图1中的解码过程仅是本申请解码过程的一个范例,本申请的解码过程可以具有比图1中所示的更多的步骤,本申请对此不作限制。本申请以编码过程包括AI编码和熵编码,解码过程包括AI解码和熵解码为例进行说明。
示例性的,本申请可以采用一编码网络实现上述图1所示的AI编码和熵编码,即将待编码帧输入至编码网络,由编码网络进行AI编码和熵编码,输出码流。
示例性的,本申请也可以采用一解码网络实现上述图1所示的AI解码和熵解码,即将码流输入至解码网络,由解码网络进行熵解码和AI解码,输出重建图像。
示例性的,可以预先通过不同的训练方法训练编码网络和解码网络,为编码网络和解码网络分别训练出M(M为大于1的整数)套网络参数。其中,编码网络和解码网络是联合训练的,进而,得到的编码网络的M套网络参数和解码网络的M套网络参数是一一对应的。其中,编码网络的M套网络参数对应不同的压缩性能信息,解码码网络的M套网络参数对应不同的压缩性能信息;其中,压缩性能信息可以包括图像质量和/或压缩率。这样,在编码网络对相邻的多帧进行编码的过程中,使用不同的网络参数,使得相邻的多帧的压缩性能高低相间,在时序上构造了压缩性能对抗,进而从结构上减弱了累积误差,从而提升压缩性能。
示例性的,为了便于描述,可以采用目标网络,表征编码网络和解码网络,来对编码网络和解码网络的联合过程进行说明。示例性的,目标网络中的解码网络连接在编码网络之后,也就是说,目标网络的输入是编码网络的输入,编码网络的输出与解码网络的输入连接,解码网络的输出是目标网络的输出。
需要说明的是,基于上一帧的重建图像进行编解码的帧是P帧,因此以下训练的编码网络中用于对P帧进行编码的网络,以及解码网络中用于对P帧进行解码的网络。
图2为示例性示出的训练过程示意图。
S201,获取训练图像。
示例性的,可以收集多个视频序列,每个视频序列可以包括多帧图像,可以将一个视频序列作为一组训练图像;这样,可以得到多组训练图像,每组训练图像可以包括多帧图像。
S202,获取目标网络,目标网络包括M对初始网络参数集合,M为大于1的整数。
示例性的,编码网络可以包括M个网络参数集合,解码网络可以包括M个网络参数集合,进而目标网络可以包括M对网络参数集合。为了便于描述,可以将未训练之前,目标网络的网络参数集合,称为默认网络参数集合。
示例性的,可以先采用多组训练图像对目标网络进行第一阶段训练,来对默认网络参数集合中的参数进行更新,以得到初始网络参数集合。
示例性的,以下以一组训练图像为例对第一阶段训练过程进行示例性说明。示例性的,可以从该组训练图像中,选取出连续的X1(X1大于1的正整数)帧图像,其中,连续的X1帧图像中的第1帧为I帧(Intra frame,帧内编码帧),其他帧为P帧。示例性的,可以由目标网络先加载第i(i的取值范围为1~M,i为整数)对默认网络参数集合,然后将连续的X1帧图像中I帧的重建图像和第1个P帧输入至目标网络中,得到目标网络输出的第1个P帧的重建图像。待得到第1个P帧的重建图后,基于第1个P帧和第1个P帧的重建图像进行损失值的计算,得到第1个P帧对应的损失值。
接着,将第1个P帧的重建图像和连续的X1帧图像中第2个P帧输入至目标网络中,得到目标网络输出的第2个P帧的重建图像;然后基于第2个P帧和第2个P帧的重建图像进行损失值的计算,得到第2个P帧对应的损失值;以此类推,可以得到X1-1个P帧对应的损失值。
随后,可以综合这X1-1个P帧对应的损失值,对目标网络的第i对默认网络参数集合进行更新。进而,采用上述方式,依次采用每组训练图像对上一次更新后的第i对默认网络参数集合进行更新,直到满足第一预设条件为止,从而可以得到第i对初始网络参数集合。其中,第一预设条件可以是指停止第一阶段训练的条件,可以按照需求设置,本申请对此不作限制。之后,可以将目标网络的第i对初始网络参数集合,分别赋值给目标网络的另外M-1对默认网络参数集合;这样,可以得到的M对初始网络参数集合。其中,M对初始网络参数集合是相同的,即M对初始网络参数集合对应相同的压缩性能信息。
随后,再采用多组训练图像对目标网络进行第二阶段训练,来分别对M对初始网络参数集合中的参数进行更新,以得到M对预设网络参数集合。其中,第二阶段的训练过程可以参照S203:
S203,基于损失值的M种确定方式和训练图像,分别对目标网络的M对初始网络参数集合进行更新,以得到M对预设网络参数集合。
示例性的,可以采用损失值的一种确定方式和多组训练图像,对目标网络的一对初始网络参数集合中的参数进行更新,得到一对预设网络参数集合。其中,目标网络的一对预设网络参数集合包括:编码网络的一个预设网络参数集合和解码网络的一个预设网络参数集合。这样,可以得到编码网络的M个预设网络参数集合和解码网络的M个预设网络参数集合。
以下以更新M对初始网络参数集合中的第i对初始网络参数集合为例进行说明。其中,i的取值范围为1~M,i为整数。
示例性的,以一组训练图像为例。首先,可以从该组训练图像中选取出连续的X2(X2为正整数,X2可以大于X1)帧图像,连续的X2帧图像中的第1帧为I帧,其他帧为P帧;以及目标网络可以先加载第i对初始网络参数集合。接着,将连续的X2帧图像中I帧的重建图像和第1个P帧输入至目标网络中,由目标网络进行正向计算,得到目标网络输出的第1个P帧的重建图像。随后,基于第1个P帧和第1个P帧的重建图像进行损失值的计算,得到第1个P帧对应的损失值。
接着,将第1个帧的重建图像和连续的X2帧图像中第2个P帧输入至目标网络中,由目标网络进行正向计算,得到目标网络输出的第2个P帧的重建图像;然后基于第2个P帧和第2个P帧的重建图像进行损失值的计算,得到第2个P帧对应的损失值;以此类推,可以得到X2-1个P帧对应的损失值。
示例性的,损失值的第i种确定方式可以是,综合这X2-1个P帧对应的损失值,确定用于反向传播的损失值,也就是第i对初始网络参数集合对应的损失值。进而,可以综合这X2-1个P帧对应的损失值,对目标网络进行反向传播,即对目标网络的第i对初始网络参数集合中的参数进行更新。进而,采用上述方式,依次采用每组训练图像对上一次更新后的第i对初始网络参数集合进行更新,直到满足第二预设条件为止,从而可以得到第i对预设网络参数集合,即得到编码网络的第i个预设网络参数集合和解码网络的第i个预设网络集合。其中,第二预设条件可以是指完成第i对预设网络参数集合训练的条件,可以按照需求设置,本申请对此不作限制。
例如,假设X2=4,则可以采用该组训练图像的前4帧(即IPPP),输入至加载了第i对初始网络参数集合的目标网络中,由目标网络进行正向计算。然后,可以综合第1个P帧对应的损失值、第2个P帧对应的损失值和第3个P帧对应的损失值,对目标网络的第i对初始网络参数集合进行更新,以得到第i对预设网络参数集合。
一种可能的方式中,M种确定方式对应M组计算数据,M组计算数据用于计算M组损失值;其中,每组计算数据包括至少一个P帧和该P帧的重建图像。也就是说,更新M对初始网络参数集合中任意两对初始网络参数集合时,所使用计算损失值的计算数据不同。这样,得到的编码网络的M个预设网络参数集合中任意两个预设网络参数集合是不同的,对应不同的压缩性能信息;以及解码网络的M个预设网络参数集合中任意两个预设网络参数集合是不同的,对应不同的压缩性能信息。
例如,针对第j(j的取值范围为1至M,j为整数,j不等于i)对初始网络参数集合,从每组训练图像选取出图像的数量X2,与针对第i对初始网络参数集合,从每组训练图像选取出图像的数量X2相同,但是仅综合X2-2个P帧(除第1个P帧外)对应的损失值进行更新。
假设,针对第j对初始网络参数集合,从每组训练图像选取出图像的数量X2,与针对第i对初始网络参数集合,从每组训练图像选取出训练图像的数量X2相同,均等于4,则可以采用该组训练图像的前4帧(即IPPP),输入至加载了第j对初始网络参数集合的目标网络中,由目标网络进行正向计算;但对目标网络进行反向传播时,仅综合第2个P帧对应的损失值和第3个P帧对应的损失值,对目标网络的第j对初始网络参数集合进行更新。
又例如,针对第j对初始网络参数集合,从每组训练图像选取出图像的数量X2,与针对第i对初始网络参数集合,每组训练图像选取出图像的数量X2不同;以及针对第j对初始网络参数集合,用于计算对应损失值的P帧,与针对第i对初始网络参数集合,用于计算对应损失值的P帧不同。
假设,针对第i对初始网络参数集合,每组训练图像选取出图像的数量X2=4,而针对第j对初始网络参数集合,从每组训练图像选取出图像的数量X2=5,则可以采用该组训练图像的前5帧(即IPPPP),对第j对初始网络参数集合进行更新。其中,可以综合第1个P帧对应的损失值、第2个P帧对应的损失值、第3个P帧对应的损失值和第4个P帧对应的损失值,对目标网络的第j对初始网络参数集合进行更新。
需要说明的是,对于M对初始网络参数集合而言,在更新过程中,综合越多P帧对应的损失值进行更新的初始网络参数集合,对应的预设网络参数集合的压缩性能信息越好。
一种可能的方式中,M种确定方式对应M种损失函数。也就是说,更新M对初始网络参数集合中任意两对初始网络参数集合,所使用的损失函数不同。例如,更新第i对初始网络参数集合,使用损失函数I;更新第j(j的取值范围为1至M,j为整数,j不等于i)对初始网络参数集合,使用损失函数J。这样,得到的编码网络的M个预设网络参数集合中任意两个预设网络参数集合是不同的,对应不同的压缩性能信息;以及解码网络的M个预设网络参数集合中任意两个预设网络参数集合是不同的,对应不同的压缩性能信息。
例如,损失函数I可以是:λ1*d+bpp,损失函数J可以是:λ2*d+bpp;λ1不等于λ2。其中,d(distortion,畸变)越小,说明图像质量越高,bpp(Bits per pixel,存储每个像素所用的位数)越大,说明压缩率越低。这样,可以使用λ1*d+bpp计算的损失值,来对第i对初始网络参数进行更新,可以得到第i对预设网络参数集合。以及可以使用λ2*d+bpp计算的损失值,对第j对初始网络参数进行更新,可以得到第j对预设网络参数集合。若λ1小于λ2,则得到的第j对预设网络参数集合对应的压缩性能信息,高于第i对预设网络参数集合对应的压缩性能信息;若λ1大于λ2,则得到的第i对预设网络参数集合对应的压缩性能信息,高于第j对预设网络参数集合对应的压缩性能信息。
应该理解的是,对于M对初始网络参数集合中任意两对初始网络参数集合,当用于计算损失值的损失函数不同和/或用于计算损失值的计算数据不同时,对应得到的两对预设网络参数集合不同,且对应不同的压缩性能信息。
一种可能的方式中,编码网络可以包括Y(Y为正整数)个子网络,这Y个子网络中每个子网络均包括M套参数,这样,得到的编码网络的M个预设网络参数集合中,每一个预设网络参数集合可以包括Y个预设网络参数组,每个预设网络参数组对应一个子网络,且M个预设网络参数集合中任意两个预设网络参数集合的全部预设网络参数组均不同。
一种可能的方式中,解码网络可以包括Y个子网络,这Y个子网络中每个子网络均包括M套参数,这样,得到的解码网络的M个预设网络参数集合中,每一个预设网络参数集合可以包括Y个预设网络参数组,每个预设网络参数组对应一个子网络,且M个预设网络参数集合中任意两个预设网络参数集合的全部预设网络参数组均不同。
一种可能的方式中,编码网络包括的Y子网络中Y1个子网络均包括M套参数,而另外Y2个子网络均仅包含一套参数;其中,Y1和Y2为正整数,Y1+Y2=Y。这样,按照上述方法得到的编码网络对应的M个预设网络参数集合中,每一个预设网络参数集合仅包括Y1个预设网络参数组。其中,经过第一阶段的训练后,可以得到编码网络的Y2个初始共用网络参数组,每个初始共用网络参数组,对应Y2个子网络中的一个子网络。
一种可能的方式中,解码网络包括的Y个子网络,这多个子网络中Y1个子网络均包括M套参数,而另外Y2个子网络均仅包含一套参数。这样,按照上述方法得到的解码网络对应的M个预设网络参数集合中,每一个预设网络参数集合仅包括Y1个预设网络参数组。其中,经过第一阶段的训练后,可以得到解码网络的Y2个初始共用网络参数组,每个初始共用网络参数组,对应Y2个子网络中的一个子网络。
这样,目标网络可以包括Y2对初始共用网络参数组,一对初始共用网络参数组可以包括:编码网络的一个子网络对应的初始共用网络参数组和解码网络的一个子网络对应的初始共用网络参数组。示例性的,可以在对M对初始网络参数集合中每一对初始网络参数集合进行更新的同时,对Y2对初始共用网络参数组进行更新;这样,可以得到Y2对预设共用网络参数组;具体过程可以如下:
示例性的,在目标网络加载第i对初始网络参数集合时,加载Y2对初始共用网络参数组;以及在根据第i对初始网络参数集合对应的损失值,对第i对初始网络参数集合进行更新时,根据第i对初始网络参数集合对应的损失值,对Y2对初始共用网络参数组进行第i组更新。这样,在得到M对预设网络参数集合的同时,对Y2对初始共用网络参数组进行了M组更新,进而可以得到Y2对预设共用网络参数组。然后,可以将Y2对预设共用网络参数组,均分别添加至M对预设网络参数集合中。其中,Y2对预设共用网络参数组中一对预设共用网络参数组,可以包括编码网络的一个预设共用网络参数组和解码网络的一个预设共用网络参数组。这样,可以将编码网络的Y2个预设共用网络参数组,均分别添加到编码网络的M个预设网络参数集合中;以及将解码网络的Y2个预设共用网络参数组,均分别添加到解码网络的M个预设网络参数集合中。
这样,编码网络的M个预设网络参数集合中,任意两个预设网络参数集合中Y2个预设共用网络参数组相同,Y1个预设网络参数组不同。对应的,解码网络的M个预设网络参数集合中,任意两个预设网络参数集合中Y2个预设共用网络参数组相同,Y1预设网络参数组不同。
通过上述训练,即可以得到编码网络的M个预设网络参数,以及解码网络的M个预设网络参数。
以下对编解码网络采用对应的预设网络参数集合,对待编解码帧进行编解码的过程进行说明。
图3a为示例性示出的编码流程示意图。
S301,获取待编码帧。
示例性的,在获取待编码帧后,判断待编码帧是否是P帧。当待编码帧是P帧时,则可以执行S302~S303,对待编码帧进行编码。当待编码帧为I帧时,则可以I帧输入至对I帧编码网络,由该I帧编码网络对I帧进行编码,输出待编码帧的码流。其中,I帧编码网络可以是指用于对I帧进行编码的网络。
S302,从M个预设网络参数集合中,确定待编码帧对应的网络参数集合,M个预设网络参数集合分别对应不同的压缩性能信息,M为大于1的整数。
示例性的,可以预先设置网络参数选取条件,例如,可以根据待编码帧的帧标识,或M个预设网络参数集合分别对应的压缩性能信息,或待编码帧的前几个已编码帧对应的网络参数集合等,来设置网络参数选取条件;具体在后续进行说明。
示例性的,当待编码帧为P帧时,可以根据网络参数选取条件从M个预设网络参数集合中,选取出待编码帧对应的网络参数集合。
S303,由编码网络根据待编码帧对应的网络参数集合,对待编码帧进行编码,以得到待编码帧的码流。
示例性的,编码网络可以加载待编码帧对应的网络参数集合,然后以待编码帧的上一帧的重建图像作为参考,对待编码帧进行编码,进而得到待编码帧的码流。然后可以将码流发送给其他设备或者存储在本地,本申请对此不作限制。
需要说明的是,一种可能方式中,S301~S303都是由编码网络执行的。
图3b为示例性示出的编码过程示意图。
假设,待编码的视频序列包括5帧,这5帧分别是IPPPP。
参照图3b,示例性的,t0时刻,该待编码的视频序列中第1帧(也就是I帧)为待编码帧,可以将I帧输入至I帧编码网络,其中,I帧编码网络可以是指用于对I帧进行编码的网络。接着,由I帧编码网络进行处理后,一方面,I帧编码网络可以输出I帧的码流;另一方面,I帧编码网络可以输出I帧的重建图像,并将I帧的重建图像作为下一时刻(即t1时刻)P帧编码网络的输入。其中,P帧编码网络可以是指用于对P帧进行编码的网络,也就是本申请所述的编码网络。
t1时刻,该待编码的视频序列中第2帧(也就第1个P帧)为待编码帧。若P帧编码网络确定待编码帧对应的网络参数集合,为预设网络参数集合1,则P帧编码网络可以加载预设网络参数集合1;以及可以将I帧编码网络输出的I帧的重建图像和第1个P帧输入至P帧编码网络。接着,由P帧编码网络进行处理后,一方面,P帧编码网络可以输出第1个P帧的码流;另一方面,P帧编码网络可以将第1个P帧的重建图像作为下一时刻(t2时刻)P帧编码网络的输入。
t2时刻,该待编码的视频序列中第3帧(也就第2个P帧)为待编码帧。若P帧编码网络确定待编码帧对应的网络参数集合,为预设网络参数集合2,则P帧编码网络可以加载预设网络参数集合2;以及可以将P帧编码网络t1时刻输出的第1个P帧的重建图像,和第2个P帧输入至P帧编码网络。接着,由P帧编码网络进行处理后,一方面,P帧编码网络可以输出第2个P帧的码流;另一方面,P帧编码网络可以将第2个P帧的重建图像作为下一时刻P帧编码网络的输入。依次类推,通过上述方式,可以完成对待编码的视频序列的编码,得到待编码的视频序列的码流。
图3c为示例性示出的编码系统的结构示意图。
参照图3c,示例性的,编码系统可以包括图像获取模块、选择器和编码网络。其中,图像获取模块用于执行S301,选择器用于执行S302,编码网络用于执行S303。
图3d为示例性示出的编码过程示意图。
图3d的编码过程与图3b的编码过程的区别在于,图3d中每个时刻P帧编码网络所加载的待编码帧对应的网络参数集合,是由选择器确定的。在t1时刻,由选择器从M个预设网络参数集合中,确定待编码帧对应的网络参数集合为预设参数集合1;接着,可以将预设参数集合1的集合标识/预设参数集合1,发送给P帧编码网络;这样,P帧编码网络可以加载预设参数集合1。在t2时刻,由选择器从M个预设网络参数集合中,确定待编码帧对应的网络参数集合为预设参数集合2;接着,可以将预设参数集合2的集合标识/预设参数集合2,发送给P帧编码网络;这样,P帧编码网络可以加载预设参数集合2;以此类推。图3d的编码过程的其它步骤与图3b的编码过程的其它步骤类似,在此不再赘述。
这样,编码网络在对相邻的多帧进行编码的过程中,可以使用不同的网络参数集合,由于各预设网络参数集合对应的压缩性能信息不同,进而能够使得相邻的多帧的压缩性能高低相间,在时序上构造了压缩性能对抗,进而从结构上减弱了累积误差,从而提升压缩性能。
图4a为示例性示出的解码流程示意图。
S401,获取待解码帧的码流。
示例性的,在获取待解码帧的码流后,可以对待解码帧的码流进行解析,判断待解码帧是否是P帧。当待解码帧是P帧时,则可以执行S402~S403,对待解码帧的码流进行解码。当待解码帧为I帧时,则可以将I帧的码流,输入至I帧解码网络,由I帧解码网络对I帧的码流进行解码,得到重建图像。其中,I帧解码网络可以是指用于对I帧进行解码的网络。
S402,从M个预设网络参数集合中,确定待解码帧对应的网络参数集合,其中,M个预设网络参数集合分别对应不同的压缩性能信息,M为大于1的整数。
一种可能的方式中,编码端在得到待编码帧的码流后,可以在待编码帧的码流中,添加网络参数集合的集合标识;这样,解码端在接收到码流后,可以通过从码流中解析出的集合标识,从M个预设网络参数集合中,确定待解码帧对应的网络参数集合。
一种可能的方式中,解码端和编码端预共享网络参数选取条件,这样编码端在得到待编码帧的码流后,无需对待编码帧的码流进行修改。进而,解码端可以接收到码流后,直接按照网络参数选取条件,从M个预设网络参数集合中,确定待解码帧对应的网络参数集合即可。
S403,由解码网络根据待解码帧对应的网络参数集合,对待解码帧的码流进行解码,以得到待解码帧的重建图像。
示例性的,解码网络可以加载待解码帧的码流所对应的网络参数集合,然后以待解码帧的上一帧的重建图像为参考,对待解码帧的码流进行解码,以得到待解码帧的重建图像。接着,解码端可以对解码得到的重建图像进行显示。
需要说明的是,一种可能方式中,S401~S403都是由解码网络执行的。
图4b为示例性示出的解码过程示意图。
假设,待解码的码流包括5帧的码流,这5帧分别是IPPPP。参照图4b,示例性的,t0时刻,该待解码的码流中第1帧的码流(也就是I帧的码流),为待解码帧的码流。可以将I帧的码流输入I帧解码网络,由I帧解码网络进行解码,输出I帧的重建图像。其中,I帧解码网络可以是指用于对I帧进行解码的网络。接着,一方面,I帧解码网络可以将I帧的重建图像发送至送显模块,由显示模块进行显示。另一方面,I帧解码网络可以将I帧的重建图像作为下一时刻(t1时刻)P帧解码网络的输入。其中,P帧解码网络可以是指用于对P帧进行解码的网络,也就是本申请所述的解码网络。
t1时刻,该待解码的码流中第2帧的码流(也就是第1个P帧的码流),为待解码帧的码流。若P帧编码网络确定待解码帧对应的网络参数集合,为预设网络参数集合1,则P帧编码网络可以加载预设网络参数集合1;以及可以将I帧解码网络输出的I帧的重建图像,和第1个P帧的码流输入P帧解码网络,由P帧解码网络进行解码,输出第1个P帧的重建图像。一方面,P帧解码网络可以将第1个P帧的重建图像发送至显示模块,由显示模块进行显示。另一方面,P帧解码网络可以将第1个P帧的重建图像作为下一时刻(t2)P帧解码网络的输入。
t2时刻,该待解码的码流中第3帧的码流(也就是第2个P帧的码流),为待解码帧的码流。若P帧编码网络确定待解码帧对应的网络参数集合,为预设网络参数集合2,则P帧编码网络可以加载预设网络参数集合2;以及可以将P帧解码网络t1时刻输出的第1个P帧的重建图像,和第2个P帧的码流输入至P帧解码网络,由P帧解码网络进行解码,输出第2个P帧的重建图像。一方面,P帧解码网络可以将第2个P帧的重建图像发送至显示模块,由显示模块进行显示。另一方面,P帧解码网络可以将第2个P帧的重建图像作为下一时刻P帧解码网络的输入。依次类推,解码器可以完成对该待解码的码流的解码。
图4c为示例性示出的解码系统的结构示意图。
参照图4c,示例性的,解码系统可以包括码流获取模块、选择器和解码网络。其中,码流获取模块用于执行S401,选择器用于执行S402,解码网络用于执行S403。
图4d为示例性示出的解码过程示意图。
图4d的解码过程与图4b的解码过程的区别在于,图4d中每个时刻P帧解码网络所加载的待解码帧对应的网络参数集合,是由选择器确定的。在t1时刻,由选择器从M个预设网络参数集合中,确定待解码帧对应的网络参数集合为预设参数集合1;接着,可以将预设参数集合1的集合标识/预设参数集合1,发送给P帧解码网络;这样,P帧解码网络可以加载预设参数集合1。在t2时刻,由选择器从M个预设网络参数集合中,确定待解码帧对应的网络参数集合为预设参数集合2;接着,可以将预设参数集合2的集合标识/预设参数集合2,发送给P帧解码网络;这样,P帧解码网络可以加载预设参数集合2;以此类推。图4d的解码过程的其它步骤与图4b的解码过程的其它步骤类似,在此不再赘述。
图5a为示例性示出的编码过程示意图。
示例性的,编码网络可以包括AI编码单元和熵编码单元(如图5a所示),其中,AI编码单元用于AI编码,熵编码单元用于熵编码。示例性的,AI编码单元可以包括:帧间变换网络、帧间逆变换网络、预测网络和残差变换网络,如图5a所示。应该理解的是,图5a仅是本申请AI编码单元的一个示例性,本申请的AI编码单元可以具有比图5所示的网络具有更多或更少的网络,如量化网络(用于量化)、概率估计网络(用于概率估计)等,本申请对此不作限制。此外,还应该理解的是,编码网络还可以包括其他单元,本申请不作限制。本申请以编码网络包括AI编码单元和熵编码单元,且AI编码单元包括:帧间变换网络、帧间逆变换网络、预测网络和残差变换网络为例,进行示例性说明。
示例性的,帧间变换网络包括R1个子网络,帧间逆变换网络包括R2个子网络,预测网络包括R3个子网络,以及残差变换网络可以包括R4个子网络。其中,R1,R2,R3以及R4之和,小于或等于Y;R1,R2,R3以及R4均为正整数,具体可以按照需求设置,本申请对此不作限制。编码网络的M个预设网络参数集合的每一个预设网络参数集合可以包括:R1个预设网络参数组1,R2个预设网络参数组2,R3个预设网络参数组3和R4个预设网络参数组4。其中,R1个预设网络参数组1与帧间变换网络的R1个子网络分别对应,R2个预设网络参数组2与帧间逆变换网络的R2个子网络分别对应,R3个预设网络参数组3与预测网络的R3个子网络分别对应,R4个预设网络参数组4与残差变换网络的R4个子网络分别对应。
需要说明的是,每个子网络可以由卷积层、下采样层以及激活层等网络层组成,本申请对此不作限制。
图5b为示例性示出的子网络的结构示意图。在图5b中子网络可以包括:3个卷积层和3个激活层,可以按照“卷积层→激活层→卷积层→激活层→卷积层→激活层”的方式连接。其中,“(W×5×5)/2↓”表示卷积层可以包括W个通道,每个卷积核的尺寸为5×5,以2为步长进行卷积。
应该理解的是,图5b仅是本申请子网络的一个示例,本申请的子网络可以包括比图5b中更多或更少的网络层,本申请对此不作限制。
一种可能的方式中,编码网络的Y个子网络中任一子网络,在M个预设网络参数集合的任意两个预设网络参数集合中对应的预设网络参数组不同。
例如,帧间变换网络的R1个子网络中每个子网络,在预设网络参数集合1中对应的预设网络参数组1,和在预设网络参数集合2中对应的预设网络参数组1不同。
例如,帧间逆变换网络的R2个子网络中每个子网络,在预设网络参数集合1中对应的预设网络参数组2,和在预设网络参数集合2中对应的预设网络参数组2不同。
例如,预测网络的R3个子网络中每个子网络,在预设网络参数集合1中对应的预设网络参数组3,和在预设网络参数集合2中对应的预设网络参数组3不同。
例如,残差变换网络的R4个子网络中每个子网络,在预设网络参数集合1中对应的预设网络参数组4,和在预设网络参数集合2中对应的预设网络参数组4不同。
一种可能的方式中,编码网络的Y1个子网络,在M个预设网络参数集合的任意两个预设网络参数集合中对应的预设网络参数组不同;以及编码网络的另外Y2个子网络,在M个预设网络参数集合的任意两个预设网络参数集合中对应的预设网络参数组相同。
例如,帧间变换网络的G1个子网络,在预设网络参数集合1中对应的预设网络参数组1,和在预设网络参数集合2中对应的预设网络参数组1不同。帧间变换网络的另外G2个子网络,在预设网络参数集合1中对应的预设网络参数组1,和在预设网络参数集合2中对应的预设网络参数组1相同。其中,G1+G2=R1,G1和G2为整数,可以按照需求设置,本申请对此不作限制。
例如,帧间逆变换网络的G3个子网络,在预设网络参数集合1中对应的预设网络参数组2,和在预设网络参数集合2中对应的预设网络参数组2不同。帧间逆变换网络的另外G4个子网络,在预设网络参数集合1中对应的预设网络参数组2,和在预设网络参数集合2中对应的预设网络参数组2相同。其中,G3+G4=R2,G3和G4为整数,可以按照需求设置,本申请对此不作限制。
例如,预测网络的G5个子网络,在预设网络参数集合1中对应的预设网络参数组3,和在预设网络参数集合2中对应的预设网络参数组3不同。预测网络的另外G6个子网络,在预设网络参数集合1中对应的预设网络参数组3,和在预设网络参数集合2中对应的预设网络参数组3相同。其中,G5+G6=R3,G5和G6为整数,可以按照需求设置,本申请对此不作限制。
例如,残差变换网络的G7个子网络,在预设网络参数集合1中对应的预设网络参数组4,和在预设网络参数集合2中对应的预设网络参数组4不同。残差变换网络的另外G8个子网络,在预设网络参数集合1中对应的预设网络参数组4,和在预设网络参数集合2中对应的预设网络参数组4相同。其中,G7+G8=R4,G7和G8为整数,可以按照需求设置,本申请对此不作限制。
其中,G1、G3、G5以及G7之和,小于或等于Y1;G2、G4、G6以及G8之和,小于或等于Y2。
参照图5a,示例性的,编码端获取到待编码帧后,可以将待编码帧和待编码帧的参考帧(可以是待编码帧的前一帧)的重建图像,输入至帧间变换网络,由帧间变换网络进行处理,输出帧间边信息的待压缩信息。接着,一方面,由熵编码单元对帧间边信息的待压缩信息进行熵编码,得到帧间边信息的码流。另一方面,可以将帧间边信息的待压缩信息输入至帧间逆变换网络,由帧间逆变换网络进行处理,输出帧间边信息。
随后,可以将帧间边信息和待编码帧的参考帧的重建图像输入至预测网络,由预测网络进行处理,输出预测信息。然后,计算待编码帧的参考帧的重建图像与预测信息的差值,可以得到残差信息,再将残差信息输入至残差变换网络,由残差网络进行处理,输出的残差信息的待压缩信息。之后,可以由熵编码单元对残差信息的待压缩信息进行熵编码,得到残差信息的码流。
其中,帧间边信息的码流和残差信息的码流,组成了待编码帧的码流;然后编码端可以将待编码帧的码流发送至解码端。
图5c为示例性示出的解码过程示意图。
示例性的,解码网络可以包括AI解码单元和熵解码单元(如图5c所示),其中,AI解码单元用于AI解码,熵解码单元用于熵解码。示例性的,AI解码单元可以包括:帧间逆变换网络、预测网络、残差逆变换网络,如图5c所示。应该理解的是,图5c仅是本申请AI解码单元的一个示例性,本申请的AI解码单元可以具有比图5所示的网络具有更多或更少的网络,如反量化网络(用于反量化)、概率估计网络(用于概率估计)等,本申请不作限制。此外,还应该理解的是,解码网络还可以包括其他单元,本申请对此也不作限制。本申请以解码网络包括AI解码单元和熵解码单元,且AI解码单元包括帧间逆变换网络、预测网络及残差逆变换网络为例进行示例性说明。
示例性的,帧间逆变换网络包括R2个子网络,残差逆变换网络包括H1个子网络,以及预测网络包括R3个子网络。其中,R2,H1以及R3之和,小于或等于Y;R2,H1以及R3均为正整数,具体可以按照需求设置,本申请对此不作限制。解码网络的M个预设网络参数集合的每一个预设网络参数集合包括:R2个预设网络参数组2,H1个预设网络参数组5和R3个预设网络参数组3。其中,R2个预设网络参数组2与帧间逆变换网络的R2个子网络分别对应,H1个预设网络参数组5与残差逆变换网络的H1个子网络分别对应,R3个预设网络参数组3与预测网络的R3个子网络分别对应。
一种可能的方式中,解码网络的Y个子网络中任一子网络,在M个预设网络参数集合的任意两个预设网络参数集合中对应的预设网络参数组不同。
例如,帧间逆变换网络的R2个子网络中每个子网络,在预设网络参数集合1中对应的预设网络参数组2,和在预设网络参数集合2中对应的预设网络参数组2不同。
例如,残差逆变换网络的H1个子网络中每个子网络,在预设网络参数集合1中对应的预设网络参数组5,和在预设网络参数集合2中对应的预设网络参数组5不同。
例如,预测网络的R3个子网络中每个子网络,在预设网络参数集合1中对应的预设网络参数组3,和在预设网络参数集合2中对应的预设网络参数组3不同。
一种可能的方式中,解码网络的Y1个子网络,在M个预设网络参数集合的任意两个预设网络参数集合中对应的预设网络参数组不同;以及解码网络的另外Y2个子网络,在M个预设网络参数集合的任意两个预设网络参数集合中对应的预设网络参数组相同。
例如,帧间逆变换网络的G3个子网络,在预设网络参数集合1中对应的预设网络参数组2,和在预设网络参数集合2中对应的预设网络参数组3不同。帧间逆变换网络的另外G4个子网络,在预设网络参数集合1中对应的预设网络参数组2,和在预设网络参数集合2中对应的预设网络参数组2相同。
例如,残差逆变换网络的F1个子网络,在预设网络参数集合1中对应的预设网络参数组5,和在预设网络参数集合2中对应的预设网络参数组5不同。残差逆变换网络的另外F2个子网络,在预设网络参数集合1中对应的预设网络参数组5,和在预设网络参数集合2中对应的预设网络参数组5相同。其中,F1+F2=H1,F1和F2为整数,可以按照需求设置,本申请对此不作限制。
例如,预测网络的G5个子网络,在预设网络参数集合1中对应的预设网络参数组3,和在预设网络参数集合2中对应的预设网络参数组3不同。预测网络的另外G6个子网络,在预设网络参数集合1中对应的预设网络参数组3,和在预设网络参数集合2中对应的预设网络参数组3相同。
其中,G3、F1以及G5之和,小于或等于Y1;G4、F2以及GF6之和,小于或等于Y2。
参照图5c,示例性的,解码端接收到码流后,可以由熵解码单元对码流进行熵解码,得到帧间边信息的待压缩信息和残差信息的待压缩信息。接着,一方面,可以将帧间边信息的待压缩信息输入至帧间逆变换网络,由帧间逆变换网络进行处理,输出帧间边信息;之后,将帧间边信息和待编码帧的参考帧的重建图像输入至预测网络,由预测网络进行处理,输出预测信息。另一方面,可以将残差信息的待压缩信息输入至残差逆变换网络,由残差逆变换网络进行处理,输出残差信息。然后,可以将残差信息和预测信息相加,得到重建图像。
以下对从M个预设网络参数集合中,确定待编码帧对应的网络参数集合的过程进行说明。
图6为示例性示出的编码流程示意图。在图6的实施例中,编码网络可以对连续的N(N为大于1的整数)个P帧使用同一网络参数集合进行编码。
S601,获取待编码帧。
示例性的,在获取待编码帧后,当确定待编码帧是P帧时,则可以执行S602~S605,对待编码帧进行编码。
S602,判断待编码帧的前N帧对应的网络参数集合是否相同。
示例性的,本申请可以对连续的N个P帧,采用相同的网络参数集合进行编码;具体的可以按照需求设置N,如N=3,本申请对N的数值不作限制。进而,可以判断待编码的前N帧对应的网络参数集合是否相同;当待编码帧的前N帧对应的网络参数集合相同时,可以执行S603;当待编码帧的前N帧对应的网络参数集合中,存在至少一帧对应的网络参数集合与其它帧对应的网络参数集合不同时,可以执行S604。
S603,根据预设规则,选取M个预设网络参数集合中,除待编码帧的前一帧对应的网络参数集合之外的一预设网络参数集合,作为待编码帧对应的网络参数集合。
示例性的,可以预先设置预设规则,具体可以按照需求设置,本申请对此不作限制。例如,k(i)=k(i-1)+1,其中,k(i)为待编码帧对应的网络参数集合的序号,k(i-1)为待编码帧的上一帧对应的网络参数集合的序号,M个预设网络参数集合的编号可以为1~M。
进而,当待编码帧的前N帧应的网络参数集合相同时,可以根据预设规则,从M个预设网络参数集合中,选取除待编码帧的前一帧对应的网络参数集合之外的一个预设网络参数集合,作为待编码帧对应的网络参数集合。
例如,假设M=5,即包括5个预设网络参数集合:预设网络参数集合1、预设网络参数集合2、预设网络参数集合3、预设网络参数集合4以及预设网络参数集合5。若N=3,且待编码帧的前3帧对应的网络参数集合是预设网络参数集合2,则选取预设网络参数集合3,作为待编码帧对应的网络参数集合。
S604,将待编码帧的前一帧对应的网络参数集合,确定为待编码帧对应的网络参数集合。
示例性的,当待编码帧的前N帧分别对应的网络参数集合中,存在至少一帧对应的网络参数集合与其它帧对应的网络参数集合不同时,可以将待编码帧的前一帧对应的网络参数集合,作为待编码帧对应的网络参数集合。
例如,在上述示例的基础上,若待编码帧的前3帧对应的网络参数集合分别是:预设网络参数集合1、预设网络参数集合1和预设网络参数集合2,则可以将预设网络参数集合2,确定为待编码帧对应的网络参数集合。
S605,由编码网络根据待编码帧对应的网络参数集合,对待编码帧进行编码,以得到待编码帧的码流。
示例性的,编码网络中的AI编码单元可以加载待编码帧对应的网络参数集合,然后可以将待编码帧的上一帧的重建图像和待编码帧输入至AI编码单元中,由AI编码单元进行处理,得到中间数据。然后由编码网络中的熵编码单元对中间数据进行熵编码,得到待编码帧的码流。
图7为示例性示出的解码流程示意图。在图7的实施例中,描述了与图6的编码过程对应的解码过程。
S701,获取待解码帧的码流。
示例性的,在获取待解码帧的码流后,可以对待解码帧的码流进行解析,判断待解码帧是否是P帧。当待解码帧是P帧时,则可以执行S702~S705,对待解码帧的码流进行解码。
S702,判断待解码帧的前N帧对应的网络参数集合是否相同。
示例性的,编码端针对连续的N个P帧采用了相同的网络参数集合进行编码;因此解码端接收到码流后,可以判断待解码帧的前N帧对应的网络参数集合是否相同。当待解码帧的前N帧对应的网络参数集合相同时,可以执行S703;当待解码帧的前N帧对应的网络参数集合中,存在至少一帧对应的网络参数集合与其它帧对应的网络参数集合不同时,可以执行S704。
S703,按照预设规则,选取M个预设网络参数集合中,除待解码帧的前一帧对应的网络参数集合之外的一预设网络参数集合,确定为待解码帧对应的网络参数集合。
示例性的,在确定待解码帧的前N帧分别的网络参数集合相同时,可以根据预设规则,选取M个预设网络参数集合中,除待解码帧的前一帧对应的网络参数集合之外的一预设网络参数集合,作为待解码帧对应的网络参数集合。
例如,假设M=5,即包括5个预设网络参数集合:预设网络参数集合1、预设网络参数集合2、预设网络参数集合3、预设网络参数集合4以及预设网络参数集合5。若N=3,且待解码帧的前3帧分别的网络参数集合均是预设网络参数集合2,则可以选取预设网络参数集合3,作为待解码帧对应的网络参数集合。
S704,将待解码帧的前一帧对应的网络参数集合,确定为待解码帧对应的网络参数集合。
示例性的,确定待解码帧的前N帧分别对应的网络参数集合中,存在至少一帧对应的网络参数集合与其它帧对应的网络参数集合不同时,可以将待解码帧的前一帧对应的网络参数集合,确定为待解码帧对应的网络参数集合。
例如,在上述示例的基础上,若待解码帧的前3帧对应的网络参数集合分别是:预设网络参数集合1、预设网络参数集合1和预设网络参数集合2,则可以将预设网络参数集合2,确定为待解码帧对应的网络参数集合。
S705,由解码网络根据待解码帧对应的网络参数集合,对待解码帧的码流进行解码,以得到待解码帧的重建图像。
示例性的,可以由解码网络所包含的熵解码单元对待解码的码流进行熵解码,得到中间数据;然后,解码网络所包含的AI解码单元加载待解码帧对应的网络参数集合,再将待解码帧的上一帧的重建图像和中间数据输入至AI解码单元中,由AI解码单元进行处理,输出待解码帧的重建图像。
图8为示例性示出的编码流程示意图。在图8的实施例中,M=2,即编码网络包括两个预设网络参数集合,编码网络可以对相邻的两个P帧使用不同网络参数集合进行编码。
S801,获取待编码帧。
示例性的,在获取到待编码帧后,在确定待编码帧为P帧后,可以判断待编码帧的帧标识是奇数,还是偶数。当确定待编码帧的帧标识为奇数时,可以执行S802;当确定待编码帧的帧标识为偶数时,可以执行S803。
示例性的,待编码帧的帧标识可以是POC(Picture Order Count,图像顺序号)值,也可以是待编码帧的帧序号,本申请对此不作限制。
S802,当待编码帧的帧标识为奇数时,将第一预设网络参数集合确定为待编码帧对应的网络参数集合。
S803,当待编码帧的帧标识为偶数时,将第二预设网络参数集合确定为待编码帧对应的网络参数集合。
示例性的,编码网络可以包括2个预测网络参数集合:第一预设网络参数集合和第二网络参数集合。当待编码帧的帧标识为奇数时,可以将第一预设网络参数集合确定为待编码帧对应的网络参数集合;当待编码帧的帧标识为偶数时,可以将第二预设网络参数集合确定为待编码帧对应的网络参数集合。
应该理解的是,当待编码帧的帧标识为奇数时,也可以将第二预设网络参数集合确定为待编码帧对应的网络参数集合;当待编码帧的帧标识为偶数时,也可以将第一预设网络参数集合确定为待编码帧对应的网络参数集合。也就是说,本申请不限制是编码网络采用第一预设网络参数集合对帧标识为奇数的待编码帧进行编码,还是采用第二预设网络参数集合对帧标识为奇数的待编码帧进行编码。
一种可能的方式中,第一预设网络参数集合对应的压缩性能信息,高于第二预设网络参数集合对应的压缩性能信息。
一种可能的方式中,第二预设网络参数集合对应的压缩性能信息,高于第一预设网络参数集合对应的压缩性能信息。
示例性的,当压缩性能信息包括图像质量时,则第一预设网络参数集合对应的图像质量,高于第二预设网络参数集合对应的图像质量;或者,第二预设网络参数集合对应的图像质量,高于第一预设网络参数集合对应的图像质量。
示例性的,当压缩性能信息包括压缩率时,则第一预设网络参数集合对应的压缩率,高于第二预设网络参数集合对应的压缩率;或者,第二预设网络参数集合对应的压缩率,高于第一预设网络参数集合对应的压缩率。
示例性的,当压缩性能信息包括图像质量和压缩率时,则第一预设网络参数集合对应的图像质量,高于第二预设网络参数集合对应的图像质量,且第一预设网络参数集合对应的压缩率,高于第二预设网络参数集合对应的压缩率。或者,第二预设网络参数集合对应的图像质量,高于第一预设网络参数集合对应的图像质量,且第二预设网络参数集合对应的压缩率,高于第一预设网络参数集合对应的压缩率。
S804,由编码网络根据待编码帧对应的网络参数集合,对待编码帧进行编码,以得到待编码帧的码流。
示例性的,S804可以参照S605的描述,在此不再赘述。
图9为示例性示出的解码流程示意图。在图9的实施例中,描述了与图8的编码方法所对应的解码方法,即M=2,也就是解码网络对应两个预设网络参数集合,解码网络可以对相邻的两个P帧使用不同网络参数集合进行解码。
S901,获取待解码帧的码流。
示例性的,在获取到待解码帧的码流后,可以对待解码帧的码流进行解析,从待解码帧的码流中获取待解码帧的帧标识和帧类型。然后当确定待解码帧为P帧,且帧标识为奇数时,执行S902;当确定待解码帧为P帧,且帧标识为偶数时,执行S903。
S902,当待解码帧的帧标识为奇数时,将第一预设网络参数集合确定为待解码帧对应的网络参数集合。
S903,当待解码帧的帧标识为偶数时,将第二预设网络参数集合确定为待解码帧对应的网络参数集合。
示例性的,解码网络可以包括2个预测网络参数集合:第一预设网络参数集合和第二网络参数集合。当待解码帧的帧标识为奇数时,可以将第一预设网络参数集合确定为待解码帧对应的网络参数集合;当待解码帧的帧标识为偶数时,可以将第二预设网络参数集合确定为待解码帧对应的网络参数集合。
应该理解的是,当待解码帧的帧标识为奇数时,也可以将第二预设网络参数集合确定为待解码帧对应的网络参数集合;当待解码帧的帧标识为偶数时,也可以将第一预设网络参数集合确定为待解码帧对应的网络参数集合。也就是说,本申请不限制是解码网络采用第一预设网络参数集合对帧标识为奇数的待解码帧进行解码,还是采用第二预设网络参数集合对帧标识为奇数的待解码帧进行解码;与编码网络对应即可以。
一种可能的方式中,第一预设网络参数集合对应的压缩性能信息,高于第二预设网络参数集合对应的压缩性能信息。
一种可能的方式中,第二预设网络参数集合对应的压缩性能信息,高于第一预设网络参数集合对应的压缩性能信息。
S904,由解码网络根据待解码帧对应的网络参数集合,对待解码帧的码流进行解码,以得到待解码帧的重建图像。
示例性的,S904可以参照S705的描述,在此不再赘述。
图10为示例性示出的编码过程示意图。在图10的实施例中,编码网络可以根据每个预设网络参数集合对应的压缩性能信息,选取用于编码待编码帧的网络参数集合。
S1001,获取待编码帧。
S1002,确定M个预设网络参数集合分别对应的压缩性能信息。
以下以确定第i个预设网络参数集合对应的压缩性能信息为例进行示例性说明。
可参照图5a,示例性的,由编码网络加载第i个预设网络参数集合,然后可以将待编码帧和待编码帧的参考帧的重建图像输入至帧间变换网络,得到帧间变换网络输出的帧间边信息的待压缩信息。接着,再将帧间边信息的待压缩信息输入至帧间逆变换网络,得到帧间逆变换网络输出的帧间边信息。随后,将待编码帧的参考帧的重建图像和帧间边信息输入至预测网络中,得到预测网络输出的预设信息。之后,根据待编码帧的参考帧的重建图像和预测信息确定残差信息,以及将残差信息输入至残差变换网络,得到残差变换网络输出的残差信息的待压缩信息。示例性的,同一个设备中可以包括编码网络和解码网络,可以参照图5b,这样,解码网络可以加载第i个预设网络参数集合,然后可以将残差信息的待压缩信息输入至残差逆变换网络,得到残差逆变换网络输出的残差信息。接着,可以根据预测信息和残差信息进行重建,得到重建图像。示例性的,可以将待编码帧与待编码帧的重建图像进行比对,来确定压缩性能信息(如PSNR(Peak Signal to Noise Ratio,峰值信噪比),bbp等),也就是第i个预设网络参数集合的压缩性能信息。这样,可以得到M个预设网络参数集合分别对应的压缩性能信息。
S1003,依据M个预设网络参数集合分别对应的压缩性能信息,从M个预设网络参数集合中,确定待编码帧对应的网络参数集合。
示例性的,编码网络可以对连续的K(K为整数,K与N可以相等,也可以不等,本申请对此不作限制)个P帧使用压缩性能信息低于阈值的同一网络参数集合进行编码,以及对之后连续的K个P帧使用压缩性能信息高于阈值的同一网络参数集合进行编码。其中,阈值可以按照需求设置,本申请对此不作限制。
进而,可以当待编码帧的前K帧对应的压缩性能信息高于阈值时,将对应的压缩性能信息低于阈值的一预设网络参数集合,作为待编码帧对应的网络参数集合。若待编码帧的前K帧对应的压缩性能信息低于阈值,则将对应的压缩性能信息高于阈值的一预设网络参数集合,作为待编码帧对应的网络参数集合。
否则,若待编码帧的前一帧对应的压缩性能信息低于阈值,则将对应的压缩性能信息低于阈值的一预设网络参数集合,作为待编码帧对应的网络参数集合;若待编码帧的前一帧对应的压缩性能信息高于阈值,则将对应的压缩性能信息高于阈值的一预设网络参数集合,作为待编码帧对应的网络参数集合。
例如,假设M=5,即包括5个预设网络参数集合:预设网络参数集合1、预设网络参数集合2、预设网络参数集合3、预设网络参数集合4以及预设网络参数集合5。其中,预设网络参数集合1和预设网络参数集合2对应压缩性能信息大于阈值,预设网络参数集合3、预设网络参数集合4以及预设网络参数集合5对应的压缩性能信息小于阈值。假设K=2,则若待编码帧的前2帧对应的预设网络参数集合均为:预设网络参数集合2,则选取预设网络参数集合3或预设网络参数集合4或预设网络参数集合5,作为待编码帧对应的网络参数集合。若待编码帧的前2帧对应的预设网络参数集合为:预设网络参数集合5,则选取预设网络参数集合1或预设网络参数集合2,作为待编码帧对应的网络参数集合。若待编码帧的前2帧对应的预设网络参数集合分别为:预设网络参数集合2和预设网络参数集合3,则选取预设网络参数集合3或预设网络参数集合4或预设网络参数集合5,作为待编码帧对应的网络参数集合。若待编码帧的前2帧对应的预设网络参数集合分别为:预设网络参数集合3和预设网络参数集合1,则选取预设网络参数集合1或预设网络参数集合2,作为待编码帧对应的网络参数集合。
S1004,由编码网络根据待编码帧对应的网络参数集合,对待编码帧进行编码,以得到待编码帧的码流。
示例性的,S1002中编码网络已经加载网络参数集合对待编码帧进行编码,得到了待编码帧的中间数据的待压缩信息(即帧间边信息的待压缩信息和残差信息的待压缩信息),此时,编码网络可以对加载网络参数集合编码待编码帧,所得到的中间数据的待压缩信息进行熵编码,得到待编码帧的码流。
示例性的,编码网络对应的M个预设网络参数集合中,每个预设网络参数集合存在对应的集合标识,每一个集合标识用于唯一标识一个预设网络参数集合。在得到待编码帧的码流后,可以将网络参数集合的集合标识,添加到待编码帧的码流中;以便于解码端使用对应的网络参数集合进行解码。
图11为示例性示出的解码过程示意图。在图11的实施例中,描述了与图10中编码过程所对应的解码过程。
S1101,获取待解码帧的码流。
S1102,从待解码帧的码流中,解析出集合标识。
S1103,将M个预设网络参数集合中,与集合标识匹配的预设网络参数集合,确定为待解码帧对应的网络参数集合。
示例性的,解码网络对应的M个预设网络参数集合中,每个预设网络参数集合存在对应的集合标识,每一个集合标识用于唯一标识一个预设网络参数集合。在获取到待解码帧的码流后,可以对待解码帧的码流进行解析,获取集合标识。接着,从解码网络对应的M个预设网络参数集合中,查找与该集合标识匹配的预设网络参数集合;然后将与该集合标识匹配的预设网络参数集合,确定为待解码帧对应的网络参数集合。
S1104,由编码网络根据待解码帧对应的网络参数集合,对待编码帧进行编码,以得到待编码帧的码流。
示例性的,S1104可以参照S705的描述,在此不再赘述。
应该理解的是,在图6的实施例中,在得到待编码帧的码流后,也可以在待编码帧的码流中,添加待编码帧对应的网络参数集合的集合标识;这样,编码端接收到待解码帧的码流后,可以参照S1101~S1104进行解码。
应该解码的是,在图8的实施例中,在得到待编码帧的码流后,也可以在待编码帧的码流中,添加待编码帧对应的网络参数集合的集合标识;这样,编码端接收到待解码帧的码流后,可以参照S1101~S1104进行解码。
图12a为示例性示出的压缩性能效果示意图。
参照图12a,实线为现有技术对应的压缩性能效果曲线,虚线为本申请对应的压缩性能效果曲线。其中,PSNR越高,图像质量越高;bpp越大,压缩率越低。通过对比,本申请在同等压缩率的提前下,PSNR更高;或者在同等PSNR的前提下,bpp更小。
图12b为示例性示出的图像质量示意图。
参照图12b,S2为现有技术对应的图像质量曲线,S1为本申请对应的图像质量曲线。通过对比,本申请各帧的图像质量具有对抗特性,且图像质量更高。
一个示例中,图13示出了本申请实施例的一种示意性框图装置1300可包括:处理器1301和收发器/收发管脚1302,可选地,还包括存储器1303。
装置1300的各个组件通过总线1304耦合在一起,其中总线1304除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图中将各种总线都称为总线1304。
可选地,存储器1303可以用于存储前述方法实施例中的指令。该处理器1301可用于执行存储器1303中的指令,并控制接收管脚接收信号,以及控制发送管脚发送信号。
装置1300可以是上述方法实施例中的电子设备或电子设备的芯片。
其中,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
本实施例还提供一种计算机存储介质,该计算机存储介质中存储有计算机指令,当该计算机指令在电子设备上运行时,使得电子设备执行上述相关方法步骤实现上述实施例中的编解码方法及训练方法。
本实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述相关步骤,以实现上述实施例中的编解码方法及训练方法。
另外,本申请的实施例还提供一种装置,这个装置具体可以是芯片,组件或模块,该装置可包括相连的处理器和存储器;其中,存储器用于存储计算机执行指令,当装置运行时,处理器可执行存储器存储的计算机执行指令,以使芯片执行上述各方法实施例中的编解码方法及训练方法。
其中,本实施例提供的电子设备、计算机存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
通过以上实施方式的描述,所属领域的技术人员可以了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
本申请各个实施例的任意内容,以及同一实施例的任意内容,均可以自由组合。对上述内容的任意组合均在本申请的范围之内。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。
结合本申请实施例公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器(Random Access Memory,RAM)、闪存、只读存储器(Read Only Memory,ROM)、可擦除可编程只读存储器(Erasable Programmable ROM,EPROM)、电可擦可编程只读存储器(Electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(CD-ROM)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。
Claims (29)
1.一种编码方法,其特征在于,所述方法包括:
获取待编码帧,所述待编码帧为P帧;
从M个预设网络参数集合中,确定所述待编码帧对应的网络参数集合,其中,所述M个预设网络参数集合分别对应不同的压缩性能信息,M为大于1的整数;
由编码网络根据所述待编码帧对应的网络参数集合,对所述待编码帧进行编码,以得到所述待编码帧的码流。
2.根据权利要求1所述的方法,其特征在于,所述M等于2,所述M个预设网络参数集合包括第一预设网络参数集合和第二预设网络参数集合;
所述从M个预设网络参数集合中,确定所述待编码帧对应的网络参数集合,包括:
当所述待编码帧的帧标识为奇数时,将所述第一预设网络参数集合确定为所述待编码帧对应的网络参数集合;
当所述待编码帧的帧标识为偶数时,将所述第二预设网络参数集合确定为所述待编码帧对应的网络参数集合。
3.根据权利要求2所述的方法,其特征在于,
所述第一预设网络参数集合对应的压缩性能信息,高于所述第二预设网络参数集合对应的压缩性能信息;或,
所述第二预设网络参数集合对应的压缩性能信息,高于所述第一预设网络参数集合对应的压缩性能信息。
4.根据权利要求1所述的方法,其特征在于,所述从M个预设网络参数集合中,确定所述待编码帧对应的网络参数集合,包括:
当所述待编码帧的前N帧对应的网络参数集合相同时,根据预设规则,选取所述M个预设网络参数集合中,除所述待编码帧的前一帧对应的网络参数集合之外的一预设网络参数集合,作为所述待编码帧对应的网络参数集合;
否则,将所述待编码帧的前一帧对应的网络参数集合,确定为所述待编码帧对应的网络参数集合,其中,N为大于1的整数。
5.根据权利要求1所述的方法,其特征在于,所述从M个预设网络参数集合中,确定所述待编码帧对应的网络参数集合,包括:
确定所述M个预设网络参数集合分别对应的压缩性能信息;
依据所述M个预设网络参数集合分别对应的压缩性能信息,从所述M个预设网络参数集合中,确定所述待编码帧对应的网络参数集合。
6.根据权利要求5所述的方法,其特征在于,所述依据所述M个预设网络参数集合分别对应的压缩性能信息,从所述M个预设网络参数集合中,确定所述待编码帧对应的网络参数集合,包括:
当所述待编码帧的前K帧对应的压缩性能信息高于阈值时,将所述M个预设网络参数集合中对应的压缩性能信息低于阈值的一预设网络参数集合,作为所述待编码帧对应的网络参数集合;若所述待编码帧的前K帧对应的压缩性能信息低于阈值,则将所述M个预设网络参数集合中对应的压缩性能信息高于阈值的一预设网络参数集合,作为所述待编码帧对应的网络参数集合,K为正整数;
否则,若待编码帧的前一帧对应的压缩性能信息低于阈值,则将所述M个预设网络参数集合中将对应的压缩性能信息低于阈值的一预设网络参数集合,作为所述待编码帧对应的网络参数集合;若待编码帧的前一帧对应的压缩性能信息高于阈值,则将所述M个预设网络参数集合中对应的压缩性能信息高于阈值的一预设网络参数集合,作为所述待编码帧对应的网络参数集合。
7.根据权利要求1至6中任一项所述的方法,其特征在于,
一个预设网络参数集合包括多个预设网络参数组;
所述编码网络包括多个子网络,所述多个子网络与所述多个预设网络参数组分别对应;
所述M个预设网络参数集合中任意两个预设网络参数集合的部分预设网络参数组不同。
8.根据权利要求1至7中任一项所述的方法,其特征在于,
所述待编码帧的码流包括所述待编码帧对应的网络参数集合的集合标识。
9.一种解码方法,其特征在于,所述方法包括:
获取待解码帧的码流,所述待解码帧为P帧;
从M个预设网络参数集合中,确定所述待解码帧对应的网络参数集合,其中,所述M个预设网络参数集合分别对应不同的压缩性能信息,M为大于1的整数;
由解码网络根据所述待解码帧对应的网络参数集合,对所述待解码帧的码流进行解码,以得到所述待解码帧的重建图像。
10.根据权利要求9所述的方法,其特征在于,所述M等于2,所述M个预设网络参数集合包括第一预设网络参数集合和第二预设网络参数集合;
所述从M个预设网络参数集合中,确定所述待解码帧对应的网络参数集合,包括:
当所述待解码帧的帧标识为奇数时,将第一预设网络参数集合确定为所述待解码帧对应的网络参数集合;
当所述待解码帧的帧标识为偶数时,将第二预设网络参数集合确定为所述待解码帧对应的网络参数集合。
11.根据权利要求10所述的方法,其特征在于,
所述第一预设网络参数集合对应的压缩性能信息,高于所述第二预设网络参数集合对应的压缩性能信息;或,
所述第二预设网络参数集合对应的压缩性能信息,高于所述第一预设网络参数集合对应的压缩性能信息。
12.根据权利要求9所述的方法,其特征在于,所述从M个预设网络参数集合中,确定所述待解码帧对应的网络参数集合,包括:
从所述待解码帧的码流中,解析出集合标识;
将所述M个预设网络参数集合中,与所述集合标识匹配的预设网络参数集合,确定为所述待解码帧对应的网络参数集合。
13.根据权利要求10所述的方法,其特征在于,所述从M个预设网络参数集合中,确定所述待解码帧对应的网络参数集合,包括:
当所述待解码帧的前N帧分别对应的网络参数集合相同时,根据预设规则,选取所述M个预设网络参数集合中,除所述待解码帧的前一帧对应的网络参数集合之外的一预设网络参数集合,作为所述待解码帧对应的网络参数集合;
否则,将所述待解码帧的前一帧对应的网络参数集合,确定为所述待解码帧对应的网络参数集合,其中,N为大于1的整数。
14.一种训练方法,其特征在于,所述方法包括:
获取训练图像;
获取目标网络,所述目标网络具有M对初始网络参数集合,M为大于1的整数;
基于损失值的M种确定方式和所述训练图像,分别对所述目标网络的M对初始网络参数集合进行更新,以得到M对预设网络参数集合;
其中,所述目标网络包括编码网络和解码网络,一对预设网络参数集合包括:所述编码网络的一个预设网络参数集合和所述解码网络的一个预设网络参数集合。
15.根据权利要求14所述的方法,其特征在于,所述基于损失值的M种确定方式和所述训练图像,分别对所述目标网络的M对初始网络参数集合进行更新,以得到M对预设网络参数集合,包括:
针对第i对初始网络参数集合,i的取值范围为1至M:
由所述目标网络加载所述第i对初始网络参数集合,并将所述训练图像输入至所述目标网络中,得到所述目标网络输出的重建图像;
按照损失值的第i种确定方式,根据所述重建图像和所述训练图像,确定所述第i对初始网络参数集合对应的损失值;
根据所述第i对初始网络参数集合对应的损失值,对所述第i对初始网络参数集合进行更新,以得到第i对预设网络参数集合。
16.根据权利要求15所述的方法,其特征在于,所述目标网络还具有初始共用网络参数组,所述基于损失值的M种确定方式和所述训练图像,分别对所述目标网络的M对初始网络参数集合进行更新,以得到M对预设网络参数集合,还包括:
在所述目标网络加载所述第i对初始网络参数集合时,加载所述初始共用网络参数组;
在根据所述第i对初始网络参数集合对应的损失值,对所述第i对初始网络参数集合进行更新时,根据所述第i对初始网络参数集合对应的损失值,对所述初始共用网络参数组进行第i组更新;
将对所述初始共用网络参数组进行M组更新所得到的预设共用网络参数组,分别添加至所述M对预设网络参数集合中。
17.根据权利要求14至16中任一项所述的方法,其特征在于,
所述M种确定方式对应M种损失函数,和/或;
所述M种确定方式对应M组计算数据,所述M组计算数据用于计算M组损失值。
18.一种编码系统,其特征在于,所述编码系统包括:选择器和编码网络,其中:
所述选择器,用于从M个预设网络参数集合中,确定待编码帧对应的网络参数集合,其中,所述待编码帧为P帧,所述M个预设网络参数集合分别对应不同的压缩性能信息,M为大于1的整数;
所述编码网络,用于根据所述待编码帧对应的网络参数集合,对所述待编码帧进行编码,以得到所述待编码帧的码流。
19.根据权利要求18所述的系统,其特征在于,所述选择器用于执行上述权利要求2至权利要求8中任一项所述的方法。
20.一种解码系统,其特征在于,所述解码系统包括:选择器和解码网络,其中:
所述选择器,用于从M个预设网络参数集合中,确定待解码帧对应的网络参数集合,其中,所述待解码帧为P帧,所述M个预设网络参数集合分别对应不同的压缩性能信息,M为大于1的整数;
所述解码网络,用于根据所述待解码帧对应的网络参数集合,对所述待解码帧的码流进行解码,以得到所述待解码帧的重建图像。
21.根据权利要求20所述的系统,其特征在于,所述选择器用于执行上述权利要求10至权利要求13中任一项所述的方法。
22.一种编码器,其特征在于,用于执行上述权利要求1至权利要求8中任一项所述的编码方法。
23.一种解码器,其特征在于,用于执行上述权利要求9至权利要求13中任一项所述的解码方法。
24.一种电子设备,其特征在于,包括:
存储器和处理器,所述存储器与所述处理器耦合;
所述存储器存储有程序指令,当所述程序指令由所述处理器执行时,使得所述电子设备执行权利要求1至权利要求8中任一项所述的编码方法。
25.一种电子设备,其特征在于,包括:
存储器和处理器,所述存储器与所述处理器耦合;
所述存储器存储有程序指令,当所述程序指令由所述处理器执行时,使得所述电子设备执行权利要求9至权利要求13中任一项所述的解码方法。
26.一种电子设备,其特征在于,包括:
存储器和处理器,所述存储器与所述处理器耦合;
所述存储器存储有程序指令,当所述程序指令由所述处理器执行时,使得所述电子设备执行权利要求14至权利要求17中任一项所述的训练方法。
27.一种芯片,其特征在于,包括一个或多个接口电路和一个或多个处理器;所述接口电路用于从电子设备的存储器接收信号,并向所述处理器发送所述信号,所述信号包括存储器中存储的计算机指令;当所述处理器执行所述计算机指令时,使得所述电子设备执行权利要求1至权利要求17中任一项所述的方法。
28.一种计算机存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,当所述计算机程序运行在计算机或处理器上时,使得所述计算机或所述处理器执行如权利要求1至17任一项所述的方法。
29.一种计算机程序产品,其特征在于,所述计算机程序产品包含软件程序,当所述软件程序被计算机或处理器执行时,使得权利要求1至17中任一项所述的方法的步骤被执行。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210224692.2A CN116781897A (zh) | 2022-03-07 | 2022-03-07 | 编解码方法及电子设备 |
PCT/CN2023/077117 WO2023169190A1 (zh) | 2022-03-07 | 2023-02-20 | 编解码方法及电子设备 |
TW112107513A TW202337213A (zh) | 2022-03-07 | 2023-03-02 | 編解碼方法及電子設備 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210224692.2A CN116781897A (zh) | 2022-03-07 | 2022-03-07 | 编解码方法及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116781897A true CN116781897A (zh) | 2023-09-19 |
Family
ID=87937178
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210224692.2A Pending CN116781897A (zh) | 2022-03-07 | 2022-03-07 | 编解码方法及电子设备 |
Country Status (3)
Country | Link |
---|---|
CN (1) | CN116781897A (zh) |
TW (1) | TW202337213A (zh) |
WO (1) | WO2023169190A1 (zh) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020047756A1 (zh) * | 2018-09-04 | 2020-03-12 | 深圳市大疆创新科技有限公司 | 图像编码方法和装置 |
EP3849180A1 (en) * | 2020-01-10 | 2021-07-14 | Nokia Technologies Oy | Encoding or decoding data for dynamic task switching |
CN113938682A (zh) * | 2020-06-29 | 2022-01-14 | 北京金山云网络技术有限公司 | 视频编码方法、装置和电子设备 |
-
2022
- 2022-03-07 CN CN202210224692.2A patent/CN116781897A/zh active Pending
-
2023
- 2023-02-20 WO PCT/CN2023/077117 patent/WO2023169190A1/zh unknown
- 2023-03-02 TW TW112107513A patent/TW202337213A/zh unknown
Also Published As
Publication number | Publication date |
---|---|
TW202337213A (zh) | 2023-09-16 |
WO2023169190A1 (zh) | 2023-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114900690B (zh) | 视频解码方法、视频编码方法、装置、设备及存储介质 | |
KR102419112B1 (ko) | 변환 도메인에서 잔차 부호 예측 방법 및 장치 | |
US7212573B2 (en) | Method and/or apparatus for determining minimum positive reference indices for a direct prediction mode | |
JP4895400B2 (ja) | 画像フレームの非フレームエッジブロックの表現における改良された圧縮 | |
WO2015078422A1 (zh) | 图像编码、解码方法及装置 | |
CN110087083B (zh) | 帧内色度预测模式的选择方法、图像处理设备及存储设备 | |
CN109819250B (zh) | 一种多核全组合方式的变换方法和系统 | |
CN110832869B (zh) | 用于视频编码或解码的运动信息获取方法与装置 | |
CN108781298B (zh) | 编码器、图像处理系统、无人机及编码方法 | |
KR100824161B1 (ko) | 화상 처리 장치 | |
US9445113B2 (en) | Methods and apparatus for parallel implementations of 4:4:4 coding | |
CN110913215B (zh) | 一种预测模式的选择方法及装置、可读存储介质 | |
KR102609215B1 (ko) | 비디오 인코더, 비디오 디코더, 및 대응하는 방법 | |
CN113489974B (zh) | 帧内预测方法、视频/图像编解码方法及相关装置 | |
US20240214562A1 (en) | Video coding with dynamic groups of pictures | |
CN114390289A (zh) | 参考像素候选列表构建方法、装置、设备及存储介质 | |
CN116781897A (zh) | 编解码方法及电子设备 | |
EP1571851A2 (en) | Intra coding method | |
US7843997B2 (en) | Context adaptive variable length code decoder for decoding macroblock adaptive field/frame coded video data | |
CN116170596A (zh) | 编解码方法及电子设备 | |
CN110731082B (zh) | 使用反向排序来压缩视频帧组 | |
CN114979711A (zh) | 音视频或图像分层压缩方法和装置 | |
US7447372B2 (en) | System(s), method(s), and apparatus for decoding exponential Golomb codes | |
CN116074500B (zh) | 图像解码方法、编码方法及装置 | |
CN114079780B (zh) | 视频解码方法、视频编码方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |