对多层vdr译码中的感知量化的视频内容进行编码的制作方法_4

文档序号:9333053阅读:来源:国知局
0124] 在一些其它的实施例中,总体最佳的指数值可以是接近于、但不必是a^[j](其 中j从0至(F-1))之中的最小值的值。使用具有不是最小值的总体最佳的指数值的幂映 射函数仍然可能使得一个或多个映射诱发的完全平坦的图像块在从F个输入VDR图像的集 合映射的图像中的一个或多个中出现。
[0125] 以下表中示出了用于图2A中所示的操作的示例算法列表:
[0126]
[0127] 8.包括分段线性量化的线性量化中的参数值的示例确定
[0128] 在一些实施例中,在映射操作(114)、裁剪操作(116)或BL解码操作(118)等中的 一个或多个中,多层编码器(102)被配置为使用PWL映射函数(或PWL量化器)来将从源 视频内容(104)解码的VDR码字(例如,VDR色度码字等)映射到映射码字(例如,映射色 度码字等),这些映射码字可以被量化并且可以被编码为BL图像数据(106)的一部分。PWL 映射函数可以包括一个或多个分段,其中每个分段可以用以下表达式表示(这里忽视四舍 五入),其中参数m和b具有不同的值:
[0129] Si= m(v i-vL) +b (8)
[0130] 其中m和b是斜率和截距参数,i是与输入变量Vl (例如,第iVDR色度码字等) 和映射码字Si(例如,对应的第i映射色度码字等)相关联的索引。
[0131] 当PWL映射函数中的分段的总数是一(1)时,PWL映射函数可以简化为线性映射 函数(例如,线性量化、线性量化器等)。
[0132] 表达式(8)中的m越高,在表达式(8)的左手侧的映射码字中生成的压缩越大,使 得块状伪像更有可能发生。为了提高译码效率,最终选择的m和b在整个场景内可以是相 同的。在一些实施例中,单段或三段PWL映射函数可以被用于将VDR码字(例如,VDR色度 码字等)映射到场景中的映射码字(例如,映射色度码字等)。
[0133] 多段PWL映射函数(例如,三段PWL映射函数等)的使用使得不同的线性量化器 (例如,不同的m值、等等)可以被应用于输入VDR数据(例如,输入VDR色度码字等)的不 同范围。输入VDR数据的第一色度范围可被以PWL映射函数的第一分段映射。输入VDR数 据的第二色度范围可被以PWL映射函数的第二分段映射。输入VDR数据的第三色度范围可 被以PWL映射函数的第三分段映射。对于多个分段中的每个分段,可以搜索并确定最佳的 线性量化器。可以实现对于场景中的输入VDR图像集合中的每个输入VDR图像搜索图像特 定的最佳参数值的算法,然后可以在同一场景内的输入VDR图像的所有图像特定的最佳参 数值之中找到一致的或者总体最佳的参数值。
[0134] 如本文中所描述的PWL映射函数可以用枢轴点指定。在一些实施例中,如图2B所 示,多层编码器(例如,102)实现找出最佳的枢轴点集合的快速搜索算法或处理流程。
[0135] 在方框252中,多层编码器(102)执行如下的初始化操作。对于场景中的F个输 入VDR图像的集合中的每个输入VDR图像j,多层编码器(102)将斜率缩放因子,Ij]初 始化为1.0。多层编码器(102)可以被配置为,将F个输入VDR图像的集合中的每个输入 VDR图像划分为N个图像块,或者在已经被用于搜索最佳的a的处理流程中再次使用在场 景中的F个输入VDR图像的集合中的每个输入VDR图像中划分的N个图像块。多层编码器 (102)进一步将j设置为起始值,例如,0。
[0136] 在方框254中,多层编码器(102)确定j是否小于F。如果是真的,处理流程进入 方框256。如果是假的,处理流程进入方框270。
[0137] 在方框256中,对于输入VDR图像j中的每个图像块n,多层编码器(102)计算该 图像块中的最大值D(j,n)、最小值E(j,n)和平均值y(j,n)(例如,在VDR色度码字中、等 等)。多层编码器(102)还基于以下表达式(在本文中是针对8位基本层例示说明的。如 果它是10位基本层,则示例裁剪函数可以是clip(x,0, 1023))来计算与该图像块中的最大 值D(j,n)和最小值E(j,n)对应的映射值djn (Wj)、ejn (Wj)(例如,映射色度码字等):
[0138]
[0140]其中G、F丨、<、V丨和0是最大映射亮度码字值、最小映射亮 度码字值、最大输入VDR亮度码字值、最小输入VDR亮度码字值、最大输入VDR色度码字值、 最小输入VDR色度码字值以及以上表达式(10)和(11)所表示的线性关系中的参数。多层 编码器(102)基于以下表达式来构造在输入VDR图像j中具有非零标准差、而在对应的映 射色度码字值中具有零标准差的图像块集合K,:
[0141] Kj={i|(D(j,n)-E(j,n) >0) &&(djn (Wj) -ejn (Wj) = 0)} (12)
[0142] 在方框258中,多层编码器(102)确定集合!^是否是空的。如果是真的,处理流 程进入方框276。如果是假的,处理流程进入方框260。
[0143] 在方框276中,多层编码器(102)被配置为对于输入VDR图像j使用单段线性量 化器,并且用以下表达式设置参数:
[0149] 在方框260中,多层编码器(102)在以下表达式中找到集合K,中的平均值的最小 值和最大值:
[0150]
[0151]
[0152] 平均值的最小值和最大值(y_(j)和ynax(j))可以被用于将vf和4之间的 输入VDR色度码字值的整个范围分割为三个分段
[y_(j),y_(j)]和
[0153] 应指出,使用表达式(18)和(19)来对输入VDR色度码字值产生分区仅仅是为了 例示说明的目的。在其它实施例中,可以例如通过从场景中的输入图像集合的平均、最大或 最小输入色度码字值产生更多的或更少的分区来使用更多的或更少的值(例如,这些值中 的任何两个值之间的中间点和/或小数点、等等)或分段。
[0154] 应指出,为了本发明的目的,输入图像集合可以包括可变数量的输入图像,和/或 可以或者可以不与场景相关。例如,图2A和图2B的处理流程可以对属于场景的子集的输 入图像集合执行。另外,在其它实施例中,图2A和图2B的处理流程可以对不属于单个场景 的输入图像集合执行。
[0155] 在方框260中,多层编码器(102)还可以被配置为基于以下表达式来构造三个图 像块集合巧、〇P#f:
[0156]
[0157]
[0158]
[0159] 如所示的,,f表示PWL映射函数的中间分段中的VDR图像块,这些VDR图像块在 VDR色度值中具有非零标准差,而在映射色度值中具有零标准差,其中斜率缩放因子W]被设 置为1. 0。表示PWL映射函数的低分段中的VDR图像块,这些VDR图像块在VDR色度值中 具有非零标准差。^#表示PWL映射函数的高分段中的VDR图像块,这些VDR图像块在VDR色度值中具有非零标准差。
[0160] 在方框262中,多层编码器(102)被配置为如以下表达式所示的那样设立将用于 集合K的斜率缩放因子¥]的候选值的阵列QS
[0161] QL= (1,1-A w,1-2 A w,? ? ?,1_(S L-l) A w} (23)
[0162] 其中AW是可配置的或固定的减量值,是1中的阵列元素的可配置的或固定 的数量。
[0163] 对于0和#之间的每个整数值中的局部变量s,多层编码器(102)使用表达式 (10)和(11)来计算或重新计算与#中的具有n的每个图像块的最大色度值D(j,n)和最 小色度值E(j,n)对应的映射色度值d]n (W])和e]n (W]),其中,如以下表达式所示,将用于集 合iTj的斜率缩放因子¥]被设置为Q^中的候选值:
[0164] Wj=QL[s] (24)
[0165] 此外,对于0和#之间的每个整数值中的s,多层编码器(102)如以下表达式所示 的那样计算量?(S),其将中的元素的数量(被表示为KI)与其在映射色度值中的标 准差高于阈值T的图像块的数量进行比较:
[0166]
[0167] 基于? (s),可以用以下表达式推导PWL映射函数的低分段的最佳斜率缩放因子 w\:
[0168]
(26)
[0169]其中 被如下给出:
[0170]
(27)
[0171] 如以上所讨论的处理可以被用于推导用于PWL映射函数的零个、一个、两个或更 多个其它分段的零个、一个、两个或更多个其它的优化缩放因子。例如,在方框264中,多层 编码器(102)被配置为如以下表达式所示的那样设立将用于集合_Tf的斜率缩放因子、的 候选值的阵列
[0172]QM= {1,1+Aw,1+2Aw,? ? ?,1+(SM_l)Aw} (28)
[0173] 其中AW是可配置的或固定的减量值,SM是QM中的阵列元素的可配置的或固定 的数量。
[0174] 对于0和SM之间的每个整数值中的局部变量s,多层编码器(102)使用表达式 (10)和(11)来计算或重新计算与中的具有n的每个图像块的最大色度值D(j,n)和最 小色度值E(j,n)对应的映射色度值d]n (W])和e]n (W]),其中,如以下表达式所示,将用于集 合If的斜率缩放因子¥]被设置为QM中的候选值:
[0175] Wj= ^ M[s] (29)
[0176] 此外,对于0和SM之间的每个整数值中的s,多层编码器(102)如以下表达式所示 的那样计算量HM (S),其将中的元素的数量(被表示为| )与其在映射色度值中的标 准差高于阈值T的图像块的数量进行比较:
[0177]
[0178] 基于31M(s),可以用以下表达式推导PWL映射函数的中间段的最佳斜率缩放因子 w? >wj?
[0179]
?3〇
[0180] 其中被如下给出:
[0181]
(3.2)
[0182] 在方框266中,多层编码器(102)被配置为如以下表达式所示的那样设立将用于 集合的斜率缩放因子%的候选值的阵列QH:
[0183]QH= {1,1-Aw,1-2Aw,? ? ?,1_(SH_l)Aw} (33)
[0184] 其中AW是可配置的或固定的减量值,SH是H中的阵列元素的可配置的或固定 的数量。
[0185] 对于0和SH之间的每个整数值中的局部变量s,多层编码器(102)使用表达式 (10)和(11)来计算或重新计算与中的具有n的每个图像块的最大色度值D(j,n)和最 小色度值E(j,n)对应的映射色度值d]n (W])和e]n (W]),其中,如以下表达式所示,将用于集 合ff的斜率缩放因子¥]被设置为QH中的候选值:
[0186] Wj=QH[s] (34)
[0187] 此外,对于0和SH之间的每个整数值中的s,多层编码器(102)如以下表达式所示 的那样计算量W(s),其将If中的元素的数量(被表示为| |)与其在映射色度值中的标 准差高于阈值T的图像块的数量进行比较:
[01881
[0189]基于31H(s),可以用以下表达式推导PWL映射函数的高分段的最佳斜率缩放因子
[0190]
(36)
[0191] 其中被如下给出:
[0192]
(37)
[0193] 在方框268中,多层编码器(102)将j加1。处理流程进入方框254。
[0194] 在方框270中,多层编码器(102)如以下表达式所示的那样产生将用于限定PWL 映射函数的枢轴的坐标的优化参数集合:
[0195]
[0196]
[0197]
[0198]
[0199]
[0200] 在方框272中,基于优化参数集合,多层编码器(102)如以下表达式所示的那样产 生用于PWL映射函数的全部枢轴(例如,四个枢轴)的坐标:
[0201] pivot_x[] = {vLc,ynin,iinax,vHc} (43)
[0202] pivot_y[0] = 0 (44)
[0203]
[0204]
[0205]
[0206] 其中pivot_x□和pivot_y□是分别表示四个枢轴的x坐标和y坐标的两个阵列。
[0207] 在方框274中,多层编码器(102)被配置为确定容纳PWL映射函数的y坐标值所需 的码字的总数是否超过用于对BL图像数据进行编码的代码空间中的可用码字的总数(例 如,255等)。例如,多层编码器(102)可以被配置为确定pivot_y[3]是否大于可用码字的 总数(例如,255等)。如果情况如此,则对
当前第4页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1