DISPLAYING REPRESENTATIVE IMAGES IN A VISUAL MAPPING SYSTEM
Embodiments provide systems and methods for generating a street map that includes a position identifier that identifies a location on the street map. The method and system may also generate and display a plurality of images representative of the location of the position identifier. A user may interact with a position identifier or one of several scroll icons to view images of other locations on the street map and/or to obtain driving directions between two locations.
This application is a continuation of U.S. patent application Ser. No. 14/102,128, filed Dec. 10, 2013, which is a continuation of U.S. patent application Ser. No. 14/065,328, filed Oct. 28, 2013, which is a continuation of U.S. patent application Ser. No. 12/551,405, filed Aug. 31, 2009, which is a continuation of Ser. No. 12/536,407, filed Aug. 5, 2009, which is a divisional of Ser. No. 11/396,369, filed Mar. 31, 2006, now U.S. Pat. No. 7,587,276, which is a continuation-in-part of U.S. patent application Ser. No. 11/045,007, filed Jan. 26, 2005, now U.S. Pat. No. 7,359,797, which is a continuation-in-part of U.S. patent application Ser. No. 10/809,049, filed Mar. 24, 2004, now U.S. Pat. No. 7,155,336, each of which is hereby incorporated herein by reference.
BACKGROUNDVarious online directories and map services, such as online Yellow Pages and MapQuest®, are available for users to locate and find information about businesses and services and directions to those businesses. Typically, when searching an online business directory, a user is prompted to enter selection criteria, such as the general geographic location (e.g., state and city), and the type or category of business (e.g., restaurant) that the user is looking for, or perhaps the name of the business itself, if known. In response, listings for each of the businesses that meet the user's selection criteria are displayed. Each listing typically identifies the name, address, and phone number of the listed business. Further, each listing may be associated with icons that the user may click to obtain further information about the business, such as a map of an area around the business and driving directions to the business.
Current online directories, however, do not provide listings that can be displayed with an image of the physical location of the business featured in the listing. While some aerial or rooftop images are available online in correlation with addresses, such aerial or rooftop views are of limited value because they do not show, for example, business buildings in the manner actually perceived by customers (i.e., at the ground or street level). Additionally, online maps do not provide images of physical surroundings associated with points on a map. More particularly, what is lacking is an automated system and method for collecting and displaying images of objects at geographic locations, such as business storefronts and street views of structures, in online directories and maps.
BRIEF SUMMARYThe present invention provides methods and systems whereby online maps, such as street maps, may be displayed along with images of building and other objects at physical locations represented by those maps. Thus, a user accessing an online map prepared using embodiments of the present invention can visually appreciate the businesses, buildings, streets, and also perhaps areas surrounding a location.
In accordance with one aspect, a computer-readable medium having instructions stored thereon that directs a computing system to display a map and images representative of a location on that map is provided. A position identifier that includes a pair of scroll icons may be displayed on the map to identify a particular location. For that location, a plurality of images may be displayed to illustrate the physical surroundings (e.g., buildings) at the location identified by the position identifier. Those images may be displayed in a dual filmstrip-type view, one on each side of a graphical representation of a street. The orientation of the dual filmstrip-type view may be such that it illustrates the images on either side of a street. Alternatively, the dual filmstrip-type view may provide a montage, panoramic, or any other type view, of objects surrounding the location identified by the position identifier. A set of scroll icons may be positioned at either end of the filmstrip-type views. Those scroll icons may be directionally correlated with the scroll icons displayed on the position identifier and interaction with any of the scroll icons will have an effect on the correlated scroll icons.
In accordance with another aspect, a method for providing directions between a first location and a second location is provided. The method determines a route between the first location and the second location and displays direction details for the route. The displayed direction details include links to an image representative of the locations included or otherwise referenced in the driving directions. A map may also be displayed that graphically emphasis the driving directions.
In accordance with another aspect of the present invention, a computer system having a computer-readable medium including a computer-executable program therein for performing a method for providing information regarding a location is provided. The method performed by the computer system selects a location and displays, on a graphical user interface, a position identifier on a street map at the selected location. A plurality of images associated with the selected location are also displayed on the graphical user interface. The plurality of images may be displayed in a graphical order. For example, they may be arranged such that they are represented on either side of a representation of a street. Alternatively, the images may be images only along one side of the street.
Accordingly, an online map system of the present invention permits the user to visually appreciate not only street maps and images of various locations within the street maps, but also images surrounding those locations. A user may also interact with the scroll icons to obtain new images thereby virtually moving up or down the street.
The foregoing aspects and many of the attendant advantages of this invention will become more readily appreciated as the same become better understood by reference to the following detailed description, when taken in conjunction with the accompanying drawings, wherein:
The present invention includes systems and methods for collecting and displaying images of objects (including, without limitation, buildings, structures, and store fronts) obtained at different geographic locations. The images may be displayed in association with corresponding listings in online directories. The following detailed description provides several exemplary implementations of the invention. Although specific system configurations and flow diagrams are illustrated, it should be understood that the examples provided are not exhaustive and do not limit the invention to the precise forms disclosed. Persons having ordinary skill in the field of digital data processing will recognize that the computer components and arrangements described herein may be interchangeable with other components and arrangements and that the process steps described herein may be interchangeable with other steps or their combinations, and still achieve the benefits and advantages of the present invention.
It should also be noted that while the following description is provided in the context of maps with graphical images of locations included in a map, and an online business directory (e.g., Yellow Pages) at which each business listing is associated with an image of its geographic location, the present invention can be applied to create and publish online residential directories (e.g., White Pages) in which each individual listing is associated with an image of its geographic location (e.g., an image of a house). Therefore, the term “Yellow Pages” as used herein may refer to other types of directories as well, including White Pages.
The computing device 18 includes a processor 19 in communication with an input/output interface 20 and a memory 22. The input/output interface 20 enables the computing device 18 to communicate with various input and output devices. Input devices may include the camera 10, the GPS receiver 12, the range finder 14, the rate of travel monitor 25, and the rate of turn monitor 27, as illustrated, plus any other computing elements that provide input signals to the computing device 18, such as a keyboard, mouse, external memory, disk drive, etc.
Output devices 23 may include typical output devices, such as a computer display, printer, facsimile machine, copy machine, etc. The processor 19 is configured to operate in accordance with computer program instructions stored in a memory, such as the memory 22. Program instructions may also be embodied in a hardware format, such as one or more programmed digital signal processors. The memory 22 may also be configured to store various data (e.g., image data, geographic location data, and speed data) collected and processed, as will be more fully described below. In some applications, the data obtained by the camera 10, the GPS receiver 12, and the range finder 14 (if provided) are sent directly to a hard drive (forming part of the memory 22) of the computing device 18 for storage, instead of being first stored in video tapes or removable disks. The memory 22 may include, for example, a lookup table database 24 that stores address data in correlation with geographic locations (e.g., longitude and latitude coordinates). Suitable lookup table databases are routinely used for the purpose of creating maps and are commercially available. Those having ordinary skill in the art of computers will recognize that a wide selection of commercially available components and arrangements can be used to construct a system, such as the system 16 illustrated in
Referring back to
As the camera 10 captures images of objects at geographic locations (e.g., businesses), the GPS receiver 12 records the geographic locations (e.g., longitude and latitude coordinates) while preferably time-stamping the recorded location data. The camera 10 and the GPS receiver 12 may be positioned or programmed relative to each other (e.g., by offsetting the distance therebetween) such that the geographic location determined by the GPS receiver 12 can be treated as that of the camera 10 itself. The rate of travel monitor 25, if used, records the rate of travel of the vehicle 9 as data is being collected while preferably time-stamping such information. As discussed below, the rate of travel information may be used to assist in filtering images or in determining the geographic coordinates of an image. Similarly, the rate of turn monitor 27, if used, records the degree of any turns made by the vehicle 9 as data is being collected while preferably time-stamping such information. For example, the rate of turn monitor 27 may be a gyroscope mounted on the vehicle 9, and the resistance incurred by the gyroscope during a turn may be used to calculate the degree of the turn made. Calculating and recording the degree of a turn may be used in conjunction with the rate of travel information recorded by the rate of travel monitor 25 to determine the geographic coordinates of an image if GPS data is not available.
The range finder 14, if used, records the distance to an object being viewed by the range finder 14 while preferably time-stamping such distance information. The range finder 14 may also be positioned or programmed relative to the camera 10 and the GPS receiver 12 such that the distance information determined by the range finder 14 can be treated as that of the camera 10. Any suitable GPS receiver and range finder may be used, as will be apparent to one skilled in the art. For example, some high-precision GPS receivers suitable for use in the present invention are available from Trimble Navigation Ltd. of Sunnyvale, Calif. (trimble.com). A line of laser range finders suitable for use in the present invention is available from Measurement Devices Ltd. (MDL) of Scotland, U.K. (mdl.co.uk).
The range finder 14 is useful in offsetting the distance between the GPS receiver 12 (geographically coinciding with the camera 10 and the range finder 14) and the object being imaged by the camera 10, so as to more accurately determine the precise geographic location of the object being imaged. Specifically, referring to
Sometimes the vehicle 9 must travel on inclines. Since buildings are built perpendicular to the earth, with the camera 10 being mounted level to the vehicle 9, the images captured by the camera 10 appear tilted. To overcome this problem, a gyroscope can be used with the camera 10 mounted on a gimbal. A suitable gyroscope-based mounting system (or a stabilizer) can be obtained from Kenyon Laboratories LLC of Essex, Conn. (ken-lab.com). The gyroscope-based mounting system, in an embodiment of the present invention may use the same gyroscope used to gather data for the rate of turn monitor 27. Alternatively, separate gyroscopes may be used. Another approach for solving the problem of images appearing tilted is to use a digital inclinometer to track an angle of the camera 10 relative to a level, and then rotate the images in software during post-capture processing to compensate for the measured tilt-angles.
To collect images and geographic locations of numerous businesses, many vehicles may be used, each equipped with a camera and a GPS receiver. In order to efficiently collect images and geographic location data of businesses in remote or isolated areas, certain utility vehicles, such as U.S. Postal Service delivery vehicles or taxicabs, may be requested to carry a data collection system of the present invention.
Referring back to
Alternative methods of associating image data with geographic locations are encompassed by the invention. For example, instead of relying on synchronization of the clocks 11, 13, 15, and 21 of the respective devices, the devices may be coupled to each other so that, for example, image taking of the camera 10 instantaneously triggers the GPS receiver 12 and the range finder 14 to record the geographic location and the distance information at that location, and the data are recorded together as a unit. Alternatively, geographic location recording of the GPS receiver 12 (or another controller triggered by the geographic location recording of the GPS receiver 12) triggers the camera 10 to take an image. For example, the longitude/latitude coordinates of selected businesses whose images are to be taken (available from the lookup table database 24) may be input to the GPS receiver 12 coupled to the camera 10. Each time the GPS receiver 12 determines it is located in front of a selected business, the GPS receiver 12 records the geographic location and triggers the camera 10 to record an image of the business. In this way, only those images capturing listed business addresses will be taken. The foregoing description is not exhaustive, and other methods for associating images with geographic locations may be used, as will be apparent to one skilled in the art.
While components of the system 16, such as the camera 10, the GPS receiver 12, the range finder 14, the rate of travel monitor 25, and the computing device 18, may be individually configured and assembled as described above, alternative systems may employ various commercially available geographic information systems (GIS) that are typically used for surveying and mapping. Typically, a geographic information system is a combination of elements (including both hardware and software) designed to collect, manipulate, store, and display geographic data. For example, Red Hen Systems, Inc., of Fort Collins, Colo. (redhensystems.com), offers add-on GPS receivers sold under the trademark of VMS 200™ and VMS Mobile™ that can be used with an off-the-shelf digital video camera to embed GPS data on the video recording. Similarly, Measurement Devices Ltd. (MDL) of Scotland, U.K. (mdl.co.uk), offers an add-on GPS module sold under the trademark of VideoAce® that can be combined with any video camera to collect video still images and movies that are referenced with GPS data. Using these devices, one can readily collect a series of images that are referenced with their geographic locations (longitude and latitude coordinates). Note that use of these systems combining the GPS receiver and the camera eliminates the need to synchronize clocks in various components (the camera 10, the GPS receiver 12, etc.).
According to one aspect of the present invention, only a subset of the entire set of obtained images (video image frames, or still images) may be selected and used so as to minimize both gaps and overlaps. For example, when a video camera is set to take 30 frames per second, only frames every X feet (depending on the rate of travel of the video camera) are selected to minimize both frame gaps and frame overlaps. Alternatively, or in addition thereto, every X frame may be selected to further minimize both frame gaps and frame overlaps. Still further, in another embodiment, a subset of images may be obtained by comparing adjacent images and retaining those images that are sufficiently different, based upon a predetermined threshold, from one another.
Sometimes, signals from the GPS satellites may become too weak to permit the GPS receiver 12 to calculate its geographic location. For example, the GPS receiver 12 may not function well when it is placed without a clear view of a wide sky (e.g., in cities with tall buildings, under trees with a thick canopy, etc.). Also, there may be limitations on the logging rate of the GPS receiver 12 (e.g., most GPS receivers currently permit only one geographic location recordation per second). In accordance with the present invention, interpolation of the geographic location information, rate of travel information and rate of turn information, if gathered, is used to overcome the GPS signal loss issues and/or the limitations on the GPS logging rate. Specifically, using any two geographic locations recorded by the GPS with time-stamps (“logged locations”), the rate of travel (if unknown), and also the direction of travel can be calculated. Then, the geographic location (e.g., longitude and latitude coordinates) of any point between the two logged locations can be calculated using interpolation based on the rate of travel and the direction of travel. Additionally, if rate of turn information was gathered, any turns between the two geographic locations recorded by the GPS may be determined. Additionally, the logged locations can be overlaid onto existing maps showing streets, which define feasible regions (routes) of image capture along which the vehicle 9 carrying the camera 10 could have passed. In other words, the streets indicate feasible (valid) paths along which the geographic locations calculated based on interpolation can fall. For example, if a map shows a building, any interpolated geographic location (between two logged locations) that falls “inside” the building is invalid as showing the possible location of the camera 10 because the vehicle 9 carrying the camera 10 could not have driven “through” the building. Therefore, by overlaying the logged locations to existing maps of streets, which provide feasible regions to verify the validity of any geographic location calculated based on interpolation, one can reduce or eliminate interpolation errors. Accordingly, using the interpolation method, perhaps as assisted by the map-overlaying method, a geographic location of any image can be calculated even when such a geographic location cannot be directly obtained using the GPS receiver 12.
In some cases, it is preferable to use a GPS receiver having a relatively higher refresh rate so as to reduce the need for interpolation. For example, while most commercially available GPS receivers currently permit only one geographic location recordation per second, a GPS receiver and its associated software may be configured to obtain more than one geographic location recordation per second.
Next, as indicated in block 38 of
After the series of images are correlated with addresses in block 38, the address-correlated images may be used in publishing an online directory 40 at which each listing 72 (
Referring now to
In block 56, each image is stored in correlation with its address. Note that, if a specialty mapping/surveying device that produces image data already embedded with GPS data is used, as described above, then blocks 50-53 may be replaced with a single block 54 at which such GPS data-referenced image data is received. As before, at this time, only a subset of the entire set of images (or image frames) captured by the camera 10 may be selectively received to minimize gaps and overlaps, and also, any geographic locations not directly obtainable from the GPS receiver 12 may be calculated based on interpolation. Thereafter, as before, the images are correlated in block 55 with addresses in reference to the lookup table 24, and the address-correlated images are stored at block 56.
Regardless of whether the system utilizes the process described with respect to blocks 50-53, or utilizes images already embedded with GPS data, as illustrated by block 54, the images may be correlated to addresses based on a boundary defined for each address. In one embodiment, address coordinates may be estimated using an algorithm, such as the algorithm supported by “Geocoding Server” available from MapQuest™. Alternatively, the total number of addresses on one side of a block may be determined and boundaries defined for each address that equally divide the block between addresses. In another embodiment, the block may be geographically divided based on an estimated size of the structures at each address. The estimated size of the structure and the estimated location of the address may be determined based on the number of addresses on a block in conjunction with the types of businesses, and/or number of businesses, occupying those structures. Business types may be obtained from a listings database 67 (
Referring to
A boundary defined for an address may be any shape and size, and the example of a rectangle illustrated in
Returning to
Address-correlated images, as described above, may be published in an online directory, or displayed as additional mapping information, as described in more detail below.
The Yellow Pages system 60 depicted in
The Yellow Pages system 60 as illustrated includes both a Yellow Pages server 63 having an operating system 64 and a search engine 65, and a database server 66 having a listings database 67 and an images database 68. The Yellow Pages server 63, in this example, is a Web page server that supports an online Yellow Pages Web site on which each listing (e.g., business) can be displayed together with an image correlated with the listing. The Yellow Pages server 63 communicates text and graphics organized as a Web page using, for example, hypertext transfer protocols, in response to requests and search queries received from the client systems 61. The Yellow Pages server 63 also conducts searches of the databases 67 and 68 in the database server 66. The administration and overall operation of the Yellow Pages server 63 is controlled by its operating system 64, while its search function is performed by the search engine 65 in cooperation with the database server 66.
The database server 66 maintains the listings database 67 and the images database 68 that the Yellow Pages server 63 uses to respond to user requests and search queries. The listings database 67 contains information generally found in conventional Yellow Pages in a searchable form, i.e., numerous listings (business names together with their addresses, phone numbers, business type, etc.) searchable by their business names, addresses, phone numbers, business types, etc. The listings database 67 may also contain information such as the business hours, a brief description or profile, customer reviews, etc., of each business listed. The images database 68 contains digitized images of the businesses in correlation with the business addresses stored in the listings database 67. The database server 66 is configured to receive search instructions from the search engine 65 and return search results from the listings database 67 and the images database 68. Those of ordinary skill in the art will recognize that the Yellow Pages server 63 and the database server 66 will each typically employ a memory and main processor in which program instructions are stored and executed for operation of the servers.
The Yellow Pages system 60 enables a user to search and view online Yellow Pages in which each listing (e.g., business) is displayed with a representative image of an object (e.g., business building) taken at the geographic location of the business. Additionally, the online Yellow Pages may also include a street map identifying the location of each listing.
The listings 707 matching the search criteria are presented in the listings page 700. Each listing includes the name of the business, such as “Sal's & Carmine Pizza” 713, the address of the business, such as “2671 Broadway, New York, N.Y. 10025” 723, the phone number of the business, such as “(212) 663-7651” 725, a representative image 727 of the business, and the distance 729 of the business from the user specified location. The display of a business listing is described in more detail with respect to
The listings 707 may be organized based on any number of criteria. For example, the listings 707 may be organized by distance from the user specified location or alphabetically by business name. As will be appreciated by one of skill in the relevant art, the listings may be organized in any manner. The listings page 700 may also be configured to present all results matching the search criteria or a subset of the results with a link to additional pages containing additional matching results.
The listings page 700 may also include a street map 709 identifying the user specified location 711, and the location of each the businesses identified in the listing 707. For example, “Sal's & Carmine Pizza” 713 included in the listing 707 as the first item is identified in the street map 709 with a corresponding graphical icon, or identifier 715. The identifier may by the number of the business as included in the listing 707, an image of the structure in which the business is located, the trademark of the business, or any other identifier of the business.
The identifier 715, as well as each of the business names and corresponding images in the listing 707, may be interactive. For example, if a user positions a pointing device, such as a mouse pointer, over the business name or image included in the listing 707 the corresponding identifier included in the map 709 may be emphasized. Likewise, if a user positions a pointing device over an identifier, the corresponding business and image in the listing 707 may be emphasized. An identifier or listing may be emphasized by highlighting, changing the color, changing the size, changing the shape, or performing any other form of visual alteration on the identifier, image, or business name to thereby distinguish it from other material included on the listings page 700. For example, if a user positions a mouse pointer (not shown) over the business name “Colosseo Romano Restaurant Pizzeria Inc.” 717, or over the corresponding image 719, the identifier 721 on the map 709 may be highlighted, thereby visually distinguishing the identifier 721 from the street map 709 and the other identifiers included on the street map 709.
In addition to the business names, corresponding images, and identifiers being interactive in that they may be emphasized, selection of any one of the business name, corresponding image, or identifier may result in a listing detail page 800 (
For a selected business, a variety of information may be included in the listing detail page 800. For example, information such as the business name 801, business address 803, business telephone number 805, the representative image for the business 807, and a street map 809 identifying the location of the business may be displayed. Initially, the representative image may be the same representative image presented in the listings page 700 for the address. However, as described below, through interaction with the listing detail page 800, a user may alter the image that is presented as the representative image. As an example, for the representative image 807, the listing detail page 800 may include a “zoom in” icon 810, a “walk to the left” icon 813, and a “walk to the right” icon 815, any of which may be selected by a user to request a specific operation through the browser application 69 of the client system 61. Selection of the “walk to the left” icon 813 or “walk to the right” icon 815 may result in a different image, such as the geographically adjacent correlated image, being presented as the representative image.
A secondary group of correlated images 811 may also be included in the listing detail page 800 identifying other images that have been correlated with the address of the business 801 identified on the listing detail page 800. In one example, the secondary group of images may be presented in a filmstrip-type view by ordering and displaying the images in a geographic sequence. For example, the filmstrip-type view of secondary images 811 may include six images 817, 819, 821, 823, 825, and 827. However, any number of images may be displayed. Additionally, in another embodiment, the images may be ordered and displayed based on the time at which the images were taken. Additionally, the images presented as the secondary images may be selected based on the season. For example, if the current season is fall, the secondary images presented may be images correlated with that address which were taken in the fall.
Each of the secondary group of images 817-827 may be interactive in that a user may position a pointing device, such as a mouse pointer, over one of the images and that image will temporarily replace the representative image 807. Additionally, the secondary group of images 811 may also include a “walk to the left” icon 832 and a “walk to the right” icon 834, allowing a user to view additional correlated images to the left or right of the business identified in the listing detail page 800. For example, if a user selects “walk to the right” icon 834, the next geographic image correlated with the business would be displayed in the secondary set of images 811. Still further, the secondary group of images 811 may include a “scroll to the left” icon 831 and a “scroll to the right” icon 833, allowing a user to view the next set of correlated images to the left or right of the currently displayed set of images. For example, if a user selects “scroll to the left” icon 831, six new images are displayed as the correlated images 811. The six new images displayed are the six images that are geographically to the left of the current set of displayed correlated images.
Still further, in an embodiment of the present invention, a user may specify, or vote, which image of the secondary group of images 811 they perceive as being the appropriate representative image for the business identified in the listing detail page 800. For example, a user may specify that image 823 is the appropriate representative image for the business “World Famous Ray's Pizza” 801 because the image includes a centered view of the structure containing “Ray's Pizza.” Such selection, or voting, may be accomplished by a user selecting (or clicking) the best image box 835 under the image 823. In response to a selection by a user of a representative image, the system 60 stores that image as the user's own personal choice of the representative image for that business at that address. If the user, at a later time, uses the system 60 and obtains information for “World Famous Ray's Pizza,” either in a listings page 700 or listing detail page 800, the user selected image will be presented as the representative image. Additionally, the user's vote for that particular image as the best image is saved with respect to that image and the corresponding business address and used to determine what image should be used as a default representative image for the business. A default representative image is provided as the representative image for a business to users who have not selected a representative image for that business. As discussed below in more detail, with respect to
In an embodiment of the present invention, a user may also provide information and images with respect to a business address via the listing detail page 800. For example, a user may upload his or her own images that may be correlated with a particular business or address. In particular, a business owner may upload an image of the store front that may be associated with the owner's business and provided as the default representative image. In addition to images being provided and correlated with a particular business, other information, such as menus, hours of operation, employee information, and other types of business-related information may also be provided (e.g., uploaded) and associated with a particular business. Such other business-related information may be included on the listing detail page 800.
Also included in the listing detail page 800 may be a link 839 to similar types of businesses. For example, the system 60 may determine from the listings database 67 that “World Famous Ray's Pizza” 801 is of a business type “pizza” and thereby provide a link 839 to other businesses of the type “pizza.”
In addition, links 837 to businesses nearby (e.g., on the same street) the selected business may also be provided in the listing detail page 800. The links 837 to nearby businesses may include the business name, business address, telephone number, and optionally, the representative image for the business. The links 837 may be divided up to illustrate links 841 to businesses on the same side of the street as the current business and links 843 to businesses on the other side of the street.
Alternatively, or in addition thereto, the listing detail page 800 may include a link, such as “what's on the other side of the street” (not shown), that if selected will provide a user with information and images for the businesses on the other side of the street. Additionally, such a link may present a full image of the other side of the street. Such an image helps to give additional context to the location of the business for which information is provided in listing detail page 800. Alternatively, a link such as “See other business on this street” (not shown) may be provided. Selection of this link would provide a user with information about businesses on the current street, not just on the other side of the street. Still further, a link to video of the neighborhood where the business is located may also be provided. The video provided in response to selection of such a link may be, for example, a portion of the video data gathered by the vehicle 9 (
Additionally, a second arrow 90 may be displayed to point to the address (business) at the center of the displayed image 89 (“Bob's Barbershop” 105 in the illustrated example). In this embodiment, the listing information (the business name, address, phone number, business hours, etc.) of the business that the second arrow 90 points to may be displayed, as in box 91. Thus, as the user scrolls the view to the right (or to the left), the listing information of a different business (as centered in the image) is sequentially displayed so that the user can appreciate what types of businesses are located along the street. Also, as the user scrolls the view to the right (or to the left), the street number range displayed in box 92 is updated to reflect what numbers are shown in the image at any given time. For example,
In
It is emphasized that
While it has been described that address-correlated images are initially stored and retrieved based on a user's inquiry, it is possible to store images in association with geographic locations only, and then correlate an address entered or requested by a user with a particular image later, for example, on-the-fly at the time the user specifies an address.
Upon receipt of a search term at block 1003, at block 1005, the location and search range are determined. The location may be a user-specified location for which the search is to be performed or determined based upon user preferences, such as the user's home address. The search range may also be specified by the user and may be any predetermined range for which a search is to be performed. Once the location and search range have been determined, at block 1007, a map, such as a street map, of the identified location is displayed in a graphical user interface, such as a Web page. In addition to displaying a map of the location at block 1007, at block 1009, a search routine 1000 identifies a listing contained in the listings database 67 that matches the received search terms. At decision block 1011, it is determined whether a user has previously selected a representative image for the identified listing. As discussed above, a representative image may be specified by a user selecting one of a plurality of correlated images for a specific listing as the appropriate representative image for the listing. Any such selection is stored for that particular user as being that user's specified representative image for that address. If it is determined at decision block 1011 that there is a user-specified representative image, at block 1013 that user-specified representative image is selected. However, if it is determined at decision block 1011 that there is no user-specified representative image, at block 1015, the default representative image assigned to the identified listing is selected. A default representative image may be assigned based on either a plurality of votes from other users selecting a representative image for a particular listing, based on the geographic coordinates of the address itself and the correlated image with the closest matching geographic coordinates, or based on selection by the business owner, to list a few examples.
Upon selection of a representative image at either block 1013 or block 1015, at block 1017, a position identifier is associated with the listing. A position identifier may be the number associated with a listing as it is presented to the user or any other identifying criteria such as the representative image or an aerial image of the structure at that address. At block 1019, the identified address information, position identifier, and selected representative image are each displayed to the user via a graphical user interface, such as a Web page. The address information and corresponding image may be displayed adjacent to one another as a listing, and the position identifier may be presented in the map displayed at block 1007 at a position where the business is located within the map. For example, referring back to
At decision block 1021, it is determined whether there are any additional listings that match the search terms received at block 1003 that are within the range identified at block 1005. If it is determined at decision block 1021 that there are additional matches, the routine 1000 returns to block 1009 and continues. However, if it is determined at decision block 1021 that there are no additional matches, the routine completes, as illustrated by block 1023.
Upon receipt of an address at block 1103, at block 1105, information associated with the address, such as business information, and images previously correlated with the particular address are obtained from the listings database 67 and the images database 68. At decision block 1107, it is determined whether a user has previously selected a representative image for the particular address for which a selection was received. If it is determined at decision block 1107 that there is a user-specified representative image, at block 1109, that user-specified representative image is selected for the particular address. However, if it is determined at decision block 1107 that there is no user-specified representative image, at block 1111, a default representative image is selected. At block 1113, the selected representative image, associated information, and other correlated images for the particular address are displayed in a single graphical user interface, such as a Web page. For example, referring back to
As discussed above, defining boundaries for an address and correlating all images geographically-located within a defined boundary may result in multiple images being associated with the same address. Those correlated images may be displayed based on their geographic location, the time at which they were taken, based on the season, etc., thereby resulting in what appears to be an overall filmstrip-view of the block on which the selected address is located. The filmstrip-view of images may include the selected representative image that is also displayed as a larger image in the same graphical user interface.
In addition to displaying the selected representative image, associated information, and other correlated images, at block 1115, links to addresses near the selected address may also be provided. The links to nearby addresses may be interactive, and selection of one of those links may result in the routine 1100 being performed for the address identified by the selected link and ultimately a new graphical user interface being provided, containing information for the selected address, a representative image and other correlated images.
At decision block 1119, it is determined whether the selected address received at decision block 1103 is a business address. Such a determination may be made by reviewing the address contained in the listings database 67. If it is determined that the selected address is not a business address, the address selection routine 1100 may proceed to the voting subroutine illustrated by block 1127 and described in more detail with respect to
However, if it is determined that the selected address is a business address, at block 1121, the type of business address is determined by obtaining such information from the listings database 67. Upon determination of a business type, at block 1123, information about similar businesses and links to those businesses may be provided. For example, a single link to similar businesses may be provided in a detail view, such as the listing detail page 800 (
Upon address coordinate adjustment at block 1307, at block 1309, an address boundary subroutine is performed, as described in more detail below with respect to
At block 1409 it is determined which of the identified addresses are adjusted coordinate addresses, and for each adjusted coordinate address at block 1409, an image boundary is defined based on the type of object at the address. At block 1411, for the remaining addresses, i.e., the addresses that are not adjusted coordinate addresses, the image boundaries are defined adjacent to the defined address boundaries defined at block 1409. The image boundaries defined at block 1411 are defined and positioned based on the type of object located at the address and based on the boundaries defined in block 1409. For example, referring back to
In addition to generating online directories, address-correlated images, or images with geographic information associated therewith, as described above, embodiments of the present invention may also be used to generate map views of geographic areas.
The mapping system 2560 depicted in
The mapping system 2560 as illustrated includes both a mapping server 2563 having an operating system 2564 and a search engine 2565, and a database server 2566 having a listings database 2567, an images database 2568, and optionally a map database 2570. The mapping server 2563, in this example, is a server that generates content corresponding to maps of geographic areas that can be displayed together with images correlated with specific locations included within the displayed map. In an illustrative embodiment, the mapping server 2563 communicates text and graphics organized as a Web page using, for example, hypertext transfer protocols. The mapping server 2563 also conducts searches of the listings databases 2567, images database 2568, and the map database 2570 in the database server 2566. The administration and overall operation of the mapping server 2563 is controlled by its operating system 2564, while its search function is performed by the search engine 2565 in cooperation with the database server 2566.
The database server 2566 maintains the listings database 2567 and the images database 2568 that the mapping server 2563 uses to respond to user requests and search queries. The listings database 2567 contains information generally found in conventional Yellow Pages in a searchable form, i.e., numerous listings (business names together with their addresses, phone numbers, business type, etc.) that are indexed and searchable by various search criteria. The listings database 2567 may also contain information such as the geographic coordinates of the business location, the business hours, a brief description or profile, customer reviews, etc., of each business listed. The images database 2568 contains digitized images of the businesses in correlation with the business addresses (i.e., street addresses) and/or geographic coordinates stored in the listings database 2567. The map database 2570 includes digitized maps of geographic regions that have corresponding images stored in the images database 2568. In an alternative embodiment, the map database 2570 may be omitted and street maps may be obtained from third party map providers, such as MapQuest®, and used with embodiments of the present invention.
The database server 2566 is configured to receive search queries from the search engine 2565 and return search results from the listings database 2567, the map database 2570, and the images database 2568. Those of ordinary skill in the art will recognize that the mapping server 2563 and the database server 2566 will each typically employ various computing components for storing and executing program instructions for operation of the servers.
The mapping system 2560 enables a user to search and view maps (e.g., street maps) of geographic locations in which some or all of the structures surrounding the streets on the map can be represented graphically using an image (e.g., business building) taken at the geographic location of the business that is correlated with the address of the geographic location.
The mapping system 2560 may also provide in the map page 1500 a representative image 1505 of the search location and secondary images 1507A-1507H surrounding the search location. As discussed below, the position identifier 1509, the representative image 1505, and the secondary images 1507A-1507H are interrelated and interaction with any one of the position identifier 1509, representative image 1505, or secondary images 1507A-1507H may result in a change to the others.
The position identifier 1509 may include scroll icons 1511, 1512 that may be selected by a user to move the position identifier 1509 in a particular direction along a street displayed on the street map 1501. The scroll icons 1511, 1512 are oriented around the position identifier so that they are parallel with the street on which the position identifier 1509 is located. For example, if the position identifier is positioned on a street that runs north and south, the scroll icons will point north and south, parallel with the direction of the street. Selection of the scroll icon that is pointing north will result in the position identifier moving in the northward direction along the street. The representative image 1505 and secondary images 1507A-1507H will automatically be adjusted to display a representative image and secondary images of the new location of the position identifier. The scroll icons 1511, 1512 may be displayed in accordance with a known or perceived path of motion. Additional scroll icons (not shown) may also be displayed if a user has additional directions of travel (e.g., if the specified location corresponds to an intersection).
In the example illustrated in
The secondary images that are nearby or correlated with the searched for location may be presented in a single or dual filmstrip-type view 1508. The images within the dual filmstrip-type view 1508 may be further organized according to geographic location surrounding a street on which the search location is geographically positioned. For example, the search location “1000 Boren Ave., Seattle, Wash.” has a representative image 1505 and a filmstrip-type view 1508 of secondary images 1507A, 1507B, 1507C, and 1507D that are on the same side of the street representation 1507 “Boren Ave” as the representative image 1505. As can be seen, the secondary image 1507C is also the representative image 1505. Secondary images 1507E, 1507F, 1507G, and 1507H are displayed in a filmstrip-type view 1508 on the opposite side of the street representation 1507. As will be appreciated, the dual filmstrip-type view may represent any collection of secondary images, and the dual filmstrip-type view of images geographically organized on opposite sides of a street is provided only as an example. For example, the dual filmstrip-type view of secondary images may represent only images on one side of the street, a montage of images surrounding the search location or representative of the search location, a panoramic view of the search location, a collection of images representative of historical markers near the search location, etc. Still further, a user may select the organization type for the dual filmstrip-type view of secondary images.
Also included in the map page 1500 are scroll icons 1513, 1515, 1517, 1519. Similar to interaction with the scroll icons 1511, 1512, interaction with any of the scroll icons 1513, 1515, 1517, 1519 results in the position identifier 1509, the interrelated representative image 1505, and the secondary images 1507A-1507H being adjusted. In an illustrative embodiment, the scroll icons 1513, 1515, 1517, 1519 can be directionally correlated with the orientation of the scroll icons 1511, 1512. For example, scroll icons 1515, 1517 can be directionally correlated to scroll icon 1511 such that interaction with one will result in the retrieval of new images in the direction of orientation of scroll icon 1511. In one embodiment, the scroll icons 1511, 1512, 1513, 1515, 1517, 1519 may be graphically distinguishable to identify various relationships among the icons and/or the degree to which the other displayed content will be manipulated. For example, scroll icons 1511, 1515, 1517 may be one color, in this example black, to identify their respective relationships and scroll icons 1512, 1513, 1519 may be a different color, in this example white, to illustrate their respective relationships. Interaction with one of the black scroll icons 1511, 1515, 1517 results in a change to the position identifier 1509, the representative image 1505, and the secondary images 1507A-1507H in the direction illustrated by the other black scroll icons. Likewise, interaction with one of the white scroll icons 1512, 1513, 1519 results in a change to the position identifier 1509, the representative image 1505, and the secondary images 1507A-1507H in the direction illustrated by the other white scroll icons. In another example, the scroll icons can have different sizes and/or ranges to graphically indicate how much adjustment will be made to the corresponding images and icons.
While the embodiment described herein utilizes black and white to graphically distinguish the scroll icons, any type of graphical representation may be used. For example, each set of related scroll icons may be displayed using hatching or different colors. Optionally, or in addition thereto, the related sets of scroll icons may each be displayed using different shapes.
Selection of either walk icon 1521 or walk icon 1523 results in a different image, such as the image geographically adjacent to the current representative image, being presented as the representative image 1505. In this example, if a user selects walk icon 1523, the corresponding image next to the current representative image 1505 (1507C), in this example secondary image 1507D, will be displayed as the representative image 1505. Additionally, if the current representative image is at the end of the filmstrip-type view, the filmstrip-type views 1508 of the secondary images will move in either direction and display a new set of secondary images, as if the user is walking down the street.
The scroll icons 1513, 1515, 1517, 1519 displayed at either end of the dual filmstrip-type views 1508 of the secondary images allow a user to view the next set of secondary images on either side of the street. If a user selects the black scroll icon 1517, a new set of secondary images, in this case four new images illustrated in
A user may also select the position identifier 1609 and reposition it to a new location within the street map 1601. In response, the mapping system 2560 will identify the images associated with the newly selected location on the street map 1601 and display those images as the representative image and correlated images. Referring to
Through interaction with the map page 1700, a user may change the image that is presented as the representative image 1705 and change the correlated images 1707A-1707H. Similar to the secondary images displayed in the listing detail page 800 (
A user may also interact with the map page 1800 to adjust the zoom size or position of the street map 1801 through interaction with the sliding scale 1833 or the compass 1831. The sliding scale 1833 allows a user to adjust the amount of geographic area represented in the street map 1801. If the user moves the sliding scale 1833 up, the amount of geographic area represented in the street map 1801 decreases (i.e., the street map 1801 is zoomed-in). Likewise, if the user moves the sliding scale 1833 down, the amount of geographic area represented in the street map 1801 increases (i.e., the street map 1801 is zoomed-out). Interaction with the compass 1831 results in the street map 1801 scrolling to the next geographic area in the direction of the interaction with the compass 1831. For example, if a user selects the “West” arrow on the compass 1831, the street map 1801 will scroll to display the geographic area to the west of the currently displayed geographic area.
The map page 1800 may also include a map location window 1803 showing a zoomed-out view of the geographic area that the street map 1801 is displaying. In one example, the street map 1801 may be represented in the location map 1803 by a box 1834. Likewise, the position identifier 1809 may be reproduced in the location map 1803 and represented by a second position identifier 1832. A user may interact with the second position identifier 1832, or box 1834, in the location map 1803 to reposition the location for which images and the street map 1801 are provided. For example, a user may select the position identifier 1832 or box 1834 and reposition it to a different location on the location map 1803. In response, the street map 1801 is updated to display the new location in a location window 1803. Additionally, the mapping system 2560 locates the images correlated with the new location and displays the representative image 1807 and the secondary images 1807A-1807H in the map page 1800.
In addition to receiving the direction details 2103 and the graphical representation of the route 2115 illustrating those direction details, the directions page 2100, similar to the map page discussed above, includes a position identifier 2109 with scroll icons 2111, 2112. As with above, a user may reposition the position identifier 2109 by selecting and moving the position identifier 2109 or selecting one of the scroll icons 2111, 2112. However, in one embodiment, the position identifier 2109 may be associated with the direction details 2103 such that a user may select one of the scroll icons 2111, 2112 and the position identifier will move along the route 2115 of the direction details. The representative image 2105 and secondary images 2107A-2107H associated with the location of the position identifier 2109 may also be displayed. Similar to the discussion above, the scroll icons 2111, 2112 of the position identifier 2109 are oriented such that they are parallel with the street on which the position identifier is located. Thus, if the user selects the white scroll icon 2112, the position identifier 2109 will move in the direction of that icon along the route 2115. The representative image 2105 and secondary images 2107A-2107H for the new location will be provided. If the position identifier reaches a turn in the route, the scroll icons 2111, 2112 will reorient to be parallel with the street following the turn that is included in the direction details 2103.
Additionally, each of the direction details 2103 may be user selectable. In response to a selection of a direction detail 2103, the position identifier 2109 will be repositioned to the selected location and a representative image and secondary images of that location will be provided to the user, as illustrated in
Upon determination of a surrounding range at block 2205, at block 2207, images associated with the search location are determined and obtained from the image database. At block 2209, a map, such as a street map, surrounding the search location is displayed to a user in a map page and a position identifier is represented on the displayed map to identify the search location. Additionally, a representative image associated with the search location is displayed and the secondary images surrounding and/or correlated with the search location are displayed to the user. As discussed above, the correlated images may be displayed in a dual filmstrip-type view illustrating images on either side of a street of the search location, images on the same side of the street as the search location, a montage of images representative of the search location (or the surrounding area), a panoramic view of the area surrounding the search location, etc.
At decision block 2213, a determination is made as to whether locations within the determined range that have correlated images are to be identified to the user. If it is determined at decision block 2213 that locations within the determined range that have correlated images are to be identified to a user, at block 2215, the locations within the determined range are identified. At block 2217, the locations with correlated images are represented on the street map by emphasizing the street corresponding to those locations. For example, referring back to
However, if it is determined at decision block 2303 that the request is not for an adjacent image, a determination is made at decision block 2305 as to whether the reposition request is a request for an adjacent set of correlated images. As discussed above, an adjacent set of correlated images may be requested by a user selecting one of the scroll icons located near the secondary images, or by interacting with either of the scroll icons of the position identifier displayed on a street map. If it is determined at decision block 2305 that the request is not for an adjacent set of images, at block 2307, the new location of the position identifier is determined. As discussed above, if a user repositions the position identifier to a new location, a new representative image and set of secondary images associated with the new location will be provided to the user.
If it was determined at decision block 2305 that the reposition request was a request for an adjacent set of correlated images, at block 2309, the position identifier displayed on the street map is repositioned at a location corresponding to the next set of adjacent images. At block 2311, the images associated with the location are obtained. At block 2313, the representative image is determined and displayed to a user and the secondary images surrounding that representative image are also displayed to the user. The map reposition routine 2300 completes at block 2315.
Upon determination of a route between two locations, a set of direction details is generated at block 2407. The direction details may include, but are not limited to, names of streets, direction of turns, driving length on each street, and total drive time. At block 2411, the direction details are displayed to the user identifying the route between the two locations. Additionally, on the street map, the streets that are to be driven may be emphasized using a bold, hatched, or any other type of graphical emphasis to display the route that is to be taken between the two locations. At block 2412, the map with the route emphasized is displayed to the user.
At decision block 2413, a determination is made as to whether images corresponding to one of the direction details, or along the route, are to be displayed. A representative image and secondary images may be displayed in response to a user selecting one of the driving direction details, interacting with the position identifier, or interacting with one of the scroll icons. If it is determined at decision block 2413 that a representative image and secondary images are to be displayed, at block 2415 a representative image and the secondary images for the selected driving direction detail, or location along the route, are identified. At block 2417 the identified representative image and the secondary images are displayed. In an embodiment, a representative image corresponding to each direction detail may be displayed next to the direction detail as a thumbnail image. The displayed representative image and the direction detail may be interactive and selection of either will provide a user with a larger view of the representative image and the secondary images.
If it is determined at decision block 2413 that a representative image and secondary images are not to be displayed, or after a representative image and secondary images have been displayed, at block 2419 the map directions routine 2400 completes.
While various embodiments of the invention have been illustrated and described, it will be appreciated that changes can be made therein without departing from the spirit and scope of the invention. The scope of the invention should be determined from the following claims and equivalents thereto.
Claims
1. A computing system, comprising:
- a processor; and
- a memory device including instructions that, when executed by the processor, cause the computing system to: receive a search request relating to a display of a geographic location; determine a plurality of geographically adjacent images corresponding to the geographic location; generate a three-hundred and sixty degree view of a region surrounding the geographic location using at least a portion of the plurality of geographically adjacent images receive a selection of at least one interactive element; and provide a map including a translatable icon representative of a current geographic location being viewed, the translatable icon being configured to move on the map to correspond to a location of the plurality of geographically adjacent images.
2. The computing system of claim 1, wherein the instructions when executed further cause the computing system to:
- receive selection of one of a first icon or a second icon, the first icon being configured to zoom in on a display of the three-hundred and sixty degree view of the region surrounding the geographic location and the second icon being configured to zoom out on the display of the three-hundred and sixty degree view of the region surrounding the geographic location.
3. The computing system of claim 1, wherein the instructions when executed to generate the three-hundred and sixty degree view further cause the computing system to:
- stitch together the plurality of geographically adjacent images to provide a view of the region surrounding the geographic location.
4. The computing system of claim 1, wherein the instructions when executed further cause the computing system to:
- receive a second selection of the at least one interactive element; and
- cause a change in display of the three-hundred and sixty degree view of the region surrounding the geographic location.
5. The computing system of claim 1, wherein each of the plurality of geographically adjacent images includes a view of at least a portion of the region surrounding the geographic location.
6. The computing system of claim 1, wherein the map includes a view of a first representative image of the plurality of geographically adjacent images corresponding with the geographic location, the first representative image comprising an image captured at substantially the geographic location.
7. The computing system of claim 6, wherein the instructions when executed further cause the computing system to:
- cause to be displayed proximate to the plurality of geographically adjacent images, a first movement icon and a second movement icon, wherein the first movement icon and the second movement icon are oriented in a direction approximating a direction of movement; and
- receive an interaction with one of the first movement icon or the second movement icon to view adjacent images of the plurality of geographically adjacent images within the region surrounding the geographic location using.
8. The computing system of claim 1, wherein the plurality of geographically adjacent images are configured to provide a continuous lateral view within the region surrounding the geographic location.
9. A computer-implemented method, comprising:
- receiving a search request relating to a display of a geographic location;
- determining a plurality of geographically adjacent images corresponding to the geographic location;
- generating a three-hundred and sixty degree view of a region surrounding the geographic location using at least a portion of the plurality of geographically adjacent images receiving a selection of at least one interactive element; and
- providing a map including a translatable icon representative of a current
- geographic location being viewed, the translatable icon being configured to move on the map to correspond to a location of the plurality of geographically adjacent images.
10. The computer-implement method of claim 9, wherein generating the three-hundred and sixty degree view includes:
- stitching together at least a portion of the plurality of geographically adjacent images to provide a three-hundred and sixty degree view of a region surrounding the geographic location, wherein the region being centered proximate the geographic location.
11. The computer-implemented method of claim 10, further comprising:
- receiving selection of one of a first icon or a second icon, the first icon being configured to zoom in on a display of the three-hundred and sixty degree view of the region surrounding the geographic location and the second icon being configured to zoom out on the display of the three-hundred and sixty degree view of the region surrounding the geographic location.
12. The computer-implemented method of claim 11, further comprising:
- removing from display the second icon in response to the display being zoomed out a predetermined amount.
13. The computer-implement method of claim 9, further comprising:
- In response to the selection, causing a change in display of the three-hundred and sixty degree view of the region surrounding the geographic location.
14. The computer-implement method of claim 13, wherein the change in the display further includes at least one of:
- causing to be displayed a first lateral view within the region surrounding the geographic location; and
- causing to be displayed a second lateral view in an opposite direction to a first lateral view; or
- causing to be displayed a third view within the region surrounding the geographic location, the third view corresponding to an aerial view of the region surrounding the geographic location.
15. The computer-implemented method of claim 14, wherein the first lateral view corresponds to a view along a first side of a roadway within the region surrounding the geographic location, the second lateral view corresponding to a view along an opposite side of the roadway within the region surrounding the geographic location.
16. The computer-implemented method of claim 9, further comprising:
- cause to be displayed proximate to the plurality of geographically adjacent images, a first movement icon and a second movement icon, wherein the first movement icon and the second movement icon are oriented in a direction approximating a direction of movement; and
- receive an interaction with one of the first movement icon or the second movement icon to view adjacent images of the plurality of geographically adjacent images within the region surrounding the geographic location using.
17. A non-transitory computer readable storage medium storing one or more sequences of instructions executable by one or more processors to perform a set of operations comprising:
- receiving a search request relating to a display of a geographic location;
- determining a plurality of geographically adjacent images corresponding to the geographic location;
- generating a three-hundred and sixty degree view of a region surrounding the geographic location using at least a portion of the plurality of geographically adjacent images
- receiving a selection of at least one interactive element; and
- providing a map including a translatable icon representative of a current geographic location being viewed, the translatable icon being configured to move on the map to correspond to a location of the plurality of geographically adjacent images.
18. The non-transitory computer readable storage medium of claim 17, further comprising instructions executed by the one or more processors to perform the set of operations of:
- causing to be displayed one of a first lateral view within the region surrounding the geographic location or a second lateral view in an opposite direction to the first lateral view,
- wherein the first lateral view corresponds to a view along a first side of a roadway within the region surrounding the geographic location, the second lateral view corresponding to a view along an opposite side of the roadway within the region surrounding the geographic location.
19. The non-transitory computer readable storage medium of claim 17, further comprising instructions executed by the one or more processors to perform the set of operations of:
- receiving selection of one of a first icon or a second icon, the first icon being configured to zoom in on a display of the three-hundred and sixty degree view of the region surrounding the geographic location and the second icon being configured to zoom out on the display of the three-hundred and sixty degree view of the region surrounding the geographic location.
20. The non-transitory computer readable storage medium of claim 17, further comprising instructions executed by the one or more processors to perform the set of operations of:
- providing information relating to the geographic location to at least one algorithm configured to determine content relating to the geographic location; and
- causing to be displayed the content.
Type: Application
Filed: Oct 1, 2015
Publication Date: Jul 20, 2017
Inventors: JONATHAN A. GOLD (Palo Alto, CA), TIMOTHY CARO-BRUCE (Palo Alto, CA), HUY T. HA (Oakland, CA), JOHN ALAN HJELMSTAD (Palo Alto, CA), CHRISTOPHER AARON VOLKERT (Palo Alto, CA)
Application Number: 14/873,088