Within the field of computing, many scenarios involve a presentation of advertisements on a mobile device. For example, a mobile phone or a global positioning system (GPS) receiver may use geolocator components to identify the location of a user, and to present advertisements related to the user's current location and nearby opportunities. Such advertisements may be presented in order to provide information to the user that is contextually related to the user's inquiries for nearby opportunities.
Also within the field of computing, many other scenarios involve an “augmented reality” application, where an image of a user's environment is captured by a camera of the user's mobile device and presented to the user with additional information. For example, a mapping application may receive a request from a user to navigate to a particular location, such as a landmark. While capturing an image, the device may use the geolocator and other sensors (e.g., a gyroscope or accelerometer) to determine the location of the user and the orientation of the camera of the mobile device. This information may be mapped to deduce the point of view of the image, and may be compared with the coordinates of known items in order to deduce the items that may be visible within the image. As a first example, a determination that the user's location is a short distance directly south of the location of the Arc de Triomphe, and that the camera was oriented directly northward and tilted vertically while the image was captured, may enable the deduction that the Arc de Triomphe may be present within the image, and a label indicating the approximate location of the Arc de Triomphe may appear within the image. As a second example, if the camera is oriented directly eastward and the user has requested directions to the Arc de Triomphe, the image may be presented to the user with an indication that the Arc de Triomphe is located to the user's left (e.g., with a leftward arrow near the left edge of the displayed image). Such “augmented reality” applications may present many types of location-based information to the user.
This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key factors or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
While mobile platforms may present advertisements and augmented-reality applications, additional opportunities may be available within the context of mobile devices that are not completely covered by these techniques. In many such scenarios, the mobile device may be capable of extracting more information relevant to advertising than just the user's location and point of view. In particular, the camera of the mobile device may provide significant information about the user's activities; e.g., the images captured by the camera may be evaluated to determine the user's activities and/or current focus of attention. For example, the user may be examining an object in a store, such as a product for sale. This activity may be difficult to detect from the detected location and orientation of the user (e.g., due to the portability of the objects and the typical inaccuracy of global positioning systems), but may be detectable by identifying the objects viewable in an image captured by the camera. This is particularly achievable, e.g., if the user is actively taking an image of the object, or if the mobile device is integrated with a viewing device such as a pair of glasses that are capable of detecting the user's gaze.
The object and the detected location of the user may be evaluated to determine advertising opportunities in the vicinity of the user and/or related to the object of the user's attention. As a first example, the advertising opportunity may involve advertising a related product that is available at the same store. As a second example, the advertising opportunity may involve a competing offer from an advertiser for a product that the user is evaluating in the store, and optionally identifying a nearby location where the user may purchase the product at a more advantageous price. Still further advantages may be achievable by further evaluating and/or utilizing the image of the mobile device. As a first example, optical character recognition (OCR) technologies may be applied to the image to identify the price of the product advertised at the current user's location and to present a more competitive offer at a lower price. As a second example, based on the image, location, and other sensory input, the user's activity and available attention may be inferred, and the advertising fee of the advertisement may be compared with an estimated cost of interrupting the user (e.g., advertisements may be liberally presented when the user is idle in a waiting area, but when the user is engaged in conversation, the selection of advertisements my be limited to highly relevant and/or time-sensitive advertisements that are particularly favorable to the user). As a third example, the advertisements may be presented using augmented reality techniques, e.g., integrating the advertisement with the depiction of the image of the user's environment.
However, it may be appreciated that image capture and evaluation may be resource-intensive, and if applied continuously may deplete the battery of the mobile device. Therefore, in some variations of the techniques presented herein, the device may store a set of triggers associated with various locations that may relate to an advertisement opportunity. For example, if the user's interests and location are associated with a few locations in the user's vicinity for which advertisements are available (e.g., a small number of stores at a nearby mall), the device may store the locations of such stores, and may continuously or periodically compare the location of the device with the locations of the triggers. The image evaluation techniques may then be utilized to evaluate the input from the camera only when the user is present in such locations where advertisement opportunities may arise, thereby providing efficient use of the battery capacity and other resources of the mobile device. These and other advantages may be achievable through the application of the techniques presented herein.
To the accomplishment of the foregoing and related ends, the following description and annexed drawings set forth certain illustrative aspects and implementations. These are indicative of but a few of the various ways in which one or more aspects may be employed. Other aspects, advantages, and novel features of the disclosure will become apparent from the following detailed description when considered in conjunction with the annexed drawings.
The claimed subject matter is now described with reference to the drawings, wherein like reference numerals are used to refer to like elements throughout. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the claimed subject matter. It may be evident, however, that the claimed subject matter may be practiced without these specific details. In other instances, structures and devices are shown in block diagram form in order to facilitate describing the claimed subject matter.
Within the field of computing, many scenarios involve a presentation of advertisements to a user in a mobile context, via a mobile device such as a phone, a tablet, or a camera. The advertisements are often selected by detecting the location of the device by a geolocator (e.g., using a geolocator such as a global positioning system (GPS) receiver, by triangulating with cellular network towers positioned at fixed locations, or by identifying the regional location of a network router through which the user's data is routed). The advertisements presented to the user on the mobile device may be related to the user's location, such as by presenting advertisements for stores in the vicinity of the user, or that are contextually related to the user's location.
Another set of techniques that are often utilized within the field of computing relate to “augmented reality,” wherein a mobile device 112 of a user 104 may present an image to the user 104 of the local environment (e.g., an image captured with a camera), whereupon various additional information about the environment may be integrated with the image. For example, a user 104 may interact with a device 112 to request directions to a location, such as a landmark like the Arc de Triomphe in Paris, France. While capturing an image of the environment, the device 112 may detect the location of the user 104, and also the orientation of the device 112 in three-dimensional space. Together, this information may enable an inference of the point of view through the camera of the device 112 (e.g., an indication that the device 112 was being held vertically and facing directly north when the image was captured). Moreover, this information may be compared with the locations of known objects in order to determine the locations of the objects with respect to the depiction of the environment. As a first example, if the device 112 is detected to be located a short distance directly south of the Arc de Triomphe and is being held in a vertical orientation while facing directly north, it may be inferred that the image may depict the Arc de Triomphe, and a label may be inserted in the image indicating the name of the landmark. As a second example, if the device 112 is detected as being held vertically but facing directly east, the image may be augmented with a left-pointing arrow near the left edge of the image in order to indicate that the Arc de Triomphe is to the left of the user 104. The presentation of the “augmented” image may provide information integrated with the context of the environment.
Scenarios involving mobile advertisements, and optionally involving augmented reality, may provide relevant information that is contextually related to the location of the user 104. However, additional advertising opportunities in the mobile context may be derived by using other resources of the device 112. In particular, such resources may include an evaluation of images captured by a camera of the device 112 to identify objects that are visible to the user 104 within the image, and with which the user 104 may be interacting. As a first example, the user 104 may take an image of a product 108 that the user 104 may be considering purchasing. As a second example, the user 104 may be wearing a gaze-tracking device, such as a pair of eyeglasses or goggles with an embedded camera, that may be able to capture an image of an object that the user 104 is currently viewing, such as user interaction of the user 104 with the product 108 (e.g., an image of the product 108 held in the user's hands). As a third example, the camera of the device 112 may simply be activated to capture images that may indicate the objects around the user 104, such as signs indicating the types of products 108 around the user 104 in a store. To such images, an image evaluation or machine vision technique may be applied to recognize the objects depicted in the captured image, which may indicate the current focus and intentions of the user 104. The recognized objects, coupled with the detected location of the device 112 and the user 104, may enable a more sophisticated identification of advertising opportunities, and the presentation of advertisements to the user 104 that are more contextually relevant to not only the current location of the user 104 but also to the products 108 and other objects within the attention of the user 104.
When the device 112 completes the comparison 208 and identifies a matching opportunity 212 that matches the coordinates 114 and the at least one recognized object 206, the device 1123 may select and present the advertisement 122 associated with the matching opportunity 212. For example, the advertisement 122 may be presented to the user 104 as a text-message alert or notification, or may be integrated with the image 204 of the environment for presentation to the user 104, thus presenting the advertisement 122 within the “augmented reality” of the device 112. Additionally, the advertiser 120 may be charged an advertising fee 216 specified in the matching opportunity 212, and the advertising fee 216 may be provided to the provider of the device 112 and/or provided to the user 104. In this manner, the user 104 may be presented a set of highly contextual and timely advertisements 122 relating not only to the user's location, but also to the objects 206 viewed by the user 104, in accordance with the techniques presented herein.
Still another embodiment involves a computer-readable medium comprising processor-executable instructions configured to apply the techniques presented herein. Such computer-readable media may include, e.g., computer-readable storage media involving a tangible device, such as a memory semiconductor (e.g., a semiconductor utilizing static random access memory (SRAM), dynamic random access memory (DRAM), and/or synchronous dynamic random access memory (SDRAM) technologies), a platter of a hard disk drive, a flash memory device, or a magnetic or optical disc (such as a CD-R, DVD-R, or floppy disc), encoding a set of computer-readable instructions that, when executed by a processor of a device, cause the device to implement the techniques presented herein. Such computer-readable media may also include (as a class of technologies that are distinct from computer-readable storage media) various types of communications media, such as a signal that may be propagated through various physical phenomena (e.g., an electromagnetic signal, a sound wave signal, or an optical signal) and in various wired scenarios (e.g., via an Ethernet or fiber optic cable) and/or wireless scenarios (e.g., a wireless local area network (WLAN) such as WiFi, a personal area network (PAN) such as Bluetooth, or a cellular or radio network), and which encodes a set of computer-readable instructions that, when executed by a processor of a device, cause the device to implement the techniques presented herein.
An exemplary computer-readable medium that may be devised in these ways is illustrated in
The techniques presented herein may be implemented with variations in many aspects, and some variations may present additional advantages and/or reduce disadvantages with respect to other variations of these and other architectures and implementations. Moreover, some variations may be implemented in combination, and some combinations may feature additional advantages and/or reduced disadvantages through synergistic cooperation.
D1. Scenarios
A first aspect that may vary among embodiments of these techniques relates to the scenarios wherein such techniques may be utilized.
As a first variation of this first aspect, the techniques presented herein may be used with many types of devices 112, including phones, tablets, global positioning service (GPS) receiver devices, cameras, laptop and palmtop portable computers, personal digital assistants (PDAs), and wearable computers mounted in a pair of eyeglasses, goggles, or any other piece of clothing. These techniques may also be used with non-portable devices, such as workstations, servers, and kiosks, and devices embedded in vehicles, such as cars, bicycles, and airplanes.
As a second variation of this first aspect, the techniques presented herein may utilize many types of geolocators 416 configured to detect many types of locations 418. As a first example, the device 112 may include a global positioning system (GPS) receiver configured to detect the location 418 by triangulating with satellites to determine a set of coordinates 114 (e.g., latitude, longitude, and/or altitude). As a second example, the device 112 may include a cellular communication circuit that triangulates a location with cellular communication transceivers at known locations. As a third example, the device 112 may include a network adapter that communicates with a wired or wireless router identifying its location (e.g., a geographic indicator encoded in the domain name service (DNS) of the router and determinable via reverse DNS lookup). As a fourth example, the device 112 may simply include a component configured to query a nearby location identifier that indicates the location of the device 112. The geolocator 416 may be embedded in the device 112 or accessible to the device 112 through a wired or wireless connection.
As a third variation of this first aspect, the techniques presented herein may utilize many types of images 204 generated by many types of cameras 202. Such cameras 202 may include, e.g., analog and/or digital imaging, and may cover part or all of the visible spectrum, and optionally including at least some portions of the invisible spectrum, such as infrared light in a night-vision camera. Such cameras 202 may also be oriented forward (pointing toward the focus of attention of the user 104), backward (pointing toward the user 104 and the environment of the user 104), fisheye (capturing part or all of the spherical image of the environment around the device 112), and/or external (capturing an image 204 of the user 104 from an external point of view). The camera 202 may be embedded in the device 112 or accessible to the device 112 through a wired or wireless connection.
As a fourth variation of this first aspect, the techniques presented herein may involve the identification of many types of objects 206 in the image 204. As a first example, the object 206 may comprise a product 108 offered by a store 106 that the user 104 is evaluating. As a second example, the object 206 may comprise an item in the store 106 indicating that the user 104 is interested in a particular product 108, such as a sign describing the product 108, or an object 206 identifying an area of the store 106 that is associated with a particular type of product 108 (e.g., a mascot for a particular type of store 106 offering a particular type of product 108). As a third example, the object 206 may comprise a recognizable individual, such as a salesman of a particular type of product 108. As a fourth example, the object 206 may comprise a first product 108 that is related to a second product 108 that may be the subject of the advertisement 122, e.g., an accessory for the second product 108. As a fifth example, the object 206 may comprise part or all of the user 104 depicted in a particular scenario (e.g., recognizing that the user 104 is holding an object 206 in his or her hands as an evaluation of a product 108, or is participating in a test drive of a vehicle).
As a fifth variation of this first aspect, the techniques presented herein may be capable of identifying objects 206 in the image 204 in various ways. As a first example, the device 112 may identify the objects 206 in an image 204 by applying various types of image evaluation, object recognition, and/or machine vision techniques to the image 204 to identify objects 206 according to shapes, colors, size cues, and other recognizable visual indicators of the object 206. As a second example, the device 112 may send the image 204 to a service that is capable of recognizing the objects 206 in the image 204, such as a powerful server that is accessible over a wireless network, and may receive from the server a list of identified objects 206 in the image 204. As a third example, the identifying may involve a “mechanical Turk” technique, involving presenting the image 204 to a second user 104 to identify the objects 206 visible therein. As a fourth example, the identifying may be assisted by contextual cues, such as a recent expression by the user 104 of interest in the object 206, or the name of the object 206 included in a text message sent by the user 104. These and other types of variations may be compatible with the presentation of advertisements 122 according to the techniques presented herein.
D2. Opportunity and Advertisement Types
A second aspect that may vary among embodiments of these techniques relates to the types of advertisements opportunities 210 and advertisements 122 involved therein.
As a first variation of this second aspect, many types of opportunities 210 may be identified based on the location 418 and the objects 206 recognized in the image 204. As a first such example, the opportunity 210 may comprise an offer 110 to sell the product 108 depicted in the image 204 to the user 104. As a second such example, the opportunity 210 may comprise an offer 110 to sell a second product 108 to the user 104 as an alternative to the first product 108 (e.g., a less expensive and/or higher-quality product 108). As a third such example, the opportunity 210 may comprise an offer 110 to sell a second product to the user 108 that is compatible with, complementary with, and/or often sold or used with the first product 108 (e.g., an accessory for the first product 108, or a service for the product 108, such as a warranty). As a fourth such example, the opportunity 210 may comprise information about the product 108 that may persuade the user 104 to purchase the product 108 under consideration, such as a user review, or an offer 110 of a discount on the product 108 offered by the same store 106. As a fifth such example, the opportunity 120 may comprise an offer 110 persuading the user 104 to purchase the product 108 or a different product 108 not at the store 106 where the user 104 is currently located, but at a competing store 10 of the advertiser 120 (e.g., an more appealing offer 110 for the same product 108 available at a nearby competing store 106, optionally including a map showing the location of the competing store 106 and/or a navigation route to reach the competing store 106). As a sixth such example, the opportunity 210 may present particular conditions of fulfillment to persuade the user 104, such as a limited time offer encouraging the user 104 to act on the offer 110 promptly.
As a second variation of this second aspect, many types of advertisements 122 may be involved in the opportunities 210. As a first such example, the advertisement 122 may include various types of media, such as text, pictures, video, audio, and/or interactive content. As a second such example, the advertisement 122 may be targeted to the user 104 (e.g., selected based on the user's interests) and/or may specifically identify and incorporate the user 104 (e.g., presenting a generated picture of the user 104 with the product 108). As a third such example, the advertisement 122 may be presented to the user 104 in various ways, e.g., as an email message, text message, text alert, notification, or visual indicator integrated with a user interface of the device 112.
As a third variation of this second aspect, the opportunities 210 and/or advertisements 122 may be generally provided for all users 104, or may be targeted and/or personalized for a particular user 104. For example, from a large set of available opportunities 210, the opportunities 210 involved in the comparison 208 and/or the advertisements 122 presented to the user 104 may be selected as those that are relevant to the user 104, such as targeted to the user's demographics or interests, and/or limited to regions that the user 104 is likely to visit. These and other variations in the opportunities 210 and advertisements 122 may be compatible with the techniques presented herein.
D3. Advertisement Infrastructure
A third aspect that may vary among embodiments of these techniques relates to the configuration of the device 112 to apply such techniques while in use by the user 104.
As a first variation of this third aspect, the device 112 may be configured to perform the comparison 208 by sending the location 418 and objects 206 detected in an image 204 to the advertiser 120 and receiving back an advertisement 122 associated with the opportunity 210. This variation may be advantageous, e.g., for requesting and receiving up-to-date information from the advertiser 120, and/or for conserving the computational resources of the device 112 (e.g., the evaluation of the image 204, the storage of opportunities 210 and advertisements 122, and the comparison). Alternatively, the advertiser 120 may send the advertisements 122 to the device 112 for storage, and the device 112 may store the opportunities 210, perform the comparison 208 with the location 418 and the objects 206 detected in the image 204, and present an advertisement 122 when the comparison 208 determines that the associated opportunity 210 has arisen. This variation may be advantageous, e.g., for reducing network transport (i.e., the device 112 may continuously compare a previously received opportunity 210 with the images 204 and location 418, rather than having to notify the advertiser 120 continuously of the images 204, objects 206, and/or locations 418 of the user 104), and/or for preserving the privacy of the user 104 (e.g., by performing the comparison 208 of the opportunity 210 and the private data of the user 104 locally, rather than sending it to an external service). As one such example, the user 104 may have a user profile describing the user 104, and the device 112 may send the user profile to the advertiser 120, and may receive and store opportunities 210 and advertisements 122 related to the user 104 according to the description in the user profile.
As a second variation of this third aspect, an advertisement server may be utilized to store advertisements on behalf of one or more advertisers 120, and to select advertisements 214 to be stored on a device 102 and presented to a user 104. This selection may be performed, e.g., in view of a user profile describing the user 104 that is stored by the advertisement server and used to determine the advertisements 214 that are likely to be relevant and/or appealing to the user 104. This variation may be advantageous, e.g., for retaining the privacy of the user's information, including the user's identity, preferences, location 418 (e.g., the stores 106 routinely visited by the user 104), and the viewed products 108 and other objects 206 visible in the images 204 captured by the camera 202 of the device 102 of the user 104. While such information may be highly relevant to the selection of advertisements, the user 104 may be very reluctant to have this information shared with one or more advertisers 120; rather, the information may be stored by an advertisement server that is controlled by and/or trusted by the user 104 in order to perform the selection. Even greater privacy control may be provided, e.g., by providing the advertisement server only with general information about the user 104 (e.g., the user's age, general region of residence, and the types of products 108 that are of interest to the user 104), such that the advertisement server may identify opportunities 210 that may be relevant to the user 104. Such opportunities 210 may then be provided to and stored by the device 102, which may track the location 418 of the user 104 and the objects 206 visible to the user 104, and may perform the comparison 208 to determination matching opportunities 212. This architecture may therefore limit the user profile generally describing the user 104 to the advertisement server, and may restrict the actual day-to-day information about the user 104 to the user's device 102. Additionally, this architecture may represent a comparatively efficient load balancing of the comparisons (e.g., using the advertisement server to identify the general relevant of a large set of advertisements 122 to select and targeted sets of users 104, and using the devices 102 of the users 104 to evaluate the particular current circumstances of the user 104 and determine the matching opportunities 212 to present such advertisements 122).
As a third variation of this third aspect, the comparison 208 of opportunities 210 to locations 418 and objects 206 in images 204 may be performed continuously and/or periodically by the device 112. Alternatively, the device 112 may conservatively apply such techniques in order to reduce the utilization of the resources of the device 112. For example, a mobile device, such as a phone, often comprises a limited-capacity battery, a limited amount of memory and storage capacity, and a processor 414 that is not as powerful as a workstation processor. It may be appreciated that continuously or frequently evaluating the images 204 and/or performing the comparison 208 may deplete the battery and consume memory and processor capacity. In order to reduce this inefficiency, the device 112 may be configured to perform a less computationally intensive portion of these techniques first, and then to apply the more computationally intensive portion after the first portion has completed.
As a first example of this third variation, the device 112 may conserve the image capturing, image evaluation, and/or comparison 208 until it is determined that the location 418 matches at least one opportunity 210. For example, the location 418 may be continuously or periodically compared with the locations 418 of the opportunities 210, and only when the user 104 is determined to be located in an area relating to an opportunity 210 (e.g., near the store 106 of the advertiser 120 or a competitor), the images 204 may be captured by the camera 202, evaluated to recognize objects 206, and utilized in a comparison 208 with the opportunities 210 matching the location 418. As a still further variation, the image capturing and/or object recognition may be further limited, e.g., to images 204 captured by the camera 202 at the request of the user 104 (which may also indicate greater confidence regarding the interest by the user 104 in the object 206 than for objects 206 detected in spontaneously captured images 204). Alternatively or additionally, the comparison of the location 418 of the device 112 with the locations 418 of the opportunities 210 may be performed only after the location 418 of the device 112 is determined to be associated with the location 418 of the opportunity 210 for more than a lingering duration threshold (e.g., to distinguish instances of the user 104 occupying a location 418 of interest, such as a competitor location of a competitor of an advertiser 120, where a competing opportunity 210 and competing advertisement 122 may be relevant, from instances of the user 104 simply passing through or near the location 418 and is not interested in the products 108 or objects 206 presented therein).
As a second example of this third variation, the device 112 may be configured not to store the advertisements 122. Instead, the device 112 may be configured to store the locations 418 and advertisers 120 associated with respective opportunities 210, and to contact the advertiser 120 for an advertisement 122 only upon detecting the location 418 of the device 112 identified as an opportunity 210 to present the advertisement 122. This variation may reduce the storage costs of the implementation of the techniques presented on herein on a mobile device 112 with limited (or even no available) storage capacity.
As a third example of this third aspect, the current location 804 of a user 104 and device 102 may be frequently or continuously changing (e.g., while the user 104 is traveling). In such scenarios, the device 102 may monitor the current location 804 of the user 104 and the interests of the user 104, which may be inferred from the objects 206 recognized in the images 204 captured by the camera 202 at the request of the user 104. As a first example, if the user 104 is traveling in a region 802 and taking photos of restaurants and food, the device 102 may be able to recognize an opportunity 210 to present advertisements 122 relating to restaurants in the region 802 associated with the current location 804 of the user 102. As a second example, if the user 104 is detected (e.g., using gaze-tracking techniques) to be gazing at museums in a particular region 802, the device 102 may identify an opportunity 210 to present an advertisement 122 for a similar museum in the same region 802. As one such example, these items may be formulated as a dynamic query that is presented to an advertisement server 702 that is capable of identifying and presenting opportunities near the location 418 of the user 104 and relating to the current interests of the user 104, as determined by the objects 206 that the user 104 appears to be viewing. The dynamic query may be periodically or continuously updated as the user 104 continues to travel and as the transient interests of the user 104 change, and may be evaluated against a set of opportunities 210 that may match the dynamic conditions of the user 104. Such detected opportunities 210 may be further selected by comparing the location 418 and the recognized objects 206 with the interests of the user 104 recorded by an advertisement server 702.
D4. Opportunity and Advertisement Selection
A fourth aspect that may vary among embodiments of these techniques involves additional considerations that may be included in selecting a matching opportunity 212 for a particular object 206 and location 418.
As a first variation of this fourth aspect, in some cases, a comparison 208 may identify two or more opportunities 210 that may match an object 206 and a location 418. In such scenarios, the device 112 may simply present all of the opportunities 210 as matching opportunities 212, and allow the user 104 to select among them. Alternatively, the device 112 may perform a selection among the set of opportunities 210 plurality of competing opportunities and advertisements 122 that match an object 206 and a location 418 during the comparison 208 in order to select the matching opportunity 212 and the advertisement 122 to display. As a first such example, the device 112 may select the opportunity 210 having an advertisement 122 that is likely to be more appealing to the user 104 (e.g., the offer 110 having the lowest-priced offer 110 for the product 108, the offer 110 having the highest predicted relevance to the interests of the user 104, or the store 106 that is nearest to the location 418), thereby maximizing the advantage of the presentation of advertisements to the user 104. As a second such example, the device 112 may select the matching opportunity 212 having a higher advertisement fee 216 than the other competing opportunities 210, thereby maximizing the collection of advertisement fees 216. As a third such example, the device 112 may remove opportunities 210 and/or advertisements 122 that have previously been presented to the user 104 in order to rotate the advertisements 122. As a first further variation, this selection may be performed during the comparison 208, or at an earlier time; e.g., upon receiving and storing opportunities 210 and generating triggers for the locations 418 specified thereby, the device 112 may perform the selection and remove the un-selected opportunities 210 for the location 418 (e.g., selecting a first advertisement 122 comprising a first advertisement fee 216, and removing a second opportunity 210 that is associated with a second advertisement 122 and a second advertisement fee 216 that is less appealing to the user 104 than the first advertisement fee 216). As a second further variation, upon identifying two or more competing opportunities 210, the device 112 may contact each advertiser 120 to initiate an auction between the opportunities 210, further maximizing the advertisement fees 216 and/or the value of the offers 110 to the user 104.
As a second variation of this fourth aspect, the selection of matching opportunities 212 may also involve a consideration of the current activity and available attention of the user 104. For example, in addition to detecting the location 418 and the objects 206 in the image 204, the device 112 may be capable of detecting a current activity of the user 104, and infer the availability of the user's attention for the presentation of advertisements 122. For example, the detection of a static location 418 in an area that is not interesting, an evaluation of an image 204 of the user 104 and an audio input through a microphone of the device 112, and/or a detection of the type of interaction of the user 104 with the device 112 may indicate that the user 104 is waiting idly; is shopping for or examining a product; is waiting in line to complete a transaction with a product 108; or is engaged in conversation with another individual. Alternatively, the user 104 may simply indicate his or her current activity for the device 112. These activities may be associated with an inference of the irritation to the user 104 of interrupting the current activity with an advertisement 122, which may be represented as an interruption cost. If the advertisement fee 216 for an opportunity 210 does not adequately compensate for the interruption of the user 104, then the opportunity 210 and advertisement 122 may not be selected as the matching opportunity 212 for the presentation of the advertisement 122. These costs and the detection of activities 1002 may also be adjusted, e.g., in view of the past presentation of advertisements 214 (e.g., configuring the device 112 to raise the interruption cost 1004 with each presented advertisement 214 in order to limit the number of interruptions, and/or varying the interruption costs 1004 based on a request by the user 104 to present or withhold advertisements 214).
D5. Advertisement Presentation
A fifth aspect that may vary among embodiments of these techniques relates to the presentation of advertisements 214 to the user 104 of the device 112.
As a first variation of this fifth aspect, the advertisement 122 associated with a matching opportunity 212 may be presented to the user 104 in many ways, such as an email message, a text message, an alert or notification on the phone 112, or an addition of a visual indicator to an application executing on the device 112 (e.g., a marker presented in a mapping application). Additionally, the advertisement 122 may be integrated with the image 204 of the environment that is presented to the user 104, thus providing an “augmented reality” advertisement relating to the recognized objects 206 in the image 204.
As a second variation of this fifth aspect, the presentation of the advertisement 122 may result in the collection of advertising fees 216 in various ways. As a first example, the advertising fee 216 may be collected from the advertiser 122 upon requesting and receiving the advertisement 122 for presentation. As a second example, the advertising fee 216 may be collected from the advertiser 122 promptly after presenting the advertisement 122, and/or upon detecting a subsequent action of the user 104 that is responsive to the presented advertisement 122, such as completing the transaction with the advertiser 120 presented in the advertisement 122. As a third example, the advertising fee 216 due from the advertiser 120 may be stored and collected at a later date, e.g., as a periodic advertisement collection. Additionally, the collected advertising fees 216 may be directly provided to the user 104; may be used to subsidize the advertised transaction; may be used to subsidize the cost of the device 112 and/or service therefor for the user 104; and/or collected by the manufacturer of the device 112. These and other techniques may be utilized in the presentation of advertisements 122 and collection of advertising fees 216 while implementing the techniques presented herein.
In some embodiments, device 1202 may include additional features and/or functionality. For example, device 1202 may include one or more additional storage components 1210, including, but not limited to, a hard disk drive, a solid-state storage device, and/or other removable or non-removable magnetic or optical media. In one embodiment, computer-readable and processor-executable instructions implementing one or more embodiments provided herein are stored in the storage component 1210. The storage component 1210 may also store other data objects, such as components of an operating system, executable binaries comprising one or more applications, programming libraries (e.g., application programming interfaces (APIs), media objects, and documentation. The computer-readable instructions may be loaded in the memory component 1208 for execution by the processor 1206.
The computing device 1202 may also include one or more communication components 1216 that allows the computing device 1202 to communicate with other devices. The one or more communication components 1116 may comprise (e.g.) a modem, a Network Interface Card (NIC), a radiofrequency transmitter/receiver, an infrared port, and a universal serial bus (USB) USB connection. Such communication components 1216 may comprise a wired connection (connecting to a network through a physical cord, cable, or wire) or a wireless connection (communicating wirelessly with a networking device, such as through visible light, infrared, or one or more radiofrequencies.
The computing device 1202 may include one or more input components 1214, such as keyboard, mouse, pen, voice input device, touch input device, infrared cameras, or video input devices, and/or one or more output components 1212, such as one or more displays, speakers, and printers. The input components 1214 and/or output components 1212 may be connected to the computing device 1202 via a wired connection, a wireless connection, or any combination thereof. In one embodiment, an input component 1214 or an output component 1212 from another computing device may be used as input components 1214 and/or output components 1212 for the computing device 1202.
The components of the computing device 1202 may be connected by various interconnects, such as a bus. Such interconnects may include a Peripheral Component Interconnect (PCI), such as PCI Express, a Universal Serial Bus (USB), firewire (IEEE 794), an optical bus structure, and the like. In another embodiment, components of the computing device 1202 may be interconnected by a network. For example, the memory component 1208 may be comprised of multiple physical memory units located in different physical locations interconnected by a network.
Those skilled in the art will realize that storage devices utilized to store computer readable instructions may be distributed across a network. For example, a computing device 1220 accessible via a network 1218 may store computer readable instructions to implement one or more embodiments provided herein. The computing device 1202 may access the computing device 1220 and download a part or all of the computer readable instructions for execution. Alternatively, the computing device 1202 may download pieces of the computer readable instructions, as needed, or some instructions may be executed at the computing device 1202 and some at computing device 1220.
As used in this application, the terms “component,” “module,” “system”, “interface”, and the like are generally intended to refer to a computer-related entity, either hardware, a combination of hardware and software, software, or software in execution. For example, a component may be, but is not limited to being, a process running on a processor, a processor, an object, an executable, a thread of execution, a program, and/or a computer. By way of illustration, both an application running on a controller and the controller can be a component. One or more components may reside within a process and/or thread of execution and a component may be localized on one computer and/or distributed between two or more computers.
Furthermore, the claimed subject matter may be implemented as a method, apparatus, or article of manufacture using standard programming and/or engineering techniques to produce software, firmware, hardware, or any combination thereof to control a computer to implement the disclosed subject matter. The term “article of manufacture” as used herein is intended to encompass a computer program accessible from any computer-readable device, carrier, or media. Of course, those skilled in the art will recognize many modifications may be made to this configuration without departing from the scope or spirit of the claimed subject matter.
Various operations of embodiments are provided herein. In one embodiment, one or more of the operations described may constitute computer readable instructions stored on one or more computer readable media, which if executed by a computing device, will cause the computing device to perform the operations described. The order in which some or all of the operations are described should not be construed as to imply that these operations are necessarily order dependent. Alternative ordering will be appreciated by one skilled in the art having the benefit of this description. Further, it will be understood that not all operations are necessarily present in each embodiment provided herein.
Moreover, the word “exemplary” is used herein to mean serving as an example, instance, or illustration. Any aspect or design described herein as “exemplary” is not necessarily to be construed as advantageous over other aspects or designs. Rather, use of the word exemplary is intended to present concepts in a concrete fashion. As used in this application, the term “or” is intended to mean an inclusive “or” rather than an exclusive “or”. That is, unless specified otherwise, or clear from context, “X employs A or B” is intended to mean any of the natural inclusive permutations. That is, if X employs A; X employs B; or X employs both A and B, then “X employs A or B” is satisfied under any of the foregoing instances. In addition, the articles “a” and “an” as used in this application and the appended claims may generally be construed to mean “one or more” unless specified otherwise or clear from context to be directed to a singular form.
Also, although the disclosure has been shown and described with respect to one or more implementations, equivalent alterations and modifications will occur to others skilled in the art based upon a reading and understanding of this specification and the annexed drawings. The disclosure includes all such modifications and alterations and is limited only by the scope of the following claims. In particular regard to the various functions performed by the above described components (e.g., elements, resources, etc.), the terms used to describe such components are intended to correspond, unless otherwise indicated, to any component which performs the specified function of the described component (e.g., that is functionally equivalent), even though not structurally equivalent to the disclosed structure which performs the function in the herein illustrated exemplary implementations of the disclosure. In addition, while a particular feature of the disclosure may have been disclosed with respect to only one of several implementations, such feature may be combined with one or more other features of the other implementations as may be desired and advantageous for any given or particular application. Furthermore, to the extent that the terms “includes”, “having”, “has”, “with”, or variants thereof are used in either the detailed description or the claims, such terms are intended to be inclusive in a manner similar to the term “comprising.”