The present disclosure relates generally to providing location information for display in a mapping application, and more particularly to disambiguation of location entities associated with the current geographic location of a mobile device.
Mobile mapping applications are available to provide certain portions of current location information to a mobile device user. For example, some mobile mapping users are able to see geographic coordinates (e.g., latitude and longitude) of their current location on a map. However, the geographic location does not automatically correlate with the semantic name of a location entity (e.g., the name of a place of business). Without having access to the name or place associated with a user's current geographic location, the user cannot immediately access additional electronically available information about that place. For example, a mobile device would need to know the name of the location entity in order to retrieve data pages displaying additional information about those location entities. In known systems, the user would have to separately type out the name of the location entity in a separate browser or search window to access additional information.
Aspects and advantages of embodiments of the present disclosure will be set forth in part in the following description, or may be learned from the description, or may be learned through practice of the embodiments.
One example aspect of the present disclosure is directed to a computer-implemented method of determining location entity information associated with the current geographic location of a mobile device. The method can include obtaining data, by one or more computing devices, indicative of a current geographic location of the mobile device. The method can also include providing for display, by the one or more computing devices, map imagery of a geographic area associated with the current geographic location of the mobile device. The method can further include providing for display, by the one or more computing devices, a first interface element on the map imagery at a location indicative of the current geographic location of the mobile device. The method can still further include receiving, by the one or more computing devices, data indicative of user selection of the first interface element. In response to receiving data indicative of user selection of the first interface element, the method can include providing for display, by the one or more computing devices, a list of nearby location entities. The method can also include receiving, by the one or more computing devices, data indicative of user selection of one of the nearby location entities from the list of nearby location entities displayed to a user as a selected location entity. The method can further include providing for display, by the one of more computing devices, a second interface element on the map imagery, wherein the second interface element provides information about the selected location entity.
Other example aspects of the present disclosure are directed to systems, apparatus, tangible, non-transitory computer-readable media, user interfaces, memory devices, and electronic devices for disambiguation of location entity information associated with the current geographic location of a mobile device.
These and other features, aspects, and advantages of various embodiments will become better understood with reference to the following description and appended claims. The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments of the present disclosure and, together with the description, serve to explain the related principles.
Detailed discussion of embodiments directed to one of ordinary skill in the art are set forth in the specification, which makes reference to the appended figures, in which:
Reference now will be made in detail to embodiments, one or more examples of which are illustrated in the drawings. Each example is provided by way of explanation of the embodiments, not limitation of the present disclosure. In fact, it will be apparent to those skilled in the art that various modifications and variations can be made to the embodiments without departing from the scope or spirit of the present disclosure. For instance, features illustrated or described as part of one embodiment can be used with another embodiment to yield a still further embodiment. Thus, it is intended that aspects of the present disclosure cover such modifications and variations.
The disclosed embodiments according to aspects of the present disclosure can provide features for disambiguation of a location entity associated with a current geographic location of a mobile device within a user interface, such as a mapping application interface for a mobile device. For example, a user may be provided with a conveniently accessible list of nearby location entities corresponding to the current geographic location of a mobile device. The list of nearby location entities can advantageously provide indicators of suggested location entities based on confidence scoring, thus providing features for automatic disambiguation. The list of nearby location entities also can provide features for manual disambiguation by user confirmation, selection, searching or manual entry of a particular location entity as matching that of the mobile device's current geographic location. Ultimate selection of a location entity can be further enhanced by providing updated interface elements within the mapping application and/or immediate access to place pages providing more detailed information about a selected location entity.
The disclosed embodiments include aspects of data analysis relative to mobile device location. It should be appreciated that mobile device location is only determined in the disclosed embodiments with corresponding user consent. Any authorized sharing of user location data is secure and private, and shared only if additional consent is provided. For many purposes, user identity associated with the location of a mobile device is configured in an anonymous manner such that user assistance and information related to a specific location is provided without a need for user-specific information.
Example embodiments can include computer-implemented systems and methods of providing features for disambiguation of a location entity associated with the current geographic location of a mobile device. Graphical user interface elements can be provided as part of a mapping application interface that generally shows map imagery of a geographic area associated with the current geographic location of a mobile device. A first interface element may correspond to an icon or other element positioned on the map imagery and provided at the estimated current geographic location of the mobile device. This first interface element may be configured to track with the user and his mobile device as the mobile device changes locations. The first interface element can also be an interactive display element that is selectable by a user in order to actuate providing additional information for display.
Additional displayed information can help a mobile device determine whether its current geographic location can be correlated with one or more nearby location entities. For instance, selection of the first interface element by a user can result in display of a list of nearby location entities for a user to manually select which one of the nearby location entities best matches the current geographic location of the mobile device. In some examples, the list of nearby location entities displayed to a user is ranked in descending order from closest location to farthest location within a predetermined area surrounding the current geographic location of the mobile device. In other examples, the list of nearby location entities displayed to a user is ranked by additionally or alternatively considering personalization information indicating location entities of interest for a given user, such as previously visited locations, previously searched locations, previously saved locations and particular user preferences. The list of nearby location entities can sometimes include a separate item selectable by a user that initiates display of an interface for searching for a nearby location entity that is not on the list of nearby location entities. The list of nearby location entities can sometimes include a separate item selectable by a user that initiates display of an interface for manually entering the name of a location entity that is not on the list of nearby location entities.
Once a location entity is selected corresponding to the current geographic location of the mobile device, additional interface elements can be provided for display on the mobile mapping interface or other mobile device interface. The additional interface elements provide information about the selected location entity. In some examples, an additional interface element includes a text label that provides a semantic identifier of the selected location entity and/or a user-assigned alias name associated with the selected location entity. The text label can be positioned adjacent to the interface element indicating the current geographic location of the mobile device. Such a text label can additionally or alternatively be provided in other locations, such as adjacent to a guide icon. In other examples, an additional interface element includes a graphical icon associated with a category of the selected location entity (e.g., a restaurant icon, home icon, work icon, etc.) that is superimposed or provided adjacent to the interface element indicating the current geographic location of the mobile device. These additional interface elements can be modified when the mobile device moves away from a selected location entity or selects a new location entity.
The one or more displayed interface elements that provide information about a selected location entity can be configured as selectable display elements that are linked to still further information about a location entity. For example, user selection of one or more of the interface elements can result in automatic initiation of a separate display area including information about the selected location entity. For example, the separate display area may correspond to a place page that includes contact information, website links, ratings and reviews and other information associated with the location entity. The separate display area can also include an interface element or other indication that the particular location entity has been selected as a best match to the current geographic location of the mobile device. In some examples, the place page for a selected location entity can be displayed automatically upon user selection of a location entity from the list of nearby location entities.
Additional display features can be used to provide a user with information about a selected location entity corresponding to the current geographic location of a mobile device. For instance, upon selection of a corresponding location entity, an interface element displayed on map imagery of a geographic area can be shifted from the estimated current location of the mobile device to known coordinates for the selected location entity. Additional updates can be implemented when the mobile device moves away from a selected location entity or when a new location entity is selected.
According to an example embodiment, a mobile device user is able to view information about his current geographic location on a map imagery interface provided on the user's mobile device. The interface includes a selectable interface element depicting the estimated current geographic location of the mobile device. A user selects this interface element (e.g., via touch screen interface or other input device selection provided on the mobile device.) This selection results in automatic display of a list of nearby location entities corresponding to the current geographic location of the mobile device. This list can include a suggestion of one or more automatically determined best matches based on factors such as location and user preferences. The user then selects a particular location entity as matching his current geographic location, at which point additional information including a place page showing additional details about the selected location entity is automatically provided for display on the mobile device. The place page can include such information as contact information, website links, ratings and reviews and other information about the selected location entity. Interface elements provided within the map imagery interface also can be added or modified to provide additional information about the selected location entity.
In some embodiments, in order to obtain the benefits of the techniques described herein, the user may be required to allow the collection and analysis of information collected by modular devices. For example, in some embodiments, users may be provided with an opportunity to control whether programs or features collect such information. If the user does not allow collection and use of such signals, then the user may not receive the benefits of the techniques described herein. The user can also be provided with tools to revoke or modify consent. In addition, certain information or data can be treated in one or more ways before it is stored or used, so that personally identifiable or other information is removed.
Referring now to
Referring still to
The bottom right portion of interface 110 also includes additional interface elements 114 and 115 that can be configured as selectable icons for initiating specific action relative to the mapping interface 110. For example, interface element 114 can correspond to a “My Location” icon that shifts the map imagery 112 and current location interface element 113 such that the current location and surrounding map imagery is generally centered within user interface 110. Interface element 115 can correspond to a “Guide” or “Explore” icon that upon selection provides additional information about the current location or area surrounding the current location of the mobile device. In some examples, a change in appearance to interface elements 114 and/or 115 can be implemented to indicate that the mapping application is presently tracking the current geographic location of a user. For example, a user can tap on the “My Location” icon 114 at which point the icon 114 can change colors or other appearance aspect to indicate that the mobile device is now in a tracking mode. Upon receipt of data indicating user selection of “My Location” icon 114, the “Guide” icon 115 can also turn color or otherwise change an aspect of appearance to indicate that the content available via the guide application represents places that are around the user's current geographic location.
The user interface of
Determination of a location entity as matching that of the current geographic location of a mobile device can involve identifying a best match from a list of nearby location entities. Sources for identifying a list of nearby location entities as candidates can include, for example, a database of entity information that links location entities to geographic locations (e.g. a geographic information system database). In some examples, a predetermined number of candidate location entities (e.g., top five or top ten candidate location entities) are identified. This subset of candidate location entities can then be analyzed to determine a best match by the determination algorithms disclosed herein, and/or can also be used in a disambiguation display by which a user can manually select a best match associated with his current geographic location. Having a subset of candidate location entities can help facilitate efficiency in the disclosed determination algorithms without requiring comprehensive factor analysis for all nearby location entities.
Factors for determining a best match among possible candidate location entities can include one or more of: a location signal availability factor indicating the level of location sensor information available in determining a user's precise geographic location (e.g., GPS signals, wi-fi scans, cellular triangulation signals, etc.); a distance factor representing a distance between each candidate location entity and the current geographic location; a popularity factor describing a popularity of each location entity (e.g., a number of social media mentions, a number of check-ins, a number of requests for directions, and/or a global popularity rank); a business hour overlap factor describing whether a set of business hours associated with the location entity overlap with a time segment during which the current geographic location was identified; and one or more personalization factors describing previous interaction between the user and the candidate location entities. Example personalization factors can include: a number of instances in which the user performed a map click with respect to the location entity; a number of instances in which the user requested directions to the location entity; a number of instances in which the user has checked-in to the location entity; a number of instances in which the user has transacted with the location entity as evidenced by data obtained from a mobile payment system or virtual wallet; and/or a number of instances in which the user has performed a web search query with respect to the location entity.
Determination of a location entity as a best match for the current geographic location of a mobile device can also include determination of whether the best match is made with a high confidence score or a low confidence score. In such examples, confidence scores can be generated for each candidate location entity based on one or more of the above factors for determining a best match. Confidence scores higher than a predetermined value can be considered high confidence scores, while confidence scores lower than a predetermined value can be considered low confidence scores. The predetermined threshold value for determining high and low confidence can be chosen such that high confidence determinations indicate having strong signals pinpointing the specific location of a mobile device, while low confidence determinations are not able to pinpoint exact location with strong precision. Ranges of confidence scores can also be used in accordance with the disclosed determination techniques. Use of confidence scores and ultimate determination of identified location entities as having high confidence and/or low confidence can provide different features for display in a graphical user interface.
Two particular updates are included in user interface 120 of
A second update is provided by way of additional interface element 127, corresponding to a graphical icon associated with a category of the determined location entity. Graphical icon 127 can be superimposed over or provided adjacent to interface element 123 in order to provide an indication to the user that a corresponding location entity has been determined and also to provide additional information about the determined location entity. Different categories of location entities that have a dedicated type of icon for use as interface element 127 include but are not limited to home, work, airport, ATM, bank, bar, café, camping, cemetery, civic building, golf course, harbor, hospital, library, lodging, monument, movie theater, museum, park, parking lot, police, post office, restaurant, school, shopping, supermarket, temple, university, and place of worship. Icons can be customized for different countries to maximize informational context for different users. In addition, some categories of location entities can be broken down into more particular subsets of particular types of a location entity. For instance, places of worship could have different icons based on a particular type, e.g., Buddhist, Christian, Hindu, Islam, Jain, Jewish, Mormon, Sikh, etc. In the example of
Various interface elements provided in the disclosed embodiments are designed with an interactive nature such that the interface elements are selectable by a user in order to initiate the display of still further information about a current geographic location or corresponding location entity. For example, user selection (via touch screen or other input mechanism) of interface element 133 and/or interface element 137 in
User selection of one or more interface elements in a mapping interface in the disclosed embodiments can automatically initiate the display of a separate display area including information about the determined location entity. For example, a single-tap selection of interface elements 123, 125, 126 or 127 in
User selection of one or more interface elements in a mapping interface in the disclosed embodiments can additionally or alternatively initiate the display of a disambiguation screen that allows a user to manually select among a plurality of nearby location entities as corresponding to the user's current geographic location. In some examples, initiation of a disambiguation display can occur automatically (e.g., without requiring user selection of an interface element) upon user arrival at a new geographic location or upon system inability to accurately determine a corresponding location entity with a predetermined level of precision (e.g., a high confidence score). The availability of such disambiguation features can be especially helpful in instances where multiple location entities are close to one another in a given geographic space, where a single building houses multiple distinct location entities and/or in a situation where the accuracy of a mobile device's location sensors is limited or jeopardized. For example, selection of an interface element such as interface element 113 in
Disambiguation display 160 includes a first interface portion 161 including one or more identifiers of a determined best match associated with the mobile device's current geographic location. For example, having a designated icon 162 next to a particular location entity indicates to a user that this location entity is identified as the default best match for the mobile device's current geographic location. Additional items included in interface portion 161 include an actual name or an alias name 163 (e.g., Work) associated with the determined best match and an identified address 164 or other location information associated with the determined location entity.
Disambiguation display 160 also includes a second interface portion 165 that includes a list of nearby location entities, each item in the list corresponding to a respectively selectable interface element, by which a user can manually select the location entity corresponding to his current geographic location. The order in which the nearby location entities are displayed in the list within second interface portion 165 can vary depending on customizable factors, including but not limited to proximity or other location information and/or personalization information specific to a user. In one example, the list of nearby location entities can be ranked in descending order from closest location to farthest location within a predetermined area surrounding the current geographic location of the mobile device. In another example, the list of nearby location entities displayed to a user is ranked using a combination of location information indicating the distance from each nearby location entity to the current geographic location of the mobile device and personalization information indicating location entities of interest for a given user. Personalization information can include data associated with one or more of previously visited locations, previously searched locations, previously saved locations and user preferences. In some examples, personalization information can be available when a user is signed into his mapping application with user-specified login credentials, including but not limited to a user name and password associated with a personalized mapping application or other related applications having location-based information.
Referring still to
Once a particular location entity is manually selected, searched for or entered by a user from disambiguation display 160, a mobile device can be configured to automatically display a separate display area including information about the selected location entity (e.g., displaying a place page such as that shown in
Referring now to
Referring now to
Interface portion 194 can include an indication that Hotel ABC is determined to be the best match for a nearby location entity associated with the mobile device's current geographic location. Use of the indicator “Are you at” can be used to indicate that Hotel ABC was only determined with low confidence. In contrast, use of an indicator such as “You are at” or “Now at” such as displayed in interface portion 201 of example interface 200 of
Referring again to
Referring still to
The first and/or second interface elements provided for display at (306) and (314) can be configured as selectable interface elements that can be selected by a mobile device user (e.g., via touchscreen, stylus, keyboard, eye-controlled input or the like). Referring now to
Each server 402 and client 422 can include at least one computing device, such as depicted by server computing device 404 and client computing device 424. Although only one server computing device 404 and one client computing device 424 is illustrated in
The computing devices 404 and/or 424 can respectively include one or more processor(s) 406, 426 and one or more memory devices 408, 428. The one or more processor(s) 406, 426 can include any suitable processing device, such as a microprocessor, microcontroller, integrated circuit, logic device, one or more central processing units (CPUs), graphics processing units (GPUs) dedicated to efficiently rendering images or performing other specialized calculations, and/or other processing devices. The one or more memory devices 408, 428 can include one or more computer-readable media, including, but not limited to, non-transitory computer-readable media, RAM, ROM, hard drives, flash drives, or other memory devices. In some examples, memory devices 408, 428 can correspond to coordinated databases that are split over multiple locations.
The one or more memory devices 408, 428 store information accessible by the one or more processors 406, 426, including instructions 414, 434 that can be executed by the one or more processors 406, 426. For instance, server memory device 408 can store databases for storing location entity identifier information, navigation and mapping databases and other comprehensive databases. The client memory device 428 can store instructions for implementing a browser or module that allows a user to request information from server 402, including navigation directions, navigation information, location information, and/or information related to past, current or future client locations. Client memory device 428 can also store instructions for implementing a passive application in accordance with the disclosed technology. The one or more memory devices 408, 428 can also include data 412, 432 that can be retrieved, manipulated, created, or stored by the one or more processors 406, 426.
Computing devices 404 and 424 can communicate with one another over a network 440. In such instances, the server 402 and one or more clients 422 can also respectively include a network interface used to communicate with one another over network 440. The network interface(s) can include any suitable components for interfacing with one more networks, including for example, transmitters, receivers, ports, controllers, antennas, or other suitable components. The network 440 can be any type of communications network, such as a local area network (e.g. intranet), wide area network (e.g. Internet), cellular network, or some combination thereof. The network 440 can also include a direct connection between server computing device 404 and client computing device 424. In general, communication between the server computing device 404 and client computing device 424 can be carried via network interface using any type of wired and/or wireless connection, using a variety of communication protocols (e.g. TCP/IP, HTTP, SMTP, FTP), encodings or formats (e.g. HTML, XML), and/or protection schemes (e.g. VPN, secure HTTP, SSL).
The client 422 can include various input/output devices for providing and receiving information to/from a user. For instance, an input device 436 can include devices such as a touch screen, touch pad, data entry keys, eye controller and/or a microphone suitable for voice recognition. Input device 436 can be employed by a user to identify a destination location for determining navigation directions thereto in accordance with the disclosed embodiments. An output device 438 can include audio or visual outputs such as speakers or displays for providing graphical user interfaces including mapping information and current location to a user. Audio and/or visual alarms also could be provided at output device 438 to provide signals to a user indicating the arrival of a user at a particular location entity or geographic location.
It will be appreciated that the term “module” refers to computer logic utilized to provide desired functionality. Thus, a module can be implemented in hardware, application specific circuits, firmware and/or software controlling a general purpose processor. In one embodiment, the modules are program code files stored on the storage device, loaded into one or more memory devices and executed by one or more processors or can be provided from computer program products, for example computer executable instructions, that are stored in a tangible computer-readable storage medium such as RAM, flash drive, hard disk, or optical or magnetic media. When software is used, any suitable programming language or platform can be used to implement the module.
The technology discussed herein makes reference to servers, databases, software applications, and other computer-based systems, as well as actions taken and information sent to and from such systems. One of ordinary skill in the art will recognize that the inherent flexibility of computer-based systems allows for a great variety of possible configurations, combinations, and divisions of tasks and functionality between and among components. For instance, server processes discussed herein can be implemented using a single server or multiple servers working in combination. Databases and applications can be implemented on a single system or distributed across multiple systems. Distributed components can operate sequentially or in parallel.
While the present subject matter has been described in detail with respect to specific example embodiments thereof, it will be appreciated that those skilled in the art, upon attaining an understanding of the foregoing can readily produce alterations to, variations of, and equivalents to such embodiments. Accordingly, the scope of the present disclosure is by way of example rather than by way of limitation, and the subject disclosure does not preclude inclusion of such modifications, variations and/or additions to the present subject matter as would be readily apparent to one of ordinary skill in the art.