相机控制的方法

文档序号:7781751阅读:286来源:国知局
相机控制的方法
【专利摘要】本发明提供一种使能相机控制的用户界面方法。在一示例中,方法包括以下步骤:在相机的用户界面装置上显示色调映射高动态范围(HDR)图像;经由与用户界面装置关联的输入装置接收用户编辑;发送用户编辑给相机的一个或多个后端装置以进行基于用户编辑的处理操作;由一个或多个后端装置接收已更新的色调映射HDR图像,其中已更新色调映射HDR图像是来自基于用户编辑进行的处理操作;以及当相机镜头继续捕捉该场景的帧以供一个或多个后端装置实施迭代地影响已更新色调映射HDR图像的操作时,在用户界面显示已更新的色调映射HDR图像。
【专利说明】相机控制的方法
[0001]相关申请的交叉参考
[0002]本申请要求2012年12月21日提交的申请序号为61/745,198的美国临时专利申请的优先权,在此引入该申请作为参考。
【技术领域】
[0003]本发明总体上涉及相机捕捉,更具体地说,涉及一种相机控制的方法。
【背景技术】
[0004]具有数码相机、显示器、足够的计算能力和触摸界面的移动设备正变得越来越普及和强大。现在与以往相比,更多的相片由移动设备来捕捉,它们多数在设备上直接编辑并从该设备上直接共享,甚至不上传到PC机。该现象很好地反映于相机控制和移动平台的图像处理的近期焦点,以及反映于智能电话上照相应用的普及。
[0005]典型的数码相机,无论是功能丰富的数码单反(DSLR)还是傻瓜相机装置,依赖一组旋钮和按钮来控制捕捉参数。在独立的照相管线内,用户选择一种预定的捕捉模式以指定相机测光策略(例如,日光、夜晚模式、点模式、全景、微距捕捉等),捕捉图像同时以滑块或刻度盘调整捕捉参数。然后,做为可选的后处理步骤,用户实施编辑以纠正不想要的测光设置(例如,曝光过度/不足的图面或特定区域,将合成模糊加到背景以强调前景等)。这种经过近一个世纪的摄影演变而得来的方法,是有效的但给无经验的相机用户造成许多困难。由于不能反映用户意图的粗糙测光策略,傻瓜相机往往产生次优的图像,但没有深入的摄影知识很难操作DSLR。最重要的是,旋钮和按钮界面的直接接口无法充分地利用在许多移动设备上可用的触摸基界面的潜力。
[0006]早期摄影师无法直接看到其所捕捉照片的结果,但是不得不想像各种图像参数的功能,例如曝光、焦距、甚至是所用胶片和白纸的选择。带有显示预览图像的实时数码显示器的数码相机,使捕捉在这方面更容易。相机给出所捕捉图像是什么样子的预览,使设计图像和选择捕捉时机变得更容易、更有趣。然而,当使用许多计算摄影技术时,用户仍然需要想像结果,例如,组合突破曝光于高动态范围(HDR)图像和色调映射HDR图像回显示的低动态范围(LDR),而不是看数码取景器中最终结果的近似值。类似的限制也适用于传统的数码摄影。许多摄影师在捕捉后使用例如Photoshop或Lightroom工具编辑其照片。不幸的是,在知道后期编辑对结果的可能作用之前,用户必须捕捉到现场镜头。因此捕捉过程依然与图像编辑过程分离,可能导致不充分数据采集(例如,错误的成份或不充分的信噪比(SNR))或过度数据采集(例如,较长的捕捉时间、加剧的手抖或运动模糊,以及存储或传输的成本升高)。
[0007]因此,典型的数码相机提供具有最终图像的几乎真实描述的数码取景器。然而,如果图像来自不同捕捉图像的突发(burst),或者非线性交互式编辑对最终结果具有突出的贡献,摄影师不能直接看到结果,而需要想像后处理的效果。
[0008]因此,需要一种相机,该相机能够捕捉到更准确地反映用户在驱动快门时刻的意图的场景。

【发明内容】

[0009]本发明一实施方式包括一种使能相机控制的用户界面方法。在一示例中,该方法包括以下步骤:在相机的用户界面装置上显示色调映射高动态范围(HDR)图像,其中用户界面包括定义显示表面的多个像素,且其中色调映射HDR图像包括相机的相机镜头所指向场景的演绎;通过与用户界面装置关联的输入装置接收用户编辑;发送用户编辑给相机的一个或多个后端装置以实施基于用户编辑的处理操作;从一个或多个后端装置接收已更新的色调映射HDR图像,其中已更新色调映射HDR图像是由基于用户编辑而实施的处理操作所产生;以及在相机镜头继续捕捉该场景的帧以供一个或多个后端装置实施迭代地影响已更新色调映射HDR图像的操作时,在用户界面显示已更新色调映射HDR图像。
[0010]本方法提供与传统方法相比的至少两个好处。一个好处是该相机控制系统使用户能够做出有关图像构图的更好决定,因为该相机控制系统使用户能够意识到用户未决编辑将如何影响驱动快门时所捕捉的图像。在这方面,取景器用作预可视化工具,提供提升的用户体验。另一个好处是相机控制系统执行的程序更好利用捕捉参数,比如焦距、曝光、增益、白平衡等等。
【专利附图】

【附图说明】
[0011]因此,可以详细地理解本公开的上述特征,并且可以参考示范性实施例得到对如上面所简要概括的本公开更具体的描述,其中一些实施例在附图中示出。然而,应当注意的是,附图仅示出了本公开的典型实施例,因此不应被认为是对其范围的限制,本公开可以具有其他等效的实施例。
[0012]图1为描述用以实现本发明一或多个实施例的相机系统的方框图。
[0013]图2为描述本发明一实施例的并行处理子系统的方框图。
[0014]图3为依据本发明一实施例的具有相机控制系统的相机系统的方框图。
[0015]图4A为依据本发明一实施例中在相机控制操作的初始阶段的相机系统的概念图。
[0016]图4B为依据本发明一实施例中当用户在用户界面装置上进实施实时编辑的相机系统的概念图。
[0017]图4C为依据本发明一实施例中,图4B的操作之后实时编辑时的相机控制系统的概念图。
[0018]图4D为依据本发明一实施例中,图4C的操作之后实时编辑时的相机控制系统的概念图。
[0019]图4E为依据本发明一实施例中,图4D的操作之后实时编辑时的相机控制系统的概念图。
[0020]图5为依据本发明一实施例的控制相机的方法步骤的流程图。
[0021]图6A为描述本发明一实施例中通过每个像素分析的基于编辑的测光情况(a)的示意图。
[0022]图6B为描述本发明一实施例中通过每个像素分析的基于编辑的测光情况(b)的示意图。
[0023]图6C为描述本发明一实施例的每个像素目标的集合的方框图。
【具体实施方式】
[0024]在下面的描述中,将阐述大量的具体细节以提供对本公开更透彻的理解。然而,本领域的技术人员应该清楚,本公开可以在没有一个或多个这些具体细节的情况下得以实施。在其他实施例中,未描述众所周知的特征,以避免模糊本发明。
[0025]除其他事项外,本发明的实施例针对相机控制,包括决定相机捕捉参数(自动对焦、自动曝光、自动白平衡等)的新级别算法。现有的相机系统依靠滑块、刻度盘和启发式算法来调整参数。这样的方法,虽然实用,对于基于触摸的用户界面是次优的并仅支持取景器流的全局变化。本发明的实施例,另一方面,能够空间定域测光且使用户能够通过一组编辑直接在取景器图像上组合照片的外观和感觉。基础优化构架确保相机处理的实时执行实现用户定义外观和图像质量限制。
[0026]硬件综述
[0027]图1为被配置以实现本发明的一个或多个方面的相机系统100的方框图。图1未限制或意图限制本发明的范围。系统100可为数码相机、平板电脑、笔记本电脑、智能电话、移动电话、移动设备、个人数码助理、个人电脑或任何其他适于实施本发明一个或多个实施例的设备。设备(device)是硬件或硬件与软件的组合。部件(component)通常为设备的一部分且为硬件或硬件与软件的组合。相机系统100包括中央处理单元(CPU) 102和具有设备驱动程序103的系统存储器104。
[0028]中央处理单元(CPU)102和系统存储器104通过互连路径通讯,该互连路径可包括存储器桥105。存储器桥105可以是例如北桥芯片,经由总线或其他通信路径106 (例如超传输(HyperTransport)链路)连接到I/O (输入/输出)桥107。I/O桥107,其可以是例如南桥芯片,从一个或多个用户输入装置108 (例如触摸屏、光标小键盘、键盘、鼠标等)接收用户输入,并且经由通信路径106和存储器桥105将该输入传输到CPU102。并行处理子系统112通过总线或其他通讯路径113 (例如快速外围部件互连(PCI)、图形加速端口(AGP)、和/或超传输(HyperTransport)链路)稱接于存储器桥105。在一实施方式中,并行处理子系统112是图形子系统,其将像素传输到显示装置110 (例如,传统阴极射线管(CRT)和/或液晶显示器(IXD)基监视器等)。系统盘114也连接到I/O桥107。交换器116提供I/O桥107与诸如网络适配器118以及各种插卡120和121的其他部件之间的连接。其他部件(未明确示出),包括通用串行总线(USB)和/或其他端口连接、压缩光盘(CD)驱动器、数码视频光盘(DVD)驱动器、胶片录制装置及类似部件,也可以连接到I/O桥107。实施互连图1中各种部件的通讯路径,可通任何适合的协议,比如PC1、高速PCI (PCIe), AGP、超传输、和/或任何总线或点到点通讯协议,可使用不同协议的不同装置间的连接在现有技术中已知。
[0029]下面参考图2-5进一步描述,并行处理子系统112包括并行处理单元(PTO),其被配置以通过使用能够控制的电路执行软件应用(例如设备驱动程序103)。那些数据包类型通过通讯路径113所使用的通讯协议指定。在新数据包类型引进到通讯协议(例如,由于通讯协议的提升)的情况下,并行处理子系统112可被配置以生成基于新数据包类型的数据包并且使用新数据包类型跨越通讯路径113与CPU102 (或其他处理单元)交换数据。[0030]在一个实施方式中,并行处理子系统112纳入经优化用于图形和视频处理的电路,包括,例如,视频输出电路,并且构成图形处理单元(GPU)。在另一个实施方式中,并行处理子系统112纳入经优化用于通用处理的电路,同时保留底层(underlying)计算架构,本文将更详细地进行描述。在又一个实施方式中,并行处理子系统112可与一个或多个其他系统部件集成,诸如存储器桥105、CPU102以及I/O桥107以形成片上系统(SoC)。
[0031]应该理解,本文所示系统是示例性的,并且变化和修改都是可能的。连接拓扑,包括桥的数目和布置、CPU102的数目以及并行处理子系统112的数目,可根据需要修改。例如,在一些实施方式中,系统存储器104直接连接到CPU102而不是通过桥,并且其他装置经由存储器桥105和CPU102与系统存储器104通信。在其他替代性拓扑中,并行处理子系统112连接到I/O桥107或直接连接到CPU102,而不是连接到存储器桥105。而在其他实施例中,I/O桥107和存储器桥105可能被集成到单个芯片上。大型实施方式可以包括两个或更多个CPU102以及两个或更多个并行处理系统112。本文所示的特定部件是可选的;例如,任何数目的插卡或外围装置都可能得到支持。在一些实施方式中,交换器116被去掉,网络适配器118和插卡120、121直接连接到I/O桥107。
[0032]图2为本发明一实施例的并行处理子系统的方框图。如所示的,并行处理子系统112包括一个或多个并行处理单元(PPU) 202,每个并行处理单元202都耦接到本地并行处理(PP)存储器204。通常,并行处理子系统包括U个PPU,其中U > I。(本文中,类似对象的多个实例需要时以标识对象的参考数字和标识实例的括号中的数字来表示。)PPU202和并行处理存储器204可使用一个或多个集成电路装置来实现,诸如可编程处理器、专用集成电路(ASIC)或存储器装置,或者以任何其他技术可行的方式来实现。
[0033]再参考图1,在一些实施方式中,并行处理子系统112中的一些或所有PPU202是具有渲染管线的图形处理器,其可被配置以实施各种任务,该任务与从图形数据生成像素数据相关,该图形数据通过与本地并行处理存储器204(其可用作图形存储器包括,例如,传统的帧缓冲器)相互作用的存储器桥105和总线113提供,以存储和更新像素数据、向显示装置110传达像素数据等等。在一些实施方式中,并行处理子系统112可包括一个或多个作为图形处理器而操作的Pro202、以及一个或多个用于通用计算的其他PPU202。这些PPU可以是同样的或不同的,并且每个PPU可具有自己专用并行处理存储器装置或不具有专用并行处理存储器装置。一个或多个PPU202可输出数据到显示装置110,或者每个PPU202可输出数据到一个或多个显示装置110。
[0034]在操作中,CPU102是相机系统100的主处理器,控制和协调其他系统部件的操作。特别地,CPU102发出控制PPU202操作的命令。在一些实施方式中,CPU102将每个PPU202的命令流写入入栈缓冲器(图1或2未明确示出),入栈缓冲器可位于系统存储器104、并行处理存储器204、或可访问CPU102和PPU202的另一存储位置。PPU202从入栈缓冲区读取命令流,然后执行相对于CPU102操作异步的命令。
[0035]现在返回参考图2,每个PPU202包括一 I/O (输入/输出)单元205,该单元205经由连接到存储器桥105 (或者,在一个替代性实施方式中,直接连接到CPU102)的通信路径113与相机系统100的其余部分通信。PPU202到计算机系统100的其余部分的连接也可以变化。在一些实施方式中,并行处理子系统112可实施为插卡,该插卡可插值到相机系统100的扩展槽中。在其他实施方式中,PTO202可以和诸如存储器桥105或I/O桥107的总线桥集成在单个芯片上。而在其他实施方式中,PPU202的一些或所有部件可以和CPU102集成在单个芯片上。
[0036]在一个实施方式中,通信路径113是PCIe链路,如本领域所知的,其中专用通道被分配到每个PPU202。也可以使用其他通信路径。如上所述,逆流互连还可用于实施通讯路径113,以及在相机系统100、CPU102或PPU202中任何其他通讯路径。I/O单元205生成用于在通信路径113上传送的包(或其他信号),并且还从通信路径113接收所有传入的包(或其他信号),将传入的包引导到PPU202的适当部件。例如,可将与处理任务相关的命令引导到主机接口 206,而将与存储器操作相关的命令(例如,对并行处理存储器204的读取或写入)引导到存储器交叉开关单元210。主机接口 206读取每个入栈缓冲器,并且将由入栈缓冲区指定的工作输出到前端212。
[0037]有利地,每个PPU202都实现高度并行处理架构。如详细示出的,PPU202 (O)包括算法子系统230,该子系统230包括C个通用处理集群(GPC)208,其中C > I。每个GPC208能够并发地执行大量的(例如,几百或几千)线程,其中每个线程是程序的实例(instance)。在各种应用中,可分配不同的GPC208用于处理不同类型的程序或用于实施不同类型的计算。GPC208的分配可以依据每个类型的程序或计算所产生的工作量而变化。
[0038]GPC208接收通过工作分配单元200执行的处理任务,其接收来自前端单元212的定义处理任务的命令。前端212确保在启动由入栈指定的处理前,GPC208被配置于有效的状态。 [0039]当PI3U用于图形处理时,例如,操作的处理工作量可分割为近乎相等尺寸任务以使操作能够分配到多GPC208。工作分配单元200可被配置于能够提供任务的频率上产生任务给处理的多GPC208。在一实施方式中,工作分配单元200可产生任务足够快以同时保持忙碌多GPC208。相反地,在传统系统中,处理通过由单处理引擎执行,同时其他处理引擎保持空转,等待单处理引擎在开始其处理任务前完成任务。在本发明一些实施方式中,GPC208的部分被配置以执行不同类型的处理。例如,第一部分被配置以执行顶点阴影(vertexshading)和拓扑生成。第二部分可被配置以执行曲面细分(tessellation)和几何阴影(geometryshading)。第三部分可被配置以执行屏幕空间的像素阴影以产生已渲染图像。由GPC208产生的中间数据可存在于缓冲器以使中间数据能够被在GPC208之间进一步处理。
[0040]存储器接口 214包括D个分区单元215,每个分区单元215直接耦连到并行处理存储器204的一部分,其中D≥1。如所示的,分区单元215的数目一般等于DRAM220的数目。在其他实施方式中,分区单元215的数目也可以不等于存储器装置的数目。动态随机访问存储器(DRAM)220可被其他适合的存储装置取代并可为通常传统设计。诸如帧缓冲器或纹理映射图的渲染目标可以跨DRAM220加以存储,这允许分区单元215并行写入每个渲染目标的各部分以有效地使用并行处理存储器204的可用带宽。
[0041]任何一个GPC208都可以处理要被写到并行处理存储器204内的任何DRAM220的数据。交叉开关单元210被配置以发送每个GPC208的输出到任何分区单元215的输入或到另一个GPC208用于进一步处理。GPC208通过交叉开关单元210与存储器接口 214通信,以对各种外部存储器设备进行读取或写入。在一个实施方式中,交叉开关单元210具有到存储器接口 214的连接以和I/O单元205通信,以及到本地并行处理存储器204的连接,从而使得在不同GPC208内的处理内核能够与系统存储器104或对于PPU202而言非本地的其他存储器通信。在图2所示的实施方式中,交叉开关单元210直接与I/O单元205连接。交叉开关单元210可使用虚拟信道来分开GPC208与分区单元215之间的业务流。
[0042]另外,GPC208可被编程以执行与种类繁多的应用相关的处理任务,包括但不限于,线性和非线性数据变换、视频和/或音频数据过滤、建模操作(例如,应用物理定律以确定对象的位置、速率和其他属性)、图像渲染操作(例如,曲面细分(tessellation)着色器、顶点着色器、几何着色器、和/或像素着色器程序)等等。PPU202可将数据从系统存储器104和/或本地并行处理存储器204转移到内部(片上)存储器中,处理该数据,并且将结果数据写回到系统存储器104和/或本地并行处理存储器204,其中这样的数据可以由其他系统部件访问,所述其他系统部件包括CPU102或另一个并行处理子系统112。
[0043]PPU202可配备有任何容量(amount)的本地并行处理存储器204,包括没有本地存储器,并且可以以任何组合方式使用本地存储器和系统存储器。例如,在统一存储器架构(UMA)实施方式中,PPU202可以是图形处理器。在这样的实施方式中,将不提供或几乎不提供专用的图形(并行处理)存储器,并且PPU202会以排他或几乎排他的方式使用系统存储器。
[0044]在UMA实施方式中,PPU202可集成到桥式芯片中或处理器芯片中,或作为具有高速链路(例如,PCIe)的分立芯片提供,所述高速链路经由桥式芯片或其他通信手段将PPU202连接到系统存储器。
[0045]如上所示,在并行处理子系统112中可以包括任何数目的PPU202。例如,可在单个插卡上提供多个PPU202、或可将多个插卡连接到通信路径113、或可将一个或多个PPU202集成到桥式芯片中。在多PI3U系统中的PPU202可以彼此同样或不同。
[0046]例如,不同的PPU202可能具有不同数目的处理内核、不同容量的本地并行处理存
储器等等。
[0047]在存在多个PPU202的情况下,可并行操作那些PI3U从而以更高于单个PPU202所可能达到的吞吐量来处理数据。包含一个或多个PPU202的系统可被配置于各种配置和形成因素来实现,包括台式电脑、笔记本电脑或手持式个人计算机、服务器、工作站、游戏控制台、嵌入式系统等等。
[0048]本发明一实施例的执行为用于计算机系统程序产品,比如图1所示的相机系统100。
[0049]程序产品的一个或多个程序定义实施例的功能(包括本文所述的方法)并可限定于各种计算机可读的存储介质。例如说计算机可读介质包括,但不限于:(i)非可写存储介质(例如,计算机中的只读存储装置,例如可由CD-ROM驱动器读取的CD-ROM盘,闪存,ROM芯片或任何类型的固态非易失性半导体存储器),其上可永久保存信息;以及(ii )可写存储介质(例如,在软盘驱动器的软盘或硬盘驱动器或任何类型的固态随机访问半导体存储器),其上可存储可变信息。
[0050]相机控制系统概述
[0051]当前方法利用移动设备的处理能力,使在数码相机和在具有数码相机的移动设备(例如手机)上台式机一样的工作流程成为可能。相机控制系统利用这些处理能力引入实现取景器编辑,其使用户在捕捉前直接在取景器上进行编辑。相机控制系统带给计算机捕捉应用所见即所得(WYSIWYG)的界面,使用户能够在取景器上直接看到交互式编辑的效果。利用该界面,相机控制系统还收集对用户重要的图像各方面的信息,该信息又影响捕捉参数的选择,比如捕捉图像的数目、曝光值、焦距、白平衡等等。为实现该理念,相机控制系统使用统一的框架,其中用户提供输入(例如,稀疏的,基于点击的输入等)以控制本地的或全局的色调、颜色、饱和度、焦距、和其他参数。然后,用户接收取景器上的即时反馈。
[0052]用户提供的选择是基于相似性(affinity)。相机控制系统存储作为图像修改空间的稀疏采样功能的选择。然后,相机控制系统通过匹配图像块传送选择给后续取景框。相机控制系统将编辑即应用于取景器图像又应用于用户最终决定捕捉(例如,通过致动快门)的高分辨率图像。另外,相机控制系统内部使用编辑来驱动相机控制程序,其决定适当的曝光和/或焦距值等。用户甚至可提供不一致的线索,然后其可通过取得两个不同设置的图像并组合结果来满足。
[0053]控制系统使用户能够做出关于组合的最好决策,因为相机控制系统使用户认识到用户未决定的编辑将如何影响已捕捉图像。相机控制系统在这点上用作预先可视化的工具,提供新的用户体验。此外,系统能够使相机控制程序更好地优化捕捉参数,比如焦距、曝光、增益和白平衡。用户表达如何变换图像,使算法能够导出支持变换所需噪声阈值、景深、动态范围。例如,如果用户希望局部照亮场景暗区,用户的输入应该导致不同的测光决定;或者,若用户乐于让天空在显示器上饱和,完整的曝光堆栈是不必要的。在此框架中,基于堆栈的计算捕捉与传统捕捉无缝地融合,当并且只有当必要时起作用。
[0054]相机控制系统提供快速编辑传播算法,取景器界面充分地利用可视化的知识以可视化编辑、色调映射、多重曝光混合和相机控制程序,其共同形成可以在移动平台和/或桌面平台及其他平台间以交互速率运行的系统。
[0055]图3为依据本发明一实施例中具有相机控制系统302的相机系统101的方框图。如图所示,相机控制系统302包括,但不限于,相互耦接的用户界面装置306、掩码生成装置304、测光装置302。用户界面装置306包括但不限于实时编辑装置322、所见即所得(WYSIWYG)取景器装置308。
[0056]用户界面装置306是前端装置,其用户使用快速的时空编辑传播架构从而能够以交互速率基于点击编辑取景器。相机控制系统302模拟作为图像块空间函数的编辑并存储以高维数据结构的编辑。
[0057]测光装置305是后端装置,其使用HDR测光显示在屏幕上的已编辑取景器图像的质量。对于给定用户的编辑和场景(例如,以实时构建的色调映射HDR图像表示),测光装置305产生最大化HDR图像的显示外观质量的测光参数(例如,曝光时间等)。特别地,测光装置305考虑每个所显示像素的感知激励阈值,反向通过图像处理管线(包括用户编辑和色调映射)映射阈值,以计算在图像传感器的可接受的噪声阈值,然后计算满足整个图像的已计算阈值的曝光组。该方案与目的在于获得尽可能真实的物理场景幅照度现有的HDR测光算法形成对比。
[0058]掩码生成装置402是后端装置,其生成编辑掩码是通过分类场景的纹理、产生稀疏编辑掩码、进行边缘保留平滑、然后构建编辑掩码。下面参见图5进一步解释动作。
[0059]相机控制系统302可用于专用数码相机、桌面电脑、笔记本电脑、平板电脑和/或移动电话或其他平台。下面参见图4A-5进一步描述相机控制系统302。[0060]取景器编辑示例
[0061]图4A-4E为依据本发明各种实施例,说明在用户界面装置306的取景器装置308上编辑的系列示意图。相机控制系统的处理取景器编辑,以更准确地显示用户打算捕捉的图像。相机持续地捕捉相机镜头所指向的场景的帧,并持续地使用后端操作中处理的帧。后端操作包括将取景器编辑与相机所捕捉的帧结合的操作。因此,相机控制的方法包括持续的、反复的、相互高度依赖的操作。因此,取景器编辑发生在实时(例如,当相机捕捉后端处理的场景的巾贞)。
[0062]图4A为依据本发明一实施例,在相机控制操作的初始阶段的相机系统302的概念图。相机控制系统302被开启,其包括具有WYSISYG取景器装置308的用户界面装置306。用户410将相机镜头(图未示)指向现场场景404。现场场景404之所以“活”,是因为场景包括潜在移动的目标(例如,人物、风景、动物、和/或其他目标等),还因为相机至少一点也是潜在移动的。然而,可选的,现场场景404中的目标可是大体静止的或相对于相机位置是不动的。
[0063]在此初始阶段,相机控制系统302将现场场景404描述为用户界面装置306的WYSIWYG取景器装置308上的未编辑图像412。在该示例中,将相机控制系统302描述成平板电脑的相机的部分。其他示例,除了平板电脑,包括智能电话、专用的数码相机、笔记本电脑、移动电话、移动设备、个人数码助理、个人计算机或适于执行本发明一或多个实施例的其他任何装置。
[0064]图4B是依据本发明一实施例,在用户410在用户界面装置306上进行实时编辑时相机系统302的概念图。在一实施方式中,相机控制系统302可从用户界面装置306上的用户410接收稀疏点击(未图示),如同用户界面装置306是油画布一样。当相机控制系统302接收用户界面装置306上的点击时,相机控制系统302标记选择区域420的相应图像块。相机控制系统302可通过接收选择区域420的区域中的轻击(或鼠标点击等)而接收选择区域420的确认。或者,相机控制系统302可通过接收,例如选择区域420的区域外的轻击(或鼠标点击等),而接收选择区域420的取消。
[0065]选择区域420包括用户界面装置308的部分的和/或所有的像素。在该示例中,选择区域是矩形的。或者,选择区域可以是另一形状,比如,举例来说,圆形、椭圆形、任何类型的多边形、以及其他形状。选择区域420或者还可以基于纹理(texture)。例如,天空可具有与人脸不同的纹理。因此,在一实施方式中,相机控制系统302可识别纹理的不同并获得基于纹理匹配的选择区域(例如,匹配天空的纹理以选择天空作为选择区域,或者匹配人的纹理以选择人作为选择区域等)。
[0066]相机控制系统302将选择区域420的图像块存储于支持匹配图像块的数据结构。在现场场景404 (其为流动并不是静止的)的后续帧中,相机控制系统302选择具有与先前所选择块匹配的相应图像块的像素。由于不包括追踪,相机控制系统302对运动和/或场景的遮掩和/或相机镜头有较强的鲁棒性。
[0067]确认选择区域420,实时编辑装置322显示各种编辑选项。在该示例中,编辑选项包括亮度、饱和度、对比度和色度。编辑选项的其他示例(未图示)可包括但不限于白平衡、色彩、色调、焦距、曝光、增益和灰度等级。配置相机控制系统302用以从用户接收编辑选项之一的选择。[0068]图4C是依据本发明一实施例,在图4B的实时编辑后续操作时相机控制系统302的概念图。在该示例中,选择区域421显示为包括孩子的脸。相机控制系统302是边缘保护的(例如边缘感知)且能够区分目标(例如孩子的脸或孩子的皮肤)的纹理与现场场景另一部分的纹理。用户界面装置306从用户410接收在实时编辑装置323上饱和度编辑选项的选择。实时编辑装置323在用户界面306显示滑块,该滑块使相机控制系统302从用户410处接收饱和度大小的选择。在该示例中,当相机控制系统302由用户410处接收点击手势以指令饱和度大小时,实时编辑装置323由此更新。在另一示例中,实时编辑装置323可被配置以接收没有可见滑块的选择区域321上的点击手势。
[0069]图4D是依据本发明一实施例,在图4C的实时编辑后续操作时相机控制系统302的概念图。当相机控制系统进行选择方面的处理时,接收有关饱和度编辑的相机控制系统302的选择区域421 (图4C)的区域成为噪声,如图4D所示。噪声区域424可为相机控制系统302的有用特征。例如,通过显示已编辑图像432,相机控制系统302可告知用户依已请求用户编辑进行处理。显示噪声的步骤是可选择步骤,并可能或可能不基于实施例的相机控制系统302的特征。例如,相机控制系统302的处理足够快,以至于用户410无需通过显不噪声输出而被告知。
[0070]图4E是依据本发明一实施例,在图4D的实时编辑后续操作时相机控制系统302的概念图。在用户410选择和编辑后,已编辑和调整的图像442显示在图4E中。参考图4B-4D的如上所述,相机控制系统302在选择区域420进行处理,通过利用实时编辑意识测光而编辑选择区域420的饱和度。在取景器装置308的已显示图像442大体相同于在用户410输入启动快门的请求时可捕捉到的图像。显示图像442是原本可在后处理步骤中应用的转换应用的结果。然而,在本技术中,相机控制系统302应用关于现场场景404的相机实时使用时的转换代替后处理操作时的转换。该实时处理有利于已捕捉图像更准确地描绘用户意图。
[0071]因此,相机控制系统302能够使用户通过改变外观指定什么是重要的,包括但不限于,基于点击输入的亮度、饱和度、对比度、色度、色调、色彩、和/或焦距。相机控制系统302以交互速率向用户传送这些更改的可视化、促使相机控制程序选择更好的捕捉参数(例如,曝光、增益、焦距、白平衡等),获得所需的突发图像。该处理需要多个兴趣区域的实时追踪、取景器上编辑的可视化、给定编辑的优选突发捕捉的决定。下面参考图4和5进一步描述,相机控制系统302提供这些问题中每一个的解决方案,能够在桌面和移动平台上进行交互取景器编辑。相机控制系统302的取景器编辑提高了捕捉参加的选择,能够为用户410提供更吸引人的捕捉经验。
[0072]其他构架细节
[0073]再参见图3,为了图像采集,测光装置305将来自传感器(图未示)的原始图像数据传入缓存最新帧的数据堆栈,这些最新帧可经由处理线程合并和处理。相机控制系统302为用户界面装置306的取景器上的显示内部获取完全曝光或焦距堆栈。否则,省略的、模糊的或曝光不足的区域可干扰用户之后的选择。因此,每帧基础上更新捕捉参数如下:相机控制系统302通过当前HDR场景评估的对数亮度通道(1g-1uminancechannel)的直方图计算第K帧所需的曝光,去除预期被第(K-1)帧覆盖的仓斗(bins),并测量剩余仓斗。对于焦距堆栈(focal stack),相机控制系统302从最小到最大焦距迭代固定增量。[0074]对于取景器装置308上编辑传播,测光装置305的处理线程提取N个最近帧(例如,对于曝光堆栈N=3而对于焦距堆栈N=4)并将帧合并到HDR幅照度图。相机控制系统302可使用本领域技术人员所熟知的任何公式将LDR图像合并到HDR图像。在一实施方式中,相机控制系统302可以Logluv格式(例如,LogLuvTIFF)存储所得场景评估。使用基于规范单元的格式是可取的,因为基于图像块的选择和编辑对捕捉参数的改变有较强的鲁棒性。
[0075]掩码生成装置304模拟选择和编辑作为跨越图像块描述符的空间的函数。掩码生成装置304计算跨越场景中每个图像块的这些函数并生成掩码,下面参见图5进一步地描述。然后,测光装置305将掩码应用于已编码数据(例如,Logluv编辑数据),色调映射所得输出,并在取景器装置308上显示输出。Logluv是用于以另一图像格式(例如TIFF)存储HDR图像数据的编码。若用户界面装置306接收焦距编辑,测光装置305可重组来自焦距堆栈的图像。
[0076]基于所显示的结果,测光装置305重新计算曝光和/或焦距值的最佳组合,以下参见图5进行进一步地描述。测光装置305利用这些参数来影响相机捕捉的帧。测光装置305通过上述处理管线传送已捕捉帧并生成一 HDR图像。测光装置305在HDR图像上进行色调映射以生成取景器装置308上显示的最终输出。
[0077]用户界面装置306呈现给用户看似正常的取景器装置308。然而,在内部,相机控制系统302定期获得曝光和/或后端的焦距堆栈。在一实施例中,参见图4B所述,用户通过点击手势选择区域。然后,用户可通过轻击已选择区域外而取消选择,或者通过轻击已选择区域内而确认选择,其触发代表各种类型编辑(例如,亮度、饱和度、对比度、色度等)的图标的重叠。一旦用户选择用于已选择区域的编辑种类,用户做出水平向左或向右扫的手势变换已指定的特征(例如,变暗或变亮,更清晰或更模糊等)。
[0078]方法概述
[0079]图5为依据本发明一实施例的控制相机的方法步骤的流程图。在一些实施方式中,方法步骤可由图3的相机控制系统302执行,该相机控制装置包括用户界面装置306、掩码生成装置304和测光装置305。本领域技术人员将会理解,方法步骤是不固定的、重复的、彼此高度依赖的。仅用于说明的目的,以下方法步骤的描述于在用户界面装置306任意地开始。然而,在其他示例中,方法步骤的描述可在测量装置305或构架中其他地方上开始。无论如何,虽然在此结合图1-3中系统描述方法步骤,本领域技术人员将会理解,为执行方法步骤而以任何顺序配置的任何系统落入本发明的范围之内。
[0080]如图所示,方法500开始于动作502,用户界面装置306显示取景器上的图像(例如,图3的WYSIWYG取景器308)。例如,启动相机电源;相机镜头被指向并接收场景的持续输入。因此,图像包括,至少部分地包括,相机对相机镜头所指向场景的演绎(interpretation)。同时,取景器装置接收来自下面进一步描述的动作520中测光装置305的实时输入。因此,用户界面装置306上显示的图像是相机镜头捕捉到的帧和来自用户编辑的帧进行处理的帧的组合。以下进一步描述其他步骤,输入的组合是实时的并随场景变化和/或用户编辑变化而持续变化的。
[0081]在决定操作504中,用户界面装置504决定是否接收启动快门的请求。如果是,在动作506中,用户界面装置306向适当的部件发送请求以启动快门。然后,相机控制系统302启动快门并捕捉显示在用户界面装置504的WYSIWYG取景器上的最终图像。
[0082]然而,在决定操作504中,如果用户界面装置306确定没有启动快门的请求,方法500移动到决定操作508,在此用户界面装置306确定是否接收用户编辑。如果不是,然后方法500结束,并可返回到开始以继续。
[0083]然而,在决定操作508中,如果用户界面装置306确定接收用户编辑,然后方法500移动到动作510,在此用户界面装置306接收用户编辑。例如,用户通过选择区域和/或全部取景器传达用户意图,通过乱涂手势进行编辑(例如,更亮或更暗,转变色彩,改变饱和度和对比度等)。
[0084]在动作511中,用户界面装置306 —个或多个用户编辑到掩码生成装置304。
[0085]在动作512中,掩码生成装置304依据一个或多个用户编辑对选择区域的图像块进行分类。例如,掩码生成装置304开始将选择区域转换到数据格式(例如图像块)的处理,相机控制系统可匹配多个格式。同时,掩码生成装置304接收来自下面进一步描述的动作526中测光装置305的反馈。
[0086]在动作514中,掩码生成装置304指定稀疏编辑掩码。例如,掩码生成装置304使图像块被匹配到后续取景器帧中,从而手势保持持久。获得于多个取景器帧匹配图像块,可通过匹配看起来很象的图像(例如,匹配每个8X8像素纹理包或任何尺寸纹理包)。每个包包括选择区域像素的子集。每当用户在包上乱涂以选择包或应用编辑时,相机控制系统更新已显示图像以反映改变。通过匹配每个取景器帧中的包以推断出编辑的选择和应用得以传播。
[0087]在动作516中,掩码生成装置304进行编辑掩码上的边缘感知映射(edge-awareup-sampling)o上述边缘感知平滑在与指定编辑相关的部分。
[0088]在动作518中,掩码生成装置518产生测光装置305使用的编辑掩码。考虑编辑掩码。
[0089]在动作520中,测光装置305进行色调映射操作520。同时,在动作522中,测光装置350进行测光操作。基于编辑掩码和色调映射HDR图像,测光装置305产生最大化HDR图像的显示外观质量的测光参数(例如,曝光时间等)。例如,测光装置305基于编辑掩码和色调映射HDR图像量化测光需求,对色调映射HDR图像进行测光以计算测光参数,并向相机提供测光参数,该测光参数影响帧捕捉操作并从而最大化已捕捉的HDR图像的外观用于显示(例如,显示事后编辑(post-edits))。
[0090]例如,配置测光装置305以响应用户编辑,例如,通过引入包括等级(例如,曝光等级和/或焦距等级)的已测光输出以一致于用户编辑所隐含的限制。测光装置305分析色调映射的HDR图像并编辑掩码以确定测光参数。然后,测光装置305选择所请求的下一取景器帧的捕捉参数。依据编辑的类型和范围(extent),一定的亮度和/或深度范围对捕捉可能或多或少地重要,放松或紧缩对调节装置305的算法的限制。测光装置305将显示的测光馈送回测光装置305以影响已捕捉帧。
[0091]在动作524中,测光装置305捕捉现场场景的帧。在图5的示例中,测光装置305捕捉帧具有预定数目帧的滑动窗口 530帧。滑动窗口 530包括在一个时间的三个帧的次序。例如,在时间tk-Ι,滑动窗口包括相邻帧的次序,相邻帧包括帧N-5、帧N-4和帧N-3。在时间tk,滑动窗口包括相邻帧的次序,相邻帧包括帧N-2、帧N-1和帧N,等等。滑动窗口的尺寸可受用户编辑影响。例如,在动作518中生成的编辑掩码可影响滑动窗口的尺寸。例如,如果相机控制系统302接收用户的输入以照亮场景的亮度非常昏暗的选择,然后编辑可需要更长曝光和/或更高增益的额外镜头(例如,滑动窗口 530的额外帧)以恢复此选择区域的数据。该用户编辑影响可接受信噪比(SNR)的水平,该信噪比直接关系到曝光和/或增益的最佳选择。
[0092]在动作526中,测光装置305产生一 HDR图像。例如,测光装置305混合、排列、和/或合并滑动窗口的帧,以产生高动态范围(HDR)图像的估计值。在另一示例中(图未示),相机系统包括直接捕捉HDR帧的相机传感器。在该情况下,测光装置305无需混合如图5所示的多个帧。通常,测光装置305需要产生一 HDR图像。测光装置305产生HDR图的特定方式通过不那么重要。
[0093]再参见动作520,测光装置305组合编辑掩码和HDR图像以进行色调映射操作。然后,测光装置305提供用于显示在用户界面装置306的取景器装置上的已编辑和已调整图像。例如,相机控制系统写入纹理异步的用户界面装置306的用户编辑,掩码生成装置304的选择掩码,测光装置305的场景幅照度估计值。
[0094]返回动作502,用户界面装置306显示由测光装置305接收的已编辑和已调整图像。例如,前端应用(例如,安卓(Android)用户界面)组成最终图像,然后呈示最终显示。如上所述,方法500的动作是反复的。因此,随着相机控制系统接收用户编辑、接收场景变化、和/或接收相机移动等其他输入,相机控制系统定期地更新已显示图像。
[0095]方法500可包括其他动作和/或在该方法概述中未讨论的细节。例如,方法500可应用于视频和静止图像。与视频的区别在于快门的启动使得相机捕捉一段时间的一系列图像,与一时间瞬间的静止图像相反。对于视频,不会造成不良时间效应的对捕捉参数的准确控制甚至更有挑战(例如,曝光设置太急剧的变化使人察觉到闪烁)。作为另一示例,至少一些方法步骤可通过使用图1和2的并行处理子系统112执行;由于速度和具有最佳用户体验的原因而并行一些方法步骤,对于相机控制系统可能`是可取的。依据实施方式,其他动作和/或本文描述的细节可为方法500的一部分。本领域技术人员可以理解,用以按任何顺序执行方法步骤的任何系统都落入本发明的范围。
[0096]其他取景器编辑细节
[0097]在取景器装置308的图像编辑必须暂时容纳通过稀疏用户输入的目标持续选择。同时,相机控制系统302处理未依赖于预处理或培训昂贵的分类器而独立地处理每个取景器中贞。
[0098]借鉴在图像序列的亲和基编辑传播的传统工作,相机控制系统302模拟编辑和选择为居于本地块描述符空间的函数:
[0099]
[S,: Mn — [—1.1j⑴
[0100]其中,η (例如8)是块描述符的维数,S1, S2,...等等的每一个对应一特别种类的编辑,例如色调、色彩、饱和度、模糊度等。O值对应没有编辑。相机控制系统302将
Sq ", W1 [O, I〗存储为软选择掩码。
[0101]在一示例中,相机控制系统302可使用基于8像素χ8像素图像块的8维描述符(例如n=8),由平均数和对数亮度通道的第一阶、第二阶导数构成,加上平均CIELUV色度(chrominance) (CIELUV是在1976年的国际照明委员会(CIE)采用的色彩空间)。为决定使用哪个特征,相机控制系统302对一组通用图像块进行主要分量分析(PCA)。已发现的最强的PCA分量与块平均数类似,而通过对数亮度的导数可合理地估计出下一分量,等等。请注意的是离开先前工作,相机控制系统302下降从描述符的(X,y)坐标,以便强烈地抵制场景和相机运动。
[0102]现有方法试图基于用户提供示例全局优化或插值反,作为结果,估算大小的成本与用户已经进行编辑的数目和范围呈线性比例。取而代之的是,相机控制系统302存储
于稀疏数据结构,并把该问题作为查找问题。因此,递增地更新.?具有O (I)代价。
[0103]因为相机控制系统302放弃明确的优化或插值动作,编辑不会象用其他方法那样过分地传播。然而,该问题通过两种方式减轻。第一,相机控制系统302应用边缘感知平滑于Si,关于产生取景器帧时的场景图像。第二、因为在相机控制系统接收用户点击时相机控制系统交互地发送反馈,控制传播对用户是简易的和直观的。例如,用户交互地描述(例如提供点击给)Si。
[0104]取景器编辑:体现编辑
[0105]为存储萬,相机控制系统302适用公知的permutohedral点阵,其将高维空间与单
形联系起来并在顶点存储示例。相机控制系统302利用点阵执行插值与查找的重心插值,其顺带地用作当地传播已存储数据。而点阵可用于支持高维滤波算法,相机控制系统302可用点阵十分有效地涵盖(house)高维函数。
[0106]代替以给定图像存在的所有包初始化点阵,为处理高维滤波,相机控制系统302采用流媒体的方式:当用户轻点屏幕并选择包(例如选择区域420)时,相机控制系统302只定位与这些包相应的那些顶点并更新其值。请注意,未选择的包永远不会写入点阵。如果`在任何点的包查找失败,默认值假设为§i。
[0107]为进一步支持流媒体编辑,相机控制系统302可使用衰减方案扩大点阵,该衰减方案类似于用于常用视频滤波算法的方案。相机控制系统302联系相机控制系统302每次增加相机控制系统访问顶点的感知重要性测量的每个顶点,并随时间推移呈指数衰减。因此,保留在取景器的图像包将具有高重要性,而从视野消失很长时间的包将具有低重要性。相机控制系统302跟踪每个顶点最后更新的时间。每当顶点被设访问而进行读写时,相机控制系统302相应地衰减顶点重要性。当点阵在最大程序时必须插值新的顶点,相机控制系统302检查与散列碰撞(hashcollision)的节点并驱逐最低重要性的顶点。
[0108]取景器编辑:指定编辑
[0109]参考图4A-4E以上所述,相机控制系统302被配置以指定编辑。相机控制系统接收兴趣区域的敲击和接收选择的确认(例如轻敲或鼠标点击已选择区域)。然后,相机控制系统302呈现给用户列出各种支持的编辑的小窗口(例如实时编辑器装置),相机控制系统302接收用户选择的选取(例如轻拍)。接下来,相机控制系统302接收指定编辑大小和方向的输入(例如用户水平向左或向右扫)。指定编辑的所有动作是交互的。例如,当用户移动屏幕上的手指(或方式,鼠标指针等)时,相机控制系统302执行后端处理并于取景器上描述的已更新编辑。
[0110]对于块选择(例如选择区域420),当用户敲击正在登记时,相机控制系统302将具有与事件起源小固定距离中心的图像块转换为描述符,并从点阵(例如上述permutohedral点阵)查找描述符。如果不存在相应节点,相机控制系统302生成并初始化相应节点。相机控制系统302增加这些节点的Stl值。因此,应用选择的代价是0(1),独立于取景器维度和编辑历史。
[0111]为每个取景器帧的取景器装置308上的可视化,相机控制装置302将包含于帧中的图像块转换成描述符,并搜索点阵上每个描述符的相关编辑。如果用户是在第三阶段并当前应用范围k的j类型编辑,然后为相机控制系统302的每个描述符包/X.调整如下:
【权利要求】
1.一种使能相机控制的用户界面方法,该方法包括: 在所述相机的用户界面装置上显示色调映射高动态范围(HDR)图像,其中用户界面包括定义显示表面的多个像素,且其中色调映射HDR图像包括所述相机的相机镜头所指向的场景的演绎; 经由与所述用户界面装置关联的输入装置接收用户编辑; 发送所述用户编辑给所述相机的一个或多个后端装置以实施基于所述用户编辑的处理操作; 从所述一个或多个后端装置接收已更新的色调映射HDR图像,其中已更新的色调映射HDR图像是从基于所述用户编辑而实施的处理操作产生;以及 当所述相机镜头继续捕捉该场景的帧以供所述一个或多个后端装置实施迭代地影响所述已更新色调映射HDR图像的操作时,在所述用户界面显示所述已更新的色调映射HDR图像。
2.如权利要求1所述的方法,进一步包括,响应于经由所述输入装置接收用户输入,在用户界面装置上显示选择区域,其中该选择区域由包含于所述多个像素的一个或多个像素定义。
3.如权利要求2所述的方法,其中所述一个或多个后端装置实施动作,包括: 通过用户界面装置接收用户编辑,该用户界面装置显示所述相机的相机镜头所指向场景的演绎,其中用户编辑是基于用户输入,该用户输入与所述用户界面装置上的一选择区域关联;以及 基于一个或多个匹配图像块生成编`辑掩码,所述匹配图像炔基于所述用户编辑和由所述相机生成的高动态范围(HDR)图像。
4.如权利要求3所述的方法,其中所述后端装置实施进一步动作,包括: 基于所述编辑掩码和HDR图像实施一个或多个色调映射操作以产生色调映射HDR图像;以及 基于所述编辑掩码和色调映射HDR图像实施一个或多个测光操作以计算帧捕捉操作的测光参数。
5.如权利要求3所述的方法,其中所述一个或多个图像块被配置用于通过利用图像块而匹配目标纹理,该图像块包括所述选择区域内所含有的像素子集。
6.如权利要求2所述的方法,进一步包括: 在所述用户界面装置上显示实时编辑器,该实时编辑器包括允许用户选择特定编辑选项的编辑选项;以及 经由该实时编辑器接收用户编辑,并且作为响应,初始化与所述选择区域关联的一个或多个后端处理操作。
7.如权利要求2所述的方法,进一步包括:在所述用户界面装置上显示实时编辑器,该实时编辑器包括用于接收用户输入的编辑选项,该用户输入指示对于亮度、饱和度、对比度、色度、白平衡、色彩、色调、焦距、曝光或增益至少之一的变化大小。
8.如权利要求2所述的方法,其中所述一个或多个后端装置实施动作,包括: 经由所述用户界面装置接收用户编辑,该用户界面装置显示所述相机的相机镜头所指向场景的演绎,其中所述用户编辑是基于用户输入,该用户输入与所述用户界面装置的一选择区域关联;以及 相对于该场景的一个或多个其他区域调整所述选择区域上的焦距。
9.如权利要求8所述的方法,其中调整所述选择区域上的焦距包括量化至少所述选择区域的像素的每像素对焦需求。
10.一种使能相机控制的用户界面装置,该用户界面装置包括: 取景器装置,其被配置以在所述相机的用户界面装置上显示色调映射高动态范围(HDR)图像,其中用户界面包括定义显示表面的多个像素,其中色调映射HDR图像包括所述相机的相机镜头所指向的场景的演绎; 编辑器装置,其被配置以经由与所述用户界面装置关联的输入装置接收用户编辑、并发送该用户编辑给所述相机的一个或多个后端装置以实施基于所述用户编辑的处理操作,其中所述取景器装置被进一步配置以从所述一个或多个后端装置接收已更新的色调映射HDR图像,其中已更新的色调映射HDR图像产生自基于所述用户编辑而实施的处理操作;以及,当所 述相机镜头继续捕捉该场景的帧以供所述一个或多个后端装置实施迭代地影响所述已更新色调映射HDR图像的操作时,在所述用户界面显示所述已更新的色调映射HDR图像。
【文档编号】H04N5/232GK103888669SQ201310718796
【公开日】2014年6月25日 申请日期:2013年12月23日 优先权日:2012年12月21日
【发明者】戴维德·斯坦尼斯瓦夫·帕荣克, 白种民, 卡里·皮利 申请人:辉达公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1