本发明涉及通信领域,具体而言,涉及一种图像解码和编码方法、解码和编码装置、解码器及编码器。
背景技术:
目前,国际标准组织正在在h.265/hevc标准上制定对高动态范围视频(highdynamicrange,简称为hdr)的扩展标准。hdr扩展标准拟采用“整形器(reshaper)”的信号处理框架构建测试模型。在头端,整形器将输入hdr视频处理为适用于h.265/hevcmain10profile编码器的输入视频(如标准动态范围图像(standarddynamicrange,简称为sdr)视频);在接收端,整形器使用与头端相逆的操作,将h.265/hevcmain10profile解码器的解码恢复sdr视频处理为hdr视频。同时,如果hdr视频和sdr视频使用不同的颜色空间(colorgamut)(hdr视频使用更大的颜色空间),则在头端和接收端的整形器操作中,还将涉及对视频颜色空间的转换。
为支持上述信号处理框架,国际标准组织对h.265/hevc进行了扩展,在参数集结构中编码和传输用于指导接收端整形器操作的信息。具体地,在序列参数集(sequenceparameterset,简称为sps)扩展中编码和传输hdr视频转换特性的参数,在图像参数集(pictureparameterset,简称为pps)扩展中编码和传输接收端整形器操作所使用的参数。在接收端,解码器完成图像重建后,对重建图像按照参数集中的参数继续执行整型操作,从而将重建图像转换为hdr图像。
上述方法中,在分片(slice)解码过程中,通过参数集索引序号激活引用的参数集,使用该参数集中的信息参数对分片进行解码。sps的适用范围是整个编码视频序列(codedvideosequence,简称为cvs),即同一个cvs中的分片解码过程中使用相同的sps。pps的使用范围是一帧图像,即同一帧图像中的分片解码过程中使用相同的pps。对应于编码过程,同一个cvs中的分片需引用相同的sps,且该sps中的信息参数在cvs的编码过程中保持不变;同一帧图像中的分片需引用相同的pps,且该pps中的参数信息在该图像编码过程中保持不变。
动态范围和颜色空间的转换过程中均会带来不可逆的信息损失。实测表明,与原始的hdr视频相比,使用前述的信号处理框架,接收端通过使用整形器恢复的hdr视频中可能存在纹理细节损失、颜色失真等可见失真,并且这些可见失真与使用h.265/hevc编码器对视频的压缩率有关。通常情况下,压缩率越高(即编码码率越低),解码恢复视频中由于有损压缩带来的失真更大,整形器对解码恢复视频处理后输出的hdr视频 中包含更多的纹理、颜色失真。因此,根据hdr视频信源特性、编码器有损压缩特性等因素,在hdr视频编码过程中动态调整整形器参数可以有效提高接收端hdr恢复视频的主观观看质量。
尽管在理论上pps提供了图像层自适应调整编码参数的机制,可以通过为每帧图像单独设置pps的方式实现整形器的图像自适应调整,但是由于整形器参数在pps扩展中进行编码,为每帧图像调整整形器参数的同时就需要重复编码pps中其他无需调整的编码参数,这些重复编码的参数将带来较大的编码比特开销。
针对相关技术中存在的视频观看质量差,整形参数的编码开销大的问题,目前尚未提出有效的解决方案。
技术实现要素:
本发明提供了一种图像解码和编码方法、解码和编码装置、解码器及编码器,以至少解决相关技术中存在的视频观看质量差,整形参数的编码开销大的问题。
根据本发明的一个方面,提供了一种图像解码处理方法,包括:解析视频码流,从所述视频码流的图像和/或分片层数据单元中获取整形参数,并根据获取的所述整形参数确定恢复图像使用的整形参数;使用所述恢复图像使用的整形参数对所述恢复图像进行整形处理;其中,所述恢复图像是在执行整形处理前,解码所述视频码流获得的图像;所述图像和/或分片层数据单元包括如下数据单元至少之一:不同于图像参数集pps的图像和/或分片层参数集,所述恢复图像对应的接入单元au中包含的参数数据单元,分片头信息,系统层图像参数数据单元。
可选地,从所述视频码流的所述图像和/或分片层数据单元中获取所述整形参数,并根据获取的所述整形参数确定恢复图像使用的整形参数之前,还包括:确定所述视频码流中au中包含的分片头信息中的pps参数集索引序号;根据通过所述参数集索引序号引用的pps获取所述恢复图像使用的整形参数。
可选地,根据通过所述参数集索引序号引用的pps获取所述恢复图像使用的整形参数包括:判断所述pps的扩展部分和/或所述pps引用的参数集中是否携带有第一整形参数;当判断结果为是时,确定获取的所述恢复图像使用的整形参数为所述第一整形参数;和/或,在判断结果为否时,确定获取的所述恢复图像使用的整形参数为预设值或空缺。
可选地,从所述视频码流的所述图像和/或分片层数据单元中获取所述整形参数,并根据获取的所述整形参数确定恢复图像使用的整形参数包括:解析所述分片头信息的扩展部分,获得第二整形参数;使用所述第二整形参数,更新或重新确定所述恢复图像使用的整形参数。
可选地,从所述视频码流的所述图像和/或分片层数据单元中获取所述整形参数,并根据获取的所述整形参数确定恢复图像使用的整形参数包括:解析所述视频码流中au中包含的参数数据单元,获取第三整形参数,其中,所述参数数据单元为包含在所述au中的独立于分片码流数据单元的数据单元;使用所述第三整形参数更新或重新确定所述恢复图像使用的整形参数;或者,根据预先配置的整形参数确定方式确定所述恢复图像使用的整形参数为所述第三整形参数。
可选地,使用所述第三整形参数更新或重新确定所述恢复图像使用的整形参数包括:确定所述视频码流中au中包含的分片头信息中的pps参数集索引序号;根据通过所述参数集索引序号引用的pps获取所述恢复图像使用的整形参数;使用所述第三整形参数更新或重新确定获取的所述恢复图像使用的整形参数。
可选地,根据通过所述参数集索引序号引用的所述pps获取所述恢复图像使用的整形参数包括:判断所述pps的扩展部分和/或所述pps引用的参数集中是否携带有第一整形参数;当判断结果为是时,确定获取的所述恢复图像使用的整形参数为所述第一整形参数;和/或,在判断结果为否时,确定获取的所述恢复图像使用的整形参数为预设值或空缺。
可选地,所述第三整形参数包括将对所述au的前一个au中包含的参数数据单元进行解析后获得的第四整形参数。
可选地,所述预先配置的整形参数确定方式包括以下至少之一:默认的确定方式、利用解析视频参数集vps获得的用于指示整形参数的第一标识信息进行确定的方式、利用解析序列参数集sps获得的用于指示整形参数的第二标识信息进行确定的方式。
可选地,从所述视频码流的所述图像和/或分片层数据单元中获取所述整形参数,并根据获取的所述整形参数确定恢复图像使用的整形参数包括:解析所述au中包含的所述分片头信息,获取第三标识信息,其中,所述第三标识信息用于指示所述恢复图像使用的整形参数是否根据除所述pps外其他图像和/或分片层参数集进行确定;当所述第三标识信息指示所述恢复图像使用的整形参数根据除所述pps外其他图像和/或分片层参数集进行确定时,解析所述au中包含的所述分片头信息,获取所述其他图像和/或分片层参数集的索引序号,激活索引序号与所述其他图像和/或分片层参数集的索引序号相同的参数集,获取第五整形参数;使用所述第五整形参数,更新或重新确定获取的所述恢复图像使用的整形参数。
可选地,解析所述视频码流,从所述视频码流的图像和/或分片层数据单元中获取整形参数,并根据获取的所述整形参数确定恢复图像使用的整形参数包括:从用于承载所述视频码流的传输流或媒体文件中的系统层图像参数数据单元中获取第六整形参数;使用所述第六整形参数更新或重新确定所述恢复图像使用的整形参数;或者,确定所述恢复图像使用的整形参数为所述第六整形参数;其中,所述系统层图像参数数据单元包 括与所述视频码流中接入单元au对应的描述信息或辅助信息。
可选地,使用所述第六整形参数更新或重新确定所述恢复图像使用的整形参数,包括:确定所述视频码流中au中包含的分片头信息中的pps参数集索引序号;根据通过所述参数集索引序号引用的pps获取所述恢复图像使用的整形参数;使用所述第六整形参数更新或重新确定获取的所述恢复图像使用的整形参数。
可选地,根据通过所述参数集索引序号引用的所述pps获取所述恢复图像使用的整形参数,包括:判断所述pps的扩展部分和/或所述pps引用的参数集中是否携带有第一整形参数;当判断结果为是时,确定获取的所述恢复图像使用的整形参数为所述第一整形参数;和/或,在判断结果为否时,确定获取的所述恢复图像使用的整形参数为预设值或空缺。
可选地,从用于承载所述视频码流的传输流或媒体文件中的所述系统层图像参数数据单元中获取所述整形参数包括:根据从所述系统层图像参数数据单元中获取的如下参数至少之一确定所述整形参数:是否执行整形操作的标识参数、动态范围整形参数、颜色空间整形参数、整形参数使用范围。
可选地,所述方法还包括:从用于承载所述视频码流的传输流或媒体文件中的系统层图像参数数据单元中获取对所述恢复图像进行二次整形处理的整形参数,其中,所述系统层图像参数数据单元包括与所述视频码流中接入单元au对应的描述信息或辅助信息;利用获取的对所述恢复图像进行二次整形处理的整形参数对所述恢复图像进行二次整形处理。
可选地,从用于承载所述视频码流的传输流或媒体文件中的系统层图像参数数据单元中获取对所述恢复图像进行二次整形处理的整形参数包括:根据从所述系统层图像参数数据单元中获取的如下参数至少之一确定对所述恢复图像进行二次整形处理的整形参数:是否执行整形操作的标识参数、动态范围整形参数、颜色空间整形参数、整形参数使用范围。
根据本发明的另一方面,提供了一种图像编码处理方法,包括:确定用于将恢复图像转换为高动态范围视频hdr图像的所述恢复图像使用的整形参数,其中,所述恢复图像是编码器执行整形操作前对当前视频编码图像的本地恢复标准动态范围sdr图像,或者,所述恢复图像是解码待处理视频码流所获得的sdr图像;将确定的所述恢复图像使用的整形参数写入所述当前视频编码图像所在视频码流或所述待处理视频码流的图像和/或分片层数据单元中,其中,所述图像和/或分片层数据单元包括如下数据单元的至少之一:不同于图像参数集pps的图像和/或分片层参数集,所述恢复图像对应的接入单元au中包含的参数数据单元,分片头信息,系统层图像参数数据单元。
可选地,确定用于将所述恢复图像转换为所述高动态范围视频hdr图像的所述恢复图像使用的整形参数包括:确定图像层整形参数和序列层整形参数,其中:所述图像 层整形参数包括最小化所述恢复图像与目标hdr图像之间误差的整形处理过程中使用的滤波器系数;所述序列层整形参数包括根据所述目标hdr图像构成的目标hdr视频的动态范围和颜色空间、所述恢复图像构成的恢复视频的动态范围和颜色空间,确定的从所述恢复视频的动态范围扩展至所述目标hdr视频的动态范围的映射参数和/或从所述恢复视频的颜色空间到所述目标hdr视频的颜色空间的转换参数;根据所述图像层整形参数和所述序列层整形参数确定所述恢复图像使用的整形参数。
可选地,所述目标hdr图像是输入编码器的原始hdr视频中对应于所述恢复图像的hdr图像。
可选地,根据所述图像层整形参数和所述序列层整形参数确定所述恢复图像使用的整形参数包括:分别利用所述图像层整形参数和所述序列层整形参数对所述恢复图像进行整形处理;确定对所述恢复图像进行整形处理后得到的hdr图像与所述目标hdr图像之间的误差最小的参数作为所述恢复图像使用的整形参数。
可选地,将确定的所述恢复图像使用的整形参数写入所述当前视频编码图像所在视频码流或所述待处理视频码流的图像和/或分片层数据单元中包括:当所述恢复图像使用的整形参数为所述序列层整形参数时,对所述序列层整形参数进行编码,并将编码后的编码比特写入所述当前视频编码图像所在视频码流或所述待处理视频码流的图像参数集pps和/或所述pps引用的参数集中;当所述恢复图像使用的整形参数为所述图像层整形参数时,对所述图像层整形参数进行编码,并将编码后的编码比特写入所述当前视频编码图像所在视频码流或所述待处理视频码流中接入单元au中包含的分片头信息中。
可选地,根据所述图像层整形参数和所述序列层整形参数确定所述恢复图像使用的整形参数包括:从所述图像层整形参数、所述序列层整形参数以及当前按照编码顺序的前一个编码图像所使用的整形参数中确定所述恢复图像使用的整形参数。
可选地,从所述图像层整形参数、所述序列层整形参数以及当前按照编码顺序的前一个编码图像所使用的整形参数中确定所述恢复图像使用的整形参数包括:分别利用所述图像层整形参数、所述序列层整形参数和所述前一个编码图像所使用的整形参数对所述恢复图像进行整形处理;确定对所述恢复图像进行整形处理后得到的hdr图像与所述目标hdr图像之间的误差最小的参数作为所述恢复图像使用的整形参数。
可选地,将确定的所述恢复图像使用的整形参数写入所述当前视频编码图像所在视频码流或所述待处理视频码流的图像和/或分片层数据单元中包括:当所述恢复图像使用的整形参数为所述序列层整形参数时,对所述序列层整形参数进行编码,并将编码后的编码比特写入所述当前视频编码图像所在视频码流或所述待处理视频码流的图像参数集pps和/或所述pps引用的参数集中;当所述恢复图像使用的整形参数为所述图像层整形参数或所述前一个编码图像所使用的整形参数时,对所述图像层整形参数或所述 前一个编码图像所使用的整形参数进行编码,并将编码后的编码比特写入所述当前视频编码图像所在视频码流或所述待处理视频码流中接入单元au中包含的参数数据单元中;或者,当所述恢复图像使用的整形参数为所述图像层整形参数时,对所述图像层整形参数进行编码,并将编码后的编码比特写入所述当前视频编码图像所在视频码流或所述待处理视频码流中接入单元au中包含的参数数据单元中;当所述恢复图像使用的整形参数为所述前一个编码图像所使用的整形参数时,在所述当前视频编码图像所在视频码流或所述待处理视频码流中接入单元au中编码第四标识信息,其中,所述第四标识信息用于指示所述整形参数为所述前一个编码图像所使用的整形参数;其中,所述参数数据单元为包含在所述au中的独立于分片码流数据单元的数据单元。
可选地,所述方法还包括:按照如下方式至少之一编码用于指示所述整形参数的标识信息:在视频参数集vps中编码用于指示所述整形参数的第一标识信息的方式、在序列参数集sps中编码用于指示所述整形参数的第二标识信息的方式。
可选地,根据所述图像层整形参数和所述序列层整形参数确定所述恢复图像使用的整形参数包括:从所述图像层整形参数、所述序列层整形参数以及已使用的除所述恢复图像对应的接入单元au中包含的分片头信息中的图像参数集pps外图像和/或分片层参数集中编码的一个或多个第一其他整形参数中确定所述恢复图像使用的整形参数。
可选地,从所述图像层整形参数、所述序列层整形参数以及所述第一其他整形参数中确定所述恢复图像使用的整形参数包括:分别利用所述图像层整形参数、所述序列层整形参数和所述第一其他整形参数对所述恢复图像进行整形处理;确定对所述恢复图像进行整形处理后得到的hdr图像与所述目标hdr图像之间的误差最小的参数作为所述恢复图像使用的整形参数。
可选地,将确定的所述恢复图像使用的整形参数写入所述当前视频编码图像所在视频码流或所述待处理视频码流的图像和/或分片层数据单元中包括:当所述恢复图像使用的整形参数为所述序列层整形参数时,在分片头信息中,编码标识不使用pps外图像和/或分片层参数集的信息;当所述恢复图像使用的整形参数为所述第一其他整形参数时,在分片头信息中,编码标识使用pps外图像和/或分片层参数集的信息,编码所述第一其他整形参数所在参数集的参数集索引序号;当所述恢复图像使用的整形参数为所述图像层整形参数时,对所述图像层整形参数进行编码并将编码比特写入新建的参数集数据单元中,其中,所述新建的参数集数据单元配置有参数集索引序号,在分片头信息中,编码标识使用pps外图像和/或分片层参数集的信息,编码所述参数集索引序号。
可选地,根据所述图像层整形参数和所述序列层整形参数确定所述恢复图像使用的整形参数包括:从所述图像层整形参数、所述序列层整形参数以及在传输流或媒体文件的系统层中编码的一个或多个第二其他整形参数中确定所述恢复图像使用的整形参数。
可选地,从所述图像层整形参数、所述序列层整形参数以及所述第二其他整形参数 中确定所述恢复图像使用的整形参数包括:分别利用所述图像层整形参数、所述序列层整形参数和所述第二其他整形参数对所述恢复图像进行整形处理;确定对所述恢复图像进行整形处理后得到的hdr图像与所述目标hdr图像之间的误差最小的参数作为所述恢复图像使用的整形参数。
可选地,将确定的所述恢复图像使用的整形参数写入所述当前视频编码图像所在视频码流或所述待处理视频码流的图像和/或分片层数据单元中包括:当所述恢复图像使用的整形参数为所述序列层整形参数时,在系统层编码第五标识信息,其中,所述第五标识信息用于指示所述恢复图像使用的整形参数不使用所述系统层中已编码的整形参数;当所述恢复图像使用的整形参数为所述图像层整形参数时,在所述系统层编码所述图像层整形参数;当所述恢复图像使用的整形参数为所述第二其他整形参数时,在所述系统层编码所述第二其他整形参数,或者,在所述系统层编码第六标识信息,其中,所述第六标识信息用于指示所述恢复图像使用的整形参数使用所述系统层中已编码的整形参数。
可选地,所述系统层中编码用于对所述恢复图像进行二次整形的整形参数和用于指示二次整形操作执行方式的控制信息。
根据本发明的另一方面,提供了一种图像解码处理装置,包括:第一确定模块,用于解析视频码流,从所述视频码流的图像和/或分片层数据单元中获取整形参数,并根据获取的所述整形参数确定恢复图像使用的整形参数;处理模块,用于使用所述恢复图像使用的整形参数对所述恢复图像进行整形处理;其中,所述恢复图像是在执行整形处理前,解码所述视频码流获得的图像;所述图像和/或分片层数据单元包括如下数据单元至少之一:不同于图像参数集pps的图像和/或分片层参数集,所述恢复图像对应的接入单元au中包含的参数数据单元,分片头信息,系统层图像参数数据单元。
根据本发明的另一方面,提供了一种图像编码处理装置,包括:第二确定模块,用于确定用于将恢复图像转换为高动态范围视频hdr图像的所述恢复图像使用的整形参数,其中,所述恢复图像是编码器执行整形操作前对当前视频编码图像的本地恢复标准动态范围sdr图像,或者,所述恢复图像是解码待处理视频码流所获得的sdr图像;写入模块,用于将确定的所述恢复图像使用的整形参数写入所述当前视频编码图像所在视频码流或所述待处理视频码流的图像和/或分片层数据单元中,其中,所述图像和/或分片层数据单元包括如下数据单元的至少之一:不同于图像参数集pps的图像和/或分片层参数集,所述恢复图像对应的接入单元au中包含的参数数据单元,分片头信息,系统层图像参数数据单元。
根据本发明的另一方面,提供了一种解码器,包括上述的图像解码处理装置。
根据本发明的另一方面,提供了一种编码器,包括上述的图像编码处理装置。
通过本发明,采用解析视频码流,从所述视频码流的图像和/或分片层数据单元中 获取整形参数,并根据获取的所述整形参数确定恢复图像使用的整形参数;使用所述恢复图像使用的整形参数对所述恢复图像进行整形处理;其中,所述恢复图像是在执行整形处理前,解码所述视频码流获得的图像;所述图像和/或分片层数据单元包括如下数据单元至少之一:不同于图像参数集pps的图像和/或分片层参数集,所述恢复图像对应的接入单元au中包含的参数数据单元,分片头信息,系统层图像参数数据单元。解决了相关技术中存在的视频观看质量差,整形参数的编码开销大的问题,进而达到了提高视频观看质量,降低整形参数的编码开销的效果。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的图像解码处理方法的流程图;
图2是根据本发明实施例的图像编码处理方法的流程图;
图3是根据本发明实施例的图像解码处理装置的结构框图;
图4是根据本发明实施例的图像解码处理装置的优选结构框图;
图5是根据本发明实施例的图像编码处理装置的结构框图;
图6是根据本发明实施例的解码器的结构框图;
图7是根据本发明实施例的编码器的结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
在本实施例中提供了一种图像解码处理方法,图1是根据本发明实施例的图像解码处理方法的流程图,如图1所示,该流程包括如下步骤:
步骤s102,解析视频码流,从该视频码流的图像和/或分片层数据单元中获取整形参数,并根据获取的整形参数确定恢复图像使用的整形参数;
步骤s104,使用上述恢复图像使用的整形参数对恢复图像进行整形处理;其中,该恢复图像是在执行整形处理前,解码视频码流获得的图像;上述图像和/或分片层数据单元包括如下数据单元至少之一:不同于图像参数集pps的图像和/或分片层参数集, 上述恢复图像对应的接入单元au中包含的参数数据单元,分片头信息,系统层图像参数数据单元。
其中,上述实施例中的动作的执行者可以是解码处理设备,例如,解码器。
从上述实施例可知,用于对恢复图像进行整形处理的整形参数是根据从视频码流的图像和/或分片层数据单元中获取的整形参数确定的,可以有效提高图像的观看质量,进而提高视频的观看质量,并且,还可以降低整形参数的编码开销。通过上述步骤,解决了相关技术中存在的视频观看质量差,整形参数的编码开销大的问题,进而达到了提高视频观看质量,降低整形参数的编码开销的效果。
在一个可选的实施例中,从上述视频码流的图像和/或分片层数据单元中获取上述整形参数,并根据获取的上述整形参数确定恢复图像使用的整形参数之前,还包括:确定上述视频码流中au中包含的分片头信息中的pps参数集索引序号;根据通过上述参数集索引序号引用的pps获取恢复图像使用的整形参数。
其中,根据通过上述参数集索引序号引用的pps获取恢复图像使用的整形参数可以有多种获取方式,下面以一种为例进行说明:判断上述pps的扩展部分和/或pps引用的参数集中是否携带有第一整形参数;当判断结果为是时,确定获取的上述恢复图像使用的整形参数为该第一整形参数;和/或,在判断结果为否时,确定获取的上述恢复图像使用的整形参数为预设值或空缺。下面以上述视频码流为hdr视频码流为例进行说明:
解码处理设备解析hdr视频码流中各au中包含的分片头信息中的pps参数集索引序号,在已收到的pps中,寻找pps数据单元中索引序号与解析分片头信息获得的参数集索引序号值相同的pps。解码处理设备激活该pps,解析该pps数据单元中的编码比特。若解析该pps的扩展部分获得整形参数,则将该整形参数设置为引用该pps的分片使用的整形参数。反之,若解析该pps扩展中未获得整形参数,则将引用该pps的分片所使用的整形参数设置为空缺,或者设置为预设值。
从上述实施例中可知,图像和/或分片层数据单元包括如下数据单元至少之一:不同于图像参数集pps的图像和/或分片层参数集,上述恢复图像对应的接入单元au中包含的参数数据单元,分片头信息,系统层图像参数数据单元。下面分别结合不同的图像和/或分片层数据单元对上述的步骤s102中涉及到的操作进行说明:
在一个可选的实施例中,上述的图像和/或分片层数据单元可以为分片头信息,在该实施例中,从上述视频码流的图像和/或分片层数据单元中获取整形参数,并根据获取的整形参数确定恢复图像使用的整形参数包括:解析上述分片头信息的扩展部分,获得第二整形参数;使用该第二整形参数,更新或重新确定恢复图像使用的整形参数。下 面结合一个具体的实施例对图像和/或分片层数据单元可以为分片头信息时的相关操作进行说明:
具体实施例1:
本实施例是一种hdr视频的解码处理方法,用于对hdr视频进行解码处理的装置。所述装置的输入是hdr视频码流或包含hdr视频码流的传输流或媒体文件,输出是用于播放的恢复hdr视频。该实施例包括如下步骤:
步骤一,解析码流,从图像和/或分片层数据单元中获得整形参数。
解码处理设备解析输入码流。如果输入码流是包含hdr视频码流的传输流或媒体文件,则从所述传输流或媒体文件中提取hdr视频码流。
解码处理设备解析hdr视频码流中各au中包含的分片头信息中的pps参数集索引序号,在已收到的pps中,寻找pps数据单元中索引序号与解析分片头信息获得的参数集索引序号值相同的pps。
解码处理设备激活该pps,解析该pps数据单元中的编码比特。若解析该pps的扩展部分获得整形参数,则将该整形参数设置为引用该pps的分片使用的整形参数(对应于上述的第一整形参数)。反之,若解析该pps扩展中未获得整形参数,则将引用该pps的分片所使用的整形参数设置为空缺,或者设置为预设值。
解码处理设备解析分片头信息。若解析分片头信息扩展部分获得整形参数(对应于上述的第二整形参数),则将该整形参数设置为该分片使用的整形参数,即使用解析分片头信息扩展所获得的整形参数覆盖解析该分片引用的pps所获得的整形参数或预设值。反之,若解析分片头信息扩展部分未获得整形参数,则使用解析该分片引用的pps扩展获得的整形参数或预设值。
特别地,当解码处理设备从hdr视频码流中获得的“是否需要对该图像的恢复sdr图像进行整形处理”的标识信息指示“不需要对该图像的恢复sdr图像进行整形处理”,则解码处理设备可以跳过整形参数解析步骤和对该sdr图像的整形处理步骤。尽管如此,解码处理设备仍需要将解码图像转换成适合播放的视频数据格式。
步骤二,解码视频码流,获得恢复图像。
解码处理设备对hdr视频码流进行解码,获得恢复sdr视频。
步骤三,根据恢复图像使用的整形参数,对恢复sdr图像进行整形处理,转换为hdr图像。
使用上述方法,当恢复sdr图像的信源特性(可包括但不限于:动态范围、颜色空间、有损压缩失真等)与序列中大多图像相同或相近时,解码处理设备使用从pps中获得的整形参数对恢复sdr视频进行整形处理。当恢复sdr图像的信源特性与序列 中大多图像差异较大时,解码处理设备能够从分片头信息扩展中获得与恢复图像信源特性相关的整形参数,并根据所述整形参数对恢复sdr图像进行整形处理,提高了整形处理所得hdr图像的观看质量。这样,避免了因图像层整形参数的改变而带来的频繁解码处理设备更新pps的操作。
在一个可选的实施例中,上述的图像和/或分片层数据单元可以为au中包含的参数数据单元。在该实施例中,从上述视频码流的图像和/或分片层数据单元中获取上述整形参数,并根据获取的整形参数确定恢复图像使用的整形参数包括:解析上述视频码流中au中包含的参数数据单元,获取第三整形参数,其中,该参数数据单元为包含在au中的独立于分片码流数据单元的数据单元;使用上述第三整形参数更新或重新确定恢复图像使用的整形参数;或者,根据预先配置的整形参数确定方式确定上述恢复图像使用的整形参数为第三整形参数。
可选地,使用上述第三整形参数更新或重新确定恢复图像使用的整形参数包括:确定视频码流中au中包含的分片头信息中的pps参数集索引序号;根据通过该参数集索引序号引用的pps获取上述恢复图像使用的整形参数;使用第三整形参数更新或重新确定获取的该恢复图像使用的整形参数。其中,根据通过上述参数集索引序号引用的pps获取上述恢复图像使用的整形参数可以有多种获取方式,例如,可以通过如下的方式获取恢复图像使用的整形参数:判断上述pps的扩展部分和/或pps引用的参数集中是否携带有第一整形参数;当判断结果为是时,确定获取的上述恢复图像使用的整形参数为第一整形参数;和/或,在判断结果为否时,确定获取的恢复图像使用的整形参数为预设值或空缺。
其中,上述第三整形参数还可以通过如下的方式确定:将对上述au的前一个au中包含的参数数据单元进行解析后获得的第四整形参数。该前一个au可以是按照au解码顺序确定的当前待解码au(即,上述的au)的前一个au。
上述预先配置的整形参数的确定方式可以包括以下至少之一:默认的确定方式、利用解析视频参数集vps获得的用于指示整形参数的第一标识信息进行确定的方式、利用解析序列参数集sps获得的用于指示整形参数的第二标识信息进行确定的方式。其中,上述的默认方式可以是预先已经配置好的一种确定方式。下面结合一个具体的实施例对上述的图像和/或分片层数据单元为au中包含的参数数据单元时的操作进行说明:
具体实施例2:
本实施例是一种hdr视频的解码处理方法,用于对hdr视频进行解码处理的装置。所述装置的输入是hdr视频码流或包含hdr视频码流的传输流或媒体文件,输出是用于播放的恢复hdr视频。该实施例包括如下步骤:
步骤一,解析码流,从图像和/或分片层数据单元中获得整形参数。
解码处理设备解析输入码流。如果输入码流是包含hdr视频码流的传输流或媒体文件,则从所述传输流或媒体文件中提取hdr视频码流。
解码处理设备解析hdr视频码流中各au中包含的分片头信息中的pps参数集索引序号,在已收到的pps中,寻找pps数据单元中索引序号与解析分片头信息获得的参数集索引序号值相同的pps。
解码处理设备激活该pps,解析该pps数据单元中的编码比特。若解析该pps的扩展部分获得整形参数(对应于上述的第一整形参数),则将该整形参数设置为引用该pps的分片使用的整形参数。反之,若解析该pps扩展中未获得整形参数,则将引用该pps的分片所使用的整形参数设置为空缺,或者设置为预设值。
若解码处理设备检测到au中包含参数数据单元,则解析该数据参数数据单元,获得对该au中包含的分片解码后得到的sdr恢复图像进行整形操作的整形参数(对应于上述的第三整形参数),并将所述整形参数设置对sdr恢复图像进行整形操作的整形参数。反之,若解码处理设备检测到au中不包含参数数据单元,则将解析该au中包含的分片所引用的pps获得的整形参数设置为对sdr恢复图像进行整形操作的整形参数。这里,所述参数数据单元是包含在au中的独立于分片码流数据单元的数据单元,例如,参数集和辅助增强信息(supplementalenhancementinformation,简称为sei)数据单元,用户定义的数据单元,等。
可选择地,解码处理设备检测到au中包含参数数据单元时,可以配置为将解析按照au解码顺序当前待解码au前一个au中包含的参数数据单元获得的整形参数(对应于上述的第四整形参数)作为解码当前au获得的sdr恢复图像的候选整形参数(对应于上述的第三整形参数)。另一组候选整形参数是解析pps获得的整形参数。解码处理设备解析待解码au中包含的分片头信息,获得选择使用哪一组候选整形参数的标识信息,根据标识信息使用对应的整形参数对sdr恢复图像进行整形处理。这里,对解码处理设备的配置方法可以是:解码处理设备默认采用上述方法;或者,解码处理设备解析视频参数集(videoparameterset,简称为vps)和/或sps获得是否使用上述方法的标识信息(其中,从vps中解析出的标识信息对应于上述的第一标识信息,从sps中解析出的标识信息对应于上述的第二标识信息),根据标识信息配置是否使用已解码au中的参数数据单元包含的整形参数。
特别地,当解码处理设备从hdr视频码流中获得的“是否需要对该图像的恢复sdr图像进行整形处理”的标识信息指示“不需要对该图像的恢复sdr图像进行整形处理”,则解码处理设备可以跳过整形参数解析步骤和对该sdr图像的整形处理步骤。尽管如此,解码处理设备仍需要将解码图像转换成适合播放的视频数据格式。
步骤二,与具体实施例1中的步骤二相同,在此,不再赘述。
步骤三,与具体实施例1中的步骤三相同,在此,不再赘述。
需要说明的是,在该具体实施例中,从hdr视频码流中各au中包含的分片头信息中的pps中解析整形参数的操作,可以是在从au中包含参数数据单元中解析整形参数的操作之后进行的。
与具体实施例1中所述的解码处理设备相比,本实施例中的解码处理设备通过解析au中的参数数据单元,获得au中所有分片所使用的整形参数,这样可以进一步降低解析分片头信息的开销。
在一个可选的实施例中,上述的图像和/或分片层数据单元可以是au中包含的分片头信息,在该实施例中,从上述视频码流的图像和/或分片层数据单元中获取整形参数,并根据获取的整形参数确定恢复图像使用的整形参数包括:解析au中包含的分片头信息,获取第三标识信息,其中,该第三标识信息用于指示恢复图像使用的整形参数是否根据除pps外其他图像和/或分片层参数集进行确定;当上述第三标识信息指示恢复图像使用的整形参数根据除pps外其他图像和/或分片层参数集进行确定时,解析au中包含的分片头信息,获取上述其他图像和/或分片层参数集的索引序号;激活索引序号与其他图像和/或分片层参数集的索引序号相同的参数集,获取第五整形参数;使用上述第五整形参数,更新或重新确定获取的恢复图像使用的整形参数。下面结合一个具体实施例对图像和/或分片层数据单元是au中包含的分片头信息时的相关操作进行说明:
具体实施例3:
本实施例是一种hdr视频的解码处理方法,用于对hdr视频进行解码处理的装置。所述装置的输入是hdr视频码流或包含hdr视频码流的传输流或媒体文件,输出是用于播放的恢复hdr视频。该实施例包括如下步骤:
步骤一,解析码流,从图像和/或分片层数据单元中获得整形参数。
解码处理设备解析输入码流。如果输入码流是包含hdr视频码流的传输流或媒体文件,则从上述传输流或媒体文件中提取hdr视频码流。
解码处理设备解析hdr视频码流中各au中包含的分片头信息中的pps参数集索引序号,在已收到的pps中,寻找pps数据单元中索引序号与解析分片头信息获得的参数集索引序号值相同的pps。
解码处理设备激活该pps,解析该pps数据单元中的编码比特。若解析该pps的扩展部分获得整形参数(对应于上述的第一整形参数),则将该整形参数设置为引用该pps的分片使用的整形参数。反之,若解析该pps扩展中未获得整形参数,则将引用该pps的分片所使用的整形参数设置为空缺,或者设置为预设值。
解码处理设备解析该分片头信息,获得是否使用除pps外其他图像/分片层参数集的标识信息。如果该标识信息指示“不使用除pps外其他图像/分片层参数集”,则使用解析pps扩展所获得的整形参数对恢复sdr图像进行整形处理。
反之,如果该标识信息指示“使用除pps外其他图像/分片层参数集”,则继续解析分片头信息,获得该图像/分片层参数集的索引序号,在已接收的码流或已解码的参数集数据单元中,寻找与参数集索引序号与解析分片头信息获得索引序号相同的参数集。解码处理设备解析该参数集,获得整形参数(对应于上述的第五整形参数),使用该整形参数对解码恢复sdr图像进行整形处理。在上述过程中,解码处理设备可以通过搜索已接收的au、在au外传输的参数集码流寻找所述图像/分片层参数集。可选择地,由于所处理的hdr视频码流中可能包含较多的、参数集索引序号不同的所述图像/分片层参数集,因此,为降低解码处理设备搜索参数集的处理复杂度,解码处理设备使用一个以参数集索引序号为访问参数的数据结构。例如,一种实现方式可以是以参数集索引序号为访问参数的指针数组,数组中的指针指向存储有该参数集索引序号对应参数集的解析数据。解码处理设备在解析分片头信息获得参数集索引序号后,可以直接以参数集索引序号为入口参数访问该数据结构,获得对应参数集中包含的整形参数。
特别地,当解码处理设备从hdr视频码流中获得的“是否需要对该图像的恢复sdr图像进行整形处理”的标识信息指示“不需要对该图像的恢复sdr图像进行整形处理”,则解码处理设备可以跳过整形参数解析步骤和对该sdr图像的整形处理步骤。尽管如此,解码处理设备仍需要将解码图像转换成适合播放的视频数据格式。
步骤二,与具体实施例2中的步骤二相同,在此,不再赘述。
步骤三,与具体实施例2中的步骤三相同,在此,不再赘述。
与具体实施例2中的解码处理设备相比,本实施例中的解码处理设备通过解析不同于pps的图像/分片层参数集,获得分片所使用的整形参数。这使得解码处理设备可以选用不局限于前一个解码au中的整形参数,提高了已解码信息的利用率。同时,借助于参数集本身的属性,解码处理设备更加易于判断是否存在分组丢失的情况。例如,解码处理设备在解析分片头信息的参数集序号后,未在已接收的参数集中寻找到具有相同参数集序号的参数集,此时,解码处理设备可以启用差错处理机制,进行差错恢复,提高了视频通信的可靠性。
在一个可选的实施例中,上述的图像和/或分片层数据单元可以是系统层图像参数数据单元,在该实施例中,解析视频码流,从视频码流的图像和/或分片层数据单元中获取整形参数,并根据获取的整形参数确定恢复图像使用的整形参数包括:从用于承载上述视频码流的传输流或媒体文件中的系统层图像参数数据单元中获取第六整形参数;使用该第六整形参数更新或重新确定恢复图像使用的整形参数;或者,确定恢复图像使 用的整形参数为该第六整形参数;其中,该系统层图像参数数据单元包括与视频码流中接入单元au对应的描述信息或辅助信息。
在一个可选的实施例中,使用上述第六整形参数更新或重新确定恢复图像使用的整形参数包括:确定上述视频码流中au中包含的分片头信息中的pps参数集索引序号;根据通过上述参数集索引序号引用的pps获取恢复图像使用的整形参数;使用上述第六整形参数更新或重新确定获取的恢复图像使用的整形参数。
在一个可选的实施例中,根据通过上述参数集索引序号引用的pps获取恢复图像使用的整形参数包括:判断上述pps的扩展部分和/或pps引用的参数集中是否携带有第一整形参数;当判断结果为是时,确定获取的恢复图像使用的整形参数为第一整形参数;和/或,在判断结果为否时,确定获取的恢复图像使用的整形参数为预设值或空缺。
在一个可选的实施例中,从用于承载上述视频码流的传输流或媒体文件中的系统层图像参数数据单元中获取整形参数包括:根据从系统层图像参数数据单元中获取的如下参数至少之一确定上述整形参数:是否执行整形操作的标识参数、动态范围整形参数、颜色空间整形参数、整形参数使用范围。
在一个可选的实施例中,为了保证视频的质量,可以对上述的恢复图像进行多次整形处理(如两次整形处理)。下面对该实施例进行说明:从用于承载视频码流的传输流或媒体文件中的系统层图像参数数据单元(也可以是其他的系统层信息单元)中获取对恢复图像进行二次整形处理的整形参数,其中,该系统层图像参数数据单元包括与视频码流中接入单元au对应的描述信息或辅助信息;利用获取的对恢复图像进行二次整形处理的整形参数对恢复图像进行二次整形处理。其中,需要说明的是,获取二次整形处理的整形参数的操作可以是在上述各实施例中获取恢复图像使用的整形参数的操作之前进行的。
在一个可选的实施例中,从用于承载上述视频码流的传输流或媒体文件中的系统层图像参数数据单元中获取对恢复图像进行二次整形处理的整形参数包括:根据从系统层图像参数数据单元中获取的如下参数至少之一确定对所述恢复图像进行二次整形处理的整形参数:是否执行整形操作的标识参数、动态范围整形参数、颜色空间整形参数、整形参数使用范围。
下面结合一个具体的实施例对上述的图像和/或分片层数据单元是系统层图像参数数据单元时的相关操作进行说明:
具体实施例4:
本实施例是一种hdr视频的解码处理方法,用于对hdr视频进行解码处理的装置。所述装置的输入是包含hdr视频码流的传输流或媒体文件,输出是用于播放的恢复hdr视频。该实施例包括如下步骤:
步骤一,解析码流,从图像和/或分片层数据单元中获得整形参数。
解码处理设备解析输入码流,从所述传输流或媒体文件中提取hdr视频码流。解码处理设备解析hdr视频码流中各au中包含的分片头信息中的pps参数集索引序号,在已收到的pps中,寻找pps数据单元中索引序号与解析分片头信息获得的参数集索引序号值相同的pps。
解码处理设备激活该pps,解析该pps数据单元中的编码比特。若解析该pps的扩展部分获得整形参数(对应于上述的第一整形参数),则将该整形参数设置为引用该pps的分片使用的整形参数。反之,若解析该pps扩展中未获得整形参数,则将引用该pps的分片所使用的整形参数设置为空缺,或者设置为预设值。
解码处理设备解析传输流或媒体文件中的系统层信息单元(例如,系统层图像参数数据单元),获得对恢复sdr图像进行整形处理的整形参数。这些系统层信息单元可以是与传输流或媒体文件中的hdr视频码流中au相关的描述信息或辅助信息,例如描述子(descriptor)。解码处理设备从系统层信息单元中获得如下参数的至少之一:是否执行整形操作的标识参数,动态范围整形参数,颜色空间整形参数,整形参数使用范围。其中,整形参数使用范围用于指示对恢复sdr视频使用的整形参数(候选整形参数可包括但不限于解析pps获得的整形参数、解析系统层码流获得的整形参数、整形参数默认值或预设值,等)以及使用该整形参数图像范围(例如,从hdr视频码流中的某个指定au起至另一个指定au为止)。解码处理设备根据系统层信息单元中的参数,确定对解码au获得的sdr图像进行整形操作使用的整形参数。
可选择地,本实施例所述的解码处理设备也可以使用具体实施例1、具体实施例2、或具体实施例3中所述的解析hdr码流获得整形参数的方法。可选地,在使用前述实施例1、2或3确定整形参数后,可以再进一步使用本实施例所述的方法,获得系统层整形参数和整形操作的控制参数。其中,整形操作的控制参数可以指示解码处理设备对sdr恢复图像进行整形操作所选用的整形参数(例如,在解析hdr码流获得的整形参数和解析系统层码流获得的整形参数之间进行选择),也可以指示整形操作的执行模式,例如,首先使用解析hdr码流获得的整形参数对sdr恢复图像进行整形处理,然后使用解析系统层码流获得的整形参数进行第二次整形处理。通过这种级联的整形处理,可以对sdr恢复图像进行精度逐渐提升的整形处理,提高恢复hdr图像的质量。
特别地,当解码处理设备从传输流或媒体文件中获得的“是否需要对该图像的恢复sdr图像进行整形处理”的标识信息指示“不需要对该图像的恢复sdr图像进行整形处理”,则解码处理设备可以跳过整形参数解析步骤和对该sdr图像的整形处理步骤。尽管如此,解码处理设备仍需要将解码图像转换成适合播放的视频数据格式。
步骤二,与具体实施例3中的步骤二相同,在此,不再赘述。
步骤三,与具体实施例3中的步骤三相同,在此,不再赘述。
与具体实施例3中所述的解码处理设备相比,本实施例中的解码处理设备通过解析传输流或媒体文件中的系统层码流,获得sdr恢复图像的整形参数。借助于系统层对传输流或媒体文件中包含的hdr视频码流的描述信息,解码处理设备更加灵活地选用整形参数对sdr图像进行整形处理。同时,可选择地,解码处理设备可以使用系统层的整形参数对sdr恢复图像进行“二次整形处理”,进一步提升恢复hdr视频的质量。
根据本发明的另一方面,还提供了一种图像编码处理方法,图2是根据本发明实施例的图像编码处理方法的流程图,如图2所示,该流程包括如下步骤:
步骤s202,确定用于将恢复图像转换为高动态范围视频hdr图像的所述恢复图像使用的整形参数,其中,该恢复图像是编码器执行整形操作前对当前视频编码图像的本地恢复标准动态范围sdr图像,或者,该恢复图像是解码待处理视频码流所获得的sdr图像;
步骤s204,将确定的上述恢复图像使用的整形参数写入当前视频编码图像所在视频码流或待处理视频码流的图像和/或分片层数据单元中,其中,该图像和/或分片层数据单元包括如下数据单元的至少之一:不同于图像参数集pps的图像和/或分片层参数集,所述恢复图像对应的接入单元au中包含的参数数据单元,分片头信息,系统层图像参数数据单元。
其中,上述实施例中的动作的执行者可以是编码处理设备,例如,编码器。
由上述实施例可知,可以将恢复图像使用的整形参数写入视频码流的图像和/或分片层数据单元中,可以有效提高图像的观看质量,进而提高视频的观看质量,并且,还可以降低整形参数的编码开销。通过上述步骤,解决了相关技术中存在的视频观看质量差,整形参数的编码开销大的问题,进而达到了提高视频观看质量,降低整形参数的编码开销的效果。
在一个可选的实施例中,确定用于将上述恢复图像转换为高动态范围视频hdr图像的恢复图像使用的整形参数包括:确定图像层整形参数和序列层整形参数,其中:该图像层整形参数包括最小化恢复图像与目标hdr图像之间误差的整形处理过程中使用的滤波器系数;该序列层整形参数包括根据目标hdr图像构成的目标hdr视频的动态范围和颜色空间、恢复图像构成的恢复视频的动态范围和颜色空间,确定的从恢复视频的动态范围扩展至目标hdr视频的动态范围的映射参数和/或从恢复视频的颜色空间到目标hdr视频的颜色空间的转换参数;根据上述图像层整形参数和序列层整形参数确定上述恢复图像使用的整形参数。
在一个可选的实施例中,上述目标hdr图像是输入编码器的原始hdr视频中对应于上述恢复图像的hdr图像。
根据上述图像层整形参数和序列层整形参数确定恢复图像使用的整形参数的确定方式有多种,下面对该确定方式分别进行举例说明:
在一个可选的实施例中,可以通过如下方式确定恢复图像使用的整形参数:分别利用图像层整形参数和序列层整形参数对恢复图像进行整形处理;确定对该恢复图像进行整形处理后得到的hdr图像与目标hdr图像之间的误差最小的参数作为恢复图像使用的整形参数。可选地,将确定的恢复图像使用的整形参数写入当前视频编码图像所在视频码流或待处理视频码流的图像和/或分片层数据单元中包括:当上述恢复图像使用的整形参数为序列层整形参数时,对序列层整形参数进行编码,并将编码后的编码比特写入当前视频编码图像所在视频码流或待处理视频码流的图像参数集pps和/或pps引用的参数集中;当上述恢复图像使用的整形参数为图像层整形参数时,对图像层整形参数进行编码,并将编码后的编码比特写入当前视频编码图像所在视频码流或待处理视频码流中接入单元au中包含的分片头信息中。下面结合一个具体实施例进行说明:
具体实施例5:
本实施例提供一种与具体实施例1所述的解码方法相对应的hdr视频的编码处理方法,用于对hdr视频进行编码处理的装置。该装置产生的码流可以被具体实施例1中的解码处理装置正确处理。本实施例中的装置输入的是原始hdr视频,输出的是hdr视频码流或包含hdr视频码流的传输流或媒体文件。该实施例包括如下步骤:
步骤一,对输入hdr视频进行整形处理,获得适用于h.265/hevcmain10profile编码器的sdr输入视频。使用该编码器对输入视频进行编码,获得编码器本地恢复sdr视频。
该步骤中的整形处理过程可以应用于hdr视频序列中的图像,降低hdr图像的动态范围,同时,根据应用设置,选择执行对hdr图像颜色空间的转换操作。具体地,当接收端需要解码恢复的sdr视频与原hdr视频具有相同的颜色空间时,则不执行颜色空间转换操作;反之,执行颜色空间转换操作。这里,所述对输入hdr视频的整形处理可以使用前述国际标准组织测试模型中的现有方法。该整形过程输出的目标sdr视频的动态范围和颜色空间的参数可根据实际应用的需求进行设置。
步骤二,计算将编码器恢复sdr图像转换为hdr图像的整形过程的整形参数。
对于编码器本地解码恢复的sdr视频图像,以对应的原始输入hdr图像为参考,确定对该sdr图像进行整形操作的整形参数。所述整形操作包括增大sdr图像的动态范围,同时,根据应用设置,选择执行对sdr图像颜色空间的转换操作。具体地,当接收端需要的hdr视频与解码恢复的sdr视频具有相同的颜色空间时,则不执行颜色空间转换操作;反之,执行颜色空间转换操作。
通常情况下,hdr图像的动态范围远大于sdr图像,同时,hdr图像使用在色域图上覆盖更大区域的颜色空间。因此,在整形过程中,需要对sdr图像的动态范围和颜色空间进行“扩展”。一种方法是,使用自适应滤波的方法,计算能够最小化sdr图像经整形处理后图像与原hdr输入图像之间误差的整形处理过程中使用的滤波器系数,并将所述系数作为该整形处理过程的整形参数(即“图像层整形参数”)。由于在确定图像层整形参数的过程中,使用了编码器本地解码恢复的sdr图像,因此,所确定的图像层整形参数能够对该sdr恢复图像中的有损压缩失真进行补偿。
另一种确定整形参数的方法是根据原始输入hdr视频的动态范围和颜色空间、本地解码恢复sdr视频的动态范围和颜色空间,计算从sdr视频动态范围扩展至hdr视频动态范围的映射参数,计算从sdr视频的颜色空间到hdr视频颜色空间的转换参数,并将映射参数和转换参数作为整形处理过程中的整形参数(即“序列层整形参数”)。
可选地,在动态范围的转换过程中,首先确定sdr视频序列和原始hdr序列的平均动态范围,根据不同动态范围下,视频中像素采样点取值与对应光强之间的曲线,计算将sdr视频动态范围内像素采样点取值映射到hdr视频动态范围内的对应关系曲线,并将曲线参数作为映射参数。颜色空间的转换过程中,由于sdr视频的颜色空间在色域图上覆盖区域小于hdr视频的颜色空间,因此,一种简单的方法是直接将sdr视频颜色空间中的颜色点对应取值转换成hdr视频颜色空间中相同颜色点对应的取值,将该转换过程中使用的计算参数作为转换参数。另外一种颜色空间转换方法是沿着sdr颜色空间中同色度线,将sdr视频颜色空间中的点扩展映射至hdr视频颜色空间同色度线上的颜色点,将映射曲线对应的参数作为转换参数。这种方法可以将原sdr视频颜色空间中的颜色点扩展至sdr视频颜色空间覆盖色域外的hdr视频颜色空间覆盖的色域中,提高了hdr视频的色彩饱和度。
在对hdr视频编码过程中,处理设备可首先确定“序列层整形参数”。处理设备可以对输入hdr视频和编码器恢复sdr视频进行分析,确定视频的动态范围和颜色空间;处理设备也可以根据设置参数直接确定hdr视频和sdr视频的动态范围和颜色空间,例如,随hdr视频一起输入的配置参数中用于指示输入hdr视频动态范围和颜色空间的参数,步骤一中使用的用于指示hdr视频转换为目标sdr视频的动态范围和颜色空间的参数。
特别地,编码处理设备可以判断是否需要对编码器恢复sdr图像进行整形处理,并为图像编码是否需要对该图像的恢复sdr图像进行整形处理的标识信息。编码处理设备可以使用的一种判断方法是,编码处理设备检测恢复sdr图像与原始输入hdr图像之间动态范围的差异,当二者动态范围相同、或sdr图像动态范围外对应的输入hdr图像中的像素点较少、或按照选定的hdr视频质量评价准则判断sdr图像动态范围外对应的输入hdr图像中的像素点对hdr恢复视频观看质量影响可忽略时,则不进行动态范围的整形操作。同样地,编码处理设备检测到原始输入hdr图像中像素采样值对 应的色彩均位于sdr图像的颜色空间覆盖的色域内、或者sdr图像颜色空间外对应的输入hdr图像中的像素点较少、或按照选定的hdr视频质量评价准则判断sdr图像颜色空间外对应的输入hdr图像中的像素点对hdr恢复视频观看质量影响可忽略时,则不进行颜色空间的整形操作。其中,所述hdr视频质量评价准则可采用标准组织测试模型和参考软件中已有的、评价hdr视频质量的误差准则。当编码处理设备判断不需要对恢复sdr视频进行整形操作时,则为图像编码“不需要对该图像的恢复sdr图像进行整形处理”的标识信息。编码处理设备不需要执行步骤二及其后续步骤三和步骤四。
步骤三,选择将编码器恢复sdr图像转换为hdr图像的整形过程的整形参数。
编码处理设备从序列层整形参数和图像层整形参数中选择用于编码器恢复sdr图像的整形参数。一种方法是比较分别使用序列层整形参数和图像层整形参数对恢复sdr视频进行整形处理所得hdr视频与原始hdr视频之间的误差,选择误差较低者作为恢复sdr图像的整形参数。这里,计算误差可以使用传统的平均误差准则,如绝对误差和;也可以使用标准组织测试模型和参考软件中已有的、评价hdr视频质量的误差准则。
步骤四,对整形参数进行编码,将编码比特写入视频码流中图像和/或分片层数据单元。
编码处理设备对序列层整形参数进行编码,将编码比特写入pps中,并且对整个hdr视频编码序列,不重新计算新的序列层整形参数和生成包含新整形参数的pps。当恢复sdr图像使用序列层整形参数时,不对图像层整形参数进行编码;反之,当恢复sdr图像使用图像层整形参数时,编码图像层整形参数,并将编码比特写入在该图像包含的分片的头信息中。
可选地,编码处理设备在生成的pps中,可以将用于指示使用分片头信息扩展的标志位slice_segment_header_extension_present_flag置为1。当使用序列层整形参数时,编码处理设备在引用该pps的分片的分片头信息中,可以将用于指示分片头信息扩展部分比特位数量的参数置为0。当使用图像层参数时,编码处理设备编码图像层整形参数,计算图像层整形参数编码所需比特数量,并将其值设置为分片头信息扩展部分比特位数量的取值,编码处理设备将该取值写入分片头信息扩展部分码流,然后将图像层整形参数的编码比特写入分片头信息扩展部分码流。
需要进一步说明的是,上述编码处理设备的执行流程是一种可能的实施方式,对其可进行进一步的优化。例如,为降低编码处理设备的计算复杂度,可以在编码前根据输入hdr视频和配置的sdr视频参数计算序列层整形参数,并且仅对关键帧图像在步骤302中计算图像层整形参数,对其他图像直接使用序列层整形参数,其中可选择作为关键帧的图像包括:编码视频序列中场景切换图像、随机接入图像、时域标识序号 (temporalidentifier(id))取值较小的图像等。另一方面,为追求最佳的hdr恢复视频的质量,编码处理设备可以为尽可能多的sdr图像选择使用图像层整形参数,或者为每个sdr图像都选择使用图像层整形参数。当编码处理设备配置为每个sdr图像都选择使用图像层整形参数的模式时,在pps中不编码序列层整形参数,在图像的分片头信息扩展中编码图像层整形参数,同时,为进一步提升恢复hdr视频的质量,编码处理设备可以为同一个图像中的不同分片分别计算图像层整形参数并在分片头信息扩展中进行编码。编码处理设备可以根据应用需求、设备本身可用计算资源情况,设置编码控制参数,在上述整形参数计算和编码方法中进行选择。例如,对于视频存储、非实时流媒体应用,编码处理设备通常配置有充足的计算资源,可以选用为每个图像都是用图像层整形参数的编码模式;对于实时视频通信或编码处理设备计算资源有限的情况下,可选用对关键帧图像使用图像层整形参数、对非关键帧使用序列层整形参数。
使用上述编码处理方法,在提高整形过程的图像自适应性的同时,避免频繁生成新的pps以编码整形参数所带来的重复编码pps中其他编码控制参数所带来的额外编码开销。
在一个可选的实施例中,根据上述图像层整形参数和序列层整形参数确定恢复图像使用的整形参数可以包括:从图像层整形参数、序列层整形参数以及当前按照编码顺序的前一个编码图像所使用的整形参数中确定恢复图像使用的整形参数。可选地,从上述图像层整形参数、序列层整形参数以及当前按照编码顺序的前一个编码图像所使用的整形参数中确定上述恢复图像使用的整形参数包括:分别利用图像层整形参数、序列层整形参数和前一个编码图像所使用的整形参数对恢复图像进行整形处理;确定对上述恢复图像进行整形处理后得到的hdr图像与目标hdr图像之间的误差最小的参数作为恢复图像使用的整形参数。
在一个可选的实施例中,将确定的上述恢复图像使用的整形参数写入当前视频编码图像所在视频码流或待处理视频码流的图像和/或分片层数据单元中包括:当恢复图像使用的整形参数为序列层整形参数时,对该序列层整形参数进行编码,并将编码后的编码比特写入当前视频编码图像所在视频码流或待处理视频码流的图像参数集pps和/或pps引用的参数集中;当上述恢复图像使用的整形参数为图像层整形参数或前一个编码图像所使用的整形参数时,对上述图像层整形参数或前一个编码图像所使用的整形参数进行编码,并将编码后的编码比特写入当前视频编码图像所在视频码流或待处理视频码流中接入单元au中包含的参数数据单元中;或者,当上述恢复图像使用的整形参数为所述图像层整形参数时,对图像层整形参数进行编码,并将编码后的编码比特写入当前视频编码图像所在视频码流或待处理视频码流中接入单元au中包含的参数数据单元中;当上述恢复图像使用的整形参数为前一个编码图像所使用的整形参数时,在上述当前视频编码图像所在视频码流或待处理视频码流中接入单元au中编码第四标识信息,其中, 该第四标识信息用于指示整形参数为前一个编码图像所使用的整形参数;其中,该参数数据单元为包含在上述au中的独立于分片码流数据单元的数据单元。可选地,上述实施例中的方法还包括:按照如下方式至少之一编码用于指示整形参数的标识信息:在视频参数集vps中编码用于指示所述整形参数的第一标识信息的方式、在序列参数集sps中编码用于指示所述整形参数的第二标识信息的方式。下面结合具体实施例进行说明:
具体实施例6:
本实施例提供一种与具体实施例2中的解码方法相对应的hdr视频的编码处理方法,用于对hdr视频进行编码处理的装置。该装置产生的码流可以被具体实施例2中的解码处理装置正确处理。本实施例中的装置的输入是原始hdr视频,输出是hdr视频码流或包含hdr视频码流的传输流或媒体文件。该实施例包括如下步骤:
步骤一,与具体实施例5中的步骤一相同,在此,不再赘述。
步骤二,与具体实施例5中的步骤二相同,在此,不再赘述。
步骤三,选择将编码器恢复sdr图像转换为hdr图像的整形过程的整形参数。
编码处理设备从序列层整形参数、图像层整形参数以及按照编码顺序前一个编码图像所使用的整形参数中选择用于编码器恢复sdr图像的整形参数。一种方法是比较分别使用各候选整形参数对恢复sdr视频进行整形处理所得hdr视频与原始hdr视频之间的误差,选择误差较低者作为恢复sdr图像的整形参数。这里,计算误差可以使用传统的平均误差准则,如绝对误差和;也可以使用标准组织测试模型和参考软件中已有的、评价hdr视频质量的误差准则。
步骤四,对整形参数进行编码,将编码比特写入视频码流中图像和/或分片层数据单元。
编码处理设备对序列层整形参数进行编码,将编码比特写入pps中,并且对整个hdr视频编码序列,不重新计算新的序列层整形参数和生成包含新整形参数的pps。
对应于具体实施例2中的解码处理设备,当恢复sdr图像使用序列层整形参数时,不对步骤三中所述的另两组候选整形参数进行编码;反之,当恢复sdr图像不使用序列层整形参数时,编码处理设备产生参数数据单元,对所使用的非序列层整形参数进行编码,将编码比特写入参数数据单元,将参数数据单元写入编码图像所在au中。这里,该参数数据单元是包含在au中的独立于分片码流数据单元的数据单元,例如,sei数据单元,用户定义的数据单元,等。
对应于具体实施例2中的解码处理设备,可选择地,当编码处理设备使用非序列层整形参数对sdr恢复视频进行整形处理时,编码处理设备可配置为直接使用已编码au的整形参数的模式。可选地,如果编码处理设备使用图像层整形参数,则编码处理设备产生参数数据单元,对图像层整形参数进行编码,将编码比特写入参数数据单元,将参 数数据单元写入编码图像所在au中;反之,如果编码处理设备使用按编码顺序前一个au使用的整形参数对当前sdr恢复图像进行整形处理,则编码处理设备不产生参数数据单元,编码处理设备在分片头信息中编码“使用哪一组候选整形参数”的标识信息(对应于上述的第四标识信息)用于指示对sdr恢复视频进行整形处理时采用的是pps中的整形参数还是按编码顺序前一个au使用的整形参数。与具体实施例2中所述解码处理设备对应地,这里,对编码处理设备的配置方法可以是:编码处理设备默认采用上述方法;或者,编码处理设备在vps和/或sps编码是否使用上述方法的标识信息(其中,编码在vps中的标识信息对应于上述的第一标识信息,编码在sps中的标识信息对应于上述的第二标识信息),用于指示是否使用已解码au中的参数数据单元包含的整形参数。
需要说明的是,具体实施例5中的编码处理装置相类似的优化方法也可以应用于本实施例所述的编码处理装置中。
与具体实施例5所述的编码处理设备相比,本实施例中的编码处理装置在包含在au中的参数数据单元中编码整形参数,在图像包含较多分片的情况下(例如要求分片编码比特适配网络最大传输单元大小的情况),降低分片头信息中整形参数的编码开销。
在一个可选的实施例中,根据图像层整形参数和序列层整形参数确定恢复图像使用的整形参数包括:从图像层整形参数、序列层整形参数以及已使用的除恢复图像对应的接入单元au中包含的分片头信息中的图像参数集pps外图像和/或分片层参数集中编码的一个或多个第一其他整形参数中确定所述恢复图像使用的整形参数。可选地,从上述图像层整形参数、序列层整形参数以及第一其他整形参数中确定上述恢复图像使用的整形参数包括:分别利用上述图像层整形参数、序列层整形参数和第一其他整形参数对恢复图像进行整形处理;确定对恢复图像进行整形处理后得到的hdr图像与目标hdr图像之间的误差最小的参数作为恢复图像使用的整形参数。
在一个可选的实施例中,将确定的上述恢复图像使用的整形参数写入当前视频编码图像所在视频码流或待处理视频码流的图像和/或分片层数据单元中包括:当上述恢复图像使用的整形参数为序列层整形参数时,在分片头信息中,编码标识不使用pps外图像和/或分片层参数集的信息;当恢复图像使用的整形参数为第一其他整形参数时,在分片头信息中,编码标识使用pps外图像和/或分片层参数集的信息,编码第一其他整形参数所在参数集的参数集索引序号;当恢复图像使用的整形参数为图像层整形参数时,对图像层整形参数进行编码并将编码比特写入新建的参数集数据单元中,其中,该新建的参数集数据单元配置有参数集索引序号,在分片头信息中,编码标识使用pps外图像和/或分片层参数集的信息,编码上述参数集索引序号。下面结合一个具体实施例进行说明:
具体实施例7:
本实施例提供一种与具体实施例3所述的解码方法相对应的hdr视频的编码处理方法,用于对hdr视频进行编码处理的装置。本实施例中的装置产生的码流可以被具体实施例3中的解码处理装置正确处理。本实施例中的装置的输入是原始hdr视频,输出是hdr视频码流或包含hdr视频码流的传输流或媒体文件。该实施例包括如下步骤:
步骤一,与具体实施例6中的步骤一相同,在此,不再赘述。
步骤二,与具体实施例6中的步骤二相同,在此,不再赘述。
步骤三,选择将编码器恢复sdr图像转换为hdr图像的整形过程的整形参数。
编码处理设备从序列层整形参数、图像层整形参数以及已使用除pps外图像/分片层参数集(同上述的图像和/或分片层参数集)编码的一个或多个整形参数(对应于上述的第一其他整形参数)中选择用于编码器恢复sdr图像的整形参数。一种方法是比较分别使用各候选整形参数对恢复sdr视频进行整形处理所得hdr视频与原始hdr视频之间的误差,选择误差较低者作为恢复sdr图像的整形参数。这里,计算误差可以使用传统的平均误差准则,如绝对误差和;也可以使用标准组织测试模型和参考软件中已有的、评价hdr视频质量的误差准则。
步骤四,对整形参数进行编码,将编码比特写入视频码流中图像和/或分片层数据单元。
编码处理设备对序列层整形参数进行编码,将编码比特写入pps中,并且对整个hdr视频编码序列,不重新计算新的序列层整形参数和生成包含新整形参数的pps。
对应于具体实施例3中所述的解码处理设备,当恢复sdr图像使用序列层整形参数、或者在除pps外图像/分片层参数集中已编码的整形参数时,不对步骤三中的图像层候选整形参数进行编码;反之,当恢复sdr图像使用图像层整形参数时,编码处理设备产生新的参数集数据单元为为其分配参数集索引序号,对所使用的图像层整形参数进行编码,将编码比特写入所述参数集数据单元。在上述过程中,当编码处理设备使用序列层整形参数时,编码处理设备在分片头信息中编码“不使用除pps外其他图像/分片层参数集”的标识信息;反之,编码处理设备在分片头信息中编码“使用除pps外其他图像/分片层参数集”的标识信息,然后编码所使用的整形参数所在的图像/分片层索引序号。
需要说明的是,具体实施例5中的编码处理装置相类似的优化方法也可以应用于本实施例所述的编码处理装置中。
与具体实施例6中的编码处理设备相比,本实施例中的编码处理装置将整形参数均在参数集中进行编码,可更加灵活地选用已编码的整形参数,提高了信息利用率,降低 额外编码开销。同时,借助参数集的特性,编码处理装置对除pps外的图像/分片层参数集选用au内传输和au外传输两种方式,在兼顾传输效率的同时,提高了整形参数传输的可靠性。例如,编码处理装置所在的发送端,在收到包含有解码处理装置的接收端反馈的参数集丢失时,可根据丢失参数集的索引序号,采用重传相同内容参数集的方式进行差错恢复。
在一个可选的实施例中,根据上述图像层整形参数和序列层整形参数确定恢复图像使用的整形参数包括:从图像层整形参数、序列层整形参数以及在传输流或媒体文件的系统层中编码的一个或多个第二其他整形参数中确定上述恢复图像使用的整形参数。可选地,从上述图像层整形参数、序列层整形参数以及第二其他整形参数中确定恢复图像使用的整形参数包括:分别利用图像层整形参数、序列层整形参数和第二其他整形参数对恢复图像进行整形处理;确定对上述恢复图像进行整形处理后得到的hdr图像与目标hdr图像之间的误差最小的参数作为恢复图像使用的整形参数。
在一个可选的实施例中,将确定的上述恢复图像使用的整形参数写入当前视频编码图像所在视频码流或待处理视频码流的图像和/或分片层数据单元中包括:当上述恢复图像使用的整形参数为序列层整形参数时,在系统层编码第五标识信息,其中,该第五标识信息用于指示恢复图像使用的整形参数不使用上述系统层中已编码的整形参数;当恢复图像使用的整形参数为图像层整形参数时,在上述系统层编码图像层整形参数;当上述恢复图像使用的整形参数为第二其他整形参数时,在系统层编码第二其他整形参数,或者,在系统层编码第六标识信息,其中,所述第六标识信息用于指示所述恢复图像使用的整形参数使用所述系统层中已编码的整形参数。
在一个可选的实施例中,上述系统层中编码用于对恢复图像进行二次整形的整形参数和用于指示二次整形操作执行方式的控制信息。下面结合具体实施例进行说明:
具体实施例8:
本实施例提供一种与具体实施例4中的解码方法相对应的hdr视频的编码处理方法,用于对hdr视频进行编码处理的装置。该实施例中的装置产生的码流可以被具体实施例4中的解码处理装置正确处理。该实施例中的装置的输入是原始hdr视频,输出是包含hdr视频码流的传输流或媒体文件。该实施例包括如下步骤:
步骤一,与具体实施例7中的步骤一相同,在此,不再赘述。
步骤二,与具体实施例7中的步骤二相同,在此,不再赘述。
步骤三,选择将编码器恢复sdr图像转换为hdr图像的整形过程的整形参数。
编码处理设备从序列层整形参数、图像层整形参数以及在传输流或媒体文件的系统层中编码的一个或多个整形参数中选择用于编码器恢复sdr图像的整形参数。一种方 法是比较分别使用各候选整形参数对恢复sdr视频进行整形处理所得hdr视频与原始hdr视频之间的误差,选择误差较低者作为恢复sdr图像的整形参数。这里,计算误差可以使用传统的平均误差准则,如绝对误差和;也可以使用标准组织测试模型和参考软件中已有的、评价hdr视频质量的误差准则。
步骤四,对整形参数进行编码,将编码比特写入视频码流中图像和/或分片层数据单元。
编码处理设备对序列层整形参数进行编码,将编码比特写入pps中,并且对整个hdr视频编码序列,不重新计算新的序列层整形参数和生成包含新整形参数的pps。
对应于具体实施例4中的解码处理设备,当恢复sdr图像使用序列层整形参数时,可选择地,编码处理设备不在系统层中编码图像层整形参数,同时在系统层编码标识信息(对应于上述的第五标识信息)指示当前au不使用系统层中已编码的整形参数;可选择地,编码处理设备可以选择对sdr恢复图像使用两次整形操作的处理方法,在系统层码流中编码对使用序列层整形参数处理后的图像进行第二次整形操作的整形参数。编码处理设备在系统层编码用于指示整形操作执行方式的控制信息。
对应于具体实施例4中的解码处理设备,当恢复sdr图像不使用序列层整形参数时,可选择地,编码处理设备在系统层编码用于sdr图像整形处理的整形参数,所编码的整形参数可以是图像层整形参数,也可以是用于指示使用系统层已编码整形参数的标识信息(对应于上述的第六标识信息);可选择地,编码处理设备可以选择对sdr恢复图像使用两次整形操作的处理方法,在hdr视频码流中编码图像层整形参数(例如使用前述具体实施例5、具体实施例6、或具体实施例7中的方法),然后进一步计算对使用图像层整形参数或系统层已编码整形参数对sdr恢复图像进行整形处理后的图像再次进行整形操作的整形参数,在系统层编码该整形参数,同时,编码处理设备在系统层编码用于指示整形操作执行方式的控制信息。
需要说明的是,具体实施例5中的编码处理装置相类似的优化方法也可以应用于本实施例中的编码处理装置中。
与具体实施例7中的编码处理设备相比,本实施例中的编码处理设备在传输流或媒体文件中编码整形参数,并且编码整形操作执行方式的控制信息,编码处理设备能够更加灵活地对sdr图像进行整形处理,同时更加有效地利用系统层已编码整形参数。同时,可选择地,编码处理设备可以选择对sdr恢复图像进行级联整形的操作方式,并在系统层编码对sdr恢复图像进行“二次整形处理”的整形参数,进一步提升sdr恢复图像的整形处理精度,提高恢复hdr视频的质量。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例 的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种图像解码处理装置和图像编码处理装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图3是根据本发明实施例的图像解码处理装置的结构框图,如图3所示,该装置包括第一确定模块32和处理模块34,下面对该装置进行说明。
第一确定模块32,用于解析视频码流,从视频码流的图像和/或分片层数据单元中获取整形参数,并根据获取的整形参数确定恢复图像使用的整形参数;处理模块34,连接至上述确定模块32,用于使用上述恢复图像使用的整形参数对恢复图像进行整形处理;其中,该恢复图像是在执行整形处理前,解码视频码流获得的图像;该图像和/或分片层数据单元包括如下数据单元至少之一:不同于图像参数集pps的图像和/或分片层参数集,恢复图像对应的接入单元au中包含的参数数据单元,分片头信息,系统层图像参数数据单元。
图4是根据本发明实施例的图像解码处理装置的优选结构框图,如图4所示,该装置除包括图3所示的所有模块外,还包括第三确定模块42和获取模块44,下面对该装置进行说明。
第三确定模块42,用于在从视频码流的所述图像和/或分片层数据单元中获取所述整形参数,并根据获取的所述整形参数确定恢复图像使用的整形参数之前,确定视频码流中au中包含的分片头信息中的pps参数集索引序号;获取模块44,连接至上述第三确定模块42,和第一确定模块32,用于根据通过上述参数集索引序号引用的pps获取恢复图像使用的整形参数。
在一个可选的实施例中,获取模块44可以通过如下方式根据通过参数集索引序号引用的pps获取恢复图像使用的整形参数:判断pps的扩展部分和/或pps引用的参数集中是否携带有第一整形参数;当判断结果为是时,确定获取的上述恢复图像使用的整形参数为第一整形参数;和/或,在判断结果为否时,确定获取的上述恢复图像使用的整形参数为预设值或空缺。
在一个可选的实施例中,上述第一确定模块32可以通过如下方式从视频码流的图像和/或分片层数据单元中获取整形参数,并根据获取的整形参数确定恢复图像使用的整形参数:解析上述分片头信息的扩展部分,获得第二整形参数;使用该第二整形参数, 更新或重新确定恢复图像使用的整形参数。
在一个可选的实施例中,上述第一确定模块32还可以通过如下方式从所频码流的图像和/或分片层数据单元中获取整形参数,并根据获取的整形参数确定恢复图像使用的整形参数:解析上述视频码流中au中包含的参数数据单元,获取第三整形参数,其中,该参数数据单元为包含在au中的独立于分片码流数据单元的数据单元;使用第三整形参数更新或重新确定上述恢复图像使用的整形参数;或者,根据预先配置的整形参数确定方式确定恢复图像使用的整形参数为第三整形参数。
在一个可选的实施例中,可以通过如下方式使用第三整形参数更新或重新确定恢复图像使用的整形参数:确定视频码流中au中包含的分片头信息中的pps参数集索引序号;根据通过该参数集索引序号引用的pps获取恢复图像使用的整形参数;使用上述第三整形参数更新或重新确定获取的恢复图像使用的整形参数。
在一个可选的实施例中,可以通过如下方式根据通过参数集索引序号引用的pps获取上述恢复图像使用的整形参数:判断pps的扩展部分和/或pps引用的参数集中是否携带有第一整形参数;当判断结果为是时,确定获取的恢复图像使用的整形参数为第一整形参数;和/或,在判断结果为否时,确定获取的恢复图像使用的整形参数为预设值或空缺。
在一个可选的实施例中,上述第三整形参数包括将对au的前一个au中包含的参数数据单元进行解析后获得的第四整形参数。
在一个可选的实施例中,上述预先配置的整形参数确定方式包括以下至少之一:默认的确定方式、利用解析视频参数集vps获得的用于指示整形参数的第一标识信息进行确定的方式、利用解析序列参数集sps获得的用于指示整形参数的第二标识信息进行确定的方式。
在一个可选的实施例中,上述第一确定模块32还可以通过如下方式从视频码流的图像和/或分片层数据单元中获取整形参数,并根据获取的整形参数确定恢复图像使用的整形参数:解析au中包含的分片头信息,获取第三标识信息,其中,该第三标识信息用于指示恢复图像使用的整形参数是否根据除pps外其他图像和/或分片层参数集进行确定;当第三标识信息指示恢复图像使用的整形参数根据除pps外其他图像和/或分片层参数集进行确定时,解析au中包含的分片头信息,获取上述其他图像和/或分片层参数集的索引序号;激活索引序号与其他图像和/或分片层参数集的索引序号相同的参数集,获取第五整形参数;使用该第五整形参数,更新或重新确定获取的恢复图像使用的整形参数。
在一个可选的实施例中,上述第一确定模块32还可以通过如下方式解析视频码流,从上述视频码流的图像和/或分片层数据单元中获取整形参数,并根据获取的整形参数确定恢复图像使用的整形参数:从用于承载上述视频码流的传输流或媒体文件中的系统 层图像参数数据单元中获取第六整形参数,使用该第六整形参数更新或重新确定恢复图像使用的整形参数;或者,确定恢复图像使用的整形参数为该第六整形参数。其中,上述系统层图像参数数据单元包括与视频码流中接入单元au对应的描述信息或辅助信息。
在一个可选的实施例中,上述使用第六整形参数更新或重新确定恢复图像使用的整形参数,包括:确定视频码流中au中包含的分片头信息中的pps参数集索引序号;根据通过该参数集索引序号引用的pps获取恢复图像使用的整形参数;使用上述第六整形参数更新或重新确定获取的恢复图像使用的整形参数。
在一个可选的实施例中,上述根据通过参数集索引序号引用的pps获取恢复图像使用的整形参数,包括:判断pps的扩展部分和/或pps引用的参数集中是否携带有第一整形参数;当判断结果为是时,确定获取的恢复图像使用的整形参数为所述第一整形参数;和/或,在判断结果为否时,确定获取的恢复图像使用的整形参数为预设值或空缺。
在一个可选的实施例中,可以通过如下方式从用于承载上述视频码流的传输流或媒体文件中的系统层图像参数数据单元中获取上述整形参数:根据从上述系统层图像参数数据单元中获取的如下参数至少之一确定整形参数:是否执行整形操作的标识参数、动态范围整形参数、颜色空间整形参数、整形参数使用范围。
在一个可选的实施例中,上述的图像解码处理装置还可以包括二次整形参数获取模块和二次整形处理模块,其中,该二次整形参数获取模块和二次整形处理模块与上述的图像解码处理装置中各模块的连接关系可以不受限,即,该二次整形参数获取模块和二次整形处理模块中执行的动作与上述的图像解码处理装置中包含的模块中执行的动作的先后顺序可以是不受限的。下面对该二次整形参数获取模块和二次整形处理模块进行说明:
二次整形参数获取模块,用于从用于承载视频码流的传输流或媒体文件中的系统层图像参数数据单元(也可以是其他的系统层信息单元)中获取对恢复图像进行二次整形处理的整形参数,其中,该系统层信息单元包括与视频码流中接入单元au对应的描述信息或辅助信息;二次整形处理模块,连接至上述二次整形参数获取模块,用于利用获取的对恢复图像进行二次整形处理的整形参数对恢复图像进行二次整形处理。
在一个可选的实施例中,上述二次整形参数获取模块,可以根据如下方式从用于承载视频码流的传输流或媒体文件中的系统层图像参数数据单元中获取对恢复图像进行二次整形处理的整形参数:根据从系统层图像参数数据单元中获取的如下参数至少之一确定对恢复图像进行二次整形处理的整形参数:是否执行整形操作的标识参数、动态范围整形参数、颜色空间整形参数、整形参数使用范围。
图5是根据本发明实施例的图像编码处理装置的结构框图,如图5所示,该装置包 括确定模块52和写入模块54,下面对该装置进行说明。
确定模块52,用于确定用于将恢复图像转换为高动态范围视频hdr图像的恢复图像使用的整形参数,其中,该恢复图像是编码器执行整形操作前对当前视频编码图像的本地恢复标准动态范围sdr图像,或者,该恢复图像是解码待处理视频码流所获得的sdr图像;写入模块54,连接至上述确定模块52,用于将确定的上述恢复图像使用的整形参数写入当前视频编码图像所在视频码流或待处理视频码流的图像和/或分片层数据单元中,其中,该图像和/或分片层数据单元包括如下数据单元的至少之一:不同于图像参数集pps的图像和/或分片层参数集,上述恢复图像对应的接入单元au中包含的参数数据单元,分片头信息,系统层图像参数数据单元。
在一个可选的实施例中,上述的确定模块52可以通过如下方式确定用于将恢复图像转换为高动态范围视频hdr图像的恢复图像使用的整形参数:确定图像层整形参数和序列层整形参数,其中:该图像层整形参数包括最小化所述恢复图像与目标hdr图像之间误差的整形处理过程中使用的滤波器系数;序列层整形参数包括根据目标hdr图像构成的目标hdr视频的动态范围和颜色空间、恢复图像构成的恢复视频的动态范围和颜色空间,确定的从恢复视频的动态范围扩展至所述目标hdr视频的动态范围的映射参数和/或从恢复视频的颜色空间到目标hdr视频的颜色空间的转换参数;根据上述图像层整形参数和序列层整形参数确定恢复图像使用的整形参数。
在一个可选的实施例中,上述目标hdr图像是输入编码器的原始hdr视频中对应于上述恢复图像的hdr图像。
在一个可选的实施例中,可以通过如下方式根据图像层整形参数和序列层整形参数确定恢复图像使用的整形参数:分别利用上述图像层整形参数和序列层整形参数对恢复图像进行整形处理;确定对该恢复图像进行整形处理后得到的hdr图像与目标hdr图像之间的误差最小的参数作为恢复图像使用的整形参数。
在一个可选的实施例中,上述的写入模块54可以通过如下方式将确定的恢复图像使用的整形参数写入当前视频编码图像所在视频码流或待处理视频码流的图像和/或分片层数据单元中:当恢复图像使用的整形参数为序列层整形参数时,对该序列层整形参数进行编码,并将编码后的编码比特写入当前视频编码图像所在视频码流或待处理视频码流的图像参数集pps和/或pps引用的参数集中;当上述恢复图像使用的整形参数为图像层整形参数时,对图像层整形参数进行编码,并将编码后的编码比特写入当前视频编码图像所在视频码流或上述待处理视频码流中接入单元au中包含的分片头信息中。
在一个可选的实施例中,可以通过如下方式根据上述图像层整形参数和序列层整形参数确定恢复图像使用的整形参数:从上述图像层整形参数、序列层整形参数以及当前按照编码顺序的前一个编码图像所使用的整形参数中确定上述恢复图像使用的整形参数。
在一个可选的实施例中,可以通过如下方式从图像层整形参数、序列层整形参数以及当前按照编码顺序的前一个编码图像所使用的整形参数中确定上述恢复图像使用的整形参数:分别利用图像层整形参数、序列层整形参数和前一个编码图像所使用的整形参数对恢复图像进行整形处理;确定对上述恢复图像进行整形处理后得到的hdr图像与目标hdr图像之间的误差最小的参数作为恢复图像使用的整形参数。
在一个可选的实施例中,上述的写入模块54可以通过如下方式将确定的恢复图像使用的整形参数写入当前视频编码图像所在视频码流或待处理视频码流的图像和/或分片层数据单元中:当上述恢复图像使用的整形参数为序列层整形参数时,对序列层整形参数进行编码,并将编码后的编码比特写入当前视频编码图像所在视频码流或待处理视频码流的图像参数集pps和/或pps引用的参数集中;当上述恢复图像使用的整形参数为图像层整形参数或前一个编码图像所使用的整形参数时,对上述图像层整形参数或前一个编码图像所使用的整形参数进行编码,并将编码后的编码比特写入当前视频编码图像所在视频码流或待处理视频码流中接入单元au中包含的参数数据单元中;或者,当上述恢复图像使用的整形参数为图像层整形参数时,对图像层整形参数进行编码,并将编码后的编码比特写入当前视频编码图像所在视频码流或上述待处理视频码流中接入单元au中包含的参数数据单元中;当上述恢复图像使用的整形参数为前一个编码图像所使用的整形参数时,在当前视频编码图像所在视频码流或待处理视频码流中接入单元au中编码第四标识信息,其中,该第四标识信息用于指示整形参数为前一个编码图像所使用的整形参数;其中,该参数数据单元为包含在au中的独立于分片码流数据单元的数据单元。
在一个可选的实施例中,上述的图像编码处理装置处理包括上述的模块外,还可以包括编码模块,该编码模块与图像编码处理装置中的上述模块的连接顺序可以是不受限制的,即该编码模块中执行的动作与图像编码处理装置中的上述模块中执行的动作的先后顺序是不受限的。下面对该编码模块进行说明:
编码模块,用于按照如下方式至少之一编码用于指示整形参数的标识信息:在视频参数集vps中编码用于指示整形参数的第一标识信息的方式、在序列参数集sps中编码用于指示整形参数的第二标识信息的方式。
在一个可选的实施例中,可以通过如下方式根据上述图像层整形参数和序列层整形参数确定恢复图像使用的整形参数:从上述图像层整形参数、序列层整形参数以及已使用的除上述恢复图像对应的接入单元au中包含的分片头信息中的图像参数集pps外图像和/或分片层参数集中编码的一个或多个第一其他整形参数中确定上述恢复图像使用的整形参数。
在一个可选的实施例中,可以通过如下方式从图像层整形参数、序列层整形参数以及第一其他整形参数中确定上述恢复图像使用的整形参数:分别利用图像层整形参数、序列层整形参数和第一其他整形参数对恢复图像进行整形处理;确定对该恢复图像进行 整形处理后得到的hdr图像与目标hdr图像之间的误差最小的参数作为上述恢复图像使用的整形参数。
在一个可选的实施例中,上述的写入模块54可以通过如下方式将确定的上述恢复图像使用的整形参数写入当前视频编码图像所在视频码流或待处理视频码流的图像和/或分片层数据单元中包括:当上述恢复图像使用的整形参数为序列层整形参数时,在分片头信息中,编码标识不使用pps外图像和/或分片层参数集的信息;当上述恢复图像使用的整形参数为第一其他整形参数时,在分片头信息中,编码标识使用pps外图像和/或分片层参数集的信息,编码上述第一其他整形参数所在参数集的参数集索引序号;当上述恢复图像使用的整形参数为图像层整形参数时,对上述图像层整形参数进行编码并将编码比特写入新建的参数集数据单元中,其中,该新建的参数集数据单元配置有参数集索引序号,在分片头信息中,编码标识使用pps外图像和/或分片层参数集的信息,编码上述参数集索引序号。
在一个可选的实施例中,可以通过如下方式根据上述图像层整形参数和序列层整形参数确定恢复图像使用的整形参数:从图像层整形参数、序列层整形参数以及在传输流或媒体文件的系统层中编码的一个或多个第二其他整形参数中确定上述恢复图像使用的整形参数。
在一个可选的实施例中,可以通过如下方式从上述图像层整形参数、序列层整形参数以及第二其他整形参数中确定恢复图像使用的整形参数:分别利用上述图像层整形参数、序列层整形参数和第二其他整形参数对恢复图像进行整形处理;确定对上述恢复图像进行整形处理后得到的hdr图像与目标hdr图像之间的误差最小的参数作为恢复图像使用的整形参数。
在一个可选的实施例中,上述的写入模块54可以通过如下方式将确定的恢复图像使用的整形参数写入上述当前视频编码图像所在视频码流或待处理视频码流的图像和/或分片层数据单元中:当上述恢复图像使用的整形参数为序列层整形参数时,在系统层编码第五标识信息,其中,上述第五标识信息用于指示恢复图像使用的整形参数不使用上述系统层中已编码的整形参数;当上述恢复图像使用的整形参数为图像层整形参数时,在上述系统层编码图像层整形参数;当上述恢复图像使用的整形参数为第二其他整形参数时,在上述系统层编码第二其他整形参数,或者,在上述系统层编码第六标识信息,其中,该第六标识信息用于指示恢复图像使用的整形参数使用上述系统层中已编码的整形参数。
在一个可选的实施例中,上述系统层中还可以编码有用于对恢复图像进行二次整形的整形参数和用于指示二次整形操作执行方式的控制信息。
图6是根据本发明实施例的解码器的结构框图,如图6所示,该解码器62包括上述任一项的图像解码处理装置64。
图7是根据本发明实施例的编码器的结构框图,如图7所示,该编码器72包括上述任一项的图像编码处理装置74。
在本发明实施例中还提供了一种电子设备,该电子设备包括解码处理设备(如,上述的解码器62)和/或编码处理设备(如,上述的编码器72)。
其中,上述的解码处理设备可以使用例如前述的具体实施例1、具体实施例2、具体实施例3、具体实施例4中任何一种解码处理设备的实施方法,处理hdr视频码流、或包含hdr视频码流的传输流或媒体文件,产生适合播放的hdr恢复视频。
上述编码处理设备可以使用例如前述对应的具体实施例5、具体实施例6、具体实施例7、具体实施例8中任何一种编码处理设备的实施方法,对hdr视频(即,输入的原始hdr视频)进行处理,产生hdr视频码流、或包含hdr视频码流的传输流或媒体文件。
本实施例中的电子设备可以是视频通信应用中相关码流生成设备和接收播放设备,例如,手机、计算机、服务器、机顶盒、便携式移动终端、数字摄像机,电视广播系统设备等。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述模块分别位于多个处理器中。
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:
s11,解析视频码流,从该视频码流的图像和/或分片层数据单元中获取整形参数,并根据获取的整形参数确定恢复图像使用的整形参数;
s12,使用上述恢复图像使用的整形参数对恢复图像进行整形处理;其中,该恢复图像是在执行整形处理前,解码视频码流获得的图像;上述图像和/或分片层数据单元包括如下数据单元至少之一:不同于图像参数集pps的图像和/或分片层参数集,上述恢复图像对应的接入单元au中包含的参数数据单元,分片头信息,系统层图像参数数据单元。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:
s21,确定用于将恢复图像转换为高动态范围视频hdr图像的所述恢复图像使用的整形参数,其中,该恢复图像是编码器执行整形操作前对当前视频编码图像的本地恢复标准动态范围sdr图像,或者,该恢复图像是解码待处理视频码流所获得的sdr图像;
s22,将确定的上述恢复图像使用的整形参数写入当前视频编码图像所在视频码流或待处理视频码流的图像和/或分片层数据单元中,其中,该图像和/或分片层数据单元 包括如下数据单元的至少之一:不同于图像参数集pps的图像和/或分片层参数集,所述恢复图像对应的接入单元au中包含的参数数据单元,分片头信息,系统层图像参数数据单元。
可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、只读存储器(read-onlymemory,简称为rom)、随机存取存储器(randomaccessmemory,简称为ram)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行上述各方法实施例中的步骤。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。