通过基于注释聚集搜索结果来进行数字图像取得的制作方法

xiaoxiao2020-7-22  7

专利名称:通过基于注释聚集搜索结果来进行数字图像取得的制作方法
技术领域
本发明的实施例总地涉及处理对数字图像的基于文本的请求。
背景技术
在许多情形下用户可能希望搜索数字图像。例如,用户可能希望在因特网上寻找特定的数字图片。又例如,用户可能希望从其在其个人计算机本地存储的数字图像的集合中取得特定的数字图像。因此,许多不同类型的软件应用需要支持使用户能够搜索数字图像的功能。虽然存在若干种不同的用于取得数字图像的方案,但这些方案不是没有限制的。 用于执行对数字图像的搜索的一种方案(称为“按关键字查询”方案)是搜索一数字图像集合中的与匹配提出请求的用户提交的一个或多个搜索字词(各自被称为“关键字”)的字符串相关联的所有数字图像。例如,如果用户提交具有关键字“dog”的查询,并且字词“dog” 在特定数字图像的名称中,则此方案可建议在名称中有单词“dog”的数字图像满足该查询。按关键字查询方案的一个问题在于,若一数字图像要满足查询,则查询中标识的关键字需要匹配与该数字图像相关联的字符串。用户可自由地基于任何原因对数字图像赋予任何名称和/或描述。用户可决定对整个数字图像赋予名称和/或描述,这可能是出于描述数字图像的视觉内容的目的,但也可基于主题的、空间的、时间的和社交的原因。例如, 数字图像的名称或描述可由人类或软件实体基于时间戳、包含数字图像的文件夹的名称或者指示出该数字图像相对于其他数字图像的位置的序列号来赋予。这使基于关键字的搜索的任务变得复杂,因为本来可能满足用户查询的特定数字图像可能与不匹配查询所标识的任何关键字的文本相关联。按关键字查询方案的另一个问题在于一系列关键字就是缺乏数字图像所固有的表达力。换言之,用户很难仅使用几个关键字来表达期望图像的视觉特性。用于执行对数字图像的搜索的另一种方案(称为“按图像查询方案”)是搜索一数字图像集合中的与提出请求的用户提交的样本数字图像相似的所有数字图像。按图像查询方案的最初障碍在于,提出请求的用户必须使用样本数字图像来找到其他图像,而在许多情况下提出请求的用户可能就是没有用作搜索基础的样本数字图像。按图像查询方案的另一个问题在于可能难以识别出与提出请求的用户提交的样本数字图像相似的其他数字图像。这是由被称为语义差距问题的现象导致的。语义差距问题用不同的语言表示来表征一对象的两个描述之间的差异。在按图像查询方案中,高级别概念(例如旗帜、飞机或新闻播报员)是从提取自提出请求的用户提交的样本数字图像的低级别特征(例如对象的颜色、对象的形状或对象的大小)得出的。从而,如果要识别存在于数字图像的外观中的高级别概念以理解数字图像的含义,那么唯一可用的独立信息是数字图像的低级别像素数据。然而,即使是对诸如圆形或黄色之类的形状或颜色的简单语言表示也要求完全不同的数学形式化方法。由于此复杂性,经常难以判定用户对其提交的样本数字图像的什么高级别特征感兴趣,并且接下来就不可能针对物理世界中的所有概念构
5建特定的高级别概念检测器。因此,希望在数字图像搜索领域有新的改进。本部分中描述的方案是可以从事的方案,但不一定是先前已经设想到或从事过的方案。因此,除非另有指明,否则不认为本部分中描述的任何方案仅因为其被包括在本部分中就应被当作是现有技术。

发明内容
提供了用于通过对利用具有与基于文本的请求所标识的关键字相关联的视觉注释的数字图像执行的按图像查询搜索的结果集合进行聚集来改善取得满足该请求的数字图像的性能的技术。当接收到标识出一个或多个关键字的请求时,基于该一个或多个关键字来选择一个或多个带注释数字图像。在一实施例中,选择各自具有与这一个或多个关键字中的至少一个相关联的视觉注释的一个或多个带注释数字图像。在另一实施例中,选择各自具有与该请求所标识的关键字完全匹配的视觉注释的一个或多个带注释数字图像。其他实施例可使用多种不同的标准来判定关键字与视觉注释之间的关联何时强到足以将与该视觉注释相关联的数字图像包括在所选择的一个或多个带注释数字图像中。视觉注释是数字图像的视觉外观的一部分上的有界区域,该有界区域被用户赋予了注释。例如,可接收到标识出关键字“英式”、“电话”和“亭”的请求。作为响应,可以识别出具有与“英式电话亭”相关联的视觉注释的若干个带注释数字图像,例如可以识别出图3 所示的数字图像中的一个或多个,因为图3所示的每个视觉注释被赋予了与“英式电话亭” 相关联的注释。在一实施例中,为特定请求选择的带注释数字图像的数目可以是可配置的, 因为本发明的实施例所选择的带注释数字图像的特定数目可影响对请求做出响应的准确度和速度。在选择一个或多个带注释数字图像之后,对于所选择的一个或多个带注释数字图像中的每一个,取得由一个或多个候选数字图像构成的集合。例如,如果选择了三个带注释数字图像,则识别并取得三个不同的候选数字图像集合(对于三个带注释数字图像中的每一个有一个集合)。在一实施例中,以这种方式取得的每个候选数字图像集合可以是排名列表。每个候选数字图像集合是利用所选择的带注释数字图像之一通过按图像查询方案来获得的。在一实施例中,只有带注释数字图像的由视觉注释标识的部分被用于按图像查询搜索中来为该带注释数字图像取得由一个或多个候选数字图像构成的集合。在针对每个所选择的带注释数字图像获得一候选数字图像集合之后,这些候选数字图像集合被聚集成单个数字图像集合。例如,可以使用博尔达计数方案来将这些候选数字图像集合中的每个集合聚集到单个数字图像集合中。然后,可生成对请求的响应,其标识出该单个数字图像集合中对请求的响应度最高的数字图像。在本发明的实施例中,响应可被发送到原来发送请求的实体。聚集结果的替换方案可基于马尔可夫链。


在附图中以示例方式而非限制方式图示了本发明的实施例,附图中相似的标号指代类似的元件,其中图1是示出根据本发明实施例执行搜索的高级别功能步骤的流程图2是根据本发明实施例的示例性系统的框图;图3是示出根据本发明实施例的八个不同的带注释数字图像的图示;图4是示出根据本发明实施例的候选数字图像的识别和搜索结果的聚集的图示; 并且图5是本发明的实施例可在其上实现的计算机系统的框图。
具体实施例方式在以下描述中,出于说明目的,阐述了许多具体细节以帮助透彻理解这里给出的本发明的实施例。然而,很明显,没有这些具体细节也可以实现这里给出的本发明的实施例。在其他情况下,以框图形式示出公知的结构和设备,以避免不必要地模糊这里给出的本发明的实施例。接收对数字图像的请求将参考图1来描述本发明的实施例,图1是示出根据本发明实施例执行搜索的高级别功能步骤的流程图。在步骤110中,接收对数字图像的请求。步骤110的请求标识了由定界字符(例如空格)分隔开的一个或多个字符串。该请求所标识的每个字符串在本领域中可被称为“关键字”。不要求关键字本身是认可的单词,因为请求所标识的字符串可对应于任何可能的字符串。例如,“beach”、“kittens”、“T220”和“e$r&u6”都是可能的关键字,虽然只有“beach”和“kittens”是正式认可的单词。步骤110的请求可在多种不同的情境中由多种不同的当事人接收。为了举例说明步骤Iio的请求的接收者的宽广范围,将参考图2来论述步骤110的请求,图2是根据本发明实施例的示例性系统200的框图。在一实施例中,客户端210可发出步骤110的请求。这里宽泛使用的客户端210 表示能够发出对一个或多个数字图像的请求的任何实体。客户端210的非限制性的说明性示例包括在无线设备或个人计算机上运行的软件应用和web浏览器。在一实施例中,服务器220接收步骤110的请求。这里宽泛使用的服务器220表示单独地或集体地能够接收和处理对一个或多个数字图像的请求的任何实体或实体群组。 服务器220的非限制性的说明性示例包括web服务器和/或应用服务器。例如,服务器220 可实现为与应用服务器或其他软件应用交互以对来自客户端210的对数字图像的请求做出响应的web服务器。在一实施例中,服务器220通过通信链路242从存储在存储装置230 中的数字图像集合中取得数字图像。在一实施例中,数字图像可被存储在存储装置230上。这里宽泛使用的存储装置 230表示可用于存储数字内容的任何易失性或非易失性存储介质。虽然图2将存储装置230 示为单个实体,但存储装置230可表示任意数目的能够存储数字图像的实体,例如存储装置230可表示各自能够存储数字图像的两个或更多个易失性或非易失性存储介质。在一实施例中,存储装置230可利用数据库管理系统(DBMS)或利用文件系统来实现。通信链路240可以用支持客户端210与服务器220之间的数据交换的任何介质或机构来实现。通信链路242可以用支持服务器220与存储装置230之间的数据交换的任何介质或机构来实现。通信链路240和242的非限制性的说明性示例包括但不限于诸如局域网(LAN)、广域网(WAN)、以太网或因特网之类的网络、一个或多个陆地、卫星或无线链路、以及串行或并行打印机线缆。在图2中未示出(并且在下文中更详细说明)的一实施例中,客户端210、服务器220和存储装置230中的一个或多个可对应于同一实体和/或实现在同一物理机器上,这样系统200中可不包括通信链路240或M2。为了举例说明本发明的若干个示例性实施例,客户端210可对应于web浏览器, 服务器220可对应于web服务器和应用服务器,存储装置230可对应于数据库管理系统 (DBMS),并且通信链路240和242可对应于基于分组的网络,例如因特网。在这种实施例中,步骤110可通过用户利用web浏览器与网站交互以向web服务器发送对一个或多个数字图像的请求来执行。web服务器进而在为该请求服务时可与应用服务器或其他软件应用交互。应用服务器利用这里论述的技术判定从数据库管理系统中取得哪些数字图像,并随后从数据库管理系统中取得这些数字图像。应用服务器将取得的数字图像提供给web服务器,并且web服务器向web浏览器提供响应网页,该响应网页包括这些数字图像。在另一实施例中,客户端210可对应于在诸如蜂窝电话、膝上型计算机或个人数字助理(PDA)之类的无线设备上运行的软件应用,并且通信链路240可对应于无线网络。客户端210可通过无线网络向服务器220发送步骤110的请求。服务器220利用这里论述的技术判定从数据库管理系统中取得哪些数字图像,并随后从数据库管理系统中取得这些数字图像,并将这些数字图像发送到无线设备以便在其上显示。图2所示的实体中的两个或更多个可在同一物理机器上实现。例如,在图2中未示出的一实施例中,客户端210和服务器220可以是同一实体。在这种实施例中,用户可利用特定的软件应用发出步骤110中的对数字图像的请求,并且同一软件应用可执行以上联系服务器220论述的功能。例如,用户可使用在用户的个人计算机上运行的软件应用来取得在用户的个人计算机上存储的数字图像。在这种实施例中,存储装置230可利用用户的个人计算机的文件系统来实现。用户可能希望使用这种实施例来利用专门在用户的个人计算机上运行的软件应用来管理存储在用户的个人计算机本地的数字图像。从而,客户端210、 服务器220和存储装置230执行的功能可在多种不同的机器上执行,并且图2所示的特定实施例只是举例说明了本发明的一个实施例。在接收步骤110的请求之后,选择一个或多个带注释数字图像,这将在下文中更详细说明。选择带注释数字图像在步骤120中,选择由一个或多个带注释数字图像构成的集合。在一实施例中,服务器220选择由一个或多个带注释数字图像构成的集合。如下一部分中将更详细说明的, 在步骤120中识别的一个或多个带注释数字图像中的每一个将在步骤130中被用于利用按图像查询搜索来搜索可能满足步骤110的请求的额外数字图像(称为候选数字图像)。因此,在步骤120中选择的一个或多个带注释数字图像应当是从数字图像汇集中选择的视觉外观与步骤110的请求所标识的关键字最相关的那些数字图像。在描述如何在步骤120中选择由一个或多个带注释数字图像构成的集合之前,将简要描述带注释数字图像是什么以及如何创建带注释数字图像。在步骤120中选择的一个或多个带注释数字图像中的每一个具有与之相关联的有界区域。此外,每个有界区域与一注释相关联。与每个带注释数字图像相关联的有界区域标识带注释数字图像的外观的一部分。诸如拍摄数字图片的摄影师之类的人类可确定数字图像的外观上的有界区域的大小、形状和位置,以及对有界区域赋予注释。通常,人类将对有界区域赋予描述带注释数字图像的有界区域中显示的内容的注释。诸如加州Sunnyvale的Yahoo !公司提供的在线照片共享服务Flickr和加州 Mountain View的Google公司提供的在线照片共享服务Picasa之类的照片共享和管理应用和服务使得用户能够查看和管理其数字图像以及与他人共享这些数字图像。诸如Fl ickr 之类的某些照片共享和管理应用和服务使得用户能够识别数字图像的外观上的有界区域并且对该有界区域做出注释以产生带注释数字图像。为了举例说明如何可做出带注释数字图像,图3是示出根据本发明实施例的八个不同的带注释数字图像的图示300。在图示300中示出了带注释数字图像302、304、306、 308、310、312、314和316。图3所示的八个数字图像中的每一个具有与之相关联的有界区域,即有界区域 350、352、3M、356、358、360、362 和 364。有界区域 350、352、3M、356、358、 360,362和364中的每一个限定了示出一英式电话亭的视觉内容的范围。有界区域350、 352、354、356、358、360、362和364中的每一个还与注释“英式电话亭”相关联。用户可利用数码相机拍摄数字图片。对于此说明,假定用户利用其数码相机创建了带注释数字图像302。用户可将带注释数字图像302上传到照片共享和管理应用或服务, 例如Flickr。用户可使用Flickr的“Notes” (备注)特征来对带注释数字图像302指定有界区域350。由于有界区域350限定了示出英式电话亭的视觉内容的范围,所以用户可利用Flickr的备注特征来对有界区域350赋予注释“英式电话亭”。以类似的方式,用户可对图3所示的数字图像中的任何一个指定有界区域并随后注释该有界区域。由于用户确定数字图像的外观上的有界区域的边界,所以用户对于由有界区域限定范围的视觉内容有完全的控制。因此,用户通常利用有界区域内显示的内容的文本性描述来注释该有界区域。这样,注释提供了非常好的信息来源,因为注释一般提供了与注释相关联的有界区域所标识的视觉内容的文本性描述。近来在线照片共享服务的流行已经产生了由人类注释的数字图像的非常大的、不断增长的在线汇集。每天有数百万的数字图像被上传和注释。由用户创建的这些带注释数字图像可被本发明的实施例使用。因此,在一实施例中,存储装置230存储或指弓丨已由人类利用诸如Flickr之类的照片共享和管理应用和服务上传和注释的数字图像。在一实施例中,在步骤120中,由一个或多个带注释数字图像构成的该集合被服务器220选择是因为该集合中的每个带注释数字图像具有有界区域并且该有界区域带有与步骤110的请求所标识的至少一个关键字相关联的注释。在一实施例中,在步骤120中, 服务器220可从数字图像的汇集(例如存储在存储装置230上的图像或服务器220以其他方式可访问的图像)中选择一个或多个带注释数字图像的每一个。本发明的实施例可采用不同的标准来在步骤120中选择带注释数字图像。例如, 根据本发明的一个实施例,如果一带注释数字图像具有与步骤110的请求所标识的所有关键字完全匹配的注释,则服务器220在步骤120中识别该带注释数字图像。例如,如果步骤 110的请求标识了关键字“英式”、“电话”和“亭”,则在步骤120中可识别图3所示的带注释数字图像中的任何一个,因为图3所示的每个带注释数字图像都具有与步骤110的请求所标识的所有关键字完全匹配的注释(即“英式电话亭”)在另一实施例中,如果一带注释数字图像具有包含步骤110的请求所标识的关键字中的至少一个的注释,则服务器220在步骤120中选择该带注释数字图像。例如,如果步骤110的请求标识了关键字“红色”和“电话”,则在步骤120中可选择图3所示的带注释数字图像中的任何一个,因为图3所示的每个带注释数字图像具有含有步骤110的请求所标识的关键字中的至少一个(即“电话”)的注释(即“英式电话亭”)。在另一实施例中,如果一带注释数字图像具有映射到步骤110的请求所标识的关键字中的至少一个的注释,则服务器220在步骤中选择该带注释数字图像。在这种实施例中,服务器220可存储映射关键字到可存在于带注释数字图像的注释中的字词或单词的映射信息。然后,服务器220在步骤120中识别带注释数字图像时可使用该映射信息。例如, 映射信息可基于同义词、具有相似含义的单词和/或类/种关系。在本发明的实施例中,服务器220可采用多种不同的标准来按准确度的降序识别带注释数字图像,直到选择了预定数目的带注释数字图像为止。例如,如果服务器220已被配置为在步骤120中识别四个不同的带注释数字图像,则服务器220最初可采用一种严格但准确的方案来识别带注释数字图像。如果该严格但准确的方案对于步骤120中的识别仅给出一个可接受的带注释数字图像,则随后服务器220可采用不那么严格但不那么准确的方案来识别带注释数字图像,直到在步骤120中已识别了预定数目的带注释数字图像为止。在一实施例中,在步骤120中由服务器220识别的带注释数字图像的预定数目或者可以是可配置的数目,或者可以是在服务器220在步骤110中接收到请求之前由服务器 220确立的数目。如果带注释数字图像的预定数目是可配置的,则在服务器220从用户接收到标识在步骤120中要识别的带注释数字图像的数目的输入时,服务器220配置在步骤 120中识别的带注释数字图像的数目以反映从用户接收的数目。在判定服务器220在步骤120中应当识别多少个带注释数字图像时,在准确度与速度之间可能存在折衷。服务器220在步骤120中识别的带注释数字图像越多,最终结果就可能越准确,但是获得这些结果所需的处理时间增加了。因此,在一实施例中,基于对识别不同数目的带注释数字图像的成本收益分析来选择在步骤120中服务器220识别的带注释数字图像的预定数目。对于每个带注释数字图像取得候选数字图像在步骤130中,对于在步骤120中识别的每个带注释数字图像,从一数字图像集合 (称为可用数字图像集合)中选择取得由一个或多个数字图像(称为“候选数字图像”)构成的集合。在一实施例中,服务器220对于在步骤120中选择的每个带注释数字图像,选择取得由一个或多个候选数字图像构成的集合。由一个或多个候选数字图像构成的集合中的每个候选数字图像与可用数字图像集合中的其他数字图像相比具有与关联于该候选数字图像集合的带注释数字图像更相似的视觉外观。本发明的实施例可使用不同的方案来判断特定的带注释数字图像与潜在的候选数字图像之间的相似性。在一个实施例中,由一个或多个候选数字图像构成的集合中的每个候选数字图像与可用数字图像集合中的其他数字图像相比具有与关联于该候选数字图像集合的整个带注释数字图像更相似的视觉外观。在下文中将更详细论述的另一实施例中,由一个或多个候选数字图像构成的集合中的每个候选数字图像与可用数字图像集合中的其他数字图像相比具有与关联于该候选数字图像集合的带注释数字图像的关联的有界区域更相似的视觉外观。
图4是示出根据本发明实施例的候选数字图像的识别和搜索结果的聚集的图示 400。在图4所示的实施例中,假定在步骤120中选择了三个带注释数字图像,并且还假定这些带注释数字图像是图4所示的带注释数字图像402、404和406。还假定带注释数字图像402、404、406在步骤120中被选择是因为在步骤110中接收到了标识关键字“苹果”和 “标志”的请求。图4还示出了分别与带注释数字图像402、404和406相关联的三个候选数字图像集合,即候选数字图像集合410、412和414。在一实施例中,服务器220使用在步骤120中选择的每个带注释数字图像作为执行按图像查询搜索的基础。利用特定的所选带注释数字图像执行的按图像查询搜索的结果成为了在步骤130中针对该特定的所选带注释数字图像选择的数字图像候选集合。例如, 在步骤130中,服务器220可利用带注释数字图像402来执行按图像查询搜索。针对带注释数字图像402的该按图像查询搜索的结果成为候选数字图像集合410。由于针对特定带注释数字图像的候选数字图像集合是利用该特定带注释数字图像通过按图像查询搜索来选择的,所以针对特定带注释数字图像的候选数字图像集合中的候选数字图像与其他数字图像相比具有与该特定带注释数字图像更相似的视觉外观。在另一实施例中,服务器220在执行按图像查询搜索以识别与带注释数字图像相关联的候选数字图像集合时,只使用与该带注释数字图像相关联的有界区域所标识的视觉内容。这种方案是有利的,因为仅使用带注释数字图像上的有界区域所标识的视觉内容执行按图像查询搜索去除了否则可能存在的噪声。例如,假定特定的带注释数字图像是停在丛林中间的雪佛兰Impala。假定感兴趣的主题是雪佛兰Impala,并且因此已经通过视觉注释识别出了带注释数字图像的视觉外观的与雪佛兰Impala相对应的部分。在此实施例中, 只有由视觉注释限定范围的视觉内容(即雪佛兰Impala)将被用于利用按图像查询搜索针对带注释数字图像搜索候选数字图像。这样,在用于针对带注释数字图像取得候选数字图像集合的按图像查询搜索中将不会使用带注释数字图像的不与用户感兴趣的区域相对应的部分的视觉外观(即丛林),从而提高了候选数字图像集合中的数字图像在视觉外观上与相关联的带注释数字图像相似的可能性。在一实施例中,当在步骤130中选择一个或多个候选数字图像时,服务器220可使用一个或多个过滤器来限制搜索空间。例如,服务器220在步骤130中可不考虑选择缺乏某些特征的某些数字图像。在一实施例中,当针对特定带注释数字图像选择候选数字图像集合时可考虑带注释数字图像所描述的区域与其他数字图像之间的视觉相似性。一种可能的方案是使用视觉特征向量之间的余弦相似性来确定图像相似性。在一实施例中,在步骤130中取得的每个候选数字图像集合可以是一排名列表。 在一实施例中,服务器220可对在步骤130中选择的候选数字图像集合中的候选数字图像排名。服务器220可采用多种不同的用于对候选数字图像集合内的数字图像排名的技术; 然而,这么做的动机始终是相同的,即按与关联于候选数字图像集合的带注释数字图像的视觉外观的相似性的降序来对该候选数字图像集合内的数字图像排序。例如,候选数字图像集合410、420和430在图4上被示为具有排名。位置1处的候选数字图像处于最高位置, 并且被认为与和其相关联的带注释数字图像在外观上最相似。例如,候选数字图像430在位置1处,因此被认为与候选数字图像432相比具有与带注释数字图像402更相似的外观。
11又例如,候选数字图像442在位置7处,因此被认为其与带注释数字图像404的外观相似性比候选数字图像440低。又例如,候选数字图像450在位置2处,因此被认为与候选数字图像452相比具有与带注释数字图像406更相似的外观。在一实施例中,服务器220可限制在步骤130中取得的特定候选数字图像集合内包括的数字图像的数目。例如,服务器220可判定特定候选数字图像集合中仅X(其中X是正整数)个数字图像。另外,服务器220可判定只有特定候选数字图像集合的排名靠前的数字图像有资格在步骤130中被包括在候选数字图像集合内。这样,服务器220可确保针对特定带注释数字图像的候选数字图像集合是外观上最相关的。在一实施例中,在步骤130中,在对于步骤120中选择的每个带注释数字图像取得了一个或多个候选数字图像集合的每个集合之后,使用关于步骤110的请求所标识的一个或多个关键字的过滤器。这允许了将候选图像集合缩窄到与文本性查询更相关的集合。可用数字图像集合可包括服务器220可访问的任何数字图像。例如,可用数字图像集合可存储在存储装置230上或图2中未示出的服务器220可访问的其他位置上。在一实施例中,可用数字图像集合可包括通过因特网可访问的数字图像(例如由诸如Flickr之类的照片共享和管理应用或服务维护的数字图像)的一个或多个仓库。在对于步骤120中选择的每个带注释数字图像选择了由一个或多个候选数字图像构成的集合之后,每个由一个或多个候选数字图像构成的集合被聚集到单个数字图像集合中,这将在下文中更详细说明。将候选数字图像集合聚集成单个数字图像集合在步骤140中,在步骤130中取得的每个候选数字图像集合被聚集到单个数字图像集合中。在一实施例中,服务器220可以把在步骤130中识别出的每个候选数字图像集合聚集到单个数字图像集合中。可以采用不同的用于将每个候选数字图像集合聚集到单个数字图像集合中的方案。在步骤140中可以使用任何类型的聚集算法来将每个候选数字图像集合聚集到单个数字图像集合中。在一种方案中,可以使用排名聚集。排名聚集是被许多元搜索引擎使用的技术,其中来自不同搜索引擎的结果被合并成新的结果排名列表。在一实施例中,步骤140中采用的特定排名聚集技术是博尔达(Borda)计数技术。 在博尔达计数技术中,投票者按优选顺序来对候选者排名。博尔达计数技术通过给予每个候选者与其被每个投票者排名的位置相对应的一定数目的积分来判定选举的胜者。一旦已对所有投票者计数,具有最高积分的候选者就是胜者。聚集式排名偏爱在多个候选数字图像集合中排名较高的数字图像。仅存在于一个候选数字图像集合中的候选数字图像在聚集式排名中有可能被降级。这是有利的,因为即使特定的候选数字图像可能具有与在步骤120中选择的带注释数字图像之一相似的外观, 该特定候选数字图像也可能不匹配步骤110的请求中的关键字所表达的宽广概念。因此, 该特定候选数字图像可能不匹配在步骤120中选择的其他带注释数字图像,并且结果该特定候选数字图像在聚集排名中被赋予较低的排名。为了举例说明在系统200中可如何采用博尔达计数技术,考虑图4,其是示出根据本发明实施例的候选数字图像的识别和搜索结果的聚集的图示400。如图4所示,示出了带注释数字图像402、404和406,以及其各自的候选数字图像集合,即候选数字图像集合410、412和414。候选数字图像集合中的每个候选数字图像已被赋予了根据其在候选数字图像集合中的位置的总分。单个数字图像集合470对应于将候选数字图像集合410、412和414 聚集成单个候选数字图像集合的结果。单个数字图像集合470可被排名,例如如图4所示, 单个数字图像集合是按积分的降序来排名的。在将这些候选数字图像集合聚集成单个数字图像集合之后,生成对步骤110的请求的响应,这将在下文中进一步详细说明。生成标识响应数字图像的响应在一实施例中,在步骤150中,服务器220生成标识一个或多个响应数字图像的响应。该响应所标识的一个或多个响应数字图像是对步骤110的请求响应度最高或者与步骤 110的请求最相关的那些数字图像。在某些实施例中,服务器220随后可通过通信链路MO 将该响应从服务器220发送到客户端210。在一实施例中,步骤150的一个或多个响应数字图像可由服务器220通过在步骤 140的单个数字图像集合中选择一定数目的排名靠前的数字图像来选择。例如,如图4所示,服务器220可判定数字图像480、482、484、486、488、490、492、494、496和498是响应数字图像,因为这些数字图像是单个数字图像集合470中排名前10的数字图像。选择排名前 10的数字图像只是示例,因为服务器220可选择任意数目的排名靠前的数字图像,例如服务器220可从单个数字图像集合470中选择前5个数字图像,并且判定数字图像480、482、 484,486和488是响应数字图像。可使用其他度量来判定单个数字图像集合470中的哪些数字图像有资格作为响应数字图像。例如,在另一实施例中,任意数目的具有超过一定阈值的博尔达计数总分的数字图像可有资格作为响应数字图像。在一实施例中,该响应可通过包含该一个或多个响应数字图像来标识该一个或多个响应数字图像。或者,步骤150的响应可通过包括提供到该一个或多个响应数字图像的链接或者描述存储该一个或多个响应数字图像的位置的信息来标识该一个或多个响应数字图像。有利地,本发明的实施例能够比现有方案更准确地处理对数字图像的基于关键字的请求。另外,本发明的实施例能够在比现有方案更短的时间中处理对数字图像的基于关键字的请求。这里论述的技术可适用于多种情境中。例如,本发明的实施例可用在因特网上以及用在单个机器本地。识别并从考虑中去除不相似的带注释数字图像在步骤120中,针对步骤110的请求选择一个或多个带注释数字图像。在一实施例中,如果之后判定这些带注释数字图像中的一个或多个与其他带注释数字图像太不相似, 则可以从考虑中去除该带注释数字图像。带注释数字图像一旦在步骤120中被选择则一般将会是相像的。例如,如果步骤 110的请求标识了关键字“彩虹”,并且在步骤120中选择了五个带注释数字图像,则这五个带注释数字图像中的每一个的外观一般应当示出彩虹。因此,这五个带注释数字图像的外观应当是相像的。又例如,图4所示带注释数字图像402、404和406中的每一个一般是相像的。然而,某些关键字可能导致选择不相像的带注释数字图像。例如,考虑标识关键字“美洲虎”的请求。同样,如果在步骤120中选择五个带注释数字图像,则可能视觉外观像名为美洲虎的动物的四个带注释数字图像在步骤130中被选择,并且视觉外观像名为美洲虎的车的另一带注释数字图像在步骤130中被选择。当然,视觉外观像名为美洲虎的动物的四个带注释数字图像的视觉外观将是彼此相似的,但与视觉外观像名为美洲虎的车的带注释数字图像的外观是不相似的。因此,希望判定视觉外观像名为美洲虎的车的带注释数字图像与其他的不像,并因此从进一步考虑中去除不相似的带注释数字图像以及与其相关联的任何候选数字图像。用于判定带注释数字图像在外观上是否彼此相似的一种方案是在如下假设下操作的如果若干个带注释数字图像在外观上相似,则将预期到与这些带注释数字图像相关联的候选数字图像集合也在外观上相似。基于该基本原理,此方案基于在与带注释数字图像相关联的候选数字图像集合中存在的数字图像之间是否有任何重叠来判定带注释数字图像在外观上是否彼此相似。例如,如果在步骤130中,服务器220对于每个带注释数字图像选择了 10个候选数字图像来包括在候选数字图像集合中,并且一般在每个候选数字图像集合中有大约4-6个重叠的候选数字图像,那么如果一个带注释数字图像在其候选数字图像集合中不具有任何重叠的候选数字图像,则可以认为该带注释数字图像在外观上与其他带注释数字图像不相似,并且该不相似的带注释数字图像和与其相关联的候选数字图像集合被从进一步考虑中去除。用于判定带注释数字图像在外观上是否彼此相似的另一种方案是对于在步骤120 中被选择的第一带注释数字图像判定在步骤130中针对该第一带注释数字图像选择的候选数字图像集合是否包括在步骤120中也被选择的第二带注释数字图像。换言之,判定在步骤130中对在步骤120中取得的第一带注释数字图像执行的按图像查询搜索是否取得了在步骤120中取得的第二带注释数字图像。如果是,则可以合理地认为,第一带注释数字图像和第二带注释数字图像具有彼此相似的外观。用于衡量步骤120中选择的带注释数字图像的适当性的另一种方案是使用被称为“倒数排名”(Reciprocal Rank)的度量。倒数排名被定义为“对于结果向量v,倒数排名是Ι/i,其中i是第一相关结果的位置”。利用此定义,我们可以通过使用在步骤120中选择的其他带注释数字图像来为步骤120中选择的某一带注释数字图像计算倒数排名。这里, 在没有进一步手工干预的情况下,我们假定在步骤120中取得的带注释数字图像都与结果相关。在一实施例中,在前进到步骤130之前,从带注释数字图像的集合中去除具有低倒数排名的带注释数字图像。各种度量可用于确定用于从进一步考虑中去除带注释数字图像的阈值,例如通过选择具有最低的倒数排名的后k个带注释数字图像(其中k是不超过带注释数字图像总数的任何整数)或者直接对倒数排名的值设定阈值。实现机构在一实施例中,客户端210、服务器220和存储装置230中的每一个可利用计算机系统来实现。图5是示出本发明的实施例或其组件可在其上实现的计算机系统500的框图。 计算机系统500包括用于传输信息的总线502或其他通信机构,以及与总线502相耦合用于处理信息的处理器504。计算机系统500还包括诸如随机访问存储器(RAM)或其他动态存储设备之类的主存储器506,其耦合到总线502,用于存储信息和处理器504要运行的指令。主存储器506还可用于存储在处理器504运行指令期间的临时变量或其他中间信息。
14计算机系统500还包括只读存储器(ROM) 508或其他静态存储设备,其耦合到总线502,用于为处理器504存储静态信息和指令。提供了诸如磁盘或光盘之类的存储设备510,其耦合到总线502,用于存储信息和指令。计算机系统500可经由总线502耦合到显示器512,例如阴极射线管(CRT),用于向计算机用户显示信息。包括字母数字和其他键的输入设备514被耦合到总线502,用于向处理器504传输信息和命令选择。另一类用户输入设备是光标控制装置516,例如鼠标、轨迹球或光标方向键,用于向处理器504传输方向信息和命令选择,并用于控制显示器512上的光标移动。该输入设备通常具有两个轴(第一轴(例如χ)和第二轴(例如y))上的两个自由度,其允许设备指定平面中的位置。本发明涉及使用计算机系统500来实现这里描述的技术。根据本发明的一个实施例,这些技术由计算机系统500响应于处理器504运行包含在主存储器506中的一条或多条指令的一个或多个序列而执行。这种指令可以被从另一计算机可读介质(如存储设备 510)读取到主存储器506中。对包含在主存储器506中的指令序列的运行使得处理器504 执行这里描述的过程步骤。在替换实施例中,可以使用硬线电路来替代软件指令或与软件指令相组合以实现本发明。因此,本发明的实施例并不限于硬件电路和软件的任何特定组
I=I O这里所用的术语“机器可读介质”指参与提供使得机器以特定方式工作的数据的任何介质。在利用计算机系统500实现的实施例中,例如,在向处理器504提供指令以供运行时,涉及了各种机器可读介质。这种介质可采取许多形式,包括但不限于存储介质和传输介质。存储介质包括非易失性介质和易失性介质。非易失性介质例如包括光盘或磁盘,如存储设备510。易失性介质包括动态存储器,如主存储器506。传输介质包括同轴电缆、铜线和光纤,包括构成总线502的线路。传输介质也可采取声波或光波的形式,例如在无线电波和红外数据通信期间生成的声波或光波。所有这种介质都必须是有形的,以使得介质所承载的指令能够被物理机构检测到,该物理机构将指令读取到机器中。机器可读介质的常见形式例如包括软盘、柔性盘、硬盘、磁带或任何其他磁介质, CD-ROM、任何其他光介质,穿孔卡、纸带、任何其他具有孔图案的物理介质,RAM、PROM和 EPROM、FLASH-EPR0M、任何其他存储器芯片或卡盘,下文中描述的载波,或者计算机可以读取的任何其他介质。各种形式的机器可读介质可用于将一条或多条指令的一个或多个序列传送到处理器504以供运行。例如,指令可首先承载在远程计算机的磁盘上。远程计算机可将指令加载到其动态存储器中,并利用调制解调器经由电话线发送指令。计算机系统500本地的调制解调器可接收电话线上的数据,并使用红外发送器来将数据转换为红外信号。红外检测器可接收在红外信号中携带的数据,并且适当的电路可将数据置于总线502上。总线502 将数据传送到主存储器506,处理器504从主存储器506取得指令并运行指令。主存储器 506接收的指令可以可选地在处理器504运行之前或之后存储在存储设备510上。计算机系统500还包括耦合到总线502的通信接口 518。通信接口 518提供到与本地网络522相连接的网络链路520的双向数据通信耦合。例如,通信接口 518可以是综合业务数字网络(ISDN)卡或调制解调器,以提供与相应类型电话线的数据通信连接。又例如,通信接口 518可以是局域网(LAN)卡,以提供与兼容LAN的数据通信连接。也可以实现无线链路。在任何这种实现方式中,通信接口 518发送并接收电信号、电磁信号或光信号, 这些信号携带了表示各种类型的信息的数字数据流。网络链路520通常通过一个或多个网络提供到其他数据设备的数据通信。例如,网络链路520可以通过本地网络522提供与主机计算机5 或由因特网服务供应商 (ISP) 5 操作的数据设备的连接。ISP 5 进而通过全球分组数据通信网络(现在通常称为“因特网”)5 提供数据通信服务。本地网络522和因特网5 都使用携带数字数据流的电信号、电磁信号或光信号。经过各种网络的信号和在网络链路520上并经过通信接口 518的信号(这些信号携带去往和来自计算机系统500的数字数据)是传输信息的载波的示例性形式。计算机系统500可通过(一个或多个)网络、网络链路520和通信接口 518发送消息并接收数据,其中包括程序代码。在因特网示例中,服务器530可通过因特网5^、ISP 526、本地网络522和通信接口 518发送所请求的应用程序代码。接收到的代码可以在接收时被处理器504运行,和/或被存储在存储设备510或其他非易失性存储装置中以供以后运行。以这种方式,计算机系统500可以以载波的形式获得应用代码。本文档的附图中包括的数字图像是从Fl ickr下载的,并且是由cindy47452、 SolGrundyλ wallyg、Atelier Teee、Bludegeoner86、ivanx、matsuyuki、borkurdotnet、 dan· blanachard、riebschlager、Ctd 2005、engelcox、triciaward、Essjay in NZ、 Anushruti R、p ! ο、navonod、davesag、Zeetz Jones、marymactavish、selva、Blacknell、 Wysxλ Hearloverl717、el_en—houston、nutmeg66、kaneda99、foreversouls、xolivare、 alexi 1982λ Fleur-Designλ bolti22、tricaward、John Gevers、powerbooktrance、 Steve Rhodes、NeillOK theparadigmshifter、larsomatΛ mundocuadro、xgravity23、 Heavenbound、neiljmh、gspidermac.net、morebouncetotheounce、jthorstad、flex、 richevenhouse、Jesman、Felix63、Platform 3禾口Mickeleh Creative Commons (CC) license 发布的。在以上说明书中,已参考对于每种实现方式可能不同的许多具体细节描述了本发明的实施例。因此,关于本发明是什么以及申请人希望本发明是什么的唯一和排他指示是根据本申请授权的那套采取其授权时的特定形式的权利要求,包括任何后续的更正。这里针对这种权利要求中包含的术语明确记载的任何定义都应当决定这种术语在权利要求中使用时的含义。因此,在权利要求中没有明确记载的限定、要素、性质、特征、优点或属性都不应当以任何方式限制这种权利要求的范围。因此,说明书和附图应被认为是说明性的而不是限制性的。
权利要求
1.一种方法,包括接收对数字图像的请求,其中所述请求标识出一个或多个关键字;选择带注释数字图像集合,其中所述带注释数字图像集合的每个成员具有与之相关联的有界区域,每个有界区域被赋予了与所述一个或多个关键字中的至少一个相关联的注释,并且每个有界区域标识出与所述有界区域相关联的带注释数字图像的外观的一部分;对于所述带注释数字图像集合的每个带注释数字图像,从数字图像的集合中选择候选数字图像集合,其中特定候选数字图像集合中的数字图像是基于所述特定候选数字图像集合的成员和所述带注释数字图像集合的与所述特定候选数字图像集合相关联的特定带注释数字图像所共有的视觉特性而被选择来包括在所述特定候选数字图像集合中的;把针对所述带注释数字图像集合的所述每个带注释数字图像的候选数字图像集合聚集到单个数字图像集合中;以及生成对所述请求的响应,其中所述响应标识出预定数目的响应数字图像,其中所述响应数字图像是所述单个数字图像集合中对所述请求的响应度最高的数字图像。
2.如权利要求1所述的方法,其中,在所述选择所述带注释数字图像集合的步骤中要选择的带注释数字图像的数目是在接收所述请求之前确定的。
3.如权利要求1所述的方法,其中,在所述选择所述带注释数字图像集合的步骤中要选择的带注释数字图像的数目是可配置的数目,并且所述方法还包括在接收到标识出特定数目的输入后,将所述可配置的数目更新为所述特定数目。
4.如权利要求1所述的方法,其中,人类制造了至少一个有界区域与所述带注释数字图像集合的至少一个带注释数字图像之间的关联。
5.如权利要求1所述的方法,还包括在判定所述带注释数字图像集合的特定带注释数字图像在外观上与所述带注释数字图像集合的其他带注释数字图像不相似时,从所述带注释数字图像集合中去除所述特定带注释数字图像。
6.如权利要求1所述的方法,其中,所述请求是从请求者发送的,并且所述带注释数字图像集合的每个带注释数字图像是由不同于所述请求者的人注释的。
7.如权利要求1所述的方法,其中,所述响应通过把所述预定数目的响应数字图像的每个响应数字图像包括在所述响应中来标识出所述预定数目的响应数字图像。
8.如权利要求1所述的方法,其中,对于所述带注释数字图像集合的所述每个带注释数字图像从所述数字图像的集合中选择候选数字图像集合的步骤还包括按感知到的对所述请求的响应度的顺序来对所述每个候选图像集合排名。
9.如权利要求1所述的方法,其中,所述响应按感知到的对所述请求的响应度的顺序来标识出所述预定数目的响应数字图像的每个响应数字图像的排名。
10.如权利要求1所述的方法,其中,所述请求是从请求者发送的,并且所述方法还包括向所述请求者发送所述响应。
11.如权利要求1所述的方法,其中,形成包括在所述特定候选数字图像集合中的基础的视觉特性包括在所述特定候选数字图像集合的每个成员的视觉外观上标识的有界区域与所述特定带注释数字图像之间的外观上的相似性。
12.—种承载一个或多个指令序列的机器可读介质,所述指令序列在被运行时使得接收对数字图像的请求,其中所述请求标识出一个或多个关键字;选择带注释数字图像集合,其中所述带注释数字图像集合的每个成员具有与之相关联的有界区域,每个有界区域被赋予了与所述一个或多个关键字中的至少一个相关联的注释,并且每个有界区域标识出与所述有界区域相关联的带注释数字图像的外观的一部分;对于所述带注释数字图像集合的每个带注释数字图像,从数字图像的集合中选择候选数字图像集合,其中特定候选数字图像集合中的数字图像是基于所述特定候选数字图像集合的成员和所述带注释数字图像集合的与所述特定候选数字图像集合相关联的特定带注释数字图像所共有的视觉特性而被选择来包括在所述特定候选数字图像集合中的;把针对所述带注释数字图像集合的所述每个带注释数字图像的候选数字图像集合聚集到单个数字图像集合中;以及生成对所述请求的响应,其中所述响应标识出预定数目的响应数字图像,其中所述响应数字图像是所述单个数字图像集合中对所述请求的响应度最高的数字图像。
13.如权利要求12所述的机器可读介质,其中,在所述选择所述带注释数字图像集合的步骤中要选择的带注释数字图像的数目是在接收所述请求之前确定的。
14.如权利要求12所述的机器可读介质,其中,在所述选择所述带注释数字图像集合的步骤中要选择的带注释数字图像的数目是可配置的数目,并且对所述一个或多个指令序列的运行还使得在接收到标识出特定数目的输入后,将所述可配置的数目更新为所述特定数目。
15.如权利要求12所述的机器可读介质,其中,人类制造了至少一个有界区域与所述带注释数字图像集合的至少一个带注释数字图像之间的关联。
16.如权利要求12所述的机器可读介质,其中,对所述一个或多个指令序列的运行还使得在判定所述带注释数字图像集合的特定带注释数字图像在外观上与所述带注释数字图像集合的其他带注释数字图像不相似时,从所述带注释数字图像集合中去除所述特定带注释数字图像。
17.如权利要求12所述的机器可读介质,其中,所述请求是从请求者发送的,并且所述带注释数字图像集合的每个带注释数字图像是由不同于所述请求者的人注释的。
18.如权利要求12所述的机器可读介质,其中,所述响应通过把所述预定数目的响应数字图像的每个响应数字图像包括在所述响应中来标识出所述预定数目的响应数字图像。
19.如权利要求12所述的机器可读介质,其中,对于所述带注释数字图像集合的所述每个带注释数字图像从所述数字图像的集合中选择候选数字图像集合的步骤还包括按感知到的对所述请求的响应度的顺序来对所述每个候选图像集合排名。
20.如权利要求12所述的机器可读介质,其中,所述响应按感知到的对所述请求的响应度的顺序来标识出所述预定数目的响应数字图像的每个响应数字图像的排名。
21.如权利要求12所述的机器可读介质,其中,所述请求是从请求者发送的,并且对所述一个或多个指令序列的运行还使得向所述请求者发送所述响应。
22.如权利要求12所述的机器可读介质,其中,形成包括在所述特定候选数字图像集合中的基础的视觉特性包括在所述特定候选数字图像集合的每个成员的视觉外观上标识的有界区域与所述特定带注释数字图像之间的外观上的相似性。
全文摘要
提供了用于响应对数字图像的基于文本的查询的方案。接收标识出一个或多个关键字的请求。选择若干个带注释数字图像。每个所选的带注释数字图像在其外观上具有有界区域,该有界区域具有与这些关键字中的至少一个相关联的注释。对于每个带注释数字图像选择一候选数字图像集合。针对特定带注释数字图像的候选图像集合是一数字图像集合中的具有与该特定带注释数字图像最相似的外观的数字图像。这些候选图像集合被聚集成单个数字图像集合。生成标识出该单个数字图像集合中对该一个或多个关键字的响应度最高的数字图像的响应。
文档编号G06T11/60GK102197394SQ200980142495
公开日2011年9月21日 申请日期2009年10月20日 优先权日2008年10月24日
发明者西莫那·奥利瓦尔斯, 兹沃尔 鲁洛夫·范 申请人:雅虎公司

最新回复(0)