The present invention relates to synchronization of video and data.
The amount of video content is expanding at an ever increasing rate, some of which includes sporting events. Simultaneously, the available time for viewers to consume or otherwise view all of the desirable video content is decreasing. With the increased amount of video content coupled with the decreasing time available to view the video content, it becomes increasingly problematic for viewers to view all of the potentially desirable content in its entirety. Accordingly, viewers are increasingly selective regarding the video content that they select to view. To accommodate viewer demands, techniques have been developed to provide a summarization of the video representative in some manner of the entire video. Video summarization likewise facilitates additional features including browsing, filtering, indexing, retrieval, etc. The typical purpose for creating a video summarization is to obtain a compact representation of the original video for subsequent viewing.
There are two major approaches to video summarization. The first approach for video summarization is key frame detection. Key frame detection includes mechanisms that process low level characteristics of the video, such as its color distribution, to determine those particular isolated frames that are most representative of particular portions of the video. For example, a key frame summarization of a video may contain only a few isolated key frames which potentially highlight the most important events in the video. Thus some limited information about the video can be inferred from the selection of key frames.
The second approach for video summarization is directed at detecting events that are important for the particular video content. Such techniques normally include a definition and model of anticipated events of particular importance for a particular type of content. The video summarization may consist of many video segments, each of which is a continuous portion in the original video, allowing some detailed information from the video to be viewed by the user in a time effective manner. Such techniques are especially suitable for the efficient consumption of the content of a video by browsing only its summary. Such approaches facilitate what is sometimes referred to as “semantic summaries”.
Sumo, the national sport of Japan, is tremendously popular in eastern Asia and is growing in popularity elsewhere in the world. Sumo is a sport comprising bouts in which two contestants meet in a circular ring 4.55 meters in diameter. The rules of Sumo are uncomplicated. After the contestants and a referee have entered the circular ring, the bout begins with an initial charge—called a “tachiai”—where each contestant rushes towards, then collides with, the other. The bout will end when one of the contestant loses by either stepping outside the circular ring or touching the ground with any part of the contestant's body other than the soles of the feet. Aside from a limited number of illegal moves, such as gouging the opponent's eyes, striking with a closed fist, or intentionally pulling at the opponent's hair, there are no rules that govern a sumo bout.
Sumo participants may compete against each another in one of a number of tournaments. Japan sponsors six sanctioned Grand Sumo tournaments, held in odd-numbered months throughout the year, in which competitive sumo contestants face one another with the opportunity for advancement in rank. Sumo contestants are ranked under a strict meritocracy; winning bouts in these sanctioned tournaments improves a competitor's rank while losing bouts diminishes that rank. Aside from the six sanctioned tournaments, a number of exhibition tournaments—called Jungyo—are scheduled throughout the year.
Though a sumo tournament will typically take place over several weeks with bouts scheduled throughout each day, most bouts of interest, i.e. those involving higher ranked contestants, are scheduled to begin late afternoon when live television broadcasts of the tournament occur. These portions of the sumo tournaments usually last 2-3 hours each day and are often video recorded for later distribution or for re-broadcast.
Though such a video of a sumo tournament might typically last about 2-3 hours, only about ten minutes turns out to include time during which two players are in a bout. An individual sumo bout is brief; the typical bout will end with the initial collision, though a rare bout might last two to three minutes. Interspersed between bouts are a large number of ceremonies that precede and follow each bout.
Though brief, the time intervals during which a bout is proceeding are intense and can captivate those in the viewing audience, many of whom are able to identify a myriad of named sumo techniques that may occur in rapid succession. Such techniques include a “kekaeshi” (a foot-sweep), a “kubinage” (a head-lock throw), and an “izori” (a technique where a contestant crouches below the opponent's rush, grabbing one of the opponent's legs, lifting the opponent upon the shoulders and falling backwards), as well as some sixty five to seventy more named sumo techniques or occurrences.
The remaining time during the sumo tournament is typically not exciting to watch on video. Such time would include for example inter-bout changes of players, pre-bout exercises and ceremonies, post-bout ceremonies and in the case of broadcast, nearly endless commercials. While it may indeed be entertaining to sit in an arena for several hours for a sumo tournament, many people who watch a video of a sumo tournament find it difficult to watch all of the tournament, even if they are rabid fans. Further, the tournaments are held during daytime hours, hence many fans are unable to attend a tournament or to watch a live broadcast due to work. Such fans may nonetheless be interested in watching specific bouts or some other condensed version of the tournament. Thus a video summarization of the sumo tournament that provides a summary of the tournament having a duration shorter than the original sumo video, may be appealing to many people. The video summarization should provide nearly the same level of the excitement (e.g. interest) that the original game provided.
A typical baseball game lasts about 3 hours of which only about one hour turns out to include time during which the ball is in action. The time during which the ball is in action is normally the exciting part of the game, such as for example, pitching the ball to the batter, hitting a home run, hitting the ball, running the bases, a pitch to first base, pitching a “foul” ball, pitching a “strike” ball, pitching a “ball”, fouling the ball to the bleachers, catching a pop fly, etc. The remaining time during the baseball game is typically not exciting to watch on video, such as for example, nearly endless commercials, the time during which the players change from batting to fielding, the time during which the players walk to the plate, the time during which the players walk around between innings, the time during which the manager talks to the pitcher, the time during which the umpire cleans home plate, the time during which the batter swings the bat in practice, the time during which the batter just waits for the pitcher, the time during which the spectators are viewed in the bleachers, the time during which the commentators talk, etc. While it may indeed be entertaining to sit in a stadium for three hours for a one hour baseball game, many people who watch a video of a baseball game find it difficult to watch all of the game, even if they are loyal fans. A video summarization of the baseball video, which provides a summary of the game having a duration shorter than the original baseball video, may be appealing to many people. The video summarization should provide nearly the same level of the excitement (e.g. interest) that the original game provided.
A typical football game lasts about 3 hours of which only about one hour turns out to include time during which the ball is in action. The time during which the ball is in action is normally the exciting part of the game, such as for example, a kickoff, a hike, a pass play, a running play, a punt return, a punt, a field goal, etc. The remaining time during the football game is typically not exciting to watch on video, such as for example, nearly endless commercials, the time during which the players change from offense to defense, the time during which the players walk onto the field, the time during which the players are in the huddle, the time during which the coach talks to the quarterback, the time during which the yardsticks are moved, the time during which the ball is moved to the spot, the time during which the spectators are viewed in the bleachers, the time during which the commentators talk, etc. While it may indeed be entertaining to sit in a stadium for three hours for a one hour football game, many people who watch a video of a football game find it difficult to watch all of the game, even if they are loyal fans. A video summarization of the football video, which provides a summary of the game having a duration shorter than the original football video, may be appealing to many people. The video summarization should provide nearly the same level of the excitement (e.g. interest) that the original game provided.
It may be observed that many different types of video content, including for example sporting events, include a game or activity that lasts a significant period of time of which only a relatively short duration of which turns out to include time during which interesting activity is occurring. The time during which interesting action is occurring is normally the exciting part of the game, such as for example, a kickoff, a hike, a pass play, a running play, a punt return, a punt, a field goal, etc. The remaining time during the video content is typically not exciting to watch on video, such as for example, nearly endless commercials, the time during which the players change from offense to defense, the time during which the players walk onto the field, the time during which the players are in the huddle, the time during which the coach talks to the quarterback, the time during which the yardsticks are moved, the time during which the ball is moved to the spot, the time during which the spectators are viewed in the bleachers, the time during which the commentators talk, inter-bout changes of players, pre-bout exercises and ceremonies, post-bout ceremonies, the time during which the players change from batting to fielding, the time during which the players walk to the plate, the time during which the players walk around between innings, the time during which the manager talks to the pitcher, the time during which the umpire cleans home plate, the time during which the batter swings the bat in practice, the time during which the batter just waits for the pitcher, the time during which the spectators are viewed in the bleachers, the time during which the commentators talk, etc. While it may indeed be entertaining to watch for several hours for a one hour activity, many people who watch a video of a sporting event find it difficult to watch all of the event, even if they are loyal fans. A video summarization of the video, such as sporting videos, which provides a summary of the event having a duration shorter than the original video, may be appealing to many people. The video summarization should provide nearly the same level of the excitement (e.g. interest) that the original game provided.
After consideration of the difficulty of developing highly sophisticated models of a video to analyze the content of the video, as the sole basis upon which to create a summarization, the present inventors determined that this technique is not the most preferred technique. In contrast to attempting to detect particular model sequences, the present inventors determined that the desirable segments in terms of understanding, following, or even appreciating the game is limited. These important portions occur semi-periodically and sparsely during the game, but they contain the moments of intense action and are the essence of a game. The remaining time is typically less important. Therefore preferably the events are selected based upon a “play”. A “play” may be defined as a sequence of events defined by the rules of the event. In particular, and in one aspect, the sequence of events of a “play” may generally include the time between which the players set up to start an activity and the time during which the activity is completed. A play may also selectively include certain pre-activity ceremonies or events. Normally the “play” should include a related series of activities that could potentially result in a victory by one contestant and a loss by the other contestant.
It is to be understood that the temporal bounds of a particular type of “play” does not necessarily start or end at a particular instance, but rather at a time generally coincident with the start and end of the play or otherwise based upon, at least in part, a time (e.g., event) based upon a play. A summarization of the video is created by including a plurality of video segments, where the summarization includes fewer frames than the original video from which the summarization was created. A summarization that includes a plurality of the plays of the event provides the viewer with a shorted video sequence while permitting the viewer to still enjoy the event because most of the exciting portions of the video are provided, preferably in the same temporally sequential manner as in the original video. In addition, it is to be understood that although summarization often achieves compression at the same time, it is different from video coding which aims at representing the original video with less data. In fact, summarization may be considered more concerned about the compact representation of the “content” in the video, whereas video coding is more concerned about representing the video signal itself as accurately and as bandwidth-efficient as possible. It is to be understood that any type of summarization technique, such as a resulting set of frames less than the original set of frames, may be used together with the data, described later.
Referring to
Referring to
One component of the summarization procedure depicted in
One of the difficulties in the detection of a “play” in a sporting broadcast is the detection of the events. However, the present inventors have come to the realization that for sporting broadcasts, and other broadcasts, the general video capturing and production patterns that have been adopted by virtually all of the broadcast companies permits the detection of the events. Hence, relatively low-level visual features may be used for event detection that are relatively invariant.
With the summarization being determined based upon low-level characteristics of the video, the system should detect an event (e.g., a play). In contrast to a generic summarization scheme which uses for example color histograms as the cue for key frame detection or scene classification, the different plays may contain colors which sweep a large range of color (in terms of histogram), yet all the frames belong to the same event, and may be used to form an uninterrupted video clip. Of course, generic summarization schemes may likewise be used.
The present inventors then considered how to detect a “play” from a baseball video in a robust, efficient, and computationally effective manner. After extensive analysis of a typical baseball game it was determined that a baseball game is usually captured by cameras positioned at fixed locations around the baseball field, with each camera typically capable of panning, tilting, and zooming. Each play in a baseball game normally starts with the pitcher releasing the ball, such as toward the catcher or toward one of the basemen. Further, a pitching scene, in which the pitcher is about to throw the ball, is usually captured from a camera location behind the pitcher. This camera angle is typically used because it is easier to observe the movements of all of the parties involved (the pitcher, the batter, the catcher, and the umpire) from this viewpoint. Thus a play typically starts with a frame such as shown in
While an attempt to determine a pitching scene may include complex computationally intensive analysis of the frame(s) to detect the pitcher, the batter, the catcher, and the umpire, together with appropriate motion, this generally results in a marginally robust pitching scene detection. To overcome this limitation the present inventors were dumbfounded to recognize that the lower portion of a typical pitching frame includes at least one region of generally green colors (grass or artificial turf), and at least one region of generally brown colors (e.g., soil). Normally the lower portion of a typical pitching frame for different fields includes these colors because the pitching mound and batting region are soil, with the region in between being grass or artificial turf. In addition, a typical pitching frame includes two regions of generally brown and/or two regions of generally green. A frame with one region of each color is sufficient.
Also, the present inventors observed that a typical pitching frame includes at least three regions of different colors arranged in alternating dominant horizontally oriented bands. Further, these three or more different color regions are typically generally green and generally brown in color. It is to be understood that the colors may be different depending on the particular anticipated colors, and that all the colors may be different. Depending on the camera angle the pitching scene may have the generally green color at the bottom of the frame or may have the generally brown color at the bottom of the frame. The colors preferably alternate between generally green (or brown) and generally brown (or green). There may be regions of other colors in addition to the generally green and generally brown. Accordingly, the preferred criteria is that the colors should be dominant along the horizontal axis while alternating in the vertical direction for a lower portion of the frame. In addition, the lower portion of the frame may be defined as the lower 75% of the frame, the lower 66% of the frame, the lower 50% of the frame, or the lower 30% of the frame, if desired. It is to be understood that the regions may be arranged in other patterns, as desired. Also, it is to be understood that the location of these regions within the frame may be arranged at other portions of the frame, such as the middle third of the frame, the upper third of the frame, the lower third of the frame, the right half of the frame, the left half of the frame, the central region of the frame, etc. An alternative characterization may be identification of at least three regions of sufficient spatial coherence and sufficient horizontal extent.
Referring to
Block 48 projects the green mask Gmsk onto the vertical axis, such as in the manner of a histogram. The green projection may be calculated as
The projection on the vertical axis Gproj(i) is suitable for identification of significant horizontal regions of the image that correlate to regions of the color image IM that are sufficiently green. Block 50 projects the brown mask Bmsk onto the vertical axis, such as in the manner of a histogram. The brown projection may be calculated as
The projection on the vertical axis Bproj(i) is suitable for identification of significant horizontal regions of the image that correlate to regions of the color image IM that are sufficiently brown. The projection technique is used to identify those regions of sufficient spatial coherence and sufficient horizontal extent. It is to be understood that other techniques may likewise be used.
Block 52 quantizes (e.g., binarizes) the green projection. The quantized green projection may be calculated as Gproj(i)=1 if Gproj(i)>p1 and Gproj(i)=0 otherwise, where p1 is a threshold value (static or dynamic). Block 54 quantizes (e.g. binarizes) the brown projection. The quantized brown projection may be calculated as Bproj(i)=1 if Bproj(i)>p1 and Bproj(i)=0 otherwise, where p1 is a threshold value. The green and brown projections, and especially the binarized green and brown projections, are especially suitable for determining whether the peaks in Gproj and Bproj satisfy the spatial constraints of a pitching scene in block 56. In other words, the desired pattern of generally brown and generally green regions is determined within the frame. If the spatial constraints are satisfied then the frame is considered a pitching frame. If the spatial constrains are not satisfied then the frame is not considered a pitching frame. After extensive testing it has been determined that scenes other than a pitching scene is not likely to have the same constraints, and accordingly such a constraint will be relatively accurate at detecting pitching scenes.
After further consideration, the present inventors determined that if a pitching scene and accordingly a play segment is identified after locating only one candidate frame, then the system may be susceptible to false positives. By examining a set of consecutive frames (or other temporally related frames) and accumulating evidence, the system can reduce the false positive rate. Referring to
To define the “generally green” color and the “generally brown” color any color space may be used. The preferred color space is the YUV color space because it may be used without excessive computational complexity. In the event that the input video is a MPEG stream, then the Y, U, V components are directly available after decoding, without further color space conversion. Also, a wide range of green and brown colors can be defined by the lower left quadrant and upper left quadrant of the U-V plane, respectively, as illustrated in
While the start of a “play” may be defined as a pitching scene the end of a play, according to the rules of baseball, can end in a variety of different ways. For example, the play can end with the batter missing the ball, the play can end with a home run, the play can end if the ball is fouled away, the play can end with the batter being thrown out at first base, the play can end with the batter being thrown out at second base, and the play can end with the batter being ejected from the game. Image analysis techniques may be used to analyze the image content of the frames after a pitching frame to attempt to determine what occurred. Unfortunately, with the nearly endless possibilities and the difficulty of interpreting the content of the frames, this technique is at least, extremely difficult and computationally intensive. In contrast to attempting to analyze the content of the subsequent frames of a potential play, the present inventors determined that a more efficient manner for the determination of the extent of a play in baseball is to base the end of the play on camera activities. After analysis of a baseball video the present inventors were surprised to determine that the approximate end of a play may be modeled by scene changes, normally as a result of switching to a different camera or a different camera angle. The different camera or different camera angle may be modeled by determining the amount of change between the current frame (or set of frames) to the next frame (or set of frames).
Referring to
As previously noted the scene cuts may be detected by thresholding the color histogram differences. The selection of the an appropriate threshold level to determine scene cuts may be based on a fixed threshold, if desired. The appropriate threshold level may be calculated for each baseball video, either after processing a segment of the video or otherwise dynamically while processing the video. One measure of the threshold level may be based upon the mean m and the standard deviation σ of the frame-to-frame color histogram differences from the whole video. The threshold can be calculated as m+cσ where c is a constant. It has been found that c=5 or 6 covers practically almost all the clean scene cuts. For robustness, after a clean cut has been detected at frame k, the system may further compute the color histogram difference between frame k−1 and k+1. This difference should be at least comparable to that between k−1 and k. Other comparisons may likewise be used to determine if the difference is a false positive. Otherwise the cut at k may be a false positive. This concept may be generalized to testing the color histogram difference between k-c and k+c, with c being a small positive integer (number of frames).
Even with the aforementioned technique there may be some false detections which do not correspond to a real play. Also, there are situations in which a play is broken into two segments due to for example, dramatic lighting fluctuations (mistaken by the system as a scene cut). Some of these problems can be remedied by post-processing. One example of a suitable post processing technique is if two plays are only separated by a sufficiently short time duration, such as less than a predetermined time period, then they should be connected as a single play. The time period between the two detected plays may be included within the total play, if desired. Even if the two detected plays are separated by a short time period and the system puts the two plays together, and they are in fact two separate plays, this results in an acceptable segment (or two plays) because it avoids frequent audio and visual disruptions in the summary, which may be objectionable to some viewers. Another example of a suitable post processing technique is that if a play has a sufficiently short duration, such as less than 3 seconds, then the system should remove it from being a play because it is likely a false positive. Also, post-processing may be applied to smoothen the connection between adjacent plays, for both video and audio.
Although most plays start with a pitching scene illustrated in
While very loose color definitions for the colors is permitted, it is possible to calibrate the colors for a specific game. Calibrated colors permits more accurate play detection for a particular video. The calibration may be performed by a human operator or by the system with the assistance of a human operator. The system may perform automatic calibration by using appropriate statistical techniques. A simple technique is as follows. If the system has obtained a set of pitching scene candidates, the system can estimate the color histograms for green and brown colors, respectively, from these candidates. Under the assumption that most of the candidates are true pitching scene frames, the system can detect statistical outliers in this set. The system then uses the remaining candidate frames to estimate the specifics of the colors. With the green and brown colors calibrated, the system can perform both the start-of-play detection and the end-of-play detection more accurately.
At times the pitcher is ready to pitch but the batter is sometimes not yet in position and it takes the batter considerable time to get into position. In this case, the resulting play and thus the summary will contain significant time during which the batter is getting ready. To further refine the start of the play, a batter position module may be used. The module detects whether there are multiple sufficient gaps in the highest green region, and preferably whether the gaps shift with time. The gaps are readily observable in the green mask. If more than two sufficient gaps exist or the gaps shift with time, then the batter is typically not ready. Otherwise the batter is ready.
It may be observed different sporting activities typically have different scenes that indicate the start of a “play”. However, if the scenes that indicate the start of a “play” are captured by a fixed camera angle, or otherwise a camera angle that provides an identifiable set of generally invariant characteristics of a scene, then the system may more readily identify the start of a play. It may likewise be observed that the end of the “play” may be characterized by a scene transition. In fact for a particular class of sporting events, the use of a fixed camera angle is normally done, since only one (or a few) camera angle(s) are suitable for capturing the action of all the parties involved. Moreover, professional video production normally includes a camera break (resulting in a scene transition) after an event has finished. It is to be understood, that the general techniques described herein may likewise be applied to other types of video content, including other sports and non-sports content.
There exists various sources of data, such as textual based data, that describes the content within a video, such as a video including sporting events. Typically a sports video vendor, such as ESPN, with knowledge of the sporting event will produce data streams (e.g., a file or otherwise containing descriptive data) of information that describe sports video. These data streams are sometimes provided together with the live sports video, albeit normally delayed a few seconds to minutes, or otherwise a data stream made available at a later time corresponding to a particular sports video. One particular type of data stream is provided under the trade name, SportsTicker. SportsTicker includes a defined data structure within which is included data related to the sports video as a whole. For example, the SportsTicker may indicate that the pitcher just threw a strike, the pitcher threw a ball, player statistics, and summary information of a period such as an inning.
Typically the sports video is presented to the viewer in a suitable fashion, such as presenting key frames, presenting portions as the result of event detection, and presenting portions as a result of “play” detection. Referring to
The present inventors considered the existing data streams and came to the realization that the data streams are not inherently suitable for automated association with different portions of the video stream because the data streams are created at different times for different purposes, namely one for viewing and one for informational purposes or otherwise for commentators. In addition, the resulting processed video stream has a different time base (start and end times of different segments) than the original video stream and the processed video stream as a different frequency (the start and end spacing between different segments) than the original video stream. Also, the data stream has a different time base and frequency than the original video stream because they are not synchronized in any manner, and further the data stream has an even further distant time base and frequency than the processed video stream. In addition, there are gaps in the sequence of potentially relevant events in the processed video stream as a result of the particular selection of events by a technician manually creating the summary. Likewise, there are gaps in the sequence of potentially relevant events in the data stream as a result of the party inputting the data selectively including data regarding events, leaving out events that are normally included, events that are simply not included within the data stream such as replays within SportsTicker data or an attempted steal not detected within the processed video stream. Moreover, there exists false detection or inclusion of additional events within the processed video stream and data stream which further complicate the correlation between the processed video stream and the data stream. If synchronization clues could be determined from the processed video and the data stream, the resulting synchronization clues are periodically in conflict and are not considered reliable. Accordingly, there is no 1-to-1 correlation between events of the data stream and the processed sports video. One or more of these considerations may be present depending on the particular data stream and video stream.
One potential solution to these nearly endless problems involves making the data stream dependant on the video stream or otherwise the video stream dependant on the data stream. This dependancy may be created by manually annotating the video stream (the annotations are dependent on the video stream), or otherwise manually segmenting the video stream by using an annotation list as a basis (the video segmentation becomes dependent on the annotations). Another potential solution is to use a summarized video stream and manually associate a set of independently generated annotations to some of these segments. In either case, it is a time consuming activity to create these associations. The manual association permits accurate and defined associations to be achieved, limited to the accuracy of the operator.
The present inventors considered the manual annotation to be an unacceptable solution to the aforementioned problems because of the time involved in its creation and the desirability of having the capability to quickly annotate video streams. Quick annotating of the video streams may be needed to re-broadcast the video stream or summarized video stream within minutes after the actual real-time event occurred. In addition, it is not cost effective to manually annotate a large amount of video content, especially under extreme time constraints. After extensive consideration the present inventors came to the realization that the video content includes information, added by the content provider in the video prior to being broadcast, that may be used as the basis of automatic synchronization of the video stream to the data stream. In particular, the present inventors came to the realization that optical character recognition of the scoreboard or otherwise the scoring information provided by the content provider prior to broadcasting the content may provide useful clues regarding the events occurring within the video broadcast or summary of the video broadcast. It is to be understood that references to free from manual association merely relates to an automated process for all or merely a portion of the synchronization process, for all or a portion of the video.
Referring to
Referring to
The filter module extracts potential synchronization points from processing of the video stream itself, such as the original video stream or the summarized video stream. The synchronization points may be obtained from, for example, the character recognition of the scoreboard. The scoreboard information provides insight into the potential type of plays that have occurred. For example, if the scoreboard of a previous segment or at the start of a segment indicates 2nd ball, 1st strike, 1st out and then changes to 3rd ball, 1st strike, 1st out, then the segment between is likely indicative of an activity that results in an additional ball, such as a hitting foul ball or a ball outside of the strike zone. As another example, if the scoreboard of a previous segment or at the start of a segment indicates 2nd ball, 2nd strike, 1st out, and then changes to 0 ball, 0 strike, 2nd inning, then the segment between is likely indicative of an activity that results in an additional strike, such as the batter swinging but missing the ball, the batter hitting a pop fly, the batter being thrown out at a base. As yet another example, if the scoreboard of a previous segment or at the start of a segment indicates 1st ball, 1st strike, 0 out and then changes to 0 ball, 0 strike, 2nd out, then the segment between is likely indicative of an activity that results in an additional “out” such as the batter hitting a pop fly, and the batter being thrown out at a base. Furthermore, the scoreboard may likewise indicate the changes of innings, whether the top or bottom of an inning, and the score. Also, the scoreboard may likewise indicate changes in the applicable properties that indicate multiple outs (double or triple play) or otherwise indicate a change that may be the result of multiple plays. In any event, the scoreboard may be used to further characterize the likely possibilities as a result of the different segments. The scoreboard data is of course different for different sports. It is to be understood that the data obtained from the filter module may provide indications of the likely type of content represented thereby, albeit not always with absolute confidence.
An assignment module may attribute a set of likely synchronization characteristics to portions of the video stream, such as for example, a video frame, a set of frames, or a segment for the summary based on information from the video pre-process module and/or the filter module.
A data pre-process module extracts potential synchronization points of the data stream, which may be one or more auxiliary data streams. The synchronization points may be obtained from, for example, processing the data stream to obtain data that may characterize a segment of the summary, a set of frames, or a video frame. The selected data provides insight into the potential type of plays that occurred. It is to be understood that the data obtained from the data pre-process module may provide indications of the likely type of content represented thereby, albeit not always with absolute confidence.
A synchronization module merges the data from the assignment module and the pre-process module, both of which indicate potential characteristics of the video, albeit not always with absolute confidence. Thereafter, a format module may transform the data to a more appropriate format, such as MPEG7, if desired. The resulting video stream may thereafter be enriched by the associated data stream. It is to be understood that the synchronization data may be related to a frame, a segment, a play, a collection of plays and/or frames or between plays or frames. Also, the synchronization data may vary with different sports and broadcast norms.
It became evident to the present inventors that the merging of video streams (summarized or non-summarized) and non-synchronized data streams using an automated technique is a plausible goal if synchronization information can be obtained from the video, such as by the summarization techniques and/or video analysis, and synchronization information can be obtained from the data stream. Further, synchronization of such disparate video streams and data streams may have been previously considered infeasible because it is difficult, if not impossible, to synchronize such streams with a 100 percent degree of confidence thus resulting in an inaccurate synchronization. However, the present inventors came to the realization that the merging of the video stream and data stream with 100 percent accuracy is not necessary because having the data stream generally synchronized to the appropriate portion of the video and/or video summary is sufficient for presentation purposes.
If the system is less than fully confident (e.g., non-deterministic) about a portion of the merged data, the system may still complete the merging of the data with the video.
First, if the system can associate a first portion of the data stream to a first portion of the video stream with a relatively high degree of confidence and can associate a second portion of the data stream to a second portion of the video stream with a relatively high degree of confidence, then all or a portion of the data between the first and second portions of the data stream may be associated with all or a portion of the video stream between the first and second portions of the video stream.
Second, if the system can associate a first portion of the data stream to a first portion of the video stream with a relatively high degree of confidence and can associate a second portion of the data stream to a second portion of the video stream with a relatively high degree of confidence, then the data between the first portion and the second portion of the data stream may be simply omitted.
Third, the system may associate a first portion of the data stream to a first portion of the video stream with a first degree of confidence, may associate a second portion of the data stream to a second portion of the video stream with a second degree of confidence, and may associate a third portion of the data stream to a third portion of the video stream with a third degree of confidence. Further, the level of confidence may be based upon, at least in part, the likelihood that the corresponding event in the video is within x number of plays or otherwise the proximity in the video. For example, the data may indicate a 70% probability that the data is within x number of plays or frames. Any system that denotes a likeliness of proximity may be used. In addition, if the user is presented with multiple pieces of data corresponding to the same segment of the video then the data with the highest likelihood may be differentiated (e.g., highlighted) in some manner with respect to the other data. This permits the viewer to be focused on the data that is most likely. The first, second, and third degrees of confidence may be the same, two different degrees of confidence, or three different degrees of confidence.
With respect to data streams the SportsTicker data stream is of particular interest. The SportsTicker includes a set of nested layers according to the SportsTicker specifications. The highest layer retrieves signal messages based on specific start/end delimiter sequences. The highest layer also extracts the KeyCode or SLUG information, which describes what type of message it is, such as ML for Major League Baseball and MLB36 for Major League Baseball Play by Play message. If the message is valid and recognized, then the message is parsed into one or more records. For each record the record type may be extracted and the relevant pieces of a single SportsTicker record are extracted. The number of records within a SportsTicker message may be different than the number of records extracted from the SportsTicker data stream. For example, a single SportsTicker message corresponding to a running movement may be decomposed into a plurality of different records within the system.
By way of example, the parsed messages and records may be assembled with one or more of the following data fields:
By way of example, SportsTicker data feed may provide the following, as illustrated in Appendix A. The boxes indicate characters that are not displayable.
Referring to
In the case of baseball, there exist other additional primary and/or derived synchronization cues. For example, based on the analysis of the SportsTicker data, the system may also identify groups of SportsTicker plays that have an increased probability of being associated with the same detected play. The following specifications from SportsTicker are hereby incorporated by reference as if the entire text was included herein: NBA/WNBA Play-by-Play & Stats Data Feed; Major League Baseball Stats Data Feed; Major League Baseball Pitch-by-Pitch Data Feed; College Football C-Records; College Football Quarterly Play-by-Play; College Football Quarterly Boxscore CSV; College Football Quarterly Boxscore CSV; NFL In-Progress Data Feed; NFL Statistical Data Feed; NFL Quarterly Boxscore CSV; College Football Statistical Data Feed; NHL In-Progress Play-by-Play Data Feed; College Football In-Progress Data Feed; and Wire Specifications.
The video pre-process module outputs may be parsed to obtain meaningful synchronization points. In the following, using baseball as an example, the play detections results may be pre-processed to generate synchronization information. The result of the summarization process may provide data indicating the starting frame and the ending frame for each segment, together with the number of scene cuts detected for each detected play, where n indicates the number of scene cuts. Generally, where n is greater than one, the pitched ball was hit so there is field activity and the camera angle changes to a field shot. The result of the summarization process may also provide data indicative of one or more types of plays. For example, the plays may include a regular pitch play or a base steal. For example, n=2 may indicate a pitcher raises his arm to throw the ball (first portion), scene cut, throws the ball (second portion), scene cut, and batter hits the ball (third portion).
The scoreboard optical character recognition may associate the corresponding frame or segment within which the scoreboard was detected using the caption detection module. Each scoreboard entry may contain, for example, Inning ε {1-9,?}; Top/Bot ε {0,1,?}; OutCount ε {0-3,?}; BallCount ε {0-4,?}; StrikeCount ε {0-3,?}, where a ‘?’ indicates the entry is not determined. The output generated by the caption detection module may include the following data fields:
By way of example, baseball play synchronization information may include the following.
Traditionally scoreboard based optical character recognition would be considered a difficult task because of the limited number of pixels in a video broadcast corresponding to the letters. Accordingly, it may be difficult to distinguish between a “1” and a “7” when only a limited number of pixels are used. However, it turns out that for most sporting broadcasts the scoreboard remains generally unchanged, even among the different sporting events such as baseball and football. In fact, the broadcast networks generally keep their scoreboard in a fixed location with the same style of presentation in order not to confuse the viewer. Therefore the video scoreboard in such cases is more suitable to optical character recognition than what would be generally considered feasible. If desired, the optical character recognition technique may make the assumption that, for a given channel, the locations of the scoreboard is known and that the locations of the game score, the team names, the out count, etc. are likewise generally known. Based upon these assumptions a template-matching-based optical character recognition approach may be used to extract the scoreboard information from the video. For example, in baseball the system may extract counts of inning, out, ball, strike, and top or bottom of an inning. Games scores and current bases occupied can also be extracted using a similar approach. For football, the system may extract quarter numbers and the game clock, which are useful for synchronization.
Unfortunately, the scoreboard data obtained on a frame-by-frame basis may contain errors. In such a case, sport-specific knowledge may be utilized to filter the row optical character recognition data in order to obtain more accurate results. For example, in baseball, generally, if the out count reliably changes (goes up during a sub-inning, or is reset at the end of a sub-inning), then the system can determine that the ball-strike count should be reset. Otherwise, the ball-strike count should increase. So if the system determines the ball-strike count going down without an out count change, then the system may presume that a new (lower) value is incorrect, or the previous (higher) value is incorrect (e.g. the ball count is 333313333 or 11113111 respectively). Also, inning changes should be accompanied by the changes of the top and bottom of the inning. In the case of football, the game clock within each quarter should always go down.
To fix isolated errors in a given field (e.g. the out count), one technique is to low pass filter that field (e.g., a temporal low pass filter). If the system makes the cutoff sufficiently low (e.g. less than one second), then the system can be reasonably sure to not to filter out a quick intermediate value. During filtering, the system is interested in bounding the scoreboard range for any time point during the game. This has the practical benefit that it is easier to determine the lower and upper bounds than to decide the single scoreboard value. Although the system can do filtering on the scoreboard data after the recognition process is finished, it is also possible to incorporate the game specific knowledge into the character recognition process. For example, if the optical character recognition module determines the out value for the current video frame is 1, then it should expect the value to be most likely either 1 or 2 (but much less likely 0) in the subsequent frame.
After the scoreboard is processed and analyzed, if desired, the system may augment each detected play (or frame or set of frames) with a numerical set of tags that identifies the status of the game at each play. In most cases, this scoreboard status is unique for each play in the game. In perfect scoreboard processing conditions, this sequence of scoreboard statuses might be sufficient to facilitate the entire synchronization process, without considering other cues.
For baseball, scoreboard data may, for example, provide the following:
The scoreboard data may be a stream of time-stamped events corresponding to the video from which it originated. It turns out that the timebase for the scoreboard data is the same as the timebase for the video pre-process module (play detection technique), so the two streams may be compared more readily. Because of the difficulty in determining the exact point within a play that causes a scoreboard event, and because the latency for entering the scoreboard event typically varies over a non-negative time range, the system preferably uses the scoreboard data to bound an individual play's associated scoreboard state. The associated scoreboard state may be a single discrete point, or it may be a range.
When the scoreboard cues are associated with the data stream associated with the video analysis provider (e.g., detected play data stream), the single scoreboard state or range of scoreboard states may be more accurately determined. These determinations of the scoreboard states are preferably evaluated in a deliberately broad fashion, resulting in looser, wider ranges being assigned, rather than tight single state assignments. The wider ranges reduces the resolution of this state information for some plays. This reduced resolution makes the comparison with the SportsTicker state information to be less definitive because there may not be a one to one correspondence. However, this is desirable because a comparison test can be performed between the SportsTicker state and the data from the video analysis provider (e.g, detected plays state), and the result may then be applied during the transition evaluation. The alternative (using narrow, single state assignments) may require that the dynamic programming technique examine the adjacent scoreboard states and then apply rules to determine the probability of various matches.
Referring to
Key:
First Scenario:
Second Scenario:
Third Scenario:
Referring to
Fourth Scenario:
Fifth Scenario:
Sixth Scenario:
Seventh Scenario:
The different sources of synchronization data sources may be merged into single set of synchronization data, having some degree of confidence. The preferred technique to merge the data involves using dynamic programming to search for an optimal path. In dynamic programming the axes of the graph are the sequences of sync cues from the various input data sources. The technique may be generalized to handle combining any two sources of data that comply with any one or more of the inputs previously described. The decision rules for the dynamic programming operation are embodied in the transition matrix. This matrix defines the transitions that are permitted from any node in the graph. The transition probability is a function of the transition arc (e.g. (1,1) corresponds to a diagonal arc), and the sync types for the events (SportsTicker and Detected Plays) associated with the destination of the transition. The preferred dynamic programming technique is described below. The output of the synchronization module provides a list of detected plays, augmented with SportsTicker data. Each line is a single play containing the following data fields:
The Dynamic Programming grid may be arranged with synchronization cues from the SportsTicker on the X-axis and the Detected Play synchronization cues on the Y-axis. The X/Y grid is evaluated for a set of transitions to determine a suitable merge of the data.
The transitions may be defined in increasing degrees of detail. At each additional level of detail, a subset of the specific transitions may be more specifically defined than they were in the previous generalized level. In this way, the system may ascend through the detail levels to find the highest (most specific) definition for the current transition. The lowest level (most general) should cover more cases.
Each transition preferably has a probability factor (e.g., 0 to 1). When traveling across the grid, a particular path of transitions is evaluated by taking the product of all the individual transition probabilities. Transitions that should never happen may be given probability 0.0. For simplicity, all the transition probabilities out of a start node may be normalized with respect to the largest transition probability.
Referring to
An exemplary list of transitions are described below.
1,1 Diagonal:
1,0 Slide horizontal:
0,1 Slide vertical:
2,0; 3,0; . . . . Skip & Slide horizontal:
0,2; 0,3; . . . . Skip & Slide vertical:
2,1; 3,1; . . . . Skip horizontal:
1,2; 1,3; . . . . Skip vertical:
2+,2+, . . . . Skip horizontal and vertical:
The probability of a particular transition may be further described by the pair of sync cues referenced at the end node. In the case of baseball such sync cues may be, for example, as follows:
Key:
Description of pairs composed of SportsTicker, DetectedPlay cue types may include, for example, the following:
Probability: low to medium.
The scoreboard cue information may be available as auxiliary data in the dynamic programming sequences. After evaluating the transition probabilities and scores for each transition, the scoreboard cue information may be compared and the result may be used to further qualify the transition.
For a baseball prototype, there are four exemplary cases:
In Range
“Pitch Count” Out of Range
“Out Count” Out of Range
“Inning Count” Out of Range
The transition matrix inputs may be described, as follows. Referring to
The present inventors came to the conclusion that once rich metadata is synchronized with the video using a suitable technique (automated or manual), it may be used in adapting the video content to channel conditions, device resources, usage conditions, and user preferences. There is an increasing need for such adaptation of content as access to the same content with various different devices, such as cellular phones and personal digital assistants with varying power, processor, and memory capacity, over various wired and wireless networks with different transmission speeds are becoming a reality with the emergence of new wireless communication technologies such as wireless LAN, WAN and next generation cellular networks. Given this complex and dynamic usage environment and the desire to provide the best possible quality of content to users at all times, there is a need for adapting the content accordingly.
The information in the synchronized metadata provides information for enabling smart adaptation of the content so that users receive information that fits best to their usage conditions and their preferences, thus maintaining the best possible quality of content information under changing conditions. In other words, the metadata, once in synchronization with the audiovisual content, provide the hints for how content should be adapted. Content adaptation may be implemented by allocating unequal number of bits, where segments whose contents are less in importance are allocated relatively less number of bits, by employing unequal error protection in error prone channels, by strongly protecting high priority segments, by selective retransmission of only important segments in case of data loss, by transmitter power control (i.e., responding to power restrictions of the transmitting device at any given time), or by dropping segments of less importance by summarizing the video by its important segments only. For example, in transmitting a baseball broadcast video, play segments are of higher priority than non-play segments. On the other hand, the rich metadata provides even finer granularity and control for adaptation. Among the play segments, for example, home runs are highest in priority. The content adaptation process can also utilize known preferences of a particular user, for example by giving higher priority for the plays involving a particular pitcher. Such smart adaptation of content is made possible by using the information provided by the metadata synchronized with the important segments of the audiovisual content using the methods of this invention.
Referring to
In another embodiment, the system permits the viewing of a previously viewed segment of the video, such as by rewinding or otherwise selecting a previous segment in some manner. In the event of viewing a previously viewed segment the corresponding data is likewise presented to the viewer, which was typically previously presented to the viewer when originally viewing the previously viewed segment.
In another embodiment, the system may include a selector (or otherwise selectable) that permits the viewer to modify the associated data that is presented together with the segments. For example, during a particular segment the amount of presented data may be modified. Some viewers may desire a complete or otherwise a significant amount of data to be presented, while other viewers may desire less data to be presented.
In another embodiment, the system may include modification of the amount of data presented to the viewer based, at least in part, upon the duration of the associated segment. For example, a relatively limited amount of data may be presented together with a short segment whereas a relatively large amount of data may be presented together with a long segment, even if the amount of data associated with both the short segment and long segment is the same.
In another embodiment, the system may modify the speed at which the data is presented to the viewer based, at least in part, upon the duration of the associated segment and/or the amount of data. For example, a relatively limited amount of data may be presented at a slower speed for a given segment duration whereas a relatively large amount of data may be presented at a faster rate for the given segment duration. The presentation speed, may be for example, the scrolling speed of the display or otherwise the duration that a message is displayed.
In another embodiment, the system may selectively select the data that is presented to the viewer based upon a profile of the viewer. For example, a user profile that indicates that the viewer is a statistics fanatic may result in the presentation of statistics that would not have otherwise been presented.
In another embodiment, the system or the viewer may select the number of lines of data that is presented and accordingly scrolled with the presentation of the video. For example, if the viewer reads slowly more lines may be suitable. In addition, if a significant number of lines are selected then the viewer may pay closer attention to the video while still being able to periodically read desirable associated data.
In another embodiment, the present inventors came to the conclusion that once rich metadata is synchronized with video and used to form an enriched video description, this rich metadata can be used in indexing the video as it is stored in a database. Users can then place queries for specific play events and retrieve from the database corresponding video and video segments containing the desired events.
Referring to
All references cited or referenced herein are hereby incorporated by reference.
The terms and expressions which have been employed in the foregoing specification are used therein as terms of description and not of limitation, and there is no intention, in the use of such terms and expressions, of excluding equivalents of the features shown and described or portions thereof, it being recognized that the scope of the invention is defined and limited only by the claims which follow.
This application is a division of U.S. patent application Ser. No. 10/155,269, filed May 22, 2002, which application claims the benefit of Provisional App. No. 60/365,915, filed Mar. 19, 2002.
Number | Name | Date | Kind |
---|---|---|---|
4183056 | Evans et al. | Jan 1980 | A |
4253108 | Engel | Feb 1981 | A |
4298884 | Reneau | Nov 1981 | A |
4321635 | Tsuyuguchi | Mar 1982 | A |
4324402 | Klose | Apr 1982 | A |
4520404 | Von Kohorn | May 1985 | A |
4729044 | Kiesel | Mar 1988 | A |
4937685 | Barker et al. | Jun 1990 | A |
5012334 | Etra | Apr 1991 | A |
5027400 | Baji et al. | Jun 1991 | A |
5101364 | Davenport et al. | Mar 1992 | A |
5109482 | Bohrman | Apr 1992 | A |
5148154 | MacKay et al. | Sep 1992 | A |
5200825 | Perine | Apr 1993 | A |
5222924 | Shin et al. | Jun 1993 | A |
5223924 | Strubbe | Jun 1993 | A |
5241671 | Reed et al. | Aug 1993 | A |
5270922 | Higgins | Dec 1993 | A |
5288069 | Matsumoto | Feb 1994 | A |
D348251 | Hendricks | Jun 1994 | S |
5333091 | Iggulden et al. | Jul 1994 | A |
5339393 | Duffy et al. | Aug 1994 | A |
D354059 | Hendricks | Jan 1995 | S |
5381477 | Beyers, II et al. | Jan 1995 | A |
5404316 | Klingler et al. | Apr 1995 | A |
5410344 | Graves et al. | Apr 1995 | A |
5424770 | Schmelzer et al. | Jun 1995 | A |
5434678 | Abecassis | Jul 1995 | A |
5444499 | Saitoh | Aug 1995 | A |
5452016 | Ohara et al. | Sep 1995 | A |
5459830 | Ohba et al. | Oct 1995 | A |
5483278 | Strubbe et al. | Jan 1996 | A |
D368263 | Hendricks | Mar 1996 | S |
5521841 | Arman et al. | May 1996 | A |
5550965 | Gabbe et al. | Aug 1996 | A |
5559549 | Hendricks et al. | Sep 1996 | A |
5589945 | Abecassis | Dec 1996 | A |
5600364 | Hendricks et al. | Feb 1997 | A |
5600573 | Hendricks et al. | Feb 1997 | A |
5600781 | Root et al. | Feb 1997 | A |
5610653 | Abecassis | Mar 1997 | A |
5634849 | Abecassis | Jun 1997 | A |
5635982 | Zhang et al. | Jun 1997 | A |
5635989 | Rothmuller | Jun 1997 | A |
D381991 | Hendricks | Aug 1997 | S |
5654769 | Ohara et al. | Aug 1997 | A |
5659350 | Hendricks et al. | Aug 1997 | A |
5664046 | Abecassis | Sep 1997 | A |
5664227 | Mauldin et al. | Sep 1997 | A |
5675752 | Scott et al. | Oct 1997 | A |
5682195 | Hendricks et al. | Oct 1997 | A |
5682460 | Hyziak et al. | Oct 1997 | A |
5684918 | Abecassis | Nov 1997 | A |
5694163 | Harrison | Dec 1997 | A |
5696869 | Abecassis | Dec 1997 | A |
5696965 | Dedrick | Dec 1997 | A |
5710884 | Dedrick | Jan 1998 | A |
5717814 | Abecassis | Feb 1998 | A |
5717879 | Moran et al. | Feb 1998 | A |
5717923 | Dedrick | Feb 1998 | A |
5724472 | Abecassis | Mar 1998 | A |
5727129 | Barrett et al. | Mar 1998 | A |
5732216 | Logan et al. | Mar 1998 | A |
5734853 | Hendricks et al. | Mar 1998 | A |
5751953 | Shiels et al. | May 1998 | A |
5758257 | Herz et al. | May 1998 | A |
5758259 | Lawler | May 1998 | A |
5761881 | Wall | Jun 1998 | A |
5764916 | Busey et al. | Jun 1998 | A |
5774357 | Hoffberg et al. | Jun 1998 | A |
5774666 | Portuesi | Jun 1998 | A |
5778108 | Coleman, Jr. | Jul 1998 | A |
5781188 | Amiot et al. | Jul 1998 | A |
5794210 | Goldhaber et al. | Aug 1998 | A |
5797001 | Augenbraun et al. | Aug 1998 | A |
5798785 | Hendricks et al. | Aug 1998 | A |
5805733 | Wang et al. | Sep 1998 | A |
5809426 | Radojevic et al. | Sep 1998 | A |
5821945 | Yeo et al. | Oct 1998 | A |
5822537 | Katseff et al. | Oct 1998 | A |
5828809 | Chang et al. | Oct 1998 | A |
5828839 | Moncreiff | Oct 1998 | A |
5835087 | Herz et al. | Nov 1998 | A |
D402310 | Hendricks | Dec 1998 | S |
5848396 | Gerace | Dec 1998 | A |
5857190 | Brown | Jan 1999 | A |
5861881 | Freeman et al. | Jan 1999 | A |
5867226 | Wehmeyer et al. | Feb 1999 | A |
5867386 | Hoffberg et al. | Feb 1999 | A |
5875107 | Nagai et al. | Feb 1999 | A |
5875108 | Hoffberg et al. | Feb 1999 | A |
5877821 | Newlin et al. | Mar 1999 | A |
5878222 | Harrison | Mar 1999 | A |
5892536 | Logan et al. | Apr 1999 | A |
5900867 | Schindler et al. | May 1999 | A |
5901246 | Hoffberg et al. | May 1999 | A |
5903454 | Hoffberg et al. | May 1999 | A |
5907324 | Larson et al. | May 1999 | A |
5913013 | Abecassis | Jun 1999 | A |
5913030 | Lotspiech et al. | Jun 1999 | A |
5920300 | Yamazaki et al. | Jul 1999 | A |
5920360 | Coleman, Jr. | Jul 1999 | A |
5920477 | Hoffberg et al. | Jul 1999 | A |
5923365 | Tamir et al. | Jul 1999 | A |
5926624 | Katz et al. | Jul 1999 | A |
5945988 | Williams et al. | Aug 1999 | A |
5956026 | Ratakonda | Sep 1999 | A |
5956037 | Osawa et al. | Sep 1999 | A |
5958006 | Eggleston et al. | Sep 1999 | A |
5959681 | Cho | Sep 1999 | A |
5959697 | Coleman, Jr. | Sep 1999 | A |
5969755 | Courtney | Oct 1999 | A |
5973683 | Cragun et al. | Oct 1999 | A |
5977964 | Williams et al. | Nov 1999 | A |
5986690 | Hendricks | Nov 1999 | A |
5986692 | Logan et al. | Nov 1999 | A |
5987211 | Abecassis | Nov 1999 | A |
5990927 | Hendricks et al. | Nov 1999 | A |
5990980 | Golin | Nov 1999 | A |
5995094 | Eggen et al. | Nov 1999 | A |
5995095 | Ratakonda | Nov 1999 | A |
6002833 | Abecassis | Dec 1999 | A |
6005565 | Legall et al. | Dec 1999 | A |
6005597 | Barrett et al. | Dec 1999 | A |
6006265 | Rangan et al. | Dec 1999 | A |
6011895 | Abecassis | Jan 2000 | A |
6014183 | Hoang | Jan 2000 | A |
6020883 | Herz et al. | Feb 2000 | A |
6021419 | Clarke et al. | Feb 2000 | A |
6029195 | Herz | Feb 2000 | A |
6038367 | Abecassis | Mar 2000 | A |
6041323 | Kubota | Mar 2000 | A |
6049821 | Theriault et al. | Apr 2000 | A |
6052554 | Hendricks et al. | Apr 2000 | A |
6055018 | Swan | Apr 2000 | A |
6055569 | O'Brien et al. | Apr 2000 | A |
6060167 | Morgan et al. | May 2000 | A |
6064385 | Sturgeon et al. | May 2000 | A |
6064449 | White et al. | May 2000 | A |
6067401 | Abecassis | May 2000 | A |
6070167 | Qian et al. | May 2000 | A |
6072934 | Abecassis | Jun 2000 | A |
6076166 | Moshfeghi et al. | Jun 2000 | A |
6078917 | Paulsen, Jr. et al. | Jun 2000 | A |
6078928 | Schnase et al. | Jun 2000 | A |
6081278 | Chen | Jun 2000 | A |
6081750 | Hoffberg et al. | Jun 2000 | A |
6088455 | Logan et al. | Jul 2000 | A |
6088722 | Herz et al. | Jul 2000 | A |
6091886 | Abecassis | Jul 2000 | A |
RE36801 | Logan et al. | Aug 2000 | E |
6100941 | Dimitrova et al. | Aug 2000 | A |
6115709 | Gilmour et al. | Sep 2000 | A |
6122657 | Hoffman, Jr. et al. | Sep 2000 | A |
6128624 | Papierniak et al. | Oct 2000 | A |
6133909 | Schein et al. | Oct 2000 | A |
6137486 | Yoshida et al. | Oct 2000 | A |
6141041 | Carlbom et al. | Oct 2000 | A |
6141060 | Honey et al. | Oct 2000 | A |
6144375 | Jain et al. | Nov 2000 | A |
6151444 | Abecassis | Nov 2000 | A |
D435561 | Pettigrew et al. | Dec 2000 | S |
6157377 | Shah-Nazaroff et al. | Dec 2000 | A |
6160989 | Hendricks et al. | Dec 2000 | A |
6161142 | Wolfe et al. | Dec 2000 | A |
6163316 | Killian | Dec 2000 | A |
6163779 | Mantha et al. | Dec 2000 | A |
6169542 | Hooks et al. | Jan 2001 | B1 |
6177931 | Alexander et al. | Jan 2001 | B1 |
6181335 | Hendricks et al. | Jan 2001 | B1 |
6185625 | Tso et al. | Feb 2001 | B1 |
6195497 | Nagasaka et al. | Feb 2001 | B1 |
6198767 | Greenfield et al. | Mar 2001 | B1 |
6199076 | Logan et al. | Mar 2001 | B1 |
6201536 | Hendricks et al. | Mar 2001 | B1 |
6208805 | Abecassis | Mar 2001 | B1 |
6212527 | Gustman | Apr 2001 | B1 |
6215526 | Barton et al. | Apr 2001 | B1 |
6216129 | Eldering | Apr 2001 | B1 |
6219837 | Yeo et al. | Apr 2001 | B1 |
6226678 | Mattaway et al. | May 2001 | B1 |
6230172 | Purnaveja et al. | May 2001 | B1 |
6230501 | Bailey, Sr. et al. | May 2001 | B1 |
6233289 | Fredrickson | May 2001 | B1 |
6233389 | Barton et al. | May 2001 | B1 |
6233586 | Chang et al. | May 2001 | B1 |
6233590 | Shaw et al. | May 2001 | B1 |
6236395 | Sezan et al. | May 2001 | B1 |
6240406 | Tannen | May 2001 | B1 |
6252444 | Lee | Jun 2001 | B1 |
6252544 | Hoffberg | Jun 2001 | B1 |
6253203 | O'Flaherty et al. | Jun 2001 | B1 |
6269216 | Abecassis | Jul 2001 | B1 |
6275268 | Ellis et al. | Aug 2001 | B1 |
6286140 | Ivanyi | Sep 2001 | B1 |
6286141 | Browne et al. | Sep 2001 | B1 |
6289165 | Abecassis | Sep 2001 | B1 |
6298482 | Seidman et al. | Oct 2001 | B1 |
6304665 | Cavallaro et al. | Oct 2001 | B1 |
6304715 | Abecassis | Oct 2001 | B1 |
6311189 | DeVries et al. | Oct 2001 | B1 |
6317718 | Fano | Nov 2001 | B1 |
6317881 | Shah-Nazaroff et al. | Nov 2001 | B1 |
6320624 | Ayer et al. | Nov 2001 | B1 |
6324338 | Wood et al. | Nov 2001 | B1 |
6339842 | Fernandez et al. | Jan 2002 | B1 |
6342904 | Vasudevan et al. | Jan 2002 | B1 |
6353444 | Katta et al. | Mar 2002 | B1 |
6363160 | Bradski et al. | Mar 2002 | B1 |
6363380 | Dimitrova | Mar 2002 | B1 |
6370504 | Zick et al. | Apr 2002 | B1 |
6370688 | Hejna, Jr. | Apr 2002 | B1 |
6374404 | Brotz et al. | Apr 2002 | B1 |
6405371 | Oosterhout et al. | Jun 2002 | B1 |
6412008 | Fields et al. | Jun 2002 | B1 |
6418168 | Narita | Jul 2002 | B1 |
6421680 | Kumhyr et al. | Jul 2002 | B1 |
6425133 | Leary | Jul 2002 | B1 |
6426761 | Kanevsky et al. | Jul 2002 | B1 |
6426974 | Takahashi et al. | Jul 2002 | B2 |
6438579 | Hosken | Aug 2002 | B1 |
6439572 | Bowen | Aug 2002 | B1 |
6446261 | Rosser | Sep 2002 | B1 |
6470378 | Tracton et al. | Oct 2002 | B1 |
6480667 | O'Connor | Nov 2002 | B1 |
6487390 | Virine et al. | Nov 2002 | B1 |
6490320 | Vetro et al. | Dec 2002 | B1 |
6498783 | Lin | Dec 2002 | B1 |
6522342 | Gagnon et al. | Feb 2003 | B1 |
6530082 | Del Sesto et al. | Mar 2003 | B1 |
6535639 | Uchihachi et al. | Mar 2003 | B1 |
6542546 | Vetro et al. | Apr 2003 | B1 |
6543053 | Li et al. | Apr 2003 | B1 |
6546555 | Hjelsvold et al. | Apr 2003 | B1 |
6549643 | Toklu et al. | Apr 2003 | B1 |
6553178 | Abecassis | Apr 2003 | B2 |
6556767 | Okayama et al. | Apr 2003 | B2 |
6571279 | Herz et al. | May 2003 | B1 |
6578075 | Nieminen et al. | Jun 2003 | B1 |
6581207 | Sumita et al. | Jun 2003 | B1 |
6587127 | Leeke et al. | Jul 2003 | B1 |
6593936 | Huang et al. | Jul 2003 | B1 |
6594699 | Sahai et al. | Jul 2003 | B1 |
6597859 | Leinhart et al. | Jul 2003 | B1 |
6611876 | Barrett et al. | Aug 2003 | B1 |
6614987 | Ismail et al. | Sep 2003 | B1 |
6621895 | Giese | Sep 2003 | B1 |
6628302 | White et al. | Sep 2003 | B2 |
6637032 | Feinleib | Oct 2003 | B1 |
6658095 | Yoakum et al. | Dec 2003 | B1 |
6665423 | Mehrotra et al. | Dec 2003 | B1 |
6675158 | Rising et al. | Jan 2004 | B1 |
6678635 | Tovinkere et al. | Jan 2004 | B2 |
6678659 | Van Kommer | Jan 2004 | B1 |
6681395 | Nishi | Jan 2004 | B1 |
6691126 | Syeda-Mahmood | Feb 2004 | B1 |
6697523 | Divakaran et al. | Feb 2004 | B1 |
6704929 | Ozer et al. | Mar 2004 | B1 |
6724933 | Lin et al. | Apr 2004 | B1 |
6741655 | Chang et al. | May 2004 | B1 |
6754904 | Cooper et al. | Jun 2004 | B1 |
6754906 | Finseth et al. | Jun 2004 | B1 |
6763522 | Kondo et al. | Jul 2004 | B1 |
6766362 | Miyasaka et al. | Jul 2004 | B1 |
6774917 | Foote et al. | Aug 2004 | B1 |
6810200 | Aoyama et al. | Oct 2004 | B1 |
6813775 | Finseth et al. | Nov 2004 | B1 |
6820278 | Ellis | Nov 2004 | B1 |
6829781 | Bhagavath et al. | Dec 2004 | B1 |
6868440 | Gupta et al. | Mar 2005 | B1 |
6880171 | Ahmad et al. | Apr 2005 | B1 |
6898762 | Ellis et al. | May 2005 | B2 |
6925455 | Gong et al. | Aug 2005 | B2 |
6931595 | Pan et al. | Aug 2005 | B2 |
6934964 | Schaffer et al. | Aug 2005 | B1 |
6961954 | Maybury et al. | Nov 2005 | B1 |
6970510 | Wee et al. | Nov 2005 | B1 |
6971105 | Weber et al. | Nov 2005 | B1 |
6981129 | Boggs et al. | Dec 2005 | B1 |
6983478 | Grauch, et al. | Jan 2006 | B1 |
6990679 | Curreri | Jan 2006 | B2 |
6993245 | Harville | Jan 2006 | B1 |
7003792 | Yuen | Feb 2006 | B1 |
7026964 | Baldwin et al. | Apr 2006 | B2 |
7055168 | Errico et al. | May 2006 | B1 |
7065709 | Ellis et al. | Jun 2006 | B2 |
7096486 | Ukai et al. | Aug 2006 | B1 |
7127735 | Lee et al. | Oct 2006 | B1 |
7130866 | Schaffer | Oct 2006 | B2 |
7136710 | Hoffberg et al. | Nov 2006 | B1 |
7146626 | Arsenault et al. | Dec 2006 | B1 |
7150030 | Eldering et al. | Dec 2006 | B1 |
7155510 | Kaplan | Dec 2006 | B1 |
7185355 | Ellis et al. | Feb 2007 | B1 |
7199798 | Echigo et al. | Apr 2007 | B1 |
7249366 | Flavin | Jul 2007 | B1 |
7296285 | Jun et al. | Nov 2007 | B1 |
7343381 | Shin | Mar 2008 | B2 |
7380262 | Wang et al. | May 2008 | B2 |
7454775 | Schaffer, et al. | Nov 2008 | B1 |
20010030664 | Shulman et al. | Oct 2001 | A1 |
20010043744 | Hieda | Nov 2001 | A1 |
20020010618 | Pellegrinelli et al. | Jan 2002 | A1 |
20020013943 | Haberman et al. | Jan 2002 | A1 |
20020018594 | Xu et al. | Feb 2002 | A1 |
20020026345 | Juels | Feb 2002 | A1 |
20020059594 | Rasmussen et al. | May 2002 | A1 |
20020069218 | Sull et al. | Jun 2002 | A1 |
20020079165 | Wolfe | Jun 2002 | A1 |
20020080162 | Pan et al. | Jun 2002 | A1 |
20020083473 | Agnihotri et al. | Jun 2002 | A1 |
20020087967 | Conkwright et al. | Jul 2002 | A1 |
20020088009 | Dukiewicz et al. | Jul 2002 | A1 |
20020093591 | Gong et al. | Jul 2002 | A1 |
20020097165 | Hulme | Jul 2002 | A1 |
20020104087 | Schaffer et al. | Aug 2002 | A1 |
20020108112 | Wallace et al. | Aug 2002 | A1 |
20020120929 | Schwalb et al. | Aug 2002 | A1 |
20020133412 | Oliver et al. | Sep 2002 | A1 |
20020140719 | Amir et al. | Oct 2002 | A1 |
20020141619 | Standridge et al. | Oct 2002 | A1 |
20020156909 | Harrington | Oct 2002 | A1 |
20020178135 | Tanaka | Nov 2002 | A1 |
20020184220 | Teraguchi et al. | Dec 2002 | A1 |
20020190991 | Efran et al. | Dec 2002 | A1 |
20020194589 | Cristofalo et al. | Dec 2002 | A1 |
20030001880 | Holtz et al. | Jan 2003 | A1 |
20030007555 | Divakaran et al. | Jan 2003 | A1 |
20030026592 | Kawahara et al. | Feb 2003 | A1 |
20030033288 | Shanahan et al. | Feb 2003 | A1 |
20030066068 | Gutta et al. | Apr 2003 | A1 |
20030067554 | Klarfeld et al. | Apr 2003 | A1 |
20030072440 | Murray et al. | Apr 2003 | A1 |
20030081937 | Li | May 2003 | A1 |
20030084448 | Soundararajan | May 2003 | A1 |
20030084450 | Thurston et al. | May 2003 | A1 |
20030088872 | Maissel et al. | May 2003 | A1 |
20030093792 | Labeeb et al. | May 2003 | A1 |
20030105682 | Dicker et al. | Jun 2003 | A1 |
20030167467 | Allen et al. | Sep 2003 | A1 |
20030172374 | Vinson et al. | Sep 2003 | A1 |
20030177503 | Sull et al. | Sep 2003 | A1 |
20030182663 | Gudorf et al. | Sep 2003 | A1 |
20030187650 | Moore et al. | Oct 2003 | A1 |
20030226152 | Billmaier et al. | Dec 2003 | A1 |
20030229900 | Reisman | Dec 2003 | A1 |
20040003041 | Moore et al. | Jan 2004 | A1 |
20040015569 | Lonnfors et al. | Jan 2004 | A1 |
20040017389 | Pan et al. | Jan 2004 | A1 |
20040030750 | Moore et al. | Feb 2004 | A1 |
20040032486 | Shusman | Feb 2004 | A1 |
20040088289 | Xu et al. | May 2004 | A1 |
20040098754 | Vella et al. | May 2004 | A1 |
20040125124 | Kim et al. | Jul 2004 | A1 |
20040125877 | Chang et al. | Jul 2004 | A1 |
20040197088 | Ferman et al. | Oct 2004 | A1 |
20040227768 | Bates et al. | Nov 2004 | A1 |
20040231003 | Cooper et al. | Nov 2004 | A1 |
20040250272 | Durden et al. | Dec 2004 | A1 |
20050021784 | Prehofer | Jan 2005 | A1 |
20050028194 | Elenbaas et al. | Feb 2005 | A1 |
20050055713 | Lee et al. | Mar 2005 | A1 |
20050102202 | Linden et al. | May 2005 | A1 |
20050131906 | Shin | Jun 2005 | A1 |
20050251827 | Ellis et al. | Nov 2005 | A1 |
20050262542 | DeWeese et al. | Nov 2005 | A1 |
20060129544 | Yoon et al. | Jun 2006 | A1 |
20070011148 | Burkey et al. | Jan 2007 | A1 |
Number | Date | Country |
---|---|---|
0 854 645 | Jul 1998 | EP |
0 878 964 | Nov 1998 | EP |
1250807 | Oct 2002 | EP |
2 325 537 | Nov 1998 | GB |
08125957 | May 1996 | JP |
09322154 | Dec 1997 | JP |
2000-229577 | Aug 2000 | JP |
2001-036861 | Feb 2001 | JP |
2001-085717 | Mar 2001 | JP |
2001-206550 | Jul 2001 | JP |
2002-503896 | Feb 2002 | JP |
WO 9856188 | Dec 1988 | WO |
WO 9414284 | Jun 1994 | WO |
WO 9901984 | Jan 1999 | WO |
WO 9904143 | Jan 1999 | WO |
WO 9912194 | Mar 1999 | WO |
WO 9965237 | Dec 1999 | WO |
WO 0150753 | Jul 2001 | WO |
Number | Date | Country | |
---|---|---|---|
20050271269 A1 | Dec 2005 | US |
Number | Date | Country | |
---|---|---|---|
60365915 | Mar 2002 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 10155269 | May 2002 | US |
Child | 11177867 | US |