CN106462774A - 通过规范形状的对象摄取、系统和方法 - Google Patents
通过规范形状的对象摄取、系统和方法 Download PDFInfo
- Publication number
- CN106462774A CN106462774A CN201580020006.8A CN201580020006A CN106462774A CN 106462774 A CN106462774 A CN 106462774A CN 201580020006 A CN201580020006 A CN 201580020006A CN 106462774 A CN106462774 A CN 106462774A
- Authority
- CN
- China
- Prior art keywords
- shape
- key frame
- data
- model
- pov
- 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
Links
Landscapes
- Image Analysis (AREA)
- Processing Or Creating Images (AREA)
Abstract
提出了一种对象识别摄取系统。对象摄取系统可能地在不受控背景下捕捉对象的图像数据。分析图像数据以确定一个或多个先验已知规范形状对象是否与在图像数据中表示的对象匹配。规范形状对象还包括一个或多个参考PoV,其指示从其分析具有相应形状的对象的视点。对象摄取引擎将规范形状对象连同图像数据一起组合以创建对象的模型。引擎从参考PoV生成期望的模型PoV的集合,并且然后从每个模型PoV生成识别描述符。将描述符、图像数据、模型PoV或其它上下文相关信息组合成具有允许其它计算设备在稍后的时间识别对象的充足信息的关键帧束。
Description
相关申请的交叉引用
本申请要求2015年2月16日提交的美国申请14/623,435的优先权,并且本申请要求2014年2月14日提交的美国申请61/940,320的优先权。在本文中讨论的这些和所有其它外来材料都被整体地通过引用结合到本文中。在结合的参考文献中的术语的定义或使用与在本文中提供的术语的定义不一致或相反的情况下,适用在本文中提供的术语的定义,并且参考文献中的该术语的定义不适用。
技术领域
本发明的领域是对象识别技术。
背景技术
以下描述包括在理解本发明时可能有用的信息。并不承认在本文中提供的任何信息是现有技术或与当前要求保护的发明有关,或者具体地或隐含地提及的任何公开是现有技术。
对象识别系统要求已知对象的大型数据库,其中,数据库存储借由其设备可以用来识别相应对象的属性或参数,通常是图像属性。遗憾的是,填充此类数据库是非常昂贵、耗时的过程。例如,为了构建足够的信息以识别中等复杂的对象(例如玩具),必须在受控背景(controlled setting)下从多个不同的视点对对象进行成像和分析。然后可以将来自各种视图的图像特性存储在对象识别数据库中以供未来消费。这种方法产生针对对象摄取的瓶颈,因为每次智能摄取一个对象。
存在利用图像特性的基于图像的对象识别技术的许多示例。例如,授予Heide的1994年4月6日提交的题为“Recognition System with an Automated Development Tool”的美国专利5,581,634描述了使用树状结构来识别对象并为开发者提供用以生成新识别器的工具。同样地,共同所有美国专利7,016,532;7,477,780;7,680,324以及7,565,008也描述了用于识别对象的技术。这些及其它参考文献相对于基于图像特性来识别对象是有用的,但未能提供到识别基础设施中的容易的自动化对象摄取,尤其是对于不受控背景下的商品对象而言。例如,在公众背景下摄取对象由于对象在此类背景下的变化形状而将是非常困难的。
某些相对于尝试通过基于形状的搜索来识别搜索引擎中的对象而发展。例如,授予Peurach等人的1997年5月21日提交的题为“Pose Determination and Tracking byMatching 3D Objects to a 2D Sensor”的US 6,173,066讨论了基于几何描述来构造查询。与道路标志有关的另一示例包括授予Klefenz的2007年12月18日提交的题为“Device,Method,and Computer Program for Identifying a Traffic Sign in an Image”的美国专利8,170,340。Klefenz依赖于边缘检测来识别标志。另一示例包括授予Ramani等人的2004年1月23日提交的题为“Methods,Systems,and Data Structures for PerformingSearches on Three Dimensional Objects”的美国专利8,429,174。Ramani描述了使用3D形状(可能基于用户定义的相似性准则)来找到已知对象。
基于形状的对象分析的其它示例包括授予Sosnov等人、2005年9月20日提交的题为“Apparatus for and Method of Producing Graphics Contents and Computer-Readable Recording Medium Storing Computer Program for Executing the Method”的美国专利申请公开2006/0122999;授予Kobayashi的2007年8月27日提交的题为“Supporting Apparatus,Design Supporting Method,and CAD System”的美国专利申请公开2008/0103734;授予Akatsuka等人的2009年8月12日提交的题为“Feature MatchingMethod”的美国专利申请公开2010/0092093;以及授予Lewis等人的2013年3月14日提交的题为“Methods and Systems for Identifying,Marking,and Inventorying LargeQuantities of Unique Surgical Instruments”的美国专利申请公开2013/0336554。
虽然上述基于形状的搜索技术相对于在数据库中搜索对象而言是有用的,但其仍未解决通过商品对象摄取进行的数据库构造。在某种程度上,授予Miller的2004年3月5日提交的题为“Generation of Image Database for Multifeatured Objects”的美国专利7,643,683通过使用同一一般类型的对象来生成尽可能多的图像(其被用来出于识别的目的填充图像数据库)而在数据库构造方面取得了一定的更多进展。Miller设法通过使用来自一定视点范围的2D投影来生成3D表示。Miller还使用与预期内部移动相对应的3D表示的小的或大的畸变以便生成表示的投影。Miller的数据库包括图像,其对如所讨论的那样生成化身有用。然而,此类数据库相对于经由具有有限存储器容量的设备(例如智能电话)进行的“场内(in-the-field)”对象识别而言不那么有用。仍需要对象识别信息的紧凑式数据库。
在略微类似于Miller的方法中,可以使用形状信息来帮助通过从被成像对象构建对象模型而摄取对象信息。例如,授予Hunt等人的2012年5月4日提价的题为“VolumeDimensioning Systems and Methods”的美国专利申请公开2013/0293539描述了围绕着三维对象构建引线框架封装。在某些情况下,从信号视点出发,不足的信息是可利用的,因此从其它视点出发获得附加数据以便选择几何原语以将引线框架模型拟合到对象。使用形状来生成对象数据库的附加示例包括授予Hager等人的2006年6月13日提交的题为“Systemand Method for Recognition in 2D Images Using 3D Class Models”的美国专利7,929,775。Hager讨论了获取对象的3D图像,然后将相应的对象模型置于规范几何外形。虽然Hager设法创建对象数据库,但Hager仍要求受控条件,其在不受控摄取背景下将该技术置于不熟练技术人员的范围之外。构建对象模型的另一示例包括授予Se等人的2011年8月15日提价的题为“Method and Apparatus for Producing 3D model of an Environment”的美国专利8,532,368。Se讨论了从立体图像生成对象的逼真3D模型。
即使使用形状和对象模型来构建对象数据库,某些对象也未能拟合先验规范几何外形。在这种情况下,必须改变该外形以拟合对象。按此方式,在Chen等人在SIGGRAPH Asia2013,2013年11月19日–22日,中的论文“3-Sweep:Extracting Editable Objects from aSingle Photo”中描述了朝着从照片提取对象的进一步前进。Chen描述了允许人类将组件拍摄到对象的图像,其然后允许提取3D对象。遗憾的是,这种技术仍非常严重地依赖于人类交互而不容易自动化。在略微类似的风格中,授予Vaddadi等人的2012年7月27日提交的题为“Methods and Systems for Capturing and Moving 3D Models and True-ScaleMetadata of Real World Objects”的美国专利申请公开还讨论了基于用户输入和捕捉的图像数据来生成模型。授予Adeyoola等人的2012年8月22日公开、题为“ComputerImplemented Methods and Systems for Generating Virtual Body Models forGarment Fit Visualization”的英国专利申请公开GB 2388237也讨论了使形状变化畸变。Adeyoola描述了生成虚拟人体模型,其中可以将衣服的图像与虚拟人体模型组合。公开的技术提供了对如何基于图像数据和几何外形来构造对象模型的洞察。此类模型过于资源密集而不能在现场管理和使用。此外,场中的设备要求紧凑的识别数据以确定场中的被成像对象是否与对象识别数据集中的已知对象匹配。
授予Hager等人的2005年6月22日提交的题为“System and Method for 3DObject Recognition Using Range and Intensity”的美国专利申请公开2005/0286767通过使用描述符来识别对象而进一步发展。Hager描述了获取场景的图像并将来自场景的描述符与已知模型的描述符比较以识别场景内的对象。描述符提供快速的对象识别。此外,必须在对象信息的摄取期间编译描述符的数据库。按此方式,努力已指向基于对象模型来构建描述符信息。捕捉3D对象信息的一个示例包括授予Kleinhorst等人的2008年11月25日提交的题为“Method and System for Three-Dimensional Object Recognition”的国际专利申请公开WO2009/069071,其讨论了从对象的多个视图构建对象模型,其中,使用2D特征描述符和照相机的已知视图来计算3D特征描述符。
Kleinhorst提供了从照相机的已知视点出发生成描述符。然而,针对商品对象的摄取,照相机的视点可能不是已知或可计算的,即使形状信息是可用的也是如此。因此,仍需要确定应从哪个视点出发导出对象识别信息。当对象模型可能偏离已知形状时情况尤其如此。此外,仍需要可以通过其向已知对象的对象识别数据库中快速地摄取大量普通或商品对象的系统和方法。
本文中的所有出版物被通过引用结合到本文中,达到如同每个单独的出版物或专利申请被具体地且单独地指示为被通过引用结合一样的程度。在结合的参考文献中的术语的定义或使用与在本文中提供的术语的定义不一致或相反的情况下,适用在本文中提供的术语的定义,并且参考文献中的该术语的定义不适用。
发明内容
本发明主题提供了其中可以使用规范形状将现实世界对象摄取到对象识别数据库中的装置、系统和方法。本发明主题的一个方面包括具有规范形状数据库和对象摄取引擎的对象识别摄取系统。该规范形状数据库被编程为执行存储一个或多个形状对象的步骤,其中,形状对象表示可管理数据对象。可以认为每个形状将表示已知规范形状或对象模板;例如,球形、圆柱体、金字塔、杯子、运载工具或其它类型的形状。此外,形状对象包括反应其相应形状的各方面的几何属性,例如半径、长度、宽度或其它几何特征。特别注意,形状对象还包括一个或多个参考视点(PoV),其指示可以从其分析具有相应形状的对象的优选角度。
可以将对象摄取引擎与规范形状数据库耦合并编程为执行履行摄取对象信息以填充对象识别数据库的作用或职责的步骤。引擎获得包括感兴趣目标对象的数字表示的图像数据。引擎进一步从图像数据导出对象的一个或多个边缘,可能通过执行一个或多个边缘检测算法的实现。每个导出边缘包括关于边缘的性质的几何信息(例如,半径、长度、边缘像素、边缘线、边缘描述符等)。引擎可以使用关于边缘集合的信息来从规范形状数据库获得一组形状对象作为结果集合。在某些实施例中,使用边缘几何信息来识别具有与边缘集合相容或互补的形状属性的形状对象。选择结果集合中的形状对象中的至少一个作为用于构建目标对象的对象模型的候选形状对象。因此,引擎可以继续通过基于选定形状和图像数据来生成目标对象的一个或多个对象模型而分析目标对象。例如,形状的几何属性可以被调整或者采取与对象有关的特定值,并且可以使用对象的图像数据对对象模型进行结构化和/或描绘。此外,引擎被编程为执行使用选定形状的参考PoV来确定应从哪个PoV分析对象模型以生成关键帧信息的步骤。引擎使用参考PoV来导出一组模型关键帧PoV,可能基于将被用于生成关键帧的一个或多个规则或对象对称。此外,引擎将来自对象模型的描述符对象模型实例化,其中,描述符模型包括在对象模型内或对象模型上且相对于模型关键帧PoV具有各位置的识别算法描述符(例如,SIFT、FREAK、FAST等)。根据描述符对象模型,引擎进一步编译一个或多个关键帧束,其可以被其它设备用来识别目标对象。该关键帧束可以包括来自相应关键帧PoV的对象模型的图像、与关键帧PoV有关的描述符、法线矢量或其它识别信息中的一个或多个。关键帧束可以被存储在对象识别数据库中以便当需要该关键帧束以识别目标对象时被其它设备消耗。此外,可以根据期望使关键帧束与对象信息、地址、内容信息、应用程序、软件、命令或其它类型的媒体相关。
根据优选实施例的以下详细描述以及其中相同附图标记表示相同部件的附图,本发明主题的各种目的、特征、方面和优点将变得更加显而易见。
附图说明
图1呈现对象识别摄取生态系。
图2提供了如何处理对象数据以产生关键帧束的概观。
图3图示出使用某些实施例的对象摄取系统来构造对象识别数据库的过程。
具体实施方式
遍及以下讨论,将进行关于服务器、服务、接口、引擎、模块、客户端、对端、门户、平台或由计算设备形成的其它系统的许多参考。应认识到的是此类术语的使用被认为表示具有被配置成执行存储在计算机可读有形、非临时介质(例如,硬驱、固态驱动器、RAM、闪存、ROM等)上的软件指令的至少一个处理器(例如,ASIC、FPGA、DSP、x86、ARM、ColdFire、GPU、多核处理器等)的一个或多个计算设备。例如,服务器可以包括一个或多个计算机,其以将履行所述角色、职责或功能的方式充当网络服务器、数据库服务器或其它类型的计算机服务器。应进一步认识到的是公开的基于计算机的算法、过程、方法或其它类型的指令集可以被体现为计算机程序产品,其包括存储促使处理器执行公开步骤的指令的非临时、有形计算机可读介质。各种服务器、系统、数据库或接口可以使用标准化协议或算法来交换数据,可能基于HTTP、HTTPS、AES、公钥-私钥交换、网络服务SPI、已知金融交易协议或其它电子信息交换方法。可以通过分组交换网、电路交换网、因特网、LAN、WAN、VPN或其它类型的分组交换网来执行数据交换。
如在本文中的描述中和遍及随后的权利要求所使用的,当系统、设备、引擎或模块被描述为被配置成执行一组步骤或功能时,“被配置成”或“被编程为”的意义被定义为一个或多个处理器被一组软件指令编程为执行步骤或功能的集合。
应认识到的是公开的对象识别系统提供许多有利的技术效果。系统使得能够自主地(即,在不需要人类干预的情况下)且在不受控的场内背景下执行对象摄取。因此,作为在执行对象摄取时必须在受控背景下创建对象的新图像数据的替代,某些实施例的对象识别系统可以利用对象的先验、现有图像数据(例如,现有电影、图片等)来构建对象数据库。另外,某些实施例的对象识别系统允许用新的信息(例如,来自存在于对象数据库中的对象的新图像数据)来更新对象数据库,从而随时间推移而连续地改善对象识别的准确度。
以下讨论提供了本发明主题的许多示例性实施例。虽然每个实施例表示本发明元素的单个组合,但认为本发明主题将包括公开元素的所有可能组合。因此,如果一个实施例包括元素A、B和C,并且第二实施例包括元素B和D,则也认为本发明主体将包括A、B、C或D的其它剩余组合,即使并未明确地公开。
如本文所使用的,并且除非上下文另外规定,术语“被耦合到”意图包括直接耦合(其中被相互耦合的两个元件相互接触)和间接耦合(其中至少一个附加元件位于两个元件之间)两者。因此,术语“被耦合到”和“与...耦合”被以同义词方式使用。
在某些实施例中,应将被用来描述并要求保护本发明主题的某些实施例的表示成分的数量、诸如浓度之类的性质、反应条件等的数字理解为在某些情况下被用术语“大约”进行修饰。因此,在某些实施例中,在编写的描述和所附权利要求中阐述的数值参数是可以根据特定实施例设法获得的期望性质而改变的近似值。在某些实施例中,应根据所报告的有效数字的数目并通过引用普通四舍五入技术来理解数值参数。尽管阐述本发明主题的某些实施例的宽泛范围的数值范围和参数是近似值,但在特定示例中阐述的数值值被尽可能精确地报告。在本发明主题的某些实施例中提出的数值值可包含必然从在其各测试测量中发现的标准偏差产生的某些误差。
如在本描述中和遍及随后的权利要求所使用的,“一”、“一个”和“该”的意义包括复数参考,除非上下文清楚地另外规定。并且,如在本文中的描述中所使用的“在...中”的意义包括“在...中”和“在...上”,除非上下文清楚地另外规定。
除非上下文相反地规定,否则应将在本文中阐述的所有范围理解为包括其端点,并且应将开放式范围解释成仅包括商业上切合实际的值。本文中的值范围的叙述仅仅意图充当单独地提及落在该范围内的每个单独值的简写方法。除非在本文中另外指明,范围内的每个单独值被结合到本说明书中,如同其在本文中被单独地叙述一样。同样地,应将所有值列表视为包括中间值,除非上下文相反地指明。
可以按照任何适当的顺序来执行本文所述的所有方法,除非在本文中另外指明或者很明显与上下文矛盾。在本文中相对于某些实施例提供的任何和所有示例或示例性语言(例如“诸如”)的使用仅仅意图更好地举例说明本发明主题,而不对另外要求保护的本发明主题的范围施加限制。不应将本说明书中的语言理解为指示对于本发明主题的实施而言必不可少的任何未要求保护要素。
不应将在本文中公开的本发明主题的替换元素或实施例的分组理解为限制。可以单独地或与在本文中使用的群组的其它成员或其它元素的任何组合的方式提及并要求保护每个群组成员。由于方便和/或取得专利的可能性的原因,可以将群组的一个或多个成员包括在群组中或者从群组删除一个或多个成员。当任何此类包括或删除发生时,在本文中认为本说明书将包含被修改的群组,因此满足在所附权利要求中使用的所有Markush群组的编写描述。
公开的发明主题的焦点是使得计算系统的构造或配置能够对超出人类能力范围的大量数字数据进行操作。虽然数字数据表示现实世界对象,但应认识到数字数据是现实世界对象的一个或多个数字模型而不是现实世界对象本身的表示。通过此类数字模型在计算设备的存储器中的实例化,计算设备能够以可以向计算设备的用户提供用户在没有此类工具的情况下将缺乏的实用性的方式来管理数字数据或模型。
图1图示出某些实施例的示例性对象识别摄取系统100。系统100被构造成快速地且可能以自动化方式摄取对象105中的一个或多个。由于对象105的图像是以图像数据121的形式收集的,所以某些实施例的对象摄取引擎120将图像数据121转换或另外变换成识别参数集,其可以被计算设备利用来识别场中的类似对象。具体地,对象摄取引擎120将来自规范形状数据库130的先验已知形状对象135与图像数据121组合而产生一个或多个关键帧束128。然后可以将该关键帧束128经济地发送到智能电话或其它设备。此类设备在场使用关键帧束128来在不受控背景下识别对象。
规范形状数据库130包括计算设备,其具有根据一个或多个编索引方案来存储形状对象135的存储器。形状对象135表示用于已知一般规范形状或几何原语的数据对象。示例性规范形状包括简单形状(例如,线、圆、球形、圆柱形、圆锥形、正方形、立方体、方框、柏拉图立体、三角形、金字塔形、环形等)、对象模板(例如,树、汽车、飞机、建筑物、人类、人脸、器械、玩具、组织、内脏器官等)、包括两个几何原语(例如,环形和圆筒形可以表示杯子等)的复合形状或其它形状。在某些实施例中,可以用定义生成规则(例如,楼梯、蛇等)的语法(模式)来生成每个复合形状。
每个形状对象135具有一个或多个几何属性,其表示相应形状,但通常缺少值。作为示例,球形形状对象可以具有表示半径(r)、壳厚度(t)或其它参数的属性。应注意的是球形可以是椭圆形的退化情况。圆筒形可能包括半径、高度(h)或者甚至对于其中圆筒形对象倾斜的情况而言的一个或多个角度(θ)。人脸形状对象可以具有表示眼睛、鼻子、嘴以及耳朵的位置(l)和尺寸(s)、眼睛之间的距离(d)、耳朵之间的距离(d)和/或人脸长度(l)和宽度(w)的属性。人形状对象可以包括人脸形状对象以及表示高度(h)、肩宽(sw)、躯干与腿比例(t2l比)、臂长(al)等的其它属性。饮料罐形状对象可以包括表示半径(r)和高度(h)的属性;例如圆筒形。对于具有可以相对于彼此移动的不同部分的形状(例如,人形状对象等)而言,相应形状对象还可以包括用来针对复合形状的关节处的所有自由度将一定的运动范围参数化的语法。
其它类型的形状对象包括3D对象以及包括拓扑分类(例如,球形、环形、结、孔数等)的对象。可以描述形状对象135的附加几何属性包括宽度、厚度、深度、直径、孔、孔数、侧面数目、几何中心、公式、纹理、边界框、手性(例如,左手螺旋、右手螺旋等)、周期性、取向、角节距(例如,诸如齿轮之类的螺旋对象中的圆形节距对着的角度等)、缩放比例或可以采取值的其它属性。形状对象135还可以包括可以通过其参考形状对象135的一个或多个形状属性。形状属性可以包括名称、密钥、用来存储形状对象135的索引、上下文、相关描述符(例如,边缘描述符等)或其它特征。
特别感兴趣地,每个形状对象135还包括一个或多个参考关键帧视点(“PoV”)。参考关键帧PoV表示可以从其观看形状对象的视点,并且共同地,与形状对象相关联的参考关键帧PoV定义应从哪个PoV分析形状对象(或对象或与形状对象相关联的对象的3D模型)以生成关键帧束128。每个参考关键帧PoV可以包括法线矢量、距离、控制分析期间的实际PoV的生成的一个或多个规则、对称信息或指示要如何分析相应形状对象的其它因素。
在某些实施例中,可能以树状结构(例如,KD树、spill树等)的形式用一个或多个描述符(例如,SIFT描述符、边缘描述符、关键点等)对形状对象135编索引。描述符是从规范形状数据库130中的形状对象135导出的。这种方法在其中测试图像常常不能生成与已知描述符的精确匹配的领域中是有利的。为了使用KD树状结构来实现编索引方案,通过构造用于树的根节点开始。根节点是KD数的第一层级,其中数据被阈值值分离成两半。优选地,在描述符数据集中的具有最大变化的描述符空间(维度)中的中值处进行此分离。根据这种方法,树的根节点常常表示描述符空间内的中值描述符。然后以相同的方式递归地分离数据的两半中的每一个以创建完全平衡的二叉树。在树的底部处,每个根节点对应于描述符空间(例如,SIFT描述符空间、边缘描述符空间、关键点空间等)中的一个或多个描述符。因此,给定从形状130导出的描述符数据集,可以针对每个描述符空间构造不同的KD树。在ChanopSilpa-Anan等人在2008年出版的“Optimised KD-trees for Fast Image DescriptorMatching”(其被整体地结合到本文中)中可以找到关于KD树相对于描述符的构造和使用的更透彻说明。
替换地,可以使用其它类型的索引将形状对象135存储为数据库内的记录,所述其它类型的索引可能包括位置信息、时间信息、相关上下文、相关设备属性、提供上下文过滤的“透镜”或其它方案。可以使用如先前提及的已知数据结构、文件系统来实现规范形状数据库130,其可以利用现有数据(例如,Access、PostGresSQL、Oracle等),或者甚至包括专有数据库结构。
虽然对象105在此图中被呈现为运载工具,但对象105可以表示许多可能的对象或对象类别。对象105可以包括食物项目、可购买产品、文档、人、人脸、衣服、电子设备、内脏器官、动物、植物、书籍、实验室设备、武器、飞机、地雷、炸弹、文具、文件或其它类型的对象。在更优选实施例中,对象105表示三维(“3D”)对象,可能是在不受控背景下。例如,不受控背景可以包括在货架上具有许多产品的杂货店或者具有跨停车场分布的许多汽车的停车场。在杂货店的情况下,对象105可能对应于货架上的产品,而在停车场的情况下,对象105可能对应于汽车。不受控背景还可以包括学校,并且对象105可以对应于教师中的文具、书籍、学生以及教师。不受控背景还可以包括军事训练场地,并且对象105可以对应于武器、地雷、士兵(友方和敌方两者)、路标等。不受控背景还可以包括花园,其中,对象105可以对应于不同的花、树、动物以及昆虫。其它不受控背景可以包括购物中心、旅游胜地、公路、商店、办公室、家庭、医院或其它背景。
系统100还可以包括成像传感器103,其被编程为执行捕捉对象105的图像数据121的步骤。成像传感器103可以包括能够产生对象105的数字表示的一个或多个照相机或其它传感器。示例性成像传感器103可以包括CCD传感器、CMOS传感器、NMOS传感器或其它类型的传感器。在某些实施例中,成像传感器103还包括用于生成用于图像数据121的深度信息的深度传感器,诸如或如上所述,本对象摄取系统的优点中的一个是其可以使用任何现有且容易可用的图像源来构建用于对象识别数据库140的数据集。例如,可设想的是可以使用来自 Street View的图像来构建一组对象识别数据以便识别对象识别数据库140内的位置和建筑物。此外,应认识到的是成像传感器103可以捕捉超过可见图像数据的其它类型的图像数据121。例如,在医疗背景下,成像传感器103可以包括捕捉超声波或声学图像数据的超声波换能器。图像数据121还可以采取不同的形式,包括静止图像、视频数据、医学图像、非可见光谱数据或其它图像数据模式。此外,成像传感器103可以是成像设备、例如蜂窝电话的一部分。可以包括成像传感器103的其它成像设备包括机器人、运载工具、游戏控制台、游戏接口、网络照相机、摄像机、数字式照相机、医疗设备或其它类型的设备。
在某些实施例中,图像数据121被从成像传感器103通过网络115(例如,因特网、Wi-Fi、WAN、LAN、VPN等)发送到对象摄取引擎120。在其中成像传感器103被容纳在与对象摄取引擎120相同的计算设备内的实施例中,可以认为网络115将表示内部计算总线或者甚至共享存储器位置。网络115还可以包括近程有线或无线网络(例如,Firewire、USB、WUSB、zigbee等)。例如,成像传感器103可以是头戴式护目镜(例如,GoogleMicrosoft 等)的一部分,其捕捉图像数据121并经由蓝牙连接而将图像数据121发送到充当对象摄取引擎120的蜂窝电话。
对象摄取引擎120获得表示对象105的图像数据121并开始处理图像数据121以导出关键帧束128。一旦获得了图像数据121,则对象摄取引擎120导出与图像数据121中的对象105有关的边缘122的一个或多个集合。可以通过各种技术来导出边缘122,所述各种技术包括canny边缘检测、Gabor滤波、Hough变换、脊线检测、Sobel边缘检测、Kayyali边缘检测或者已知或有待于发明的其它算法。特别注意,边缘122优选地包括与边缘的性质有关的几何信息或边缘属性,可能包括曲率、长度、半径、仿射变换信息、边缘描述符或与边缘122有关的其它信息。除边缘之外,对象摄取引擎120还可以导出关于导出的边缘—诸如边缘像素、边缘线以及边缘线集群—内和之间的关系的其它信息。使用边缘线和边缘线集群之间的维度、尺寸以及比例,对象摄取引擎120可以导出边缘描述符。在Bing Song等人的题为“Edge-Based Recognition,Systems and Methods”的共同所有美国专利序号14/623,341中可以找到关于如何可以从图像的边缘和边缘相关属性生成边缘描述符的详细说明。
在其中传感器103能够获得深度数据的情况下,摄取引擎120可以从3D表示计算2D边缘,或者直接地从图像数据121获得3D形状信息并使用该3D形状信息来查询规范形状数据库130。
鉴于图像数据121可能是二维的(“2D”),边缘122还可以包括表示深度、标度、取向或其它信息的估计的信息。例如,某些实施例的对象摄取引擎120可以对图像数据121和边缘122执行深度分析算法的实现。在被整体地结合到本文中的授予McKinnon的题为“DepthEstimate Determination,Systems and Methods”的美国公开2012/0163672中可以找到关于示例性深度分析算法的详细信息。
对象摄取引擎120可以将边缘几何信息编译成以规范形状数据库130的编索引系统为目标的一个或多个查询。该查询可以采取与用来存储形状对象135的模式互补的形式。例如,如果形状对象135被根据边缘描述符存储在存储器中的树状结构内,则查询可以表示对接受边缘描述符作为调用参数的相应API的调用。另一示例可以包括将具有边缘几何信息的SQL查询提交给在规范形状数据库130内操作的SQL引擎。因此,应将术语“查询”视为关于请求被认为无论查询的实际性质如何都与形状选择准则匹配的形状对象135。
响应于该查询,对象摄取引擎120从规范形状数据库130获得形状结果集合123。形状结果集合123包括一个或多个形状对象135,其具有满足根据来自边缘122的边缘几何信息确定的形状选择准则的形状属性。考虑其中对象105包括汽车的示例。边缘122可能包括包含高曲率的多个边缘参数。作为响应,对象摄取引擎120可能构造要求形状对象135具有支持高曲率的形状属性的查询。此外,查询可以包括在该处捕捉到图像数据121的位置,例如公路GPS位置。作为响应,形状结果集合123可以包括具有关于曲率的形状属性(例如,圆筒形、圆形、球形)且可能具有与公路上的汽车有关的形状属性(例如,运载工具模板、轮胎模板等)的形状对象135。匹配形状且可适应于与本发明主题一起使用的适当技术包括在授予Joshi的2001年1月30日提交的题为“Shape Comparison Using a RotationalVariation Metric and Applications Thereof”的US6,728,392中公开的那些。
对象摄取引擎120从形状对象135中选择至少一个目标形状对象124作为结果集合123中的候选形状对象。每个候选形状对象可以包括一个或多个分数,该分数指示出其满足形状选择准则的程度。对象摄取引擎120可以通过各种技术导出分数。形状对象分数可以按形状对象135的几何属性由多好地符合而进行加权,或者可以适应于边缘122(屈从于仿射变换)。在对不同属性和参数的调整下,每个候选形状对象可以与图像121上的边缘122对准(或覆盖在其顶部上)以用于比较。可以根据形状和边缘重叠的百分比来计算分数。此外,对象摄取引擎120还可以使用度量(例如,卡方、Malanobis距离、贝叶斯分类器结果等)中的任何一个或组合按边缘122有多接近于形状而基于非重叠部分来计算分数。边缘122与形状的边缘之间的“距离”可以基于例如曲率的差。示例性边缘分数可以是对准形状对象中的每个边缘像素到查询图像中的其最近边缘像素的和或平均距离。这常常称为距离变换。
使用如上所述的评分方案,具有单个半径的球形可能具有与来自某些PoV的图像中的蛋的边缘的可接受匹配,但是具有三个参数的椭圆形可能是更好的拟合,并且因此从对象摄取引擎120接收到比球形形状更高的分数。
此外,还可以基于根据上下文确定的权值(例如,位置、取向、温度、图像121中的其它已识别对象等)来计算和/或修改分数。在这些实施例中,规范形状数据库130中的每个形状对象与一组相关上下文(例如,位置、取向、温度、可能在附近的其它对象等)相关联。例如,汽车形状对象可以具有与位置的正关联,所述位置诸如道路、高速公路、停车场及其它附近对象,诸如其它汽车、街灯等。也就是说,如果图像数据121指示这些正关联上下文中的任何一个,则用于相应形状对象的分数将被对象摄取引擎120增加。还可设想的是不同的关联可以具有不同的权值,使得具有一个上下文(例如,位置)的正关联可以将分数增加一个比具有另一上下文(例如,附近对象)的正关联更大的量。
除正关联之外,进一步设想数据库130中的每个形状对象可以具有与另一组上下文的负关联。例如,上文所讨论的汽车形状对象可以具有与位置的负关联,所述位置诸如海洋、湖泊、城外的山等及附近对象,诸如飞机、船等。也就是说,如果图像数据121指示这些负关联上下文中的任何一个,则摄取引擎120将减小用于相应形状对象的分数。类似于正关联,还可以对这些负关联进行加权,使得具有一个上下文(例如,位置)的负关联可以将分数减小一个比具有另一上下文(例如,附近对象)的负关联更大的量。
如果形状对象135与位置、时间或者甚至描述符匹配上下文相关,则此类上下文信息可以调整用于相应形状对象135的分数。在其中对象摄取引擎120缺少相对于目标形状对象124的确定性(至少在阈值内)的某些实施例中,对象摄取引擎120可以未来请求用户交互以选择结果集合123中的哪些形状对象135将是到对象的更好拟合。
提醒读者,目标形状对象124可以包括几何信息、形状属性以及参考关键帧PoV。虽然几何属性存在于目标形状对象124内,但其仍必须采取有效值。对象摄取引擎120向可能来自边缘122或来自图像数据121的目标形状对象124的几何属性分配值。例如,屈从于仿射变换,可以使用在包括长度、曲率以及半径的边缘122中表示的曲线来向球形分配半径值且可能有标度值。半径值可以具有像素单位,但是还可以具有基于距离的标准单位(例如,米、码、英寸、厘米、微米等)的值,如果可以确定来自图像数据121的附加信息的话。在某些实施例中,可以基于估计的深度数据、对象105的已识别的已知标记(例如,标签、RFID芯片信息、条形码、水印等)或其它信息源来获得标度信息。在这种情形中,可以推断对象105的相对标度或者甚至绝对标度。
在这些实施例中的某些中,还可以为规范形状数据库130内的每个形状对象分配沿着多个维度(例如,长度、宽度、高度、圆周、半径等)的一组值或者沿着那些维度的一定值范围,表示其相应现实世界对象的典型维度/尺寸。例如,为街道标志对象分配在两米至三米之间的高度,因为实际街道标志通常具有在该范围内的高度。同样地,为汽车对象分配在1.5米与5米之间的长度,因为实际汽车通常具有在该范围内的长度。使用已知对象的这些预先分配维度/尺寸,对象摄取引擎120可以分析在图像数据121中表示的场景内的已识别对象,并且估计用于图像数据121的深度数据。另外,这些对象的维度/尺寸还帮助对象摄取引擎120导出图像121的标度并因此估计图像121内的目标对象的实际尺寸。目标对象的估计尺寸可以用来滤出不适合阈值维度和尺寸范围内的候选形状对象。例如,当估计目标对象具有0.2米的长度时,对象摄取引擎120可以滤出汽车形状对象,因为典型的汽车具有在1.5米与5米之间的长度。在某些实施例中,一旦确定了图像121的标度和深度,则摄取引擎120可以针对相对于图像121的标度而言在适当标度和尺寸内的不同候选形状对象创建边界框,并且滤出具有不能完全围绕图像121中的目标对象的边界框内的候选形状对象。然而,在某些实施例中,当在分析已识别对象时应考虑对象的某些其它属性时,对象摄取引擎120可不局限于预先分配维度。例如,如果场景内的汽车是给孩子的玩具汽车或模型车而不是实际的汽车,则可以放松汽车对象的预先分配维度以适应对象的变化。
目标形状对象124的分配几何值(给出与目标对象的最佳拟合、最佳匹配的几何值)允许对象摄取引擎120生成对象模型125中的一个或多个。对象模型125可以表示对象摄取引擎120的存储器中的3D计算机模型,其可以根据期望被显示或者另外再现(例如,以图形方式显示、在3D打印机上打印等)。此外,对象摄取引擎120可以将与边缘122相关联的图像数据121的选定部分映射到对象模型125,至少达到图像数据121的选定部分可见的程度。在某些实施例中,可以在结合到对象模型125之前处理图像数据121的选定部分。例如,可以将该部分去斑点、转换成灰阶、转换成特定色调或者执行其它操作。因此,对象模型125允许对象摄取引擎继续对象105的自动化处理和摄取。针对对象模型125的构造可以修改的一个示例性技术包括由在2013年11月19-22日的SIGGRAPH Asia 2013授予Chen等人的“3-Sweep:Extracting Editable Objects from a Single Photo”描述的那些。然而,3-Sweep技术要求至少三个用户交互以构造模型。在公开方法中,通过将边缘几何信息映射到形状的几何属性来消除对用户交互的要求。
回想目标形状对象124还包括一个或多个参考关键帧PoV。对象摄取引擎120利用目标形状对象124的参考关键帧PoV来导出从其执行进一步分析的一组模型关键帧PoV126。不存在对目标形状对象124的参考关键帧PoV与模型关键帧PoV 126之间的一一对应关系的需要,这是因为对象摄取引擎120可以利用对称信息。例如,圆筒形状对象可能包括两个参考关键帧PoV。第一PoV可能被束缚于圆筒的一端,并且包括用于由于对称性而导出用于圆筒的两端的附加模型关键帧PoV 126的规则。第二PoV可能被束缚于圆筒的侧面。再次地,采用与第二PoV相关联的对称和规则,对象摄取引擎120生成以圆筒周围的相关区域为目标的附加模型关键帧PoV 126。用于生成模型关键帧PoV 126的规则可以取决于相应形状对象135的对称、在图像数据121中观察到的特征密度、用于边缘122的几何信息、用户输入或其它因素。
对象摄取引擎120可以通过在每个模型关键帧PoV 126处模拟照相机来模拟捕捉对象105的图像数据。照相机模拟可以结合模拟参数,可能包括焦距、照明条件、透镜性质、品牌、型号、距离、视场或其它参数。对象摄取引擎120在每个模型关键帧PoV 126处捕捉图像数据并从每个PoV处的结果得到的图像数据导出一个或多个描述符。机敏的读者将认识到将参考PoV束缚于一般或原始形状对象135消除了针对用于对象摄取的受控背景的要求。相反地,对象摄取引擎120可以在不受控的场内背景下以最小的用户交互或者在没有用户交互的情况下完全自主地操作。
可以根据一个或多个特征或识别算法来导出描述符。示例性描述符可以包括由SIFT、FREAK、BRISK、FAST、SURF、DAISY或其它算法生成的那些。该组导出描述符可以是描述符的同构集合(例如,所有SIFT描述符)或描述符的异构集合(例如,各种类型的混合)。鉴于对象摄取引擎120基于对象模型125和模型关键帧PoV 126来编译描述符集合,每个描述符相对于对象模型和模型关键帧PoV 126的位置是已知的。在某些实施例中,对象摄取引擎120执行这些描述符生成算法中的一个或多个的实现以导出描述符。通过描述符的导出,对象摄取引擎120将描述符与对象模型125和模型关键帧PoV 126组合以将描述符对象模型127中的一个或多个实例化,其中,描述符对象模型127包括在对象模型125上相对于模型关键帧PoV具有各位置的描述符。在其中并非对象105的所有特征或视图都存在于图像数据121中的情形中,模型关键帧PoV的集合可以局限于图像数据121内的可见部分。
对象摄取引擎120根据模型关键帧PoV 126的集合从描述符对象模型127创建一组关键帧束128。关键帧束128表示可以被其它设备消耗以便使得那些设备能够识别对象105的识别信息的量。在某些实施例中,针对每个模型关键帧PoV 126创建至少一个关键帧束128。这种方法是有利的,因为其允许现场中的设备从多个视点或距离识别对象105。在授予Wnuk等人、2014年7月15日提交的的题为“Fast Recognition Algorithm Processing,Systems and Methods”具有序号14/332,371;以及授予Siddiqui等人的2013年11月18日提交的题为“Silhouette-Based Object and Texture Alignment,Systems and Methods”的具有序号14/546,873的共同所有美国申请中更全面地讨论了关键帧束。关键帧束128可以包括零个或更多描述符、可以对应于模型关键帧PoV 126的一个或多个法线矢量、从对象模型125获得的图像数据、指示哪些算法应与束相关联的元数据、上下文属性或其它识别参数。例如,关键帧束128可以包括对象模型125的至少一部分的缩略图快照(例如,32×32像素、64×64像素等)以及一个或多个描述符。关键帧束128可以被存储在对象识别数据库140中。
对象识别数据库140被示为对象摄取引擎120的一部分。然而,在某些实施例中,对象识别数据库140可以包括单独计算设备,可能是跨网络115或者甚至在因特网上定位的一个或多个服务器。因此,对象识别数据库140可以充当识别服务(例如,PaaS、IaaS、SaaS等)。此外,某些实施例可以包括单个计算设备,可能是包括系统100中的一个或多个元件中的移动设备(例如,蜂窝电话、机器人、运载工具等)。例如,可以为智能电话提供成像传感器103、对象摄取引擎120、规范形状数据库130以及对象识别数据库140或其任何组合。
计算设备可以通过各种技术从对象识别数据库140获得关键帧束128。在某些情形中,计算设备上下文(例如,位置、时间、意图、天气等)可以触发哪些关键帧束128应被获得以使得能够在一定背景下进行对象识别。在其它情形中,可以在计算设备内安装许多关键帧束128,可能作为应用程序或识别模块的一部分。关键帧束128可以将本地识别模块形成为先验封装的或由计算设备创建的。考虑其中消费者正在杂货店处购物的情形。消费者的智能电话或平板电脑可以下载与识别商店货架上的产品相关的所有关键帧束128。可以基于关键帧束128内的束相应描述符而将该束先验地布置到具有一个或多个树(例如,spill树等)的封装中。另一方法可以是用于杂货店的关键帧束128仅包括法线矢量和缩略图像而缺少描述符。在这种情况下,计算设备可以应用相应识别算法来重新导出描述符以将识别树本身实例化。在某些实施例中,可以创建基于网络的服务以提供计算设备的此类功能(例如,获得关键帧束等),可能基于结构化数据文件(例如,JSON文件、XML文件等)而经由应用编程界面(API)(例如,URL)。
计算设备可以通过捕捉场景的数字表示且随后对该数字表示应用一个或多个识别算法的实现来识别对象。设备生成一个或多个描述符,然后可以将该描述符与从相关关键帧束128构建的本地识别模块中的描述符相比较,其进而可以参考或指向相关对象信息或其它类型的内容。
图2呈现了由图1的系统100用来摄取对象的方法的概观。
本摄取方法包括经由一个或多个成像传感器来捕捉对象(在本示例中共为篮球)的图像数据221的步骤。可以从成像传感器实时地捕捉图像数据221,或者可以经由其它源来获得。例如,图像数据221可以包括从电视节目、视频游戏或其它源获得的视频内容。在某些实施例中,可以以基本上连续的方式执行捕捉图像数据221的动作,其引起细化先前讨论的对象模型的能力。本方法还可以包括对图像数据221进行预处理以去除(或添加)特征,诸如斑点、阴影或其它特征。
本方法的另一步骤包括对象摄取引擎从图像数据221导出与对象有关的一组编译222。编译222可以是基于许多技术导出的,并且可以基于逐个图像、基于逐个视频帧或图像数据221的其它方面而被施加。对象摄取引擎还可以执行编译与边缘222相关联的几何信息的步骤。在提出的示例中,可能的是,只有形成圆的外部边缘也许是相关的,而对应于接缝或阴影的边缘222不是。
本方法还可以包括对象摄取引擎可能基于如先前所讨论的分数而从一组形状对象中选择目标形状对象224。在所示示例中,球形具有与边缘222所表示的外边界最佳匹配的周界或轮廓。目标形状对象224可以包括附加信息,包括形状几何属性(例如,半径)、名称、对称类型(例如,旋转对称、平移对称、反射对称、螺旋对称、标度或分形对称等)、相关上下文、关联描述符(例如,边缘描述符)或其它信息。特别注意,目标形状对象224包括参考关键帧PoV 224A中的一个或多个,其可以用目标形状对象224的表面的法线矢量来表示。
在多个候选形状对象之中选择目标形状对象224的过程期间,对象摄取引擎120可确定没有一个候选形状对象具有足够高的分数(在可接受性的某个预定阈值以下,低置信度匹配)。同样地,可设想某些实施例的对象摄取引擎120还包括使得用户能够提供与选择适当目标形状对象有关的输入的用户界面(例如,图形用户界面)。
对象摄取引擎还可以执行从与边缘222和目标形状对象224相关联的图像数据221生成对象模型225的步骤。在这里,对象摄取引擎向来自目标形状对象224的属性分配实际值以产生对象模型225。此外,对象摄取引擎执行从与目标形状对象224相关联的PoV信息导出一组模型关键帧PoV 226的步骤。这用布置在圆中的许多箭头来图示出。可以从与目标形状对象224的参考关键帧PoV相关联的导出模型关键帧PoV 226。在所示示例中,可以基于对称性、可能地基于描述符密度或其它因素来导出每个模型关键帧PoV 226。
本方法还包括从对象模型225将描述符对象模型227实例化,其中,描述符对象模型227包括在对象模型225上相对于模型关键帧PoV 226具有各位置的识别算法描述符。应认识到的是描述符的导出可以在模型关键帧PoV 226的生成之前或之后发生。在本示例中,描述符对象模型227的每个PoV已为了明了起见被标记为PoV A至PoV N,从而指示可能存在任何数目的PoV。
对象摄取模块可以进一步执行创建一组关键帧束228A至228N(统称为关键帧束228)的步骤。在某些实施例中,关键帧束对应于至少一个模型关键帧PoV 226。例如,对象摄取引擎可能从可能的25个模型关键帧PoV 226生成五个关键帧束,这是因为仅存在足以用于模型关键帧PoV 226中的五个模型关键帧的图像数据221。每个关键帧束228可以包括可以被设备消耗的一个或多个识别信息片。如先前所讨论的,示例性识别信息可以包括图像数据、描述符、法线矢量、元数据、上下文信息、显著识别算法或其它信息。
本方法还可以包括将关键帧束228存储在对象识别数据库中。此外,可以基于来自关键帧束228的识别信息在内容数据仓库内对内容信息(例如,视频、促销、文本、应用程序等)编索引。考虑其中医生捕捉患者心脏的MRI或超声波数据的医院内的情形。对象摄取引擎如所讨论的那样基于图像数据来构建关键帧束。医生基于关键帧束识别信息对内容数据仓库(医院的数据库)中的患者的电子医疗记录中的至少某些编索引以供未来检索。这种方法允许消耗关键帧束228的计算设备识别对象,然后识别哪些关键帧束228是最相关的,其中,来自相关关键帧束228的识别信息被用来检索或者另外获得内容信息。
图3图示出由某些实施例的对象摄取系统构造对象识别数据库的过程300。过程300通过获得(在步骤305处)对象的图像数据开始。优选地,在不受控背景下获得图像数据。过程300然后从图像数据导出(在步骤310处)边缘及其它边缘相关数据。其它边缘相关数据包括边缘像素、边缘线、边缘线的集群、边缘线之间的距离等。如上所述,某些实施例的对象摄取系统使用边缘和边缘相关信息来生成边缘描述符。基于边缘描述符,过程300从规范形状对象数据库获得(在步骤315处)候选形状对象。
在某些实施例中,过程300还从候选形状对象中选择目标形状对象,其中,目标形状对象与图像数据所表示的目标对象具有最佳匹配。使用选择目标形状对象,过程300将描述符对象模型实例化(在步骤320处)并编译(在步骤325处)用于该对象的关键帧束。在某些实施例中,过程300基于从图像数据提取的信息对目标形状对象进行结构化和描绘,并从形状对象的特征导出用于描述符对象模型的描述符。在某些实施例中,每个关键帧束对应于可以从其分析对象的不同视点。过程300然后用新编译的关键帧束来更新(在步骤330处)对象识别数据库。
在某些实施例中,过程300确定(在步骤335处)是否不再存在要摄取的图像数据。如果存在要摄取的更多图像数据,则过程300返回至步骤310并再次地执行步骤310至330。在某些实施例中,已针对新图像数据所表示的对象编译现有关键帧束。在这些实施例中,作为生成新的关键帧束的替代,过程300可以仅仅更新用于对象的现有关键帧束。
将参考PoV与规范形状绑定且然后从模型PoV生成关键帧束的公开方法提供许多优点。一个优点包括能够在没有人类干预的情况下挖掘现有视频数据或图像数据以填充对象识别数据库的自动化代理的构造。此外,系统可以在可能基于类似特征(例如,描述符、边缘等)来而在时变内容方面跟踪对象的同时随时间推移而观察关键帧束信息的变化。由于随时间推移而观察对象,所以可以用附加描述符信息或较高分辨率图像来更新或细化对象的关键帧束,从而改善结果得到的对象识别数据库的性能。
鉴于公开技术的范围而出现许多附加考虑。作为示例,在诸如杂货店之类的不受控背景下,对象摄取引擎可以识别商店货架上的许多可代换产品(例如,罐头、谷物盒等)。作为单独地摄取每个产品的替代,公开系统可以采用多个优化。一旦摄取了第一产品(例如一盒谷物),则系统可以针对在货架上识别的所有类似盒子创建同一盒子的副本。虽然复制的盒子将具有类似或者甚至相同的关键帧束,但系统可以向关键帧束添加附加元数据,指示出用于每个单独盒子的商店货架上的位置。另一优选可以包括摄取单个产品,然后使用初始建模产品作为用于后续类似产品的模板。这种方法是有利的,因为将已针对该类别的产品建立了模型关键帧PoV,并且将只须更新对象模型中的图像数据即可。考虑具有类似封装且由单个生产商生产的产品(例如,芯片)。产品上的一般形状、字体以及徽标可能是相同的。然而,色彩和文本可能改变。因此,最初摄取的Pringles原始风味的罐头将被用作用于其它风味的模板。另一示例提供了基于来自多个产品的许多输入来优化或细化对象模型。可能来自最初摄取对象的图像数据质量差(例如,分辨率低、缩放比例差、照明差等)。可以将来自相同对象的附加图像数据集一起求平均或编译以形成更详细的对象模型,其允许生成更完整或准确的关键帧束。
在不受控或商品背景下捕捉图像数据可能是相当有问题的。图像数据可能包括不期望的前景对象、阻挡特征(例如,人的手、人等)或其它特征。鉴于对象摄取引擎将具有参考关键帧PoV的形状绑定到边缘,摄取引擎具有用于处理有问题图像数据的多个选项。如先前所述,可以对图像数据进行预处理以准备好应用识别算法,可能是通过应用去斑点滤波器或将图像转换成原始色调或灰阶。此外,可以基于边缘和形状信息将阻挡对象从图像数据去除。另外,可以仅针对缺少阻挡特征的对象模型的部分导出模型关键帧PoV。
某些实施例可以采用Captcha的形式或其它类似mechanical turk的界面,以改善关键帧束的可靠性或准确度。结果得到的对象模型相对于将形状对象绑定到图像数据而言缺少足够的明了性,则对象摄取引擎可以请求来自知识工作者的相对于形状对象的更进一步对准、放置或配置信息。因此,考虑本发明主题的一个方面将包括对象模型确认模块,其被编程为执行对接到用户以确认、修正、修改或者另外帮助构造关键帧束的步骤。
可以采用进一步优化来减少生成不必要的关键帧束。例如,某些类别的对象将可能仅仅从特定PoV识别到。例如搭车。在消费者背景下,消费者可能仅仅要求对应于汽车的外部侧视图的关键帧束。因此,对应于汽车模板的形状对象可能包括以下参考关键帧PoV,其具有仅适用于汽车的模型对象的侧面的生成规则。然而,在军事或法律实施背景下,汽车模板形状对象可能在生成相应描述符时对顶部视图PoV进行重加权,其中,此类PoV包括用于长距离视点的规则。另一军事或自定义相关示例可以包括具有用于运载工具的底部的参考PoV,使得检查员可以识别到什么应该或者更关注地什么不应该在运载工具下面。
公开的对象识别摄取系统或引擎具有生成与摄取对象的巨大阵列相关联的数百万或者数十亿个关键帧束的能力。然而,并不是所有关键帧束都将具有相同的实用性。由于关键帧束在现场被设备消耗,所以设备可以在识别与关键帧束有关的对象时提供关于哪些关键帧束最相关的度量。对象识别数据库或其它管理系统可以使用度量来以适当的方式对关键帧束进行排序、分类或布置。例如,与上下文信息(例如,位置、时间、用户身份、天气等)组合的度量允许识别引擎确定哪些关键帧束相对于特定情况而言可能最相关。此外,度量可以具有相对于对象摄取的适用性。随着静态被构建,度量可以对在摄取过程期间应如何使用每个参考关键帧PoV进行加权。另外,度量可以影响确定要生成模型关键帧PoV的参考关键帧PoV内的规则。示例性关键帧束度量可以包括被单独或许多用户使用的次数、与实际观察描述符的相对度量距离、关键帧使用的变化或趋势、使用上下文或其它统计。
从采用本发明主题的基础设施出现许多非常有趣的使用情况。如先前提及的,对象摄取系统可以相对于商店或市场内的库存产品提供非常有用的服务。雇员可以用商品照相机或者甚至专业照相机来捕捉图像数据,以捕捉全部可以被摄取的货架上的产品的图像。特别注意,屈从于足够质量的图像数据,可以将单独产品区别开。例如,雇员可能对面包点心部门中的一系列南瓜饼进行成像。表面上,将假设所有馅饼都是相同的。然而,对象摄取引擎可以使用一个馅饼作为用于摄取其余馅饼的模板。一个馅饼与另一个的差别将基于相对于模型关键帧PoV的位置而在关键帧束中被编码,可能作为描述符差异。这些差异然后被库存系统用于跟踪陈列图、实时库存跟踪或用于其它产品管理目的。因此,具有参考关键帧束的形状对象和类似对象之间的差异的组合允许以特殊性跟踪对象。
玩具可以以无数种方式将公开的对象摄取系统或服务结合。可能公主玩偶充当摄取引擎,其中玩偶摄取游乐环境中的对象;例如其它玩偶、玩具、孩子、父母、附件、售后服务项目或其它对象。随着玩偶摄取对象,其然后可以基于可用关键帧束而回想起哪些对象是熟悉的。在某些实施例中,玩偶与可以充当存储所有关键帧束的对象识别数据库的本地计算机(例如,PC系列、游戏控制台、平板电脑、智能电话等)耦合。当玩偶从一个位置移动至另一位置时,其可以请求针对该位置且基于玩偶的视点具有最相关PoV的关键帧束。利用具有参考PoV的形状对象允许玩偶快速地、高效地且自主地摄取对象。可以将类似技术应用于视频游戏,其中游戏控制台可以摄取日常对象或游戏玩家的图像。结果得到的关键帧束可以跨其它游戏系统分布以允许交互式玩游戏。此外,机器人系统可以通过从货架摄取对象来获取商店(例如,杂货店等)的库存。这将不仅提供关于可识别产品的信息,而且支持陈列图管理和虚拟3D店面。
如先前所讨论的,可以将对象摄取引擎与实时或记录媒体流耦合。在某些实施例中,可以出于怀旧、存档或研究目的而摄取来自老照片或电影的历史对象。例如,老电视节目或电影可以被对象摄取引擎自主地观看以创建已知人工制品的数据库。此外,对象摄取引擎可以观看家庭照片、家庭视频、安保录像或其它源以编译关键帧束。
另一使用情况涉及到医学成像。随着医学图像被摄取,可以将图像映射到表示人体的内部特征的规范形状对象:器官、骨骼、牙齿、大脑等。有趣地,每个形状对象可以被用于不同的成像模式。可以使用单个心脏形状对象来从MRI成像数据、超声波数据、X射线数据或其它形式的成像数据生成对象模型。此外,心脏形状对象可以包括与成像模式的类型上下文相关的参考PoV。MRI成像数据可能指示PoV的4π立体弧度集合将是有用的,而X射线可能仅要求单个平面的PoV。应注意的是,可以用患者元数据对来自跨模式和来自单个患者身体的关键帧束加注释,因此允许在日后检索与该患者有关的对象信息。很明显,这些技术可以被利用于诊断、保健、预防性护理、预后或其它医学相关活动。
对于本领域的技术人员而言应显而易见的是在不脱离本文中的发明概念的情况下可以有除所述那些之外的更多修改。因此本发明主题并不受到除在所附权利要求的精神中之外的限制。此外,在解释本说明书和权利要求两者时,应以根据上下文的最宽泛可能方式来解释所有术语。特别地,应将术语“包括”和“包含”解释为以非排他性方式指代元件、部件或步骤,指示提及的元件、组件或步骤可与并未明确提及的其它元件、部件或步骤一起存在或被利用或被组合。在说明书权利要求提及选自由A、B、C...和N组成的组的某些东西中的至少一个的情况下,应将原文解释为仅要求来自该组的一个元素,而不是A加N或B加N等。
Claims (48)
1.一种对象识别摄取系统,包括:
规范形状数据库,其存储了具有规范形状的几何属性、形状属性且具有参考关键帧视点(PoV)的形状对象;以及
对象摄取引擎,其与所述规范形状数据库耦合并被编程为执行步骤:
获得至少一个对象的图像数据;
从图像数据导出与所述至少一个对象有关的边缘集合;
从规范形状数据库获得形状结果集合,其中,该形状结果集合包括具有以下形状属性的形状对象,该形状属性满足根据来自边缘集合的几何信息确定的形状选择准则;
从形状结果集合中的形状对象之中选择至少一个目标形状对象;
从所述至少一个目标形状对象和与边缘集合相关联的图像数据的部分生成对象模型;
从与所述至少一个目标形状对象相关联的参考关键帧PoV和对象模型导出模型关键帧PoV的集合;
从对象模型将描述符对象模型实例化,该描述符模型包括在对象模型上相对于模型关键帧PoV具有各位置的识别算法描述符;
根据模型关键帧PoV的集合从描述符对象模型创建关键帧束集合;以及
将关键帧束集合存储在对象识别数据库中。
2.权利要求1的系统,
还包括对象识别数据库。
3.权利要求1的系统,
其中,所述形状对象包括几何原语。
4.权利要求3的系统,
其中,所述形状对象中的至少一个包括包含至少两个几何原语的复合形状对象。
5.权利要求3的系统,
其中,所述几何原语包括以下各项中的至少一个:线、正方形、立方体、圆形、球形、圆筒形、圆锥形、方框、环形、柏拉图立体、三角形、金字塔形以及箱形。
6.权利要求1的系统,
其中,所述形状对象中的至少某些表示3D对象。
7.权利要求1的系统,
其中,所述形状对象包括拓扑分类。
8.权利要求1的系统,
其中,所述形状对象包括表示对象类别的对象模板。
9.权利要求8的系统,
其中,所述对象模板包括以下各项中的至少一个:运载工具、建筑物、器械、植物、玩具、人脸、人以及内脏器官。
10.权利要求1的系统,
其中,所述参考关键帧PoV包括法线矢量。
11.权利要求1的系统,
其中,所述参考关键帧PoV包括关键帧PoV生成规则。
12.权利要求1的系统,
其中,所述图像数据包括以下数据类型中的至少一个:可见数据、视频数据、视频帧数据、静止图像数据、声学成像数据、医学图像数据以及游戏成像数据。
13.权利要求1的系统,
其中,所述几何属性包括以下各项中的至少一个:长度、宽度、高度、厚度、半径、直径、角度、孔、中心、公式、纹理、边界框、手性、周期性、取向、节距以及侧边数。
14.权利要求1的系统,还包括:
移动设备,其包括所述对象摄取引擎。
15.权利要求14的系统,
其中,所述移动设备还包括所述规范形状数据库。
16.权利要求14的系统,
其中,所述移动设备还包括所述对象识别数据库。
17.权利要求1的系统,
其中,所述识别摄取引擎被进一步编程为执行根据与边缘集合相关联的边缘描述符来获得形状结果集合的步骤。
18.权利要求17的系统,
其在,所述规范形状数据库基于边缘描述符对形状对象编索引。
19.权利要求1的系统,
其中,所述识别摄取引擎被编程为执行基于用户选择来选择所述至少一个目标形状对象的步骤。
20.权利要求1的系统,
其中,所述识别摄取引擎被编程为执行基于分数来选择所述至少一个目标形状对象的步骤。
21.权利要求20的系统,
其中,所述分数是根据以下各项中的至少一个确定的:位置、时间以及描述符匹配。
22.权利要求1的系统,
其中,所述识别算法描述符包括以下描述符类型中的至少一个:SIFT、FREAK、FAST、DAISY以及BRISK。
23.权利要求1的系统,
其中,所述关键帧束集合内的至少一个关键帧束包括以下各项:法线矢量、图像以及描述符。
24.权利要求1的系统,还包括:
成像传感器,其被编程为执行捕捉所述至少一个对象的图像数据的步骤。
25.一种对象识别摄取系统,包括:
规范形状数据库,其存储了具有规范形状的几何属性、形状属性且具有参考关键帧视点(PoV)的形状对象;以及
对象摄取引擎,其与所述规范形状数据库耦合并被编程为执行步骤:
获得至少一个对象的图像数据;
从图像数据导出与所述至少一个对象有关的边缘集合;
从规范形状数据库获得形状结果集合,其中,该形状结果集合包括具有以下形状属性的形状对象,该形状属性满足根据来自边缘集合的几何信息确定的形状选择准则;
从形状结果集合中的形状对象之中选择至少一个目标形状对象;
从所述至少一个目标形状对象和与边缘集合相关联的图像数据的部分生成对象模型;
从与所述至少一个目标形状对象相关联的参考关键帧PoV和对象模型导出模型关键帧PoV的集合;
从对象模型将描述符对象模型实例化,该描述符模型包括在对象模型上相对于模型关键帧PoV具有各位置的识别算法描述符;
根据模型关键帧PoV的集合从描述符对象模型创建关键帧束集合;以及
将关键帧束集合存储在对象识别数据库中。
26.权利要求25的系统,
还包括对象识别数据库。
27.权利要求25—26中的任一项的系统,
其中,所述形状对象包括几何原语。
28.权利要求25—27中的任一项的系统,
其中,所述形状对象中的至少一个包括包含至少两个几何原语的复合形状对象。
29.权利要求25—28中的任一项的系统,
其中,所述几何原语包括以下各项中的至少一个:线、正方形、立方体、圆形、球形、圆筒形、圆锥形、方框、环形、柏拉图立体、三角形、金字塔形以及箱形。
30.权利要求25—29中的任一项的系统,
其中,所述形状对象中的至少某些表示3D对象。
31.权利要求25—30中的任一项的系统,
其中,所述形状对象包括拓扑分类。
32.权利要求25—31中的任一项的系统,
其中,所述形状对象包括表示对象类别的对象模板。
33.权利要求25—32中的任一项的系统,
其中,所述对象模板包括以下各项中的至少一个:运载工具、建筑物、器械、植物、玩具、人脸、人以及内脏器官。
34.权利要求25—33中的任一项的系统,
其中,所述参考关键帧PoV包括法线矢量。
35.权利要求25—34中的任一项的系统,
其中,所述参考关键帧PoV包括关键帧PoV生成规则。
36.权利要求25—35中的任一项的系统,
其中,所述图像数据包括以下数据类型中的至少一个:可见数据、视频数据、视频帧数据、静止图像数据、声学成像数据、医学图像数据以及游戏成像数据。
37.权利要求25—36中的任一项的系统,
其中,所述几何属性包括以下各项中的至少一个:长度、宽度、高度、厚度、半径、直径、角度、孔、中心、公式、纹理、边界框、手性、周期性、取向、节距以及侧边数。
38.权利要求25—37中的任一项的系统,还包括
移动设备,其包括所述对象摄取引擎。
39.权利要求25—38中的任一项的系统,
其中,所述移动设备还包括所述规范形状数据库。
40.权利要求25—39中的任一项的系统,
其中,所述移动设备还包括所述对象识别数据库。
41.权利要求25—40中的任一项的系统,
其中,所述识别摄取引擎被进一步编程为执行根据与边缘集合相关联的边缘描述符来获得形状结果集合的步骤。
42.权利要求25—41中的任一项的系统,
其在,所述规范形状数据库基于边缘描述符对形状对象编索引。
43.权利要求25—42中的任一项的系统,
其中,所述识别摄取引擎被编程为执行基于用户选择来选择所述至少一个目标形状对象的步骤。
44.权利要求25—43中的任一项的系统,
其中,所述识别摄取引擎被编程为执行基于分数来选择所述至少一个目标形状对象的步骤。
45.权利要求25—44中的任一项的系统,
其中,所述分数是根据以下各项中的至少一个确定的:位置、时间以及描述符匹配。
46.权利要求25—45中的任一项的系统,
其中,所述识别算法描述符包括以下描述符类型中的至少一个:SIFT、FREAK、FAST、DAISY以及BRISK。
47.权利要求25—46中的任一项的系统,
其中,所述关键帧束集合内的至少一个关键帧束包括以下各项:法线矢量、图像以及描述符。
48.权利要求25—47中的任一项的系统,还包括
成像传感器,其被编程为执行捕捉所述至少一个对象的图像数据的步骤。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201461940320P | 2014-02-14 | 2014-02-14 | |
US61/940,320 | 2014-02-14 | ||
PCT/US2015/016069 WO2015123647A1 (en) | 2014-02-14 | 2015-02-16 | Object ingestion through canonical shapes, systems and methods |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106462774A true CN106462774A (zh) | 2017-02-22 |
CN106462774B CN106462774B (zh) | 2020-01-24 |
Family
ID=58094019
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580020006.8A Active CN106462774B (zh) | 2014-02-14 | 2015-02-16 | 通过规范形状的对象摄取、系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106462774B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111062836A (zh) * | 2018-10-16 | 2020-04-24 | 杭州海康威视数字技术股份有限公司 | 一种基于视频的评分方法、装置及电子设备 |
CN112312190A (zh) * | 2020-10-10 | 2021-02-02 | 游艺星际(北京)科技有限公司 | 视频画面的展示方法、装置、电子设备和存储介质 |
CN112543939A (zh) * | 2018-08-27 | 2021-03-23 | 昕诺飞控股有限公司 | 用于调谐供对象检测算法使用的光源的系统和方法 |
CN112711671A (zh) * | 2020-12-29 | 2021-04-27 | 珠海新天地科技有限公司 | 一种快速识别物体的方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1451128A (zh) * | 2000-07-07 | 2003-10-22 | 三菱电机株式会社 | 表示和搜索图像中的对象的方法和装置 |
CN1684094A (zh) * | 1999-07-05 | 2005-10-19 | 三菱电机株式会社 | 表示或检索图像中对象的方法和装置及计算机可读存储媒体 |
CN103003814A (zh) * | 2010-05-14 | 2013-03-27 | 数据逻辑Adc公司 | 使用大型数据库进行对象识别的系统及方法 |
-
2015
- 2015-02-16 CN CN201580020006.8A patent/CN106462774B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1684094A (zh) * | 1999-07-05 | 2005-10-19 | 三菱电机株式会社 | 表示或检索图像中对象的方法和装置及计算机可读存储媒体 |
CN1451128A (zh) * | 2000-07-07 | 2003-10-22 | 三菱电机株式会社 | 表示和搜索图像中的对象的方法和装置 |
CN1790342A (zh) * | 2000-07-07 | 2006-06-21 | 三菱电机株式会社 | 表示和搜索图像中的对象的方法和装置 |
CN1904892A (zh) * | 2000-07-07 | 2007-01-31 | 三菱电机株式会社 | 表示和搜索图像中的对象的方法和装置 |
CN103003814A (zh) * | 2010-05-14 | 2013-03-27 | 数据逻辑Adc公司 | 使用大型数据库进行对象识别的系统及方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112543939A (zh) * | 2018-08-27 | 2021-03-23 | 昕诺飞控股有限公司 | 用于调谐供对象检测算法使用的光源的系统和方法 |
CN111062836A (zh) * | 2018-10-16 | 2020-04-24 | 杭州海康威视数字技术股份有限公司 | 一种基于视频的评分方法、装置及电子设备 |
CN111062836B (zh) * | 2018-10-16 | 2023-03-07 | 杭州海康威视数字技术股份有限公司 | 一种基于视频的评分方法、装置及电子设备 |
CN112312190A (zh) * | 2020-10-10 | 2021-02-02 | 游艺星际(北京)科技有限公司 | 视频画面的展示方法、装置、电子设备和存储介质 |
CN112711671A (zh) * | 2020-12-29 | 2021-04-27 | 珠海新天地科技有限公司 | 一种快速识别物体的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106462774B (zh) | 2020-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11748990B2 (en) | Object ingestion and recognition systems and methods | |
Gong et al. | Human pose estimation from monocular images: A comprehensive survey | |
Shen et al. | Distilled feature fields enable few-shot language-guided manipulation | |
Olague | Evolutionary computer vision: the first footprints | |
Toshpulatov et al. | Human pose, hand and mesh estimation using deep learning: a survey | |
Zhao et al. | Character‐object interaction retrieval using the interaction bisector surface | |
CN106462774A (zh) | 通过规范形状的对象摄取、系统和方法 | |
Feng et al. | 3D shape retrieval using a single depth image from low-cost sensors | |
Carreira et al. | Lifting object detection datasets into 3d | |
Li et al. | 3D sketching for 3D object retrieval | |
Judd | Understanding and predicting where people look in images | |
Song et al. | Distinction of 3D objects and scenes via classification network and markov random field | |
Qi et al. | Learning dictionaries of sparse codes of 3D movements of body joints for real-time human activity understanding | |
Ranjana et al. | Applications and Implications of Artificial Intelligence and Deep Learning in Computer Vision | |
Hägerlind | 3D-Reconstruction of the Common Murre | |
Movshovitz-Attias | Dataset curation through renders and ontology matching | |
Nair | A voting algorithm for dynamic object identification and pose estimation | |
Wong | A Smartphone Software Retina | |
Olague et al. | Vision and Evolution: State of the Art | |
Lev | A Study of 3D Point Cloud Features for Shape Retrieval | |
Zhang | Cross-domain Image Analysis Approaches Towards Segmentation of Placenta Photos and Pictorial Realism Study of Paintings | |
Cordeiro | Deep learning for bin picking object segmentation | |
Zhao | Leveraging Depth for 3D Scene Perception | |
Kong et al. | Interactive deformation‐driven person silhouette image synthesis | |
Brouns | Bridging the Domain-Gap in Computer Vision Tasks |
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 |