U.S. patent application number 10/601747 was filed with the patent office on 2004-03-25 for method and system for indexing, sorting, and displaying a video database.
Invention is credited to Erdelyi, David.
Application Number | 20040056879 10/601747 |
Document ID | / |
Family ID | 28673367 |
Filed Date | 2004-03-25 |
United States Patent
Application |
20040056879 |
Kind Code |
A1 |
Erdelyi, David |
March 25, 2004 |
Method and system for indexing, sorting, and displaying a video
database
Abstract
A method and system is provided for indexing, sorting, and
displaying a video database. Hardware and software components, and
a novel encoding process are used to provide a searchable video and
informational database. Each encoder and the User use specially
configured graphical user interfaces to access the system. In the
preferred embodiment, component clips of different videotape views
of a sporting event are batch encoded and synchronized. Data which
remains constant for at least a part of a game is automatically
reused. A MasterPlayerId assigned to each player is used to index
all video clips and information relating to that player. A rating
service provides ratings of individual plays or players. The
present invention includes powerful search features that permit a
User to search the informational and video database according to
numerous predefined and customized criteria. A novel encoding
scheme permit the viewing of MPEG format video clips in a form of
slow motion. A dedicated console permits the User to view selected
information using a first display screen while simultaneously
displaying some or all of this information to at least one other
person using a second display screen. The present invention also
permits the User to select and save custom view sets of video
clips, and to control the video display. The User can switch this
camera view during play or can replay a clip from a different
camera view.
Inventors: |
Erdelyi, David; (Stinson
Beach, CA) |
Correspondence
Address: |
STALLMAN & POLLOCK LLP
Attn: Brian J. Keating
Suite 290
121 Spear Street
San Francisco
CA
94105
US
|
Family ID: |
28673367 |
Appl. No.: |
10/601747 |
Filed: |
June 23, 2003 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
10601747 |
Jun 23, 2003 |
|
|
|
09009566 |
Jan 20, 1998 |
|
|
|
6631522 |
|
|
|
|
Current U.S.
Class: |
715/716 ;
348/E7.061; 707/E17.028 |
Current CPC
Class: |
H04N 21/4828 20130101;
G06F 16/7335 20190101; H04N 7/163 20130101; H04N 21/26603 20130101;
H04N 21/4753 20130101; H04N 21/84 20130101; H04N 21/4332 20130101;
G06F 16/784 20190101; Y10S 707/99937 20130101; H04N 21/8133
20130101; Y10S 707/99931 20130101 |
Class at
Publication: |
345/716 |
International
Class: |
G09G 005/00 |
Claims
1. A computer-implemented method for indexing, sorting, and
displaying a database, comprising the steps of: a. creating a
searchable computer database structure for storing video and
informational data; b. determining the discrete component clips of
at least one video record such that each clip represents a
predetermined event: c. assigning an identification number to each
clip such that all clips showing the same event have same clip
identification number: d. determining the beginning and
ending/points of each clip; e. storing to the database structure
the determination of the discrete component clips, the
identification number, and the beginning and ending points of steps
b through d; f. identifying at least one person appearing in at
least one of the discrete component clips: g. storing the
identification information of step f to the database structure; h.
assigning a personal identification number to each person
identified in step f; i. storing the personal identification number
to the database structure; j. storing selected information about at
least the identified person such that the selected information is
indexed to the identified person's personal identification number;
k. using the personal identification number and the clip
identification numbers to index the informational database to the
component video clips; wherein, in response to input user-defined
search criteria, any video clip and associated indexed information
satisfying the search criteria is retrieved from the database
structure for display to a user.
2. The method of claim 1, further comprising the steps of:
identifying a plurality of video clips having the same clip
identification number; and synchronizing the beginning and ending
points of the identified video clips; wherein a display of an
identified video clip can be switched in real time to a display of
any other identified video clip having the same identification
number.
3. The method of claim 1, wherein the informational database
includes any information to be indexed to any discrete component
clip in at least one video record.
4. The method of claim 3, wherein the information in the
informational database includes audio, graphical, and textual
information.
5. The method of claim 1, further comprising the steps of:
providing a predefined rating structure; and using the predefined
rating structure to assign a rating to any of a video record, video
clip, performance of at least one person appearing in a video clip,
overall performance of at least one person appearing in a plurality
of video clips.
6. The method of claim 1, further including the step of displaying
any video clip and associated indexed information retrieved from
the database structure in response to the input user-defined search
criteria on a dedicated console.
7. The method of claim 1, further comprising the step of providing
at least one computer graphical user interface for performing any
or all of steps a through k.
8. The method of claim 1, further comprising the step of
controlling the display of the video clip at a selected frame
interval to permit a slow motion display of the video clip.
9. A computer-implemented method for indexing, sorting, and
displaying a sports video database comprising the steps of:
performing a first encoding step to determine, name, and batch
encode the discrete component clips of at least one video record of
a sporting event to a database structure; performing a second
encoding step to enter play information regarding the sporting
event to the database structure; performing a third encoding step
to identify all persons appearing in one or more of the batch
encoded video clips and to enter the identification information to
the database structure: performing a fourth encoding step to
evaluate and rate any of the batch encoded video clips and any of
the persons appearing in one or more of the batch encoded video
clips and to enter the rating to the database structure: performing
a fifth encoding step to update any information stored in the
database structure; and indexing the batch encoded video clips of
the first encoding step to the information stored in the database
structure in the second through fifth encoding steps; wherein, in
response to the input of user-defined search criteria, any video
clip and indexed information satisfying the search criteria is
retrieved from the database structure for display to a user.
10. The method of claim 9, wherein the first encoding step
comprises the steps of; assigning an identification number to each
video clip such that all video clips showing the same event have
same clip identification number. determining the beginning and
ending points of each clip; and storing the identification number,
and the beginning and ending points to the database structure.
11. The method of claim 9, wherein the third encoding step
comprises the steps of: assigning a personal identification number
to each person identified in a video clip; and storing the personal
identification number to the database structure;
12. The method of claim 10, wherein the fourth encoding step
comprises the steps of: storing selected information about at least
an identified person such that the selected information is indexed
to the identified person's personal identification number; and
using the identified person's personal identification number and
the clip identification numbers to index the informational database
to the component video clips.
13. The method of claim 9, further comprising the steps of:
identifying a plurality of video clips having the same clip
identification number; and synchronizing the beginning and ending
points of the identified video clips; wherein a display of an
identified video clip can be switched in real time to a display of
any other identified video clip having the same identification
number.
14. The method of claim 9, wherein the database structure includes
information selected from the group consisting of audio, graphical,
and textual information.
15. The method of claim 9, further including the step of displaying
any video clip and associated indexed information retrieved from
the database structure response to the input user-defined search
criteria on a dedicated console.
16. The method of claim 9, further comprising the step of providing
at least one graphical user interface for performing any or all of
the encoding steps.
17. The method of claim 9, further comprising the step of
controlling the display of the video clip at a selected frame
interval to permit a slow motion display of the video clip.
18. A computerized system for indexing, sorting, and displaying a
sports video database comprising: a database structure; at least
one computer for accessing the database structure and for running
software applications to access and modify the database structure;
a first encoder software application for use with the at least one
computer by a first encoder in determining, naming, and batch
encoding the discrete component clips of at least one video record
of a sporting event to the database structure; a second software
application for use with the at least one computer by a second
encoder to enter play information regarding the sporting event to
the database structure; a third software application for use with
the at least one computer by a third encoder to identify all
persons appearing in one or more of the batch encoded video clips
and to enter the identification information to the database
structure; a fourth software application for use with the at least
one computer by a fourth encoder to evaluate and rate any of the
batch encoded video clips and any of the persons appearing in one
or more of the batch encoded video clips and to enter the rating to
the database structure; a fifth software application for use with
the at least one computer by a fifth encoder to update any
information stored in the database structure; and an indexing
software application to index the batch encoded video clips to the
information stored in the database structure by the second through
fifth encoders; wherein, in response to the input of user-defined
search criteria to the at least one computer, any video clip and
indexed information satisfying the search criteria is retrieved
from the database structure for display to a user.
19. The system of claim 18, wherein each of the first through fifth
encoders and the user has a separate dedicated graphical user
interface to access the computerized system.
20. The system of claim 18, further comprising means for
synchronizing a plurality of different video clips of the same
event such that a display of an identified video clip can be
switched in real time to a display of any other identified video
clip.
Description
TECHNICAL FIELD
[0001] The present invention relates generally to video databases.
More specifically, the present invention is directed to a method
and system for providing a video database that can be sorted to
produce an individualized, user-configurable video
presentation.
BACKGROUND OF THE INVENTION
[0002] Film and video have long been used to document athletic
performances. It is now customary for coaches and players to review
films of their performances, as well as of their competitors'
performances.
[0003] Films and videos of athletic events are also commonly used
by scouts and recruiters to locate talented players. However, these
tapes must be manually compiled and edited for review. For example,
a video tape of a football game must be heavily edited if the
reviewer only wishes to view the performance of an individual
player.
[0004] It has not been readily possible for a scout or recruiter to
search through video records of many games, such as a season, to
view only the performance of a selected player or type of play. In
addition, statistical information relating to the selected player
must be separately provided.
[0005] It is known in the prior art to link an informational
database to a video database. For example, a method for annotating
full motion digital video frames is described in King, et al,
Method and Apparatus for Annotating Full Motion Video and Other
Indexed Data Structures, U.S. Pat. No. 5,600,775. The King process
provides graphical, textual, and digital element overlays for the
digital video frames. On video playback, the annotations are
displayed on the originally annotated frames.
[0006] The King process is therefore directed to superimposing a
graphical or textual display over the video, or appending an audio
soundtrack thereto. However, the King process does not teach a
method for synchronizing a plurality of video frames. Thus, it is
not readily possible to immediately switch from one video tape view
to a different video tape view of the same event.
[0007] Furthermore, the King process does not disclose a method or
system for indexing a plurality of video frames with an
informational database to permit the display on demand of video
frames and data relating to any individual who appears in at least
one video frame. It would therefore be an advantage to provide a
method and system for indexing an informational database to a video
record. It would be a further advantage if such method and system
permitted the synchronization for rapid display of multiple video
tape views of an event. It would be yet another advantage if such
method and system created a database that could be searched for
video records and information relating to any individual who
appears in a part of the video record.
SUMMARY OF THE INVENTION
[0008] The present invention provides a method and system for
indexing, sorting, and displaying a video database. The preferred
embodiment of the present invention is adapted for use in indexing
the video display of one or more sporting events, such as a season
of league football games. However, it is readily apparent that the
method and system according to the present invention can also be
used to index, sort, and display video recordings of other types of
events, including but not limited to theatrical performances,
musical events, or political speeches.
[0009] The present invention includes hardware and software
components, and implements a novel encoding process to provide a
searchable video and informational database. The present invention
can be implemented using any suitable computer system, including
one or more personal computers, a "dumb" terminal, a network of
interconnected computers, a personal digital assistant, an intranet
system, or the Internet. In addition, the present invention uses at
least one database to store the video database, as well as any
other information to be indexed thereto. In the preferred
embodiment of the present invention, five encoding levels are used
to enter data into at least one searchable computer database. An
intelligent scene detection process can also be used to automate
any or all of the encoding processes. Each encoder and the User use
specially configured graphical user interfaces (GUIs) to access the
system.
[0010] Each level has its own designated security-encoding status.
Thus, each level can be accessed only by entering the correct LogIn
name and Password. The present invention implements security and
administration protocols to provide remote and secure access to the
database by encoders, Users, as well as by technical support and
system maintenance personnel.
[0011] In a first encoding level, the component clips of a
videotape are determined and named using a file naming protocol.
This information is then batch encoded and stored to one or more
system databases.
[0012] In a second encoding level, all play information is indexed.
Jersey numbers for the players in each video clip are entered into
the database in the third encoding level. In alternative
embodiments, other information such as identifying symbols can also
be entered into the database in the third encoding level. The third
encoder also assigns a MasterPlaverId to each player in the
database. This MasterPlayerId is used to index all video clips and
information relating to that player.
[0013] In the fourth encoding level, the clips and the individual
players are evaluated and assigned a rating, which is also entered
into the database. The present invention includes an optional
rating service which can provide ratings of individual plays or
players. This service can be distributed as an on-demand service,
or can be distributed as part of a database that can be updated, as
desired by the User.
[0014] Database updates, and any other statistics or information
are entered into the database in the fifth encoding level. The
present invention uses a SuperFill process to automatically reuse
data which will remain constant for a group of clips, or for all
clips in a game. A User can then access the database and display
selected information and clips Corn the database.
[0015] In the preferred embodiment of the present invention, the
End-User GUI is adapted for display on a dedicated console that
permits the User to view selected information using a first display
screen while simultaneously displaying some or all of this
information to at least one other person using a second display
screen. The first display screen displays the statistics, video,
and complete features of the User GUI. The second display screen is
preferably a rotatable audience display screen that displays only
the video clip display. The present invention includes powerful
"intelligent" search features that permit a User to search the
database according to numerous predefined and customized criteria.
For example, The User can use the End-User GUI of the present
invention to search the database for information and video clips
selected according to searchable criteria. Such criteria include,
but are not limited to, player name, a particular game or games,
type of play, play rating, and contract status. Information about a
selected player such as statistics, activity, and injury reports
can also be displayed. In addition, the User can view and sum any
combination of game play statistics.
[0016] The End-User GUI includes displays for such features as a
player search, player statistics, player information, View Time
Control, and video screen box. The User can configure the
appearance of the End-User interface using a User Preferences GUI.
The present invention also permits the User to select and save
custom view sets of video clips, and to control the video display
by selecting the number of video clips, and the total viewing
time.
[0017] The present invention includes a play loop function that
permits the User to automatically return to the beginning of a
selected video clip. The present invention also permits the User to
select the order of play for the clips and to select the camera
view displayed. The User can switch this camera view during play or
can replay a clip from a different camera view. The present
invention includes a view selection feature that displays a video
clip from a view that is determined by such factors as the position
of a selected player, or the type of play.
[0018] The present invention also provides an isolation play mode
in which the User will view only a selected portion of a video
clip. Furthermore, the present invention uses a novel encoding
scheme to permit the viewing of MPEG format video clips in a form
of slow motion.
BRIEF DESCRIPTION OF THE FIGURES
[0019] FIG. 1 is a master flow chart of the method and system for
indexing a video database according to the present invention;
[0020] FIG. 2 is a screen display of a password and Logon Sequence
GUI 100 according to the present invention;
[0021] FIG. 3 is a flow chart of an end-user application process
according to the present invention:,
[0022] FIG. 4a is a screen display of an end user display according
to the preferred embodiment of the present invention;
[0023] FIG. 4b is a screen display of a selection box according to
the preferred embodiment of the present invention;
[0024] FIG. 4c is a screen display of a Player Information Box
according to the preferred embodiment of the present invention;
[0025] FIG. 4d is a screen display of a Statistics box according to
the preferred embodiment of the present invention;
[0026] FIG. 4e is a screen display of a View Time Control box
according to the preferred embodiment of the present invention;
[0027] FIG. 4f is a screen display of a Video Screen Box according
to the preferred embodiment of the present invention:
[0028] FIG. 5 is a screen display of a User Preferences GUI
according to the present invention;
[0029] FIG. 6 is a flow chart of a first encoding process according
to the present invention;
[0030] FIG. 7 is a screen display of a BatchEncodingList GUI
according to the present invention;
[0031] FIG. 8 is a flow chart of a second encoding process
according to the present invention;
[0032] FIG. 9 is a screen display of a second encoder GUI according
to the present invention;
[0033] FIG. 10 is a flow chart of a third encoding process
according to the present invention;
[0034] FIG. 11 is a screen display of a tracking sequence GUI
according to the present invention;
[0035] FIG. 12 is a flow chart of a fourth encoding process
according to the present invention;
[0036] FIG. 13 is a screen display of a clip evaluation GUI
according to the present invention;
[0037] FIG. 14 is a flow chart of a fifth encoding process
according to the present invention;
[0038] FIG. 15 is a screen display of a database update GUI
according to the present invention;
[0039] FIG. 16 is a system diagram of a system for indexing,
sorting, and displaying a video database according to the present
invention; and
[0040] FIG. 17 is a system diagram of the security and
administration architecture according to the present invention.
DETAILED DESCRIPTION OF THE INVENTION
[0041] The present invention provides a method and system for
indexing, sorting, and displaying a video database. The preferred
embodiment of the present invention is adapted for use in indexing
the video display of one or more sporting events, such as a season
of league football games. However, it is readily apparent that the
method and system according to the present invention can also be
used to index, sort, and display video recordings of other types of
events, including but not limited to theatrical performances,
musical events, or political speeches.
[0042] The present invention is described herein with respect to
the sport of football. Thus, the examples provided describe a
method and system for indexing a video display of any or all of the
games of at least one season in a football league. However, this
description is provided for purposes of example only, and is not
intended in any way as a limitation upon the scope of the present
invention.
[0043] The invention uses at least one database structure to store
the video database, as well as any other information to be indexed
thereto. The term "database" is used in this application to refer
to the database structure and any database located therein. The
term "database" is used for exemplary purposes only, and is not
meant to limit the present invention to the use of one database.
One skilled in the art will appreciate that any number of databases
can be used to store the video clips and information used in the
present invention.
[0044] The term "User" in the present application refers to an
End-User of the invention. The term "user" in the present
application refers to any person who uses the invention, including
but not limited to an encoder, End-User, programmer, or technical
support personnel.
[0045] FIG. 1 is a master flow chart of the method and system for
indexing a video database according to the present invention. In
the preferred embodiment of the present invention, five encoding
levels are used to enter data into at least one searchable computer
database structure. However, one skilled in the art will recognize
that the number of encoding levels, and the specific data to be
entered at each level, are readily modified according to the
particular process requirements.
[0046] The present invention can be implemented using any suitable
computer system, including one or more personal computers, a "dumb"
terminal, a network of interconnected computers, a personal digital
assistant, a satellite communications system, an intranet system,
the Internet or any other suitable means of digital communication.
Furthermore, each level of the present invention can be accessed
using a different type of terminal or computer. For example, the
first encoding level can be performed using a personal computer,
while the User can access and view the information using a "dumb"
terminal connected to the invention databases through the
Internet.
[0047] In the first encoding level, the discrete component clips of
a video record, such as a videotape, are determined and named using
a file naming protocol (1000). This information is stored in an
identification database as a BatchEncoding List (1005). All
encoding levels, as well as the end-user level, are accessible
through a password and Logon Sequence (1010). The password and
LogOn Sequence is described in more detail with regard to FIG. 2.
Each of these levels can only be accessed by the appropriate
encoder or user.
[0048] In the second encoding level, all play information is
indexed (1015). Player jersey numbers for the players in each video
clip are entered into the database in the third encoding level
(1020). In the fourth encoding level, the clips and the individual
players are evaluated and assigned a rating (1025). This rating is
then entered into the database. Database updates, and any other
statistics or information are entered into the database in the
fifth encoding level (1030). The End-User (User) can then access
the database and display selected information and clips from the
database (1035).
[0049] The encoders and the User use graphical user interfaces (GUI
s) to access the system. Each GUI is specifically configured for
the appropriate level. For example, an encoder GUI includes fields
for the entry of data into the database, while the End-User GUI
contains fields that permit the User to search the database for
selected information. These GUI s are described below with respect
to the individual encoding and User levels.
[0050] In the preferred embodiment of the present invention, the
End-User GUI (described below in more detail with respect to FIG.
4) is adapted for display on a dedicated console. An example of
such console is shown in Appendix "A," attached hereto and
incorporated as a part hereof. The console can be configured as a
kiosk, if desired.
[0051] The console permits the User to view selected information
using a first display screen while simultaneously displaying some
or all of this information to at least one other person using a
second display screen. For example, the dedicated console can
include a User Display screen that displays the End-User GUI to the
User only. This User display screen can be any type of display,
such as a liquid crystal display (LCD), portable display,
projection display, standard NTSC display, or high definition
television display.
[0052] A rotatable audience display screen that only displays the
video clip display can also be provided. This second display screen
is used for presentations in which it is not desirable for the
viewers to see or access the statistics, video, and complete
features of the User GUI.
[0053] In alternative embodiments of the present invention, the
selected information is displayed on any appropriate video display,
such as a television, video monitor, or liquid crystal display.
[0054] FIG. 2 is a screen display of a password and Logon Sequence
GUI 100 according to the present invention. To log on to the system
of the present invention, a user first selects the desired path. In
the preferred embodiment of the present invention, the path is
selected by clicking a button. However, the path can be selected
using any other appropriate means, including a check box, command
button, keyboard entry, drop-down list box, list box, slider text
box, touch-sensitive screen, or voice recognition.
[0055] Thus, the first encoder selects the Name path 101, the
second encoder selects the Log path 102, the third encoder selects
the Track path, the fourth encoder selects the Rate path 106, the
fifth encoder selects the Profile path 108, and the end-user
selects the User path 110.
[0056] Each level has its own designated security-encoding status.
Therefore, each level can be accessed only by entering the correct
LogIn name 112 and Password 114 for the particular path selected.
If the correct LogIn name and Password have been entered, the
system will open the selected application(s). The security and
administration architecture 116 of the present invention will be
discussed in detail with respect to FIG. 17.
[0057] FIG. 3 is a flow chart of an end-user application process
according to the present invention. The User accesses the invention
by entering the information during the Logon Sequence (1010). The
End-User GUI is displayed in response to the correct entry of this
security information (1060). Different User access levels can be
provided and secured with password or other appropriate security
protocols.
[0058] In the preferred embodiment of the present invention, the
End-User GUI includes displays for such features as a player search
(1065), player statistics (Statistics) (1070), player information
(1075), View Time Control (VTC) (1080), and video screen box
(1085). The User can configure these features using a User
Preferences GUI (1095). The End-User GUI, as well as any GUI of the
present invention, can optionally display a logo or advertisement
(1090). Such logo or advertisement can include, but is not limited
to, any of a graphical display, animation, video, audio display, or
text display.
[0059] FIG. 4a is a screen display of an end-user display 130
according to the preferred embodiment of the present invention. The
end-user display includes a selection box 132 that permits the User
to search the database for information and video clips selected
according to searchable criteria. Information about a selected
player is displayed in a Player Information Box 170. The selected
video clips, and selected player activity and injury reports are
displayed in a viewing screen 270 in the Video Screen Box 250.
[0060] In the preferred embodiment of the present invention, the
End-User GUI also includes a Statistics box 210 that permits the
User to locate clips from any particular game, combination of
games, or all games. The User can select the total number of
minutes of video clip footage which the User desires to view in the
View Time Control box 220.
[0061] FIG. 4b is a screen display of a selection box 132 according
to the preferred embodiment of the present invention. The play
lists of clips to be viewed are generated using the Clip ID numbers
of selected clips. In the preferred embodiment of the present
invention, the User clicks the appropriate button to select
criteria for the search.
[0062] Such criteria can include, but are not limited to, a
player's name 134, position 136, and past team 138. The User can
also sort the database to search for video clips for viewing
according to the status of a player. For example, in the preferred
embodiment of the present invention, the User can select among
status categories including Unrestricted Free Agent (UFA) 150, Free
Agent (FA) 152, or Restricted Free Agent (RFA) 154 players. The
selected status is indicated in a status display 156.
[0063] If the Free Agent status has previously been selected, the
User can also narrow the search using the player's contract
termination date 140. The Find button 162 is then clicked to
initiate a search.
[0064] A scrollable list 142 of players' names can be generated
using these search features. The name of the player who is the
closest match to the search criteria is indicated by such means as
highlighting 160, centering the name display, using different
fonts, and changing the font size of the player's name display. In
the preferred embodiment of the present invention, the players'
names list can be scrolled up 144 or down 146 by the User.
[0065] The User can also locate in the database a particular
player's information without providing any search information. In
such case, after clicking the Find button, the User is provided
with a scrollable list displaying the names of all players whose
information is stored in the database. The User can then scroll
through the list to select a player. A new search can be initiated
at any time by altering the search criteria and clicking the Find
button.
[0066] The User clicks on the name of a player in the scrollable
list to display that player's information in the Player Information
Box 170, shown in FIG. 4c. In response to the, selection of a
particular player, the Player Information Box displays the player's
profile information. Such information can include the player's:
1 name; 172 photo; 176 jersey number; 174 position; 176 present
team; 180 present team's logo; 182 height; 184 weight; 186 speed;
188 experience; 190 college; 192 date of birth; 194 age; 196 agent;
198 last team; 200 and salary requirements. 202
[0067] FIG. 4d is a screen display of a Statistics box according to
the preferred embodiment of the present invention. The Statistics
box includes selectable buttons 212 representing each game in a
pre-season and season. The User can click on any of these buttons
to locate clips from any particular game, combination of games, or
all games. In the preferred embodiment, the buttons representing
any games for which video clips, in which the selected player
appears, are stored in the database are automatically displayed
upon selection of the player.
[0068] In response to the selection of a particular player, the
Statistics box indicates the number of games in which the player
has played during the selected season. In the preferred embodiment
of the present invention, the number of games is indicated by
lighting up the button 212 for each game played. However, different
indicators can be used in alternative embodiments of the present
invention.
[0069] The Statistics box also displays the selected player's
statistics. These statistics are summed up and displayed in the
statistical range analyzer bar 330. The specific statistics
displayed in the statistical range analyzer bar differ according to
the field position played by the selected w * player.
[0070] The User can optionally view statistics on a game-by-game
basis, and can add or subtract these statistics from the season
total. If the "all" button 214 is clicked, statistics for all games
in which the player has participated for that season are displayed.
Alternatively, the User can select the "none" button 216, which
clears all statistics from the Statistics box. The User can then
view and sum any combination of game play statistics.
[0071] FIG. 4e is a screen display of a View Time Control box
according to the preferred embodiment of the present invention. The
View Time Control incorporates features used to formulate and
direct queries to the database and to return data in response
thereto.
[0072] In the View Time Control (VTC) box 220, the User can select
the total number of minutes of video clip footage which the User
desires to view. In the preferred embodiment of the present
invention, a slider 222 having settings from Minimum to Maximum is
used to select the number of minutes. However, any alternative
selection means can be used, such as a text box. The total number
of minutes selected can then be displayed 244.
[0073] A quality selector 224 can be provided to permit a User to
select the quality of plays to display. This quality selector
functions together with the slider 222 to permit the User to select
both the total viewing time, and the quality of the viewed plays.
User preferences can also be provided to permit the User to
specify, for example, the type of play, the success of play,
yardage, significance of play, conference versus non-conference
plays, or a random assortment of plays to display. The User
preferences are described below with respect to FIG. 5.
[0074] The VTC box also permits the User to specify other search
elements. For example, the quality selector slider 224 can be
adjusted by the User to display plays in any selected range between
best and worst plays. In the preferred embodiment, mandatory search
selections such as Home Game 226, Away Game 228, Natural Turf 230,
and Artificial Turf 232 are preselected, but can be deselected by
the User. The other selection criteria displayed in the VTC box are
dependent upon the player's position. Such criteria can include
Receive Short 234, Receive Long 236, Receive Over Middle 238 and
Run After the Catch 240.
[0075] An Isolation Play 242 button can also be provided in the VTC
box. The User clicks on the Isolation Play button to toggle the
isolation mode on and off. In the isolation mode, the User will
view only that portion of each video clip that has been marked with
Isolation Play "In" and "Out" points. The Isolation Play feature
will be described in more detail with respect to FIG. 13.
[0076] In the preferred embodiment of the present invention, the
Video Screen Box 250 displays the scores for the Home 252 and
Visitor 254 teams for each clip currently being played. The Video
Screen Box also can display the down 256, yardage 258, time 260,
and quarter of play 262 for the current clip.
[0077] The User can click the appropriate week number button 264 to
select a game to be viewed according to the game's week number in a
selected season. The button representing the selected week can then
be highlighted to indicate this selection.
[0078] The End-User GUI is readily configurable. A reversal button
266 permits the user to toggle between different screen views. For
example, the User can position the viewing screen 270 at either the
left or the right of the GUI and toggle between these two different
views.
[0079] Activity, Camera, and Injury buttons 272, 274, 276 are
provided in the Video Screen Box 250 to allow the User to select
among the types of displays to be shown in the viewing screen. In
the preferred embodiment, the Activity Screen (not shown) is the
default screen display. The Activity screen displays the selected
player's Activity Report. The Injury Screen (not shown) displays
the selected player's injury history. The Activity and Injury
Screens can also be configured to initially display selected
information. For example, the Activity Screen can be configured to
initially display the player's most recent activity, or the Injury
Screen can be configured to display all information relating to a
player knee injuries.
[0080] When the Camera Screen (not shown) is displayed, the first
video clip for the selected player is loaded, in a paused state,
into the Video Screen Box for playing. The Camera Control box 280
contains standard video clip playback 282, Rewind 284, Forward 286,
and pause 288 controls.
[0081] The Rewind and Forward buttons have different
functionalities in the Pause and Play modes. In the Pause mode, the
User clicks the Rewind or Play buttons to jump backward or forward,
respectively, in the currently loaded video clip. The length of
this jump is selected using the frame selection box 290.
[0082] In the Play mode, the Rewind and Play buttons are used to
control the video clip at a frame decrement or increment rate,
respectively, determined by the frame selection. In the preferred
embodiment of the present invention, the video clips are stored in
the Motion Picture Expert's Group (MPEG-2) format. The MPEG format
is a highly compressible video stream that provides maximizes image
quality while reducing the required bandwidth.
[0083] MPEG-2 technology does not currently support
frame-scrolling. The MPEG format is not frame-accurate. A frame
known as the I-frame is used to synchronize the sequential frames
following thereafter.
[0084] The MPEG format does not readily permit slow motion viewing
because the slow motion cannot be started at any selected frame.
Furthermore, it is not readily possible to go back one frame from a
displayed frame. Rather, the video must return back to the previous
I-frame to recalculate the sequential display of all the subsequent
frames.
[0085] Thus, slow motion viewing of MPEG-2 format video clips is
not readily implemented. The invention solves this problem by using
a variable back-frame shuttle technology to control the video clip
at a frame decrement or increment rate. This permits the User to
view the video clip in a form of slow motion, for example by
incrementing the video clip displayed by two clips at a selected
rate.
[0086] The Pause button flashes until the user clicks the button to
play the video clip. Clicking the Play button while a video clip is
playing pauses the clip.
[0087] The User can select the next consecutive video clip 302 or
return to the beginning of the current clip 304 using the
appropriate Clip Control 300 buttons. Double-clicking on the Back
Button at the beginning of a clip returns the User to the previous
clip.
[0088] In the preferred embodiment of the present invention, when
the User clicks the Play Loop Set switch 306 in the Clip Control
box, the Play Loop label is illuminated (not shown) and the Set
display 310 begins to flash. In the Play Loop mode, a clip loops
continuously between the start and the end of the clip, as
determined by previously encoded In and Out points. (See discussion
of FIG. 6.)
[0089] The User can set customized In and Out points using the Play
Loop In and Out buttons 326, 328 that are displayed in the Play
Loop mode. A new loop sequence can thereby be created. If a new
Play Loop In point is selected but no Play Loop Out point, then the
end of the clip is the default Out point. Conversely, the beginning
of the clip is the default In point when the Play Loop Out point
only has been selected.
[0090] The User can turn off the looping function by clicking again
on the Play Loop Set switch. The switch is thereby moved to the off
position, and the looping play is terminated.
[0091] In one embodiment of the present invention, a clip button
(not shown) can be provided to permit the User to define a custom
view set. The clip button is clicked to display a custom view
dialog. An example of a custom view set dialog is illustrated in
"B" attached hereto and incorporated as a part hereof. This custom
view dialog can prompt the User as to whether the User wishes to
define a custom view set.
[0092] If the User elects to define a custom view set, a current
view set of the currently-selected search parameters is displayed.
The User can then select individual plays from this current view
set. Selected plays can include fumbles, interceptions, touchdowns,
or can be based on encoder or User-defined, or other criteria. The
custom view set feature can also include a search mechanism to
permit the User to search for clips by such criteria as, for
example, down, score, or time.
[0093] Plays from more than one current view sets can be saved to
the same file to provide a current view set, for example, of
fumbles, best plays of the week, or of any other User-defined
parameters. Such custom view sets can be saved to the database. The
User can then search for stored custom view sets for later
display.
[0094] Stored clips can also be marked as a custom view set,
thereby creating custom reviews or presentations. A custom view set
can also include personal notes from the end-user, such as comments
about a play.
[0095] The VTC settings reflect the most current data available to
the system. Any changes or additional data which affect a
previously-defined custom view set can be accommodated by
automatically updating the custom view set. Alternatively, the
original custom view set can be provided with. A dialog box can
then be generated to query the User whether the User wishes to
update the custom view set. In the preferred embodiment of the
present invention, custom view set parameters supersede the
settings of the View Time Control.
[0096] The User can optionally select the order of screen display
in the User Preferences. The User Preferences will be described in
more detail with respect to FIG. 5. In the preferred embodiment of
the present invention, the User designates, in the User Preferences
GUI, the order of play for the clips. For example, the User can
view clips in chronological or reverse chronological order, by
rating number, or by other viewing criteria. In the absence of such
selection, a default clip, such as the first clip of the game
played four weeks earlier, is selected for playing.
[0097] The Switchback Control 320 permits the User to toggle
between camera views, such as a sideline view 334 or an endzone 336
view, thereby permitting alternate angle replay. An embedded snap
point is used to synchronize the clips. The snap point will be
described in detail with respect to FIG. 11.
[0098] The time increment selector 322 allows the User to specify
the number of seconds that the clip will be rewound before the
angle is switched. This feature accommodates the individual User's
speed in toggling the view. The User can click on the Back button
324 to view an instant replay of the video clip, without toggling
the view. The User clicks on the Set button 326 to display, the
User preferences interface in the video screen box. (See FIG.
5).
[0099] The User can therefore view a video clip from, for example,
a sideline view, and replay the clip from the endzone view.
Alternatively, the invention is readily configured to provide a
default view. This default view can be determined in response to a
selected player's position. Thus, upon the selection of an
offensive tackle, the default view displayed is the endzone view.
The User can instantly switch the angle of view during the playing
of the video clip, or during the rewinding or forwarding of the
clip.
[0100] In the preferred embodiment of the present invention, a
Power On Button 332 is highlighted while the system interface is in
use. The User clicks on the Power Button Off to display a dialog
box (not shown) containing an inquiry for verifying whether the
User wishes to exit from the system program.
[0101] The User can set customized preferences for player search
criteria, and for viewing the clips returned from a search. FIG. 5
is a screen display of a User Preferences GUI 350 according to the
present invention. This GUI is displayed in the video screen box
when the User clicks on the Set button, as previously
described.
[0102] The User can select, review, and edit some or all user
preferences using the User Preferences GUI. For example, the User
can designate the playing order of the clips, the number of games
to be searched 352, whether the footage is to be delivered in
chronological or reverse chronological order 354, change a
password, select the first screen view, and choose the default
camera angle.
[0103] The password change preference 356 allows the User to change
the User's password. In the preferred embodiment of the present
invention, the User changes this password by entering the old
password 358 and then entering the new password twice 360, for
confirmation.
[0104] The first screen view preference is used to select whether
the Activity Screen 272, Camera View Screen 274, or Injury Report
Screen 276 is displayed first, upon the initiation of a search.
[0105] The User can also select the default camera angle and can
set specific camera angles for viewing specific player positions.
For example, the User may prefer viewing all video clips of
offensive tackles from a sideline angle view 334, while viewing all
video clips of the place kicker from the endzone 336.
[0106] In the preferred embodiment of the present invention, five
encoding levels are used to enter data into at least one searchable
computer database. The encoding of these five levels can be
performed by one or more encoders. In the preferred embodiment,
each encoding level is performed by a separate encoder.
Alternatively, any or all of the encoder processes can be
automatically implemented, for example, using a computer.
[0107] FIG. 6 is a flow chart of a first encoding process according
to the present invention. In the first encoding process, the first
encoder initially prepares a magnetic video tape for encoding
(2000). While magnetic video tape is used in the presently
preferred embodiment of the invention, the invention is also
readily adapted for use with any appropriate type of storage
medium, such as film.
[0108] To prepare the magnetic tape for processing, the first
encoder separates from the other tracks on the videotape the tape
track that records one of the camera angles of a parallel-processed
game videotape. This separated tape track is then inserted into a
video playing and editing machine, such as a Betacam, manufactured
by Sony Electronics Inc. of Fort Myers, Fla. and, controlled by the
Videomedia--Local Area Network (V-LAN) manufactured by Videomedia
Inc. of San Jose, Calif.
[0109] Each tape track is then divided into a series of consecutive
clips. A clip is a tape segment of a predetermined event. For
example, each play of a football game videotape can be designated
as a separate clip. A file naming protocol known as Clip ID is used
to index each clip in the video database (2005).
[0110] Consistent beginning and ending points, hereinafter referred
to as "In" and "Out" points, respectively, are then determined for
each named clip (2010) of each separate track of the video tape.
Therefore, clips of the identical play but from different camera
angle tapes can be synchronized.
[0111] A software application is next used to generate a
BatchEncodingList (hereafter referred to as Encoders Control List
or ECL) from the separated video track (2015). In this batch
encoding process, the ECL file is used to encode all specified In
and Out points of each video clip into an MPEG-2 video stream
format file. One suitable batch encoding software application is
MPEG Works by FutureTel Inc. of Sunnyvale, Calif. An ECL is
generated for each camera angle stored on a videotape. For example,
a videotape of a football game can include tracks that store
sideline, endzone, and overhead cameras. The clips are preferably
batch-encoded to an MPEG-2 format. However, any alternative video
format that can be indexed, stored, and displayed according to the
teachings of the present invention can also be used.
[0112] While the batch encoding process according to the preferred
embodiment of the present invention is performed manually by an
encoder, the process can also be automatically performed, for
example, using computer control.
[0113] Each encoded videotape has its own unique ECL. Corrections,
such as gamma, color, brightness, saturation hue, and compression
ration can be saved to the ECL for subsequent use during display of
the associated clip.
[0114] In one embodiment of the invention, each the video clips of
each different view of a play can be separately and simultaneously
encoded. For example, each encoder can manually pause the frame of
a displayed clip at a particular point, such as a scoreboard view
occurring prior to the In point of the clip. The GSSD can then be
entered. Data entry differences between the different views can be
detected, and errors corrected.
[0115] FIG. 7 is a screen display of a BatchEncodingList GUI and
enter 389 into the system the according to the present invention.
The first encoder plays a videotape track, and identifies a series
of consecutive clips within the track. An ECL set-up dialog 382 is
used to set up initial ECL batch encoding data. For example, the
set-up dialog can include text boxes for the game week 384, home
team, 386, and visitor team 388.
[0116] The software application that is used to generate the ECL
automatically assigns sequential clip identification (Clip ID)
numbers 390 to each consecutive numbered clip 392. The first
encoder then determines the In and Out points that define the
beginning and end of each clip, and assigns a file name to each
clip.
[0117] In the preferred embodiment of the present invention, the
Clip ID for a particular clip is assigned according to the
attributes of the clip. However, one skilled in the art will
recognize that the Clip Ids can also be assigned randomly or using
any other assigning convention with which the clips can be indexed,
searched, and retrieved according to the teachings of the present
invention.
[0118] In the preferred embodiment, the first character of the Clip
ID represents the current week of game play, using a letter. For
example, A=Week 1, and D=Week 4. The next four characters in the
Clip ID represent the initials of the teams that are playing in the
current clip. The order of these characters establishes which is
the Home team and which is the Visiting team. As an illustration,
the Home team can be indicated first and the Visiting team can be
indicated second, for example, using the designations "AA"=Team 1
and "BB" Team 2.
[0119] The software application then automatically logs each clip
consecutively, using a play extension. For example, "00 1"=the
first play of a game, and "023" the twenty-third play of the game.
A file extension indicating to the computer operating system the
format of the clip file can be appended to the Clip ID. Thus, "mpg"
indicates that the file is stored in the Motion Picture Experts
Group (MPEG) format.
[0120] As an illustration, the clip having the Clip ID
"CAABB023.mpg" is the twenty-third play of the third game of the
season, between Team 1, playing at home, and visiting Team 2. The
clip is stored in MPEG format.
[0121] The BatchEncodingList GUI can also include a Clip ID dialog
box 381 that permits the first encoder to select 379 and open 391 a
selected clip by entering the particular game 383, home team 385,
and visitor team 387 information. The second encoder controls the
batch encoding process using camera control 353 buttons, such as a
play button 351 and a pause button 355. The first encoder can
return to a previous clip, or advance to the next consecutive clip
by clicking the respective clip advance controls 357, 359.
[0122] The invention includes at least one storage device for
storing the clips, and database, to be indexed, sorted, and
displayed, as well as the software applications required to perform
these functions. Such storage device can include a hard disk drive,
floppy disk, CD-ROM, digital video disk, laser disk, magnetic tape,
video tape, film, or any other computer-accessible storage
medium.
[0123] The first encoder divides a video tape into consecutive
clips according to predetermined criteria. An In point is then
identified at the beginning of each clip and is selected by
clicking the appropriate button 394. The In point is determined
according to consistent, defined criteria. For example, in a video
tape of a football game, each play can be designated a separate
clip. The In point of each clip can then be arbitrarily selected
as, for example, two seconds prior to the snap of the ball in the
play referenced in the particular clip.
[0124] An Out point is similarly determined for each clip and
selected by clicking on the Out button 396. The In and Out points
can be selected at any appropriate and consistent times. The In and
Out points are used to synchronize clips from different camera
angle videotapes. These In and Out points are electronically
stored, for example, by storing the In and Out times 395, 397,
respectively, in the ECL. The clip length 398 can also be
determined and stored.
[0125] FIG. 8 is a flow chart of a second encoding process
according to the present invention. The primary function of the
second encoder is to index all play information (2030). The second
encoder also monitors the batch encoding process performed by the
first encoder.
[0126] Play information includes the game week, playing conditions,
game score, home and visitor teams, time of play, down, quarter,
yardage, and which team is playing offense. While this information
is manually determined and entered into the database by the second
encoder in the presently preferred embodiment, the information can
alternatively be automatically determined and entered.
[0127] For example, in an alternative embodiment of the invention,
an intelligent scene detection process is used to detect,
recognize, identify, and record motion. The intelligent software
agent process can also be used to detect, recognize, identify, and
record sounds. Such motion can include scoreboard displays, scene
changes, volume levels, and sound textures. The intelligent scene
detection process can be implemented using hardware, firmware, or
software components.
[0128] Various visually displayed items, such as colors, color,
time of day, scene types, volume levels and lighting conditions are
represented as specific zones of a screen display. An intelligent
software agent is then used to scan the video at all times to
detect the relationship of each stored item's screen location to
that of other items. This relationship can be determined regardless
of whether or not the particular stored item is displayed in the
currently viewed clip.
[0129] Human input is initially used to select, name, and identify
the zones in which these visually displayed items are located. Upon
receiving initial human input, the intelligent software agent is
increasingly, over time, operable to search for and identify the
selected items and'* their relationship to one another.
[0130] A name field is attached to items that are identified by the
intelligent software agent. These items are then automatically
tracked as their appearances and screen locations change from one
clip to another. The intelligent agent can continually be
self-aligned to track and record multiple sets of information.
[0131] The information is automatically captured from the video
image and written to a file. This process effectively translates
visually displayed data such as scoreboard information, into an
instantly accessible text file for the database, or other
applications.
[0132] Certain items of play information remain constant for each
clip in a game. For example, the game week and home/visitor team
information or whether the game is being played on natural or
artificial turf does not change during a particular game. The
invention permits this Game-Specific Setup Data (GSSD) to be
entered only once for each ECL file. The GSSD is then automatically
reused for each clip in the game (2035). The play information is
then copied for each additional video track of a particular game
until changed (2040). In the preferred embodiment of the present
invention, the Clip ID number is automatically incremented for
consecutive clips.
[0133] FIG. 9 is a screen display of a second encoder GUI 400
according to the present invention. The second encoder first
selects an ECL file. The ECL file can be a single master file, or
many files which can be distributed across different locations. The
ECL file is associated with the file's specific MPEG-encoded video
stream. This file contains the previously encoded In and Out
points. These In and Out points are used to determine the frame
intervals between encoded clips in the selected stream.
[0134] An ECL file is the basic element of a central database to
which data is entered in other encoding processes. The ECL file
includes essential information that is used in generating a clip
list for screen viewing based on Clip IDS of selected clips. Such
ECL files can also be used to advantage in automating the various
encoding processes according to the present invention.
[0135] The second encoder enters all GSSD for the selected ECL file
into a dialog box 394. The dialog box can be automatically
displayed upon selection of an ECL, or can be manually displayed by
the second encoder. The GSSD is entered using the Game Week 402,
Home Team 404, Visitor Team 406, and Playing Turf 408 buttons of
the Game Week setup display. This GSSD information does not need to
be reentered, and is automatically logged for each consecutive clip
in the ECL file.
[0136] In the figure, the GSSD buttons are located at the bottom of
the screen. However, the positioning of the buttons is a matter of
design convenience only. Therefore, the buttons may optionally be
located at any convenient positions on the display. Additionally,
the GSSD information may be entered through use of other input
means. For example, a drop-down list box, check box, or separate
data entry screen(s) may be provided for entry of the GSSD in lieu
of buttons.
[0137] The second encoder then enters the remaining play
information for the clip being encoded. In the preferred embodiment
of the present invention, this information can include the clip
number 411, score 410, down 412, yard line 414, time remaining 416,
quarter 418, and whether the home team is playing offense 420. The
clip number is automatically incremented for each consecutive clip
in a video tape. An automatic fill-repeat feature transfers
redundant score data from clip to clip.
[0138] A Clip Control box 422 permits the second encoder to go back
424 to a previous clip, or to go forward 426 to review the next
consecutive clip of the video tape. The Clip ID number of the
current 430 and the previous 428 or next (not shown) clips can also
be displayed. The Clip ID box also includes a delete button 432 to
permit the second encoder to delete a clip.
[0139] In the preferred embodiment of the present invention, the
second encoder monitors the batch encoding process performed by the
first encoder. The second encoder manually pauses the frame on the
video display deck on any scoreboard shot which occurs prior to the
in point of a particular clip. The second encoder then manually
enters specific game data, including game score, home and visitor,
time of play, down, quarter, yardage, and which team is playing
offense for each consecutive clip.
[0140] All clips for each camera angle are stored in sequence in
the ECL file. For example, the twenty-third clip in CAABB023.mpg
for sideline, endzone or any other camera angle will have the same
file name in the database. Therefore, all alternative camera angle
clips for the same play will store the same play information. Thus,
there is no need to monitor and encode play data for every angle
that is batch digitized to the, for example, MPEG file format.
[0141] The clip for each camera angle will be in a separate part of
the directory tree. For example, the sideline and endzone camera
angles for the twenty-third clip are stored as:
[0142] c:/main data/sideline/CAABB023.mpg
[0143] c/main-data/endzone/CAABB023.Mpg
[0144] When data has been entered into all of the fields on the
display screen, the information is stored to the database. The
second encoder GUI then automatically displays the screen for the
next consecutive clip in the ECL file. While the second encoder can
select any clip for data input, the second encoder cannot bypass an
incomplete record by using the Clip Control.
[0145] FIG. 10 is a flow chart of a third encoding process
according to the present invention. The third encoder first selects
a game week to encode (2050). In response to this selection, all
video clips for the selected game are retrieved. The clips are
retrieved using file management software application (2055) such as
Microsoft Access, produced by Microsoft Corporation of Redmond,
Wash.
[0146] These clips are cued-up and displayed in the GUI, beginning
with the first untracked clip of the game. An untracked clip does
not contain any player jersey number data. This feature permits the
third encoder to automatically return to the next clip for data
entry after having logged-off from the data entry terminal after an
extended period of time.
[0147] The third encoder then manually enters the jersey numbers of
all players in a particular clip (2060). The third encoder obtains
this information by viewing the clip and then recording all of the
visible numbers. Alliteratively, an intelligent software agent,
such as previously described with respect to the second encoder
process, can be used to obtain and record such information.
[0148] A MasterPlayerID is assigned for each player whose relevant
information is not stored in the database (2065). The third encoder
also identifies and records the snap point of each play (2070). A
SuperFill feature then automatically copies all of a previous
clip's player data to the next consecutive clip on the same "Point
of Attack" (2075).
[0149] FIG. 11 is a screen display of a tracking sequence GUI 440
according to the present invention. The third encoder enters the
game number in the game text box 442 displayed in the GSSD box 447
to select the game week for encoding. The first untracked clip is
automatically displayed in the video screen box 480, and the clip's
Clip Id number is displayed in the clip list 481. The Game-Specific
Setup Data for the clip is also automatically displayed.
[0150] In the preferred embodiment of the present invention, at
least the portion of the Clip ID list that includes the
currently-displayed clip for the selected game is displayed. The
currently displayed clip can be indicated, for example, by
highlighting.
[0151] While examining each clip, the third encoder manually enters
into the player number text box 448 the jersey number for each
player on the playing field. As each number is entered 446, it is
displayed in a box 462 in a team roster display 466.
[0152] The third encoder can also enter into the database data
concerning a player's actual location on the video clip display.
For example, when entering a jersey number, the third encoder can
also enter into the database the selected player's location at the
start of the play. In one embodiment of the invention, a circle
with crosshairs is used to identify the selected player at the
start of the play. This circle disappears when the snap point is
determined.
[0153] In the preferred embodiment of the present invention, the
Home team and the Visitor team each have separate data entry and
display boxes, such as the player number text boxes, and player
roster displays. However, in alternative embodiments of the present
invention, selection means, such as a toggle, can be provided. In
such case, a single set of data entry * and display boxes can be
used to enter and display both Home and Visitor team data.
[0154] The invention uses a SuperFill process to automatically copy
all of a previous clip's player data to the next consecutive clip
on the same "Point of Attack. A Point of Attack is defined as a
series of offensive, or defensive, or special teams plays. For
example, an offensive drive of five consecutive plays (with no
penalties) would be a Point of Attack having five consecutive
clips.
[0155] The player data from the first clip in a Point of Attack is
stored in a temporary file. This temporary file can be stored in a
central database, or in a local database accessible only to the
third encoder's terminal. The data in this temporary file is
automatically reused and displayed to the third encoder when the
next consecutive clip in the Point of Attack is displayed. The
display screen for this next consecutive clip reflects the presence
of such SuperFill data by, for example, by displaying these
temporarily stored jersey numbers with a different color
background. The temporary file is retained in memory at least until
the next consecutive clip is processed.
[0156] In the preferred embodiment of the present invention, the
SuperFill jersey numbers are "grayed out" (not shown). The third
encoder selects the jersey number of each player who remains on the
field during this next consecutive clip, for example, by clicking
on the grayed out jersey number. This selection can be confirmed by
means such as changing the color of the number. In the preferred
embodiment of the present invention, a selected grayed out number
changes color to yellow to indicate confirmation, and the jersey
number information is entered into the database.
[0157] The third encoder can then modify this data to reflect any
changes that have occurred. For example, if one of eleven football
players has been replaced in the next consecutive clip, the third
encoder only needs to change the jersey number of the replaced
player to that of the new player. This modified information is then
stored in the temporary file for use with the next clip in the
Point of Attack.
[0158] In one embodiment of the present invention, a Point of
Attack refers only to the plays of a particular drive or sequence.
However, in an alternative embodiment, a Point of Attack refers not
only to the plays of a particular drive, but also to the last play
of a previous drive or sequence of the same kind. Thus, the jersey
number data from a team's last offensive play of a series will be
temporarily stored as SuperFill data for use when the team begins
its next offensive series. The number of plays in an offensive
series can be encoded by any of the first three encoders.
[0159] Each player in the database is assigned an identification
number, referred to as the player's MasterPlayerID. This
MasterPlayerID remains assigned to a player throughout the player's
career, and is not changed as the player switches teams. A player
who plays at more than one position can be issued a separate
MasterPlayerID for each position.
[0160] A player's MasterPlayerID is retrieved from the database
upon the entry of the player's jersey number. The MasterPlayerId is
then used to retrieve player-specific information from the
database. In this process, the player's number, position, and team
information are cross-referenced for each clip in which the player
is a participant. As an example, in response to the entry of the
jersey number "12" for an offensive player, the invention would
retrieve information such as:
2 Team: Anytown, USA Name: John Athlete Position: Safety.
[0161] An input dialog box (not shown) is generated in response to
an entry of apparently inconsistent player-specific information, or
an entry of a player name not found in the database. For example,
if the number "12" were entered as a wide receiver, the
MasterPlayerId of John Athlete is compared with the MasterPlayerIds
in the database. An input dialog box (not shown) is then
automatically generated by the invention file management software
when the MasterPlayerId comparison retrieves the information that
player John Athlete is a safety. This input dialog box can display
a query to prompt the encoder to verify the inconsistent
information, and to enter any corrections thereto. The file
management software used by the invention is discussed below in
more detail.
[0162] The tracking sequence GUI 440 also preferably includes a
camera control box 465 and switchback control box. (See previous
discussion with respect to FIG. 4f).
[0163] Upon viewing the input dialog box, the third encoder can
then either correct a data entry error, or enter into the database
the information that John Athlete is also playing as a safety. A
new MasterPlayerId is generated for John Athlete to represent this
additional side receiver position. The fifth encoder is also
prompted to enter into the database the relevant personal
information and statistics of a player whose name is added to the
database by the third encoder.
[0164] The third encoder determines and marks the location of
synchronizing points in each clip. Any clips that display the same
play, for example sideline and endzone views of the same play, will
have the same Clip ID number. The synchronizing points in each of
these clips are used to synchronize the views to permit a user to
switch the displayed views in real time.
[0165] These synchronization points are selected according to
predetermined criteria. In the football embodiment discussed
herein, the snap point is designated the official start of a play.
It is readily apparent that, for each alternative embodiment of the
present invention, a different start point, such as the dropping of
a puck, or the starting of a game clock, may be selected.
[0166] The third encoder sets the start of a play by marking the
snap point by, for example, clicking the snap point button 463 at
the appropriate time. While in the presently preferred embodiment
the snap point is determined visually and manually marked by the
third encoder, in alternative embodiments of the present invention,
the snap point can be automatically determined and entered into the
database, for example, using an intelligent software
application.
[0167] The snap point time is linked to the Clip ID number and is
recorded in the database for each video clip for both the sideline
and endzone camera angle clips. In the preferred embodiment of the
present invention, the snap point is stored as a time-based list,
and is not marked onto the video clips. The third encoder can then
use the linked snap points to verify that clips having the same
Clip ID do, in fact, show the same play in the game.
[0168] When the player entry for a particular clip is completed,
the third encoder proceeds to the next consecutive clip. A Clip
Control box 468 includes controls to permit the third encoder to go
back 470 to a previous clip, or forward 472 to the next clip.
[0169] The third encoder cannot proceed to encode the next
consecutive clip until all player jersey numbers have been entered
and until both sideline and endzone snap points have been recorded.
An error dialog box (not shown) is displayed if the third encoder
attempts to proceed to the next consecutive clip without having
first entered this data.
[0170] Clip evaluation and custom player ratings are assigned in a
fourth encoding process. FIG. 12 is a flow chart of a fourth
encoding process according to the present invention. The fourth
encoder first searches in the database for a particular player who
participates in a clip (2090).
[0171] The fourth encoder evaluates the selected player performance
and assigns the player a Level One rating (2095). Each player
participating in the clip is similarly evaluated. The fourth
encoder then evaluates the clip itself and assigns the clip a Level
Two rating (3000). The fourth encoder also sets the in and out
points that designate Isolation Plays (3005).
[0172] FIG. 13 is a screen display of a clip evaluation GUI 500
according to the present invention. The clip evaluation GUI used by
the fourth encoder is similar to the End-User GUI, shown in FIG.
4a. However, in addition to the features of the End-User GUI, the
fourth encoder is also provided with means to conduct player
searches based upon different criteria, and means to enter data
into the system database. The Figure is therefore discussed with
regard to these additional features.
[0173] The clip evaluation GUI includes means for toggling between
a player search criteria mode, and a rating structure criteria
mode. This toggling means can be, for example, a toggle switch 502
or a selectable button on the display screen.
[0174] Upon selection of the player search criteria mode, a player
search selection box 503 is displayed. The selection box permits
the fourth encoder to search the database for information and video
clips selected according to such searchable criteria as name,
position, past team, or termination date. The selection box has
been previously described in detail with respect to FIG. 4b.
[0175] A Level One Rating is then assigned by the fourth encoder.
The fourth encoder assigns this Level One Rating by reviewing each
consecutive play (clip) of a video tape using a predefined set of
ratings criteria. These criteria can be adopted from, for example,
recognized governmental or organizational standards, or can be
independently developed by the end-user of the present invention or
by an information or rating service provider using the invention.
Thus, the scoring conventions currently used by the international
governing bodies of gymnastics or diving can be adopted for use
with the present invention.
[0176] The presently preferred embodiment of the invention uses a
bell-curve rating system having rating numbers between one (for the
"worst" play) and six (for the "best" play). The Level One Rating
determines a player's "best and worst" plays for use by the View
Time Control (VTC), as described above, with respect to FIG. 4.
This rating can be determined by the fourth encoder, or by another
person, such as a trained scout, for use by the fourth encoder.
[0177] To enter this rating into the database, the fourth encoder
toggles from the player search criteria mode to the rating
structure criteria mode. A rating box 504 is then displayed in the
GUI. In the preferred embodiment of the present invention, the
rating box displays a list of consecutive clips 506, including the
currently-selected clip 508. The currently-selected clip is
indicated by such means as highlighting. The fourth encoder can
then enter the Level One rating into the appropriate text entry box
510.
[0178] The fourth encoder also assigns a Level Two rating to each
clip. The fourth encoder can then enter the Level Two rating into
the appropriate text entry box 512. The Level Two rating
established the viewing priority of the clip, as controlled by the
VTC. For example, each clip can be rated using a Level Two rating
system having rating numbers of from one two four. The end-user can
then select for viewing clips having a particular rating number.
Thus, clips rated one would always be shown, while clips rated two
through four would only be shown if user-selected.
[0179] The View Time Control enables the viewing criteria to be
parsed according to multiple criteria. These criteria can include
user-configured or encoder-configured features, or Custom Isolation
Play Sets (described in detail below). The present invention
displays different VTC parameters in response to the playing
position of a selected player. The fourth encoder determines
whether each of the displayed parameters is true or false. However,
any displayed GSSD parameters cannot be so marked by the fourth
encoder, because this information has already been entered by a
previous encoding process.
[0180] Examples of parameters for football player positions
include, but are not limited to:
[0181] For Receivers and Tight Ends--
[0182] Receive Short
[0183] Receive Long
[0184] Run After the Catch
[0185] For Offensive Tackles--
[0186] Pass Block
[0187] Run Block
[0188] For Running Backs and Full Backs--
[0189] Inside Run
[0190] Outside Run
[0191] Blocking
[0192] Receiving
[0193] 100 Yard Plus Games
[0194] For Defensive Ends and Defensive Tackles--
[0195] Pass Rush
[0196] Run At
[0197] Runaway
[0198] For Linebackers--
[0199] Blitz
[0200] Coverage--Man
[0201] Coverage--Zone
[0202] Run At
[0203] Run Away
[0204] For Defensive Centers and Defensive Safeties--
[0205] Run Support
[0206] Coverage--Man
[0207] Coverage--Zone
[0208] The fourth encoder also sets the in and out points that
designate Isolation Plays. An Isolation Play is a subset of a clip
that includes the highlight of that clip. The fourth encoder sets
the Isolation Play In and Out points according to a predefined set
of parameters that determine which events qualify for Isolation
Play status, and how many seconds are to be allocated before and
after the Isolation Play.
[0209] Different levels and distinct applications can be defined
for the IsolationPlays, permitting an end-user to quickly locate
and play specific sets of video clips. One example of an Isolation
Play is a catch by a receiver, and several seconds before and after
the catch. An end-user can therefore select and retrieve for
display, for example, all IsolationPlays showing the catches of a
particular receiver.
[0210] To set an Isolation Play, the fourth encoder selects the
Isolation Play button 505 in the VTC box 507 of the display screen.
In response to this selection, the Play Loop switch 517 in the Clip
Control box 511 of the display is replaced with the Isolation Play
switch 509, thereby indicating that Isolation Play is active. When
Isolation Play is active, In and Out buttons 513 515, respectively,
are displayed. The fourth encoder clicks on the appropriate button
during display of the clip to set the In and Out points,
respectively.
[0211] Clicking the Isolation Play switch again toggles the Clip
Control back to the Play Loop switch. When the Play Loop switch is
active, Back and Next buttons 519, 521, respectively, are
displayed, to permit the fourth encoder to view the previous or the
next consecutive clip. The Clip Control has previously been
discussed with respect to FIG. 4f.
[0212] Upon completion of the fourth encoding process, the database
is updated using a fifth encoding process. FIG. 14 is a flow chart
of a fifth encoding process according to the present invention. In
this fifth encoding process, the fifth encoder is presented with a
"to do" list of data entry fields, reflecting missing statistical
information (3020). The fifth encoder enters this missing
statistical information. The database is thereby updated with data
such as team statistics, player personal statistics, player
injuries, information sources, as well as other specific data. The
fifth encoder also monitors and enters player profile information
(3025).
[0213] Additionally, in the fifth encoding process, player jersey
numbers which are not found in the database roster are noted in an
automatic data error checking system. In this data checking system,
fifth encoder is prompted to enter specific player information such
as name, position, and MasterPlayerID. The assigning of a new
MasterPlayerID to a player has been discussed in detail with
respect to the third encoding process as illustrated by FIG.
11.
[0214] FIG. 15 is a screen display of a database update GUI 520
according to the present invention. A list of all players with
missing statistical information is brought up in a queue (not
shown) for review by the fifth encoder. This queue is presented as
a "to do" list of data entry fields, for example, for new player
jersey numbers that were previously logged in the encoder level
three process, but which were previously not in the system.
[0215] In the preferred embodiment, an empty field button 570 is
provided. The fifth encoder first clicks on the empty field button
and then selects any other field to locate and display all empty
data fields in the database for the selected field. For example,
all players whose home town data fields are empty are displayed
upon clicking the empty field button and then selecting the home
town field.
[0216] The fifth encoder can verify previously-entered information
and enter new information into these fields. If there are no
players listed in the "to do" list, then the fifth encoder can
search for players by name 526, position 528, or for specific
fields 530. In the preferred embodiment of the present invention,
the database update GUI includes, but is not limited to, data entry
fields for team number 524, player name 526, and MasterPlayerId
532.
[0217] The statistical information database stores profile
information for each player. The fifth encoder monitors and edits
this information. Player profile information can include, but is
not limited to position 533, status 534, age (not shown), weight
536, height 538, speed 540, experience 542, college (not shown),
date of birth 544, agent (not shown), last team (not shown), salary
requirements 546, injury history 548, home town 552, home phone
554, overall rating 556, and intra-league activity reports 550. The
players statistics (Statistics) 560, name plate 562, and photo 564
can also be displayed.
[0218] In the preferred embodiment of the present invention, the
specific statistical data that can be entered into the statistical
information database includes:
[0219] Rushing Statistics for Full-Backs and Half-Backs
[0220] Number of Rushes
[0221] Yards Rushing
[0222] Average
[0223] Touchdowns
[0224] Passing Statistics for Quarterbacks
[0225] Attempted
[0226] Completed
[0227] Yardage
[0228] Completion %
[0229] Touchdowns
[0230] Interceptions
[0231] Receiving Statistics for all Receivers (not shown)
[0232] Number of Catches
[0233] Yards
[0234] Touchdowns
[0235] Number of Drops (This statistic is preferably entered for
each player's clip by the fourth encoder.)
[0236] Defensive Statistics (not shown)
[0237] Number of Sacks
[0238] Total Number of Tackles
[0239] Number of Interceptions
[0240] Number of Touchdowns.
[0241] The fifth encoder can also enter a player overall rating
into the database. This overall rating can be determined from the
average of the individual player's ratings for each play in which
the player participated.
[0242] FIG. 16 is a system diagram of a system 600 for indexing,
sorting, and displaying a video database according to the present
invention. In the preferred embodiment of the present invention,
two separate statistical information databases 602, 604 are
maintained by verification encoders. A first database 602 stores
the most recently available player information. The second database
604 includes, for display in an encoder process 606, 608, 610, 612,
614 or End-User GUI 616, the previously-available player
information. When a request for display of data is made for data
stored in the second database, a check of the first database is
also performed to determine whether more current information is
available. Both databases are preferably updated 605 on a periodic
basis. These updates can be performed by either a human encoder, or
automatically by a computer.
[0243] The present invention can be implemented on any suitable
computer hardware configuration. The preferred embodiment uses a
server-based 607 electronic network using, for example, a PC-based
computer running Microsoft SQL Server. A file management software
application such as Microsoft Access is used to generate, organize,
and access any or all of the databases.
[0244] In the preferred embodiment of the present invention, the
hardware configuration includes 100 MB fiber channel network
connections, two Terabyte servers, and features a 5 MB per second
data transfer rate. However, the invention can also be implemented
using any other computer configuration, including an intranet
system, Internet system, satellite communication system, personal
computer-based system, broadcast network, or server-based network
system. For example, the invention can be provided as subscription
service transmitted by satellite to a subscriber.
[0245] The invention can be distributed on a storage medium, such
as on a hard drive, or removable storage cartridge. The user can
then access the database stored on the storage medium. Upgrades to
the database can then be distributed to the User. Alternatively,
the invention can be provided as an on-demand service, with the
database being stored in the service provider's storage medium. The
information can then be distributed to the User as requested, using
such means as the Internet, cable, fiber optics, or satellite
transmission.
[0246] FIG. 17 is a system diagram of the security and
administration architecture according to the present invention. The
security and administration protocols are used in accessing the
database, as well as in storing and assigning data thereto. Tasks
subject to the security and administrative protocol include
software management and updating, technical support and assigning,
issuing and verifying passwords. The security and administration
protocols are also used to monitor application use, including the
location, time of use, information displayed, and password
used.
[0247] Any or all features of the security and administration
architecture according to the present invention can be provided
with multiple levels of access based upon security priority and
password status. The features supported by the security and
administration architecture are enabled by any appropriate software
applications and hardware components.
[0248] In the remote access technical support feature 620, the
technical support personnel can use any digital transfer
communication method to directly access the invention hardware,
software applications or database 622. The technical support
personnel can thereby diagnose, develop, test. Update, monitor, or
correct system problems. User queries can also be answered in real
time. The technical support personnel can also use this feature to
view the same display as is currently viewed by an encoder or
User.
[0249] The live software and database update feature 624 permits
remote access to information stored in any database or available to
any display terminal of the system according to the present
invention. Data and software can thereby be monitored, reorganized,
updated, and removed.
[0250] The user management feature 626 is used to remotely monitor
password use. This feature can be used to monitor compliance with
software or other licensing agreements. The user management
monitoring can be performed on-site or remotely using any supported
communication means.
[0251] The user monitoring feature 628 is operable to track each
encoder and User's use of the system. This feature can be used to
determine the length of time that an encoder or user accessed any
component area of the invention, and can provide administrative,
marketing, field, player, and rating data. The user monitoring
feature is used to advantage in maintaining process quality control
and in enabling process improvements. The user monitoring feature
can be performed on-site or remotely using any supported
communication means.
[0252] In the preferred embodiment of the present invention, the
data associated with one season of play is stored in a single
database file. Such data includes player statistics and data
associated with the video clips.
[0253] An exemplary database structure is shown in Appendix "C". In
the exemplary database structure, a Player Master table stores the
players' MasterPlayerIds and other related personal information
such as name, or date of birth. The MasterPlayerId of a selected
player is used as a pointer to information stored in a Player
Current table. The Player Master table, in conjunction with the
Player Current table, is used to manage the flow of data within the
database.
[0254] The Player Current table is used to store current relevant
player information that can periodically change. Such information
includes team name, or jersey number. Information retrieved from
the Player Current table in response to the selection of a player
is displayed in the Player Information box. (See FIG. 4c, above).
This player information is accessed initially when a video clip is
being played.
[0255] In a Player and Play table, a player's MasterPlayerId,
stored in the Player Master table, is Used, in conjunction with the
Player Current table, to generate a response to a query from a
user. The player's rating is stored to the Player and Play table.
This rating can be used to determine which video clips are
retrieved for display in response to a search request.
[0256] A Clip Master table can be used to store the information
entered into the database in the second encoding process, such as
the Clip Ids and clip length information. A list generated in
response to a query to the Clip Master table provides the location
of data provided in response to any changes in the total amount of
viewing time currently selected in the View Time Control. The Clip
Master table is also used to provide the location of the series of
clips queued for viewing.
[0257] A Player Statistic table is used to store and maintain any
statistical information. More than one set of statistics can be
stored per table record. For example, statistical information can
be stored according to week, game, play, or according to any other
set of sortable criteria.
[0258] A Position Codes table can be provided as a reference
library. This library is queried to test and verify data entered
into the system. This table is used to provide quality control for
data entered into or output from the system, as well as to promote
consistent data and data formats.
[0259] In alternative embodiments of the present invention, the
video and informational data can be stored to a database according
to any appropriate database storage configuration. Such
configurations can include separate files, separate databases,
local and remote locations, server setup, and partitions.
[0260] The present invention also uses a multimedia authoring
software application such as Macromedia Director to control the
media elements, such as the video tape. The multimedia authoring
software application is used to import graphics or video. The
graphics or video are then interactively integrated and
synchronized with the information databases.
[0261] The preferred embodiment of the present invention is adapted
for use by sports professionals such as scouts, managers, players,
coaches, officials, and sports journalists. However, the invention
can be readily be adapted for use by any other user, such as a
researcher or fan.
[0262] One skilled in the art will recognize that the teachings of
the present invention are also readily adapted for use with any
sport, or with non-sports uses. For example, a database according
to the present invention can store clips of movie, theater, and
musical performances, such as for use by talent agents, or
political speeches and records of votes for use by political
analysts. The present invention can also be used to index, sort,
and display other types of media elements, including audio, audio
tracks associated with video tape, and film.
[0263] While, in the preferred embodiment of the present invention,
rating information is entered into the database as part of an
encoder process, in an alternative embodiment, this rating
information is not included in the database as an encoder process.
An information or rating service provider can then use the
invention to provide a customized rating system or evaluation of
individual players or teams based upon the statistics stored in the
invention databases.
[0264] The invention can be implemented with any appropriate data
entry and data output, including keyboard, touch screen, voice
recognition, pointer device such as trackball, touchpad, wand,
mouse, handwriting recognition, audio input and output, and
touch-sensitive screen. In addition, the graphical user interfaces
of the present invention can use different data entry and input
means including, but not limited to a button, dialog box, slider
bar, keyboard input, touch screen, and voice recognition. Selected
buttons or other elements can be indicated by means such as
highlighting, changing color, changing size, changing position on
display, or changing font.
[0265] The graphical user interfaces shown in the Figures are
exemplary only, and are not intended to limit the scope of the
present invention in any way. The present invention can be
implemented using any suitable graphical user interface
configuration. For example, any button, toggle or other data entry
or input means can be positioned at any point on the screen. In one
embodiment of the present invention, any or all of the graphical
user interfaces are user-configurable. Alternatively, any or all of
the graphical user interfaces can be configurable by manufacturer
according to user specifications, or not configurable.
[0266] In the preferred embodiment of the present invention, at
least the User is provided with a Preferences GUI to set and save
GUI display preferences. However, in alternative embodiments, each
process level GUI can be provided with a preferences GUI. Thus, any
or all of the encoders can configure the appearance and any or all
of the options displayed in the encoder's specific GUI.
[0267] Advertising or logo(s) can optionally be displayed on any or
all of the GUIs. This advertising or logo can include animation,
sound, text, or graphics. Password protection is required to access
the encoder process and End-User GUIs in the preferred embodiment
of the present invention. However, in alternative embodiments, such
password protection can be optional at any or all process
levels.
[0268] While the preferred embodiment of the present invention is
described herein in reference to the use of two cameras, the
endzone and the sideline cameras, one skilled in the art will
readily appreciate that any number of cameras and camera angles can
be used. Furthermore, any number of cameras, video tracks or audio
tracks can be synchronized to the original video clips encoded
according to the teachings of the invention. For example, a sound
track can be synchronized with the video clips.
[0269] Additionally, there is no requirement that there be a
synchronized clip for any or all of the video clips processed
according to the invention. Thus, one or more video clips can be
indexed, sorted, and displayed without the existence of a second
synchronized clip. As an example, the teachings of the present
invention can be applied to a football game that is videotaped, at
least in part, by only one camera.
[0270] A zoom feature for any or all of the process levels. Thus,
for example, all of the encoders and the User can zoom in to
enlarge the video display of a clip, and zoom out to view a
wide-angle display.
[0271] Any or all of the GUIs of the present invention can be
provided with an expandable toolbar. Therefore, new tools and
features can be added to the GUIs. For example, search features
that permit the User to search for video clips according to turf,
weather, or day/night can be added to the appropriate User and
encoder GUIs.
[0272] The present invention is readily implemented using well
known hardware components. In addition, the software applications
required to implement the invention can be readily devised by one
of skill in the art using well-known programming techniques.
[0273] The preferred embodiment of the present invention is
implemented using the MPEG-2 format for the video clips. However,
any other appropriate video format may also be used. The MPEG-2
format can be supported by a hardware component such as a
hardware-based MPEG-2 decoder card. However, the invention can also
be readily implemented using software or firmware support for the
MPEG-2 format video.
[0274] Those of ordinary skill in the art will recognize that
variations which embody the spirit of the present invention are
possible and are intended to be included within the scope of the
amended claims.
* * * * *