用于图像区域的编辑选项的制作方法

文档序号:10494361阅读:816来源:国知局
用于图像区域的编辑选项的制作方法
【专利摘要】实现涉及用于图像区域的编辑选项。一些实现包括基于图像的像素的一个或多个特性来检测图像的区域部分。所检测到的区域具有选自多个可识别类别的所识别出的类别,并且每个可识别类别与多个编辑选项的集合相关联。每个编辑选项与可操作以调整一个或多个图像像素的值的编辑操作相关联。呈现编辑选项的各个集合中的一个集合以供选择,其中,所呈现的集合与所检测到的区域的所识别出的类别相关联,并且所呈现的集合中的编辑选项中的每一个编辑选项可操作以调整所检测到的区域的一个或多个像素的值。所呈现的编辑选项的集合不同于与其它类别相关联的编辑选项的其它集合中的至少一个集合。
【专利说明】用于图像区域的编辑选项
[0001]相关申请的交叉引用
[0002]本申请要求2013年12月6日提交的美国非临时申请序号14/099,797的优先权,本申请中的全部内容因此基于所有目的通过引用合并至此。
【背景技术】
[0003]数字相机的流行和方便以及互联网通信的普遍使用已经使得数字图像变得无处不在。例如,用户产生的数字照片被张贴到各种互联网站点,诸如网页、社交网络服务等,以供用户及其他人查看。然而,诸如用相机拍摄的照片的许多图像、可能包括令用户不满意的各种特征。例如,在图像中捕捉到的面部可能太亮,具有太高的对比度,包括了非期望的面部标记等。或者,天空可能被显示为太暗。为了改善图像,用户一般会通过在编辑程序中打开图像并手动地调整图像的特定区域的各种特性(在诸如面部、对象或可辨别区的区域中的诸如亮度、对比度、饱和度、清晰或模糊量等)来直接地编辑图像。

【发明内容】

[0004]本申请的实现涉及用于图像区域的编辑选项。在一些实现中,方法包括基于图像的一个或多个像素的一个或多个特性来检测图像的区域部分。所检测到的区域具有选自多个可识别类别的所识别出的类别,并且所述多个可识别类别中的每一个与多个编辑选项的集合相关联。每个编辑选项与可操作以调整图像的一个或多个像素的一个或多个值的一个或多个编辑操作相关联。该方法包括呈现编辑选项的各个集合中的一个集合以供选择,其中,所呈现的编辑选项的集合与所检测到的区域的所识别出的类别相关联,并且所呈现的集合中的每个编辑选项可操作以调整所检测到的区域的一个或多个像素的一个或多个值。所呈现的编辑选项的集合不同于与其它类别相关联的编辑选项的其它集合中的至少一个
口 O
[0005]描述了本方法的各种实现和示例。例如,检测区域可以包括检查多个不同的图像特性以检测区域并确定其类别。图像特性可以包括由图像中的像素的色彩提供的纹理、图像中的像素的辉度、图像中的像素的色度和/或所检测到的区域关于图像的一个或多个边界的位置。检测区域可以包括自动地将图像分割成包括所检测到的区域在内的多个区域,并自动地识别所分割的区域的类别。
[0006]编辑选项的各个集合中的至少一个集合可以包括多个不同类型的编辑选项,每种类型的编辑选项包括与其它类型的编辑选项的编辑操作不同的一个或多个编辑操作。在一些实现中,编辑选项的集合中的至少一个编辑选项可以包括与其它集合中的至少一个集合中的编辑选项类型不同的至少一个类型的编辑选项。所呈现的编辑选项的集合可以被预确定为适合于该区域的所识别出的类别。例如,所确定的类别可以是面部皮肤,并且所呈现的编辑选项的集合可以包括平滑操作。所呈现的编辑选项中的至少一个编辑选项可以是不调整区域的色彩外观的类型的编辑选项。所呈现的编辑选项中的至少一个编辑选项可以包括卷积操作,所述卷积操作改变所检测到的区域中的第一像素的像素值并改变与所述第一像素临近的区域中的至少一个像素的像素值。例如,该卷积操作可以包括使所检测到的区域中的像素和多个相邻像素模糊的模糊操作、降低所检测到的区域中的噪声的噪声降低操作、调整所检测到的区域中的一个或多个像素相对于与所检测到的区域中的一个或多个像素相邻的像素的对比度的局部对比度增强操作和/或使得像素值不同于一个或多个相邻像素的锐化操作。
[0007]可以响应于接收到指示了图像中的区域的用户输入而呈现编辑选项的集合以供选择。该用户输入可以包括将指针在该区域上方悬停或者敲击该区域。本方法可以包括接收对所呈现的编辑选项中的一个编辑选项的选择并使得在所检测到的区域上执行与所选择的编辑选项相关联的编辑操作。
[0008]本方法可以包括检查由一个或多个用户所选择的先前选择编辑选项和由先前选择编辑操作调整的区域的类别。所呈现的编辑选项的集合可以基于针对所检测到的区域的所识别出的类别而选择的先前选择编辑选项中的最常见编辑选项的集合。该方法可以包括从用户接收新的区域类别的定义,并将来自编辑选项的整个集合的一个或多个编辑选项与该新区域类别相关联。
[0009]—种方法在一些实现中包括基于图像的一个或多个像素的一个或多个特性来检测图像的区域部分。识别所检测到的区域的类别,其中,该类别选自多个可识别类别。每个可识别区域类别与一个或多个编辑选项的不同集合相关联,每个集合中的每个编辑选项与可操作以调整图像的一个或多个像素的一个或多个值的一个或多个编辑操作相关联。本方法呈现编辑选项的各个集合中的一个集合以供选择,其中,所呈现的编辑选项中的每一个编辑选项适合于该区域的所确定的类别。所呈现的编辑选项中的每一个编辑选项可操作用于响应于被选择而调整所检测到的区域的一个或多个像素的一个或多个值。在一些实现中,编辑选项的各个集合中的至少一个集合可以包括与至少一个其它集合中的编辑选项的类型不同的至少一个类型的编辑选项。所呈现的编辑选项的集合可以包括具有不同类型的多个编辑选项,其中,每种编辑选项包括与其它类型的编辑选项的编辑操作不同的一个或多个编辑操作。
[0010]在一些实现中,一种系统可以包括存储设备和访问存储设备且可操作以执行操作的至少一个处理器。该操作包括基于图像的一个或多个像素的一个或多个特性来检测图像的区域部分。检测到的区域具有选自多个可识别类别的识别类别,并且所述多个可识别区域类别中的每一个与多个编辑选项的集合相关联。每个编辑选项与可操作以调整图像的一个或多个像素的一个或多个值的一个或多个编辑操作相关联。呈现编辑选项的各个集合中的一个集合以供选择,其中,所呈现的集合与所检测到的区域的所识别出的类别相关联,并且所呈现的编辑选项中的每一个编辑选项可操作以调整所检测到的区域的一个或多个像素的一个或多个值。所呈现的编辑选项的集合不同于与其它类别相关联的编辑选项的其他集合中的至少一个集合。
[0011]在本系统的各种实现中,所呈现编辑选项的集合包括多个不同类型的编辑选项,每种类型的编辑选项包括与其它类型的编辑选项不同的编辑操作的一个或多个编辑操作。不同类型的编辑选项可以包括使所检测到的区域中的像素和多个相邻像素模糊的模糊操作、减少所检测到的区域中的噪声的噪声降低操作、调整所检测到的区域中的一个或多个像素相对于与所检测到的区域中的一个或多个像素相邻的像素的对比度的局部对比度增强操作和/或使得像素值不同于所检测到的区域中的一个或多个相邻像素的锐化操作。
【附图说明】
[0012]图1是可用于本文所述的一个或多个实现的示例网络环境的框图;
[0013]图2是根据一些实现图示出的用于基于先前用户编辑来编辑图像区域的示例方法的流程图;
[0014]图3是根据一些实现图示出的用于基于来自单个先前编辑的源图像的先前用户编辑来编辑图像区域的示例方法的流程图;
[0015]图4是图示出根据一些实现的用于基于来自多个先前编辑源图像的先前用户编辑来编辑图像区域的另一示例方法的流程图;
[0016]图5是图示出使用图3和4的方法的示例实现的图;以及
[0017]图6是可被用于本文中所述的一个或多个实现的示例设备的框图。
【具体实施方式】
[0018]本文中所述的一个或多个实现涉及用于图像区的编辑选项。各种实现允许基于那些区的类别为图像区域提供编辑选项。例如,如果用户指示了图像的区域,则向用户呈现用于所指示区域的类别的适当编辑选项以供选择。这允许用户容易地选择区域以及从用于那些区域的适当编辑选项中进行选择,促进了更容易、更快且更高质量的图像编辑操作。
[0019]在示例实现中,本系统可以基于图像的像素的一个或多个特性来检测图像的区域。例如,该特性可以包括图像内的色彩、纹理或位置。在一些实现中,本系统可以自动地将图像分割成包括所检测到的区域在内的多个区域。本系统还基于该特性来识别所检测到的区域的类别,其中,所述类别选自可被系统识别的多个类别。例如,可识别类别可以包括用于可以使用面部识别技术来检测的面部内的面部特征(诸如眼睛、牙齿、嘴、眉毛等)的一个和/或多个面部类别。可识别类别还可以包括天空类别、植物类别、建筑物类别和/或其它类别。
[0020]每个可识别区域类别都与多个编辑项的集合相关联,并且每个编辑选项与可操作以调整图像的一个或多个像素值的一个或多个编辑操作相关联。类别中的至少一个与编辑选项的集合相关联,该集合不同于与其它类别相关联的编辑选项的其他集合。例如,如果期望的话,这允许编辑选项的不同的适当的集合与每个类别相关联。因此可以使得编辑选项的每个集合特别地适合于所检测到的区域的一个类别。
[0021]本系统呈现编辑选项的集合中的一个用于选择,其与所检测到的区域的所识别出的类别相关联。可以例如响应于接收到指示图像中的区域(例如,位于该处)的用户输入而向用户显示编辑选项的该集合。例如,用户输入可以包括将指针在区域上方悬停或者敲击该区域。所呈现编辑选项中的每个可操作以(如果被选择的话)调整所检测到的区域中的一个或多个像素的一个或多个值。在一些实现中,还可以提供其它特征。例如,本系统可以呈现先前由系统或服务的一个或多个用户所选择的用于类别的最常用的编辑选项。一些实现允许用户定义新的区域类别,其中,该用户或系统从编辑选项的全集中选择编辑选项的子集以与该新的区域类别相关联。
[0022]所公开的特征可以允许切合并适当的编辑选项被自动地呈现给编辑图像的用户。例如,用户不需要知道选项的全集和大量的集合之中的哪些编辑选项最适合于他或她想要编辑的区域类别。替代地,本文中的特征可以向用户呈现那些选项。此外,用户不需要采用耗时且复杂的任务来选择所期望的用于编辑的区域,因为本文中的特征可以基于用户的简单指示而自动地选择区域,所述简单指示是诸如将指针在图像的区上悬停或者敲击图像的区。因此,如本文公开的适当编辑选项的自动呈现和区域指示的技术效果包括编辑图像的持续时间的减少,因此节省了用于实现对图像的编辑的用户时间、能量以及资源。另一技术效果是通过用户对图像应用了更多适当的编辑选项以及对各种图像中跨区域类别的类似编辑选项更一致的应用而产生的对图像的更高质量的编辑。
[0023]图1图示出可在本文所述的一些实现中使用的示例网络环境100的框图。在一些实现中,网络环境100包括一个或多个服务器系统,诸如图1的示例中的服务器系统102。例如,服务器系统102可以与网络130通信。服务器系统102可以包括服务器设备104和数据库106或其它存储设备。网络环境100还可以包括一个或多个客户端设备,诸如客户端设备120、122、124以及126,其可以经由网络130和/或服务器系统102相互通信。网络130可以是任何类型的通信网络,包括互联网、局域网(LAN)、无线网络、交换机或集线器连接等中的一个或多个。
[0024]为了便于图示,图1示出了用于服务器系统102、服务器设备104以及数据库106的一个块,并且示出了用于客户端设备120、122、124以及126的四个块。服务器块102、104以及106可表示多个系统、服务器设备以及网络数据库,并且可以以不同于所示的配置来提供块。例如,服务器系统102可以表示可以经由网络130与其它服务器系统通信的多个服务器系统。在另一示例中,可以在与服务器设备104分开并可以经由网络130与服务器设备104及其它服务器系统通信的服务器系统块中提供数据库106和/或其他存储设备。并且,可存在任何数目的客户端设备。每个客户端设备都可以是任何类型的电子设备,诸如计算机系统、膝上型计算机、便携式设备、蜂窝电话、智能电话、平板计算机、电视、TV机顶盒或娱乐设备、显示屏或护目镜、腕表、个人数字助理(PDA)、媒体播放器、游戏设备等。在其它实现中,网络环境100可不具有所示出的所有组件和/或可具有包括除本文所述那些之外或作为其替代的其它类型的元件在内的其它元件。
[0025]在各种实现中,最终用户Ul、U2、U3以及U4可以使用相应的客户端设备120、122、124以及126与服务器系统102通信和/或相互通信。在一些示例中,用户Ul至U4可经由在服务器系统102上所实现的社交网络服务彼此交互,其中,相应的客户端设备120、122、124以及126向一个或多个服务器系统(诸如系统102)传送通信和数据,并且服务器系统102向客户端设备提供适当的数据,使得每个客户端设备可以接收经由服务器系统102上传到社交网络服务的内容。在一些示例中,社交网络服务可以包括允许用户执行多种通信、形成链路和关联、上传和张贴共享内容和/或执行其它社交相关功能的任何系统。例如,社交网络服务可以允许用户向特定或多个其它用户发送消息、以与社交网络系统内的其它用户相关联的形式形成社交链接、将其它用户聚组在用户列表、朋友列表或其它用户组中、张贴或发送包括文本、图像、视频序列、音频序列或记录或其它类型的内容在内的内容以供社交网络服务的用户的特指集合进行访问、向社交网络服务的其它用户发送多媒体信息及其它信息、参加与服务的其它用户的实时视频、音频和/或文本聊天或电话会议等。如本文中所使用的术语“社交网络服务”可以包括促进用户交互的软件和/或硬件系统,并且可以包括在网络系统上所实现的服务。
[0026]用户界面可以使得能够在客户端设备120、122、124以及126上实现图像及其它内容以及通信、隐私设置、通知及其它数据的显示。可以使用客户端设备上的软件来显示这样的界面,诸如与服务器系统通信的应用软件或客户端软件。可以在客户端设备的输出设备上(诸如显示屏)显示界面。
[0027]本文中所述的特征的其它实现可以使用任何类型的系统和服务。例如,任何类型的电子设备可以利用本文中所述的特征。一些实现可以在从计算机网络断开连接或间接性地连接到计算机网络的客户端或服务器系统上提供这些特征。在一些示例中,具有显示屏的客户端设备可以显示图像并提供用户可查看的如本文中所述的特征和结果。
[0028]图2是图示出用于提供用于图像区域的编辑选项的方法200的一个示例的流程图。在一些实现中,可以例如在如图1中所示出的服务器系统102上实现方法200。在其它实现中,可以在诸如一个或多个客户端设备的系统上和/或在服务器系统和客户端系统两者上实现方法200中的一些或所有。在所描述的示例中,实现系统包括一个或多个处理器或处理电路以及一个或多个存储设备,诸如数据库106或其它储存器。在一些实现中,一个或多个服务器和/或客户端中的不同组件可以执行方法200的不同块或其它部分。可以通过计算机程序指令或代码来实现方法200,该计算机程序指令或代码可以在计算机上被执行,例如,由一个或多个处理器来实现,诸如微处理器或其它处理电路,并且可以被存储在计算机程序产品上,包括计算机可读介质,诸如磁性、光学、电磁或半导体存储介质,包括半导体或固态存储器、磁带、可移除计算机磁盘、随机存取存储器(RAM)、只读存储器(ROM)、闪速存储器、刚性磁盘、光盘、固态存储器驱动等。还可以将程序指令包含在电子信号中并作为电子信号提供,例如以软件的形式作为从服务器(例如,分布式系统和/或云计算系统)所递送的服务(SaaS)。替选地,可以在硬件(逻辑门等)中或者硬件和软件的组合中实现方法200。可以将方法200执行为在系统上运行的应用的部分或组件,或者作为结合其它应用和操作系统运行的应用或软件。
[0029]在一些实现中,可以基于用户输入来发起方法200。例如,用户可能已从诸如应用界面、社交网络界面或其它界面的界面中选择方法200的发起。在其它实现中,可以由系统自动地发起方法200。例如,可以周期性地执行或者基于一个或多个特定事件或条件来执行方法200(或其各部分),所述一个或多个特定事件或条件诸如用户打开诸如编辑应用的应用,接收新上传到系统或者可由系统访问的一个或多个图像等。在一些实现中,这样的条件可由用户在用户的自定义偏好中指定。在一个非限制性示例中,可以在相机、蜂窝电话或已捕捉了一个或多个图像的其它客户端设备上执行方法200(或其部分)。此外或替选地,客户端可以通过网络向服务器发送图像,并且服务器可以使用方法200来处理图像。
[0030]在方法200的块202中,该方法获得用于处理的图像。例如,该图像可以是由多个像素组成的数字图像,并且可以被存储在系统的一个或多个存储设备上或者另外可由系统访问,诸如连接存储设备,例如,本地存储设备或通过网络连接的存储设备。例如,图像可以是由相机所捕捉到的照片、从所捕捉到的视频流或其它视频数据所提取的图像帧,或者从不同源所得到。在一些实现中,用户可以提供或特指要处理的一个或多个图像。在其它实现中,图像可以由本方法自动地选择,例如作为来自多个图像的相册或其它集合的图像,所述其它集合诸如在社交网络系统的用户帐户中所提供的相册。在一些示例中,该系统可以基于评估可访问图像的一个或多个特性来确定要获得哪个图像,所述一个或多个特性诸如图像的色彩分布、图像的时间戳及其它元数据,和/或图像中所描绘的已识别且已辨识出的内容,诸如人、面部或物体。
[0031]在块204中,本方法检测图像中的区域并确定区域的类别。可以基于图像的像素的一个或多个特性来检测区域。例如,该区域是包括多个图像的像素的图像的部分或子区。在一些实现中,区域类别可以基于在区域中所描绘的对象,诸如面部、位置、对象或其它主体。多个不同类别可由本方法识别和辨别,并且这些类别中的一个基于区域像素的特性被分配给所检测到的区域。在一些实现或情况中,本方法可以检测区域(例如,基于诸如色彩的特定特性),并且然后识别其类别(例如,基于所检测到的区域的其它特性)。在其它实现或情况下,本方法可以检测区域并且同时近似地识别其类别。例如,如果通过寻找特定特性而检测到区域,则这些特性也可能足够独特以识别该区域的类别。
[0032]可以使用多种技术中的任何一个来检测该区域并确定其类别。在一些示例或实现中,所检测到的区域的一个类别可以是人的面部或人的面部皮肤,并且可以基于寻找图像区中的诸如眼睛、鼻子嘴、眉毛等的面部特征来识别此类区域和类别。在一些实现中,单独的面部特征本身也可以是所检测到的区域的类别。例如,嘴、眼睛以及眉毛各自都可以是区域类别。在一些实现中,可以将对不同对象的描绘定义为区域类别,并且可以在图像中检测至IJ,诸如植物(例如,树叶、草、丛生灌木或其它植物特征)、交通工具(汽车、卡车、船等)、物品或项(瓶子、钢笔、电话、椅子等)或者建筑物或其它结构。可以使用多种技术来检测这些对象并确定它们的类别,所述多种技术为搜索这样的对象所共有的特征或特性,诸如特定形状、比例、色彩、亮度、周围特征等。在一些其它示例中,区域类别可以是图像中所描绘的区、位置或景观特征,诸如天空或其一部分、山坡、植物(例如,树或树的群组、被草覆盖的区等)、湖泊、河流等,并且可以使用搜索为这样的特征所独有的特征的技术来检测(并确定其类别),所述特征诸如图像中的色彩、纹理、位置、与其它所检测到的特征的关系等。下面更详细地描述一些示例。
[0033]可识别区域类别中的每个都与多个编辑选项的一个集合相关联,并且每个编辑选项都与可操作以调整图像的一个或多个像素的一个或多个值的一个或多个编辑操作相关联。例如,像素值可以是RGB(红色、绿色、蓝色)值、HSV(色度色度、饱和度、纯度)值、HSL(色度、饱和度、亮度)值或用来确定像素的外观的其它值。下面更详细地描述这样的编辑选项的示例。
[0034]在块206中,方法检索与所识别出的区域类别相关联的一个或多个编辑选项的集合。在一些示例中,该集合可以包括多个编辑选项。诸如,可以从诸如方法200可访问的存储器或者其它存储设备的储存器检索编辑选项的所述集合。所检索到的集合不同于与其它可识别区域类别相关联的编辑选项至少一个其它集合。例如,所检索的集合可以包括与跟其它所识别出的类别相关联的编辑选项的其它集合不同数目的编辑选项和/或不同类型的编辑选项。这允许与编辑选项的不同集合相关联的不同区域类别。在一些实现中,所检索到的编辑选项的集合适合于所检测到的区域的类别,并且因此已与该类别相关联。其它区域类别可与适合于那些类别的其它不同编辑选项的集合相关联。一些实现可以预先将所检索到的编辑选项的集合与所识别出的类别相关联,使得本方法检索预先关联的集合,而在其它实现中,本方法可以从多个可用编辑选项中选择用于所识别出的区域类别的编辑选项的适日口 O
[0035]用于特定区域类别的“适当的”编辑选项在一般或常见情况下与“不适当的”编辑选项相比,向图像的普通查看者提供了图像区域的该类别的外观中的更有效和/或令人喜欢的结果。适当性可以基于编辑选项是否一般地被用于特定区域类别和/或编辑选项在修改区域外观而没有不期望的图像效果(噪声、细节减少(对于一些类别而言是期望的)时是否是有效的、细节增加(对于一些类别而言是期望的)等)。可以用多种方式中的任何一种来确定用于特定类别的适当编辑选项。例如,专家用户可以基于其经验来确定哪些编辑选项是最常使用的和/或针对特定类别以最令人喜欢的结果运行。在一些实现中,可以基于检查图像的先前编辑和/或来自相同用户和/或多个用户的先前编辑来确定适当的编辑选项,其中,适当的编辑选项是针对特定区域类别先前最经常被选择的那些选项。
[0036]在块208中,本方法呈现所检索到的编辑选项的集合以供选择。例如,本方法可以使得所检索到的编辑选项的集合在用户出于编辑图像的目的所打开的编辑应用或界面中在客户端或服务器设备的显示设备上显示。用户可以接着选择所呈现的编辑选项中的任何一个来根据所选择的选项中的一个或多个编辑操作来编辑图像。在其它实现中,可以自动地向其它方法和/或系统呈现所检索到的编辑选项的集合用于在编辑图像时使用。
[0037]因此,本方法允许呈现编辑选项的集合,其适合于所检测到的区域。例如,这允许向用户呈现用于图像内的特定感兴趣的区域的适当编辑选项,而用户不必提前知道哪些编辑选项最好用在特定区域类别。因此,用户要有效地编辑图像就只需要较少的努力和资源。一些实现还可以为用户所指向的或者另外简单地指示的图像区域提供这样的选项而不必以任何涉及到的方式选择所检测到的区域,如下面更详细地描述的。
[0038]图3是图示出根据一些实现的用于将编辑选项关联到图像中的一个或多个区域的示例方法300的流程图。可以用诸如上文针对方法200所述的服务器和/或客户端设备的系统来实现方法300。
[0039]在块302中,本方法建立可识别的多个区域类别。可以基于区域的一个或多个特性来识别区域类别。在一些情况下,允许区域将要被检测的像素的相同特性还被用来识别区域类别。例如,可以通过寻找面部特征来在图像中检测面部区域类别,并且找到这些面部特征还将该区域建立为具有面部类别。在其它情况下,可基于一些特性来检测区域,并且可基于其它特性来确定其类别。例如,可基于找到具有相同色彩或纹理的像素来检测区域,并且可基于那些像素的色彩和那些像素相对于图像边界的位置来确定其类别。可以将多个可识别类别中的每一个与用来识别图像中的那些类别的一个或多个特性和/或规则相关联。如上所述,区域类别可以包括面部类别(如果其它面部特征被定义为他们自己的单独类别的话,可以将其仅仅定义为面部的面部皮肤)、单独的面部特征(眼睛、眉毛、鼻子、嘴)类别、天空类别、植物类别(和/或包括草、树叶等的子类别)、建筑物类别、人行道类别或其它对象类另IJ(交通工具、项目等)。可以将描述这样的类别的信息和规则存储在本方法可访问的存储设备中。
[0040]在一些实现中,用户可以定义用于图像中的区域的新的自定义类别。例如,用户可以输入一个或多个特性和/或条件,其(如果在图像的区域中找到的话)可以建立自定义类别的存在。定义新类别的这样的信息可以被存储且可被执行方法300和/或400的系统访问。在一个示例中,用户可以输入将要被搜索的某个色彩和/或区域应位于的图像中的特定位置(例如,上半部、右上象限等)的特性。用户还可以定义应该围绕一个区域以使其具有自定义类别的资格的特定特性或区域,诸如在被面部肤色围绕的眼睛区域中。在一些实现中,用户可以提供本方法可以检查以在图像中找到类似区域的自定义区域类别的样本。例如,用户可以使用现有编辑工具或功能来追踪图像中的特定区域,=用户期望为其定义自定义类别。
[0041]在块304中,本方法将适当的编辑选项集合与图像区域的每个可识别类别相关联。本方法可操作以识别在上述块302中建立的图像中的多个可用区域类别。本方法可以从本方法可访问的存储设备读取可用的编辑选项的集合。编辑选项的集合可以包括多个编辑选项。编辑选项的集合中的每一个是可用于可在其中打开图像的编辑应用或其它应用或操作系统的编辑选项的全集的不同子集。在一些实现中,可以将不同的编辑选项的集合与可识别类别中的至少两个中的每一个相关联或者与所有可识别类别中的每一个相关联。此外,在一些实现中,编辑选项的集合(每个集合与相应的区域类别相关联)中的至少一个包括至少一个类型的编辑选项,其不同于与其它所识别出的类别相关联的其它编辑选项的集合中的至少一个中的编辑选项的类型。这样的特征可以允许不同的编辑选项的集合和/或不同类型的编辑选项与不同的图像区域类别相关联,因此允许适合于图像区域的不同类别的选项的集合,并且可以针对那些不同类别高度地定制和/或自定义。
[0042]编辑选项包括一个或多个编辑操作。每个编辑操作改变图像的一个或多个像素的特性。例如,编辑操作可以改变像素的色彩(例如,R、G或B )、色度、亮度、饱和度、对比度或类似值或特性。编辑操作还可以是更复杂的操作,诸如卷积操作,在所述卷积操作中在一个或多个特性方面改变特定像素和/或邻近于该特性像素的一个或多个相邻像素(或在围绕该特定像素的像素组内)。例如,编辑操作可以是平滑或模糊操作,其对围绕中心像素的像素的色彩和/或亮度求平均值以产生平滑效果。编辑操作可以是噪声降低操作,其可以在保持诸如边缘的细节的同时移除像素的组的色彩或其它特性中的噪声。局部对比度增强操作可以是相对于相邻像素改变像素或区域的对比度的另一编辑操作。锐化(或“结构”)操作可以是另一编辑操作(例如特定形式的局部对比度增强),其中使得特定像素的值尽可能不同于相邻像素的值以提供更锐利边缘的外观。可以将任何或所有的这些卷积操作包括为编辑操作。
[0043]另外,在一些实现中,特定编辑操作可以包括多个单独编辑操作。例如,用于面部区域类别的“平滑”的编辑选项可包括模糊操作以及亮度改变操作。嘴区域类别中的“牙齿变白”的编辑选项可以包括饱和度编辑操作(例如,降低牙齿中的黄色色度)以及用以增加牙齿的亮度的操作。
[0044]在这里,编辑选项的“类型”指的是使得执行一个或多个编辑的特定集合的编辑选项。每种类型的编辑选项使得执行不同的编辑操作的集合。例如,一种类型的编辑选项可以使得执行色彩编辑操作,其中改变一个或多个像素的色彩。另一种类型的编辑选项可以使得改变一个或多个像素的饱和度值。另一不同类型的编辑选项可以使得模糊操作,而不同类型可以使得锐化操作。在一些情况下,一种类型的编辑选项可以使得执行多个编辑操作,诸如使得改变像素的色度值和饱和度值的类型的编辑选项或使得辉度值改变并执行平滑操作的类型的编辑选项。
[0045]—些类型的编辑选项调整其相关联的区域类别的色彩外观,而其它类型的不这样。例如,包括色彩或饱和度修改的编辑选项改变呈现给用户的区域中的色彩的外观。相反地,包括一个或多个卷积操作(诸如模糊/平滑、噪声降低、锐化以及结构操作)的编辑选项修改像素值以实现区域中的与色彩外观变化不同的效果。
[0046]每个编辑选项的集合可以是不同的。例如,集合可以包括不同数目的编辑选项,例如,可以将一个区域类别与五个编辑选项的集合相关联,同时可以将不同的类别与四个编辑选项的集合相关联。在一些实现中,编辑选项的集合可以通过包括来自一个或多个(或所有)其它集合的一个或多个不同类型的编辑选项而不同。在一些实现中,这样的特征允许使得每个集合适合于特定的图像区域类别。例如,每个编辑选项可以适合于与其相关联的的特定类别。诸如,面部图像区域类别可以最适合于诸如“平滑”的编辑选项,因为用户可能希望使面部瑕疵的外观模糊和减少,并且可适合于“亮化”以使面部在图像中更加可见,因为面部常常是图像的预定焦点。其它适当选项可包括“改变色彩”以允许用户更改色度,“降低噪声”以去除面部上的噪声伪像,以及“调整暖度”以允许增加或减小面部的“暖”色度值,诸如红色、品红色等。相反地,其它区域类别可能不适合于这些选项中的一个或多个。例如,天空区域类别可能不适合于“平滑”选项,因为天空区域通常比面部具有更少的细节,并且通常不需要被模糊。在一些其它示例中,天空图像区域类别可能最适合于诸如“降低噪声”的编辑选项而不是“锐化细节”(因为天空通常是其中不期望更多细节的背景区域)。植物图像区域类别可能最适合于诸如“锐化细节”而不是“降低噪声”的编辑选项(因为噪声降低技术可能会移除植物中的纹理细节)。
[0047]如上所述,可以用多种方式来确定用于特定区域类别的特定编辑选项的适当性(适合性)。例如,专家图像编辑用户可以基于他们的经验而提前决定哪些编辑选项用哪些图像区域类别可以最佳地运行。在其它实现中,本方法可以检查特定用户和/或多个用户的意见和/或编辑活动,并确定哪些编辑操作最常被用于哪些图像区域类别。例如,可以检查社交网络服务或其它联网或在线服务的多个用户的编辑活动(例如,在具有用户的许可的情况下)以确定哪些编辑选项应该在与每个特定图像区域类别相关联的集合中。
[0048]此外,在一些实现中,编辑选项的集合(例如,一个或多个集合或者每个编辑选项的集合)可以包括多个不同类型的编辑选项。这允许用户从具有对所指示区域的多种不同类型的编辑的菜单中选择选项,在编辑方面为用户提供更多灵活性。
[0049]可以将特定图像区域类别与编辑选项的集合的每个关联存储在方法300可用的的存储设备中。如下面关于图4所述的,稍后可检查这些关联用于编辑选项的显示。例如,可以将关联数据存储为查找表,可以在所述查找表中查找类别以找到其关联的编辑选项的集入口 ο
[0050]在块306中,本方法获得图像。此块可以类似于上文参照图二所述的块202。在一些实现中,用户可以选择图像。例如,用户可以输入用以在编辑应用程序或其它应用程序中打开特定图像以用于编辑的命令。在其它实现中,可以自动地获得图像用于方法300,诸如从特定源设备或存储设备、例如通过网络、从用户的相册等接收图像或从其中选择图像。可以在块302和304之后的任何时间执行块306。
[0051]在块308中,图像检查多个图像特性。执行此块以便找到图像内的一个或多个区域并在下一块中将那些区域分类。可以检查多种不同的图像特性。例如,可以检查像素特性(在所使用的任何模型中,诸如RGB、HSV、HSL、HSI等),诸如色彩(例如,RGB值)、色度、亮度或辉度、饱和度或其它像素特性。还可以检查图像中的这些特性中的任何一个的分布,诸如在直方图中。在一些实现中,可以检查图像区中的纹理的特性,诸如由多个像素的色彩所提供的纹理,其中,可以确定诸如频率的纹理特性(例如,出现在已检查的图像区内的规则间隔特征之间的间距)。一些实现可以基于像素或区的其它特性来检测区域,诸如区域在图像帧内的位置(例如,接近于图像的上边界、接近于图像的底部、接近于图像的侧边、接近于图像的中心等)。一些实现可以检测邻近于或围绕所检测到的区域的图像特性和特征,诸如色彩特性、线性或边缘特征等。各种实现可以检查不同特性中的多个或组合。
[0052]在块310中,本方法将图像分割成一个或多个所检测到的区域并确定每个所检测到的区域的类别。这使用在块308中在图像中找到的特性和/或其它信号来执行。在一个示例中,本方法通过寻找通常在面部中找到的色彩的特定范围和/或寻找预确定的空间构造中的诸如眼睛、嘴、眉毛、耳朵以及鼻子之类的面部特征来检测面部区域类别。面部特征本身可以基于其相对于面部的大小、色彩、与其它面部特征的间距等来检测。例如,可以基于围绕嘴找到的位置点来检测嘴,所述位置点定义了嘴周围的边界框,所述嘴周围的边界框具有预定大小、形状以及相对于诸如鼻子和眼睛之类的其它面部特征的位置。
[0053]在另一示例中,本方法可以通过寻找特定色彩来检测天空区域类别,诸如在从图像导出的诸如直方图或色度轮的色度分布中找到蓝色色度的特定群集。还可以寻找区域内的特征的色彩,诸如用于云的白色或灰色色彩,其也可以指示天空区域类别。还可以通过着眼于特定区域(例如,具有预确定的色彩的相邻像素的组)相对于图像帧(例如,边界)的位置来确定该天空区域类别,其中,天空区域通常将位于图像的上边界附近。在另一示例中,本方法可以通过寻找由具有这些色度的相邻像素定义的区域中的特定色彩(诸如绿色或黄色色度)来检测植物区域类别。另外,本方法可以检查这样的区域中的特定纹理,这样的纹理指示植物区域类别中的叶子图案或草图案。在其它实现中,还可以检测其它区域类别,诸如不同类型的对象(交通工具、物品、建筑物、景观特征等),如上所述。
[0054]作为块310的结果,可以将图像分割成具有被分配给每个区域的类别的多个所检测到的区域。可以将描述此分割的信息存储在存储设备中以供方法300和/或400访问。在其它实现中,在块300中未将图像分割成区域;例如,可以在如在图4的方法400中那样接收到用户输入之后检测区域并将其分类。
[0055]在块310中,本方法基于区域类别将每个所检测到的区域分配至关联的编辑选项的集合。例如,可以通过在块302中所确定的编辑选项的集合与不同区域类别的所存储的关联,来确定分配给每个所检测到的区域的编辑选项的集合。因此,例如,在关联数据中匹配所检测到的区域的特定类别,并且将与该类别相关联的编辑选项的所存储的集合分配至该所检测到的区域。
[0056]图4是根据一些实现图示了用于呈现用于图像中的区域的编辑选项的示例方法400的流程图。可以通过诸如用于方法200的上文所述的服务器和/或客户端设备的系统来实现方法400。在一些实现中,可以在图3的方法300之后发起方法400,其中,在方法400中所处理的图像与在方法300中处理的所获得的图像相同。在其它实现中,可以在其它条件或事件之后,例如使用先前已处理或没有处理的任何所获得的图像来发起方法400。
[0057]在块402中,本方法显示图像。例如,可由显示设备在编辑应用或其它类型的应用中显示图像。例如,用户可能已经命令了图像在应用中显示以便用户可以编辑图像。在其它情况下,可在社交网络应用、用于查看内容的查看应用或其它应用中显示图像。
[0058]在块404中,本方法检查所显示的图像中的区域是否被用户指示。用户可以利用被定向到该区域的用户输入来指示该区域。在一些实现中,用户输入可以是简单的指向动作而不需要包括通过拖拽指针或其它光标(例如,将选择框重新确定尺寸)或者通过利用光标描摹特定区域的轮廓进行的选择。例如,用户可以通过将用户控制的显示指针或其它光标在图像中的区域上方悬停来指示该区域。例如,悬停可以包括将指针在特定位置的阈值距离内保持预确定的时间长度,诸如几秒钟。本方法然后可以确定该特定位置是否在所检测到的区域内。替选地,用户可以点击被包括在特定区域中的图像区,例如当指针处于一个位置处的同时按下物理按钮。在其它实现中,用户可以通过敲击图像上的位置来指示区域,其中,该位置在所述区域内。例如,许多便携式设备包括触摸屏,其充当用于显示图像的输出设备和用于接收来自用户的触摸输入的输入设备。用户可以通过在图像中的期望显示位置处触摸该触摸屏来敲击图像中的位置。如果用户所指示的位置被包括在图像的所检测到的区域中,则该所检测到的区域被视为被用户指示。如果用户所指示的位置未被包括在图像的所检测到的区域中,则未指示区域,并且本方法返回到块402。
[0059]如果用户指示了区域,则本方法继续至块406,其中,本方法显示(或者另外呈现)与所指示的区域相关联的编辑选项的集合。如上文关于于图3的块310所述,图像中的每个区域先前与编辑选项的一个集合相关联,并且在块406中显示了这组编辑选项。所呈现的编辑选项的集合不同于与图像区域的其它可识别类别相关联的其它编辑选项的集合中的一个或多个,因此允许如上所述针对任何所指示的区域类别显示适当的特定类型的编辑选项的集合。在一些实现中,所呈现的编辑选项的集合包括如上所述的多个不同类型的编辑选项,其在编辑方面为用户提供了更多灵活性。
[0060]在其它实现中,可能不存在与所检测到的区域相关联的编辑选项的先前关联和/或在图像中可不存在先前分割的区域。在这种情况下,可以由本方法执行所要求的过程以检测是否已指示了图像、识别用于区域的类别和/或确定哪个编辑选项的集合与所识别出的类别相关联,类似于图3的适当块。
[0061]可以用多种格式中的任何一种显示编辑选项。例如,可以在垂直菜单中显示编辑选项,其中,每个编辑选项被显示为标签的垂直列中的标签。在其它实现中,可以将编辑选项显示为图标(例如,每个图标具有当指针在图标上悬停时所显示的关联文本描述)、水平标签和/或采取其它配置的图标/标签。可以在用户所指示区域的位置附近显示编辑选项,诸如在悬停的指针或图像中的被敲击位置附近。其它实现可以在图形界面的其它区中显示编辑选项,诸如在专用字段或窗口中或者在界面中的新的弹出窗口中。
[0062]在块408中,本方法检查是否已经例如由用户(或程序)选择了所显示的编辑选项中的一个。例如,用户可以通过控制所显示的指针和接口设备或者通过在期望编辑选项的位置处触摸触摸屏来选择编辑选项中的一个。如果未选择编辑选项,则本方法返回到块402。
[0063]如果选择了编辑选项,则在块410中,本方法执行与所选择的编辑选项相关联的一个或多个编辑操作以调整所指示区域中的一个或多个像素值。如上文参考图3的块302所述,每个编辑选项可以包括修改图像像素的一个或多个特性的一个或多个编辑操作。在一些实现中,本方法对所指示区域的所有像素执行这些修改。在其它实现中,本方法对所指示区域的像素的子集执行修改,其中,该子集可以由用户选择,可以由本方法确定和/或可以由用户所指示的位置且由所执行的特定操作来确定。例如,如果用户选择了嘴区域的“使牙齿变白”的编辑选项,则本方法可以确定应通过该所选选项的操作来修改所指示嘴区域的哪些像素。要修改的像素可以包括描绘牙齿的像素而不包括描绘嘴唇或嘴的其它部分的像素(例如,其中可以经由其色彩和/或形状来辨别这样的像素)。如果用户选择平滑面部区域,则可以基于色彩、形状等来检测面部内的面部特征(诸如眼睛、嘴等),并从模糊操作中排除。
[0064]此外,一些编辑选项可以在被选择之后提示用户进行附加输入。例如,色彩调整选项可以显示滑动条或输入栏,并向用户要求要将该区域变成的新色值,并且在接收到该值时,色彩操作将该区域中的像素值改变成该值。其它编辑选项可以使用附加用户输入来选择关联操作将调整的区域内的特定区。
[0065]在执行所选择的编辑操作之后,本方法可以返回到块402。
[0066]在适当的情况下,可以按照与所示的不同的顺序和/或至少部分地同时地执行方法200至400的各种块和操作。例如,一些实现可以在各种时间和/或基于与编辑图像的用户无关的事件执行块302至304。可以在在方法400中编辑那些图像中的任何一个之前对多个图像执行块306至312。在一些实现中,方法200至400的块或操作可以多次、按照不同的顺序和/或在方法中的不同时间出现。在一些实现中,例如,可以在如图1中所示出的服务器系统102上实现方法200、300和/或300。在一些实现中,作为执行那些块的服务器系统的替代或者除此之外,一个或多个客户端设备可以执行一个或多个块。
[0067]图5是图示了出使用示例图像500的图3和4的方法的示例实现的图。在一些实现或应用中,可以从多种源接收所示出的图像500,诸如存储器、存储驱动或一个或多个用户的其它储存器,并且可以以多种格式存储,诸如用户的相簿中的图像、电影或其它视频序列中的图像帧等。可以由客户端或服务器设备如下面所描述地处理图像。在一些实现中,可以在例如图1的客户端设备120、122、124和/或126的显示设备上或者在一些实现中在服务器系统102的显示设备上显示图像。在一个非限制性示例中,用户可以查看由显示设备在由客户端设备或服务器设备所提供的图形界面中所显示的图像。
[0068]在一些实现中,图像500可以与单个特定用户相关联(例如,为其所有或可被其访问),例如存储在系统上的特定用户的帐户上的。这允许将该用户的自定义编辑选项和/或偏好用于图像。其它用户可以类似地具有为了供其自己使用而存储的其自己的自定义编辑选项、偏好以及图像。其它实现可以与多个用户共享特定用户的图像和/或自定义编辑选项。在一个示例中,第二用户可以查看第一用户的自定义编辑选项的集合,并且可以向系统特制一个或多个那些编辑选项的集合对于第二用户而言是可接受的。然后可以为第二用户的图像呈现那些第一用户编辑选项的集合。
[0069]在图5的这个示例中,由系统获得图像500,并且可以分析该图像500以检测一个或多个区域,如上文参照图3所述。在图像500中,系统已检测到面部区域506和508以及天空区域510、树区域512、天空区域514、建筑物区域516以及人行道区域518。图5中的虚线指示所检测到的区域的外延,但是在一些实施例中不需要被显示。可以使用多种技术来检测这些区域,上文描述了其中的一些。例如,可以使用针对某些面部特征(诸如位于特定空间构造内的眼睛、嘴、眉毛以及鼻子)检查图像的面部辨识技术来检测面部区域506和508。在一些实现中,可以由作为以面部的所检测到的面部区域周围的区域的边界的面部边界框(或多边形)定义所检测到的面部区域506。在其它实现中,所定义的面部区域可以进一步包括邻近于具有与边界框内的皮肤区类似的色彩的边界框和在其外面的皮肤区。在本示例中,目艮睛区域520和522也已被系统检测到,连同在这些眼睛附近的眉毛、鼻子和嘴特征的其它面部特征一起以检测面部506。在本示例中,眼睛520和522被检测为与本文中所述的其它区域类似的其自己的区域。因此,可以将面部区域506和508仅仅定义为排除被定义为其自己的单独区域的任何面部特征(诸如眼睛520和522)的边界框内的面部皮肤区。
[0070]可以通过寻找图像500的像素的特定特性来检测天空区域510和514并将其识别为天空区域类别。例如,本系统可以检查色彩,诸如在蓝色或灰色色度范围内的色度,以及具有适当色彩的像素区域的位置。在这里,天空区域510和514被定位在邻近于图像500的上边界的位置,并且因此被检测为天空区域。例如,可以通过检测用于相邻像素的区的绿色色彩且通过检测树的叶子的纹理来检测并识别树区域512。可以基于诸如直边(例如,使用诸如Hough线性变换的用于图像的已知边缘检测器等来检测)、色彩(灰色、白色等)以及图像内的位置(例如,更接近于图像的上半部分)之类的特性来检测和识别建筑物区域516。可以基于诸如区域内的平行线、色彩(灰色、黑色等)以及图像边界内的位置(例如,更接近于图像的下半部分)来检测和识别人行道区域518。
[0071]在一些实现中,例如在打开并显示图像以便由用户编辑之前,针对所有可检测区域分析图像500。在其它实现中,可在由用户指示所显示区域的时候针对可检测区域分析图像500,诸如在指针或光标下面或被用户敲击的图像位置中的区域时。
[0072]可以在编辑器应用或其它程序中显示图像500。在本示例中,用户控制所显示的指针528,其可以被诸如鼠标、轨迹球、触针等指针设备控制。用户将指针528在位置530处悬停,其在所检测到的区域506内。此动作使得针对区域506显示菜单532。菜单532包括各自可由用户使用指针528来选择的多个编辑选项。例如,可以接近于指针528和位置530显示菜单532,或者可以在图形界面的另一区中显示。在其它实现中,区域506内的位置530或其它位置可能已被用户敲击,例如在触摸屏上,以使得显示菜单532。
[0073]菜单532包括适合于面部区域506的类别的编辑选项。例如,编辑选项包括各种类型的编辑选项,以平滑像素、亮化像素、调整对比度、降低噪声、改变色彩、增亮阴影(例如,填充光以恢复阴影色调中的细节)、恢复突出显示(例如,使曝光过度或剪辑的突出显示色调变暗)以及调整所检测到的区域506的像素的“暖度”(例如,通过提高区域的白点的温度和/或提高品红色、红色、橙色或粉红色色调(诸如突出显示和阴影色调的色度和饱和度)等)。这些编辑选项已被预确定为最适合于且适用于诸如区域506的面部区域。例如,这些编辑选项可被一个或多个专家用户选择,或者可以是先前被系统的一个或多个用户所使用或用于面部类别的区域的可访问的服务的最常见或典型编辑选项。可以响应于面部区域508被用户指示而显示类似于菜单532的菜单。
[0074]在一些实现中,还可以在诸如菜单532的编辑选项的菜单中显示诸如选项534的扩展选项。选项534在被用户选择时使得显示附加编辑选项。可以从由编辑应用或其它应用所提供的编辑选项的完整列表中选择这些附加编辑选项。这个特征允许用户选择在菜单532中可能未显示的编辑选项。
[0075]在图5中还示出了呈现编辑选项的菜单538和544的其它示例。(在一些实现中,基于最近用户所指示的区域在任何一个时间仅显示菜单532、538和544中的一个。)例如,在天空区域510中,用户已使用触摸屏敲击了位置536,系统将其确定为在天空区域510中并使得显示菜单538。菜单538呈现适合于天空区域类别的编辑选项。例如,菜单包括用以在区域中亮化或暗化、降低区域中的噪声、在区域中执行局部对比度增强、改变色彩、改变饱和度(例如,用于天空区域类别的蓝色色度)或执行区域510的像素的色调压缩(例如,将区域的直方图的末端上的暗和亮色调朝着直方图的中间压缩)的各种类型的编辑选项。例如,不呈现平滑选项,因为这样的选项通常不适合于或适用于天空区域。如果期望的话,一些实现可以呈现类似于选项534的扩展选项以允许选择附加编辑选项。如果用户在区域514上悬停、敲击或者另外指示区域514的话,天空区域514可以呈现类似于菜单538的菜单。
[0076]在另一示例中,用户已敲击系统确定其处在在树区域512内的位置542.。响应于该用户输入而显示菜单544。菜单544包括适合于诸如树区域512的植物区域类别的编辑选项。例如,菜单544包括锐化、亮化、暗化、改变色彩或者改变区域512的像素的饱和度的选项。在一些实现中,“改变饱和度”选项可以仅改变适合于区域类别的色度。例如,针对植物类别,与植物相关的适当色度可以是黄色和绿色色度,并且其它色度将不被改变。在用于面部区域506和天空区域510的菜单中未呈现诸如锐化细节的编辑选相关,因为在那些区域类别中通常不执行这样的选项(虽然在一些实现中可以利用进一步输入来访问这样的选项,诸如选择如菜单532中的“更多”选项534)。
[0077]在一些实现中可以识别其它区域类别。例如,已检测到建筑物区域516以描绘建筑物并具有建筑物类别,并且可以响应于用户指示区域516而显示编辑选项的适当菜单。类似地,已检测到并识别出人行道区域518以描绘人行道或类似表面,并且可以响应于用户指示区域518而显示编辑选项的适当菜单。其它图像可包括具有诸如水、动物(或特定类型的动物,诸如鸟、狗等)、对象等类别的区域,其各自与其自己的编辑选项的集合相关联,其自己的编辑选项的集合可具有与其它集合不同类型的选项,并且适合于它们的关联类别。例如,水区域类别可包括锐化、噪声降低、亮化、暗化、色彩、饱和度以及局部对比度增强选项,而动物类别可包括锐化、亮化、局部对比度增强以及噪声降低选项。
[0078]在一些实现中,如上所述,用户可能能够定义新的区域类别,例如,定义自定义区域类别。例如,用户可能能够使用应用的绘图工具或类似特征来描摹或者另外描画图像500内的区域。用户还可以提供要在图像中检查的条件或特性以检测该区域类别。用户还可以从可用编辑选项的全集中选择期望的编辑选项,并且当该区域类别被用户指示时,所选择的编辑选项将被呈现为菜单中的编辑选项的集合,例如类似于上述菜单。
[0079]图6是可用来实现本文中所述的一个或多个特征的示例设备600的框图。在一个示例中,设备600可用来实现图1的服务器设备104,并执行本文中所述的适当方法实现。设备600可以是任何适当的计算机系统、服务器或其它电子或硬件设备。例如,设备600可以是主机计算机、台式计算机、工作站、便携式计算机或电子设备(便携式设备、蜂窝电话、智能电话、平板计算机、电视、TV机顶盒、个人数字助理(PDA)、媒体播放器、游戏设备等)。在一些实现中,设备600包括处理器602、存储器604以及输入/输出(I/O)接口606。
[0080]处理器602可以是用以执行程序代码并控制设备600的基本操作的一个或多个处理器或处理电路。“处理器”包括处理数据、信号或其它信息的任何适当的硬件和/或软件系统、机制或组件。处理器可包括具有通用中央处理单元(CPU)、多个处理单元、用于实现功能的专用电路或其它系统的系统。处理不需要局限于特定地理位置,或者具有暂时的限制。例如,处理器可“实时地”、“离线”、“在批量模式下”等执行其功能。可在不同的时间且在不同的位置由不同(或相同)的处理系统来执行处理的各部分。计算机可以是与存储器通信的任何处理器。
[0081 ] 通常在设备600中提供存储器604用于由处理器602访问,并且其可以是任何适当的处理器可读存储介质,诸如随机存取存储器(RAM)、只读存储器(ROM)、电可擦可编程只读存储器(EEPR0M)、闪速存储器等,其适合于存储用于由处理器执行的指令,并与处理器602分开被设置和/或与之集成。存储器604可以存储由处理器602在设备600上操作的软件,包括操作系统608和一个或多个应用引擎610,诸如图形编辑引擎、web托管引擎、社交网络引擎等。在一些实现中,应用引擎610可以包括使得处理器602能够执行本文中所述功能的指令,例如,图2、3和/或4的方法中的一些或所有。可以将存储器604中的软件中的任何替选地存储在任何其它适当存储位置或计算机可读介质上。另外,存储器604(和/或其它所连接的存储设备)可以存储图像、区域类别、编辑选项的集合、类别与编辑选项之间的关联以及在本文所述的特征中所使用的其它数据。可以将存储器604和任何其它类型的储存器(磁盘、光盘、磁带或其它有形介质)视为“存储设备”。
[0082]I/O接口 606可以提供用以使得能够将设备600与其它系统和设备接口连接的功能。例如,网络通信设备、诸如存储器和/或数据库106的存储设备以及输入/输出设备可以经由接口 606通信。在一些实现中,I /0接口可以连接到诸如输入设备(键盘、指针设备、触摸屏、麦克风、相机、扫描仪等)和输出设备(显示设备、扬声器设备、打印机、马达等)的接口设备。
[0083]为了便于图示,图6示出了用于处理器602、存储器604、1/0接口606以及软件块608和610中的每一个的一个块。这些块可表示一个或多个处理器或处理电路、操作系统、存储器、I/O接口、应用和/或软件模块。在其它实现中,设备600可不具有所示组件中的所有和/或可具有其它元件,包括作为本文所示那些的替代或除此之外的其它类型的元件。虽然系统102被描述为执行如在本文中的一些实现中所描述的步骤,但系统102或类似系统的任何适当组件或组件的组合或者与这样的系统相关联的任何适当的一个或多个处理器可执行所描述的步骤。
[0084]客户端设备还可以实现和/或结合本文所述的特征使用,诸如图1中所示出的客户端设备120至126。示例客户端设备可以包括与设备600类似的一些组件,诸如处理器602、存储器604以及I/O接口 606。可以在存储器中提供适合于客户端设备的操作系统、软件和应用并被处理器使用,诸如客户端群组通信应用软件。可以将用于客户端设备的I/O接口连接到网络通信设备以及到输入和输出设备,诸如用于捕捉声音的麦克风、用于捕捉图像或视频的相机、用于输出声音的音频扬声器设备、用于输出图像或视频的显示设备或者其它输出设备。例如,可以使用显示设备来显示如本文所述的设置、通知以及许可,其中,这样的设备可以包括任何适当的显示设备,诸如LCD、LED或等离子体显示屏、CRT、电视、监视器、触摸屏、3D显示屏或其它视觉显示设备。一些实现可以提供音频输出设备,诸如在广告中说出文本和/或描述设置、通知以及许可的语音输出或合成。
[0085]虽然已关于其特定实现描述了本描述,但这些特定实现仅仅是说明性而非限制性的。可将本示例中所示的概念应用于其它示例和实现。
[0086]这里所讨论的系统可收集关于用户的个人信息或者可利用个人信息,在这种情况下,可为用户提供控制程序或特征是否收集用户信息(例如,描绘用户的图像、关于用户的社交网络的信息、用户特性(年龄、性别、职业等)、社交动作或活动、用户的偏好或用户的当前位置)的机会。另外,一些数据在其被存储或使用之前可以以一个或多个方式被处理,使得个人可识别信息被移除。例如,可处理用户的身份,使得对于用户而言不能确定个人可识别信息,或者可将在该处获得位置信息的用户的当前和地理位置通用化(诸如到城市、ZIP码或国家级),使得不能确定用户的特定位置。因此,用户可控制如何收集关于用户的信息并被服务器使用。
[0087]请注意,可将本公开中所述的功能块、特征、方法、设备以及系统集成或划分成如本领域的技术人员将已知的系统、设备以及功能块的不同组合。可使用任何适当的编程语言和编程技术来实现特定实现的例程。可采用不同的编程技术,诸如面向程序或对象的。例程可在单个处理设备或多个处理器上执行。虽然可按照特定顺序呈现步骤、操作或计算,但在不同的特定实现中可改变该顺序。在一些实现中,可同时地执行在本说明书中被示为连续的多个步骤或块。
【主权项】
1.一种方法,包括: 基于图像的一个或多个像素的一个或多个特性来检测所述图像的区域,所述区域包括所述图像的仅一部分,其中,所检测到的区域具有选自多个可识别类别的所识别出的类别,其中,所述多个可识别区域类别中的每一个与多个编辑选项的集合相关联,每个集合中的每个编辑选项与可操作以调整图像的一个或多个像素的一个或多个值的一个或多个编辑操作相关联;以及 呈现编辑选项的各个集合中的一个集合以供选择,其中,所呈现的编辑选项的集合与所检测到的区域的所识别出的类别相关联,并且其中,所呈现的集合中的每个编辑选项可操作以调整所检测到的区域的一个或多个像素的一个或多个值,并且其中,所呈现的编辑选项的集合不同于与其它类别相关联的其它编辑选项的集合中的至少一个集合。2.根据权利要求1所述的方法,其中,编辑选项的各个集合中的至少一个集合包括多个不同类型的编辑选项,每种类型的编辑选项包括与其它类型的编辑选项的编辑操作不同的一个或多个编辑操作。3.根据权利要求1所述的方法,其中,所述编辑选项的各个集合中的至少一个集合包括与其它编辑选项的集合中的至少一个集合中的编辑选项的类型不同的至少一个类型的编辑选项。4.根据权利要求1所述的方法,其中,所呈现的编辑选项的集合被预确定为适合于所述区域的所识别出的类别。5.根据权利要求4所述的方法,其中,所确定的类别是面部皮肤,并且其中,所呈现的编辑选项的集合包括平滑操作。6.根据权利要求1所述的方法,其中,所呈现的编辑选项的集合中的至少一个编辑选项是以下类型的编辑选项:其不调整所述区域的色彩外观。7.根据权利要求1所述的方法,其中,所呈现的编辑选项中的至少一个编辑选项包括卷积操作,所述卷积操作改变所检测到的区域中的第一像素的像素值并改变与所述第一像素邻近的区域中的至少一个像素的像素值。8.根据权利要求7所述的方法,其中,所述卷积操作包括以下至少一个: 模糊操作,所述模糊操作使所检测到的区域中的像素和多个相邻像素模糊; 噪声降低操作,所述噪声降低操作降低所检测到的区域中的噪声; 局部对比度增强操作,所述局部对比度增强操作调整所检测到的区域中的一个或多个像素相对于与所检测到的区域中的所述一个或多个像素相邻的像素的对比度; 锐化操作,所述锐化操作使得像素值不同于一个或多个相邻像素。9.根据权利要求1所述的方法,其中,检测所述区域包括:检查多个不同的图像特性以检测所述区域并确定其类别。10.根据权利要求9所述的方法,其中,所述多个不同图像特性包括以下至少一个:由所述图像中的像素的色彩所提供的纹理、所述图像中的像素的辉度、以及所检测到的区域关于所述图像的一个或多个边界的位置。11.根据权利要求1所述的方法,其中,检测所述区域包括自动地将所述图像分割成包括所检测到的区域在内的多个区域,并自动地识别所分割的区域的类别。12.根据权利要求1所述的方法,其中,响应于接收到指示了所述图像中的区域的用户输入,呈现所述编辑选项的集合用于选择,其中,所述用户输入包括将指针在所述区域上方悬停或者敲击所述区域。13.根据权利要求1所述的方法,进一步包括: 接收对所呈现的编辑选项中的一个编辑选项的选择;以及 使得在所检测到的区域上执行与所选择的编辑选项相关联的一个或多个编辑操作。14.根据权利要求1所述的方法,进一步包括: 检查由一个或多个用户所选择的先前选择的编辑选项和接收到所述先前选择的编辑的区域的类别;以及 基于针对所检测到的区域的所识别出的类别而选择的先前选择的编辑选项中的最常见编辑选项,来确定所呈现的编辑选项的集合。15.根据权利要求1所述的方法,进一步包括:从用户接收新的区域类别的定义,并将来自编辑选项的整个所述集合中的一个或多个编辑选项与该新区域类别相关联。16.一种方法,包括: 基于图像的一个或多个像素的一个或多个特性来检测所述图像的区域,所述区域包括所述图像的仅一部分; 识别所检测到的区域的类别,所述类别选自多个可识别类别,其中,所述多个可识别区域类别中的每一个与一个或多个编辑选项的不同集合相关联,每个集合中的每个编辑选项与可操作以调整图像的一个或多个像素的一个或多个值的一个或多个编辑操作相关联;以及 呈现编辑选项的各个集合中的一个集合以供选择,其中,所呈现的编辑选项中的每一个编辑选项适合于所述区域的所确定的类别,并且其中,所呈现的编辑选项中的每一个编辑选项可操作以响应于被选择而调整所检测到的区域的一个或多个像素的一个或多个值。17.根据权利要求16所述的方法,其中,编辑选项的各个集合中的至少一个集合包括与编辑选项的至少一个其它集合中的编辑选项的类型不同的至少一个类型的编辑选项。18.根据权利要求16所述的方法,其中,所呈现的编辑选项的集合包括具有不同类型的多个编辑选项,其中,每种类型的编辑选项包括与其它类型的编辑选项的编辑操作不同的一个或多个编辑操作。19.一种系统,包括: 存储设备;以及 至少一个处理器,所述至少一个处理器访问所述存储设备且可操作以执行操作,所述操作包括: 基于图像的一个或多个像素的一个或多个特性来检测所述图像的区域,所述区域包括所述图像的仅一部分,其中,所检测到的区域具有选自多个可识别类别的所识别出的类别,其中,所述多个可识别区域类别中的每一个与多个编辑选项的集合相关联,每个集合中的每个编辑选项与可操作以调整图像的一个或多个像素的一个或多个值的一个或多个编辑操作相关联;以及 呈现编辑选项的各个集合中的一个集合以供选择,其中,所呈现的编辑选项的集合与所检测到的区域的所识别出的类别相关联,并且其中,所呈现的集合中的每个编辑选项可操作以调整所检测到的区域的一个或多个像素的一个或多个值,并且其中,所呈现的编辑选项的集合不同于与其它类别相关联的其它编辑选项的集合中的至少一个。20.根据权利要求19所述的系统,其中,所呈现的编辑选项的集合包括多个不同类型的编辑选项,每种类型的编辑选项包括与其它类型的编辑选项的编辑操作不同的一个或多个编辑操作,其中,所述不同类型的编辑选项包括以下至少一个: 模糊操作,所述模糊操作使所检测到的区域中的像素和多个相邻像素模糊; 噪声降低操作,所述噪声降低操作降低所检测到的区域中的噪声; 局部对比度增强操作,所述局部对比度增强操作调整所检测到的区域中的一个或多个像素相对于与所检测到的区域中的所述一个或多个像素相邻的像素的对比度;以及 锐化操作,所述锐化操作使得像素值不同于所检测到的区域中的一个或多个相邻像素。
【文档编号】G06F3/0484GK105849685SQ201480066599
【公开日】2016年8月10日
【申请日】2014年12月2日
【发明人】大卫·G·贝斯布里斯, 阿拉温德·克里希纳斯瓦米
【申请人】谷歌公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1