用于定位的方法和设备与流程

文档序号:11279785阅读:166来源:国知局
用于定位的方法和设备与流程

本公开的实施例总体上涉及定位技术领域,并且更具体地,涉及用于定位的方法和相应的便携式设备。



背景技术:

诸如导航等基于位置的服务已经成为一种非常流行的新型应用。在基于位置的服务中,需要获得目标对象的位置。在室外环境中,可以借助全球导航卫星系统(gnss)来获取位置信息。gnss的示例包括全球定位系统(gps)、伽利略定位系统(galileo)、北斗卫星定位系统(bds),等等。在室内环境中,由于卫星定位系统往往无法工作,可以使用各种室内定位系统(indoorpositioningsystem,ips)来获取位置。

在ips定位方法中,通常基于无线通信网络中的无线电信标发射机与终端设备之间的通信来实现定位。诸如第三代(3g)/第四代(4g)移动通信网络和通用分组无线电业务(gprs)网络的蜂窝通信网络、诸如无线保真(wi-fi)网络的计算机网络等均可用于室内定位。



技术实现要素:

总体上,本公开的实施例提出用于定位的方法和相应的便携式设备。

根据本公开的第一方面,提供了一种用于定位的方法。该方法包括:通过便携式设备的图像捕获装置,捕获环境中的可视编码标签;解码该可视编码标签,以获得用于生成该可视编码标签的标识;以及通过利用该标识查询预定义的库,确定该便携式设备在该环境中的位置,该库记录有一组用于生成可视编码标签的标识与该环境中的一组 位置之间的对应关系。

根据本公开的第二方面,提供了一种便携式设备。该便携式设备包括:图像捕获装置,被配置为捕获环境中的可视编码标签;以及控制器,被配置为:解码由该图像捕获装置捕获的该可视编码标签,以获得用于生成该可视编码标签的标识;以及通过利用该标识查询预定义的库,确定该便携式设备在该环境中的位置,该库记录有一组用于生成可视编码标签的标识与该环境中的一组位置之间的对应关系。

根据本公开的第三方面,提供了一种计算机程序产品。该计算机程序产品被有形地存储在非瞬态计算机可读存储介质上,并且包括机器可执行指令,该指令在被执行时使得机器执行根据本公开的第一方面的方法的步骤。

应当理解,发明内容部分中所描述的内容并非旨在限定本公开实施例的关键或重要特征,亦非用于限制本公开的范围。本公开的其它特征将通过以下的描述变得容易理解。

附图说明

结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标记表示相同或相似的元素,其中:

图1示出了本公开的实施例可以实施于其中的示例环境;

图2示出了根据本公开的某些实施例的用于定位的方法的流程图;

图3a到图3d示出了根据本公开的某些实施例的为用户导航的示例过程;

图4a和图4b示出了根据本公开的某些实施例的为用户导航的示例性用户界面;以及

图5示出了可以用来实施本公开的实施例的便携式设备的示意性框图。

在所有附图中,相同或相似参考数字表示相同或相似元素。

具体实施例

下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。

在此使用的术语“包括”、“包含”及类似术语应该被理解为是开放性的术语,即“包括/包含但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”。其他术语的相关定义将在下文描述中给出。

如上文所述,传统的ips技术依赖于无线通信系统。例如,在移动通信网络中,用户可以使用随身携带的终端通信设备与附近基站建立连接。继而,可以基于基站的位置来检测用户的位置。然而,基于无线通信技术的ips技术对于环境、终端设备、网络基础设施架构等都具有较高的要求。例如,在无线通信网络的信号较弱又或者信号干扰较强的区域,定位精度会大受影响。又如,在没有部署无线通信网络的区域,或是当用户设备不具有无线通信功能时,完全无法进行定位。实际上,出于网络安全等方面的考虑,即使终端设备具有无线通信功能,也可能无法与网络通信。而且,传统的定位技术可能导致安全和/或隐私方面的问题。例如,在某些环境中,终端设备与网络侧设备之间的通信可能使网络遭到恶意攻击。另一方面,传统的定位技术不可避免地将用户的位置信息暴露给服务器侧,从而带来隐私方面的问题。

为了解决这些以及其他潜在问题,本公开的实施例提供一种基于可视编码标签的定位方法。该方法通过便携式设备的图像捕获装置,捕获环境中的可视编码标签。可视编码标签与环境中的位置之间的对应关系被预先确定和存储。由此,可以基于所捕获的可视编码标签确 定便携式设备在环境中的位置。此种定位方式可以摒弃对于卫星和网络的依赖,从而解决了传统的基于卫星和网络的定位方法中存在的问题。而且,本公开提出的基于可视编码标签来定位的方法在实现上行之有效且简单易行。

首先参考图1,其示出了本公开的实施例可以实施于其中的示例环境100。环境100可以室内环境,也可以是室外环境。图1中示出了环境100的平面地图。然而应当理解,这仅仅是出于示范目的。在其他实施例中,可以使用表示环境100的空间结构的三维地图。

如图所示,根据本公开的实施例,在环境100中布置有一个或多个可视编码标签102-1、102-2、102-3(统称为可视编码标签102)。在此使用的术语“可视编码标签”是以可视化方式对信息进行编码的任何标签。可视编码标签的示例包括但不限于:快速响应(qr)码或称二维码、条形码,等等。为了讨论方便起见,在下文描述中将以qr码作为可视编码标签的示例。

可视编码标签可以以任何适当的方式被部署在环境100中的一个或多个位置。例如,在某些实施例中,可视编码标签可以布置在环境100中的墙壁和/或物体上。另外,应当理解,尽管图1中仅示出了三个可视编码标签102,但这仅仅是出于说明之目的,无意提出任何限制。根据实际需要,在环境100中可以布置任意适当数目的可视编码标签。

根据本公开的实施例,每个可视编码标签与它在环境100中的位置之间存在预先确定的对应关系。这种对应关系可以被存储于在一个库108中。可视编码标签可以由唯一地标识相应位置的标识(id)来生成。例如,已知的是,每个二维码可以从一个特定的标识生成,该标识例如由数字、字母和/或符号的组合构成。根据本公开的实施例,这样的标识被用来唯一地标识与可视编码标签相对应的位置。

如图1所示,用于生成可视编码标签的标识与环境100中的一组位置之间的对应关系以表110的形式被存储在库108中。在此示例中,表110的列111存储可视编码标签的标识。表110的列112存储与可 视编码标签对应的环境100中的位置。在此示例中,位置以地图上的二维坐标表示。应当理解,三维坐标也是可能的,这将在下文详述。

在图1所示的示例中,表110还包括列113,其存储每个可视编码标签对应的位置的名称。此外,列114存储扩展信息,用于指明相应的位置是否可达。应理解,位置名称列和扩展信息列是可选的。在某些实施例中,可以只标识出位置坐标而不标识其名称,也可以不对位置的可达性进行标识。在后文中将对此进行具体描述。

应当理解,图1中示出的表110仅仅是示例性的,无意以任何方式限制本公开的范围。例如,在备选实施例中,可视编码标签与位置之间的对应关系可以以其他形式被存储。又如,表110可以包含任何附加的或者备选的列以存储有关信息。

在操作中,用户可以使用其便携式设备120来捕获位于环境100中的可视编码标签。便携式设备120可以是具有图像捕获功能的任意用户可携带的设备。便携式设备120的示例包括但不限于:诸如电话、平板式计算机、数码相机之类的手持式设备,以及诸如智能眼镜、智能手表之类的可穿戴设备,等等。便携式设备120上配备有能够捕获可视编码标签的图像或者视频的图像捕获装置,例如照相机、摄像机,等等。

根据本公开的实施例,当用户使用便携式设备120捕获环境100中的可视编码标签(例如,标签102)之后,便携式设备120可以对所捕获的标签图像进行解码,从而获得用于生成该可视编码标签102的id。诸如二维码之类的可视编码的解码技术是本领域中已知的,在此不再赘述。解码所获得的标签id可以被用来查询库108,从而确定便携式设备120当前所在的位置。下面将参考图2中示出的方法200来详细描述定位的过程。图2中所示的方法200可以由便携式设备120来执行。

在步骤202中,通过便携式设备120的图像捕获装置,捕获环境100中的可视编码标签102。继而,在步骤204,便携式设备120对所捕获的可视编码标签102进行解码,以获得用于生成该可视编码标签 的标识(id)。如上所述,可视编码标签102可以使用唯一标识环境100中的相应位置的id来生成,可以是诸如qr码的二维码、条形码等以可视化方式对信息进行编码的标签。相应地,对可视编码标签的解码可以使用已有的和将来开发的任意适当解码技术来实现,以获得生成可视编码标签的id。

接下来,在步骤206,通过利用解码获得的id查询预定义的库108,确定便携式设备120在环境100中的位置。如上所述,库108记录有id与环境100中的相应位置之间的对应关系。通过利用便携式设备捕获的标签所对应的id对库108进行查询,可以确定便携式设备120当前所处的位置。例如,在某些实施例中,可以从库108中获取便携式设备120所在位置的坐标。特别地,库108中所记录的坐标可以是具有高度维度的三维坐标。这样,通过查询库108可以获得便携式设备120在环境100中的三维位置信息。

在某些实施例中,库108可以存储于便携式设备120。在这样的实施例中,便携式设备120在通过解码获得用于生成可视编码标签102的id之后,可以在本地直接查询库108,并且从中获取指示相应位置的信息。在这样的实施例中,可以以“离线”(offline)方式实现快速的定位,从而摆脱了对通信网络等基础设施的依赖,并且避免了安全隐患。

当然,应当理解,库108并非一定要存储在便携式设备120本地。在另一些实施例中,库108可以存储于独立于便携式设备120的服务器(未示出)中。在库108存储于便携式设备120本地的实施例中。此时,便携式设备120可以通过网络将通过解码获得的id发送给服务器。服务器利用该id查询存储于本地的库108,然后将所获取的指示位置的信息发送给便携式设备120。这种将库108存储于远程服务器的方式可以有效节省便携式设备120的存储资源。

上面结合图2所描述的用于定位的方法200可以应用于任意适当基于位置的服务中。在作为示例的导航服务中,可以确定目的地位置,然后在便携式设备120上呈现从当前位置去往目的地位置的导航信息。 下面参考图3a至图3d描述一个具体示例,其示出了根据本公开的某些实施例的在环境100中为用户导航的示例过程。在此示例中,环境100是室内环境,并且以三维形式示出。

如图3a所示,当用户走到可视编码标签102-1所在的位置,可以使用随身携带的便携式设备120的图像捕获装置(例如智能电话上的摄像头)捕获可视编码标签102。在此示例中,该可视编码标签102是张贴在墙上的qr码。当用户使用便携式设备120的图像捕获装置(例如,摄像头)扫描qr码之后,便携式设备120对该qr码进行解码,从而获得生成该qr码的id。接下来,通过利用该id查询本地或者远程存储的库108,便携式设备120可以确定用户当前所在的位置。

在确定了用户位置后,便携式设备120可以确定用户想要去往的目的地位置。该位置可以是用户经由便携式设备120的用户界面(ui)输入的,也可以是预先存储的。由此,便携式设备120可以通过ui向用户呈现从当前位置去往目的地位置的导航信息。导航信息可以包括在地图上显示的路线指示、音频提示,等等。例如,在一个实施例中,可以利用地图上的箭头向用户指引前进方向。

在一个实施例中,当前位置和目的地位置以坐标的形式表示。然而,用户有时可能对自己所处的环境100并不熟悉。为了进一步提高用户体验,在某些实施例中,位置信息还可以被表示为位置名称。位置的名称信息例如可以从库108中获得,如上文所述。特别地,在某些实施例中,库108还保存了各个位置是否可达的信息,例如参见图1中的表110的列114。如果发现目的地不可达,则可以向用户呈现相应的信息或者绕行建议等。

用户可以根据便携式设备120所指示的方向行进,如图3b所示。在行进过程中,用户可以基于环境100中的其他一个或多个(例如,可视编码标签102-2)来持续地更新位置和导航信息,如图3c所示。以此方式,用户最终可以如图3d所示到达目的地。

图4a和4b示出了上述导航过程中的示例性ui400的示意图,其 中图4a所示是通过智能眼镜之类的可穿戴设备的ui向用户呈现的导航信息;而图4b所示是通过手机、平板式计算机之类的手持设备的ui向用户呈现的导航信息。具体而言,在图4a和图4b所示的示例中,导航的目的地地址以其名称“会议室a”被显示,并且箭头401被用来向用户指示当前应当行进的方向。

特别地,在某些实施例中,库108中除了记录可视编码标签与环境100中位置的对应关系,还可以记录一个或多个可视编码标签102在环境100中的朝向(orientation)信息。也就是说,事先确定并且存储了标签在环境100中朝向哪个方向,例如以“东”、“西”、“南”、“北”来表示。在这样的实施例中,除了确定便携式设备120的位置之外,还可以确定其在环境100中的朝向。

为此,便携式设备120可以计算图像捕获装置捕获可视编码标签102的角度。该角度可以通过便携式设备120中的重力计、陀螺仪、加速度计等方向感测装置来检测。实际上,可以采用现在已知和将来开发的任何感测方式来实现对图像捕获角度的检测,在此不再赘述。

在确定了可视编码标签102的捕获角度后,便携式设备120可以从库108中获取可视编码标签在环境中的朝向信息。继而,便携式设备120可以基于可视编码标签的捕获角度和可视编码标签102本身的朝向,来确定便携式设备120在环境100中的朝向。朝向信息可以被用于多种目的。例如,在一个实施例中,朝向可以和用户所处的当前位置以及目的地位置结合使用,以便向用户提供准确的导航信息。

图5示出了一个可以用来实施本公开的实施例的便携式设备500的示意性框图。如图5所示,便携式设备500包括控制器或者称中央处理单元(cpu)501,其可以根据存储在存储单元504的程序而执行各种适当的动作和处理。存储单元504包括只读存储器(rom)和/或随机访问存储器(ram),还可存储便携式设备500操作所需的各种程序和数据。cpu501和存储单元504通过总线502彼此相连。输入/输出(i/o)接口503也连接至总线502。

便携式设备500中的多个部件连接至i/o接口503,包括:输入 单元504,例如键盘、鼠标等;输出单元505,例如各种类型的显示器、扬声器等;存储单元506,例如磁盘、光盘等;以及通信单元507,例如网卡、调制解调器、无线通信收发机等。通信单元507允许便携式设备500通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。特别地,在本公开的实施例中,输入单元505包括图像捕获装置,用于采集可视编码标签的图像,以供cpu501处理。另外,在库108位于远程服务器的实施例中,通信单元507允许向服务器传送可视编码标签的id以及从服务器接收位置信息。

在某些实施例中,cpu501可被配置为执行上文所描述的各个过程和处理,例如方法200。例如,在一些实施例中,方法200可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元506。在一些实施例中,计算机程序的部分或者全部可以经由rom和/或通信单元x09而被载入和/或安装到便携式设备500上。当计算机程序被加载到ram并由cpu501执行时,可以执行上文描述的方法200的一个或多个步骤。

特别地,根据本公开的实施例,文参考图1至图4描述的过程可以被实现为计算机程序产品,其可以被有形地存储在非瞬态计算机可读存储介质上,并且包括机器可执行指令,该指令在被执行时使得机器实现根据本公开的各个方面。

计算机可读存储介质可以是可以存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以包括但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的、非穷举的例子包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd-rom)、数字盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波 或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。

用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如java、smalltalk、c++等,以及常规的过程式编程语言—诸如“c”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。

这里参照根据本公开实施例的设备、方法和计算机程序产品的框图和/或流程图描述了本公开的各个方面。应当理解,框图和/或流程图的每个方框以及框图和/或流程图中各方框的组合,都可以由计算机可读程序指令实现。

已经出于示例的目的描述了本公开的各个实施例,但是本公开并不意图限于所公开的这些实施例。在不脱离本公开实质的前提下,所有修改和变型均落入由权利要求所限定的本公开的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1