Augmented reality map curation
An augmented reality device may communicate with a map server via an API interface to provide mapping data that may be implemented into a canonical map, and may also receive map data from the map server. A visualization of map quality, including quality indicators for multiple cells of the environment, may be provided to the user as an overlay to the current real-world environment seen through the AR device. These visualizations may include, for example, a map quality minimap and/or a map quality overlay. The visualizations provide guidance to the user that allows more efficient updates to the map, thereby improving map quality and localization of users into the map.
1. A computing system comprising:
one or more hardware computer processors; and
one or more non-transitory computer readable storage device storing software instructions that, when executed by the one or more hardware computer processors, cause the computing system to:
determine a cell in which a wearable headset is positioned;
determine a cell quality score associated with the cell usable to localize a user into the cell;
determine a cell saturation indicator indicative of whether the user has been positioned within the cell for at least a threshold time period;
determine a cell score indicative of the cell quality score and the cell saturation indicator; and
update a user interface viewable in the wearable headset to indicate the cell score for the cell.
2. The computing system of claim 1 , wherein the cell quality score and the cell saturation indicator are determined by a server remote to the wearable headset and are transmitted to the wearable headset via an application programming interface (API) communication channel.
3. The computing system of claim 2 , wherein the wearable headset initiates the API communication channel by transmitting credentials for directly accessing map data from the server.
4. The computing system of claim 1 , wherein the cell quality score is between 0 and 1, wherein 0 indicates a lowest cell quality and 1 indicates a highest cell quality.
5. The computing system of claim 1 , wherein the software instructions, when executed by the one or more hardware computer processors, cause the computing system to:
in response to determining that the cell saturation indicator is positive, sum the cell quality score and 0.5 to calculate the cell score, with a maximum cell score of 1.
6. The computing system of claim 1 , wherein the software instructions, when executed by the one or more hardware computer processors, cause the computing system to:
in response to determining that the cell saturation indicator is negative; set the cell score equal to the cell quality score.
7. The computing system of claim 1 , wherein the user interface includes a minimap of a portion of a plurality of cells and their corresponding cell scores.
8. The computing system of claim 7 , wherein the minimap is associated with a position of a user input device such that the minimap moves in conjunction with the user input device.
9. The computing system of claim 8 , wherein the minimap is displayed in front of the user input device.
10. The computing system of claim 7 , wherein the software instructions, when executed by the one or more hardware computer processors, cause the computing system to:
in response to movement of the user, rotate the minimap to maintain orientation of the user.
11. The computing system of claim 1 , wherein the user interface includes a map quality overlay with indicators of cell scores overlaying corresponding portions of a real world environment.
12. The computing system of claim 1 , wherein the user interface includes at least one cell quality subscore determined based on images obtained from a particular viewing directions.
13. The computing system of claim 12 , wherein the at least one cell quality subscore includes a plurality of cell quality subscores including a north viewing direction subscore, a south viewing direction subscore, a west viewing direction subscore, and an east viewing direction subscore.
14. The computing system of claim 13 , wherein the cell quality subscores are indicated in the cell.
15. The computing system of claim 14 , wherein the cell quality subscores are indicated as colored areas around an indicator of the cell score.
16. The computing system of claim 7 , wherein the cell scores are indicated in the user interface with colors, wherein lower cell scores are a first color and higher cell scores are a second color.
17. The computing system of claim 16 , wherein the first color is red and the second color is green.
18. The computing system of claim 7 , wherein the user interface indicates the cell with a user icon.
19. The computing system of claim 1 , wherein the cell is one of a plurality of cells in a grid pattern.
20. A computing system comprising:
one or more hardware computer processors; and
one or more non-transitory computer readable storage device storing software instructions that, when executed by the one or more hardware computer processors, cause the computing system to:
display via a wearable headset a minimap indicating quality of canonical map data at each of a plurality of cells of a canonical map, the quality of the canonical map data at each of the plurality of cells characterized by a cell quality score;
determine a cell in which the wearable headset is positioned;
determine a cell saturation indicator indicative of whether the wearable headset has been positioned within the cell for at least a threshold time period;
obtain, via one or more sensors of the wearable headset, images of an environment as a user moves about the environment;
determine updates to the quality of the canonical map data based on the images of the environment;
update a cell score indicative of the cell quality score and the cell saturation indicator; and
update the minimap to indicate the update to the cell score.