用于数据库创建目的的交互式且自动3d对象扫描方法_5

文档序号:9493734阅读:来源:国知局
501 (即,硬件模块)编程以用于进行快门释放和图像捕获的应用程序模块。此相机模块可 用于捕获图像,例如图1的图像122和124,以及图4的图像412和414。
[0090] 其它硬件模块可为例如加速计、Wi-Fi收发器、卫星导航系统接收器(例如GPS模 块)、压力t旲块、温度t旲块、首频输出和/或输入t旲块(例如麦克风)、相机t旲块、接近传感 器、^双号(ALS)模块、电容性触摸传感器、近场通信(NFC)模块、Blue切0th?收发器、蜂 窝收发器、磁力计、陀螺仪、惯性传感器(例如组合加速计和陀螺仪的模块)、环境光传感 器、相对湿度传感器或可操作以提供感觉输出和/或接收感觉输入的任何其它类似模块。 在一些实施例中,硬件模块的一或多种功能可在软件中实施。另外,如本文所述,某些硬件 模块,例如加速计、GPS模块、陀螺仪、惯性传感器或其它此类模块,可用于估计关键帧之间 的相对位置。此信息可用于结合上文所述的基于图像的技术来改进数据品质,或可代替此 类方法以便保存处理器资源。在某些实施例中,用户可使用用户输入模块504来选择此选 项。
[0091] 移动装置500可包含例如无线通信模块等组件,其可将天线514和无线收发器512 与任何其它无线通信所必需的硬件、固件或软件集成。此无线通信模块可经配置以经由网 络和例如网络接入点等接入点,从例如数据源等各种裝置接收信号。在某些实施例中,可将 紧凑对象表示传送到服务器计算机、其它移动装置或其它连网计算装置,以存储在远程数 据库中,且在裝置执行目标辨识功能性时,由多个其它装置使用。
[0092] 除存储器520中的其它硬件模块和应用程序之外,移动装置500还可具有显示器 输出503和用户输入模块504。显示器输出503以图形方式将来自移动装置500的信息呈 现给用户。此信息可从一或多个应用程序模块、一或多个硬件模块、其组合,或任何其它用 于为用户解析图形内容(例如通过操作系统523)的合适装置导出。显示器输出503可为液 晶显示器(IXD)技术、发光聚合物显示器(LPD)技术,或一些其它显示器技术。在一些实施 例中,显示模块503为电容性或电阻性触摸屏,且可对与用户的触感及/或触觉接触敏感。 在这类实施例中,显示器输出503可包含多触敏显示器。显示器输出503可接着用以与对 象识别模块521相关联的任何数目的输出,例如结合来自数据库524的紧凑对象表示,使用 目标辨识输出的增强现实。还可显示接口选择,以选择扫描和存储选项。当扫描对象时,还 可实时地连同所述对象的图像一起显示关键点。
[0093]图6提供可与例如本文所述的图1到5所描述的实施例等各种其它实施例一起使 用的计算装置600的一个实施例的示意性说明。图6仅意图提供对各种组件的一般化说明, 可在适当时利用所述组件中的任一者或全部。在某些实施例中,举例来说,图6和图5的组 件可包含于单个装置中,或可包括一个具体实施例的多个分布式裝置中。因此,图6大体上 说明可如何以相对分离或相对较集成的方式来实施个别系统元件,且描述在(例如)由来 自非暂时性计算机可读存储设备存储装置(例如存储装置625)的计算机可读指令控制时, 可实施根据实施例的特定方法的元件。
[0094] 示出计算装置600,其包括可经由总线605电耦合(或另外可以在适当时通信) 的硬件元件。硬件元件可包含:一或多个处理器610,包含(但不限于)一或多个通用处理 器和/或一或多个专用处理器(例如数字信号处理芯片、图形加速度处理器和/或其类似 者);一或多个输入装置615,其可包含(但不限于)鼠标、键盘和/或其类似者;以及一或 多个输出装置620,其可包含(但不限于)显示装置、打印机和/或其类似者。
[0095] 计算装置600可进一步包含以下各项(和/或与以下各项通信):一或多个非暂 时性存储装置625,所述非暂时性存储装置625可包括(但不限于)本地及/或网络可存取 的存储装置,和/或可包含(但不限于)磁盘驱动器、驱动阵列、光学存储装置、例如随机存 取存储器("RAM")和/或只读存储器("ROM")等固态存储装置,其可为可编程的、可快 闪更新的和/或其类似者。这类存储装置可经配置以实施任何适当的数据存储装置,包括 (但不限于)各种文件系统、数据库结构和/或类似者。
[0096] 计算装置600还可包含通信子系统630,其可包含(但不限于)调制解调器、网卡 (无线或有线)、红外线通信装置、无线通信装置和/或芯片组(例如,蓝牙装置、702. 11装 置、Wi-Fi装置、WiMax装置、蜂窝式通信设施等)和/或相似的通信接口。通信子系统630 可准许与网络(例如,作为一个实例,下文所描述的网络)、其它计算机系统及/或本文中 所描述的任何其它装置交换数据。例如移动装置500等移动装置可因此除包含无线收发器 512和LAN无线收发器542的那些通信子系统之外,还包含其它通信子系统。
[0097] 在许多实施例中,计算装置600将进一步包括非暂时性工作存储器635,其可包含 RAM或ROM装置,如上文所描述。计算装置600还可包括展示为当前位于工作存储器635 内的软件元件,包含操作系统640、装置驱动器、可执行库及/或例如一或多个应用程序645 等其它代码,其可包括通过各种实施例提供和/或可经设计以实施方法及/或配置系统、通 过其它实施例提供的计算机程序,如本文所描述。仅举例来说,相对于上文所论述的方法而 描述的一或多个程序可实施为可由计算机(和/或计算机内的处理器)执行的代码和/或 指令;在一个方面中,接着,可使用此代码和/或指令来配置和/或调适通用计算机(或其 它装置),以根据所描述的用于扫描对象的方法来执行一或多个操作,以识别关键帧、关注 点、关键点;创建对象表示;将对象表示存储在数据库中;且检索对象表示以用于未知或部 分未知场景的后来扫描中的对象识别。
[0098] 这些指令和/或代码的集合可存储在计算机可读存储媒体(例如,上文所描述的 存储装置625)上。在一些情况下,存储媒体可并入计算机系统(例如,计算装置600)内。 在其它实施例中,存储媒体可与计算机系统分离(例如,可装卸式媒体(例如,压缩光盘), 和/或提供于安装包中,使得存储媒体可用以编程、配置和/或调适其上存储有指令/代码 的通用计算机。这些指令可呈可由计算装置600执行的可执行码的形式,且/或可呈源和 /或可安装码的形式,所述源和/或可安装码在计算装置600上编译和/或安装于计算装 置600上(例如,使用多种通常可用编译程序、安装程序、压缩/解压缩公用程序等中的任 一者)后,接着呈可执行码的形式。对象识别模块521和扫描与数据库输入模块522可因 此为如本文所述的可执行码。在替代实施例中这些模块可为硬件、固件、可执行指令,或这 些实施方案的任何组合。
[0099] 可根据特定要求作出实质性变化。举例来说,还可使用定制硬件,和/或可将特定 元件实施于硬件、软件(包含便携式软件,例如小程序等)或两者中。此外,提供某种功能 的硬件和/或软件组件可包含专用系统(具有专门的组件)或可为更通用系统的一部分。 活动选择子系统经配置以提供本文所述的与从来自单个关键帧导出的多个二维关注点创 建的三维关键点的输出的可接受特性的选择有关的特征中的一些或全部,且此类子系统包 括专用(例如专用集成电路(ASIC)、软件方法等)或通用(例如处理器610、可(例如)实 施存储器635内的任何模块的应用程序645等)的硬件和/或软件。另外,可利用到其它 计算装置(例如,网路输入/输出装置)的连接。
[0100] 如本文所使用,术语"机器可读媒体"和"计算机可读媒体"是指参与提供致使机器 以特定方式操作的数据的任何媒体。在使用计算装置600实施的实施例中,在将指令/代 码提供到处理器610以用于执行的过程中可能涉及各种计算机可读媒体,和/或各种计算 机可读媒体可用以存储和/或运载此类指令/代码(例如作为信号)。在许多实施方案中, 计算机可读媒体为物理和/或有形存储媒体。此媒体可采用许多形式,包含但不限于非易 失性媒体、非暂时性媒体、易失性媒体以及传输媒体。非易失性媒体包含例如光盘和/或磁 盘,例如存储装置625。易失性媒体包含(但不限于)动态存储器(例如工作存储器635)。 传输媒体包含(但不限于)同轴电缆、铜线和光纤,包含包括总线605的电线,以及通信子 系统630的各种组件(和/或通信子系统630借此提供与其它装置的通信的媒体)。
[0101] 举例来说,常见形式的物理和/或有形计算机可读媒体包含软性磁盘、柔性磁盘、 硬盘、磁带,或任何其它磁性媒体、CD-ROM、任何其它光学媒体、打孔卡、纸带、具有孔图案的 任何其它物理媒体、RAM、PROM、EPROM、FLASH-EPR0M、任何其它存储器芯片或盒带、如下文所 描述的载波,或计算机可以从其读取指令和/或代码的任何其它媒体。任何此类存储器可 充当存储器520或存储器635,或充当安全存储器,如果其经构造以维护所存储的内容的安 全性。在某些实施例中,对象表示可具有某一水平的相关联安全性,且可存储在存储器635 的与某些安全性或保密性设定相关联的部分中。
[0102] 通信子系统630 (和/或其组件)一般将接收信号,且总线605可能接着将信号 (和/或由所述信号运载的数据、指令等)运载到工作存储器635,处理器610从所述工作 存储器检索指令并执行指令。由工作存储器635接收的指令可在由处理器610执行之前或 之后任选地存储在非暂时性存储装置625上。
[0103] 在本文所述的各种实施例中,计算装置可连网,以便传送信息。举例来说,移动装 置500可连网,以接收信息或与远程对象表示数据库通信,如上文所描述。另外,这些元件 中的每一者可进行与例如网络服务器、数据库或计算机等其它装置的连网通信,其经由网 络提供对用以启用应用程序的信息的存取权。
[0104] 图7说明可根据各种实施例使用以实现例如系统700等系统或可实施用于创建和 存储对象表示以供后来用于识别对象的其它系统的连网计算装置的系统700的示意图。举 例来说,在各种实施例中,可经由连网计算机,将输出的对象表示传送到一或多个数据库, 如系统700所描述。系统700可包括一或多个用户计算装置705。用户计算装置705可为 通用个人计算机(包括,仅举例来说,运行Microsoft181Windows181和/或Mac(^"操作系统 的任何适当衍生系统的个人计算机和/或膝上型计算机),和/或运行多种市售UNIX5或 类似UNIX的操作系统中的任一者的工作站计算机。这些用户计算装置705还可具有多种 应用程序中的任一者,包括经配置以执行本发明的方法的一或多个应用程序,以及一或多 个办公应用程序、数据库客户端和/或服务器应用程序,以及网络浏览器应用程序。或者, 用户计算装置705可为能够经由网络(例如下文描述的网络710)进行通信和/或显示并 导航网页或其它类型的电子文档的任何其它电子装置,例如瘦客户端计算机、具有因特网 能力的移动电话,和/或个人数字助理(PDA)。尽管示出示例性系统700具有三个用户计算 装置705a、705b、705c,但可支持任何数目个用户计算装置。
[0105] 本发明的某些实施例在可包含网络710的连网环境中操作。网络710可为所属领 域的技术人员所熟悉的可使用多种市售协议(包含但不限于TCP/IP、SNA、IPX、AppleTalk 等等)中的任一者来支持数据通信的任何类型的网络。仅举例来说,网络710可为:局域网 ("LAN"),包含(但不限于)以太网网络、令牌环网络和/或其类似者;广域网(WAN);虚拟 网络,包含(但不限于)虚拟专用网络("VPN");因特网;企业内部网;企业外部网;公共 交换电话网络("PSTN");红外线网络;无线网络,包含(但不限于)在IEEE802. 11套件 协议、所属领域中已知的蓝牙协议及/或任何其它无线协议中的任一者下操作的网络;和/ 或这些和/或其它网络的任何组合。网络710可包含用于实现各种计算装置对网络710的 接入的接入点。
[0106] 本发明的实施例可包括一或多个服务器计算机760。服务器计算机760a、760b中 的每一者可配置有操作系统,包含但不限于上文所论述的操作系统以及任何市售(或免 费)服务器操作系统中的任一者。服务器计算机760a、760b中的每一者还可运行一或多个 应用程序,所述应用程序可经配置以将服务提供给一或多个用户计算装置705和/或其它 服务器计算机760。
[0107] 仅举例来说,服务器计算机760中的一者可为网络服务器,仅举例来说,所述网络 服务器可用于处理对网页或来自用户计算设备705的其它电子文档的请求。网络服务器 还可运行多种服务器应用程序,包含HTTP服务器、FTP服务器、C
当前第5页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1