Platform for providing interactive applications on a digital content platform

Information

  • Patent Grant
  • 8737678
  • Patent Number
    8,737,678
  • Date Filed
    Wednesday, November 30, 2011
    12 years ago
  • Date Issued
    Tuesday, May 27, 2014
    10 years ago
Abstract
Systems and methods for providing interactive applications. In one embodiment, the systems and methods may include: (a) identifying digital content published on digital content platforms (e.g., images published on webpages); (b) assigning a key to the digital content; and (c) processing the digital content through a tagging engine (e.g., a crowdsource network) to tag the content with contextual data. The systems and methods may further include: (d) maintaining a data repository, wherein the content and respective data are indexed by corresponding key; (e) receiving a data request from an enabled application, upon user-activation of the application, wherein the data request includes the key; (f) conducting a data search of the data repository based on the key; and (g) providing the content data, responsive to the data request, for rendering of the enabled and user-activated application.
Description
SUMMARY

Disclosed herein are systems and methods for providing interactive applications on a digital content platform. In one embodiment, the systems and methods are used for facilitating the enablement, activation, and rendering of interactive applications on a digital content platform (e.g., a webpage, mobile application, etc.). Such systems and methods may include: (a) identifying digital content published on digital content platforms (e.g., images published on webpages); (b) assigning a key to the digital content; and (c) processing the digital content through a tagging engine (e.g., a crowdsource network) to tag the images with contextual data. The systems and methods further include: (d) maintaining a data repository, wherein the content and respective contextual data are indexed by corresponding key; (e) receiving a data request from an enabled application, upon user-activation of the enabled application, wherein the data request includes the key; (f) conducting a data search of the data repository based on the key; and (g) providing the contextual data, responsive to the data request, for rendering of the enabled and user-activated application.





BRIEF DESCRIPTION OF THE FIGURES

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.



FIG. 1 is a high-level diagram illustrating an embodiment of the present invention.



FIG. 2 is a high-level diagram illustrating another embodiment of the present invention.



FIG. 3 is a flowchart illustrating an embodiment presented.



FIG. 4 is a flowchart illustrating another embodiment presented.



FIG. 5 is a high-level diagram illustrating another embodiment of the present invention.



FIG. 6 is a screenshot illustrating an implementation of the present invention.



FIG. 7 is another screenshot illustrating an implementation of the present invention.



FIG. 8 is a schematic drawing of a computer system used to implement the methods.





DEFINITIONS

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).


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 webpage, 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.”


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.


RELATED APPLICATIONS

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; and 13/299,280.


DETAILED DESCRIPTION

Disclosed herein are systems and methods for providing interactive applications on a digital content platform. In one embodiment, the systems and methods are used for facilitating the enablement, activation, and rendering of interactive applications on a digital content platform. Such systems and methods may include: (a) identifying digital content published on digital content platforms; (b) assigning a key to the digital content; and (c) processing the digital content through a tagging engine to tag the images with contextual data. The systems and methods further include: (d) maintaining a data repository, wherein the content and respective contextual data are indexed by corresponding key; (e) receiving a data request from an enabled application, upon user-activation of the enabled application, wherein the data request includes the key; (f) conducting a data search of the data repository based on the key; and (g) providing the contextual data, responsive to the data request, for rendering of the enabled and user-activated application. In one particular embodiment, the digital content includes images published on a webpage. The tagging engine may include a crowdsource network to identify the context of the image and provide contextual tags. Additional embodiments and examples are provided below.


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.



FIG. 1 is a high-level diagram illustrating an embodiment of the present invention. More specifically, FIG. 1 illustrates a system 100 for facilitating the enablement, activation, and/or rendering of interactive applications (or “apps”) proximate to digital content published on a digital content platform (e.g., an image published on a webpage). As shown, a user 105 accesses a digital content platform (e.g., a webpage) through an Internet connection 101. Typically, digital content, such as an image 107, published or otherwise displayed on a webpage, is static and provides limited interactivity with the user. However, image 107 provides an opportunity to interact with a user, provide additional content, and/or serve as “online real estate” for providing contextually relevant advertisements. As will be described below, system 100 provides a platform for providing interactive content and/or applications for a user 105, relevant to the published digital content.


As shown in FIG. 1, one or more application developer(s) 150 may provide one or more interactive applications 155a, 155b, 155c, for enablement, activation, and rendering on published digital content (e.g., image 107). In practice, applications 155a, 155b, and/or 155c can be enabled by the application developer 150, a service provider 110, and/or the publisher of the digital content. Enablement of the applications provides the user with a palette of applications to choose from. In the example shown in FIG. 1, the user 105 can then activate one or more of the enabled applications by selecting a respective icon or hotspot 156a, 156b, 156c on image 107. User-activation of the selected application then pulls image data available for the image 107 in order to render an in-image interactive application 157 proximate to the image. (The use of the term “in-image” should not be interpreted to require a fixed positional relationship between the image and the application. For example, in one embodiment, an “in-image application” may be rendered proximate to the image; i.e., inside or outside the image boundary/frame, near the image, on the same screen as the image, on the same webpage as the image; or any other equivalent position relative to the image.)


In order for the enablement, activation, and/or rendering of the in-image application to be relevant to the image, the application developer(s) 150 may require detailed contextual information (or data) on the contents/context of the image 107. In practice, the contextual data is provided by a service provider 110. More specifically, service provider 110 implements various interfaces and sub-protocols to identify published content, analyze the content, index and maintain the data available on the content, and provide contextual data to the enabled and activated applications 155a, 155b, 155c. For example, the service provider 110 can pull digital images published on webpages, and process the images through an image tagging engine 120. Within image tagging engine 120, the service provider 110 employs techniques such as: algorithmic identification 121 or analysis of the image; image recognition protocols 122 and analysis of the image; proximate text recognition 123 in search of contextual information of the image based on text published proximate to the image; submission of the image to a crowdsource network 124 to identify the context of the image and tag the image with relevant data; a thematic tagging engine 125 to identify and tag the image with relevant data, based on a pre-defined theme; an application feedback engine 126 to receive use-feedback from an enabled, activated, and rendered application; and/or any combinations or equivalents thereof. Information/data obtained or developed respective to the image is then stored in an image data repository 130. In one embodiment, the image data is indexed within image data repository 130 via a unique image key, uniform resource locator (URL), or equivalents thereof. As such, inquiries and/or searches upon image data repository 130 may quickly and effectively provide all relevant data available for use in an interactive in-image application.



FIG. 2 is a high-level diagram illustrating an example implementation of the system 100 of FIG. 1. The labeling of arrows A-F indicates the process flow of the implementation. As shown in FIG. 2, an application 255 is activated by a user. The activated application then pulls the unique image key 215 of the image (A), and provide such image key to the service provider (B). The image key 215 is used to conduct a search of the relevant data 231 obtained by the service provider based on processing of the image (C). In some instances, application 255 may request all available data on the image. However, in some instances, application 255 may only request specific data 233 (D) for rendering of the application 257 (F). For example, if the function of the application is to provide a map of a location shown on the image, the image data repository 230 may provide the location data 233, identified by analysis of the image, for rendering of an in-image map application 257.



FIG. 3 is a flowchart illustrating an embodiment presented. More specifically, FIG. 3 shows a method 300 for processing digital content (e.g., a published digital image). In step 301, one or more images are received from one or more publishers. In one embodiment, a service provider provides an interface for one or more publishers to submit images that are (or will be) published. In another embodiment, a service provider “scrapes” the images from the publishers' digital platform(s). For example, the service provider may implement a “widget” (e.g., a line of software (e.g., HTML) code inserted into a publisher's webpage) to identify the images being published on the digital content platform. Such widget can then push the images to the service provider for processing.


In step 302, external data, corresponding to the image, is collected. For example, any existing metadata is collected on the image. Such metadata may be included amongst the contextual database entry created for the image. In step 303, the image is processed through an image tagging engine to obtain additional relevant and contextually specific data. For example, in one embodiment, the image is submitted to a crowdsource network, wherein the image is evaluated and analyzed. The crowdsource network can return one or more contextual tags, identifiers, or other data that can later be used by one or more interactive applications.


In step 305, the image data is stored in an image data repository. For example, an image data repository (e.g., a database on a server) may store the image data with or without an actual copy of the image. In one embodiment, the image data is stored and indexed by a unique image key identifier. The image key may be used as a means for identifying, searching, and/or retrieving the stored image data. In operation, when an enabled and activated in-image application requires image data, the image key can be used to identify the respective image in an image data request.


In step 307, the service provider may enable in-image applications based on the availability of image data. For example, the service provider may manage a catalog of available in-image applications. Each application may require different image data in order to effectively function for its intended purpose. However, the required image data may or may not be available. As such, the service provider can determine whether sufficient image data is available in order to effectively render the application useful. If the image data is not available, the application can be disabled. If the image data is available, the application can be enabled. A publisher may also be given the option of choosing which in-image applications should be enabled/disabled.



FIG. 4 is a flowchart illustrating another embodiment presented. More specifically, FIG. 4 illustrates a sub-protocol 400 implemented by a service provider after processing images through an image tagging engine. In step 401, an image data request is received from an in-image interactive application. Such image request typically arrives to the service provider from an in-image application interface, wherein the end-user activates a hotspot (or application icon) on the image to activate the in-image application. In step 403, an image key search is performed based on the image data request. In step 405, a determination is made as to whether the image includes an associated image key. If the image does not include an image key, a decision is made as to whether to create an image key, in step 406, and/or process the image through an image tagging engine (or sub-protocol 300). However, if an image key is available, then the application-specific image data is pulled from the image data repository, in step 407. The image data is delivered to the activated in-image application, in step 409. Optionally, a feedback interface may be provided to receive application (or use) feedback data, in step 411. In step 413, the image data may be updated in the image data repository for future use.



FIG. 5 is a high-level diagram illustrating another embodiment of the present invention. More specifically, FIG. 5 shows a system 500, which includes use of both an internal (i.e., service provider managed) image data repository 530, and an external (i.e., third-party managed) image data repository 560. In the embodiment shown in FIG. 5, an application 555 is activated by user-activation of a hotspot (or icon) 556 on a published image 507. The image key for image 507 is pulled (or pushed) by application 555, and provided to an image markup language (IML) request management module 529. The IML request module 529 determines whether the image data needed for rendering of the application 555 is maintained in the service provider image data repository 530 or the third-party image data repository 560. The IML request module 529 then pulls (or pushes) the necessary data, and provides the data for rendering of the application 555 proximate the image 507. Use-feedback can then be collected by service provider reporting metrics 513 and/or third-party reporting metrics 570. As such, a complete and more robust image data system may be provided in order to facilitate the rendering of content-rich, interactive in-image applications.



FIGS. 6 and 7 are screenshots illustrating an implementation of the present invention. In practice, an end-user may expose an application palette (or application user-interface) 791 by activation of a hotspot 690 on published digital image 607. One or more enabled in-image interactive applications may then be displayed along application palette 791. In the embodiment shown, an in-image application 756 may be a map display application. Upon user-activation of the application icon 756, the image key of the image 607 is provided to a service provider, as described above. The service provider the returns image data specific to the activated application. In the embodiment shown, such image data may include location data specific to the location depicted within the image. The activated application may then render an overlay 757 showing a map of the location shown in the image (or other functional rendering of the application). In one embodiment, the application and/or service provider rewrites the publisher's HTML in order to overlay the interactive application and relevant content over the published image.


Additional Embodiments

In another embodiment, there is provided a computer-implemented method for facilitating the rendering of in-image applications, the method comprising: (a) identifying a digital image published on a digital content platform; (b) assigning an image key to the digital image; (c) processing the digital image through an image tagging engine to tag the image with one or more contextual tags; (d) maintaining an image data repository, wherein the one or more contextual tags are indexed by the image key; (e) providing the digital content platform with the image key for linking to the published image; (f) providing the digital content platform with an in-image application interface; (g) enabling one or more in-image applications based on the one or more contextual tags; (h) receiving a data request from an enabled in-image application, upon user-activation of the enabled in-image application, wherein the data request includes the image key; (i) conducting a data search of the image data repository based on the image key; and (j) providing the one or more contextual tags, responsive to the data request, for rendering of the enabled and user-activated in-image application. The image tagging engine may comprise a crowdsource network, proximate-text recognition, and/or thematic tagging. The method may further comprise: (k) receiving use feedback from the rendered in-image application; (l) supplementing the one or more contextual tags with use feedback; and/or (m) overlaying the rendered in-image application on the digital content platform.


In another embodiment, there is provided a computer-implemented system for facilitating the rendering of in-image applications, the system comprising: (a) an image identification interface to identify digital images published on one or more digital content platforms; (b) an image tagging engine for tagging images with contextual tags; (c) an image data repository storing the contextual tags linked to respective digital images, wherein the digital images are indexed by an image key; and (d) an in-image application interface to: (1) receive a data request from an enabled in-image application, upon user-activation of the enabled in-image application, wherein the data request includes the image key, (2) conduct a data search of the image data repository based on the image key, and (3) provide image data, responsive to the data request, for rendering of the enabled and user-activated in-image application. The image tagging engine may comprise a crowdsource network, proximate-text recognition, and/or thematic tagging. The in-image application interface may further comprise overlaying the rendered in-image application on the digital content platform, based on the image data.


In another embodiment, there is provided computer-implemented systems and methods for facilitating the rendering of interactive applications, respective to digital images published on a digital content platform. The systems and methods include means for identifying digital images published on one or more digital content platforms. Such means may include: (1) an interface for receiving images from a digital publisher; (2) computer software or “widget” (e.g., a line of software (e.g., HTML) that scrapes images from publishers' digital platform(s); (3) computer software or widget that pushes digital images to a service provider for processing; (4) computer software or widget that “walks the DOM” to identify digital images published on a digital content platform; or combinations or equivalents thereof.


The systems and methods further include means for tagging digital images with contextual data. Such means may include: (1) an image tagging engine for tagging images with contextual tags; (2) an algorithmic identification or analysis of the image; (3) image recognition protocols and analysis of the image; (4) proximate text recognition in search of contextual information of the image based on text published proximate to the image; (5) a crowdsource network to identify the context of the image and tag the image with relevant data; (6) a thematic tagging engine to identify and tag the image with relevant data, based on a pre-defined theme; (7) an application feedback engine to receive use-feedback from an enabled, activated, and rendered application; (8) and/or any combinations or equivalents thereof.


The systems and methods may further include means for storing the contextual data linked to respective digital images. Such means may include an image data repository, database, server, or combinations or equivalents thereof.


The systems and methods may further include means for indexing the digital images and/or data. Such means may include a URL, unique code, image key, or combinations or equivalents thereof.


The systems and methods may further include means for (1) receiving a data request from an enabled in-image application, upon user-activation of the enabled in-image application; (2) conducting a data search of the means for storing the contextual data; (3) providing image/contextual data, responsive to the data request, for rendering of the enabled and user-activated in-image application; and/or (4) overlaying the rendered in-image application on the digital content platform, based on the image context/data. Such means may include an in-image application interface, computer software code, network connection interface, and combinations or equivalents thereof.


In one embodiment, there is provided a computer-implement method for providing an interactive digital image platform. The computer-implemented systems and methods presented include: (a) creating an image database populated with a plurality of images from a plurality of publishers; (b) using a computer algorithm, image recognition engine, crowdsourcing network, or application interface to identify and tag data relevant to each of the plurality of images; (c) providing a publisher with a catalog of interactive applications that can be applied to published images; (d) receiving an image key identifying a published image; (e) identifying what data is available in the image database for the published image identified by the image key; (f) identifying one or more publisher-selected interactive applications that may be applied to the published image from step (d); (g) enabling the interactive applications from step (f); and (h) rewriting the publisher's HTML in order to overlay the interactive application and relevant content over the image of step (d).


The systems and methods provided allow a service provider to provide a publisher (e.g., a web publisher) with a catalog of interactive image applications. The service provider can then enable/disable the selected applications based on whether there is sufficient or appropriate data on the image to support the functionality of the application. The image applications can overlay images published on the publisher's digital platform (e.g., website) and allow an end-user (e.g., website user) to interact with and/or obtain additional content from the image. The interactive application may be activated by the user with, for example, a mouse-over of the image. In one embodiment, a widget (e.g., line of HTML code) is inserted into the publishers' website(s). The widget walks the document object model tree (i.e., “walks the DOM”) to identify images that are being published. The image key (or URL) of the published images are forwarded (or otherwise provided) to the service provider.


In one embodiment, there is provided a method comprising: (a) allowing a publisher to select one or more interactive applications from a catalog of available applications; (b) identifying a published image on a publisher's digital platform; (c) identifying whether the data available on the published image is sufficient to support the function of each of the one or more selected applications; (d) enabling the interactive applications that are supported by the image data; (e) providing a user of the digital platform with access to the one or more interactive applications that are enabled; and (f) running the interactive application on the publisher's digital platform. Interactive applications may also be end-user selected.


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 FIG. 8, below.


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, FIG. 8 is a schematic drawing of a computer system 800 used to implement the methods presented above. Computer system 800 includes one or more processors, such as processor 804. The processor 804 is connected to a communication infrastructure 806 (e.g., a communications bus, cross-over bar, or network). Computer system 800 can include a display interface 802 that forwards graphics, text, and other data from the communication infrastructure 806 (or from a frame buffer not shown) for display on a local or remote display unit 830.


Computer system 800 also includes a main memory 808, such as random access memory (RAM), and may also include a secondary memory 810. The secondary memory 810 may include, for example, a hard disk drive 812 and/or a removable storage drive 814, representing a floppy disk drive, a magnetic tape drive, an optical disk drive, flash memory device, etc. The removable storage drive 814 reads from and/or writes to a removable storage unit 818. Removable storage unit 818 represents a floppy disk, magnetic tape, optical disk, flash memory device, etc., which is read by and written to by removable storage drive 814. As will be appreciated, the removable storage unit 818 includes a computer usable storage medium having stored therein computer software, instructions, and/or data.


In alternative embodiments, secondary memory 810 may include other similar devices for allowing computer programs or other instructions to be loaded into computer system 800. Such devices may include, for example, a removable storage unit 822 and an interface 820. 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 822 and interfaces 820, which allow computer software, instructions, and/or data to be transferred from the removable storage unit 822 to computer system 800.


Computer system 800 may also include a communications interface 824. Communications interface 824 allows computer software, instructions, and/or data to be transferred between computer system 800 and external devices. Examples of communications interface 824 may include a modem, 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 824 are in the form of signals 828 which may be electronic, electromagnetic, optical, or other signals capable of being received by communications interface 824. These signals 828 are provided to communications interface 824 via a communications path (e.g., channel) 826. This channel 826 carries signals 828 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 814, removable storage units 818, 822, data transmitted via communications interface 824, and/or a hard disk installed in hard disk drive 812. These computer program products provide computer software, instructions, and/or data to computer system 800. 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 808 and/or secondary memory 810. Computer programs may also be received via communications interface 824. Such computer programs, when executed, enable the computer system 800 to perform the features of the present invention, as discussed herein. In particular, the computer programs, when executed, enable the processor 804 to perform the features of the presented methods. Accordingly, such computer programs represent controllers of the computer system 800. Where appropriate, the processor 804, 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 800 using removable storage drive 814, interface 820, hard drive 812, communications interface 824, or equivalents thereof. The control logic (software), when executed by the processor 804, causes the processor 804 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 for facilitating the rendering of in-image applications on a digital content platform, comprising instructions executable by at least one processing device that, when executed, cause the processing device to: (a) identify a digital image published on a digital content platform; (b) assign an image key to the digital image; (c) process the digital image through an image tagging engine to tag the image with one or more contextual tags; (d) store the one or more contextual tags, indexed by the image key, in an image data repository; (e) receive a data request from an enabled in-image application, upon user-activation of the enabled in-image application, wherein the data request includes the image key; (f) conduct a data search of the image data repository based on the image key; and (g) provide the one or more contextual tags, responsive to the data request, for rendering of the enabled and user-activated in-image application. The computer-readable storage medium may further include instructions executable by at least one processing device that, when executed, cause the processing device to: (h) provide the digital image to a crowdsource network; (i) perform proximate-text recognition of the digital image on the digital content platform; (j) submit the digital image to a thematic tagging engine; (k) receive use feedback from the rendered in-image application; (l) supplement the one or more contextual tags with use feedback; and/or (m) provide the digital image to overlay the rendered in-image application on the digital content platform.


In another embodiment, there is provided a computer-readable storage medium for facilitating the rendering of in-image applications on a digital content platform, comprising instructions executable by at least one processing device that, when executed, cause the processing device to: (a) identify digital images published on one or more digital content platforms; (b) process and/or tag the images via an image tagging engine for tagging images with contextual tags; (c) stored the contextual tags in an image data repository, linked to respective digital images, wherein the digital images are indexed by an image key; and (d) provide an in-image application interface to: (1) receive a data request from an enabled in-image application, upon user-activation of the enabled in-image application, wherein the data request includes the image key, (2) conduct a data search of the image data repository based on the image key, and (3) provide image data, responsive to the data request, for rendering of the enabled and user-activated in-image application.


Conclusion

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.


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.

Claims
  • 1. A computer-implemented method for facilitating the rendering of third-party in-image applications in connection with images published on webpages, the method comprising: (a) providing a webpage publisher with software code for insertion into a webpage, wherein the software code, when executed, functions to identify an image that has been published on the webpage and submit the image to a service provider's computer system;the service provider's computer system performing the steps of(b) assigning an image key to the image;(c) processing the image through an image tagging engine, wherein the image tagging engine tags the image with one or more contextual tags based on the content within the image;(d) maintaining an image data repository, wherein the one or more contextual tags are indexed by the image key;(e) providing the webpage publisher with the image key for linking to the published image;(f) providing the webpage publisher with an in-image application interface;(g) enabling one or more third-party in-image applications based on the one or more contextual tags;(h) receiving a data request from an enabled in-image application, upon user-activation of the enabled in-image application, wherein the data request includes the image key;(i) conducting a data search of the image data repository based on the image key; and(j) providing the one or more contextual tags, responsive to the data request, for rendering of the enabled and user-activated third-party in-image application, wherein the third-party in-image application uses the contextual tags to perform its respective function.
  • 2. The method of claim 1, further comprising: receiving use feedback from the rendered in-image application; andsupplementing the one or more contextual tags with use feedback.
  • 3. The method of claim 1, further comprising: overlaying the rendered in-image application on the image on the webpage.
  • 4. A computer-implemented system for facilitating the rendering of third-party in-image applications on one or more digital content platforms, the system comprising: (a) an image identification interface which identifies digital images published on one or more digital content platforms;(b) an image tagging engine which tags images with contextual tags based on the content within the image;(c) an image data repository storing the contextual tags linked to respective digital images, wherein the digital images are indexed by an image key; and(d) an in-image application interface which: (1) receives a data request from an enabled third-party in-image application, upon user-activation of the enabled third-party in-image application, wherein the data request includes the image key, (2) conducts a data search of the image data repository based on the image key, and (3) provides image data, responsive to the data request, for rendering of the enabled and user-activated third-party in-image application, wherein the third-party in-image application uses the image data to perform its respective function.
  • 5. The system of claim 4, wherein the image tagging engine comprises proximate-text recognition.
  • 6. The system of claim 4, wherein the image tagging engine comprises thematic tagging.
  • 7. The system of claim 4, wherein the in-image application interface further comprises: (4) overlaying the rendered in-image application on the digital content platform, based on the image data.
  • 8. A non-transitory computer-readable storage medium for facilitating the rendering of third-party in-image applications in connection with images published on webpages, comprising: instructions executable by at least one processing device that, when executed, cause the processing device to(a) receive identification of an image that has been published on a webpage;(b) assign an image key to the image;(c) process the image through an image tagging engine, wherein the image tagging engine tags the image with one or more contextual tags based on the content within the image;(d) store the one or more contextual tags, indexed by the image key, in an image data repository;(e) receive a data request from an enabled third-party in-image application, upon user-activation of the enabled third-party in-image application, wherein the data request includes the image key;(f) conduct a data search of the image data repository based on the image key; and(g) provide the one or more contextual tags, responsive to the data request, for rendering of the enabled and user-activated third-party in-image application, wherein the third-party in-image application uses the contextual tags to perform its respective function.
  • 9. The non-transitory computer-readable storage medium of claim 8, further comprising: instructions executable by at least one processing device that, when executed, cause the processing device to perform proximate-text recognition of the image on the webpage.
  • 10. The non-transitory computer-readable storage medium of claim 8, further comprising: instructions executable by at least one processing device that, when executed, cause the processing device to submit the digital image to a thematic tagging engine.
  • 11. The non-transitory computer-readable storage medium of claim 8, further comprising: instructions executable by at least one processing device that, when executed, cause the processing device toreceive use feedback from the rendered in-image application; andsupplement the one or more contextual tags with use feedback.
  • 12. The non-transitory computer-readable storage medium of claim 8, further comprising: instructions executable by at least one processing device that, when executed, cause the processing device to overlay the rendered in-image application on the webpage.
  • 13. A non-transitory computer-readable storage medium for facilitating the rendering of one or more third-party in-image applications in connection with an image published on a webpage, comprising: instructions executable by at least one processing device that, when executed, cause the processing device to(a) receive identification of an image that has been published on a webpage;(b) submit the image to an image tagging engine to identify contextual data for the image;(c) receive a request for the contextual data, from a third-party in-image application, upon user-activation of the third-party in-image application; and(d) provide the contextual data, responsive to the request, for rendering of the user-activated third-party in-image application on the webpage, wherein the third-party in-image application uses the contextual data to perform its respective function.
  • 14. The non-transitory computer-readable storage medium of claim 13, further comprising: instructions executable by at least one processing device that, when executed, cause the processing device to determine whether the contextual data needed for rendering of the in-image application is maintained in a service provider image data repository or a third-party image data repository.
  • 15. The non-transitory computer-readable storage medium of claim 14, further comprising: instructions executable by at least one processing device that, when executed, cause the processing device toreceive use feedback from the rendered in-image application; andupdate a reporting metric for the image based on the use feedback.
CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Patent Application Ser. No. 61/543,717, filed Oct. 5, 2011, under 35 U.S.C. §119(e)(1), the entire disclosure of which is herein incorporated by reference in its entirety.

US Referenced Citations (230)
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 et al. 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 Gildred 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 et al. 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 et al. 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
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
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 Appelman et al. Sep 2005 A1
20050235062 Lunt et al. Oct 2005 A1
20050251760 Sato et al. Nov 2005 A1
20060155684 Liu et al. Jul 2006 A1
20060179453 Kadie et al. Aug 2006 A1
20060265400 Fain et al. Nov 2006 A1
20060265653 Paasonen et al. Nov 2006 A1
20070027856 Lee Feb 2007 A1
20070032244 Counts et al. Feb 2007 A1
20070081744 Gokturk et al. Apr 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 Mandic 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
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 et al. Jan 2012 A1
20120036132 Doyle Feb 2012 A1
20120054355 Arrasvuori et al. Mar 2012 A1
20120059884 Rothschild Mar 2012 A1
20120075433 Tatzgern et al. Mar 2012 A1
20120110464 Chen et al. May 2012 A1
20120158668 Tu et al. Jun 2012 A1
20120185343 Jones Jul 2012 A1
20120203651 Leggatt Aug 2012 A1
20120205436 Thomas et al. Aug 2012 A1
20120231425 Calman 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
Non-Patent Literature Citations (12)
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/20100222001945/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/.
Russell & 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).
Related Publications (1)
Number Date Country
20130089273 A1 Apr 2013 US
Provisional Applications (1)
Number Date Country
61543717 Oct 2011 US