FreshPatents.com Logo
stats FreshPatents Stats
1 views for this patent on FreshPatents.com
2012: 1 views
Updated: August 12 2014
newTOP 200 Companies filing patents this week


    Free Services  

  • MONITOR KEYWORDS
  • Enter keywords & we'll notify you when a new patent matches your request (weekly update).

  • ORGANIZER
  • Save & organize patents so you can view them later.

  • RSS rss
  • Create custom RSS feeds. Track keywords without receiving email.

  • ARCHIVE
  • View the last few months of your Keyword emails.

  • COMPANY DIRECTORY
  • Patents sorted by company.

Follow us on Twitter
twitter icon@FreshPatents

Systems and methods for generating enhanced screenshots

last patentdownload pdfdownload imgimage previewnext patent


20120272139 patent thumbnailZoom

Systems and methods for generating enhanced screenshots


Systems and methods for generating and providing enhanced screenshots may include executing instructions stored in memory to evaluate at least a portion of a viewing frustum generated by the instructions to determine one or more objects included therein, obtain metadata associated with the one or more objects, and generate at least one enhanced screenshot indicative of the at least a portion of the viewing frustum by associating the metadata of each of the one or more objects with a location of each of the one or more objects within the at least one enhanced screenshot to create hotspots indicative of each of the one or more objects such that selection at least one hotspot by a computing system causes at least a portion of the metadata associated with the at least one hotspot to be displayed on a display device of a computing system.
Related Terms: Hotspot Screenshot

Inventors: Mark Kern, David Nikdel, Scott Youngblood
USPTO Applicaton #: #20120272139 - Class: 715234 (USPTO) - 10/25/12 - Class 715 


view organizer monitor keywords


The Patent Description & Claims data below is from USPTO Patent Application 20120272139, Systems and methods for generating enhanced screenshots.

last patentpdficondownload pdfimage previewnext patent

CROSS-REFERENCE TO RELATED APPLICATION

The present application is a continuation of U.S. patent application Ser. No. 13/008,854, filed Jan. 18, 2011 and entitled “Systems and Methods for Generating Enhanced Screenshots,” which is herein incorporated by reference.

FIELD OF THE INVENTION

The present invention relates generally to systems and methods for generating enhanced screenshots, and more particularly, but not by way of limitation, to systems and methods to generate enhanced screenshots that include metadata indicative of objects located within the enhanced screenshots.

SUMMARY

OF THE INVENTION

According to exemplary embodiments, the present invention provides for methods for generating enhanced screenshots that include executing instructions stored in memory to: (a) evaluate at least a portion of a viewing frustum generated by the instructions to determine one or more objects included therein; (b) obtain metadata associated with at least one of the one or more objects; (c) generate at least one enhanced screenshot indicative of the at least a portion of the viewing frustum by associating the metadata of each of the one or more objects with a location of each of the one or more objects within the at least one enhanced screenshot to create hotspots indicative of each of the one or more objects such that selection at least one hotspot by a computing system causes at least a portion of the metadata associated with the at least one hotspot to be displayed on a display device of a computing system; and (d) provide the at least one enhanced screenshot to the computing system for display on the display device of the computing system.

According to other exemplary embodiments, the present invention provides for systems for generating enhanced screenshots that may include (a) a memory for storing a computer program; (b) a processor for executing the computer program stored in memory, the computer program adapted to generate a viewing frustum that includes one or more objects, the computing program including a screenshot generation module that includes: (i) a parsing module adapted to evaluate at least a portion of the viewing frustum to determine one or more objects included therein; (ii) an analysis module adapted to obtain metadata associated with at least one of the one or more objects; (iii) an assembly module adapted to generate at least one enhanced screenshot indicative of the at least a portion of the viewing frustum by associating the metadata of each of the one or more objects with a location of each of the one or more objects within the at least one enhanced screenshot to create hotspots indicative of each of the one or more objects such that selection at least one hotspot by a computing system causes at least a portion of the metadata associated with the at least one hotspot to be displayed on a display device of a computing system; and (iv) an interface module adapted to provide the at least one enhanced screenshot to the computing system for display on the display device of the computing system.

According to additional exemplary embodiments, the present invention provides for non-transitory computer readable storage mediums having embodied thereon a program, the program being executable by a processor to perform a method for generating a viewing frustum that includes one or more objects, the program further including an enhanced screenshot engine adapted to: (a) evaluate at least a portion of the viewing frustum to determine one or more objects included within the viewing frustum; (b) obtain metadata associated with at least one of the one or more objects; (c) generate at least one enhanced screenshot indicative of the at least a portion of the viewing frustum by associating the metadata of each of the one or more objects with a location of each of the one or more objects within the at least one enhanced screenshot to create hotspots indicative of each of the one or more objects such that selection at least one hotspot by a computing system causes at least a portion of the metadata associated with the at least one hotspot to be displayed on a display device of a computing system; and (iv) provide the at least one enhanced screenshot to the computing system for display on the display device of the computing system.

According to some exemplary embodiments, the present invention provides for methods for providing an award for obtaining one or more enhanced screenshots during execution of computer-readable instructions that generate a viewing frustum that includes one or more objects. The methods may include: (a) comparing metadata of at least one of the one or more objects included in one or more enhanced screenshots obtained by a computing system to an established award criteria, the award criteria including information indicative of metadata included in one or more enhanced screenshots that when obtained allow at least one award to be provided to the computing system; and (b) providing an award to the computing system upon the computing system obtaining one or more enhanced screenshots having metadata that correspond to the award criteria.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic diagram of an exemplary environment for practicing the present invention.

FIG. 2 illustrates an exemplary computing system that may be used to implement embodiments of the present technology.

FIG. 3 is a schematic of an exemplary architecture of a computer program having a screenshot generation module, constructed in accordance with the present disclosure.

FIG. 4 is an exemplary flow chart of a method for generating enhanced screenshots.

FIG. 5 is an illustrative example of an enhanced screenshot.

DETAILED DESCRIPTION

OF EXEMPLARY EMBODIMENTS

The capturing and utilization of screenshots is well known in the art. As background, screenshots are image files taken by a computing system to record the visual depictions, also known as views, displayed on a display device such as a monitor associated with the computing system. The screenshots are typically captured by at least one of a standalone screenshot application, screenshot functionalities embedded within computer programs or executable instructions stored in memory, and also screenshot functionalities incorporated into operating system software. It will be understood that the term “view” may include any visual depiction of data generated by a graphics engine or an interface module of a computer program such as a graphical user interface. While the term “view” has been referred to in the singular, it is noteworthy that the word view may include a singular view generated periodically or a plurality of views, such as a continuous view of a program environment generated by a computer program, as will be discussed in greater detail herein.

Additionally, screenshots may also be referred to as screen captures (screencap), screen dump, screen grab, or more formally as a print screen function. The print screen function may be generally described as a screenshot function operatively associated with one or more keys of a keyboard device that is associated with the computing system.

While systems and methods for obtaining screenshots are well known, they only provide the limited functionality of capturing the view in a standardized image file format. These image files contain relatively little, if any, information indicative of the type of information contained within the image file, such as the objects located therein. For example, a videogame program may include executable instructions stored in memory that generate and display a continuously updated view in the form of a graphical user interface with which the user may interact. During run time, the user may capture screenshots of the view. Unfortunately, these common screenshots provide the user with no additional information regarding the program environment other than what may be visually ascertained by the user on the display device of their computing system.

The systems and methods of the present disclosure are adapted to generate enhanced screenshots that are content rich relative to standard screenshots thereby providing the user with a host of additional information that may not be readily ascertained by visual inspection of the screenshot.

The systems and methods may generate an enhanced screenshot by capturing an image file indicative of at least a portion of the view and intelligently appending metadata to objects located within the screenshot by mapping the location of each of the objects to one or more pixels of the captured image file to create hotspots indicative of the objects. According to some embodiments, each hotspot may be approximated and defined by a rectangular shape, although one of ordinary skill in the art with the present disclosure before them will appreciate that other geometrical configurations may be utilized, such as square, triangular, or other suitable polygonal configurations.

The enhanced screenshot may be generated having any one of a number of formats including, but not limited to, extensible markup language documents (XML). It will be understood that the enhanced screenshot may be generated utilizing any one of a number of formats that are adapted to generate screenshots that resemble a conventional screenshot, but when users select a hotspot on the enhanced screenshot, at least a portion of the metadata associated with the hotspot may be displayed on the display device of the computing system. It will be understood that “select” may include, for example, mousing over the hotspot, hovering a selector device over the hotspot, or otherwise contacting the hotspot.

Metadata may be displayed on the computing system in the form of textual information included in a popup window that is displayed proximate the hotspot.

It will be understood that the term “hotspot” may include any area of interest located within an enhanced screenshot that has been intelligently appended with metadata. Hotspots represent the location of objects within the enhanced screenshot and may each be defined by a rectangular boundary that encloses at least a portion of an object.

It will be understood that the term “object” may any visual item located within the enhanced screenshot, including, but not limited to, avatars, buildings, trees, clouds, and the like. It will further be understood that each object may be generally categorized as either animate or inanimate. For example, animate objects may include avatars, enemies, animals, and the like. On the other hand, inanimate objects may include buildings, mountains, and the like.

Additionally, the term “avatar” may be understood to include a specific type of object that is associated the computing system of an end user and includes visual representation of the computing system that operate within the programming environment. Non-limiting examples of avatars may include avatars that have a visual appearance that closely approximates the physical appearance of the end user associated therewith, or may include avatars having a fanciful or whimsical appearance.

With regard to generating a view of the program environment in either two- or three-dimensional, a graphics engine (not shown) associated with the computing system may utilize what is commonly known as a viewing frustum. The viewing frustum may be described as a visual boundary abstraction that approximates a user\'s field of view. It will be understood that the geometrical configuration of the viewing frustum may depend upon the type of view being simulated. Only objects or portions of objects located within the viewing frustum are rendered by the graphics engine as a view that is displayed via the display device of the computing system. Therefore, as an avatar traverses through the program environment and objects enter and exit the viewing frustum, the objects are rendered (e.g., generated) by the graphics engine and displayed in a format that is perceivable to the user. It will be understood that in some embodiments, the graphics engine may include an interface module such as the interface module 305a described in greater detail with reference to FIG. 3.

Broadly speaking, enhanced screenshots generated by the systems and methods described herein may be utilized to capture or depict the relationship between the view provided to the display device of the computing system and the objects located within the viewing frustum. Moreover, as the enhanced screenshot includes metadata indicative of the objects located within the enhanced screenshot and the metadata indicative of the conditions under which the enhanced screenshot was obtained, additional end users viewing the enhanced screenshot may even more fully appreciate the relationship between the end user for which the enhanced screenshot was captured and the objects located within the enhanced screenshot.

FIG. 1 illustrates an exemplary environment 100 for practicing the present invention. In general, the environment 100 may include a computing system 105 having one or more computer programs (e.g., a videogame program including executable instructions that generate a viewing frustum that includes one or more objects) residing thereon. In additional exemplary embodiments, the exemplary environment 100 may include both the computing system 105 and an application server 110 cooperating together to execute separate components (e.g., module, engine, and the like) of a computer program. As used throughout, the term “computer program” may comprise any type of executable instructions stored in memory and executable by the processor of a computing system. The computing system 105 and the application server 110 may be operatively connected to one another via a network 115 such as the Internet, a local area network, or any other suitable type of communications channel that would be known to one of ordinary skill in the art with the present disclosure before them.

According to some embodiments, the application server 110 may include a plurality of application servers 110 having portions of the computer program distributed therebetween. It will be understood that a portion of the one or more computer programs may alternatively reside in a cloud based computing arrangement 120.

FIG. 2 illustrates an exemplary computing system 200 that may be used to implement embodiments of the present technology. The system 200 of FIG. 2 may be implemented in the contexts of the likes of the computing system 105 or the application server 110 (see FIG. 1). Therefore, the computing system 200 utilized to implement the methods described herein may be referred to as a particular purpose computing system adapted to generate enhanced screenshots by translating one or more views generated by a computer program into enhanced screenshots that include intelligently appended metadata associated with each of the one or more objects located therein.

The computing system 200 of FIG. 2 includes one or more processors 210 and main memory 220. Main memory 220 stores, in part, instructions and data for execution by processor 210. Main memory 220 may store the executable code when in operation. The system 200 of FIG. 2 further includes a mass storage device 230, portable storage medium drive(s) 240, output devices 250, user input devices 260, a graphics display 270, and peripheral devices 280.

The components shown in FIG. 2 are depicted as being connected via a single bus 290. The components may be connected through one or more data transport means. Processor unit 210 and main memory 220 may be connected via a local microprocessor bus, and the mass storage device 230, peripheral device(s) 280, portable storage device 240, and display system 270 may be connected via one or more input/output (I/O) buses.

Mass storage device 230, which may be implemented with a magnetic disk drive or an optical disk drive, is a non-volatile storage device for storing data and instructions for use by processor unit 210. Mass storage device 230 may store the system software for implementing embodiments of the present invention for purposes of loading that software into main memory 220.

Portable storage device 240 operates in conjunction with a portable non-volatile storage medium, such as a floppy disk, compact disk, digital video disc, or USB storage device, to input and output data and code to and from the computing system 200 of FIG. 2. The system software for implementing embodiments of the present invention may be stored on such a portable medium and input to the computing system 200 via the portable storage device 240.

Input devices 260 may include an alphanumeric keypad, such as a keyboard, for inputting alpha-numeric and other information, or a pointing device, such as a mouse, a trackball, stylus, or cursor direction keys. Additionally, the system 200 as shown in FIG. 2 includes output devices 250. Suitable output devices include speakers, printers, network interfaces, and monitors.

Display system 270 may include a liquid crystal display (LCD) or other suitable display device. Display system 270 receives textual and graphical information, and processes the information for output to the display device.

Peripherals 280 may include any type of computer support device to add additional functionality to the computing system. Peripheral device(s) 280 may include a modem or a router.

The components provided in the computing system 200 of FIG. 2 are those typically found in computing systems that may be suitable for use with embodiments of the present invention and are intended to represent a broad category of such computer components that are well known in the art. Thus, the computing system 200 of FIG. 2 may be a personal computer, hand held computing system, telephone, mobile computing system, workstation, server, minicomputer, mainframe computer, or any other computing system. The computer may also include different bus configurations, networked platforms, multi-processor platforms, etc. Various operating systems may be used including Unix, Linux, Windows, Macintosh OS, Palm OS, Android, iPhone OS and other suitable operating systems.

It is noteworthy that any hardware platform suitable for performing the processing described herein is suitable for use with the technology. Computer-readable storage media refer to any medium or media that participate in providing instructions to a central processing unit (CPU), a processor, a microcontroller, or the like. Such media may take forms including, but not limited to, non-volatile and volatile media such as optical or magnetic disks and dynamic memory, respectively. Common forms of computer-readable storage media include a floppy disk, a flexible disk, a hard disk, magnetic tape, any other magnetic storage medium, a CD-ROM disk, digital video disk (DVD), any other optical storage medium, RAM, PROM, EPROM, a FLASHEPROM, any other memory chip or cartridge.

FIG. 3 illustrates an exemplary block diagram of a computer program 300 for practicing the invention. According to some embodiments, the computer program 300 (e.g., executable instructions stored in memory) resides on the computing system 105 (or application server 110). It will be understood that the computer program 300 may include any computer readable code that is executable by the processor of a computing system that is adapted to provide a view of data (e.g., program environment) produced by the computer program. Therefore, generally speaking, the computer program 300 may include an interface module 305a and one or more additional modules 305n that generate data that may be utilized by the interface module 305a to generate a view of a program environment maintained by the computer program 300. It will be understood that the one or more additional modules 305n may likewise include engines, applications, or combinations thereof.

Moreover, to generate enhanced screenshots of the view generated by the interface module 305, the computer program 300 may also include a screenshot generation module 310 that includes a parsing module 315, an analysis module 320 (a.k.a., statistical engine), an assembly module 325, and an optional screenshot management module 330. It will be understood that the constituent modules of the screenshot generation module 310 may be executed by a processor of the computing system to effectuate respective functionalities attributed thereto. It is noteworthy that the screenshot generation module 310 may be composed of more or fewer modules and engines (or combinations of the same) and still fall within the scope of the present technology. For example, the functionalities of the parsing module 315 and the functionalities of the analysis module 320 may be combined into a single module or engine.

For the sake of brevity, although the computer program 300 may include any one (or combination) of a number of computer programs, only a detailed discussion of executable instructions that generate a viewing frustum that includes one or more objects, such as a videogame program, will be set forth in greater detail. The executable instructions that generate, manage, and display a view of a program environment indicative of a viewing frustum are also provided.

As background, software architects create computer-readable instructions that function as a basis for generating and managing a program environment.

The program environment may generally include a landscape that includes a variety of objects. Each of the objects may include both static and dynamic or “run time” metadata indicative of the attributes of the object. For example, an object such as an avatar may include static information such as age, height, weight, name, and the like, associated with the avatar. These types of static metadata are typically input or generated during the creation of the executable instructions or during creation of the avatar by the end user. Run time or “dynamic” metadata may include information that may change over time such as an avatar\'s health status, an avatar\'s inventory, an avatar\'s time of play, interactions between an avatar and one or more avatars, an avatar\'s accomplishments, and the like. Additionally, run time metadata may include the dynamic location of an avatar within the program environment, which when captured may be provided in the form of a virtual geotag (e.g., a metadata tag indicative of the virtual location of an avatar).

As previously described, the objects located within the landscape may include both animate (e.g., animals, humans, avatars, etc.) and inanimate (e.g., furniture, structures, etc.) objects. An exemplary program environment is described in greater detail with regards to FIG. 5.

Objects that are inanimate may include metadata such as name, location, color, date of creation, and the like. Objects that are animate may also include similar static metadata, but their ability to traverse within the program environment may require monitoring of their locations during run time. Some animate objects traverse within the program environment based upon predefined movements that are predefined by the executable instructions. On the other hand, additional types of user-controlled animate objects may require monitoring, as their movements are not predefined.

For example, the executable instructions may be adapted to facilitate the use of avatars that may selectively operate within the program environment based upon interaction with the executable instructions via end users associated with the avatars.

Because the executable instructions may be adapted to monitor the location of each object within the program environment, the executable instructions may be adapted to generate a view (e.g., user interface) that may be indicative of the particular location at which an avatar is located relative to the program environment.

During run time, the screenshot generation module 310 may be adapted to receive requests to generate an enhanced screenshot from the computing system 105. For example, the user may select a particular key on a keyboard or other input device that is operatively connected to the computing system 105. According to other embodiments, the screenshot generation module 310 may be adapted to generate one or more enhanced screenshots automatically at predetermined intervals of time. Additionally, in some embodiments, the screenshot generation module 310 may be adapted to generate one or more enhanced screenshots upon the occurrence of at least one condition.



Download full PDF for full patent description/claims.

Advertise on FreshPatents.com - Rates & Info


You can also Monitor Keywords and Search for tracking patents relating to this Systems and methods for generating enhanced screenshots patent application.
###
monitor keywords



Keyword Monitor How KEYWORD MONITOR works... a FREE service from FreshPatents
1. Sign up (takes 30 seconds). 2. Fill in the keywords to be monitored.
3. Each week you receive an email with patent applications related to your keywords.  
Start now! - Receive info on patent apps like Systems and methods for generating enhanced screenshots or other areas of interest.
###


Previous Patent Application:
System and method for adding targeted content in a web page
Next Patent Application:
System and method for audience-vote-based copyediting
Industry Class:
Data processing: presentation processing of document
Thank you for viewing the Systems and methods for generating enhanced screenshots patent info.
- - - Apple patents, Boeing patents, Google patents, IBM patents, Jabil patents, Coca Cola patents, Motorola patents

Results in 0.54548 seconds


Other interesting Freshpatents.com categories:
Nokia , SAP , Intel , NIKE ,

###

Data source: patent applications published in the public domain by the United States Patent and Trademark Office (USPTO). Information published here is for research/educational purposes only. FreshPatents is not affiliated with the USPTO, assignee companies, inventors, law firms or other assignees. Patent applications, documents and images may contain trademarks of the respective companies/authors. FreshPatents is not responsible for the accuracy, validity or otherwise contents of these public document patent application filings. When possible a complete PDF is provided, however, in some cases the presented document/images is an abstract or sampling of the full patent application for display purposes. FreshPatents.com Terms/Support
-g2-0.1973
     SHARE
  
           

FreshNews promo


stats Patent Info
Application #
US 20120272139 A1
Publish Date
10/25/2012
Document #
13536965
File Date
06/28/2012
USPTO Class
715234
Other USPTO Classes
345619
International Class
/
Drawings
6


Hotspot
Screenshot


Follow us on Twitter
twitter icon@FreshPatents