用于定位的视觉OCR

申请号 CN201380011820.4 申请日 2013-02-01 公开(公告)号 CN104145173A 公开(公告)日 2014-11-12
申请人 高通股份有限公司; 发明人 R·古普塔; S·M·达斯; H·赵;
摘要 一种可以接收与粗略 位置 相关联的OCR库信息的移动设备。可以由移动设备或者被配置成与所述移动设备通信的网络 服务器 来确定粗略位置。移动设备上的 照相机 可以获得在粗略位置附近区域中的人类可读信息的图像。可以利用使用了OCR库信息的OCR引擎来处理 取景器 图像以确定一个或多个位置串值。可以基于位置串值来搜索位置 数据库 。可以估计并显示移动设备的位置。可以基于移动设备到图像中的其它特征的接近度来调整所估计的位置。
权利要求

1.一种用于提供位置信息的移动设备,包括:
图像捕获模
存储器,其被配置成存储接收到的光学字符识别(OCR)库信息,其中,所述OCR库信息基于所述移动设备的粗略位置;
处理器,其被编程为:
基于所述接收到的OCR库信息来计算由所述图像捕获模块获得的图像中的位置串值;
以及
基于所述位置串值来确定位置。
2.根据权利要求1所述的移动设备,其中,所述存储器被配置成基于所述移动设备的所述粗略位置来存储接收到的本地信息,并且所述处理器被编程为基于所述本地信息来确定所述位置。
3.根据权利要求1所述的移动设备,其中,所述处理器被编程为发送粗略位置信息。
4.根据权利要求1所述的移动设备,其中,所述处理器还被配置成:基于所述接收到的OCR库信息来计算由所述图像捕获模块获得的一个或多个图像中的多个位置串值,并且基于所述多个位置串值来确定所述位置。
5.根据权利要求1所述的移动设备,包括图形显示器,其中,所述处理器被编程为向所述图形显示器输出所述位置的图形地图。
6.根据权利要求5所述的移动设备,其中,所述图形地图包括与所述位置相关联的兴趣点。
7.一种使用照相机来确定移动设备的位置的方法,包括:
基于所述移动设备的粗略位置来接收OCR库信息;
获得包括人类可读位置信息的图像;
基于所述图像中的所述人类可读位置信息,使用所述OCR库信息来确定位置串值;以及
基于所述位置串值来确定所述移动设备的位置。
8.根据权利要求7所述的方法,包括:使用所述OCR库信息以基于所述图像中的所述人类可读位置信息来确定多个位置串值,并且基于所述多个位置串值来确定所述移动设备的所述位置。
9.根据权利要求7所述的方法,其中,所述位置是影响区。
10.根据权利要求7所述的方法,包括基于所述图像中的一个或多个特征来确定相对位置信息。
11.根据权利要求7所述的方法,包括基于距所述图像中的特征的范围来确定相对位置信息。
12.一种用于启用分布式计算机系统的位置辅助应用,所述位置辅助应用实施在非临时性计算机可读存储介质上,所述位置辅助应用包括:
OCR库代码段,其被配置成存储与粗略位置相关联的OCR库信息,其中,所述OCR库信息被配置成限制由OCR引擎生成的结果;以及
位置信息数据库代码段,其被配置成存储与由所述OCR引擎生成的至少一个位置串值相关联的本地信息。
13.根据权利要求12所述的位置辅助应用,其中,所述位置信息数据库代码段包括精细位置数据库,所述精细位置数据库包括多个精细位置记录,每个所述精细位置记录与一个或多个位置串值相关联。
14.根据权利要求13所述的位置辅助应用,包括测量代码段,所述测量代码段被配置成存储与一个或多个无线发射设备相关联的测量信息。
15.根据权利要求14所述的位置辅助应用,其中,所述多个精细位置记录包括测量信息。
16.一种向移动设备提供本地信息的方法,包括:
基于所述移动设备的粗略位置来确定OCR库信息,其中,所述OCR库信息包括词语列表;
向所述移动设备发送所述OCR库信息;
从所述移动设备接收至少一个位置串值,其中,所述词语列表包括所述至少一个位置串值;
基于所述至少一个位置串值来确定位置信息;以及
向所述移动设备发送所述位置信息。
17.根据权利要求16所述的方法,包括从所述移动设备接收粗略位置信息。
18.根据权利要求16所述的方法,其中,所述OCR库信息包括字符特征文件。
19.根据权利要求16所述的方法,其中,所述OCR库信息包括固定的格式化规则。
20.一种用于确定移动设备的位置的系统,包括:
存储器;
处理器,其被编程为:
确定所述移动设备的粗略位置;
基于所述移动设备的所述粗略位置来计算本地信息数据分组,其中,所述本地信息数据分组包括一个或多个影响区以及与每个所述影响区相关联的位置参考信息;以及向所述移动设备发送所述本地信息数据分组。
21.根据权利要求20所述的系统,其中,所述位置参考信息包括图形符号。
22.根据权利要求20所述的系统,其中,所述位置参考信息包括与快速响应码相关联的值。
23.根据权利要求20所述的系统,其中,所述处理器被编程为:
从所述移动设备接收图像文件;
针对位置参考信息对所述图像进行分析;
基于所述图像中的所述位置参考信息来确定影响区;以及
向所述移动设备发送包括所确定的影响区的所述本地信息数据分组。
24.根据权利要求20所述的系统,其中,所述本地信息数据分组包括OCR库信息。
25.根据权利要求20所述的系统,其中,所述处理器被编程为响应于从所述移动设备发送的请求来发送所述本地信息数据分组。
26.一种位置检测移动设备,包括:
用于确定所述移动设备的粗略位置的单元;
用于捕获位置参考信息的单元;
用于接收位置信息数据分组的单元,其中,所述位置信息数据分组基于所述移动设备的所述粗略位置;
用于使用所述位置信息数据分组和所捕获的位置参考信息来确定所述移动设备的精细位置的单元;以及
用于显示所述精细位置的单元。
27.根据权利要求26所述的位置检测移动设备,其中,所述位置参考信息是人类可读文本的图像,并且所述位置信息数据分组包括OCR库信息。
28.根据权利要求26所述的位置检测移动设备,其中,所述位置参考信息是区域的图像。
29.根据权利要求26所述的位置检测移动设备,其中,所述位置参考信息是快速响应码的图像。
30.根据权利要求26所述的位置检测移动设备,其中,所述位置参考信息是电磁信号并且所述位置信息数据分组包括发射机的位置和检测范围,所述发射机是所述电磁信号的源。
31.根据权利要求26所述的位置检测移动设备,其包括用于检测距目标的范围的单元,其中,所述范围被用于确定所述精细位置。
32.根据权利要求26所述的位置检测移动设备,其中,用于确定所述移动设备的所述粗略位置的所述单元包括先前的SPS位置结果。
33.一种用于移动设备网络中的位置辅助系统,包括:
用于确定针对移动设备的粗略位置信息的单元;
用于存储与所述粗略位置信息相关联的OCR库信息的单元;以及
用于向所移动设备发送本地信息数据分组的单元,其中,所述本地信息数据分组包括与所述粗略位置信息相关联的OCR库信息。
34.根据权利要求33所述的位置辅助系统,包括:
用于存储与所述粗略位置信息相关联的本地信息的单元;以及
用于向所述移动设备发送所述本地信息数据分组的单元,其中,所述本地信息数据分组包括与所述粗略位置信息相关联的本地信息。
35.根据权利要求33所述的位置辅助系统,包括:
用于从所述移动设备接收至少一个位置串值的单元;
用于基于所述至少一个位置串值来确定位置信息的单元;以及
用于向所述移动设备提供所述位置信息的单元。
36.根据权利要求35所述的位置辅助系统,包括:
用于从所述移动设备接收相对位置信息的单元;以及
用于基于所述相对位置信息来确定所述位置信息的单元。
37.一种非临时性计算机可读存储介质,所述存储介质存储有代表计算机可执行的软件的数据,所述软件包括用于确定移动设备的位置的指令,所述存储介质包括:
用于捕获位置参考信息的指令;
用于接收位置信息数据分组的指令,其中,所述位置信息数据分组基于所述移动设备的粗略位置;
用于使用所述位置信息数据分组和所捕获的位置参考信息来确定所述移动设备的精细位置的指令;以及
用于显示所述精细位置的指令。
38.根据权利要求37所述的存储介质,其中,所述位置参考信息是人类可读文本的图像,并且所述位置信息数据分组包括OCR库信息。
39.根据权利要求37所述的存储介质,其中,所述位置参考信息是区域的图像。
40.根据权利要求37所述的存储介质,还包括用于检测距目标的范围的指令,其中所述范围被用于确定所述精细位置。
41.根据权利要求37所述的存储介质,还包括用于确定所述移动设备的所述粗略位置的指令。

说明书全文

用于定位的视觉OCR

技术领域

[0001] 本文公开的主题内容涉及基于通过图像捕获设备获得的视觉信息来确定地理位置。

背景技术

[0002] 移动通信设备是数字信息界中消费者最普遍拥有的技术之一。卫星电话服务和蜂窝电话服务以及其它类似的无线通信网络是广泛可用的。移动通信设备的能及相应的服
务也已扩展到包括诸如图像捕获、到因特网的连接性、以及提供基于位置的服务等应用。这
方面的一项服务是通过移动通信设备向用户提供导航信息,所述移动通信设备以独立模式
运行或者利用来自其它基于网络的设备的协助来运行。
[0003] 例如,可以通过诸如全球定位系统(GPS)、GLONASS、Galileo和其它类似全球导航卫星系统(GNSS)的卫星定位系统(SPS)来提供导航信息。启用SPS的设备可以例如接收
由GNSS的卫星和/或基于陆地的发射设备发送的无线信号。可以例如对接收到的SPS信
号进行处理以估计启用定位的设备(location-enabled device)的位置、速度和/或朝向。
例如,可以向用户提供逐向转向、地图或其它导航信息以便帮助用户驾驶到一位置。
[0004] 然而,在一些情况下,足够精确地确定设备的位置以提供有用的位置和/或导航信息可能是困难的。例如,可能存在SPS信号和/或其它信号的接收是不充分的时候。因
此,由于这个原因以及其它原因,在位置、导航、和/或其它类似信息和/或服务以其它方式
可能难以获得的情况下,采用允许向用户提供位置、导航、和/或其它类似信息和/或服务
的技术可能是有益的。
发明内容
[0005] 一种用于根据本公开内容提供位置信息的移动设备的例子,包括:图像捕获模存储器,其被配置成存储接收到的光学字符识别(OCR)库信息,使得所述OCR库信息基于移
动设备的粗略位置;处理器,其被编程为基于接收到的OCR库信息来计算在由图像捕获模
块获得的图像中的位置串值以及基于所述位置串值来确定位置。
[0006] 这种设备的实施方式可以包括以下特征中的一个或多个。存储器被配置成基于移动设备的粗略位置来存储接收到的本地信息,并且处理器被编程为基于所述本地信息来确
定位置。处理器被编程为发送粗略位置信息。处理器被编程为基于接收到的OCR库信息来
计算由图像捕获模块获得的一个或多个图像中的一个或多个位置串值,并且基于所述一个
或多个位置串值来确定位置。处理器被编程为向图形显示器输出所述位置的图形地图。所
述图形地图包括与所述位置相关联的兴趣点。
[0007] 一种根据本公开内容使用照相机来确定移动设备的位置的方法的例子,包括:基于移动设备的粗略位置来接收OCR库信息;获得包括人类可读位置信息的图像;基于图像
中的人类可读位置信息,使用OCR库信息来确定位置串值;以及基于所述位置串值来确定
移动设备的位置。
[0008] 这种方法的实施方式可以包括以下特征中的一个或多个。基于图像中的人类可读位置信息,使用OCR库信息来确定一个或多个位置串值,并且基于所述一个或多个位置串
值来确定移动设备的位置。所述位置是影响区。基于图像中的一个或多个特征来确定相对
位置信息。基于距图像中的特征的范围来确定相对位置信息。
[0009] 一种根据本公开内容用于启用分布式计算机系统的位置辅助应用的例子,所述位置辅助应用实施在非临时性计算机可读存储介质内,所述位置辅助应用包括:OCR库代码
段,其被配置成存储与粗略位置相关联的OCR库信息,使得所述OCR库信息被配置成限制由
OCR引擎生成的结果;以及位置信息数据库代码段,其被配置成存储与由OCR引擎生成的至
少一个位置串值相关联的本地信息。
[0010] 这种位置辅助应用的实施方式可以包括以下特征中的一个或多个。位置信息数据库代码段包括精细位置数据库,所述精细位置数据库包括一个或多个精细位置记录,每个
精细位置记录与一个或多个位置串值相关联。测量代码段被配置成存储与一个或多个无线
发射设备相关联的测量信息。精细位置记录包括测量信息。
[0011] 一种根据本公开内容向移动设备提供本地信息的方法的例子,包括:基于移动设备的粗略位置来确定OCR库信息,使得所述OCR库信息包括词语列表;向移动设备发送所
述OCR库信息;从移动设备接收至少一个位置串值,使得词语列表包括所述至少一个位置
串值;基于所述至少一个位置串值来确定位置信息;以及向移动设备发送所述位置信息。
[0012] 这种方法的实施方式可以包括以下特征中的一个或多个。从移动设备接收粗略位置信息。OCR库信息包括字符特征文件。OCR库信息包括固定的格式化规则。
[0013] 一种根据本公开内容用于确定移动设备的位置的系统的例子,包括:存储器;处理器,其被编程为确定移动设备的粗略位置;基于移动设备的粗略位置来计算本地信息数
据分组,使得所述本地信息数据分组包括一个或多个影响区以及与每个影响区相关联的位
置参考信息;以及向移动设备发送本地信息数据分组。
[0014] 这种系统的实施方式可以包括以下特征中的一个或多个。位置参考信息包括图形符号。位置参考信息包括与快速响应码相关联的值。处理器被编程为:从移动设备接收图
像文件;针对位置参考信息对图像进行分析;基于图像中的位置参考信息来确定影响区;
以及向移动设备发送包括确定的影响区的本地信息数据分组。本地信息数据分组包括OCR
库信息。处理器被编程为响应于从移动设备发送的请求来发送本地信息数据分组。
[0015] 一种根据本公开内容的位置检测移动设备的例子,包括:用于确定移动设备的粗略位置的单元;用于捕获位置参考信息的单元;用于接收位置信息数据分组的单元,使得
所述位置信息数据分组基于移动设备的粗略位置;用于使用位置信息数据分组和所捕获的
位置参考信息来确定移动设备的精细位置的单元;以及用于显示精细位置的单元。
[0016] 这种位置检测移动设备的实施方式可以包括以下特征中的一个或多个。位置参考信息是人类可读文本的图像,并且位置信息数据分组包括OCR库信息。位置参考信息是区
域的图像。位置参考信息是快速响应码的图像。位置参考信息是电磁信号并且位置信息数
据分组包括发射机的位置和检测范围,所述发射机是电磁信号的源。设备可以包括用于检
测距目标的范围的单元,使得所述范围被用于确定精细位置。用于确定移动设备的粗略位
置的单元包括先前的SPS位置结果。
[0017] 一种根据本公开内容用于移动设备网络中的位置辅助系统的例子,包括:用于确定针对移动设备的粗略位置信息的单元;用于存储与粗略位置信息相关联的OCR库信息的
单元;以及用于向移动设备发送本地信息数据分组的单元,使得所述本地信息数据分组包
括与粗略位置信息相关联的OCR库信息。
[0018] 这种系统的实施方式可以包括以下特征中的一个或多个。用于存储与粗略位置信息相关联的本地信息的单元;以及用于向移动设备发送本地信息数据分组的单元,使得所
述本地信息数据分组包括与粗略位置信息相关联的本地信息。用于从移动设备接收至少一
个位置串值的单元;用于基于所述至少一个位置串值来确定位置信息的单元;以及用于向
移动设备提供位置信息的单元。用于从移动设备接收相对位置信息的单元;以及用于基于
所述相对位置信息来确定位置信息的单元。
[0019] 一种根据本公开内容的非临时性计算机可读存储介质的例子,所述存储介质中存储有代表可被计算机执行的软件的数据,所述软件包括用于确定移动设备的位置的指令,
所述存储介质包括:用于捕获位置参考信息的指令;用于接收位置信息数据分组的指令,
其中,位置数据分组基于移动设备的粗略位置;用于使用位置信息分组和所捕获的位置参
考信息来确定移动设备的精细位置的指令;以及用于显示精细位置的指令。
[0020] 这种计算机可读存储介质的实施方式可以包括以下特征中的一个或多个。位置参考信息是人类可读文本的图像,并且位置数据分组包括OCR库信息。位置参考信息是区域
的图像。用于检测距目标的范围的指令,其中所述范围被用于确定精细位置。用于确定移
动设备的粗略位置的指令。
附图说明
[0021] 图1是示出了示例性移动设备的示意框图,所述示例性移动设备能够获得图像、与网络通信以及接收卫星定位系统(SPS)信号。
[0022] 图2是示出了包括移动设备的系统的某些特征的系统示图,所述移动设备能够捕获图像以及通过一个或多个无线网络通信。
[0023] 图3是计算设备的示意框图。
[0024] 图4A是包括无线网络的建筑物平面图的俯视图。
[0025] 图4B是包括影响区的、图3的建筑物平面图的一部分的俯视图。
[0026] 图5是移动设备的示例性侧视图,所述移动设备捕获了图3的建筑物平面图中的办公室的图像。
[0027] 图6是图5的移动设备和办公室的示例性等轴视图。
[0028] 图7是显示了办公室和相应位置信息的图像的移动设备的俯视图。
[0029] 图8是显示了多个办公室的图像的移动设备的示例性侧视图,所述多个办公室在图3的建筑物平面图中。
[0030] 图9是显示了多个办公室的图像和相应位置信息的移动设备的俯视图。
[0031] 图10是具有示例性特征尺寸的办公室的侧视图。
[0032] 图11是用于基于OCR信息来确定位置的过程的流程框图(block flow diagram)。
[0033] 图12是用于向移动设备提供位置信息的过程的流程框图。

具体实施方式

[0034] 本文给出了一些示例性技术,这些技术可以以各种方法和装置在移动设备中实现,以基于图像中的视觉信息来尽可能地提供定位或支持定位。
[0035] 例如,在某些实施方式中,如图1所示,移动设备100可以包括无线收发机121,无线收发机121能够经由无线天线122在无线网络上发送和接收无线信号123,并且通过无线
收发机总线接口120连接至总线101。在一些实施例中,无线收发机总线接口120可以是无
线收发机121的一部分。一些实施例可以具有多个无线收发机121和无线天线122以支持
诸如WiFi、CDMA、WCDMA、LTE和蓝牙等多种标准。
[0036] 图1中还示出了,移动设备100的某些实施例可以包括与移动设备100集成的图像捕获模块130。图像捕获模块130可以被配置成从传感器132(例如照相机芯片和附随光
路)接收信号。通常,图像捕获模块130和传感器132允许用户获得图像,或将视觉输入转
换成数字形式。可以经由图形显示器134来观看图像。图形显示器134可以被配置为用户
接口(例如,触摸屏),并且允许用户观看视频图像。
[0037] 图1中还示出了,移动设备100的某些实施例可以包含卫星定位系统(SPS)接收机155,所述卫星定位系统(SPS)接收机155能够经由SPS天线158接收卫星定位系统
(SPS)信号159。SPS接收机155还可以全部或部分地处理卫星定位系统(SPS)信号159并
且使用所述SPS信号159来确定移动设备的位置。在一些实施例中,还可以使用(多个)通
用处理器111、存储器140、(多个)DSP 112和专用处理器(未示出)来与SPS接收机155
一起全部或部分地处理SPS信号159,和/或计算移动设备100的位置。对SPS或其它位置
信号的存储可以在存储器140或寄存器中完成。
[0038] 图1中还示出了,移动设备100可以包含通过总线接口110连接到总线101的DSP112、通过总线接口110连接到总线101的(多个)通用处理器111,以及有时也通过总线接
口110连接到总线的存储器140。总线接口110可以与(多个)DSP 112、(多个)通用处理
器111和存储器140集成,所述(多个)DSP 112、(多个)通用处理器111和存储器140与
总线接口110相关联。在各种实施例中,功能可以作为一个或多个指令或代码被存储在例
如在计算机可读存储介质上的存储器140中,并且可以被(多个)通用处理器111、专用处
理器或(多个)DSP 112执行,所述计算机可读存储介质例如RAM、ROM、FLASH、或磁盘驱动。
存储器140是存储软件代码(编程代码、指令等)的处理器可读存储器和/或计算机可读
存储器,所述软件代码被配置成使得(多个)处理器111和/或(多个)DSP 112执行所描
述的功能。具体而言,存储器140可以包括光学字符识别(OCR)模块142。OCR模块142可
以是被配置成使得处理器111能够对经由图像捕获模块130捕获的图像进行光学字符识别
的计算机可读指令。通常,OCR模块142中的计算机可读指令使得处理器111能够用作OCR
引擎。
[0039] 通常,移动设备100代表可以被用户适度地四处移动的任何电子设备。通过示例而非限制的方式,移动设备100可以包括计算和/或通信设备,例如移动电话、智能电话、膝
上型计算机、平板计算机、可穿戴计算机、个人数字助理、导航设备等。
[0040] 可以例如使移动设备100(例如,经由一个或多个网络接口)用于各种无线通信网络,例如无线广域网络(WWAN)、无线局域网络(WLAN)、无线个域网络(WPAN)等。在本文中可
以互换地使用术语“网络”和“系统”。WWAN可以是码分多址(CDMA)网络、时分多址(TDMA)
网络、频分多址(FDMA)网络、正交频分多址(OFDMA)网络、单载波频分多址(SC-FDMA)网络
等。CDMA网络可以实施一种或多种无线接入技术(RAT),仅列举若干所述的无线技术,其例
如cdma2000、宽带CDMA(W-CDMA)、时分同步码分多址(TD-SCDMA)。在这里,cdma2000可以
包括根据IS-95、IS-2000和IS-856标准实施的技术。TDMA网络可以实施全球移动通信系
统(GSM)、数字高级移动电话系统(D-AMPS)、或一些其它RAT。在来自名为“第三代合作伙
伴计划”(3GPP)的协会的文档中描述了GSM和W-CDMA。在来自名为“第三代合作伙伴计划
2”(3GPP2)的协会的文档中描述了cdma2000。3GPP文档和3GPP2文档是公众可获得的。
WLAN可以包括IEEE 802.11x网络,而WPAN可以包括蓝牙网络,例如IEEE 802.15x。无线
通信网络可以包括所谓的下一代技术(例如,“4G”),例如,举例来说,长期演进(LTE)、先进的LTE(Advanced LTE)、WiMax、超移动宽带(UMB)和/或此类的技术。
[0041] 在其它实施例中,可以在硬件中执行功能。
[0042] 在某些实施方式中,如图2所示,移动设备100可以从SPS卫星250接收SPS信号159。SPS卫星可以来自一个全球导航卫星系统(GNSS),例如GPS或Galileo卫星系统。
SPS卫星可以来自多个GNSS,例如但不限于GPS、Galileo、Glonass或者北斗(罗盘)卫星
系统。
[0043] 另外,移动设备100可以经由无线信号136连接至蜂窝网络(例如,经由小区塔220)。蜂窝网络可以提供到一个或多个网络230a、230b的接入。移动设备100经由无线信
号123通过无线发射机210(例如,接入点/路由器)也可以获得网络连通性。无线发射机
210可以连接到一个或多个网络230a、230b。一个或多个网络230a、230b可以包括到因特
网的连通性。网络230a、230b包括到位置服务器240的连通性,位置服务器240被配置成
发送、接收和存储位置信息。OCR库242可以被包括作为位置服务器240的一部分,或者可
以存在于另一服务器中并且被配置成与位置服务器240通信。OCR库服务器242可以是位
于不同区域的很多服务器。移动设备100被配置成获得并且显示设备100的附近区域201
的图像。通常,区域201可以包括人类可读信息或者可能与地理位置相关的其它可识别特
征。在实施例中,可以将区域201的图像发送给位置服务器240以进行图像处理和特征识
别。
[0044] 参照图3,并且还参照图2,示出了说明了计算设备300的某些特征的示意框图。位置服务器240和OCR库服务器242可以包括计算设备300。
[0045] 如图所示,计算设备300可以包括经由一个或多个连接301耦合到存储器304的、用于执行数据处理的一个或多个处理单元302。可以以硬件或硬件和软件的组合来实现
(多个)处理单元302。(多个)处理单元302可以代表可被配置为执行至少一部分数据计
算程序或过程的一个或多个电路。通过示例而非限制的方式,处理单元可以包括一个或多
个处理器、控制器微处理器微控制器专用集成电路数字信号处理器、可编程逻辑设备、现场可编程阵列等,或其任意组合。
[0046] 存储器304可以代表任何数据存储机构。存储器304可以包括例如主存储器304-1和/或辅存储器304-2。主存储器304-1和辅存储器304-2可以包括例如随机存取存储器
只读存储器、一个或多个数据存储设备或系统(其例如,举例来说,磁盘驱动、光盘驱动、磁带驱动、固体存储器驱动等)。存储器304可以例如包括数据库和/或其它类似能力。存
储器304可以包括位于不同地理位置的元件。尽管在这个例子中存储器304被示出为是与
处理单元分开的,但是可以将存储器304的全部或部分设置在处理单元302内或与处理单
元302在一起/相耦合,或者可以将存储器304的全部或部分设置在其它类似电路内或与
其它类似电路在一起/相耦合,其它类似电路是在计算设备300内的电路和/或可操作地
耦合到计算设备300的电路。
[0047] 在某些实施方式中,存储器304可操作地容纳计算机可读介质320或者可配置为耦合到计算机可读介质320。如图所示,存储器304和/或计算机可读介质320可以包括与
数据处理(例如与本文提供的技术相一致)相关联的指令306。
[0048] 如进一步示出的,在某些时刻,存储器304可以包括代表OCR库信息308和粗略位置信息310a的数据。OCR库信息308可以存在于一个或多个OCR库服务器242中。粗略位
置信息310a可以与地理区域(例如,点、多边形、购物区域、公园)相关联。通常,电子数据
和信息可以经由字段值和索引与目标和其它信息相关联。在某些示例性实施方式中,粗略
位置信息310a可以对应于地图数据库中的位置上下文指示符(LCI)。计算设备300还可以
包括与地理位置相关联的精细位置信息310b。通常,精细位置信息310b包括比粗略位置信
息310a更具体的位置信息。精细位置信息310b可以包括数据记录(例如,数据表格中的
行),数据记录可以与包含在OCR库信息308内的一个或多个可接受的识别结果相关。粗略
位置信息310a、精细位置信息310b、OCR库信息308、本地信息312和存储在存储器304中
的其它信息不需要被存储在单个位置服务器240或单个OCR库服务器242中,并且可以分
布在其它服务器上并且经由网络接口318来访问
[0049] 在实施例中,可以(例如,经由网络接口318)获得对OCR库信息308、粗略位置信息310a、精细位置信息310b和/或可能的其它本地信息312的一个或多个请求330。可以
通过一个或多个网络230a、230b从一个或多个移动设备100来接收请求330。计算设备300
可以例如通过提供所请求的全部或部分信息来响应请求330。
[0050] 本地信息312可以包括例如所提交的位置信息或与源332相关联的位置信息,以及关于一个或多个无线发射设备210、220的、先前存储的或估计的(例如,随后确定的、或
报告的)位置信息。本地信息312可以包括例如关于一个或多个地理区域的位置信息。本
地信息312可以是地图数据库、与地理有关的地图文件和其它类似的导航/位置相关信息
的房间注解层(room annotation layer)。本地信息312可以是与导航有关的信息,例如
与一个或多个基于位置的服务和/或其它类似能力相关联的信息。例如可以将与具体地理
地区相关联的某些上下文或其它类似信息等存储在存储器304(例如,感兴趣的点、路线信
息、多媒体文件、或与地理区域相关联的其它一般信息)中。
[0051] 如进一步示出的,存储器304有时可以包括测量数据314,所述测量数据314与由一个或多个无线发射设备210、220接收的一个或多个信号相关联。举例而言,测量314可以
包括信号强度信息、计时信息、测距和/或伪测距信息等。可以例如通过经由网络接口318
从一个或多个移动设备100和/或其它计算设备接收到的一个或多个报告334来获得测量
314。精细位置信息310b还可以单独与测量数据314相关或者跟OCR库信息308一起与测
量数据314相关。
[0052] 在某些示例性实施方式中,可以使用至少一部分测量314来估计移动设备100的位置。测量314还可以例如代表使用一个或多个无线信号123、136来携带的信息。
[0053] 例如,可以使用由处理单元302和/或计算设备300的其它类似电路执行的一个或多个过程316来提供和/或支持位置估计能力。
[0054] 计算设备300至少部分地基于测量314来执行用于估计移动设备100位置的全部或部分过程。在实施例中,可以将本地信息312发送给移动设备100,并且可以由处理器
111(即,在移动设备100上)执行用于估计移动设备的位置的过程。
[0055] 尽管在图3中过程316被示出为至少部分地存储在存储器304中,但在一个或多个处理单元302和/或其它类似电路中可以整体或部分地可操作地提供所述过程。计算设
备300可以例如包括耦合到一个或多个连接301的一个或多个网络接口318。网络接口318
可以代表一个或多个无线网络接口和/或有线网络接口。
[0056] 在某些示例性实施方式中,一个或多个报告334(例如,来自一个或多个移动站)可以识别可能是新安装的无线发射设备210、220的存在。可以由移动设备来中继或者通过
其它网络连接/资源来尽可能地发现与这种无线发射设备相关联的位置信息,和/或例如
使用存储在移动设备100或位置服务器240中的先前位置信息来估计与这种无线发射设备
相关联的位置信息。
[0057] 参照图4A,示出了包括无线网络的建筑物平面图402的俯视图400。平面图402是存储在位置服务器240上的本地信息312的例子。平面图402仅是示例性的而不是限制
性的,这是因为所存储的其它地图和地理数据也可以存储在位置服务器240上并且被发送
至移动设备100。例如,平面图402可以是办公楼、游乐园、购物区域、运动场、会议中心的
地图,或代表了地理区域的其它地图。在实施例中,平面图402可以包括办公室的集合,其
中每间办公室由房间号码(例如,700E、700L、701A、702、700M)标识,但是房间号码不是必须的。也可以使用其它地理地标(例如,问询台、休息室、有吸引力的地方、兴趣点等)。平
面图402包括具有遍及其整个区域的一个或多个无线发射机(例如,404a、404b、404c)的
无线网络。可以将包括本地信息312(例如,平面图402)和OCR库信息308的本地信息数
据分组作为移动设备100的粗略位置的函数经由网络连接(例如,无线信号123、136)发送
给移动设备100。可以通过测量数据314来建立粗略位置。例如,当用户沿着与平面图402
相关联的建筑物内的路线406行进时,可以基于无线发射机404a、404b、404c的相对信号强
度来发送本地信息数据分组。可以基于独特的无线发射机的密度来决定本地信息数据分组
的大小。这样,在位置“A”处的用户可以收到与无线发射机404c相关联的本地信息数据,
而在位置“B”处的用户可以收到与无线发射机404a相关联的本地信息数据。也可以使用
其它位置估计技术,所述位置估计技术例如确定针对多个发射机(包括无线发射机210和
小区塔220的组合)的重叠区域。还可以通过当前位置的用户输入(例如,语音命令或文
字输入)及其各种组合并且基于小区塔220、SPS卫星260(例如,激活信号、当前计算的位
置、最近计算的位置)来确定粗略位置信息310a。
[0058] 本地信息数据分组中的OCR库信息308可以基于移动设备的粗略位置。通常,OCR库信息308包括程序元件,例如被OCR引擎用来将视觉信息转换成文本数据的词语列表和
字符特征文件。作为例子,而非限制,OCR引擎的实施例能够使用一部分OCR库信息308以
改进打印的文本的识别精度。OCR库信息308可以包括与字符特征(例如,字体类型)、词
语列表(例如,可接受的单词)和/或字符属性(例如,固定的格式化规则)相关联的一个
或多个数据文件。通常,OCR库信息308限制由OCR引擎生成的解决方案集,这可以引起针
对包括在OCR库信息308中的文本元素的、具有降低的处理周期的增加的识别结果。
[0059] 参照图4B,并且还参照图4A,示出了平面图402的一部分的俯视图401。视图410包括无线发射机404c、房间标识符408、和相应的影响区410。可以使用来自无线发射机
404c的信号的存在来确定粗略位置310a,并且可以使用房间标识符408来确定影响区410。
通常,影响区是可以从中观看到或感测到房间标识符或其它位置参考信息的区域。影响区
可以从映射的数据(mapped data)(即,通过勘测)中被推导出,或者基于根据相应位置参
考信息的经计算的范围(即,估计计算)。在这个例子中,影响区410是精细位置310b。在
另一例子中,可以基于多个影响区的重叠来确定精细位置310b。也可以使用信号强度和与
无线信号123、136相关联的其它信息来确定精细位置310b。
[0060] 参照图5,示出了移动设备100的示例性侧视图500,所述移动设备捕获建筑物中的办公室的图像。视图500包括墙壁502、门504、房间标识符506、以及一段走廊地板508。
移动设备100包括具有传感器132的图像捕获模块130,并且被配置成在屏幕510(例如,
图形显示器134)上显示图像。作为例子,而非限制,持有移动设备100以便在屏幕510上
显示墙壁502、门504、房间标识符506和走廊地板508的图像。图像可以只包括房间标识
符506。如本文所使用的术语房间标识符仅是示例性的而非限制性的。房间标识符是可以
作为图像识别算法的输入的人类可读信息(即,字母数字文本)的一般术语。尽管视图500
示出了移动设备100与房间标识符506垂直,但是也可以使用其它视。例如,参照图6,当
移动设备100与房间标识符506或其它特征(例如,门504、墙壁502)成锐角时,可以获得
图像。
[0061] 参照图7,并且还参照图5,示出了移动设备100的俯视图,其显示了房间标识符506和当前位置708的图像。移动设备100被配置成对图像702执行OCR。例如,基于存储
在移动设备上的OCR库信息308来分析房间标识符704中的字符。OCR库信息308的选择
可以基于由位置服务器240确定的粗略位置。通常,在操作中,移动设备100可以包括利用
存储器140中的OCR模块142来执行定位的程序指令。当程序被激活时,移动设备100可
以提供对应于存储在位置服务器240上的粗略位置信息310a的信息。移动设备100可以
接收与移动设备100的粗略位置相关联的OCR库信息308。移动设备100被配置成使用接
收的OCR库信息308的至少一部分来对通过图像捕获模块130获得的图像702中的文本进
行转换。可以通过被OCR库信息308中的信息限制的OCR引擎将图像702中的文本转换成
数据串(例如,“700E”)。移动设备100可以被配置成向位置服务器240发送数据串并且
从位置服务器240接收相应的精细位置信息310b。如图7所示,移动设备100可以被配置
成显示平面图的地图706,所述地图706具有被指示在平面图上的当前位置708。通常,当
前位置708可以是由精细位置信息310b定义的区域的中心,或者与精细位置信息310b相
关联的其它预定位置。
[0062] 参照图8,并且还参照图3,示出了移动设备100的示例性侧视图800,移动设备100捕获多个办公室的图像810。视图800包括第一墙壁段802、第二墙壁段804、第一房间
标识符806a、第二房间标识符806b、以及地板段808。作为例子,而非限制,可以放置移动
设备100的图像捕获模块130中的传感器132以在单个图像801中获得房间标识符806a、
806b二者的图像(即,这两个房间标识符同时在单个图像中)。也可以获得具有额外的房
间标识符(例如,3、4、5、6等)的图像。可以通过移动照相机的角度来从单个点处获得多个
图像,其中每个图像中具有一个或多个房间标识符。在OCR引擎识别房间标识符之前,不需
要捕获以及在存储器140中存储图像文件。例如,移动设备100可以被配置成当移动设备
从一个位置摇摄(即,改变视角)时,近乎实时地显示图像。随着移动设备移动时,OCR引
擎可以处理多个房间标识符和其它人类可读信息。
[0063] 参照图9,并且还参照图8,示出了显示多个办公室的图像902的移动设备100的俯视图。可以获得图像902并且OCR引擎可以被配置成对房间标识符904a、904b进行识
别。OCR引擎可以基于显示(即,不在存储器140中存储图像)来执行识别。OCR引擎可以
识别在房间标识符904a、904b的图像中的文本并且产生一个或多个位置串(例如,“700K”、“700L”)。位置串可以对应于存储器中的一个或多个精细位置310b。例如,第一精细位置
信息可以与串“700K”相关联,而第二精细位置信息可以与串“700L”相关联。第三精细位
置可以与两个串(例如,“700K”和“700L”)相关联。可以通过第一精细位置和第二精细位
置的组合(即,并集)、第一精细位置和第二精细位置的重叠(即,交集)、或者其它区域来
定义第三精细位置。可以对精细位置信息310b进行处理并且在平面图906的图像上将其
显示为位置图标908。
[0064] 参照图10,示出了具有示例性特征尺寸的办公室的侧视图1000。所述视图1000包括墙壁部分1002、门1004、房间标识符1006、以及地板部分1008。这些特征仅是示例性
的而非限制性的,这是因为可以使用其它特征。墙壁部分1002至少具有高度尺寸wh。门
1004可以分别地具有高度尺寸dh和宽度尺寸dw。房间标识符1006可以是在普遍用于办公
楼或办公综合楼的每个办公室/区域的标准瓷砖形式的背景上的文本(例如,人类可读信
息)的一部分。在实施例中,房间标识符1006可以包括几何形状、颜色、或者其它机器可识
别信息。房间标识符1006可以分别地具有高度尺寸sy和宽度尺寸sx。房间标识符还可以
具有距地板的高度值sh,所述值指示标识符1006与地板1008之间的距离。高度尺寸、宽度
尺寸和距地板的高度尺寸可以仅适用于房间标识符的文本部分(即,没有背景的数字)。房
间标识符1006中的字体和字符类型可以与OCR库信息308的一部分相关联。例如,可以将
OCR库信息308中的字符特征文件限制为仅包括与粗略区域中的房间标识符的字符类型相
关联的数据。在例子中,可以将OCR库中的词语列表限制为在粗略区域中的可能房间标识
符(例如,700A、700B、700C、700D、700E等)的列表。与试图识别任意及所有文本串的较大
OCR系统相比,OCR引擎可以被配置为识别文本串的有限集。
[0065] 移动设备100可以使用与特征相关联的尺寸来精细化位置估计。例如,一旦基于房间标识符1006的OCR处理建立了针对移动设备100的影响区或精细位置,则可以基于图
10中的一个或多个尺寸(例如,wh、dh、dw、sh、sx、sy)的相对大小来进一步精细化实际位置。
存储在存储器140中且在处理器111上执行的图像处理算法可以使用边缘检测技术来确定
特征的边界并且计算相应的尺寸。可以使用与图像捕获模块130的特征(例如,放大倍率、
屏幕分辨率像素大小、肉眼估计的高度)和本地信息312相结合的三角功能来确定距特征
(例如,墙壁1002、门1004、房间标识符1006、或其组合)的距离。可以将特征的实际尺寸
存储为与粗略位置310a或精细位置310b相关联的本地信息312。可以向移动设备100发
送本地信息312和OCR库信息308。可以通过如图7所描述的移动设备100上的地图向用
户显示精细化的位置估计。
[0066] 参照图11,并且还参照图1至图10,用于基于OCR信息来确定位置的过程1100包括示出的步骤。然而,过程1100仅是示例性的而非限制性的。可以例如通过增加步骤、移
除步骤、重新排列步骤、组合步骤、和/或并行执行步骤来修改过程1100。例如,下面描述的用于发送粗略位置信息的步骤1102是可选的,这是因为位置服务器240可以被配置成基于
其它信息(例如,源332、位置估计、最近报告的位置)来确定移动设备100的粗略位置信
息。例如,可以由网络来直接确定移动设备100的位置,例如基于哪个小区塔220或接入点
210正在与该网络进行通信或通过该网络进行通信。在步骤1104处,移动设备100可以被
配置成基于如位置服务器240所确定的移动设备100的粗略位置来自动地接收本地信息数
据分组。
[0067] 在步骤1102处,移动设备100可以可选地向位置服务器240发送粗略位置信息。作为例子,而非限制,粗略位置信息可以基于:与无线发射机210相关联的SSID信息、与小
区塔220相关联的小区塔标识符(例如基站标识符)、以及与从卫星250接收到的信号159
相关联的地理信息。移动设备100的粗略位置可以基于先前位置或可以通过诸如GNSS三
边测量术、网络三边测量术、或接入点三边测量术之类的各种手段来确定。可以由移动设
备100的用户通过键入、选择、讲述、或手动指示粗略位置来获得粗略位置信息。例如,用户可以通过经由音频接口说出一般位置(例如,“我在UTC商场”,“我在高通体育场”,“我在Torrey Pines高尔夫球场”)来输入粗略位置,或者用户可以从菜单中室内位置的列表中选
择位置(例如,从小区最大天线范围(MAR)内的建筑物的选项中选择)。在实施例中,位置
服务器240可以基于源332(例如,与发射机相关联的活动用户列表)、与移动设备100相关
联的测量314、以及报告334来确定移动设备100的粗略位置。
[0068] 在步骤1104处,移动设备100可以被配置成基于粗略位置信息来接收本地信息数据分组,所述本地信息数据分组包括OCR库信息308和本地信息312。通常,本地信息数据
分组包括通过网络发送的数字信息。在步骤1102处接收到的粗略位置信息,或者由位置服
务器240确定的粗略位置信息可以与先前存储的粗略位置信息310a相对应。本地信息312
和OCR库信息308可以与粗略位置信息310a相关联(例如,通过数据字段值、索引页)。本
地信息312和OCR库信息308可以由移动设备100基于请求330来接收,或者可以由位置
服务器240基于预编程的要求(例如订阅服务、基于位置的服务、位置触发器)来推送。
[0069] 本地信息312可以包括参考地理的图形文件,例如平面图、地图、照片、和其它多媒体文件。在实施例中,本地信息312可以包括与粗略位置信息(即,步骤1102)相关联的
精细位置310b和可能的影响区的集合。本地信息312可以包括地图数据层,例如房间注解
信息、兴趣点、紧急路线、警告、和可以与地理位置相关联的其它信息。本地信息312可以包括时间分量(即,基于一天中的时间)。例如,可以基于安全门开放的时间,或者工程被安排
的时间来发送路线信息。可以接收其它的位置服务作为本地信息。
[0070] OCR库信息308可以包括与字符特征、词语列表、和其它字符属性相关联的数据文件。通常,OCR库信息308对在移动设备100上运行的OCR引擎的结果集合进行限制以尽
量在不增加处理周期的情况下改进识别结果。
[0071] 在步骤1106处,移动设备100可以确定接收到的本地信息数据分组是否包括OCR库信息308。如果包括OCR库信息,则移动设备100可以被配置成在步骤1110处执行OCR过
程。如果本地信息数据分组不包括OCR库信息,则可以基于接收到的本地信息在步骤1112
处确定影响区。
[0072] 在步骤1108处,移动设备100可以使用图像捕获模块130的传感器132来获得人类可读位置信息的图像。作为例子,而非限制,这种位置信息可以包括房间号码、公司或
个人的名字(例如,在门上的名字)、机场航站楼标志、街道标志、公告牌、徽标、商标、体育场区域标记、高尔夫球场上的码数标记、游轮上的甲板和构架标记、飞机登机牌上的座位号
码、以及可能与位置相关联的其它人类可读信息。可以通过激活图像捕获模块130并指向
移动设备来获得图像,使得人类可读信息在查看屏幕上。也可以使用图像捕获模块130的
特征,例如自动对焦、闪关灯照明和缩放。可以将图像存储在存储器中以便随后处理(例
如,作为图像文件)或者可以在显示期间进行处理(例如,在照相机取景器中而不创建图像
文件)。
[0073] 在步骤1110处,移动设备100可以使用在步骤1104处接收到的OCR库信息308来识别人类可读位置信息以确定位置串值。例如,移动设备100可以包括用于隔离图像的一
部分的剪裁应用以确认人类可读位置信息。剪裁应用可以是手动的(例如,通过经由触摸
屏选择图像的区域)或自动的(例如,边缘检测、自动剪裁)。移动设备100上的OCR引擎
可以使用OCR库信息308中的词语列表和字符特征文件来产生一个或多个位置串值。OCR
引擎也可以使用其它OCR技术来产生位置串值。例如,接收到的OCR库文件可以包括矩阵
匹配信息(例如,字符图案的集合)和特征提取信息(例如,字符中呈现的抽象特征)。
[0074] 由位置服务器240、OCR库服务器242或其它的网络资源提供的OCR库信息308可以通过限制可接受的结果集合来改进识别结果。通常,大库(即,未被限制的)OCR系统中
的错误可以包括符号分离(例如,B变成I3)、符号混淆(例如,e和c)和单词分离(例如,
airport变成air port)。在例子中,OCR库的字符特征文件可以允许OCR引擎拒绝不一
致的结果。因此,如果与粗略位置相关联的人类可读位置信息包括字符“B”,但不包括字符“I3”,则产生的位置串值可以偏向于分辨为“B”。针对符号混淆和单词分离问题,类似的限制偏置可能发生。
[0075] 在步骤1112处,可以基于本地信息312、和一个或多个位置串值(如果可用的话)来确定一个或多个影响区410。影响区410可以是精细位置信息310b。如果一个或多个位
置串值可用,则可以将影响区410存储为一个或多个数据字段,所述数据字段基于人类可
读位置信息(例如,房间号408)的可能观看区域来限定一区域(例如,多边形)。影响区数
据字段还可以包括位置串值,并且可以与粗略位置信息310a相关联。移动设备100可以接
收影响区数据字段作为本地信息。例如,接收到的本地信息数据分组可以包括数据字段的
集合,其代表若干个影响区(即,在由粗略位置信息定义的区域内的可能的影响区)和相关
联的位置串值。因此,可以将一个或多个影响区存储在存储器140中并且基于位置串值来
本地(即,在移动设备100上)地选择一个或多个影响区。
[0076] 在实施例中,在步骤1110处确定一个或多个位置串值后,影响区可以被移动设备100接收,并且随后被发送给位置服务器240。换言之,位置服务器240可以基于从移动设
备100接收位置串信息来远程地确定(多个)影响区。例如,在步骤1110处,移动设备100
可以使用接收到的OCR库信息308来生成位置串值,并且随后向位置服务器240发送所述
位置串值。在步骤1112处,作为响应,位置服务器240可以向移动设备100发送(多个)
影响区。
[0077] 如果在步骤1104处接收到的本地信息数据分组不包括OCR库信息,则在步骤1112处可以只基于本地信息312来确定一个或多个影响区。例如,本地信息312可以包括一个
或多个影响区以及基于移动设备在粗略位置内的可能位置的概率因数。在实施例中,本地
信息312可以包括与移动设备100相关联的历史位置信息并且影响区计算可以包括所述历
史位置信息。本地信息数据分组中的本地信息312可以包括与地理位置相关、但是不取决
于OCR过程的其它数据。例如,本地信息312可以包括与位置参考信息相关联的影响区以
及可以被图像捕获模块130检测到的其它不同特性,所述位置参考信息例如图形符号、图
像、几何形状、特征(例如,墙壁502、房间标识符506、门504、地板508)的颜色。位置参考
信息也可以是一维或二维条形码信息(例如,快速响应码)以及与RFID发射机、WiFi热点
或可以由移动设备100感测到的其它电磁信号相关联的检测范围。可以使用位置参考信息
来确定影响区(即,位置参考信息与影响区相对应)。
[0078] 在步骤1114处,移动设备100可以基于一个或多个影响区来估计位置。在实施例中,影响区代表可以从其看到人类可读位置信息的地理区域。在例子中,位置估计可以是由
影响区定义的地理区域的中心。其它偏置信息也可以被包括在本地信息312中并且被用于
确定位置估计(例如,假设用户在走廊的中心,假设用户与人类可读位置信息垂直)。对于
单个位置串值,在不存在额外信息(例如,测量314、过程316、步骤1116处的相对位置信
息)的情况下,精细位置信息310b和影响区是一致的。对于多个位置串值,或者存在额外
信息的情况下,精细位置信息310b可以是比影响区小的区域。在这种情况下,位置估计可
以是由适当的精细位置信息定义的地理空间的中心。在步骤1106处,移动设备100可以接
收影响区和精细位置信息310b的各种组合作为本地信息,并且可以本地地(即,利用通用
处理器111)执行确定步骤和估计步骤(即,1112、1114)。在实施例中,位置服务器240可
以向移动设备100返回位置估计(即,远程处理)。
[0079] 在步骤1116处,移动设备100可以被配置成基于在步骤1108处获得的图像中的一个或多个特征来确定相对位置信息。如图11上的虚线所指示的,步骤1116是可选的。用
于确定到特征的距离的算法可以基于移动设备100的硬件结构而变化。例如,图像捕获模
块130可以包括利用红外线发射机和传感器的自动对焦过程以测量距离(即,到图像中的
特征的范围)。也可以利用使用了图像锐化算法的自动对焦过程来计算到特征的范围(即,
焦点设置的最终位置与取景器中的目标的距离有关)。处理器111可以被配置成对图像执
行边缘检测算法并且计算图像中的特征之间的像素距离。可以使用与图像捕获模块130相
关联的像素距离、已知特征尺寸以及放大倍率参数来计算到特征的距离。在步骤1104处,
可以在本地信息数据分组中接收到与人类可读位置信息和周围区域(例如,门1004、房间
标识符1006、地板1008、墙壁1002)相关联的尺寸值。在实施例中,尺寸值可以是基于工业
标准(例如,标准的门高度和门宽度)的并且被存储在存储器140中。可以将计算的距离
与一个或多个尺寸值相比较以确定移动设备的相对位置。可以使用所述相对位置来更改在
步骤1114处确定的位置估计。
[0080] 在步骤1118处,可以基于在步骤1116处确定的相对位置信息和在步骤1114处确定的估计位置来显示移动设备100的位置。例如,如果影响区410围绕具有人类可读位置
信息的位置延伸大约30英尺,并且相对位置信息指示照相机距所述位置大约10英尺,则可
以基于距所述位置延伸10英尺的影响区来显示所述位置。
[0081] 参照图12,并且还参照图1至图11,示出了用于向移动设备提供位置信息的过程1200的流程框图。然而,过程1200仅是示例性的而非限制性的。可以通过例如增加步骤、
移除步骤、重新排列步骤、组合步骤、和/或并行执行步骤来修改过程1200。例如,下面描述的用于接收粗略信息的步骤1202是可选的,这是因为位置服务器240可以被配置成确定针
对一个或多个移动设备的粗略位置信息。
[0082] 在步骤1202处,位置服务器240可以接收针对移动设备100的粗略位置信息。例如,可以基于移动设备连接到哪个小区或接入点/移动设备被哪个小区或接入点检测到来
确定移动设备100的粗略位置。这可以例如通过HLR(归属位置寄存器)在网络中完成或
者通过查明基站/接入点历书(almanac)中的小区或接入点在移动设备100上完成。移动
设备100可以确定粗略位置并且将其经由网络230a、230b发送给位置服务器240。位置服
务器240可以被配置成基于其它信息(例如,测量数据314、报告334)来确定移动设备100
的粗略位置。
[0083] 在步骤1204处,位置服务器240可以基于移动设备100的粗略位置来确定要使用的OCR库信息308。可以基于例如距固定的地理位置的半径、移动设备100到建筑物的接近
度、发射机210、220的身份、或其它上下文标识符来选择OCR库信息308。位置服务器240
可以基于移动设备100的粗略位置来针对OCR库信息308对一个或多个OCR库服务器242
进行查询。通常,可以将OCR库信息308作为数据库或类似的平面文件结构存储在存储器
304中。例如,词语列表文件、字符特征文件、和可以持久存留在可访问的数据结构(例如,
关系数据库、平面文件)内的其它限制。可以基于粗略位置信息来对数据结构进行索引或
检索。
[0084] 在步骤1206处,位置服务器240可以经由一个或多个网络230a、230b向移动设备100发送OCR库信息308。可以自动地(即,在不具有来自用户的明式请求的情况下)或按
需地(即,在具有来自用户的请求的情况下)发送OCR库信息308。如上所述,OCR库信息
308可以与运行在移动设备100上的OCR引擎一起工作以帮助改进识别结果,所述识别结果
针对接近粗略位置信息的、期望的人类可读位置信息。OCR库信息308可以由粗略位置索引
并存储在移动设备100中(例如,存储器140)。处理器111可以被配置成当移动设备100
在相应位置时,对位置特定OCR库信息308进行访问。
[0085] 在实施例中,移动设备100可以发送图像文件,并且位置服务器240可以被配置成对图像文件执行OCR。在这种情况下,位置服务器240可以选择OCR库信息308并且本地地
计算位置串值。位置服务器240可以向移动设备100提供得到的位置信息。
[0086] 在步骤1208处,位置服务器240可以从移动设备100接收一个或多个位置串值。接收到的位置串值可以对应于与精细位置信息310b和本地信息312相关联的数据字段。例
如,位置串值可以对应于房间号码、名字、门牌(例如,“出口”)、或来自移动设备100上的OCR引擎的任何其它输出。在实施例中,移动设备还可以将相对位置信息(即,距特征的距
离、特征的相对大小)连同位置串值一起发送。
[0087] 在步骤1210处,位置服务器240基于接收到的(多个)位置串值来确定位置信息。还可以使用粗略位置信息来确定位置信息。位置信息可以包括精细位置信息310b、位置估
计、或与位置串值或相对位置信息相关联的其它位置信息。例如,位置信息可以包括与位置
串、以及图形地图文件、兴趣点相关联的精细位置,以及针对围绕所述精细位置的区域的路
线信息。还可以使用相对位置信息来确定精细位置。在步骤1212处,位置服务器240可以
经由一个或多个网络230a、230b向移动设备100提供位置信息。
[0088] 在实施例中,移动设备100可以向位置服务器240发送图像文件。图像文件可以包括区域201内的、可在不具有OCR引擎的情况下被分析的特征。例如,可以针对地理形状、
颜色、或与位置信息相关联的其它区别特征来对图像文件进行分析。可以使用公司标志、建
筑物外观、地标、或一般街景的图像。位置服务器240上的图像处理算法可以识别一个或多
个接收到的图像或者对一个或多个接收到的图像评分,并且确定适当的位置信息。随后向
移动设备发送所述位置信息。
[0089] 贯穿本说明书提到“一个例子”、“例子”、“某些例子”或“示例性实施方式”意味着:结合特征和/或例子来描述的具体特征、结构、或特性可以被包括在请求保护的主题内容的至少一个特征和/或例子中。因此,贯穿本说明书在各个地方出现的短语“在一个例子
中”、“例子”、“在某些例子中”或“在某些实施方式中”或者其它类似短语不必全部指的是同一个特征、例子和/或限制。此外,可以将具体特征、结构或特性组合在一个或多个例子和
/或特征中。
[0090] 如本文所使用的术语“和”、“或”以及“和/或”可以包括各种意思,这些意思也被期望至少部分地取决于使用这种术语的上下文。通常,如果“或”被用于关联一列表,诸如A、B或C,则其意味着A、B和C(此处用于包含性意义),以及意味着A、B或C(此处用于排
他性意义)。另外,如本文所使用的术语“一个或多个”可以用于描述任何单数的特征、结构或特性,或者可以被用于描述多个特征、结构或特性或其一些其它组合。然而,应当注意的
是,这仅是说明性的例子,并且请求保护的主题内容不受限于这个例子。
[0091] 本文描述的方法可以由取决于应用的各种单元来实现,所述应用是根据具体特征和/或例子的应用。例如,可以以硬件、固件和/或其组合连同软件来实现这种方法。在硬
件实施方式中,例如,可以将处理单元实现在一个或多个专用集成电路(ASIC)、数字信号处
理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑设备(PLD)、现场可编程门阵列(FPGA)、
处理器、控制器、微控制器、微处理器、电子设备、被设计用于执行本文所述功能的其它设备单元和/或其组合中。
[0092] 在上面的详细描述中,已经阐述了许多具体细节以提供对请求保护的主题内容的透彻理解。然而,本领域技术人员将理解,可以在不具有这些具体细节的情况下实现请求保
护的主题内容。在其它实例中,没有详细描述普通技术人员知晓的方法和装置以免模糊所
请求保护的主题内容。
[0093] 已经用操作的算法或符号表示呈现了上面的详细描述的一些部分,所述操作是对存储在特定装置或专用计算设备或专用计算平台的存储器中的二进制数字电子信号的操
作。在这个具体说明书的上下文中,术语特定装置之类包括通用计算机,只要它被编程为按
照来自程序软件的指令来执行特定功能。算法描述或符号表示是信号处理或相关领域的普
通技术人员用以向同领域其它技术人员传达他们工作内容的技术的例子。在此处,算法一
般被认为是导致期望结果的操作或类似的信号处理的自相容序列。在这个上下文中,操作
或处理涉及物理量的物理处理。通常,尽管不是必须,这种量可以表现为像代表信息的电
子信号一样能够被存储、转移、组合、比较或者操作的电信号或磁信号的形式。有时为了方
便,主要是由于常见用法,将这种信号称为比特、数据、值、元素、符号、字符、项、数字、数、信息之类。然而,应当理解,所有这些术语或类似术语将与合适的物理量相关联并且仅是方便
的标签。除非特别指出,否则,根据以下讨论显而易见的是,应当理解,贯穿本说明书讨论所使用的诸如“处理”、“计算”、“运算”、“确定”、“建立”、“分析”、“获得”、“识别”、“关联”、“选择”、和/或之类的术语指的是特定装置的动作或过程,特定装置例如专用计算机或类似的
专用电子计算设备。因此,在本说明书的上下文中,专用计算机或类似的专用电子计算设备
能够操纵或转换信号,所述信号通常被表示为在存储器、寄存器、或其它信息存储设备、传
输设备、或专用计算机或类似的专用电子计算设备的显示设备内的物理电子量或磁量。在
本特定发明申请的上下文中,术语“特定装置”可以包括通用计算机,只要它被编程为根据
来自程序软件的指令来执行特定功能。
[0094] 在一些情况下,存储设备的操作(例如从二进制一到二进制零的状态改变,或反之亦然的状态改变)可以例如包括转换,例如物理转换。对于存储设备的特定类型,这种物
理转换可以包括一物品到不同状态或东西的物理转换。例如,而非限制,对于存储设备的一
些类型,状态的改变可能涉及电荷的积聚和存储或者所存储电荷的释放。同样地,在其它存
储设备中,状态的改变可以包括磁定向的物理改变或转换,或者分子结构的物理改变或转
换,例如从结晶体的到非晶体或反之亦然。在又一个其它存储设备中,物理状态的改变可能
涉及量子力学现象,例如叠加、缠结等,这可能涉及例如量子比特(qubit)。前面所述不旨在作为全部例子的穷举列表,在例子中,存储设备中从二进制一到二进制零或反之亦然的状
态改变可以包括转换,例如物理转换。相反地,前面所述旨在作为说明性例子。
[0095] 计算机可读(存储)介质可以被组织成一个或多个代码段并且通常可以是非临时性的或者包括非临时性设备。在这个上下文中,非临时性存储介质可以包括有形设备,这意
味着尽管所述设备可以改变其物理状态,但其具有实在的物理形式。因此,举例来说,非临
时性指的是尽管状态会改变但保持有形的设备。通常,代码段是存储在计算机可读存储介
质或其它存储设备上的一个或多个计算机可执行指令。
[0096] 虽然已经示出并描述了目前被认为是示例性的特征,但是本领域技术人员将理解,在不脱离请求保护的主题内容的情况下,可以进行各种其它修改,并且可以替代等同
物。另外,在不脱离本文描述的中心概念的情况下,可以进行很多修改以适应请求保护的主
题内容的教导的具体情况。
[0097] 因此,请求保护的主题内容并不旨在受限于所公开的特定例子,但是这种请求保护的主题内容还可以包括落入附加的权利要求的范围内的所有方面及其等同物。
QQ群二维码
意见反馈