1. Technical Field
This technology described herein relates generally to internet searching infrastructures and more particularly to geo-based virtual tagging of content and searching thereof.
2. Description of Related Art
Today, a large amount of Internet searching is performed from a remote location using portable or hand-held mobile communication devices. These devices are often equipped with cameras and global positioning system (GPS) sensors providing the user with access to web-based information based on their physical proximity. In a process called geo-tagging, information such as photos, videos, websites, and other forms of media can be provided along with geospatial metadata. This data typically comprises latitude and longitude coordinates, however it is can also include altitude, bearing, distance, accuracy data as well as other location information. Recent technological improvements have enhanced the interaction between geo-tagged data and mobile communication devices. For example, collected user information, including current location, may be used to modify the search query and search results providing the user with proximity based results.
However, current approaches limit the amount of information available to display in the real-world environment. Conventional search infrastructures, such as Google® and Bing®, crawl Web hosting servers to gather Web page text and associated media content. Such gathered text and data are (i) preprocessed to extract search database content, and (ii) cached to support search results when a server is out of action (to cache a graphic image for their search engine). If a user desires to make any content available on the Internet, they must either establish a web server or upload their content to a web server based hosting service.
Disadvantages of conventional approaches will be evident to one skilled in the art when presented in the disclosure that follows.
The technology described herein is directed to an apparatus and methods of operation that are further described in the following Brief Description of the Drawings and the Detailed Description. Other features and advantages will become apparent from the following detailed description made with reference to the accompanying drawings.
In various embodiments of the technology described herein, a system and method is provided to support geo-augmentation via geolocation virtual tagging. In one embodiment, geo-augmentation by geolocation virtual tagging allows users, via hand-held devices (smartphones, cameras, tablets, etc.), to annotate various geolocations around the world. A geolocation virtual tag (virtual tag) might be, for example, a text note praising a current restaurant (posted while at such restaurant), a photo taken atop the Eiffel Tower at night, a Macy's parade video and text note, a text note on a hiking trail advertising a local café, an advertisement from a close proximity business, or the like. Each of such virtual tags, upon posting, receives an associated geolocation. In this way, virtual tags can annotate the world. With such annotations, a user at a particular geolocation can use their mobile communications device to access virtual tags in geo-proximity. Annotations are supplied to the system by users via posting uploads directly from the user's mobile communications device. A search infrastructure stores each virtual tag posting element along with an associated geolocation. The associated geolocations are added to a geolocation search database along with pointers to the stored content.
In various embodiments, mobile communication devices 202 to 204 are a mobile phone such as a cellular telephone, a local area network device, personal area network device or other wireless network device, a personal digital assistant, personal computer, laptop computer, wearable computers, tablet computers or other devices that perform one or more functions that include communication of voice and/or data via a wireline connection and/or the wireless communication path. In other embodiments, mobile communication devices 202 to 204 are an access point, base station or other network access device that is coupled to network 205 such as the Internet or other wide area network, either public or private, via a wireline or wireless connection.
In alternative embodiments, location information for the mobile communication devices is obtained using other information such as media access control (MAC) address, internet protocol (IP) address, or the like.
In various embodiments, the virtual tagging UI is integrated into the mobile communication device, an accessory of the mobile communication device or a third party application capable for functioning on the mobile communication device.
Web page downloader(s) 404, in one embodiment, further include preprocessing of webpages. Preprocessing, typically performed by web server(s) 410, includes extracting, in one embodiment, non-text information about images. For example, information about the image can be passed directly to the database structures 407 without needing the download processing 406. This information includes, for example, whether the image is black and white, a sketch, drawing file, full color, a photograph, clip art, facial recognition, age/sex id (i.e., adult, child, senior, male, female, etc.). In addition, in one embodiment, access information is extracted such as public, private, sharing lists, grouping, download and distribution rights, security, or access based on income, gender, age, location, citizenship, relationships, membership, etc.
Download processor 406 reverse indexes a selected web page to encode web page words (e.g., frequency) and note location on the associated page (offset) so that content can be recovered (extracted) at a later time. The indexed data is transferred to a search engine database structure 407 where it is stored for later access by search systems 408. Search systems 408 receive Hypertext Transfer Protocol (HTTP) sequences to parse/hash database structures 407 to retrieve, for example, data, text, images, video, software, code, etc. HTTP is an application protocol for distributed, collaborative, hypermedia information systems.
Database structures 407 typically include indexes of unique words with associated index pointers (URLs) and web page position information. Unique words are hashed using a hash table. A hash table (also hash map) is a data structure used to implement an associative array, a structure that can map keys to values. A hash table uses a hash function to compute an index into an array of buckets or slots, from which the correct value can be found. Unique words are typically arranged by frequency (e.g., highest to lowest) and also carry importance using frequency ranking. For example, in the phrase “the cat”, the word “the” is not important and the word “cat” is important. Rare words are often given highest importance along with strings of words and rare strings of words.
Internet Network 409 is a global system of interconnected computer networks that use the standard Internet protocol suite (TCP/IP) to serve billions of users worldwide. It is a network of networks that consists of millions of private, public, academic, business, and government networks, of local to global scope, that are linked by a broad array of electronic, wireless and optical networking technologies. The Internet carries an extensive range of information resources and services, such as the inter-linked hypertext documents of the World Wide Web (WWW) and the infrastructure to support email. The internet network is used to interconnect the various elements of system 200 and is implemented using known and future communication infrastructures such as wireless and wired networks including, but not limited to, wireless local area networks (WLANs), wide area networks (WANs), local area networks (LANs), Ethernet, fiber optic or other known or future communication network infrastructures. Internet Network 409 interconnects web servers 410 which store the various web pages and associated content to Web crawler 401 to the search systems 408 which use the indexed data to match a user input search string from a user searching device 411 (e.g., smartphone, tablet, laptop, desktop or other known or future user devices with communications capabilities).
The system infrastructure is, in various embodiments described herein, also in communication with one or more GPS satellites and/or terrestrial geographic location systems (
In various embodiments of the technology described herein, system 400 includes searching of geolocation virtual tags. Geolocation virtual tagging includes virtual tag creation by user tagging devices 412 as will be described in greater detail hereafter. Once created, the geolocation virtual tags are stored locally (e.g., on the user tagging device 412 with an associated pointer to the tag) or remotely (e.g., using the search infrastructure and/or in the cloud including third party servers with a pointer (e.g., hyperlink or URL) to the tag).
Virtual tagging crawling system 413 mirrors Web crawling elements 401. Virtual tagging crawling system 413 accesses and parses stored geolocation virtual tags in much the same way a traditional web crawler would crawl a web page. The virtual tagging crawling system 417 includes, but is not limited to, one or more geolocation virtual tag downloader(s) 414 which access, parse and process the virtual tags in a similar fashion to web pages for web page downloader 404. Geolocation virtual tag downloader(s) 414 include downloading of the virtual tag including associated content, access data and, in one aspect embodiment, preprocessing of content. Pointers 415 are provided to the geolocation virtual tag downloader(s) 414. Pointers include uniform resource locators (URLs) or global network routes (GNRs) which are unique routes that will guide a future search request to the virtual tag or specific portions of the virtual tag. The virtual tagging crawling system 413 further includes scheduler 416 to schedule the crawling of the geolocation virtual tags and download processor 417 to reverse index and distribute to database structures 407.
The technology described herein provides users with the ability to create geolocation virtual tags for various objects throughout the world. In further embodiments, a system infrastructure 400, as shown and described in
Upon receiving a geolocation search input (e.g., a GPS location of a first mobile communications device), the infrastructure applies the geolocation input to the search database, yielding a search result including those geolocation virtual tags having a geolocation in proximity to the geolocation search input. Such identified geolocation virtual tags can then be delivered from storage to the user searching devices 411 (e.g., search request from mobile device) for presentation to the user. It is to be understood that the search infrastructure is, in one embodiment, created or provided by an independent entity such as an independent service, or integrated into conventional Web search infrastructures.
The virtual tagging system as described in
In addition to the location and data content, virtual tag data includes, in various embodiments of the technology disclosed herein, adding access restrictions. Restrictions include, but are not limited to, audience based restrictions such as limited access by a specific person, my family, social circles, aged based such as adults only or kids only, social groups, membership based, security based (e.g., must have password), distribution restrictions, time based (e.g., limited time only, time period, specific time of day, next few minutes, week, month, year, seasonable, etc.), number of accesses (e.g., can only view virtual tag 3 times, 3 times in a specified time frame (e.g., per day), location based, etc.).
Additional examples of access restrictions include, but are not limited to: payment for the geolocation virtual tag or associated service or product (e.g., coupon or discount when purchasing a geolocation virtual tag listed item (e.g., coffee from a menu or advertisement)); default access settings for the tagger (creator of geolocation virtual tag); a standard list of access limitations; a multi-tier access system (one access restriction at one level and another at the next level); classes of service; and templates with associated access restrictions.
Virtual tags, in various embodiments of the technology disclosed herein, include communication based options. For example, a tagger (geolocation virtual tag creator) includes a provision in the geolocation virtual tag to initiate a communication session directly with the viewer of the geolocation virtual tag (e.g., to order from a menu, select and purchase from a list of sale items, make a reservation, etc.). The communication session includes, but is not limited to, a chat frame, video conference, email, text, tweet, order template, or telephonic communication (e.g., voice call, voice over IP (VOIP) call, or downloaded audio message, etc.)
User tagging devices 412 include, but are not limited to: mobile phones; smartphones; tablets; laptops; desktops; or other known or future user computing devices with communications capabilities. In one or more embodiments disclosed herein, mobile communication devices are the recipients of geolocation virtual tags. These mobile communication devices are, in various embodiments, a mobile phone such as a cellular telephone, smartphone, a local area network device, a personal area network device or other wireless network device, a personal digital assistant, a personal computer, a laptop computer, wearable computers (e.g., heads-up display (HUD) glasses), tablet computers or other devices that perform one or more functions that include communication of voice and/or data via a wireline connection and/or the wireless communication path. Additionally, in various embodiments, mobile communication devices are an access point, base station or other network access device that is coupled to a network such as the Internet or other wide area network, either public or private, via a wireline/wireless connection.
The large amount of virtual tags will result in a great number of virtual tags and a user is likely to encounter high volume areas by moving into proximity thereof. Coming into proximity of a highly posted location could result in posted virtual tags having no interest to the users. As a result, embodiments of the technology described herein comprise the necessary searching infrastructure to filter, refine or modify the results included in the virtual tags.
A further embodiment allows the user to define ranging parameters based on particular user types and user behaviors. For example, if a user just visited a coffee shop for an hour, they can define ranges so that the system will not show postings concerning coffee hours for an explicit period of time (i.e., 6 hours). It is understood that alternative modes of operation are available to both the poster and to the viewer.
In another aspect embodiment, a mobile communication device user can enhance the search input beyond that of merely geo-location based information. Users can enhance the search infrastructure by adding support for various types of search annotations including text, video, image, audio, code, etc. Thus, a roaming user might pull up the virtual tag user interface (UI) and find 10,000+ virtual tag postings at a popular street corner or location. Instead of attempting to sift through everything, the user provides search input by (i) taking a photo of a location (i.e., Starbucks Coffee Shop), and (ii) typing in “review.” Such search input along with the user's geo-location, enables the search infrastructure to identify a small subset of the original 10,000+ postings. In certain embodiments, the user can sort the results by date, alphabetical order, type, and/or a combination thereof.
To improve applicability of virtual tagging, both search restriction setups and background searching with user alerts are, in various embodiments, included. For example, via a browser interface, a user might interact to define a series of searches (search input plus filter tool settings) of interest relating to coffee shops, computer stores, job opening postings, etc. All or any of the filters could be set to run in the background with a specified (i.e., time and/or distance) or standard periodicity. Thus, as the user roams, such filters are each supplemented with current geo-location data (from the user via the user's hand-held device) and sent to the search infrastructure to fine proximate and relevant virtual tags. Once found, user alerts are used to draw the user's attention. Alerts are used for when a user is possibly engaged with other applications or has the mobile communications device in pocket, the background searching can continue in background and only alert if virtual tags become available. User alerts may include visual, audible, tactile (e.g., vibrations) or a combination thereof.
In one or more embodiments disclosed herein, mobile communication devices are the recipients of virtual tags. These mobile communication devices are, in various embodiments, a mobile phone such as a cellular telephone, a local area network device, a personal area network device or other wireless network device, a personal digital assistant, a personal computer, a laptop computer, wearable computers (e.g., heads-up display (HUD) glasses), tablet computers or other devices that perform one or more functions that include communication of voice and/or data via a wireline connection and/or the wireless communication path. Additionally, in various embodiments, mobile communication devices are an access point, base station or other network access device that is coupled to a network such as the Internet or other wide area network, either public or private, via a wireline/wireless connection.
The technology described herein includes a geolocation virtual tagging posting user interface (UI) provided on the mobile communications device. The geolocation virtual tagging posting UI allows the user of the mobile communications device to physically identify a location as well as the posting target. For example, the mobile communications device user is in physical proximity to the Washington Monument and wants to post a photo of the monument along with a text annotation. The UI allows the user to take a photo using the camera provided by the mobile communications device and input the annotation.
In another aspect embodiment, the process of creating virtual tags includes an authentication process 605 to ensure that tagging devices are at (or in proximity) to the geolocations represented by the virtual tag. In one aspect embodiment, each step of the virtual tag process is authenticated to create a secure virtual tag with a virtual tag auditable trail. This audit trail can be used to detect fraud, a timeline of events (crime witnesses created virtual tags), etc.
In addition, in one embodiment, it is possible to add one or more files to the geolocation virtual tag during creation 704. In various embodiments, the files 707 include, but are not limited to: text, images (e.g., pictures or video), audio (such as music or attention getting sounds like ring tones), maps, directions, menus, reviews, special offers, advertising, order templates, purchase templates, etc. The technology described herein is not limited by a specific file or file type. It is envisioned that differing file types and associated content are equally within the scope of the technology described herein. Other UI selections include access restrictions 705 and update modes 706 which are described herein in greater detail hereafter. Selections next 709 and previous 710 enable traversing a list of sequential or related geolocation virtual tags.
Specific access restrictions 705 include, but are not limited to: one or more specific users/user-devices; identity (ID); group characteristics; password/security requirements; advertising logic selections (including attract mode behaviors); sales interfacing selections/behaviors; purchase support selections; handover selections; anonymity settings; post scheduling and duration; payment options for: associated advertising (incoming revenue), click through or sales completion fee collections/services (outgoing revenue); hosting/caching, etc.; operational modes including client hosted without caching and only pre-processing uploads, client hosted with no pre-processing, shared hosting, search system hosted.
Specific update modes 706 include, but are not limited to: push (e.g., transmitting wirelessly), pull (search retrieves geolocation virtual tag in search results) or periodic pull (user device periodically pulls available geolocation virtual tags), and a mix of the two where push indication for need is followed up by a scheduler with a pull; numerical or mapping interface that allows a poster to define either a coverage radius or any other odd shaped coverage zone (e.g., with support based on historical data illustrating the likely performance of such ad on a minute to minute . . . year to year, etc., basis); auto shut-down/pause behaviors (e.g., dispense this number of geolocation virtual tags per day or total then stop (and possibly discard)); pending tag management system to turn off or add more geolocation virtual tags (or search the user's own geolocation virtual tags—including search results populating a map with tag type icons and performance/status information modifying the icon look and feel); motion vector characteristics; and triggers.
Please note that
Referring again to
Referring again to
In one embodiment, coverage preferences 1107 are included to narrow the geolocation virtual tag receiving area. For example, I am only interested in geolocation virtual tags which are in close proximity (the definition of close proximity may be variable from user-to-user based on their individual preferences). As shown, coverage is manually selectable, in various embodiments, by selecting a specific distance, typically radially, from the user. For example, show me only geolocation virtual tags from 1-100 ft away from me (based on detected position of my communications device). In an alternative embodiment, a coverage area or zone is chosen using conventional map area 902 selection techniques. It is envisioned that differing coverage preferences are equally within the scope of the technology described herein.
In one embodiment, frequency preferences 1108 allow a user to narrow their search and subsequent number of geolocation virtual tags received by only receiving geolocation virtual tags a specified number of times per some specified time frame. For example, I want to see geolocation virtual tags only twice per day. In alternative embodiments, a user may select from either standardized frequencies or from recommended or suggested ideal frequencies for a specified period. Without preference selection, a user in various embodiments would become overwhelmed with a never ending repetition of the same advertisement or a category of geolocation virtual tags. It is envisioned that differing frequency selections are equally within the scope of the technology described herein.
In one embodiment, filter preferences 1109 allow a user to narrow their search and subsequent number of geolocation virtual tags received. A user, in various embodiments avoids specific businesses (e.g., Jo's Coffee Shop), specific offers (e.g., no coffee offers if they don't drink coffee) or duplicate tags. It is envisioned that differing filters are equally within the scope of the technology described herein.
In one embodiment, alert preferences 1110 allow a user to select how they will be notified of geolocation virtual tags received. A user, in various embodiments will set alerts such as, but not limited to: voice (such a call or audio message); text (such as SMS text messaging); email; social media options (e.g., Facebook®, Tweets®, Instagrams®, etc.); and be able to select delivery methods, such as, but not limited to automatic, manual (on/off) and/or when browser map is opened. It is envisioned that differing alerts are equally within the scope of the technology described herein.
One embodiment implementation of geolocation virtual tags includes a mode activated by a walking user (with mobile communications device) in association with a particular and somewhat distant geolocation virtual tag posting location. This mode is used to draw in a roaming user to a posting location such as by: presentation of a series of geolocation virtual tag posting that each trigger at different distances from the posting geo-location; periodic alerts such as direction pop-ups (arrows, turning audio, “only 100 m away” type notifications); and determining drive/walk-byes and responding by delivering additional alerts such as supplemental directions or otherwise providing posting data attempting to draw the walker back on track.
In one aspect embodiment, the virtual tag has a potentially changing geolocation (mobile object) which is updated in the system as the object moves. For example, an owner of a car for sale can create a virtual tag with a picture of the car and additional information such as price, specs, contact info, etc. As the car is moved, potential customers in proximity to the moved vehicle would be notified that a car for sale is near them, possibly with a map and/or directions to its present location.
In one aspect embodiment, the virtual tag is in and of itself virtual (a virtual virtual tag). For example, a potential customer is on a website looking at a 3D image of the interior of a car. The website detects the potential customer's presence within one or more portions of the 3D image. Precreated virtual tags are brought to the potential customer's attention allowing a 3D virtual tag to be downloaded to their device which is displayed holographically or by holding the phone up to their eyes and moving it around in to scroll through various angles of provided 3D image.
While the figures include various screen shots such as posting and setting user preferences to provide various settings and selections, it is understood that the technology described herein is not limited by these specific construction techniques, settings or selections. Functionally equivalent, known and future, constructs, settings and constraints are interchangeable without departing from the scope of the technology described herein. For example, the posting and search interfaces, in various embodiments, share some or all of the same settings and selections or the aggregate of the two interfaces. In one exemplary embodiment, geolocation virtual tag construction uses web site creation tools simplified for quick composition. In other words, geolocation virtual tags piggy back on web creation tools using html/xml or functional equivalents, which inherently include files, access browser add-ons, etc., and are consumed by typical web browsers.
In an embodiment of the technology described herein the wireless connection can communicate in accordance with a wireless network protocol such as Wi-Fi, WiHD, NGMS, IEEE 802.11a, ac, b, g, n, or other 802.11 standard protocol, Bluetooth, Ultra-Wideband (UWB), WIMAX, or other known or future wireless network protocol, a wireless telephony data/voice protocol such as Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), Enhanced Data Rates for Global Evolution (EDGE), Personal Communication Services (PCS), or other known or future mobile wireless protocol or other wireless communication protocol, either standard or proprietary. Further, the wireless communication path can include separate transmit and receive paths that use separate carrier frequencies and/or separate frequency channels. Alternatively, a single frequency or frequency channel can be used to bi-directionally communicate data to and from the mobile communication device.
While the technology described herein is generally described using mobile communications devices, non-mobile devices such as PCs, devices which are not at the location to be tagged and other computing devices are within the scope of the technology described herein and in various embodiments create, receive, edit, store, and manage geolocation virtual tags.
Throughout the specification, drawings and claims various terminology is used to describe the various embodiments. As may be used herein, the terms “substantially” and “approximately” provides an industry-accepted tolerance for its corresponding term and/or relativity between items. Such an industry-accepted tolerance ranges from less than one percent to fifty percent. Such relativity between items ranges from a difference of a few percent to magnitude differences. As may also be used herein, the terms “geolocation virtual tags”, “geocoded virtual tags”, “virtual tags” and “tags” are considered equivalent. The terms “geo-code”, “geocode”, “geo-location” and “geolocation” are considered equivalent terms.
As may also be used herein, the terms “processing module”, “processing circuit”, and/or “processing unit” may be a single processing device or a plurality of processing devices. Such a processing device may be a microprocessor, micro-controller, digital signal processor, microcomputer, central processing unit, field programmable gate array, programmable logic device, state machine, logic circuitry, analog circuitry, digital circuitry, and/or any device that manipulates signals (analog and/or digital) based on hard coding of the circuitry and/or operational instructions. The processing module, module, processing circuit, and/or processing unit may be, or further include, memory and/or an integrated memory element, which may be a single memory device, a plurality of memory devices, and/or embedded circuitry of another processing module, module, processing circuit, and/or processing unit. Such a memory device may be a read-only memory, random access memory, volatile memory, non-volatile memory, static memory, dynamic memory, flash memory, cache memory, and/or any device that stores digital information. Note that if the processing module, module, processing circuit, and/or processing unit includes more than one processing device, the processing devices may be centrally located (e.g., directly coupled together via a wired and/or wireless bus structure) or may be distributedly located (e.g., cloud computing via indirect coupling via a local area network and/or a wide area network). Further note that if the processing module, module, processing circuit, and/or processing unit implements one or more of its functions via a state machine, analog circuitry, digital circuitry, and/or logic circuitry, the memory and/or memory element storing the corresponding operational instructions may be embedded within, or external to, the circuitry comprising the state machine, analog circuitry, digital circuitry, and/or logic circuitry. Still further note that, the memory element may store, and the processing module, module, processing circuit, and/or processing unit executes, hard coded and/or operational instructions corresponding to at least some of the steps and/or functions illustrated in one or more of the Figures. Such a memory device or memory element can be included in an article of manufacture.
The technology as described herein has been described above with the aid of method steps illustrating the performance of specified functions and relationships thereof. The boundaries and sequence of these functional building blocks and method steps have been arbitrarily defined herein for convenience of description. Alternate boundaries and sequences can be defined so long as the specified functions and relationships are appropriately performed. Any such alternate boundaries or sequences are thus within the scope and spirit of the claimed technology described herein. Further, the boundaries of these functional building blocks have been arbitrarily defined for convenience of description. Alternate boundaries could be defined as long as the certain significant functions are appropriately performed. Similarly, flow diagram blocks may also have been arbitrarily defined herein to illustrate certain significant functionality. To the extent used, the flow diagram block boundaries and sequence could have been defined otherwise and still perform the certain significant functionality. Such alternate definitions of both functional building blocks and flow diagram blocks and sequences are thus within the scope and spirit of the claimed technology described herein. One of average skill in the art will also recognize that the functional building blocks, and other illustrative blocks, modules and components herein, can be implemented as illustrated or by discrete components, application specific integrated circuits, processors executing appropriate software and the like or any combination thereof.
The technology as described herein may have also been described, at least in part, in terms of one or more embodiments. An embodiment of the technology as described herein is used herein to illustrate an aspect thereof, a feature thereof, a concept thereof, and/or an example thereof. A physical embodiment of an apparatus, an article of manufacture, a machine, and/or of a process that embodies the technology described herein may include one or more of the aspects, features, concepts, examples, etc. described with reference to one or more of the embodiments discussed herein. Further, from figure to figure, the embodiments may incorporate the same or similarly named functions, steps, modules, etc. that may use the same or different reference numbers and, as such, the functions, steps, modules, etc. may be the same or similar functions, steps, modules, etc. or different ones.
While particular combinations of various functions and features of the technology as described herein have been expressly described herein, other combinations of these features and functions are likewise possible. The technology as described herein is not limited by the particular examples disclosed herein and expressly incorporates these other combinations.
The present U.S. Utility patent application claims priority pursuant to 35 U.S.C. §119(e) to the following U.S. Provisional Patent Application Ser. No. 61/806,535, entitled “Method and System for Supporting Geo-Augmentation Via Virtual Tagging,” (Attorney Docket No. BP31923) filed Mar. 29, 2013, pending, which is hereby incorporated herein by reference in its entirety and made part of the present U.S. Utility patent application for all purposes.
Number | Date | Country | |
---|---|---|---|
61806535 | Mar 2013 | US |