CN106462728A - 用于基于图像特征的识别的系统和方法 - Google Patents

用于基于图像特征的识别的系统和方法 Download PDF

Info

Publication number
CN106462728A
CN106462728A CN201580018985.3A CN201580018985A CN106462728A CN 106462728 A CN106462728 A CN 106462728A CN 201580018985 A CN201580018985 A CN 201580018985A CN 106462728 A CN106462728 A CN 106462728A
Authority
CN
China
Prior art keywords
image
feature
descriptor
user
fingerprint
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.)
Granted
Application number
CN201580018985.3A
Other languages
English (en)
Other versions
CN106462728B (zh
Inventor
P.霍尔施奈德
T.O.W.梅杰斯
H.普里恩
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.)
Genius Co Ltd
Original Assignee
Genius Co Ltd
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 Genius Co Ltd filed Critical Genius Co Ltd
Publication of CN106462728A publication Critical patent/CN106462728A/zh
Application granted granted Critical
Publication of CN106462728B publication Critical patent/CN106462728B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5838Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/51Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/7715Feature extraction, e.g. by transforming the feature space, e.g. multi-dimensional scaling [MDS]; Mappings, e.g. subspace methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Library & Information Science (AREA)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Collating Specific Patterns (AREA)
  • Processing Or Creating Images (AREA)
  • Image Analysis (AREA)

Abstract

在本文中描述了允许用户从视频、印刷品或他或她周围的世界捕捉单个图像快照并获得关于媒体本身或在快照中显示的感兴趣项目的附加信息的方法和系统。快照的指纹被用作查询并被传输到服务器。如本文所述的基于图像特征的识别使用特征索引来基于指纹从图像的较大数据库识别候选匹配的较小集合。使用距离度量和基本散列表设计的新型方法和系统利用概率效应,并允许不同的图像特征相比于冗余的图像特征是优选的,从而仅允许更有区别性的数据点保持常驻在索引内,以提供在识别过程中可以快速地使用的简洁索引。

Description

用于基于图像特征的识别的系统和方法
相关申请
本申请要求对2014年2月10日提交的美国临时专利申请号61/937,859的优先权,藉此将其内容整体地通过引用并入。
技术领域
本公开涉及视觉对象识别,并且更具体地涉及用于识别数字图像中的内容和对象的方法和系统以及用于与已识别内容对象有关的附加内容和/或信息的快速递送的方法和系统。本文中公开的方法和系统还可适用于搜索服务及基于内容的图像检索和识别过程。
背景技术
在现在的世界,几乎每个人都一直随身携带相机使能移动设备。移动设备用户已经渐渐习惯于能够使用移动设备来使用他们的移动设备获得关于其周围的世界的附加信息。移动设备用户现在将在购物之前使用互联网来获得附加信息、研究价格、观察产品,并且甚至购买项目或内容。用户现在想要尽可能快速且高效地进行此类访问,用尽可能最少的步骤数目。
对更多信息的期望可能由于例如观察我们周围的世界中的对象或场景、在诸如广告牌、海报或电影之类的印刷品中看到的某些东西或者被在屏幕上看到的某些东西(诸如电影、TV演出、网站或其它数字内容)触发。
存在用于促进关于项目或内容的附加信息到用户的移动设备的递送的现有技术。例如,可以将诸如一维条形码或二维QR码之类的标记以物理方式附着到产品,或者可以在印刷页、海报或广告牌上紧挨着产品的图像打印所述标记。在某些情况下,可向图像添加人工生成的图案。通过用专用扫描设备或者使用用户的移动设备上的相机功能和应用程序来扫描代码或人工生成图案,可以向用户递送更多信息。可以将附加信息直接地编码到标记中,或者可以使用被编码到标记中的信息从数据库检索附加信息。
在技术上更尖端的是没有人工标记的插入的图像识别,因为并不是每个对象都具有或者可以具有此类标记。针对这些情况,已经开发了用以使用对象识别算法和图案匹配的组合来识别图像的技术。例如,如由Paul Viola和Michael Jones在“The Rapid ObjectDetection Using a Boosted Cascade of Simple Features”中描述的Viola-Jones方法执行一连串的预定义扫描操作以便评定图像中的某个形状的存在概率,以及用以识别对象的分类算法(诸如AdaBoost)。使用“积分图像”作为随机像素访问数据结构,Viola-Jones法从较大类集选择小数目的关键视觉特征来产生分类器的子集,然后在“级联”中将逐渐更复杂的分类器组合(AdaBoost)以允许丢弃背景区域并执行有希望的类似于对象的区域上的更多计算。分类方法通常具有两个阶段,训练阶段和测试阶段,在其期间可使用训练数据来识别对象。分类方法是计算密集的,并且依赖于训练图像的谨慎预选。这些类型的对象识别方法通常在具有相同形状和特性的对象(诸如面部、交通标志、品牌徽标等)的检测中使用。
其它方法将存在于图像中的不同属性或特征用于基于图像的检测和识别。在这些系统中,从训练图像集合提取特性,并且然后系统检测在快照集合之中或者在快照与图像的训练集合之间是否存在对应特性。基于图像的检测和识别的应用跨距从全景和图像拼接、稀疏3D重构、增强现实(例如,Microsoft® PhotosynthTM、VisualSFMTM、Qualcomm®VuforiaTM)至由Google® GogglesTM和KooabaTM/VuforiaTM云识别提供的图像搜索和识别服务。这些基于图像的识别技术仅仅被用来识别对象而不提取存放在图像内的额外信息。此外,现有技术通常要求数据稠密媒体文件(诸如图像本身或视频和/或音频数据)通过网络从捕捉设备(例如,智能电话)到处理服务器的传输,这进一步延迟了对象的识别。现有方法还要求将与对象相关联的所有附加信息从服务器传输回到移动设备,因而耗费时间且在其中不存在到服务器的网络连接的情况下不可用。
存在用于从视频提取某些特征并生成用于传输到内容识别服务器以便在识别内容时使用的“指纹”的一些方法和系统。给Yu的美国专利号8,793,274例如从捕捉内容提取VDNA(视频DNA)指纹。然而,'274专利具体地涉及从视频(其捕捉图像序列)(包括从伴随的音频)提取指纹。
还存在提供用于媒体内容的自动识别的一些方法和系统的一些尝试,但是到目前为止全都不能令人满意。针对静止媒体工作的任何现有方法和系统并不容易很好地适合于用于视频。生成VDNA指纹的系统是计算密集的,并且使用难以通过网络快速地传输的大型媒体文件。此外,使用VDNA指纹的任何系统必须涉及使用中的尖峰,因为同时地通过网络的多路访问将进一步加剧带宽问题。尝试识别视频媒体和其中的对象的系统必须解决捕捉包含感兴趣项目的良好可用图像的问题。此类系统还必须虑及在用户可能感兴趣的场景被显示的时刻与用户发起捕捉的时刻之间不可避免地发生的时间延迟。
因此,需要仅要求最少量的媒体数据(诸如单个图像,而不是要求使用一系列图像以及音频数据的VDNA样式指纹生成)来检测或识别对象或内容且不要求媒体数据通过网络的传输的系统和方法。此外,还需要一种可缩放以处理来自视频帧的大量训练数据的系统,以克服通常与使用视频帧作为训练集的图像识别相关联的限制。此类限制可包括将巨量的单个图像或视频帧与典型图像识别域相比较以及从视频帧生成的训练数据集中的巨大冗余。此外,还需要加速并改善识别过程的准确度,尤其是当对视频执行图像识别时。最后,还需要滤出冗余查询以处理查询中的尖峰,以节省宝贵的网络和计算资源。
附图说明
被并入到本公开中并构成其一部分的附图图示出多个实施例并连同本描述一起用于解释所公开的原理。在所述附图中:
图1A是图示出根据本公开的实施例的用于为用户提供与所显示数字内容中的感兴趣项目有关的附加信息的示例性系统的图。
图1B图示出用于获得关于所显示数字内容中的对象或东西的更多信息的本文所述的示例性方法和系统的使用。
图1C图示出用于向用户提供关于数字媒体中的对象或东西的更多信息的本文所述的示例性方法和系统的使用。
图2A图示出从图像中的显著点生成将被组合为图像指纹的特征描述符矢量的集合的现有技术过程。
图2B是图示出用于发现与查询图像和参考图像的对应特征位置匹配的拟合变换的现有技术方法的图。
图3是图示出根据本公开的实施例的用于获得关于图像快照中的感兴趣对象的附加信息的示例性系统的框图。
图4A是图示出根据本公开的实施例的用于查询图像特征索引数据库以将现场相机视频馈送作为输入处理的示例性方法的流程图。
图4B是图示出根据本公开的实施例的用于处理查询图像特征索引数据库的结果以发现匹配图像的示例性方法的流程图。
图4C是图示出根据本公开的实施例的用于在查询图像特征索引数据库以发现匹配图像之前查询高速缓存图像集的示例性方法的流程图。
图5A-5H是图示出用于查询、组织和访问图像特征索引数据库的现有技术方法的图。
图6A-6E是图示出根据本公开的实施例的用于查询、组织和访问图像特征索引数据库的其它示例性方法的图。
图7是图示出根据本公开的实施例的用于处理图像指纹的示例性系统的框图。
图8是图示出根据本公开的实施例的用于处理图像指纹的另一示例性系统的框图。
图9是图示出可以在其上面实现本公开的实施例的示例性系统的框图。
具体实施方式
现在将详细地对实施例进行参考,其示例在附图中图示出。只要可能,遍及各图使用相同的参考标号来指代相同或类似部分。
在本文中描述了通过为用户提供关于其在数字内容或其周围世界中看到的人、地点以及东西的附加信息来为用户提供信息丰富的观看体验的方法和系统。本文所述的方法和系统相比于现有技术系统而言提供了多个优点。首先,本文中的方法和系统对单个图像帧进行操作,无论从视频、印刷品还是用户周围的世界捕捉的。本文中的方法和系统可由在被连接到基于网络的服务器的用户移动设备上操作的应用程序实施,条件是移动设备具有图像捕捉功能性,并且服务器提供图像识别服务。事实上,在本文中公开的本发明的优点中的一个是可使用用如在智能电话和平板电脑中使用的手持式消费者相机产生的照片来实现这些方法和系统。
在本文所述的方法和系统中,提取快照的“指纹”并将其用来识别附加信息。在本文中描述了用于识别并描述图像特征且生成单个图像的唯一指纹的方法和系统。另外,不需要将原始图像存储在用户的移动设备上,因为可将指纹用于与附加信息一起再显示给用户(如果期望的话)。
使用本文所述的系统和方法,通过识别与初始快照有关的媒体或内容来检索附加信息是使用指纹作为查询而执行的。如本文所述的基于图像特征的识别使用特征索引来从图像的较大数据库识别候选匹配的较小集合。特征索引的使用使得能够在大型图像集合范围内实现更快速的搜索。使用特征编索引的现有解决方案在具有带有大量相似性的图像特征的巨大集合(亿万个)的情形(如通常在从视频材料提取的单个帧的集合中看到的)中失败。替代地,本文所述的方法和系统使用距离度量和利用概率效应的基本散列表设计来克服现有技术存在的问题。本文所述的方法和系统在一些冗余的图像特征内自动地挑选出不同的图像特征,仅允许更加不同的数据点保持常驻于索引内,提供可以在识别过程中快速地使用的简洁索引。相反地,传统近似最近邻(ANN)法在未过滤的情况下存储所有数据点,这大大地劣化其匹配性能。
本文所述的方法和系统提供了用于在保持图像分辨率和独特性的同时处理大量图像数据的手段。本文所述的方法和系统还将处理由于高使用时段而引起的请求业务中的尖峰。
此外,在本文所述的某些实施例中,可在不在移动设备上执行全尺寸图像识别的情况下识别附加信息。本文所述的方法和系统引入了独立可复制层的使用,该独立可复制层在网络通信层与服务器上的搜索系统之间操作以拦截和处理请求中的许多。通过选择性地高速缓存并识别移动设备处的相似或等价请求,较少的请求需要被转送到服务器。
本文所述的多个发明可单独地或以与彼此的各种组合来实现。下面将更详细地描述各种发明中的每一个。
图1A是在高层级示出了使用本文所述发明中的某些或全部的用于通过视觉媒体103将内容提供方101连接到用户102的系统100的图。内容提供方101可以是例如制作人、传播者、登广告者、媒体内容所有人以及具有产品或内容的其它实体。视觉媒体103可以是例如电视广播、电影、印刷品或广告牌。可以经由分发网络104将视觉媒体递送到视频媒体广播平台105或印刷媒体106。
在图1A中所述的系统中,用户102具有移动设备,诸如平板电脑121或智能电话122。移动电话在某些实施例中还可以是具有处理器、存储器以及无线通信能力的相机。在某些实施例中,移动设备包括加速度计、陀螺仪或用于检测移动设备的取向的其它设备。在本文所述的实施例中,移动设备是互联网使能的。下面将参考图3、8和9来更详细地描述移动设备的实施例。
在某些实施例中,用户102可以直接地消费如在平台105和106上显示或广播的内容123。还可直接地在用户的移动设备中显示内容123。
在第一步骤中,用户识别他或她想要关于其学习更多信息的某些兴趣。感兴趣的东西可以是例如在内容123或124中显示的项目,诸如产品、道具、衣服或其它对象。感兴趣东西还可以是场景本身的位置或者在场景中描绘的主题。在某些实施例中,感兴趣东西是特定内容本身,例如正在显示的电影、视频或程序。
使用用户的移动设备上的最终用户应用程序和相机功能性,用户拍摄描绘感兴趣东西的屏幕的快照。快照可以是东西本身的特写,或者可以包括感兴趣东西的周围区域。快照还可不仅仅包括显示内容的显示设备和在屏幕上显示的内容。在某些实施例中,诸如当正在用户的移动设备上显示内容121或122时,用户可通过获取屏幕捕捉来拍摄描绘感兴趣东西的屏幕的快照。
图1B图示出用于获得关于所显示数字内容中的对象或东西的更多信息的本文所述的示例性方法和系统的使用。如图1B中所示,用户可握持移动设备121或122,使得在屏幕上示出大的视图面积(包括感兴趣东西)。在某些实施例中,捕捉整个视图面积。在某些实施例中,系统可自动地确定视图面积的仅某个部分(诸如示出内容的显示屏)是实质性的,并且仅捕捉显示屏。在某些实施例中,用户可经由接口150通过例如用用户的手指或触针来触摸或环绕感兴趣东西(如部分151所指示的)来指示显示器中所示的图像的子集。最终用户应用然后可捕捉移动设备的显示器中的图像的仅部分151。如果指示了一部分,则图像的部分151然后被用来生成将被图像数据库处理的查询。图像数据库然后可以返回图像152以便在移动设备处显示,图像152被确定为与部分151的至少一部分匹配。
可基于所捕捉图像来选择附加信息153并将其显示给用户。所显示的附加信息153将是与快照中的媒体内容有关或相关联的信息。可基于整个快照或任何已识别部分151来选择附加信息153。
在某些实施例中,可在附加信息153上面、下面或旁边将图像152连同附加信息153一起显示。在某些实施例中,图像152可包括与附加信息154相关的标签154(也称为注释)。在至少某些实施例中,标签154如图像152(针对该图像152已识别到附加信息153)中所描绘的紧挨着项目中的某些或所有出现。在某些实施例中,标签154可被用户用来导航到与用标签标记的项目相关联的附加信息153的各部分。例如,通过点击标签,可将用户带到屏幕上的关联信息,其可以是搜索结果或者到附加信息的链接。在某些实施例中,标签本身表示到附加信息的超链接。
在图1C中所示的实施例中,在中心处显示的图像163已被加注释。左侧的图示出了目录162,其分层级地存储附加信息164。附加信息164可以与指向对象(例如,如图1C中所示的沙发)的特定标签166相关联,并且可以包括与对象有关的信息。所述信息可以包括与对象有关的图像、文本描述、定价、到其它信息的链接等,并且所述信息被在目录162下存储在分级结构中。如图1C中所示,在用户激活标签166之后,显示附加信息164的至少一部分。例如,可以显示沙发的图像167、沙发的文本描述168及其它信息。
现在返回至图1A,在用户拍摄快照之后,最终用户应用生成快照的指纹或快照的所指示部分。存在用于生成图像的指纹的许多已知方法。一般地,作为第一步骤,这些方法使用显著点检测算法来检测图像中的显著点,所述算法诸如来自加速分段测试的特征(FAST)、Harris、最大稳定极值区域(MSER)等或等价物。然后可以如图2A中所示地使用显著点来生成特征描述符矢量。如图2A中所示,可以分别地用矢量220a和220b来表示图像218的显著点219a和219b。尺度不变特征变换(SIFT)、加速稳健特征(SURF)、二进制稳健不变可缩放关键点(BRISK)、快速视网膜关键点(FREAK)是用于生成特征描述符矢量的已知方法的示例。特征描述符矢量可以是浮点数或位的固定尺寸矢量,其表征像素块(例如,64维或128维浮点矢量或512维度位矢量)。可以在描述符采样网格224内对根据像素网格222布置在图像内的像素块进行采样而生成矢量,并且可以选择矢量值,使得表示两个像素块的两个矢量之间的距离与两个像素块之间的相似度(例如,在辉度/亮度方面)相关。
如图2B中所示,可以使图像内容与参考图像中的对应内容相比不同地取向,并且仍可以发现匹配。例如,可发现查询图像240的查询特征242与参考图像250的查询特征252匹配。然后可以从查询图像240内的每个查询特征242的位置与参考图像250内的对应参考特征252的位置之间的一组关系导出图像内容240的相对姿势(或取向)。可以将该组关系表示为变换矩阵。在某些实施例中,可以迭代地计算变换矩阵以对参考图像250的特征的位置进行变换,直至参考图像的特征的已变换位置与查询图像240的特征中的至少一些的位置拟合。针对变换矩阵计算的每次迭代,可以通过确定是否存在用于参考图像(对于其而言已用变换矩阵对特征位置进行变换)与查询图像(对于其而言未变换特征位置)之间的对应特征的一致集合的拟合来检查变换矩阵的有效性。在某些实施例中,可以使用最小二乘逼近来计算变换矩阵。如稍后相对于图4A和4B中描述的发明方法所讨论的,可以在移动设备处或服务器处执行姿势的确定。
然后可以使用特征描述符的组合来表示包括在查询图像中的一个或多个视觉特征,其在对应于特征描述符的像素块的组合中以图形方式再现。还可以使用特征描述符的组合来以一定程度的确定性识别包括特征描述符的参考图像。参考图像的识别可以基于与参考图像相关联的特征描述符与从查询图像提取(并与该查询图像相关联)且被包括在指纹中的特征描述符之间的关系。特征描述符之间的关系可以确定识别成功的可能性。
指纹是从快照提取的某些特征的数字表示。指纹可以包括出于查询的目的被修整的一组特征描述符(或基于该组特征描述符被生成)。将被包括在图像指纹的生成中的特征描述符可以由用户选择。最终用户应用程序然后可以检测图像部分151内的显著点,并相应地生成特征描述符。当用户并未进行选择时,最终用户应用程序可从整个快照检测显著点,并且相应地生成与检测到的显著点相关联的指纹。在某些实施例中,用户可以经由在接口150上的敲击动作进一步选择图像中的特定对象,并且最终用户应用程序可以将与选定对象相关联的指纹的传输优先化。
返回参考图1A,在获得或生成快照图像的指纹之后,使用指纹来获得附加信息。在至少一个实施例中,指纹被经由通信链路130传输到服务器140。指纹可被经由无线链路或经由另一通信链路无线地传输到服务器。
服务器140可包括例如一个或多个可复制查询高速缓存器141、图像匹配模块142以及图像特征索引数据库143。在短划线圆内的这些组件也可称为Geenee搜索系统。
可复制查询高速缓存器141可以充当到Geenee搜索系统的入口点。可复制查询高速缓存器141可以直接地从移动设备接收查询指纹。在将输入查询指纹转送到图像匹配模块142之前,将输入查询指纹与先前接收到的指纹相比较。如果发现匹配,则可以返回对先前接收到的指纹的在先响应(例如,一组候选图像或匹配图像或无匹配图像等)。如果输入查询指纹与先前接收到的指纹不匹配,则然后可以将输入查询指纹转送到图像匹配模块142。
在某些实施例中,图像匹配模块142直接地接收输入查询指纹。图像匹配模块142将查询指纹转送到图像特征索引数据库143,并进一步处理。根据该进一步处理,一组候选图像(或对那些图像的指纹参考)被识别并被返回到图像匹配模块142。注释数据库144存储将从其中识别候选图像的一组参考图像以及该组参考图像与表示包括在参考图像中的特征的特征描述符之间的映射。针对被注释的参考图像,注释数据库144还存储注释和与注释相关联的附加信息之间的映射。
在从图像特征索引数据库143接收到候选图像指纹之后,图像匹配模块142然后将候选图像的指纹与查询指纹(或其一部分)相比较,并确定是否存在匹配。如果存在匹配,则其然后从注释数据库144检索匹配图像以及被附着到该匹配图像的注释,并将其作为结果返回。
如下面将更详细地描述的,图像特征索引数据库143提供用于从先前提供给注释数据库的参考图像提取的特征描述符的可搜索索引。下面相对于例如图6A-6E来描述根据本公开的基于图像特征索引的搜索的各种实施例。
服务器140还可包括内容提供方接口145。内容提供方接口145可被实现为web服务。内容提供方可使用内容提供方接口来提供意图被包括到Geenee搜索的媒体材料(和将附着在其上面的附加注释)。然后可以将媒体材料的至少一部分以及附加注释存储在注释数据库144处。
应理解的是服务器140可以是一个服务器或服务器集合。在某些实施例中,服务器140可以包括被耦合在一起而形成云160的多个服务器。此外,虽然图像特征索引143和注释数据库144被示为常驻于服务器140上,但是其也可以常驻于服务器140可访问的其它存储区中。在某些实施例中,内容提供方接口145是基于云的应用程序。
作为说明性示例,返回参考图1B,用户选择正在TV上广播的TV演出的特定场景,并且拍摄其快照,以在查询中包括该特定场景,其然后被传输到服务器140。在服务器140内,如果与屏幕快照相关联的特征描述符也被存储在图像特征索引数据库143中,则查询可以提供一组候选图像,其包括特定场景的参考图像。图像匹配模块140检测候选图像之中的匹配图像,并且可以返回匹配图像或无匹配图像的指示作为对用户查询的响应。还可以从注释数据库144检索与匹配候选图像相关联的附加信息。在某些实施例中,用户可以经由敲击来进一步选择快照中的对象以使查询的范围局限于与对象相关联的特征描述符。用户还可以选择由服务器140响应于查询而返回的匹配图像中的对象,以获取其它附加信息。
移动设备上的基于图像特征的识别
图3是图示出根据本公开的实施例的用于获得关于图像快照中的感兴趣对象的附加信息的示例性系统的框图。系统300可以是例如包括至少一个处理器、存储器、通信硬件和软件以及相机的移动设备。在某些实施例中,系统300是如图9中所示的客户端设备910。由于系统300可通过用户尝试获得关于感兴趣对象的附加信息而被操作,所以系统300还可称为用户的移动设备。图3图示出根据本文所述的方法和系统的可存在于系统300上的各种模块(其可用硬件或软件来实现)。如图3中所示,系统300包括图像获取模块310、特征描述符生成模块320、指纹生成模块330以及附加数据获取模块340。
图像获取模块310获取表示第一图像或“快照”的数据。该快照可以是由例如相机或智能电话或平板电脑的相机功能性捕捉的。在某些实施例中,拍摄并存储对相机可见的整个场景的快照。在某些实施例中,用户可指示在显示器上可见的场景的一个或多个部分,并且仅存储所指示部分。图像获取模块310还可以从其它源(例如,从本地或远程数据存储设备)获取图像数据。第一图像数据被传输到特征描述符生成模块320以用于进一步处理。
特征描述符生成模块320可以基于第一图像数据所表示的像素值而提取一个或多个特征,并且可以生成所提取特征的数值表示。在某些实施例中,特征描述符生成模块320检测第一图像的所选一个或多个部分内的显著点并对其进行定位,并且生成特征描述符以表示显著点。上文描述了用于检测显著点并对其进行定位且从其生成特征描述符矢量的方法和系统。
指纹生成模块330基于由特征描述符生成模块220生成的特征描述符矢量而生成图像指纹。该指纹可以包括基于在由用户选择的捕捉图像的一部分(或具体描绘对象)中检测到的显著点或者在整个捕捉图像中检测到的显著点的一组特征描述符(或基于该组特征描述符而被生成)。
在生成指纹之后,使用指纹来由附加数据获取模块340获取附加信息。在某些实施例中,该指纹被通过网络传输到另一系统(例如,要在图7中描述的系统700或图9的服务器940)以便在识别附加信息时使用。下面将相对于例如图4A更详细地描述基于指纹而搜索并识别附加信息的过程。
在某些实施例中,查询的处理包括以一定程度的确定性确定查询图像的特征描述符与候选图像的特征描述符匹配。基于此确定,查询的处理器然后可以识别在查询图像中描绘的媒体内容(例如,描绘TV演出的场景的图像、发布广告的图像等)。稍后将在例如图6A-6E中描述关于查询的处理的细节。
在处理用指纹进行的查询之后,附加数据获取模块340可以基于查询的结果而获取附加数据。例如,基于该查询,以一定程度的确定性对包括查询中的指纹所表示的对象的第二图像进行定位,并且附加数据获取模块340可以获取第二图像以用于显示。第二图像可以包括与在第一图像中未描绘的对象相关联的附加信息(例如,不同视点、不同背景、现在在第一图像中描绘的附加项目等)。此外,还可以用附加数据获取模块340来获取与对象有关的附加数据。返回参考先前在图1B-C中描述的说明性示例,在处理包括沙发的特征描述符查询之后,从查询识别具体品牌和型号的沙发,并且可以由附加数据获取模块340获取品牌和型号信息并显示给用户。此外,作为识别的结果,还可以由附加数据获取模块340获取其它信息(诸如价格、正在售卖沙发的供应商等)并显示给用户。
基于图像特征的搜索
针对给定的查询图像,基于图像特征的搜索通过将训练集的预先提取图像特征与从查询图像提取的那些相比较来发现大型图像集合(训练集)内的匹配。为了将这些昂贵的逐个图像比较保持在最低限度,使用附加搜索数据结构来高效地预选粗候选集合。称为图像特征索引的此搜索数据结构允许执行相似性搜索(例如,近似最近邻(ANN)查找),其中,可以将给定的查询图像特征数据点映射到图像的训练集的其最靠近对应数据点。与这些数据点相关联的图像将被作为一组候选图像检索。如稍后将描述的,图像特征索引提供能够对特征数据点编索引/寻址的映射表。此类映射表可以是散列表,并且可以根据散列函数来定义地址与特征数据点之间的关系。
现在对图4A进行参考,其是图示出根据本公开的实施例的用于在用户没有拍摄快照的情况下从视频执行基于图像特征的识别的示例性方法的流程图。在步骤402中,由用户的移动设备捕捉稳定的相机图像(即,对象看起来是静止的)。在某些实施例中,移动设备在其使用例如移动电话的加速度计传感器或检测移动的其它设备检测到几乎没有移动时可确定图像是稳定的。在检测到几乎没有移动之后,移动设备可捕捉一个或多个图像。在某些实施例中,在捕捉多个图像的情况下,移动设备可确定多个图像中的哪个是最稳定的图像,并且使用该最稳定图像作为查询图像。
在某些实施例中,特别是其中用户正在拍摄视频的快照的那些,在屏幕上显示的内容与在用户发起快照的拍摄之后拍摄快照的时间之间可能存在延迟。常常地,由于时间流逝,捕捉的快照不再包含感兴趣的项目或场景。在本文所述的某些实施例中,在拍摄快照之前一定量的时间(例如一秒)拍摄的图像被用作查询图像。
在步骤404中,使用查询图像来找到参考图像集内的匹配图像。从在查询图像中检测到的显著点提取特征描述符,并且从提取的特征描述符生成指纹。指纹然后被传输到服务器,在那里,执行基于图像特征的识别以找到可以从其中找到匹配图像的一组候选图像。
如果在步骤406中不能找到匹配图像,意味着不能针对该特定相机图像执行进一步分析,则重新执行步骤402以获取不同的稳定图像。
如果在步骤406中发现匹配图像,则然后可以在移动设备处执行步骤408。在步骤408中,可以估计查询图像的姿势。姿势的估计和拟合也可以是关于查询图像和参考图像是否匹配的确定的一部分,如在图4B中所述。在确定两个图像拟合之后,可在步骤410中将姿势信息传输到移动设备。在某些实施例中,可在移动设备处显示姿势信息。
在步骤412中,系统确定跟踪是否丢失。可基于例如是否检测到姿势的实质变化来确定跟踪。在某些实施例中,步骤402至412可以用来首先训练系统识别并跟踪感兴趣的东西(如由用户或通过其它手段指示的)。当例如操作移动设备的人显著地移动拍摄方向或者之前没有识别到的新对象出现在视频中时,跟踪可能丢失。
一旦系统能够跟踪感兴趣的东西,则可以执行步骤414以开始处理现场相机图像,可以在步骤416中从所述现场相机图像中检测并定位显著点,并且在步骤418中生成特征描述符。然后可以再次地在步骤408中使用特征描述符来估计姿势。
用如图4A中所示的此类布置,可不需要再次地查询之前已经识别的内容。因此,可以减少对图像特征数据库(位于远离生成查询的设备处或在该设备本地)的访问次数。当预期重复地捕捉具有相同特征的同一对象的图像时,这在移动设备被用来从现场视频生成查询时尤其有用。可通过不必针对相同的特征重复地查询图像特征数据库而改善性能。在这种情况下,移动设备可以充当门卫以确定跟踪是否丢失(例如,经由步骤406至412),并且只有当跟踪丢失时(例如,操作摄像机的人显著地移动拍摄方向或者之前没有识别到的新对象出现在视频中)才访问数据库。
现在对图4B进行参考,其图示出一种如本文所述的用于确定候选图像是否与查询图像匹配的示例性方法。在步骤432中,接收包括图像指纹的查询。在步骤436中,从指纹获得用于查询图像的显著点的一个或多个特征描述符矢量。在步骤438中,查询图像特征索引数据库,并且基于查询中的特征描述符来获得一组候选图像的指纹。在某些实施例中,将候选图像存储在数据库(例如图1A的注释数据库144)中。可将参考图像连同对应指纹和注释一起存储。在某些实施例中,参考图像和注释由内容提供方提供。
步骤440-448图示出通过使用如在例如图2B中所示的直接匹配比较技术来将所有候选与查询图像相比较的环路,并且可以是图4A的步骤404的一部分。在步骤440中,从该组候选图像获得参考图像,并且然后可将参考图像从该组候选图像中去除。在步骤442中,计算查询图像与参考图像之间的特征距离。这些特征距离可用来识别查询图像与参考图像之间的对应特征。可例如在特征空间中使用欧几里德距离来表达特征距离。在此类示例中,针对查询图像中的M个特征和参考图像中的N个特征,结果可以是欧几里德距离的M×N矩阵。通常,只有最近特征的一定百分比(例如,20%)被接受为“相对应”。在步骤444中,基于所识别的对应特征,可以以类似于如图2B中所述的方式估计参考图像相对于查询图像的姿势(例如,取向)。然后在步骤446中比较查询图像和参考图像,考虑查询图像内容和参考图像内容的姿势中的任何差别,以确定查询图像是否与参考图像匹配。在某些实施例中,以类似于图2B中所述的方式执行步骤446,其中,对参考图像应用单应性变换,并且然后进行查询图像的至少一部分(包括特征的一致集合)是否拟合到已变换参考图像中的确定,由此确定两个图像是否匹配。如果确定两个图像不匹配,则将执行步骤448以确定在候选图像的集合是否留下任何图像。如果存在剩余候选图像,则将针对下一参考图像重复步骤440、442、444、446和448,直至在候选集合中不再有图像为止。如果候选集合中没有参考图像与查询图像匹配,则将推断不存在匹配,并且适当的指示将在步骤450中被返回到移动设备。
图4C是图示出根据本公开的实施例的用于在查询图像特征索引数据库之前查询高速缓存图像集以找到匹配图像的示例性方法的流程图。在某些实施例中,可以将已被发现与查询匹配的参考图像存放在高速缓存图像集数据库中。在某些实施例中,可以用图1A的可复制查询高速缓存器141来实现图4C的方法。可以通过首先搜索高速缓存图像集数据库来执行双层搜索。由于高速缓存图像集数据库通常比全参考图像数据库小得多,所以搜索要求较少的时间和较少的计算资源。在某些实施例中,还可以以与参考图像数据库相同的方式(例如采用图像特征索引)但是以较小的规模组织高速缓存图像集数据库。在某些实施例中,高速缓存图像集数据库还可以存储先前接收查询指纹与其对应匹配参考图像之间的映射。还可以使高速缓存查询与多个用户相关联。当从不同的用户接收到多个相同查询(例如,包括同一指纹的查询)时,仅处理查询中的一个(通过在高速缓存图像集数据库处或在参考图像数据库处执行搜索),并且可以向提交相同查询的其它用户转送所述搜索结果。
如图4C中所示,在步骤432中检索查询指纹,并且在步骤436中从指纹中选择特征描述符。步骤432和436与图4B相同,并且不重复其描述。然后可以在步骤463中使用所选特征描述符来搜索高速缓存图像集数据库。该搜索可以基于针对高速缓存图像集内的当前查询特征描述符执行搜索或者通过将当前查询指纹与先前接收到的查询指纹相比较来完成。
在某些实施例中,如果在步骤464中找到高速缓存查询图像,则可以在步骤465中将用户(或与用户相关联的移动设备)登记并与高速缓存命中相关联。如前所述,使用户与高速缓存命中的历史相关联可以有助于细化高速缓存器访问策略。并且然后可以执行步骤466,其中,将检索的参考图像与查询图像相比较以确定其是否匹配,类似于图4B的步骤440至448。可以在步骤467中报告搜索结果,在那之后可以基于搜索结果向用户提供附加信息。
另一方面,如果在步骤464中未发现高速缓存查询图像,则然后将在步骤468中提交查询指纹以查询参考图像数据库。在步骤469中,如果发现匹配,则可以向高速缓存图像集数据库添加查询指纹并将所述查询指纹与在步骤468中找到的匹配参考图像相关联。在某些实施例中,还可以在步骤470中将搜索结果广播给其它用户。该广播可以在劝阻其它用户向系统提交相同查询方面有用。
图像特征索引
本文所述的新型的基于图像特征的识别方法和系统的关键特征是图像特征索引。所述的方法和系统利用视频帧准确度方面的可补偿损失来平衡交换有损概率性数据管理,使得能够结合区别性较低图像内容的自动剪除来大大地降低计算成本和存储要求。这种方法和系统特别适合于管理从视频生成的参考图像数据。
为了理解本文所述的新方法和系统,以下是现有技术系统的描述。图5A-5H图示出与用于使用散列表的已知方法相关联的问题。在图5A中,使用散列表510来组织与一组训练图像相关联的特征描述符,可从其中选择候选图像。散列表510包括桶阵列512,其中,每个桶地址经由散列函数与特征空间的一个或多个分段相关联。每个桶然后可以存储对以几何方式常驻于桶关联空间段内的特征(例如特征514)的参考。每个散列桶可以具有无限数目的狭槽,并且可以包含无限数目的特征参考。散列桶基于根据特征空间内的特征矢量分量的位置、与特征空间段相关联的散列地址以及与该地址相关联的散列桶确定的特征描述符之间的关系而与特征描述符(及其矢量分量)相关联。在某些情况下,对特征描述符矢量应用一个或多个散列函数,并且可以使用散列函数的输出来确定特征描述符应与哪些地址(和哪些散列桶)相关联。
在某些情况下,使用散列函数来将特征空间515分区,该特征空间515是给定给可以用一组特征描述符来表示的特征集合的名称。当特征描述符被表达为矢量时,特征描述符矢量将在每个维度中具有分量。散列函数然后可以将矢量空间(表示特征空间)分区成一个或多个区域(例如,特征空间区域518),其中,每个区域可以具有表示数据集特征514的特征矢量分量的集合,并且每个区域可以与散列桶地址相关联。每个特征矢量然后被散列函数映射到散列桶中,并且满足某些准则(例如,表示类似特征)的矢量可被映射到同一区域(因此被映射到同一散列桶)。
那样,可以使用局部敏感散列(LSH)来执行相似性搜索,其中散列表510与散列函数族相关联,该散列函数族可以以高概率使类似数据点(例如,组成类似特征描述符的矢量)与相同散列桶相关联。局部敏感性指的是这样的事实,即数据点之间的关联的概率稳定地增加以便增加数据点之间的相似性。如图5A中所示,针对给定查询特征519,对应于特征519的特征描述符可以沿着每个矢量维度包括一组矢量分量520(用“x”来表示)。针对每个矢量分量520,可以通过选择与查询矢量分量共享同一散列桶成员资格且也在查询矢量分量的相似性距离极限521内的数据点来执行近似k最近邻搜索(ANN)。然后可以根据例如包括那些数据点作为矢量分量的特征描述符矢量与表示查询特征的特征描述符之间的距离来对那些数据点进行排序。可以基于该排序(例如,最短距离)进行匹配确定。
图5B图示出用于如前所述地向图像特征索引数据库执行查询过程的现有技术方法530。在步骤531中,提取包括在查询指纹中的特征描述符并将其存储在数据结构(例如,列表)中以便通过单独的特征进行循环。执行步骤534至537以响应于查询而从图像特征索引数据库执行第一轮的特征描述符检索。如前所述,使用散列函数族来将特征样本空间分区。因此,在步骤535中检索该族中的每个散列函数(在步骤534中检查到还剩有未使用散列函数之后),并且然后在步骤535中使用检索函数基于特定查询特征描述符来生成到桶的地址。然后在步骤536中收集被存储在被寻址桶中的参考特征描述符数据点。重复步骤534至537直至该族中的所有散列函数都已被使用(如在步骤534中确定的)为止。
在收集参考特征描述符数据点之后,其将经由步骤538至542被过滤,其中,在步骤540中计算在每个收集的参考特征描述符数据点与查询特征描述符数据点之间的距离并在步骤541中将其与某个距离R相比较,并且将只有在距离R内的那些参考特征描述符在步骤542中被接受。重复步骤538至542直至分析了从步骤534至537收集的所有参考数据点为止。
在已分析了所有查询特征之后,将在步骤543中收集包含被接受特征的参考图像作为候选图像。然后在步骤544中根据例如所有被接受参考特征描述符(距查询特征描述符)的加和距离将候选图像分类,并且在步骤545中报告分类列表。基于分类列表,然后可以确定要使用哪个候选图像以用于进一步处理。
图5C图示出如前所述的用于向图像特征索引数据库中插入参考图像的现有技术方法550。在步骤551中,从参考图像提取参考特征。在某些实施例中,直接地从与参考图像相关联的指纹识别参考特征(用特征描述符来表示)。然后将在步骤553中一次一个地选择提取的特征。所选特征描述符然后将被输入到散列函数族,其中,将在步骤555中拣选该族的每个散列函数以在步骤556中根据所选特征描述符来计算桶地址。然后在步骤557中,通过向桶的条目列表中附加特征描述符数据点,参考特征描述符将被添加到桶。在所有散列函数都已被用来计算用于所选特征描述符的地址之后,在步骤554中,将选择下一提取特征描述符以便在步骤553中处理,直至所有提取的特征描述符都已被处理为止,如在步骤552中确定的那样。特征矢量也将在步骤558中被存储为与参考图像相关联的散列密钥。
在图5A-5B中描述的方法存在的一个潜在缺点是所选的桶可能未提供类似于查询数据点的特征数据点的良好覆盖。例如,如图5D中所示,查询特征矢量分量570被映射到特征空间区域572。在相似性距离极限571内,将仅搜索与查询特征矢量分量570在同一特征空间区域内的区域部分573。也在区域部分573内的数据点574被发现是查询特征矢量分量570的表观最近邻。然而,数据点575是与查询特征矢量分量570具有最短距离的数据点,但是未被选择,因为其属于不同特征空间区域。如果搜索扩展至相邻桶(和相邻特征空间区域),则将找到数据点575,但是此类布置可能是非常计算密集的,因为相邻桶的数目呈指数增加以便增加维度。因此,除将搜索扩展至相邻桶之外,期望的是进一步改善类似数据点与同一桶相关联的可能性,从而改善搜索的准确度。
用以进一步改善类似数据点与同一桶相关联的可能性的一个已知技术是如图5E中所示的使用与不同散列函数相关联的多个散列表530。在这种方法中,多个散列函数(例如,散列函数族582和584)可以以不同但重叠的方式(如用实线网格和点线网格表示的)将同一特征空间分区,使得包括在查询中的特征描述符可以导致同时地在不同表格中同时地覆盖一组重叠特征空间区域的多个桶的访问,并且搜索可能局限于该组区域。虽然重叠桶允许被分区的特征空间的更好覆盖,但并非最接近于查询特征的参考特征可以被包括在被查询特征寻址的桶是可能的,并且可能需要执行附加过滤(例如,通过计算桶中的参考特征与查询特征之间的距离)以确定参考特征是否将被包括在候选图像集中。
如图5F中所示的用于改善LSH的另一已知技术是使用基于熵的LSH来生成接近于查询数据点的随机数据点。这些随机数据点还可以促使散列函数将特征空间区域590、592和594映射到同一散列桶中。还可以将用于ANN搜索的相似性距离极限596扩展(相对于图5A的相似性距离极限521)至包括随机数据点。此外,如图5G中所示,多探头LSH可以通过采用假设相邻桶的查询导出探测序列来导出附加查询点。
虽然上述LSH技术可以改善参数空间分区所固有的桶覆盖效果,但当候选图像(其特征描述符将被提取并在散列表510下被组织)是从视频生成的时可能存在巨大的计算成本和存储要求。由于从视频生成的巨量的数据,在执行ANN搜索的同时检查存储在任何给定桶中的每个数据点可能是非常耗时且计算密集的,其涉及到计算散列桶中的每个数据点与查询数据点之间的实际距离。此外,如图5H中所示,视频通常包括大量的重复图像内容,并且作为结果,大多数提取图像特征可能对任何不同信息没有贡献,或者可能促使少数的不同图像特征在大多数不那么不同的特征中遗失,削弱取决于特征存在的任何图像匹配概率排序。此外,过度占用散列桶也可能向候选特征描述符集贡献不成比例的许多数据点并妨碍用于某些再现图像特征的性能增益,同时,一致的特征运动和变换可以降低用以可靠地识别匹配的特征对应关系的单应性对准测试的能力。
增强LSH
下面将提供描述LSH的改进技术的方法和系统。该改进技术可以用来利用多个精选不同余的散列函数的叠加的统计覆盖性质作为粗替换距离度量。这些方法和系统要求较少的计算和较少的存储。
所述方法消除了如在基于LSH的ANN的上述现有技术实施方式中那样使用散列表存储数据点的矢量分量来执行距离计算的需要。通过将重叠散列桶解释为连续参数空间的不规则超采样,可以直接地敲出(tap)隐藏在多个叠加的不同余散列函数中的位置信息。给定局部敏感散列的性质,样本pi与查询样本q越接近,其之间的散列桶冲突的概率越增加。如果针对给定的一组L个不同局部敏感散列函数相反地解释,那么这意味着查询点q周围的在相似性距离极限内的重叠散列桶的D维特征空间区域覆盖针对较小的半径增加(R1<R2):
换言之,针对查询点q,被用h(q)寻址的同时重叠散列桶的数目与到查询点的距离粗相关。此观察可以被直接地用作量子化距离排序度量:
样本点pi越接近于q,其被由q选择的重叠散列桶中的某些覆盖的概率越高,并且因此其在收集被附着到桶的所有点时其越频繁地作为副本的显现。这样,可以将所有空间数据点位置视为在散列表本身的桶成员资格模式内被有损编码或者超采样。此编码充当用于数据点位置的替换。
此编码的质量和分辨率由散列函数定义。首先,查询点周围的重叠桶的密度向正态分布收敛(即,使用的不同余散列函数越多,分辨率变得越细。):
其次,绝对距离秩在较近的样本与其余部分(包括噪声)之间增加。只有落在与最大桶尺寸到查询点q对应的距离内的数据点p经受桶覆盖与距离之间的上述关系:
针对数据点p、r:|p-q|<R<|r-q|
落在该大桶尺寸距离外面的那些样本并未共享同一桶覆盖区域,但是可由于散列地址冲突/桶混叠而共享桶。针对给定的理想散列函数,这些冲突在统计上均匀地分布在参数空间上,并且不服从距离-秩关系的所有样本具有相同的固定机会Pcollision在候选集合中显现为假阳性。可以通过增加散列函数的数目或者通过增加表格尺寸来调整信噪比间隙,有效地降低概率Pcollision
在图6A中图示出增加散列函数的数目的效果。在左侧,查询特征数据点693被寻址到桶空间694。使用许多散列函数来将桶空间694分区,其中,每个散列函数寻址空间(例如,空间695)可以与数据点693重叠。并未与694重叠的空间695的一部分内的数据点(例如空间696)仍可被收集为候选数据点(由于其与散列函数(其寻址空间695与查询数据点重叠)的关联)。可以用分布690来表示查询点周围的重叠桶的密度。如在右侧所示,随着散列函数的数目增加,分布690收敛而变成高斯分布。由于散列函数的性质,即将无限参数空间映射到桶的有限集,被查询数据点693寻址的落在所有段694、695、696外面的数据点仍可落入同一散列桶中。假设理想的散列函数,这些所谓的桶冲突表现为均匀噪声,因为其不服从局部敏感性质。
图6B-C示出了用于组织进一步利用上述距离秩度量的概率性质的搜索数据结构的示例性方法602、604和606。在某些实施例中,如图6B中所示,可以在一个统一散列表607中将多个并发散列函数地址空间叠加,其中,来自散列族的散列索引被映射到散列桶的一个集合,允许多个散列函数对同一散列桶进行寻址,每个散列桶存储一个元素列表。此外,图6C的散列表608和609图示出使用改进的开放寻址散列表布局的新型存储方法,其中,桶始终具有零或一个元素。为了解决散列冲突(即,指向同一桶的多个散列函数),可以采用开放寻址方法。如图6C的方法604所示,当特征数据点将被写入到在3处寻址的桶(其已存储数据)时。可以根据线性探测序列从空桶探测散列表。在本说明性示例中,将以线性方式遍历散列表(例如,遍历被连续地寻址的桶)。当针对查询特征数据点计算散列表地址时,从计算的散列表地址开始直至到达空桶为止的所有元素将被包括在候选数据点中。可以使用距离比较来过滤沿着探测序列收集的候选特征数据点,其中,仅保持在到查询特征数据点的预定义相似性距离内的那些特征数据点。
在某些实施例中,如图6C的方法606中所示,作为线性探测的替代,可以将概率局部探测用于通过将桶中的插入数据点随机地分散在最初被数据点寻址的桶周围的预定义范围内来解决散列冲突,并且也不跟踪探测序列。此外,不执行使用距离比较的过滤,并且不需要存储被用于散列地址计算的特征的矢量分量。
由于上述概率距离度量使用特征数据点的出现作为距离指示符,所以被收集在桶内但源自于不同散列地址的候选数据点在稍后作为查询的结果被检索时可以表现为统计上分布在特征空间上的噪声。如下所述,可以基于这些数据点在桶条目的一区块内的多次出现将这些数据点与正确收集的数据点区别开。例如,已被参考为等于或小于散列表固有噪声水平的图像可被丢弃(参见例如图6D的步骤616)。可以通过例如增加散列表的尺寸、增加散列函数的数目等来缓解(精确地操纵)噪声。
此外,如图6C中所示,根据方法606,条目可以被更新近的数据覆写。例如,在89处寻址的桶被用来存储数据点620,但是作为概率局部探测的结果,其被数据点630覆写。由于通常与过度占用桶相关联的数据点来自大量但区别性较低的特征,所以这些数据的覆写允许将这些特征模糊掉,并且可以减少其对确定匹配特征的影响。还可以调整此覆写策略以处理溢出情况(即当散列表中的所有条目被存储有数据时)。
用根据例如图6B-C的散列表607-609布置的散列表,散列表中相邻区域大致上等价于桶列表。因此,针对根据特征数据点计算的每个散列地址,可以使用例如一般地在存储器映射文件访问中采用的页面调度功能性来执行散列地址周围的散列表的固定尺寸块读取。被以这种方式读取的每个块可以表示桶列表,其进而表示被散列函数分区的重叠桶过采样特征空间区域。如上文所解释的,被查询数据点寻址的同时重叠散列桶(即,与通过对查询数据点应用散列函数而计算的地址相关联的散列桶)的数目与查询数据点的距离粗相关,使得桶中的特定数据点越接近于查询数据点,该特定数据点被由查询数据点寻址的重叠散列桶中的至少某些覆盖的概率越高。结果,该特定数据点可以更频繁地显现为重叠散列桶内的副本(即,被映射到重叠特征空间区域的散列桶),并且可以使用该特定数据点在重叠散列桶内的出现次数(用块读取表示)来估计其与查询数据点的距离。在块内最频繁地出现的那些数据点然后可以响应于查询而被确定为匹配特征,并被包括在候选数据点中。根据候选数据点,可以将与候选数据点相关联的图像获取为候选图像。
图6D图示出用于向图像特征索引数据库执行查询过程的示例性方法,该数据库是使用例如图6C的散列表609组织的。步骤532-536与图5B中的那些相同,在这里不重复其描述。在步骤536中确定桶地址之后,在步骤612中执行该桶周围的散列表的块读取,如上文参考图6C所述。然后在步骤613中通过例如跟踪与每个参考特征数据点相关联的参考计数器来对收集的每个重复参考特征数据点进行计数。在分析所有查询数据点之后,在步骤614中选择与收集的参考特征数据点相关联的候选图像作为匹配候选。每个候选图像可以与跟如在步骤613中确定的每个重复参考特征数据点相关联的参考计数器的组合相关联。然后可以在步骤615中使用参考计数器的组合来对候选图像进行排序和分类。在步骤616中,可以丢弃具有在某个阈值以上的某些参考计数器的候选图像。可以基于预定噪声水平来确定此类阈值。
图6E图示出如前所述的用于向图像特征索引数据库中插入参考图像的方法。步骤551-556与图5C的同样编号步骤相同,并且在这里不重复其描述。在步骤621中,在针对参考特征量确定第一桶地址之后,使用随机函数来计算第二桶地址。可以使用随机函数来随机地将桶中的插入数据点分散在最初被数据点寻址的桶周围的预定义范围内,类似于图6B的方法602。然后在步骤622中,参考数据点将被存储在被用第二地址寻址的桶处。如果存在被存储在该桶中的其它较旧数据,则在步骤623中,该数据将为了支持参考数据点而被丢弃。
图7是图示出根据本公开的实施例的可以用来实现本文所述实施例的示例性系统700的框图。在某些实施例中,系统700可以是图1A的服务器140的一部分。在某些实施例中,系统700可以用来处理由例如图3的系统300发送的查询。在至少一个示例性实施例中,系统700包括图像匹配模块752、参考图像数据库720、散列表730、散列表管理模块740、候选特征描述符检索模块746、候选图像检索模块750以及散列函数770。
在至少某些示例性实施例中,图像匹配模块752是如上文相对于图1A所述的图像匹配模块142。
参考图像数据库720可以存储候选图像集合。每个候选图像可以是视觉媒体的图像(例如,TV演出期间的场景的屏幕快照),并且可以包括预定视觉特征集合。这些视觉特征可以被预定成非常有可能被包括在将由系统700处理的查询中。可以用上述特征描述符来表示这些特征。然后可以使每个参考图像与对应于包括在图像中的预定视觉特征的集合中的至少某些的一个或多个特征描述符相关联。当接收到包括一组特征描述符的查询时,可以基于特征描述符包括与被包括在查询的指纹中的特征描述符中的至少某些的检索候选图像匹配的确定(以一定程度的确定性)而响应于查询从参考图像数据库720检索一个或多个候选图像。在某些实施例中,然后可以将那些检索候选图像与查询图像(即,从其生成查询的图像)相比较以找到最佳匹配候选图像。
虽然在这里提出了参考图像的数据库,但应理解的是存在将数据库中的视觉特征分组的其它方式(例如,使视觉特征或特征描述符的组合与特定对象而不是候选图像相关联),这完全适用于在本文中公开的技术,并且在本公开的范围内。
散列表730与一组散列函数770相关联。在某些实施例中,散列表管理模块740还包括冲突解决模块742和溢出处理模块744。
在某些实施例中,散列表管理模块740、候选特征描述符检索模块746以及候选图像检索模块750可以被配置成实现如在图6D-E中公开的查询的处理。散列表管理模块740响应于查询而提供对散列表730的访问。散列表管理模块340提供映射表,其将包括在散列表730中的所有散列表的散列索引(即地址)映射到散列桶的一个集合,类似于图6B-C的统一散列表602、604和606。使用散列函数770基于特征描述符数据点来计算地址。
作为散列表管理模块740的一部分的冲突解决模块742处理当使新数据点(例如,一组特征描述符)与散列表730相关联时的散列冲突(即,当两个不同的数据点被寻址到同一桶时)。在某些实施例中,冲突解决模块742实现如之前参考图6C和6E所述的开放寻址和探测方法。
作为散列表管理模块740的一部分的溢出处理模块744在不能在散列表中找到空的狭槽的情况下处理新数据点(例如,一组特征描述符)与散列表730的关联。在某些实施例中,溢出处理模块744实现之前参考图6C和6E所述的覆写策略。
候选特征描述符检索模块746访问散列表730以获取一组候选特征描述符数据点。针对包括在查询中的每个特征描述符,候选特征描述符检索模块746应用散列函数来计算地址,使用地址对桶进行定位,并且然后检索与桶相关联的所有数据点。在其中探测序列未被跟踪的情况下,也将检索沿着探测序列与其它桶相关联的所有数据点。在其中使用概率局部探测的情况下,还将检索被寻址的桶周围的预定义范围内的所有数据点。在检索到候选特征描述符数据点之后,然后将数据点发送到候选图像检索模块750,其然后可以确定特征描述符数据点的哪个集合在候选数据点的集合内最频繁地重复。这些特征描述符将被确定为最类似于包括在查询中的特征描述符,并且然后可以用来响应于查询而识别一组候选图像或其它附加信息。在某些实施例中,候选特征描述符检索模块746和候选图像检索模块750实现图6D和6E的方法的至少一部分。
在接收到候选图像之后,图像匹配模块752然后将候选图像的指纹与查询指纹(或其一部分)相比较,并且确定是否存在匹配。如果存在匹配,则然后系统700从注释数据库780检索匹配图像以及被附着到该匹配图像的注释,并将该附加信息和注释返回到移动设备。
在某些实施例中,如图8中所示,示例性客户端设备800可以包括(除图3的系统300之外)查询高速缓存器840和查询高速缓存器管理模块850,以形成用于查询处理的双层系统。查询高速缓存器840可以存储先前接收的查询与响应于那些查询而从服务器140检索的特征描述符(和/或(一个或多个)候选图像)之间的映射,采用类似于如图4C中所述的方法。当接收到新查询时,查询高速缓存器管理模块850可以将新查询的内容与存储在查询高速缓存器800中的查询的内容相比较。如果在查询高速缓存器840中发现匹配,则可以将相关联的特征描述符(和/或(一个或多个)候选图像)提供为响应而不向服务器130发送查询。如果在查询高速缓存器840和/或候选图像数据库820中不能找到匹配,则查询然后将被传输到系统700。
在某些实施例中,还可以在两个不同服务器之间或者作为系统700的一部分来实现此类双层系统,以处理源自于不同客户端设备但包括类似内容的查询。在第一客户端设备提交促使服务器130检索匹配图像的第一查询之后,另一客户端设备可提交包括类似内容的第二查询。在那种情况下,可以通过经由查询高速缓存器840进行搜索来处理第二查询,并且可以再使用第一查询的结果。此类布置可以对处理具有类似内容的查询中的尖峰有用。例如,如前所述,当正在向数百万的观看者广播视频时,其中的许多人可能通过拍摄同时地出现在其显示设备上的感兴趣项目的快照来提交查询,并且这些查询可以包括非常类似的内容。在通过访问大得多的参考图像数据库720来处理第一查询并将结果添加到查询高速缓存器840之后,然后可以通过替代地访问查询高速缓存器840来处理包括同一感兴趣的项目的其它查询,这可以巨大地改善效率。
图9是根据本公开的实施例的可以用来实现本文所述的实施例的示例性系统900的框图。如图9中所示,系统900包括客户端设备910、网络930以及服务器940。客户端设备910包括一个或多个处理器912、存储器设备914、存储设备916、显示器917、网络接口918、相机119(或其它图像生成设备)以及加速度计922(或其它取向确定设备),其全部可以经由总线920而相互通信。在某些实施例中,显示器917优选地是触摸屏。I/O设备可以包括麦克风和可以获取和/或输出信号的任何其它设备。通过网络930,客户端设备910可以与服务器940交换数据。服务器940还包括一个或多个处理器942、存储器设备944、存储设备946以及网络接口948,其全部可以经由总线950而相互通信。
存储器914和944两者可以是用于存储信息和指令以分别地由处理器912和942执行的随机存取储器(RAM)或其它易失性存储设备。存储器914和944还可以被用于在指令执行期间存储临时变量或其它中间信息以便由处理器912和942执行。此类指令在被存储在处理器912和914可访问的非临时存储介质(例如,存储设备916和946)中之后使得计算机系统910和940成为被自定义成执行在指令中指定的操作的专用机器。可以将指令组织成不同的软件模块,举例来说,其可以包括组件,诸如软件组件、面向对象软件组件、类组件和任务组件、进程、函数、字段、程序、子例程、程序代码段、驱动程序、固件、微代码、电路、数据、数据库、数据结构、表格、阵列以及变量。
一般地,如本文所使用的单词“模块”指代用硬件或固件体现的逻辑或者软件指令的集合,可能具有用编程语言(诸如Java、Lua、C或C++)编写的入口点和出口点。可以编译软件模块并将其链接到可执行程序中、安装在动态链接库中或者用解释性编程语言(诸如例如BASIC、Perl或Python)编写。将认识到的是软件模块可以可从其它模块或者从其本身调用和/或可以响应于检测到的事件或中断而被调用。可以在计算机可读介质上(诸如紧凑盘、数字视频盘、闪速驱动、磁盘或任何其它有形介质)或者作为数字下载而提供被配置成用于在计算设备上执行的软件模块(并且最初可以被以在执行之前要求安装、解压缩或解密的压缩或可安装格式存储)。此类软件代码可以被部分地或完全存储在执行计算设备的存储器设备上以便由计算设备执行。软件指令可以被嵌入固件(诸如EPROM)中。将进一步认识到的是硬件模块可以由连接的逻辑单元(诸如门和触发器)构成和/或可以由可编程单元(诸如可编程门阵列或处理器)构成。本文所述的模块或计算设备功能性优选地被实现为软件模块,但是可以用硬件或固件来表示。一般地,本文所述的模块指代可以与其它模块组合或划分成子模块的逻辑模块,而不管其物理组织或存储。
客户端设备910和服务器940可以使用自定义硬接线逻辑、一个或多个ASIC或FPGA、固件和/或程序逻辑(其与计算机系统组合而促使客户端设备910和服务器940或将其编程为专用机器)来实现本文所述技术。根据某些实施例,本文所述的操作、功能性和技术及其它特征由客户端设备940和服务器940响应于处理器912和942执行分别地包含在存储器914和944中的一个或多个指令的一个或多个序列而执行。此类指令可以被从另一存储介质(诸如存储设备916和946)读入到存储器914和944中。包含在存储器914和944中的指令序列的执行分别地促使处理器912和942执行本文所述的过程步骤。在替换实施例中,可以代替软件指令或与软件指令相组合地使用硬接线电路。
如本文所使用的术语“非临时介质”指代用于存储促使机器以特定方式操作的数据和/或指令的任何非临时介质。此类非临时介质可以包括非易失性介质和/或易失性介质。非易失性介质可以包括例如光学或磁性设备,诸如存储设备916和946。易失性介质可以包括动态存储器,诸如存储器914和944。非临时介质的常见形式包括例如软盘、软磁盘、硬盘、固态驱动、磁带或任何其它磁性数据存储介质、CD-ROM、任何其它光学数据存储介质、具有孔图案的任何物理介质、RAM、PROM以及EPROM、FLASH-EPROM、NVRAM、任何其它存储器芯片或盒以及其联网版本。
例如,可以将图1A的设备121和122实现为客户端设备910,其中,可以将图3的系统300和图4A-4B的方法400、430以及460实现为存储在储存器916和存储器914中的软件指令。在某些实施例中,可以将图1A的服务器140实现为服务器940,其中,可以将图7的系统700和图6B-6D的方法600、602、610和620实现为存储在储存器946和存储器944中的软件指令。
网络接口918和948可以提供到网络930的双向数据通信耦合。例如,网络接口918和948可以是综合服务数字网(ISDN)卡、电缆调制解调器、卫星调制解调器或用以提供到对应类型的电话线的数据通信连接的调制解调器。作为另一示例,网络接口918和948可以是用以提供到兼容LAN的数据通信连接的局域网(LAN)卡。还可以实现无线链路。在任何此类实施方式中,网络接口918和948可以发送和接收电、电磁或光信号,其载送表示各种类型的信息的数字数据流,并将该数据流提供给存储设备916和946。处理器912和942然后可以将数据转换成不同的形式(例如,通过执行软件指令以将数据压缩或解压缩),并且然后将已转换数据存储到存储设备(例如,存储设备916和946)中,和/或通过网络930经由网络接口918和948来传输已转换数据。
根据某些实施例,本文所述的操作、技术和/或组件可以由电子设备实现,其可以包括一个或多个专用计算设备。所述专用计算设备可以被硬接线以执行本文所述的操作、技术和/或组件,或者可以包括数字电子设备,诸如被持久性地编程为执行本文所述的操作、技术和/或组件的一个或多个专用集成电路(ASIC)或现场可编程门阵列(FPGA),或者可以包括一个或多个硬件处理器,其被编程为根据固件、存储器、其它储存器或组合中的程序指令来执行本公开的此类特征。此类专用计算设备还可以将自定义的硬接线逻辑、ASIC或FPGA与自定义编程组合以实现本公开的技术及其它特征。专用计算设备可以是台式计算机系统、便携式计算机系统、手持式设备、联网设备或者结合硬接线和/或程序逻辑以实现本公开的技术及其它特征的任何其它设备。
一个或多个专用计算设备一般地可以被操作系统软件控制和协调,所述操作系统软件诸如iOS、Android、Blackberry、Chrome OS、Windows XP、Windows Vista、Windows 7、Windows 8、Windows Server、Windows CE、Unix、Linux、SunOS、Solaris、VxWorks或其它兼容操作系统。在其它实施例中,计算设备可以被专用操作系统控制。操作系统除其它的之外控制并调度计算机进程以用于执行,执行存储器管理,提供文件系统、联网、I/O服务,并提供用户界面功能性,诸如图形用户界面(“GUI”)。
本文所述的上述系统具有许多用途,并且可在许多情形中使用。例如,可在用于向移动设备的用户递送广告的系统中使用本文所述的方法和系统。例如,用户可以在访问地点、读取出版物或观看电影时识别感兴趣的项目、主题、风景或位置。使用本文中的发明系统和方法,用户可以拍摄项目、风景或感兴趣的任何东西的快照,并且生成图像。可以捕捉包括周围区域且处于任何视角的图像。该系统然后从图像提取特征,生成包括对应于图像中的至少某些的特征描述符的查询,并将用于基于所提取特征的搜索的查询提交给远程服务器。可显示给用户的附加信息可被免费地提供给用户,或者信息中的某些或全部可采取付费广告的形式。在某些情形中,一个实体可提供用于发送关于被发送给用户的产品或服务的附加信息的搜索服务和收费供应商。在某些情形中,可针对使用上述方法和系统来检索关于产品或服务的信息的能力对移动设备用户收费。
在前述说明书中,已参考对于不同的实施方式而言可以不同的许多特定细节来描述实施例。可以进行所述实施例的某些变更和修改。根据在本文中公开的本发明的说明书和实施的考虑,其它实施例对于本领域的技术人员而言可以是显而易见的。意图在于本说明书和示例仅仅被视为示例性的,由以下权利要求来指示本发明的真实范围和精神。意图还在于图中所示的步骤序列仅仅用于说明性目的,并且并不意图局限于任何特定的步骤序列。同样地,本领域的技术人员可以认识到,可以在实现该方法的同时按照不同的顺序执行这些步骤。

Claims (10)

1.一种用于识别并向移动设备传输关于由用户用移动设备获得的查询图像的附加信息的服务器,该服务器包括:
参考图像数据库,其存储与一个或多个参考图像相关联的一个或多个参考特征描述符,其中,至少一个参考图像特征被使用多个函数映射到参考图像数据库中的多个地址;以及
用于执行一个或多个模块的处理器,所述一个或多个模块包括:
查询接收模块,其用于从移动设备接收包括一个或多个查询图像特征描述符的第一查询;
候选特征描述符检索模块,其用于:
针对所述一个或多个查询图像特征描述符中的每一个使用所述多个函数来计算多个地址;以及
针对所述多个地址中的每一个,计算存储在参考图像数据库的预定义区域内的重复参考图像特征描述符的数目;
候选图像检索模块,其用于:
基于计算出的重复参考图像特征描述符的数目来选择一组参考图像特征描述符;
图像匹配模块,其用于:
将所选的一组参考图像特征描述符与一个或多个查询图像特征描述符相比较以确定任何参考图像是否与查询图像匹配;
所述服务器进一步被配置成执行步骤:
如果确定了匹配参考图像,则从注释数据库获得与所述至少一个匹配参考图像相关联的附加信息;以及
将附加信息传输到移动设备以便显示为关于用户感兴趣的至少一个项目的附加信息。
2.权利要求1的服务器,其中,所述处理器被进一步配置成执行散列表管理模块。
3.权利要求2的服务器,其中,所述散列表管理模块还包括用于处理散列冲突的冲突解决模块;以及溢出处理模块,其用于处理新数据点(例如,一组特征描述符)与散列表中的地址的关联。
4.一种用于识别并显示关于由用户用移动设备获得的第一查询图像的附加信息的计算机实现方法,该方法包括:
从移动设备接收第一查询,其包括与被包括在第一查询图像中的用户感兴趣的至少一个项目相对应的一个或多个查询图像特征描述符;
响应于接收到第一查询,执行相似性搜索,其中,该相似性搜索包括:
针对查询图像特征描述符中的每一个,使用多个函数来计算多个地址;
针对所述多个地址中的每一个,计算存储在数据库的某个区域内的重复参考图像特征描述符的数目,并且其中,至少一个参考图像特征被使用所述多个函数映射到参考图像数据库中的多个地址;以及
基于与所述多个地址中的每一个相关联的参考图像数据库的所述某个区域内的重复参考图像特征描述符的数目来确定一个或多个候选图像,所述参考图像数据库存储一个或多个参考图像特征描述符,所述参考图像特征描述符中的每一个与至少一个参考图像相关联
将用于一个或多个候选图像的特征描述符与查询图像特征描述符相比较以确定是否存在匹配;以及
如果存在匹配,则获取与匹配相关联的附加信息;以及
向移动设备传输与匹配相关联的附加信息以便显示给用户。
5.权利要求4的计算机实现方法,
其中,与地址相关联的预定义区域内的重复参考图像特征描述符的数目反映重复参考图像特征描述符与被映射到所述地址的第一查询图像特征描述符之间的相似性程度;
并且其中,一个或多个候选图像的确定包括:
确定重复参考图像特征描述符的数目是否超过预定阈值;以及
获取与重复参考图像特征描述符相关联的一个或多个候选图像。
6.权利要求5的计算机实现方法,还包括:
从移动设备接收包括一个或多个第二查询图像特征描述符的第二查询;
将一个或多个第一查询图像特征描述符与一个或多个第二查询图像特征描述符相比较;以及
基于比较的结果:
确定不执行相似性搜索;以及
基于第一查询与存储在查询高速缓存器中的一个或多个候选图像之间的映射来获取一个或多个候选图像。
7.权利要求4的方法,其中
其中,参考图像特征描述符基于包括多个桶的散列表而被存储在数据库内,每个桶与地址相关联;
其中,所述散列表与散列函数族相关联,所述散列函数族将一个特征描述符数据点映射到与所述多个桶之中的第一组桶相关联的第一组地址,并且所述第一组桶中的每一个存储一个第二特征描述符数据点。
8.一种用于识别并显示关于由用户用移动设备获得的图像的附加信息的计算机实现方法,该方法包括:
使用移动设备来获取至少一个图像,所述至少一个图像包括用户感兴趣的至少一个项目,用户希望接收到关于该项目的附加信息;
从所述至少一个图像提取一个或多个第一特征,所述一个或多个第一特征对应于感兴趣的至少一个项目;
生成表示一个或多个第一特征的第一指纹;
向服务器传输包括第一指纹的第一查询,所述指纹允许服务器获取一个或多个第二图像,并且基于已基于第一查询选择的一个或多个第二图像来确定服务器是否具有关于用户感兴趣的至少一个项目的附加信息;以及
从服务器接收关于用户感兴趣的所述至少一个项目的附加信息并将该附加信息显示给用户。
9.权利要求8的计算机实现方法,还包括:
经由移动设备上的第一接口接收第一图像的一部分的用户选择;
其中,从所述至少一个图像提取一个或多个第一特征包括提取对应于所选部分的一个或多个第一特征;以及
其中,生成第一指纹包括生成表示从第一图像的所选部分提取的一个或多个第一特征的第一指纹。
10.一种用于识别并显示关于感兴趣对象的附加信息的设备,该设备包括用于执行一个或多个模块的处理器,所述一个或多个模块包括:
图像获取模块,其用于获取包括感兴趣项目的图像;
特征描述符生成模块,其用于提取与图像相关联的一个或多个图像特征量;
指纹生成模块,其用于:
基于所提取的一个或多个图像特征量而生成查询指纹;以及
将查询指纹传输给服务器,其中,所述查询指纹允许服务器基于查询指纹在存储一个或多个参考特征描述符的数据库中执行相似性搜索,并且基于相似性搜索的结果而获取与一个或多个参考特征描述符中的至少一个相关联的一个或多个候选图像;
图像匹配模块,其用于确定所述图像是否与一个或多个候选图像匹配;以及
附加数据库模块,其用于基于图像匹配模块处的确定而获取与一个或多个候选图像中的至少一个相关联的附加信息以便显示为关于用户感兴趣的所述至少一个项目的附加信息。
CN201580018985.3A 2014-02-10 2015-02-10 用于基于图像特征的识别的系统和方法 Active CN106462728B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201461937859P 2014-02-10 2014-02-10
US61/937859 2014-02-10
PCT/IB2015/000908 WO2015125025A2 (en) 2014-02-10 2015-02-10 Systems and methods for image-feature-based recognition

Publications (2)

Publication Number Publication Date
CN106462728A true CN106462728A (zh) 2017-02-22
CN106462728B CN106462728B (zh) 2019-07-23

Family

ID=53488361

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580018985.3A Active CN106462728B (zh) 2014-02-10 2015-02-10 用于基于图像特征的识别的系统和方法

Country Status (14)

Country Link
US (6) US9122706B1 (zh)
EP (1) EP3066591B1 (zh)
JP (1) JP6208898B2 (zh)
KR (2) KR101826815B1 (zh)
CN (1) CN106462728B (zh)
AU (1) AU2015220463B2 (zh)
BR (1) BR112016018389A8 (zh)
CA (1) CA2939161C (zh)
DK (1) DK3066591T3 (zh)
ES (1) ES2752728T3 (zh)
MX (2) MX360261B (zh)
PL (1) PL3066591T4 (zh)
SG (1) SG11201606424XA (zh)
WO (1) WO2015125025A2 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111738194A (zh) * 2020-06-29 2020-10-02 深圳力维智联技术有限公司 一种用于人脸图像相似性的评价方法和装置
CN115908280A (zh) * 2022-11-03 2023-04-04 广东科力新材料有限公司 基于数据处理的pvc钙锌稳定剂的性能确定方法及系统

Families Citing this family (74)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101404596B1 (ko) * 2012-05-03 2014-06-11 (주)엔써즈 이미지에 기반하여 동영상 서비스를 제공하는 시스템 및 방법
US9720974B1 (en) 2014-03-17 2017-08-01 Amazon Technologies, Inc. Modifying user experience using query fingerprints
US10026107B1 (en) 2014-03-17 2018-07-17 Amazon Technologies, Inc. Generation and classification of query fingerprints
US9760930B1 (en) * 2014-03-17 2017-09-12 Amazon Technologies, Inc. Generating modified search results based on query fingerprints
US9747628B1 (en) 2014-03-17 2017-08-29 Amazon Technologies, Inc. Generating category layouts based on query fingerprints
US9727614B1 (en) 2014-03-17 2017-08-08 Amazon Technologies, Inc. Identifying query fingerprints
US10304111B1 (en) * 2014-03-17 2019-05-28 Amazon Technologies, Inc. Category ranking based on query fingerprints
US10572215B1 (en) * 2014-03-31 2020-02-25 Amazon Technologies, Inc. Extendable architecture for augmented reality system
US20150363660A1 (en) * 2014-06-12 2015-12-17 Asap54.Com Ltd System for automated segmentation of images through layout classification
US20170135647A1 (en) * 2014-06-27 2017-05-18 Ohio University Systems Using Fingerprint images as Diagnostic Detection systems for Type 2 Diabetes
JP6432182B2 (ja) * 2014-07-02 2018-12-05 富士通株式会社 サービス提供装置、方法、及びプログラム
US9760792B2 (en) * 2015-03-20 2017-09-12 Netra, Inc. Object detection and classification
US9922271B2 (en) * 2015-03-20 2018-03-20 Netra, Inc. Object detection and classification
US10015541B2 (en) * 2015-03-25 2018-07-03 Cisco Technology, Inc. Storing and retrieval heuristics
WO2016178048A1 (en) * 2015-05-06 2016-11-10 Essilor International (Compagnie Generale D'optique) Frame recognition system and method
US10839006B2 (en) * 2015-05-18 2020-11-17 Oath Inc. Mobile visual search using deep variant coding
WO2017011742A1 (en) 2015-07-15 2017-01-19 Chappy, Inc. Systems and methods for screenshot linking
JP2017041022A (ja) * 2015-08-18 2017-02-23 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
ITUB20153277A1 (it) * 2015-08-28 2017-02-28 St Microelectronics Srl Procedimento per ricerche visuali, sistema, apparecchiatura e prodotto informatico corrispondenti
US10929666B2 (en) * 2015-09-11 2021-02-23 Christophe BOSSUT System and method for providing augmented reality interactions over printed media
US10157333B1 (en) 2015-09-15 2018-12-18 Snap Inc. Systems and methods for content tagging
RU2613848C2 (ru) * 2015-09-16 2017-03-21 Общество с ограниченной ответственностью "Аби Девелопмент" Выявление "нечетких" дубликатов изображений с помощью троек смежных оцененных признаков
US10169684B1 (en) 2015-10-01 2019-01-01 Intellivision Technologies Corp. Methods and systems for recognizing objects based on one or more stored training images
CN105893405A (zh) * 2015-11-12 2016-08-24 乐视云计算有限公司 重复视频检测方法和系统
GB2548316A (en) * 2015-12-01 2017-09-20 Zaptobuy Ltd Methods and systems for identifying an object in a video image
US10321167B1 (en) 2016-01-21 2019-06-11 GrayMeta, Inc. Method and system for determining media file identifiers and likelihood of media file relationships
US9773194B2 (en) * 2016-01-28 2017-09-26 Longsand Limited Select type of test image based on similarity score to database image
US9906831B2 (en) * 2016-02-24 2018-02-27 Sorenson Media, Inc. Fingerprinting media content using hashing
US10360905B1 (en) 2016-03-11 2019-07-23 Gracenote, Inc. Robust audio identification with interference cancellation
US10496694B2 (en) 2016-03-21 2019-12-03 Hong Kong Applied Science and Technology Research Institute Company Limited Rating and advising for selection of augmented reality markers
CN105894541B (zh) * 2016-04-18 2019-05-17 武汉烽火众智数字技术有限责任公司 一种基于多视频碰撞的运动目标检索方法及系统
US10740385B1 (en) * 2016-04-21 2020-08-11 Shutterstock, Inc. Identifying visual portions of visual media files responsive to search queries
US20170323149A1 (en) * 2016-05-05 2017-11-09 International Business Machines Corporation Rotation invariant object detection
WO2018002677A1 (en) * 2016-06-27 2018-01-04 Balázs Ferenc István Method for 3d reconstruction with a mobile device
US11334768B1 (en) 2016-07-05 2022-05-17 Snap Inc. Ephemeral content management
US12020174B2 (en) 2016-08-16 2024-06-25 Ebay Inc. Selecting next user prompt types in an intelligent online personal assistant multi-turn dialog
WO2018093438A1 (en) * 2016-08-26 2018-05-24 William Marsh Rice University Camera-based positioning system using learning
US20180068023A1 (en) * 2016-09-07 2018-03-08 Facebook, Inc. Similarity Search Using Polysemous Codes
US10860898B2 (en) * 2016-10-16 2020-12-08 Ebay Inc. Image analysis and prediction based visual search
US11748978B2 (en) 2016-10-16 2023-09-05 Ebay Inc. Intelligent online personal assistant with offline visual search database
US11004131B2 (en) 2016-10-16 2021-05-11 Ebay Inc. Intelligent online personal assistant with multi-turn dialog based on visual search
US10970768B2 (en) 2016-11-11 2021-04-06 Ebay Inc. Method, medium, and system for image text localization and comparison
WO2018091083A1 (en) * 2016-11-16 2018-05-24 Huawei Technologies Co., Ltd. Method and apparatus for determining data on a device
US10719492B1 (en) 2016-12-07 2020-07-21 GrayMeta, Inc. Automatic reconciliation and consolidation of disparate repositories
US9977990B1 (en) * 2017-01-08 2018-05-22 International Business Machines Corporation Cognitive method for visual classification of very similar planar objects
US10909371B2 (en) 2017-01-19 2021-02-02 Samsung Electronics Co., Ltd. System and method for contextual driven intelligence
EP3559804B1 (en) 2017-01-19 2024-03-06 Samsung Electronics Co., Ltd. Vision intelligence management for electronic devices
CN106730845A (zh) * 2017-02-13 2017-05-31 淘金科技投资(北京)股份有限公司 游戏方法及系统
EP3410353A1 (en) * 2017-06-01 2018-12-05 eyecandylab Corp. Method for estimating a timestamp in a video stream and method of augmenting a video stream with information
US10430686B2 (en) * 2017-07-11 2019-10-01 Verizon Patent And Licensing Inc. Systems and methods for enhancing image recognition techniques using primary and secondary foci
US11074434B2 (en) * 2018-04-27 2021-07-27 Microsoft Technology Licensing, Llc Detection of near-duplicate images in profiles for detection of fake-profile accounts
US10860647B2 (en) * 2018-09-06 2020-12-08 Gracenote, Inc. Systems, methods, and apparatus to improve media identification
CN109376256B (zh) * 2018-09-29 2021-03-26 京东方科技集团股份有限公司 图像搜索方法及装置
US10848775B2 (en) * 2018-11-02 2020-11-24 Fungible, Inc. Memory layout for JPEG accelerator
US10931958B2 (en) 2018-11-02 2021-02-23 Fungible, Inc. JPEG accelerator using last-non-zero (LNZ) syntax element
US10827191B2 (en) 2018-11-02 2020-11-03 Fungible, Inc. Parallel coding of syntax elements for JPEG accelerator
US10827192B2 (en) 2018-11-02 2020-11-03 Fungible, Inc. Work allocation for JPEG accelerator
CN109710792B (zh) * 2018-12-24 2023-02-03 西安烽火软件科技有限公司 一种基于索引的快速人脸检索系统应用
CN109815351B (zh) * 2018-12-27 2020-11-24 深圳云天励飞技术有限公司 信息查询方法及相关产品
CN109902198A (zh) * 2019-03-11 2019-06-18 京东方科技集团股份有限公司 一种以图搜图的方法、装置及应用系统
JP2020181332A (ja) * 2019-04-24 2020-11-05 株式会社Toreru 高精度類似画像検索方法、プログラム及び高精度類似画像検索装置
US10726630B1 (en) * 2019-06-28 2020-07-28 Capital One Services, Llc Methods and systems for providing a tutorial for graphic manipulation of objects including real-time scanning in an augmented reality
RU2702965C1 (ru) * 2019-08-07 2019-10-14 Общество с ограниченной ответственностью "Новотранс Актив" Система и способ идентификации железнодорожных номерных деталей по изображению их поверхностей с клеймами и знаками маркировки
CN110879987B (zh) * 2019-11-21 2023-06-09 成都东方闻道科技发展有限公司 一种识别试题作答内容的方法
CN111008297B (zh) * 2019-12-11 2023-12-15 维沃移动通信有限公司 寻址方法及服务器
US11977482B2 (en) * 2020-09-03 2024-05-07 FLC Technology Group, Inc. Hash function with pre-scrambler
CN113191300B (zh) * 2020-10-14 2024-01-26 神盾股份有限公司 用于指纹图像识别的方法、设备及计算机可读介质
CA3141974A1 (en) * 2020-12-11 2022-06-11 PatriotOne Technologies System and method for real-time multi-person threat tracking and re-identification
WO2022195323A1 (en) * 2021-03-15 2022-09-22 One Game Studio S.A.P.I De C.V. System and method to interpret a surround of a user to generate an augmented reality environment
CN113706361B (zh) * 2021-08-19 2022-04-26 兰州大学 一种基于机密计算的数字图像权属保护云系统
CN113743420B (zh) * 2021-08-26 2023-12-05 北京邮电大学 一种基于云边端协同的Web AR图像识别方法及系统
CN115204338A (zh) * 2022-07-25 2022-10-18 蚂蚁区块链科技(上海)有限公司 图形码生成方法和装置、图形码验证方法和装置
US20240143650A1 (en) * 2022-10-31 2024-05-02 Rovi Guides, Inc. Systems and methods for navigating an extended reality history
CN116386091B (zh) * 2022-11-18 2024-04-02 荣耀终端有限公司 指纹识别方法和装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101697232A (zh) * 2009-09-18 2010-04-21 浙江大学 面向近重复图像匹配的sift特征裁减方法
CN101710334A (zh) * 2009-12-04 2010-05-19 大连理工大学 基于图像哈希的大规模图像库检索方法

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8224078B2 (en) 2000-11-06 2012-07-17 Nant Holdings Ip, Llc Image capture and identification system and process
US8218873B2 (en) 2000-11-06 2012-07-10 Nant Holdings Ip, Llc Object information derived from object images
US7680324B2 (en) 2000-11-06 2010-03-16 Evryx Technologies, Inc. Use of image-derived information as search criteria for internet and other search engines
US7872669B2 (en) * 2004-01-22 2011-01-18 Massachusetts Institute Of Technology Photo-based mobile deixis system and related techniques
US7751805B2 (en) 2004-02-20 2010-07-06 Google Inc. Mobile image-based information retrieval system
US7707218B2 (en) 2004-04-16 2010-04-27 Mobot, Inc. Mobile query system and method based on visual cues
US8369655B2 (en) * 2006-07-31 2013-02-05 Ricoh Co., Ltd. Mixed media reality recognition using multiple specialized indexes
US7809722B2 (en) 2005-05-09 2010-10-05 Like.Com System and method for enabling search and retrieval from image files based on recognized information
US20080177640A1 (en) 2005-05-09 2008-07-24 Salih Burak Gokturk System and method for using image analysis and search in e-commerce
US7657126B2 (en) 2005-05-09 2010-02-02 Like.Com System and method for search portions of objects in images and features thereof
US7575171B2 (en) 2005-09-01 2009-08-18 Zvi Haim Lev System and method for reliable content access using a cellular/wireless device with imaging capabilities
US8234277B2 (en) 2006-12-29 2012-07-31 Intel Corporation Image-based retrieval for high quality visual or acoustic rendering
US7949191B1 (en) 2007-04-04 2011-05-24 A9.Com, Inc. Method and system for searching for information on a network in response to an image query sent by a user from a mobile communications device
US8407744B2 (en) 2007-06-19 2013-03-26 Verizon Patent And Licensing Inc. Snapshot recognition for TV
US8315423B1 (en) 2007-12-28 2012-11-20 Google Inc. Providing information in an image-based information retrieval system
US8406531B2 (en) 2008-05-15 2013-03-26 Yahoo! Inc. Data access based on content of image recorded by a mobile device
US20120030553A1 (en) 2008-06-13 2012-02-02 Scrible, Inc. Methods and systems for annotating web pages and managing annotations and annotated web pages
US8195689B2 (en) * 2009-06-10 2012-06-05 Zeitera, Llc Media fingerprinting and identification system
US8385971B2 (en) 2008-08-19 2013-02-26 Digimarc Corporation Methods and systems for content processing
US8483519B2 (en) 2008-12-22 2013-07-09 Ipointer Inc. Mobile image search and indexing system and method
US9195898B2 (en) * 2009-04-14 2015-11-24 Qualcomm Incorporated Systems and methods for image recognition using mobile devices
US9135277B2 (en) 2009-08-07 2015-09-15 Google Inc. Architecture for responding to a visual query
US8352465B1 (en) 2009-09-03 2013-01-08 Google Inc. Grouping of image search results
US8811742B2 (en) 2009-12-02 2014-08-19 Google Inc. Identifying matching canonical documents consistent with visual query structural information
US8548255B2 (en) 2010-04-15 2013-10-01 Nokia Corporation Method and apparatus for visual search stability
US20110258526A1 (en) 2010-04-20 2011-10-20 International Business Machines Corporation Web content annotation management web browser plug-in
US9015139B2 (en) 2010-05-14 2015-04-21 Rovi Guides, Inc. Systems and methods for performing a search based on a media content snapshot image
US20120224768A1 (en) 2011-03-04 2012-09-06 Olive Root, LLC System and method for visual search
US8553981B2 (en) 2011-05-17 2013-10-08 Microsoft Corporation Gesture-based visual search
WO2012177194A1 (en) 2011-06-21 2012-12-27 Telefonaktiebolaget L M Ericsson (Publ) Caching support for visual search and augmented reality in mobile networks
US8793274B2 (en) 2011-08-08 2014-07-29 Lei Yu System and method for auto content recognition
US9311494B2 (en) 2011-12-01 2016-04-12 Hitachi, Ltd. Secure search method and secure search device
US20130260360A1 (en) 2012-03-27 2013-10-03 Sony Corporation Method and system of providing interactive information
JP5945823B2 (ja) * 2012-06-06 2016-07-05 国立大学法人 熊本大学 画像処理方法および画像処理装置
US20140188648A1 (en) 2012-12-28 2014-07-03 Wal-Mart Stores, Inc. Searching Digital Receipts At A Mobile Device
US9633272B2 (en) 2013-02-15 2017-04-25 Yahoo! Inc. Real time object scanning using a mobile phone and cloud-based visual search engine
US20140240523A1 (en) 2013-02-22 2014-08-28 T-Mobile Usa, Inc. Information delivery based on image data
US9323785B2 (en) 2013-03-06 2016-04-26 Streamoid Technologies Private Limited Method and system for mobile visual search using metadata and segmentation

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101697232A (zh) * 2009-09-18 2010-04-21 浙江大学 面向近重复图像匹配的sift特征裁减方法
CN101710334A (zh) * 2009-12-04 2010-05-19 大连理工大学 基于图像哈希的大规模图像库检索方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
刘婉 等: "基于高维局部特征和LSH索引的图像检索技术", 《电子设计工程》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111738194A (zh) * 2020-06-29 2020-10-02 深圳力维智联技术有限公司 一种用于人脸图像相似性的评价方法和装置
CN111738194B (zh) * 2020-06-29 2024-02-02 深圳力维智联技术有限公司 一种用于人脸图像相似性的评价方法和装置
CN115908280A (zh) * 2022-11-03 2023-04-04 广东科力新材料有限公司 基于数据处理的pvc钙锌稳定剂的性能确定方法及系统

Also Published As

Publication number Publication date
AU2015220463B2 (en) 2017-06-01
MX353871B (es) 2018-02-01
JP2017513150A (ja) 2017-05-25
US20200234047A1 (en) 2020-07-23
CA2939161A1 (en) 2015-08-27
US9946932B2 (en) 2018-04-17
US20150227796A1 (en) 2015-08-13
US9122706B1 (en) 2015-09-01
WO2015125025A2 (en) 2015-08-27
KR101826815B1 (ko) 2018-02-07
BR112016018389A2 (zh) 2017-08-08
EP3066591A2 (en) 2016-09-14
ES2752728T3 (es) 2020-04-06
BR112016018389A8 (pt) 2022-06-28
US20160110605A1 (en) 2016-04-21
KR20180014257A (ko) 2018-02-07
CA2939161C (en) 2017-05-09
PL3066591T3 (pl) 2020-04-30
KR20160144354A (ko) 2016-12-16
KR101887002B1 (ko) 2018-09-10
US10521667B2 (en) 2019-12-31
EP3066591B1 (en) 2019-07-10
US20210397838A1 (en) 2021-12-23
US10929671B2 (en) 2021-02-23
DK3066591T3 (da) 2019-10-21
MX360261B (es) 2018-10-26
SG11201606424XA (en) 2016-09-29
AU2015220463A1 (en) 2016-09-08
PL3066591T4 (pl) 2020-04-30
WO2015125025A3 (en) 2015-12-23
MX2016010267A (es) 2017-04-27
JP6208898B2 (ja) 2017-10-04
CN106462728B (zh) 2019-07-23
US9230172B2 (en) 2016-01-05
US20190034732A1 (en) 2019-01-31
US20150227557A1 (en) 2015-08-13

Similar Documents

Publication Publication Date Title
CN106462728B (zh) 用于基于图像特征的识别的系统和方法
US8254684B2 (en) Method and system for managing digital photos
RU2668717C1 (ru) Генерация разметки изображений документов для обучающей выборки
US20130202213A1 (en) Method and system for fast and robust identification of specific product images
WO2013159722A1 (en) Systems and methods for obtaining information based on an image
JP4941513B2 (ja) 検索方法、検索プログラム及び検索システム
CN102855298A (zh) 图像检索方法及系统
Al-asadi et al. Object based image retrieval using enhanced SURF
Bhattacharjee et al. Query-adaptive small object search using object proposals and shape-aware descriptors
Maigrot et al. Tampering detection and localization in images from social networks: A CBIR approach
US20220414393A1 (en) Methods and Systems for Generating Composite Image Descriptors
Chen et al. Mobile visual search from dynamic image databases
US20220180581A1 (en) Neural network based detection of image space suitable for overlaying media content
Peng et al. The knowing camera 2: recognizing and annotating places-of-interest in smartphone photos
EP3152701A1 (en) Method of and system for determining and selecting media representing event diversity
Thakur et al. A MOBILE APP FOR REMOVING DUPLICATE MULTIMEDIA IMAGES.
Aboobacker et al. Instant Video Search
Patel VISUAL SEARCH APPLICATION FOR ANDROID
Vetro Industry and Standards

Legal Events

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