CN116783613A - 用于图像数据的组合的下采样和校正的电路 - Google Patents

用于图像数据的组合的下采样和校正的电路 Download PDF

Info

Publication number
CN116783613A
CN116783613A CN202180089666.7A CN202180089666A CN116783613A CN 116783613 A CN116783613 A CN 116783613A CN 202180089666 A CN202180089666 A CN 202180089666A CN 116783613 A CN116783613 A CN 116783613A
Authority
CN
China
Prior art keywords
pixels
downsampling
pixel
corrected
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202180089666.7A
Other languages
English (en)
Inventor
C·吴
D·R·波普
林昇
A·D·西尔弗斯坦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apple Inc
Original Assignee
Apple Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Apple Inc filed Critical Apple Inc
Publication of CN116783613A publication Critical patent/CN116783613A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4007Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4015Image demosaicing, e.g. colour filter arrays [CFA] or Bayer patterns
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof
    • H04N23/84Camera processing pipelines; Components thereof for processing colour signals
    • H04N23/88Camera processing pipelines; Components thereof for processing colour signals for colour balance, e.g. white-balance circuits or colour temperature control

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Image Processing (AREA)

Abstract

本发明公开一种用于图像中的色差的组合的下采样和校正的注视点下采样和校正(FDS‑C)电路。该FDS‑C电路使用下采样缩放因子和第一插值系数来执行对原始图像中的一颜色的像素的第一子集的像素值的下采样和插值,以生成该原始图像的第一校正版本中的该颜色的像素的第一校正像素值。该FDS‑C电路使用第二插值系数来进一步执行对该第一校正版本中的这些像素的第二子集的像素值的插值,以生成该原始图像的第二校正版本中的该颜色的像素的第二校正像素值。该第一子集中的像素布置在第一方向上,该第二子集中的像素布置在第二方向上,并且这些下采样缩放因子沿着该第一方向变化。

Description

用于图像数据的组合的下采样和校正的电路
相关申请的交叉引用
本申请要求2021年1月7日提交的美国实用专利申请号17/143,995的权益,该美国实用专利申请据此全文以引用方式并入。
背景技术
1.技术领域
本公开涉及用于处理图像数据的电路,并且更具体地涉及用于图像数据的组合的下采样和校正以校正捕获的图像中的色差的电路。
2.相关技术描述
由图像传感器捕获的图像数据或从其他数据源接收的图像数据通常在进一步处理或消耗之前在图像处理流水线中处理。例如,在提供给诸如视频编码器的后续部件之前,可校正、滤波或以其他方式修改原始图像数据。为了对捕获的图像数据执行校正或增强,可采用各种部件、单元级或模块。
可构造这样的图像处理管道,使得能够以有利的方式执行对捕获的图像数据的校正或增强,而不消耗其他系统资源。虽然可通过在中央处理单元(CPU)上执行软件程序来执行许多图像处理算法,但是在CPU上执行这些程序将消耗CPU和其他外围资源的大量带宽以及增加功耗。因此,图像处理管道通常被实现为与CPU分离的硬件部件,并且专用于执行一个或多个图像处理算法。
然而,图像处理管道没有考虑使用广角镜头(例如,鱼眼镜头)来生成图像数据。当使用广角镜头来生成图像数据时,具有不同波长的光的折射角发生变化,从而在图像传感器上将其自身表现为在红色、绿色和蓝色通道之间未对准的移位的焦点。因此,彩色边纹出现在从图像数据生成的全色图像的清晰且高对比度的边缘处。
发明内容
实施方案涉及一种图像处理器,该图像处理器包括用于校正由耦接到图像处理器的一个或多个图像传感器捕获的图像中的色差的注视点下采样和校正电路。注视点下采样和校正电路包括第一校正电路(例如,垂直注视点下采样和校正电路)和耦接到第一校正电路的第二校正电路(例如,水平校正电路)。第一校正电路使用第一下采样缩放因子和第一插值系数来执行对原始图像中的相同颜色的像素的第一子集的像素值的下采样和插值,以生成原始图像的第一校正版本中的相同颜色的像素的第一校正像素值。第一子集中的像素布置在第一方向(例如,垂直方向)上,第一下采样缩放因子沿着第一方向逐渐变化,并且第一插值系数对应于第一偏移值。第一偏移值表示从沿着第一方向的每个下采样像素位置到第一方向上的对应第一虚拟像素的第一距离。
第二校正电路接收第一校正版本的第一校正像素值,并且使用第二插值系数来执行对第一校正版本中的像素的第二子集的像素值的插值,以生成原始图像的第二校正版本中的相同颜色的像素的第二校正像素值。第二子集中的像素布置在垂直于第一方向的第二方向(例如,水平方向)上,并且第二插值系数对应于第二偏移值。第二偏移值表示从像素的第二子集到第二方向上的对应第二虚拟像素的第二距离。
在一些实施方案中,图像处理器还包括耦接到第二校正电路的下采样电路。下采样电路接收第二校正版本中的相同颜色的像素的第二校正像素值。下采样电路使用第二下采样缩放因子来执行第二校正版本的相同颜色的像素的子集的下采样,以生成原始图像的校正版本中的相同颜色的像素的校正像素值。子集中的像素布置在第二方向上,并且第二下采样缩放因子沿着第二方向逐渐变化。
附图说明
图1是根据一个实施方案的电子设备的高级图。
图2是示出根据一个实施方案的电子设备中的部件的框图。
图3是根据一个实施方案示出了使用图像信号处理器实现的图像处理管道的框图。
图4A是示出根据一个实施方案的纵向/轴向色差的概念图。
图4B是示出根据一个实施方案的侧向/横向色差的概念图。
图5是示出根据一个实施方案的由使用广角镜头的图像传感器生成的原始图像数据的概念图。
图6是示出根据一个实施方案的注视点下采样和校正电路的详细视图的框图。
图7A是示出根据一个实施方案的原始图像数据的组合的垂直注视点下采样和插值的概念图。
图7B是示出根据一个实施方案的原始图像数据的水平插值的概念图。
图8是示出根据一个实施方案的给定像素的像素邻域的图。
图9是示出根据一个实施方案的执行注视点下采样和校正以减少原始图像数据的彩色边纹的方法的流程图。
仅仅出于示例目的,附图描绘以及详细说明描述各种非限定性实施方案。
具体实施方式
现在将详细地参考实施方案,这些实施方案的示例在附图中示出。下面的详细描述中示出许多具体细节,以便提供对各种所描述的实施方案的充分理解。然而,可以在没有这些具体细节的情况下实施所述实施方案。在其他情况下,没有详细地描述众所周知的方法、过程、部件、电路和网络,从而不会不必要地使实施方案的各个方面晦涩难懂。
本公开的实施方案涉及图像处理器中的注视点下采样和校正电路,该电路用于校正由耦接到图像处理器的一个或多个图像传感器生成的捕获的图像中的色差。注视点下采样和校正电路包括垂直注视点下采样和校正电路以及耦接到垂直注视点下采样和校正电路的输出端的水平校正电路。垂直注视点下采样和校正电路在由一个或多个图像传感器生成的原始图像的垂直方向上执行组合的注视点下采样和色差恢复。垂直注视点下采样和校正电路生成原始图像的第一校正版本中的相同颜色的像素的第一校正像素值。水平校正电路从垂直注视点下采样和校正电路接收第一校正像素值,并且在原始图像的第一校正版本的水平方向上执行色差恢复。水平校正电路生成原始图像的第二校正版本中的相同颜色的像素的第二校正像素值,该第二校正版本与原始图像相比色差减小。
示例性电子设备
本文描述了电子设备、此类设备的用户界面和使用此类设备的相关联的进程的实施方案。在一些实施方案中,该设备为还包含其他功能诸如个人数字助理(PDA)和/或音乐播放器功能的便携式通信设备,诸如移动电话。便携式多功能设备的示例性实施方案包括但不限于来自Apple Inc.(Cupertino,California)的设备、iPod/>设备、Apple/>设备和/>设备。可选地使用其他便携式电子设备,诸如可穿戴设备、膝上型电脑或平板计算机。在一些实施方案中,该设备不是便携式通信设备,而是台式计算机或不是为便携式使用而设计的其他计算设备。在一些实施方案中,所公开的电子设备可包括触敏表面(例如,触摸屏显示器和/或触摸板)。下文结合图1描述的示例电子设备(例如,设备100)可包括用于接收用户输入的触敏表面。电子设备还可包括一个或多个其他物理用户接口设备,诸如物理键盘、鼠标和/或操纵杆。
图1是根据一个实施方案的电子设备100的高级图。设备100可包括一个或多个物理按钮,诸如“home”按钮或菜单按钮104。菜单按钮104例如用于导航到在设备100上执行的一组应用程序中的任何应用程序。在一些实施方案中,菜单按钮104包括识别菜单按钮104上的指纹的指纹传感器。指纹传感器能够被用来确定菜单按钮104上的手指是否具有与为解锁设备100存储的指纹匹配的指纹。另选地,在一些实施方案中,菜单按钮104被实现为触摸屏上显示的图形用户界面(GUI)中的软键。
在一些实施方案中,设备100包括触摸屏150、菜单按钮104、用于使设备开/关机和用于锁定设备的下压按钮106、音量调节按钮108、订户身份模块(SIM)卡槽110、耳麦插孔112和对接/充电外部端口124。下压按钮106可被用于通过压下该按钮并将该按钮保持在压下状态达预定义的时间间隔来对设备进行开关机;通过压下该按钮并在该预定义的时间间隔过去之前释放该按钮来锁定设备;和/或对设备进行解锁或发起解锁进程。在另选的实施方案中,设备100还通过麦克风113接受用于激活或去激活某些功能的语音输入。设备100包括各种部件,包括但不限于存储器(可包括一个或多个计算机可读存储介质)、存储器控制器、一个或多个中央处理单元(CPU)、外围设备接口、RF电路、音频电路、扬声器111、麦克风113、输入/输出(I/O)子系统和其他输入或控制设备。设备100可包括一个或多个图像传感器164、一个或多个接近传感器166,以及一个或多个加速度计168。设备100可包括多于一种类型的图像传感器164。每种类型可包括多于一个图像传感器164。例如,一种类型的图像传感器164可以是相机,并且另一种类型的图像传感器164可以是可用于面部识别的红外传感器。附加地或另选地,图像传感器164可与不同的镜头配置相关联。例如,设备100可包括后图像传感器,一个具有广角镜头并且另一个具有远摄镜头。设备100可包括图1中未示出的部件,诸如环境光传感器、点投影仪和泛光照明器。
设备100仅是电子设备的一个示例,并且设备100可具有比上文列出的更多或更少的部件,其中一些部件可组合成一个部件或具有不同的配置或布置。以上列出的设备100的各种部件体现为硬件、软件、固件或其组合,包括一个或多个信号处理和/或专用集成电路(ASIC)。虽然图1中的部件被示出为大致位于与触摸屏150相同的一侧上,但一个或多个部件也可位于设备100的相对侧上。例如,设备100的前侧可包括用于面部识别的红外图像传感器164和作为设备100的前相机的另一图像传感器164。设备100的后侧还可包括作为设备100的后相机的附加的两个图像传感器164。
图2是示出根据一个实施方案的设备100中的部件的框图。设备100可执行包括图像处理在内的各种操作。出于此目的和其他目的,设备100可包括图像传感器202、片上系统(SOC)部件204、系统存储器230、永久存储器(例如,闪存)228、取向传感器234和显示器216,以及其他部件。图2中所示的部件仅为例示性的。例如,设备100可包括图2中未示出的其他部件(诸如扬声器或麦克风)。另外,一些部件(诸如方向传感器234)可从设备100中省略。
图像传感器202是用于捕获图像数据的部件。图像传感器202中的每个图像传感器可体现为例如互补金属氧化物半导体(CMOS)有源像素传感器、相机、摄像机或其他设备。图像传感器202生成原始图像数据,其被发送到SOC部件204以进行进一步处理。在一些实施方案中,由SOC部件204处理的图像数据显示在显示器216上,存储在系统存储器230、永久存储器228中,或经由网络连接发送到远程计算设备。由图像传感器202生成的原始图像数据可以是Bayer滤色器阵列(CFA)模式(下文中也称为“Bayer模式”)。图像传感器202还可包括辅助图像感测部件(例如,像素)捕获图像的光学部件和机械部件。光学部件和机械部件可包括光圈、透镜系统和控制图像传感器202的焦距的致动器。
运动传感器234是用于感测设备100的运动的部件或一组部件。运动传感器234可生成指示设备100的取向和/或加速度的传感器信号。传感器信号被发送到SOC部件204以用于各种操作,诸如打开设备100或旋转显示器216上显示的图像。
显示器216是用于显示由SOC部件204生成的图像的部件。显示器216可包括例如液晶显示器(LCD)设备或有机发光二极管(OLED)设备。基于从SOC部件204接收的数据,显示器116可显示各种图像,诸如菜单、所选择的操作参数、由图像传感器202捕获并且由SOC部件204处理的图像,和/或从设备100的用户界面接收的其他信息(未示出)。
系统存储器230是用于存储由SOC部件204执行的指令以及用于存储由SOC部件204处理的数据的部件。系统存储器230可体现为任何类型的存储器,包括例如动态随机存取存储器(DRAM)、同步DRAM(SDRAM)、双倍数据速率(DDR、DDR2、DDR3等)RAMBUS DRAM(RDRAM)、静态RAM(SRAM)或其组合。在一些实施方案中,系统存储器230可以各种格式存储像素数据或其他图像数据或统计。
永久存储器228是用于以非易失性方式存储数据的部件。即使电力不可用,永久存储器228也保留数据。永久存储器228可体现为只读存储器(ROM)、闪存或其他非易失性随机存取存储器设备。
SOC部件204体现为一个或多个集成电路(IC)芯片并执行各种数据处理过程。SOC部件204可包括图像信号处理器(ISP)206、中央处理器单元(CPU)208、网络接口210、运动传感器接口212、显示控制器214、图形处理器(GPU)220、存储器控制器222、视频编码器224、存储控制器226和各种其他输入/输出(I/O)接口218等子部件、以及连接这些子部件的总线232。SOC部件204可包括比图2中所示的子部件更多或更少的子部件。
ISP 206是执行图像处理管道的各级的硬件。在一些实施方案中,ISP 206可从图像传感器202接收原始图像数据,并且将原始图像数据处理成SOC部件204的其他子部件或设备100的部件可用的形式。ISP 206可执行各种图像处理操作,诸如图像转译操作、水平和垂直缩放、颜色空间转换和/或图像稳定化变换,如下面参考图3详细描述的。
CPU 208可使用任何合适的指令集架构来实现,并且可被配置为执行在该指令集架构中定义的指令。CPU 208可以是使用各种指令集架构(ISA)中的任一者的通用或嵌入式处理器,诸如x86、PowerPC、SPARC、RISC、ARM或MIPS ISA,或任何其他合适的ISA。尽管图2中示出了单个CPU,但是SOC部件204可包括多个CPU。在多处理器系统中,每个CPU可共同实现相同的ISA,但不是必需的。
图形处理单元(GPU)220是用于执行图形数据的图形处理电路。例如,GPU 220可渲染要显示到帧缓冲器中的对象(例如,包括整个帧的像素数据的帧缓冲器)。GPU 220可包括一个或多个图形处理器,该图形处理器可执行图形软件以执行部分或全部的图形操作或某些图形操作的硬件加速。
I/O接口218是用于与设备100中的各种输入/输出部件交接的硬件、软件、固件或其组合。I/O部件可包括诸如键盘、按钮、音频设备和诸如全球定位系统的传感器之类的设备。I/O接口218处理用于将数据发送到此类I/O部件的数据或处理从这些I/O部件接收的数据。
网络接口210是支持经由一个或多个网络(例如,载体或代理设备)在设备100和其他设备之间交换数据的子部件。例如,视频或其他图像数据可经由网络接口210从其他设备接收并且被存储在系统存储器230中以用于后续处理(例如,经由诸如下文在图3中讨论的到图像信号处理器206的后端接口)和显示。网络可包括但不限于局域网(LAN)(例如,以太网或公司网络)和广域网(WAN)。经由网络接口210接收的图像数据可由ISP 206进行图像处理过程。
运动传感器接口212是用于与运动传感器234交接的电路。运动传感器接口212从运动传感器234接收传感器信息并且处理传感器信息以确定设备100的取向或移动。
显示控制器214是用于发送要在显示器216上显示的图像数据的电路。显示控制器214从ISP 206、CPU 208、图形处理器或系统存储器230接收图像数据,并将图像数据处理成适用于在显示器216上显示的格式。
存储器控制器222为用于与系统存储器230通信的电路。存储器控制器222可从系统存储器230读取数据以供ISP 206、CPU 208、GPU 220或SOC部件204的其他子部件处理。存储器控制器222还可将数据写入从SOC部件204的各种子部件接收的系统存储器230。
视频编码器224是硬件、软件、固件或它们的组合,用于将视频数据编码成适于存储在永久存储器228中的格式,或者用于将数据传递到网络接口210以通过网络传输到另一个设备。
在一些实施方案中,SOC部件204的一个或多个子部件或这些子部件的一些功能可由在ISP 206、CPU 208或GPU 220上执行的软件部件来执行。此类软件部件可存储在系统存储器230、永久存储器228或经由网络接口210与设备100通信的另一设备中。
图像数据或视频数据可流过SOC部件204内的各种数据路径。在一个示例中,可从图像传感器202生成并由ISP 206处理原始图像数据,然后经由总线232和存储器控制器222发送到系统存储器230。在图像数据存储在系统存储器230中之后,它可由视频编码器224访问以进行编码,或者由显示器116访问以通过总线232进行显示。
在另一个示例中,从图像传感器202以外的源接收图像数据。例如,视频数据可经由有线或无线网络流式传输、下载或以其他方式传送到SOC部件204。可以经由网络接口210接收图像数据并经由存储器控制器222将图像数据写入系统存储器230。然后,图像数据可由ISP 206从系统存储器230获得,并通过一个或多个图像处理管道级处理,如下面参考图3详细描述的。然后可将图像数据返回到系统存储器230或者将其发送到视频编码器224、显示控制器214(用于在显示器216上显示)或存储控制器226以便存储在永久存储器228中。
示例性图像信号处理管道
图3是根据一个实施方案示出了使用ISP 206实现的图像处理管道的框图。在图3的实施方案中,ISP 206耦接到图像传感器系统201,该图像传感器系统包括一个或多个图像传感器202A至202N(下文统称为“图像传感器202”或也单独地称为“图像传感器202”)以接收原始图像数据。图像传感器系统201可包括单独控制图像传感器202的一个或多个子系统。在一些情况下,每个图像传感器202可独立地操作,而在其他情况下,图像传感器202可共享一些部件。例如,在一个实施方案中,两个或更多个图像传感器202可共享控制图像传感器的机械部件(例如,改变每个图像传感器的焦距的致动器)的同一电路板。图像传感器202的图像感测部件可包括不同类型的图像感测部件,这些图像感测部件可以不同形式向ISP 206提供原始图像数据。例如,在一个实施方案中,图像感测部件可包括用于自动对焦的多个对焦像素和用于捕获图像的多个图像像素。在另一个实施方案中,图像感测像素可用于自动对焦和图像捕获目的两者。
ISP 206实现图像处理管道,该图像处理管道可包括从创建、捕获或接收到输出的处理图像信息的一组级。除了其他部件之外,ISP 206可包括传感器接口302、中央控制320、前端管道级330、后端管道级340、图像统计模块304、视觉模块322、后端接口342、输出接口316和自动对焦电路350A至350N(下文统称为“自动对焦电路350”或单独地称为“自动对焦电路350”)。ISP 206可包括图3中未示出的其他部件或者可省略图3中所示的一个或多个部件。
在一个或多个实施方案中,ISP 206的不同部件以不同的速率处理图像数据。在图3的实施方案中,前端管道级330(例如,原始处理级306和重采样处理级308)可以初始速率处理图像数据。因此,由这些前端管道级330以初始速率执行各种不同技术、调整、修改或其他处理操作。例如,如果前端管道级330每个时钟循环处理两个像素,则原始处理级306操作(例如,黑电平补偿、突出显示恢复和缺陷像素校正)可一次处理两个像素的图像数据。相比之下,一个或多个后端管道级340可以小于初始数据速率的不同速率处理图像数据。例如,在图3的实施方案中,可以降低的速率(例如,每个时钟循环一个像素)来处理后端管道级340(例如,噪声处理级310、颜色处理级312和输出重缩放314)。
由图像传感器202捕获的原始图像数据可以不同方式传输到ISP 206的不同部件。在一个实施方案中,与对焦像素的原始图像数据可被发送到自动对焦电路350,而对应于图像像素的原始图像数据可被发送到传感器接口302。在另一个实施方案中,对应于两种类型的像素的原始图像数据可同时被发送到自动对焦电路350和传感器接口302两者。
自动对焦电路350可包括分析原始图像数据以确定每个图像传感器202的适当焦距的硬件电路。在一个实施方案中,原始图像数据可包括从专门用于图像对焦的图像感测像素传输的数据。在另一个实施方案中,来自图像捕获像素的原始图像数据也可用于自动对焦目的。自动对焦电路350可执行各种图像处理操作以生成确定适当焦距的数据。图像处理操作可包括裁剪、合并、图像补偿、缩放以生成用于自动对焦目的的数据。由自动对焦电路350生成的自动对焦数据可被反馈到图像传感器系统201以控制图像传感器202的焦距。例如,图像传感器202可包括控制电路,该控制电路分析自动对焦数据以确定发送到与图像传感器202的镜头系统相关联的致动器的命令信号,从而改变图像传感器202的焦距。由自动对焦电路350生成的数据也可被发送到ISP 206的其他部件以用于其他图像处理目的。例如,可将一些数据发送到图像统计模块304以确定关于自动曝光的信息。
自动对焦电路350可以是与其他部件诸如图像统计模块304、传感器接口302、前端330和后端340分开的单独电路。这允许ISP 206独立于其他图像处理管道来执行自动对焦分析。例如,ISP 206可分析来自图像传感器202A的原始图像数据以使用自动对焦电路350A调整图像传感器202A的焦距,同时对来自图像传感器202B的图像数据执行下游图像处理。在一个实施方案中,自动对焦电路350的数量可对应于图像传感器202的数量。换句话讲,每个图像传感器202可具有专用于图像传感器202的自动对焦的对应自动对焦电路。即使一个或多个图像传感器202未处于主动使用中,设备100也可针对不同图像传感器202执行自动对焦。当设备100从一个图像传感器202切换到另一个图像传感器时,这允许两个图像传感器202之间的无缝过渡。例如,在一个实施方案中,设备100可包括广角相机和远摄相机作为用于照片和图像处理的双后置相机系统。设备100可显示由双相机中的一者捕获的图像,并且可不时地在两个相机之间切换。所显示的图像可从由一个图像传感器202捕获的图像数据无缝过渡到由另一个图像传感器202捕获的图像数据,而无需等待第二图像传感器202调整其焦距,因为两个或更多个自动对焦电路350可连续地向图像传感器系统201提供自动对焦数据。
由不同图像传感器202捕获的原始图像数据也可被传输到传感器接口302。传感器接口302从图像传感器202接收原始图像数据,并且将原始图像数据处理成可由管道中的其他级处理的图像数据。传感器接口302可执行各种预处理操作,诸如图像裁剪、合并或缩放以减小图像数据尺寸。在一些实施方案中,像素以光栅顺序(例如,水平地、逐行地)从图像传感器202发送到传感器接口302。管道中的后续处理也可以光栅顺序执行,并且结果也可以光栅顺序输出。尽管图3中仅示出了单个图像传感器201和单个传感器接口302,但是当在设备100中提供多于一个图像传感器时,可在ISP 206中提供对应数量的传感器接口以处理来自每个图像传感器的原始图像数据。
前端管道级330处理原始或全色域中的图像数据。前端管道级330可包括但不限于原始处理级306和重采样处理级308。例如,原始图像数据可以是Bayer原始图像格式。在Bayer原始图像格式中,在每个像素中提供专用于具体颜色(而不是所有颜色)的值的像素数据。在图像捕获传感器中,图像数据通常以Bayer模式提供。原始处理级306能够以Bayer原始图像格式处理图像数据。
原始处理级306执行的操作包括但不限于传感器线性化、黑电平补偿、固定模式噪声降低、缺陷像素校正、原始噪声滤波、镜头阴影校正、白平衡增益、突出显示恢复和色差恢复(或校正)。传感器线性化是指将非线性图像数据映射到线性空间以进行其他处理。黑电平补偿是指为图像数据的每个颜色分量(例如,Gr,R,B,Gb)独立地提供数字增益、偏移和限幅。固定模式噪声降低是指通过从输入图像中减去暗帧并将不同增益乘以像素来去除偏移固定模式噪声并获得固定模式噪声。缺陷像素校正是指检测缺陷像素,然后替换缺陷像素值。原始噪声滤波是指通过平均亮度相似的相邻像素来降低图像数据的噪声。突出显示恢复是指对从其他通道限幅(或接近限幅)的那些像素的像素值进行估计。镜头阴影校正是指对每像素施加增益来补偿与距离透镜光学中心的距离大致成比例的强度下降。白平衡增益是指为所有颜色分量(例如Bayer模式的Gr,R,B,Gb)独立地提供针对白平衡的数字增益、偏移和限幅。
原始处理级306中的注视点下采样和校正(FDS-C)电路307通过执行注视点下采样和像差校正来执行色差恢复。由FDS-C电路307执行的色差恢复是指校正由于图像传感器202中的广角镜头的使用而导致的原始图像数据中的色差,以生成原始图像。关于图6、图7A-图7B和图9提供了关于FDS-C电路307的结构和操作的细节。ISP 206的部件可将原始图像数据转换为全色域中的图像数据,因此,除了原始图像数据之外或代替原始图像数据,原始处理级306可处理全色域中的图像数据。
重采样处理级308执行各种操作以转换、重采样或缩放从原始处理级306接收的图像数据。由重采样处理级308执行的操作可包括但不限于去马赛克操作、每像素颜色校正操作、γ映射操作、颜色空间转换和缩小或子带分割。去马赛克操作是指将颜色缺失样本从原始图像数据(例如,在Bayer模式中)转换或插值成输出图像数据到全色域中。去马赛克操作可包括对内插样本进行的低通定向滤波以获得全色像素。每像素颜色校正操作是指使用关于每个颜色通道的相对噪声标准偏差的信息在每个像素的基础上执行颜色校正以校正颜色而不放大图像数据中的噪声的处理。γ映射是指将图像数据从输入图像数据值转换为输出数据值以执行γ校正。出于γ映射的目的,可使用针对每个像素的不同颜色分量或通道的查找表(或将像素值索引到另一值的其他结构)(例如,针对R,G和B颜色分量的单独查找表)。颜色空间转换是指将输入图像数据的颜色空间转换为不同的格式。在一个实施方案中,重采样处理级308将RGG格式转换为YCbCr格式以供进一步处理。在另一个实施方案中,重采样处理级308将RBD格式转换为RGB格式以供进一步处理。
中央控制模块320可控制和协调ISP 206中的其他部件的整体操作。中央控制模块320执行包括但不限于以下项的各种操作:监视各种操作参数(例如,记录时钟周期、存储器等待时间、服务质量和状态信息)、更新或管理ISP 206的其他部件的控制参数以及与传感器接口302交接以控制ISP 206的其他部件的开始和停止。例如,在ISP 206中的其他部件处于空闲状态时,中央控制模块320可更新其他部件的可编程参数。在更新可编程参数之后,中央控制模块320可将ISP 206的这些部件置于运行状态以执行一个或多个操作或任务。中央控制模块320还可指示ISP 206的其他部件在重采样处理级308之前、期间或之后存储图像数据(例如,通过写入图2中的系统存储器230)。以这种方式,除了处理从重采样处理级308通过后端管道级340输出的图像数据之外或代替处理从重采样处理级308通过后端管道级340输出的图像数据,可存储原始或全色域格式的全分辨率图像数据。
图像统计模块304执行各种操作以收集与图像数据相关联的统计信息。收集统计信息的操作可包括但不限于传感器线性化、替换图案化缺陷像素、子样本原始图像数据、检测和替换非图案化缺陷像素、黑电平补偿、镜头阴影校正和反相黑电平补偿。在执行一个或多个此类操作之后,可收集或跟踪统计信息诸如3A统计(自动白平衡(AWB)、自动曝光(AE))、直方图(例如,2D颜色或分量)和任何其他图像数据信息。在一些实施方案中,当先前的操作识别被限幅的像素时,某些像素的值或像素值的区域可从某些统计数据的集合中排除。尽管图3中仅示出了单个统计模块304,多个图像统计模块可包括在ISP 206中。例如,每个图像传感器202可对应于单独的图像统计模块304。在此类实施方案中,每个统计模块可由中央控制模块320编程,以收集相同或不同图像数据的不同信息。
视觉模块322执行各种操作以促进CPU 208处的计算机视觉操作,诸如图像数据中的人脸检测。视觉模块322可执行各种操作,包括预处理、全局色调映射和γ校正、视觉噪声滤波、尺寸调整、关键点检测,取向梯度直方图(HOG)和归一化互相关(NCC)的生成。如果输入图像数据不是YCrCb格式,则预处理可包括子采样或合并操作以及亮度计算。可对亮度图像上的预处理数据执行全局映射和γ校正。执行视觉噪声滤波以去除像素缺陷并减少图像数据中存在的噪声,从而改善后续计算机视觉算法的质量和性能。此类视觉噪声滤波可包括检测和固定点或缺陷像素,以及通过平均相似亮度的相邻像素来执行双边滤波以降低噪声。各种视觉算法使用不同尺寸和比例的图像。例如,通过合并或线性插值操作来执行图像的尺寸调整。关键点是图像内被非常适合于匹配同一场景或对象的其他图像的图像块包围的位置。此类关键点在图像对齐、计算相机姿势和对象跟踪方面很有用。关键点检测是指识别图像中的此类关键点的过程。HOG提供图像分析和计算机视觉中用于任务的图像块的描述。例如,可通过(i)使用简单的差分滤波器计算水平梯度和垂直梯度,(ii)根据水平梯度和垂直梯度计算梯度方向和量值,以及(iii)对梯度方向进行合并来生成HOG。NCC是计算图像块与内核之间的空间互相关的过程。
后端接口342从图像传感器102之外的其他图像源接收图像数据,并将其转发到ISP 206的其他部件以进行处理。例如,可通过网络连接接收图像数据并将其存储在系统存储器230中。后端接口342检索存储在系统存储器230中的图像数据,并将其提供给后端管道级340以进行处理。由后端接口342执行的许多操作之一是将检索的图像数据转换为可由后端处理级340使用的格式。例如,后端接口342可将RGB、YCbCr 4:2:0或YCbCr 4:2:2格式化的图像数据转换为YCbCr 4:4:4颜色格式。
后端管道级340根据特定的全色格式(例如,YCbCr 4:4:4或RGB)处理图像数据。在一些实施方案中,后端管道级340的部件可在进一步处理之前将图像数据转换为特定的全色格式。后端管道级340可包括噪声处理级310和颜色处理级312等其他级。后端管道级340可包括图3中未示出的其他级。
噪声处理级310执行各种操作以减少图像数据中的噪声。由噪声处理级310执行的操作包括但不限于颜色空间转换、γ/去γ映射、时间滤波、噪声滤波、亮度锐化和色度噪声降低。颜色空间转换可将图像数据从一种颜色空间格式转换为另一种颜色空间格式(例如,转换为YCbCr格式的RGB格式)。γ/去γ操作将图像数据从输入图像数据值转换为输出数据值以执行γ校正或反向γ校正。时间滤波使用先前滤波的图像帧来滤除噪声以减少噪声。例如,先前图像帧的像素值与当前图像帧的像素值组合。噪声滤波可包括例如空间噪声滤波。亮度锐化可锐化像素数据的亮度值,而色度抑制可将色度衰减为灰色(例如,没有颜色)。在一些实施方案中,亮度锐化和色度抑制可与空间噪声滤波同时进行。可针对图像的不同区域不同地确定噪声滤波的积极性。可包括空间噪声滤波作为实现时间滤波的时间循环的一部分。例如,先前的图像帧可以在被存储为用于待处理的下一个图像帧的参考帧之前由时间滤波器和空间噪声滤波器处理。在其他实施方案中,空间噪声滤波可不被包括作为用于时间滤波的时间循环的一部分(例如,空间噪声滤波器可以在图像帧被存储为参考图像帧之后应用于图像帧,并且因此不对参考帧进行空间滤波)。
颜色处理级312可执行与调整图像数据中的颜色信息相关联的各种操作。在颜色处理级312中执行的操作包括但不限于局部色调映射、增益/偏移/限幅、颜色校正、三维颜色查找、γ转换和颜色空间转换。局部色调映射指的是空间变化的局部色调曲线,以便在渲染图像时提供更多控制。例如,色调曲线的二维网格(其可由中央控制模块320编程)可以是双线性插值的,使得在图像上产生平滑变化的色调曲线。在一些实施方案中,局部色调映射还可应用空间变化和强度变化的颜色校正矩阵,其可例如用于使天空更蓝,同时在图像中的阴影中调低蓝色。可为每个颜色通道或图像数据的分量提供数字增益/偏移/限幅。颜色校正可将颜色校正变换矩阵应用于图像数据。3D颜色查找可利用颜色分量输出值的三维阵列(例如,R,G,B)来执行高级色调映射、颜色空间转换和其他颜色变换。例如,可通过将输入图像数据值映射到输出数据值来执行γ转换,以便执行γ校正、色调映射或直方图匹配。可以实现颜色空间转换以将图像数据从一个颜色空间转换为另一个颜色空间(例如,RGB到YCbCr)。其他处理技术也可以作为颜色处理级312的一部分来执行,以执行其他特殊图像效果,包括黑白转换、棕褐色调转换、负转换或曝光转换。
当ISP 206处理图像数据时,输出重缩放模块314可即时重采样、变换和校正失真。输出重缩放模块314可以计算每个像素的分数输入坐标,并且使用该分数坐标来经由多相重采样滤波器内插输出像素。可以从输出坐标的多种可能的变换产生分数输入坐标,诸如对图像调整尺寸或裁剪(例如,经由简单的水平和垂直缩放变换)、旋转和剪切图像(例如,经由不可分离的矩阵变换)、透视翘曲(例如,经由附加的深度变换)以及以条纹状分段施加的每像素透视分割以说明图像数据捕获期间(例如,由于卷帘式快门所引起的)的图像传感器中的变化的原因,以及几何失真校正(例如,经由计算距光学中心的径向距离以便索引内插的径向增益表,并且将径向扰动施加于坐标以说明径向透镜失真的原因)。
当在输出重缩放模块314处处理图像数据时,输出重缩放模块314可将变换应用于图像数据。输出重缩放模块314可包括水平缩放部件和垂直缩放部件。该设计的垂直部分可实现一系列图像数据行缓冲器以保持该垂直滤波器所需的“支持”。由于ISP 206可以是流设备,因此可能只有行的有限长度滑动窗口中的图像数据行可供滤波器使用。一旦行被丢弃来为新进来的行腾出空间,则该行可能不可用。输出重缩放模块314可统计地监视先前行上的计算输入Y坐标,并使用它来计算要保持在垂直支持窗中的一组最佳行。对于每个后续行,输出重缩放模块可自动生成关于垂直支持窗的中心的猜测。在一些实施方案中,输出重缩放模块314可实现被编码为数字差分分析器(DDA)步进器的分段透视变换表,以在输入图像数据和输出图像数据之间执行每像素透视变换,以便校正在图像帧的捕获期间由传感器运动引起的伪像和运动。如上文关于图1和图2所讨论,输出重缩放可以经由输出接口316将图像数据提供到设备100的各种其他部件。
在各种实施方案中,部件302到350的功能可以与图3中所示的图像处理管道中的这些功能单元的顺序所暗含的顺序不同的顺序执行或者可由与图3中所示的功能部件不同的功能部件来执行。此外,如图3中所描述的各种部件可以硬件、固件或软件的各种组合来体现。
色差恢复
通常,色差是由于镜头不能将不同波长的光(例如,不同颜色的光)聚焦到相同焦点而引起的。图4A示出纵向(例如,轴向)色差的示例。如图4A所示,广角镜头402折射光404,使得不同波长的光(例如,红光、绿光和蓝光)沿着光轴408聚焦在距广角镜头402不同的距离处(例如,距焦平面406不同的距离处)。图4B示出根据一个实施方案的侧向(例如,横向)色差。如图4B所示,广角镜头410折射光412,使得不同波长的光(例如,红光、绿光和蓝光)聚焦在焦平面414上的不同位置处(例如,距光轴416不同的距离处)。如关于图4A和图4B所描述的由于使用广角镜头402、410而引起的色差将其自身表现为全色图像中的边缘处的彩色边纹。
图5示出根据一个实施方案的使用由图像传感器202使用广角镜头402捕获的光404生成的原始图像数据。如图5所示,原始图像数据呈Bayer模式502。Bayer图案502包括红-绿像素和绿-蓝像素的交替行。一般来讲,由于人眼对绿光比对红光和蓝光两者更加敏感,因此Bayer模式502包括比红色或蓝色像素更多的绿色像素。
示例性注视点下采样和校正电路
图6是示出根据一个实施方案的注视点下采样和校正(FDS-C)电路307的详细视图的框图。FDS-C电路307校正由一个或多个图像传感器202生成的原始图像602中的色差。具体地,FDS-C电路307在原始图像602的第一方向(例如,垂直方向)上执行组合的注视点下采样和色差恢复以生成原始图像的第一校正版本的第一校正像素值632。FDS-C电路307进一步在原始图像的第一校正版本的第二方向(例如,水平方向)上执行色差恢复,以生成原始图像的色差减小的第二校正版本的第二校正像素值636。在一个或多个实施方案中,原始图像602呈Bayer模式并且由至少一个图像传感器202使用至少一个广角镜头生成,如关于图5所描述的。由于利用至少一个广角镜头来生成原始图像602,因此从原始图像602直接生成的全色图像将包括色差。通过使用第二校正版本的第二校正的像素值636来生成全色图像而不是原始图像602,全色图像中的色差得以减小。
在一个实施方案中,FDS-C电路307包括像素定位器电路603、下采样缩放因子查找表(LUT)604、注视点下采样定位器电路608、偏移LUT 612、偏移插值器电路616、垂直相位LUT 622、水平相位LUT 624、垂直注视点下采样和校正电路630以及水平校正电路634。附加地,FDS-C电路307耦接到水平注视点下采样和缩放器电路648。在其他实施方案中,FDS-C电路307可具有比图6所示更多或更少的电路和LUT。例如,水平注视点下采样和缩放器电路648可以是FDS-C电路307的一部分。
下采样缩放因子LUT 604存储由图像(例如,原始图像602)的第一方向(例如,垂直方向)上的位置索引的下采样缩放因子。下采样缩放因子LUT 604接收与沿着原始图像602中的第一方向的对应像素的位置有关的索引信息605。沿着原始图像602中的第一方向的对应像素的索引信息605由像素定位器电路603提取。在接收到索引信息605时,下采样缩放因子LUT 604输出对应下采样缩放因子606,该下采样缩放因子被传递到注视点下采样像素定位器电路608上。
注视点下采样定位器电路608从下采样缩放因子LUT 604接收下采样缩放因子606,并且计算沿着原始图像602的第一方向的下采样像素位置610(例如,下采样着陆点)。将关于由注视点下采样定位器电路608计算的下采样像素位置610的信息提供给偏移LUT612。
偏移LUT 612存储预先计算的水平和垂直偏移值的网格。特定像素的水平偏移值和垂直偏移值分别表示到虚拟像素的水平距离和垂直距离,该虚拟像素的像素值对应于没有任何色差的情况下该特定像素的像素值。该网格包括具有多个像素偏移值的多个网格点。网格中的预先计算的偏移值可与对应图像传感器202的光学配置(例如,使用特定广角镜头)相关联。因此,偏移LUT 612可存储各自与不同图像传感器202相关联的不同偏移值集合。在一个或多个实施方案中,网格比Bayer模式502的像素的布置粗糙。特定像素位置可与一个或多个网格点相关联并且包括四个像素偏移值:红色像素的水平像素偏移值、红色像素的垂直像素偏移值、蓝色像素的水平偏移值以及蓝色像素的垂直偏移值。绿色像素的水平偏移值和绿色像素的垂直偏移值可被设定为零。
在接收到关于原始图像602的第一方向上的下采样像素位置610的信息时,偏移LUT 612可将对应垂直偏移值614提供给偏移插值器电路616。此外,偏移LUT 612可基于关于布置在垂直于第一方向的第二方向(例如,水平方向)上的原始图像602的像素的子集的位置的信息来将对应水平偏移值614提供给偏移插值器电路616。
偏移插值器电路616耦接到偏移LUT 612并且从偏移LUT 612接收预先计算的水平和垂直偏移值614。在一个实施方案中,偏移插值器电路616计算原始图像602中所包括的像素的子集(例如,蓝色和红色像素)的水平和垂直偏移值。具体地,偏移插值器电路616通过对预先计算的垂直偏移值614执行插值来计算蓝色或红色像素的第一偏移值618(例如,垂直偏移值)。此外,偏移插值器电路616通过对围绕蓝色或红色像素的网格点的预先计算的垂直偏移值执行插值来计算蓝色或红色像素的第二偏移值620(例如,水平偏移值),如下面参考图8所描述的。也就是说,针对原始图像602中的每个红色或蓝色像素,偏移插值器电路616计算像素的红色通道的水平像素偏移、像素的红色通道的垂直像素偏移值、像素的蓝色通道的水平像素偏移以及像素的蓝色通道的垂直像素偏移值。在一个或多个实施方案中,偏移插值器电路616不计算像素的绿色通道的垂直和水平像素偏移(例如,绿色通道的垂直和水平像素偏移为零)。然而,在一个或多个其他实施方案中,偏移插值器电路616还可计算像素的绿色通道的水平像素偏移和像素的绿色通道的垂直像素偏移值。一般来讲,当计算两个颜色通道的水平和垂直像素偏移时,不计算剩余颜色通道(RGB)的水平和垂直像素偏移。
图7A示出根据一个实施方案的基于针对原始图像602中所包括的像素的子集的红色通道的垂直偏移像素校正的垂直注视点下采样和插值。由于垂直方向上的色差,由图像传感器202捕获的红色像素P2(作为Bayer模式502的一部分)的像素值不准确。使用下采样像素位置702处的虚拟像素706的像素值来获得该位置处的校正像素值(例如,第一校正像素值632),该虚拟像素是通过将下采样像素位置702(如果不存在由于色差引起的焦点的水平移位)垂直地偏移距离704(例如,负垂直像素偏移)而获得的。因此,校正像素值在下采样像素位置702处生成并且从垂直注视点下采样和校正电路630输出作为第一校正像素值632。类似地,对于正垂直像素偏移,使用下采样像素位置712处的虚拟像素716的像素值来获得该位置处的校正像素值(例如,第一校正像素值632),该虚拟像素是通过将下采样像素位置712垂直地偏移距离714(例如,正垂直像素偏移)而获得的。因此,校正像素值在下采样像素位置712处生成并且从垂直注视点下采样和校正电路630输出作为第一校正像素值632。
如下面将进一步描述的,第一偏移值704(或第一偏移值714)用作获得双线性或双三次插值的相位值的参数(例如,等于从虚拟像素706的位置到红色像素P2的位置的距离,并且类似地等于从虚拟像素716的位置到红色像素P2的位置的距离)。相位值用于获得用于在垂直方向上的相邻红色像素P0、P1、P2和P3的像素值的双线性或双三次插值的插值系数,以计算虚拟像素706(或虚拟像素716)的像素值。虚拟像素706的所计算像素值(或虚拟像素716的所计算像素值)接着变成在下采样像素位置702处(或在下采样像素位置712处)从垂直注视点下采样和校正电路630输出的第一校正像素值632。对所有红色像素执行像素值和像素位置的此类校正以考虑垂直色差和/或垂直注视点下采样。像素的蓝色通道也以与图7A所示的像素的红色通道类似的方式校正它们的垂直偏移。
图7B示出根据一个实施方案的基于针对像素的子集的红色通道的水平偏移像素校正的水平插值。图7B中的红色像素具有使用垂直偏移校正的像素值,如上文参考图7A所解释。针对垂直色差校正的红色像素P6的像素值不考虑水平色差。为了考虑水平色差,用虚拟像素726(或虚拟像素736)的像素值替换像素P6的像素值,该虚拟像素对于负水平像素偏移从像素P6的位置722水平偏移距离724(或第二偏移值)或对于正水平像素偏移水平偏移距离734(或第二偏移值)。如下面将进一步描述的,第二偏移值724(或第二偏移值734)用作对水平方向上的相邻像素P4、P5、P6和P7的像素值进行插值的参数。跨所有红色像素执行此类替换以校正水平色差。像素的蓝色通道也以与图7B所示的像素的红色通道类似的方式校正它们的水平偏移。
图8示出根据一个实施方案的围绕给定像素802的网格点GP0至GP3。如上所述,网格点GP0至GP3中的每个网格点具有红色和蓝色像素的存储在偏移LUT 612中的相关联垂直和水平偏移值。如果像素802是红色像素,则偏移插值器电路616对红色像素的四个网格点GP0至GP3的四个垂直偏移值执行双线性插值或双三次插值,并且生成红色像素的插值垂直偏移值618。偏移插值器电路616还对红色像素的四个网格点GP0至GP3的四个水平偏移值执行双线性插值或双三次插值,并且生成红色像素的插值水平偏移值620。如果像素802是蓝色像素,则偏移插值器电路616对蓝色像素的四个网格点GP0至GP3的四个垂直偏移值执行双线性插值或双三次插值,并且生成蓝红色像素的插值垂直偏移值(或第一偏移值)618,并且对蓝色像素的四个网格点GP0至GP3的四个水平偏移值执行双线性插值或双三次插值,并且生成蓝色像素的插值水平偏移值(或第二偏移值)620。
返回参考图6,偏移插值器电路616基于下采样像素位置610和预先计算的垂直偏移值614将原始图像602中的每个像素的红色和蓝色通道的第一偏移值618(例如,垂直像素偏移值)提供给垂直相位LUT 622。偏移插值器电路616进一步基于预先计算的水平偏移值614将红色和蓝色通道的第二偏移值620(例如,水平像素偏移值)提供给水平相位LUT 624。在一个实施方案中,垂直相位LUT 622存储第一(例如,垂直)方向上的多个相位的插值系数(例如,双三次或双线性插值系数)的表,其中每个相位具有一组系数(例如,插值系数C0、C1、C2和C3)。类似地,水平相位LUT 624存储第二(例如,水平)方向上的多个相位的插值系数(例如,双三次或双线性插值系数)的表,其中每个相位具有一组系数(例如,插值系数C4、C5、C6和C7)。插值系数的每个表是预先计算的,并且与和偏移LUT 612相关联的相同广角镜头相关联。
垂直相位LUT 622使用针对每个像素的红色和蓝色通道计算的第一偏移值618(例如,垂直像素偏移)来定义第一(例如,垂直)方向上的双线性或双三次插值的相位。类似地,水平相位LUT 624使用针对每个像素的红色和蓝色通道计算的第二偏移值620(例如,水平像素偏移)来定义第二(例如,水平)方向上的双线性或双三次插值的相位。第一(例如,垂直)和第二(例如,水平)方向中的每个方向上的相位用作相应垂直相位LUT 622和水平相位LUT 624中的其相应一组系数的索引。
垂直相位LUT 622标识与具体颜色通道的第一偏移值618相关联的第一插值系数626,并且将第一插值系数626提供给垂直注视点下采样和校正电路630。类似地,水平相位LUT 624标识与具体颜色通道的第二偏移值620相关联的第二插值系数628,并且将第二插值系数628提供给水平校正电路634。
垂直注视点下采样和校正电路630在原始图像602的第一(例如,垂直)方向上执行组合的注视点下采样和色差恢复。垂直注视点下采样和校正电路630计算具有相对于原始图像602在第一方向上校正的色差的校正像素值632。在一个实施方案中,垂直注视点下采样和校正电路630使用插值来计算具体颜色的像素值的垂直下采样和校正版本(Pv),即,
Pv=C0P0+C1P1+C2P2+C3P3, (1)
其中P0至P3表示位于原始图像602的相同列中并且最接近对应于值被校正以考虑垂直色差和/或垂直注视点下采样的像素的虚拟像素的四个像素的像素值,并且C0至C3是第一插值系数626。
为了计算具体颜色的像素的垂直校正像素值632,垂直注视点下采样和校正电路630从垂直相位LUT 622获得第一插值系数626,即从垂直相位LUT 622检索对应于第一偏移值618的第一插值系数626(例如,一组插值系数C0、C1、C2和C3)。第一偏移值618表示从每个下采样像素位置610(或下采样像素位置702)到第一方向上的对应虚拟像素(例如,虚拟像素706)的第一距离(例如,距离704)。使用第一偏移值618和第一插值系数626,垂直注视点下采样和校正电路630使用等式(1)来计算最接近虚拟像素的像素的具体颜色通道的校正像素值632。校正像素值632替换第一方向上的下采样像素位置610处的具体颜色通道的原始像素值。
水平校正电路634计算相对于原始图像602色差在第二(例如,水平)方向上校正的具体颜色通道的像素值636。在一个实施方案中,水平校正电路634使用插值来计算像素值636的水平校正版本(Ph),即,
Ph=C4P4+C5P5+C6P6+C7P7 (2)
其中P4至P7表示位于相同行中并且最接近对应于值被校正以考虑水平色差的像素的虚拟像素的四个像素的像素值,并且C4至C7是第二插值系数628。
为了计算具体颜色的像素的水平校正像素值636,水平校正电路634从水平相位LUT 624获得第二插值系数628,即从水平相位LUT 624检索对应于第二偏移值620的第二插值系数628(例如,一组系数C4、C5、C6和C7)。第二偏移值620表示从像素位置(例如,像素P6的位置)到第二方向上的对应虚拟像素(例如,虚拟像素726)的第二距离(例如,距离724)。使用第二偏移值620和第二插值系数628,水平校正电路634使用等式(2)来计算最接近虚拟像素的像素的具体颜色通道的校正像素值636。由于水平校正电路634不执行下采样,因此校正像素值636在垂直校正像素值632的相同像素位置处替换对应垂直校正像素值632。
来自原始图像602的像素的校正像素值636表示在垂直和水平方向上以减轻的色差垂直下采样的第二校正原始图像636。图像信号处理器206可使用第二校正的原始图像636来生成色差减小的全色图像。
水平注视点下采样和缩放器电路648耦接到FDS-C电路307的输出端。水平注视点下采样和缩放器电路648接收第二校正的原始图像636的像素值,并且对第二校正的原始图像636的像素值执行水平注视点下采样和缩放。
下采样缩放因子LUT 640存储由图像(例如,校正的原始图像636)的第二方向(例如,水平方向)上的位置索引的第二下采样缩放因子。下采样缩放因子LUT 640接收与第二校正的原始图像636中沿着第二方向的对应像素的位置有关的索引信息638。第二校正的原始图像636中沿着第二方向的对应像素的索引信息638由像素定位器电路637提取。在接收到索引信息638时,下采样缩放因子LUT 640输出对应第二下采样缩放因子642,该第二下采样缩放因子被传递到注视点下采样定位器电路644上。
注视点下采样定位器电路644从下采样缩放因子LUT 640接收下采样缩放因子642,并且计算沿着第二校正的原始图像636的第二方向的下采样像素位置646(例如,下采样着陆点)。将关于由注视点下采样定位器电路644计算出的下采样像素位置646的信息提供给水平注视点下采样和缩放器电路648。
水平注视点下采样和缩放器电路648使用沿着第二方向逐渐变化的第二下采样缩放因子642执行对布置在第二方向上的第二校正原始图像636的相同颜色的像素的子集的下采样,以生成校正原始图像650中的相同颜色的像素的校正像素值。校正原始图像650的校正像素值替换下采样像素位置646处的具体颜色通道的像素值636。
注视点下采样和校正电路的示例性过程
图9是示出根据一个实施方案的通过图像处理器(例如,图像信号处理器206)执行注视点下采样和校正以减少原始图像数据的彩色边纹的方法的流程图。图像处理器使用下采样缩放因子(例如,第一下采样缩放因子606)和第一插值系数(例如,第一插值系数626)来执行902(例如,通过垂直注视点下采样和校正电路630)对原始图像中相同颜色的像素的第一子集(例如,原始图像602的像素)的像素值的组合的垂直注视点下采样和插值,以生成原始图像的第一校正版本中的相同颜色的像素的第一校正像素值(例如,校正像素值632)。第一子集中的像素布置在第一方向(例如,垂直方向)上,下采样缩放因子沿着第一方向逐渐变化,并且第一插值系数对应于第一偏移值(例如,第一偏移值618)。
第一偏移值表示从沿着第一方向的每个下采样像素位置(例如,每个下采样像素位置610、702、712)到第一方向上的对应第一虚拟像素(例如,虚拟像素706、716)的第一距离(例如,距离704、714)。图像处理器通过使用下采样缩放因子中的对应下采样缩放因子和第一插值系数的对应子集对原始图像的相同列中的多个像素进行下采样和插值来生成(例如,通过垂直注视点下采样和校正电路630)第一校正版本中的像素的第一校正像素值中的一个第一校正像素值。
图像处理器接收904(例如,通过水平校正电路634)第一校正版本的第一校正像素值(例如,校正像素值632)。图像处理器使用第二插值系数(例如,第二插值系数628)来执行906(例如,通过水平校正电路634)对第一校正版本中的像素的第二子集的像素值的插值,以生成原始图像的第二校正版本中的相同颜色的像素的第二校正像素值(例如,校正像素值636)。第二子集中的像素布置在垂直于第一方向的第二方向(例如,水平方向)上,并且第二插值系数对应于第二偏移值(例如,第二偏移值620)。
第二偏移值表示从像素的第二子集到第二方向上的对应第二虚拟像素(例如,虚拟像素726、736)的第二距离(例如,距离724、734)。图像处理器通过使用第二插值系数的对应子集对第一校正版本的相同行中的多个像素进行插值来生成(例如,通过水平校正电路634)第二校正版本中的像素的第二校正像素值中的一个第二校正像素值。
像素的第一子集在具有Bayer模式的原始图像的相同列中,并且像素的第二子集在具有Bayer模式的原始图像的第一校正版本的相同行中。每个下采样缩放因子的值取决于原始图像的沿着第一方向的相同列中的多个像素的位置,该多个像素用于下采样和插值以生成第一校正版本中的像素的对应校正像素值。在一些实施方案中,下采样缩放因子基于分段固定缩放(例如,下采样缩放因子可被划分成多达五个不同区域)、曲率连续缩放、线性连续缩放、某一其他缩放或它们的组合而沿着第一方向逐渐变化。在一个或多个实施方案中,下采样缩放因子的一个或多个部分在第一方向上的每个定义的下采样像素位置处按比例缩小,并且下采样缩放因子的一个或多个其他部分在第一方向上的每个定义的下采样像素位置处按比例增大。
图像处理器可进一步对第二校正版本中的相同颜色的像素的第二校正像素值(例如,校正像素值636)执行(例如,通过水平注视点下采样和缩放器电路648)水平注视点下采样和缩放。图像处理器可使用第二下采样缩放因子(例如,第二下采样缩放因子642)来执行第二校正版本的相同颜色的像素的子集的下采样,以生成原始图像(例如,校正的原始图像650)的校正版本中的相同颜色的像素的校正像素值)。子集中的像素布置在第二(例如,水平)方向上,并且第二下采样缩放因子沿着第二方向逐渐变化。
上文参考图9所述的过程的实施方案仅仅是例示性的。此外,可修改或省略该过程的顺序。
虽然已经说明和描述了具体的实施方案和应用,但是应当理解,本发明不限于本文所公开的精确构造和部件以及,并且在不脱离本公开的实质和范围的情况下,可对本文所公开的方法和装置的布置、操作和细节进行对本领域的技术人员将显而易见的各种修改、改变和变型。

Claims (20)

1.一种图像处理器,包括:
第一校正电路,所述第一校正电路被配置为使用第一下采样缩放因子和第一插值系数来执行对原始图像中的相同颜色的像素的第一子集的像素值的下采样和插值,以生成所述原始图像的第一校正版本中的所述相同颜色的像素的第一校正像素值,所述像素的第一子集布置在第一方向上,所述第一下采样缩放因子沿着所述第一方向逐渐变化,并且所述第一插值系数对应于第一偏移值;以及
第二校正电路,所述第二校正电路耦接到所述第一校正电路,所述第二校正电路被配置为:
接收所述第一校正版本的所述第一校正像素值,并且
使用第二插值系数来执行对所述第一校正版本中的所述像素的第二子集的像素值的插值,以生成所述原始图像的第二校正版本中的所述相同颜色的像素的第二校正像素值,所述像素的第二子集布置在垂直于所述第一方向的第二方向上,并且所述第二插值系数对应于第二偏移值。
2.根据权利要求1所述的图像处理器,其中:
所述第一偏移值表示从沿着所述第一方向的每个下采样像素位置到所述第一方向上的对应第一虚拟像素的第一距离,并且
所述第二偏移值表示从所述像素的第二子集到所述第二方向上的对应第二虚拟像素的第二距离。
3.根据权利要求1所述的图像处理器,其中所述第一校正电路被进一步配置为通过使用所述第一下采样缩放因子中的对应第一下采样缩放因子和所述第一插值系数的对应子集对所述原始图像的相同列中的多个像素进行下采样和插值,来生成所述第一校正版本中的像素的所述第一校正像素值中的一个第一校正像素值。
4.根据权利要求1所述的图像处理器,其中所述第二校正电路被进一步配置为通过使用所述第二插值系数的对应子集对所述第一校正版本的相同行中的多个像素进行插值,来生成所述第二校正版本中的像素的所述第二校正像素值中的一个第二校正像素值。
5.根据权利要求1所述的图像处理器,其中所述像素的第一子集在具有Bayer模式的所述原始图像的相同列中,并且所述像素的第二子集在具有Bayer模式的所述原始图像的所述第一校正版本的相同行中。
6.根据权利要求1所述的图像处理器,其中每个第一下采样缩放因子的值取决于所述原始图像的相同列中沿着所述第一方向的多个像素的位置,所述多个像素用于下采样和插值以生成所述第一校正版本中的像素的对应第一校正像素值。
7.根据权利要求1所述的图像处理器,其中所述第一下采样缩放因子基于分段固定缩放、曲率连续缩放或线性连续缩放而沿着所述第一方向逐渐变化。
8.根据权利要求1所述的图像处理器,其中:
所述第一下采样缩放因子的一个或多个部分在所述第一方向上的每个定义的下采样像素位置处逐渐按比例缩小,并且
所述第一下采样缩放因子的一个或多个其他部分在所述第一方向上的每个定义的下采样像素位置处逐渐按比例增大。
9.根据权利要求1所述的图像处理器,还包括:
下采样和像素定位器电路,所述下采样和像素定位器电路被配置为基于所述第一下采样缩放因子中的对应第一下采样缩放因子来确定所述第一方向上的每个下采样像素位置。
10.根据权利要求1所述的图像处理器,还包括:
偏移插值器电路,所述偏移插值器电路被配置为通过至少执行对与和所述原始图像中的所述像素相邻的网格点相关联的预定第一偏移值和预定第二偏移值的双线性插值或双三次插值来确定所述原始图像输入数据中的所述像素的所述第一偏移值和所述第二偏移值。
11.根据权利要求10所述的图像处理器,还包括:
偏移查找表,所述偏移查找表被配置为存储与所述网格点相关联的所述预定第一偏移值和所述预定第二偏移值;
第一相位查找表,所述第一相位查找表被配置为存储由所述第一距离或从所述第一距离导出的第一参数索引的所述第一插值系数;以及
第二相位查找表,所述第二相位查找表被配置为存储由所述第二距离或从所述第二距离导出的第二参数索引的所述第二插值系数。
12.根据权利要求1所述的图像处理器,还包括:下采样电路,所述下采样电路耦接到所述第二校正电路,所述下采样电路被配置为:
接收所述第二校正版本中的所述相同颜色的像素的所述第二校正像素值,并且
使用第二下采样缩放因子来执行对所述第二校正版本的所述相同颜色的所述像素的子集的下采样,以生成所述原始图像的校正版本中的所述相同颜色的像素的校正像素值,所述像素的子集布置在所述第二方向上,并且所述第二下采样缩放因子沿着所述第二方向逐渐变化。
13.根据权利要求1所述的图像处理器,其中所述原始图像中的所述像素包括呈红色、绿色和蓝色的像素,并且其中所述颜色中的两种颜色的像素的像素值由所述第二校正电路更新,并且所述颜色中的剩余一种颜色的像素的像素值不由所述第二校正电路更新。
14.一种方法,包括:
使用第一下采样缩放因子和第一插值系数来执行对原始图像中的相同颜色的像素的第一子集的像素值的下采样和插值,以生成所述原始图像的第一校正版本中的所述相同颜色的像素的第一校正像素值,所述像素的第一子集布置在第一方向上,所述第一下采样缩放因子沿着所述第一方向逐渐变化,并且所述第一插值系数对应于第一偏移值;以及
使用第二插值系数来执行对所述第一校正版本中的所述像素的第二子集的像素值的插值,以生成所述原始图像的第二校正版本中的所述相同颜色的像素的第二校正像素值,所述像素的第二子集布置在垂直于所述第一方向的第二方向上,并且所述第二插值系数对应于第二偏移值。
15.根据权利要求14所述的方法,其中:
所述第一偏移值表示从沿着所述第一方向的每个下采样像素位置到所述第一方向上的对应第一虚拟像素的第一距离,并且
所述第二偏移值表示从所述像素的第二子集到所述第二方向上的对应第二虚拟像素的第二距离,并且所述方法还包括:
通过使用所述第一下采样缩放因子中的对应第一下采样缩放因子和所述第一插值系数的对应子集对所述原始图像的相同列中的多个像素进行下采样和插值,来生成所述第一校正版本中的像素的所述第一校正像素值中的一个第一校正像素值;以及
通过使用所述第二插值系数的对应子集对所述第一校正版本的相同行中的多个像素进行插值来生成所述第二校正版本中的像素的所述第二校正像素值中的一个第二校正像素值。
16.根据权利要求14所述的方法,其中每个第一下采样缩放因子的值取决于所述原始图像的相同列中沿着所述第一方向的多个像素的位置,所述多个像素用于下采样和插值以生成所述第一校正版本中的像素的对应第一校正像素值。
17.根据权利要求14所述的方法,还包括:
基于所述第一下采样缩放因子中的对应第一下采样缩放因子来确定沿着所述第一方向的每个下采样像素位置。
18.一种系统,包括:
至少一个图像传感器,所述至少一个图像传感器被配置为捕获原始图像;以及
图像处理器,所述图像处理器耦接到所述至少一个图像传感器,所述图像处理器包括:
第一校正电路,所述第一校正电路被配置为使用第一下采样缩放因子和第一插值系数来执行对原始图像中的相同颜色的像素的第一子集的像素值的下采样和插值,以生成所述原始图像的第一校正版本中的所述相同颜色的像素的第一校正像素值,所述像素的第一子集布置在第一方向上,所述第一下采样缩放因子沿着所述第一方向逐渐变化,并且所述第一插值系数对应于第一偏移值;以及
第二校正电路,所述第二校正电路耦接到所述第一校正电路,所述第二校正电路被配置为:
接收所述第一校正版本的所述第一校正像素值,并且
使用第二插值系数来执行对所述第一校正版本中的所述像素的第二子集的像素值的插值,以生成所述原始图像的第二校正版本中的所述相同颜色的像素的第二校正像素值,所述像素的第二子集布置在垂直于所述第一方向的第二方向上,并且所述第二插值系数对应于第二偏移值。
19.根据权利要求18所述的系统,其中:
所述第一偏移值表示从沿着所述第一方向的每个下采样像素位置到所述第一方向上的对应第一虚拟像素的第一距离,
所述第二偏移值表示从所述像素的第二子集到所述第二方向上的对应第二虚拟像素的第二距离,
所述第一校正电路被进一步配置为通过使用所述第一下采样缩放因子中的对应第一下采样缩放因子和所述第一插值系数的对应子集对所述原始图像的所述相同列中的多个像素进行下采样和插值,来生成所述第一校正版本中的像素的所述第一校正像素值中的一个第一校正像素值,并且
所述第二校正电路被进一步配置为通过使用所述第二插值系数的对应子集对所述第一校正版本的所述相同行中的多个像素进行插值来生成所述第二校正版本中的像素的所述第二校正像素值中的一个第二校正像素值。
20.根据权利要求18所述的系统,所述图像处理器还包括耦接到所述第一校正电路的下采样和像素定位器电路,所述下采样和像素定位器电路被配置为:
基于所述第一下采样缩放因子中的对应第一下采样缩放因子来确定所述第一方向上的每个下采样像素位置。
CN202180089666.7A 2021-01-07 2021-12-13 用于图像数据的组合的下采样和校正的电路 Pending CN116783613A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/143,995 2021-01-07
US17/143,995 US11763421B2 (en) 2021-01-07 2021-01-07 Circuit for combined down sampling and correction of image data
PCT/US2021/063099 WO2022150151A1 (en) 2021-01-07 2021-12-13 Circuit for combined down sampling and correction of image data

Publications (1)

Publication Number Publication Date
CN116783613A true CN116783613A (zh) 2023-09-19

Family

ID=79686653

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180089666.7A Pending CN116783613A (zh) 2021-01-07 2021-12-13 用于图像数据的组合的下采样和校正的电路

Country Status (5)

Country Link
US (2) US11763421B2 (zh)
KR (1) KR20230124699A (zh)
CN (1) CN116783613A (zh)
DE (1) DE112021006769T5 (zh)
WO (1) WO2022150151A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11743612B2 (en) * 2021-12-17 2023-08-29 Texas Instruments Incorporated In-line chromatic aberration correction in wide dynamic range (WDR) image processing pipeline
US20240031540A1 (en) * 2022-07-21 2024-01-25 Apple Inc. Foveated down sampling of image data

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19855885A1 (de) 1997-12-04 1999-08-05 Fuji Photo Film Co Ltd Bildverarbeitungsverfahren und -vorrichtung
US7330209B2 (en) * 1999-12-20 2008-02-12 Texas Instruments Incorporated Digital still camera system and complementary-color-filtered array interpolation method
US6933970B2 (en) * 1999-12-20 2005-08-23 Texas Instruments Incorporated Digital still camera system and method
US6917381B2 (en) * 2000-11-30 2005-07-12 Intel Corporation Color filter array and color interpolation algorithm
US7058237B2 (en) * 2002-06-28 2006-06-06 Microsoft Corporation Real-time wide-angle image correction system and method for computer image viewing
US7751642B1 (en) 2005-05-18 2010-07-06 Arm Limited Methods and devices for image processing, image capturing and image downscaling
US8055070B2 (en) 2007-01-05 2011-11-08 Geo Semiconductor Inc. Color and geometry distortion correction system and method
TWI433546B (zh) * 2008-07-03 2014-04-01 Chi Lin Technology Co Ltd 影像解析度調整裝置、顯示裝置以及影像解析度調整方法
US8472712B2 (en) * 2009-10-20 2013-06-25 Apple Inc. System and method for applying lens shading correction during image processing
JP5640371B2 (ja) 2009-12-18 2014-12-17 ソニー株式会社 カメラシステム及び画像処理方法
US8587705B2 (en) * 2010-06-28 2013-11-19 Intel Corporation Hardware and software partitioned image processing pipeline
JP5577939B2 (ja) 2010-08-20 2014-08-27 ソニー株式会社 撮像装置、収差補正方法、および、プログラム
US8588524B2 (en) * 2010-12-15 2013-11-19 Canon Kabushiki Kaisha Image processing apparatus, image processing method and program
JP5942203B2 (ja) 2011-06-17 2016-06-29 パナソニックIpマネジメント株式会社 ステレオ画像処理装置およびステレオ画像処理方法
US9105090B2 (en) 2011-07-13 2015-08-11 Analog Devices, Inc. Wide-angle lens image correction
JP5818586B2 (ja) 2011-08-31 2015-11-18 キヤノン株式会社 画像処理装置及び画像処理方法
US20130321675A1 (en) * 2012-05-31 2013-12-05 Apple Inc. Raw scaler with chromatic aberration correction
JP6335563B2 (ja) 2014-03-18 2018-05-30 キヤノン株式会社 撮像装置及びその制御方法
JP6330474B2 (ja) 2014-05-19 2018-05-30 株式会社ソシオネクスト 画像処理装置、画像処理装置の制御方法、撮像装置
US9210391B1 (en) 2014-07-31 2015-12-08 Apple Inc. Sensor data rescaler with chroma reduction
US10157448B2 (en) 2016-02-12 2018-12-18 Qualcomm Incorporated Foveated video rendering
US11037277B2 (en) 2017-08-25 2021-06-15 Canon Kabushiki Kaisha Image processing apparatus, imaging apparatus, lens apparatus, and image processing method
US10643307B2 (en) 2017-11-10 2020-05-05 Intel Corporation Super-resolution based foveated rendering
GB2585050A (en) 2019-06-26 2020-12-30 Light Blue Optics Ltd Image demosaicing

Also Published As

Publication number Publication date
US20240029198A1 (en) 2024-01-25
DE112021006769T5 (de) 2023-11-23
KR20230124699A (ko) 2023-08-25
US11763421B2 (en) 2023-09-19
WO2022150151A1 (en) 2022-07-14
US20220215506A1 (en) 2022-07-07

Similar Documents

Publication Publication Date Title
CN113508416B (zh) 图像融合处理模块
CN109416829B (zh) 并行计算机视觉和图像缩放架构
US11863889B2 (en) Circuit for correcting lateral chromatic abberation
CN110622207B (zh) 用于交叉渐变图像数据的系统与方法
US11024006B2 (en) Tagging clipped pixels for pyramid processing in image signal processor
US20240029198A1 (en) Circuit For Combined Down Sampling And Correction Of Image Data
US11836889B2 (en) Dual-mode image fusion architecture
US20240169481A1 (en) Demosaicing circuit for demosaicing quad bayer raw image data
CN118613821A (zh) 针对原始图像数据的多模式去马赛克
US11587209B2 (en) Circuit for correcting chromatic abberation through sharpening
US11074678B2 (en) Biasing a noise filter to preserve image texture
US10949953B2 (en) Directional bilateral filtering of raw image data
US20200320661A1 (en) Auto-focus engine architecture for image signal processor
US11617026B1 (en) Lens shading correction for quadra image sensors
CN115428009B (zh) 基于内容的图像处理
US20240031540A1 (en) Foveated down sampling of image data
US20240284062A1 (en) Circuit for performing optical image stabilization before lens shading correction
US20240297949A1 (en) Back-End Scaling Circuit With Local Tone Mapping After Image Warping
US20230138779A1 (en) Linear transform of undistorted image for fusion
US20240334073A1 (en) Multi-illumination white balance circuit with thumbnail image processing
US20240305901A1 (en) Demosaicing quad bayer raw image using correlation of color channels
US11037272B2 (en) Reduction of line banding image artifacts

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination