视频编码器和编码方法与流程

文档序号:26013196发布日期:2021-07-23 21:34阅读:116来源:国知局
视频编码器和编码方法与流程

相关申请的交叉引用

本申请要求于2018年11月19日提交的美国专利申请号62/769,223以及于2018年11月19日提交的欧洲专利申请号18207029.2的优先权权益,这两个专利申请通过引用以其全文并入本文。



背景技术:

影片和视频中显示的对象的视在运动是由光学错觉产生的,在该光学错觉中,静止图像或帧的序列以比人类观看者能够将它们区分为不同图像更快的帧率显示。该帧率被称为闪光融合阈值。较高的帧率通常会导致更平滑的感知运动。然而,为高帧率显示而捕获的图像是以较短的曝光时间捕获的,由于入射在传感器介质上的光减少,这导致这种图像的分辨率降低,并且同时数据传输的成本也越高。增加曝光时间使得能够在单个图像内捕获更多细节,但这以运动模糊为代价。因此,在单一曝光速度的情况下,存在捕获场景的细节与准确捕获场景内的运动之间的折衷。



技术实现要素:

在第一方面,公开了一种用于对由图像传感器捕获的视频流进行编码的方法。图像传感器包括多个像素,每个像素属于n个子帧之一,该n个子帧之一各自由以下各项来表征:(i)相同的曝光时间序列,该曝光时间序列包括与长曝光时间交替的短曝光时间,以及(ii)相应的时间偏移,该时间偏移等于短曝光时间的整数倍。该方法包括,针对n个子帧中的每个子帧,将以长曝光时间捕获的长曝光低分辨率图像和以短曝光时间捕获的短曝光低分辨率图像线性组合,以产生子帧残差图像。该方法还包括组合来自n个子帧的长曝光低分辨率图像中的至少一些,以产生具有比任何长曝光低分辨率图像更高分辨率的全帧长曝光图像。该方法还包括:(i)将全帧长曝光图像编码到视频流的基本层中;以及(ii)将来自n个子帧的子帧残差图像中的至少一些编码到视频流的增强层中。

在第二方面,公开了一种用于对由图像传感器捕获的视频流进行编码的视频编码器。该图像传感器包括第一方面的多个像素。该视频编码器包括存储器和通信地耦接到存储器的微处理器。存储器存储非暂态计算机可读指令,并适于存储由图像传感器捕获的图像数据。微处理器适于执行指令以执行第一方面的方法。

附图说明

图1描绘了实施例中的接收由相机的图像传感器捕获的视频数据的视频编码器。

图2是实施例中的图1的图像传感器的详细示意图。

图3是实施例中的图2的图像传感器的像素子阵列以及对应的时间偏移系数的示意图。

图4是实施例中的与图3的像素子阵列的相应子帧1-n相对应的n个捕获定时的示意图。

图5是实施例中的子帧和在图4的相应的短曝光时间间隔期间由相应的多个像素生成的相关联的短曝光像素值的示意图。

图6是实施例中的子帧和在图4的相应的长曝光时间间隔期间由相应的多个像素生成的相关联的长曝光像素值的示意图。

图7是实施例中的第一视频编码器的示意性框图,该第一视频编码器被配置为根据从图1的图像传感器接收到的未编码视频数据生成多层视频流。

图8是图示了实施例中的用于利用图7的视频编码器对视频流进行编码的第一方法的流程图。

图9是实施例中的第二视频编码器的示意性框图,该第二视频编码器被配置为根据从图1的图像传感器接收到的未编码视频数据生成多层视频流。

图10是图示了实施例中的用于利用图9的视频编码器对视频流进行编码的第二方法的流程图。

具体实施方式

图1描绘了视频输送流水线180,其示出了从视频捕获到视频内容显示的各个阶段。视频输送流水线180包括图像生成块182、制作块183、后期制作块184、视频编码器100以及解码器186中的至少一个。图1还包括通信地耦接到视频输送流水线180的数字相机110。数字相机110包括生成视频帧104的图像传感器112,该视频帧由图像生成块182接收,该图像生成块输出视频数据192。在制作块183中,对视频数据192进行编辑以提供视频制作流193。

然后,将视频制作流193的视频数据提供给后期制作块184处的处理器以进行后期制作编辑。在后期制作块184处进行后期制作之后,可以将未编码视频数据194的视频数据输送到视频编码器100,以用于向下游输送到诸如电视、个人计算机、移动设备、机顶盒、电影院等的解码和回放设备。视频输送流水线180可以缺少框182、183和184中的至少一个,在这种情况下,未编码视频数据194可以等同于视频制作流193、视频数据192和视频帧104之一。在诸如移动应用的某些实施例中,可以基于数字相机110的能力来移除或简化制作块183和/或后期制作块184,该数字相机可以是诸如电话或平板计算机的移动设备的一部分。

在一些实施例中,编码器100可以包括诸如由atsc、dvb、dvd、蓝光和其他输送格式定义的音频编码器和视频编码器,以生成经编码比特流195。由解码器186对经编码比特流195进行解码,以生成表示与未编码视频数据194相同或接近近似的经解码信号196。目标显示器189可以显示经解码信号196。目标显示器189可以是参考监视器、计算机监视器或显示器、电视机、头戴式显示器、虚拟视网膜显示器等。目标显示器189可以是诸如电话或平板计算机的移动设备的一部分。

数字相机110可以以高帧率捕获视频帧104。高帧视频可能会受到带宽和噪声问题的阻碍。通常,捕获的图像数量越多,则增加每秒向流水线下游发送的比特量,从而影响带宽,并且更高的帧率转化为更短的曝光时间并增加与图像相关联的噪声。然而,高帧率视频可以减少诸如抖动和过度模糊的运动伪影。

当由间隔一定时间δt的短曝光(例如,使用在帧时间的1/12内打开的30°快门)来表示未跟踪的运动时,发生抖动。运动的对象在一个地方闪现,然后在不同的地方再次闪现,并且高对比度的边缘或廓影似乎在其运动应当平滑的地方闪现。

“平滑追踪(smoothpursuit)”描述了对观看者而言所感兴趣并由观看者进行跟踪的运动,并且是对观看者视觉跟踪的估计,并可以通过平滑追踪矢量来量化。为了确定平滑追踪矢量,从局部图像运动矢量减去眼运动矢量,并且有意义的眼运动矢量和对象运动矢量相抵消的区域对应于平滑追踪。可以使用部分抵消矢量来按比例改变本地快门时间。

可以通过使用更开放的快门来避免抖动伪影。然而,360°快门可使得在帧持续时间期间捕获到运动,从而导致运动拖尾并导致过度的模糊。当前的视频内容是这些快门极端值之间的折衷,因此不够理想。

高帧率视频通过每秒呈现比标准视频更多的帧来克服这些问题中的一些问题。然而,由于需要传输和显示附加信息,因此带来一定的成本。许多lcd显示器无法以超过120帧/秒(fps)的速度有效刷新,并且在更高的刷新率下它们的能源效率和光子效率较低。即使在120fps的情况下,即,相当于标准视频的数据带宽的四到五倍,在一些内容中也会出现抖动和过度的运动模糊。消除抖动和模糊可能需要超过400fps的帧率,这是当今电影的带宽的约十七倍。本公开可以提供更高的帧率,而没有带宽和显示技术上的相关联的成本。

图2是图像传感器112的详细示意图。图像传感器112包括由多个像素212形成的像素阵列210。每个像素212属于像素阵列210的n个子帧之一。本文中,整数n被称为“子帧计数”,并且可以是正整数,例如平方数。每个子帧由以下各项来表征:(i)相同的曝光时间序列,该曝光时间序列包括与长曝光时间τ2交替的短曝光时间τ1,τ2>τ1,以及(ii)相应的时间偏移δti,该时间偏移等于短曝光时间τ1的整数倍。换句话说,相同的曝光时间序列用于所有子帧,并且每个子帧与相应的时间偏移δti相关联。子帧计数n可以确定为使得(n-1)是最接近商τ2/τ1的整数。可替代地,子帧数n可以至少部分地确定曝光时间τ1和τ2中的一个或两者,使得τ2/τ1=n。

图像传感器112可以包括滤色器阵列240,该滤色器阵列包括各自与像素阵列210的相应像素212对准的多个滤色器。滤色器阵列240可以是拜耳(bayer)阵列,其中每个滤波器透射与红光、绿光和蓝光之一相对应的电磁辐射的光谱带。在下文中,在透射光谱带的滤色器下方对准的像素的前面可以是与该光谱带相对应的颜色。例如,红色像素212、绿色像素212和蓝色像素212分别在红色滤色器、绿色滤色器和蓝色滤色器下方并检测由其透射的光。由红色像素212、绿色像素212和蓝色像素212生成的像素值在本文中可以被分别称为红色像素值、绿色像素值和蓝色像素值。像素值例如是在零到2m-1的范围中的整数,其中,m是像素的位深度。

子帧计数n还可以是滤色器阵列240的不同滤色器类型的数量的整数倍。当滤色器阵列包括红色、绿色和蓝色或青色、品红色和黄色三种滤色器类型时,例如,子帧计数n可以是三的整数倍。在实施例中,子帧计数n=9。为了缩放以长曝光时间和短曝光时间捕获的二进制像素值的速度和精度,商τ2/τ1可以等于二的幂。在实施例中,以下条件中的至少一个成立:(i)n是滤色器阵列240中的滤色器类型的数量的整数倍;(ii)(n-1)是最接近商τ2/τ1的整数;以及(ii)商τ2/τ1等于二的幂。例如,n可以等于九,而τ2/τ1可以等于八。

多级定时器214被耦接到像素阵列210,并且被配置为针对子帧中的每个子帧触发所述子帧的像素的不同捕获持续时间的至少两次曝光的序列。与不同子帧相对应的序列以预定顺序触发,其中,随后序列的开始时间在时间上偏移时间偏移δti。序列具有相同的总持续时间,并且每个时间偏移δt小于所述总持续时间。

至少一个模数转换器(adc)216被耦接到像素阵列210,并将每个子帧的至少两次曝光转换为数字像素值。存储器218被耦接到至少一个adc216以存储数字像素值。逻辑电路220被耦接到存储器218,并针对每个像素212确定相对应的存储的数字像素值中的哪一个要上传到视频帧。逻辑电路220可以基于不同的曝光持续时间(例如基于τ1与τ2的比率)来缩放(例如,乘以)存储的数字像素值。例如,当根据包括短曝光持续时间τ1和长曝光持续时间τ2=k·τ1的序列来曝光像素212时,通过乘以k来缩放短曝光的存储的数字像素值,或通过乘以k-1来缩放长曝光的存储的数字像素值。

图3是像素子阵列310的示意图。在图3至图6的示例中,子帧计数n=9,但在不脱离本文的范围的情况下,n可以取不同的值。图像传感器112的像素阵列210被划分为多个子阵列310。像素子阵列310包括布置成s行t列的像素212。在所描绘的示例中,s=t=3。然而,在不脱离本文的范围的情况下,s和t中的任一者可以取不同的值。像素阵列210可以包括多个像素子阵列310的周期性平铺,例如,镶嵌(tessellation)。像素子阵列310的每个像素212与相应的时间偏移系数cij相关联,并且因此在图3中被表示为像素212(i,j)。索引i和j分别为范围从1到s和从1到t的整数。与相同的时间偏移系数cij相关联的每个像素212属于像素阵列210的相同子帧。

多级定时器214可以确定每个时间偏移系数cij的值。时间偏移系数cij例如是零到n的范围中的整数。相应地,每个时间偏移系数cij指示像素阵列210的n个子帧之一,并且因此在本文中也被称为“子帧索引”。

时间偏移系数cij构成具有s×t维度的时间偏移矩阵c。时间偏移矩阵c定义了哪个像素212属于n=s×t个子帧中的哪个子帧。根据时间偏移矩阵c将像素阵列210的每个像素子阵列310的像素指派给子帧。每个子帧的像素212可以基本上均匀地分布在传感器区域上。在实施例中,视频帧104以帧每秒(fps)的帧率被捕获和/或传输,其中,像素的最短曝光持续时间(例如,τ1)是总的帧时间的n-1。当n=9并且时,短曝光时间为秒。

最短曝光持续时间可以与序列之间的时间偏移相同。在图3所描绘的示例性实施例中,图像中可表示n=s×t=9个时间偏移,从零秒(当cij=0时)至秒(当cij=8时)。偏移可以近似或精确地由像素总数的1/n来表示,其中,相邻像素可具有不同的偏移,相差(nf)-1的整数倍。本公开适用于任何帧率,例如,由电影图像专家组(mpeg)指定的帧率。

时间偏移矩阵c中的偏移布置是任意的,但是如果偏移在像素子阵列310中的相邻图块(tile)的相邻子帧索引值具有良好的时间分隔(例如,至少2δt)的意义上混合良好,则结果可显示较少的混叠。例如,时间偏移矩阵c被构造为使得像素阵列210的任何两个水平相邻像素和任何两个竖直相邻像素在序列触发这些像素的预定顺序中不紧跟彼此。

基于该评估,简单的扫描线排序是不期望的。此外,时间偏移矩阵c可以在逐帧的基础上旋转、移位或加扰,以减少“纱窗效应(screendooreffect)”。只要时间偏移矩阵c作为元数据与视频帧104一起发送,或者可从具有指定起始点的已知序列得到,就可以轻松恢复偏移。在逐帧的基础上加扰时间偏移矩阵c可以使抖动模式隐藏不被看到。

图4是与像素阵列210的相应子帧310相对应的捕获定时404的示意图。图4中所描绘的示例性捕获定时404(0、1、2、3、8)分别对应于图3中所描绘的示例性像素子阵列310的等于零、一、二、三和八的子帧索引cij。虽然多级定时器214可以控制各个像素212以具有n个捕获定时404(例如,对于图3和图4所描绘的示例为9个捕获定时404)之一,但是为了说明的清楚,图4没有图示捕获定时404(4-7)。

在图4的示例中,n=9,并且每个序列包括短曝光时间τ1和长曝光时间τ2。序列是相同的,但在时间上偏移时间偏移其中,是帧持续时间。当秒并且n=9时,秒。在所描绘的示例中,短曝光时间τ1等于时间偏移δt,并且长曝光时间τ2等于

图4还图示了时间间隔420,该时间间隔对应于时间间隔401(0)的开始与时间间隔402(8)的结束之间的时间。时间间隔420具有持续时间图2表示在时间间隔420期间的多个短曝光时间间隔401和多个长曝光时间间隔402。时间间隔401在时间轴490上指示的时间t0处开始,该时间轴指示时间t0之后发生的事件的时间顺序。时间间隔401和402具有相应的持续时间τ1和τ2,并通过子帧索引cij来索引,该子帧索引指示时间间隔401和402的时间顺序。例如,时间间隔401(1)在时间间隔401(0)的开始之后开始。

属于n个子帧之一的像素212在相应的短曝光时间间隔401期间生成短曝光像素值,并在相应的长曝光时间间隔402期间生成长曝光像素值。

图5是子帧504的示意图,每个子帧对应于像素阵列210的相应子帧。由图像传感器112生成的视频数据194可以包括子帧504。

子帧504(0、1、2、3、8)分别对应于等于零、一、二、三和八的子帧索引cij,并且具有相关联的相应捕获定时404(0、1、2、3、8),如图4所示。虽然图像传感器112可以被配置为生成所有n个子帧,但是为了说明的清楚,图5没有图示子帧504(4-7)。

每个子帧504包括在相应的短曝光时间间隔401期间由相应的多个像素212生成的多个短曝光像素值501。例如,子帧504(0)包括与在时间间隔401(0)期间感测光的像素相对应的短曝光像素值501(0)。类似地,子帧504(1)包括在时间间隔401(1)期间生成的短曝光像素值501(1)。像素值501(cij)的位置对应于叠加到图3的像素子阵列310上的cij的值,该cij的值构成时间偏移矩阵c。

为了简化说明,每个子帧504被描绘为在像素子阵列310的二乘二平铺内。每个子帧505可以包括跨像素子阵列310的较大平铺(例如,具有与像素阵列210相同的像素大小的平铺)的像素值。

图6是子帧504和在相应的长曝光时间间隔402期间由相应的多个像素212生成的相关联的多个长曝光像素值602的示意图。例如,子帧504(0)包括与在时间间隔402(0)期间感测光的像素相对应的长曝光像素值602(0)。类似地,子帧504(1)包括各自在时间间隔402(1)期间生成的长曝光像素值602(1)。

虽然图5和图6的共享相同附图标记501(cij)的像素值对应于在相同时间间隔401(cij)期间感测光的像素212,但实际的像素值本身可根据入射在像素上的光的强度而不同。即,使用单个附图标记(例如501(0))来指示由相同子帧索引cij的多个像素生成的像素值并不意味着要表达多个像素中的每个像素生成相同的像素值。

图7是被配置为从未编码视频数据194生成多层视频流786的视频编码器700的示意性框图。视频编码器700是图1的视频编码器100的示例。视频编码器700可以包括微处理器702和通信地耦接到该微处理器的存储器703中的至少一个。存储器703可以是暂态的和/或非暂态的,并且可以包括易失性存储器(例如,sram、dram、计算性ram、其他易失性存储器、或其任何组合)和非易失性存储器(例如,闪速存储器、rom、磁性介质、光学介质、其他非易失性存储器、或其任何组合)中的一个或两者。存储器703的一部分或全部可以集成到微处理器702中。

存储器703可以包括数据缓冲区710,该数据缓冲区可以具有十三位的精度并且存储十位的模拟到数字的输出。数据缓冲区710存储子帧504,该子帧包括图5和图6中介绍的短曝光像素值501和长曝光像素值602。数据缓冲区710还可以存储多个经编码的子帧残差图像764和全帧长曝光图像772。数据缓冲区710可以包括一个或多个不同的数据缓冲区,使得子帧504、经编码的子帧残差图像764和全帧长曝光图像772中的至少一个被存储在相应的专用数据缓冲区中。每个专用数据缓冲区可以具有不同的字长。可以将短曝光像素值501和长曝光像素值602存储在相应的不同的数据缓冲区中。

数据缓冲区710可以具有足够位的精度,使得可以在不损失精度的情况下通过比率或曝光时间τ1和τ2来缩放短曝光像素值501或长曝光像素值602。例如,当像素值501和602被存储为二进制数据时,缩放可以包括移位操作。例如,数据缓冲区710的位深度m710可超过视频帧104的位深度m104至少其中,是向上取整运算符(ceilingoperator)。位深度m710可以等于例如,当m104=10并且τ2/τ1=8时,m710=13。位深度m710可以是数据缓冲区710的字长。未编码视频数据194可以具有等于位深度m104的位深度。

全帧长曝光图像772可以存储在十位数据缓冲区中,该数据缓冲区可以是超高清(uhd)缓冲区,并具有与4k分辨率相对应的大小,其中,水平分辨率至少为3840个像素。存储低分辨率图像742和752的缓冲区可以具有等于像素阵列210的大小按因子n-1/2缩放的大小,其对应于低分辨率图像742和752的大小。例如,当像素阵列210具有3840×2160的大小并且n=9时,低分辨率图像742和752中的每一个可以存储在具有1280×720的大小的缓冲区中。

当由红色像素、绿色像素和蓝色像素212生成短曝光像素值501和长曝光像素值602时,像素值501和602分别包括相对应的红色像素值、绿色像素值和蓝色像素值。可以将短曝光像素值501的红色像素值、绿色像素值和蓝色像素值存储在数据缓冲区710的相应部分中,以促进去噪和块压缩。类似地,可以将长曝光像素值602的红色像素值、绿色像素值和蓝色像素值存储在数据缓冲区710的相应部分中。

存储器703还可以存储被配置为读取和变换存储在数据缓冲区710中的数据的软件。该软件包括可由微处理器702执行以实施视频编码器700的功能的机器可读指令。该软件可以包括图像处理例程721、残差图像生成器722、透明度绘制器(alphamapper)743、去条纹器(destreaker)753、再分布器754、残差图像编码器762、长曝光处理例程774、编码例程780以及包装器(wrapper)编码例程784中的至少一个。图像处理例程721和长曝光处理例程774中的每一个可以包括一个或多个数据处理例程和/或子例程。

存储器703还可以存储在从未编码视频数据194生成多层视频流786的过程中由软件生成的中间数据。该中间数据可以包括以下中的至少一项:短曝光低分辨率图像742、透明度图745、长曝光低分辨率图像752、去条纹的图像755、子帧残差图像760、经编码的子帧残差图像764、全帧长曝光图像772、经处理的长曝光视频数据775、基本视频流781、增强视频流782以及元数据790。

子帧504(cij)的短曝光像素值501可以作为短曝光低分辨率图像(例如,短曝光低分辨率图像741(cij))存储在数据缓冲区710中。类似地,子帧504(cij)的长曝光像素值602可以作为长曝光低分辨率图像(例如,长曝光低分辨率图像751(cij))存储在数据缓冲区710中。

存储器703还可以存储帧数据794,该帧数据可以包括短曝光时间791、长曝光时间792和子帧计数793中的至少一项。短曝光时间791、长曝光时间792和子帧计数793分别等同于先前介绍的短曝光时间τ1、短曝光时间τ2和整数n。

图8是图示了用于对由图像传感器112捕获的视频流进行编码的方法800的流程图。通过将从长曝光图像得到的基本视频流与从短曝光图像得到的增强视频流进行组合,方法800生成具有高帧率视频的时间分辨率的经编码视频流,而没有与传统高帧率视频相关联的增加带宽的上述成本。方法800可以在图7的视频编码器700的一个或多个方面内实施。方法800可以通过微处理器702执行存储在存储器703中的计算机可读指令来实施。

在对方法800的以下描述中,图像传感器112的每个像素212属于n个子帧之一,每个子帧由以下各项来表征:(i)相同的曝光时间序列(例如,捕获定时404之一),该曝光时间序列包括与长曝光时间792交替的短曝光时间791,以及(ii)相应的时间偏移δt,该时间偏移等于短曝光时间791的整数倍。方法800包括步骤810、820、825、830、840、850、860和870中的至少一个。

图像传感器112可以被配置为捕获以长曝光时间捕获的长曝光低分辨率图像(例如,图像751)和以短曝光时间捕获的短曝光低分辨率图像(例如,图像741)。例如,短曝光低分辨率图像包括短曝光像素值501;长曝光低分辨率图像包括长曝光像素值602。

步骤810包括将多个短曝光像素值中的红色像素值、绿色像素值和蓝色像素值存储在存储缓冲区的相应部分中。步骤810还包括将多个长曝光像素值中的红色像素值、绿色像素值和蓝色像素值存储在存储缓冲区的相应部分中。在步骤810的示例中,短曝光像素值501的红色像素值、绿色像素值和蓝色像素值被存储在数据缓冲区710的相应部分中,并且长曝光像素值602的红色像素值、绿色像素值和蓝色像素值被存储在数据缓冲区710的相应部分中。

步骤820包括:针对n个子帧中的每个子帧并且在组合步骤之前,进行以下中的至少一项操作:(i)对短曝光低分辨率图像和/或长曝光低分辨率图像进行去噪;(ii)降低短曝光低分辨率图像和/或长曝光低分辨率图像的固定模式噪声;以及(iii)对短曝光低分辨率图像和/或长曝光低分辨率图像进行钳位(clamping)。在步骤820的示例中,图像处理例程721对短曝光低分辨率图像741(1-n)和/或长曝光低分辨率图像751(1-n)进行去噪、降低固定模式噪声和/或钳位,从而分别产生短曝光低分辨率图像742(1-n)和长曝光低分辨率图像752(1-n)。当视频编码器700缺少图像处理例程721时,图像742与图像741相同,并且图像752与图像751相同。

步骤825包括:针对n个子帧中的每个子帧,对长曝光低分辨率图像的区域进行卷积,该区域至少部分地已经由短曝光低分辨率图像的透明度图确定。卷积核可以应用高斯模糊运算,并且可以由m×m卷积矩阵表示,其中,m是可以与√n相差至多二的奇数。在步骤825的示例中并且针对n个子帧中的每个子帧,透明度绘制器743从短曝光低分辨率图像742生成透明度图745,并且去条纹器753基于透明度图745对长曝光低分辨率图像752的区域进行卷积,从而产生去条纹的图像755。透明度图745可以具有等于八的位深度。

步骤830包括:针对n个子帧中的每个子帧,将以长曝光时间捕获的长曝光低分辨率图像和以短曝光时间捕获的短曝光低分辨率图像进行组合,以产生子帧残差图像。子帧残差图像可以是(缩放至共同的曝光时间的)长曝光低分辨率图像与短曝光低分辨率图像之间的差,例如,从一个中减去另一个。步骤830的组合可以是线性组合的步骤,使得子帧残差图像是长曝光低分辨率图像和短曝光低分辨率图像的线性组合。

在步骤830的示例中,针对n个子帧中的每个子帧,残差图像生成器722将以长曝光时间捕获的长曝光低分辨率图像752(或去条纹的图像755)和以短曝光时间捕获的短曝光低分辨率图像742线性组合,以产生子帧残差图像760。步骤830的线性组合可以在逐像素的基础上执行,即,利用长曝光低分辨率图像和短曝光低分辨率图像的相对应的像素。

步骤830可以包括步骤832、834和836中的至少一个。步骤834和836涉及长曝光低分辨率图像的多个长曝光像素值。在以下对步骤834和836的描述中,p742、p752和p760分别表示短曝光低分辨率图像742、长曝光低分辨率图像752和子帧残差图像760的像素值。p742、p752和p760例如各自是像素值的二维阵列,并且可以存储在数据缓冲区710中。

步骤832包括:针对n个子帧中的每个子帧,通过将多个长曝光像素值中的每一个除以长曝光时间与短曝光时间的比率来缩放长曝光低分辨率图像。在步骤832的示例中,针对n个子帧中的每个子帧,残差图像生成器722通过将长曝光低分辨率图像752的像素值p752中的每个像素值除以长曝光时间τ2与短曝光时间τ1的比率来缩放长曝光低分辨率图像752。因此,所产生的经缩放的长曝光低分辨率图像的像素值为

步骤834包括:针对n个子帧中的每个子帧,从短曝光低分辨率图像中减去经缩放的长曝光低分辨率图像。在步骤834的示例中,针对n个子帧中的每个子帧,残差图像生成器722生成具有像素值的子帧残差图像760。残差图像生成器722可以向子帧残差图像760添加统一的偏移z0,使得统一的偏移z0例如是2m,其中,m是长曝光像素值602的位深度。例如,位深度m等于十。

步骤836包括:针对n个子帧中的每个子帧,进行以下中的至少一项操作:(i)对子帧残差图像进行感知编码;以及(ii)对子帧残差图像进行块编码。感知编码可以采用立方根函数,该立方根函数对应于cielab颜色空间中的明度l*与亮度y之间的函数关系。可以对接近零的残差值进行钳位以减少噪声并提高编码效率。对每个子帧残差图像进行块编码可以为绿色像素分配比红色像素或蓝色像素更多的块。例如,十六乘十六的块阵列可以用于绿色像素,而相应的八乘八的块阵列可以用于红色像素和蓝色像素。

在步骤836的示例中,针对n个子帧中的每个子帧,残差图像编码器762对子帧残差图像760进行感知编码和/或对子帧残差图像760进行块编码,从而产生经编码的子帧残差图像764。经编码的子帧残差图像764可以具有比子帧残差图像760(其可以具有m=12、m=13或更高的位深度)低的位深度(例如,m=10)。

步骤840包括组合来自n个子帧的长曝光低分辨率图像中的至少一些以产生具有比任何长曝光低分辨率图像更高分辨率的全帧长曝光图像。在步骤840的示例中,再分布器754组合长曝光低分辨率图像752(1-n)中的至少两个以产生全帧长曝光图像772。换句话说,组合840包括组合多个长曝光低分辨率图像(来自在连续间隔(即,图4中的间隔420)期间捕获的n个子帧中的每个子帧),其中,经组合的多个长曝光低分辨率图像包括图像传感器的所有像素,从而形成全帧长曝光图像772。

步骤850包括通过对全帧长曝光图像应用选自由以下各项构成的组的图像处理操作来处理全帧长曝光图像:白平衡、去马赛克、镜头阴影校正、颜色变换、伽马校正以及运动模糊滤波(“去条纹”)。例如,当全帧长曝光图像包括相对快速运动的对象的模糊图像时,这种去条纹是有用的。在示例步骤850中,长曝光处理例程774处理全帧长曝光图像772以生成经处理的长曝光视频数据775。经处理的长曝光视频数据775可以包括色度二次采样的图像,并且可以具有位深度m=8。

步骤850还可以产生与其处理相关联的元数据,例如元数据790。因此,步骤850可以包括步骤852,步骤852包括将与步骤850的图像处理操作相关联的元数据添加到视频流。在步骤852的示例中,包装器编码例程784将元数据790添加到多层视频流786中。步骤852还可以包括将透明度图745添加到多层视频流786。

步骤860包括将全帧长曝光图像编码到视频流的基本层中。在步骤860的示例中,编码例程780将经处理的长曝光视频数据775编码到基本视频流781中。基本视频流781可以是以下中的至少一项:是八位流、具有uhd分辨率、被色度二次采样(例如,以4:2:2采样模式)、并且具有30hz的帧率。基本视频流781可以与较旧的视频解码器(例如,未配备处理例如在步骤870中由编码例程产生的增强视频流782的那些视频解码器)后向兼容。在方法800的实施例中,对基本视频流781的编码缺少对与数字相机110相关联的镜头畸变和色差的校正。这样的编码使得能够恢复未编码视频数据194的原始像素值。

步骤870包括将来自n个子帧的子帧残差图像中的至少一些编码到视频流的增强层中。在步骤870的示例中,编码例程780将经编码的子帧残差图像764(1-n)中的至少两个编码到增强视频流782中。增强视频流782可以是以下中的至少一项:是十位流、具有uhd分辨率、被编码为720p单色视频、并且具有30hz、270hz或两者之间的值的帧率。增强视频流782可以具有比基本视频流781更高的动态范围。

图9是被配置为从未编码视频数据194生成多层视频流986的视频编码器900的示意性框图。视频编码器900是图1的视频编码器100的示例。视频编码器900可以包括微处理器702和通信地耦接到该微处理器的存储器903中的至少一个。存储器903类似于存储器703。存储器903的一部分或全部可以集成到微处理器702中。

存储器903可以包括数据缓冲区910。数据缓冲区910可以具有位深度m=36,并且可以能够维持1gb/秒的带宽。与图7中的数据缓冲区710一样,数据缓冲区910可以具有足够位的精度,使得可以在不损失精度的情况下通过比率或曝光时间τ1和τ2来缩放短曝光像素值501或长曝光像素值602。数据缓冲区910的位深度m910可超过视频帧104的位深度m104至少位深度m910可以等于

数据缓冲区910存储子帧504,该子帧包括图5和图6中介绍的短曝光像素值501和长曝光像素值602。数据缓冲区910还可以存储多个经编码的子帧残差图像964和全帧长曝光图像972。数据缓冲区910可以包括一个或多个不同的数据缓冲区,使得子帧504、经编码的子帧残差图像964和全帧长曝光图像972中的至少一个被存储在专用数据缓冲区中。可以将短曝光像素值501和长曝光像素值602存储在相应的不同的数据缓冲区中。

存储器903还可以存储被配置为读取和变换存储在数据缓冲区910中的数据的软件。该软件包括可由微处理器702执行以实施编码器900的功能的机器可读指令。该软件可以包括图像处理例程921、残差图像生成器722、透明度绘制器743、去条纹器753、残差图像编码器762、长曝光处理例程774、编码例程780以及包装器编码例程784中的至少一个。图像处理例程921可以包括一个或多个图像处理例程和/或子例程。

存储器903还可以存储在从未编码视频数据194生成多层视频流986的过程中由软件生成的中间数据。该中间数据可以包括以下中的至少一项:短曝光低分辨率图像942、透明度图945、长曝光低分辨率图像952、去条纹的图像955、子帧残差图像960、经编码的子帧残差图像964、全帧长曝光图像972、经处理的长曝光视频数据975、基本视频流981、增强视频流982以及元数据990。存储器903还可以存储帧数据794,该帧数据可以包括短曝光时间791、长曝光时间792和子帧计数793中的至少一项。

子帧504(cij)的短曝光像素值501可以作为短曝光低分辨率图像(例如,短曝光低分辨率图像741(cij))存储在数据缓冲区910中。类似地,子帧504(cij)的长曝光像素值602可以作为长曝光低分辨率图像(例如,长曝光低分辨率图像751(cij))存储在数据缓冲区910中。

图10是图示了用于对由图像传感器112捕获的视频流进行编码的方法1000的流程图。通过将从长曝光图像得到的基本视频流与从短曝光图像得到的增强视频流进行组合,方法1000生成具有高帧率视频的时间分辨率的经编码视频流,而没有与传统高帧率视频相关联的增加带宽的上述成本。方法1000可以在图9的编码器900的一个或多个方面内实施。例如,方法1000通过微处理器702执行存储在存储器903中的计算机可读指令来实施。

在对方法1000的以下描述中,图像传感器112的每个像素212属于n个子帧之一:每个子帧由以下各项来表征:(i)相同的曝光时间序列(例如,捕获定时404之一),该曝光时间序列包括与长曝光时间792交替的短曝光时间791,以及(ii)相应的时间偏移δt,该时间偏移等于短曝光时间791的整数倍。方法1000包括步骤1010、820、1020、1025、830、1030、840、850、860和870中的至少一个。

步骤1010包括将n个短曝光低分辨率图像中的每一个存储在存储器缓冲区的相应图块中。在步骤1010的示例中,短曝光低分辨率图像741(1-n)中的每一个被存储在数据缓冲区910的相应图块中。

在对方法800的描述中介绍了步骤820。在步骤820的示例中,如方法1000中所实施的,图像处理例程921针对n个子帧中的每个子帧对短曝光低分辨率图像741(1-n)和/或长曝光低分辨率图像751(1-n)应用以下操作中的至少一项操作:(i)去噪;(ii)降低固定模式噪声;以及(iii)钳位。该操作分别从图像741和751产生短曝光低分辨率图像942和长曝光低分辨率图像952。

步骤1020包括:针对n个子帧中的每个子帧,对短曝光低分辨率图像和长曝光低分辨率图像中的一个或两者应用以下操作中的至少一项操作:(i)镜头畸变校正、(ii)色差校正、(iii)白平衡、(iv)镜头阴影校正以及(iv)去马赛克。在步骤1020的示例中,图像处理例程921将(i)-(iv)中的一个或多个操作应用于以下中的至少一项:(a)短曝光低分辨率图像741(1-n),其产生短曝光低分辨率图像942(1-n);以及(b)长曝光低分辨率图像751(1-n),其产生长曝光低分辨率图像952(1-n)。当方法1000不实施步骤1010时,图像942与图像741相同,并且图像952与图像751相同。

步骤1025包括:针对n个子帧中的每个子帧,对长曝光低分辨率图像的区域进行卷积,该区域至少部分地已经由短曝光低分辨率图像的透明度图确定。卷积核可以应用高斯模糊运算,并且可以由m×m卷积矩阵表示,其中,m是可以与相差至多二的奇数。在步骤1025的示例中并且针对n个子帧中的每个子帧,透明度绘制器743从短曝光低分辨率图像942生成透明度图945,并且去条纹器753基于透明度图945对长曝光低分辨率图像952的区域进行卷积,从而产生去条纹的图像955。透明度图945可以具有等于八的位深度。

在步骤830的示例中,针对n个子帧中的每个子帧,残差图像生成器722将以长曝光时间捕获的长曝光低分辨率图像752(或去条纹的图像955)和以短曝光时间捕获的短曝光低分辨率图像742线性组合,以产生子帧残差图像960。

在对方法800的描述中介绍了步骤830。步骤830可以包括步骤832、834和836中的至少一个。步骤834和836涉及长曝光低分辨率图像的多个长曝光像素值。在以下对步骤834和836的描述中,p942、p952和p960分别表示短曝光低分辨率图像942、长曝光低分辨率图像952和子帧残差图像960的像素值。p942、p952和p960例如各自是像素值的二维阵列,并且可以存储在数据缓冲区910中。

步骤832包括:针对n个子帧中的每个子帧,通过将多个长曝光像素值中的每一个除以长曝光时间与短曝光时间的比率来缩放长曝光低分辨率图像。在步骤832的示例中,如方法1000中所实施的,针对n个子帧中的每个子帧,残差图像生成器722通过将长曝光低分辨率图像952的像素值p952中的每个像素值除以长曝光时间τ2与短曝光时间τ1的比率来缩放长曝光低分辨率图像952。因此,所产生的经缩放的长曝光低分辨率图像的像素值为

在对方法800的描述中介绍了步骤820。在步骤834的示例中,针对n个子帧中的每个子帧,残差图像生成器722生成具有像素值的子帧残差图像960。残差图像生成器722可以例如按因子β来缩放子帧残差图像960,其中,例如残差图像生成器722还可以向子帧残差图像960添加统一的偏移k,使得统一的偏移k例如是2m±1,其中,m是视频帧104和/或长曝光像素值602的位深度。例如,位深度m等于十。在一个示例中,k=500。可以确定β和k的值以确保像素值p960非负且不超过2m,其中,m是增强视频流982的位深度。因子β可以是曝光时间τ1和τ2的函数:

在对方法800的描述中介绍步骤836。在步骤836的示例中,残差图像编码器762进行以下中的至少一项操作:(i)对子帧残差图像960进行感知编码;以及(ii)对子帧残差图像960进行块编码,从而产生经编码的子帧残差图像964。

步骤1030包括在步骤1010的相应图块中用子帧残差图像替换短曝光低分辨率图像。在步骤1010的示例中,对于在一到n的范围中的每个子帧索引cij,每个子帧残差图像960(cij)替换短曝光低分辨率图像741(cij)。

在对方法800的描述中介绍了步骤840和850。在步骤840的示例中,如方法1000中所实施的,再分布器754组合长曝光低分辨率图像952(1-n)中的至少两个以产生全帧长曝光图像972。在步骤850的示例中,如方法1000中所实施的,长曝光处理例程774处理全帧长曝光图像972以生成经处理的长曝光视频数据975。

步骤850还可以产生与其处理相关联的元数据,例如元数据790。因此,步骤850可以包括步骤852,步骤852包括将与步骤850的图像处理操作相关联的元数据添加到视频流。在步骤852的示例中,如方法1000中所实施的,包装器编码例程784将元数据990添加到多层视频流986中。步骤852还可以包括将透明度图945添加到多层视频流986。

在对方法800的描述中介绍了步骤860。在步骤860的示例中,如方法1000中所实施的,编码例程780将经处理的长曝光视频数据975编码到基本视频流981中。基本视频流981可以例如以4:2:2采样模式被色度二次采样。基本视频流981可以与较旧的视频解码器(例如,未配备处理在方法1000的步骤870中产生的增强视频流982的那些视频解码器)后向兼容。

在对方法800的描述中介绍了步骤870。在步骤870的示例中,如方法1000中所实施的,编码例程780将经编码的子帧残差图像964(1-n)中的至少两个编码到增强视频流982中。增强视频流982可以例如以4:2:2采样模式被色度二次采样。增强视频流982可以具有比基本视频流981更高的动态范围。

在不脱离本文的范围的情况下,上述特征以及以下要求保护的特征可以以各种方式组合。以下枚举的示例说明了一些可能的非限制性组合。这些示例应用于包括多个像素的图像传感器,每个像素属于n个子帧之一,每个子帧由以下各项来表征:(i)相同的曝光时间序列,该曝光时间序列包括与长曝光时间交替的短曝光时间,以及(ii)相应的时间偏移,该时间偏移等于短曝光时间的整数倍。

(a1)一种用于对由图像传感器捕获的视频流进行编码的方法包括:针对n个子帧中的每个子帧,将以长曝光时间捕获的长曝光低分辨率图像和以短曝光时间捕获的短曝光低分辨率图像线性组合,以产生子帧残差图像。该方法还包括:组合来自n个子帧的长曝光低分辨率图像中的至少一些,以产生具有比任何长曝光低分辨率图像更高分辨率的全帧长曝光图像。该方法还包括:(i)将全帧长曝光图像编码到视频流的基本层中;以及(ii)将来自n个子帧的子帧残差图像中的至少一些编码到视频流的增强层中。

(a2)当短曝光低分辨率图像包括多个短曝光像素值并且长曝光低分辨率图像包括多个长曝光像素值时,方法(a1)可以进一步包括:(a)将多个短曝光像素值中的红色像素值、绿色像素值和蓝色像素值存储在存储器缓冲区的相应部分中,以及(b)将多个长曝光像素值中的红色像素值、绿色像素值和蓝色像素值存储在存储器缓冲区的相应部分中。

(a3)在方法(a1)-(a2)中的任一方法中,并且当长曝光低分辨率图像包括多个长曝光像素值时,组合的步骤可以包括:(a)通过将多个长曝光像素值中的每一个除以长曝光时间与短曝光时间的比率来缩放长曝光低分辨率图像,以及(b)从短曝光低分辨率图像中减去经缩放的长曝光低分辨率图像。

(a4)在方法(a1)-(a3)中的任一方法中,组合的步骤可以在逐像素的基础上执行。

(a5)在方法(a1)-(a4)中的任一方法中,在组合的步骤中,n可以为使得(n-1)是最接近于长曝光时间除以短曝光时间的整数。

(a6)方法(a1)-(a5)中的任一方法可以进一步包括:针对n个子帧中的每个子帧并且在组合的步骤之前,对短曝光低分辨率图像和长曝光低分辨率图像中的至少一个进行去噪。

(a7)方法(a1)-(a6)中的任一方法可以进一步包括:针对n个子帧中的每个子帧并且在组合的步骤之前,降低来自长曝光低分辨率图像和短曝光低分辨率图像中的至少一个的固定模式噪声。

(a8)方法(a1)-(a7)中的任一方法可以进一步包括:针对n个子帧中的每个子帧并且在组合的步骤之前,对长曝光低分辨率图像和短曝光低分辨率图像中的至少一个进行钳位。

(a9)方法(a1)-(a8)中的任一方法可以进一步包括:针对n个子帧中的每个子帧,进行以下中的至少一项操作:(i)对子帧残差图像进行感知编码;以及(ii)对子帧残差图像进行块编码。

(a10)方法(a1)-(a9)中的任一方法可以进一步包括:(a)在对全帧长曝光图像进行编码的步骤之前,通过对全帧长曝光图像应用选自由以下各项构成的组的图像处理操作来处理全帧长曝光图像:白平衡、去马赛克、镜头阴影校正、颜色变换、伽马校正以及锐化,以及(b)向视频流添加与图像处理操作相关联的元数据。

(a11)方法(a1)-(a10)中的任一方法可以进一步包括针对n个子帧中的每个子帧并且在组合的步骤之前:对短曝光低分辨率图像和长曝光低分辨率图像应用镜头畸变校正和色差校正。

(a12)方法(a1)-(a11)中的任一方法可以进一步包括针对n个子帧中的每个子帧并且在组合的步骤之前:通过对短曝光低分辨率图像和长曝光低分辨率图像应用选自由以下各项构成的组的图像处理操作来处理短曝光低分辨率图像和长曝光低分辨率图像:白平衡、和镜头阴影校正、以及去马赛克。

(a13)方法(a1)-(a12)中的任一方法可以进一步包括:针对n个子帧中的每个子帧,对长曝光低分辨率图像的区域进行卷积,所述区域至少部分地已经由短曝光低分辨率图像的透明度图确定。

(a14)方法(a1)-(a13)中的任一方法可以进一步包括针对n个子帧中的每个子帧:(a)在组合的步骤之前,将短曝光低分辨率图像存储在存储器缓冲区的相应图块中;以及(b)在组合的步骤之后,在相应图块中用子帧残差图像来替换短曝光低分辨率图像。

(b1)一种用于对视频流进行编码的视频编码器包括存储器和通信地耦接到存储器的微处理器。存储器存储非暂态计算机可读指令,并适配于存储由图像传感器捕获的图像数据。图像传感器包括各自属于n个子帧之一的多个像素,每个子帧由以下各项来表征:(i)相同的曝光时间序列,该曝光时间序列包括与长曝光时间交替的短曝光时间,以及(ii)相应的时间偏移,该时间偏移等于短曝光时间的整数倍。微处理器被适配于执行该指令以执行方法(a1)-(a14)中的任一方法。

在不脱离本文的范围的情况下,可以对上述方法和系统进行改变。因此,应当注意,包含在以上说明书中或在附图中示出的内容应当被解释为说明性的而不是限制性的意义。在本文中,除非另有说明,否则形容词“示例性”是指用作示例、实例或说明。权利要求旨在涵盖本文所描述的所有一般特征和特定特征,以及本方法和系统的范围的所有陈述,这在语言上可以被说成落在其间。

可以从以下枚举的示例实施例(eee)理解本发明的各个方面:

1.一种用于对由图像传感器捕获的视频流进行编码的方法,该图像传感器包括多个像素,每个像素属于n个子帧之一,每个子帧由以下各项来表征:(i)相同的曝光时间序列,该曝光时间序列包括与长曝光时间交替的短曝光时间,以及(ii)相应的时间偏移,该时间偏移等于短曝光时间的整数倍,该方法包括:

针对n个子帧中的每个子帧,将以长曝光时间捕获的长曝光低分辨率图像和以短曝光时间捕获的短曝光低分辨率图像线性组合,以产生子帧残差图像;

组合来自n个子帧的长曝光低分辨率图像中的至少一些,以产生具有比任何长曝光低分辨率图像更高分辨率的全帧长曝光图像;

将全帧长曝光图像编码到视频流的基本层中;以及

将来自n个子帧的子帧残差图像中的至少一些编码到视频流的增强层中。

2.如eee1所述的方法,短曝光低分辨率图像包括多个短曝光像素值,长曝光低分辨率图像包括多个长曝光像素值,该方法进一步包括:

将多个短曝光像素值中的红色像素值、绿色像素值和蓝色像素值存储在存储器缓冲区的相应部分中;以及

将多个长曝光像素值中的红色像素值、绿色像素值和蓝色像素值存储在存储器缓冲区的相应部分中。

3.如eee1或eee2所述的方法,长曝光低分辨率图像包括多个长曝光像素值,并且组合的步骤包括:

通过将多个长曝光像素值中的每一个除以长曝光时间与短曝光时间的比率来缩放长曝光低分辨率图像,

从短曝光低分辨率图像中减去经缩放的长曝光低分辨率图像。

4.如任一前述eee所述的方法,组合的步骤在逐像素的基础上执行。

5.如任一前述eee所述的方法,在组合的步骤中,n为使得(n-1)是最接近于长曝光时间除以短曝光时间的整数。

6.如任一前述eee所述的方法,进一步包括,针对n个子帧中的每个子帧并且在组合的步骤之前,对短曝光低分辨率图像和长曝光低分辨率图像中的至少一个进行去噪。

7.如任一前述eee所述的方法,进一步包括,针对n个子帧中的每个子帧并且在组合的步骤之前,降低来自长曝光低分辨率图像和短曝光低分辨率图像中的至少一个的固定模式噪声。

8.如任一前述eee所述的方法,进一步包括,针对n个子帧中的每个子帧并且在组合的步骤之前,对长曝光低分辨率图像和短曝光低分辨率图像中的至少一个进行钳位。

9.如任一前述eee所述的方法,进一步包括,针对n个子帧中的每个子帧,进行以下中的至少一项操作:(i)对子帧残差图像进行感知编码;以及(ii)对子帧残差图像进行块编码。

10.如任一前述eee所述的方法,进一步包括:

在对全帧长曝光图像进行编码的步骤之前,通过对全帧长曝光图像应用选自由以下各项构成的组的图像处理操作来处理全帧长曝光图像:白平衡、去马赛克、镜头阴影校正、颜色变换、伽马校正以及锐化;以及

向视频流添加与图像处理操作相关联的元数据。

11.如任一前述eee所述的方法,进一步包括,针对n个子帧中的每个子帧并且在组合的步骤之前:对短曝光低分辨率图像和长曝光低分辨率图像应用镜头畸变校正和色差校正。

12.如任一前述eee所述的方法,进一步包括,针对n个子帧中的每个子帧并且在组合的步骤之前,通过对短曝光低分辨率图像和长曝光低分辨率图像应用选自由以下各项构成的组的图像处理操作来处理短曝光低分辨率图像和长曝光低分辨率图像:白平衡、和镜头阴影校正、以及去马赛克。

13.如任一前述eee所述的方法,进一步包括,针对n个子帧中的每个子帧,对长曝光低分辨率图像的区域进行卷积,该区域至少部分地已经由短曝光低分辨率图像的透明度图确定。

14.如任一前述eee所述的方法,进一步包括,针对n个子帧中的每个子帧:

在组合的步骤之前,将短曝光低分辨率图像存储在存储器缓冲区的相应图块中;以及

在组合的步骤之后,在相应图块中用子帧残差图像来替换短曝光低分辨率图像。

15.一种用于对由图像传感器捕获的视频流进行编码的视频编码器,该图像传感器包括多个像素,每个像素属于n个子帧之一,每个子帧由以下各项来表征:(i)相同的曝光时间序列,该曝光时间序列包括与长曝光时间交替的短曝光时间,以及(ii)相应的时间偏移,该时间偏移等于短曝光时间的整数倍,该视频编码器包括:

存储器,该存储器存储非暂态计算机可读指令,并被适配于存储由图像传感器捕获的图像数据;

微处理器,该微处理器通信地耦接到存储器,并被适配于执行该指令以进行以下操作:

针对n个子帧中的每个子帧,将以长曝光时间捕获的长曝光低分辨率图像和以短曝光时间捕获的短曝光低分辨率图像进行组合,以产生子帧残差图像;

组合来自n个子帧的长曝光低分辨率图像中的至少一些,以产生具有比任何长曝光低分辨率图像更高分辨率的全帧长曝光图像;

将全帧长曝光图像编码到视频流的基本层中;以及

将来自n个子帧的子帧残差图像中的至少一些编码到视频流的增强层中。

16.如eee15所述的视频编码器,短曝光低分辨率图像包括多个短曝光像素值,长曝光低分辨率图像包括多个长曝光像素值,微处理器进一步被适配于执行该指令以进行以下操作:

将多个短曝光像素值中的红色像素值、绿色像素值和蓝色像素值存储在存储器缓冲区的相应部分中;以及

将多个长曝光像素值中的红色像素值、绿色像素值和蓝色像素值存储在存储器缓冲区的相应部分中。

17.如eee15或eee16所述的视频编码器,长曝光低分辨率图像包括多个长曝光像素值,并且用于进行组合的指令包括:

通过将多个长曝光像素值中的每一个除以长曝光时间与短曝光时间的比率来缩放长曝光低分辨率图像,

从短曝光低分辨率图像中减去经缩放的长曝光低分辨率图像。

18.如eee15至17中任一项所述的视频编码器,n为使得(n-1)是最接近于长曝光时间除以短曝光时间的整数。

19.如eee15至18中任一项所述的视频编码器,微处理器进一步被适配于执行该指令以进行以下操作:针对n个子帧中的每个子帧,对长曝光低分辨率图像的区域进行卷积,该区域已经由短曝光低分辨率图像的透明度图确定。

20.如eee15至19中任一项所述的视频编码器,微处理器被进一步适配于执行该指令以进行以下操作:

在组合的步骤之前,将短曝光低分辨率图像存储在存储器缓冲区的相应图块中;以及

在组合的步骤之后,在相应图块中用子帧残差图像来替换短曝光低分辨率图像。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1