US20150051719A1 - Apparatus and Method for Analyzing Sensor Data - Google Patents
Apparatus and Method for Analyzing Sensor Data Download PDFInfo
- Publication number
- US20150051719A1 US20150051719A1 US14/355,109 US201114355109A US2015051719A1 US 20150051719 A1 US20150051719 A1 US 20150051719A1 US 201114355109 A US201114355109 A US 201114355109A US 2015051719 A1 US2015051719 A1 US 2015051719A1
- Authority
- US
- United States
- Prior art keywords
- event
- primitive
- stream
- sensor data
- events
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F9/00—Games not otherwise provided for
- A63F9/24—Electric games; Games using electronic circuits not otherwise provided for
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0639—Performance analysis of employees; Performance analysis of enterprise or organisation operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/131—Protocols for games, networked simulations or virtual reality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/52—Network services specially adapted for the location of the user terminal
Definitions
- Embodiments of the present invention generally relate to the analysis of sensor data and, in particular, to apparatuses and methods for analyzing sensor data being provided at a high sensor data rate.
- Wireless sensor networks of various technologies may be used for locating purposes, such as locating or tracking humans and/or other objects.
- locating means the detection or determination of a geographical location or position
- tracking means locating at short time intervals such as to be able to follow the position and other kinematic variables of a moving observed object.
- Some specialized locating or position tracking systems may be used for locating players and other objects (e.g. a ball) in sport events, such as, for example, soccer, American football, rugby, tennis, etc.
- location information may be determined based on the evaluation of wireless radio signals and/or magnetic fields.
- transmitters and/or receivers generally also denoted as sensors, may be placed at the individual objects (e.g. players, ball, etc.) to be located by the system.
- Corresponding reception and/or transmission devices may also be mounted to predetermined locations around a geographical area of interest, as e.g. a soccer field.
- An evaluation of signal strengths, signal propagation times, and/or signal phases may then lead to sensor data streams indicative of the geographic position or location of individual players or objects at different time instants.
- a location data sample may be associated with a time stamp indicating at which time an object was located at the observed or detected geographic position or location.
- kinematic data like velocity (speed), acceleration, etc. may as well be provided in addition to the location data comprising, for example, x-, y-, and z-coordinates.
- the location and/or kinematic data delivered by the localization sensor system will also be referred to as raw (sensor) data.
- people or objects may be equipped with tiny transmitters, which may be embedded in footwear, uniforms and balls and whose signals are picked up by a number of antennas placed around an area under observation as for example a soccer field.
- Receiver units process the collected signals and determine their Times of Arrival (ToA). Based on a calculation of the differences in propagation delay, each transmitter's position is determined continuously to track all objects under observation.
- the transmitters operate in the 2.4 GHz band to be globally license free, while the individual transmitters are distinguished using CDMA (Code Division Multiple Access) techniques.
- CDMA Code Division Multiple Access
- tracking an object in a sports game with an appropriate accuracy easily produces a large amount of sensor data.
- tracking a ball of a soccer game with an accuracy of roughly 3 cm may require to estimate the position of the ball up around 2000 times per second, assuming a maximum speed of the ball of about 150 km/h, which appears to be reasonable for soccer.
- other sports such as tennis or baseball certainly would require higher sampling or estimation rates.
- not only the ball is to be tracked in a soccer game where tracking the 22 players is equally important. Since tracking with the above mentioned system is principally feasible with an accuracy of 1 cm, it may also be desirable to use more than one tracking sensor per player, to not only derive his position but also his posture in order to be able to decide on offside situations or the like. Equipping two teams and the necessary play equipment for a soccer match with a reasonable amount of sensors may result in up to 50000 position data samples or raw data samples per second that is the associated sensor data stream may have a sensor data rate of 50000 per second.
- Analyzing such type of sensor data requires simultaneous knowledge on the raw data of multiple or all sensors at each decision making, since each incident to be analyzed or since each conclusion to be drawn requires knowledge on a different subset of the sensors raw data. That is, in a conventional analysis framework all data needs to be distributed to all analyzing entities in parallel, which is not feasible if the number of analyzing entities increases in order to analyze the data with respect to multiple aspects. To even accomplish this task in real time or close to real time is completely out of reach in those systems. However, this may be required in order to indicate offside positions in a soccer game or to answer similar time critical questions in the course of another sports game.
- an analysis framework for analyzing the raw data portions being transmitted in a sensor data stream at a sensor data rate.
- the analysis framework comprises an input layer comprising at least two or more primitive event detectors for generating at least a first and second stream of primitive events using exclusively the sensor data stream as an input and one or more event layers comprising one or more event detectors for detecting an event of interest, wherein any one of the one or more event detectors uses only the streams of the first and the second primitive events or a stream of other events as provided by another one of the event detectors as an input. That is, the analysis framework follows an event based hierarchical analysis approach, where interdependent events are determined or detected at different hierarchical levels of dependency.
- An event may generally be defined to be an instantaneous occurrence of interest at a point of time.
- an event is associated with a change of a related sensed quantity.
- An event may be a primitive event derived in the hierarchical base or input layer, such that a primitive event is directly based on sensor data (e.g. the kinematic data provided by a tracking system) and hence may indicate a change of the related sensed quantity.
- An event of interest is an event of a higher hierarchical order that is it is dependent on other events or primitive events, or more generally on previously detected other events.
- an event or a primitive event comprises information derived by applying a certain decision making criterion to another event or to the raw data.
- An event based approach may provide for the possibility to analyze the underlying data in a parallelized manner with multiple processing nodes communicating over a network. This is particularly the case since the sensor data stream with its high data rate only needs to be provided to the primitive event detectors in the input layer, where they are processed to determine primitive events which are typically determined with a lower data rate. For the higher layers, primitive events are the basis for the analysis such that the sensor data stream does not have to be distributed to all decision making entities or event detectors. This makes the analysis of larger sets of position data at all possible.
- the reduced data rate of the input events for the event detectors in the higher hierarchy layers provides for the possibility to parallelize the processing, for example by distributing the event detectors and/or the primitive event detectors to different CPUs or computers within an analysis framework consisting of several CPUs or computing nodes.
- the reduced event data rates even provide for the possibility to communicate the occurrence of events via conventional networks, such as for example over an Ethernet based LAN (Local Area Network) without limiting the performance of the analysis framework even when a close to real time analysis is required.
- Ethernet based LAN Local Area Network
- the exchanged event data may also comprise information about two, three or more possible states the event detector has determined. That is, a determined event or primitive event may contain more than a binary YES/NO information.
- an apparatus for detecting an event of interest comprising a first primitive event detector for generating a stream of first primitive events using the sensor data stream and a second primitive event detector for generating a stream of different second primitive events using the sensor data stream, wherein a data rate of each of the streams of the first primitive events and the second primitive events is lower than the sensor data rate.
- An event detector is operable to determine the event of interest using the streams of the first and second primitive events. An event detector can thus base its decisions on primitive events occurring at a lower data rate and thus perform its analysis without the need to access the high data rate sensor data stream directly.
- data rate is to be understood not only as an instantaneous data rate but also as a mean data rate, which is as an average of the instantaneous data rate over a certain time interval.
- a certain primitive event is determined with the sensor data rate for a short time period.
- the mean data rate of the primitive event over the time of the observation e.g. the time of a soccer match, may be much lower.
- the primitive event detectors are operable to exclusively use kinematic data as the raw data in order to provide real time analysis of tracking data for sports events or the like.
- Kinematic data may be an arbitrary subset of position information, velocity information or acceleration information of an observed object.
- the data may be provided in a 1-, 2- or 3-dimensional space, such that the kinematic variables used herein shall be understood as being either vectors or scalars, depending on the chosen implementation.
- the primitive event detectors may furthermore derive velocity- and/or acceleration information themselves from the provided position information, such that the sensors may be simple tracking or positioning devices or the like.
- the hierarchical analysis is based on an appropriate choice of base events, such as to be able to derive any basic information needed for all higher order decisions.
- a proximity-event is generated as a primitive event when position information of a first observed object and of a second observed object indicates that the second observed object is within a predetermined neighborhood of the first observed object.
- the neighborhood may, depending on the observed event or sports game, be a complex shaped volume or be defined by the distance between the first observed object and the second observed object.
- Proximity may be used as an input for numerous further event detections, as for example to answer the question whether a player/batter or other equipment was possibly hitting a ball or another observed object.
- a remote-event is generated as a primitive event when position information of a first observed object and of a second observed object indicate that the second observed object is outside of a predetermined neighborhood of the first observed object.
- a direction changed-event is generated as a primitive event when a change of a velocity (direction or quantity) or an acceleration of an observed object exceeds a predetermined threshold.
- This criterion may generally be useful in sports- or tracking applications.
- the height of the threshold may be different. The threshold may therefore be different for different kinds of sports or even varying during the course of a single game to account for changing environmental conditions, such as for example the occurrence of rain.
- an idle-event is generated as a primitive event, when the velocity of an observed object falls below a predetermined threshold to indicate that the object is passive or not moving.
- the idle event is only generated when the velocity of the observed object stays below the predetermined threshold for at least a predetermined minimum duration.
- an active-event is generated as a primitive event, when a velocity of an observed object exceeds a predetermined threshold.
- the active-event is only generated when the velocity of the observed object stays above the predetermined threshold for at least a predetermined minimum duration.
- a line crossing-event is generated as a primitive event, when at least one component of a position information of an observed object exceeds or falls below a predetermined threshold.
- FIG. 1 shows a schematic view of an analysis framework for analyzing sensor data streams
- FIG. 2 schematically shows a block diagram of an embodiment of a method for detecting an event of interest using a sensor data stream
- FIG. 3 schematically shows an example for an event detection scheme in order to detect a shot on a goal in a soccer game
- FIG. 4 schematically shows an example for an event detection scheme in order to detect a double pass in a soccer game
- FIG. 5 schematically shows events allowing to efficiently determine the presence of an observed object in a predetermined area
- FIG. 6 schematically shows an embodiment of an event detector.
- FIG. 1 schematically shows an analysis framework 2 for analyzing raw data portions being transmitted in a sensor data stream 4 at a sensor data rate to identify at least one event of interest.
- the raw data portion is associated to one or more properties determined for an observed object using one or more sensors.
- the raw data comprise only kinematic variables of observed players and of a ball of a soccer match.
- An input layer 6 of the framework 2 comprises several primitive event detectors 8 a - 8 e for generating a stream of primitive events using exclusively the sensor data stream 4 as an input. That is, only the primitive event detectors 8 a - 8 e of the input layer of the analysis framework 2 receive the raw data at the high sensor data rate as an input.
- a first primitive event detector 8 b and a second primitive event detector 8 c generate a first stream of primitive events 10 b and a second stream of primitive events 10 c using exclusively the sensor data stream 4 as an input.
- the sensor data stream 4 may be provided using any suitable technique such as an Ethernet Network using copper or fiber links or any other wired or wireless technology, using standardized or custom communication protocols.
- the analysis framework 2 comprises two event layers 12 and 14 , each comprising event detectors for detecting events of interest, wherein the event detectors of the event layers 12 and 14 use only the streams provided by the primitive event detectors or of other event detectors of event layers 12 or 14 as an input.
- event detector 16 determines an event of interest using the streams 10 b and 10 c of the first and second primitive event detectors 8 b and 8 c .
- Stream 10 b is also provided to a further event detector 18 . It goes without saying that further arbitrary interdependencies are possible. For the sake of clarity, however, only few dependencies or connections are illustrated here.
- the links between the event detectors may be implemented using wired Ethernet connections or using any other network link based on an arbitrary technology known in the art.
- the individual event detectors may be running as different software processes on different computing nodes or some of them may be running on the same node.
- the event detectors may also be implemented as dedicated or programmable hardware or the like. With this respect, the dependencies between the event detectors shown in FIG. 1 shall be understood as both, a representation for a physical hardware link or for a logical link indicating a flow of information or a dependency of on event detector from another.
- FIG. 2 schematically shows an embodiment of a method for detecting an event of interest using a sensor data stream 4 carrying raw data at a sensor data rate, the raw data being associated to one or more properties determined for multiple observed objects using one or more sensors.
- a stream of first primitive events 22 is generated, wherein a data rate of the stream of first primitive events 22 is lower than the sensor data rate.
- a stream of second primitive events 26 is generated, wherein a data rate of the stream of the second primitive events 26 is lower than the sensor data rate.
- an event generation step 28 the event of interest 30 is determined, using the streams 22 and 26 of the first and second primitive events. It is to be noted that the first and second event generation steps 20 and 24 may be performed in any arbitrary order, that is the particular events of the of first second stream of primitive events which are used to determine an event of interest 30 do not necessarily have to be created or delivered at the same time.
- event detectors may, for example, be implemented as state machines as it will be shown in FIG. 6 below.
- FIGS. 3 to 5 discussed below show some embodiments of appropriately chosen primitive events to be used to derive higher order events of interest for a soccer match.
- FIGS. 3 and 4 show examples of analysis frameworks for analyzing position information of players and a ball in a soccer game to identify numerous events of interest. It may be noted that the illustrative embodiments of FIGS. 3 and 4 may not show all interrelations and links between the event detectors or the decision making entities of the individual hierarchical levels. FIGS. 3 and 4 are mainly intended to clarify the hierarchical approach and particularly how few base events may be used to analyze the data to derive rather complex information from few primitive events.
- FIG. 3 shows an example of an analysis framework for analyzing position information of players and a ball in a soccer game to identify a blocked shot on a the goal as an event of interest.
- a “direction changed-event” 40 is detected for the ball, for example by comparing a provided acceleration with a threshold or by computing first and second derivatives of position data of the ball in order to conclude on the change of direction of the ball.
- a line crossing event 42 is generated or derived, indicating that the ball had crossed a predetermined virtual line on the playfield.
- the ball is identified to be in a particular region, generating a region event 44 .
- the identification of a particular region is elaborated on in more detail in the description of FIG. 5 .
- the observed ball is the active ball 46 , which is the ball actively used for playing and not a spare ball stored outside of the playfield.
- Is near events 48 for player and ball as well as for ball and goal allow to draw the conclusion that the direction change of the ball indicated by the direction changed-event 40 was due to a particular player who hit the ball, which is signaled by a corresponding event 50 .
- the shot was directed to the goal by event 52 .
- Additional subsequent is near events for the ball and the goal keeper further allow concluding that the shot was blocked and that the no goal was achieved by the player hitting the ball.
- the final complex information is gathered from only few but appropriately chosen primitive events.
- FIG. 4 shows an example of an analysis framework for analyzing position information of players and a ball in a soccer game to identify a double pass between two players.
- the determination which particular player hit the ball is performed as already explained with respect to FIG. 3 .
- a change of the sign of a velocity or of a component of a velocity vector of the ball may be used to determine a peak height event 56 for the ball, which may indicate that the ball had been shot and not only dribbled.
- the Begin and End of possession 58 of the ball may be determined from the proximity event 48 , indicating that the ball is close to a particular player.
- a pass 62 can be determined by using the information that one player lost possession, while another player achieved possession of the ball, while the ball has been played in between, which in turn is detected by the height event 56 .
- a double pass 64 may be determined by 2 subsequent passes between the same players.
- FIG. 5 illustrates how the information that a ball 72 is located within a particular region 74 of the playfield may be gathered from just one type of primitive events in a particularly efficient manner.
- the underlying primitive event is a line crossing event indicating that the ball has crossed a straight line virtually projected on the playfield in order to subdivide it into numerous regions.
- the region 72 is formed by 4 straight lines 76 to 82 , intersecting at right angles such as to form a rectangular region 74 .
- this may be practically achieved by determining, whether a component of a position vector of the ball exceeds or falls below a predetermined threshold.
- the determination, whether a line has been crossed or not may then require different calculations, such as for example the determination of a determinate.
- the determination of the position of the ball may be based on a primitive “line crossing-event” determined for each of the lines used to subdivide a playfield into multiple regions, as for example lines 76 to 80 , which provide the border of region 74 .
- a line crossing event or a relative position event is determined, when the ball crosses the line.
- the ball changes its position from a previous position 84 to its present position in region 74 . That is, a primitive event detector associated to line 82 would change its output state or, in other words, generate a line crossing-event.
- an event generator receiving this event and in addition thereto the events determined by the primitive event detectors associated to lines 76 , 78 and 80 will be able to generate an event indicating that ball 72 is now in region 74 .
- the event detector could, for example, be implemented as a state machine, as shown in more detail in FIG. 6 .
- the computational load to determine the position of the ball with respect to predetermined regions, as for example with respect to the penalty area may decrease by a considerable amount.
- the detection may then be performed as follows:
- FIG. 6 schematically illustrates a possible implementation of an event detector 100 as a state machine.
- the state machine is depending on 4 input events or input quantities A, B, C, and D, which may, for example, be provided by one or more primitive event detectors.
- A, B, C, and D which may, for example, be provided by one or more primitive event detectors.
- the state machine arrives at state 102 the state machine or the event detector generates or determines its associated event of interest, which naturally depends on the inputs to the event detector.
- the state machine is initialized with its starting configuration 104 .
- the state machine transits into state 106 from where it transits to state 108 upon occurrence of event B.
- event C the state machine transits to its final state 102 and determines its associated event.
- Further events of interest may be determined on the basis of the primitive events. Further Events of interest may, for example, be single passes from one player to another, double passes, shots on the goal, dribblings, free kicks, kick-offs or corner kicks.
- Functional blocks denoted as “means for . . . ” shall be understood as functional blocks comprising circuitry that is adapted for performing a certain function, respectively.
- a “means for s.th.” may as well be understood as a “means being adapted or operable for s.th.”.
- a means being adapted for performing a certain function does, hence, not imply that such means necessarily is performing said function (at a given time instant).
- processor any functional blocks may be provided through the use of dedicated hardware, as e.g. a processor, as well as hardware capable of executing software in association with appropriate software.
- the functions may be provided by a single dedicated processor, by a single shared processor, or by a plurality of individual processors, some of which may be shared.
- explicit use of the term “processor” or “controller” should not be construed to refer exclusively to hardware capable of executing software, and may implicitly include, without limitation, digital signal processor (DSP) hardware, network processor, application specific integrated circuit (ASIC), field programmable gate array (FPGA), read only memory (ROM) for storing software, random access memory (RAM), and non-volatile storage.
- DSP digital signal processor
- ASIC application specific integrated circuit
- FPGA field programmable gate array
- ROM read only memory
- RAM random access memory
- non-volatile storage Other hardware, conventional and/or custom, may also be included.
- any block diagrams herein represent conceptual views of illustrative circuitry embodying the principles of the invention.
- any flow charts, flow diagrams, state transition diagrams, pseudo code, and the like represent various processes which may be substantially represented in computer readable medium and so executed by a computer or processor, whether or not such computer or processor is explicitly shown.
- each claim may stand on its own as a separate embodiment. While each claim may stand on its own as a separate embodiment, it is to be noted that—although a dependent claim may refer in the claims to a specific combination with one or more other claims—other embodiments may also include a combination of the dependent claim with the subject matter of each other dependent claim. Such combinations are proposed herein unless it is stated that a specific combination is not intended. Furthermore, it is intended to include also features of a claim to any other independent claim even if this claim is not directly made dependent to the independent claim. Particularly, when a dependent claim is referring to an encoder or a sender, the corresponding feature of the related decoder or receiver shall herewith also be included and part of the disclosure of the description.
- a single step may include or may be broken into multiple substeps. Such substeps may be included and part of the disclosure of this single step unless explicitly excluded.
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Development Economics (AREA)
- Educational Administration (AREA)
- Operations Research (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Game Theory and Decision Science (AREA)
- Health & Medical Sciences (AREA)
- Marketing (AREA)
- Medical Informatics (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Computing Systems (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
- User Interface Of Digital Computer (AREA)
- Testing Or Calibration Of Command Recording Devices (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
An apparatus for detecting an event of interest, comprises a first primitive event detector (8 b) for generating a stream of first primitive events (10 b) using a sensor data stream (4), the sensor data stream (4) carrying raw data at a sensor data rate, the raw data being associated to one or more properties determined for multiple observed objects (72) using one or more sensors, wherein a data rate of the stream of first primitive events (10 b) is lower than the sensor data rate as well as a second primitive event detector (8 c) for generating a stream of different second primitive events (10 c) using the sensor data stream (4), wherein a data rate of the stream of the second primitive events (10 c) is lower than the sensor data rate. An event detector (16) is operable to determine the event of interest using the streams (10 b, 10 c) of the first and second primitive events.
Description
- Embodiments of the present invention generally relate to the analysis of sensor data and, in particular, to apparatuses and methods for analyzing sensor data being provided at a high sensor data rate.
- Wireless sensor networks of various technologies may be used for locating purposes, such as locating or tracking humans and/or other objects. Here, “locating” means the detection or determination of a geographical location or position, while tracking means locating at short time intervals such as to be able to follow the position and other kinematic variables of a moving observed object. Some specialized locating or position tracking systems may be used for locating players and other objects (e.g. a ball) in sport events, such as, for example, soccer, American football, rugby, tennis, etc.
- When analyzing the gathered geographic location or positioning data of players and/or a ball it becomes possible to derive statistical information related to the whole sports event, for example a soccer match, or related to individual teams or players. Such derived statistical information may be interesting for various reasons. On the one hand, there are various commercial interests as certain statistics and their analysis may be of particular relevance for spectators in a stadium and/or in front of a television set at home. Hence, providing certain statistics may raise more interest in sport events. On the other hand, statistical data derived from the raw positioning data may as well be used for training purposes. Here, an opponent and/or the behavior of the own team may be analyzed as well as the performance and/or health condition of individual players.
- The aforementioned locating or position tracking systems may be based on various technologies. For example, location information may be determined based on the evaluation of wireless radio signals and/or magnetic fields. For this purpose transmitters and/or receivers, generally also denoted as sensors, may be placed at the individual objects (e.g. players, ball, etc.) to be located by the system. Corresponding reception and/or transmission devices may also be mounted to predetermined locations around a geographical area of interest, as e.g. a soccer field. An evaluation of signal strengths, signal propagation times, and/or signal phases, just to name a few possible technical alternatives, may then lead to sensor data streams indicative of the geographic position or location of individual players or objects at different time instants. A location data sample may be associated with a time stamp indicating at which time an object was located at the observed or detected geographic position or location. As combined information, kinematic data, like velocity (speed), acceleration, etc. may as well be provided in addition to the location data comprising, for example, x-, y-, and z-coordinates. In the sequel of this specification the location and/or kinematic data delivered by the localization sensor system will also be referred to as raw (sensor) data.
- In a particular example of a wireless tracking system people or objects may be equipped with tiny transmitters, which may be embedded in footwear, uniforms and balls and whose signals are picked up by a number of antennas placed around an area under observation as for example a soccer field. Receiver units process the collected signals and determine their Times of Arrival (ToA). Based on a calculation of the differences in propagation delay, each transmitter's position is determined continuously to track all objects under observation. In one particular example, the transmitters operate in the 2.4 GHz band to be globally license free, while the individual transmitters are distinguished using CDMA (Code Division Multiple Access) techniques.
- However, tracking an object in a sports game with an appropriate accuracy easily produces a large amount of sensor data. For example, tracking a ball of a soccer game with an accuracy of roughly 3 cm may require to estimate the position of the ball up around 2000 times per second, assuming a maximum speed of the ball of about 150 km/h, which appears to be reasonable for soccer. However, other sports such as tennis or baseball certainly would require higher sampling or estimation rates. Moreover, not only the ball is to be tracked in a soccer game where tracking the 22 players is equally important. Since tracking with the above mentioned system is principally feasible with an accuracy of 1 cm, it may also be desirable to use more than one tracking sensor per player, to not only derive his position but also his posture in order to be able to decide on offside situations or the like. Equipping two teams and the necessary play equipment for a soccer match with a reasonable amount of sensors may result in up to 50000 position data samples or raw data samples per second that is the associated sensor data stream may have a sensor data rate of 50000 per second.
- Analyzing such type of sensor data requires simultaneous knowledge on the raw data of multiple or all sensors at each decision making, since each incident to be analyzed or since each conclusion to be drawn requires knowledge on a different subset of the sensors raw data. That is, in a conventional analysis framework all data needs to be distributed to all analyzing entities in parallel, which is not feasible if the number of analyzing entities increases in order to analyze the data with respect to multiple aspects. To even accomplish this task in real time or close to real time is completely out of reach in those systems. However, this may be required in order to indicate offside positions in a soccer game or to answer similar time critical questions in the course of another sports game.
- It is therefore required to provide a concept to analyze sensor data streams more efficiently in order to extract information of interest.
- According to an embodiment of the invention, this is achieved by the use of an analysis framework for analyzing the raw data portions being transmitted in a sensor data stream at a sensor data rate. The analysis framework comprises an input layer comprising at least two or more primitive event detectors for generating at least a first and second stream of primitive events using exclusively the sensor data stream as an input and one or more event layers comprising one or more event detectors for detecting an event of interest, wherein any one of the one or more event detectors uses only the streams of the first and the second primitive events or a stream of other events as provided by another one of the event detectors as an input. That is, the analysis framework follows an event based hierarchical analysis approach, where interdependent events are determined or detected at different hierarchical levels of dependency.
- An event may generally be defined to be an instantaneous occurrence of interest at a point of time. In general, an event is associated with a change of a related sensed quantity. An event may be a primitive event derived in the hierarchical base or input layer, such that a primitive event is directly based on sensor data (e.g. the kinematic data provided by a tracking system) and hence may indicate a change of the related sensed quantity. An event of interest is an event of a higher hierarchical order that is it is dependent on other events or primitive events, or more generally on previously detected other events. In another view, an event or a primitive event comprises information derived by applying a certain decision making criterion to another event or to the raw data.
- An event based approach may provide for the possibility to analyze the underlying data in a parallelized manner with multiple processing nodes communicating over a network. This is particularly the case since the sensor data stream with its high data rate only needs to be provided to the primitive event detectors in the input layer, where they are processed to determine primitive events which are typically determined with a lower data rate. For the higher layers, primitive events are the basis for the analysis such that the sensor data stream does not have to be distributed to all decision making entities or event detectors. This makes the analysis of larger sets of position data at all possible.
- Moreover, the reduced data rate of the input events for the event detectors in the higher hierarchy layers provides for the possibility to parallelize the processing, for example by distributing the event detectors and/or the primitive event detectors to different CPUs or computers within an analysis framework consisting of several CPUs or computing nodes. The reduced event data rates even provide for the possibility to communicate the occurrence of events via conventional networks, such as for example over an Ethernet based LAN (Local Area Network) without limiting the performance of the analysis framework even when a close to real time analysis is required. As compared to the raw data, only the fact that a decision making criterion of an event detector has been met (that is, that the event occurred) may be transmitted as an event information between interrelated event detectors. This may additionally help to keep the amount of data exchanged between event detectors low, since the length of each individual message is shorter than the length of a single raw data sample. That is, not only the number of data packets per time may be kept low but also the size of the transmitted data packets. In further embodiments, the exchanged event data may also comprise information about two, three or more possible states the event detector has determined. That is, a determined event or primitive event may contain more than a binary YES/NO information.
- According to a further embodiment of the invention, the above object is achieved by an apparatus for detecting an event of interest, the apparatus comprising a first primitive event detector for generating a stream of first primitive events using the sensor data stream and a second primitive event detector for generating a stream of different second primitive events using the sensor data stream, wherein a data rate of each of the streams of the first primitive events and the second primitive events is lower than the sensor data rate. An event detector is operable to determine the event of interest using the streams of the first and second primitive events. An event detector can thus base its decisions on primitive events occurring at a lower data rate and thus perform its analysis without the need to access the high data rate sensor data stream directly.
- With this respect the term data rate is to be understood not only as an instantaneous data rate but also as a mean data rate, which is as an average of the instantaneous data rate over a certain time interval. Depending on the chosen set of primitive events, it may occur that a certain primitive event is determined with the sensor data rate for a short time period. However, the mean data rate of the primitive event over the time of the observation, e.g. the time of a soccer match, may be much lower.
- According to some embodiments of the invention, the primitive event detectors are operable to exclusively use kinematic data as the raw data in order to provide real time analysis of tracking data for sports events or the like. Kinematic data may be an arbitrary subset of position information, velocity information or acceleration information of an observed object. The data may be provided in a 1-, 2- or 3-dimensional space, such that the kinematic variables used herein shall be understood as being either vectors or scalars, depending on the chosen implementation. In further embodiments, the primitive event detectors may furthermore derive velocity- and/or acceleration information themselves from the provided position information, such that the sensors may be simple tracking or positioning devices or the like.
- The hierarchical analysis is based on an appropriate choice of base events, such as to be able to derive any basic information needed for all higher order decisions.
- According to one embodiment, a proximity-event is generated as a primitive event when position information of a first observed object and of a second observed object indicates that the second observed object is within a predetermined neighborhood of the first observed object. The neighborhood may, depending on the observed event or sports game, be a complex shaped volume or be defined by the distance between the first observed object and the second observed object. Proximity may be used as an input for numerous further event detections, as for example to answer the question whether a player/batter or other equipment was possibly hitting a ball or another observed object.
- According to a further embodiment, a remote-event is generated as a primitive event when position information of a first observed object and of a second observed object indicate that the second observed object is outside of a predetermined neighborhood of the first observed object.
- According to a further embodiment, a direction changed-event is generated as a primitive event when a change of a velocity (direction or quantity) or an acceleration of an observed object exceeds a predetermined threshold. This criterion may generally be useful in sports- or tracking applications. Depending on the observed sport, however, the height of the threshold may be different. The threshold may therefore be different for different kinds of sports or even varying during the course of a single game to account for changing environmental conditions, such as for example the occurrence of rain.
- According to a further embodiment, an idle-event is generated as a primitive event, when the velocity of an observed object falls below a predetermined threshold to indicate that the object is passive or not moving. According to some embodiments, the idle event is only generated when the velocity of the observed object stays below the predetermined threshold for at least a predetermined minimum duration.
- According to a further embodiment, an active-event is generated as a primitive event, when a velocity of an observed object exceeds a predetermined threshold. According to some embodiments, the active-event is only generated when the velocity of the observed object stays above the predetermined threshold for at least a predetermined minimum duration.
- According to a further embodiment, a line crossing-event is generated as a primitive event, when at least one component of a position information of an observed object exceeds or falls below a predetermined threshold.
- Some embodiments of apparatuses and/or methods will be described in the following by way of example only, and with reference to the accompanying figures, in which
-
FIG. 1 shows a schematic view of an analysis framework for analyzing sensor data streams; -
FIG. 2 schematically shows a block diagram of an embodiment of a method for detecting an event of interest using a sensor data stream; -
FIG. 3 schematically shows an example for an event detection scheme in order to detect a shot on a goal in a soccer game; -
FIG. 4 schematically shows an example for an event detection scheme in order to detect a double pass in a soccer game; -
FIG. 5 schematically shows events allowing to efficiently determine the presence of an observed object in a predetermined area; and -
FIG. 6 schematically shows an embodiment of an event detector. -
FIG. 1 schematically shows ananalysis framework 2 for analyzing raw data portions being transmitted in asensor data stream 4 at a sensor data rate to identify at least one event of interest. The raw data portion is associated to one or more properties determined for an observed object using one or more sensors. In the present and the following embodiments it is assumed that the raw data comprise only kinematic variables of observed players and of a ball of a soccer match. - An
input layer 6 of theframework 2 comprises several primitive event detectors 8 a-8 e for generating a stream of primitive events using exclusively thesensor data stream 4 as an input. That is, only the primitive event detectors 8 a-8 e of the input layer of theanalysis framework 2 receive the raw data at the high sensor data rate as an input. - A first
primitive event detector 8 b and a secondprimitive event detector 8 c generate a first stream ofprimitive events 10 b and a second stream ofprimitive events 10 c using exclusively thesensor data stream 4 as an input. Thesensor data stream 4 may be provided using any suitable technique such as an Ethernet Network using copper or fiber links or any other wired or wireless technology, using standardized or custom communication protocols. - The
analysis framework 2 comprises twoevent layers event detector 16 determines an event of interest using thestreams primitive event detectors Stream 10 b is also provided to afurther event detector 18. It goes without saying that further arbitrary interdependencies are possible. For the sake of clarity, however, only few dependencies or connections are illustrated here. - The links between the event detectors may be implemented using wired Ethernet connections or using any other network link based on an arbitrary technology known in the art. The individual event detectors may be running as different software processes on different computing nodes or some of them may be running on the same node. The event detectors may also be implemented as dedicated or programmable hardware or the like. With this respect, the dependencies between the event detectors shown in
FIG. 1 shall be understood as both, a representation for a physical hardware link or for a logical link indicating a flow of information or a dependency of on event detector from another. -
FIG. 2 schematically shows an embodiment of a method for detecting an event of interest using asensor data stream 4 carrying raw data at a sensor data rate, the raw data being associated to one or more properties determined for multiple observed objects using one or more sensors. - In a first primitive
event generation step 20, a stream of firstprimitive events 22 is generated, wherein a data rate of the stream of firstprimitive events 22 is lower than the sensor data rate. In a second primitiveevent generation step 24, a stream of secondprimitive events 26 is generated, wherein a data rate of the stream of the secondprimitive events 26 is lower than the sensor data rate. - In an
event generation step 28 the event ofinterest 30 is determined, using thestreams interest 30 do not necessarily have to be created or delivered at the same time. - To this end, event detectors may, for example, be implemented as state machines as it will be shown in
FIG. 6 below. -
FIGS. 3 to 5 discussed below show some embodiments of appropriately chosen primitive events to be used to derive higher order events of interest for a soccer match. -
FIGS. 3 and 4 show examples of analysis frameworks for analyzing position information of players and a ball in a soccer game to identify numerous events of interest. It may be noted that the illustrative embodiments ofFIGS. 3 and 4 may not show all interrelations and links between the event detectors or the decision making entities of the individual hierarchical levels.FIGS. 3 and 4 are mainly intended to clarify the hierarchical approach and particularly how few base events may be used to analyze the data to derive rather complex information from few primitive events. -
FIG. 3 shows an example of an analysis framework for analyzing position information of players and a ball in a soccer game to identify a blocked shot on a the goal as an event of interest. In the input layer of the framework, a “direction changed-event” 40 is detected for the ball, for example by comparing a provided acceleration with a threshold or by computing first and second derivatives of position data of the ball in order to conclude on the change of direction of the ball. Furthermore, aline crossing event 42 is generated or derived, indicating that the ball had crossed a predetermined virtual line on the playfield. - Based on the
line crossing event 42, the ball is identified to be in a particular region, generating aregion event 44. The identification of a particular region is elaborated on in more detail in the description ofFIG. 5 . From the presence of the ball inside the playfield, it can be concluded that the observed ball is theactive ball 46, which is the ball actively used for playing and not a spare ball stored outside of the playfield. Isnear events 48 for player and ball as well as for ball and goal allow to draw the conclusion that the direction change of the ball indicated by the direction changed-event 40 was due to a particular player who hit the ball, which is signaled by acorresponding event 50. In the same way it is concluded that the shot was directed to the goal byevent 52. Additional subsequent is near events for the ball and the goal keeper further allow concluding that the shot was blocked and that the no goal was achieved by the player hitting the ball. As apparent fromFIG. 3 , the final complex information is gathered from only few but appropriately chosen primitive events. -
FIG. 4 shows an example of an analysis framework for analyzing position information of players and a ball in a soccer game to identify a double pass between two players. The determination which particular player hit the ball is performed as already explained with respect toFIG. 3 . Furthermore, a change of the sign of a velocity or of a component of a velocity vector of the ball may be used to determine apeak height event 56 for the ball, which may indicate that the ball had been shot and not only dribbled. The Begin and End ofpossession 58 of the ball may be determined from theproximity event 48, indicating that the ball is close to a particular player. The fact that a particular player is in control of the ball, as denoted byreference numeral 60, can be derived from the information that the ball receives several accelerations, when one and the same player is in possession of the ball. Apass 62 can be determined by using the information that one player lost possession, while another player achieved possession of the ball, while the ball has been played in between, which in turn is detected by theheight event 56. Finally, adouble pass 64 may be determined by 2 subsequent passes between the same players. Again, the complex information determined or analyzed inFIG. 4 is based on only few appropriately chosen and defined primitive events. -
FIG. 5 illustrates how the information that aball 72 is located within aparticular region 74 of the playfield may be gathered from just one type of primitive events in a particularly efficient manner. The underlying primitive event is a line crossing event indicating that the ball has crossed a straight line virtually projected on the playfield in order to subdivide it into numerous regions. Theregion 72 is formed by 4straight lines 76 to 82, intersecting at right angles such as to form arectangular region 74. Using a cartesian coordinate system as indicated inFIG. 5 , this may be practically achieved by determining, whether a component of a position vector of the ball exceeds or falls below a predetermined threshold. However, it may be noted that also other arbitrary geometries for the observed regions according to the embodiments described herein are possible. The determination, whether a line has been crossed or not may then require different calculations, such as for example the determination of a determinate. - Using a conventional approach to determine, whether the
ball 72 is located insideregion 74 would require to iterate over all regions of the playfield and to determine the relative position of the ball with respect to each edge of the region. That is, for example, a determinate had to be computed for each of the 4 edges ofregion 74 in order to conclude that theball 72 is inside theregion 74 when all determinates share the same sign. Performing this kind of analysis for, say, 2000 ball positions per second would hardly be feasible in real time. - Using an embodiment of the invention, however, the determination of the position of the ball may be based on a primitive “line crossing-event” determined for each of the lines used to subdivide a playfield into multiple regions, as for
example lines 76 to 80, which provide the border ofregion 74. For each of the lines, a line crossing event or a relative position event is determined, when the ball crosses the line. As illustrated inFIG. 5 , the ball changes its position from aprevious position 84 to its present position inregion 74. That is, a primitive event detector associated to line 82 would change its output state or, in other words, generate a line crossing-event. - When, however, the primitive event detector associated to line 82 generates the line crossing element, an event generator receiving this event and in addition thereto the events determined by the primitive event detectors associated to
lines ball 72 is now inregion 74. The event detector could, for example, be implemented as a state machine, as shown in more detail inFIG. 6 . As compared to the conventional approach the computational load to determine the position of the ball with respect to predetermined regions, as for example with respect to the penalty area, may decrease by a considerable amount. - In other words, a conventional approach would require, for each defined region:
-
- for each straight border segment of the region:
- calculate a determinate for the position of the observed object; compare the calculated determinates to conclude, whether the object is within the area or not.
- for each straight border segment of the region:
- To the contrary, using an embodiment of the invention, one may define a number k of lines in order subdivide the playfield into a number n of regions, as, for example, illustrated in
FIG. 5 . The detection may then be performed as follows: -
- Start k primitive event detectors, each associated to one line, in order to determine, as a primitive event, whether the ball is on a first or a second side of the line.
- Start n Event detectors, to determine an event indicating that the ball is inside its associated region, wherein each event detector is connected with the primitive event detectors associated to the lines bordering the region associated with the event detector.
- Determine an event with the event detector, when all connected primitive event detectors provide corresponding information.
-
FIG. 6 schematically illustrates a possible implementation of anevent detector 100 as a state machine. The state machine is depending on 4 input events or input quantities A, B, C, and D, which may, for example, be provided by one or more primitive event detectors. When the state machine arrives atstate 102 the state machine or the event detector generates or determines its associated event of interest, which naturally depends on the inputs to the event detector. The state machine is initialized with its startingconfiguration 104. Upon occurrence of event A, the state machine transits intostate 106 from where it transits tostate 108 upon occurrence of event B. After occurrence of event C the state machine transits to itsfinal state 102 and determines its associated event. From bothstates starting configuration 104 upon event D, which may be interpreted as a reset signal or the like. It should be noted that, according to the specific implementation ofFIG. 6 , the order of the occurrence of the signals A to C is of importance to arrive at thefinal state 102. However, alternative implementations of state machines may be used, where the order of arrival of input events is irrelevant. Generally, using state machines as event detectors may allow implementing these in hardware, which may decrease the computational load in the analysis framework and speed up the overall processing. - Although only described for a subset of events of interest, arbitrary further events of interest may be determined on the basis of the primitive events. Further Events of interest may, for example, be single passes from one player to another, double passes, shots on the goal, dribblings, free kicks, kick-offs or corner kicks.
- It goes without saying that, although illustrated primarily with respect to a soccer match, further embodiments of the invention may be used in any other kind of sports game, such as for example basketball, handball, a game of volleyball, rugby, American Football, ice hockey, field hockey, polo, baseball, tennis, golf and the like.
- The description and drawings merely illustrate the principles of the invention. It will thus be appreciated that those skilled in the art will be able to devise various arrangements that, although not explicitly described or shown herein, embody the principles of the invention and are included within its spirit and scope. Furthermore, all examples recited herein are principally intended expressly to be only for pedagogical purposes to aid the reader in understanding the principles of the invention and the concepts contributed by the inventor(s) to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions. Moreover, all statements herein reciting principles, aspects, and embodiments of the invention, as well as specific examples thereof, are intended to encompass equivalents thereof.
- Functional blocks denoted as “means for . . . ” (performing a certain function) shall be understood as functional blocks comprising circuitry that is adapted for performing a certain function, respectively. Hence, a “means for s.th.” may as well be understood as a “means being adapted or operable for s.th.”. A means being adapted for performing a certain function does, hence, not imply that such means necessarily is performing said function (at a given time instant).
- Functions of various elements shown in the figures, including any functional blocks may be provided through the use of dedicated hardware, as e.g. a processor, as well as hardware capable of executing software in association with appropriate software. When provided by a processor, the functions may be provided by a single dedicated processor, by a single shared processor, or by a plurality of individual processors, some of which may be shared. Moreover, explicit use of the term “processor” or “controller” should not be construed to refer exclusively to hardware capable of executing software, and may implicitly include, without limitation, digital signal processor (DSP) hardware, network processor, application specific integrated circuit (ASIC), field programmable gate array (FPGA), read only memory (ROM) for storing software, random access memory (RAM), and non-volatile storage. Other hardware, conventional and/or custom, may also be included.
- It should be appreciated by those skilled in the art that any block diagrams herein represent conceptual views of illustrative circuitry embodying the principles of the invention. Similarly, it will be appreciated that any flow charts, flow diagrams, state transition diagrams, pseudo code, and the like represent various processes which may be substantially represented in computer readable medium and so executed by a computer or processor, whether or not such computer or processor is explicitly shown.
- Furthermore, the following claims are hereby incorporated into the Detailed Description, where each claim may stand on its own as a separate embodiment. While each claim may stand on its own as a separate embodiment, it is to be noted that—although a dependent claim may refer in the claims to a specific combination with one or more other claims—other embodiments may also include a combination of the dependent claim with the subject matter of each other dependent claim. Such combinations are proposed herein unless it is stated that a specific combination is not intended. Furthermore, it is intended to include also features of a claim to any other independent claim even if this claim is not directly made dependent to the independent claim. Particularly, when a dependent claim is referring to an encoder or a sender, the corresponding feature of the related decoder or receiver shall herewith also be included and part of the disclosure of the description.
- It is further to be noted that methods disclosed in the specification or in the claims may be implemented by a device having means for performing each of the respective steps of these methods.
- Further, it is to be understood that the disclosure of multiple steps or functions disclosed in the specification or claims may not be construed as to be within the specific order. Therefore, the disclosure of multiple steps or functions will not limit these to a particular order unless such steps or functions are not interchangeable for technical reasons.
- Furthermore, in some embodiments a single step may include or may be broken into multiple substeps. Such substeps may be included and part of the disclosure of this single step unless explicitly excluded.
Claims (26)
1-26. (canceled)
27. An apparatus for detecting an event of interest in a sports game, comprising:
a first primitive event detector for generating a stream of first primitive events using a sensor data stream, the sensor data stream carrying kinematic data and an associated time stamp as a raw data at a sensor data rate, the raw data being associated to one or more kinematic properties determined for multiple observed objects at the time indicated by the time stamp using one or more sensors, wherein a data rate of the stream of first primitive events is lower than the sensor data rate;
a second primitive event detector for generating a stream of different second primitive events using the sensor data stream, wherein a data rate of the stream of the second primitive events is lower than the sensor data rate; and
an event detector operable to determine the event of interest using the streams of the first and second primitive events.
28. The apparatus of claim 27 , wherein the kinematic data is based on location data indicating a geographic position of an observed object at the time indicated by the time stamp, wherein the location data is derived from location information of sensors placed at the observed objects.
29. The apparatus of claim 28 , wherein the kinematic data comprises position information, velocity information and acceleration information of an observed object.
30. The apparatus of claim 27 , wherein the first and second primitive event detectors are operable to exclusively use the sensor data stream as an input.
31. The apparatus of claim 27 , wherein a proximity event is generated as the first or the second primitive event when position information of a first observed object and of a second observed object indicates that the second observed object is within a predetermined neighborhood of the first observed object.
32. The apparatus of claim 31 , wherein the predetermined neighborhood is defined by a predetermined maximum distance between the first observed object and the second observed object.
33. The apparatus of claim 27 , wherein a remote event is generated as the first or the second primitive event when position information of a first observed object and of a second observed object indicates that the second observed object is outside of a predetermined neighborhood of the first observed object.
34. The apparatus of claim 27 , wherein a direction changed event is generated as the first or the second primitive event when a change of a velocity or an acceleration of an observed object exceeds a predetermined threshold.
35. The apparatus of claim 27 , wherein an idle event is generated as the first or the second primitive event, when a velocity of an observed object falls below a predetermined threshold.
36. The apparatus of claim 35 , wherein the idle event is only generated when the velocity of the observed object falls below the predetermined threshold for at least a predetermined minimum duration.
37. The apparatus of claim 27 , wherein an active event is generated as the first or the second primitive event, when a velocity of an observed object exceeds a predetermined threshold.
38. The apparatus of claim 37 , wherein the active event is only generated when the velocity of the observed object exceeds the predetermined threshold for at least a predetermined minimum duration.
39. The apparatus of claim 27 , wherein a line crossing event is generated as the first or the second primitive event, when a component of a position information of the first or the second observed object exceeds or falls below a predetermined threshold.
40. The apparatus of claim 27 , wherein a hit event is detected as the event of interest when the first primitive event detector detects a proximity event for the first object and the second object and when the second primitive event detector detects a direction change event for the second object, the hit event indicating that the second object was hit by the first object.
41. The apparatus of claim 27 , further comprising a further event detector for detecting a further event of interest using the first primitive event and the event of interest.
42. The apparatus of claim 41 , wherein an object possession event is generated as the further event of interest when a proximity event is detected by the first primitive event detector and when a hit event is detected by the event detector.
43. The apparatus of claim 41 , wherein an object loss event is generated as the further event of interest when a remote event is detected by the first primitive event detector and when a hit event is detected by the event detector.
44. The apparatus of claim 27 , wherein the event detector is implemented as a state machine.
45. A method for detecting an event of interest in a sports game, the method comprising:
generating a stream of first primitive events using a sensor data stream, the sensor data stream carrying kinematic data and an associated time stamp as a raw data at a sensor data rate, the raw data being associated to one or more kinematic properties determined for multiple observed objects at the time indicated by the time stamp using one or more sensors, wherein a data rate of the stream of first primitive events is lower than the sensor data rate;
generating a stream of different second primitive events using the sensor data stream, wherein a data rate of the stream of the second primitive events is lower than the sensor data rate; and
determining the event of interest using the streams of the first and second primitive events.
46. An analysis framework for analyzing raw data portions being transmitted in a sensor data stream at a sensor data rate to identify at least one event of interest in a sports game, each raw data portion being associated to one or more kinematic properties and an associated time stamp determined for an observed object at the time indicated by the time stamp using one or more sensors, the analysis framework comprising:
an input layer comprising at least two or more primitive event detectors for generating at least a first and second stream of primitive events using exclusively the sensor data stream as an input wherein a data rate of the stream of first and second primitive events is lower than the sensor data rate; and
one or more event layers comprising one or more event detectors for detecting an event of interest,
wherein any one of the one or more event detectors uses only the streams of the first and the second primitive events or a stream of other events as provided by another one of the event detectors as an input.
47. The analysis framework of claim 46 , wherein the one or more event detectors of the one or more event layers are connected with the at least two or more primitive event detectors of the input layer via a network.
48. The analysis framework of claim 47 , wherein the network is a wired network.
49. The analysis framework of claim 47 , wherein a communication in the network is based on the Internet Protocol.
50. The analysis framework of claim 46 , wherein first and second primitive event detectors are operable to exclusively use kinematic data of an observed object as the raw data.
51. A computer program for performing, when running on a computer, a method for detecting an event of interest in a sports game, the method comprising:
generating a stream of first primitive events using a sensor data stream, the sensor data stream carrying kinematic data and an associated time stamp as a raw data at a sensor data rate, the raw data being associated to one or more kinematic properties determined for multiple observed objects at the time indicated by the time stamp using one or more sensors, wherein a data rate of the stream of first primitive events is lower than the sensor data rate;
generating a stream of different second primitive events using the sensor data stream, wherein a data rate of the stream of the second primitive events is lower than the sensor data rate; and
determining the event of interest using the streams of the first and second primitive events.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/EP2011/069166 WO2013064174A1 (en) | 2011-10-31 | 2011-10-31 | Apparatus and method for analyzing sensor data |
Publications (1)
Publication Number | Publication Date |
---|---|
US20150051719A1 true US20150051719A1 (en) | 2015-02-19 |
Family
ID=44925518
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/355,109 Abandoned US20150051719A1 (en) | 2011-10-31 | 2011-10-31 | Apparatus and Method for Analyzing Sensor Data |
Country Status (7)
Country | Link |
---|---|
US (1) | US20150051719A1 (en) |
EP (1) | EP2774339A1 (en) |
JP (1) | JP5970074B2 (en) |
CN (1) | CN104025537A (en) |
AU (1) | AU2011380291B2 (en) |
BR (1) | BR112014010332A2 (en) |
WO (1) | WO2013064174A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11610399B2 (en) * | 2018-09-27 | 2023-03-21 | Intel Corporation | Highlight moment identification technology in volumetric content creation systems |
US20230319526A1 (en) * | 2018-06-14 | 2023-10-05 | Sumitomo Electric Industries, Ltd. | Wireless sensor system, wireless terminal device, communication control method and communication control program |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102013112317A1 (en) * | 2013-11-08 | 2015-05-13 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for automatically evaluating a course of a training exercise |
US9824112B1 (en) * | 2014-02-18 | 2017-11-21 | Google Inc. | Creating event streams from raw data |
US11964187B2 (en) * | 2017-01-26 | 2024-04-23 | Telefonaktiebolaget Lm Ericsson (Publ) | Detection systems and methods |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040194129A1 (en) * | 2003-03-31 | 2004-09-30 | Carlbom Ingrid Birgitta | Method and apparatus for intelligent and automatic sensor control using multimedia database system |
US20070015583A1 (en) * | 2005-05-19 | 2007-01-18 | Louis Tran | Remote gaming with live table games |
US20080150787A1 (en) * | 2006-12-20 | 2008-06-26 | Cummings Steven T | Multiple sensor processing |
US20090262137A1 (en) * | 2008-01-10 | 2009-10-22 | Walker Jay S | Systems and methods for presenting prediction in a broadcast |
US20100256948A1 (en) * | 2006-03-20 | 2010-10-07 | Riform Pty Ltd. | Proximity Recording Device and Method |
US20100321183A1 (en) * | 2007-10-04 | 2010-12-23 | Donovan John J | A hierarchical storage manager (hsm) for intelligent storage of large volumes of data |
US20110304497A1 (en) * | 2008-12-05 | 2011-12-15 | Nike, Inc. | Athletic Performance Monitoring Systems and Methods in a Team Sports Environment |
US9094615B2 (en) * | 2004-04-16 | 2015-07-28 | Intheplay, Inc. | Automatic event videoing, tracking and content generation |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001104533A (en) * | 1999-10-05 | 2001-04-17 | Mitsubishi Electric Corp | Device for aiding to judge offside |
ITRM20010045A1 (en) * | 2001-01-29 | 2002-07-29 | Consiglio Nazionale Ricerche | SYSTEM AND METHOD FOR DETECTING THE RELATIVE POSITION OF AN OBJECT COMPARED TO A REFERENCE POINT. |
JP2003000788A (en) * | 2001-06-25 | 2003-01-07 | It Gem:Kk | Golf playing system by ball position information and managing the information, and method for playing golf |
US6691032B1 (en) * | 2002-09-09 | 2004-02-10 | Groundspeak, Inc. | System and method for executing user-definable events triggered through geolocational data describing zones of influence |
US20070043803A1 (en) * | 2005-07-29 | 2007-02-22 | Microsoft Corporation | Automatic specification of semantic services in response to declarative queries of sensor networks |
ITRM20060110A1 (en) * | 2006-03-03 | 2007-09-04 | Cnr Consiglio Naz Delle Ricerche | METHOD AND SYSTEM FOR THE AUTOMATIC DETECTION OF EVENTS IN SPORTS ENVIRONMENT |
US9025021B2 (en) * | 2006-09-11 | 2015-05-05 | Intheplay, Inc. | System and methods for translating sports tracking data into statistics and performance measurements |
JP2008211781A (en) * | 2007-02-05 | 2008-09-11 | Mitsubishi Electric Research Laboratories Inc | System for modeling movement of objects in certain environment and method executed by computer |
EP2195102A1 (en) * | 2007-09-14 | 2010-06-16 | Christian Züger | A system for capturing tennis match data |
US7671802B2 (en) * | 2008-03-17 | 2010-03-02 | Disney Enterprises, Inc. | Active player tracking |
-
2011
- 2011-10-31 EP EP11781484.8A patent/EP2774339A1/en not_active Ceased
- 2011-10-31 WO PCT/EP2011/069166 patent/WO2013064174A1/en active Application Filing
- 2011-10-31 CN CN201180074598.3A patent/CN104025537A/en active Pending
- 2011-10-31 AU AU2011380291A patent/AU2011380291B2/en active Active
- 2011-10-31 JP JP2014539247A patent/JP5970074B2/en active Active
- 2011-10-31 BR BR112014010332A patent/BR112014010332A2/en not_active Application Discontinuation
- 2011-10-31 US US14/355,109 patent/US20150051719A1/en not_active Abandoned
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040194129A1 (en) * | 2003-03-31 | 2004-09-30 | Carlbom Ingrid Birgitta | Method and apparatus for intelligent and automatic sensor control using multimedia database system |
US9094615B2 (en) * | 2004-04-16 | 2015-07-28 | Intheplay, Inc. | Automatic event videoing, tracking and content generation |
US20070015583A1 (en) * | 2005-05-19 | 2007-01-18 | Louis Tran | Remote gaming with live table games |
US20100256948A1 (en) * | 2006-03-20 | 2010-10-07 | Riform Pty Ltd. | Proximity Recording Device and Method |
US20080150787A1 (en) * | 2006-12-20 | 2008-06-26 | Cummings Steven T | Multiple sensor processing |
US20100321183A1 (en) * | 2007-10-04 | 2010-12-23 | Donovan John J | A hierarchical storage manager (hsm) for intelligent storage of large volumes of data |
US20090262137A1 (en) * | 2008-01-10 | 2009-10-22 | Walker Jay S | Systems and methods for presenting prediction in a broadcast |
US20110304497A1 (en) * | 2008-12-05 | 2011-12-15 | Nike, Inc. | Athletic Performance Monitoring Systems and Methods in a Team Sports Environment |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230319526A1 (en) * | 2018-06-14 | 2023-10-05 | Sumitomo Electric Industries, Ltd. | Wireless sensor system, wireless terminal device, communication control method and communication control program |
US11930431B2 (en) * | 2018-06-14 | 2024-03-12 | Sumitomo Electric Industries, Ltd. | Wireless sensor system, wireless terminal device, communication control method and communication control program |
US11610399B2 (en) * | 2018-09-27 | 2023-03-21 | Intel Corporation | Highlight moment identification technology in volumetric content creation systems |
Also Published As
Publication number | Publication date |
---|---|
JP2015505681A (en) | 2015-02-26 |
WO2013064174A1 (en) | 2013-05-10 |
AU2011380291B2 (en) | 2015-03-12 |
EP2774339A1 (en) | 2014-09-10 |
JP5970074B2 (en) | 2016-08-17 |
BR112014010332A2 (en) | 2017-04-18 |
AU2011380291A1 (en) | 2014-04-17 |
CN104025537A (en) | 2014-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10707908B2 (en) | Method, apparatus, and computer program product for evaluating performance based on real-time data for proximity and movement of objects | |
JP7289080B2 (en) | Ball game video analysis device and ball game video analysis method | |
US20150051719A1 (en) | Apparatus and Method for Analyzing Sensor Data | |
US20100030350A1 (en) | System and Method for Analyzing Data From Athletic Events | |
US11514590B2 (en) | System and method for object tracking | |
US11710316B2 (en) | System and method for object tracking and metric generation | |
JP6484858B2 (en) | Image processing apparatus and image processing method | |
US20140125806A1 (en) | Sports Apparatus and Method | |
KR20200085803A (en) | Golf ball tracking system | |
JP2023547207A (en) | 3D object tracking using unverified detections registered by one or more sensors | |
US9486693B2 (en) | Sports data collection and presentation | |
CN112437487B (en) | Position positioning method, event identification method, device and computer equipment | |
JP7118253B2 (en) | A system for determining game scenarios in sports games | |
WO2020255948A1 (en) | Play analysis device, play analysis method, and computer program | |
Seidl et al. | Validation of football's velocity provided by a radio-based tracking system | |
EP2772772B1 (en) | Apparatus, method and computer program for providing a virtual boundary | |
EP2894603A1 (en) | Sports system and method | |
WO2019166850A1 (en) | Ball detection for a ball game | |
TW201723971A (en) | Method and system for live determining of a sports device | |
EP4196957A1 (en) | System and method for object tracking and metric generation | |
WO2022056315A1 (en) | System and method for capture and analysis of sporting performance data and broadcast of the same | |
EP4366844A1 (en) | Automated offside detection and visualization for sports |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: FRAUNHOFER-GESELLSCHAFT ZUR FOERDERUNG DER ANGEWAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:MUTSCHLER, CHRISTOPHER;FRANKE, NORBERT;WOLF, DANIEL;AND OTHERS;SIGNING DATES FROM 20140411 TO 20140806;REEL/FRAME:033718/0104 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |