CN105849719A - 增强现实 - Google Patents

增强现实 Download PDF

Info

Publication number
CN105849719A
CN105849719A CN201380079167.5A CN201380079167A CN105849719A CN 105849719 A CN105849719 A CN 105849719A CN 201380079167 A CN201380079167 A CN 201380079167A CN 105849719 A CN105849719 A CN 105849719A
Authority
CN
China
Prior art keywords
passage
user
server
image
calculating equipment
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
CN201380079167.5A
Other languages
English (en)
Other versions
CN105849719B (zh
Inventor
乔治·萨克拉特瓦拉
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.)
Hewlett Packard Development Co LP
Original Assignee
Longsand 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 Longsand Ltd filed Critical Longsand Ltd
Publication of CN105849719A publication Critical patent/CN105849719A/zh
Application granted granted Critical
Publication of CN105849719B publication Critical patent/CN105849719B/zh
Expired - Fee Related 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/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/48Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/43Querying
    • G06F16/432Query formulation
    • G06F16/434Query formulation using image data, e.g. images, photos, pictures taken by a user
    • 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/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • 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
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Library & Information Science (AREA)
  • Multimedia (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Computer Graphics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Information Transfer Between Computers (AREA)
  • Processing Or Creating Images (AREA)

Abstract

一种由增强现实系统的计算设备实施的对象识别方法。所述方法包括:从用户接收图像,确定用户订阅的通道,以及通过使用分布于服务器集群的通道组,确定管理用户订阅的通道的服务器列表。所述方法进一步包括:使用计算设备,从服务器列表选择哪个服务器用于查询用户订阅的通道。此外,所述方法包括:使用图像,使用计算设备查询选择的服务器用于用户订阅的通道,以确定匹配用户订阅的通道的对象数据库的图像的至少一个对象。所述方法还包括:获取并发送与至少一个对象关联的内容。

Description

增强现实
背景技术
增强现实(“AR”)通常指显示使用虚拟对象(例如,像视频、图像、图形等这样的数字介质)增强或补充的真实世界的对象(例如,物理对象)的环境或系统。过去的几年来,由于AR技术通过用虚拟内容来补充,使来自真实世界的对象和信息变得能够交互,因此AR设备和系统已变得非常受欢迎。此外,近年来,基于网络的通信技术也已显著进步。越来越多的如今的用户携带能够执行AR应用及功能的一个或多个移动设备。
附图说明
图1是用于组织虚拟内容以及用于基于图像的对象识别的系统的示例的示意图。
图2示出了显示图1的系统的计算设备的示例的示意图。
图3是显示用可由图1的系统的计算设备的处理器执行的指令编码的机器可读存储介质的示例的示意图。
图4示出了显示用于组织虚拟内容的方法的示例的流程图。
图5示出了显示用于对象识别的方法的示例的流程图。
具体实施方式
随着近来技术的进步,越来越多的用户能够利用各种AR设备和系统的优势。例如,用户能够使用其移动设备,通过用虚拟内容补充,使来自真实世界的对象变得能够交互。像具有互联网功能的平板、智能电话、便携式电脑、电视以及游戏机这样的各种设备允许越来越多的用户能够更频繁且从不同的位置访问AR系统。
随着AR技术的价值和使用的继续增加,AR实现系统的拥有者寻求有效且成本划算的方式运行这些系统。AR系统的增加的使用导致需要AR系统的操作者存储并维护更大量的虚拟内容。在许多情况下,存储在AR系统上的大量的虚拟内容影响这些AR系统的反应性和运行,以及其与不同用户操作的设备的通信。因此,AR系统的操作者可能尝试改进各种方式,存储、管理及处理AR系统中使用的数据。
增强现实系统或应用通常涉及基于真实世界的对象(图像、标志、建筑、面部等)的识别的视觉内容(例如,视频、图像、图形等)向用户的传送。基于AR系统的大小以及用户的数量,对象的总数以及AR环境中与这些对象关联的虚拟内容可能非常大。在一些示例中,AR系统的每个用户可能基于订阅策略观看与真实世界对象关联的虚拟内容的不同子集。由于用户的移动设备通常具有有限的存储,以及较长的初始下载时间,因此将与所有虚拟内容关联的描述符(即,用于将对象与图像匹配的数据)下载到这些设备可能不优选。此外,由于可能包括用户未订阅的大数量的对象,因此具有用于基于订阅过滤与用户关联的对象的一个大的对象数据库可能没有效率。
因此,具有有效的(即,涉及很少或没有不必要的处理)、负载均衡的(即,负载分布在数据库的所有服务器之间)、可扩展的(即,能够容纳可能无限数量的对象)、高可用的、且容忍组件故障的AR系统是有好处的。本文描述的是组织AR系统中的内容以及用于AR系统实施的对象识别的技术。这样的技术可包括:创建对象以及与对象关联的虚拟内容的分布式结构,这可允许有效的对象匹配技术由系统所用。这会限制或避免不必要的处理,且还可改善系统的各服务器之间的负载均衡。
在一些实现方式中,描述建议将与多个对象以及和对象有关的内容关联的多个描述符分组成多个通道,并将与通道中的对象关联的多个描述符存储到位于存储器中的多个对象数据库中。描述进一步建议确定与每个通道关联的存储器成本,确定与每个通道关联的处理成本,以及基于存储器成本和处理成本将多个通道组成通道组。通道组中的每个可均衡为具有基本相同的存储器成本和基本相同的处理成本。描述还建议将通道组分配在系统中的多个服务器上。
在其他示例的实现方式中,描述建议从用户(例如,从用户的移动设备)接收图像,确定用户订阅的通道,以及通过使用分布于服务器集群的通道组,确定管理用户订阅的通道的服务器列表。描述进一步建议从服务器列表选择哪个服务器用于查询用户订阅的通道。描述还建议使用图像查询选择的服务器用于用户订阅的通道,以确定与用户订阅的通道的对象数据库的图像匹配的至少一个对象。描述进一步建议获取并发送与至少一个对象关联的内容。
如本文所用的,术语“移动设备”以及“无线设备”可互换使用,且指各种智能电话、蜂窝电话、平板、便携式计算机、个人数字助理(PDA)、VoIP电话、具有无线功能的电视、具有无线功能的娱乐系统、及包括处理器且能够发送和接收无线或有线通信信号的其他类似的电子设备中的任何一个。
此外,如本文所用的,术语“对象”指AR系统基于从系统用户接收的图像识别或确定的真实世界标记(例如,图像、标志、建筑、书、面部,等等)。术语“内容”或“虚拟内容”可互换使用,且指文本、视频、图像、图形、音频、或与AR系统确定的特定对象有关的任何其他合适的数字介质输出的任意结合。
此外,如本文所用的,术语“描述符”指用于确定AR系统接收的图像中的对象的数据或信息。换句话说,描述符包括用于确定从用户接收的图像中是否存在对象的数据。在一个示例中,可从对象的图像或与对象有关的任何其他数据提取描述符。例如,描述符可包括源自图像的对象的点特征和关联的几何(例如,图像中建筑物的拐角的位置)的集合。在AR系统中,每个描述符与对象关联,且链接至与对象有关的内容。
如本文所用的,术语“通道”指存储在AR系统中的内容和描述符的动态集合。通道包括与多个对象和对象中的每个有关的内容关联的多个描述符。在AR系统中,可根据用户(例如,内容创建者用户)上传的内容以及根据也由这些用户上传的图像训练的对象描述符,在系统的服务器上自动创建每个通道。基于AR系统的实现方式,每个通道的描述符可存储在AR系统的服务器的存储器中,或可存储在中央数据库中,可为与用于存储内容的数据库相同或不相同的数据库。
如本文所用的,术语“自动”指以基本上独立于外部的人的影响或控制的方式操作或运行。系统、系统的元件、或应用可具有独立于特定请求或规则启动、运行、实施功能等的能力。
此外,如本文所用的,术语“通信接口”指可用于任何无线设备与彼此和/或与网络通信的各种协议。特别地,通信接口可包括Wi-Fi、蓝牙、3G、4G、和/或任何其他合适的通信接口或接口的组合。
在下面的详细描述中参照附图,附图形成详细描述的一部分,且其中,通过说明特定示例的方式示出,可在特定的示例中实施所公开的主题。应理解,可使用其他示例,且可进行结构或逻辑上的改变而不脱离本公开的范围。因此,下面的详细描述不采取限制意义,且本公开的范围由所附的权利要求限定。此外,应理解,本文所用的用词和术语用于描述的目的,且不应视为限制。“包括”、“包含”或“具有”及其变形在本文的使用表示包含其后列出的事项及其等同物,以及其他事项。还应注意到,多个基于硬件和软件的设备以及多个不同结构组件可用于实现所公开的方法和系统。
图1是用于组织虚拟内容和用于基于图像的对象识别的AR系统10的示例的示意图。系统10包括至少一个移动设备15(或任意其他合适的电子设备,例如,PC等)、多个服务器20、计算设备27、以及网络25。在示出的示例中,移动设备15包括用户(未示出)操作的平板以及智能电话。在可替代的示例中,用户可拥有或操作不同的电子设备(例如,PC)或无线设备(例如,蜂窝电话、便携式电脑、PDA、无线电视、无线娱乐系统、及其他类似的无线)。
移动设备15中的每个包括软件、硬件(例如,处理器、存储器等,未示出)、或其被配置为实现移动设备15的功能以及允许其与多个服务器20或其他设备交互的合适的组合。例如,移动设备15包括用于与其他无线设备和/或网络连接的通信接口。移动设备15的通信接口可包括Wi-Fi接口、蓝牙接口、3G接口、4G接口、近场通信(NFC)接口、和/或任意其他合适的接口。
多个服务器20通常可由AR系统的操作者控制和操作。多个服务器20包括软件、硬件(例如,处理器、存储器等,未示出)、或其被配置为实现服务器20的功能及用于允许它们与移动设备15或其他设备交互的合适的组合。例如,多个服务器20包括用于与其他设备和/或网络连接的通信接口。
多个服务器20中的至少一个连接至计算设备27。计算设备27可在多个服务器20中一个的内部,或者还可在多个服务器20的外部。可选地,下面描述的计算设备27实施的功能可由多个服务器20中的一个的处理器实施。在所示出的示例中,计算设备27包括处理器30、存储器35、内容组织模块40、以及对象识别模块42,用于虚拟内容的组织以及用于系统10实施的对象识别。
移动设备15经由网络25连接至多个服务器20,因此,移动设备15能够向多个服务器20发送数据(例如,图像等),且多个服务器20可向移动设备15发送信息。网络25可包括任意合适类型或配置的网络,允许多个服务器20与移动设备15和/或任何其他系统或设备通信。
例如,网络25可包括广域网(“WAN”)(例如,基于TCP/IP的网络、蜂窝网络,例如,全球移动通信系统(“GSM”)网络、通用分组无线业务(“GPRS”)网络、码分多址(“CDMA”)网络、演进的数据优化(“EV-DO”)网络、增强型数据速率GSM演进技术(“EDGE”)网络、3GSM网络、4GSM网络、数字增强无绳通信(“DECT”)网络、数字AMPS(“IS-136/TDMA”)网络、或集群数字增强网络(“iDEN”)网络,等)。网络25可进一步包括局域网(“LAN”)、邻域网(“NAN”)、家域网(“HAN”)、个域网(“PAN”)、公共交换电话网络(“PSTN”)内联网、互联网、或任何其他合适的网络。
计算设备27提供运行多个服务器20以及收集和处理来自移动设备15和/或多个服务器20外部的任何其他设备的数据的功能。应理解,在一些实现方式中,与此描述有关的描述为由计算设备27实施的操作可由任何其他计算设备或多个服务器20或移动设备15关联的处理器实施。
如此外在下面详细描述的,在一个示例中,计算设备27将与多个对象和与对象中的每个有关的内容关联的多个描述符分组成多个通道,并将与每个通道中的对象关联的多个描述符存储在位于存储器中的对象数据库中。计算设备27确定与每个通道关联的存储器成本,确定与每个通道关联的处理成本,以及基于存储器成本和处理成本将多个通道组成多个组。多个通道组中的每个具有基本相同的存储器成本以及基本相同的处理成本。计算设备27还将通道组分配于多个服务器上。
图2示出了系统10的计算设备27的示意图。应理解,任意其他的计算设备还可用于实现计算设备27的部分或所有功能。计算设备270可为服务器(例如,服务器20中的一个)、台式机、便携式电脑、或能够执行下面描述的技术的任意其他合适的设备。计算设备270可为独立于服务器20的设备,或可包括在服务器20中的一个中。计算设备270包括处理器30(例如,中央处理单元、微处理器、微控制器、或其他合适的可编程设备)、存储器35、输入接口45、以及通信接口50。这些组件中的每个可操作地耦合至总线55。在其他示例中,计算设备270包括用于执行本文描述的类似功能的其他的、更少的、或不同的组件。
通信接口50使计算设备270以及服务器20(计算设备集成在服务器中时)能够与多个网络和通信链接通信。多个服务器20中的每个还包括通信接口。输入接口45可处理来自移动设备15及其他外部设备/系统的信息。在一个系统中,输入接口45至少包括内容接口60和图像接口62。在其他示例中,输入接口45可包括其他接口。内容接口60接收与来自移动设备15或来自其他外部设备(例如,PC,等)的不同对象关联的各种内容(例如,视频、图像、图形,等)。例如,虚拟内容与特定的饭店的对象关联时,内容接口60可接收饭店菜单或不同菜的图像。
图像接口62接收来自移动设备15或来自其他电子设备的各种图像。例如,AR系统的用户想要接收与图像中包括的对象(例如,饭店名称标志)有关的交互内容时,图像接口62可接收来自用户(未示出)的图像。系统10识别该图像中的对象,且能够向用户提供与对象关联的虚拟内容。此外,图像接口62可接收系统10使用的图像,以产生与不同对象关联的描述符。输入接口45可包括例如连接器接口、存储设备接口、或接收来自移动设备15的信息的本地或无线通信端口。在一个示例中,从移动设备15或其他设备接收的虚拟内容和图像可用于创建或补充存储在存储器35中的数据库。
处理器30包括控制单元33,且可使用其中的至少一个处理器执行存储在存储器35中的计算机可读指令的任何合适类型的处理系统实现。存储器35包括任意合适类型、数量、和结构的易失性或非暂时性机器可读存储介质37(图3中示出),用于存储指令和数据。存储器35中的机器可读存储介质37的示例包括只读存储器(“ROM”)、随机存取存储器(“RAM”)(例如,动态RAM[“DRAM”]、同步DRAM[“SDRAM”],等)、电可擦除可编程只读存储器(“EEPROM”)、闪存、SD卡、及其他合适的磁、光、物理或电存储设备。存储器35还可用于在待由处理器30执行的指令的执行期间,存储瞬时变量或其他中间信息。
存储器35还可存储操作系统70,例如,Mac OS、MS Windows、Unix或Linux;网络应用75;以及各种模块(例如,内容组织模块40、对象识别模块42,等)。操作系统70可为多用户、多处理、多任务、多线程、以及实时的。操作系统70还可实施基本任务,例如,识别来自输入设备的输入,输入设备例如键盘、小键盘、或鼠标;向投影仪和摄像头发送输出;保持追踪存储器35上的文件和目录;控制外围设备,例如,打印机、图像采集设备;以及管理总线55上的流量。网络应用75包括各种组件,用于建立和维护网络连接,例如,实现通信协议的计算机可读指令,协议包括TCP/IP、HTTP、以太网、USB以及火线。
机器可读存储介质可认为是制造品或制造品的部分。制造品指制造的组件。存储在机器可读存储介质上且由处理器30执行的软件包括例如:固件、应用、程序数据、过滤器、规则、程序模块、以及其他可执行指令。此外,控制单元33从机器可读存储介质获取并执行与控制本文描述的处理和方法有关的指令等。
图3示出了用可由系统10的处理器30执行的指令编码的机器可读存储介质37的示例。在一个示例中,机器可读存储介质37包括数据获取模块(“DAQ”)80、数据处理模块85、内容组织模块40、以及对象识别模块42。在其他示例中,机器可读存储介质37可包括更多或更少的模块(例如,与系统10的运行有关的各种其他模块)。如此外在下面详细解释的,内容组织模块40提供各种计算机可读指令组件,用于组织和存储系统10的内容,因此,系统是有效的、负载均衡的、且可扩展的。此外,对象识别模块42提供各种计算机可读指令组件,用于执行有效的对象匹配算法,以及基于系统10的服务器20接收的图像识别对象。
在一个示例中,移动设备15中的每个还包括与计算设备27中的各模块通信的AR模块(移动设备15上未示出)。每个移动设备15上的AR模块可实现为移动应用的形式。在一些示例中,移动设备15经由线上商店、经由专用服务器等从设备的制造商网站下载移动应用(即,软件应用)。移动设备15的软件应用包括软件接口(未示出),其中,移动设备的用户上传图像,并向服务器20发送图像。
可存储、记录、处理和分析与系统10、移动设备15、服务器20以及其他系统/设备关联的信息和数据,以实现本文描述的控制方法和处理。除了数据获取模块80外,存储器35包括数据记录器95以及至少一个数据库97。此外,系统10在服务器20的任一个中还可包括其他数据库(未示出)。DAQ模块80从移动设备15、服务器20、或从连接至服务器20的各种外部设备或系统接收信息或数据。在一个示例中,DAQ模块80从各种内容创建者用户接收与各种对象有关的内容,还从询问用户(在一些情况下,还可为内容创建者用户)接收图像。
DAQ模块80收集的信息提供至数据处理模块85以及数据记录器95。数据处理模块85处理DAQ模块80收集或由系统10生成的信息。数据记录器95将信息(例如,接收的内容、图像,等等)存储在数据库97中,以供进一步存储和处理。在数据库中,从移动设备15或其他设备接收的信息可与身份记录关联,以更容易访问和获取。在一个示例中,数据库97包括在计算设备270的存储器35中。在另一个示例中,数据库97是远程数据库(即,未位于计算设备27中)。在该示例中,数据库记录器95通过网络(例如,网络25)向数据库97提供信息。如此外在下面详细描述的,DAQ模块80收集的信息可用于生成存储在系统10中的多个通道(未示出)。
因此,存储在数据库97和系统10的其他数据库中的信息和数据可由计算设备27访问,以进行处理。例如,通过使用下面描述的方法,计算设备27可基于从用户接收的图像执行对象识别处理。此外,控制单元33从机器可读存储介质获取并执行与本文描述的控制处理和方法有关的指令。执行时,指令使控制单元33将通道组分布于多个服务器,其中,通道组具有基本相同的存储器成本以及基本相同的处理成本。
此外,指令使控制单元33从用户接收图像,以确定与用户关联的通道,以及通过使用分布于多个服务器的通道组来确定管理与用户关联的通道的服务器列表。指令还使控制单元33从服务器列表选择哪个服务器用于查询与用户关联的通道。指令使控制单元33用图像查询选择的服务器,以查询与用户关联的通道,从而将图像和与用户关联的通道的对象数据库的至少一个对象匹配。最后,指令使控制单元33获取与对象关联的内容。
图4是示出了组织系统10中虚拟内容的方法100的示例的流程图。在一个示例中,方法100可由计算设备27的处理器的控制单元33执行。在另一个示例中,方法100可由服务器20中的任一个的处理器的控制单元执行。能够同时、并行、或以与示出的顺序执行方式不同的顺序执行本文结合方法100描述的各种步骤。还可使用所示的示例中示出的其他或更少的步骤执行方法100。
可以编码在可由计算设备27的处理器30执行的非暂时性计算机可读存储介质37上的指令的形式来执行方法100。在一个示例中,方法100的指令存储在内容组织模块40中。
方法100始于步骤105,在步骤105,控制单元33将与多个对象和与对象有关的内容关联的描述符分组成多个通道。因此,系统10创建的每个通道包括与链接至与每个对象有关的内容的多个对象关联的多个描述符。在一些示例中,系统10包括两种类型的用户:内容创建者用户以及询问用户。两种类型的用户可能需要注册AR系统10(即,通过创建用户账户注册)。内容创建者用户还可通过经由外部设备(例如,便携式电脑、智能电话,等等)发送内容来向系统10上传内容。
内容创建者用户的一个示例是想要能够经由AR系统向询问用户呈现其菜单和菜的饭店。内容创建者用户注册系统,创建账户,并向服务器20中的一个发送内容。系统10(例如,通过使用计算设备27或服务器20上的另一个处理器)自动创建该用户的通道,其中,该通道包括关联于与饭店有关的对象的各种描述符。经由系统生成的描述符将系统10接收的内容与不同的对象(例如,饭店入口、名称标志,等等)关联,且可在询问用户提供的图像中确定对象。
如上所述的,通道还包括与这些对象关联的描述符。描述符包括用于确定从用户接收的图像中是否存在对象的数据。这些描述符可源自系统的不同的用户提供的图像,或系统生成的图像。在一个示例中,描述符可包括源自图像的对象的点特征和关联的几何的集合。还可使用其他类型的描述符。在各通道中,每个描述符与对象关联,且链接至与对象有关的内容。在一些示例中,系统10包括大量的通道(例如,成百上千或甚至数百万)。各通道可为不同大小的,且一些通道与比其他通道更多的询问用户关联。可由系统10自动更新各通道,使得与该用户有关的任何未来的内容自动包括在用户的通道中。依据于AR系统的实现方式,每个通道的描述符可存储在AR系统的各服务器的RAM中,或可存储在中央数据库中,可与用于存储内容的数据库相同,或者不相同。
在询问用户创建系统10的账户时,询问用户可表示对特定内容创建者(例如,特定饭店)的兴趣。这样,系统10自动给询问用户订阅与内容创建者有关的通道,或将询问用户与和内容创建者有关的内容关联。此外,任何时间询问用户向系统10上传图像,且系统确定图像中的对象,系统10自动给询问用户订阅与对象有关的通道,或将与对象有关的通道与询问用户关联。在一个示例中,每个用户订阅特定数量的通道,或与特定数量的通道关联。因此,各通道指示系统10哪个用户可接收与特定通道关联的内容。如果所有通道(即,与图像关联的描述符和内容)存储在一个数据库中,用户上传的图像需要与大量通道和描述符匹配。这减慢了系统10的运行。
继续参照图4,(在步骤110)控制单元33随后将与通道中的对象关联的多个描述符存储在位于多个服务器的存储器(例如,RAM)中的多个对象数据库中。因此,每个数据库包括多个对象的描述符。与描述符关联的内容可存储在服务器20的永久性存储器(例如,磁盘,等等)中,或存储在其他外部数据库中。在一个示例中,控制单元33可创建对应于系统10中的通道的数量的多个对象数据库。如此外在下面详细解释的,对象数据库用于将从用户接收的图像中的对象与对象数据库中的描述符匹配,以获取与对象有关的内容。不同的对象数据库可存储在多个服务器20上,且对象数据库的拷贝可存储在不止一个服务器20上的RAM中。由于具有通道中的每个的描述符的对象数据库存储在服务器20的随机存取存储器中,这去除了磁盘输入/输出,且更快速的实施与对象识别有关的处理。此外,由于每个数据库包含多个对象的描述符,因此时间复杂性(即,算法随着输入的长度的函数运行花费的时间量)是描述符数量的子线性。
接着,在步骤115,控制单元33确定系统10中的每个通道关联的存储器成本。在一个示例中,与每个通道关联的存储器成本确定存储每个通道中的对象的所有描述符需要的服务器20中的存储器。可基于通道中的多个对象,通过执行存储器成本函数确定每个通道的存储器成本。随后,(在步骤120)控制单元33确定与系统10中的每个通道关联的处理成本。在一个示例中,基于通道中的多个对象且基于订阅通道的多个用户,通过执行处理成本函数,确定每个通道的处理成本。每个通道的处理成本确定管理通道的(例如,服务器20的)处理功率(即,每单位时间需要多少CPU周期来管理通道)。
在步骤125,控制单元33基于存储器成本和处理成本,将多个通道组成多个组,也称为“超级通道”。在一个示例中,每个通道组具有基本相同的存储器成本和基本相同的处理成本。接着,在步骤130,控制单元33将多个通道组分配或分布于多个服务器上。服务器20中的每个可管理超过一个通道组。在一个示例中,控制单元33将多个通道组均匀分布于所有服务器20。在另一个示例中,服务器20可具有不同的配置,且它们的存储器和处理能力可能不同。在该情况下,控制单元33以这样的方式分布多个通道组:匹配服务器20的存储器/处理功率分配(例如,更强大的服务器可管理更多的通道组,不那么强大的服务器可管理较少的通道组)。这样,系统20实现处理均衡。
在一个示例中,控制单元33使用哈希环分配多个通道组。使用哈希环确保所有通道对计算设备27的可用性,服务器20之间的通道数据的分区中的平等,对组件故障的容忍(即,每个通道存储在超过一个服务器上的情况下,因此如果一个服务器故障,将有至少一个其余服务器管理通道),以及动态增加或移除通道的能力(即,增加或移除通道时,哈希环自动在服务器之间移动数据,以维持想要的冗余水平)。在一些示例中,控制单元33创建一些或所有通道组的几个拷贝,并在不同的服务器20分配它们。此提出的系统10中的虚拟内容的组织允许系统10的最佳运行。此外,如此外在下面详细描述的,通道的对象数据库以及分布于多个服务器上的通道组用于基于从用户接收的图像,执行有效的对象识别方法。
图5是示出了系统10实施的对象识别的方法200的示例的流程。在一个示例中,方法200可由计算设备27的处理器的控制单元33执行。在另一个示例中,方法200可由服务器20中的任一个的处理器的控制单元执行。能够同时、并行或以示出的连续执行顺序不同的顺序执行本文结合方法200描述的各种步骤。还可使用示出的示例中示出的其他或更少的步骤执行方法200。
方法200可以编码在可由计算设备27的处理器30执行的非暂时性计算机可读存储介质上的指令的形式。在一个示例中,方法200的指令可存储在对象识别模块40中。方法200利用系统10的虚拟内容的组织的好处。
方法200始于步骤205,在步骤205,控制单元33执行指令以接收来自用户的图像。图像通常采集真实世界的视图,且可包括对象(例如,标志、建筑物,等)。在一个示例中,从移动设备15(例如,通过使用移动设备的摄像头)接收图像。在另外示例中,可从另一电子设备(例如,PC,等)接收图像,其中,从设备的存储器获取图像。从用户接收的每个图像与用户ID关联,用户ID可在用户注册系统10时生成。
在步骤210,控制单元33执行指令以确定用户订阅的通道。如上所述的,每个用户可订阅不同数量的通道,或可与不同数量的通道关联。在一个示例中,通过基于用户ID查询存储在服务器20或计算设备27的存储器(例如,RAM或磁盘)中的数据库(例如,SQL数据库),确定用户订阅或与用户关联的通道。这样,控制单元返回与用户ID关联的所有通道。接着,在步骤215,控制单元33执行指令,以通过使用分布于服务器20集群的通道组(即,超级通道),确定管理用户订阅的通道中的每个的服务器的列表。这样,控制单元33不向集群中的每个服务器20中的所有通道发送图像及对比图像。
在一个示例中,确定管理用户订阅的通道的服务器列表包括:查询包括分布于服务器20集群的通道组的数据库(例如,SQL数据库)。依据于包括在该数据库中的信息是什么,该查询还可返回用户订阅的通道列表。可选地,管理用户订阅的通道的服务器列表可存储在客户端设备(移动设备、PC,等等)上,且可在用户上传图像时替代用户ID或与用户ID一起上传。此外,控制单元33可向每个服务器20发送消息,以询问每个服务器管理的通道列表。
随后,在步骤220,控制单元33执行指令,以从管理用户订阅的通道的服务器列表选择哪个服务器(或至少一个服务器)用于查询用户订阅的通道。如上所述的,同样的通道组可分布在不同的服务器上,且因此,每个通道可与不止一个服务器关联(通过执行将通道组的多个拷贝存储在服务器20上的哈希环完成)。例如,系统10可包括服务器A、B和C,其中,服务器A管理通道X,服务器B管理通道Y,服务器C管理通道X和Y。在该情况下,控制单元33可仅选择服务器Y用于查询用户订阅的每个通道。这样,不存在处理器30实施的额外处理。
接着,(在步骤225)控制单元33执行指令,以用图像查询选择的服务器用于用户订阅的通道,以确定与用户订阅的通道的对象数据库的图像匹配的至少一个对象。在一个示例中,控制单元33将接收的图像与存储在用户订阅的每个通道的对象数据库中的描述符作比较。由于通道的对象数据库存储在服务器的RAM上,处理器30可更快且不需要任何不必要的处理地查询对象数据库(即,去除了磁盘输入/输出,且对象识别算法的时间复杂性是描述符数量的子线性)。通过使用存储在与用户订阅的每个通道关联的对象数据库中的描述符,(在步骤232)控制单元33确定与对象数据库中的描述符关联的至少一个对象是否匹配图像。如果至少一个对象匹配图像,控制单元33停止处理,并继续到步骤232。如果没有对象匹配对象,控制单元33返回步骤205,在步骤205,计算设备接收另一个图像。控制单元33还可生成消息,以告知用户没有找到图像的匹配。
在步骤232,控制单元33执行指令,以获取并发送与至少一个对象关联的内容。对象数据库中的描述符链接到与每个识别的对象关联的内容。内容可存储在每个服务器(例如,存储在磁盘上)或存储在另一个数据库(即,系统10内部或外部)。控制单元33通过使用从对象数据库确定的描述符,从合适的数据库获取与匹配对象关联的特定的内容。控制单元33随后向提供图像的询问用户发送内容(例如,向移动设备15或另一电子设备发送)。在步骤235,控制单元确定是否从用户接收了另一个图像。如果没有接收图像,处理200结束。如果接收了另一个图像,控制单元返回步骤205。提出的方法允许系统10有效地以高异构性通道大小以及用户订阅运行,而无需不必要的处理。

Claims (14)

1.一种增强现实系统实施的对象识别方法,所述方法包括:
在计算设备且从用户接收图像;
使用所述计算设备确定所述用户订阅的通道;
使用所述计算设备,通过使用分布于服务器集群的通道组确定管理所述用户订阅的所述通道的服务器列表;
使用所述计算设备从所述服务器列表选择哪个服务器用于查询所述用户订阅的所述通道;
使用所述计算设备,使用所述图像查询所选择的服务器用于所述用户订阅的所述通道,以确定匹配所述用户订阅的所述通道的对象数据库的所述图像的至少一个对象;以及
使用所述计算设备获取并发送与所述至少一个对象关联的内容。
2.根据权利要求1的所述方法,其中,所述通道包括与多个对象以及和所述对象有关的内容关联的多个描述符,且其中,确定管理所述用户订阅的所述通道的服务器列表包括:查询包括分布于所述服务器集群的所述通道组的数据库。
3.根据权利要求2的所述方法,其中,通过以下步骤确定分布于服务器集群的所述通道组:
将与所述通道中的所述对象关联的描述符存储在位于存储器中的多个对象数据库中;
为每个通道分配存储器成本;
为每个通道分配处理成本;
基于所述存储器成本以及所述处理成本将所述多个通道组成组;以及
将所述通道组分布于服务器集群。
4.根据权利要求3的所述方法,其中,同样的通道组分布于不同的服务器上,且其中,描述符包括用于确定从用户接收的图像中是否存在对象的数据。
5.根据权利要求3的所述方法,其中,为每个通道分配存储器成本包括:基于所述通道中的多个对象,执行存储器成本函数,且其中,每个通道的所述存储器成本确定存储每个通道中的所述对象的所有描述符需要的存储器。
6.根据权利要求3的所述方法,其中,为每个通道分配处理成本包括:基于所述通道中的多个对象以及基于订阅所述通道的多个用户,执行处理成本函数,且其中,每个通道的所述处理成本确定管理所述通道需要的处理功率。
7.根据权利要求3的所述方法,其中,所述通道组具有基本相等的存储器成本和处理成本。
8.一种增强现实系统,所述系统包括:
多个服务器,连接至多个移动设备;以及
计算设备,连接至所述多个服务器中的至少一个,所述计算设备具有控制单元,用于:
将与多个对象以及和所述对象有关的内容关联的多个描述符分组成多个通道,
将与所述通道中的所述对象关联的所述多个描述符存储在位于存储器中的多个对象数据库中,
确定与每个通道关联的存储器成本;
确定与每个通道关联的处理成本;
基于所述存储器成本和所述处理成本,将所述多个通道组成组,其中,所述通道组具有基本相同的存储器成本以及基本相同的处理成本,以及
将所述通道组分配在所述多个服务器上。
9.根据权利要求8的所述系统,其中,描述符包括用于确定从用户接收的图像中是否存在对象的数据。
10.根据权利要求8的所述系统,其中,所述控制单元用于基于所述通道中的多个对象,执行存储器成本函数,以确定每个通道的所述存储器成本,且其中,每个通道的所述存储器成本确定存储所述通道中的所述对象的所有描述符需要的存储器。
11.根据权利要求8的所述系统,其中,所述控制单元用于基于所述通道中的多个对象以及基于订阅所述通道的多个用户,执行处理成本函数,且其中,每个通道的所述处理成本确定管理所述通道需要的处理功率。
12.一种用可由增强现实系统的计算设备的处理器执行的指令编码的非暂时性计算机可读存储介质,所述机器可读存储介质包括指令,用于:
将通道组分布于多个服务器,其中,所述通道组具有基本相同的存储器成本和基本相同的处理成本;
从用户接收图像;
确定与所述用户关联的通道;
通过使用分布于所述多个服务器的所述通道组,确定管理与所述用户关联的所述通道的服务器列表;
从所述服务器列表选择哪个服务器用于查询与所述用户关联的所述通道;
使用所述图像查询所选择的服务器用于与所述用户关联的所述通道,以将所述图像和与所述用户关联的所述通道的对象数据库的至少一个对象匹配;以及
获取与所述对象关联的内容。
13.根据权利要求12的所述非暂时性计算机可读存储介质,其中,所述通道包括与多个对象以及和所述对象有关的内容关联的多个描述符,且其中,每个对象数据库包括与每个通道中的所述对象关联的多个描述符。
14.根据权利要求12的所述非暂时性计算机可读存储介质,其中,基于所述通道中的多个对象确定每个通道的所述存储器成本,以确定存储每个通道中的所述对象的所有描述符需要的存储器,并且其中,基于所述通道中的多个对象以及基于与所述通道关联的多个用户,确定每个通道的所述处理成本,以确定管理所述通道需要的处理功率。
CN201380079167.5A 2013-06-27 2013-06-27 增强现实 Expired - Fee Related CN105849719B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2013/063559 WO2014206475A1 (en) 2013-06-27 2013-06-27 Augmented reality

Publications (2)

Publication Number Publication Date
CN105849719A true CN105849719A (zh) 2016-08-10
CN105849719B CN105849719B (zh) 2021-09-28

Family

ID=48832874

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380079167.5A Expired - Fee Related CN105849719B (zh) 2013-06-27 2013-06-27 增强现实

Country Status (4)

Country Link
US (1) US10013807B2 (zh)
EP (1) EP3014483B8 (zh)
CN (1) CN105849719B (zh)
WO (1) WO2014206475A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107749924A (zh) * 2017-10-27 2018-03-02 努比亚技术有限公司 连接多个移动终端的vr设备操作方法及对应的vr设备

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180349568A1 (en) * 2017-06-01 2018-12-06 Hookline Inc. Augmented reality system and method
US11271815B1 (en) * 2017-06-13 2022-03-08 Amazon Technologies, Inc. Access management for a multi-endpoint data store
WO2019055679A1 (en) 2017-09-13 2019-03-21 Lahood Edward Rashid METHOD, APPARATUS, AND COMPUTER-READABLE MEDIA FOR DISPLAYING INCREASED REALITY INFORMATION

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040236780A1 (en) * 2003-02-25 2004-11-25 Michael Blevins Systems and methods for client-side filtering of subscribed messages
US7562129B1 (en) * 1999-04-15 2009-07-14 Alcatel-Lucent Canada Inc. Subscription management system for data communication network
US20090265311A1 (en) * 2008-04-16 2009-10-22 International Business Machines Corporation Intellectual Property Subscribe And Publish Notification Service
US20110306387A1 (en) * 2010-06-14 2011-12-15 Lg Electronics Inc. Mobile terminal and control method thereof
US20120047223A1 (en) * 2010-08-20 2012-02-23 Nokia Corporation Method and apparatus for distributed storage
CN102375972A (zh) * 2010-08-23 2012-03-14 谢铮 一种分布式的基于可移动设备的增强现实平台
CN102546564A (zh) * 2010-12-30 2012-07-04 腾讯科技(深圳)有限公司 一种信息推送的控制方法及系统
CN102880854A (zh) * 2012-08-16 2013-01-16 北京理工大学 基于分布式和哈希映射的室外海量物体识别方法和系统
CN103139755A (zh) * 2011-11-23 2013-06-05 珠海德百祺科技有限公司 基于订阅的应用程序管理方法、系统及装置

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7117200B2 (en) * 2002-01-11 2006-10-03 International Business Machines Corporation Synthesizing information-bearing content from multiple channels
US7788260B2 (en) * 2004-06-14 2010-08-31 Facebook, Inc. Ranking search results based on the frequency of clicks on the search results by members of a social network who are within a predetermined degree of separation
US7760917B2 (en) * 2005-05-09 2010-07-20 Like.Com Computer-implemented method for performing similarity searches
US7853296B2 (en) * 2007-10-31 2010-12-14 Motorola Mobility, Inc. Mobile virtual and augmented reality system
US8098881B2 (en) * 2008-03-11 2012-01-17 Sony Ericsson Mobile Communications Ab Advertisement insertion systems and methods for digital cameras based on object recognition
US20090300101A1 (en) 2008-05-30 2009-12-03 Carl Johan Freer Augmented reality platform and method using letters, numbers, and/or math symbols recognition
US9191238B2 (en) * 2008-07-23 2015-11-17 Yahoo! Inc. Virtual notes in a reality overlay
KR101068465B1 (ko) 2009-11-09 2011-09-28 한국과학기술원 삼차원 물체 인식 시스템 및 방법
US8866845B2 (en) 2010-03-10 2014-10-21 Empire Technology Development Llc Robust object recognition by dynamic modeling in augmented reality
WO2011112940A1 (en) * 2010-03-12 2011-09-15 Tagwhat, Inc. Merging of grouped markers in an augmented reality-enabled distribution network
KR101357260B1 (ko) 2010-10-22 2014-02-03 주식회사 팬택 증강 현실 사용자 인터페이스 제공 장치 및 방법
US20150070347A1 (en) 2011-08-18 2015-03-12 Layar B.V. Computer-vision based augmented reality system
KR101382703B1 (ko) * 2012-08-28 2014-04-08 인하대학교 산학협력단 증강현실 기술과 대용량 데이터의 통합을 위한 상호작용 방법 및 장치
US9461876B2 (en) * 2012-08-29 2016-10-04 Loci System and method for fuzzy concept mapping, voting ontology crowd sourcing, and technology prediction
US10521830B2 (en) * 2013-03-14 2019-12-31 Facebook, Inc. Method for displaying a product-related image to a user while shopping

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7562129B1 (en) * 1999-04-15 2009-07-14 Alcatel-Lucent Canada Inc. Subscription management system for data communication network
US20040236780A1 (en) * 2003-02-25 2004-11-25 Michael Blevins Systems and methods for client-side filtering of subscribed messages
US20080059597A1 (en) * 2003-02-25 2008-03-06 Bea Systems, Inc. Systems and methods for client-side filtering of subscribed messages
US20090265311A1 (en) * 2008-04-16 2009-10-22 International Business Machines Corporation Intellectual Property Subscribe And Publish Notification Service
US20110306387A1 (en) * 2010-06-14 2011-12-15 Lg Electronics Inc. Mobile terminal and control method thereof
US20120047223A1 (en) * 2010-08-20 2012-02-23 Nokia Corporation Method and apparatus for distributed storage
CN102375972A (zh) * 2010-08-23 2012-03-14 谢铮 一种分布式的基于可移动设备的增强现实平台
CN102546564A (zh) * 2010-12-30 2012-07-04 腾讯科技(深圳)有限公司 一种信息推送的控制方法及系统
CN103139755A (zh) * 2011-11-23 2013-06-05 珠海德百祺科技有限公司 基于订阅的应用程序管理方法、系统及装置
CN102880854A (zh) * 2012-08-16 2013-01-16 北京理工大学 基于分布式和哈希映射的室外海量物体识别方法和系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107749924A (zh) * 2017-10-27 2018-03-02 努比亚技术有限公司 连接多个移动终端的vr设备操作方法及对应的vr设备

Also Published As

Publication number Publication date
US20160140765A1 (en) 2016-05-19
US10013807B2 (en) 2018-07-03
EP3014483A1 (en) 2016-05-04
EP3014483B8 (en) 2019-06-19
CN105849719B (zh) 2021-09-28
EP3014483B1 (en) 2019-05-01
WO2014206475A1 (en) 2014-12-31

Similar Documents

Publication Publication Date Title
US10102227B2 (en) Image-based faceted system and method
US11115724B2 (en) Visual hash tags via trending recognition activities, systems and methods
CN106446049B (zh) 一种页面数据交互装置及方法
CN105144156B (zh) 将元数据与个人图像集合中的图像相关联
CN110134829B (zh) 视频定位方法和装置、存储介质及电子装置
CN105721629B (zh) 用户标识匹配方法和装置
DE112018006630T5 (de) Visual fog
CN110321422A (zh) 在线训练模型的方法、推送方法、装置以及设备
US10453165B1 (en) Computer vision machine learning model execution service
US9129296B2 (en) Augmenting recommendation algorithms based on similarity between electronic content
CN110139162A (zh) 媒体内容的共享方法和装置、存储介质、电子装置
CN110598110B (zh) 业务推送方法和装置
CN104823169A (zh) 用于网络中的可搜索数据的索引配置
CN110413867B (zh) 用于内容推荐的方法及系统
CN105849719A (zh) 增强现实
CN104424257A (zh) 信息检索装置和信息检索方法
CN111859127A (zh) 消费数据的订阅方法、装置及存储介质
CN106407268A (zh) 一种基于覆盖率最优化法的内容检索方法及系统
CN105871921B (zh) 一种数据处理方法及装置
CN104901939B (zh) 多媒体文件播放方法和终端及服务器
US20230038310A1 (en) Devices, Methods, and System for Heterogeneous Data-Adaptive Federated Learning
CN111814020A (zh) 一种数据的获取方法和装置
CN105740251B (zh) 一种总线式整合不同内容源的方法和系统
CN110895583A (zh) 数据资源获取的方法、装置和系统
CN116263659A (zh) 数据处理方法、装置、计算机程序产品、设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20181123

Address after: Texas, USA

Applicant after: HEWLETT-PACKARD DEVELOPMENT Co.,L.P.

Address before: Bracknell

Applicant before: Aurisma Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20210928

CF01 Termination of patent right due to non-payment of annual fee