Disclosed herein are systems and methods for displaying images and contextually relevant content on a digital content platform, such as a web page. In one embodiment, for example, the systems and methods include: (1) providing a publisher of the image with a reference script for publication with the image, wherein the reference script is a computer-readable instruction that causes an end-user device to call to a content server; and (2) configuring the content server to (a) receive a request for content from the end-user device, (b) identify content that is contextually relevant to the image, (c) deliver the content to the end-user device, and (d) deliver a computer-readable instruction that causes the end-user device to perform an animation that modifies the image and displays the content in a spatial relationship with respect to the image as originally published.
The accompanying drawings, which are incorporated herein, form part of the specification. Together with this written description, the drawings further serve to explain the principles of, and to enable a person skilled in the relevant art(s), to make and use the claimed systems and methods.
Prior to describing the present invention in detail, it is useful to provide definitions for key terms and concepts used herein. Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs.
Contextual Information or Contextual Tag: data related to the contents and/or context of digital content (e.g., an image, or content within the image); for example, but not limited to, a description, identification, index, or name of an image, or object, or scene, or person, or abstraction within the digital content (e.g., image).
Contextually Relevant Advertisement: A targeted advertisement that is considered relevant to the contents and/or context of digital content on a digital content platform.
Contextually Relevant Content: Any content (e.g., text, data, images, video, controls, applications, interactive functions, informational functions) selected, created, identified, tagged, and/or provided based at least in part on the subject. For example, “content that is contextually relevant to an image” or “contextually relevant content for the image” includes, without limitation, any content that is selected, created, identified, tagged, and/or provided based at least in part on the image.
Crowdsource Network: One or more individuals, whether human or computer, used for a crowdsourcing application.
Crowdsourcing: The process of delegating a task to one or more individuals, with or without compensation.
Digital Content: broadly interpreted to include, without exclusion, any content available on a digital content platform, such as images, videos, text, audio, and any combinations and equivalents thereof.
Digital Content Platform: broadly interpreted to include, without exclusion, any web page, website, browser-based web application, software application, mobile device application (e.g., phone or tablet application), TV widget, and equivalents thereof.
Image: a visual representation of an object, or scene, or person, or abstraction, in the form of a machine-readable and/or machine-storable work product (e.g., one or more computer files storing a digital image, a browser-readable or displayable image file, etc.). As used herein, the term “image” is merely one example of “digital content.”
Proximate: is intended to broadly mean “relatively adjacent, close, or near,” as would be understood by one of skill in the art. The term “proximate” should not be narrowly construed to require an absolute position or abutment. For example, “content displayed proximate to an image,” means “content displayed relatively near an image, but not necessarily abutting or within the image.” (To clarify: “content displayed proximate to an image,” also includes “content displayed abutting or within the image.”) In another example, “content displayed proximate to an image,” means “content displayed on the same screen page or web page as the image.”
Publisher: Party that owns, provides, and/or controls a digital content platform; or third-party charged with providing, maintaining, and/or controlling ad space on a digital content platform.
Before the present invention is described in greater detail, it is to be understood that this invention is not limited to particular embodiments described, and as such may vary. It is also to be understood that the terminology used herein is for the purpose of describing particular embodiments only, and is not intended to be limiting. The scope of the present invention will be limited only by the appended claims.
Except for any term definitions that conflict with the term definitions provided herein, the following related, co-owned, and co-pending applications are incorporated by reference in their entirety: U.S. patent application Ser. Nos. 12/902,066; 13/005,217; 13/005,226; 13/045,426; 29/387,270; 29/387,271; 29/387,272; 29/387,273; 13/151,110; 13/219,460; 13/252,053; 29/403,731; 29/403,732; 29/403,733; 29/403,734; 29/403,826; 13/296,124; 13/299,280; 13/308,401; and 13/352,188.
A growing trend in modern computing devices is to limit screen sizes in order to make devices more compact and portable. For example, where the desktop computer was once commonplace, more recently end-users are accessing software programs and the Internet on small mobile devices, such as tablets and mobile phones. Further, even when a user accesses the Internet on a relatively larger screen/monitor, limitations with the size of web browsers, application interfaces, and pixel count create limitations on the amount of content a publisher can effectively provide on a digital content platform. The problem is compounded when publishers try to cram images, videos, text, and advertisements into a relatively small amount of space, without ruining the aesthetic look of the publication. As such, a publisher desires to maximize their use of “space” when publishing content on a digital content platform.
Images are typically the most information-rich content a publisher can provide. Images provide condensed, high-density information. Publishers, however, seldom have the mechanisms to make an image interactive, so as to provide additional/supplemental content if/when a reader is interested in the image. For example, a travel blog publisher may post an image of a hike he conducted through Yosemite National Park, along with text describing his hike. A reader of the blog may see the image and wonder: How do I get to Yosemite National Park? Where can I buy the bag the hiker is wearing? Where can I buy the shoes the hiker is wearing? How can I share this image with my friends? If the travel blog publisher wishes to add advertisements on how to get to Yosemite National Park, where to buy the hiking bag, where to buy the hiking shoes, a link to share the image with friends, etc., the blog could quickly become overcrowded with information, functionality, etc. Additionally, the travel blog publisher most likely prefers to concentrate his time on creating additional blog postings, instead of trying to identify and create content for all possible end-user considerations relative to each image he publishes.
The present invention generally relates to computer-implemented systems and methods for providing and displaying contextually relevant content for an image published on a digital content platform. The present invention thereby provides means for publishers to effectively maximize their use of space on a digital content platform. In conjunction with the systems and methods presented, a publisher can provide an image on a digital content platform, and a service provider can provide contextually relevant content, relative to the image, if/when a reader (i.e., an end-user) interacts with or shows interest in the image. In one embodiment, for example, the presented systems and methods include: (1) providing a publisher of the image with a reference script for publication with the image, wherein the reference script is a computer-readable instruction that causes an end-user device to call to a content server maintained by a service provider; and (2) configuring the content server to (a) receive a request for content from the end-user device, (b) identify content that is contextually relevant to the image, (c) deliver the content to the end-user device, and (d) deliver a computer-readable instruction that causes the end-user device to perform an animation that displays the content in a spatial relationship with respect to the image as originally published.
As such, in the example provided above, the travel blog publisher would simply publish the blog post with the image of his hike, along with the text describing his hike. The travel blog publisher would also publish his blog post with a reference script that causes a reader's end-user device to call to the service provider. The service provider's system can then analyze the image (via a content decision engine as discussed below) and identify contextually relevant content for the image. If and when the reader shows interest in the image, (by, for example, mousing-over the image, touching/clicking the image, etc.) the service provider then provides the content in a spatial relationship with respect to the image, without affecting any of the other content on the web page. For example, the service provider can provide computer-readable instructions that cause the end-user device to create an animation that flips the image and thereafter displays the contextually relevant content on the apparent “backside” of the image. In another embodiment, the animation completely covers the originally published image with contextually relevant content. By flipping or completely covering the originally published image, the publisher may limit the risk of any potential misunderstanding or misrepresentation of an “endorsement” of the contextually relevant content by the persons or places within the image. The contextually relevant content may include, for example, advertisement links for objects within the image, information about the contents of the image, additional software applications allowing the user to perform functions (such as, save, share, print, etc.) on the image.
The following detailed description of the figures refers to the accompanying drawings that illustrate exemplary embodiments. Other embodiments are possible. Modifications may be made to the embodiments described herein without departing from the spirit and scope of the present invention. Therefore, the following detailed description is not meant to be limiting.
A service provider 120 provides a software widget (e.g., web widget, executable computer code, computer-readable instructions, reference script, HTML script, etc.) for inclusion in the digital content platform 112. In one embodiment, the software widget analyzes the digital content platform in order to identify any and all of the images published on the platform. For example, the software widget can provide the function of “scraping” the platform for images (e.g., by walking the DOM nodes on an HTML script of a web page). In one embodiment, the software widget can be configured to identify published images that meet predefined characteristics, attributes, and/or parameters. The software widget then provides (or otherwise identifies) the images to the service provider 120 for further analysis. The analysis of the images typically occurs within a content decision engine 122, which may run within or in conjunction with the service provider's dedicated content server 121.
Within the content decision engine 122, the one or more published images are analyzed to identify contextually relevant content associated with the published image. For example, if the image 113 depicts a professional athlete, contextually relevant content may include information about the athlete's career, recent activities, associated product advertisements, etc. In another example, if the image 113 depicts a vacation setting, the contextually relevant content may include where the setting is located, advertisements on how to get to the vacation site, and other relevant information. Such contextually relevant content is then provided back to the digital content platform 112, for publication in a spatial relationship with respect to the image 113, as further discussed below.
To function as a means for identifying contextually relevant content for the image 113, the content decision engine 122 may employ analysis system components such as: algorithmic identification 123 or analysis of the image; image recognition protocols 124 and analysis of the image; proximate text recognition 125 in search of contextual information of the image based on text 115 published proximate to the image 113; submission of the image to a crowdsource network 126 to identify the context of the image and tag the image with relevant data; a thematic tagging engine 127 to identify and tag the image with relevant data, based on a pre-defined theme; publisher provided information database 128; and/or any combinations or equivalents thereof. Aspects of the system components of the content decision engine 122 are described in the above identified related applications, which have been incorporated by reference herein.
For example, within the algorithmic identification system component 123, an analysis may be performed to identify data, tags, or other attributes of the image. Such attributes may then be used to identify and select contextually relevant content that matches the same attributes. For example, an algorithm may be provided that identifies contextually relevant content having the same subject tag and size of the published image. Such contextually relevant content is then provided back to the end-user device for display in spatial relationship with the originally published image.
Image recognition system component 124 may employ one or more image recognition protocols in order to identify the subject matter of the image. An output of the image recognition system component 124 may then be used to identify and select contextually relevant content to be provided back to the end-user device. Image recognition algorithms and analysis programs are publicly available; see, for example, Wang et al., “Content-based image indexing and searching using Daubechies' wavelts,” Int J Digit Libr (1997) 1:311-328, which is herein incorporated by reference in its entirety.
Text recognition system component 125 may collect and analyze text that is published proximate to the image. Such text may provide contextual clues as to the subject matter of the image. Such contextual clues may then be used to identify and select contextually relevant content to be provided back to the end-user device. Examples of text recognition system components are described in U.S. patent application Ser. No. 13/005,217, which has been incorporated herein by reference.
A crowdsource network 126, alone or in combination with the additionally mentioned system components, may also be provided to identify and select contextually relevant content. In one embodiment, for example, a crowdsource network is provided with an interface for receiving, viewing, and/or tagging images published on one or more digital content platforms. The crowdsource network can be used to identify the context of the image and/or identify and select contextually relevant content that is associated with the image. The crowdsource network may be provided with specific instructions on how to best match images with associated content.
A thematic tagging engine 127, alone or in combination with the additionally mentioned system components, may also be provided to identify and select contextually relevant content. In one embodiment, for example, the thematic tagging engine works in conjunction with a crowdsource network to receive, view, and/or tag images published on one or more digital content platforms based on specific themes. Themes may include marketable considerations provided by one or more third-party merchants wishing to use the published images as an advertising mechanism. Examples of thematic tagging systems are described in more detail in U.S. patent application Ser. No. 13/299,280, which has been incorporated herein by reference.
The content decision engine 122 may also be directly linked to the publisher 110 to collect publisher provided information 128 with respect to the published image. For example, the publisher 110 may provide criteria for selecting which images are subject to analysis. The publisher 110 may also be provided with a “dashboard” or interface to configure various settings for the service provider's analysis. For example, the publisher can select what categories of contextually relevant content (e.g., in the form of informational categories, interactive functions, etc.) to be provided with respect to the published images. In one example, the publisher 110 may select interactive applications as described in U.S. patent application Ser. No. 12/308,401, which has been incorporated herein by reference. The publisher 110 may also select what third-party merchants may be used to provide advertisements for any particular image (or subset of images).
In operation, the service provider's software widget monitors the user's 105 interactions with the image 113. If the user 105 activates the image (by, for example, clicking on a hotspot 114, mousing-over the image, viewing the image for a defined period of time, etc.), the software widget sends a call to the service provider 120 (e.g., the service provider's content server 121 and/or content decision engine 122) to request contextually relevant content for the image. The software widget (or an associated “child” widgets) receives the contextually relevant content from the service provider 120, performs an animation on the image 113, and then displays the contextually relevant content in a spatial relationship with respect to the originally published image. For example, in one embodiment, the software widget employs Cascading Style Sheets (CSS) language to perform a “flip” animation on the image 113, so as to show the contextually relevant content on the apparent backside of the image. (In alternative embodiments, other computer language may be used to perform the animate; such as, JavaScript and HTML 5 Canvas.) Preferably, the software widget displays the contextually relevant content within the same pixel profile (i.e., the same pixel space) of the originally published image 113. As such, the contextually relevant content can be displayed without affecting any of the other content published on the digital content platform 112. Further, by providing the contextually relevant content with a spatial relationship with respect to the image 113, the user 105 is more focused on the contextually relevant content, without ruining the original aesthetic design provided by the publisher 110.
In operation, a publisher 210 maintains an HTML web page script 212 on a server 211 (Arrow A). The publisher 210 also inserts a reference script directed to a dedicated content server 221 maintained by a service provider 220 (Arrow B). A user 205 then employs an end-user device 206 and web browser 208 to access the HTML web page script 212 via the Internet 207 (Arrow C). The user's web browser 208 then loads the HTML web page script as a viewable web page 212 within the web browser 208. The web page 212 may include content such as an image 213 and text 215. The image may include one or more hotspots 214, or other means of activating the image. In one embodiment, the image 213 is not originally published with a hotspot 214, but instead has a hotspot activated after the service provider 220 has identified and analyzed the image.
Arrow E indicates the reference script calling to the service provider 220, and more specifically to the content decision engine 222, in order for the service provider to identify the image and identify content that is contextually relevant to the image. Such contextually relevant content is then returned to the end-user device 206 for display within the web browser 208, as shown by Arrow F. Preferably, the contextually relevant content is shown within the same pixel frame (or pixel profile) as the originally published image 213. In practice, the reference script may be used to initiate a direct data link between the end-user device 206 and the service provider 220. In one embodiment, such direct data link is provided by creating a direct communication link (not shown) between the end-user device 206 and the content server 221. As such, the service provider 220 can deliver executable code (or text instructions that can be compiled into executable code) directly to the end-user device 206. In one embodiment, the executable code (or instructions) is processed by the web browser 208 on the end-user device 206 to display the contextually relevant content in a spatial relationship with respect to the image 213. Such executable code (or instructions) may be configured to modify or otherwise animate the image in order to highlight to the user 205 that the contextually relevant content is specifically related to the image 213.
As shown, a publisher 310 provides an HTML web page 312 from its server 311, and includes a reference to an image on its image database 316, and an embed code received from the service provider 320. A user 305 then employs an end-user device 306 and web browser 308 to access the web page script 312 on the publisher's server 311. The user's web browser 308 then loads the web page 312. The web page 312 may include content such as an image 313 and text 315. The image may include one or more hotspots 314, or other means of activating the image. In one embodiment, the image 313 is not originally published with a hotspot 314, but instead has a hotspot activated after the service provider 320 has identified and analyzed the image.
The embed code functions to call on the service provider 320. The embed code may also create a direct link between the end-user device 306 and the service provider 320. As such, the service provider 320 can deliver software code (or corresponding computer-readable instructions) that function to: 1) identify one or more images published on the web page, 2) identify and/or set event handlers that watch for user activity; and/or 3) collect data on the image, text, user, publisher, and any other valuable information for analyzing the image and identifying contextually relevant content that may be beneficial to the user. In one embodiment, the software code (or corresponding computer-readable instructions) may be pre-configured (by the service provider 320, the publisher 310, and/or a third-party merchant) to only identify and analyze images that meet certain pre-set criteria. For example, if the publisher 310 wants to use his images for advertisement purposes, the service provider 320 can identify images that meet marketable requirements (set by either the publisher or a third-party merchant) in order to identify contextually relevant advertisements to display in a spatial relationship with the image.
After identifying the published image, the service provider 320 processes the image (or multiple images) through a content decision engine 322, in order to identify content that is contextually relevant to the image(s). Such contextually relevant content is then returned to the end-user device 306 for display within the web browser 308. Arrow 330 also indicates that the service provider 320 provides executable code (or computer-readable instructions that can be compiled into executable code) to modify or otherwise animate (Arrow A of
To function as a means for identifying contextually relevant content for the image 313, the content decision engine 322 may employ analysis system components such as: algorithmic identification 323 or analysis of the image; image recognition protocols 324 and analysis of the image; proximate text recognition 325 in search of contextual information of the image based on text 315 published proximate to the image 313; submission of the image to a crowdsource network 326 to identify the context of the image and tag the image with relevant data; a thematic tagging engine 327 to identify and tag the image with relevant data, based on a pre-defined theme; publisher provided information database 328; and/or any combinations or equivalents thereof.
In one embodiment, there is provided a computer-implemented method for displaying contextually relevant content associated with an image published on a digital content platform. The method comprises: (1) providing a publisher of the image with a reference script for publication with the image, wherein the reference script is a computer-readable instruction that causes an end-user device to call to a content server; and (2) configuring the content server to (a) receive a request for content from the end-user device, (b) identify the published image, (c) identify content that is contextually relevant to the image, (d) deliver the content to the end-user device, and (e) deliver a computer-readable instruction that causes the end-user device to perform an animation that displays the content in a spatial relationship with respect to the image as originally published. The content may be identified by a crowdsourcing network, a thematic tagging engine, a computer-based algorithm, an image recognition engine, a text recognition engine that identifies text published proximate to the image on the digital content platform, based on publisher provided data, and/or any additional equivalent means. The computer-readable instructions, which cause the end-user device to perform the animation, may incorporate CSS language, JavaScript language, HTML 5 Canvas language, or any equivalent language. The spatial relationship may be defined such that the content appears to be displayed on a backside of the image. The spatial relationship may also and/or alternatively be defined such that the content is displayed within a pixel profile of the image as originally published. For example, in one embodiment, the spatial relationship is defined such that the animation and/or contextually relevant content completely covers the originally published image. The content server may further be configured to: (3) deliver computer-readable instructions that cause the end-user device to identify whether the image meets one or more pre-defined requirements before calling to the content server; (4) deliver computer-readable instructions that require the end-user to activate the image before calling to the content server; and/or (5) deliver computer-readable instructions that cause the end-user device to communicate data directly with the content server.
In another embodiment, there is provided a computer-implemented method for displaying contextually relevant content associated with an image published on a digital content platform. The method includes: (1) providing a publisher of the image with an embed code for publication with the image, wherein the embed code is a computer-readable instruction that causes an end-user device to call to a dedicated content server; and (2) configuring the dedicated content server to (a) receive a request for content from the end-user device, (b) identify the published image, (c) identify contextually relevant content for the image, (d) deliver the contextually relevant content to the end-user device, and (e) deliver a computer-readable instruction that causes the end-user device to perform an animation that modifies the image and thereafter displays the contextually relevant content in a spatial relationship with the image as originally published. The contextually relevant content may be identified by a crowdsourcing network, a thematic tagging engine, a computer-based algorithm, an image recognition engine, a text recognition engine that identifies text published proximate to the image on the digital content platform, based on publisher provided data, and/or any additional equivalent means. The computer-readable instructions, which cause the end-user device to perform the animation that modifies the image, may incorporate CSS language, JavaScript language, HTML 5 Canvas language, or any equivalent language. The spatial relationship may be defined such that the contextually relevant content appears to be displayed on a backside of the image. The embed code may include computer-readable instructions that cause the end-user device to identify whether the image meets one or more pre-defined requirements before calling to the dedicated content server. The embed code may include computer-readable instructions that require the end-user to activate the image, with a user-actionable event, before calling to the dedicated content server. The dedicated server may be further configured to deliver computer-readable instructions that cause the end-user device to communicate data directly with the dedicated server.
In another embodiment, there is provided a computer-implemented method of displaying contextually relevant content (e.g., advertisements) on images published on a digital content platform (e.g., images published within a mobile application on a mobile device). The method includes providing the digital content platform (e.g., the mobile application on the mobile device) with an interface for: (1) a user to activate the image, and/or (2) the digital content platform to send images, image identifiers, image hashes, image unique reference locators (URLs), etc., to a service provider computer system. The interface can be in the form of hotspots, icons, or other actionable buttons, as well as an application programming interface linked to the service provider computer system. When the user activates the interface (e.g., by touching a screen icon), the image (or image identifier, etc.) is sent to a service provider for processing. The service provider's computer system receives a request for content from the user's device based on the user's activation of the icon. The service provider's computer system can then (a) identify the published image, (b) identify content that is contextually relevant to the image, (c) deliver the content to the end-user device, and/or (d) deliver a computer-readable instruction that causes the end-user device to perform an animation that displays the content in a spatial relationship with respect to the image as originally published. In this way, mobile applications (i.e., “apps”) that display (or scroll) multiple images across a limited screen space, can employ the teachings of this invention, to monetize the displayed images, without compromising the aesthetics of the mobile application. In other words, the mobile application can be set up so as to continue to display multiple images without associated advertisements. If and when a user is interested in a particular image, the user can activate an icon requesting additional content. The service provider can process the image through its content decision engine, and return relevant content (e.g., advertisements) back to the mobile application. An animation may then be employed to, for example, flip the image and display the relevant content on the backside of the image. In another embodiment, the animation can overlay the content onto the image itself. Preferably, the content is displayed with the same pixel space (or at least relatively close to the same pixel space) as the originally published image. As such, the relevant content can be displayed only if and when a user is actually interested in seeing additional relevant content. The display of the additional relevant content can be done without ruining the aesthetics of the mobile application. The relevant content can include links to advertisers/merchants where the user can purchase goods or services related to the contents/context of the originally displayed image.
Communication Between Parties Practicing the Present Invention.
In one embodiment, communication between the various parties and components of the present invention is accomplished over a network consisting of electronic devices connected either physically or wirelessly, wherein digital information is transmitted from one device to another. Such devices (e.g., end-user devices and/or servers) may include, but are not limited to: a desktop computer, a laptop computer, a handheld device or PDA, a cellular telephone, a set top box, an Internet appliance, an Internet TV system, a mobile device or tablet, or systems equivalent thereto. Exemplary networks include a Local Area Network, a Wide Area Network, an organizational intranet, the Internet, or networks equivalent thereto. The functionality and system components of an exemplary computer and network are further explained in conjunction with
Computer Implementation.
In one embodiment, the invention is directed toward one or more computer systems capable of carrying out the functionality described herein. For example,
Computer system 600 also includes a main memory 608, such as random access memory (RAM), and may also include a secondary memory 610. The secondary memory 610 may include, for example, a hard disk drive 612 and/or a removable storage drive 614, representing a floppy disk drive, a magnetic tape drive, an optical disk drive, flash memory device, etc. The removable storage drive 614 reads from and/or writes to a removable storage unit 618. Removable storage unit 618 represents a floppy disk, magnetic tape, optical disk, flash memory device, etc., which is read by and written to by removable storage drive 614. As will be appreciated, the removable storage unit 618 includes a computer usable storage medium having stored therein computer software, instructions, and/or data.
In alternative embodiments, secondary memory 610 may include other similar devices for allowing computer programs or other instructions to be loaded into computer system 600. Such devices may include, for example, a removable storage unit 622 and an interface 620. Examples of such may include a program cartridge and cartridge interface (such as that found in video game devices), a removable memory chip (such as an erasable programmable read only memory (EPROM), or programmable read only memory (PROM)) and associated socket, and other removable storage units 622 and interfaces 620, which allow computer software, instructions, and/or data to be transferred from the removable storage unit 622 to computer system 600.
Computer system 600 may also include a communications interface 624. Communications interface 624 allows computer software, instructions, and/or data to be transferred between computer system 600 and external devices. Examples of communications interface 624 may include a modern, a network interface (such as an Ethernet card), a communications port, a Personal Computer Memory Card International Association (PCMCIA) slot and card, etc. Software and data transferred via communications interface 624 are in the form of signals 628 which may be electronic, electromagnetic, optical or other signals capable of being received by communications interface 624. These signals 628 are provided to communications interface 624 via a communications path (e.g., channel) 626. This channel 626 carries signals 628 and may be implemented using wire or cable, fiber optics, a telephone line, a cellular link, a radio frequency (RF) link, a wireless communication link, and other communications channels.
In this document, the terms “computer-readable storage medium,” “computer program medium,” and “computer usable medium” are used to generally refer to media such as removable storage drive 614, removable storage units 618, 622, data transmitted via communications interface 624, and/or a hard disk installed in hard disk drive 612. These computer program products provide computer software, instructions, and/or data to computer system 600. These computer program products also serve to transform a general purpose computer into a special purpose computer programmed to perform particular functions, pursuant to instructions from the computer program products/software. Embodiments of the present invention are directed to such computer program products.
Computer programs (also referred to as computer control logic) are stored in main memory 608 and/or secondary memory 610. Computer programs may also be received via communications interface 624. Such computer programs, when executed, enable the computer system 600 to perform the features of the present invention, as discussed herein. In particular, the computer programs, when executed, enable the processor 604 to perform the features of the presented methods. Accordingly, such computer programs represent controllers of the computer system 600. Where appropriate, the processor 604, associated components, and equivalent systems and sub-systems thus serve as “means for” performing selected operations and functions. Such “means for” performing selected operations and functions also serve to transform a general purpose computer into a special purpose computer programmed to perform said selected operations and functions.
In an embodiment where the invention is implemented using software, the software may be stored in a computer program product and loaded into computer system 600 using removable storage drive 614, interface 620, hard drive 612, communications interface 624, or equivalents thereof. The control logic (software), when executed by the processor 604, causes the processor 604 to perform the functions and methods described herein.
In another embodiment, the methods are implemented primarily in hardware using, for example, hardware components such as application specific integrated circuits (ASICs). Implementation of the hardware state machine so as to perform the functions and methods described herein will be apparent to persons skilled in the relevant art(s). In yet another embodiment, the methods are implemented using a combination of both hardware and software.
Embodiments of the invention, including any systems and methods described herein, may also be implemented as instructions stored on a machine-readable medium, which may be read and executed by one or more processors. A machine-readable medium may include any mechanism for storing or transmitting information in a form readable by a machine (e.g., a computing device). For example, a machine-readable medium may include read only memory (ROM); random access memory (RAM); magnetic disk storage media; optical storage media; flash memory devices; electrical, optical, acoustical or other forms of propagated signals (e.g., carrier waves, infrared signals, digital signals, etc.), and others. Further, firmware, software, routines, instructions may be described herein as performing certain actions. However, it should be appreciated that such descriptions are merely for convenience and that such actions in fact result from computing devices, processors, controllers, or other devices executing firmware, software, routines, instructions, etc.
For example, in one embodiment, there is provided a computer-readable storage medium, stored on a content server, for displaying contextually relevant content associated with an image published on a digital content platform. The computer-readable storage medium includes instructions executable by at least one processing device that, when executed, cause the processing device to: (a) receive a request for content from an end-user device, wherein the end-user device is directed to the content server via a reference script published with the image on the digital content platform; (b) identify contextually relevant content for the image; (c) deliver the contextually relevant content to the end-user device; and (d) deliver a computer-readable instruction that causes the end-user device to perform an animation that modifies the image and thereafter displays the contextually relevant content in a spatial relationship with the image as originally published. The computer-readable storage medium may further comprise instructions executable by at least one processing device that, when executed, cause the processing device to (e) provide the image to a crowdsourcing network, and receive the contextually relevant content from the crowdsourcing network; (f) provide the image to a thematic tagging engine, and receive the contextually relevant content from the thematic tagging engine; (g) deliver the image to the thematic tagging engine, and receive at least one thematic tag from the thematic tagging engine; (h) identify contextually relevant content for the image based on the thematic tag; (i) identify whether the image meets one or more pre-defined requirements; and/or (j) require the end-user to activate the image, with a user-actionable event, before calling to the dedicated content server. The contextually relevant content for the image may be identified based on text published proximate to the image on the digital content platform. The computer-readable instruction, which causes the end-user device to perform the animation that modifies the image, may incorporate CSS language, JavaScript language, HTML 5 Canvas language, or any equivalent language. The spatial relationship may be defined such that the contextually relevant content appears to be displayed on a backside of the image.
In another embodiment, there is provided a computer-readable storage medium, stored on a dedicated content server, for displaying contextually relevant content associated with an image published on a digital content platform, comprising instructions executable by at least one processing device that, when executed, cause the processing device to: (a) receive a request for content from an end-user device, wherein the end-user device is directed to the dedicated content server via embed code published along with the image on the digital content platform; (b) identify the published image; (c) identify contextually relevant content for the image, (d) deliver the contextually relevant content to the end-user device, and (e) deliver a computer-readable instruction that causes the end-user device to perform an animation that modifies the image and thereafter displays the contextually relevant content in a spatial relationship with the image as originally published. The computer-readable storage medium may further comprise instructions executable by at least one processing device that, when executed, cause the processing device to: (f) deliver the image to the crowdsourcing network, and receive contextually relevant content from the crowdsourcing network; (g) deliver the image to the thematic tagging engine, and receive at least one thematic tag from the thematic tagging engine; (h) identify contextually relevant content for the image based on the thematic tag; (i) identify whether the image meets one or more pre-defined requirements; and/or (j) deliver a computer-readable instruction that causes the end-user device to require the end-user to activate the image, with a user-actionable event, before calling to the dedicated content server. The contextually relevant content for the image may be identified with a crowdsourcing network; a thematic tagging engine; and/or based on text published proximate to the image on the digital content platform. The computer-readable instruction, which causes the end-user device to perform the animation that modifies the image, may incorporate CSS language, JavaScript language, HTML 5 Canvas language, or any equivalent language. The spatial relationship may be defined such that the contextually relevant content appears to be displayed on a backside of the image.
The foregoing description of the invention has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed. Other modifications and variations may be possible in light of the above teachings. The embodiments were chosen and described in order to best explain the principles of the invention and its practical application, and to thereby enable others skilled in the art to best utilize the invention in various embodiments and various modifications as are suited to the particular use contemplated. It is intended that the appended claims be construed to include other alternative embodiments of the invention; including equivalent structures, components, methods, and means.
As will be apparent to those of skill in the art upon reading this disclosure, each of the individual embodiments described and illustrated herein has discrete components and features which may be readily separated from or combined with the features of any of the other several embodiments without departing from the scope or spirit of the present invention. Any recited method can be carried out in the order of events recited or in any other order which is logically possible. Further, each system component and/or method step presented should be considered a “means for” or “step for” performing the function described for said system component and/or method step. As such, any claim language directed to a “means for” or “step for” performing a recited function refers to the system component and/or method step in the specification that performs the recited function, as well as equivalents thereof.
It is to be appreciated that the Detailed Description section, and not the Summary and Abstract sections, is intended to be used to interpret the claims. The Summary and Abstract sections may set forth one or more, but not all exemplary embodiments of the present invention as contemplated by the inventor(s), and thus, are not intended to limit the present invention and the appended claims in any way.
This application is a continuation of U.S. patent application Ser. No. 13/777,917, filed on Feb. 26, 2013, which is a continuation of U.S. patent application Ser. No. 13/564,609, filed on Aug. 1, 2012, now U.S. Pat. No. 8,392,538, which is a continuation of U.S. patent application Ser. No. 13/427,341, filed on Mar. 22, 2012, now U.S. Pat. No. 8,255,495, each of which are incorporated herein by reference in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
D297243 | Wells-Papanek et al. | Aug 1988 | S |
4789962 | Berry et al. | Dec 1988 | A |
5008853 | Bly et al. | Apr 1991 | A |
5199104 | Hirayama | Mar 1993 | A |
5287448 | Nicol et al. | Feb 1994 | A |
5349518 | Zifferer et al. | Sep 1994 | A |
5367623 | Iawi et al. | Nov 1994 | A |
5428733 | Carr | Jun 1995 | A |
5463727 | Wiggins et al. | Oct 1995 | A |
5513305 | Maghbouleh | Apr 1996 | A |
5583655 | Tsukamoto et al. | Dec 1996 | A |
5589892 | Knee et al. | Dec 1996 | A |
5615367 | Bennett et al. | Mar 1997 | A |
5627958 | Potts et al. | May 1997 | A |
D384050 | Kodosky | Sep 1997 | S |
D384052 | Kodosky | Sep 1997 | S |
5682469 | Linnett et al. | Oct 1997 | A |
5684716 | Freeman | Nov 1997 | A |
5689669 | Lynch et al. | Nov 1997 | A |
5706507 | Schloss | Jan 1998 | A |
5721906 | Siefert | Feb 1998 | A |
5724484 | Kagami | Mar 1998 | A |
5754176 | Crawford | May 1998 | A |
5796932 | Fox et al. | Aug 1998 | A |
D406828 | Newton et al. | Mar 1999 | S |
5933138 | Driskell | Aug 1999 | A |
5956029 | Okada et al. | Sep 1999 | A |
6026377 | Burke | Feb 2000 | A |
6034687 | Taylor et al. | Mar 2000 | A |
D427576 | Coleman | Jul 2000 | S |
6285381 | Sawano et al. | Sep 2001 | B1 |
D450059 | Itou | Nov 2001 | S |
6356908 | Brown et al. | Mar 2002 | B1 |
6414679 | Miodonski et al. | Jul 2002 | B1 |
D469104 | Istvan et al. | Jan 2003 | S |
6513035 | Tanaka et al. | Jan 2003 | B1 |
6728752 | Chen et al. | Apr 2004 | B1 |
6731311 | Bufe et al. | May 2004 | B2 |
D495715 | Glldred | Sep 2004 | S |
7069308 | Abrams | Jun 2006 | B2 |
D528552 | Nevill-Manning | Sep 2006 | S |
D531185 | Cummins | Oct 2006 | S |
7117254 | Lunt et al. | Oct 2006 | B2 |
7124372 | Brin | Oct 2006 | B2 |
7159185 | Vedula et al. | Jan 2007 | B1 |
D544877 | Sasser | Jun 2007 | S |
7231395 | Fain et al. | Jun 2007 | B2 |
7233316 | Smith et al. | Jun 2007 | B2 |
7251637 | Caid | Jul 2007 | B1 |
D550681 | Totten et al. | Sep 2007 | S |
D553632 | Harvey et al. | Oct 2007 | S |
D555661 | Kim | Nov 2007 | S |
D557275 | De Mar et al. | Dec 2007 | S |
D562840 | Cameron | Feb 2008 | S |
D566716 | Rasmussen et al. | Apr 2008 | S |
D567252 | Choe et al. | Apr 2008 | S |
7383510 | Pry | Jun 2008 | B2 |
D575298 | Chen et al. | Aug 2008 | S |
D577365 | Flynt et al. | Sep 2008 | S |
7428504 | Song | Sep 2008 | B2 |
7437358 | Arrouye et al. | Oct 2008 | B2 |
7502785 | Chen | Mar 2009 | B2 |
D590412 | Saft et al. | Apr 2009 | S |
7519200 | Gokturk et al. | Apr 2009 | B2 |
7519595 | Solaro et al. | Apr 2009 | B2 |
D592221 | Rehling et al. | May 2009 | S |
7542610 | Gokturk et al. | Jun 2009 | B2 |
D596642 | Rehling et al. | Jul 2009 | S |
7558781 | Probst et al. | Jul 2009 | B2 |
D599358 | Hoefnagels et al. | Sep 2009 | S |
D599812 | Hirsch | Sep 2009 | S |
D599813 | Hirsch | Sep 2009 | S |
D600704 | LaManna et al. | Sep 2009 | S |
D600706 | LaManna et al. | Sep 2009 | S |
7599938 | Harrison, Jr. | Oct 2009 | B1 |
D610159 | Matheny et al. | Feb 2010 | S |
7657100 | Gokturk et al. | Feb 2010 | B2 |
7657126 | Gokturk et al. | Feb 2010 | B2 |
7660468 | Gokturk et al. | Feb 2010 | B2 |
D612862 | Fletcher et al. | Mar 2010 | S |
D613299 | Owen et al. | Apr 2010 | S |
D613750 | Truelove et al. | Apr 2010 | S |
D614638 | Viegers et al. | Apr 2010 | S |
D617808 | Thompson et al. | Jun 2010 | S |
7760917 | Vanhoucke et al. | Jul 2010 | B2 |
D622730 | Krum et al. | Aug 2010 | S |
7774333 | Colledge et al. | Aug 2010 | B2 |
7783135 | Gokturk et al. | Aug 2010 | B2 |
7792818 | Fain et al. | Sep 2010 | B2 |
D626133 | Murphy et al. | Oct 2010 | S |
7809722 | Gokturk et al. | Oct 2010 | B2 |
D629411 | Weir et al. | Dec 2010 | S |
D633511 | Cameron et al. | Mar 2011 | S |
D638025 | Saft et al. | May 2011 | S |
7945653 | Zuckerberg et al. | May 2011 | B2 |
D643044 | Ording | Aug 2011 | S |
8024345 | Colledge et al. | Sep 2011 | B2 |
8027940 | Li et al. | Sep 2011 | B2 |
8036990 | Mir et al. | Oct 2011 | B1 |
8055688 | Giblin | Nov 2011 | B2 |
8060161 | Kwak | Nov 2011 | B2 |
8065184 | Wright et al. | Nov 2011 | B2 |
D652424 | Cahill et al. | Jan 2012 | S |
D653260 | Vance et al. | Jan 2012 | S |
8095540 | Parikh et al. | Jan 2012 | B2 |
D655719 | Zaman et al. | Mar 2012 | S |
8136028 | Loeb et al. | Mar 2012 | B1 |
D657379 | Vance et al. | Apr 2012 | S |
8166383 | Everingham et al. | Apr 2012 | B1 |
D658668 | Spears et al. | May 2012 | S |
8175922 | Jones et al. | May 2012 | B2 |
8180672 | Curtis et al. | May 2012 | B2 |
D661312 | Vance et al. | Jun 2012 | S |
8234168 | Lagle Ruiz et al. | Jul 2012 | B1 |
D664976 | Everingham | Aug 2012 | S |
D664977 | Everingham | Aug 2012 | S |
D665397 | Naranjo et al. | Aug 2012 | S |
D666208 | Spears et al. | Aug 2012 | S |
D666209 | Cranfill | Aug 2012 | S |
8250145 | Zuckerberg et al. | Aug 2012 | B2 |
8255495 | Lee | Aug 2012 | B1 |
D669086 | Boyer et al. | Oct 2012 | S |
8280959 | Zuckerberg et al. | Oct 2012 | B1 |
8311889 | Lagle Ruiz et al. | Nov 2012 | B1 |
8392538 | Lee | Mar 2013 | B1 |
D686238 | Poston et al. | Jul 2013 | S |
8495489 | Everingham | Jul 2013 | B1 |
D691622 | Shaffer | Oct 2013 | S |
D692445 | Stovicek | Oct 2013 | S |
D696679 | Bae et al. | Dec 2013 | S |
8605133 | Lampotang et al. | Dec 2013 | B2 |
8635519 | Everingham et al. | Jan 2014 | B2 |
D698801 | Jung | Feb 2014 | S |
20010044758 | Talib et al. | Nov 2001 | A1 |
20020065844 | Robinson et al. | May 2002 | A1 |
20030050863 | Radwin | Mar 2003 | A1 |
20030131357 | Kim | Jul 2003 | A1 |
20030220912 | Fain et al. | Nov 2003 | A1 |
20040070616 | Hildebrandt et al. | Apr 2004 | A1 |
20050216300 | Appleman et al. | Sep 2005 | A1 |
20050235062 | Lunt et al. | Oct 2005 | A1 |
20050251760 | Sato et al. | Nov 2005 | A1 |
20060155684 | Liu | Jul 2006 | A1 |
20060179453 | Kadie et al. | Aug 2006 | A1 |
20060265400 | Fain et al. | Nov 2006 | A1 |
20060265653 | Paasonen et al. | Nov 2006 | A1 |
20070005795 | Gonzalez | Jan 2007 | A1 |
20070027856 | Lee | Feb 2007 | A1 |
20070032244 | Counts et al. | Feb 2007 | A1 |
20070118520 | Bliss et al. | May 2007 | A1 |
20070157119 | Bishop | Jul 2007 | A1 |
20070203903 | Attaran Rezaei et al. | Aug 2007 | A1 |
20070219968 | Frank | Sep 2007 | A1 |
20070255785 | Hayashi et al. | Nov 2007 | A1 |
20070258646 | Sung et al. | Nov 2007 | A1 |
20080004992 | King et al. | Jan 2008 | A1 |
20080016040 | Jones et al. | Jan 2008 | A1 |
20080046458 | Tseng et al. | Feb 2008 | A1 |
20080079696 | Shim et al. | Apr 2008 | A1 |
20080082426 | Gokturk et al. | Apr 2008 | A1 |
20080091723 | Zuckerberg et al. | Apr 2008 | A1 |
20080134088 | Tse et al. | Jun 2008 | A1 |
20080141110 | Gura | Jun 2008 | A1 |
20080163379 | Robinson et al. | Jul 2008 | A1 |
20080177640 | Gokturk et al. | Jul 2008 | A1 |
20080199075 | Gokturk et al. | Aug 2008 | A1 |
20080208849 | Conwell | Aug 2008 | A1 |
20080268876 | Gelfand et al. | Oct 2008 | A1 |
20080306933 | Valliani et al. | Dec 2008 | A1 |
20090006375 | Lax et al. | Jan 2009 | A1 |
20090007012 | Mandie et al. | Jan 2009 | A1 |
20090064003 | Harris et al. | Mar 2009 | A1 |
20090070435 | Abhyanker | Mar 2009 | A1 |
20090113475 | Li | Apr 2009 | A1 |
20090125544 | Brindley | May 2009 | A1 |
20090144392 | Wang et al. | Jun 2009 | A1 |
20090148045 | Lee et al. | Jun 2009 | A1 |
20090158146 | Curtis et al. | Jun 2009 | A1 |
20090159342 | Markiewicz et al. | Jun 2009 | A1 |
20090165140 | Robinson et al. | Jun 2009 | A1 |
20090171964 | Eberstadt et al. | Jul 2009 | A1 |
20090193032 | Pyper | Jul 2009 | A1 |
20090228838 | Ryan et al. | Sep 2009 | A1 |
20090287669 | Bennett | Nov 2009 | A1 |
20100005001 | Aizen et al. | Jan 2010 | A1 |
20100005087 | Basco | Jan 2010 | A1 |
20100046842 | Conwell | Feb 2010 | A1 |
20100054600 | Anbalagan et al. | Mar 2010 | A1 |
20100054601 | Anbalagan et al. | Mar 2010 | A1 |
20100063961 | Guiheneuf | Mar 2010 | A1 |
20100077290 | Pueyo | Mar 2010 | A1 |
20100161631 | Yu et al. | Jun 2010 | A1 |
20100191586 | Veeramachaneni et al. | Jul 2010 | A1 |
20100260426 | Huang et al. | Oct 2010 | A1 |
20100287236 | Amento et al. | Nov 2010 | A1 |
20100290699 | Adam et al. | Nov 2010 | A1 |
20100312596 | Saffari et al. | Dec 2010 | A1 |
20100313143 | Jung et al. | Dec 2010 | A1 |
20110010676 | Khosravy | Jan 2011 | A1 |
20110022958 | Kang et al. | Jan 2011 | A1 |
20110072047 | Wang et al. | Mar 2011 | A1 |
20110082825 | Sathish | Apr 2011 | A1 |
20110087990 | Ng et al. | Apr 2011 | A1 |
20110131537 | Cho et al. | Jun 2011 | A1 |
20110138300 | Kim et al. | Jun 2011 | A1 |
20110164058 | Lemay | Jul 2011 | A1 |
20110173190 | van Zwol et al. | Jul 2011 | A1 |
20110184814 | Konkol et al. | Jul 2011 | A1 |
20110196863 | Marcucci et al. | Aug 2011 | A1 |
20110243459 | Deng | Oct 2011 | A1 |
20110249024 | Arrasvuori | Oct 2011 | A1 |
20110264736 | Zuckerberg et al. | Oct 2011 | A1 |
20110276396 | Rathod | Nov 2011 | A1 |
20110280447 | Conwell | Nov 2011 | A1 |
20110288935 | Elvekrog et al. | Nov 2011 | A1 |
20110296339 | Kang | Dec 2011 | A1 |
20120005209 | Rinearson | Jan 2012 | A1 |
20120036132 | Doyle | Feb 2012 | A1 |
20120054355 | Arrasvuori | Mar 2012 | A1 |
20120059884 | Rothschild | Mar 2012 | A1 |
20120075433 | Tatzgem et al. | Mar 2012 | A1 |
20120110464 | Chen et al. | May 2012 | A1 |
20120158668 | Tu et al. | Jun 2012 | A1 |
20120185343 | Jones et al. | Jul 2012 | A1 |
20120203651 | Leggatt | Aug 2012 | A1 |
20120205436 | Thomas et al. | Aug 2012 | A1 |
20120231425 | Caiman et al. | Sep 2012 | A1 |
20120233000 | Fisher et al. | Sep 2012 | A1 |
20120233143 | Everingham | Sep 2012 | A1 |
20120258776 | Lord et al. | Oct 2012 | A1 |
20120287469 | Tomiyasu et al. | Nov 2012 | A1 |
20120290387 | Davis | Nov 2012 | A1 |
20130063561 | Stephan | Mar 2013 | A1 |
Entry |
---|
Cascia et al., “Combining Textual and Visual Cues for Content-based Image Retrieval on the World Wide Web,” IEEE Workshop on Content-based Access of Image and Video Libraries (Jun. 1998). |
Everingham et al., “Hello! My name is . . . Buffy'—Automatic Naming of Characters in TV Video,” Proceedings of the 17th British Machine Vision Conference (BMVC2006), pp. 889-908 (Sep. 2006). |
FAQ from Pixazza's website as published on Feb. 22, 2010, retrieved at http://web.archive.org/web/2010022200_1945/ http://www.pixazza.com/faq/. |
Galleguillos et al., “Object Categorization using Co-Occurrence, Location and Appearance,” IEEE Conference on Computer Vision and Pattern Recognition (CVPR) Anchorage, USA (2008). |
Heitz & Koller, “Learning Spatial Context: Using Stuff to Find Things,” European Conference on Computer Vision (ECCV) (2008). |
Hoiem et al., “Putting Objects in Perspective,” IJCV (80), No. 1 (Oct. 2008). |
Jain et al., “Fast Image Search for Learned Metrics,” Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR) (Jun. 2008). |
Lober et al., “IML: An Image Markup Language,” Proceedings, American Medical Informatics Association Fall Symposium, pp. 403-407 (2001). |
Rao, Leena Google Ventures-Backed Pixazza Raises $12 Million for Crowdsourced ‘AdSense for Images’, published Jul. 18, 2010, retrieved from http://techcrunch.com/2010/07/18google-funded-pixazza-raises-12-million-for-crowdsourced-adsense-for-images/. |
Russel & Torralba, “LabelME: a database and web-based tool for image annotation,” International Journal of Computer Vision, vol. 77, Issue 1-3, pp. 157-173 (May 2008). |
Torralba, “Contextual Priming for Object Detection,” International Journal of Computer Vision, vol. 53, Issue 2, pp. 169-191 (2003). |
Venkatesan et al., “Robust Image Hashing” Image Processing Proceedings, 2000 International Conference vol. 3, 664-666 (2000). |
Number | Date | Country | |
---|---|---|---|
20150370815 A1 | Dec 2015 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 13777917 | Feb 2013 | US |
Child | 14842576 | US | |
Parent | 13564609 | Aug 2012 | US |
Child | 13777917 | US | |
Parent | 13427341 | Mar 2012 | US |
Child | 13564609 | US |