用于立体复合的胶片和视频应用的解复用_5

文档序号:9307000阅读:来源:国知局
像素重排组合利用平均方案。在图14b中,非常类似、但是不完全相同的水平相邻像素分量对W和X,并且还有Y和Z被相互平均,并且将这些平均值变换位置(transpose),以致在复用期间执行的水平_垂直像素分量重排技术被有效地复原。
[0139]图13a和图13b的组合技术和从水平相邻像素中的(A+C)/2到垂直逼近的作为结果得到的解压缩通常允许对符合并排式前体格式的立体对元素进行水平缩放,同时有效地将由于中间图像格式的约束而导致的某些像素分量的进一步分辨率降低转移到垂直轴中。与使两个分辨率降低均被水平地进行相比,结果是改进的图像质量。增加的益处是对于处理存储器的需求被限于适当量,典型地,一次两个像素行。
[0140]示例性复用和解复用算法
[0141]根据本设计的解复用算法可以如下地操作,其中,可以提供仍在本设计的过程和范围内的所述算法的变体。在所述算法中,存在图像的立体对,其每个图像具有像素分辨率(w, h) ο立体对被复用到相同尺寸(w,h)的单帧中。随后对立体对进行解复用,从而每个元素具有其原始像素分辨率,并且以该分辨率被显示。复用和解复用作用于以任何格式被编码的图像,但是为了本论述的目的,利用YUV格式。在复用操作和解复用操作之间,进行采样,以致(复用帧的)奇数编号的像素列中的Cb和Cr分量值被忽略。利用并排式“前体格
JAj ο
[0142]对复用/立体复合和解复用这二者执行仅水平滤波缩放操作。对于任何给定的输出像素,所述算法处理或者“查看(look at)”来自属于两个输入行的不同列的六个像素(复用的)或者四个像素(解复用的)。所有计算是两项乘法运算的总和。在解复用上,所述系统使用两个不同的公式,一个用于偶数输出行,而另一个用于奇数输出行。
[0143]在为YUV采样准备时,复用算法具有另外的步骤,其中属于相邻像素对的Cb和Cr像素分量被相互平均,并且被局部重排。这样的处理可以被实现为分离的步骤,或者可以与滤波缩放计算整合。一些局部重排可以在解复用操作之前发生,并且解复用算法可以合并锐化滤波器。
[0144]复用的“前体格式”是以上论述的并排式,在这种前体格式下,左眼立体对元素通常被水平压缩并存储在复用帧的左半中,而右眼元素被水平压缩并存储在复用帧的右半中。
[0145]对于两个立体对元素中的任何一个,水平压缩意味着输入列的数据的两倍那么多的数据将作为输出列存在。如果原始像素宽度为《,则对于每个立体对元素,复用的像素宽度为w/2。
[0146]更具体地,每个输出(复用的)像素列从六个输入(原始的)像素列抽取。对于任何给定的输出像素(x,y),所述系统使用输入像素(2x_2,y)至(2x+3,y)。公式如下:
[0147]mux (X,y) = -0.05*in (2x~2, y) +0.10*in (2x~l, y) +0.45*in (2x, y) +0.45*in (2x+l,y) +0.01*in (2x+2, y) -0.05*in (2x+3, y)
[0148](I)
[0149]其中,in(A,B)表示列A和行B中的输入像素。等式⑴的第一项和最后一项的大小小。为了更佳的效率,可以对等式(I)进行稍微修改,以消除这些项,使用四个输入列代替六个输入列。事实上,以下的非常简单的两列公式可以提供满意的(但是稍微差的)结果:
[0150]mux (x, y) = 0.5*in(2x, y)+0.5*in(2x+l, y)
[0151](2)
[0152]此外,等式(I)的六个输入公式需要考虑到输出像素分量的计算值将在其可接受的范围之外的可能性。如果计算值太低,则所述系统可能需要分配最小值,并且如果计算值太高,则所述系统可能需要分配最大值。由于左边缘和右边缘附近的一些列可能不具有获得将在输入位图的界限外部的一些列信息的能力,所以所述算法可以考虑边界问题。
[0153]通常,可以利用等式⑴和⑵以及后面的等式中所使用的常数,但是可以根据情况改变这些常数,包括但不限于,利用的图像或立体对、处理能力、运动图像的外观或者设计者或观看者的期望。可以利用更大、更小或者整个不同的系数。
[0154]通常对每个像素的所有三个分量执行复用计算。如果输入为4:2:2格式(Cb和Cr分量仅针对每隔一个像素列是可获得的),则输入像素的每个邻近对具有相同的Cb和Cr值,或者如果在现有的4:2:2被编码的信息中已经存在一些解压缩处理,则输入像素的每个邻近对具有近似相同的Cb和Cr值。然而,对于每个像素的所有三个分量,复用的结果具有截然不同的值,并且在下一阶段计算中,需要这些截然不同的值。其后进行Cb和Cr采样,并且所述系统然后将数据恢复为4:2:2流。
[0155]由于在复用之后发生Cb和Cr采样,所以在复用期间所述系统可以将重排方案应用于Cb和Cr分量,可选地,同时对重排之后水平相邻的像素分量进行平均。在解复用期间,在像素映射解压缩之后、但是在将左眼和右眼立体对元素从前体格式恢复成全尺寸之前,需要使用如图14b所示的逆像素分量重排方案复原在复用期间所使用的像素重排方案。等式(3)至(8)展示实现这种技术的一种方式。在这些等式中,第一列被编号为0,并且因此是偶数的:
[0156]muxCb(even x, even y) = average (muxCb (even x,even y), muxCb(even x+1, eveny)) (3)
[0157]其中,muxCb表示具有偶数行编号和偶数列编号的任何给定的Cb分量的复用值,even x是偶数的第一(行)值,even y是偶数的第二(列)值,并且average表示平均函数。
在等式(3)中,计算 muxCb (O, O)、muxCb (O, 2)、muxCb (O, 4)、......、muxCb (2, 0)、muxCb (2, 2)、
muxCb (2, 4)等等。
[0158]muxCb(even x+1, even y) = muxCb(even x+1, even y+1) = average(muxCb(evenx, even y+1), muxCb(even x+1, even y+1))(4)
[0159]muxCb (even x, even y+1) = muxCb (even x, even y)(5)
[0160]muxCr(even x, even y) = average (muxCr (even x,even y), muxCr (even x+1, eveny)) (6)
[0161]muxCr(even x+1, even y) = muxCr(even x+1, even y+1) = average(muxCr (evenx, even y+1), muxCr(even x+1, even y+1))(7)
[0162]muxCr (even x , even y + 1) = muxCr (even x , even y)
(8)
[0163]当一些等式结果替换在相同等式中的一些等式中所使用的值时,按指定顺序执行等式(3)至(5)以及等式(6)至⑶。
[0164]如图14b中所示那样图解式地示出等式(3)至(8)。在图14b中,使用自顶向下的行编号协定。图14b示出对于任何给定的2X2像素分组(总共四个像素,其中,分组中的第一个像素既为偶数行又为偶数列),所述系统水平地对解压缩的(但是解复用前的)像素分量进行平均,并且将一个平均值放置在第一列上,而将另一个平均值放置在第二列上。等式(3)至(8)的操作可以与mux (X,y)复用计算整合,而不是执行作为第二步骤的以上的Cb和Cr分量平均和重排。
[0165]解复用阶段执行水平轴扩展缩放;其中,解复用前像素宽度为w/2,解复用后像素宽度为W。就在执行解复用之前,所述系统执行如上所述的像素的Cb和Cr分量的平均和重排。该平均和重排是在复用结束时执行的平均和重排的逆,并且产生不完美的平均值,但是比在解复用期间简单地复制一行并移除该行更好。再者,在图13b中图解式地示出用于从水平到垂直的复用阶段重排的处理,并且在图14b中图解式地显示解复用阶段重排。对于任何给定的2X2像素分组(总共四个像素,其中,分组中的第一像素既为偶数行又为偶数列),图13b和图14b利用自顶向下的行编号协定。在图14b中,如果在复用和解复用之间没有发生压缩,和/或如果Cb和Cr数据仅达到半分辨率,则如像素分量Y和Z将会的那样,像素分量W和X可以彼此相同。在这种情况下,平均不是必需的。在一些实现方式中,W可以不同于X,并且Y可以不同于Z。如果这样的差异存在,则对数据进行平均。
[0166]等式(3)至(8)中的公式从4:2:2格式移除数据。对于每个像素的三个分量中的每个,作为结果得到的像素分量是截然不同的值,并且在解复用的下一个阶段中利用这些截然不同的值。
[0167]主解复用功能是与以上平均和重排分离的操作,不过这两个处理可以被整合。
[0168]每个输出(解复用后的)列从四个输入(解复用前的)列抽取。对于任何给定的偶数列(第一列被编号为O)输出像素(x,y),所述算法使用输入像素(x/2-2,y)至(x/2+l,y)。对于任何给定的奇数列输出像素(x,y),所述算法使用输入像素((x-1)/2-1,y)至((x-1)/2+2,y)。利用的公式如下。
[0169]对于偶数编号的列(包括编号为O的第一列):
[0170]demux (X,y) = -0.0432*in (x/2_2, y) +0.2311*in (x/2-1, y) +0.9951*in(x/2, y) -0? 1830*in(x/2+l, y)
[0171](9)
[0172]对于奇数编号的列:
[0173]demux(x, y) = _0.1830*in((x_l)/2-1,y) +0.9951*in((x_l)/2,y) +0.2311*in((x-1) /2+1,y) -0.0432*in ((x-1) /2+2,y)
[0174](10)
[0175]与复用/立体复合一样,计算的输出像素分量值可以在可接受范围之外。太低的值被分配最小值,并且太高的值被分配最大值。此外,可能存在边界位图问题。最左和最右两个输出列通常将丢失一些输入列,并且对于这些列,可能需要调整计算。
[0176]总体质量趋向于受解复用计算的微小改变的影响大于受微小复用/立体复合改变的影响。因此,尽管更简单的复用计算(使用更少的输入列)可以如更复杂的计算那样大致地作业,但是对于解复用计算,这样的主张不是那么真实。
[0177]以上的解复用公式包括可以改进图像外观的适当锐化滤波器。复用/解复用处理趋向于使图像柔化,而锐化滤波器帮助抵消该效应。对于非锐化版本的等式(9)和(10),所利用的值可以是——0.0357代替-0.0432,0.2625代替0.2311,0.8795代替0.9951,以及-0.1063 代替-0.1830。
[0178]可替换地,可以利用可变缩放算法,在该算法中,垂直压缩在边缘附近更极端,并且在中间场景附近质量更高。这在许多情况下可以改进图像的总体感知的质量。可以利用类似的计算:
[0179]result = nl*in(xln_3, y)+n2*in(xln2_y)+n3*in(xln-l, y)+n4*in (xln, y)+n5*in (xln+l, y)+n6*in (xIn+2, y)+n7*in(xIn+3, y)+n8*in(xIn+4, y)
[0180](11)
[0181]其中,result表示给予像素x, y的值,n[x]表示系数,并且In表示所接收的一个或更多个输入像素。
[0182]计算,或者更具体地,等式(11)中所使用的乘法因子nl至n8可以基于每行改变。这样的实现通常利用用于原始帧范围的不同部分的缩放值。可以对缩放因子或乘法因子进行优化,并且可以执行缩放,而没有作为结果得到的分数像素(fract1nal pixel)偏移效应。根据情况可以将不同量的可变锐化包括在解复用中。
[0183]图15中呈现了本设计的整体概述。从图15可见,在步骤1501,对立体对1500进行解复用,并且按照期望以可变的方式对立体对1500进行
当前第5页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1