基于姿势的视觉搜索的制作方法

xiaoxiao2020-7-22  11

基于姿势的视觉搜索的制作方法
【专利摘要】用户可对显示于图像中的一对象进行图像搜索。该用户可使用移动设备来显示图像。响应于显示该图像,客户机设备可将该图像发送给视觉搜索系统用于图像分割。在从视觉搜索系统接收到经分割的图像之后,客户机设备可向用户显示经分割的图像,用户可选择包括感兴趣对象的一个或多个片断来实例化搜索。视觉搜索系统可基于一个或多个所选片段来表述搜索查询并且使用该搜索查询来执行搜索。视觉搜索系统随后可将搜索结果返回给客户机设备以供向用户显示。
【专利说明】基于姿势的视觉搜索
[0001]背景
[0002]移动设备(例如,移动电话)不仅成为用于通信的日常必需品,而且广泛作为便携式多媒体设备,用于捕获和呈现数码照片,播放音乐及电影,玩游戏等。随着移动设备技术的到来,移动设备厂商已经为各种移动平台,诸如WindowsMobile ?、Android R和iOS⑧开发了许多移动应用。某些移动应用已被从对应的台式应用程序改编而来。从台式对应产品改编的移动应用的一个示例应用是搜索应用。用户可能想要执行与图像有关的搜索。该用户可随后将一个或多个关键字键入到他/她的移动设备的搜索应用并基于上述关键字执行基于文本的搜索。然而,由于移动设备较小的屏幕尺寸以及较小的键盘,用户可能发现难以使用他/她的移动设备来执行基于文本的搜索。
[0003]一些移动设备厂商通过允许用户使用语音识别来执行基于语音的搜索改进了移动设备中搜索应用的可用性。用户可以向搜索应用提供语音输入,该搜索应用可将语音输入翻译成一个或多个文本关键字。搜索应用随后可基于经翻译的关键字来执行搜索。尽管基于语音的搜索提供了基于文本的搜索的替换方案,但该基于语音的搜索离完美还距离甚远。例如,为了准确地识别语音输入,基于语音的搜索通常要求安静的背景,而这一要求对于在噪杂环境中行进的移动用户而言可能是不实际的。
[0004]而且,用户可能希望搜索以查找图像中的对象或者用户所处的位置中的对象。然而,如果用户不知道该对象是什么,则该用户可能向搜索应用提供不准确的或无意义的描述,而这可能导致检索到不相关的信息。
[0005]概述
[0006]本概述介绍了在以下详细描述中进一步描述的基于姿势的视觉搜索的简化概念。本概述并不旨在标识所要求保护的主题的必要特征,也不旨在用于确定所要求保护的主题的范围。
[0007]本申请描述了基于姿势的视觉搜索的示例实施例。在一个实施例中,图像可以与或者不与该图像相关联的上下文信息一起从客户机处被接收。与该图像相关联的上下文信息的示例包括但不限于:该图像中感兴趣对象的类型信息(例如脸部、建筑、车辆、文本等等),以及与该图像相关联的位置信息(例如,捕捉该图像所在的物理位置信息、诸如可供查看或下载该图像的web地址的虚拟位置信息等)。
[0008]响应于接收到上述图像,可将图像分割成多个片段。在一个实施例中,可基于与图像相关联的上下文信息将图像分割成多个片段。在分割了图像后,可将图像的部分或者全部返回给客户机来选择这些片段中的一个或多个。在一个实施例中,所选择的图像片段可包括客户机的用户感兴趣的对象。另外地或可选地,图像的一个或多个所选片段可包括与图像相关联的文本。可基于所选的片段来表述搜索查询。在某些实施例中,上述查询也可基于所接收的与图像相关联的上下文信息。在某些实施例中,可将查询呈现给客户机设备的用户以供确认上述搜索查询。可使用搜索查询来执行搜索,以获得一个或多个搜索结果,该一个或多个搜索结果可被返回给客户机。
[0009]附图简述[0010]参考附图阐述详细描述。在附图中,附图标记中最左边的数字标识该附图标记首次出现的附图。在不同附图中使用相同的附图标记指示相似或相同的项。
[0011]图1示出包含示例性的基于姿势的视觉搜索系统的示例环境。
[0012]图2更详细地示出了图1的示例性的基于姿势的视觉搜索系统。
[0013]图3A和图3B示出用于索引图像数据库中的图像的示例索引结构。
[0014]图4示出执行基于姿势的视觉搜索的示例方法。
[0015]详细描述
[0016]概览
[0017]如上所述,用户会发现难以使用已有的移动搜索技术在他/她的移动设备上执行搜索。例如,用户可能想要找到关于图像或图像中对象的更多信息。用户可通过将一个或多个文本关键字键入到他/她的移动设备(例如移动电话)中提供的搜索程序的文本框内来执行搜索以查找上述图像或对象。然而,在移动设备的较小的屏幕尺寸和/或较小的键盘(若可用的话)的情况下,用户会发现难以输入关键字。这种情况在一个或多个文本关键字很长和/或很复杂时变得更糟。
[0018]作为替代,用户可通过语音输入和语音识别(若可用的话)输入一个或多个关键字。但是,基于语音的搜索通常要求安静的背景,如果用户目前位于嘈杂环境,例如车辆或者公共场所,这种搜索可变得不可行。
[0019]更糟的是,如果用户不知道图像中的对象是什么,用户可能不知道如何描述这一对象或者图像来执行基于文本的搜索或者基于语音的搜索。例如,用户可能注意到含有某电影演员的图像并且想找到关于该电影演员的信息。然而,该用户可能不知道或者没记起他的名字,并由于他/她缺乏该演员的名称的知识而被迫放弃搜索。
[0020]作为另一替换,用户可通过将图像作为搜索查询来使用来执行图像搜索。具体地说,用户可将图像提供给搜索应用或搜索引擎,搜索应用或搜索引擎基于所提供图像的视觉特征而检索到多个数据库图像。尽管这样的图像搜索可以省去提供上述图像的文本描述的要求,但是这种方法在上述图像不是移动设备中的经存储图像(例如在web浏览器的网页中示出的图像)的情况下变得麻烦。使用已有图像搜索技术,用户会首先需要手动从网页上下载图像,并随后将该图象手动上传到搜索应用或图像搜索引擎。此外,如果用户只对获取与图像中示出的某对象有关的信息感兴趣,则该图像中除了该对象本身外的可视细节成为图像搜索的噪声,并可导致检索到与搜索不相关的图像。
[0021]本公开描述了基于姿势的视觉搜索系统,其通过接收感兴趣图像的某片段而例示了与该图像中示出的感兴趣对象有关的搜索查询。
[0022]一般地,客户机设备可例如从用户获得图像。此图像可包括但不限于,选自照片应用的图像、由用户使用客户机设备的相机捕捉的图像或照片、客户机设备上播放的视频的图像帧、在诸如显示包含图像的网页的web浏览器之类的应用中显示的图像、或者来自储存于客户机设备或者可由客户机设备访问的媒体的图像(例如网页、视频、图像、电子书、文档、幻灯片演示等等)。
[0023]在获得图像后,客户机设备可将图像或图像的位置信息发送给基于姿势的视觉搜索系统来进行图像分割。图像的位置信息可包括但不限于,可找到图像的web链接。在一个实施例中,客户机设备可自动地将图像或图像的位置信息发送给基于姿势的视觉搜索系统。在另一实施例中,客户机设备可基于请求将图像或图像的位置信息发送给基于姿势的视觉搜索系统。例如,响应于接收到来自用户的图像分割请求(例如点击客户机设备的指定按钮或点击显示在客户机设备上的指定图标),客户机设备可将图像或图像的位置信息发送给基于姿势的视觉搜索系统。
[0024]在某些实施例中,在将图像或图像的位置信息发送给基于姿势的视觉搜索系统来进行图像分割之前,客户机设备可以将该图像显示给用户。另外地或可选地,客户机设备可只在将该图像分割成多个片段后才将该图像显示给用户。
[0025]另外,客户机设备还可将与图像相关联的上下文信息发送给基于姿势的视觉搜索系统。在一个实施例中,与图像相关联的上下文信息可包括但不限于:由客户机设备的传感器(诸如,全球定位系统(即GPS)、时钟系统、加速度计、和数字罗盘)捕捉的数据及用户指定的和/或基于服务的数据,包括例如天气数据、日程安排数据和交通数据。在诸如GPS数据等关于用户的个人信息被收集的情况下,用户可被提示并被给予选择不分享诸如个人可标识的信息之类的信息或者从客户机设备发送该信息的机会。
[0026]另外地或可选地,与图像相关联的上下文信息还可包括该图像中示出的感兴趣对象的信息。作为举例而非限制,感兴趣对象的信息可包括但不限于,图像中对象的类型信息(例如脸部、人物、建筑、车辆、文本等等)。在一个实施例中,用户可将感兴趣对象的这一信息提供给客户机设备。另外地或可选地,客户机设备可确定感兴趣对象的信息,而没有人类干预。作为举例而非限制,客户机设备可基于与显示图像或和该图像一起显示的内容的应用相关联的上下文信息来确定感兴趣对象的信息。举例来说,该应用可以是显示网页的web浏览器。网页可包括描写某电影演员的文章并可包含图像。响应于检测到图像,客户机设备可基于web浏览器的网页中示出的文章内容而确定感兴趣对象描绘了这名电影演员,并且并且感兴趣对象的类型信息对应于人物。
[0027]响应于从客户机设备接收到图像,基于姿势的视觉搜索系统可将图像分割成多个片段。在图像的位置信息而非该图像本身从客户机设备处被接收到的情况下,基于姿势的视觉搜索系统可基于该位置信息来获得该图像。作为举例而非限制,基于姿势的视觉搜索系统可以在由图像的位置信息指定的位置处下载此图像。
[0028]在一个实施例中,基于姿势的视觉搜索系统可根据基于J-measure的分割方法(即JSEG分割方法)来分割图像。举例来说,JSEG分割方法会首先将接收到的图像的各颜色量化成可表示该接收到的图像的不同空间区域的多个组,并根据这些组来对各个图像像素进行分类。因此,JSEG分割方法可计算其像素值是从本地窗口计算的推荐灰度图像,并将该推荐灰度图像命名为J-1mage。JSEG分割方法随后可根据多尺度区域生长法来分割J-1mage。
[0029]另外地或可选地,基于姿势的视觉搜索系统可基于与图像相关联的上下文信息来分割图像。作为举例而非限制,基于姿势的视觉搜索系统可接收与图像相关联的上下文信息(例如,该图像中示出的感兴趣对象的类型信息)。基于姿势的视觉搜索系统随后可通过以下方式来分割图像:检测该图像中被确定为与类型信息中指示的类型具有相同类型的一个或多个对象并对该一个或多个对象进行分割。举例来说,此类型信息可指示感兴趣对象是脸部(即对象类型是脸部类型)。基于姿势的视觉搜索系统可以对特定于接收到的类型信息中指示的类型的视觉特征(例如,脸部的面部特征等)应用对象检测和/或识别,并将检测到和/或识别到的对象与该图像中的其他对象和/或背景中分割开。
[0030]在将图像分割成多个片段后,基于姿势的视觉搜索系统会将经分割的图像(即在各原始位置的所有片段)返回给客户机设备。可选地,为节省客户机设备和基于姿势的视觉搜索系统之间的网络带宽,基于姿势的视觉搜索系统可将经分割图像的部分返回给客户机设备。例如,基于姿势的视觉搜索系统可将包括或基本上包括感兴趣对象但不包括背景的那些片段返回给客户机设备。另外地或可选地,基于姿势的视觉搜索系统可以以低于接收到图像的原始分辨率的分辨率返回经分割图像(的所有或部分)。
[0031]响应于接收经分割图像的全部或部分,客户机设备随后可在原始图像的相应位置显示经分割图像的全部或部分。在一个实施例中,上述图像分割过程对用户来说可以是透明的。在另一实施例中,客户机设备可通知用户该图像被成功地分割为多个片段。
[0032]在任一情况下,可允许用户基于输入姿势来从图像的上述多个片段中选择一个或多个片段。作为举例而非限制,用户可通过敲击上述一个或多个片段(例如,敲击客户机设备的触摸屏上上述一个或多个片段的位置处)来选择一个或多个片段。另外地或可选地,用户可通过例如在客户机设备的触摸屏上画出一形状(例如,矩形、圆形、或任何自由形状),以框住或基本上框住上述一个或多个片段,来选择上述一个或多个片段。另外地或可选地,用户可选择通过使用例如拇指旋轮(thumb wheel)滚过经分割图像的接收到片段,来选择上述一个或多个片段。另外地或可选地,用户可通过使用定点设备(诸如,触摸笔或鼠标等)来选择上述一个或多个片段。
[0033]响应于接收来自用户的对一个或多个片段的选择,客户机设备可向用户提供对他/她的选择的确认。在一个实施例中,客户机设备可通过显示将一个或多个所选片段框住或包围的形状(例如矩形、圆形或自由形状等)来突出显示这一个或多个所选片段。另外地或可选地,客户机设备可显示分别框住或包围一个或多个所选片段的一个或多个单独的边框形状。
[0034]另外地或可选地,响应于从用户接收到对一个或多个片段的选择,客户机设备可向基于姿势的视觉搜索系统发送一个或多个所选片段的信息,以基于一个或多个所选片段来表述图像搜索查询。在一个实施例中,客户机设备可将实际的一个或多个所选片段发送给基于姿势的视觉搜索系统。在另一实施例中,客户机设备可将一个或多个所选片段相对于图像中的某位置(例如图像左上角)的坐标发送给基于姿势的视觉搜索系统。在一个实施例中,一个或多个所选片段可包括用户感兴趣的对象。另外地或可选地,一个或多个所选片段可包括待识别的文本。
[0035]在从客户机设备接收到一个或多个所选片段后,基于姿势的视觉搜索系统可基于一个或多个所选片段来表述搜索查询。在一个实施例中,基于姿势的视觉搜索系统可从一个或多个所选片段中提取视觉特征。基于姿势的视觉搜索系统可应用任何常规特征提取方法来从一个或多个所选片段中提取特征。作为举例而非限制,基于姿势的视觉搜索系统可应用类属特征检测/提取方法,例如边检测、角检测、污点检测、脊检测、和/或尺度不变特征变换(SIFT)。另外地或可选地,基于姿势的视觉搜索系统可应用诸如阈值设定、污点提取、模板匹配、和/或Hough变换等基于形状的检测/提取方法。另外地或可选地,基于姿势的视觉搜索系统可应用任何其他特征提取方法,包括例如,注意力导向色彩签名、彩色指纹、多层旋转不变EOH (即,边取向直方图)、梯度直方图、多贝西(Daubechies)小波、脸部特征和/或黑白。
[0036]在一个实施例中,基于姿势的视觉搜索系统不是应用类属或非指定特征提取方法,而是可应用专用于检测和/或提取一个或多个所选片段中示出的感兴趣对象的视觉特征的一个或多个特征提取方法。具体地说,基于姿势的视觉搜索系统可基于接收到的上下文信息(例如类型信息)来确定哪种特征提取方法要与哪种类型的特征一起使用。
[0037]作为举例而非限制,如果接收到图像中显示的感兴趣对象的类型信息,并且该类型信息指示感兴趣对象具有特定类型(例如脸部类型),则基于姿势的视觉搜索系统可应用专用于检测和/或提取那种特定类型的特征(例如脸部特征)的特征提取方法,以检测或识别一个或多个所选片段中的感兴趣对象(例如脸部)。例如,如果类型信息指示感兴趣对象是建筑物,则基于姿势的视觉搜索系统可应用具有专用于检测和/或提取一个或多个所选片段中的建筑物的边和/或形状的特征的特征提取方法。
[0038]在从图像的一个或多个所选片段中提取了视觉特征后,基于姿势的视觉搜索系统可将提取的视觉特征与特征码本比较,以获得用于表示一个或多个所选片段的一个或多个视觉字。特征码本有时被称为视觉字码本,其可例如通过将训练图像的视觉特征聚类成多个群集来产生。码本的每一群集或视觉字可例如由该特定群集的平均或代表性特征来定义。
[0039]可选地,基于姿势的视觉搜索系统可将一个或多个所选片段的所提取视觉特征与视觉词汇树进行比较。视觉词汇树可通过将分层k-mean聚类应用到多个训练图像的视觉特征来构造。随后可基于此聚类的结果来获得视觉词汇树的视觉字。
[0040]响应于获得一个或多个所选片段的一个或多个视觉字,基于姿势的视觉搜索系统可基于这一个或多个视觉字来表述搜索查询。在一个实施例中,基于姿势的视觉搜索系统可基于一个或多个所选片段的一个或多个视觉字而从数据库中检索到多个图像。另外,基于姿势的视觉搜索系统还可从数据库获得与一个或多个所选片段有关的web链接和文本信息。
[0041]另外地或可选地,基于姿势的视觉搜索系统可检测一个或多个所选片段中的文本,并对一个或多个所选片段执行对象字符识别(例如路标、标签等)。在识别出一个或多个所选片段中的文本后,对于这一个或多个所选片段,基于姿势的视觉搜索系统可执行基于文本的搜索,并检索到一个或多个图像、web链接和/或文本信息等。
[0042]另外,基于姿势的视觉搜索系统可进一步检查多个检索到的图像,并获得与多个检索到的图像相关联的附加信息。作为举例而非限制,获得与多个检索到的图像相关联的附加信息可包括多个检索到的图像的文本描述,多个检索到的图像的位置信息和/或多个检索到的图像的时戳等。基于姿势的视觉搜索系统还可使用多个检索到的图像的这些附加信息而从数据库或从基于文本的搜索引擎检索到附加的图像。
[0043]在检索到针对一个或多个所选片段的搜索结果(例如多个检索到的图像、web链接等),基于姿势的视觉搜索系统可将这些搜索结果返回给客户机设备,该客户机设备可随后将这些搜索结果显示给用户。用户可点击这些搜索结果中的任一个以获得详细信息。另外地或可选地,用户可通过敲击搜索结果中的图像(或者在已经对图像执行了自动图像分割的情况下为图像片段)或文本,来执行另一搜索(例如图像搜索或文本搜索)。
[0044]所描述的系统允许用户实施搜索(例如图像搜索或文本搜索),而无需手动地将图像下载或上传到搜索程序或搜索引擎。所描述的系统还允许用户基于图像的一部分(例如图像中示出的对象)来实施图像搜索,而无需用户他或她自己手动地从图像中分割出所需部分。因此,这增加了移动设备的搜索应用的可用性,并减轻了向移动设备提供文本关键字的烦琐步骤,由此提高了用户对移动设备的搜索体验。
[0045]尽管在此处描述的示例中,由基于姿势的视觉搜索系统来分割图像、从图像中提取特征、基于所提取的特征来表述搜索查询、并基于搜索查询来执行搜索,但在其他实施例中,这些功能可由多个独立的系统或服务来执行。例如,在一个实施例中,分割服务可分割图像,而分开的服务可提取特征且表述搜索查询,且又一服务(例如常规搜索引擎)可基于搜索查询来执行搜索。
[0046]本申请描述了多个变化的实现和实施例。接下来的章节描述了适用于实施各种实现的示例环境。接下来,本申请描述了用于实现基于姿势的视觉搜索系统的示例系统、设备和流程。
[0047]示例性体系结构 [0048]图1示出了可用于实现基于姿势的视觉搜索系统的示例性环境100。环境100包括一个或多个用户102-1,102-2,...102-N (其被统称为102)、网络104、以及基于姿势的视觉搜索系统106。用户102可使用一个或多个客户机设备108-1,108-2,…,108-M (其被统称为108)通过网络104与基于姿势的视觉搜索系统106通信。
[0049]客户机设备108可以被实现为各种常规计算设备中的任一种,包括例如,个人计算机、笔记本或便携式计算机、手持式设备、上网本、因特网设备、便携式阅读设备、电子书阅读器设备、图形输入板或平板计算机、电视机、机顶盒、游戏控制台、移动设备(例如,移动电话、个人数字助理、智能电话等)、媒体播放器等、或其组合。
[0050]网络104可以是无线或有线网络,或其组合。网络104可以是各单独网络的集合,这些网络彼此互连并用作单个大型网络(例如,因特网或内联网)。这样的单独网络的示例包括,但不仅限于,个人局域网(PAN)、局域网(LAN)、广域网(WAN),以及城域网(MAN)。此外,各单独的网络也可以是无线或有线网络,或其组合。
[0051]在一个实施例中,客户机设备108包括耦合到存储器112的处理器110。存储器112包括一个或多个应用114 (例如,搜索应用、取景应用、媒体播放应用、相册用于、web浏览器等)以及其他程序数据116。存储器112可耦合到其他设备或与其他设备相关联,和/或可由诸如网络服务器、路由器、和/或其他客户机设备108等其他设备访问。
[0052]用户102可使用客户机设备108的应用114来查看图像。响应于检测到图像,客户机设备108或应用114之一可将图像发送给基于姿势的视觉搜索系统106进行图像分割。基于姿势的视觉搜索系统106可将图像分割成多个片段,并将这些片段中的一些或全部返回给客户机设备108。例如,基于姿势的视觉搜索系统106可只返回包括或基本上包括用户102感兴趣的对象的片段,而不返回用户102不感兴趣的背景和其他对象。
[0053]响应于从基于姿势的视觉搜索系统106收到所分割的图像(即,这些片段中的一些或全部),用户102可从接收到的片段中选择一个或多个片段。客户机设备108可随后将一个或多个所选片段发送给基于姿势的视觉搜索系统106来实例化搜索。基于姿势的视觉搜索系统106可基于一个或多个所选片段来表述搜索查询,并使用此搜索查询而检索到搜索结果。在一个实施例中,基于姿势的视觉搜索系统106可以从基于姿势的视觉搜索系统106中包括的数据库(图未示)处检索到搜索结果。另外地或可选地,基于姿势的视觉搜索系统106可从基于姿势的视觉搜索系统106外部的搜索引擎118处检索到搜索结果。基于姿势的视觉搜索系统106可随后将这些搜索结果返回给客户机设备108以用于向用户102显不O
[0054]尽管基于姿势的视觉搜索系统106和客户机设备108被描述为分开的系统,但本公开并不限制于此。举例来说,基于姿势的视觉搜索系统106的部分或全部可例如作为安装在客户机设备108中的软件和/或硬件而被包括在客户机设备108中。在某些实施例中,基于姿势的视觉搜索系统106的一个或多个功能(例如图像分割功能、特征提取功能、查询表述功能等)可被集成在客户机设备108中。
[0055]图2更详细地示出了基于姿势的视觉搜索系统106。在一个实施例中,系统106可包括但不限于,一个或多个处理器202、网络接口 204、存储器206,以及输入/输出接口208。处理器202被配置为执行从网络接口 204接收的指令、从输入/输出接口 208接收的指令,以及储存在存储器206中的指令。
[0056]存储器206可包括诸如随机存取存储器(RAM)等易失性存储器形式的和/或诸如只读存储器(ROM)或闪速RAM等非易失性存储器形式的计算机可读存储介质。存储器206是计算机可读存储介质的示例。计算机可读介质包括至少两种类型的计算机可读介质,即计算机存储介质和通信介质。
[0057]计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据之类的信息的任何方法或技术来实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括但不限于,相变存储器(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPR0M)、闪存或其他存储器技术、光盘只读存储器(CD-ROM)、数字多功能盘(DVD)或其它光存储、磁带盒、磁带、磁盘存储或其它磁存储设备、或可用于存储信息以供计算设备访问的任何其他非传输介质。
[0058]相反,通信介质可以用诸如载波或其他传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其他数据。如本文所限定的,计算机存储介质不包括通信介质。
[0059]存储器206可包括程序模块210和程序数据212。在一个实施例中,基于姿势的视觉搜索系统106可包括输入模块214。输入模块214可从客户机设备108接收图像或图像的位置信息(例如可找到或下载到图像的链接)。另外,输入模块214还可从客户机设备108接收与图像相关联的上下文信息。与图像相关联的上下文信息可包括但不限于,由客户机设备的传感器(诸如,全球定位系统(即GPS),时钟系统,加速度计、和数字罗盘)捕捉的数据,而用户指定的和/或基于服务的数据例如包括天气、日程安排和/或交通数据。另外地或可选地,与图像相关联的上下文信息还可包括图像中示出的感兴趣对象的信息。作为示例而非限制,感兴趣对象的信息可包括但不限于,对象的类型信息(例如脸部、人物、建筑、车辆、文本等等)。
[0060]在一个实施例中,基于姿势的视觉搜索系统106还可包括分割模块216。在接收到图像(以及可能地与图像相关联的上下文信息)后,输入模块214可将该图像(以及与该图像相关联的上下文信息,如果被接收到的话)发送给分割模块216。分割模块216将该图像分割成多个片段。在一个实施例中,分割模块216可应用任何常规分割方法来分割图像。作为举例而非限制,分割模块216可基于JSEG分割方法来分割图像。JSEG分割方法的附加细节可参见1999年的IEEE CVPR论文集第2446页的“Color Image Segmentation (彩色图像分割)”。
[0061]另外地或可选地,分割模块216可基于一个或多个准则来将图像分割成预定数目的片段。上述一个或多个准则的示例包括但不限于,图像的文件大小、图像的分辨率等。
[0062]另外地或可选地,图像分割模块216可基于与图像相关联的上下文信息来分割图像。作为举例而非限制,基于姿势的视觉搜索系统106可接收与图像相关联的上下文信息(例如图像中示出的感兴趣对象的类型信息)。分割模块216可随后通过以下方式来分割图像:检测图像中与类型信息中指示的类型具有相同类型的一个或多个对象,并分割这一个或多个对象。举例来说,此类型信息可指示感兴趣对象是脸部,或对象类型是脸部类型。分割模块216可以针对在接收到的类型信息中指示的类型的视觉特征(例如,脸部的面部特征)来应用对象检测和/或识别,并可将检测到和/或识别出的对象与该图像中的其他对象和/或图像分割开。
[0063]响应于将图像分割成多个片段,基于姿势的视觉搜索系统106可通过输出模块218经分割图像的一部分或全部(B卩,多个片段中的某些或全部)返回给客户机设备108。
[0064]在将经分割图像的一部分或全部发送给客户机设备108之后,输入模块214可从客户机设备108接收用户102所选择的一个或多个片段的信息以实例化搜索。在一个实施例中,一个或多个所选片段的信息可包括用户102所选择的实际的一个或多个片段。在另一实施例中,一个或多个所选片段的信息可包括一个或多个所选片段相对于图像中某位置(例如图像左上角)的坐标。在任一情况下,一个或多个所选片段可包括用户102感兴趣的对象。另外地或可选地,一个或多个所选片段可包括待识别的文本。
[0065]响应于从客户机设备108接收到一个或多个所选片段的信息,基于姿势的视觉搜索系统106可包括特征提取模块220以从一个或多个所选片段提取视觉特征。在一个实施例中,特征提取模块220可应用任何常规特征提取方法来从一个或多个所选片段中提取视觉特征。作为示例而非限制,特征提取模块220可应用类属特征检测/提取方法,例如边检测、角检测、污点检测、脊检测、和/或尺度不变特征变换(SIFT)。另外地或可选地,特征提取模块220可应用诸如阈值设定、污点提取、模板匹配、和/或Hough变换等基于形状的检测/提取方法。另外地或可选地,特征提取模块220可应用任何其他特征提取方法,包括例如,注意力导向色彩签名、彩色指纹、多层旋转不变Ε0Η、梯度直方图、多贝西小波、脸部特征和/或黑白。
[0066]在一个实施例中,特征提取模块220不是应用类属或非指定特征提取方法,而是可应用专用于检测和/或提取一个或多个所选片段中示出的感兴趣对象的视觉特征的一个或多个特征提取方法。具体地说,特征提取模块220可基于所接收的上下文信息(例如类型信息),来确定哪种特征提取方法要与哪种类型的特征一起使用。
[0067]作为示例而非限制,如果图像中示出的感兴趣对象的类型信息被接收,并且指示该感兴趣对象具有特定类型(例如脸部类型),则特征提取模块220可应用专用于检测和/或提取那个特定类型的特征(例如脸部特征)的特征提取方法,以检测或识别一个或多个所选片段中的感兴趣对象(例如脸部)。例如,如果类型信息指示,感兴趣对象是建筑物,则特征提取模块220可应用具有专用于检测和/或提取一个或多个所选片段中的建筑物的边和/或形状的特征的特征提取方法。
[0068]在从一个或多个所选片段提取出视觉特征后,基于姿势的视觉搜索系统106可包括用于表述搜索查询并基于此搜索查询执行搜索的搜索模块222。在一个实施例中,搜索模块222可将所提取的视觉特征与特征码本224进行比较以获得用于表示一个或多个所选片段的一个或多个视觉字。特征码本224有时被称为视觉字码本,其可例如通过对图像数据库226中储存的训练图像的视觉特征进行聚类来产生。特征码本224的每一群集或视觉字可例如由该特定群集的平均或代表性特征来定义。
[0069]另外地或可选地,搜索模块222可将一个或多个所选片段的所提取视觉特征与视觉词汇树228比较。视觉词汇树228可通过将分层k-mean聚类应用到图像数据库226中存储的多个训练图像的视觉特征来构造。视觉词汇树的视觉字随后可基于此聚类的结果而被获得。视觉词汇树的详细描述可参见2006年的IEEE CVPR论文集第2161-2168页的“Scalable recognition with a vocabulary tree (用词汇树的可缩放识别)”。
[0070]响应于(从特征码本224或视觉词汇树228)获得一个或多个所选片段的一个或多个视觉字,搜索模块222可基于一个或多个视觉字来表述搜索查询。在一个实施例中,搜索模块222可使用一个或多个视觉字而从图像数据库226或基于姿势的视觉搜索系统106外部的搜索引擎118处检索到多个图像。另外,搜索模块222还可从图像数据库226或搜索引擎118获得与一个或多个所选片段有关的web链接或文本信息。
[0071]另外地或可选地,一个或多个所选片段可包括文本。基于姿势的视觉搜索系统106还可包括用于识别一个或多个所选片段中的文本的对象字符识别模块230。在一个实施例中,在识别出文本之前,对象字符识别模块230可确定该文本在一个或多个所选片段中的文本方向。作为示例而非限制,对象字符识别模块230可应用PCA (B卩,主分量分析)、TILT(即,变换不变低秩纹理)或用于确定文本方向的任何其他文本对齐方法。例如,对象字符识别模块230可应用PCA来检测文本在一个或多个所选片段中的两个主分量方向。响应于检测到文本的两个主分量方向,对象字符识别模块230可旋转该文本,以水平地对齐该文本。另外地或可选地,对象字符识别模块230可应用任何其他文本对齐方法,例如TILT (S卩,变换不变低秩纹理)来确定文本在一个或多个所选片段中的方向。TILT文本对齐方法的详细描述可参见 2010 年 11 月的 Proceedings of Asian Conference on Computer Vision(计算机视觉亚洲会议论文集)中的“Transform Invariant Low-rank Textures (变换不变低秩纹理)”。
[0072]另外地或可选地,对象字符识别模块230还可通过输入模块214从客户机设备108接收文本方向的指示。输入模块214可从客户机设备108处接收此文本方向的指示以及一个或多个所选片段。
[0073]在一个实施例中,用户102可在客户机设备108的屏幕上(例如使用手指或定点设备等)绘制指示文本在一个或多个所选片段中的文本方向的线。另外地或可选地,用户102可通过提供文本方向相对于图像的垂直或水平轴的估计角度来指示文本方向的估计。另外地或可选地,在某些实施例中,用户102可通过绘制一框形(例如矩形或基本上为矩形)来框住或基本上框住该文本来指示该文本的文本方向,其中该框形的较长边指示待识别文本的文本方向。客户机设备108可随后通过基于姿势的视觉搜索系统106的输入模块来将该文本方向的用户指示发送给对象字符识别模块230。
[0074]在对象字符识别模块230识别出一个或多个所选片段中的文本后,搜索模块222可执行基于文本的搜索,并从图像数据库226或搜索引擎118中为一个或多个所选片段检索到一个或多个图像、web链接和/或文本信息等。
[0075]或者,搜索模块222还可检查多个检索到的图像,并获得与多个检索到的图像相关联的附加信息。作为示例而非限制,与多个检索到的图像相关联的附加信息可包括但不限于,多个检索到的图像的文本描述、多个检索到的图像的位置信息和多个检索到的图像的时戳等。基于姿势的视觉搜索系统还可使用这些多个检索到的图像的附加信息而从图像数据库226或从搜索引擎118检索到附加图像。
[0076]响应于接收到检索结果(例如多个数据库图像、web链接和/或文本信息),输出模块218可将搜索结果返回给客户机设备108以供显示给用户108。在一个实施例中,基于姿势的视觉搜索系统106还可从客户机108或用户102接收另一分割请求或搜索请求,并响应此请求而执行前述操作。
[0077]示例图像数据库
[0078]在一个实施例中,可索引图像数据库226中的图像。作为示例而非限制,图像索引可基于所发明的新颖的文件索引范例。可使用图像的视觉特征和上下文信息和/或元数据来构建此图像的图像索引。在一个实施例中,尺度不变特征变换(SIFT)因其尺度、旋转和光照不变特性而可被选择来表示图像的本地描述符。在构建索引之前,视觉词汇树228可通过使用分层k-means聚类来构造,而视觉词汇树228的视觉字可基于聚类的结果来创造。在构建索引的过程中,可将特定图像的单个SIFT点分类为视觉词汇树228的各视觉字(即,Vff)中一个或多个。可将图像信息与视觉词汇树的这一个或多个视觉字以及相关联的上下文信息一起记录。图3A和3B示出反向文件索引范例的示例性索引结构300。图3A示出使用视觉词汇树228的多个图像的视觉字的反向文件索引302。图3B示出与每一图像或文件相关联的上下文信息的索引结构304。尽管图3A和3B描述了示例索引结构,但本披露并不局限于此。本披露可应用任何常规索引结构来索引图像数据库226内的图像。
[0079]示例具有上下文过滤的基于姿势的视觉搜索
[0080]在一个实施例中,可将上下文过滤与得分测量方案一起使用。作为示例而非限制,示例得分测量在下面的式(I)中给出,其中查询q可被定义为由用户102使用轻击以选择机制从使用客户机设备108拍摄的图像或照片中选择的一个或多个片段。数据库图像(例如储存于数据库226的图像)可被表示为d。Qi和Cli指对于如表示式(2)中所示的查询q和数据库或索引图像d而言,术语频率和逆向文档频率(TF-1DF)值的相应组合。
【权利要求】
1.一种系统,包括: 一个或多个处理器; 存储器,通信地耦合到所述一个或多个处理器,所述存储器存储指令,当所述指令被所述一个或多个处理器执行时,配置所述一个或多个处理器执行以下动作,包括: 从客户机接收图像; 将所述图像分割成多个片段; 将经分割的图像的至少一部分发送给所述客户机; 从所述客户机接收所述多个片段中的一个或多个所选片段;以及响应于从所述客户机接收到所述一个或多个所选片段,基于所述一个或多个所选片段来表述查询。
2.如权利要求1所述的系统,其特征在于,所述动作还包括: 接收所述图像的上下文信息;和/或 从所述客户机接收所述图像中的感兴趣对象的类型信息。
3.如前述任一项权利要求所述的系统,其特征在于,表述查询包括: 识别所述一个或多个所选片段中的对象,基于所述一个或多个所选片段中的识别出的对象来表述所述查询; 从所述一个或多个所选片段中提取特征,基于被提取的特征确定来自词汇树的视觉字,以及基于所确定的视觉字来表述所述查询;和/或 识别所述一个或多个所选片段中的文本,以及基于识别出的文本来表述所述查询。
4.如前述任一项权利要求所述的系统,其特征在于,分割图像包括: 基于所述图像的颜色来分割所述图像;和/或 基于从所述客户机接收到的所述图像中的感兴趣对象的类型信息来分割所述图像,其中基于接收到的类型信息来分割所述图像包括: 识别具有根据来自所述图像的接收到的类型信息的类型的一个或多个对象; 将所述一个或多个对象与所述图像分割开来;以及 将所述一个或多个对象呈现为所述多个片段。
5.一种方法,包括: 在配置有可执行指令的一个或多个处理器的控制下: 将图像显示在客户机设备的显示器上,所述图像包括多个片段; 接收从所述多个片段中选择一个或多个片段的选择姿势; 基于所述一个或多个所选片段来实例化搜索查询。
6.如权利要求5所述的方法,其特征在于,还包括接收所述图像的上下文信息,其中实例化所述搜索查询进一步基于所述图像的上下文信息。
7.如前述任一项权利要求所述的方法,其特征在于,还包括: 将所述搜索查询发送到搜索引擎;以及 从所述搜索引擎接收搜索结果。
8.如前 述任一项权利要求所述的方法,其特征在于,还包括在显示所述图像之前: 在所述客户机设备处将所述图像分割成多个片段; 将所述图像提供给基于姿势的视觉搜索系统进行分割,以及从所述基于姿势的视觉搜索系统接收所述图像的所述多个片段;和/或 通过以下动作来获得所述图像: 通过所述客户机设备的相机来捕捉所述图像; 通过所述客户机设备的照片应用选择所述图像;或者 从存储在所述客户机设备上或者所述客户机设备可访问的介质选择所述图像。
9.如前述任一项权利要求所述的方法,其特征在于,接收所述选择姿势包括:接收对所述客户机设备的用户界面的一个或多个触摸输入,所述一个或多个触摸输入与所述一个或多个所选片段相对应,或者接收框住或基本框住所述一个或多个所选片段的框选姿势。
10.一个或多个配置有计算机可执行指令的计算机可读介质,当所述计算机可执行指令被一个或多个处理器执行时,配置所述一个或多个处理器以执行以下的动作,包括: 从客户机接收图像以及与所述图像相关联的上下文信息; 基于与所述图像相关联的上下文信息将所述图像分割成多个片段; 将经分割的图像以所述多个片段的形式返回给所述客户机; 从所述客户机接收对所述多个片段中的一个或多个片段的选择; 基于所述一个或多个所选片段以及与所述图像相关联的上下文信息来表述搜索查询; 使用所述搜索查询来执行搜索以获得搜索结果; 以及 将所述搜索结果返回给所述客户机。
【文档编号】G06T1/00GK103562911SQ201280023646
【公开日】2014年2月5日 申请日期:2012年5月16日 优先权日:2011年5月17日
【发明者】T·梅, S·李, Y-Q·徐, N·张, Z·陈, J-T·孙 申请人:微软公司

最新回复(0)