HK1188821B - Method and apparatus for determining location offset information - Google Patents
Method and apparatus for determining location offset information Download PDFInfo
- Publication number
- HK1188821B HK1188821B HK14101798.6A HK14101798A HK1188821B HK 1188821 B HK1188821 B HK 1188821B HK 14101798 A HK14101798 A HK 14101798A HK 1188821 B HK1188821 B HK 1188821B
- Authority
- HK
- Hong Kong
- Prior art keywords
- location
- offset information
- information
- display
- combination
- Prior art date
Links
Description
背景技术Background Art
服务提供商和设备制造商(例如,无线、蜂窝等)例如通过提供引人注目的服务,在向消费者传递价值性和便利性上不断地被挑战。已形成的一个发展领域为增强现实的使用,用以向用户提供位置和导航服务。例如,利用增强现实的现代用户设备可以在描绘用户前视图的视频图像上叠映图形和文本。就此而言,例如,通过使用摄像机生成图像、使用GPS接收机精确定位用户设备位置以及使用指南针确定用户设备所指向的方向,用户设备能够告诉用户其正在观看什么(例如,兴趣点(POI)、道路、地形类型、边界等)。然而,这样的增强现实系统依赖于由于与用户设备的位置、方向等相关的误差而导致的可能并不精确的数据(例如,来自于GPS、指南针等)。基于不精确的数据而导致的对覆盖用户设备显示器上所描绘的真实世界的表示(representation)的不正确放置可能对用户无用,而且,在一些情况下可能甚至会对用户造成困扰和挫折。因此,服务提供商和设备制造商在向用户提供精确位置和导航信息方面面临着重大的技术挑战。Service providers and device manufacturers (e.g., wireless, cellular, etc.) are continually challenged to deliver value and convenience to consumers, for example, by offering compelling services. One area of development is the use of augmented reality to provide location and navigation services to users. For example, modern user devices utilizing augmented reality can overlay graphics and text on a video image depicting the user's view. In this regard, by using a camera to generate images, a GPS receiver to accurately locate the user device's position, and a compass to determine the direction the user device is pointing, the user device can tell the user what they are viewing (e.g., points of interest (POIs), roads, terrain types, boundaries, etc.). However, such augmented reality systems rely on data (e.g., from GPS, compass, etc.) that may be inaccurate due to errors associated with the user device's position and orientation. Inaccurate placement of the real-world representation depicted on the overlaid user device display based on this inaccurate data can be unhelpful to the user and, in some cases, even cause confusion and frustration. Therefore, service providers and device manufacturers face significant technical challenges in providing users with accurate location and navigation information.
发明内容Summary of the Invention
因此,需要一种用于有效且高效地确定位置偏移信息的方法。Therefore, a method for effectively and efficiently determining position offset information is needed.
根据一个实施例,一种方法包括:确定在设备处呈现基于位置的显示,该显示包括一个或多个基于位置的特征的一个或多个表示。方法还包括:接收用于为与基于位置的显示相关的一个或多个表示的至少一个表示指定偏移信息的输入。方法进一步包括:至少部分基于偏移信息确定在基于位置的显示中呈现一个或多个表示。According to one embodiment, a method includes determining to present a location-based display at a device, the display including one or more representations of one or more location-based features. The method also includes receiving input specifying offset information for at least one of the one or more representations associated with the location-based display. The method further includes determining to present the one or more representations in the location-based display based at least in part on the offset information.
根据另一个实施例,装置包括至少一个处理器以及包括计算机程序代码的至少一个存储器,至少一个存储器和计算机程序代码被配置成,利用至少一个处理器至少部分地使装置确定在设备处呈现基于位置的显示,该显示包括一个或多个基于位置的特征的一个或多个表示。还使装置接收用于为与基于位置的显示相关的一个或多个表示的至少一个表示指定偏移信息的输入。进一步使装置至少部分地基于偏移信息确定在基于位置的显示中呈现一个或多个表示。According to another embodiment, an apparatus includes at least one processor and at least one memory including computer program code, the at least one memory and the computer program code being configured to, utilizing the at least one processor, at least in part, cause the apparatus to determine, at a device, to present a location-based display, the display including one or more representations of one or more location-based features. The apparatus is further caused to receive input specifying offset information for at least one of the one or more representations associated with the location-based display. The apparatus is further caused to determine, based at least in part on the offset information, to present the one or more representations in the location-based display.
根据另一个实施例,一种计算机可读存储介质承载一个或多个指令的一个或多个序列,当由一个或多个处理器执行所述指令时,所述指令至少部分地使装置确定在设备处呈现基于位置的显示,该显示包括一个或多个基于位置的特征的一个或多个表示。还使装置接收用于为与基于位置的显示相关的一个或多个表示的至少一个表示指定偏移信息的输入。进一步使装置至少部分地基于偏移信息确定在基于位置的显示中呈现一个或多个表示。According to another embodiment, a computer-readable storage medium carries one or more sequences of one or more instructions that, when executed by one or more processors, cause an apparatus, at least in part, to determine to present a location-based display at a device, the display including one or more representations of one or more location-based features. The apparatus also causes the apparatus to receive input specifying offset information for at least one of the one or more representations associated with the location-based display. The apparatus further causes the apparatus to determine to present the one or more representations in the location-based display based, at least in part, on the offset information.
根据另一个实施例,一种装置包括用于确定在设备处呈现基于位置的显示的部件,该显示包括一个或多个基于位置的特征的一个或多个表示。装置还包括接收用于为与基于位置的显示相关的一个或多个表示的至少一个表示指定偏移信息的输入的部件。装置进一步包括用于至少部分地基于偏移信息确定在基于位置的显示中呈现一个或多个表示的部件。According to another embodiment, an apparatus includes means for determining to present a location-based display at a device, the display including one or more representations of one or more location-based features. The apparatus also includes means for receiving input specifying offset information for at least one of the one or more representations associated with the location-based display. The apparatus further includes means for determining to present the one or more representations in the location-based display based at least in part on the offset information.
仅通过对包括执行本发明所涵盖的最佳模式的许多特定实施例和实现方式的说明,本发明的其他方面、特征和优点从以下详细的描述中而显而易见。本发明还能够实现其他的且不同的实施例,并且可以在不脱离本发明的精神和范围的情况下,在各个明显的方面对其几个细节进行修改。因此,附图和描述将被认作本质上是说明性的,而不是限制性的。Other aspects, features, and advantages of the present invention will become apparent from the following detailed description, which illustrates only a number of specific embodiments and implementations, including the best mode contemplated for carrying out the invention. The invention is also capable of other and different embodiments, and its several details may be modified in various obvious respects without departing from the spirit and scope of the invention. Accordingly, the drawings and description are to be regarded as illustrative in nature and not restrictive.
附图说明BRIEF DESCRIPTION OF THE DRAWINGS
通过示例的方式而不是通过限制的方式说明了本发明的实施例。在附图中:Embodiments of the present invention are described by way of example and not by way of limitation. In the accompanying drawings:
图1为根据一个实施例的能够确定位置偏移信息的系统的示意图;FIG1 is a schematic diagram of a system capable of determining position offset information according to one embodiment;
图2为根据一个实施例的校正管理器的组件的示意图;FIG2 is a schematic diagram of components of a correction manager according to one embodiment;
图3是根据一个实施例的用户设备的组件的示意图;FIG3 is a schematic diagram of components of a user equipment according to one embodiment;
图4是根据一个实施例的用于确定位置偏移信息的过程的流程图;FIG4 is a flow chart of a process for determining position offset information according to one embodiment;
图5是根据一个实施例的用于利用存储的位置偏移信息的过程的流程图;5 is a flow diagram of a process for utilizing stored position offset information according to one embodiment;
图6是根据一个实施例的用于确定近似位置的过程的流程图;6 is a flow chart of a process for determining an approximate location, according to one embodiment;
图7A-7D是根据各种实施例的在图4的过程中所利用的用户界面的示意图;7A-7D are schematic diagrams of user interfaces utilized in the process of FIG. 4 , according to various embodiments;
图8是根据一个实施例的在图5的过程中所利用的用户界面的示意图;FIG8 is a schematic diagram of a user interface utilized in the process of FIG5 according to one embodiment;
图9是可以用来实现本发明的实施例的硬件的示意图;FIG9 is a schematic diagram of hardware that may be used to implement an embodiment of the present invention;
图10是可以用来实现本发明的实施例的芯片组的示意图;以及FIG10 is a schematic diagram of a chipset that can be used to implement an embodiment of the present invention; and
图11是可以用来实现本发明的实施例的移动终端(例如手持设备)的示意图。FIG11 is a schematic diagram of a mobile terminal (eg, a handheld device) that can be used to implement an embodiment of the present invention.
具体实施方式DETAILED DESCRIPTION
公开了用于确定位置偏移信息的方法、装置和计算机程序的示例。在以下的描述中,出于解释的目的,阐述了大量具体的细节以便提供对本发明实施例的全面理解。然而很显然,对所属领域技术人员而言,本发明的实施例可以在没有这些具体的细节或在具有等同布置的情况下实施。在其他实例中,以框图的形式显示已知的结构和设备,以避免不必要地使本发明的实施例模糊不清。Examples of methods, apparatuses, and computer programs for determining position offset information are disclosed. In the following description, for purposes of explanation, numerous specific details are set forth to provide a thorough understanding of the embodiments of the present invention. However, it will be apparent to one skilled in the art that the embodiments of the present invention can be practiced without these specific details or with equivalent arrangements. In other instances, well-known structures and devices are shown in block diagram form to avoid unnecessarily obscuring the embodiments of the present invention.
尽管描述了与基于位置的显示(即增强现实显示)有关的各种实施例,我们预期,在此所描述的方法可以用于任何其他的基于位置的显示,该其他的基于位置的显示包括但不限于混合现实显示、绘图(mapping)显示(例如二维地图、三维地图、地形图等)、导航显示或其组合。Although various embodiments are described in connection with location-based displays (i.e., augmented reality displays), it is contemplated that the methods described herein can be used with any other location-based displays, including but not limited to mixed reality displays, mapping displays (e.g., two-dimensional maps, three-dimensional maps, topographic maps, etc.), navigation displays, or combinations thereof.
图1是根据一个实施例的能够确定位置偏移信息的系统的示意图。对服务提供商和设备制造商而言,在大批用户设备(例如移动手持设备、计算机、导航设备等)上绑定或产生可用的导航和绘图服务变得日益普遍。这样的设备可以利用基于位置的技术(例如全球定位系统(GPS)接收机、蜂窝三角测量、辅助GPS(A-GPS)等)来提供导航和绘图信息。对这些服务而言,一个不断增长的趋势是突破二维(2D)地图,基于三维(3D)地图或位置和/或感兴趣路线的表示(representation)而提供位置服务。例如,现代设备可以利用增强现实模式来将图形和文本叠映在显示用户前建筑物的视频图像上。在视频图像上叠映的图形和文本例如可以是表示所显示的建筑物的图标或标签。建筑物的表示(例如图标、标签、信息等)可以进一步基于建筑物的位置覆盖视频图像,以向用户提供有关该建筑物的信息。例如,通过使用摄像机生成图像、GPS接收机精确定位用户设备位置以及指南针确定用户设备所指向的方向,设备最初可以收集初步的建筑物信息。基于初步的信息,可以从设备上的数据、本地数据库、服务提供商、因特网和/或可以从中获得数据的任何其他地方收集关于建筑物的进一步的信息。额外的信息可以包括诸如建筑物的名称或类型、地址、电话号码、建筑物的描述、建筑物所提供的服务等的数据。如所提到的,向用户所提供的有关其周围环境的信息不限于建筑物,而是可以适用于诸如用户位置、其他位置、POI、道路、地形特征、边界等的任何的基于位置的特征。Figure 1 is a schematic diagram of a system capable of determining location offset information, according to one embodiment. It's becoming increasingly common for service providers and device manufacturers to bundle or make navigation and mapping services available on a wide range of user devices (e.g., mobile handsets, computers, navigation devices, etc.). Such devices can utilize location-based technologies (e.g., Global Positioning System (GPS) receivers, cellular triangulation, Assisted GPS (A-GPS), etc.) to provide navigation and mapping information. A growing trend for these services is to move beyond two-dimensional (2D) maps and provide location services based on three-dimensional (3D) maps or representations of locations and/or routes of interest. For example, modern devices can utilize augmented reality modes to overlay graphics and text on a video image showing a building in front of the user. The graphics and text overlaid on the video image can, for example, be icons or labels representing the displayed building. Building representations (e.g., icons, labels, information, etc.) can further overlay the video image based on the building's location to provide information about the building to the user. For example, the device may initially gather preliminary building information by using a camera to generate images, a GPS receiver to pinpoint the user device's location, and a compass to determine the direction the user device is pointing. Based on this preliminary information, further information about the building may be gathered from data on the device, local databases, service providers, the Internet, and/or any other place where data can be obtained. Additional information may include data such as the name or type of building, address, telephone number, description of the building, services provided by the building, and the like. As mentioned, the information provided to the user about their surroundings is not limited to buildings, but may apply to any location-based feature such as the user's location, other locations, POIs, roads, terrain features, boundaries, and the like.
然而,这样的增强现实系统依赖于由于与用户设备的位置、方向等相关的误差而导致的可能并不精确的数据(例如,来自于GPS接收机、指南针等)。例如,移动设备上的GPS接收机可仅提供大约20米的位置精确度,同时移动设备内部的指南针可仅提供大约20度的方向精确度。因此,这些误差可以导致覆盖例如移动设备显示器上所描绘的真实世界的图形或文本表示的不正确放置。这些不精确可以对用户造成重大的问题,特别是在基于位置的特征紧密的情况下(例如,具有不同评级的并排的两个饭店、多个邻接城市的边界等)。However, such augmented reality systems rely on data (e.g., from a GPS receiver, a compass, etc.) that may be inaccurate due to errors associated with the user device's location, orientation, etc. For example, a GPS receiver on a mobile device may only provide a location accuracy of approximately 20 meters, while a compass within the mobile device may only provide a direction accuracy of approximately 20 degrees. Consequently, these errors can result in incorrect placement of graphics or textual representations overlaying the real world, such as depicted on a mobile device display. These inaccuracies can cause significant problems for users, particularly in situations where location-based features are closely spaced (e.g., two restaurants with different ratings side by side, the boundaries of multiple adjacent cities, etc.).
为了解决该问题,图1的系统100引入了为基于位置的特征的表示指定偏移信息并且然后基于偏移信息在基于位置的显示上呈现该表示的能力。更特别地,系统100可以例如从用户接收偏移信息。通过示例的方式,用户可以通过键入偏移信息、通过将表示(例如使用鼠标、触摸屏等)拖动到基于位置的显示中的正确位置或通过一些其他类似的方式,向用户设备输入偏移信息。用户可以依次为每个表示输入偏移信息,或者用户可以选择将由用户提供的偏移信息应用到一组表示。该组表示可以包括由用户手动选择的表示、在基于位置的显示上当前可见的表示、在预定区域中可用的表示或由系统100生成或系统100可用的全部表示。如果明显的误差为特定的基于位置的特征(例如特定的POI)的位置信息(例如地理坐标),则用户可能仅想将偏移信息应用到用于特定的基于位置的特征的表示。然而如果明显的误差为有关于对许多表示的放置产生重大影响的方向信息,则用户可能想将偏移信息应用到一组表示(例如在预定区域内可用的表示)。此外,接收的偏移信息还可以自动应用到一个表示或一组表示。To address this issue, system 100 of FIG. 1 introduces the ability to specify offset information for representations of location-based features and then present the representations on the location-based display based on the offset information. More specifically, system 100 may receive the offset information, for example, from a user. By way of example, the user may enter the offset information into a user device by typing the offset information, dragging the representation (e.g., using a mouse, a touchscreen, etc.) to the correct location in the location-based display, or through some other similar means. The user may enter the offset information for each representation sequentially, or the user may choose to apply the user-provided offset information to a group of representations. The group of representations may include representations manually selected by the user, representations currently visible on the location-based display, representations available in a predetermined area, or all representations generated or available to system 100. If the significant error is in the location information (e.g., geographic coordinates) of a specific location-based feature (e.g., a specific POI), the user may only want to apply the offset information to the representations for that specific location-based feature. However, if the significant error is in directional information that significantly affects the placement of many representations, the user may want to apply the offset information to a group of representations (e.g., representations available in a predetermined area). Furthermore, the received offset information can also be automatically applied to a representation or a group of representations.
在某些实施例中,系统100可以识别出用户可回到特定的位置,并且因而可以存储偏移信息以及任何其他相关的信息用于以后使用。因此,偏移信息还可以从存储器接收。此外,偏移信息可以向该区域中的其他设备传送。这样,其他设备可以使用偏移信息来呈现其他基于位置的显示。类似地,偏移信息可以从其他设备接收。In some embodiments, system 100 can recognize that a user can return to a specific location and, therefore, can store the offset information and any other relevant information for later use. Thus, the offset information can also be received from memory. Furthermore, the offset information can be transmitted to other devices in the area. Thus, other devices can use the offset information to present other location-based displays. Similarly, the offset information can be received from other devices.
在其他实施例中,基于位置的显示可以基于位置信息和/或方向信息。就此而论,系统100可能够确定与位置信息和/或方向信息相关联的精确度信息,然后基于该精确度信息呈现表示。在一个示例中,系统100可能够确定用户所使用的指南针具有+/-20度的精确度,然后基于该确定呈现表示。在另一个示例中,系统100可以使用诸如来自于用户设备利用的陀螺仪、加速计、磁力计等的其他位置或方向量度来确定精确度信息。在进一步的示例中,例如如果已确定精确度信息满足预定的精确度门限,系统100可以唯一地或更主要地依赖于来自于传感器的数据,而不是利用偏移信息在基于位置的显示内进行调节。例如,可以确定+/-20度的精确度不满足预定的精确度门限。然而,可以确定+/-5度的精确度足够的狭窄以满足预定的精确度门限。In other embodiments, the location-based display may be based on position information and/or orientation information. In this regard, system 100 may be capable of determining accuracy information associated with the position information and/or orientation information and then presenting a representation based on this accuracy information. In one example, system 100 may be capable of determining that a compass used by a user has an accuracy of +/- 20 degrees and then presenting a representation based on this determination. In another example, system 100 may determine accuracy information using other position or orientation metrics, such as from a gyroscope, accelerometer, magnetometer, etc., utilized by the user's device. In a further example, if it is determined that the accuracy information meets a predetermined accuracy threshold, system 100 may rely solely or primarily on sensor data, rather than using offset information, to make adjustments within the location-based display. For example, it may be determined that an accuracy of +/- 20 degrees does not meet the predetermined accuracy threshold. However, it may be determined that an accuracy of +/- 5 degrees is sufficiently narrow to meet the predetermined accuracy threshold.
更具体地,系统100可以在设备处呈现基于位置的显示,该显示包括一个或多个基于位置的特征的一个或多个表示。表示可以包括图标、标签、信息或可以用来表示基于位置的特征的任何事物。基于位置的特征可以包括用户位置、其他位置、POI、道路、地形类型、边界或位置(或多个位置)的任何其他特征。系统100然后可以接收用于为与基于位置的显示相关的一个或多个表示的至少一个表示指定偏移信息的输入。如前面所讨论的,可以从用户、从设备处或设备可用的存储器、从其他设备等接收用于指定偏移信息的输入。就此而言,系统100可以进一步基于偏移信息在基于位置的显示上呈现一个或多个表示。More specifically, system 100 can present a location-based display at a device that includes one or more representations of one or more location-based features. Representations can include icons, labels, information, or anything else that can be used to represent location-based features. Location-based features can include the user's location, other locations, POIs, roads, terrain types, boundaries, or any other characteristic of a location (or locations). System 100 can then receive input for specifying offset information for at least one of the one or more representations associated with the location-based display. As previously discussed, input for specifying offset information can be received from the user, from the device or from memory available to the device, from another device, and so on. In this regard, system 100 can further present one or more representations on the location-based display based on the offset information.
如图1中所示,系统100包括用户设备(UE)101,其经由通信网络105连接到地图平台103。UE101上的应用107(例如增强现实应用107、导航应用107等)可以利用绘图信息。应用107还可以包括校正管理器109来对由应用107生成的基于位置的显示中的绘图信息进行校正。我们注意到,校正管理器109可以包括在如图所示的UE101中,或者可以通过地图平台103提供和操作校正管理器109。而且,绘图信息可以包括在与地图平台103相关联的用于通过应用107访问的地图数据库111中。在某些实施例中,绘图信息为可以由增强显示应用107用来为用户提供基于位置的特征(例如,用户位置、其他位置、POI、道路、地形特征、边界等)以及相关的信息的信息。绘图信息还可以包括地图、卫星图像、POI信息、街道以及路径信息、地形信息、边界信息、与地图相关联的签名信息(signing information)、与地图相关联的目标和建筑物、关于人以及人的位置的信息、与上述信息相关联的坐标信息等或者其组合。POI可以为某人例如可找到感兴趣或觉得有用的特定点位置。兴趣点的示例可以包括机场、面包店、大坝、地标、饭店、旅馆、某人的位置或从某种意义上来讲感兴趣的、有用的或由重大意义的任何点。边界的示例可以包括房地产、私人和公共娱乐场所、学校、道路、建筑、地区、城市、郡/省、州、国家、大陆和/或具有界限或限定的任何区域的边界。As shown in Figure 1, system 100 includes a user equipment (UE) 101 connected to a mapping platform 103 via a communication network 105. Applications 107 on UE 101 (e.g., augmented reality applications 107, navigation applications 107, etc.) can utilize mapping information. Applications 107 can also include a correction manager 109 to correct the mapping information in location-based displays generated by applications 107. It is noted that correction manager 109 can be included in UE 101 as shown, or can be provided and operated by mapping platform 103. Furthermore, mapping information can be included in a map database 111 associated with mapping platform 103 for access by applications 107. In certain embodiments, mapping information is information that can be used by augmented display applications 107 to provide users with location-based features (e.g., the user's location, other locations, points of interest, roads, terrain features, boundaries, etc.) and related information. Mapping information may also include maps, satellite imagery, POI information, street and path information, terrain information, boundary information, signing information associated with the map, objects and buildings associated with the map, information about people and their locations, coordinate information associated with the above information, and the like, or a combination thereof. A POI may be a specific point of location that a person may find interesting or useful, for example. Examples of points of interest may include airports, bakeries, dams, landmarks, restaurants, hotels, a person's location, or any point that is interesting, useful, or significant in some way. Examples of boundaries may include the boundaries of real estate, private and public recreational areas, schools, roads, buildings, regions, cities, counties/provinces, states, countries, continents, and/or any area with boundaries or definitions.
在某些实施例中,绘图信息可以与包括实时媒体(例如流广播)、存储媒体(例如存储在网络上或本地存储的)、与媒体关联的元数据、文本信息、其他用户设备的位置信息或者其组合的内容信息相关联。内容可以通过服务平台113提供,服务平台113包括一个或多个服务115a-115n(例如,音乐服务、绘图服务、视频服务、社交联网服务、内容广播服务等)、一个或多个内容提供商(没有示出)(例如在线内容零售商、公共数据库等)、通信网络105上可用或可访问的其他内容源。例如,应用107可以在基于位置的显示中显示与位置有关的内容信息(例如与POI或与特定位置相关联的内容),作为对POI信息和/或其他绘图信息的补充或替代。In some embodiments, the mapping information may be associated with content information including real-time media (e.g., streaming broadcasts), stored media (e.g., stored on a network or locally), metadata associated with the media, textual information, location information of other user devices, or a combination thereof. The content may be provided by a service platform 113, which may include one or more services 115a-115n (e.g., music services, mapping services, video services, social networking services, content broadcast services, etc.), one or more content providers (not shown) (e.g., online content retailers, public databases, etc.), or other content sources available or accessible on the communication network 105. For example, the application 107 may display location-related content information (e.g., content associated with a POI or a specific location) in a location-based display, in addition to or in lieu of POI information and/or other mapping information.
在一个实施例中,可以结合增强现实应用107利用UE101的图像捕获模块117以向用户呈现绘图信息。例如,可以向用户呈现与在基于位置的显示上呈现绘图信息、内容信息等的增强现实应用107或导航应用107相关联的增强现实接口。在某些实施例中,用户界面可以显示混合物理和虚拟环境,其中来自于地图数据库111的3D目标被放置叠映在相应位置的实况图像(例如经由UE101的摄像机)或预录图像(例如360°全景图片)的顶部。在另一个实施例中,绘图信息以及呈现给用户的地图可以是作为对实况增强现实显示的替换或补充的仿真3D环境。因此,校正管理器109可以操作在基于增强现实位置的显示器、仿真3D显示器和/或其他基于位置的显示器之上以对其中所呈现的绘图信息进行校正。In one embodiment, the image capture module 117 of the UE 101 can be utilized in conjunction with an augmented reality application 107 to present mapping information to the user. For example, an augmented reality interface associated with an augmented reality application 107 or a navigation application 107 that presents mapping information, content information, and the like on a location-based display can be presented to the user. In some embodiments, the user interface can display a hybrid physical and virtual environment in which 3D objects from a map database 111 are superimposed on a live image (e.g., via a camera of the UE 101) or a pre-recorded image (e.g., a 360° panoramic image) of the corresponding location. In another embodiment, the mapping information and the map presented to the user can be a simulated 3D environment as an alternative to or in addition to the live augmented reality display. Accordingly, the correction manager 109 can operate on the augmented reality location-based display, the simulated 3D display, and/or other location-based displays to correct the mapping information presented therein.
我们注意到,UE101可以执行一个或多个应用107以察看或访问绘图信息。如上所提到的,绘图信息可以包括POI信息、位置信息、方向或位置的关联,或者其结合。在一个示例中,默认的设置可以允许用户察看关于与位置相关联的POI、建筑物以及与增强现实显示或3D环境相关联的其他目标的信息。在一个典型的使用实例中,用户可以在基于位置的显示中将UE101指向基于位置的特征(例如POI)以察看相应的信息。更具体地,应用107(例如增强现实应用107)可以基于已确定的观察点,将基于位置的特征与地理坐标(例如来自于卫星119)相关联。然后,应用107可以从地图平台103获得对应于位置的信息用于在基于位置的显示中呈现。We note that UE 101 can execute one or more applications 107 to view or access mapping information. As mentioned above, the mapping information can include POI information, location information, directions or associations to locations, or a combination thereof. In one example, a default setting can allow a user to view information about POIs, buildings, and other objects associated with a location that are associated with an augmented reality display or 3D environment. In a typical use case, a user can point UE 101 at a location-based feature (e.g., a POI) in a location-based display to view the corresponding information. More specifically, application 107 (e.g., augmented reality application 107) can associate the location-based feature with geographic coordinates (e.g., from satellite 119) based on a determined observation point. Application 107 can then obtain information corresponding to the location from mapping platform 103 for presentation in the location-based display.
在另一个典型的使用实例中,当用户将UE101指向基于位置的特征(例如POI)或指向大体的方向,UE101可以在基于位置的显示上呈现一个或多个基于位置的特征(例如POI)的一个或多个表示。在基于位置的显示上的表示的放置除了基于UE101的位置、航向参考(heading reference)以及倾斜角度,还可以基于各自的基于位置的特征的地理坐标。如前面所提到的,表示的放置可能由于诸如与UE101的位置、方向等相关的误差的许多原因而并不精确。因此,校正管理器109可以接受例如来自于用户的用于表示的偏移信息。在此示例中,用户可以通过键入偏移信息、通过(例如使用鼠标、触摸屏等)拖动表示或通过一些其他类似的方式而提供偏移信息。如以上所讨论的,用户可以依次为每个表示输入偏移信息,或者用户可以选择将由用户提供的偏移信息应用到一组表示。此外,接收的偏移信息还可以自动应用到一个表示或一组表示。In another typical use case, when a user points UE 101 toward a location-based feature (e.g., a POI) or in a general direction, UE 101 may present one or more representations of one or more location-based features (e.g., a POI) on a location-based display. The placement of the representations on the location-based display may be based not only on the UE 101's location, heading reference, and tilt angle, but also on the geographic coordinates of the respective location-based features. As previously mentioned, the placement of the representations may be imprecise due to various reasons, such as errors associated with the UE 101's location, orientation, etc. Therefore, the correction manager 109 may accept, for example, offset information for the representations from the user. In this example, the user may provide the offset information by typing the offset information, by dragging the representations (e.g., using a mouse, a touchscreen, etc.), or by some other similar means. As discussed above, the user may enter the offset information for each representation sequentially, or the user may choose to apply the user-provided offset information to a group of representations. Furthermore, the received offset information may be automatically applied to a representation or a group of representations.
通过示例的方式,系统100的通信网络105包括诸如数据网络(没有示出)、无线网络(没有示出)、电话网络(没有示出)或者其任何的组合的一个或多个网络。我们预期,数据网络可以是任意的局域网(LAN)、城域网(MAN)、广域网(WAN)、公共数据网络(例如因特网)、短距离无线网络或诸如商有分组交换网络、专有分组交换网络(例如专有电缆或光纤网络)等的任何其他合适的分组交换网络,或者以上网络的任何组合。此外,无线网络可以是例如蜂窝网络,并且可以采用包括增强型数据速率全球演进(EDGE)、通用分组无线业务(GPRS)、全球移动通信系统(GSM)、因特网协议多媒体子系统(IMS)、通用移动电信系统(UMTS)等的各种技术以及任何其他合适的无线媒介(例如微波存取全球互通(WIMAX)、长期演进(LTE)网络、码分多址(CDMA)、宽带码分多址(WCDMA)、无线保真(WiFi)、无线局域网(WLAN)、蓝牙、因特网协议(IP)数据广播、卫星、移动ad-hoc网络(MANET)等)或者以上任意组合。By way of example, the communication network 105 of the system 100 includes one or more networks such as a data network (not shown), a wireless network (not shown), a telephone network (not shown), or any combination thereof. It is contemplated that the data network can be any local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), a public data network (e.g., the Internet), a short-range wireless network, or any other suitable packet-switched network such as a commercial packet-switched network, a proprietary packet-switched network (e.g., a proprietary cable or fiber optic network), or any combination thereof. In addition, the wireless network can be, for example, a cellular network, and can adopt various technologies including Enhanced Data Rates for Global Evolution (EDGE), General Packet Radio Service (GPRS), Global System for Mobile Communications (GSM), Internet Protocol Multimedia Subsystem (IMS), Universal Mobile Telecommunications System (UMTS), etc., and any other suitable wireless media (such as Worldwide Interoperability for Microwave Access (WIMAX), Long Term Evolution (LTE) network, Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Wireless Fidelity (WiFi), Wireless Local Area Network (WLAN), Bluetooth, Internet Protocol (IP) data broadcast, satellite, mobile ad-hoc network (MANET), etc.) or any combination of the above.
UE101是任意类型的移动终端、固定终端或便携式终端,包括移动手持设备、站、单元、设备、多媒体计算机、多媒体平板、因特网节点、通信机、桌上计算机、膝上计算机、笔记本计算机、上网本计算机、平板计算机、个人计算机系统(PCS)设备、个人导航设备、个人数字助理(PDA)、音频/视频播放器、数字摄像机/摄录像机、定位设备、电视接收机、无线电广播接收机、电子书设备、游戏设备或其任意组合,该组合包括这些设备的配件和外围设备或其任意组合。我们还预期,UE101可以支持到用户的任意类型的接口(例如“可穿戴”电路等)。UE 101 is any type of mobile, fixed, or portable terminal, including a mobile handheld device, a station, a unit, a device, a multimedia computer, a multimedia tablet, an Internet node, a communicator, a desktop computer, a laptop computer, a notebook computer, a netbook computer, a tablet computer, a personal computer system (PCS) device, a personal navigation device, a personal digital assistant (PDA), an audio/video player, a digital camera/camcorder, a positioning device, a television receiver, a radio receiver, an electronic book device, a gaming device, or any combination thereof, including accessories and peripherals thereof. It is also contemplated that UE 101 may support any type of interface to the user (e.g., "wearable" circuitry, etc.).
在另一个实施例中,校正管理器109可以存储偏移信息以及任意其他相关的信息。信息可以存储在UE101(例如高速缓存存储器、存储器、硬驱动等)、本地数据库、地图数据库111、或经由通信网络105可用的任何其他的存储设备。校正管理器109可以进一步将存储的偏移信息应用到一个或多个其他的基于位置的显示,该显示基于实质上接近于(similarto)与基于位置的显示相关联的位置信息的预定邻近范围或在该预定邻近范围之内的位置信息而呈现。在一个典型使用实例中,用户可以为特定咖啡馆每日早上光顾的客人。就此而论,当用户走向咖啡馆,校正管理器109可以识别出当前位置信息实质上接近于先前的基于位置的显示的位置信息的预定邻近范围或在该预定邻近范围之内。因此。校正管理器109例如通过基于存储的偏移信息自动地校准UE101,可以将存储的偏移信息应用到当前基于位置的显示。这样,当用户每天早上走向咖啡馆,用户能够在UE101的基于位置的显示中自动看到例如精确覆盖在咖啡馆之上的咖啡馆的每日特餐。In another embodiment, calibration manager 109 may store the offset information along with any other relevant information. The information may be stored in UE 101 (e.g., cache memory, memory, hard drive, etc.), a local database, map database 111, or any other storage device accessible via communication network 105. Calibration manager 109 may further apply the stored offset information to one or more other location-based displays presented based on location information that is substantially similar to, or within, a predetermined proximity of, the location information associated with the location-based display. In a typical use case, a user may be a regular morning visitor to a particular cafe. In this context, as the user walks toward the cafe, calibration manager 109 may recognize that the current location information is substantially similar to, or within a predetermined proximity of, the location information of a previous location-based display. Therefore, calibration manager 109 may apply the stored offset information to the current location-based display, for example, by automatically calibrating UE 101 based on the stored offset information. Thus, when the user walks to the cafe every morning, the user can automatically see, for example, the cafe's daily specials precisely overlaid on the cafe in the location-based display of the UE 101 .
在另一个实施例中,校正管理器109可以将偏移信息传送到设备的邻近范围之内的一个或多个其他的设备,其中使用偏移信息用来在对应的其他设备处呈现其他基于位置的显示。通过示例的方式,典型的咖啡馆可以在其营业期内的任何时刻具有很多持有移动设备的客人。当校正管理器109例如从用户接收偏移信息,其然后可以传送偏移信息到用户的UE101的邻近范围内的其他UE101。其他UE101的校正管理器109然后可以基于传送的偏移信息对相应的基于位置的显示上的表示的放置进行校正。In another embodiment, the correction manager 109 may transmit the offset information to one or more other devices within the vicinity of the device, where the offset information is used to present other location-based displays at the corresponding other devices. By way of example, a typical coffee shop may have many customers holding mobile devices at any time during its business hours. When the correction manager 109 receives the offset information from a user, for example, it may then transmit the offset information to other UEs 101 within the vicinity of the user's UE 101. The correction managers 109 of the other UEs 101 may then correct the placement of representations on the corresponding location-based displays based on the transmitted offset information.
在另一个实施例中,校正管理器109可以获得与一个或多个其他设备相关联的其他偏移信息、在一个或多个其他的时刻处收集的其他偏移信息或者其组合。校正管理器109然后可以基于偏移信息、其他偏移信息或其组合生成合计的偏移信息。如所提供的,校正管理器109可以获得和/或存储偏移信息的集合。通过示例的方式,偏移信息和/或其他偏移信息可以被结合并且然后取平均以生成合计的偏移信息。此外,例如基于与其他偏移信息相关联的位置到与偏移信息相关联的位置的相对接近度(closeness),可以转而分配默认的或用户定义的权重给偏移信息,同时可以自动或由用户分配各个权重给其他偏移信息。由此,校正管理器109可以基于赋予偏移信息和/或其他偏移信息的权重生成合计的偏移信息。In another embodiment, the correction manager 109 may obtain other offset information associated with one or more other devices, other offset information collected at one or more other times, or a combination thereof. The correction manager 109 may then generate aggregated offset information based on the offset information, the other offset information, or a combination thereof. As provided, the correction manager 109 may obtain and/or store a collection of offset information. By way of example, the offset information and/or the other offset information may be combined and then averaged to generate the aggregated offset information. In addition, for example, based on the relative closeness of the location associated with the other offset information to the location associated with the offset information, a default or user-defined weight may be assigned to the offset information, while individual weights may be assigned to the other offset information automatically or by the user. Thus, the correction manager 109 may generate the aggregated offset information based on the weights assigned to the offset information and/or the other offset information.
在另一个实施例中,校正管理器109可以根据至少一种设备、一种位置传感器、位置信息的来源或其组合而将偏移信息、其他偏移信息或其组合进行分类,其中,合计偏移信息进一步的基于该分类。例如,除了相对接近度,校正管理器109可以识别某种设备类型相比于其他设备类型具有更精确的传感器设备,或者特定位置传感器的精确度相比于其他位置传感器更为精确。基于该信息,可以自动或通过用户给偏移信息和/或其他偏移信息分配各个权重。由此,校正管理器109可以基于赋予偏移信息和/或其他偏移信息的权重生成合计的偏移信息。In another embodiment, the calibration manager 109 may categorize the offset information, other offset information, or a combination thereof based on at least one device, a type of location sensor, a source of the location information, or a combination thereof, wherein the aggregate offset information is further based on the categorization. For example, in addition to relative proximity, the calibration manager 109 may identify that certain device types have more accurate sensor devices than other device types, or that a particular location sensor is more accurate than other location sensors. Based on this information, the offset information and/or other offset information may be assigned respective weights, either automatically or by a user. Thus, the calibration manager 109 may generate aggregate offset information based on the weights assigned to the offset information and/or other offset information.
通过示例的方式,UE101、地图平台103以及服务平台113使用已知的、新的或仍在开发的协议彼此通信并且与通信网络105的其他组件通信。在本上下文中,协议包括基于在通信链路上发送的信息限定通信网络105内的网络节点如何彼此交互的一组规则。协议在每个节点内的不同操作层都是有效的,从生成和接收各种类型的物理信号到选择用于传送那些信号的链路,到由那些信号表示的信息的格式,到识别在计算机系统上执行的哪个软件应用发送或接收信息。在开放式系统互联(OSI)参考模型中描述了用于在网络上交换信息的协议的概念上不同的层。By way of example, UE 101, mapping platform 103, and service platform 113 communicate with each other and with other components of communication network 105 using known, new, or still-developing protocols. In this context, a protocol comprises a set of rules that define how network nodes within communication network 105 interact with each other based on the information sent over communication links. Protocols operate at different operational levels within each node, from generating and receiving various types of physical signals, to selecting the links used to transmit those signals, to the format of the information represented by those signals, to identifying which software application executing on the computer system is sending or receiving information. The conceptually different layers of protocols used to exchange information on a network are described in the Open Systems Interconnection (OSI) reference model.
通常通过对数据的离散分组进行交换而影响网络节点间的通信。每个分组通常包括:(1)与特定协议相关联的报头信息;以及(2)有效载荷信息,其紧接报头信息并且含有可以独立于该特定协议而处理的信息。在一些协议中,分组包括(3)紧接有效载荷并表示有效载荷信息的末尾的报尾信息。报头包括诸如分组的来源、其目的地、有效载荷的长度以及由协议使用的其他属性的信息。通常,用于特定协议的有效载荷中的数据包括用于与OSI参考模型的不同的更高层相关联的不同协议的报头以及有效载荷。用于特定协议的报头通常指示包括在其有效载荷中的下一个协议的类型。据所述的,更高层协议被封装在较低层协议中。包括在穿越多个诸如因特网的异构网络的分组中的报头通常包括如OSI参考模型所定义的物理(第1层)报头、数据链路(第2层)报头、网间(第3层)报头以及传输(第4层)报头,以及各种应用报头(第5层、第6层、第7层)。Communication between network nodes is typically effected by exchanging discrete packets of data. Each packet typically includes: (1) header information associated with a particular protocol; and (2) payload information, which follows the header information and contains information that can be processed independently of the particular protocol. In some protocols, the packet includes (3) trailer information that follows the payload and indicates the end of the payload information. The header includes information such as the source of the packet, its destination, the length of the payload, and other attributes used by the protocol. Typically, the data in the payload for a particular protocol includes headers for different protocols associated with different higher layers of the OSI reference model, as well as payloads. The header for a particular protocol typically indicates the type of next protocol included in its payload. As described, higher layer protocols are encapsulated in lower layer protocols. The headers included in a packet traversing multiple heterogeneous networks such as the Internet typically include a physical (layer 1) header, a data-link (layer 2) header, an internetwork (layer 3) header, and a transport (layer 4) header as defined in the OSI reference model, as well as various application headers (layers 5, 6, and 7).
图2是根据一个实施例的校正管理器的组件的示意图。通过示例的方式,校正管理器109包括用于提供位置偏移信息的一个或多个组件。我们预期,这些组件的功能可以结合在一个或多个组件中或通过等同功能性的其他组件执行。在该实施例中,校正管理器109包括控制逻辑201,其执行用于执行校正管理器109的功能的至少一个算法。例如,控制逻辑201与渲染(rendering)模块203交互以在UE101的基于位置的显示上渲染或显示绘图信息(例如POI信息)。在一个实施例中,渲染模块203通过指示UE101的图像捕获模块117向用户提供UE101的当前位置的实况摄像机视图来呈现增强现实显示。图像捕获模块117可以包括摄像机、视频摄像机和/或其他图像设备。在一个实施例中,以图像或一系列图像的形式捕获视觉媒体。这些图像然后通过渲染模块203呈现在基于位置的显示中。Figure 2 is a schematic diagram of the components of a correction manager according to one embodiment. By way of example, correction manager 109 includes one or more components for providing position offset information. It is contemplated that the functionality of these components may be combined in one or more components or performed by other components of equivalent functionality. In this embodiment, correction manager 109 includes control logic 201, which executes at least one algorithm for performing the functions of correction manager 109. For example, control logic 201 interacts with rendering module 203 to render or display graphical information (e.g., POI information) on a location-based display of UE 101. In one embodiment, rendering module 203 presents an augmented reality display by instructing UE 101's image capture module 117 to provide the user with a live camera view of UE 101's current location. Image capture module 117 may include a camera, video camera, and/or other imaging device. In one embodiment, visual media is captured in the form of an image or a series of images. These images are then presented in the location-based display by rendering module 203.
作为增强现实显示的补充或替代,渲染模块203可以使用以上所描述的特定位置的基于非现实的表示(例如3D仿真环境或其他渲染地图)提供基于位置的显示。例如,渲染模块203可以从地图数据库111或地图平台103得到绘图数据(例如3D模型、地图瓦片、地图图像、地形特征等),以对基于位置的显示进行渲染。In addition to or in lieu of augmented reality displays, the rendering module 203 can provide a location-based display using a non-reality-based representation of a specific location as described above (e.g., a 3D simulated environment or other rendered map). For example, the rendering module 203 can obtain mapping data (e.g., 3D models, map tiles, map images, terrain features, etc.) from the map database 111 or the map platform 103 to render the location-based display.
在得到底层的基于位置的显示(例如增强现实显示或渲染地图)后,渲染模块203检索绘图信息(例如POI信息)以确定什么样的基于位置的特征在显示中可见。渲染模块203然后至少部分地基于其位置信息和/或方向信息,在基于位置的显示中渲染可见的基于位置的特征的表示。换言之,渲染模块203渲染基于位置的特征的表示,以便将基于位置的特征的表示显示在基于位置的显示中的对应于其位置信息和/或方向信息的位置处。After obtaining an underlying location-based display (e.g., an augmented reality display or a rendered map), the rendering module 203 retrieves mapping information (e.g., POI information) to determine which location-based features are visible in the display. The rendering module 203 then renders representations of the visible location-based features in the location-based display based at least in part on their location information and/or orientation information. In other words, the rendering module 203 renders the representations of the location-based features so that the representations of the location-based features are displayed in the location-based display at locations corresponding to their location information and/or orientation information.
接下来,控制逻辑201指示选择模块205从UE101接收输入,用于选择可以应用接收的偏移信息的多个表示。通过示例的方式,组可以由用户从基于位置的显示中手动选择。例如,用户可以轻击一组重叠的或位置紧密的表示以选择整个组。而且,组可以包括在基于位置的显示上当前可见的表示、在预定区域中可用的表示或校正管理器109可用的或由校正管理器109生成的全部表示。Next, control logic 201 instructs selection module 205 to receive input from UE 101 for selecting a plurality of representations to which the received offset information can be applied. By way of example, a group can be manually selected by the user from the location-based display. For example, the user can tap a group of overlapping or closely located representations to select the entire group. Furthermore, the group can include representations currently visible on the location-based display, representations available in a predetermined area, or all representations available to or generated by correction manager 109.
进一步,控制逻辑201与比较模块207协作以确定是否应该应用偏移信息或者偏移信息应被应用的程度。在一个典型使用实例中,比较模块207可以确定例如与位置信息和/或方向信息相关联的精确度信息满足预定的精确度门限。因而,比较模块207可以推荐减少偏移信息的应用以在基于位置的显示上呈现表示。在另一个典型的使用实例中,比较模块207可以确定是否向其他基于位置的显示应用存储的偏移信息。例如,如果比较模块207确定其他基于位置的显示的位置信息实质上接近于与接收存储的偏移信息所用于的基于位置的显示相关联的位置信息的预定邻近范围或在该预定邻近范围之内,则可以采用存储的偏移信息。Further, the control logic 201 cooperates with the comparison module 207 to determine whether the offset information should be applied or the extent to which the offset information should be applied. In one typical use case, the comparison module 207 can determine that, for example, accuracy information associated with the location information and/or direction information meets a predetermined accuracy threshold. Thus, the comparison module 207 can recommend the application of reduced offset information to present a representation on a location-based display. In another typical use case, the comparison module 207 can determine whether to apply the stored offset information to other location-based displays. For example, if the comparison module 207 determines that the location information of the other location-based displays is substantially close to or within a predetermined proximity range of the location information associated with the location-based display for which the stored offset information was received, the stored offset information can be employed.
图3是根据一个实施例的用户设备的组件的示意图。通过示例的方式,UE101包括用于提供位置偏移信息的一个或多个组件。我们预期,这些组件的功能可以结合在一个或多个组件中或通过等同功能性的其他组件执行。在此实施例中,UE101包括:(1)用户界面301,用来呈现包括例如基于位置的特征的表示的基于位置的显示,并接收用于为与基于位置的显示相关的表示指定偏移信息的输入;(2)地图平台接口303,用来从地图平台103和/或服务平台113检索内容和绘图信息;(3)运行时间模块305,用来执行一个或多个应用(例如增强现实应用107、导航应用107);(4)高速缓存存储器307,用来本地存储绘图信息和/或相关的内容信息;(5)位置模块309,用来确定UE101的位置;(6)磁力计模块311,用来确定UE101的水平方向和方向性航向(例如指南针航向);以及(7)加速计模块313,用来确定UE101的垂直方向或仰角;以及(8)图像捕获模块117。FIG3 is a diagram of components of a user equipment according to one embodiment. By way of example, UE 101 includes one or more components for providing location offset information. It is contemplated that the functionality of these components may be combined in one or more components or performed by other components of equivalent functionality. In this embodiment, UE 101 includes: (1) a user interface 301 for presenting a location-based display including, for example, a representation of a location-based feature, and receiving input for specifying offset information for the representation associated with the location-based display; (2) a map platform interface 303 for retrieving content and drawing information from a map platform 103 and/or a service platform 113; (3) a runtime module 305 for executing one or more applications (e.g., an augmented reality application 107, a navigation application 107); (4) a cache memory 307 for locally storing drawing information and/or associated content information; (5) a location module 309 for determining the location of UE 101; (6) a magnetometer module 311 for determining the horizontal direction and directional heading (e.g., compass heading) of UE 101; and (7) an accelerometer module 313 for determining the vertical direction or elevation angle of UE 101; and (8) an image capture module 117.
基于位置的显示可以经由可包括各种通信方法的用户界面301呈现给用户。例如,用户界面301可以具有包括视觉组件(例如屏幕)、音频组件(例如口头指令)、物理组件(例如触觉反馈)以及其他通信方法的输出。用户输入可以包括触摸屏接口、扩音器、摄像机、滚动和点击(skroll-and-click)接口、按键接口等。进一步地,用户可以输入请求,以开始应用107(例如,增强现实或导航应用)并利用用户界面301来接收包括POI和/或其他绘图信息的基于位置的显示。通过用户界面301,用户可以请求呈现不同种类的内容、绘图或位置信息。进一步地,可以向用户呈现特定位置和相关目标(例如特定位置处的建筑物、地形特征、POI等)的3D或增强现实表示,作为UE101屏幕上的图形用户界面的一部分。Location-based displays can be presented to the user via user interface 301, which can include various communication methods. For example, user interface 301 can have outputs including visual components (e.g., a screen), audio components (e.g., verbal commands), physical components (e.g., tactile feedback), and other communication methods. User input can include a touchscreen interface, a speaker, a camera, a scroll-and-click interface, a button interface, and the like. Furthermore, a user can input a request to launch an application 107 (e.g., an augmented reality or navigation application) and utilize user interface 301 to receive a location-based display including POIs and/or other graphical information. Through user interface 301, a user can request the presentation of different types of content, graphics, or location information. Furthermore, a 3D or augmented reality representation of a specific location and associated objects (e.g., buildings, terrain features, POIs, etc. at the specific location) can be presented to the user as part of a graphical user interface on the screen of UE 101.
运行时间模块305使用地图平台接口303与地图平台103通信。在一些实施例中,接口用来从地图平台103、服务平台113、和/或内容提供者(没有示出)获取内容、绘图和或位置信息。UE101可以利用以客户服务器格式的请求检索绘图和内容信息。而且,UE101可以在请求中指定位置信息和/或方向信息以检索绘图和内容信息。可以利用位置模块309、磁力计模块311、加速计模块313以及图像捕获模块117来确定位置和/或方向信息,用于确定将UE101沿着哪个方向对准(例如UE101的观察点),从而可以检索对应于所指向方向的绘图和内容信息。进一步地,该绘图和内容信息可以存储在高速缓存存储器307中以用于对UE101处基于位置的显示进行校正。The runtime module 305 communicates with the mapping platform 103 using the mapping platform interface 303. In some embodiments, the interface is used to obtain content, graphics, and/or location information from the mapping platform 103, the service platform 113, and/or a content provider (not shown). The UE 101 can retrieve the graphics and content information using a request in a client-server format. Furthermore, the UE 101 can specify location information and/or direction information in the request to retrieve the graphics and content information. The location module 309, the magnetometer module 311, the accelerometer module 313, and the image capture module 117 can be used to determine the location and/or direction information to determine the direction in which the UE 101 is pointed (e.g., the viewpoint of the UE 101), so that the graphics and content information corresponding to the pointed direction can be retrieved. Furthermore, the graphics and content information can be stored in the cache memory 307 for use in correcting the location-based display at the UE 101.
在一个实施例中,位置模块309可以确定用户的位置。用户的位置可以由诸如GPS、辅助GPS(A-GPS)、原点小区、无线局域网三角测量或者其他位置推断技术的三角测量系统进行确定。标准的GPS和A-GPS系统可以使用卫星119来精确指出UE101的位置(例如经度、纬度和高度)。可以使用原点小区系统来确定UE101与之同步的蜂窝塔。该信息提供UE101的粗略位置,因为蜂窝塔可以具有可被地理上绘制的唯一的蜂窝标识符(cell-ID)。位置模块309还可以使用多种技术来检测UE101的位置。GPS坐标可提供关于UE101的位置的更精细的细节。如上所述,可以利用位置模块309来确定由应用107和/或地图平台103所使用的位置坐标。In one embodiment, the location module 309 can determine the user's location. The user's location can be determined by a triangulation system such as GPS, assisted GPS (A-GPS), origin cell, wireless local area network triangulation, or other location inference technology. Standard GPS and A-GPS systems can use satellites 119 to accurately pinpoint the location of UE 101 (e.g., longitude, latitude, and altitude). The origin cell system can be used to determine the cellular tower with which UE 101 is synchronized. This information provides a rough location of UE 101, as cellular towers can have unique cellular identifiers (cell-IDs) that can be geographically mapped. The location module 309 can also use a variety of technologies to detect the location of UE 101. GPS coordinates can provide finer details about the location of UE 101. As described above, the location module 309 can be used to determine location coordinates used by application 107 and/or mapping platform 103.
磁力计模块311可以包括能够测量磁场的强度和/或方向的仪器。使用如同指南针的相同方法,磁力计能够确定使用地球磁场的UE101的方向性航向。图像捕获设备的前端(例如数字摄像机)(或UE101上的另一个参考点)可以在确定的方向被标记为参考点。因而,如果相比于参考点,磁场指向北面,则知道UE101参考点偏离磁场的角度。可以进行简单的计算来确定UE101的方向。在一个实施例中,利用从磁力计得到的水平方向数据来确定用户的方向。可以利用UE101的位置信息来校正方向信息以确定UE101指向哪里(例如在什么地理特征、目标或POI处)。可以利用该信息来选择第一人称视角以在基于位置的显示中渲染绘图和内容信息。The magnetometer module 311 may include an instrument capable of measuring the strength and/or direction of a magnetic field. Using the same methods as a compass, the magnetometer can determine the directional heading of the UE 101 using the Earth's magnetic field. The front end of the image capture device (e.g., a digital camera) (or another reference point on the UE 101) can be marked as a reference point in the determined direction. Thus, if the magnetic field points north relative to the reference point, the angle by which the UE 101 reference point deviates from the magnetic field is known. A simple calculation can be performed to determine the direction of the UE 101. In one embodiment, horizontal direction data obtained from the magnetometer is used to determine the user's direction. The direction information can be corrected using the UE 101's location information to determine where the UE 101 is pointing (e.g., at what geographic feature, object, or point of interest). This information can be used to select a first-person perspective for rendering graphics and content information in a location-based display.
进一步地,加速计313可以包括能够测量加速度的仪器。使用具有X、Y、Z轴的三轴加速计,在具有已知角度的三个方向提供加速度。可以再次地在确定的方向将媒体捕获设备的前端标记为参考点。因为由地心引力引起的加速度为已知的,所以当UE101为固定的时,加速计模块313可以确定UE101相比于地球的地心引力所指向的角度。在一个实施例中,使用从加速计得到的垂直方向数据来确定UE101指向的仰角或倾斜角。使用结合磁力计信息和位置信息的信息来确定向用户提供内容和绘图信息的观察点。就此而言,可以利用该信息来选择可用的内容项来向用户呈现导航信息。而且,可以利用结合的信息来确定特定3D地图或增强现实视图中用户可能感兴趣的部分。在一个实施例中,如果与一个或多个可用内容项相关联的位置信息与观察点不对应(例如在所选择的观察点中是不可见的),则可以在用户界面上显示一个或多个指示符(例如箭头或指针),以指示朝向内容项的位置的方向。Furthermore, the accelerometer 313 may include an instrument capable of measuring acceleration. A three-axis accelerometer with X, Y, and Z axes is used to provide acceleration in three directions with known angles. The front of the media capture device can again be marked as a reference point in the determined direction. Because the acceleration due to gravity is known, when the UE 101 is stationary, the accelerometer module 313 can determine the angle at which the UE 101 is pointed relative to the Earth's gravity. In one embodiment, vertical direction data obtained from the accelerometer is used to determine the elevation or tilt angle at which the UE 101 is pointed. Information combining magnetometer information and location information is used to determine a viewpoint for providing content and mapping information to the user. In this regard, this information can be used to select available content items to present navigation information to the user. Furthermore, the combined information can be used to determine portions of a particular 3D map or augmented reality view that may be of interest to the user. In one embodiment, if the location information associated with one or more available content items does not correspond to the viewpoint (e.g., is not visible from the selected viewpoint), one or more indicators (e.g., arrows or pointers) can be displayed on the user interface to indicate the direction toward the location of the content items.
在另一个实施例中,用户可以手动输入位置、方向性航向以及倾斜角度中的任意一个或多个,以指定用于在UE101上显示用户界面的观察点,而不是自传感器确定观察点。按照此方式,用户可以选择“虚拟观察点”作为地点,而不是当前位置和UE101的指向。In another embodiment, rather than determining the viewpoint from the sensors, the user can manually input any one or more of a location, a directional heading, and a tilt angle to specify a viewpoint for displaying a user interface on the UE 101. In this way, the user can select a "virtual viewpoint" as a location rather than the current location and orientation of the UE 101.
可以使用图像捕获模块117捕获用于支持图形用户界面的图像。图像捕获模块117可以包括摄像机、视频摄像机及其结合等。在一个实施例中,以图像或一系列图像的形式捕获视觉媒体。图像捕获模块117可以从摄像机获得图像并将图像与位置信息、磁力计信息、加速计信息或其组合相关联。如上所述,通过将用户的位置、用户的水平方向信息以及用户的垂直方向信息结合,可以利用信息的结合来确定用户的观察点。可以利用该信息来从地图高速缓存存储器307或地图平台103检索绘图和内容信息。在某些实施例中,高速缓存存储器307包括地图数据库111中的全部或部分信息。An image capture module 117 can be used to capture images used to support a graphical user interface. The image capture module 117 can include a camera, a video camera, a combination thereof, or the like. In one embodiment, the visual media is captured in the form of an image or a series of images. The image capture module 117 can obtain an image from a camera and associate the image with position information, magnetometer information, accelerometer information, or a combination thereof. As described above, by combining the user's position, the user's horizontal orientation information, and the user's vertical orientation information, the combination of information can be used to determine the user's point of view. This information can be used to retrieve mapping and content information from the map cache 307 or the map platform 103. In some embodiments, the cache 307 includes all or part of the information in the map database 111.
图4是根据一个实施例的用于确定位置偏移信息的过程的流程图。在一个实施例中,校正管理器109执行该过程400并在例如包括图10所示的处理器和存储器的芯片组中实现。就此而言,控制逻辑201可以提供用于完成该过程400的各部分的部件以及用于结合校正管理器109的其他组件完成其他过程的部件。FIG4 is a flow chart of a process for determining position offset information according to one embodiment. In one embodiment, correction manager 109 performs process 400 and is implemented in, for example, a chipset including a processor and memory as shown in FIG10 . In this regard, control logic 201 may provide components for performing portions of process 400 and components for performing other processes in conjunction with other components of correction manager 109.
在步骤401中,控制逻辑201确定在设备处呈现包括一个或多个基于位置的特征的一个或多个表示的基于位置的显示。一个或多个基于位置的特征可以包括用户位置、其他位置、POI、道路、地形种类、边界或位置(或多个位置)的任何其他特征。在一个实施例中,所呈现的基于位置的显示可以基于与设备相关联的位置信息、方向信息或其组合。例如,基于位置的显示可以包括由设备捕获的图像或在设备的取景器上的可视图像。In step 401, control logic 201 determines to present a location-based display at a device that includes one or more representations of one or more location-based features. The one or more location-based features may include a user's location, other locations, POIs, roads, types of terrain, boundaries, or any other characteristics of a location (or locations). In one embodiment, the presented location-based display may be based on location information, directional information, or a combination thereof associated with the device. For example, the location-based display may include an image captured by the device or a viewable image on the device's viewfinder.
在步骤403中,控制逻辑201可以验证是否已确定与位置信息、方向信息或其组合相关联的精确度信息。如果没有确定精确度信息,那么控制逻辑201则可以在步骤405中接收用于为与基于位置的显示相关的一个或多个表示中的至少一个表示指定偏移信息的输入。如上所述,可以从各种来源(包括从用户、从设备处的或设备可访问的存储器、从其他设备等)接收输入。在一个实施例中,输入被提供为一个或多个表示中的至少一个表示的移动。例如,用户可以通过拖动一个表示到基于位置的显示内的正确的位置,提供指定偏移信息的输入。控制逻辑201然后可以在步骤407中至少部分地基于偏移信息,确定在基于位置的显示中呈现一个或多个表示。In step 403, control logic 201 may verify whether accuracy information associated with the location information, direction information, or a combination thereof has been determined. If accuracy information has not been determined, control logic 201 may then receive input specifying offset information for at least one of the one or more representations associated with the location-based display in step 405. As described above, input may be received from various sources, including from a user, from memory on or accessible to the device, from other devices, and the like. In one embodiment, input is provided as movement of at least one of the one or more representations. For example, a user may provide input specifying offset information by dragging a representation to a correct location within the location-based display. Control logic 201 may then determine, in step 407, to present the one or more representations in the location-based display based at least in part on the offset information.
然而,如果控制逻辑201能够确认已经确定了精确度信息,则控制逻辑可以在步骤409中确定精确度信息是否满足预定的精确度门限。在一个典型的用例中,可以初步确定UE101用来测量方向的诸如指南针、陀螺仪、加速计、磁力计等的组件(或多个组件)具有+/-20度的精确度。就此而言,控制逻辑201可以确定还没有满足预定的精确度门限。然而,如果之后确定方向测量组件具有+/-5度的精确度,则控制逻辑201可确定已满足预定的精确度门限。例如,用户可以在具有大量铁金属的特定区域中。当用户离开该区域,则例如方向测量组件的精确度可以提高。在另一个典型的使用实例中,用户可以正在穿过没有很多无线干扰或信号阻塞的区域。在那些环境下,可初步确定由UE101利用的GPS接收机具有+/-5米的精确度,其可满足预定的精确度门限。然而,当用户进城或在桥下行走时,可以确定GPS接收机具有+/-20米的精确度,其可能不是足够的准确以满足预定的精确度门限。However, if control logic 201 is able to confirm that the accuracy information has been determined, then control logic may determine in step 409 whether the accuracy information meets a predetermined accuracy threshold. In a typical use case, it may be initially determined that the component (or components) used by UE 101 to measure direction, such as a compass, gyroscope, accelerometer, magnetometer, etc., has an accuracy of +/- 20 degrees. In this regard, control logic 201 may determine that the predetermined accuracy threshold has not been met. However, if it is later determined that the direction-measuring component has an accuracy of +/- 5 degrees, control logic 201 may determine that the predetermined accuracy threshold has been met. For example, a user may be in a particular area with a large amount of ferrous metal. As the user leaves this area, the accuracy of the direction-measuring component may improve. In another typical use case, the user may be traveling through an area without significant wireless interference or signal blockage. In these circumstances, it may be initially determined that the GPS receiver utilized by UE 101 has an accuracy of +/- 5 meters, which may meet the predetermined accuracy threshold. However, when the user is walking into town or under a bridge, it may be determined that the GPS receiver has an accuracy of +/- 20 meters, which may not be accurate enough to meet the predetermined accuracy threshold.
如果控制逻辑201确定已满足预定的精确度门限,控制逻辑201可以在步骤411中确定减少偏移信息的应用来呈现一个或多个表示。就此而言,可以不利用偏移信息来调整基于位置的显示内的一个或多个表示。If control logic 201 determines that the predetermined accuracy threshold has been met, control logic 201 may determine to reduce application of the offset information to present one or more representations in step 411. In this regard, the offset information may not be utilized to adjust one or more representations within the position-based display.
图5是根据一个实施例的利用存储的位置偏移信息的过程的流程图。在一个实施例中,校正管理器109执行该过程500并在例如包括如图10中所示的处理器和存储器的芯片组中实现。就此而言,控制逻辑201可以提供用于完成该过程500的各部分的部件以及用于结合校正管理器109的其他组件完成其他过程的部件。FIG5 is a flow chart of a process for utilizing stored position offset information, according to one embodiment. In one embodiment, the correction manager 109 performs the process 500 and is implemented in, for example, a chipset including a processor and memory as shown in FIG10 . In this regard, the control logic 201 may provide components for performing portions of the process 500 and components for performing other processes in conjunction with other components of the correction manager 109.
在步骤501中,控制逻辑201确定偏移信息。如上所述,信息可以存储在UE101处(例如高速缓存存储器、存储器、硬驱动等)、本地数据库、地图数据库111或经由通信网络105可用的任何其他存储设备。In step 501 , the control logic 201 determines the offset information. As described above, the information may be stored at the UE 101 (eg, cache, memory, hard drive, etc.), a local database, a map database 111 , or any other storage device available via the communication network 105 .
在确定将存储的偏移信息应用到一个或多个其他基于位置的显示之前,控制逻辑201可在步骤503中确定与一个或多个其他基于位置的显示相关联的位置信息是否实质上接近于与接收存储的偏移信息所用于的基于位置的显示相关联的位置信息的预定邻近范围或在该预定邻近范围之内。例如,如果控制逻辑确定与一个或多个其他基于位置的显示相关联的位置信息实质上不接近于预定邻近范围或不在该预定邻近范围之内,则可以不将存储的偏移信息应用到一个或多个其他基于位置的显示。在一个典型的使用示例中,用户可能最近到过特定购物中心的杂货商店购物。尽管用户可以在之后的时间返回购物中心(例如到购物中心另一端的咖啡馆学习),控制逻辑201可以确定返回购物中心实质上不接近于杂货商店的预定邻近范围或不在该预定邻近范围之内。因而,在此示例中,则可以不将存储的偏移信息应用在呈现用户返回到购物中心的基于位置的显示中。Before determining to apply the stored offset information to one or more other location-based displays, control logic 201 may determine, in step 503, whether the location information associated with the one or more other location-based displays is substantially close to or within a predetermined proximity of the location information associated with the location-based display for which the stored offset information was received. For example, if the control logic determines that the location information associated with the one or more other location-based displays is not substantially close to or within the predetermined proximity, the stored offset information may not be applied to the one or more other location-based displays. In a typical use case, a user may have recently shopped at a grocery store in a particular shopping mall. Although the user may return to the shopping mall at a later time (e.g., to study at a cafe at the other end of the shopping mall), control logic 201 may determine that returning to the shopping mall is not substantially close to or within the predetermined proximity of the grocery store. Thus, in this example, the stored offset information may not be applied to the location-based display that presents the user returning to the shopping mall.
然而,如果确定一个或多个其他基于位置的显示实质上接近于预定邻近范围或在该预定邻近范围之内,则控制逻辑201可以在步骤505中将存储的偏移信息应用在呈现一个或多个其他基于位置的显示中。However, if it is determined that one or more other location-based displays are substantially close to or within the predetermined proximity, the control logic 201 may apply the stored offset information in presenting the one or more other location-based displays in step 505 .
图6是根据一个实施例的用于确定近似位置的过程的流程图。在一个实施例中,校正管理器109执行该过程600并且在例如包括如图10中所示的处理器和存储器的芯片组中实现。就此而言,控制逻辑201可以提供用于完成该过程600的各部分的部件以及用于结合校正管理器109的其他组件完成其他过程的部件。FIG6 is a flow chart of a process for determining an approximate location, according to one embodiment. In one embodiment, the correction manager 109 performs the process 600 and is implemented in, for example, a chipset including a processor and memory as shown in FIG10. In this regard, the control logic 201 may provide components for performing portions of the process 600 and components for performing other processes in conjunction with other components of the correction manager 109.
在步骤601中,控制逻辑201接收用于指定近似位置或UE101的位置或UE101的用户的输入。在一个实施例中,指定的近似位置可以用作导航服务、绘图服务或其他基于位置的服务的出发点。例如,如果初始的基于传感器的位置定位(location fix)(例如GPS定位)被延迟或者以其他方式为不可获得的,则用户仍然可以手动指示近似位置来发起服务。如所提到的,可以从各种来源(包括从用户、从设备处的或设备可访问的存储器、从其他设备等)接收输入。接收的输入可以用于指定用户的近似位置、其他用户、开始位置等。在一个实施例中,由输入指定的偏移信息还可以指定或以其他方式指示UE101或用户的近似位置。通过示例的方式,用户可以通过移动至少一个表示提供输入。就此而言,用户可以拖动用户位置的表示到基于位置的显示中的合适地点。类似地,用户可以拖动位置的表示(例如仅拖动地图层),从而用户的位置最终到达基于位置的显示中的合适地点。此外,用户可以按照许多其他方式提供输入,包括在基于位置的显示内指示近似位置(例如,通过在特定位置上点击或轻击)、输入特定位置的地址、捕获用户周围的图像(例如,使用UE101的摄像机模块进行拍照)来指示特定位置等。In step 601, control logic 201 receives input specifying an approximate location or the location of UE 101 or a user of UE 101. In one embodiment, the specified approximate location can serve as a starting point for navigation services, mapping services, or other location-based services. For example, if an initial sensor-based location fix (e.g., a GPS fix) is delayed or otherwise unavailable, the user can still manually indicate an approximate location to initiate a service. As mentioned, input can be received from various sources (including from the user, from memory on or accessible to the device, from other devices, etc.). The received input can be used to specify the user's approximate location, other users, a starting location, etc. In one embodiment, offset information specified by the input can also specify or otherwise indicate the approximate location of UE 101 or the user. By way of example, the user can provide input by moving at least one representation. In this regard, the user can drag the representation of the user's location to a desired location in the location-based display. Similarly, the user can drag the representation of the location (e.g., by simply dragging a map layer) so that the user's location ultimately arrives at a desired location in the location-based display. In addition, the user can provide input in many other ways, including indicating an approximate location within a location-based display (e.g., by clicking or tapping on a specific location), entering the address of a specific location, capturing an image of the user's surroundings (e.g., taking a picture using a camera module of UE101) to indicate a specific location, etc.
在步骤603中,控制逻辑201可以例如从UE101的GPS接收机确定位置信息是否已经是可用的。如果控制逻辑201确定位置信息是不可用的,则控制逻辑201可以在步骤605中基于接收的输入在基于位置的显示中呈现表示。In step 603, control logic 201 may determine whether location information is already available, for example, from a GPS receiver of UE 101. If control logic 201 determines that location information is not available, control logic 201 may present a representation in a location-based display based on the received input in step 605.
然而,如果控制逻辑201确定位置信息是可用的,则控制逻辑201可以在步骤607中确定是否利用位置信息。在一个典型的使用实例中,控制逻辑201可以经由UE101来提示用户决定是否在基于位置的显示中呈现表示的过程中利用由用户提供的接收的输入、由GPS接收机提供的位置信息或两者。例如,如果用户决定利用接收的输入和位置信息两者,控制逻辑201可以在基于位置的显示上呈现接收的输入和位置信息作为不同表示(例如,粉红点用来呈现接收的输入,而红色点用来表示GPS位置信息)。However, if the control logic 201 determines that location information is available, the control logic 201 may determine whether to utilize the location information in step 607. In a typical use case, the control logic 201 may prompt the user, via the UE 101, to decide whether to utilize the received input provided by the user, the location information provided by the GPS receiver, or both in presenting a representation in the location-based display. For example, if the user decides to utilize both the received input and the location information, the control logic 201 may present the received input and the location information as different representations on the location-based display (e.g., a pink dot is used to present the received input, while a red dot is used to represent the GPS location information).
在另一个典型的使用实例中,是否利用位置信息的确定可以基于由GPS接收机所提供的位置信息是否满足预定的精确度门限。如果控制逻辑201确定不应该利用位置信息(例如,预定的精确度门限没被满足),则表示在基于位置的显示中的呈现可以基于由用户提供的接收的输入。否则,如所提到的,可以利用位置信息作为对由用户提供的接收的输入的补充或替代,以在基于位置的显示中呈现表示。In another typical use case, the determination of whether to utilize location information can be based on whether the location information provided by the GPS receiver meets a predetermined accuracy threshold. If the control logic 201 determines that the location information should not be utilized (e.g., the predetermined accuracy threshold is not met), then the presentation of the representation in the location-based display can be based on the received input provided by the user. Otherwise, as mentioned, the location information can be utilized in addition to or in lieu of the received input provided by the user to present the representation in the location-based display.
图7A-7D是根据各种实施例的在图4的过程中所利用的用户界面的示意图。具体地,图7A-7D是利用增强现实显示的用户界面的示例,该增强现实显示利用星形图标指示在观察点内的基于位置的特征(例如POI)。由于用户界面为增强现实显示,在绘图中所显示的图像是例如城镇广场的实况图像。Figures 7A-7D are schematic diagrams of user interfaces utilized in the process of Figure 4, according to various embodiments. Specifically, Figures 7A-7D are examples of user interfaces utilizing an augmented reality display that utilizes star-shaped icons to indicate location-based features (e.g., POIs) within a viewing point. Because the user interface is an augmented reality display, the image displayed in the drawing is, for example, a live image of a town square.
图7A示出了具有三个星形图标(例如表示701、703和705)的用户界面,其表示三个不同的POI。在此示例中,至少在位置信息和/或水平方向信息方面,表示701、703和705看起来似乎精确叠映在城镇广场的基于位置的显示上。然而,垂直方向(例如高度)显然是不精确的。例如,表示701和705似乎在第一层和第二层之间,而表示703似乎在第二层和建筑物的房顶之间。Figure 7A shows a user interface with three star-shaped icons (e.g., representations 701, 703, and 705) representing three different POIs. In this example, representations 701, 703, and 705 appear to be accurately superimposed on the location-based display of the town square, at least with respect to their location information and/or horizontal orientation. However, the vertical orientation (e.g., height) is clearly inaccurate. For example, representations 701 and 705 appear to be between the first and second floors, while representation 703 appears to be between the second floor and the roof of the building.
图7B示出了具有六个星形图标(例如表示711、713、715、717、719和721)和手符号723的用户界面。如所示的,具有虚线的三个星形图标(例如表示711、713和715)描述了表示701、703和705曾所在的地方,而具有实线的三个星形图标(例如表示717、719和721)表明他们已移动到的地方。手符号723说明通过在城镇广场的基于位置的显示内拖动表示到正确的位置来提供偏移信息的能力。在此示例中,用户能够通过移动或拖动仅一个表示(例如表示721(或原始表示705)),提供为基于位置的显示内的所有表示指定偏移信息的输入。Figure 7B shows a user interface with six star icons (e.g., representations 711, 713, 715, 717, 719, and 721) and a hand symbol 723. As shown, the three star icons with dashed lines (e.g., representations 711, 713, and 715) depict the locations where representations 701, 703, and 705 were located, while the three star icons with solid lines (e.g., representations 717, 719, and 721) indicate where they have moved to. Hand symbol 723 illustrates the ability to provide offset information by dragging a representation to the correct location within the location-based display of the town square. In this example, the user can provide input specifying offset information for all representations within the location-based display by moving or dragging just one representation, such as representation 721 (or the original representation 705).
图7C示出了具有三个星形图标(例如表示731、733和735)以及三个标签(表示737、739和741)的用户界面。如所示的,包括POI的名称(或POI的类型)以及到用户的距离的标签恰好覆盖在星形图标的下面。在此示例中,仅一个星形图标的之前的移动或拖动提供了用于可见且已生成的表示(例如,表示731、733和735)以及用于不可见且可能在用户提供偏移信息的同时还未生成的表示的偏移信息。Figure 7C shows a user interface with three star icons (e.g., representations 731, 733, and 735) and three labels (representations 737, 739, and 741). As shown, the labels, including the name of the POI (or type of POI) and the distance to the user, are overlaid just below the star icons. In this example, the previous movement or dragging of only one star icon provides offset information for visible and generated representations (e.g., representations 731, 733, and 735) and for invisible representations that may not have been generated at the time the user provided the offset information.
图7D示出了具有充分可见的星形图标(例如表示751)以及提供有关特定POI(例如旅馆)的信息的概述(例如表示753)的用户界面。在此示例中,概述可以自动地或通过一些用户行为(例如在特定的星形图标上点击或轻击)出现。7D shows a user interface with a fully visible star icon (e.g., representation 751) and an overview (e.g., representation 753) providing information about a particular POI (e.g., a hotel). In this example, the overview may appear automatically or through some user action (e.g., clicking or tapping on a particular star icon).
图8是根据一个实施例的在图5的过程中所利用的用户界面的示意图。具体地,图8提供了利用导航显示的用户界面的示例(例如用户界面800、810、820、830、840、850、860和870)。通过示例的方式,用户界面800向用户提供了几个选项,包括“位置”“路线”、“查找”、“喜好”、“设置”以及“取消”。在此用例中,用户已选择选项“路线”,其使用户界面810出现。FIG8 is a schematic diagram of a user interface utilized in the process of FIG5 , according to one embodiment. Specifically, FIG8 provides examples of user interfaces utilized in navigation displays (e.g., user interfaces 800 , 810 , 820 , 830 , 840 , 850 , 860 , and 870 ). By way of example, user interface 800 provides the user with several options, including “Location,” “Route,” “Find,” “Favorites,” “Set,” and “Cancel.” In this use case, the user has selected the “Route” option, which causes user interface 810 to appear.
用户界面810向用户提供几个选项,包括“开始位置”、“目的地”、“增加目的地”、“导航!”以及“取消”。在此示例中,开始位置和目的地可以预先确定(例如上次已知的开始位置或目的地)。因而,用户可以立即选择“导航!”。然而,用户还可以通过选择“开始位置”或“目的地”来察看、修改或确认开始位置或目的地。在此用例中,用户已选择“开始位置”,其使用户界面820出现。User interface 810 provides the user with several options, including "Start Location," "Destination," "Add Destination," "Go!", and "Cancel." In this example, the start location and destination may be predetermined (e.g., the last known start location or destination). Thus, the user can immediately select "Go!". However, the user can also review, modify, or confirm the start location or destination by selecting "Start Location" or "Destination." In this use case, the user has already selected "Start Location," which causes user interface 820 to appear.
用户界面820向用户提供了几个选项,包括“我的位置”“地点”、“地址”、“喜好”以及“取消”。在此用例中,用户已选择“我的位置”,其允许用户更新用户的位置或使用用户上一次已知的位置。如在用户界面830中说明的,用户已选择“现在更新”而不是“使用上次已知的”。User interface 820 provides the user with several options, including "My Location," "Places," "Addresses," "Favorites," and "Cancel." In this use case, the user has selected "My Location," which allows the user to update the user's location or use the user's last known location. As illustrated in user interface 830, the user has selected "Update Now" instead of "Use Last Known."
如上所述,用户可以按照许多方式提供开始位置(例如“我的位置”)。如图所示,用户界面840说明用户可以“在地图上调整”、“输入地址”或“拍照”以提供开始位置。在此用例中,用户已经选择通过在地图上调整开始位置来提供开始位置。就此而言,用户界面850利用标签为“A”的用户开始位置显示地图。用户开始位置示为123Last Road,其可以为用户上次已知的位置。为了看到地图的放大版本,用户已点击具有“+”符号的放大镜图标。As mentioned above, a user can provide a starting location in many ways (e.g., "My Location"). As shown, user interface 840 indicates that the user can "Adjust on Map," "Enter Address," or "Take a Photo" to provide a starting location. In this use case, the user has chosen to provide a starting location by adjusting the starting location on the map. In this regard, user interface 850 displays a map with the user's starting location labeled "A." The user's starting location is shown as 123 Last Road, which may be the user's last known location. To see a magnified version of the map, the user has clicked the magnifying glass icon with a "+" symbol.
作为响应,用户界面860显示具有将用户开始位置标签为“A”的地图的放大版本。如上所述,用户可以按照诸如拖动标签为“A”的开始位置、拖动地图层或点击地图上的位置的许多方式调整开始位置(例如移动至少一个表示、点击地图上的位置等)。在此用例中,用户已选择了拖动地图层以便调整地图上用户的开始位置。因此,如在用户界面870中所示的,已将用户开始位置修改至456Now Street。由此,用户选择“完成”来开始进一步的导航。In response, user interface 860 displays a zoomed-in version of the map with the user's starting location labeled "A." As described above, the user can adjust the starting location in a number of ways (e.g., moving at least one representation, clicking on a location on the map, etc.), such as dragging the starting location labeled "A," dragging a map layer, or clicking on a location on the map. In this use case, the user has selected to drag the map layer in order to adjust the user's starting location on the map. Thus, as shown in user interface 870, the user's starting location has been modified to 456 Now Street. The user then selects "Done" to begin further navigation.
图9说明了在其上可以实现本发明实施例的计算机系统900。尽管描述了有关特定设备或装置的计算机系统900,我们预期,图9中的其他设备或装置(例如网络元件、服务器等)可以实施所说明的系统900的硬件和组件。计算机系统900被编程(例如经由计算机程序代码或指令)以确定在此所描述的位置偏移信息,并且包括诸如用于在计算机系统900的其他内部和外部组件间通过信息的总线的通信结构。信息(也称为数据)被表示为可测现象的物理表达,通常为电子电压,但是在其他的实施例中包括这样的现象,如磁、电磁、压力、化学、生物、分子、原子、次原子以及量子的相互作用。例如,朝北和朝南的电磁场或零和非零电压表示二进制数字(bit)的两个状态(0,1)。其他现象可以表示更高进制的数字。在测量前的多同步量子状态的叠加表示量子比特。一个或多个数字的序列构成数字数据,其用来表示用于字符的数字或代码。在一些实施例中,称为模拟数据的信息由特定范围内可测量值的近连续流表示。计算机系统900或其中的一部分构成用于执行确定位置偏移信息的一个或多个步骤的部件。Figure 9 illustrates a computer system 900 on which embodiments of the present invention may be implemented. Although computer system 900 is described with respect to a specific device or apparatus, it is contemplated that other devices or apparatuses (e.g., network elements, servers, etc.) in Figure 9 may implement the hardware and components of the illustrated system 900. Computer system 900 is programmed (e.g., via computer program code or instructions) to determine the position offset information described herein and includes communication structures such as a bus for passing information between other internal and external components of computer system 900. Information (also known as data) is represented as a physical representation of a measurable phenomenon, typically electron voltage, but in other embodiments includes phenomena such as magnetic, electromagnetic, pressure, chemical, biological, molecular, atomic, subatomic, and quantum interactions. For example, north and south electromagnetic fields or zero and nonzero voltage represent the two states (0, 1) of a binary digit (bit). Other phenomena may represent digits in higher bases. A superposition of multiple simultaneous quantum states before measurement represents a qubit. A sequence of one or more digits constitutes digital data, which is used to represent a number or code for a character. In some embodiments, information, referred to as analog data, is represented by a nearly continuous stream of measurable values within a specific range. Computer system 900, or a portion thereof, constitutes a means for performing one or more steps of determining position offset information.
总线910包括一个或多个信息导体,从而在耦合到总线910的设备间快速传送信息。用于处理信息的一个或多个处理器902与总线910耦合。The bus 910 includes one or more information conductors for quickly transferring information between devices coupled to the bus 910. One or more processors 902 are coupled to the bus 910 for processing information.
处理器(或多处理器)902执行关于由计算机程序代码指定的与确定位置偏移信息有关的一组操作。计算机程序代码为一组指令或提供指令的声明,用于操作处理器和/或计算机系统来执行指定功能。例如,代码可以写为计算机编程语言,其被编译进处理器的本地指令组。代码还可以直接使用本地指令组(例如及其语言)写入。该组操作包括:从总线910带来信息并且将信息放到总线910上。该组操作通常还包括:比较信息的两个或更多单位;改变信息的单位的位置;以及例如通过加、乘或像OR的逻辑操作,组合信息的两个或更多个单位。可以由处理器执行的该组指令的每个操作通过称为指令的信息向处理器表示,指令诸如一个或多个数字的操作代码。由处理器902执行的一系列操作(诸如一系列操作代码)构成处理器指令,其也称为计算机系统指令,或简单地称为计算机指令。其中,处理器可以实现为单独的或组合的机械、电子、磁、光学、化学或量子组件。Processor (or multiple processors) 902 performs a set of operations related to determining position offset information, as specified by computer program code. Computer program code is a set of instructions, or statements providing instructions, for operating a processor and/or computer system to perform specified functions. For example, the code may be written in a computer programming language and compiled into the processor's native instruction set. The code may also be written directly using the native instruction set (e.g., its language). The set of operations includes: bringing information from bus 910 and placing information onto bus 910. The set of operations also typically includes: comparing two or more units of information; changing the positions of units of information; and combining two or more units of information, such as by addition, multiplication, or logical operations like OR. Each operation of the set of instructions that can be performed by the processor is represented to the processor by information called an instruction, such as an operation code of one or more digits. A series of operations (such as a series of operation codes) performed by processor 902 constitutes processor instructions, also known as computer system instructions, or simply computer instructions. The processor may be implemented as mechanical, electrical, magnetic, optical, chemical, or quantum components, alone or in combination.
计算机系统900还包括耦接到总线910的存储器904。诸如随机访问存储器(RAM)或任何其他的动态存储设备的存储器904存储包括用于确定位置偏移信息的处理器指令的信息。动态存储器允许在此存储的信息通过计算机系统900而改变。RAM允许独立于邻居地址处的信息而存储和获得存储在所谓的存储器地址的位置处的信息单位。还通过处理器902使用存储器904来在执行处理器指令期间存储临时值。计算机系统900还包括耦接到总线910的只读存储器(ROM)906或任何其他的静态存储设备,用于存储包括不被计算机系统900改变的指令的静态信息。某存储器包括易失性存储器(storage),其当断电时丢失其上存储的信息。诸如磁盘、光盘或闪存卡的非易失性(永久)存储器908也耦接到总线910,用于存储包括指令的信息,该信息即使在计算机系统900关机或以其他方式断电时依然继续存在。Computer system 900 also includes memory 904 coupled to bus 910. Memory 904, such as random access memory (RAM) or any other dynamic storage device, stores information, including processor instructions for determining location offset information. Dynamic memory allows information stored therein to be changed by computer system 900. RAM allows a unit of information stored at a location known as a memory address to be stored and retrieved independently of information at neighboring addresses. Memory 904 is also used by processor 902 to store temporary values during the execution of processor instructions. Computer system 900 also includes read-only memory (ROM) 906 or any other static storage device coupled to bus 910 for storing static information, including instructions, that is not changed by computer system 900. Some memory includes volatile storage, which loses information stored thereon when power is removed. Non-volatile (permanent) storage 908, such as a magnetic disk, optical disk, or flash memory card, is also coupled to bus 910 for storing information, including instructions, that persists even when computer system 900 is shut down or otherwise powered off.
从诸如由人类用户或传感器操作的含有字母数字键的键盘的外部输入设备912向总线910提供包括用于确定位置偏移信息的指令的信息用于处理器使用。传感器检测其邻近的条件,并将那些检测转换成与表示计算机系统900中的信息的可测量现象相一致的物理表达。耦接到910总线的其他外部设备,主要用于与人类交互,包括:诸如阴极射线管(CRT)、液晶显示器(LCD)、发光二极管(LED)显示器以及有机发光二极管(OLED)的显示设备914;以及诸如鼠标、跟踪球、光标方向键或运动传感器的定点设备916,用于控制呈现在显示器914上的小光标的位置,并且发布与呈现在显示器914上的图形元素相关联的指令。在一些实施例中,例如在计算机系统900自动执行所有功能而不用人类输入的实施例中,省去了一个或多个外部输入设备912、显示设备914以及定点设备916。Information, including instructions for determining positional offset information, is provided to bus 910 from an external input device 912, such as a keyboard with alphanumeric keys operated by a human user or a sensor, for use by the processor. Sensors detect conditions in their vicinity and convert those detections into physical expressions consistent with measurable phenomena representing information in computer system 900. Other external devices coupled to bus 910, primarily for human interaction, include: a display device 914, such as a cathode ray tube (CRT), liquid crystal display (LCD), light emitting diode (LED) display, and organic light emitting diode (OLED); and a pointing device 916, such as a mouse, trackball, cursor direction keys, or motion sensor, for controlling the position of a small cursor displayed on display 914 and issuing instructions associated with graphical elements displayed on display 914. In some embodiments, such as those in which computer system 900 performs all functions automatically without human input, one or more of external input device 912, display device 914, and pointing device 916 are omitted.
在所说明的实时例中,诸如专用集成电路(ASIC)920的专用硬件耦接到总线910。专用硬件被配置成用于特定目的而足够快速地执行处理器902没有执行的操作。ASIC的示例包括:图形加速器卡,用于生成用于显示器914的图像;加密板,用于加密和解密在网络上传送的消息;语音识别器;以及到重复执行一些复杂的在硬件中更高效实现的系列操作的诸如机器臂和医学扫描设备的特定外部设备的接口。In the illustrated real-time example, specialized hardware, such as an application-specific integrated circuit (ASIC) 920, is coupled to bus 910. The specialized hardware is configured to perform operations not performed by processor 902 quickly enough for a specific purpose. Examples of ASICs include graphics accelerator cards for generating images for display 914; cryptographic boards for encrypting and decrypting messages transmitted over a network; speech recognizers; and interfaces to specialized external devices, such as robotic arms and medical scanning equipment, that repeatedly perform some complex series of operations that are more efficiently implemented in hardware.
计算机系统900还包括耦接到总线910的通信接口970的一个或多个实例。通信接口970提供一种方式或两种方式的通信耦接到各种外部设备,各种外部设备诸如打印机、扫描仪和外部盘,与其自己的处理器协同操作。一般而言,该耦接利用网络链路978连接到本地网络980,本地网络980连接具有自己的处理器的各种外部设备。例如,通信接口970可以为个人计算机上的并行端口或串行端口或通用串行总线(USB)端口。在一些实施例中,通信接口970为综合业务数字网(ISDN)卡或数字用户线(DSL)卡或提供信息通信连接到对应类型电话线的电话调制解调器。在一些实施例中,通信接口970为电缆调制解调器,其将总线910上的信号转换成用于在同轴电缆上进行通信连接的信号,或转换成用于在光缆上进行通信连接的信号。作为另一个示例,通信接口970可以为局域网(LAN)卡,用于提供到诸如以太网的兼容LAN的数据通信连接。还可以实现无线链路。对于无线链路,通信接口970发送或接收或发送和接收包括红外线和光信号的电学、声学或电磁信号,信号携带诸如数字数据的信息流。例如,在诸如像手机这样的移动电话的无线手持设备中,通信接口970包括被称作无线电收发机的无线电带宽电磁发送机和接收机。在某些实施例中,通信接口970使得能够连接到通信网络105,用于对UE101确定位置偏移信息。Computer system 900 also includes one or more instances of a communication interface 970 coupled to bus 910. Communication interface 970 provides one-way or two-way communication coupling to various external devices, such as printers, scanners, and external disks, operating in conjunction with its own processor. Generally, this coupling utilizes a network link 978 to connect to a local network 980, which connects various external devices with their own processors. For example, communication interface 970 may be a parallel port, a serial port, or a Universal Serial Bus (USB) port on a personal computer. In some embodiments, communication interface 970 is an Integrated Services Digital Network (ISDN) card, a Digital Subscriber Line (DSL) card, or a telephone modem that provides an information communication connection to a corresponding type of telephone line. In some embodiments, communication interface 970 is a cable modem that converts signals on bus 910 into signals for communication connection over a coaxial cable or for communication connection over a fiber optic cable. As another example, communication interface 970 may be a local area network (LAN) card that provides a data communication connection to a compatible LAN, such as Ethernet. Wireless links may also be implemented. For wireless links, communication interface 970 transmits or receives, or both transmits and receives, electrical, acoustic, or electromagnetic signals, including infrared and optical signals, that carry information streams, such as digital data. For example, in wireless handheld devices, such as mobile phones, communication interface 970 includes a radio-band electromagnetic transmitter and receiver, known as a transceiver. In certain embodiments, communication interface 970 enables connection to communication network 105 for determining location offset information for UE 101.
本文所使用的术语“计算机可读介质”是指参与提供信息给处理器902的任何介质,包括用于执行的指令。这样的介质可以采用很多形式,包括但不限于计算机可读存储介质(例如,非易失性介质、易失性介质)和传输介质。诸如非易失性介质的非瞬态介质例如包括诸如存储设备908的光盘或磁盘。易失性介质例如包括动态存储器904。传输介质例如包括双绞线电缆、同轴电缆、铜线、光纤电缆以及在没有电线或电缆的情况下穿过空间的载波,载波诸如声波和电磁波,包括无线电、光学及红外线波。信号包括在传输通过传输介质的振幅、频率、相位、极性或其他物理属性中的人为的瞬时变化。计算机可读介质的普通形式例如包括软盘、软磁盘、硬盘、磁带、任何其他的磁性介质、CD-ROM、CDRW、DVD、任何其他的光学介质、穿孔卡片、纸带、光学标记表、具有孔或其他光学可识别标记的任何其他的物理介质、RAM、PROM、EPROM、FLASH-EPROM、EEPROM、闪存、任何其他的存储芯片或磁片盒、载波或计算机可以从中进行读取的任何其他的介质。这里使用计算机可读存储介质的术语来指除了传输介质之外的任何计算机可读介质。As used herein, the term "computer-readable medium" refers to any medium that participates in providing information to processor 902, including instructions for execution. Such media can take many forms, including but not limited to computer-readable storage media (e.g., non-volatile media, volatile media) and transmission media. Non-transient media such as non-volatile media include, for example, optical or magnetic disks such as storage device 908. Volatile media include, for example, dynamic memory 904. Transmission media include, for example, twisted-pair cables, coaxial cables, copper wire, fiber optic cables, and carrier waves that travel through space without wires or cables, such as acoustic waves and electromagnetic waves, including radio, optical, and infrared waves. Signals include man-made, instantaneous changes in amplitude, frequency, phase, polarity, or other physical properties that are transmitted through the transmission medium. Common forms of computer-readable media include, for example, floppy disks, diskettes, hard disks, magnetic tape, any other magnetic medium, CD-ROMs, CDRWs, DVDs, any other optical media, punch cards, paper tape, optical marking sheets, any other physical medium with holes or other optically recognizable markings, RAM, PROMs, EPROMs, FLASH-EPROMs, EEPROMs, flash memory, any other memory chips or magnetic cassettes, carrier waves, or any other medium from which a computer can read. The term computer-readable storage medium is used herein to refer to any computer-readable medium except transmission media.
编码在一个或多个有形介质中的逻辑包括在计算机可读存储介质和诸如ASIC的专用硬件920上的指令之一或两者。Logic encoded in one or more tangible media includes one or both of instructions on a computer-readable storage medium and dedicated hardware 920 such as an ASIC.
网络链路978通常使用传输介质通过一个或多个网络到使用或处理信息的其他设备而提供信息通信。例如,网络链路978可以提供通过本地网络980到主机计算机982或到由因特网服务提供商(ISP)所操作的设备984的连接。ISP设备984转而通过现在通常被称为因特网990的网络的公共、全球分组交换通信网络提供数据通信服务。Network link 978 typically provides information communication using a transmission medium through one or more networks to other devices that use or process the information. For example, network link 978 can provide a connection through local network 980 to a host computer 982 or to equipment 984 operated by an Internet Service Provider (ISP). ISP equipment 984, in turn, provides data communication services through the public, global packet-switched communications network now commonly referred to as the Internet 990.
连接到因特网的称为服务器主机992的计算机管理为响应于在因特网上接收的信息而提供服务的过程。例如,服务器主机992管理提供用于表示在显示器914处呈现的视频数据的信息的过程。我们预期,系统900的组件可以实施在诸如主机982和服务器992的其他计算机系统内的各种配置中。A computer connected to the Internet, called a server host 992, manages the processes for providing services in response to information received over the Internet. For example, server host 992 manages the processes for providing information representing video data presented at display 914. It is contemplated that the components of system 900 may be implemented in various configurations within other computer systems, such as host 982 and server 992.
本发明的至少一些实施例是关于使用计算机系统900用于实现本文中所描述的一些或全部的技术。根据本发明的一个实施例,那些技术由计算机系统900执行,用于响应处理器902执行包括在存储器904中的一个或多个处理器指令的一个或多个序列。这样的指令也称为计算机指令、软件和程序代码,可以从诸如存储设备908或网络链路978的另一个计算机可读介质读取至存储器904。执行包括在存储器904中的指令序列使处理器902能执行一个或多个在此所描述的方法步骤。在替代性实施例中,诸如ASIC920的硬件可以用于取代或结合软件而实现本发明。因而,本发明的实施例不限于硬件和软件的任何具体的结合,除非本文另外明确地声明。At least some embodiments of the present invention relate to using a computer system 900 to implement some or all of the techniques described herein. According to one embodiment of the present invention, those techniques are performed by the computer system 900 in response to the processor 902 executing one or more sequences of one or more processor instructions contained in the memory 904. Such instructions, also known as computer instructions, software, and program code, can be read into the memory 904 from another computer-readable medium such as a storage device 908 or a network link 978. Execution of the sequence of instructions contained in the memory 904 enables the processor 902 to perform one or more method steps described herein. In alternative embodiments, hardware, such as an ASIC 920, can be used in place of or in combination with software to implement the present invention. Thus, embodiments of the present invention are not limited to any specific combination of hardware and software, unless otherwise expressly stated herein.
通过通信接口970在网络链路978和其他网络上传输的信号,传送信息到计算机系统900或从计算机系统900传送信息。计算机系统900可以通过网络980、990等通过网络链路978和通信接口970发送和接收包括程序代码的信息。在使用因特网990的示例中,服务器主机992通过因特网990、ISP设备984、本地网络980和通信接口970传输用于由从计算机900传送的消息所请求的特定应用的程序代码。接收的代码可以在其被接收时由处理器902执行,或者可以存储在存储器904或存储设备908或任何其他的非易失性存储器中用于之后执行,或者两者皆可。在此方式中,计算机系统900可以得到以载波上的信号的形式的应用程序代码。Information is transmitted to and from computer system 900 via signals transmitted over network link 978 and other networks via communication interface 970. Computer system 900 can send and receive information, including program code, via network link 978 and communication interface 970 over networks 980, 990, and the like. In an example using the Internet 990, server host 992 transmits program code for a specific application requested by a message transmitted from computer 900 via Internet 990, ISP equipment 984, local network 980, and communication interface 970. The received code can be executed by processor 902 as it is received, or can be stored in memory 904, storage device 908, or any other non-volatile storage for later execution, or both. In this manner, computer system 900 can obtain application code in the form of signals on a carrier wave.
计算机可读介质的各种形式可以涉及向处理器902传送用于执行的一串或多串指令或数据或者两者。远程计算机加载指令和数据到其动态存储器并且使用调制解调器在电话线上发送指令和数据。计算机系统900本地的调制解调器在电话线上接收指令和数据,并且使用红外发射机将指令和数据转换为用作网络链路978的红外载波上的信号。用作通信接口970的红外检测器接收携带在红外信号中的指令和数据,并将表示指令和数据的信息放在总线910上。总线910将信息传送到存储器904,处理器902使用与指令一起传送的一些数据,从存储器904得到指令并执行指令。在存储器904中接收的指令和数据可以在由处理器902执行之前或之后,视情况存储在存储设备908中。Various forms of computer-readable media may be involved in transmitting one or more strings of instructions or data, or both, to the processor 902 for execution. The remote computer loads the instructions and data into its dynamic memory and sends the instructions and data over a telephone line using a modem. A modem local to the computer system 900 receives the instructions and data over the telephone line and uses an infrared transmitter to convert the instructions and data into a signal on an infrared carrier wave used as a network link 978. An infrared detector, used as communication interface 970, receives the instructions and data carried in the infrared signal and places information representing the instructions and data on bus 910. Bus 910 transmits the information to memory 904, where processor 902 retrieves and executes the instructions using some of the data transmitted along with the instructions. The instructions and data received in memory 904 may be stored in storage device 908, either before or after execution by processor 902, as appropriate.
图10说明了可以据此实现本发明的实施例的芯片组或芯片1000。芯片1000被编程用来确定在此所描述的位置偏移信息,并且包括例如合并到一个或多个物理封装(例如芯片)的关于图9所描述的处理器和存储器组件。通过示例的方式,物理封装包括在结构性装配(例如基板)上的用来提供诸如物理强度、尺寸保持和/或电学相互作用限制的一个或多个特性的一个或多个材料、组件和/或电线的布置。我们预期,在某些实施例中,芯片组1000可以实现在单芯片中。我们进一步预期,在某些实施例中,芯片组或芯片1000可以实现为“芯片上的系统”。我们进一步预期,在一些实施例中,不会使用单独的ASIC,例如,在此所公开的所有相关功能将由处理器或多个处理器执行。芯片组或芯片1000或其中的一部分构成用于执行提供与功能可用性相关联的用户界面导航信息的一个或多个步骤的部件。芯片组或芯片1000或其中的一部分构成用于执行确定位置偏移信息的一个或多个步骤的部件。FIG10 illustrates a chip set or chip 1000 in which embodiments of the present invention may be implemented. Chip 1000 is programmed to determine positional offset information as described herein and includes, for example, the processor and memory components described with respect to FIG9 incorporated into one or more physical packages (e.g., chips). By way of example, the physical package includes an arrangement of one or more materials, components, and/or wires on a structural assembly (e.g., a substrate) to provide one or more properties such as physical strength, dimensional conservation, and/or electrical interaction limitation. It is contemplated that, in certain embodiments, chip set 1000 may be implemented in a single chip. It is further contemplated that, in certain embodiments, chip set or chip 1000 may be implemented as a "system on a chip." It is further contemplated that, in some embodiments, a separate ASIC may not be used; for example, all relevant functionality disclosed herein may be performed by a processor or multiple processors. Chip set or chip 1000, or a portion thereof, constitutes a means for performing one or more steps of providing user interface navigation information associated with function availability. Chip set or chip 1000, or a portion thereof, constitutes a means for performing one or more steps of determining positional offset information.
在一个实施例中,芯片组或芯片1000包括诸如总线1001的通信机构,用于在芯片组1000的组件间传递信息。处理器1003连接到总线1001以执行例如存储器1005中所存储的指令和处理信息。处理器1003可以包括一个或多个处理核,每个核被配置成独立执行。多核处理器使能够在物理封装内进行多处理。多核处理器的示例包括两个、四个、八个或更多数量的核。替代性地或附加性地,处理器1003可以包括一个或多个微处理器,其被配置成共同经由总线1001以使得能够独立执行指令、流水线和多线程。处理器1003还可以附有用于执行某些处理功能和任务的一个或多个专用组件,诸如一个或多个数字信号处理器(DSP)1007或一个或多个专用集成电路(ASIC)1009。DSP1007通常被配置成独立于处理器1003,实时处理真实世界的信号(例如声音)。类似地,ASIC1009可以被配置成执行更通用处理器不容易执行的专用功能。帮助执行在此所描述的本发明功能的其他专用组件可以包括一个或多个现场可编程门阵列(FPGA)(没有示出)、一个或多个控制器(没有示出)或一个或多个其他的特定目的的计算机芯片。In one embodiment, chipset or chip 1000 includes a communication mechanism, such as bus 1001, for transferring information between components of chipset 1000. Processor 1003 is connected to bus 1001 to execute instructions and process information stored in memory 1005, for example. Processor 1003 may include one or more processing cores, each configured for independent execution. Multi-core processors enable multiprocessing within a physical package. Examples of multi-core processors include two, four, eight, or more cores. Alternatively or additionally, processor 1003 may include one or more microprocessors configured to collectively communicate via bus 1001 to enable independent instruction execution, pipelining, and multithreading. Processor 1003 may also be accompanied by one or more specialized components for performing certain processing functions and tasks, such as one or more digital signal processors (DSPs) 1007 or one or more application-specific integrated circuits (ASICs) 1009. DSP 1007 is typically configured to process real-world signals (e.g., sound) in real time, independent of processor 1003. Similarly, ASIC 1009 can be configured to perform specialized functions that are not easily performed by more general-purpose processors. Other specialized components that help perform the inventive functions described herein may include one or more field programmable gate arrays (FPGAs) (not shown), one or more controllers (not shown), or one or more other special-purpose computer chips.
在一个实施例中,芯片组或芯片1000仅包括一个或多个处理器或支持和/或关于和/或用于一个或多个处理器的一些软件和/或固件。In one embodiment, the chip set or chip 1000 includes merely one or more processors or some software and/or firmware supporting and/or relating to and/or for one or more processors.
处理器1003和相附的组件经由总线1001连接到存储器1005。存储器1005包括两个动态存储器(例如RAM、磁盘、可写光盘等)以及静态存储器(例如ROM、CD-ROM等),用于存储在执行时执行在此所描述的步骤以确定位置偏移信息的可执行指令。存储器1005还存储与执行本发明步骤相关联及由执行本发明步骤所产生的数据。Processor 1003 and associated components are connected to memory 1005 via bus 1001. Memory 1005 includes both dynamic memory (e.g., RAM, magnetic disk, writable optical disk, etc.) and static memory (e.g., ROM, CD-ROM, etc.), and is used to store executable instructions that, when executed, perform the steps described herein to determine position offset information. Memory 1005 also stores data associated with and generated by performing the steps of the present invention.
图11是根据一个实施例的能够在图1的系统中操作的用于通信的移动终端(例如手持设备)的示例性组件的示意图。在一些实施例中,移动终端1101或其部分,构成用于执行确定位置偏移信息的一个或多个步骤的部件。一般地,通常根据前端和后端特性而定义无线电接收机。接收机的前端包括所有射频(RF)电路,而后端包括所有基带处理电路。如该申请中用到的,术语“电路”是指以下两者:(1)仅硬件实现(例如在仅模拟和/或数字电路中实现);以及(2)电路和软件(和/或固件)的结合(例如,如果适用于特定的上下文,是指共同工作以使诸如移动电话或服务器的装置执行各种功能的包括数字信号处理器的处理器、软件和存储器的结合)。“电路”的定义适用于该申请中该术语的所有使用,包括在任何的权利要求中。作为进一步的示例,如本申请所用到的,并且如果适用于特定的上下文,术语“电路”还将覆盖仅处理器(或多处理器)及其附加的软件/或固件的实现。如果适用于特定的上下文,术语“电路”还将覆盖例如移动电话中的基带集成电路或应用处理器集成电路或蜂窝网络设备或其他网络设备中的类似的集成电路FIG11 is a schematic diagram of exemplary components of a mobile terminal (e.g., a handheld device) for communicating that can operate in the system of FIG1 according to one embodiment. In some embodiments, the mobile terminal 1101, or a portion thereof, constitutes a component for performing one or more steps of determining position offset information. In general, a radio receiver is typically defined in terms of front-end and back-end characteristics. The front-end of a receiver includes all radio frequency (RF) circuitry, while the back-end includes all baseband processing circuitry. As used in this application, the term "circuitry" refers to both: (1) a hardware-only implementation (e.g., implemented in only analog and/or digital circuitry); and (2) a combination of circuitry and software (and/or firmware) (e.g., a combination of a processor, including a digital signal processor, software, and memory that work together to enable a device such as a mobile phone or server to perform various functions, if applicable to the particular context). The definition of "circuitry" applies to all uses of the term in this application, including in any claims. As a further example, as used in this application, and if applicable to the particular context, the term "circuitry" would also cover an implementation of only a processor (or multiple processors) and its accompanying software/or firmware. The term "circuitry" would also cover, if applicable to the particular context, for example, a baseband integrated circuit or an applications processor integrated circuit in a mobile phone or a similar integrated circuit in a cellular network device or other network equipment.
相关的电话内部组件包括主控制单元(MCU)1103、数字信号处理器(DSP)1105以及包括扩音器增益控制单元和扬声器增益控制单元的接收机/发射机单元。主显示单元1107向用户提供对执行或支持确定位置偏移信息的步骤的各种应用和移动终端功能进行支持的显示。显示器1107包括显示电路,其被配置成显示至少一部分移动终端(例如移动电话)的用户界面。而且,显示器1107和显示电路被配置成促进用户控制移动终端的至少一些功能。音频功能电路1109包括扩音器1111以及放大从扩音器1111输出的语音信号的扩音器放大器。放大的从扩音器1111输出的语音信号被提供给编码器/解码器(CODEC)1113。The relevant internal components of the phone include a main control unit (MCU) 1103, a digital signal processor (DSP) 1105, and a receiver/transmitter unit including a microphone gain control unit and a speaker gain control unit. A main display unit 1107 provides a user with a display supporting various applications and mobile terminal functions that perform or support the steps of determining position offset information. Display 1107 includes display circuitry configured to display at least a portion of a user interface of a mobile terminal (e.g., a mobile phone). Furthermore, display 1107 and the display circuitry are configured to facilitate user control of at least some functions of the mobile terminal. Audio function circuitry 1109 includes a microphone 1111 and a microphone amplifier that amplifies voice signals output from microphone 1111. The amplified voice signals output from microphone 1111 are provided to a coder/decoder (CODEC) 1113.
无线电部分1115放大功率并转换频率以便经由天线1117与包括在移动通信系统中的基站通信。功率放大器(PA)1119和发送机/调制电路可操作性地响应于MCU1103,具有从PA1119耦接到现有技术中已知的双工器1121或环形器或天线开关的输出。PA1119还耦接到电池接口和功率控制单元1120。Radio section 1115 amplifies power and converts frequency for communication with a base station included in a mobile communication system via antenna 1117. Power amplifier (PA) 1119 and transmitter/modulation circuitry are operatively responsive to MCU 1103, with outputs from PA 1119 coupled to a duplexer 1121, a circulator, or an antenna switch as known in the art. PA 1119 is also coupled to a battery interface and power control unit 1120.
在使用中,移动终端1101的用户对着扩音器1111说话,其声音以及检测的背景噪音被转换成模拟电压。模拟电压然后通过模数转换器(ADC)1123转换成数字信号。控制单元1103将数字信号路由到DSP1105,用于在其中进行诸如语音编码、信道编码、加密以及交织的处理。在一个实施例中,由没用单独显示的单元使用诸如增强型数据速率全球演进(EDGE)、通用分组无线服务(GPRS)、全球移动通讯系统(GSM)、因特网协议多媒体子系统(IMS)、通用移动电信系统(UMTS)等的蜂窝传输协议以及任何其他合适的无线介质(例如微波接入(WiMAX)、长期演进(LTE)网络、码分多址接入(CDMA)、宽带码分多址(WCDMA)、无线保真(WiFi)、卫星等)或其任意组合对处理的语音信号进行编码。In use, a user of mobile terminal 1101 speaks into microphone 1111, and their voice and detected background noise are converted into an analog voltage. The analog voltage is then converted into a digital signal by analog-to-digital converter (ADC) 1123. Control unit 1103 routes the digital signal to DSP 1105, where it performs processing such as speech encoding, channel coding, encryption, and interleaving. In one embodiment, the processed voice signal is encoded by a unit (not separately shown) using a cellular transmission protocol such as Enhanced Data Rates for Global Evolution (EDGE), General Packet Radio Service (GPRS), Global System for Mobile Communications (GSM), Internet Protocol Multimedia Subsystem (IMS), Universal Mobile Telecommunications System (UMTS), or any other suitable wireless medium (e.g., WiMAX, Long Term Evolution (LTE) networks, Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Wireless Fidelity (WiFi), satellite, etc.), or any combination thereof.
编码的信号然后路由到均衡器1125,用于对在通过空中传输期间出现的基于频率的诸如相位和幅度失真的损耗进行补偿。在对比特流进行均衡之后,调制器1127将该信号与在RF接口1129中生成的RF信号结合。调制器1127通过频率或相位调制的方式生成正弦波。为了准备用于传输的信号,上变频器1131将从调制器1127输出的正弦波与由合成器1133生成的另一正弦波结合以达到所希望的传输频率。信号然后通过PA1119发送,以将信号提高至适当的功率水平。在实际系统中,PA1119作为可变增益放大器,其增益由DSP1105根据从网络基站接收的信息进行控制。信号然后在双工器1121内过滤,并且视情况发送到天线耦合器1135进行阻抗匹配,以提供最大的功率转换。最后,信号经由天线1117传送到本地基站。可以提供自动增益控制(AGC)来控制接收机最后阶段的增益。信号可以由此转发至远程电话,远程电话可以为另一个蜂窝电话、任何其他的移动电话或连接到公共交换电话网络(PSTN)以及其他电话网络的座机(land-line)。The encoded signal is then routed to the equalizer 1125, which compensates for frequency-dependent losses such as phase and amplitude distortion that occur during over-the-air transmission. After equalizing the bit stream, the modulator 1127 combines the signal with the RF signal generated by the RF interface 1129. The modulator 1127 generates a sine wave through frequency or phase modulation. To prepare the signal for transmission, the upconverter 1131 combines the sine wave output from the modulator 1127 with another sine wave generated by the synthesizer 1133 to achieve the desired transmission frequency. The signal is then sent through the PA 1119, which boosts the signal to the appropriate power level. In a practical system, the PA 1119 functions as a variable-gain amplifier, whose gain is controlled by the DSP 1105 based on information received from the network base station. The signal is then filtered within the duplexer 1121 and, if necessary, sent to the antenna coupler 1135 for impedance matching to provide maximum power conversion. Finally, the signal is transmitted to the local base station via the antenna 1117. Automatic Gain Control (AGC) may be provided to control the gain of the final receiver stage. The signal can then be forwarded to a remote telephone, which may be another cellular phone, any other mobile phone, or a landline connected to the Public Switched Telephone Network (PSTN) and other telephone networks.
传送到移动终端1101的语音信号经由天线1117接收并且通过低噪音放大器(LNA)1137立即放大。下变频器1139降低载波频率,同时解调器1141除去RF,仅剩下数字比特流。信号然后通过均衡器1125并由DSP1105处理。数模转换器(DAC)1143将信号进行转换,结果输出通过扬声器1145传送到用户,以上操作都是基于可以实现为中央处理单元(CPU)(没有示出)的主控制单元(MCU)1103的控制。Voice signals transmitted to mobile terminal 1101 are received via antenna 1117 and immediately amplified by low-noise amplifier (LNA) 1137. Downconverter 1139 lowers the carrier frequency, while demodulator 1141 removes the RF, leaving only a digital bit stream. The signal then passes through equalizer 1125 and is processed by DSP 1105. Digital-to-analog converter (DAC) 1143 converts the signal, and the resulting output is transmitted to the user via speaker 1145. All of this is controlled by main control unit (MCU) 1103, which can be implemented as a central processing unit (CPU) (not shown).
MCU1103接收包括来自键盘1147的输入信号的各种信号。键盘1147和/或结合其他用户输入组件(例如扩音器1111)的MCU1103包括用于管理用户输入的用户界面电路。MCU1103运行用户界面软件来促进用户对移动终端1101的至少一些功能的控制,以确定位置偏移信息。MCU1103还向显示器1107并向语音输出交换控制器分别传递显示命令和交换命令。进一步地,MCU1103与DSP1105交换信息,并且能够访问视情况合并的SIM卡1149和存储器1151。取决于实现方式,DSP1105可以在语音信号上执行各种传统数字处理功能中的任意一种。此外,DSP1105从由扩音器1111检测的信号中确定本地环境的背景噪音电平,并且将扩音器1111的增益设置为选择用来补偿移动终端1101用户的自然趋势的电平。The MCU 1103 receives various signals, including input signals from the keypad 1147. The keypad 1147 and/or the MCU 1103, in conjunction with other user input components (e.g., the microphone 1111), includes user interface circuitry for managing user input. The MCU 1103 runs user interface software to facilitate user control of at least some functions of the mobile terminal 1101, including determining position offset information. The MCU 1103 also transmits display commands and exchange commands to the display 1107 and to the voice output exchange controller, respectively. Furthermore, the MCU 1103 exchanges information with the DSP 1105 and has access to the SIM card 1149 and memory 1151, which may be incorporated as appropriate. Depending on the implementation, the DSP 1105 can perform any of a variety of conventional digital processing functions on the voice signals. Furthermore, the DSP 1105 determines the background noise level of the local environment from the signal detected by the microphone 1111 and sets the gain of the microphone 1111 to a level selected to compensate for the natural tendencies of the user of the mobile terminal 1101.
CODEC1113包括ADC1123和DAC1143。存储器1151存储包括进入声音数据的呼叫的各种数据,并能够存储包括经由例如全球因特网接收的音乐数据的其他数据。软件模块可能位于RAM存储器、闪电存储器、寄存器或本领域已知的任何其他形式的可写存储介质中。存储设备1151可以为但不限于单存储器、CD、DVD、ROM、RAM、EEPROM、光学存储器、磁盘存储器、闪存存储器或能够存储数字数据的任何其他非易失性存储介质。CODEC 1113 includes ADC 1123 and DAC 1143. Memory 1151 stores various call data, including incoming voice data, and can also store other data, including music data received via, for example, the global Internet. Software modules may reside in RAM, flash memory, registers, or any other form of writable storage medium known in the art. Storage device 1151 may be, but is not limited to, a single memory, CD, DVD, ROM, RAM, EEPROM, optical memory, magnetic disk, flash memory, or any other non-volatile storage medium capable of storing digital data.
可选地并入的SIM卡1140承载例如诸如蜂窝电话号码、载波提供服务、订购细节以及安全信息的重要信息。SIM卡1149主要服务于识别无线电网络上的移动终端1101。卡1149还含有用于存储个人电话号码簿、文本消息及用户特定的移动终端设置的存储器。The optionally incorporated SIM card 1140 carries important information such as the cellular phone number, carrier offerings, subscription details, and security information. The SIM card 1149 primarily serves to identify the mobile terminal 1101 on the radio network. The card 1149 also contains memory for storing a personal phone book, text messages, and user-specific mobile terminal settings.
虽然结合多个实施例和实现方式来描述本发明,但本发明不限于此,而是覆盖落入所附权利要求的范围内的各种明显的修改和等同的布置。尽管本发明的特征是在权利要求间的某些组合中进行表达的,我们预期,这些特征可以按照任何组合和次序进行排列。Although the present invention is described in conjunction with a number of embodiments and implementations, the present invention is not limited thereto but covers various obvious modifications and equivalent arrangements that fall within the scope of the appended claims. Although features of the invention are expressed in certain combinations among the claims, it is contemplated that these features may be arranged in any combination and order.
Claims (26)
Publications (2)
| Publication Number | Publication Date |
|---|---|
| HK1188821A HK1188821A (en) | 2014-05-16 |
| HK1188821B true HK1188821B (en) | 2020-06-05 |
Family
ID=
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10244353B2 (en) | Method and apparatus for determining location offset information | |
| JP2013545975A5 (en) | ||
| US8566020B2 (en) | Method and apparatus for transforming three-dimensional map objects to present navigation information | |
| US9870429B2 (en) | Method and apparatus for web-based augmented reality application viewer | |
| USRE46737E1 (en) | Method and apparatus for an augmented reality user interface | |
| CN103262125B (en) | Method and device for annotating point-of-interest information | |
| US20110161875A1 (en) | Method and apparatus for decluttering a mapping display | |
| US9639857B2 (en) | Method and apparatus for associating commenting information with one or more objects | |
| US20110137561A1 (en) | Method and apparatus for measuring geographic coordinates of a point of interest in an image | |
| US20110279445A1 (en) | Method and apparatus for presenting location-based content | |
| CN103003786A (en) | Method and apparatus for rendering a user interface having a main view portion and a preview portion for location-based services | |
| CN103003847A (en) | Method and apparatus for rendering a location-based user interface | |
| US20130257900A1 (en) | Method and apparatus for storing augmented reality point-of-interest information | |
| US20130061147A1 (en) | Method and apparatus for determining directions and navigating to geo-referenced places within images and videos | |
| US9760243B2 (en) | Method and apparatus for providing a transition between map representations on a user interface | |
| TW201447235A (en) | Method, apparatus and computer-readable storage medium for determining location offset information | |
| JP2015007632A (en) | Method and device to determine position offset information | |
| TWI454663B (en) | Method, apparatus and computer-readable storage medium for determining location offset information | |
| HK1188821B (en) | Method and apparatus for determining location offset information | |
| HK1188821A (en) | Method and apparatus for determining location offset information | |
| KR20140106730A (en) | Method and apparatus for determining location offset information |