使用图像传感器接口定时信号的闪光同步的制作方法

文档序号:6435249阅读:401来源:国知局
专利名称:使用图像传感器接口定时信号的闪光同步的制作方法
使用图像传感器接口定时信号的闪光同步技术领域
本公开一般涉及数字成像设备,更具体地说,涉及用于处理利用数字成像设备的图像传感器获得的图像数据的系统和方法。
背景技术
背景技术部分旨在向读者介绍与下面描述和/或要求保护的本发明技术的各个方面相关的技术的各个方面。相信下面的讨论有助于向读者提供背景信息,以便于更好地理解本公开的各个方面。因此,应明白要就此而论理解这些陈述,而不应理解成对于现有技术的承认。
近年来,至少部分由于普通消费者越来越负担得起数字成像设备的费用,因此数字成像设备变得日益普及。此外,除了目前可从市场上获得的许多独立的数字照相机之外, 作为另一个电子设备(比如桌上型或笔记本计算机、蜂窝电话或便携式媒体播放器)的一部分而被集成的数字成像设备也不罕见。
为了获得图像数据,多数数字成像设备包括提供许多光检测元件(例如,光电检测器)的图像传感器,所述光检测元件被配置成把图像传感器检测的光转换成电信号。图像传感器还可包括过滤图像传感器捕捉的光,从而捕捉颜色信息的颜色滤光器阵列。图像传感器捕捉的图像数据随后由图像处理管线处理,所述图像处理管线可对图像数据应用多种不同的图像处理操作,从而生成可显示在显示设备(比如监视器)上以供观看的全色图像。
虽然常规的图像处理技术的目的通常在于产生在客观和主观方面令观看者满意的值得一看的图像,不过这样的常规技术可能没有充分解决由成像设备和/或图像传感器引入的图像数据的错误和/或畸变。例如,图像传感器上的归因于制造缺陷或操作故障的有缺陷像素不能精确地感测光级,如果未被校正,那么会表现为出现在最后得到的经处理的图像中的伪像。另外,在图像传感器边缘处的光强降低(可能归因于透镜的制造缺陷) 可能不利地影响特性测量,并且可能导致整体光强度不均勻的图像。图像处理管线还可进行锐化图像的一种或多种处理。不过,常规的锐化技术可能未充分解决现有的图像信号中的噪声,或者可能不能把噪声和图像中的边缘和纹理化区域区分开。在这种情况下,常规的锐化技术实际上可能会增加图像中的噪声的出现,这通常是不可取的。此外,还可进行各种另外的图像处理步骤,其中的一些图像处理步骤依赖于用统计信息收集引擎收集的图像统计fe息。
可对图像传感器捕捉的图像数据应用的另一种图像处理操作是去马赛克操作。由于色彩滤镜阵列通常每个传感器像素一个波长地提供颜色数据,因此为了再现全色图像 (例如,RGB图像),通常对于每个颜色通道内插完整的一组颜色数据。常规的去马赛克技术通常基于某种类型的固定阈值,沿着水平或垂直方向内插丢失的颜色数据的值。不过,这种常规的去马赛克技术可能未充分考虑图像内的边缘的位置和方向,这可能会导致将边缘伪像(比如混叠(aliasing))、棋盘格伪像、或者彩虹伪像引入全色图像,尤其是沿着图像5内的对角边缘引入。
因此,当处理利用数字照相机或其它成像设备获得的数字图像时,应专注于各种考虑因素,以改善最后得到的图像的外观。特别地,下面的本公开的某些方面解决了上面简要提及的一个或多个缺陷。发明内容
下面陈述这里公开的某些实施例的概要。应明白介绍这些方面只是为了向读者提供所述这些实施例的简明概要,所述这些方面并不意图限制本公开的范围。实际上,本公开可包含未在下面陈述的各个方面。
本公开提供和举例说明图像信号处理技术的各个实施例。特别地,本公开的公开实施例可涉及利用后端图像处理单元的图像数据的处理,实现原始像素处理逻辑器的线缓冲器的布置和结构,在存在溢出(也称为过速(overrun))状态的情况下,管理像素数据的移动的技术,使视频和音频数据同步的技术,以及涉及可用于把像素数据保存到存储器和从存储器读取像素数据的各种像素存储器格式的使用的技术。
就后端处理来说,公开的实施例提供一种图像信号处理系统,它包括接收由前端像素处理单元和像素处理管线中的至少一个处理之后的像素数据的后端像素处理单元。在一些实施例中,后端处理单元接收亮度/色度图像数据,并且可被配置成应用面部检测操作,局部色调映射,明度(brightness)、对比度和颜色调整以及比例缩放。此外,后端处理单元还可包括可收集频率统计信息的后端统计单元。频率统计信息可被提供给编码器,并且可用于确定将应用于图像帧的量化参数。
本公开的另一方面涉及利用一组线缓冲器的原始像素处理单元的实现。在一个实施例中,所述一组线缓冲器可包括第一子集和第二子集。可按照共用的方式,利用线缓冲器的第一子集和第二子集,实现原始像素处理单元的各个逻辑器单元。例如,在一个实施例中,可利用线缓冲器的第一子集实现缺陷像素校正和检测逻辑器。线缓冲器的第二子集可用于实现透镜阴影校正逻辑器,增益、偏移和箝位逻辑器,和去马赛克逻辑器。此外,也可分别利用线缓冲器的第一子集和第二子集的至少一部分实现降噪。
本公开的另一方面涉及一种图像信号处理系统,包括当传感器输入队列和/或前端处理单元接收到来自下游目的地单元的背压时,检测出目的地单元出现溢出状态的溢出控制逻辑器。图像信号处理系统还可以包括闪光控制器,所述闪光控制器被配置成利用传感器定时信号,在目标图像帧开始之前启用闪光设备。在一个实施例中,闪光控制器接收延迟的传感器定时信号,并如下确定闪光启用开始时间利用延迟的传感器定时信号识别与前一帧的结束对应的时间,使所述时间增大垂直消隐间隔时间,随后减去第一偏移量,以补偿传感器定时信号和延迟的传感器定时信号之间的延迟。随后,闪光控制器减去第二偏移量,以确定闪光启用时间,从而确保在接收目标帧的第一个像素之前,闪光被启用。本公开的其它方面提供涉及音频-视频同步的技术。在一个实施例中,当被采样时,时间码寄存器提供当前时间戳。可根据图像信号处理系统的时钟,每隔一定时间间隔递增时间码寄存器的值。在图像传感器获得的当前帧开始时,对时间码寄存器采样,把时间戳保存在与图像传感器相关的时间戳寄存器中。随后从时间戳寄存器读出时间戳,并将其写入与当前帧相关的一组元数据中。随后可以使用保存在帧元数据中的时间戳以使当前帧与对应的一组音频数据同步。
本公开的另一个方面提供一种灵活的存储器输入/输出控制器,所述控制器被配置成支持多种像素和像素存储器格式的保存和读取。例如,存储器I/O控制器可支持各种比特精度,例如8比特,10比特,12比特,14比特和16比特的原始图像像素的存储和读取。 可按照紧缩方式,保存未与存储器字节对准(例如,不是8比特的倍数)的像素格式。存储器I/O控制器还可以支持各种格式的RGB像素组和YCC像素组。
本公开的各个方面存在上面提及的特征的各种修改。在这些各个方面中也可结合另外的特征。这些修改和另外的特征可单独存在或任意组合地存在。例如,下面关于一个或多个举例说明的实施例讨论的各个特征可以单独地或者任意组合地结合到本公开的上述各个方向任意之一中。同样,上面给出的简要概述只是用来使读者熟悉本公开的实施例的某些方面和上下文,而不是对要求保护的主题的限制。


本专利或申请文件包含至少一个彩色附图。在支付必要费用的情况下,事务所将应请求提供本专利或专利申请公开的带彩色附图的副本。
参考附图,阅读下面的详细说明,可更好地理解本公开的各个方面,其中
图1是描述电子设备的一个例子的组件的简化方框图,所述电子设备包括成像设备和配置成实现在本公开中陈述的一种或多种图像处理技术的图像处理电路;
图2表示可在图1的成像设备中实现的Bayer色彩滤镜矩阵的2X2像素块的图形表示。
图3是按照本公开的各个方面的图1的呈膝上型计算设备形式的电子设备的透视图4是按照本公开的各个方面的图1的呈桌上型计算设备形式的电子设备的正视图5是按照本公开的各个方面的图1的呈手持便携式电子设备形式的电子设备的正视图6是图5中所示的电子设备的后视图7是按照本公开的各个方面,图解说明的图1的图像处理电路的一个实施例的方框图,所述图像处理电路包括前端图像信号处理(ISP)逻辑器和ISP管道(pipe)处理逻辑器;
图8是按照本公开的各个方面,图解说明图1的图像处理电路的另一个实施例的方框图,所述图像处理电路包括前端图像信号处理(ISP)逻辑器、ISP管道(管线)处理逻辑器和ISP后端处理逻辑器;
图9是按照本公开的各个方面,描述利用图7或图8的图像处理电路处理图像数据的方法的流程图10是按照本公开的各个方面,表示可在图7或图8中实现的ISP前端逻辑器的一个实施例的更详细方框图11是按照一个实施例,表示用于在图10的ISP前端逻辑器中处理图像数据的方法的流程图12是按照一个实施例,图解说明可用于在ISP前端逻辑器中处理图像数据的双缓冲寄存器和控制寄存器的结构的方框图13-15是按照本发明技术的实施例,描述触发图像帧的处理的不同模式的时序图16是按照一个实施例,更详细地描述控制寄存器的示图17是描述当图10的ISP前端逻辑器按照单传感器模式工作时,使用前端像素处理单元处理图像帧的方法的流程图18是描述当图10的ISP前端逻辑器按照双传感器模式工作时,使用前端像素处理单元处理图像帧的方法的流程图19是描述当图10的ISP前端逻辑器按照双传感器模式工作时,使用前端像素处理单元处理图像帧的方法的流程图20是按照一个实施例,描述其中两个图像传感器都有效的方法的流程图,不过其中第一图像传感器在向前端像素处理单元发送图像帧,而第二图像传感器在向统计信息处理单元发送图像帧,以致当第二图像传感器稍后继续向前端像素处理单元发送图像帧时,可立即得到第二传感器的成像统计信息;
图21是按照本公开的各个方面,可应用于保存在图1的电子设备的存储器中的像素格式的线性存储器寻址格式的图形描述;
图22是按照本公开的各个方面,可应用于保存在图1的电子设备的存储器中的像素格式的分块(tiled)存储器寻址格式的图形描述;
图23是按照本公开的各个方面,在图像传感器捕捉的源图像帧内定义的各个成像区的图形描述;
图M是使用ISP前端处理单元处理图像帧的重叠垂直条纹的技术的图形描述;
图25是描述按照本公开的各个方面,如何利用交换代码,把字节交换应用于来自存储器的进入(incoming)图像像素数据的示图沈-四表示按照本公开的各个实施例,可由图7或图8的图像处理电路支持的原始图像数据的存储器格式的例子;
图30-34表示按照本公开的各个实施例,可由图7或图8的图像处理电路支持的全色RGB图像数据的存储器格式的例子;
图35-36表示按照本公开的各个实施例,可由图7或图8的图像处理电路支持的亮度/色度图像数据(YUV/YC1C2)的存储器格式的例子;
图37表示按照本公开的各个方面,如何确定线性寻址格式的存储器中的帧位置的例子;
图38表示按照本公开的各个方面,如何确定分块寻址格式的存储器中的帧位置的例子;
图39是描述按照本公开的一个实施例,如何进行溢出处理的图8的ISP电路的方框图40是描述按照本公开的各个方面,在从图片存储器读取图像像素数据的同时, 当发生溢出情况时用于溢出处理的方法的流程图41是描述按照本公开的一个实施例,在从图像传感器接口读入图像像素数据的同时,当发生溢出情况时用于溢出处理的方法的流程图42是描述按照本公开的另一个实施例,在从图像传感器接口读入图像像素数据的同时,当发生溢出情况时的另一种用于溢出处理的方法的流程图43是可由图1的电子设备捕捉和保存的图像(例如,视频)和对应音频数据的图形描述;
图44图解说明按照一个实施例,可用于提供使图43的音频和视频数据同步的时间戳的一组寄存器;
图45是按照本公开的各个方面,可捕捉为图43的视频数据的一部分的图像帧的简化表示,并且说明如何把时间戳信息保存为图像帧元数据的一部分;
图46是描述按照一个实施例,利用基于VSYNC信号的时间戳使图像数据与音频数据同步的方法的流程图47是描述按照本公开的一个实施例,可如何进行闪光计时控制的图8的ISP电路的方框图48是描述按照本公开的一个实施例,用于确定闪光启用和停用时间的技术;
图49是描述根据图48中所示的技术,确定闪光启用时间的方法的流程图50是描述按照本公开的各个方面,在利用闪光获取图像场景之前,使用预闪光更新图像统计信息的方法的流程图51是按照本公开的各个方面,提供如在图10的ISP前端逻辑器中所示的ISP 前端像素处理单元的一个实施例的更详细的视图的方框图52是图解说明按照一个实施例,可如何对图51中所示的ISP前端像素处理单元接收的图像像素数据应用时域滤波的处理图53图解说明可用于确定图52中所示的时域滤波处理的一个或多个参数的一组参考图像像素和一组对应的当前图像像素;
图M是图解说明按照一个实施例,对一组图像数据的中的当前图像像素应用时域滤波的处理的流程图55是表示按照一个实施例,计算供图M的当前图像像素的时域滤波之用的运动增量值的技术的流程图56是图解说明按照另一个实施例,对一组图像数据中的当前图像像素应用时域滤波的另一种处理的流程图,所述另一种处理包括对图像数据的每个颜色分量使用不同的增益;
图57是图解说明按照又一个实施例,对图51中所示的ISP前端像素处理单元接收的图像像素数据的每个颜色分量使用单独的运动表和亮度表的时域滤波技术的处理图58是图解说明按照又一个实施例,利用图57中所示的运动表和亮度表,对一组图像数据中的当前图像像素应用时域滤波的处理的流程图59描述按照本公开的各个方面,可用图像传感器捕捉的全分辨率原始图像数据的样本;
图60图解说明按照本公开的一个实施例,可被配置成对图59的全分辨率原始图像数据应用箱化(binning),以输出箱化的原始图像数据的样本的图像传感器;
图61描述按照本公开的各个方面,可由图60的图像传感器提供的箱化的原始图像数据的样本;
图62描述按照本公开的各个方面,在用箱化补偿滤波器重新采样之后的图61的箱化的原始图像数据;
图63描述按照一个实施例,可在图51的ISP前端像素处理单元中实现的箱化补偿滤波器;
图64是按照本公开的各个方面,可应用于微分分析器,以选择用于箱化补偿滤波的中心输入像素和索引/相位的各个步长的图形描述;
图65是图解说明按照一个实施例,利用图63的箱化补偿滤波器,比例缩放图像数据的处理的流程图66是图解说明按照一个实施例,确定图63的箱化补偿滤波器的水平和垂直滤波的当前输入源中心像素的处理的流程图67是图解说明按照一个实施例,确定用于选择图63的箱化补偿滤波器的水平和垂直滤波的滤波系数的指数的处理的流程图68是表示按照本公开的各个方面,可在如图10中所示的ISP前端处理逻辑器中实现的统计信息处理单元的一个实施例的更详细的方框图69表示按照本公开的各个方面,当在图68的统计信息处理单元的统计信息处理中,应用检测和校正缺陷像素时可以考虑的各个图像帧边界情况;
图70是图解说明按照一个实施例,在统计信息处理期间进行缺陷像素检测和校正的处理的流程图71表示描述成像设备的常规透镜的光强度与像素位置的关系的三维轮廓;
图72是表现整个图像内的非均勻光强度(可能由于透镜阴影不规则性)的彩图73是按照本公开的各个方面,包括透镜阴影校正区和增益网格的原始成像帧的图示;
图74图解说明按照本公开的各个方面,由四个边界网格增益点围绕的图像像素的增益值的内插;
图75是图解说明按照本技术的一个实施例,确定在透镜阴影校正操作期间,可应用于成像像素的内插增益值的处理的流程图76是描述按照本公开的各个方面,当进行透镜阴影校正时,可应用于表现出图 71中所示的光强度特性的图像的内插增益值的三维轮廓;
图77表示按照本公开的各个方面,在应用透镜阴影校正操作之后的表现出改进的光强度均勻性的图72的彩图78图示按照一个实施例,如何计算当前像素和图像的中心之间的径向距离,并且将其用于确定透镜阴影校正的径向增益分量;
图79是图解说明按照本发明技术的一个实施例,使用增益网格的径向增益和内插增益来确定在透镜阴影校正操作中,可应用于成像像素的总增益的处理的流程图80是表示颜色空间中的白色区域及低色温轴和高色温轴的图示;
图81是表示按照一个实施例,如何关于各种参考照明条件设定白平衡增益的表;
图82是表示按照本公开的一个实施例,可在ISP前端处理逻辑器中实现的统计信息收集引擎的方框图83图解说明按照本公开的各个方面,原始Bayer RGB数据的下采样;
图84描述按照一个实施例,可利用图82的统计信息收集引擎收集的二维颜色直方图85描述二维颜色直方图内的变焦和摇摄;
图86是按照一个实施例,更详细地表示用于实现统计信息收集引擎的像素滤波器的逻辑器的示图87是按照一个实施例,可如何根据为像素滤波器定义的像素条件,评估像素在 C1-C2颜色空间内的位置的图形描述;
图88是按照另一个实施例的可如何根据为像素滤波器定义的像素条件,评估像素在C1-C2颜色空间内的位置的图形描述;
图89是按照又一个实施例,如何根据为像素滤波器定义的像素条件,评估像素在 C1-C2颜色空间内的位置的图形描述;
图90是表示按照一个实施例,可以如何确定图像传感器积分时间,以补偿闪烁的图示;
图91是详细表示按照一个实施例,可在图82的统计信息收集引擎中实现的,并被配置成收集自动聚焦统计信息的逻辑器的方框图92是描述按照一个实施例,利用粗调和微调自动聚焦评分值进行自动聚焦的技术的图示;
图93是描述按照一个实施例,利用粗调和微调自动聚焦评分值进行自动聚焦的处理的流程图94和95表示获得白平衡亮度值的原始Bayer数据的抽选(decimation);
图96表示按照一个实施例,利用每个颜色分量的相对自动聚焦评分值进行自动聚焦的技术;
图97是表示按照一个实施例,如何使用Bayer RGB直方图数据帮助黑电平补偿的图68的统计信息处理单元的更详细示图98是表示按照本公开的各个方面,图7的ISP管道处理逻辑器的实施例的方框图99是表示按照本公开的各个方面,可在图98的ISP管道处理逻辑器中实现的原始像素处理块的实施例的更详细的视图100是表示按照本公开的各个方面,当在图99中所示的原始像素处理块的处理期间,应用检测和校正缺陷像素的技术时,可考虑的各种图像帧边界情况;
图101-103是描述按照一个实施例,可在图99的原始像素处理块中进行的检测和校正缺陷像素的各种处理的流程图104表示按照本公开的各个方面,当在图99的原始像素处理块的处理中,应用绿色不均勻校正技术时,可内插的Bayer图像传感器的2X2像素块中的两个绿色像素的位置;
图105图解说明按照本公开的各个方面,可用作降噪用水平滤波处理的一部分的,包括中央像素和相关联的水平相邻像素的一组像素;11
图106图解说明按照本公开的各个方面,可用作降噪用垂直滤波处理的一部分的,包括中央像素和相关联的垂直相邻像素的一组像素;
图107是描述如何把去马赛克应用于原始Bayer图像模式,以产生全色RGB图像的简化流程图108描述按照一个实施例,在Bayer图像模式的去马赛克期间,可从中得到水平和垂直能量分量,以便内插绿色颜色值的Bayer图像模式的一组像素;
图109表示按照本发明技术的各个方面,在Bayer图像模式的去马赛克期间,可对其应用滤波,以确定内插绿色颜色值的水平分量的一组水平像素;
图110表示按照本发明技术的各个方面,在Bayer图像模式的去马赛克期间,可对其应用滤波,以确定内插绿色颜色值的垂直分量的一组垂直像素;
图111表示按照本发明技术的各个方面,在Bayer图像模式的去马赛克期间,可对其应用滤波,以确定内插的红色和蓝色值的各个3X3像素块;
图112-115提供描述按照一个实施例,在Bayer图像模式的去马赛克期间,内插绿色、红色和蓝色颜色值的各种处理的流程图116表示可用图像传感器捕捉,并按照这里公开的去马赛克技术的各个方面处理的原始图像场景的彩图117表示图116中所示的图像场景的Bayer图像模式的彩图118表示根据图117的Bayer图像模式,利用常规的去马赛克技术重构的RGB 图像的彩图119表示按照这里公开的去马赛克技术的各个方面,从图117的Bayer图像模式重构的RGB图像的彩图120-123描述按照一个实施例,可用于实现图99的原始像素处理块的线缓冲器的结构和布置;
图IM是表示按照一个实施例,利用图120-123中所示的线缓冲器结构,处理原始像素数据的方法的流程图125是表示按照本公开的各个方面,可在图98的ISP管道处理逻辑器中实现的 RGB处理块的一个实施例的更详细的示图1 是表示按照本公开的各个方面,可在图98的ISP管道处理逻辑器中实现的 YCbCr处理块的一个实施例的更详细的示图127是按照本公开的各个方面,在利用1-平面格式的源缓冲器内定义的亮度和色度的激活源区的图形描述;
图1 是按照本公开的各个方面,在利用2-平面格式的源缓冲器内定义的亮度和色度的激活源区的图形描述;
图1 是图解说明按照一个实施例,可在如图126中所示的YCbCr处理块中实现的图像锐化逻辑器的方框图130是图解说明按照一个实施例,可在如图126中所示的YCbCr处理块中实现的边缘增强逻辑器的方框图131是表示按照本公开的各个方面,色度衰减因子与锐化的亮度值的关系的图示;
图132是图解说明按照一个实施例,可在如图126中所示的YCbCr处理块中实现的图像明度(brightness)、对比度和颜色(BCC)调整逻辑器的方框图133表示定义可在图132的BCC调整逻辑器中的颜色调整期间应用的各种色相角和饱和度值的YCbCr颜色空间中的色相和饱和度色轮;
图134是表示按照本公开的各个方面,图8的ISP后端处理逻辑器的一个实施例的方框图,所述ISP后端处理逻辑器可被配置成进行ISP管线下游的各个后处理步骤;
图135是表示一种常规的全局色调映射技术的图形表示;
图136是表示另一种常规的全局色调映射技术的图形表示;
图137描述按照本公开的各个方面,为了应用局部色调应用技术,可如何分割图像的各个区域;
图138图形地图解说明常规的局部色调映射如何导致输出色调范围的有限利用;
图139图形地图解说明按照本公开的实施例,用于局部色调映射的技术;
图140是按照本公开的各个方面,表示局部色调映射LTM逻辑器的一个实施例的更详细的方框图,所述局部色调映射LTM逻辑器可被配置成实现图134的ISP后端逻辑器中的色调映射处理;
图141是表示按照一个实施例,利用图134的ISP后端处理逻辑器处理图像数据的方法的流程图142是表示按照一个实施例,利用图140中所示的LTM逻辑器,应用色调映射的方法的流程图。
具体实施方式
下面将说明本公开的一个或多个具体实施例。这些说明的实施例只是目前公开的技术的例子。另外,在致力于提供这些实施例的简明描述的过程中,在说明书中可能未描述实际实现的所有特征。应意识到,在任何这种实际实现的开发中,和任何工程或设计项目中一样,为了实现开发人员的可能因实现而异的特定目标,比如遵守与系统相关的和与商业相关的约束条件,必须做出各种特定于实现的决策。此外,应意识到这样的开发工作可能复杂和费时,不过对受益于本公开内容的普通技术人员来说,这样的开发工作不过是常规的设计、加工和生产任务。
当介绍本公开的各个实施例的部件时,冠词“一个”等旨在意味存在一个或多个所述部件。用语“包含”、“包括”和“具有”旨在是开放的,并且意味可以存在除列举的部件以外的其它部件。另外,应明白本公开的对“一个实施例”或“实施例”的引用并不意图被解释成排除也包含所引用特征的其它实施例的存在。
如下所述,本公开一般涉及处理利用一个或多个图像感测设备获得的图像数据的技术。特别地,本公开的某些方面可以涉及检测和校正缺陷像素的技术,对原始图像模式去马赛克的技术,利用多尺度非锐化掩膜锐化亮度图像的技术,和应用透镜阴影增益校正透镜阴影不规则性的技术。此外,应明白,目前公开的技术可应用于静止图像和运动图像(例如,视频),并且可用在任何适当类型的成像应用中,比如数字照相机、具有一体化数字照相机的电子设备、安全或视频监视系统、医疗成像系统等等。
在记住以上内容的同时,图1是图解说明通过利用上面简要提及的一种或多种图像处理技术,提供图像数据的处理的电子设备10的例子的方框图。电子设备10 可以是被配置成接收和处理图像数据,比如利用一个或多个图像感测组件获得的数据的任意类型的电子设备,比如膝上型或桌上型计算机、移动电话、数字媒体播放器等等。例如,电子设备10可以是便携式电子设备,比如可从Cupertino,California的苹果公司获得的某种型号的iPod 或iPhone 。另外,电子设备10可以是桌上型或膝上型计算机,比如可从苹果公司获得的某种型号的MacBook 、MacBook Pro、 MacBook Air 、iMac 、Mac Mini或Mac Pro 。在其它实施例中,电子设备 ο也可以是另一家制造商的能够获得和处理图像数据的某种型号的电子设备。
与其形式(例如,便携式或非便携式)无关,应明白,电子设备10可利用上面简要讨论的一种或多种图像处理技术提供图像数据的处理,所述图像处理技术可包括缺陷像素校正和/或检测技术、透镜阴影校正技术、去马赛克技术或者图像锐化技术等等。在一些实施例中,电子设备10可把这样的图像处理技术应用于保存在电子设备10的存储器中的图像数据。在另外的实施例中,电子设备10可包括被配置成获取图像数据的一个或多个成像设备,比如一体的或者外部的数字照相机,电子设备10随后可利用一种或多种上述图像处理技术处理所述图像数据。下面在图3-6中进一步讨论表示电子设备10的便携式和非便携式实施例的各个实施例。
如图1中所示,电子设备10可包括为设备10的功能作出贡献的各个内部和/或外部组件。本领域的普通技术人员将认识到图1中所示的各个功能块可包含硬件部件(包括电路)、软件部件(包括保存在计算机可读介质上的计算机代码)、或者硬件部件和软件部件的组合。例如,在目前举例说明的实施例中,电子设备10可包括输入/输出(1/0)端口 12、输入结构14、一个或多个处理器16、存储设备18、非易失性存储设备20、扩展卡22、 连网设备24、电源沈和显示器28。另外,电子设备10可包括一个或多个成像设备30 (比如数字照相机)和图像处理电路32。如下进一步所述,图像处理电路32可被配置成在处理图像数据时实现一种或多种上述图像处理技术。可认识到,图像处理电路32处理的图像数据可以取自存储器18和/或非易失性存储设备20,或者可以利用成像设备30获得。
在继续进行说明之前,应明白图1中所示的设备10的系统方框图旨在是描述可包括在这样的设备10中的各个组件的高级控制图。S卩,图1中表示的各个单独组件之间的连接线不一定必须代表数据流经的,或者在设备10的各个组件之间传送数据的路径或方向。事实下,如下所述,在一些实施例中,描述的处理器16可包括多个处理器,比如主处理器(例如,CPU)和专用图像和/或视频处理器。在这样的实施例中,图像数据的处理主要可由这些专用处理器负责,从而有效地从主处理器(CPU)卸载这些任务。
就图1中例示的每个组件来说,1/0端口 12可包括被配置成与各个外部设备连接的端口,所述外部设备比如是电源、音频输出设备(例如,头戴式听筒或头戴式收话器)、或者其它电子设备(比如手持设备和/或计算机、打印机、投影仪、外部显示器、调制解调器、 扩展坞等等)。在一个实施例中,1/0端口 12可被配置成连接到外部成像设备,比如数字照相机,以便获得可利用图像处理电路32处理的图像数据。1/0端口 12可支持任何适当的接口类型,比如通用串行总线(USB)端口、串行连接端口、IEEE-1394(火线)端口、以太网或调制解调器端口、和/或AC/DC电力连接端口。
在一些实施例中,某些1/0端口 12可被配置成提供不止一种功能。例如,在一个实施例中,I/O端口 12可包括苹果公司的专用端口,所述专用端口不仅能够使数据在电子设备10和外部源之间的传送更容易,而且能够使设备10与充电接口(比如用于从壁装电源插座提供电力的电源适配器,或者被配置成从另一个电设备,比如桌上型或膝上型计算机抽取电力的接口电缆)耦接,以便对电源26 (它可包括一个或多个可再充电电池)充电。 因此,I/O端口 12可被配置成基于经I/O端口 12与设备10耦接的外部组件,既起数据传送端口的作用,又起AC/DC电源连接端口的作用。
输入结构14可向处理器16提供用户输入或反馈。例如,输入结构14可被配置成控制电子设备10的一个或多个功能,比如在电子设备10上运行的应用程序。例如,输入结构14可以包括按钮、滑动器、开关、控制板、按键、旋钮、滚轮、键盘、鼠标、触摸板等等,或者它们的组合。在一个实施例中,输入结构14允许用户操纵显示在设备10上的图形用户界面(GUI)。另外,输入结构14可包括结合显示器观设置的触敏机构。在这样的实施例中, 用户可以利用触敏机构选择或与显示的界面部件互动。
输入结构14可包括向一个或多个处理器16提供用户输入或反馈的各种设备、电路和通道。这种输入结构14可被配置成控制设备10的功能,在设备10上运行的应用,和 /或与电子设备10连接或者由电子设备10使用的任意接口或设备。例如,输入结构14可以允许用户操纵显示的用户界面或应用界面。输入结构14的例子可包括按钮、滑动器、开关、控制板、按键、旋钮、滚轮、键盘、鼠标、触摸板等等。
在一些实施例中,输入结构14和显示器设备观可以设置在一起,比如在“触摸屏” 的情况下,从而与显示器观相结合地设置触敏机构。在这种实施例中,用户可借助触敏机构,选择或与显示的界面部件互动。这样,显示的界面可提供交互式功能,从而允许用户通过触摸显示器观来操纵显示的界面。例如,用户与输入结构14的交互,比如与显示在显示器观上的用户或者应用界面互动可生成表示用户输入的电信号。这些输入信号可以经由适当的通道,比如输入集线器或数据总线路由到一个或多个处理器16,以供进一步处理。
在一个实施例中,输入结构14可包括音频输入设备。例如,电子设备10可以配有一个或多个音频捕捉设备,比如一个或多个麦克风。音频捕捉设备可以与电子设备10—体化,或者可以是比如通过I/O端口 12与电子设备10耦接的外部设备。如下进一步所述,电子设备10可以既是音频输入设备又是成像设备30,以捕捉声音和图像数据(例如,视频数据),并且可以包括被配置成提供使捕捉的视频数据和音频数据同步的逻辑器。
除了处理经输入结构14接收的各种输入信号外,处理器16可控制设备10的一般操作。例如,处理器16可提供执行操作系统、程序、用户界面和应用界面、和电子设备10 的任何其它功能的处理能力。处理器16可包括一个或多个微处理器,比如一个或多个“通用”微处理器、一个或多个专用微处理器和/或专用微处理器(ASIC),或者这些处理组件的组合。例如,处理器16可包括一个或多个指令集(例如,RISC)处理器、以及图形处理器 (GPU)、视频处理器、音频处理器和/或相关的芯片集。应认识到,处理器16可以与一个或多个数据总线耦接,以便在设备10的各个组件之间传送数据和指令。在一些实施例中,处理器16可提供在电子设备 ο上运行成像应用,比如可从苹果公司获得的W1OtO Booth 、 Aperture 、iPhoto 或preview ,或者由苹果公司提供的存在于各种型号的 iPhone 上的“照相机”和/或“照片”应用的处理能力。
将由处理器16处理的指令或数据可被保存在计算机可读介质,比如存储器装置18中。可以易失性存储器(比如随机存取存储器(RAM)),或者以非易失性存储器(比如只读存储器(ROM)),或者以一个或多个RAM和ROM设备的组合的形式提供存储器装置18。存储器18可保存各种信息,并且可用于各种用途。例如,存储器18可保存电子设备10的固件,比如基本输入/输出系统(BIOS)、操作系统、各种程序、应用、或者可在电子设备10上运行的任何其它例程,包括用户接口功能、处理器功能等等。另外,在电子设备10的工作期间,存储器18可用于缓存或高速缓存。例如,在一个实施例中,存储器18包括当视频数据被输出给显示器观时,缓存视频数据的一个或多个帧缓冲器。
除了存储器装置18之外,电子设备10还可包括用于永久保存数据和/或指令的非易失性存储设备20。非易失性存储设备20可包括闪速存储器,硬盘驱动器,或者任何其它光、磁和/或固态存储介质,或者它们的某种组合。从而,尽管为了清楚起见,在图1中被描述成单个设备,但应明白,非易失性存储设备20可包括结合处理器16工作的一个或多个上面列举的存储设备的组合。非易失性存储器20可被用于保存固件、数据文件、图像数据、 软件程序和应用、无线连接信息、个人信息、用户首选项、和任何其它适当的数据。按照本公开的各个方面,在显示器上被输出之前,保存在非易失性存储设备20和/或存储器装置18 中的图像数据可被图像处理电路32处理。
图1中图解说明的实施例还包括一个或多个卡或者扩展槽。卡槽可被配置成接纳扩展卡22,扩展卡22可用于向电子设备10增添功能,比如额外的存储器、I/O功能或者连网能力。这种扩展卡22可通过任意种类的适当连接器与设备连接,并且可相对于电子设备 10的机壳在外部或内部被访问。例如,在一个实施例中,扩展卡22可以是闪速存储卡,比如安全数字卡(SD)卡、小型或微型SD、紧凑式闪存卡等,或者可以是PCMCIA设备。另外,扩展卡22可以是供电子设备10的提供移动电话能力的实施例使用的用户识别模块(SIM)卡。
电子设备10还包括网络设备对,它可以是通过无线802. 11标准,或者任何其它适当的连网标准提供网络连通性的网络控制器或网络接口卡(NIC),其它适当的连网标准比如是局域网(LAN)、广域网(WAN),例如增强数据速率GSM演进(EDGE)网络,3G数据网络或因特网。在一些实施例中,网络设备M可提供与在线数字媒体内容提供者,比如可从苹果公司得到的iTunes 音乐服务的连接。
设备10的电源沈可包括按非便携式和便携式设置向设备10供电的能力。例如, 在便携式设置中,设备10可包括向设备10供电的一个或多个电池,比如锂离子电池。通过把设备10连接到外部电源,比如连接到壁装电源插座,电池可被再充电。在非便携式设置中,电源沈可包括被配置成从壁装电源插座抽取电力,并且向非便携式电子设备(比如桌上型计算系统)的各个组件分配电力的电源单元(PSU)。
显示器观可用于显示设备10生成的各种图像,比如操作系统的⑶I,或者图像处理电路32处理的图像数据(包括静止图像和视频数据),如下进一步所述。如上所述,图像数据可包括利用成像设备30获得的图像数据,或者从存储器18和/或非易失性存储设备20取回的图像数据。显示器观可以是任何适当类型的显示器,比如,例如液晶显示器 (LCD)、等离子体显示器、或者有机发光二极管(OLED)显示器。另外,如上所述,可以结合上述触敏机构(例如,触摸屏)设置显示器观,所述触敏机构起电子设备10的控制界面的一部分的作用。
可以被配置成获得静止图像和运动图像(例如视频)的数字照相机的形式,提供CN 102547302 A图解所示的成像设备30。照相机30可包括镜头,和被配置成捕捉光并把光转换成电信号的一个或多个图像传感器。例如,图像传感器可包括CMOS图像传感器(例如,CMOS有源像素传感器(APQ)或者CCD(电荷耦合器件)传感器。通常,照相机30中的图像传感器包括具有像素阵列的集成电路,其中,每个像素包括感测光的光电探测器。本领域的技术人员将认识到,成像像素中的光电探测器通常探测经照相机镜头捕捉的光的强度。不过,光电探测器本身通常不能检测捕捉的光的波长,从而不能确定颜色信息。
因此,图像传感器还包括覆盖或者置于图像传感器的像素阵列上,以捕捉颜色信息的色彩滤镜阵列(CFA)。色彩滤镜阵列可包括微小色彩滤镜的阵列,每个色彩滤镜可重叠在图像传感器的相应像素上,并按波长过滤捕捉的光。从而,当结合使用时,色彩滤镜阵列和光电探测器可提供关于通过照相机捕捉的光的波长和强度信息,所述光可以代表捕捉的图像。
在一个实施例中,色彩滤镜阵列可包括Bayer色彩滤镜阵列,它提供为50 %绿色元素,25%红色元素和25%蓝色元素的滤波模式。例如,图2表示Bayer CFA的2X2像素块,它包括2个绿色元素(Gr和(ib)、l个红色元素(R)和一个蓝色元素(B)。从而,利用 Bayer色彩滤镜阵列的图像传感器可提供关于照相机30在绿色、红色和蓝色波长下接收的光的强度有关的信息,从而每个图像像素只记录三种颜色(RGB)之一。随后可利用一种或多种去马赛克技术处理该信息(可被称为“原始图像数据”或者“原始域”中的数据),以把原始图像数据转换成全色图像,通常是通过对于每个像素内插一组红色、绿色和蓝色值进行的。如下进一步所述,这种去马赛克技术由图像处理电路32执行。
如上所述,图像处理电路32可提供各种图像处理步骤,比如缺陷像素检测/校正、 透镜阴影校正、去马赛克、图像锐化、降噪、伽马校正、图像增强、颜色空间变换、图像压缩、 色度子采样和图像比例缩放操作等等。在一些实施例中,图像处理电路32可包括各种子组件和/或离散逻辑器单元,所述子组件和/或离散逻辑器单元共同构成执行各种图像处理步骤中的每一种的图像处理“管线”。这些子组件可以利用硬件(例如,数字信号处理器或 ASIC)或者软件实现,或者借助硬件和软件组件的组合实现。图像处理电路32可提供的各种图像处理操作,尤其是与缺陷像素检测/校正、透镜阴影校正、去马赛克和图像锐化相关的那些处理操作将在下面更详细地说明。
在继续进行说明之前,应注意,虽然下面说明的各种图像处理技术的各个实施例可利用Bayer CFA,不过目前公开的技术并不意图局限于此。事实上,本领域的技术人员将认识到这里提供的图像处理技术适合于任何适当类型的色彩滤镜阵列,包括RGBW滤镜、 CYGM滤镜等等。
重新参见电子设备10,图3-6图解说明电子设备10可以采取的各种形式。如上所述,电子设备10可以采取计算机的形式,包括通常便携的计算机(比如膝上型、笔记本和平板计算机),以及通常不便携的计算机(比如桌上型计算机、工作站和/或服务器),或者其它类型的电子设备,比如手持便携式电子设备(例如,数字媒体播放器或移动电话机)。特别地,图3和4分别描述呈膝上型计算机40和桌上型计算机50形式的电子设备10。图5 和6分别表示呈手持便携式设备60形式的电子设备10的正视图和后视图。
如图3中所示,描述的膝上型计算机40包括机壳42、显示器观、1/0端口 12和输入结构14。输入结构14可包括与机壳42 —体化的键盘和触摸板鼠标。另外,输入结构14可包括各种其它按钮和/或开关,所述各种其它按钮和/或开关可用于与计算机40交互, 比如使计算机通电或启动计算机,操作GUI或者在计算机40上运行的应用,以及调整与计算机40的操作相关的各个其它方面(例如,音量、显示明度等)。计算机40还可包括提供与如上所述的其它设备的连通性的各种I/O端口 12,比如FireWire 或USB端口、高分辨率多媒体接口(HDMI)端口、或者适合于连接到外部设备的任何其它类型的端口。另外,如上关于图1所述,计算机40可包括网络连通性(例如,网络设备沈)、存储器(例如,存储器 20),和存储能力(例如,存储设备22)。
此外,在图解说明的实施例中,膝上型计算机40可包括一体式成像设备30 (例如,照相机)。在其它实施例中,代替或者除了一体式照相机30之外,膝上型计算机40可以利用连接到一个或多个I/O端口 12的外部照相机(例如,外部USB照相机或“网络照相机(webcam)”)。例如,外部照相机可以是可从苹果公司获得的iSight 照相机。照相机30(不论是一体的,还是外部的)可提供图像的捕捉和记录。这样的图像随后可由用户利用图像观看应用观看,或者可被其它应用使用,所述其它应用包括视频会议应用(比如 iChat )和图像编辑 / 观看应用(比如 Photo Booth 、Aperture 、iPhoto 或者Preview ),这些应用程序可从苹果公司获得。在一些实施例中,描述的膝上型计算机40可以是可从苹果公司获得的某种型号的MacBook 、MacBook Pro, MacBook Air 或者PowerBook 。另外,在一个实施例中,计算机40可以是便携式平板计算设备,比如也可从苹果公司获得的某种型号的iPad 平板计算机。
图4还图解说明其中以桌上型计算机50的形式提供电子设备10的实施例。要认识到,桌上型计算机50可包括许多大体与图4中所示的膝上型计算机40提供的那些特征类似的特征,不过可具有通常更大的整体形状因子。如图所示,桌上型计算机50可被置于外壳42中,所述外壳42包括显示器观,以及上面关于图1中所示的方框图讨论的各种其它组件。此外,桌上型计算机50可包括可以通过一个或多个1/0端口 12(例如,USB)与计算机50耦接,或者可以与计算机50无线(例如,RF、蓝牙等)通信的外部键盘和鼠标(输入结构14)。桌上型计算机50还包括成像设备30,如上所述,成像设备30可以是一体式或外部照相机。在一些实施例中,描述的桌上型计算机50可以是可从苹果公司获得的某种型号的iMac 、Mac mini 或 Mac Pro 。
如图进一步所示,显示器观可被配置成生成可由用户观看的各种图像。例如,在计算机50的工作期间,显示器观可显示图形用户界面(“⑶1”)52,⑶I 52允许用户与在计算机50上运行的操作系统和/或应用交互。GUI 52可包括可以显示在整个或者部分显示器观中的各种层、窗口、屏幕、模板或其它图形元素。例如,在描述的实施例中,操作系统 GUI 52可包括各种图形图标M,每个图形图标M对应于当检测到用户选择(例如,借助键盘/鼠标或触摸屏输入)时,被打开或执行的各种应用。图标讨可被显示在坞站(dock) 56 中,或者被显示在显示于屏幕上的一个或多个图形窗口元素58内。在一些实施例中,图标 54的选择可通向分级导航处理,从而图标M的选择通向屏幕,或者打开包括一个或多个另外的图标或其它GUI元素的另一个图形窗口。例如,显示在图4中的操作系统GUI 52可以源自可从苹果公司获得的某种版本的Mac OS 操作系统。
继续参见图5和6,图中进一步以便携式手持电子设备60的形式图解说明了电子设备10,所述便携式手持电子设备60可以是可从苹果公司获得的某种型号的iPod 或iPhone 。在所描述的实施例中,手持设备60包括壳体42,壳体42可保护内部组件免受物理损坏,和屏蔽内部组件使其不受电磁干扰的影响。壳体42可以用任何适当的材料,或者多种材料的组合构成,所述材料比如是塑料、金属或复合材料,并且可以允许某些频率的电磁辐射(比如无线连网信号)通过,从而到达置于壳体42内的无线通信电路(例如,网络设备M),如图5中所示。
壳体42还包括各种用户输入结构14,通过用户输入结构14,用户可以与手持设备 60交互。例如,每个输入结构14可被配置成当被按下或启动时,控制一个或多个相应设备功能。例如,一个或多个输入结构14可被配置成调用“主”屏幕,或者要显示的菜单,在睡眠、唤醒或者通电/断电模式之间切换,使蜂窝电话机应用的铃声静音,增大或减小音量输出等等。应明白,图解说明的输入结构14仅仅是例证性的,并且手持设备60可包括以各种形式(包括按钮、开关、按键、旋钮、滚轮等)存在的许多适当的用户输入结构。
如图5中所示,手持设备60可包括各种I/O端口 12。例如,描述的I/O端口 12可包括传送和接收数据文件,或者对电源沈充电的专用连接端口 12a,和使设备60与音频输出设备(例如,头戴式收话器或扬声器)连接的音频连接端口 12b。此外,在手持设备60提供移动电话功能的实施例中,设备60可包括接纳用户识别模块(SIM)卡(例如,扩展卡22) 的 I/O 端口 12c。
显示器设备观(它可以是IXD、OLED或者任何适当类型的显示器)可以显示手持设备60生成的各种图像。例如,显示器观可显示向用户提供关于手持设备60的一个或多个状态(比如电源状态、信号强度、外部设备连接等等)的反馈的各种系统指示符64。显示器还可显示如下参考图4所述,允许用户与设备60交互的⑶I 52。⑶I 52可包括图形元素,比如图标54,图标M与当检测到用户选择相应图标M时,可被打开或运行的各种应用相对应。例如,图标M之一可代表可以结合照相机30(图5中用虚线表示)使用,以便获得图像的照相机应用66。简要地参见图6,图中图解说明了图5中所示的手持电子设备60 的后视图,该图把照相机30表示成与机壳42 —体化,并被置于手持设备60的背面。
如上所述,利用图像处理电路32可以处理利用照相机30获得的图像数据,图像处理电路32可包括硬件(例如,置于壳体42内)和/或保存在设备60的一个或多个存储器 (例如,存储器18或非易失性存储设备20)上的软件。利用照相机应用66和照相机30获得的图像可保存在设备60上(例如,保存在存储设备20中),并且可在稍后利用照片观看应用68观看。
手持设备60还可包括各种音频输入和输出部件。例如,由附图标记70表示的音频输入/输出部件可包括输入接收器,比如一个或多个麦克风。例如,在手持设备60包括蜂窝电话功能的情况下,输入接收器可被配置成接收用户音频输入,比如用户的话音。另外, 音频输入/输出部件70可包括一个或多个输出发送器。这样的输出发送器可包括一个或多个扬声器,所述扬声器可用于向用户传送音频信号,比如在利用媒体播放器应用72重放音乐数据期间。此外,在手持设备60包括蜂窝电话应用的实施例中,可以设置另外的音频输出发送器74,如图5中所示。类似于音频输入/输出部件70的输出发送器,输出发送器 74也包括被配置成向用户传送音频信号,比如在电话通话期间接收的话音数据的一个或多个扬声器。从而,音频输入/输出部件70和74可以一起工作,起电话机的音频接收和发送部件的作用。
在提供了关于电子设备10可以采取的各种形式的一些背景的情况下,下面的讨论将专注于图1中描述的图像处理电路32。如上所述,图像处理电路32可以利用硬件和/ 或软件组件实现,并且可包括定义图像信号处理(ISP)管线的各种处理单元。特别地,下面讨论将专注于在本公开中陈述的图像处理技术的各个方面,尤其是涉及缺陷像素检测/校正技术、透镜阴影校正技术、去马赛克技术和图像锐化技术的方面。
现在参见图7,按照目前公开技术的一个实施例,图解说明描述可实现成图像处理电路32的一部分的若干功能组件的简化高级方框图。特别地,图7意解说明按照至少一个实施例,图像数据是如何流过图像处理电路32的。为了提供图像处理电路32的概述, 这里参考图7提供了这些功能组件如何工作以处理图像数据的一般性描述,而每个图解说明的功能组件的更具体说明以及它们相应的子组件将在下面进一步提供。
参见图解说明的实施例,图像处理电路32可以包括图像信号处理(ISP)前端处理逻辑器80、ISP管道处理逻辑器82和控制逻辑器84。成像设备30捕捉的图像数据可以首先由ISP前端逻辑器80处理,并对其进行分析以捕捉可用于确定ISP管道逻辑器82和/或成像设备30的一个或多个控制参数的图像统计信息。ISP前端逻辑器80可被配置成从图像传感器输入信号捕捉图像数据。例如,如图7中所示,成像设备30可包括具有一个或多个透镜88和图像传感器90的照相机。如上所述,图像传感器90可包括色彩滤镜阵列(例如,Bayer滤镜),从而可提供用图像传感器90的每个成像像素捕捉的光强度和波长信息, 以提供可由ISP前端逻辑器80处理的一组原始图像数据。例如,成像设备30的输出92可被传感器接口 94接收,传感器接口 94接着可基于例如传感器接口类型把原始图像数据96 提供给ISP前端逻辑器80。例如,传感器接口 94可以利用标准移动成像架构(SMIA)接口或者其它串行或并行照相机接口,或者它们的某种组合。在一些实施例中,ISP前端逻辑器 80可在它自己的时钟域内工作,并且可向传感器接口 94提供异步接口,以支持大小和定时要求不同的图像传感器。在一些实施例中,传感器接口 94可包括在传感器侧的子接口(例如,传感器侧接口)和在ISP前端侧的子接口,所述子接口构成传感器接口 94。
原始图像数据96可被提供给ISP前端逻辑器80,并按多种格式逐个像素地处理。 例如,每个图像像素可具有8、10、12或14比特的位深度。表示在存储器中如何保存和寻址像素数据的存储格式的各种例子将在下面进一步详细讨论。ISP前端逻辑器80可对原始图像数据96进行一个或多个图像处理操作,以及收集关于图像数据96的统计信息。可按相同或不同的位深度精度进行图像处理操作,以及统计数据的收集。例如,在一个实施例中, 可以14比特的精度进行原始图像像素数据96的处理。在这种实施例中,ISP前端逻辑器 80接收的位深度小于14比特(例如,8比特、10比特、12比特)的原始像素数据可被上采样到14比特,以便进行图像处理。在另一个实施例中,可以8比特的精度进行统计处理,从而,具有较高位深度的原始像素数据可被下采样成8比特格式,以供统计。要认识到,下采样到8比特可减小硬件尺寸(例如,面积),还降低关于统计数据的处理/计算复杂性。另外,可在空间上平均原始图像数据,以使统计数据对噪声的鲁棒性更高。
此外,如图7中所示,ISP前端逻辑器80还可从存储器108接收像素数据。例如, 如附图标记98所示,原始像素数据可从传感器接口 94被发送给存储器108。驻留在存储器108中的原始像素数据随后可被提供给ISP前端逻辑器80以供处理,如附图标记100所示。存储器108可以是存储器装置18的一部分、存储设备20,或者可以是电子设备10内20的独立的专用存储器,并且可包括直接存储器存取(DMA)特征。此外,在一些实施例中,ISP 前端逻辑器80可在它自己的时钟域内工作,并且可向传感器接口 94提供异步接口,以支持大小不同并且具有不同的定时要求的传感器。
当收到原始图像数据96 (来自传感器接口 94)或100 (来自存储器108)时,ISP前端逻辑器80可进行一个或多个图像处理操作,比如时域滤波和/或箱化补偿滤波。处理后的图像数据随后可被提供给ISP管道逻辑器82 (输出信号109),以便在被显示(例如,显示在显示器设备观上)之前进行另外的处理,或者可被发送给存储器(输出信号110)。ISP 管道逻辑器82或者直接从ISP前端逻辑器80接收“前端”处理数据,或者从存储器108接收“前端”处理数据(输入信号112),并且可提供原始域中以及RGB和YCbCr颜色空间中的图像数据的其它处理。ISP管道逻辑器82处理的图像数据随后可被输出给显示器观(信号 114),以供用户观看和/或可由图形引擎或GPU进一步处理。另外,ISP管道逻辑器82的输出可被发送给存储器108 (信号11 ,并且显示器观可从存储器108读取图像数据(信号116),在一些实施例中,存储器108可被配置成实现一个或多个帧缓冲器。此外,在一些实现中,ISP管道逻辑器82的输出可被提供给压缩/解压缩引擎118 (信号117),以便编码 /解码图像数据。编码的图像数据可被保存,稍后在被显示在显示器设备观上(信号119) 之前被解压缩。例如,压缩引擎或“编码器” 118可以是用于编码静止图像的JPEG压缩引擎、或者编码视频图像的H. 264压缩引擎、或者它们的某种组合、以及解码图像数据的对应解压缩引擎。关于可在ISP管道逻辑器82中提供的图像处理操作的额外信息将在下面参考图98-133更详细地讨论。另外,应注意,ISP管道逻辑器82还可从存储器108接收原始图像数据,如由输入信号112所示。
ISP前端逻辑器80确定的统计数据102可被提供给控制逻辑器单元84。例如,统计数据102可包括涉及自动曝光、自动白平衡、自动聚焦、闪烁检测、黑电平补偿(BLC)、透镜阴影校正等等的图像传感器统计信息。控制逻辑器84可包括被配置成执行一个或多个例程(例如,固件)的处理器和/或微控制器,所述一个或多个例程可以被配置成根据接收的统计数据102,确定成像设备30的控制参数104,以及ISP管道逻辑器82的控制参数106。 例如,控制参数104可包括传感器控制参数(例如,增益、曝光控制的积分时间)、照相机闪光控制参数、透镜控制参数(例如,聚焦或变焦用焦距)、或者这些参数的组合。ISP控制参数106可包括用于自动白平衡和颜色调整(例如,在RGB处理期间)的增益水平和色彩校正矩阵(CCM),以及透镜阴影校正参数,如下所述,透镜阴影校正参数可以是根据白点平衡参数确定的。在一些实施例中,除了分析统计数据102之外,控制逻辑器84还可以分析历史统计信息,所述历史统计信息可保存在电子设备10上(例如,保存在存储器18或存储设备20中)。
参见图解说明的实施例,图像处理电路32可包括信号处理(ISP)前端处理逻辑器 80、ISP管道处理逻辑器82和控制逻辑器84。成像设备30捕捉的图像数据首先可由ISP 前端逻辑器80处理,并被分析以捕捉可用于确定ISP管道逻辑器82和/或成像设备30的一个或多个控制参数的图像统计信息。ISP前端逻辑器80可被配置成从图像传感器输入信号中捕捉图像数据。例如,如图7中所示,成像设备30可包括具有一个或多个透镜88和图像传感器90的照相机。如上所述,图像传感器90可包括色彩滤镜阵列(例如,Bayer滤镜),从而可提供用图像传感器90的每个成像像素捕捉的光强度和波长信息,以提供可由ISP前端逻辑器80处理的一组原始图像数据。例如,成像设备30的输出92可被传感器接口 94接收,传感器接口 94随后把原始图像数据96提供给基于例如传感器接口类型的ISP 前端逻辑器80。例如,传感器接口 94可以利用标准移动成像架构(SMIA)接口,或者其它串行或并行照相机接口,或者它们的某种组合。在一些实施例中,ISP前端逻辑器80可在它自己的时钟域内工作,并且可向传感器接口 94提供异步接口,以支持大小和定时要求不同的图像传感器。
图8表示描述图像处理电路32的另一个实施例的方框图,其中,相同的组件用相同的附图标记表示。一般来说,图8的图像处理电路32的操作和功能与图7的图像处理电路32类似,除了图8中所示的实施例还包括ISP后端处理逻辑器单元120之外,ISP后端处理逻辑器单元120可耦接在ISP管线82的下游并且提供另外的后处理步骤。
在图解说明的实施例中,ISP后端逻辑器120可从ISP管线82接收输出114,并对接收的数据114进行后处理。另外,ISP后端120可直接从存储器108接收图像数据,如输入IM所示。如下参考图134-142进一步所述,ISP后端逻辑器120的一个实施例可提供图像数据的动态范围压缩(通常称为“色调映射”)、明度、对比度和颜色调整、以及把图像数据比例缩放到期望的尺寸或分辨率(例如,根据输出显示器设备的分辨率)的比例缩放逻辑器。此外,ISP后端逻辑器120还可包括检测图像数据中的某些特征的特征检测逻辑器。 例如,在一个实施例中,特征检测逻辑器可包括被配置成识别图像数据内,面部和/或面部特征位于和/或置于的区域的面部检测逻辑器。面部检测数据可被提供给前端统计信息处理单元,作为用于确定自动白平衡、自动聚焦、闪烁和自动曝光统计信息的反馈数据。例如, ISP前端80中的统计信息处理单元(下面在图68-97中更详细地讨论)可被配置成根据确定的图像数据中的面部和/或面部特征的位置,选择用于统计信息处理的窗口。
在一些实施例中,代替或者除了被反馈给ISP前端统计信息反馈控制回路之外, 面部检测数据也可被提供给局部色调映射处理逻辑器、ISP后端统计信息单元、或者编码器 /解码器单元118中至少之一。如下进一步所述,提供给后端统计信息单元的面部检测数据可被用于控制量化参数。例如,当编码或压缩输出图像数据(例如,在宏块中)时,对于图像的已确定为包括面部和/或面部特征的区域,可以减少量化,从而当用户显示和观看图像时,提高面部和面部特征的视觉质量。
在其它实施例中,特征检测逻辑器还可被配置成检测图像帧中的对象的角落的位置。该数据可用于识别连续图像帧中的特征的位置,以确定各帧之间的全局运动的估计,这可用于进行某些图像处理操作,比如图像配准。在一个实施例中,角落特征等的识别可能对于组合多个图像帧的算法(比如某些高动态范围(HDR)成像算法,以及某些全景拼接算法) 特别有用。
此外,如图8中所示,ISP后端逻辑器120处理的图像数据可被输出给显示器设备 28(信号126),以供用户观看,和/或可被图形引擎或GPU进一步处理。另外,ISP后端逻辑器120的输出可被发送给存储器108 (信号12 ,并且显示器观可从存储器108读取图像数据(信号116),在一些实施例中,存储器108可被配置成实现一个或多个帧缓冲器。在图解说明的实施例中,ISP后端逻辑器120的输出还可被提供给压缩/解压缩引擎118 (信号117),以编码/解码图像数据,供存储和随后重放之用,如上面大体在图7中所述。在其它实施例中,图8的ISB子系统32可具有旁路ISP后端处理单元120的选项。在这样的实施例中,如果后端处理单元120被旁路,那么图8的ISP子系统32可按照和图7中所示类似的方式工作,即,ISP管线82的输出被直接/间接发送到存储器108、编码器/解码器118 或显示器观中的一个或多个。
在图7和图8中所示的实施例中描述的图像处理技术可大体利用图9中的流程图中描述的方法130概述。如图所示,方法130始于方框132,在方框132,利用传感器接口, 从图像传感器(例如,90)接收原始图像数据(例如,Bayer模式数据)。在方框134,利用 ISP前端逻辑器80处理在步骤132接收的原始图像数据。如上所述,ISP前端逻辑器80可被配置成应用时域滤波、箱化补偿滤波。随后在步骤136,ISP前端逻辑器80处理的原始图像数据可被ISP管线82进一步处理,ISP管线82可进行各种处理步骤,以把原始图像数据去马赛克成全色RGB数据,并且进一步把RGB颜色数据转换到YUV或YC1C2颜色空间(其中Cl和C2代表不同的色度差颜色,其中,在一个实施例中,Cl和C2可代表蓝色色差(Cb) 和红色色差(Cr)色度)。
从步骤136,方法130可以继续到步骤138,或者继续到步骤140。例如,在ISP管线82的输出被提供给显示器设备观的实施例(图7)中,方法130继续到步骤140,在步骤 140,利用显示器设备观显示YC1C2图像数据(或者把YC1C2图像数据从ISP管线82发送给存储器108)。另一方面,在用ISP后端单元120对ISP管线82的输出进行后处理的实施例(图8)中,方法130可从步骤136继续到步骤138,在步骤138,利用ISP后端处理逻辑器120处理ISP管线182的YC1C2输出,随后在步骤140用显示器设备显示。
由于这里所示的图像处理电路32的一般复杂的设计,有益的是把ISP前端逻辑器 80、ISP管道处理逻辑器82 (或ISP管线)和ISP后端处理逻辑器120的讨论分成多个独立的部分,如下所示。特别地,本申请的图10-97可以涉及ISP前端逻辑器80的各个实施例和各个方面的讨论,本申请的图98-133可以涉及ISP管道处理逻辑器82的各个实施例和各个方面的讨论,图134-142可以涉及ISP后端逻辑器120的各个实施例和各个方面的讨论。
ISP前端处理逻辑器
图10是按照一个实施例,更详细地表示可在ISP前端逻辑器80中实现的功能逻辑器块的方框图。基于成像设备30和/或传感器接口 94的结构,如上在图7中所述,原始图像数据可由一个或多个图像传感器90提供给ISP前端逻辑器80。在描述的实施例中, 原始图像数据可由第一图像传感器90a(knSor0)和第二图像传感器90b(knsOrl)提供给 ISP前端逻辑器80。如下进一步所述,每个图像传感器90a和90b可被配置成对全分辨率图像数据应用箱化,以便提高图像信号的信噪比。例如,可以应用诸如2X2箱化之类的箱化技术,所述箱化技术可以内插以相同颜色的4个全分辨率图像像素为基础的“箱化的”原始图像像素。在一个实施例中,这会导致相对于单个噪声分量,存在与箱化的像素相关的4个累积信号分量,从而提高图像数据的信噪比,不过降低总分辨率。另外,箱化还会可能导致图像数据的不均勻或不一致的空间采样,这可利用箱化补偿滤波来校正,如下更详细所述。
如图所示,图像传感器90a和90b可分别提供作为信号SifO和Sifl的原始图像数据。每个图像传感器90a和90b可大体与相应的统计信息处理单元142 (StatsPipeO) 和 144 (StatsPipel)关联,统计信息处理单元 142 (StatsPipeO)和 144 (StatsPipel)可被配置成处理图像数据,以确定一组或多组统计信息(如信号MatsO和Matsl所示),包括与自动曝光、自动白平衡、自动聚焦、闪烁检测、黑电平补偿和透镜阴影校正等等相关的统计信息。在一些实施例中,当只有传感器90a或90b之一在有效地获取图像时,如果需要另外的统计信息,那么图像数据可被发给MatsPipeO和MatsPipel。例如,举例来说,如果MatsPipeO和MatsPipel都可用,那么可以利用MatsPipeO收集一个颜色空间(例如 RGB)的统计信息,并且利用MatsPipel收集另一个颜色空间(例如,YUV或YCbCr)的统计信息。即,统计信息处理单元142和144可以并行工作,以收集有效传感器获得的图像数据的每一帧的多组统计信息。
在本实施例中,在ISP前端80中提供5个异步数据源。这些包括(1)来自对应于knsOr0(90a)的传感器接口的直接输入(称为SifO或knsO),(2)来自对应于 Sensorl (90b)的传感器接口的直接输入(称为Sif 1或knsl),(3)来自存储器108的 SensorO数据输入(称为SifInO或knsODMA),存储器108可包括DMA接口,(4)来自存储器108的Sensorl数据输入(称为SifInO或knslDMA),和(5)具有来自从存储器108取回的knsorO和Sensorl数据输入的各帧的一组图像数据(称为!^eProch或ProcInDMA)。 ISP前端80还可包括来自多个源的图像数据可被发送到的多个目的地,其中,每个目的地可以是存储器(例如,108)中的存储位置,或者是处理单元。例如,在本实施例中,ISP前端80包括6个目的地(1)接收存储器108中的SensorO数据的SifODMA,(2)接收存储器 108中的Sensorl数据的SiflDMA, (3)第一统计信息处理单元142 (StatsPipeO),(4)第二统计信息处理单元144 (MatsPipel),(5)前端像素处理单元(FEProc) 150, ^P (6)到存储器108或ISP管线82的!^eOut (或FEftOcOut)(下面更详细讨论)。在一个实施例中,ISP前端80可被配置成使得只有某些目的地对于特定数据源有效,如下面的表1中所示。
SIfODMASIflDMAStatsPipeOStatsPipelFEProcFEOutSensOXXXXXSenslXXXXXSensODMAXSenslDMAXProcInDMAXX
表1每个源的ISP前端有效目的地的例子
例如,按照表1,源SensO (SensorO的传感器接口 )可被配置成把数据提供给目的地 SIf ODMA (信号 154)、MatsPipeO(信号 156)、MatsPipel (信号 158)、FEProc (信号160)或FEOut (信号16 。对于FEOut,在一些情况下,源数据可被提供给FEOut,从而利用FEftOC绕开比如用于调试或测试目的的像素处理。另外,源knsl (Sensorl的传感器接口)可被配置成把数据提供给目的地SIflDMA (信号164)、StatsPipeO (信号166)、 StatsPipel (信号 168)、FEftx)c (信号 170)或 FEOut (信号 172),源 knsODMA (来自存储器 108的SensorO数据)可被配置成把数据提供给MatsPipeO (信号174),源knslDMA (来自存储器108的Sensorl数据)可被配置成把数据提供给MatsPipel (信号176),并且源ftOchDMA (来自存储器108的SensorO和Sensorl数据)可被配置成把数据提供给 FEProc (信号 178)和 FEOut (信号 182)。
应注意,目前举例说明的实施例被配置成使得%11800·(来自存储器108的 SensorO帧)和SenslDMA (来自存储器108的Sensorl帧)只分别被提供给StatsPipeO和 StatesPipel0这种结构允许ISP前端80把一定数目的在先帧(例如,5个帧)保留在存储器中。例如,由于用户发起利用图像传感器的捕捉事件(例如,使图像系统从预览模式转变到捕捉或记录模式,或者甚至只是开启或初始化图像传感器)的时间到捕捉图像场景的时间之间的延迟或滞后,并不是用户意图拍摄的每一帧都可以被拍摄和基本实时地处理。从而,通过在存储器108中保留一定数目的在先帧(例如,来自预览阶段),可在响应捕捉事件实际拍摄的各帧之后或者并排地处理这些在先帧,从而补偿任何这样的滞后,并提供更完整的一组图像数据。
就图10的图解说明的结构来说,应注意MatSPipe0142被配置成接收由选择逻辑器146,比如多路复用器,确定的输入156(来自SensO)、166(来自Sensl)和174(来自 SensODMA)之一。类似地,选择逻辑器148可以从信号158、176和168中选择输出以提供给 MatsPipel,选择逻辑器152可从信号160、170和178中选择输入以提供给FEftx)C。如上所述,统计数据可被提供给控制逻辑器84,以便确定可用于操作成像设备30和/或ISP管道处理逻辑器82的各种控制参数。可认识到,图10中所示的选择逻辑器块(146、148和15 可由任何适当类型的逻辑器提供,所述逻辑器比如是响应控制信号选择多个输入信号之一的多路复用器。
像素处理单元(FEftOC) 150可被配置成逐个像素地对原始图像数据进行各种图像处理操作。如图所示,作为目的地处理单元的FEftOC 150可通过选择逻辑器152从源 knsO (信号160)、SenSl (信号170)或ftxx^nDMA(信号178)接收图像数据。当进行像素处理操作时,FEft~OC150还可接收和输出各种信号(例如,可代表在时域滤波期间使用的运动历史和亮度数据的RiruHiruHout和^ut),所述像素处理操作可包括时域滤波和箱化补偿滤波,如下进一步所述。像素处理单元150的输出109 (FEftOcOut)随后可比如借助一个或多个先入先出(FIFO)队列被转发给ISP管道逻辑器82,或者可被发送给存储器108。
此外,如图10中所示,除了接收信号160、170和178之外,选择逻辑器152还可接收信号180和184。信号180可代表来自MatsPipeO的“预处理”原始图像数据,信号184 可代表来自MatsPipel的“预处理”原始图像数据。如下所述,在收集统计信息之前,每个统计信息处理单元可对原始图像数据应用一个或多个预处理操作。在一个实施例中,每个统计信息处理单元可进行一定程度的缺陷像素检测/校正、透镜阴影校正、黑电平补偿和逆黑电平补偿。从而,信号180和184可代表已利用上述预处理操作处理的原始图像数据(如下在图68中更详细所述)。从而,选择逻辑器152赋予ISP前端处理逻辑器80提供来自knsorO (信号160)和knsorl (信号170)的未预处理的原始图像数据,或者来自 StatsPipeO (信号180)和StatsPipel (信号184)的预处理的原始图像数据的灵活性。另外,如选择逻辑器单元186和188所示,ISP前端处理逻辑器80还具有把来自SensorO (信号154)或%11801~1(信号164)的未预处理的原始图像数据写入存储器108中,或者把来自 MatsPipeO (信号180)或MatsPipel (信号184)的预处理的原始图像数据写入存储器108中的灵活性。为了控制ISP前端逻辑器80的操作,设置前端控制单元190。控制单元190可被配置成初始化和程控用于配置和启动图像帧的处理的寄存器(这里称为“执行(go)寄存器”),和选择用于更新双缓冲数据寄存器的一个或多个适当寄存器组。在一些实施例中,控制单元190还可提供记录时钟周期、存储器等待时间和服务质量(Q0Q信息的性能监视逻辑器。此外,控制单元190还可控制动态时钟门控,当在来自有源传感器的输入队列中不存在足够的数据时,动态时钟门控可被用于禁用关于ISP前端80的一个或多个部分的时钟。通过利用上述“执行寄存器”,控制单元190能够控制每个处理单元(例如, StatsPipeO,StatsPipel和FEftx)C)的各个参数的更新,并且可与传感器接口对接,以控制处理单元的启动和停止。通常,每个前端处理单元逐帧地工作。如上所述(表1),处理单元的输入可以来自传感器接口(SensO或kns 1),或者来自存储器108。此外,处理单元可以利用保存在对应的数据寄存器中的各种参数和配置数据。在一个实施例中,与每个处理单元或目的地相关的数据寄存器可被分成构成寄存器组分组的多个块。在图10的实施例中,在 ISP 前端中可以定义 7 个寄存器组分组SIfO、SIfU StatsPipeO、StatsPipeU ProcPipe、 FEOut和ftOch。每个寄存器块地址空间被复制,以提供两个寄存器组。在第二个寄存器组中只实例化被双缓冲的寄存器。如果寄存器未被双缓冲,那么第二个寄存器组中的地址可被映射到第一个寄存器组中的相同寄存器的地址。对被双缓冲的寄存器来说,一个寄存器组的寄存器被激活,并且被处理单元使用,而另一个寄存器组的寄存器被遮蔽(shadowed)。在硬件在使用激活的寄存器的时候,在当前帧间隔内,控制单元190可更新遮蔽的寄存器。在特定帧,关于哪个寄存器组用于特定处理单元的确定可由与向该处理单元提供图像数据的源对应的执行寄存器中的 "NextBk"(下一个寄存器组)字段指定。本质上,Nextm^是允许控制单元190控制关于下一帧的触发事件,哪个寄存器组变得激活的字段。在详细讨论执行寄存器的操作之前,图11提供按照本发明的技术,逐帧地处理图像数据的一般方法200。从步骤202开始,被数据源(例如,SensO, SensU SensODMA, SenslDMA或ftxx^nDMA)作为目标的目的地处理单元进入空闲状态。这可以指示关于当前帧的处理已完成,于是,控制单元190可准备处理下一帧。例如,在步骤204,每个目的地处理单元的可编程参数被更新。这可包括,例如,更新与源对应的执行寄存器中的Nextm^字段,以及更新与目的地单元对应的数据寄存器中的任何参数。之后,在步骤206,触发事件可以使目的地单元进入运行状态。此外,如在步骤208所示,被源作为目标的每个目的地单元完成其关于当前帧的处理操作,方法200随后可返回步骤202,以便处理下一帧。图12描述表示ISP前端的各个目的地单元可使用的两个数据寄存器组210和212 的方框图。例如,BankO (210)可包括数据寄存器1-n (210a-210d), Bankl (212)可包括数据寄存器l-r^212a-212d)。如上所述,图10中所示的实施例可利用具有7个寄存器组分组(例如,SIfO, SIfU StatsPipeO, StatsPipeU ProcPipe、FEOut 和 Proch)的寄存器组 (BankO)。从而,在这样的实施例中,每个寄存器的寄存器块地址空间被复制,以提供第二寄存器组(Bankl)。图12还图解说明对应于多个源之一的执行寄存器214。如图所示,执行寄存器214 包括“NextVld”字段216和上述“NextBk”字段218。这些字段可在开始当前帧的处理之前被编程。特别地,NextVld指示来自数据源的数据将被发送到的目的地。如上所述,NextBk 可为用NextVld指示的每个目标目的地,从BankO或Bankl中选择对应的数据寄存器。尽管图12中未示出,不过,执行寄存器214还可包括可被设定以使执行寄存器作好准备的准备 (arming)比特(这里称为“执行比特”)。当检测到关于当前帧的触发事件226时,NextVld 和Nextmc可被复制到对应的当前或“激活”寄存器220的CurrVld字段222和Curi^k字段224中。在一个实施例中,一个或多个当前寄存器220可以是可由硬件设定的只读寄存器,同时保持对于ISP前端80内的软件指令不可访问。应理解,对于每个ISP前端源,可以提供对应的执行寄存器。对本公开来说,对应于上述源knsO、Sensl、SensODMA、SenslDMA和ProcInDMA的执行寄存器可分别被称为 SensOGo, SenslGo, SensODMAGo, SenslDMAGo 和 ProcInDMAGo。如上所述,控制单元可利用执行寄存器控制ISP前端80内的帧处理的排序。每个执行寄存器包含分别指示对于下一帧,哪些目的地有效和哪个寄存器组(O或1)将被使用的NextVld字段和Nextm^字段。当发生下一帧的触发事件226时,NextVld和Nex^k字段被复制到指示当前有效目的地和寄存器组编号的对应激活只读寄存器220,如上在图12中所示。每个源可被配置成异步工作, 并且能够把数据发给它的任意有效目的地。此外,应明白,对于每个目的地,在当前帧期间, 通常只有一个源可以是激活的。就执行寄存器214的准备和触发来说,确认执行寄存器214中的准备比特或“执行比特”借助相关联的NextVld和Nextm^字段使对应数据源作好准备。对于触发,基于源输入数据是读取自存储器(例如,SensODMA、SenslDMA或ftOchDMA),还是来自传感器接口 (例如,361180或%1181)存在各种模式。例如,如果所述输入来自存储器108,那么使执行比特本身作好准备可充当触发事件,因为控制单元190能控制从存储器108读取数据的时间。如果传感器接口正在输入图像帧,那么触发事件可取决于相对于从传感器接口接收数据的时间,使对应的执行寄存器作好准备的定时。按照本实施例,图13-15中表示了根据传感器接口输入触发定时的三种不同技术。首先参见图13,图中举例说明了第一种情形,其中,一旦被源作为目标的所有目的地从忙或运行状态转变成空闲状态,就发生触发。这里,数据信号VVALID (228)代表来自源的图像数据信号。脉冲230代表图像数据的当前帧,脉冲236代表图像数据的下一帧,间隔 232代表垂直消隐间隔(VBLANK) 232 (例如,代表当前帧230的最后一行和下一帧236之间的时间差)。脉冲230的上升沿和下降沿之间的时间差代表帧间隔234。从而,在图13中, 源可被配置成当所有目标目的地都已完成对当前帧230的处理操作,并转变成空闲状态时进行触发。在这种情形下,在目的地完成处理之前,使源作好准备(例如,通过设定准备或 “执行”比特),以致一旦目标目的地变得空闲,源就能够触发和开始下一帧236的处理。在垂直消隐间隔232期间,在传感器输入数据到达之前,可以利用由与源对应的执行寄存器指定的寄存器组,为下一帧236设置和配置处理单元。例如,在下一帧236到达之前,可以填充由FEftOC 150使用的读取缓冲器。在这种情况下,在触发事件之后,可以更新与激活寄存器组对应的遮蔽寄存器,从而允许全帧间隔为下一帧(例如,在帧236之后)设置双缓冲寄存器。图14图解说明第二种情形,其中,通过使与源对应的执行寄存器中的执行比特作好准备来触发源。在这种“执行时触发(trigger-on-go)”配置中,被源作为目标的目的地单元已空闲,并且使执行比特作好准备是触发事件。这种触发模式可用于未被双缓冲,于是在垂直消隐期间被更新的寄存器(例如,与在帧间隔234期间更新双缓冲遮蔽寄存器相反)。图15图解说明第三种触发模式,其中,当检测到下一帧的开始,即,上升的VSYNC 时,触发数据源。不过应注意,在这种模式下,如果在下一帧236已开始处理之后,执行寄存器作好了准备(通过设置执行比特),那么源将使用对应于前一帧的目标目的地和寄存器组,因为在目的地开始处理之前,CurrVld和Cun^k字段未被更新。这未给设置目的地处理单元留下任何垂直消隐间隔,并且可能潜在地导致掉帧,尤其是当以双传感器模式工作时。不过应注意,如果图像处理电路32在按照对每一帧都使用相同寄存器组的单传感器模式(例如,目的地(NextVld)和寄存器组(NextBk)不变化)工作,那么这种模式仍然可产生精确的操作。现在参见图16,图中更详细地图解说明控制寄存器(或者“执行寄存器”)214。执行寄存器214包括作好准备的“执行”比特238,以及NextVld字段216和NextBk字段218。 如上所述,ISP 前端 80 的每个源(例如,knsO Jensl JensODMA JenslDMA 或 ProcInDMA) 可具有对应的执行寄存器214。在一个实施例中,执行比特238可以是单比特字段,通过把执行比特238设为1,可使执行寄存器214作好准备。NextVld字段216可包含与ISP前端 80的目的地的数目相对应的多个比特。例如,在图10中所示的实施例中,ISP前端包括6 个目的地SifODMA、SiflDMA、StatsPipeO, StatsPipeUFEProc 和 FEOut。从而,执行寄存器214可在NextVld字段216中包括6个比特,一个比特对应于一个目的地,并且其中目标目的地被设定为1。类似地,NextBk字段218可包含与ISP前端80中的数据寄存器的数目对应的多个比特。例如,如上所述,图10中所示的ISP前端80的实施例可包括7个数据寄存器:SIfO> SIfU StatsPipeO、StatsPipeU ProcPipe、FEOut 禾Π Procln。从而,NextBk 字段218可包括7个比特,一个比特对应于一个数据寄存器,并且其中,通过把其相应的比特值设定为0或1,选择对应于BankO和Bankl的数据寄存器。从而,通过利用执行寄存器 214,当触发时,源明确地知道哪些目的地单元将要接收帧数据,哪些寄存器组将被用于配置目标目的地单元。另外,由于ISP电路32支持的双传感器结构,ISP前端可按照单传感器结构模式 (例如,只有一个传感器在获取数据)和双传感器结构模式(例如,两个传感器都在获取数据)工作。在典型的单传感器结构中,来自传感器接口(比如义!!劝)的输入数据被发给 StatsPipeO (用于统计信息处理)和FEftx)C (用于像素处理)。另外,传感器帧也可被发给存储器(SIfODMA),以便以后处理,如上所述。下面在表2中描述了当按单传感器模式工作时,如何配置与ISP前端80的每个源对应的NextVld字段的例子。
SIfODMA~ SIflDMA~~ StatsPipeOl StatsPipelIFEProc~FEOut SensOGo X 0 0
SenslGoX00000
28
权利要求
1.一种方法,该方法包括以下步骤接收与利用数字图像传感器获取图像帧相关联的传感器定时信号,其中,所述传感器定时信号表示获取所述图像帧的时间间隔;向所述数字图像传感器与图像信号处理系统之间的接口提供第一延迟定时信号,其中,所述第一延迟定时信号相对于所述传感器定时信号被延迟第一时间量;向所述图像信号处理系统的闪光控制逻辑器提供第二延迟定时信号,其中,所述第二延迟定时信号相对于所述第一延迟定时信号被延迟第二时间量,并且相对于所述传感器定时信号被延迟第三时间量;确定在通过所述数字图像传感器获取所述图像帧中的目标图像帧的获取期间是否应用闪光照明;如果要向所述目标图像帧提供闪光照明,那么利用所述第二延迟定时信号来标识与紧接在所述目标图像帧之前的前一图像帧的结束相对应的第一时间,将第四时间量添加至所述第一时间以获取第二时间,从所述第二时间减去第一偏移量以获取第三时间,从所述第三时间减去第二偏移量以获取第四时间,并且在第四时间启用闪光模块。
2.根据权利要求1所述的方法,其中,所述第四时间量等于和所述前一图像帧的结束与所述目标图像帧的结束之间的垂直消隐间隔相对应的时间。
3.根据权利要求1所述的方法,其中,所述第一偏移量等于所述第二时间量。
4.根据权利要求1所述的方法,其中,所述第二偏移量对应于第五时间量,所述第五时间量足以允许所述闪光模块在按所述第四时间启用时,在所述传感器定时信号所表示的所述目标图像帧开始之前达到全强度。
5.根据权利要求1所述的方法,所述方法进一步包括以下步骤按至少部分地基于第五时间的时间,在所述目标帧结束之后停用所述闪光模块,所述第五时间被标识为对应于所述第二延迟定时信号所表示的所述目标帧的结束。
6.根据权利要求5所述的方法,其中,在所述目标帧结束之后停用所述闪光模块的步骤包括按所述第五时间停用所述闪光模块。
7.根据权利要求5所述的方法,其中,在所述目标帧结束之后停用所述闪光模块的步骤包括以下步骤将第三偏移量添加至所述第五时间以获取第六时间,其中,所述第六时间在如所述传感器定时信号所表示的紧接着所述目标图像帧的后一图像帧开始之前出现;和按所述第六时间停用所述闪光模块。
8.根据权利要求5所述的方法,其中,在所述目标帧结束之后停用所述闪光模块的步骤包括以下步骤从所述第五时间减去第四偏移量以获取第七时间,其中,所述第四偏移量对应于比所述第二时间量小的第六时间量;和按所述第七时间停用所述闪光模块。
9.一种图像信号处理系统,该图像信号处理系统包括图像传感器接口,被配置成基于通过图像传感器所提供的传感器定时信号,接收从所述图像传感器获取的图像数据作为多个图像帧,并且被配置成提供所接收的图像数据;图像信号处理逻辑器,被配置成从所述图像传感器接口接收所述图像数据,并且处理通过所述图像传感器获取的所述图像数据;闪光灯设备,被配置成当启用时照明被所述图像传感器捕捉的图像场景;以及闪光灯控制器,被配置成通过以下步骤确定何时启用所述闪光灯来照明所述多个图像帧中的选定图像帧利用相对于所述传感器定时信号被延迟第一间隔的第一定时信号,来标识与紧接在所述选定图像帧之前的前一图像帧的结束相对应的第一时间;将所述选定图像帧与所述前一图像帧之间的垂直消隐间隔添加至所述第一时间,以确定第二时间;从所述第二时间减去第一间隔,以确定第三时间; 从所述第三时间减去第二间隔,以确定第四时间;以及按所述第四时间启用所述闪光灯设备。
10.根据权利要求9所述的图像信号处理系统,其中,按所述第四时间启用所述闪光灯设备的步骤确保在通过所述图像传感器获取所述选定图像帧的第一像素之前,所述闪光灯设备被启用至全亮度。
11.根据权利要求9所述的图像信号处理系统,其中,所述图像处理逻辑器被配置成: 确定是否要针对所述选定图像帧启用所述闪光灯设备,并且向所述闪光灯控制器提供表示要针对所述选定图像帧启用所述闪光灯设备的信号。
12.根据权利要求11所述的图像信号处理系统,其中,确定是否要针对所述选定图像帧启用所述闪光灯设备的步骤包括以下步骤确定针对所述选定图像帧的目标曝光级是否可以通过改变与所述图像传感器相关联的积分时间和通过所述图像传感器提供的增益中的至少一个来实现;和如果不能实现所述目标曝光级,则向所述闪光灯控制器提供所述信号,以表示要针对所述选定图像帧启用所述闪光灯设备。
13.根据权利要求9所述的图像信号处理系统,包括图像传感器,被配置成获取所述多个图像帧,并且提供所述传感器定时信号。
14.一种方法,包括以下步骤在具有图像信号处理子系统的电子设备上接收用于存储来自一组图像帧中的目标图像帧的请求,所述目标图像帧对应于在所述图像信号处理子系统按预览模式操作时通过数字图像传感器获取的图像场景;确定是否利用闪光设备来照明所述图像场景;如果要照明所述图像场景,则在获取在所述目标图像帧之前出现的前一图像帧期间启用闪光设备;处理所述前一图像帧,以基于所照明的场景获取一组更新图像统计信息; 按捕捉模式操作所述电子设备的所述图像信号处理子系统,以利用所述一组更新图像统计信息并且利用启用的所述闪光设备来获取所述目标帧;以及将所述目标图像帧存储在所述电子设备的存储器装置中。
15.根据权利要求14所述的方法,其中,所述一组更新图像统计信息包括基于所照明的所述前一图像帧的自动白平衡参数。
16.根据权利要求14所述的方法,其中,响应于所述电子设备的用户对图像捕捉输入结构的触发来接收存储所述目标图像帧的请求。
17.根据权利要求16所述的方法,其中,所述图像捕捉输入结构包括所述电子设备上的物理输入结构,或设置在显示在所述电子设备的显示设备上的图形用户界面上的图形输入结构。
18.一种方法,该方法包括以下步骤在具有图像信号处理子系统的电子设备上接收用于捕捉来自一组图像帧中的目标图像帧的请求,所述目标图像帧对应于通过数字图像传感器获取的图像场景; 确定是否在所述目标图像帧期间利用闪光设备来照明所述图像场景; 如果要在所述目标图像帧期间照明所述图像场景,则在不启用所述闪光设备的情况下获取未照明的第一图像,并且基于所述第一图像获取一组颜色特性,其中,所述第一图像帧在所述目标图像帧之前出现;启用所述闪光设备,以获取所述目标图像帧;利用基于所述第一图像的所述一组颜色特性处理所述目标帧;以及将所处理的所述目标帧存储在所述电子设备的存储器装置中。
19.根据权利要求18所述的方法,其中,利用基于所述第一图像的所述一组颜色特性处理所述目标帧的步骤包括应用调色板传递操作。
20.一种包括如权利要求9-13中任一项所述的图像信号处理系统的电子设备。
全文摘要
本公开涉及使用图像传感器接口定时信号的闪光同步。本公开涉及本公开的某些方面涉及包括闪光控制器(550)的图像信号处理系统(32),该闪光控制器(550)被设置成,利用传感器定时信号在目标图像帧开始之前启用闪光装置。在一个实施方式中,该闪光控制器(550)接收延迟传感器定时信号,并利用该延迟传感器定时信号来识别与前一帧的结束相对应的时间,将该时间增加垂直消隐时间,并接着减去第一偏移量以补偿该传感器定时信号与延迟传感器定时信号之间的延迟来确定闪光启用开始时间。接着,该闪光控制器(550)减去第二偏移量来确定闪光启用时间,由此确保在接收到目标帧的第一像素之前启用闪光。
文档编号G06T5/00GK102547302SQ201110305719
公开日2012年7月4日 申请日期2011年9月30日 优先权日2010年9月30日
发明者G·科泰, J·E·弗雷德里克森 申请人:苹果公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1