CN107431790B - 用于图像处理的方法及非暂态计算机可读介质 - Google Patents

用于图像处理的方法及非暂态计算机可读介质 Download PDF

Info

Publication number
CN107431790B
CN107431790B CN201680013957.7A CN201680013957A CN107431790B CN 107431790 B CN107431790 B CN 107431790B CN 201680013957 A CN201680013957 A CN 201680013957A CN 107431790 B CN107431790 B CN 107431790B
Authority
CN
China
Prior art keywords
input picture
histogram
image
filter
dimensional chromaticity
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.)
Active
Application number
CN201680013957.7A
Other languages
English (en)
Other versions
CN107431790A (zh
Inventor
J.T.巴伦
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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of CN107431790A publication Critical patent/CN107431790A/zh
Application granted granted Critical
Publication of CN107431790B publication Critical patent/CN107431790B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/40Image enhancement or restoration using histogram techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/10Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from different wavelengths
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/10Image enhancement or restoration using non-spatial domain filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/20Image enhancement or restoration using local operators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/60Image enhancement or restoration using machine learning, e.g. neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/77Retouching; Inpainting; Scratch removal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/90Dynamic range modification of images or parts thereof
    • G06T5/92Dynamic range modification of images or parts thereof based on global image properties
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/56Processing of colour picture signals
    • H04N1/60Colour correction or control
    • H04N1/6027Correction or control of colour gradation or colour contrast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/56Processing of colour picture signals
    • H04N1/60Colour correction or control
    • H04N1/6083Colour correction or control controlled by factors external to the apparatus
    • H04N1/6086Colour correction or control controlled by factors external to the apparatus by scene illuminant, i.e. conditions at the time of picture capture, e.g. flash, optical filter used, evening, cloud, daylight, artificial lighting, white point measurement, colour temperature
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)
  • Studio Devices (AREA)

Abstract

计算设备可以获得输入图像。输入图像可以具有由限定输入图像中的白色颜色的色度值表示的白色点。可能地基于输入图像的颜色,计算设备可以产生输入图像的二维色度直方图。计算设备可以使二维色度直方图与滤波器卷积以创建二维热图。二维热图中的条目可以表示与各个条目对应的各个色彩多么接近输入图像的白色点的各个估计。计算设备可以选择二维热图中的表示在热图中的最大值的阈值内的特定值的条目,以及基于选择的条目,使输入图像着色以形成输出图像。

Description

用于图像处理的方法及非暂态计算机可读介质
技术领域
本发明涉及用于图像处理的方法及非暂态计算机可读介质。
背景技术
数字成像可以涉及将场景的颜色和亮度特性捕获并呈现在数字图像(例如,照片或运动视频)中。当捕获特定场景的数字图像时,其中的对象的真实颜色可能被场景中的任何照明的颜色偏移。因此,可以进一步处理和/或增强数字图像以创建具有更接近真实颜色的颜色的新数字图像。然而,以不依赖用于捕获数字图像的图像传感器的方式来执行这种颜色校正具有挑战性。
发明内容
中性图像中像素的颜色可以被表示为两个量的积,这两个量是反射率(例如,场景中表面的颜色)和照度(照射场景中的表面的光的颜色)。赋予计算机从发光体辨明反射率的能力是困难的,因为该问题约束过少——给定黄色像素,通常不清楚其是表示黄色发光体下的白色对象,还是白色发光体下的黄色对象。推断并且校正图像的照明的颜色一般称为“颜色恒常性(color constancy)”或“白平衡(white-balance)”。
本文的实施例公开了一种颜色恒常性技术,其基于将缩放图像的颜色通道与该图像的对数色品(log-chromaticity)的直方图的平移相关的观察。这种观察允许利用基于卷积神经网络和结构化预测的工具将颜色恒常性问题构建为判别机器学习问题。通过以这种方式判别地训练颜色恒常性的技术,本文的实施例能够减小标准基准上的误差率达40%之多。
因此,第一示例实施例可以涉及获得输入图像。输入图像可以具有由限定输入图像中的白色颜色的色度值表示的白色点。第一示例实施例还可以涉及基于输入图像的颜色产生输入图像的二维色度直方图。第一示例实施例可以进一步涉及使二维色度直方图与滤波器卷积以创建二维热图(heat map)。二维热图中的条目(entry)可以表示与各个条目对应的各个色调(tint)多么接近输入图像的白色点的各个估计。第一示例实施例可以额外地涉及:选择二维热图中的表示在热图中的最大值的阈值内的特定值的条目,以及基于选择的条目,使输入图像着色以形成输出图像。
在第二示例实施例中,制品可以包括非暂态计算机可读介质,其上面存储有程序指令,该程序指令在由计算设备执行时使得计算设备执行根据第一示例实施例的操作。
在第三示例实施例中,一种计算设备可以包括至少一个处理器,以及数据存储装置和程序指令。程序指令可以存储在数据存储装置中,程序指令在由至少一个处理器执行时可以使得计算设备执行根据第一示例实施例的操作。
在第四示例实施例中,一种系统可以包括用于执行第一示例实施例的操作中的每一个的各种装置。
通过在适当的情况下参考附图阅读以下详细描述,本领域技术人员将会明了这些以及其他实施例、方面、优点和替代方案。另外,应当要理解,本文提供发明内容和其他描述以及附图意在仅通过示例的方式来示意实施例,并且因此许多变化是可能的。例如,可以重新布置、组合、分布、消除或以其他方式改变结构元件和过程步骤,而同时仍然在请求保护的实施例的范围内。
附图说明
图1描绘了根据示例实施例的数字相机设备的前、右侧和后视图。
图2描绘了根据示例实施例的具有图像捕获能力的计算设备的框图。
图3描绘了根据示例实施例的图像的三种色调和每一种色调的关联的色度直方图。
图4描绘了根据示例实施例的在训练期间使用的、作为提出的照明颜色的函数的代价函数(cost function)的可视化图。
图5描绘了根据示例实施例的金字塔滤波的可视化图。
图6描绘了根据示例实施例的由与增强的图像关联的四个通道捕获的信息的可视化图。
图7是根据示例实施例的流程图。
具体实施方式
此处描述了示例方法、设备和系统。应当要理解词语“示例”和“示例性”在本文中用于表示“充当示例、实例或示意”。本文中被描述为“示例”或“示例性”的任何实施例和特征不一定解读为相对于其他实施例或特征优选或有利。在不脱离本文呈现的主题的范围的情况下可以利用其他实施例,并且可以进行其他改变。
因此,本文描述的示例实施例不意味着是限制性的。可以以多种多样的不同配置来对一般地在本文中描述并且在附图中示意的本公开的各个方面进行布置、替换、组合、分离和设计,所有这些都在本文设想到。
另外,除非上下文另有建议,否则在每个附图中示意的特征可以彼此组合使用。因此,应当将附图一般地视作一个或多个总体实施例的组成方面,其中要理解不是所有示意的特征都为每个实施例所需。
1、示例图像捕获设备
随着诸如相机的图像捕获设备变得更加普及,它们可以被用作单机式硬件设备或集成到各种其他类型的设备中。例如,静态和视频相机现在通常被包括在无线计算设备(例如,移动电话)、平板计算机、台式计算机、视频游戏接口、家庭自动化设备、甚至在汽车和其他类型的车辆中。
相机的物理组件可以包括光通过其进入的一个或多个光圈、用于捕获由光表示的图像的一个或多个记录表面以及定位在每个光圈前面以将至少一部分图像聚焦在(一个或多个)记录表面上的透镜。光圈可以是固定大小的或可调节的。在模拟相机中,记录表面可以是感光胶片。在数字相机中,记录表面可以包括电子图像传感器(例如,电荷耦合器件(CCD)或互补金属氧化物半导体(CMOS)传感器),以将捕获的图像传送和/或存储到数据存储单元(例如,存储器)中。
一个或多个快门可以耦合到透镜或记录表面或者在透镜或记录表面附近。每个快门可以处于关闭位置或打开位置,在关闭位置快门阻挡光到达记录表面,在打开位置光被允许到达记录表面。可以通过快门按钮控制每个快门的位置。例如,快门可以默认处于关闭位置。当触发(例如,按下)快门按钮时,快门可以从关闭位置改变到打开位置一段时间,这段时间称为快门周期。在快门周期期间,可以在记录表面上捕获图像。在快门周期结束时,快门可以变回到关闭位置。
替代地,快门过程(shuttering process)可以是电子的。例如,在CCD图像传感器的电子快门“打开”之前,该传感器可以被重置以移除在其光电二极管中的任何残余信号。当电子快门保持打开时,光电二极管可以积累电荷。当快门关闭时或之后,可以将这些电荷传送到较长期的数据存储装置。机械和电子快门的组合也是可能的。
无论什么类型,都可以通过除了快门按钮之外的其他东西激活和/或控制快门。例如,可以通过软键、定时器或某个其他触发器来激活快门。在本文中,术语“图像捕获”可以涉及导致一个或多个图像被记录的任何机械和/或电子快门过程,而不管快门过程是如何被触发或控制的。
可以由光圈的大小、进入光圈的光的亮度和快门周期的长度(也称为快门长度或曝光长度)来确定捕获的图像的曝光量。此外,可以向图像应用数字和/或模拟增益,从而影响曝光量。在一些实施例中,术语“总曝光长度”或“总曝光时间”可以指快门长度乘以对于特定光圈大小的增益。在本文中,术语“总曝光时间”或“TET”应当被解释为可能是快门长度、曝光时间或控制由于光到达记录表面导致的信号响应的量的任何其他度量。
每次图像捕获被触发,静态相机可以捕获一个或多个图像。只要图像捕获保持被触发(例如,当快门按钮被保持按下时),视频相机就可以以特定速率(例如,每秒24个图像或帧)连续地捕获图像。一些数字静态相机可以在激活相机设备或应用时打开快门,并且快门可以保持处于该位置直到相机设备或应用被停用。当快门打开时,相机设备或应用可以将场景的表示捕获并显示在取景器上。当触发图像捕获时,可以捕获当前场景的一个或多个差异的数字图像。
相机(即便是模拟相机)可以包括软件来控制一个或多个相机功能和/或诸如光圈大小、TET、增益等的设置。此外,一些相机可以包括在捕获图像期间或之后数字地处理这些图像的软件。尽管上面的描述总体上涉及相机,但是其可以特别地与数字相机有关。
如先前指出的,数字相机可以是单机式设备或与其他设备集成。作为示例,图1示意了数字相机设备100的形状因子(form factor)。数字相机设备100可以为例如移动电话、平板计算机或可穿戴计算设备。然而,其他实施例也是可能的。数字相机设备100可以包括各种元件,诸如主体102、前置相机104、多元件显示器(multi-element display)106、快门按钮108和其他按钮110。数字相机设备100还可以包括后置相机112。前置相机104可以定位在主体102的在操作时一般面对用户的一侧上,或者在与多元件显示器106相同的一侧上。后置相机112可以定位在主体102的与前置相机104相反的一侧上。将相机称为前置和后置是随意的,并且数字相机设备100可以包括定位在主体102的各种侧上的多个相机。
多元件显示器106可以表示阴极射线管(CRT)显示器、发光二极管(LED)显示器、液晶(LCD)显示器、等离子体显示器或本领域中已知的任何其他类型的显示器。在一些实施例中,多元件显示器106可以显示由前置相机104和/或后置相机112捕获的当前图像的数字表示,或者能够被这些相机中的任一个或两个捕获或最近捕获的图像。因此,多元件显示器106可以充当用于任一个相机的取景器。多元件显示器106也可以支持触摸屏和/或存在敏感(presence-sensitive)的功能,触屏和/或存在敏感的功能可以能够调整数字相机设备100的任何方面的设置和/或配置。
前置相机104可以包括图像传感器和诸如透镜的关联光学元件。前置相机104可以提供变焦能力或者可以具有固定焦距。在其他实施例中,可互换透镜可以与前置相机104一起使用。前置相机104可以具有可变机械快门和机械和/或电子快门。前置相机104也可以配置为捕获静态图像、视频图像或二者。此外,前置相机104可以表示单视场、立体或多视场相机。后置相机112可以相似或不同地布置。此外,前置相机104、后置相机112或二者可以是一个或多个相机的阵列。
前置相机104和后置相机112中的任一个或两个可以包括照明组件或与照明组件关联,所述照明组件提供光场以对目标对象照明。例如,照明组件可以提供目标对象的闪光照明或恒定照明。照明组件还可以配置为提供包括结构光、偏振光和具有特定光谱含量的光中的一个或多个的光场。在本文的实施例的上下文内,已知并且用于从对象恢复三维(3D)模型的其他类型的光场是可能的。
前置相机104和后置相机112中的任一个或两个可以包括环境光传感器或与环境光传感器关联,所述环境光传感器可以连续地或不时地确定相机能够捕获的场景的环境亮度。在一些设备中,环境光传感器可以用于调整与相机关联的屏幕(例如,取景器)的显示亮度。当确定的环境亮度高时,可以增加屏幕的亮度级别以使得更容易观看屏幕。当确定的环境亮度低时,可以减小屏幕的亮度级别,以也使得更容易观看屏幕并且使得屏幕潜在地节省电力。此外,环境光传感器的输入可以用于确定关联相机的TET,或辅助这种确定。
数字相机设备100可以配置为使用多元件显示器106和前置相机104或后置相机112中的任一个来捕获目标对象的图像。被捕获的图像可以是多个静态图像或视频流。可以通过激活快门按钮108、按下多元件显示器106上的软键或通过某个其他机制来触发图像捕获。取决于实现方式,可以以特定时间间隔自动地捕获图像,例如在按下快门按钮108时、在目标对象的合适的照明条件时、在移动数字相机设备100预定距离时或根据预定捕获时间安排。
如在上面指出的,数字相机设备100(或另一类型的数字相机)的功能可以集成到计算设备(诸如无线计算设备、蜂窝电话、平板计算机、膝上型计算机等)中。出于示例的目的,图2是示出可以包括相机组件224的示例计算设备200的组件中的一些的简化框图。
通过示例的方式而不进行限制,计算设备200可以是蜂窝移动电话(例如,智能电话)、静态相机、视频相机、传真机、计算机(诸如,台式机、笔记本、平板或手持式计算机)、个人数字助理(PDA)、家庭自动化组件、数字视频记录器(DVR)、数字电视、遥控器、可穿戴计算设备或者配备有至少一些图像捕获和/或图像处理能力的某种其他类型的设备。应当要理解,计算设备200可以表示诸如数字相机的物理相机设备、在其上相机应用以软件进行操作的特定物理硬件平台或者配置为执行相机功能的硬件和软件的其他组合。
如图2所示,计算设备200可以包括通信接口202、用户接口(user interface)204、处理器206、数据存储装置208和相机组件224,所有这些可以通过系统总线、网络或其他连接机制通信地链接在一起。
通信接口202可以允许计算设备200利用模拟或数字调制与其他设备、接入网络和/或传输网络通信。因此,通信接口202可以促进电路交换和/或分组交换通信,诸如简易老式电话服务(POTS)通信和/或互联网协议(IP)或其他分组化通信。例如,通信接口202可以包括布置用于与无线电接入网络或接入点无线通信的芯片组和天线。另外,通信接口202可以采取有线线路接口(wireline interface)的形式或包括有线线路接口,诸如以太网、通用串行总线(USB)或高清多媒体接口(HDMI)端口。通信接口202还可以采取无线接口的形式或包括无线接口,诸如Wifi、全球定位系统(GPS)或广域无线接口(例如,WiMAX或3GPP长期演进(LTE))。然而,可以在通信接口202上使用其他形式的物理层接口和其他类型的标准或专用通信协议。另外,通信接口202可以包括多个物理通信接口(例如,Wifi接口、接口和广域无线接口)。
用户接口204可以发挥功能以允许计算设备200与人类或非人类用户交互,诸如以从用户接收输入和向用户提供输出。因此,用户接口204可以包括输入组件,诸如小键盘、键盘、触敏或压敏面板、计算机鼠标、轨迹球、控制杆、麦克风等。用户接口204还可以包括一个或多个输出组件,诸如显示屏,显示屏例如可以与存在敏感的面板(presence-sensitivepanel)组合。显示屏可以基于CRT、LCD和/或LED技术,或其他现在已知或之后开发的技术。用户接口204还可以配置为经由扬声器、扬声器插口、音频输出端口、音频输出设备、耳机和/或其他类似设备产生(一个或多个)可听输出。
在一些实施例中,用户接口204可以包括充当用于由计算设备200支持的静态相机和/或视频相机功能的取景器的显示器。此外,用户接口204可以包括促进相机功能的配置和聚焦以及图像的捕获(例如,捕获照片)的一个或多个按钮、开关、旋钮和/或拨盘。也可以通过存在敏感的面板的方式来实现这些按钮、开关、旋钮和/或拨盘中的一些或全部。
处理器206可以包括一个或多个通用处理器(例如,微处理器)和/或一个或多个专用处理器,例如数字信号处理器(DSP)、图形处理单元(GPU)、浮点单元(FPU)、网络处理器或专用集成电路(ASIC)。在一些实例中,在其他可能性当中,专用处理器可以能够图像处理、图像对齐和合并图像。数据存储装置208可以包括一个或多个易失性和/或非易失性存储组件,诸如磁、光、快闪或有机存储装置,并且可以整体或部分与处理器206集成。数据存储装置208可以包括可移除和/或不可移除组件。
处理器206可以能够执行存储在数据存储装置208中的程序指令218(例如,经编译或未经编译的程序逻辑和/或机器代码)以执行本文描述的各种功能。因此,数据存储装置208可以包括非暂态计算机可读介质,其上存储有程序指令,计算设备200执行程序指令时使得计算设备200执行本说明书和/或附图中公开的方法、过程或操作中的任一个。处理器206对程序指令218的执行可以导致处理器206使用数据212。
通过示例的方式,程序指令218可以包括安装在计算设备200上的操作系统222(例如,操作系统内核、(一个或多个)设备驱动器和/或其他模块)和一个或多个应用程序220(例如,相机功能、地址簿、电子邮件、网页浏览(web browsing)、社交联网和/或游戏应用)。类似地,数据212可以包括操作系统数据216和应用数据214。操作系统数据216可以主要由操作系统222可接入,而应用数据214可以主要由应用程序220中的一个或多个可接入。应用数据214可以布置在文件系统中,该文件系统对计算设备200的用户可见或者对计算设备200的用户隐藏。
应用程序220可以通过一个或多个应用编程接口(API)与操作系统222通信。这些API可以促进例如应用程序220读取和/或写入应用数据214、经由通信接口202传输或接收信息、接收信息和/或在用户接口204上显示信息等。
在一些行话中,应用程序220可以简称为“app”。此外,应用程序220可以能够通过一个或多个在线应用商店或应用市场可下载到计算设备200。然而,还可以以其他方式将应用程序安装在计算设备200上,诸如,经由网页浏览器(web browser)或通过计算设备200上的物理接口(例如,USB端口)。
相机组件224可以包括但不限于:光圈、快门、记录表面(例如,感光胶片和/或图像传感器)、透镜和/或快门按钮。相机组件224可以至少部分地被处理器206执行的软件控制。
2、示例颜色模型
本部分从一般意义上描述可以在计算机屏幕上或在图像文件中表示颜色的方式。该信息可以有用于在以下部分中描述的图像处理技术的情境中。
可以使用许多颜色模型来数字地表示捕获的图像。例如,红绿蓝(RGB)颜色模型可以用于将图像显示在电子输出设备(诸如,计算机屏幕)上。RGB是加色颜色模型(additivecolor model),其中以各种方式将红光、绿光和蓝光加在一起以产生颜色谱。例如,可以通过组合绿色和蓝色形成青色,可以通过组合红色和绿色形成黄色,可以通过组合红色和蓝色形成品红色,并且可以通过组合红色、绿色和蓝色形成白色。
RGB图像的特定像素可以表达为三平面元组(R,G,B),其每个平面可以从0变化到预定义最大值(例如,255)。如果所有平面为0,则结果会是黑色。如果所有平面处于最大值,则结果会是最亮的可表示的白色。(此处描述的颜色平面也可称为颜色通道。)
另一颜色模型是YCbCr。在一些实现方式中,该颜色模型可以用作图像的替代表示。具体说来,Y平面可以表示像素的亮度,而Cb平面和Cr平面可以分别表示蓝黄色度和红绿色度。例如,可以由RGB图像中的蓝色像素值除以RGB图像中的绿色像素值来表示蓝黄色度,并且可以由RGB图像中的红色像素值除以RGB图像中的绿色像素值来表示红绿色度。这样,YCbCr颜色模型具有与RGB明确限定的关系,并且可以相对容易地转换到该RGB和从该RGB转换。
3、示例白平衡
白平衡是数字相机设备或关联的软件能够对捕获的图像进行的调整,以力图确保图像中的白色颜色正确地反映图像从其被捕获的真实世界场景中的实际白色颜色。为了理解白平衡,首先理解色温的概念是有用的。
色温基于图像或场景中蓝色光的量与红色光的量的比率来测量光的质量。色温以开尔文(K)度的单位来表达。具有较高色温(即,较大的开尔文值)的图像或场景比具有较低色温(即,较小的开尔文值)的图像或场景具有更多的蓝色。这样,“较冷”的光具有较高的色温,而较暖的光具有较低的色温。
人眼和大脑能适应不同的色温。例如,不管是在强烈的日光下或在白炽灯照明的房间中观看白色对象,人都会将白色对象看成是白色的。数字相机设备通常具有内置的传感器来测量场景的色温,并且可以使用算法来处理捕获的场景的图像,以使得最终结果接近人会感知场景的方式。这种使得图像中的白色颜色与场景中的白色颜色相似的调整称为白平衡。当前的白平衡算法可能不够准确以使得每个图像的白色点与其表示的场景的白色点相似。(图像的白色点表示限定图像中的“白色”的色度值)。
本文的实施例提供了能够与宽广范围的图像传感器硬件一起操作的高质量的白平衡技术。这些技术以软件实时地或近实时地进行操作。这可以消除对要给各种图像传感器提供硬件特定的白平衡算法的需要。
为了实现这个目的,本文的实施例考虑“输出的”白平衡的图像的外观,并且不依赖于“输入的”图像的外观(此处,“输入的”图像是在应用白平衡算法之前由图像传感器捕获的图像)。这意味着例如如果一个相机产生一致地着色的青色的图像,而另一相机产生一致地着色的紫色的图像,则本文的白平衡算法可以产生相同的白平衡的输出图像(假定两个图像都具有相似的辐射测定特性——已经校正了黑色电平(black level)、图像是线性的等)。这意味着如果在由一个制造商的硬件捕获的图像上训练(例如,借助一种或多个机器学习技术)本文的白平衡算法,则对于由另一制造商的硬件捕获的图像其将仍然有效。
考虑“输出的”白平衡的图像的特性还简化了训练。一般说来,实现新相机传感器的白平衡算法涉及用所述传感器收集图像的大的数据集,并且手动地注解这些图像中的每一个的发光体颜色(illuminant color),这是缓慢且代价高的对策。但是使用本文描述的方法,可以基于公共地可获得的图像来训练白平衡算法,以使得白平衡算法再现这些图像的白平衡。
本文的白平衡算法不仅产生高质量结果,其目前还通过误差的20%-40%减少而优于学术文献中的现有技术。然而,当前的现有技术中的技术不被设计为总括不同的图像传感器。
此外,本文的白平衡算法设计为是幂等的(idempotent),意味着其一旦被应用于图像,其将对图像进行白平衡,并且如果其再次应用于白平衡的图像,则其不对图像进行进一步可感知的改变。这种特性还意味着如果输入图像的色彩被摄影管线中的某个其他白平衡算法更改,算法将不会失效。
为了正式构建问题,考虑完美地光度学线性图像,其中已经进行了黑色电平校正并且其中没有像素值饱和(例如,像素的每个颜色通道中颜色的强度低于某个阈值值,诸如255)。在下面出于方便可以用对数空间表示。
如在上面指出的,RBG像素[Ir,Ig,Ib]可以是“真实”或白平衡的颜色[Wr,Wg,Wb]和场景的发光体[Lr,Lg,Lb]的积。相应地:
Ir=WrLr (1)
Ig=WgLg (2)
Ib=WbLb (3)
然而,等式(1)、(2)和(3)是对问题的过度简化,因为它们忽略了阴影(shading)、反射率特性、空间变化的照明等。不管怎样,给定I,目的是估计L并且借助于此,产生W=I/L。为此,可以限定I和W的色度表示:
Iu=log(Ig/Ir) (4)
Iv=log(Ig/Ib) (5)
Wu=log(Wg/Wr) (6)
Wv=log(Wg/Wb) (7)
此外,方便地限定I和W的亮度(1uminance)的表示:
Iy=min(Ir,Ig,Ib) (8)
Wy=min(Wr,Wg,Wb) (9)
亮度的该表示指示u和v的估计中的置信度——如果像素的r、g、或b值中的任一个接近零,则至少一个色度估计有可能是噪声或错误。由于在此处的实施例中不需要明确考虑W的绝对温标(absolute scaling),所以估计发光体L的问题进一步简化成估计L的色度,其可以仅表示为两个量:
Lu=log(Lg/Lr) (10)
Lv=log(Lg/Lb) (11)
通过对数的特性,等式(1)、(2)和(3)的公式化(formulation)可以在对数-色度空间中被重写为:
Wu=Iu-Lu (12)
Wv=Iv-Lv (13)
结果,校正图像的白平衡简化成确定两个量:Lu和Lv。由于绝对温标非单值性(absolute scale ambiguity),所以(Lu,Lv)从RGB空间到UV空间的逆映射不明确。因此,确定了:Lu和Lv,就可以假定L是允许(Lr,Lg,Lb)的复原的单位范教(unit-norm):
这种对数-色度公式化比RGB公式化更易于处理。存在2个未知数而不是3个未知数,并且存在与W和I有关的线性约束而不是乘法约束。
为了用基准真实(ground truth)照度L确定这些值(Lu,Lv)并且最终确定输入图像I的(Lr,Lg,Lb),可以构造二维色度直方图N。在该直方图中,N(u,v)指示I中其色度接近(u,v)的像素的数量,其中直方图计数通过其中相应像素的亮度加权。这种加权反映相应色度值中的置信度。形式上地:
其中方括号表示指示函数(indicator function),并且∈是直方图的组距(bin-width)。(在实践中,可以使用∈=0.025和256-分组直方图(256-bin histogram);然而,可以替代地使用∈的其他值和其他数量的直方图分组。)
在构造直方图N之后,可以将其归一化以具有恒定质量。另外,可以求取每个分组中计数的平方根,这可以提高直方图的特征的有效性。然而,只要将相同的变换应用到整个直方图,任何特设(ad-hoc)归一化都是可以的。
图3在上部一行中包含相同图像的三个着色版本,并且每个图像的对应色度直方图在下部一行中。图3描绘了使用不同级别的亮度以黑白来描绘这些图像,以呈现不同色调。在图3中的图像的颜色版本中,左边一列中的图像着色为带绿的黄色(greenishyellow),中间一列中的图像被白平衡,而右边一列中的图像着色为带红的黄色。
从每个色度直方图的x-轴的左端移动到右端表示将关联图像的蓝-黄色调从主色蓝色改变到主色黄色。同样地,从每个色度直方图的y-轴的上端移动到下端表示将关联图像的红-绿色调从主色红色改变到主色绿色。总的来说,每个色度直方图表示在该x-y绘图上在每个位置中具有色度下降的像素的相对数量。因此,左侧一列色度直方图中的点的聚簇(cluster)指示绿色和黄色色调,中间一列色度直方图中的点的聚簇指示中性(白平衡的)色调,而右侧一列色度直方图中的点的聚簇指示红色和黄色色调。
每个点的聚簇的中心表示关联的图像的白色点,并且色度直方图的原点是对于人呈白色的点。通过将点的聚簇居中在色度直方图的原点周围,可以取得中性色调。
每个图像的色度直方图是其他色度直方图的平移版本(忽略由直方图运算引入的采样),而直方图的形状不改变。这样,使图像着色仅通过直方图空间中的平移(translation)而影响图像的色度直方图。这是将u和v限定为它们在本文中的方式的结果——缩放RGB通道等效于移位(shift)对数-色度通道。亮度对该平移没有影响。
图像着色和直方图移位之间的等效使白平衡更容易。特别地,白平衡算法可以通过考虑图像的一些或所有可能的色调、对每个着色的图像评分并且然后提供最高评分的色调(或更确切地说,其逆)作为输入图像的估计的照度而进行操作。例如,使与中间一列色度直方图关联的色调具有最高评分以便白平衡算法将输入图像着色为中性可能是可取的。
单纯地,进行这种评分看上去似乎是代价高的对策,因为其需要在所有可能色调上的穷举搜索,其中将某个评分函数应用于每个色调。然而,倘若评分函数是直方图分组的线性组合,则该穷举搜索实际上仅仅是N与某个滤波器F的卷积,并且存在能够高效地进行卷积运算的许多方式。
这样,在高层次,白平衡算法可以执行以下步骤:(i)从输入图像I构造色度直方图N,(ii)使该直方图与某个滤波器F卷积,以及(iii)使用高评分(例如,最高评分)照度产生更正式地:
其中*是卷积运算符。
该程序涉及从训练数据学习某个滤波器F以使得该卷积产生准确的输出。为了训练滤波器,可以将类似于多项式逻辑斯蒂回归(multinomial logistic regression)或结构化预测的模型应用到卷积架构。正式地,这可以表达为优化问题:
其中:
在等式(21)中,F是其权重被学习的滤波器,{N(i)}和{L(i)}分别是训练集色度直方图和基准真实照度,并且(N(i)*F)(u,v)是在位置(u,v)处索引的N(i)和F的卷积。出于便利,P(u,v)是直方图中每个分组(u,v)的柔性最大值(softmax)概率,其作为N(i)*F的函数。这样,P(u,v)表示每个训练直方图与滤波器的卷积的归一化指数函数。
通过最小化F的元素的平方的和来正则化滤波器权重,滤波器权重被某个超参数(hyper-parameter)λ调节。
在高层次,最小化损失导致这样的F——N(i)*F在处比在其他地方大,其中C(u,v,u*,v*)如下限定在误估发光体处造成的损失:
以及:
C测量由(u,v)和(u*,v*)限定的照度之间的角度,通过损失测量可以评估颜色恒常性算法。可以在图4中看到对C的可视化。特别地,图4描绘了对作为提出的照明颜色(u,v)的函数的C(u,v,u*,v*)的可视化,其中每个绘图示出基准真实照明颜色r(u*,v*)的不同选择(被图出)。由于就RGB照明矢量之间的角度来测量误差,所以取决于基准真实照明,该误差函数的形状可能看上去不同。
在训练期间,可以求解等式(21)以用Broyden Fletcher Goldfarb Shanno(BFGS)技术(诸如,有限内存BFGS(L-BFGS))收敛。特别地,可以将F初始化到全部为零(不管损失函数的非凸性都可行)。这个问题与逻辑斯蒂回归类似,但是其中每个(u,v)具有由与其关联的C限定的可变损失,测量每个可能的(u,v)色度关于某个基准真实色度(u*,v*)的成本。可变成本使得模型类似于像结构化预测的过程。
不论如何,经学习F反映颜色在白平衡的场景中的分布,并且作为前面提及的色度直方图的移位不变性的结果,并且连同F作为卷积被评估,F独立于训练图像的色调。在推断期间,F可以用于找到根据模型的最有可能的照度,但是模型实际上不考虑该照度的可能性。除了此处使用的自然颜色的模型通过判别训练来进行学习之外,这类似于学习自然颜色的分布的生成模型(generative model)。
判别模型一般对未观察到的变量对观察到的变量的依赖性进行建模。与此相比,生成模型是所有变量的完全概率模型。这样,生成模型例如可以用于生成模型中任何变量的值,而判别模型允许对已观察到的变量进行有条件的未观察到的变量的采样。
有利地,此处的模型使用判别训练的能力而仍然仅学习自然图像的模型,而不是学习专用于特定相机或图像传感器的模型。
A.示例滤波效率提高
前面描述的算法将色度直方图与滤波器卷积,但是没有确切指定应当使用什么种类的滤波器。合理的选择是使用“完全”滤波器——大小与被滤波的直方图相同的滤波器。但是这样的完全滤波器的评估代价有些高(即便是在使用快速傅里叶变换(FFT)优化卷积时),并且具有可能使得正则化和训练困难的数量非常大的自由参数。
在上面描述的实施例中表现好的滤波器倾向于具有对数极坐标或“视网膜拓扑(retinotopic)”结构,其中滤波器在滤波器中心附近包含大量的高频变化,并且远离中心包含低频变化。直观上,这是有道理的——当局部化图像的照明颜色时,模型应当密切关注白色点附近的色度变化,而仅泛泛地考虑远离白色点的色度变化。
利用该观察,可以使用基于金字塔的滤波。金字塔滤波通过构造输入信号的高斯金字塔(例如,利用双线性下采样的来自N(u,v)的3层、5层或7层),然后用小滤波器(例如,3×3、5×5、或7×7滤波器)滤波每个尺度,并且然后将经滤波的金字塔塌缩(collapsedown)成图像(例如,利用双线性上采样)来工作。该过程如同将N(u,v)与类视网膜拓扑的滤波器卷积一般产生相同或近乎相同(忽略由下采样和上采样造成的必要的近似)的输出,但是更有效率。除了有效之外,这种滤波器具有很少的自由参数,因此优化和正则化容易,并且其可以在平滑的同时描述中心中的精细细节并且在远离中心的形状中粗糙。正则化可以通过在每个尺度处最小化滤波器系数的平方2范数(squared 2-norm)来进行,全部都通过单个超参数λ进行调制,如等式(20)中一般。可以在图5中看到对金字塔滤波的可视化。
特别地,图5的上部一行描绘了将直方图与在中心具有强细节而在其他地方具有粗糙细节的滤波器进行卷积。下部一行描绘了通过替代地从直方图构造金字塔、用小滤波器滤波金字塔的每个尺度并且然后使经滤波的直方图塌缩来更高效地评估相同滤波器。通过使用后一种方法,降低了滤波速度。
金字塔滤波可以被认为是计算计算机视觉特征(比如图像中每个位置处的形状上下文或几何模糊密度),并且然后用线性分类器分类每个特征。然而,本文的金字塔近似假定特征的采样图案是矩形的而不是极坐标的、特征的尺度被离散化为2的幂并且在每个尺度处特征的采样图案重叠。还将滤波器应用到金字塔的每个尺度以近似图像空间函数的这种技术也类似于卷积金字塔。
B.示例概括
前面描述的算法能够通过滤波从图像I中的像素的色度值构造的直方图N来从图像I估计照度L。实际上,该模型是一种精细复杂的“灰色世界”算法,原因在于其设法归一化每个像素的颜色,但是忽略空间信息。然而,为了获得更好的性能,颜色恒常性算法可以使用额外的信息源,诸如边缘的颜色或空间邻域。
为此,可以扩展本文公开的算法。替代从单个图像I构造并分类单个直方图N,可以滤波来自一组“增强的”图像{I′j}的一组直方图{Nj}。在计算柔性最大值概率之前可以对滤波的响应求和。这些增强的图像反应图像I的边缘和空间统计,从而使得模型能够在单个像素色度之外还组合多个色度信息的源。
可以通过简单地将一般的图像处理操作应用到I来构造这些增强的图像{I′j},诸如应用滤波器组(filter bank)、中值滤波器、形态学操作等。但是,从其构造色度直方图的图像应当将颜色缩放映射到输入图像的通道,以在色度直方图空间中移位。这意味着增强的图像应当保留该特性,并且将每通道缩放映射到直方图空间中的相同移位。这样,可能存在供使用的可能的增强图像的有限集合。
可以看到,为了满足颜色缩放/直方图移位特性,映射应当保留标量乘法——输入图像I中通道的缩放然后滤波的版本应当等于该通道的滤波然后缩放的版本。此外,映射的输出应当是非负的,因为可能要求取这些值的对数。三种这样的映射如下:
f(I,filt)=max(0,I*filt) (25)
g(I,ρ,w)=blur(Iρ,w)1/ρ (26)
h(I,ρ,w)=(blur(Iρ,w)-blur(I,w)ρ)1/ρ (27)
其中blur(·,w)是宽度w的盒式滤波器(boxfilter)。一般地,图像的盒式滤波将线性滤波器应用到输入图像,以使得经滤波的图像中的每个像素具有等于输入图像中其相邻像素的平均值的值。例如,可以将3x 3盒式滤波器应用到输入图像的每个像素以模糊、锐化、检测边缘和对输入图像执行其他影响。
函数f(·,filt)将图像的每个通道与某个滤波器filt卷积,并且然后经滤波的值钳制到至少0。函数g(·)计算I中像素值的局部范数(local norm)以使得g(·,1,w)模糊。函数f(·,∞,w)是“最大值”滤波器,而f(·,-∞,w)是“最小值”滤波器。函数h(·)计算像素值的归一化矩,其中g(·,2,w)计算像素值的局部标准偏差——一种非定向边缘/纹理检测器。
可以证明所有这三种操作保留标量乘法:
f(αI,filt)=αf(I,filt) (28)
g(αI,ρ,w)=αg(I,ρ,w) (29)
h(αI,ρ,w)=αh(I,ρ,w) (30)
在扩展模型中,使用了四个通道:输入图像I本身、用“锐化”滤波器滤波并且矫正的图像、大支持“最大值滤波器”类矩阵和小支持局部标准偏差矩阵:
I′1=I (31)
I′3=blur(I4,11)1/4 (33)
图6描绘了对这些通道中的每一个捕获的信息的可视化。在训练期间,这四个金字塔滤波器被学习,每个通道一个金字塔滤波器。在计算柔性最大值概率之前对单个滤波器响应求和。因此,尽管本文公开的算法可仅使用输入图像I的像素值作为其输入,但是可以通过使用“增强的”图像的集合作为输入来改善性能。扩展的模型使用四个增强的图像,其除了输入图像之外还捕获局部边缘和邻域统计。
4、示例操作
图7是示意示例实施例的流程图。图7示意的实施例可以由计算设备执行。然而,可以由其他类型的设备或设备子系统来执行该实施例。另外,该实施例可以与在该说明书或附图中公开的任何方面或特征组合。
图7的框700可以涉及获得输入图像。输入图像可以具有由限定输入图像中的白色颜色的色度值表示的白色点。获得输入图像可以涉及计算设备捕获输入图像。
框702可以涉及:可能地基于输入图像的颜色产生输入图像的二维色度直方图。在一些实施例中,产生二维色度直方图可以涉及:使用直方图的每个维度的像素值的比率的对数、归一化二维色度直方图以具有恒定质量以及求取二维色度直方图的每个分组的平方根。
框704可以涉及使二维色度直方图与滤波器卷积以创建二维热图。二维热图中的条目(entry)可以表示与各个条目对应的各个色调多么接近输入图像的白色点的各个估计。
框706可以涉及选择二维热图中的表示在热图中的最大值的阈值内的特定值的条目。阈值可以在最大值的某百分比(例如,5%、10%、20%等)内,或者可以在最大值的固定偏移内。这样,特定值可以是最大值或接近最大值的值。
框708可以涉及:可能地基于选择的条目,使输入图像着色以形成输出图像。该着色可以涉及将滤波器应用到图像,其中由选择的条目参数化滤波器。作为可能的结果,输出图像可以是比输入图像更加白平衡的。
在一些实施例中,二维色度直方图中的分组(u,v)表示输入图像中具有(u,v)的色度阈值内的色度值的像素的数量。在这些实施例中,u可以表示第一商(quotient)的对数,而v可以表示第二商的对数。第一商可以是输入图像中红色像素值除以输入图像中绿色像素值。第二商可以是输入图像中蓝色像素值除以输入图像中绿色像素值。另外,二维色度直方图的分组可以通过其中的像素的亮度加权。
在一些实施例中,可以基于相应的训练图像的一组训练色度直方图来训练滤波器,每个训练色度直方图与相应的训练图像的相应的已知照度关联。照此,可以使用每个训练直方图与滤波器的卷积的归一化指数函数来训练滤波器。替代或额外地,在训练之后,滤波器可以表示在白平衡的场景中颜色的分布,并且可以独立于训练图像的色调。
可能地基于输入图像的颜色,从输入图像的增强版本产生多个增强的二维色度直方图。输入图像的增强版本中的每一个可以在被滤波时保留标量乘法特性。将二维色度直方图与滤波器卷积可以涉及:在应用归一化指数函数之前对多个增强的二维色度直方图的滤波的响应求和。
5、结论
本公开在本申请中描述的特定实施例方面不受限制,特定实施例用作对各个方面的示意。对本领域技术人员将显而易见的是,可以进行许多修改和变化而不脱离本公开的范围。根据前面的描述,除了本文枚举的方法和装置之外,对本领域技术人员将显而易见的是公开的范围内的功能上等效的方法和装置。这样的修改和变化意图落在随附的权利要求的范围内。
上面的具体描述参考附图描述了公开的系统、设备和方法的各种特征和功能。本文描述和在附图中的示例实施例不意味着限制。在不脱离本文呈现的主题的范围的情况下可以利用其他实施例,并且可以进行其他改变。将容易地理解,可以以多种多样的不同配置来对一般地在本文中描述并且在附图中示意的本公开的各个方面进行布置、替换、组合、分离和设计,所有这些都明确地在本文中设想到。
关于附图中和本文讨论的消息流图、情景和流程图中的任一个或全部,每个步骤、框和/或通信可以表示根据示例实施例的信息的处理和/或信息的传输。替代实施例被包括在这些示例实施例的范围内。在这些替代实施例中,例如,被描述为步骤、框、传输、通信、请求、响应和/或消息的功能可以以不同于示出的或讨论的顺序的顺序来执行,包括大致同时或以相反的顺序,这取决于所涉及的功能。另外,更多或更少的框和/或功能可以与本文讨论的梯形图、情景和流程图中的任一个一起使用,并且这些梯形图、情景和流程图可以部分地或全部地彼此组合。
表示对信息的处理的步骤或框可以与能够配置为执行本文描述的方法或技术的特定逻辑功能的电路对应。替代地或额外地,表示对信息的处理的步骤或框可以与程序代码(包括相关数据)的模块、段或部分对应。程序代码可以包括一个或多个指令,处理器能够执行一个或多个指令以实现方法或技术中的特定逻辑功能或动作。程序代码和/或相关数据可以存储在任何类型的计算机可读介质(诸如,包括盘、硬盘驱动器或其他存储介质的存储设备)上。
计算机可读介质还可以包括非暂态计算机可读介质,诸如存储数据持续短时间段的计算机可读介质,比如寄存器存储器、处理器高速缓存和随机存取存储器(RAM)。计算机可读介质还可以包括存储程序代码和/或数据持续较长时间段的非暂态计算机可读介质。这样,计算机可读介质可以包括辅助或持久的长期存储装置,比如,举例来说,只读存储器(ROM)、光或磁盘、紧凑式盘只读存储器(CD-ROM)。计算机可读介质还可以是任何其他易失性或非易失性存储系统。可以将计算机可读介质看作是例如计算机可读存储介质或有形存储装置设备。
另外,表示一个或多个信息传输的步骤或框可以与相同物理设备中软件和/或硬件模块之间的信息传输对应。然而,其他信息传输可以在不同的物理设备中的软件模块和/或硬件模块之间。
附图中示出的特定布置不应当被视作限制。应当要理解,其他实施例可以包括或多或少的给定附图中示出的每个元件。另外,可以组合或省略示意的元件中的一些。再另外,示例实施例可以包括在附图中未示意的元件。
此外,本说明书或权利要求书中对元件、框或步骤的任何枚举出于清楚的目的。因此,这样的枚举不应当被解读为要求或暗示这些元件、框或步骤依附于特定布置或以特定顺序执行。
尽管本文已经公开了各个方面和实施例,但是其他方面和实施例对本领域技术人员将显而易见。本文公开的各个方面和实施例出于示意的目的并且不意在限制,由随附的权利要求指示真实的范围。

Claims (20)

1.一种用于图像处理的方法,包括:
由计算设备获得输入图像,其中输入图像具有由限定输入图像中的白色颜色的色度值表示的白色点;
由计算设备基于输入图像的颜色产生输入图像的二维色度直方图;
由计算设备将二维色度直方图与滤波器卷积以创建二维热图,其中二维热图中的条目表示与相应条目对应的相应色调多么接近输入图像的白色点的相应估计;
由计算设备选择二维热图中的表示在热图中的最大值的阈值内的特定值的条目;以及
基于选择的条目,由计算设备使输入图像着色以形成输出图像。
2.根据权利要求1所述的方法,其中产生二维色度直方图包括:
对于直方图的每个维度使用像素值的比率的对数;
归一化二维色度直方图以具有恒定质量;以及
求取二维色度直方图的每个分组的平方根。
3.根据权利要求1所述的方法,其中基于选择的条目使输入图像着色包括将滤波器应用到图像,其中由选择的条目参数化滤波器。
4.根据权利要求1所述的方法,其中二维色度直方图中的分组(u,v)表示输入图像中具有(u,v)的色度阈值内的色度值的像素的数量,其中u表示第一商的对数,并且其中v表示第二商的对数,其中第一商是输入图像中红色像素值除以输入图像中绿色像素值,并且其中第二商是输入图像中蓝色像素值除以输入图像中绿色像素值。
5.根据权利要求1所述的方法,其中二维色度直方图的分组通过其中的像素的亮度加权。
6.根据权利要求1所述的方法,其中获得输入图像包括计算设备捕获输入图像。
7.根据权利要求1所述的方法,其中输出图像比输入图像更白平衡。
8.根据权利要求1所述的方法,其中基于相应的训练图像的一组训练色度直方图来训练滤波器,每个训练色度直方图与相应的训练图像的相应的已知照度关联。
9.根据权利要求8所述的方法,其中使用每个训练色度直方图与滤波器的卷积的归一化指数函数来训练滤波器。
10.根据权利要求9所述的方法,还包括:
基于输入图像的颜色,从输入图像的增强版本产生多个增强的二维色度直方图,其中每个输入图像的增强版本在被滤波时保留标量乘法特性,
其中将二维色度直方图与滤波器卷积包括:在应用归一化指数函数之前对多个增强的二维色度直方图的滤波的响应求和。
11.根据权利要求8所述的方法,其中,在训练之后,滤波器表示在白平衡的场景中颜色的分布,并且独立于训练图像的色调。
12.一种非暂态计算机可读介质,其上面存储有程序指令,该程序指令在由计算设备执行时使得计算设备执行包括以下的操作:
获得输入图像,其中输入图像具有由限定输入图像中的白色颜色的色度值表示的白色点;
基于输入图像的颜色产生输入图像的二维色度直方图;
将二维色度直方图与滤波器卷积以创建二维热图,其中二维热图中的条目表示与相应条目对应的相应色调多么接近输入图像的白色点的相应估计;
选择二维热图中的表示在热图中的最大值的阈值内的特定值的条目;以及
基于选择的条目,使输入图像着色以形成输出图像。
13.根据权利要求12所述的非暂态计算机可读介质,其中产生二维色度直方图包括:
对于直方图的每个维度使用像素值的比率的对数;
归一化二维色度直方图以具有恒定质量;以及
求取二维色度直方图的每个分组的平方根。
14.根据权利要求12所述的非暂态计算机可读介质,其中基于选择的条目使输入图像着色包括将滤波器应用到图像,其中由选择的条目参数化滤波器。
15.根据权利要求12所述的非暂态计算机可读介质,其中二维色度直方图中的分组(u,v)表示输入图像中具有(u,v)的色度阈值内的色度值的像素的数量,其中u表示第一商的对数,并且其中v表示第二商的对数,其中第一商是输入图像中红色像素值除以输入图像中绿色像素值,并且其中第二商是输入图像中蓝色像素值除以输入图像中绿色像素值。
16.根据权利要求12所述的非暂态计算机可读介质,其中二维色度直方图的分组通过其中的像素的亮度加权。
17.根据权利要求12所述的非暂态计算机可读介质,其中基于相应的训练图像的一组训练色度直方图来训练滤波器,每个训练色度直方图与相应的训练图像的相应的已知照度关联。
18.根据权利要求17所述的非暂态计算机可读介质,其中使用每个训练色度直方图与滤波器的卷积的归一化指数函数来训练滤波器。
19.根据权利要求18所述的非暂态计算机可读介质,所述操作还包括:
基于输入图像的颜色,从输入图像的增强版本产生多个增强的二维色度直方图,其中每个输入图像的增强版本在被滤波时保留标量乘法特性,
其中将二维色度直方图与滤波器卷积包括:在应用归一化指数函数之前对多个增强的二维色度直方图的滤波的响应求和。
20.根据权利要求17所述的非暂态计算机可读介质,其中,在训练之后,滤波器表示在白平衡的场景中颜色的分布,并且独立于训练图像的色调。
CN201680013957.7A 2015-04-17 2016-04-12 用于图像处理的方法及非暂态计算机可读介质 Active CN107431790B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/689,246 US9336582B1 (en) 2015-04-17 2015-04-17 Convolutional color correction
US14/689,246 2015-04-17
PCT/US2016/027031 WO2016168145A1 (en) 2015-04-17 2016-04-12 Convolutional color correction

Publications (2)

Publication Number Publication Date
CN107431790A CN107431790A (zh) 2017-12-01
CN107431790B true CN107431790B (zh) 2019-04-02

Family

ID=55860033

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680013957.7A Active CN107431790B (zh) 2015-04-17 2016-04-12 用于图像处理的方法及非暂态计算机可读介质

Country Status (6)

Country Link
US (2) US9336582B1 (zh)
EP (1) EP3284060B1 (zh)
JP (1) JP6724045B2 (zh)
KR (1) KR101873183B1 (zh)
CN (1) CN107431790B (zh)
WO (1) WO2016168145A1 (zh)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9336582B1 (en) * 2015-04-17 2016-05-10 Google Inc. Convolutional color correction
US9794540B2 (en) * 2015-04-17 2017-10-17 Google Inc. Hardware-based convolutional color correction in digital images
WO2017079702A1 (en) 2015-11-05 2017-05-11 Google Inc. Edge-aware bilateral image processing
EP3226203A1 (en) * 2016-03-30 2017-10-04 Thomson Licensing Method for detection of saturated pixels in an image
CN106412547B (zh) * 2016-08-29 2019-01-22 厦门美图之家科技有限公司 一种基于卷积神经网络的图像白平衡方法、装置和计算设备
US10402943B2 (en) 2016-10-20 2019-09-03 Htc Corporation Image enhancement device and method for convolutional network apparatus
WO2018093785A1 (en) * 2016-11-15 2018-05-24 Google Llc Fast fourier color constancy
US10224004B2 (en) 2017-02-06 2019-03-05 Mediatek, Inc. Automatic white balance based on surface reflection decomposition
CN110352429B (zh) * 2017-04-20 2023-05-16 赫尔实验室有限公司 用于对象的判别定位的机器视觉系统
US10692245B2 (en) * 2017-07-11 2020-06-23 Datacolor Inc. Color identification in images
CN107578390B (zh) * 2017-09-14 2020-08-07 长沙全度影像科技有限公司 一种使用神经网络进行图像白平衡校正的方法及装置
US11669057B2 (en) 2017-12-13 2023-06-06 Hewlett-Packard Development Company, L.P. Neural network thermal behavior predictions
CN108537852B (zh) * 2018-04-17 2020-07-07 四川大学 一种基于图像局部对比度的自适应颜色恒常性方法
WO2019231217A1 (en) 2018-05-28 2019-12-05 Samsung Electronics Co., Ltd. Method and system for dnn based imaging
RU2709661C1 (ru) 2018-09-19 2019-12-19 Общество с ограниченной ответственностью "Аби Продакшн" Обучение нейронных сетей для обработки изображений с помощью синтетических фотореалистичных содержащих знаки изображений
CN111062876B (zh) * 2018-10-17 2023-08-08 北京地平线机器人技术研发有限公司 用于校正模型训练和图像校正的方法和装置及电子设备
US10931853B2 (en) * 2018-10-18 2021-02-23 Sony Corporation Enhanced color reproduction for upscaling
WO2020098953A1 (en) * 2018-11-16 2020-05-22 Huawei Technologies Co., Ltd. Meta-learning for camera adaptive color constancy
RU2721187C1 (ru) 2019-03-29 2020-05-18 Общество с ограниченной ответственностью "Аби Продакшн" Обучение языковых моделей с использованием текстовых корпусов, содержащих реалистичные ошибки оптического распознавания символов (ocr)
CN111935892B (zh) * 2019-05-13 2022-11-22 中科智云科技有限公司 用于测量等离子体状态的方法和设备
CN110349261B (zh) * 2019-07-15 2023-05-09 泰华智慧产业集团股份有限公司 基于gis生成三维热力图的方法
CN112399162B (zh) * 2019-08-16 2022-09-16 浙江宇视科技有限公司 一种白平衡校正方法、装置、设备和存储介质
WO2021051382A1 (zh) * 2019-09-20 2021-03-25 深圳市大疆创新科技有限公司 白平衡处理方法和设备、可移动平台、相机
WO2021093947A1 (en) 2019-11-13 2021-05-20 Huawei Technologies Co., Ltd. Multi-hypothesis classification for color constancy
CN111968049B (zh) * 2020-08-06 2022-11-11 中国科学院光电技术研究所 一种基于侧窗引导滤波的光场图像热像素点去除方法
CN112070791B (zh) * 2020-09-21 2024-06-14 深圳喜为智慧科技有限公司 一种提升畜牧个体点数精度和效率的方法和系统
WO2022158010A1 (ja) * 2021-01-22 2022-07-28 株式会社ロジック・アンド・デザイン 画像処理方法
US11606544B2 (en) * 2021-06-08 2023-03-14 Black Sesame Technologies Inc. Neural network based auto-white-balancing

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1335581A (zh) * 2000-07-12 2002-02-13 佳能株式会社 图像处理装置、图像处理方法和程序及其记录介质
CN1465175A (zh) * 2001-06-28 2003-12-31 精工爱普生株式会社 图像处理装置、图像处理方法和存储介质
CN1713690A (zh) * 2004-06-15 2005-12-28 微软公司 用于数字图像的自动化校正的系统和方法
CN1941843A (zh) * 2005-09-30 2007-04-04 三洋电机株式会社 图像处理装置以及图像处理程序
CN101706964A (zh) * 2009-08-27 2010-05-12 北京交通大学 一种基于图像导数结构的颜色恒常性计算方法及系统
CN104469134A (zh) * 2013-09-17 2015-03-25 奥林巴斯株式会社 摄像装置、电子取景器和显示控制方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5729691A (en) 1995-09-29 1998-03-17 Intel Corporation Two-stage transform for video signals
US6043909A (en) * 1996-02-26 2000-03-28 Imagicolor Corporation System for distributing and controlling color reproduction at multiple sites
US6075905A (en) 1996-07-17 2000-06-13 Sarnoff Corporation Method and apparatus for mosaic image construction
US6411953B1 (en) * 1999-01-25 2002-06-25 Lucent Technologies Inc. Retrieval and matching of color patterns based on a predetermined vocabulary and grammar
US7200264B2 (en) * 2002-04-10 2007-04-03 Hewlett-Packard Development Company, L.P. White point estimation using color by convolution
US7113649B2 (en) * 2002-06-24 2006-09-26 Eastman Kodak Company Enhancing the tonal characteristics of digital images
US8155454B2 (en) 2006-07-20 2012-04-10 Qualcomm Incorporated Method and apparatus for encoder assisted post-processing
US8253752B2 (en) 2006-07-20 2012-08-28 Qualcomm Incorporated Method and apparatus for encoder assisted pre-processing
KR100841429B1 (ko) * 2006-11-30 2008-06-25 삼성전기주식회사 화이트 밸런스 자동 조정장치 및 그 방법
US8179402B2 (en) * 2007-10-31 2012-05-15 Canon Kabushiki Kaisha Generating colorimetric profiles from spectral data and user input
US8149459B2 (en) * 2009-02-24 2012-04-03 Xerox Corporation Mapping an out-of-gamut color to a surface of a color gamut
JP5319415B2 (ja) 2009-06-22 2013-10-16 キヤノン株式会社 画像処理装置、画像処理方法
US8797414B2 (en) 2010-12-23 2014-08-05 Samsung Electronics Co., Ltd. Digital image stabilization device
US8780225B2 (en) * 2011-10-12 2014-07-15 Apple Inc. Use of noise-optimized selection criteria to calculate scene white points
US9007484B2 (en) * 2011-10-12 2015-04-14 Apple Inc. Alleviating dominant color failure in automatic white balance using histogram trimming
US9336582B1 (en) * 2015-04-17 2016-05-10 Google Inc. Convolutional color correction

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1335581A (zh) * 2000-07-12 2002-02-13 佳能株式会社 图像处理装置、图像处理方法和程序及其记录介质
CN1465175A (zh) * 2001-06-28 2003-12-31 精工爱普生株式会社 图像处理装置、图像处理方法和存储介质
CN1713690A (zh) * 2004-06-15 2005-12-28 微软公司 用于数字图像的自动化校正的系统和方法
CN1941843A (zh) * 2005-09-30 2007-04-04 三洋电机株式会社 图像处理装置以及图像处理程序
CN101706964A (zh) * 2009-08-27 2010-05-12 北京交通大学 一种基于图像导数结构的颜色恒常性计算方法及系统
CN104469134A (zh) * 2013-09-17 2015-03-25 奥林巴斯株式会社 摄像装置、电子取景器和显示控制方法

Also Published As

Publication number Publication date
US20160350900A1 (en) 2016-12-01
WO2016168145A1 (en) 2016-10-20
CN107431790A (zh) 2017-12-01
EP3284060B1 (en) 2019-06-12
EP3284060A1 (en) 2018-02-21
US9336582B1 (en) 2016-05-10
JP6724045B2 (ja) 2020-07-15
US9672604B2 (en) 2017-06-06
KR101873183B1 (ko) 2018-06-29
KR20170131704A (ko) 2017-11-29
JP2018515862A (ja) 2018-06-14

Similar Documents

Publication Publication Date Title
CN107431790B (zh) 用于图像处理的方法及非暂态计算机可读介质
US10237527B2 (en) Convolutional color correction in digital images
EP3542347B1 (en) Fast fourier color constancy
WO2019233341A1 (zh) 图像处理方法、装置、计算机可读存储介质和计算机设备
CN105765967B (zh) 使用第二相机来调节第一相机的设置的方法、系统和介质
CN106416226B (zh) 图像处理系统、成像设备、图像处理方法以及计算机可读记录介质
KR20160095060A (ko) 시야의 가리움에 기초한 카메라 선택
CN109844804B (zh) 一种图像检测的方法、装置及终端
TWI420405B (zh) 人臉影像代換系統及方法
CN109196852B (zh) 拍摄构图引导方法及装置
CN108537155A (zh) 图像处理方法、装置、电子设备及计算机可读存储介质
CN105245863A (zh) 进行白平衡控制的图像处理装置及其控制方法和摄像设备
CN108024105A (zh) 图像色彩调节方法、装置、电子设备及存储介质
CN101444083B (zh) 针对数字图像上相对照度现象的处理方法和相关处理系统
Zhang et al. Improved and robust spectral reflectance estimation
Kınlı et al. Modeling the lighting in scenes as style for auto white-balance correction
CN114945943A (zh) 基于虹膜大小估计深度
CN109300186B (zh) 图像处理方法和装置、存储介质、电子设备
CN116668838B (zh) 图像处理方法与电子设备
JP2019175277A (ja) アイテム管理装置、アイテム管理方法及びアイテム管理プログラム

Legal Events

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