EP2774339A1 - Apparatus and method for analyzing sensor data - Google Patents

Apparatus and method for analyzing sensor data

Info

Publication number
EP2774339A1
EP2774339A1 EP11781484.8A EP11781484A EP2774339A1 EP 2774339 A1 EP2774339 A1 EP 2774339A1 EP 11781484 A EP11781484 A EP 11781484A EP 2774339 A1 EP2774339 A1 EP 2774339A1
Authority
EP
European Patent Office
Prior art keywords
event
primitive
sensor data
stream
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.)
Ceased
Application number
EP11781484.8A
Other languages
German (de)
French (fr)
Inventor
Christopher Mutschler
Norbert Franke
Daniel Wolf
Nicolas Witt
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Original Assignee
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV filed Critical Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Publication of EP2774339A1 publication Critical patent/EP2774339A1/en
Ceased legal-status Critical Current

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F9/00Games not otherwise provided for
    • A63F9/24Electric games; Games using electronic circuits not otherwise provided for
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0639Performance analysis of employees; Performance analysis of enterprise or organisation operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network 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.
  • 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.
  • the aforementioned locating or position tracking systems may be based on various tech- nologies. For example, 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 pro- prises a large amount of sensor data.
  • tracking a ball of a soccer game with an accuracy of roughly 3cm may require to estimate the position of the ball up around 2000 times per second, assuming a maximum speed of the ball of about 150km/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 distrib- uted 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 pro- Determind 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 occur- rence 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 analy- sis 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 in- dicate 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. 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.
  • 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.
  • Figure 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 8a - 8e for generating a stream of primitive events using exclusively the sensor data stream 4 as an input. That is, only the primitive event detectors 8a - 8e 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 8b and a second primitive event detector 8 c generate a first stream of primitive events 10b and a second stream of primitive events 10c 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 10b and 10c of the first and second primitive event detectors 8b and 8c.
  • Stream 10b 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 differ- ent 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 in- dicating a flow of information or a dependency of on event detector from another.
  • Figure 2 schematically shows an embodiment of a method for detecting an event of inter- est 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 gen- erated, 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 figure 6 below.
  • Figures 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.
  • Figures 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 figures 3 and 4 may not show all interrelations and links between the event detectors or the decision making entities of the individual hierarchical levels. Figures 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.
  • Figure 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 figure 5. From the presence of the ball inside the play- field, it can be concluded that 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. In the same way it is concluded that the shot was directed to the goal by event 52.
  • Figure 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 figure 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 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.
  • the fact that a particular player is in control of the ball can be derived from the information that the ball receives several accelerations, when one and the same player is in possession of the ball.
  • 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. Again, the complex information determined or analyzed in figure 4 is based on only few appropriately chosen and defined primitive events.
  • Figure 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 calcula- tions, 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 detec- tor could, for example, be implemented as a state machine, as shown in more detail in figure 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. In other words, a conventional approach would require, for each defined region:
  • 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
  • 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.
  • Figure 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.
  • Upon occurrence of event A the state machine transits into state 106 from where it trans- its 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 nonvolatile storage.
  • DSP digital signal processor
  • ASIC application specific integrated circuit
  • FPGA field programmable gate array
  • ROM read only memory
  • RAM random access memory
  • nonvolatile 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.
  • the following claims are hereby incorporated into the Detailed Description, where each claim may stand on its own as a separate embodiment.
  • 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)
  • Educational Administration (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Game Theory and Decision Science (AREA)
  • Computing Systems (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Physics & Mathematics (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 (8b) for generating a stream of first primitive events (10b) using a sensor data stream (4), the sensor data stream (4) carrying raw data at a sensor data rate, the raw data being as- sociated 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 (10b) is lower than the sensor data rate as well as a second primitive event detector (8c) for gen¬ erating a stream of different second primitive events (10c) using the sensor data stream (4), wherein a data rate of the stream of the second primitive events (10c) is lower than the sensor data rate. An event detector (16) is operable to determine the event of interest using the streams (10b, 10c) of the first and second primitive events.

Description

Apparatus and Method for analyzing sensor data
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.
Background 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 tech- nologies. 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 pro- duces a large amount of sensor data. For example, tracking a ball of a soccer game with an accuracy of roughly 3cm may require to estimate the position of the ball up around 2000 times per second, assuming a maximum speed of the ball of about 150km/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 distrib- uted 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.
Summary
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 pro- cessed 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 occur- rence 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 analy- sis 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 in- dicate 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.
Brief description of the Figures
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.
Figure 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. 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 the framework 2 comprises several primitive event detectors 8a - 8e for generating a stream of primitive events using exclusively the sensor data stream 4 as an input. That is, only the primitive event detectors 8a - 8e 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 8b and a second primitive event detector 8 c generate a first stream of primitive events 10b and a second stream of primitive events 10c 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. For example, event detector 16 determines an event of interest using the streams 10b and 10c of the first and second primitive event detectors 8b and 8c. Stream 10b 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 differ- ent 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 in- dicating a flow of information or a dependency of on event detector from another.
Figure 2 schematically shows an embodiment of a method for detecting an event of inter- est 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.
In a first primitive event generation step 20, a stream of first primitive events 22 is gen- erated, wherein a data rate of the stream of first primitive events 22 is lower than the sensor data rate. In a second primitive event generation step 24, 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. In 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.
To this end, event detectors may, for example, be implemented as state machines as it will be shown in figure 6 below. Figures 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.
Figures 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 figures 3 and 4 may not show all interrelations and links between the event detectors or the decision making entities of the individual hierarchical levels. Figures 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.
Figure 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, a line 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 a region event 44. The identification of a particular region is elaborated on in more detail in the description of figure 5. From the presence of the ball inside the play- field, it can be concluded that 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. In the same way it is concluded that the shot was directed to the goal by event 52. Addition- al 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 from figure 3, the final complex information is gathered from only few but appropriately chosen primitive events. Figure 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 figure 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 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. The fact that a particular player is in control of the ball, as denoted by reference 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. 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. Finally, a double pass 64 may be determined by 2 subsequent passes between the same players. Again, the complex information determined or analyzed in figure 4 is based on only few appropriately chosen and defined primitive events.
Figure 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. Using a cartesian co- ordinate system as indicated in figure 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 calcula- tions, such as for example the determination of a determinate.
Using a conventional approach to determine, whether the ball 72 is located inside region 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 deter- minate had to be computed for each of the 4 edges of region 74 in order to conclude that the ball 72 is inside the region 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 of region 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 in fig. 5, 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.
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 76, 78 and 80 will be able to generate an event indicating that ball 72 is now in region 74. The event detec- tor could, for example, be implemented as a state machine, as shown in more detail in figure 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.
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 figure 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
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.
Figure 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. When 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. Upon occurrence of event A, the state machine transits into state 106 from where it trans- its to state 108 upon occurrence of event B. After occurrence of event C the state machine transits to its final state 102 and determines its associated event. From both states 106 and 108 the machine is reinitialized to its 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 of figure 6, the order of the occurrence of the signals A to C is of importance to arrive at the final 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 in- vention 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 nonvolatile 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

Claims
1. Apparatus for detecting an event of interest (30; 102), comprising: A first primitive event detector (8b) for generating a stream of first primitive events (10b) 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 (10b) is lower than the sensor data rate;
A second primitive event detector (8c) for generating a stream of different second primitive events (10c) using the sensor data stream (4), wherein a data rate of the stream of the second primitive events (10c) is lower than the sensor data rate; and An event detector (16; 100) operable to determine the event of interest (30; 102) using the streams (10b, 10c) of the first and second primitive events.
2. The apparatus according to claim 1, wherein the first and second primitive event detectors (8b, 8c) are operable to exclusively use kinematic data as the raw data.
3. The apparatus according to claim 2, wherein the kinematic data comprises position information, velocity information and acceleration information of an observed object.
4. The apparatus according to any of the previous claims, wherein the first and second primitive event detectors (8b, 8c) are operable to exclusively use the sensor data stream (4) as an input.
5. The apparatus according to any of the previous claims, 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.
6. The apparatus according to claim 5, wherein the predetermined neighborhood is defined by a predetermined maximum distance between the first observed object and the second observed object.
7. The apparatus according to any of the previous claims, 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.
8. The apparatus according to any of the previous claims, 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.
9. The apparatus according to any of the previous claims, 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.
10. The apparatus according to claim 9, 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.
11. The apparatus according to any of the previous claims, 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.
12. The apparatus according to claim 11, 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.
13. The apparatus according to any of the previous claims, wherein a line crossing- event is generated as the first or the second primitive event, when a component of a posi- tion information of the first or the second observed object exceeds or falls below a predetermined threshold.
14. The apparatus according to any of the previous claims, wherein a hit- event is detected as the event of interest (30; 102) when the first primitive event detector (8b) detects a proximity event for the first object and the second object and when the second primitive event detector (8c) detects a direction change event for the second object, the hit event indicating that the second object was hit by the first object.
15. The apparatus according to any of the previous claims, further comprising a further event detector (18) for detecting a further event of interest (30; 102) using the first primitive event and the event of interest.
16. The apparatus according to claim 15, wherein an object possession event is gen- erated as the further event of interest (30; 102) when a proximity event is detected by the first primitive event detector (8b) and when a hit event is detected by the event detector (16).
17. The apparatus according to claim 15, wherein an object loss event is generated as the further event of interest (30; 102) when a remote event is detected by the first primitive event detector (8b) and when a hit event is detected by the event detector (16).
18. The apparatus according to of the previous claims, wherein the event detector (16; 100) is implemented as a state machine (100).
19. Method for detecting an event of interest (30; 102), comprising:
Generating a stream of first primitive events (10b; 20) using a sensor data stream (4), the sensor data stream (4) carrying raw data at a sensor data rate, the raw data being associat- ed to one or more properties determined for multiple observed objects using one or more sensors, wherein a data rate of the stream of first primitive events (10b; 20) is lower than the sensor data rate; generating a stream of different second primitive events (10c; 26) using the sensor data stream (4), wherein a data rate of the stream of the second primitive events (10c; 26) is lower than the sensor data rate; and determining the event of interest (30; 102) using the streams of the first and second primitive events.
20. An analysis framework 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 (30; 102), each raw data portion being associated to one or more properties determined for an observed objects using one or more sensors, the analysis framework comprising:
An input layer (6) comprising at least two or more primitive event detectors (8a - 8e) for generating at least a first (10b) and second (10c) stream of primitive events using exclu- sively the sensor data stream (4) as an input; and one or more event layers (12, 14) comprising one or more event detectors (16, 18) for detecting an event of interest (30; 102), wherein any one of the one or more event detectors (16, 18) uses only the streams of the first and the second primitive events (18b, 10c) or a stream of other events as provided by another one of the event detectors (16) as an input.
21. The analysis framework of claim 20, wherein the one or more event detectors of the one or more event layers (12, 14) are connected with the at least two or more primi- tive event detectors (8b, 8c) of the input layer (6) via a network.
22. The analysis framework of claim 21, wherein the network is a wired network.
23. The analysis framework of claim 21 or 22, wherein a communication in the net- work is based on the Internet Protocol.
24. The analysis framework of any of claims 20 to 24, wherein a data rate of the first and second streams of primitive events (10b, 10c) is lower than the sensor data rate.
25. The analysis framework of any of claims 20 to 24, wherein first and second primitive event detectors (8b, 8c) are operable to exclusively use kinematic data of an observed object as the raw data.
26. Computer program for performing, when running on a computer, the method of claim 19.
EP11781484.8A 2011-10-31 2011-10-31 Apparatus and method for analyzing sensor data Ceased EP2774339A1 (en)

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
EP2774339A1 true EP2774339A1 (en) 2014-09-10

Family

ID=44925518

Family Applications (1)

Application Number Title Priority Date Filing Date
EP11781484.8A Ceased EP2774339A1 (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)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
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
JP6888732B2 (en) * 2018-06-14 2021-06-16 住友電気工業株式会社 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

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008033338A2 (en) * 2006-09-11 2008-03-20 Aman James A System and methods for translating sports tracking data into statistics and performance measurements

Family Cites Families (17)

* Cited by examiner, † Cited by third party
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
US8614741B2 (en) * 2003-03-31 2013-12-24 Alcatel Lucent Method and apparatus for intelligent and automatic sensor control using multimedia database system
CA2563478A1 (en) * 2004-04-16 2005-10-27 James A. Aman Automatic event videoing, tracking and content generation system
EP1901822A2 (en) * 2005-05-19 2008-03-26 Image Fidelity Llc. Remote gaming with live table games
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
US20100256948A1 (en) * 2006-03-20 2010-10-07 Riform Pty Ltd. Proximity Recording Device and Method
US7508335B2 (en) * 2006-12-20 2009-03-24 Raytheon Company Multiple sensor processing
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
US8882613B2 (en) * 2007-09-14 2014-11-11 Kitris Ag System for capturing tennis match data
US8013738B2 (en) * 2007-10-04 2011-09-06 Kd Secure, Llc 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
US7671802B2 (en) * 2008-03-17 2010-03-02 Disney Enterprises, Inc. Active player tracking
US8231506B2 (en) * 2008-12-05 2012-07-31 Nike, Inc. Athletic performance monitoring systems and methods in a team sports environment

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008033338A2 (en) * 2006-09-11 2008-03-20 Aman James A System and methods for translating sports tracking data into statistics and performance measurements

Also Published As

Publication number Publication date
JP2015505681A (en) 2015-02-26
AU2011380291B2 (en) 2015-03-12
WO2013064174A1 (en) 2013-05-10
BR112014010332A2 (en) 2017-04-18
JP5970074B2 (en) 2016-08-17
CN104025537A (en) 2014-09-03
AU2011380291A1 (en) 2014-04-17
US20150051719A1 (en) 2015-02-19

Similar Documents

Publication Publication Date Title
US9839809B2 (en) Method, apparatus, and computer program product for determining play events and outputting events based on real-time data for proximity, movement of objects, and audio data
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
JP2023547207A (en) 3D object tracking using unverified detections registered by one or more sensors
US11972579B1 (en) System, method and apparatus for object tracking and human pose estimation
US9486693B2 (en) Sports data collection and presentation
US11710316B2 (en) System and method for object tracking and metric generation
JP7118253B2 (en) A system for determining game scenarios in sports games
CN112437487A (en) Position positioning method, event identification method, device and computer equipment
WO2020255948A1 (en) Play analysis device, play analysis method, and computer program
EP2772772B1 (en) Apparatus, method and computer program for providing a virtual boundary
Cheng et al. Court-divisional team motion and player performance curve based automatic game strategy data acquisition for volleyball analysis
TW201723971A (en) Method and system for live determining of a sports device
EP2894603A1 (en) Sports system and method
EP4196957A1 (en) System and method for object tracking and metric generation

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20140326

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

DAX Request for extension of the european patent (deleted)
17Q First examination report despatched

Effective date: 20151001

REG Reference to a national code

Ref country code: DE

Ref legal event code: R003

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN REFUSED

18R Application refused

Effective date: 20170501