Systems and methods for selectively incorporating imagery in low-bandwidth digital map applications
By providing low-bandwidth 3D representations in digital map applications and combining them with quantization parameter information, users can choose to download high-resolution image versions, solving the problem of long download times under limited bandwidth, and improving user experience and network resource utilization efficiency.
Patent Information
- Application Number
- CN201680023854.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2015-08-07
- Filing Date
- 2016-08-02
- Publication Date
- 2025-11-25
- Estimated Expiration
- 2036-08-02
AI Technical Summary
In environments with limited bandwidth, downloading high-quality image tiles and data objects in existing digital map applications is time-consuming and costly, resulting in a poor user experience.
It provides a low-bandwidth 3D representation as the initial display, and users can choose to download a high-resolution image version. The selection is guided by quantization parameter information, and the appropriate version is automatically selected for download using the current communication capabilities.
Provides immersive geographic area viewing with limited bandwidth, reduces initial download time and cost, improves user experience, and optimizes network resource usage while meeting user needs.
Smart Images

Figure CN109074356B_ABST
Abstract
Description
Technical Field
[0001] This disclosure generally relates to digital map applications, and more specifically to the selective incorporation of imagery in low-bandwidth digital map applications. Background Technology
[0002] Computerized methods and systems for displaying imagery, particularly panoramic imagery, are known. In the context of geographic information systems and digital mapping systems, services such as Google Maps are able to provide street-level images of geographic locations. These images (e.g., referred to as "street views" on Google Maps) typically provide an immersive 360° panoramic view centered on a geographic area of interest. This panoramic view allows the user to view the geographic location from a human perspective, as if the user were located at the street level or ground level associated with that location.
[0003] In some implementations, when a user of a local mapping service or other application selects to view a street-level image, a client device (e.g., a computing device such as a computer, laptop, handheld device, mobile device, smartphone, etc.) can retrieve image tiles or other data objects from a server device required to render the image displayed on the client device. Image tiles or other data objects stored on the server may include high-quality images characterized by their relatively large data size. In many geographical locations around the world, the opportunity for users to download such large image tiles or other data objects and related data may be limited due to bandwidth constraints, network speed, and / or download costs. In some cases, the client device may spend a considerable amount of time (e.g., several minutes) to retrieve and render such an image. Summary of the Invention
[0004] Aspects and advantages of embodiments of this disclosure will be set forth in part in the description which follows, or may be learned from this specification or by practice of the embodiments.
[0005] One example aspect of this disclosure relates to a computer-implemented method for providing an interactive digital map application in a bandwidth-constrained environment. The method may include one or more computing devices providing a three-dimensional representation of a geographic area viewed by a user of the interactive digital map application for display on a display of the computing devices. The method may also include the one or more computing devices providing download information for display in the interactive digital map application. The download information may include quantifiable parameters associated with the download and one or more versions of an image corresponding to the three-dimensional representation. The method may also include the one or more computing devices receiving a user instruction requesting the download of one or more versions of the image corresponding to the three-dimensional representation for display. The method may also include the one or more computing devices downloading the requested one or more versions of the image corresponding to the three-dimensional representation. The method may also include the one or more computing devices providing the requested one or more versions of the image corresponding to the three-dimensional representation for display.
[0006] Other exemplary aspects of this disclosure relate to systems, apparatuses, tangible non-transitory computer-readable media, user interfaces, memory devices, and electronic devices for using a mobile computer to estimate restaurant wait times and / or food service times.
[0007] These and other features, aspects, and advantages of the various embodiments will become better understood with reference to the following description and the appended claims. The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments of the disclosure and, together with this specification, serve to illustrate the relevant principles. Attached Figure Description
[0008] This specification sets forth a detailed discussion of embodiments that are suitable for those skilled in the art, with reference to the accompanying drawings in which:
[0009] Figure 1 An example user interface for presenting a three-dimensional representation within a map application is described according to example aspects of this disclosure;
[0010] Figure 2 An example user interface is described according to an example aspect of this disclosure for presenting download information related to images corresponding to three-dimensional representations within a map application;
[0011] Figure 3 An example user interface for presenting a requested image within a map application, according to example aspects of this disclosure;
[0012] Figure 4 A flowchart is provided for an example method for selectively incorporating imagery in a low-bandwidth digital map application, based on example aspects of this disclosure;
[0013] Figure 5 Flowcharts are provided for additional aspects of an example method for selectively incorporating imagery in low-bandwidth digital map applications, according to example aspects of this disclosure; and
[0014] Figure 6 An example summary of a computer-based system component for selectively incorporating imagery in a low-bandwidth mapping application is provided, based on example aspects of this disclosure. Detailed Implementation
[0015] Reference will now be made in detail to embodiments, one or more examples of which are illustrated in the accompanying drawings. Each example is provided by way of illustration and not by way of limitation of this disclosure. In fact, it will be apparent to those skilled in the art that various modifications and variations may be made to the embodiments without departing from the scope or spirit of this disclosure. For example, features illustrated or described as part of one embodiment may be used in conjunction with another embodiment to produce yet another embodiment. Therefore, aspects of this disclosure are intended to cover such modifications and variations.
[0016] An exemplary aspect of this disclosure relates to systems and methods for selectively incorporating imagery in low-bandwidth digital mapping applications. Computerized methods and systems for displaying imagery, particularly panoramic imagery, are known. In the context of geographic information systems and digital mapping systems, services such as Google Maps are capable of providing street-level images of geographic locations. These images (e.g., referred to as “street views” on Google Maps) typically provide an immersive 360° panoramic view centered on a geographic area of interest. The panoramic view allows a user to view the geographic location from a human perspective, as if the user were located at the street level or ground level associated with that geographic location.
[0017] In some implementations, when a user of a local mapping service or other application selects to view a street-level image, a client device (e.g., a computing device such as a computer, laptop, handheld device, mobile device, smartphone, etc.) can retrieve image tiles or other data objects from a server device required to render the image displayed on the client device. Image tiles or other data objects stored on the server may include high-quality images characterized by their relatively large data size. In many geographical locations around the world, the opportunity for users to download such large image tiles or other data objects and related data may be limited due to bandwidth constraints, network speed, and / or download costs. In some cases, the client device may spend a considerable amount of time (e.g., several minutes) to retrieve and render such an image.
[0018] The disclosed embodiments of this disclosure provide low-bandwidth, three-dimensional (3D) alternatives to conventional street-level panoramic imagery and / or high-resolution satellite imagery portions of digital map applications, while selectively incorporating additional imagery where feasible and / or desired by the end user. A 3D representation of a geographic area of interest may include a reduced amount of data providing sufficient basic features within the geographic area to give the user some understanding of where the user is looking. The 3D representation may be presented in the viewport of a computing device operating an interactive digital map application—such as Google Maps. In some examples, the 3D representation may be provided when the user requests operation of the interactive digital map application in a limited-bandwidth operating mode. The 3D representation may include a wireframe representation using basic lines and shapes to depict the external features or contours of geographic objects (e.g., buildings, roads, signs, trees, etc.) included within the geographic area viewed by the user. The contours of the geographic area may be formed from 3D point clouds or other data of the geographic area acquired at the same time as the panoramic and / or satellite imagery of the geographic area. In some examples, the 3D representation may include text markers identifying items such as road names, building names, etc. Compared to the tens of thousands of bytes of data required for conventional high-resolution images—including panoramic street level images or satellite images—this data, in various forms, can be contained in hundreds of bytes.
[0019] While the typical operating mode of digital map applications may primarily involve low-bandwidth 3D representations, additional features can be provided for downloading actual images when desired. For example, user-selectable interface buttons can be displayed within the user interface, allowing the user to initiate the download and display of various versions of the imagery corresponding to the 3D representation. This provides the option to download heavy-load data only when specifically requested by the user of the interactive digital map application.
[0020] In some examples, download information may be provided for display in interactive digital map applications. Download information may correspond to quantifiable parameters associated with one or more versions of the downloaded image. Download information may indicate to the user the relative amount of that parameter required to download one or more versions of one or more images corresponding to a 3D representation. For example, download information may include the resolution version, bandwidth, file size, download time, and / or download cost of one or more images corresponding to a 3D representation. Download information for one or more different versions of an image may be provided together with user-selectable interface buttons for initiating the selection and download of the image by the user. In some examples, download information may be provided for at least a first and a second version of the image. The first version may correspond to a low-resolution version of the image (e.g., a thumbnail version), while the second version may correspond to a full-resolution or higher-resolution version of the image.
[0021] One or more versions of the image corresponding to the 3D representation may be provided to the user for display in the viewport of the interactive digital map application only when the user requests additional imagery of the requested area. In some examples, the determination of which versions of the image or which versions of the downloaded information should be provided to the user upon request can be further facilitated by automatically determining the current communication capabilities of the communication channel established between the client device and the server from which the interactive digital map application downloads data and provides it to the user. Current communication capabilities may include one or more suitable communication characterization parameters, such as, but not limited to, download speed, channel capacity, signal bandwidth, and / or connection latency.
[0022] According to one example embodiment, a computing device user of an interactive digital map application expects to receive an immersive view centered on a geographic area of interest, allowing the user to view the geographic location from a street-level or ground-level perspective. The viewport on the user's computing device can be used to display a low-bandwidth three-dimensional (3D) representation of the geographic area of interest. The 3D representation provides basic outlines of roads, buildings, etc., as well as text labels identifying roads, buildings, and other geographic objects. User-selectable buttons are available within the interactive digital map application, allowing the user to request the download of one or more versions of imagery corresponding to the 3D representation (e.g., satellite imagery and / or panoramic street-level imagery). Additional details, such as resolution version, file size, download time, or download cost, may be provided along with each image version and its corresponding download button. If requested, the additional images can be downloaded and provided for display to the user within the viewport of the map application.
[0023] Exemplary embodiments of this disclosure will now be discussed in detail with reference to the accompanying drawings. Figure 1 An exemplary user interface 100, such as a browser, is depicted that can be displayed on a display of a computing device—such as a personal computer, smartphone, desktop computer, laptop computer, PDA, tablet, mobile device, or other computing device. User interface 100 may include a viewport 102 that presents detailed display information to a user of an interactive digital map application. Figure 1 In a particular embodiment, viewport 102 displays a portion of an immersive three-dimensional (3D) representation 104 of a geographic region viewed by the user.
[0024] The 3D representation 104 provides a "street-level" representation depicting geographic objects within a geographic area of interest from a perspective at or near ground level or street level. Although the terms "street-level representation" and "street-level image" are used in this disclosure, the immersive view may depict non-street areas, such as paths, rural environments, building interiors, etc. In some examples, the immersive 3D representation 104 may also depict a top-down view of a geographic area in contrast to the street-level view. As discussed below, the 3D representation 104 may be interactive, allowing a user to navigate within the 3D representation 104 by panning, zooming, rotating, and / or tilting the view. As shown, the 3D representation 104 can provide a user with an immersive viewing experience of a geographic area.
[0025] Some interactive digital map applications provide immersive 360° panoramic imagery of geographic areas within a viewport similar to viewport 102. Other interactive digital map applications provide detailed overhead satellite imagery of geographic areas within a viewport similar to viewport 102. However, a 3D representation of such panoramic street-level or overhead satellite imagery can be presented to provide a low-bandwidth alternative where download time, cost, or other factors are important to users of the interactive digital map application. Providing a 3D representation within viewport 102 can be particularly advantageous in operating environments where the infrastructure of available communication networks may be limited.
[0026] It can be achieved in various ways, such as in Figure 1 The creation of the three-dimensional representation 304 depicted in viewport 102. In some examples, the three-dimensional representation 304 may be created from object location data and object tagging data collected for various geographic objects within a geographic area of interest. Object location data may be obtained or extracted from relevant data acquired by a mobile data acquisition unit traversing the geographic area of interest. The mobile data acquisition unit may include a combination of sensors or data acquisition devices, such as, but not limited to, a camera capable of acquiring two-dimensional (2D) photographs or videos and a laser scanner capable of acquiring a three-dimensional (3D) dataset of nearby geographic objects. In some examples, the 3D dataset includes a 3DLIDAR point cloud obtained using a laser rangefinder or laser sensing component that measures the distance to a target by illuminating the target with a laser and analyzing the reflected light. In other examples, a stereo vision system employing two slightly spaced cameras viewing the same scene may be utilized. By analyzing the slight differences between the images acquired by each camera, it is possible to estimate the distance at each point associated with a geographic object in the scene. In this way, known photogrammetry and other imaging techniques can be used to convert a combination of 2D photographs into a 3D space and corresponding 3D data points. Object tagging data can be obtained from a database of available geoidentifiers associated with specific geographic objects (e.g., streets, buildings, etc.) identified within the scene of interest.
[0027] Compared to an image containing a geographic area of interest, 3D representation 104 may include wireframe or outline representations of various geographic objects within that geographic area. For example, 3D representation 104 may include 3D wireframe outlines of buildings 114, 116, 118, and street 120. These wireframe outlines use basic lines and shapes to depict the external features or outlines of geographic objects (e.g., buildings, roads, signs, trees, etc.) included within the geographic area viewed by the user. Although in Figure 1 Not described herein, however, 3D wireframe outlines of additional objects—including but not limited to people, vehicles, vegetation, etc.—within an area of interest can also be depicted when desired. 3D representation 104 may also include object markers such as building text labels 122, 124 and road text labels 126. Compared to the tens of thousands of bytes of data required for conventional high-resolution images—including panoramic street level images or satellite imagery—the various forms of data used to create 3D representation 104 can be contained in hundreds of bytes of data.
[0028] Still referencing Figure 1 In addition to the 3D representation 104, the user interface 100 can also display maps and other information to the user, such as the direction of travel 106. The user interface 100 can provide flexibility to the user when requesting an immersive 3D representation associated with a geographic area to be displayed through viewport 102. For example, the user can enter text in search field 108, such as an address, building name, or specific latitude and longitude. The user can also use an input device such as a mouse or touchscreen to select a specific geographic location shown on the map. Furthermore, the user interface 100 can provide icons or other features that allow the user to request an immersive street-level view of a specified geographic location. When the 3D representation 104 is provided in viewport 102, the user interface 100 can use a viewpoint indicator 110 to indicate the location and orientation of the current view associated with the 3D representation 104.
[0029] User interface 100 may include user-selectable controls 112 for navigating a viewpoint associated with 3D representation 104. These controls may include controls for zooming in and out of the view and controls for changing the orientation of the view depicted in 3D representation 104. Users may also adjust the viewpoint of 3D representation 104 using user-manipulable selection objects—such as a cursor or waffle. For example, a user may adjust the viewpoint by selecting and dragging the 3D representation to different views, for example, using a selection object or by interacting with a touchscreen. If 3D representation 104 is created as a full 360° representation, changing the orientation of the view may only require displaying different portions of the panorama without retrieving more information from a server. Other navigation controls may also be included, such as controls that can be selected to move the vantage point back and forth along a street in the form of arrows arranged along the street.
[0030] Now for reference Figure 2 Another example user interface 130 of an interactive digital map application may include... Figure 1 Similar features to the user interface 100 include presenting a 3D representation 104 in viewport 102. However, additional download information 132 can be provided to the user at a predetermined location within the user interface 130. Figure 2 Replacement Figure 1 The direction of travel 106 depicts the download information 132. However, it should be understood that the download information 132 may be located within the user interface 130 or in additional and / or alternative locations within or outside the viewport 102. In some examples, the download information 132 may be provided in response to user input. Figure 1 Selectable user interface buttons 128—such as buttons designed to trigger a request for “More Image Options”—are displayed.
[0031] Download information 132 may include one or more portions of information defining one or more quantifiable parameters associated with one or more versions of the imagery associated with the current view of the downloaded geographic region or nearby area. For example, Figure 1The first portion 134, the second portion 136, and the third portion 138 of the download information 132 each include three quantifiable parameters for each of three different versions of the image. The first portion 134 may include download information for a first version of the image (e.g., "High Resolution Version"). The second portion 136 may include download information for a second version of the image (e.g., "Medium Resolution Version"). The third portion 138 may include download information for a third version of the image (e.g., "Low Resolution Version"). Each portion 134, 136, and 138 of the download information 132 may include information defining quantifiable parameters including resolution version, download size, download time, and download cost. Although in Figure 2 The example depicts three versions of the image and three types of quantizable parameters; however, it should be understood that any number of image versions and associated quantizable parameters can be used.
[0032] For each quantifiable parameter in portions 134, 136, and 138 of download information 132, the relative amount of that parameter required to download one or more versions of an image corresponding to a given 3D representation can be communicated to the user. For example, the first portion 134 of download information 132 can communicate to the user that downloading a high-resolution version of the image corresponding to 3D representation 104 will require a download size of 6.4 megabytes (MB), a download time of 1 minute and 15 seconds, and / or a download fee of $.60. The second portion 136 of download information 132 can communicate to the user that downloading a medium-resolution version of the image corresponding to 3D representation 104 will require a download size of 1.5 megabytes (MB), a download time of 32 seconds, and / or a download fee of $.20. The third portion 138 of download information 132 can communicate to the user that downloading a low-resolution version of the image corresponding to 3D representation 104 will require a download size of 250 kilobytes (KB), a download time of 5 seconds, and / or a download fee of $.05.
[0033] Still referencing Figure 2 The application can also provide user-selectable interface buttons for each part of the downloaded information. For example, user-selectable interface buttons 140, 142, and 144 are provided for each of three different versions (high resolution, medium resolution, and low resolution) of an image that can be downloaded by a user of the interactive digital map application. A user can initiate the download of the corresponding version of the image by selecting one of the interface buttons 140, 142, or 144 via an input device.
[0034] Figure 3An example user interface 150 is depicted after the user has selected interface button 140 and downloaded a high-resolution version of image 152 in an interactive digital map application. Figure 3 In the example interface 150, image 152 corresponds to a panoramic street level image; however, it should be understood that different types of images, such as overhead satellite images provided, for example, by Google Earth service provided by Google Inc., may also be provided in the example embodiments of this disclosure. Image 152 may be provided within viewport 102; however, it should be understood that image 152 does not necessarily need to replace 3D representation 104. In some user interfaces, image 152 may be positioned adjacent to or overlapping with 3D representation 104. In some examples, the position of image 152 may depend on the size of the requested image. For example, it may be as follows: Figure 3 The image depicted is provided in high resolution across the entire viewport 102, while low-resolution or thumbnail versions of the image can be positioned adjacent to or overlaid on the 3D representation. Where possible, the 3D representation 104 and the corresponding downloaded image 152 are both positioned at substantially the same viewing point (e.g., camera angle / orientation or viewpoint / orientation). When the 3D representation 104 is provided as a street-level representation, image 152 can be provided as a street-level image with the same viewing point and camera angle. When the 3D representation 104 is provided as a top-down map representation, image 152 can be provided as a top-down satellite image with the same viewing point and zoom level.
[0035] Now for reference Figure 4-5 The flowchart illustrates example aspects of a method for selectively incorporating imagery in low-bandwidth digital map applications. Figure 4 In this context, a method (160) for selectively incorporating imagery in a low-bandwidth digital map application may include: identifying (162) a user request for operating the interactive digital map application in a limited-bandwidth operating mode. In some examples, the user request identified at (162) may be provided directly within settings available through the digital map application itself. In other examples, the user request identified at (162) may be provided within general settings available on the computing device (e.g., a mobile device, laptop computer, personal computing device, etc.) running the interactive digital map application. In some instances, the decision to operate in a limited-bandwidth operating mode may be automatically determined at the computing device operating the interactive digital map application by analyzing the current communication capabilities of the communication channels associated with the computing device. In contrast to low-bandwidth 3D representation, operation in a normal operating mode (without bandwidth limitations) can result in immersive panoramic and / or satellite imagery within the viewport.
[0036] When operating in a low-bandwidth mode, a 3D representation of the geographic area viewed by a user of an interactive digital map application is provided at (164) for display. The 3D representation provided at (164) for display may include... Figure 1 The example 3D representation depicted in [reference 104] has similar features and aspects. More specifically, the 3D representation provided at (164) for display may include: wireframe outlines of various geographic objects created from object location data defining the outer surface of the geographic object. Object markers of geographic objects within the 3D representation displayed at (164) may also be provided. [The last sentence appears to be incomplete and possibly refers to a different context.] Figure 1 Viewport 102, similar to those presented in the viewport or other user interface portion of a computing device's display, provides a 3D representation for display.
[0037] Downloadable information for display can also be provided in the interactive digital map application at (166). (See also: Regarding...) Figure 2 As described in download information 132, the download information provided at (166) for display may include quantifiable parameters associated with downloading one or more versions of an image corresponding to the 3D representation provided at (164) for display. Specific quantifiable parameters associated with each resolution version of the image may include file download size, download time, download cost, etc. The download information provided at (166) for display may indicate to the user the relative amount of each quantifiable parameter required to download one or more versions of the image corresponding to the 3D representation. In some examples, download information may be provided at (166) for at least a first and a second version of the image. The first version may correspond to a low-resolution version of the image (e.g., a thumbnail version), while the second version may correspond to a full-resolution or higher-resolution version of the image. Selectable user interface buttons may also be provided at (166) for each version of the image corresponding to the 3D representation provided at (164) for display as part of the download information. In this way, the user of the interactive map application is provided with electronic features to request the download of one or more versions of the image.
[0038] When a user selects one of the user interface buttons included as part of the download information provided at (166) for display, a user instruction is received at (168) requesting the download of one or more versions of an image corresponding to the 3D representation provided at (164) for display. Receiving the user instruction at (168) automatically triggers the download of the requested version of the image corresponding to the 3D representation at (170). Then, one or more versions of the image requested at (168) corresponding to the 3D representation provided at (164) for display are provided at (172). The image may be provided at (172) within the same viewport where the 3D representation is provided for display at (164) or at another location within the user interface.
[0039] Now for reference Figure 5 The diagram depicts additional flowchart features 180, optionally included in a method for selectively incorporating imagery in an interactive digital map application. Additional flowchart features 180 typically include automatically selecting different features or versions of features within the interactive digital map application using the determination of communication capabilities. The current communication capabilities of the communication channels of the computing device that enable the user to access information within the interactive digital map application can be determined at (182). The current communication capabilities determined at (182) can be defined by one or more suitable communication characterization parameters, such as, but not limited to, the download speed, channel capacity, signal bandwidth, signal strength, and / or connection latency of the communication channel providing map information to the client device. In some examples, the current communication capabilities can be determined with respect to the availability of different types of network connections (e.g., Wi-Fi or other wireless network connections, cellular network connections, satellite network connections, etc.).
[0040] Based on the current communication capabilities determined at (182), one or more additional features can be implemented. In some examples, a bandwidth operation mode can be automatically selected at (184) for operating the interactive digital map application. Different bandwidth operation modes may include: a low-bandwidth operation mode that provides an immersive 3D representation for display within the viewport and / or a high-bandwidth operation mode that provides a full 360° panoramic street level image or high-resolution satellite imagery for display within the viewport. If the current communication capabilities are determined at (182) to be limited due to slow connections, device or network latency, etc., it may be helpful to automatically select a low-bandwidth operation mode at (184). In this example, the computing device operating the map application does not attempt to download the panoramic or satellite imagery when download time and cost may be high. In some examples, determining the communication capabilities at (182) that indicate the availability of strong Wi-Fi or other wireless network connections may indicate higher communication capabilities, resulting in the automatic selection of a full high-resolution operation mode at (184). Different operating modes can be automatically selected at (184) based on the different current communication capabilities determined at (182).
[0041] In Adoption Figure 5 In other examples of feature (180), the method for selectively incorporating imagery may, at least in part, automatically select at (186) one or more specific versions of the image to be provided with download information or for automatic download, based on the current communication capabilities determined at (182). For example, if the current communication capabilities are determined to be relatively low at (182), it may be preferable at (186) to provide download information for lower-resolution versions of panoramic street-level images and / or satellite images that correspond only to 3D representations. In other examples, if the current communication capabilities are determined to be relatively high at (182), it may be preferable at (186) to provide download information for higher-resolution versions of the image that correspond to 3D representations. Other versions of the image may be automatically selected at (186) based on different current communication capabilities determined at (182).
[0042] Figure 6An exemplary computing system 200, depicting an exemplary embodiment of the present disclosure, is described. This system can be used to implement techniques for selectively incorporating imagery in low-bandwidth interactive digital map applications. System 200 may include a computing device 210 configured to display a 3D representation and corresponding imagery to a user. The computing device 210 may take any suitable form, such as a personal computer, smartphone, desktop computer, laptop computer, PDA, tablet, or other computing device. The computing device 210 may include a display 218 for displaying the 3D representation, corresponding imagery, download information, and / or other associated information to the user, and a suitable input device 215 for receiving input from the user. The input device 215 may be any input device such as a touchscreen, touchpad, data entry keys, mouse, speaker, microphone suitable for speech recognition, and / or any other suitable device.
[0043] Users can request 3D representations and corresponding images by interacting with an appropriate user interface presented on a display 218 of the computing device 210. The computing device 210 can then receive the 3D representations, corresponding images, and / or associated data, and present at least a portion of the data through a viewport on any suitable output device—such as a viewport presented on the display 218 or as described in another user interface.
[0044] Computing device 210 may include processor 212 and memory 214. Processor 212 may be any known processing device. Memory 214 may include one or more suitable non-transitory computer-readable media, including but not limited to RAM, ROM, hard disk drive, flash drive, or other memory devices. Memory 214 may store information accessible by processor 212, including instructions executable by processor 212. Instructions may be any set of instructions that, when executed by processor 212, cause processor 212 to provide the desired functionality. For example, according to any embodiment disclosed herein, instructions, when executed by processor 212, may cause processor 212 to render an interactive 3D representation of an image geographic region. Instructions may be software instructions rendered in a computer-readable form. When using software, the teachings contained herein may be implemented using any suitable programming, scripting, or other type of language or combination of such languages. Alternatively, instructions may be implemented by hardwired logic or other circuitry—including but not limited to dedicated circuitry.
[0045] Computing device 210 may include a network interface 216 for accessing information via network 220. Network 220 may include a combination of networks such as cellular networks, Wi-Fi networks, LANs, WANs, the Internet, and / or other suitable networks, and may include any number of wired or wireless communication links. For example, computing device 210 may use the WAP standard or other suitable communication protocols to communicate via a cellular network. The cellular network can then communicate with the Internet directly or via another network.
[0046] Computing device 210 can communicate with another computing device 230 via network 220. Computing device 230 can be a server, such as a web server, that provides information to multiple client computing devices—such as computing devices 210 and 250—via network 220. Any number of computing devices 210 and 250 can communicate with computing device 230 via network 220. Computing device 230 receives requests from computing device 210 and, in response to those requests, locates information to be returned to computing device 210. Computing device 230 can take any applicable form and may include, for example, a system that provides map services—such as Google Maps provided by Google.
[0047] Computing device 230 can provide information to computing device 210 via network 220, including 3D representations, street-level imagery, preview images, download information, and associated information. The information can be provided to computing device 210 in any suitable format. The information may include HTML code, XML messages, WAP code, Flash, Java applets, XHTML, plaintext, voiceXML, VoxML, VXML, or other suitable formats. Computing device 210 can display the information to a user in any suitable format. In one embodiment, the information can be displayed in a browser—such as Google Chrome or another suitable browser.
[0048] Similar to computing device 210, computing device 230 may include processor 232 and memory 234. Memory 234 may include instructions 236 for receiving requests for 3D representations and corresponding geographic imagery from remote client devices—such as computing device 210—and for providing the requested information to the client devices for presentation to a user. Memory 234 may also include or be coupled to various databases, such as database 238 storing information that can be shared with other computing devices. Computing device 230 may communicate with other databases as needed. These databases may be connected to computing device 230 via a high-bandwidth LAN or WAN, or via network 220. Databases—including database 238—may be separated, located in multiple locations, or all may be located in one location.
[0049] Database 238 may include map database 240, street level image database 242, object location database 244, object tag database 246, and 3D representation database 248. Database 238 may also include other data with information that can be accessed or used by computing device 230.
[0050] Map database 240 stores map-related information, at least a portion of which can be sent to a client device, such as computing device 210. For example, map database 240 may store map tiles, where each tile is an image of a specific geographic area. Depending on the resolution (e.g., whether the map is zoomed in or out), a single tile may cover a large geographic area with relatively little detail or cover only a few streets with high detail. Map information is not limited to any particular format. For example, images may include street maps, satellite imagery, oblique view images, or combinations thereof.
[0051] Each map tile is associated with a geographic location, enabling the computing device 230 to select, retrieve, and send one or more tiles in response to the receipt of a geographic location. Location can be expressed in various ways, including but not limited to latitude / longitude, street addresses, points on the map, building names, and other data that can identify a geographic location.
[0052] Map database 240 may also include points of interest (POIs). A POI can be any item that one or more users are interested in and that can be associated with a geographic location. For example, POIs may include landmarks, stadiums, parks, monuments, restaurants, businesses, buildings, or other suitable points of interest. POIs can be added to map database 240 by professional map providers, individual users, or other entities.
[0053] Map database 240 also stores street information. In addition to street images in the tiles, street information may include the location of a street relative to a geographic area or other streets. For example, it may store information indicating whether a traveler can directly access another street from one street. Street information may also include street names where available, and may include other information such as distances between intersections and speed limits.
[0054] The Street Horizon Image Database 242 stores street-level images associated with geographic locations. Street-level images include images of objects at a geographic location, captured by a camera positioned at that location from a viewpoint at or near ground level or street level. Although the term "street-level" image is used, the image may depict non-street areas such as paths. Street-level images can depict geographic objects such as buildings, trees, monuments, etc., from a viewpoint a few feet above the ground. Street-level images can be used to provide users with an immersive 360° panoramic viewing experience centered on a geographic area of interest.
[0055] The street-level image database 242 can store multiple different versions of each panoramic image (e.g., low-resolution, medium-resolution, and / or high-resolution versions). The street-level image database 242 can also store multiple preview images associated with each panoramic image. The preview images can be any suitable image stored in any suitable format. Preview images can be provided to the user when viewing a 3D representation of a geographic area of interest to assist the user in deciding whether to download a separate version of the corresponding street-level imagery associated with that 3D representation.
[0056] Any suitable technique can be used to capture images stored in the street-level image database 242. For example, street-level images can be captured from a camera mounted on the roof of a vehicle, at a camera angle approximately parallel to the ground, and from a camera position at or below the legal height limits of the vehicle (e.g., 7-14 feet). Street-level images are not limited to any specific height above the ground. For example, street-level images can be taken from the top of a building. Panoramic street-level images can be created by stitching together multiple photographs taken from different angles. Panoramic images can be presented as flat surfaces or as three-dimensional surfaces with textured maps, such as, for example, cylinders or spheres.
[0057] A street-level image can be stored in a street-level database 242 as a set of pixels associated with color and brightness values. For example, if the image is stored in JPEG format, it can be displayed as a set of pixels arranged by rows and columns, where each pixel is associated with a value that defines the color and brightness of the image at that pixel's location.
[0058] The object location database 244 may include location information associated with geographic objects depicted in a street-level image. For example, the location information may include information about the object's position and / or location in a three-dimensional space defined by the street-level imagery, latitude, longitude, and / or height of the geographic object, the orientation of the image relative to user manipulation, and / or other spatial information.
[0059] As an example, a separate object location data value may be stored in the object location database 244 for each pixel of a street-level image stored in the street-level image database 242, wherein the object location data value represents the geographic location of the surface of the object depicted at that particular pixel. For example, the object location data value representing latitude, longitude, and altitude information associated with the specific surface depicted in the pixel may be associated with that pixel. In another aspect, the object location database 244 may include distance data representing the distance of the surface of an object depicted in the street-level image relative to the street-level viewpoint. For example, a value representing the distance from the viewpoint from which the image was acquired to the surface of the geographic object depicted in the street-level image may be associated with each pixel.
[0060] In another aspect, the object location database 244 may include information associated with the location of surfaces depicted in the street view image as polygons. Specifically, the surface of an object depicted in the street view image may be defined as a polygon with four vertices. Each vertex may be associated with a different geographic object. The surface in the object location database 244 may be referenced as a set of vertices at various geographic locations associated with the object.
[0061] Other formats used for storing object location data or other surface information in street level images can also be used. For example, instead of being associated with absolute location values—such as latitude, longitude, and altitude—these values can be relative and have arbitrary scales. The location of the surface of an object depicted in a street level image can be saved as a polygon. Furthermore, even using the first type of information (such as storing the latitude, longitude, and altitude information of the surface), another type of information (such as the difference between locations used to calculate distances) can be generated from that first type of information.
[0062] Various systems and methods can be used to collect location information to be stored in the object location database 244. For example, a laser rangefinder can be used. Alternatively, various known techniques can be used to generate a 3D model from multiple street view images. For example, stereoscopic vision techniques can be used to analyze multiple street level images associated with the same scene to determine the distance at each point in the images. Once the relative positions of the points in the images are known, a 3D model associated with a geographic area can be generated. This 3D model may include information such as the location of surfaces of objects depicted in the street level images. The computing device 230 can access this 3D model to provide location information to one or more client devices, such as computing device 210.
[0063] Database 238 may also include an object tagging database 246, which provides text tags or other identification information (color, texture, geographic identifier, etc.) of geographic objects depicted in street-level images from street-level image database 242, as well as corresponding object location data of geographic objects stored in object location database 244. The object tagging database may include text tags, such as... Figure 1 The building text tags 122, 124 and road text tags 126 are used. Information stored in the object location database 244 and the object tag database 246 can be combined to create a 3D representation of the corresponding street-level panoramic image. In some examples, the created 3D representation can be stored in a 3D representation database 248. Each 3D representation stored in the 3D representation database 248 may have a corresponding panoramic image stored in the street-level image database 242.
[0064] In contrast to providing street-level images and corresponding 3D representations in low-bandwidth operating modes of services such as Street View within Google Maps, additional databases can also be included. Figure 6 The computing system 200 displays satellite imagery and corresponding 3D representations in a low-bandwidth operating mode when operating services such as Google Earth. For example, a satellite imagery database may be provided in addition to or as an alternative to the street-level imagery database 242. An object location database 244, an object tagging database 246, and a 3D representation database 248 may then store information related to the corresponding satellite imagery stored within the satellite imagery database.
[0065] While this disclosure has been discussed with reference to interactive high-resolution imagery—such as panoramic street level imagery and / or satellite imagery—it should be understood by those skilled in the art, using the disclosure provided herein, that the subject matter is equally applicable to any type of geographic imagery, such as imagery provided in virtual globe applications, oblique view imagery, or other suitable imagery.
[0066] It should be understood that the computer-executable algorithms described herein can be implemented using hardware, dedicated circuitry, firmware, and / or software that controls a general-purpose processor. In one embodiment, the algorithm is a program code file stored on a storage device, loaded into one or more memory devices, and executed by one or more processors, or is provided from a computer program product (e.g., computer-executable instructions) stored in a tangible computer-readable storage medium such as RAM, a flash drive, a hard disk, or an optical or magnetic medium. When using software, the algorithm can be implemented using any suitable programming language or platform.
[0067] The techniques discussed herein refer to servers, databases, software applications, and other computer-based systems, as well as the actions taken and the information sent to and from such systems. Those skilled in the art will recognize that the inherent flexibility of computer-based systems allows for a wide variety of possible configurations, combinations, and divisions of tasks and functionalities between and within components. For example, the 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.
[0068] While the subject matter has been described in detail with respect to specific exemplary embodiments, it should be understood that modifications, variations, and equivalents of such embodiments will be readily apparent to those skilled in the art upon acquiring the understanding of the foregoing. Therefore, the scope of this disclosure is illustrative rather than limiting, and it does not exclude such modifications, variations, and / or additions to the subject matter that will be readily apparent to those skilled in the art.
Claims
1. A computer-implemented method for providing an interactive digital map application in a bandwidth-constrained environment, comprising: A three-dimensional representation of a geographic area viewed by a user of an interactive digital map application is provided by one or more computing devices for display on the display of the computing device; The information within the interactive digital map application is automatically determined by the one or more computing devices to enable the user to access the current communication capabilities of the communication channels of the computing devices. Based on the determined communication capabilities, one or more versions of an image corresponding to the 3D representation are selected, wherein download information is provided for the one or more versions of the image, wherein the download information includes two or more values of a quantifiable parameter, each corresponding value being associated with a download and a different version of the image corresponding to the 3D representation; The selected downloaded information is provided by the one or more computing devices in the interactive digital map application for display; The one or more computing devices receive a user instruction requesting the download of a selected version of the image corresponding to the three-dimensional representation for display. The requested version of the image corresponding to the three-dimensional representation is downloaded by the one or more computing devices; and The requested version of the image corresponding to the three-dimensional representation is provided by the one or more computing devices for display.
2. The computer-implemented method according to claim 1, wherein, The quantifiable parameters associated with the download include one or more of the following: resolution version of one or more versions of the image corresponding to the three-dimensional representation, bandwidth, file size, download time, or download cost.
3. The computer-implemented method of claim 1 further includes the one or more computing devices recognizing a user request to operate the interactive digital map application on the computing device in a limited bandwidth operating mode.
4. The computer-implemented method according to claim 1, wherein, The three-dimensional representation of the geographic region includes a wireframe representation of the external features of geographic objects within the geographic region viewed by the user.
5. The computer-implemented method according to claim 4, wherein, The geographic objects provided as wireframe representations for display include one or more buildings or roads.
6. The computer-implemented method according to claim 4, wherein, The wireframe represents a structure constructed from three-dimensional point data of the geographic region obtained at the same time as the image of the geographic region.
7. The computer-implemented method according to claim 4, wherein, The three-dimensional representation of the geographic region includes text markers that identify one or more of the road names or building names.
8. The computer-implemented method according to claim 4, wherein, The imagery includes panoramic street level images of the geographic region, and wherein the wireframe represents a structure constructed from three-dimensional point data of the geographic region obtained at the same time as the panoramic street level images of the geographic region.
9. The computer-implemented method according to any one of claims 1 to 7, wherein, The images include satellite imagery of the geographic region.
10. The computer-implemented method according to any one of claims 1 to 8, wherein, The first version of the image corresponding to the three-dimensional representation includes a low-resolution version of the image, wherein the second version of the image corresponding to the three-dimensional representation includes a high-resolution version of the image, and wherein the download information is provided for both the low-resolution version and the high-resolution version of the image in the interactive digital map application.
11. The computer-implemented method according to claim 1, wherein, The current communication capability of the communication channel includes one or more of the following: download speed, channel capacity, signal bandwidth, or connection latency.
12. The computer-implemented method of claim 11, further comprising selecting one or more versions of the image corresponding to the three-dimensional representation for which download information is to be provided based on the determined communication capabilities.
13. A computing device, comprising: One or more processors; as well as One or more memory devices storing computer-readable instructions that, when executed by the one or more processors, cause the one or more processors to perform the method according to any one of claims 1 to 12.
14. A tangible, non-transitory computer-readable medium storing one or more computer-readable instructions, which, when executed by one or more processors, cause the one or more processors to perform the method according to any one of claims 1 to 12.
Citation Information
Patent Citations
Three-dimensional spatial information saving method, device, system and dispatching system
CN101719148A
Map viewer and method
CN103793452A
Use of banding to optimize map rendering in a three-dimensional tilt view
CN103959339A
Image processing method for electronic map
CN1204102A
Map data backup system
JP4103685B2