EP1731097A2 - Activity recognition apparatus, method and program - Google Patents
Activity recognition apparatus, method and program Download PDFInfo
- Publication number
- EP1731097A2 EP1731097A2 EP06011895A EP06011895A EP1731097A2 EP 1731097 A2 EP1731097 A2 EP 1731097A2 EP 06011895 A EP06011895 A EP 06011895A EP 06011895 A EP06011895 A EP 06011895A EP 1731097 A2 EP1731097 A2 EP 1731097A2
- Authority
- EP
- European Patent Office
- Prior art keywords
- activity
- subject
- sensors
- sensor unit
- accelerations
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/10—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
- G01C21/12—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
- G01C21/16—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
- G01C21/183—Compensation of inertial measurements, e.g. for temperature effects
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/06—Devices, other than using radiation, for detecting or locating foreign bodies ; determining position of probes within or on the body of the patient
- A61B5/061—Determining position of a probe within the body employing means separate from the probe, e.g. sensing internal probe position employing impedance electrodes on the surface of the body
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/103—Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
- A61B5/1036—Measuring load distribution, e.g. podologic studies
- A61B5/1038—Measuring plantar pressure during gait
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/103—Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
- A61B5/11—Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb
- A61B5/1118—Determining activity level
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/103—Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
- A61B5/11—Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb
- A61B5/1123—Discriminating type of movement, e.g. walking or running
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C22/00—Measuring distance traversed on the ground by vehicles, persons, animals or other moving solid bodies, e.g. using odometers, using pedometers
- G01C22/006—Pedometers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
- G06V40/23—Recognition of whole body movements, e.g. for sport training
- G06V40/25—Recognition of walking or running movements, e.g. gait recognition
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B2562/00—Details of sensors; Constructional details of sensor housings or probes; Accessories for sensors
- A61B2562/02—Details of sensors specially adapted for in-vivo measurements
- A61B2562/0219—Inertial sensors, e.g. accelerometers, gyroscopes, tilt switches
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/72—Signal processing specially adapted for physiological signals or for diagnostic purposes
- A61B5/7235—Details of waveform analysis
- A61B5/7264—Classification of physiological signals or data, e.g. using neural networks, statistical classifiers, expert systems or fuzzy systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2218/00—Aspects of pattern recognition specially adapted for signal processing
- G06F2218/12—Classification; Matching
Definitions
- the present invention relates to an apparatus, method, program and storage medium for activity recognition. More specifically, the present invention relates to an activity recognition apparatus, an activity recognition method, a program to cause a computer to perform such a method, a storage medium or memory storing such a program, and a signal coded to cause a computer to perform such a method.
- Non-patent Document 5 Human activity classification has been attempted with cameras, microphones (Non-patent Document 5), inertial sensors (Non-patent Document 4), and goniometers. For each sensor or combination of sensors, researchers have also developed custom algorithms that to varying degrees can classify activity. Since one part of human activity classification is obtaining accurate measurements of human motion, the technology used overlaps with methods used for character animation, kinesiology and biomechanics. However, since the inventor of the present application are addressing the problem of how to determine and classify human activities in a mobile and unconstrained context, all except a few sensor modalities are appropriate.
- Non-patent Document 10 One set of such constrained methods involves monitoring the subject with static cameras or wearable cameras (Non-patent Document 10). Often optical markers are attached to the subject's body to simplify visual tracking. The subject's movement can be inferred from the movement of the markers through an inverse-kinematic model.
- Non-patent Document 2 There also examples where researchers have tried using microphones (both on the body and in the environment) to automatically determine a user's activity (see Non-patent Document 2 and Non-patent Document 9).
- major advantages of motion sensors are lower data rate (which translates to much lower computational requirements) and the ability to measure only the motion of the user.
- sounds caused by the user's activities are mixed with an ever-changing background of environmental sounds. Separation of these foreground and background is an unsolved problem which does not arise when using motion sensors.
- This set of methods involves attaching sensors directly to the subject's body so as to measure the angles of the subject's joint.
- Possible sensor's are potentiometers and rotational encoders (which both require an exoskeleton to transmit the changes in a subject's joint angles to the sensor), bend sensors (strips of material that are sensitive to bending and flexing), and inertial sensors (accelerometers and gyros, which essentially measure changes in velocity via Newton's First Law of Motion).
- goniometers are often used to measure angles with respect to gravity.
- inertial sensors and tilt sensors can be used to measurement of a subject's movements without requiring extensive modifications to clothing (for exoskeletons or strips of flex-sensitive material) or requiring special attachments.
- inertial sensors can be completely enclosed inside another device that user can simply hold or carry in a pocket or bag, thus making these sensors attractive for use in mobile devices or as self-contained devices.
- Patent Document 7 Non-patent Document 8
- Patent Document 1 Patent Document 2
- inertial sensors have no notion of the subject's frame of reference and measurements are always relative to the physical sensor.
- an activity recognition apparatus for determining an activity of a subject.
- the activity recognition apparatus includes: a sensor unit including a plurality of linear motion sensors configured to detect linear motions and a plurality of rotational motion sensors, the linear motions being orthogonal to each other, the rotational motions being orthogonal to each other; and a computational unit configured to receive and process signals from the sensors included in the sensor unit so as to determine an activity of the subject.
- the sensor unit is directly or indirectly supported by the subject with an arbitrary orientation with respect to the subject; and the computational unit performs processing that uses the signals from both linear motion sensors and rotational motion sensors to determine the activity independent of the orientation of the sensor unit.
- an activity recognition method of determining an activity of a subject includes: sampling accelerations in three orthogonal axes and angular velocities around the three orthogonal axes; and determining an activity of the subject using all the sampled accelerations and angular velocities.
- the accelerations and angular velocities are detected by sensors integrated into a single unit, which is directly or indirectly supported by the subject with an arbitrary orientation with respect to the subject; and the determination of activity is performed by using both the accelerations and angular velocities to determine the activity independent of the orientation of the sensor unit.
- a program that causes a computer to perform activity recognition by determining an activity of a subject, or a recoding medium that store such a program, or a signal coded to cause a computer to perform such a program.
- the program includes: receiving data of accelerations in three orthogonal axes and angular velocities around the three orthogonal axes; and determining an activity of the subject using all the received data of accelerations and angular velocities.
- the accelerations and angular velocities are detected by sensors integrated into a single unit, which is directly or indirectly supported by the subject with an arbitrary orientation with respect to the subject; and the determination of activity is performed by using both the accelerations and angular velocities to determine the activity independent of the orientation of the sensor unit.
- the sensor unit is directly or indirectly supported by the subject with arbitrary orientation.
- the signals from the sensor unit do not have any information about the sensor's orientation with respect to the coordinates of the subject.
- different movements of the entire sensor unit correspond with different activities of the subject.
- the activity of the subject can be determined independent of the sensor unit's orientation by detecting the movement of the entire sensor unit and by associating the detected movement with a corresponding activity of the subject or a corresponding motion signature that associated with the activity.
- FIG. 1 shows a configuration example of an activity recognition apparatus for determining an activity of a subject in accordance with an embodiment of the present invention.
- the apparatus includes a sensor unit 10 and a computational unit 20.
- the sensor unit 10 includes a plurality of linear motion sensors configured to detect linear motions and a plurality of rotational motion sensors, the linear motions being orthogonal to each other, the rotational motions being orthogonal to each other.
- the computational unit 20 is configured to receive and process signals from the sensors included in the sensor unit so as to output an activity of the subject.
- the sensor unit 10 is directly or indirectly supported by the subject with an arbitrary orientation with respect to the subject.
- the computational unit 20 performs a calculation that uses the signals from both linear motion sensors and rotational motion sensors to determine the activity independent of the orientation of the sensor unit.
- the plurality of linear motion sensors may be three accelerometers for measuring accelerations in three orthogonal axes, and the plurality of rotational motion sensors may be three gyro sensors for measuring angular velocities around the three orthogonal axes.
- the computational unit 20 may use six outputs from the accelerometers and the gyro sensors to determine a current activity of the subject.
- the computational unit may includes; a buffer configured to store an observation sequence formed of a plurality set of the sensor outputs for a predetermined period of time; a storage configured to store a plurality of reference sequences, the reference sequences corresponding to motion signatures of different activities; and a matching processor configured to match the observation sequence against the reference sequences to find a best matched reference sequence. Further, the matching processor may find an optimal rotation and temporal correspondence between the observation sequence and one of the reference sequences so as to obtain the best matched reference sequence.
- the reference sequence may include a plurality of vectors representing states in Hidden Markov Model; and the matching between the observation sequence and the reference sequence may be performed using Viterbi algorithm so as to obtain an optimal state path.
- the computational unit may further detect a rate of the subject's gait by calculating an autocorrelation of the signals from the linear motion sensors and an autocorrelation of the signals from the rotation motion sensors, and summing these autocorrelations to obtain a summary autocorrelation function; and the summary autocorrelation function may be used to determine the rate of the subject's gait.
- the computational unit may further detect a rotation of the sensor unit by calculating a first rotation by integrating the signals from the rotational motion sensors, calculating a second rotation by using a gravitation model and the signals from the linear motion sensors, and performing weighted interpolation of the first and second rotation. Further, the weight for the first rotation is larger if variations in the signals from the rotational motion sensors are smaller; and the weight for the second rotation is larger if variations in the signals from the linear motion sensors are smaller.
- the activity recognition apparatus may further include a storage configure to store reference motion signatures and corresponding locations for a reference activity.
- the computational unit may further detect a location of the sensor unit on the subject by determining if a current activity represented with the signals from the sensors is the reference activity, and, if the current activity is the reference activity, matching a motion signature corresponding to the current activity against the reference motion signature so as to determine a location of the sensor unit, which corresponds to a best matched reference motion signature.
- an activity recognition method of determining an activity of a subject includes: sampling accelerations in three orthogonal axes and angular velocities around the three orthogonal axes; and determining an activity of the subject using all the sampled accelerations and angular velocities. Furthermore, the accelerations and angular velocities are detected by sensors integrated into a single unit, which is directly or indirectly supported by the subject with an arbitrary orientation with respect to the subject; and the determination of activity is performed by using both the accelerations and angular velocities to determine the activity independent of the orientation of the sensor unit.
- a program that causes a computer to perform activity recognition by determining an activity of a subject.
- the program includes: receiving data of accelerations in three orthogonal axes and angular velocities around the three orthogonal axes; and determining an activity of the subject using all the received data of accelerations and angular velocities.
- the accelerations and angular velocities are detected by sensors integrated into a single unit, which is directly or indirectly supported by the subject with an arbitrary orientation with respect to the subject; and the determination of activity is performed by using both the accelerations and angular velocities to determine the activity independent of the orientation of the sensor unit.
- a system that is capable of activity recognition and includes a sensor unit and a computational unit.
- the sensor unit is "supported" by a human subject and the computational unit determines a type of current activity of the human subject based on the outputs from the sensor unit.
- a six degree-of-freedom (DOF) inertial sensor is employed as the sensor unit 10 to classify various common human activities in real-time.
- the term “the Sensor” indicates the 6-DOF inertial sensor
- the User denotes the human subject 1 who is either carrying or wearing the Sensor.
- the term “the Device” denotes the present system combining an inertial measurement unit (IMU) with the Sensor and the above-mentioned computational unit 20 for performing steps of methods for classification of the User's activity. Results of classification may be outputted or transfer to an application.
- IMU inertial measurement unit
- the present system defining characteristic is its ability to operate fully automatically almost anywhere on the human body with any sensor orientation.
- the system incorporates four distinct methods for different aspects of the User's activity and device state, each of which can be performed without posing any preconditions on the sensor orientation.
- the methods includes a method 21 for gait frequency measurement, a method 22 for localization of the Device on the User, a method 23 for motion tracking, and a method 24 for rotation-invariant Viterbi matching (see Figure 2).
- the Sensor may be supported or held by the User directly or indirectly.
- the following (nonexhaustive) manner of coupling may be possible:
- the present embodiment may also be applicable even in cases where the Sensor is coupled to the User with any arbitrary forms as long as the Sensor's motions have a relationship with the User's motions.
- the 6-DOF inertial sensor is composed of components that measure linear acceleration in the x-, y-, and z-directions and angular velocity around the x-, y-, and z-axis.
- the methods described hereafter can be trivially adapted to other schema for measuring 6-DOF.
- the system may include a sensor mote 10a and a computational unit 20 embedded in a host device 30a.
- the sensor mote 10a includes a 6-DOF inertial sensor 10a-1 and a wireless transmitter 10a-2 for transmitting sensor data to the computational unit 20a.
- a memory may be provided instead of the wireless transmitter 10a-2 for storing sensor data for a certain period of time. The stored data may be transferred to the computational unit 20a when the sensor mote 10a is connected to the host device 30a.
- the entire system including a 6-DOF inertial sensor 10b and a computational unit 20b may be embedded in a single host device 30b such as a cellphone or portable game apparatus as shown in Figure 3(b).
- Each sample from the Device's sensors contains the six values specified in Equations (1) and (2).
- the u(t) sensor values are linearly proportional to the acceleration of the Device along the i-, j-, and k-axes. These could be considered to be measured, for example, by MEMS accelerometer or similar devices.
- the v(t) sensor values are linearly proportional to the angular velocity of the Device around the i-, j-, and k-axes. These could be considered to be obtained, for example, from MEMS gyros or similar devices.
- Figure 4 shows all the measurements are made with respect to basis directions in the local coordinate system (i-j-k) of the Device itself.
- p(t) ⁇ R 3 is the position of the Device in any world coordinate system (e.g. x-y-z in Figure 4)
- g(t) ⁇ R 3 is the acceleration of the Earth's gravitational field in the local coordinate system
- q(t) ⁇ R 3 is the orientation of the Device in its local coordinate system
- a and B are 3-by-3 scaling matrices.
- the diagonal elements specify the scale-factors (also known as sensitivities) which convert the sensor output (e.g. a voltage) to standard physical units (e.g. m/s 2 and °/s).
- the off-diagonal elements describe the cross-talk between sensors due to slight misalignments (for example, the angle between the ⁇ and ⁇ gyros is not exactly 90°).
- the arbitrary offsets (also known as bias) exhibited by typical sensors are denoted by u 0 and v 0 .
- the sensor noise which includes the quantization noise, is specified for each sensor as a sequence of random variables, ⁇ u (t) and ⁇ v (t).
- Signal calibration involves determining the values of A, u 0 , B, v 0 . Depending on the actual components used inside the IMU, these values can be dependent on manufacturing conditions, ambient temperature, driving voltage, and so on. However, only the method for motion tracking require these parameters to be known. All of the other methods 21-22 and 24 given here can use uncalibrated sensor values.
- This Section describes our method for determining the User's activity, such as determining if the User is walking or running or not moving, and tracking the rate of his/her gait. This method is effective for any location of the device on the User's body. This method for gait detection and tracking involves tracking the period of repetitive movements apparent in the output of the acceleration sensors.
- a common method for detecting and measuring the periods of periodic signals is by finding peaks in the autocorrelation of the signal.
- u relates to the autocorrelation of the actual acceleration of the IMU, ⁇ 2 p
- Equation (10) ⁇ 1
- ⁇ 2 is a cross-correlation between acceleration and gravity.
- ⁇ 1 the average periodicities of the acceleration of the IMU and gravity
- ⁇ 2 the average periodicities of the acceleration and gravity.
- ⁇ 3 the average periodicities and hence their autocorrelations, ⁇ 1 , and cross-correlations, ⁇ 2 , will add constructively.
- the final term, ⁇ 3 contains correlations of the noise and the offset with various terms. These correlations will not exhibit any periodicities and will simply add noise and a constant bias to the final autocorrelation of Equation (10).
- the validity of the autocorrelation of the gyro sensor outputs, v follows exactly the same argument.
- T gait be the length of time for one gait analysis frame (e.g. interval of sensor data) and let r gait be the rate of gait analysis.
- N gait ⁇ T gait r IMU ⁇ is the number of vectors in one analysis frame.
- the Wiener-Khinchin Theorem is used to calculate a windowed autocorrelation.
- X[ ⁇ ] F ⁇ x ⁇ is its Discrete Fourier Transform (DFT)
- W[ ⁇ ] F ⁇ w ⁇ is the DFT of a windowing function (such as a Hamming window)
- x ⁇ x F W ⁇ X 2
- the peaks of the ACF correspond to the periods of any cyclic motion in the data. However, since the ACF will also contain peaks at integer multiples of the true period of any cycles, a peak pruning procedure similar to that introduced in Non-patent Document 11 is used to calculate an enhanced summary autocorrelation function (ESACF).
- This peak pruning technique is as follows: PRUNE-HARMONICS(SACF) returns ESACF 1. Clip the SACF to positive values. 2. Upsample and interpolate by a factor of two. 3. Subtract the upsampled version from the clipped original. 4. Clip to positive values again. 5. Repeat 2-4 for prime factors three, five, seven, etc.
- the goal of this procedure is to sequentially remove all multiples of each peak, thus leaving only the fundamental periods.
- the method 23 for tracking the down direction and heading continuously no matter how the orientation of the device changes or moves is provided. This method assumes that the output from the IMU has been calibrated.
- the 3-axis of gyro sensing data contains enough information to track the IMU's orientation.
- all gyros suffer from an accumulation of drift and other types of error.
- using just gyro information to track orientation while quite accurate in the short-term, leads to large tracking errors in the long term.
- the 3-axis of acceleration sensing data contains information about what direction Earth's gravity is pulling. Knowledge of the direction of the Earth's gravitational pull can be used to track the IMU's orientation drift-free with at most two degrees of freedom. The problem with just using the accelerometers in this fashion is that when the IMU is being acted on (moved by some outside force) the estimate of the Earth's gravitational pull is corrupted.
- This principle also applies to online re-zeroing of the gyro signal.
- Gyro measurements is re-zeroed when the gyro measurement is constant.
- this is also true when relying mostly on the acceleration measurements for tracking.
- Figure 6 shows the computational pipeline for the motion tracking method.
- Linear acceleration data 410 from the IMU 40 including the sensor is used to calculate the confidence 412 that only gravity is acting on the IMU 40 and as input into the Plumb Model 414 (explained later).
- Angular velocity data 420 from the IMU 40 is used to calculate the confidence 422 that the IMU 40 is not being rotated and as input into the Gyro Integration module 424.
- Both the Plumb Model 414 and the Gyro Integration 424 output separate estimates of the IMU's orientation, i.e. Q plumb and Q gyro (described later). Q plumb and Q gyro are then combined using the confidence scores to weight one versus the other (430) to perform weighted interpolation to calculate the estimated IMU orientation.
- the Gyro Integration computes an orientation relative to the orientation of the previous timestep and thus requires feedback.
- the Plumb Model 414 gives an absolute estimate of orientation and thus requires no feedback.
- the Plumb Model uses the Earth's gravitational pull to measure orientation, albeit only with two degrees of freedom.
- this module outputs the rotation that maps the current down vector to a unit reference vector, r, in the coordinate system of the IMU 40 (see Figure 4).
- This reference vector can be chosen arbitrarily, or during zeroing.
- the method 24 solves the problem of how to compare unsynchronized motion signatures that are collected using IMU's with unknown orientations. For example, a typical application would require matching a realtime signal to a database of motion signatures. However, the orientation of the IMU might be arbitrarily different from the orientation of the IMU used to generate the motion signatures in the database. Furthermore, the proper way to temporally align a test signal to the motion signatures in the database must be determined.
- a rotation-invariant Viterbi algorithm (RIVIT) according to the present embodiment is designed for the purpose of finding the optimal rotation and temporal correspondence between two motion signatures.
- sequences X and Y are T X and T Y , respectively.
- Figure 8(a) and Figure 8(b) show examples of two multi-dimensional sequences having possibly different lengths and an arbitrary rotation between them. This particular examples are sequences of motion signatures of a sitting action, but the IMU was oriented differently in each case. Further, the sitting motion in Figure 8(a) was faster than that of Figure 8(b).
- D R , C X , Y t r Y ⁇ R X C ′ Y ⁇ R X C over its free parameters which are a rotation matrix, R, and a correspondence matrix, C, where the symbol " ' " means a transverse matrix.
- a correspondence matrix is a special kind of projection matrix that maps the time dimension (columns) of X onto the time dimension (columns) of Y .
- T x - 1 ⁇ an integer in ⁇ 0, 1, ... , T Y - 1 ⁇ .
- Non-patent Document 1 The method used in here to minimize the expression (28) is called the coordinate descent method (Non-patent Document 1). It is a simple iterative method that is easily adapted for parallel computation. The idea is to minimize the error function along one single axis in each iteration. This greatly simplifies the minimization problem, as it can be seen, and when it is cycled through each axis, successively minimizing each coordinate, it is known that the Equation will converge to a local minimum. If there were no constraints on R and C then since D R,C (X, Y ) is convex this local minimum would also be the global minimum. However, there is constraints in the present embodiment so only localness is guaranteed. In the next Sections, it is described how to minimize the error function over each axis, R and C.
- R Q 0 0 Q
- Q 3-by-3 rotation matrix
- mapping function c(t) is calculated.
- the vectors of Y sequence represent the states in a Hidden Markov Model (HMM) with left-right topology.
- Sequence X is matched against the HMM using Viterbi algorithm to provide the optimal path sequence.
- Y i , X j ⁇ R X j ⁇ Y i ′ R X j ⁇ Y i
- K is an experimentally determined constant (approx. (100/128)Hz in our experiments) and ⁇ is some very small number.
- the transition probabilities may be determined by using training data.
- the standard Viterbi algorithm is used to find the optimal (maximum likelihood) state path, ⁇ s t * ⁇ through the HMM.
- the correspondence matrix can then be calculated directly from c(t) as stated above. It should be noted that, in an actual implementation, the matrix product XC is much more efficiently calculated by using c(t) directly to construct XC from X.
- the coordinate descent method like all descent methods, requires an initial value for at least one of the coordinates.
- the quality of the local minimum found by coordinate descent is highly sensitive to this initial value.
- the optimization of D R,C (X, Y ) is started with an initial guess for C.
- Y i , X j ⁇ X j ⁇ X j ⁇ Y i ⁇ Y i 2 so that there is no dependence on the rotation matrix, R. This way no rotation matrix is required to find an approximate mapping, c(t), between X and Y.
- DISTORTION ( X, Y, C 0 , ⁇ ) returns D final 1.
- Initialize R 0 ⁇ R* ( C 0 ), ⁇ ⁇ 1, i ⁇ 1 2.
- D i ⁇ D R i ,C i ( X,Y ) 6. ⁇ ⁇
- R*(C) and C*(R) are the procedures given in Sections (6.1) and (6.2), respectively.
- the DISTORTION procedure calculates a local minimum of D R,C (X, Y ) over R and C using the coordinate descent method outlined above.
- the value returned, D final is a measure of the dissimilarity between X and Y that is invariant to any rotation or time-warping.
- the method described in this Section for comparing motion signatures may be realized by the computational unit 20, which may include a CPU and memory for performing processing steps of the method. More specifically, for example, the computational unit 20 may include a buffer 22, a Rotation Invariant Viterbi (RIVIT) processing section 24, a Hidden Markov Model (HMM) storage 26 and an output section 28.
- the computational unit 20 may include a buffer 22, a Rotation Invariant Viterbi (RIVIT) processing section 24, a Hidden Markov Model (HMM) storage 26 and an output section 28.
- ROVIT Rotation Invariant Viterbi
- HMM Hidden Markov Model
- the buffer 22 receives and stores sampled sensor outputs to construct a observation sequence X indicative of motion signature corresponding to a current activity of the subject.
- the observation sequence X is sent to the RIVIT processing section 24 for finding the optimal rotation and temporal correspondence with a sequence Y, one of sequences represented by the HMM stored in the HMM storage 26.
- the optimal rotation may be determined first, and then the optimal temporal correspondence may be determined by matching the sequence X against the HMM using Viterbi to provide the optimal path sequence.
- the output section 28 receives the matching result, and outputs as an activity recognition result a signal indicating the current activity of the User.
- the activities may be labeled or classified in advance and mapped against sequences or states of the HMM.
- the mapping table may be stored in the output section 28 or the sequences or states of the HMM may be labeled.
- the method 22 for estimating the location of the IMU with respect to the User's body Any given movement by the User will generate differing measurements depending on where the IMU is on the User's body, such as in a pocket, being held in the left hand, on a necklace, etc. These differences in measurement of the same action can be used to deduce the location of the IMU. Of course, for this purpose some types of movement are better than others. For example, a motion that only involves the left hand can not be used to distinguish between one situation where the IMU is in the User's left pocket and the situation where the IMU is in the User's right pocket. However, a motion like walking produces unique measurements all over the User's body, except for left-right symmetry.
- a position-invariant detector of the reference motion is used to gate the output of the IMU (50), and this way a sequence of test signatures containing the reference motion arrive at the next module 24. For example, if the reference motion is walking then the method 21 for gait frequency measurement (Section (4)) can be used as the position-invariant detector.
- test signatures are matched against an exhaustive database 54 of reference motion signatures over locations. The best match indicates the estimated location of the IMU.
- the method in Section (6) may be used. It is also possible to custom-design a matching algorithm for a specific reference motion, especially if it is a periodic motion such as walking.
- the Device in its most basic instantiation, the Device is continually outputting what it calculates as the motion that the User has just performed or is performing. What it specifically outputs is determined by the database of motions that are available to the Device for matching.
- This motion database can be either static or dynamic depending on application needs.
- the Device in a configuration where it is not attached to any human user but rather to a machine or any moving object.
- vehicles such as bicycles, cars and boats
- factory equipment such as robotic arms and CNC machinery
- plants and animals such as dogs and cats
- cargo such as a crate of eggs or a drum of volatile liquid.
- the classification results can be used directly to drive an application that needs to configure itself based on what the User has been doing or is doing at the moment. These type of applications would be called context-aware and their context-awareness is enabled by, in this case, the Device.
- the present invention contains subject matter related to Japanese Patent Application JP 2005-169507 filed in the Japanese Patent Office on June 9, 2005, the entire contents of which being incorporated herein by reference.
Abstract
Description
- The present invention relates to an apparatus, method, program and storage medium for activity recognition. More specifically, the present invention relates to an activity recognition apparatus, an activity recognition method, a program to cause a computer to perform such a method, a storage medium or memory storing such a program, and a signal coded to cause a computer to perform such a method.
- Human activity classification has been attempted with cameras, microphones (Non-patent Document 5), inertial sensors (Non-patent Document 4), and goniometers. For each sensor or combination of sensors, researchers have also developed custom algorithms that to varying degrees can classify activity. Since one part of human activity classification is obtaining accurate measurements of human motion, the technology used overlaps with methods used for character animation, kinesiology and biomechanics. However, since the inventor of the present application are addressing the problem of how to determine and classify human activities in a mobile and unconstrained context, all except a few sensor modalities are appropriate.
- One set of such constrained methods involves monitoring the subject with static cameras or wearable cameras (Non-patent Document 10). Often optical markers are attached to the subject's body to simplify visual tracking. The subject's movement can be inferred from the movement of the markers through an inverse-kinematic model.
- While this method has the potential of providing very rich and complete measurements, it can only be used in the well-lit space in view of the cameras, which precludes its use in mobile applications.
- There also examples where researchers have tried using microphones (both on the body and in the environment) to automatically determine a user's activity (see Non-patent
Document 2 and Non-patent Document 9). However, major advantages of motion sensors are lower data rate (which translates to much lower computational requirements) and the ability to measure only the motion of the user. In audio, sounds caused by the user's activities are mixed with an ever-changing background of environmental sounds. Separation of these foreground and background is an unsolved problem which does not arise when using motion sensors. - This set of methods involves attaching sensors directly to the subject's body so as to measure the angles of the subject's joint. Possible sensor's are potentiometers and rotational encoders (which both require an exoskeleton to transmit the changes in a subject's joint angles to the sensor), bend sensors (strips of material that are sensitive to bending and flexing), and inertial sensors (accelerometers and gyros, which essentially measure changes in velocity via Newton's First Law of Motion). In clinical situations, goniometers (equivalent to a tilt sensor) are often used to measure angles with respect to gravity.
- Of all these only the inertial sensors and tilt sensors can be used to measurement of a subject's movements without requiring extensive modifications to clothing (for exoskeletons or strips of flex-sensitive material) or requiring special attachments. Furthermore, inertial sensors can be completely enclosed inside another device that user can simply hold or carry in a pocket or bag, thus making these sensors attractive for use in mobile devices or as self-contained devices.
- Other relevant works are disclosed, for example, in Non-patent Document 7, Non-patent Document 8,
Patent Document 1,Patent Document 2. -
- Non-Patent Document 1: Dimitri P. Bertsekas. Nonlinear Programming. Athena Scientific, 2nd edition, 1995.
- Non-Patent Document 2: Brian Clarkson, Alex Pentland, and Kenji Mase. Recognizing user context via wearable sensors. In Fourth International Symposium on Wearable Computers (ISWC), 2000.
- Non-Patent Document 3: Masataka Ishikawa.
United states patent 5,297,028 : Method and apparatus for correcting drift errors in an angular rate sensor. Filed by Zexel Corporation Daihatsu-Nissan, Tokyo, Japan, August 1991. - Non-Patent Document 4: Holger Junker, Jamie Ward, Paul Lukowicz, and Gerhard Troster. Continuous recognition of arm activities with body-worn inertial sensors. In Proceedings of the 8th International Symposium on Wearable Computers, 2004.
- Non-Patent Document 5: Paul Lukowicz, Jamie Ward, Holger Junker, Mathias Stager, Gerhard Troster, Amin Atrash, and Thad Starner. Recognizing workshop activity using body-worn microphones and accelerometers. In Second IEEE International Conference on Pervasive Computing and Communications, 2004.
- Non-Patent Document 6: Thomas P. Minka. Old and new matrix algebra useful for statistics. Technical report, Massachusetts Institute of Technology, 2000.
- Non-Patent Document 7:
Bruno Scherzinger. United states patent 6,853,909 : Walking stick navigator for position determination. Filed by Applanix Corporation, Inc., Ontario, Canada, November 2002. - Non-Patent Document 8:
Douglas Smith, Aaron Joseph, David Boone, Robert Borchers, and Ernest Burgess. United states patent 5,485,402 : Gait activity monitor. Filed by Prosthetics Research Study, Seattle, WA, March 1994. - Non-Patent Document 9: Mathias Staeger, Paul Lukowicz, and Gerhard Troester. Implementation and evaluation of a low-power sound-based user activity recognition system. In Eighth International Symposium on Wearable Computers (ISWC), 2004.
- Non-Patent Document 10: Thad Starner, Josh Weaver, and Alex Pentland. Realtime american sign language recognition using desk and wearable computer-based video. IEEE Transactions on Pattern Analysis and Machine Intelligence, 20(12):1371-175, December 1998.
- Non-Patent Document 11: Tero Tolonen and Matti Karjalainen. A computationally efficient multipitch analysis model. IEEE Transactions on Speech and Audio Processing, 8(6), November 2000.
- Patent Document 1:
Robert Levi and Thomas Judd. United States Patent 5,583,776 : Dead reckoning navigational system using accelerometer to measure foot impacts. Filed by Point Research Corporation, Santa Ana, CA, March 1995. - Patent Document 2:
Christopher Townsend and Steven Arms. United States Patent 6,834,436 : Posture and body movement system. Filed by MicroStrain, Inc., Williston, VT, February 2002. - However, obtaining accurate motion measurements with inertial sensors has historically proven to be quite difficult due to the sensitivity these sensors have to shock, temperature, electrical noise and so on. For example, gyros (angular rate sensors) have a dependency on temperature which must be accounted for Non-patent Document 3. Calibration is also required since these devices will typically have an arbitrary offset and scale factor affecting their outputs.
- Further, inertial sensors have no notion of the subject's frame of reference and measurements are always relative to the physical sensor. One exception to this, is that a properly oriented accelerometer can measure the earth's gravitational field and thus providing a way to determine the down direction. The accelerometer must not be undergoing any other unknown accelerations for this to work.
- Accordingly, in view of the above-mentioned issues, it is desirable to perform activity recognition using inertial sensors without posing any preconditions on orientation of the inertial sensors relative to the subject's reference frame, thereby allowing more flexibility in implementing a system for the activity recognition.
- According to an embodiment of the present invention, there is provided an activity recognition apparatus for determining an activity of a subject. The activity recognition apparatus includes: a sensor unit including a plurality of linear motion sensors configured to detect linear motions and a plurality of rotational motion sensors, the linear motions being orthogonal to each other, the rotational motions being orthogonal to each other; and a computational unit configured to receive and process signals from the sensors included in the sensor unit so as to determine an activity of the subject. The sensor unit is directly or indirectly supported by the subject with an arbitrary orientation with respect to the subject; and the computational unit performs processing that uses the signals from both linear motion sensors and rotational motion sensors to determine the activity independent of the orientation of the sensor unit.
- According to another embodiment of the present invention, there is provided an activity recognition method of determining an activity of a subject. The method includes: sampling accelerations in three orthogonal axes and angular velocities around the three orthogonal axes; and determining an activity of the subject using all the sampled accelerations and angular velocities. In the method, the accelerations and angular velocities are detected by sensors integrated into a single unit, which is directly or indirectly supported by the subject with an arbitrary orientation with respect to the subject; and the determination of activity is performed by using both the accelerations and angular velocities to determine the activity independent of the orientation of the sensor unit.
- According to another embodiment of the present invention, there is provided a program that causes a computer to perform activity recognition by determining an activity of a subject, or a recoding medium that store such a program, or a signal coded to cause a computer to perform such a program. The program includes: receiving data of accelerations in three orthogonal axes and angular velocities around the three orthogonal axes; and determining an activity of the subject using all the received data of accelerations and angular velocities. The accelerations and angular velocities are detected by sensors integrated into a single unit, which is directly or indirectly supported by the subject with an arbitrary orientation with respect to the subject; and the determination of activity is performed by using both the accelerations and angular velocities to determine the activity independent of the orientation of the sensor unit.
- In the embodiments of the present invention, the sensor unit is directly or indirectly supported by the subject with arbitrary orientation. In other words, the signals from the sensor unit do not have any information about the sensor's orientation with respect to the coordinates of the subject. However, different movements of the entire sensor unit correspond with different activities of the subject.
- Accordingly, the activity of the subject can be determined independent of the sensor unit's orientation by detecting the movement of the entire sensor unit and by associating the detected movement with a corresponding activity of the subject or a corresponding motion signature that associated with the activity.
- According to the present invention, it is possible to perform activity recognition using inertial sensors without posing any preconditions on orientation of inertial sensors relative to the subject's reference frame, thereby allowing more flexibility in implementing a system for the activity recognition.
- The above and other objects, features and advantages of the present invention will become more apparent from the following description of the presently preferred exemplary embodiments of the invention taken in conjunction with the accompanying drawings, in which:
- Figure 1 is a block diagram of an activity recognition apparatus according to an embodiment of the present invention;
- Figure 2 is an conceptual overview of an activity recognition apparatus according to an embodiment of the present invention;
- Figures 3(a) and 3(b) are schematic diagrams of activity recognition apparatuses for different usage scenarios;
- Figure 4 is an conceptual overview of a physical module (IMU) according to an embodiment of the present invention;
- Figure 5 is an overview of processing pipeline for a method of determining a location of an IMU on a user's body when using a reference motion X;
- Figure 6 is an overview of processing pipeline for a method of tracking an IMU's motion;
- Figure 7 is a schematic diagram showing a geometric construction used to directly calculate sine and cosine of a half-angles required by quaternion representation in a Plumb model;
- Figure 8(a) and Figure 8(b) show example sequences of motion signatures, and Figure 8(c) shows matching of two sequences according to an embodiment of the present invention; and
- Figure 9 is a schematic diagram of a computational unit for a method of comparing motion signatures in accordance with an embodiment of the present invention.
- Embodiments of the present invention are described with reference to accompanying figures.
- Figure 1 shows a configuration example of an activity recognition apparatus for determining an activity of a subject in accordance with an embodiment of the present invention. The apparatus includes a
sensor unit 10 and acomputational unit 20. Thesensor unit 10 includes a plurality of linear motion sensors configured to detect linear motions and a plurality of rotational motion sensors, the linear motions being orthogonal to each other, the rotational motions being orthogonal to each other. Thecomputational unit 20 is configured to receive and process signals from the sensors included in the sensor unit so as to output an activity of the subject. Thesensor unit 10 is directly or indirectly supported by the subject with an arbitrary orientation with respect to the subject. Thecomputational unit 20 performs a calculation that uses the signals from both linear motion sensors and rotational motion sensors to determine the activity independent of the orientation of the sensor unit. - The plurality of linear motion sensors may be three accelerometers for measuring accelerations in three orthogonal axes, and the plurality of rotational motion sensors may be three gyro sensors for measuring angular velocities around the three orthogonal axes. The
computational unit 20 may use six outputs from the accelerometers and the gyro sensors to determine a current activity of the subject. - The computational unit may includes; a buffer configured to store an observation sequence formed of a plurality set of the sensor outputs for a predetermined period of time; a storage configured to store a plurality of reference sequences, the reference sequences corresponding to motion signatures of different activities; and a matching processor configured to match the observation sequence against the reference sequences to find a best matched reference sequence. Further, the matching processor may find an optimal rotation and temporal correspondence between the observation sequence and one of the reference sequences so as to obtain the best matched reference sequence.
- Furthermore, the reference sequence may include a plurality of vectors representing states in Hidden Markov Model; and the matching between the observation sequence and the reference sequence may be performed using Viterbi algorithm so as to obtain an optimal state path.
- Alternatively, the computational unit may further detect a rate of the subject's gait by calculating an autocorrelation of the signals from the linear motion sensors and an autocorrelation of the signals from the rotation motion sensors, and summing these autocorrelations to obtain a summary autocorrelation function; and the summary autocorrelation function may be used to determine the rate of the subject's gait.
- Alternatively, the computational unit may further detect a rotation of the sensor unit by calculating a first rotation by integrating the signals from the rotational motion sensors, calculating a second rotation by using a gravitation model and the signals from the linear motion sensors, and performing weighted interpolation of the first and second rotation. Further, the weight for the first rotation is larger if variations in the signals from the rotational motion sensors are smaller; and the weight for the second rotation is larger if variations in the signals from the linear motion sensors are smaller.
- Alternatively, the activity recognition apparatus may further include a storage configure to store reference motion signatures and corresponding locations for a reference activity. Furthermore, the computational unit may further detect a location of the sensor unit on the subject by determining if a current activity represented with the signals from the sensors is the reference activity, and, if the current activity is the reference activity, matching a motion signature corresponding to the current activity against the reference motion signature so as to determine a location of the sensor unit, which corresponds to a best matched reference motion signature.
- According to another embodiment of the present invention, there is provided an activity recognition method of determining an activity of a subject. The method includes: sampling accelerations in three orthogonal axes and angular velocities around the three orthogonal axes; and determining an activity of the subject using all the sampled accelerations and angular velocities. Furthermore, the accelerations and angular velocities are detected by sensors integrated into a single unit, which is directly or indirectly supported by the subject with an arbitrary orientation with respect to the subject; and the determination of activity is performed by using both the accelerations and angular velocities to determine the activity independent of the orientation of the sensor unit.
- According to another embodiment of the present invention, there is provided a program that causes a computer to perform activity recognition by determining an activity of a subject. The program includes: receiving data of accelerations in three orthogonal axes and angular velocities around the three orthogonal axes; and determining an activity of the subject using all the received data of accelerations and angular velocities. Furthermore, the accelerations and angular velocities are detected by sensors integrated into a single unit, which is directly or indirectly supported by the subject with an arbitrary orientation with respect to the subject; and the determination of activity is performed by using both the accelerations and angular velocities to determine the activity independent of the orientation of the sensor unit.
- Below, still another embodiment according to the present invention is described. In the following embodiment, there is provided a system that is capable of activity recognition and includes a sensor unit and a computational unit. In the following embodiment, it is assumed that the sensor unit is "supported" by a human subject and the computational unit determines a type of current activity of the human subject based on the outputs from the sensor unit.
- In the present embodiment, as shown in Figure 2, a six degree-of-freedom (DOF) inertial sensor is employed as the
sensor unit 10 to classify various common human activities in real-time. In the following description, the term "the Sensor" indicates the 6-DOF inertial sensor, and "the User" denotes thehuman subject 1 who is either carrying or wearing the Sensor. Furthermore, the term "the Device" denotes the present system combining an inertial measurement unit (IMU) with the Sensor and the above-mentionedcomputational unit 20 for performing steps of methods for classification of the User's activity. Results of classification may be outputted or transfer to an application. - While using inertial sensors to measure human activity has been attempted before, the present system defining characteristic is its ability to operate fully automatically almost anywhere on the human body with any sensor orientation. In the present embodiment, the system incorporates four distinct methods for different aspects of the User's activity and device state, each of which can be performed without posing any preconditions on the sensor orientation. The methods includes a
method 21 for gait frequency measurement, amethod 22 for localization of the Device on the User, amethod 23 for motion tracking, and amethod 24 for rotation-invariant Viterbi matching (see Figure 2). - The Sensor may be supported or held by the User directly or indirectly. For example, the following (nonexhaustive) manner of coupling may be possible:
- The User is holding the Sensor in his hands.
- The User is carrying the Sensor in a purse or backpack which is being worn.
- The Sensor is rigidly or semi-rigidly attached to the User's body or clothing.
- The Sensor is hanging from the User's neck or waist.
- The Sensor has been integrated into the construction of the User's shoes, jewelry, hat, gloves, portable electronic device or any other object whose normal use involves being worn or carried by the User.
- The Sensor is attached or place inside a vehicle that is simultaneously transporting the User.
- The present embodiment may also be applicable even in cases where the Sensor is coupled to the User with any arbitrary forms as long as the Sensor's motions have a relationship with the User's motions.
- For the purposes of a simple and concrete description of the present embodiment, it is assumed that the 6-DOF inertial sensor is composed of components that measure linear acceleration in the x-, y-, and z-directions and angular velocity around the x-, y-, and z-axis. However, the methods described hereafter can be trivially adapted to other schema for measuring 6-DOF.
- In the present embodiment, as shown in Figure 3(a), the system may include a
sensor mote 10a and acomputational unit 20 embedded in ahost device 30a. Thesensor mote 10a includes a 6-DOFinertial sensor 10a-1 and awireless transmitter 10a-2 for transmitting sensor data to thecomputational unit 20a. Alternatively, a memory may be provided instead of thewireless transmitter 10a-2 for storing sensor data for a certain period of time. The stored data may be transferred to thecomputational unit 20a when thesensor mote 10a is connected to thehost device 30a. - Alternatively, the entire system including a 6-DOF
inertial sensor 10b and acomputational unit 20b may be embedded in asingle host device 30b such as a cellphone or portable game apparatus as shown in Figure 3(b). -
- Each sample from the Device's sensors contains the six values specified in Equations (1) and (2). The u(t) sensor values are linearly proportional to the acceleration of the Device along the i-, j-, and k-axes. These could be considered to be measured, for example, by MEMS accelerometer or similar devices. The v(t) sensor values are linearly proportional to the angular velocity of the Device around the i-, j-, and k-axes. These could be considered to be obtained, for example, from MEMS gyros or similar devices. Figure 4 shows all the measurements are made with respect to basis directions in the local coordinate system (i-j-k) of the Device itself.
- If it is supposed that p(t) ∈ R3 is the position of the Device in any world coordinate system (e.g. x-y-z in Figure 4), g(t) ∈ R3 is the acceleration of the Earth's gravitational field in the local coordinate system, and q(t) ∈ R3 is the orientation of the Device in its local coordinate system, then it can be written:
- All gradients are taken with respect to the local coordinate system of the Device. A and B are 3-by-3 scaling matrices. The diagonal elements specify the scale-factors (also known as sensitivities) which convert the sensor output (e.g. a voltage) to standard physical units (e.g. m/s2 and °/s). At the same time, the off-diagonal elements describe the cross-talk between sensors due to slight misalignments (for example, the angle between the θ and φ gyros is not exactly 90°). The arbitrary offsets (also known as bias) exhibited by typical sensors are denoted by u0 and v0. The sensor noise, which includes the quantization noise, is specified for each sensor as a sequence of random variables, ∈u(t) and ∈v(t).
-
- Signal calibration involves determining the values of A, u0, B, v0. Depending on the actual components used inside the IMU, these values can be dependent on manufacturing conditions, ambient temperature, driving voltage, and so on. However, only the method for motion tracking require these parameters to be known. All of the other methods 21-22 and 24 given here can use uncalibrated sensor values.
- Finally, either the continuous signals from the IMU are sampled at a given rate and passed onto the computational unit or the signals leave the IMU already digitized. For the remainder of this description, let rimu be the digital sampling rate of the output of the IMU. Thus the digitized output of the IMU can be written as:
- This Section describes our method for determining the User's activity, such as determining if the User is walking or running or not moving, and tracking the rate of his/her gait. This method is effective for any location of the device on the User's body. This method for gait detection and tracking involves tracking the period of repetitive movements apparent in the output of the acceleration sensors.
- A common method for detecting and measuring the periods of periodic signals is by finding peaks in the autocorrelation of the signal. To see how the autocorrelation of the acceleration sensor output, u, relates to the autocorrelation of the actual acceleration of the IMU, ∇2p, (multivariate) autocorrelation of the i-th frame may be written as:
where * denotes the cross-correlation operator and, - The first term of Equation (10), φ1, is the most important term containing the periodicities of the acceleration of the IMU and gravity (which depends only on the orientation of the IMU). The second term, φ2, is a cross-correlation between acceleration and gravity. For any kind of natural repetitive motion involving the human body, it is pretty much guaranteed that g(t) and ∇2p will share the same periodicities and hence their autocorrelations, φ1, and cross-correlations, φ2, will add constructively. The final term, φ3, contains correlations of the noise and the offset with various terms. These correlations will not exhibit any periodicities and will simply add noise and a constant bias to the final autocorrelation of Equation (10). The validity of the autocorrelation of the gyro sensor outputs, v, follows exactly the same argument.
- In practice, a small time interval is chosen over which to conduct the autocorrelation analysis and a rate is chosen at which to perform the analysis. Let Tgait be the length of time for one gait analysis frame (e.g. interval of sensor data) and let rgait be the rate of gait analysis. Thus, in Equation (10),
is the number of vectors in one analysis frame. -
- For efficiency and improvement of temporal resolution, the Wiener-Khinchin Theorem is used to calculate a windowed autocorrelation. In general, if x[t] is any sequence, X[ω] = F{x} is its Discrete Fourier Transform (DFT), and W[ω] = F{w} is the DFT of a windowing function (such as a Hamming window), then:
- Using the Fast Fourier Transform (FFT) to calculate the DFT in Equation (13) results in a very efficient calculation of the autocorrelations in Equation (12).
- The peaks of the ACF correspond to the periods of any cyclic motion in the data. However, since the ACF will also contain peaks at integer multiples of the true period of any cycles, a peak pruning procedure similar to that introduced in Non-patent Document 11 is used to calculate an enhanced summary autocorrelation function (ESACF). This peak pruning technique is as follows:
PRUNE-HARMONICS(SACF) returns ESACF 1. Clip the SACF to positive values. 2. Upsample and interpolate by a factor of two. 3. Subtract the upsampled version from the clipped original. 4. Clip to positive values again. 5. Repeat 2-4 for prime factors three, five, seven, etc. - The goal of this procedure is to sequentially remove all multiples of each peak, thus leaving only the fundamental periods.
-
- If there is no peak with a value over a certain threshold (defined as a percentage of the energy in the signal during the analysis interval), then the system can generate a report that the User is not walking or running (gait pitch = OHz). Since, the gait pitch changes over time, the above analysis is done repeatedly for each successive analysis interval, yielding gait pitch estimates at the rate of rgait.
- In this Section, the
method 23 for tracking the down direction and heading continuously no matter how the orientation of the device changes or moves is provided. This method assumes that the output from the IMU has been calibrated. - The 3-axis of gyro sensing data contains enough information to track the IMU's orientation. However, all gyros suffer from an accumulation of drift and other types of error. Thus, using just gyro information to track orientation, while quite accurate in the short-term, leads to large tracking errors in the long term.
- The 3-axis of acceleration sensing data contains information about what direction Earth's gravity is pulling. Knowledge of the direction of the Earth's gravitational pull can be used to track the IMU's orientation drift-free with at most two degrees of freedom. The problem with just using the accelerometers in this fashion is that when the IMU is being acted on (moved by some outside force) the estimate of the Earth's gravitational pull is corrupted.
- It is very difficult and unnatural for humans to move or move another object with constant acceleration or velocity. Similarly, with respect to rotation, it is very difficult for humans to rotate or rotate another object with constant angular velocity.
- In order to robustly estimate the down direction, it is preferable to rely on the acceleration measurements more when the accelerometer signal is constant because it is highly likely that a human is not acting on the device. Conversely, it is preferable to rely more on the gyro measurements when the accelerometer signal is non-constant.
- This principle also applies to online re-zeroing of the gyro signal. In other words, it is preferable that Gyro measurements is re-zeroed when the gyro measurement is constant. Luckily, this is also true when relying mostly on the acceleration measurements for tracking.
- Figure 6 shows the computational pipeline for the motion tracking method.
Linear acceleration data 410 from theIMU 40 including the sensor is used to calculate theconfidence 412 that only gravity is acting on theIMU 40 and as input into the Plumb Model 414 (explained later).Angular velocity data 420 from theIMU 40 is used to calculate theconfidence 422 that theIMU 40 is not being rotated and as input into theGyro Integration module 424. - Both the
Plumb Model 414 and theGyro Integration 424 output separate estimates of the IMU's orientation, i.e. Qplumb and Qgyro (described later). Qplumb and Qgyro are then combined using the confidence scores to weight one versus the other (430) to perform weighted interpolation to calculate the estimated IMU orientation. The Gyro Integration computes an orientation relative to the orientation of the previous timestep and thus requires feedback. - The
Plumb Model 414 gives an absolute estimate of orientation and thus requires no feedback. - The Plumb Model uses the Earth's gravitational pull to measure orientation, albeit only with two degrees of freedom. In short, this module outputs the rotation that maps the current down vector to a unit reference vector, r, in the coordinate system of the IMU 40 (see Figure 4). This reference vector can be chosen arbitrarily, or during zeroing. The resulting rotation is given in quaternion form as:
where a[t] = (ax[t], ay[t], az[t])T is the axis of rotation and θ[t] is the angle of rotation. The down vector is just the normalized linear acceleration (assuming no forces other than gravity are acting on the IMU 40): -
-
-
-
- The method 24 (see Figure 2) presented in this Section solves the problem of how to compare unsynchronized motion signatures that are collected using IMU's with unknown orientations. For example, a typical application would require matching a realtime signal to a database of motion signatures. However, the orientation of the IMU might be arbitrarily different from the orientation of the IMU used to generate the motion signatures in the database. Furthermore, the proper way to temporally align a test signal to the motion signatures in the database must be determined.
- A rotation-invariant Viterbi algorithm (RIVIT) according to the present embodiment is designed for the purpose of finding the optimal rotation and temporal correspondence between two motion signatures. Suppose the two sequences under consideration are represented as matrices whose columns are the stacked values of the acceleration and angular components,
- The lengths of sequences X and Y are TX and TY, respectively.
- Figure 8(a) and Figure 8(b) show examples of two multi-dimensional sequences having possibly different lengths and an arbitrary rotation between them. This particular examples are sequences of motion signatures of a sitting action, but the IMU was oriented differently in each case. Further, the sitting motion in Figure 8(a) was faster than that of Figure 8(b).
- In order to calculate the similarity between these two sequences to within some arbitrary rotation and some arbitrary time-warping, the problem may be stated as the minimization of the following measure:
over its free parameters which are a rotation matrix, R, and a correspondence matrix, C, where the symbol " ' " means a transverse matrix. A correspondence matrix is a special kind of projection matrix that maps the time dimension (columns) of X onto the time dimension (columns) of Y . Suppose we had a function, c(t), that assigns each integer in {0, 1, ... , Tx- 1} to an integer in {0, 1, ... , TY- 1}. Its correspondence matrix can be constructed as follows: - While minimizing DR,C(X, Y ), it is preferable to constrain C to matrices where the corresponding c(t) is non-decreasing. Figure 8(c) gives an example of a possible mapping. The optimal C map determines how X should be stretched and compressed (possible deleting some sections and repeating others) to line up with Y . The optimal rotation matrix, R, determines how all the vectors in X should be rotated so that they match the vectors in Y.
- The method used in here to minimize the expression (28) is called the coordinate descent method (Non-patent Document 1). It is a simple iterative method that is easily adapted for parallel computation. The idea is to minimize the error function along one single axis in each iteration. This greatly simplifies the minimization problem, as it can be seen, and when it is cycled through each axis, successively minimizing each coordinate, it is known that the Equation will converge to a local minimum. If there were no constraints on R and C then since DR,C(X, Y ) is convex this local minimum would also be the global minimum. However, there is constraints in the present embodiment so only localness is guaranteed. In the next Sections, it is described how to minimize the error function over each axis, R and C.
-
-
- Matrices V and U are obtained from the singular value decomposition (SVD) of XCY' = UDV'. It should be noted that the size of XCY' is 6-by-6 so that the cost of the SVD is independent of the length of the sequences.
- The inventor of the present application have found that it is beneficial to restrict R so that the same rotation is applied to the gyro and accelerometer components. This means that the structure of R is desirable to be a block diagonal like this:
where Q is 3-by-3 rotation matrix. This constraint can be easily satisfied by calculating Q = VU' but this time V and U are obtained from the SVD of UXCUY' + VXCVY' = UDV'. -
- Instead of finding C directly as a matrix, the underlying mapping function, c(t) is calculated. Let the vectors of Y sequence represent the states in a Hidden Markov Model (HMM) with left-right topology. Sequence X is matched against the HMM using Viterbi algorithm to provide the optimal path sequence. Scoring of the i-th HMM-state (which represents the i-th vector of Y ) on the j-th vector of X is calculated as the squared Euclidean distance:
- This is equivalent to using unit variance Gaussians centered on the vectors of X to represent the output distributions of each HMM-state, st ∈ {0, 1, ..., TY -1}. The transition probabilities are:
where K is an experimentally determined constant (approx. (100/128)Hz in our experiments) and ε is some very small number. Alternatively, the transition probabilities may be determined by using training data. - Using the HMM with parameters specified above as representing Y and an observation sequence as X, the standard Viterbi algorithm is used to find the optimal (maximum likelihood) state path, {st* } through the HMM. This state path assigns each vector in X to a vector in Y , according to c(t) = st*. The correspondence matrix can then be calculated directly from c(t) as stated above. It should be noted that, in an actual implementation, the matrix product XC is much more efficiently calculated by using c(t) directly to construct XC from X.
- The coordinate descent method, like all descent methods, requires an initial value for at least one of the coordinates. The quality of the local minimum found by coordinate descent is highly sensitive to this initial value. The optimization of DR,C(X, Y ) is started with an initial guess for C. The initial value for C is calculated using the same procedure as in Section (6.2) but equation (34) is replaced with,
so that there is no dependence on the rotation matrix, R. This way no rotation matrix is required to find an approximate mapping, c(t), between X and Y. - Below, the procedure, called DISTORTION, is presented for minimizing the error function and thereby calculating the distortion measure between two motion signatures. Let i represent the iteration, and C0 represent the initial guess for C as calculated in Section (6.3) and ε is a stopping criterion used to detect convergence:
DISTORTION(X, Y, C 0,ε) returns D final1. Initialize R 0 ← R*(C 0), δ ← 1, i ← 1 2. White δ > ε: 3. C i ← C*(R i-1) 4. Ri ← R*(Ci ) 5. Di ← DR i ,Ci (X,Y)6. δ ←|Di - D i-1| 7. i ← i + 1 8. Dfinal ← Di - R*(C) and C*(R) are the procedures given in Sections (6.1) and (6.2), respectively. In summary, the DISTORTION procedure calculates a local minimum of DR,C(X, Y ) over R and C using the coordinate descent method outlined above. The value returned, Dfinal, is a measure of the dissimilarity between X and Y that is invariant to any rotation or time-warping.
- The method described in this Section for comparing motion signatures may be realized by the
computational unit 20, which may include a CPU and memory for performing processing steps of the method. More specifically, for example, thecomputational unit 20 may include abuffer 22, a Rotation Invariant Viterbi (RIVIT)processing section 24, a Hidden Markov Model (HMM)storage 26 and anoutput section 28. - The
buffer 22 receives and stores sampled sensor outputs to construct a observation sequence X indicative of motion signature corresponding to a current activity of the subject. The observation sequence X is sent to theRIVIT processing section 24 for finding the optimal rotation and temporal correspondence with a sequence Y, one of sequences represented by the HMM stored in the HMMstorage 26. In theRIVIT processing section 24, the optimal rotation may be determined first, and then the optimal temporal correspondence may be determined by matching the sequence X against the HMM using Viterbi to provide the optimal path sequence. - The
output section 28 receives the matching result, and outputs as an activity recognition result a signal indicating the current activity of the User. In the present embodiment, it is assumed that the activities may be labeled or classified in advance and mapped against sequences or states of the HMM. The mapping table may be stored in theoutput section 28 or the sequences or states of the HMM may be labeled. - In this Section the
method 22 for estimating the location of the IMU with respect to the User's body. Any given movement by the User will generate differing measurements depending on where the IMU is on the User's body, such as in a pocket, being held in the left hand, on a necklace, etc. These differences in measurement of the same action can be used to deduce the location of the IMU. Of course, for this purpose some types of movement are better than others. For example, a motion that only involves the left hand can not be used to distinguish between one situation where the IMU is in the User's left pocket and the situation where the IMU is in the User's right pocket. However, a motion like walking produces unique measurements all over the User's body, except for left-right symmetry. - In this Section, the action or movement used to determine IMU location is referred to as the reference motion. The overall processing pipeline, assuming an arbitrary reference motion X, is depicted in Figure 5.
- A position-invariant detector of the reference motion is used to gate the output of the IMU (50), and this way a sequence of test signatures containing the reference motion arrive at the
next module 24. For example, if the reference motion is walking then themethod 21 for gait frequency measurement (Section (4)) can be used as the position-invariant detector. - In the
module 24, the test signatures are matched against anexhaustive database 54 of reference motion signatures over locations. The best match indicates the estimated location of the IMU. For generic matching of motion signatures the method in Section (6) may be used. It is also possible to custom-design a matching algorithm for a specific reference motion, especially if it is a periodic motion such as walking. - According to the present embodiment, in its most basic instantiation, the Device is continually outputting what it calculates as the motion that the User has just performed or is performing. What it specifically outputs is determined by the database of motions that are available to the Device for matching. This motion database can be either static or dynamic depending on application needs.
- It is also possible to use the Device in a configuration where it is not attached to any human user but rather to a machine or any moving object. Examples of this include vehicles (such as bicycles, cars and boats), factory equipment (such as robotic arms and CNC machinery), plants and animals (such as dogs and cats), cargo (such as a crate of eggs or a drum of volatile liquid).
- The classification results can be used directly to drive an application that needs to configure itself based on what the User has been doing or is doing at the moment. These type of applications would be called context-aware and their context-awareness is enabled by, in this case, the Device.
- The present invention contains subject matter related to
Japanese Patent Application JP 2005-169507 - It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and alterations may occur depending on design requirements and other factors insofar as they are within the scope of the appended claims or the equivalents thereof.
Claims (9)
- An activity recognition apparatus for detecting an activity of a subject, the apparatus comprising:a sensor unit (10) including a plurality of linear motion sensors configured to detect linear motions and a plurality of rotational motion sensors, the linear motions being orthogonal to each other, the rotational motions being orthogonal to each other; anda computational unit (20) configured to receive and process signals from the sensors included in the sensor unit so as to detect an activity of the subject;wherein the sensor unit (10) is directly or indirectly supported by the subject with an arbitrary orientation with respect to the subject; andwherein the computational unit (20) performs a calculation that uses the signals from both linear motion sensors and rotational motion sensors to determine the activity of the subject independent of the orientation of the sensor unit (10).
- The activity recognition apparatus according to Claim 1, wherein:the plurality of linear motion sensors are three accelerometers for measuring accelerations in three orthogonal axes;the plurality of rotational motion sensors are three gyro sensors for measuring angular velocities around the three orthogonal axes; andthe computational unit (20) uses six outputs from the accelerometers and the gyro sensors to determine a current activity of the subject.
- The activity recognition apparatus according to Claim 1 or 2, wherein:the computational unit (20) includeswherein the matching processor (24) finds an optimal rotation and temporal correspondence between the observation sequence and one of the reference sequences so as to obtain the best matched reference sequence.a buffer (22) configured to store an observation sequence formed of a plurality set of the sensor outputs for a predetermined period of time;a storage (26) configured to store a plurality of reference sequences, the reference sequences corresponding to motion signatures of different activities; anda matching processor (24) configured to match the observation sequence against the reference sequences to find a best matched reference sequence;
- The activity recognition apparatus according to Claim 3, wherein:the reference sequence includes a plurality of vectors representing states in Hidden Markov Model; andthe matching between the observation sequence and the reference sequence is performed using Viterbi algorithm so as to obtain an optimal state path.
- The activity recognition apparatus according to one of the claims 1 to 4, wherein:the computational unit (20) further detects a rate of the subject's gait by calculating an autocorrelation of the signals from the linear motion sensors and an autocorrelation of the signals from the rotation motion sensors, and summing these autocorrelations to obtain a summary autocorrelation function; andthe summary autocorrelation function is used to determine the rate of the subject's gait.
- The activity recognition apparatus according to one of the claims 1 to 5, wherein:the computational unit (20) further detects a rotation of the sensor unit by calculating a first rotation by integrating the signals from the rotational motion sensors, calculating a second rotation by using a gravitation model and the signals from the linear motion sensors, and performing weighted interpolation of the first and second rotation;the weight for the first rotation is larger if variations in the signals from the rotational motion sensors are smaller; andthe weight for the second rotation is larger if variations in the signals from the linear motion sensors are smaller.
- The activity recognition apparatus according to one of the claims 1 to 6, further comprising:a storage configure to store reference motion signatures and corresponding locations for a reference activity; whereinthe computational unit (20) further detects a location of the sensor unit on the subject by determining if a current activity represented with the signals from the sensors is the reference activity, and, if the current activity is the reference activity, matching a motion signature corresponding to the current activity against the reference motion signature so as to determine a location of the sensor unit, which corresponds to a best matched reference motion signature.
- An activity recognition method of determining an activity of a subject, the method comprising:sampling accelerations in three orthogonal axes and angular velocities around the three orthogonal axes; anddetermining an activity of the subject using all the sampled accelerations and angular velocities;wherein the accelerations and angular velocities are detected by sensors integrated into a single unit, which is directly or indirectly supported by the subject with an arbitrary orientation with respect to the subject; andwherein the determination of activity is performed by using both the accelerations and angular velocities to determine the activity independent of the orientation of the sensor unit.
- A recording medium that stores a program that causes a computer to perform activity recognition by determining an activity of a subject, the program comprising:receiving data of accelerations in three orthogonal axes and angular velocities around the three orthogonal axes; anddetermining an activity of the subject using all the received data of accelerations and angular velocities;wherein the accelerations and angular velocities are detected by sensors integrated into a single unit, which is directly or indirectly supported by the subject with an arbitrary orientation with respect to the subject; andwherein the determination of activity is performed by using both the accelerations and angular velocities to determine the activity independent of the orientation of the sensor unit.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005169507A JP5028751B2 (en) | 2005-06-09 | 2005-06-09 | Action recognition device |
Publications (3)
Publication Number | Publication Date |
---|---|
EP1731097A2 true EP1731097A2 (en) | 2006-12-13 |
EP1731097A3 EP1731097A3 (en) | 2008-03-19 |
EP1731097B1 EP1731097B1 (en) | 2016-08-10 |
Family
ID=37081672
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP06011895.7A Expired - Fee Related EP1731097B1 (en) | 2005-06-09 | 2006-06-09 | Activity recognition apparatus, method and program |
Country Status (4)
Country | Link |
---|---|
US (1) | US7421369B2 (en) |
EP (1) | EP1731097B1 (en) |
JP (1) | JP5028751B2 (en) |
CN (1) | CN100545658C (en) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2942388A1 (en) * | 2009-02-26 | 2010-08-27 | Movea | SYSTEM AND METHOD FOR DETECTING THE MARKET OF A PERSON |
WO2010122174A1 (en) * | 2009-04-24 | 2010-10-28 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | System and method for determining the posture of a person |
WO2010122173A1 (en) * | 2009-04-24 | 2010-10-28 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | System and method for determining the activity of a person lying down |
NL2004660C2 (en) * | 2010-05-04 | 2011-11-07 | Technologies88 B V | Device and method for motion capture and analysis. |
EP2656787A1 (en) * | 2008-07-11 | 2013-10-30 | Medtronic Inc. | Posture state classification for a medical device |
US8834392B2 (en) | 2010-01-08 | 2014-09-16 | Medtronic, Inc. | Posture state classification for a medical device |
ITAN20130095A1 (en) * | 2013-05-17 | 2014-11-17 | Safe Way S R L | METHOD FOR THE PREVENTION OF ACCIDENTS AND ACCIDENTS AND ITS RELEVANT IMPLEMENTING SYSTEM |
WO2015195765A1 (en) * | 2014-06-17 | 2015-12-23 | Nant Vision, Inc. | Activity recognition systems and methods |
US9623257B2 (en) | 2011-04-18 | 2017-04-18 | Medtronic, Inc. | Recharge tuning techniques for an implantable device |
WO2019042941A1 (en) | 2017-08-28 | 2019-03-07 | Institut National Du Sport De L'expertise Et De La Performance | Method for assessing the mechanical load of an individual |
Families Citing this family (216)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7711564B2 (en) | 1995-07-27 | 2010-05-04 | Digimarc Corporation | Connected audio and other media objects |
CA2594151C (en) * | 2004-12-07 | 2013-02-19 | Applied Nanosystems B.V. | Methods for the production and secretion of modified peptides |
JP5028751B2 (en) * | 2005-06-09 | 2012-09-19 | ソニー株式会社 | Action recognition device |
WO2007008930A2 (en) * | 2005-07-13 | 2007-01-18 | Ultimate Balance, Inc. | Orientation and motion sensing in athletic training systems, physical rehabilitation and evaluation systems, and hand-held devices |
CN101317189A (en) * | 2005-11-28 | 2008-12-03 | 三星电子株式会社 | Exercise management function providing system and method |
US20100201512A1 (en) | 2006-01-09 | 2010-08-12 | Harold Dan Stirling | Apparatus, systems, and methods for evaluating body movements |
US7827000B2 (en) * | 2006-03-03 | 2010-11-02 | Garmin Switzerland Gmbh | Method and apparatus for estimating a motion parameter |
US8055469B2 (en) * | 2006-03-03 | 2011-11-08 | Garmin Switzerland Gmbh | Method and apparatus for determining the attachment position of a motion sensing apparatus |
US7467060B2 (en) * | 2006-03-03 | 2008-12-16 | Garmin Ltd. | Method and apparatus for estimating a motion parameter |
US7841967B1 (en) | 2006-04-26 | 2010-11-30 | Dp Technologies, Inc. | Method and apparatus for providing fitness coaching using a mobile device |
US8902154B1 (en) | 2006-07-11 | 2014-12-02 | Dp Technologies, Inc. | Method and apparatus for utilizing motion user interface |
US20110044501A1 (en) * | 2006-07-14 | 2011-02-24 | Ailive, Inc. | Systems and methods for personalized motion control |
US7636645B1 (en) | 2007-06-18 | 2009-12-22 | Ailive Inc. | Self-contained inertial navigation system for interactive control using movable controllers |
US9405372B2 (en) | 2006-07-14 | 2016-08-02 | Ailive, Inc. | Self-contained inertial navigation system for interactive control using movable controllers |
US7702608B1 (en) | 2006-07-14 | 2010-04-20 | Ailive, Inc. | Generating motion recognizers for arbitrary motions for video games and tuning the motion recognizers to the end user |
JP4148285B2 (en) * | 2006-07-27 | 2008-09-10 | ソニー株式会社 | Monitoring device, filter calibration method, and filter calibration program |
US7610813B2 (en) * | 2006-09-29 | 2009-11-03 | Intel Corporation | Method and apparatus for a self-powered RFID-readable pedometer |
JP4872597B2 (en) * | 2006-10-27 | 2012-02-08 | オムロンヘルスケア株式会社 | Exercise support device |
US20080147461A1 (en) * | 2006-12-14 | 2008-06-19 | Morris Lee | Methods and apparatus to monitor consumer activity |
US7653508B1 (en) | 2006-12-22 | 2010-01-26 | Dp Technologies, Inc. | Human activity monitoring device |
US8620353B1 (en) | 2007-01-26 | 2013-12-31 | Dp Technologies, Inc. | Automatic sharing and publication of multimedia from a mobile device |
US7636697B1 (en) | 2007-01-29 | 2009-12-22 | Ailive Inc. | Method and system for rapid evaluation of logical expressions |
US8864845B2 (en) * | 2007-02-06 | 2014-10-21 | DEKA Limited Partnership | System for control of a prosthetic device |
US8949070B1 (en) * | 2007-02-08 | 2015-02-03 | Dp Technologies, Inc. | Human activity monitoring device with activity identification |
US7753861B1 (en) | 2007-04-04 | 2010-07-13 | Dp Technologies, Inc. | Chest strap having human activity monitoring device |
US20080287807A1 (en) * | 2007-05-16 | 2008-11-20 | James Geoffrey Chase | Global motion invariant signatures for fast and accurate motion tracking in a digital image-based elasto-tomography system |
US8555282B1 (en) | 2007-07-27 | 2013-10-08 | Dp Technologies, Inc. | Optimizing preemptive operating system with motion sensing |
US20090221368A1 (en) * | 2007-11-28 | 2009-09-03 | Ailive Inc., | Method and system for creating a shared game space for a networked game |
CN101969848B (en) * | 2008-03-14 | 2012-11-28 | 皇家飞利浦电子股份有限公司 | An activity monitoring system insensitive to accelerations induced by external motion factors |
US8320578B2 (en) | 2008-04-30 | 2012-11-27 | Dp Technologies, Inc. | Headset |
US8285344B2 (en) | 2008-05-21 | 2012-10-09 | DP Technlogies, Inc. | Method and apparatus for adjusting audio for a user environment |
US8113991B2 (en) * | 2008-06-02 | 2012-02-14 | Omek Interactive, Ltd. | Method and system for interactive fitness training program |
US8988439B1 (en) | 2008-06-06 | 2015-03-24 | Dp Technologies, Inc. | Motion-based display effects in a handheld device |
US8678925B1 (en) | 2008-06-11 | 2014-03-25 | Dp Technologies, Inc. | Method and apparatus to provide a dice application |
US8996332B2 (en) | 2008-06-24 | 2015-03-31 | Dp Technologies, Inc. | Program setting adjustments based on activity identification |
US8655622B2 (en) * | 2008-07-05 | 2014-02-18 | Ailive, Inc. | Method and apparatus for interpreting orientation invariant motion |
US8187182B2 (en) | 2008-08-29 | 2012-05-29 | Dp Technologies, Inc. | Sensor fusion for activity identification |
MY159289A (en) * | 2008-09-24 | 2016-12-30 | Mimos Berhad | A system and a method for identifying human behavioural intention based on an effective motion analysis |
TWI384423B (en) * | 2008-11-26 | 2013-02-01 | Ind Tech Res Inst | Alarm method and system based on voice events, and building method on behavior trajectory thereof |
US8622795B2 (en) * | 2008-12-04 | 2014-01-07 | Home Box Office, Inc. | System and method for gathering and analyzing objective motion data |
JP5551867B2 (en) | 2008-12-05 | 2014-07-16 | ソニー株式会社 | Information processing apparatus and information processing method |
KR20100065480A (en) * | 2008-12-08 | 2010-06-17 | 한국전자통신연구원 | System for activity recognition |
US8253801B2 (en) * | 2008-12-17 | 2012-08-28 | Sony Computer Entertainment Inc. | Correcting angle error in a tracking system |
US8761434B2 (en) * | 2008-12-17 | 2014-06-24 | Sony Computer Entertainment Inc. | Tracking system calibration by reconciling inertial data with computed acceleration of a tracked object in the three-dimensional coordinate system |
KR101210277B1 (en) * | 2008-12-23 | 2012-12-18 | 한국전자통신연구원 | System for activity monitoring and information transmission method for activity monitoring |
US8587601B1 (en) | 2009-01-05 | 2013-11-19 | Dp Technologies, Inc. | Sharing of three dimensional objects |
JP5649808B2 (en) * | 2009-01-28 | 2015-01-07 | ソニー株式会社 | Information processing apparatus, information processing method, and program |
KR101738569B1 (en) * | 2009-02-17 | 2017-05-22 | 인텔 코포레이션 | Method and system for gesture recognition |
DE202009003034U1 (en) * | 2009-03-03 | 2009-04-30 | Aipermon Gmbh & Co. Kg | Device for activity monitoring |
FR2943527B1 (en) * | 2009-03-31 | 2012-07-06 | Movea | SYSTEM AND METHOD FOR OBSERVING A MARKET ACTIVITY OF A PERSON |
US9489600B2 (en) * | 2009-04-24 | 2016-11-08 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | System and method for determining the activity of a mobile element |
AU2010250785B2 (en) | 2009-05-20 | 2014-08-21 | Koninklijke Philips Electronics N.V. | Sensing device for detecting a wearing position |
US9529437B2 (en) | 2009-05-26 | 2016-12-27 | Dp Technologies, Inc. | Method and apparatus for a motion state aware device |
US9058063B2 (en) * | 2009-05-30 | 2015-06-16 | Sony Computer Entertainment Inc. | Tracking system calibration using object position and orientation |
US20100305480A1 (en) * | 2009-06-01 | 2010-12-02 | Guoyi Fu | Human Motion Classification At Cycle Basis Of Repetitive Joint Movement |
EP2264988A1 (en) | 2009-06-18 | 2010-12-22 | Deutsche Telekom AG | Method of detecting a current user activity and environment context of a user of a mobile phone using an accelerator sensor and a microphone, computer program product, and mobile phone |
US8500604B2 (en) * | 2009-10-17 | 2013-08-06 | Robert Bosch Gmbh | Wearable system for monitoring strength training |
JP2011118776A (en) * | 2009-12-04 | 2011-06-16 | Sony Corp | Data processing apparatus, data processing method, and program |
US9068844B2 (en) | 2010-01-08 | 2015-06-30 | Dp Technologies, Inc. | Method and apparatus for an integrated personal navigation system |
JP2011170857A (en) * | 2010-02-22 | 2011-09-01 | Ailive Inc | System and method for performing motion recognition with minimum delay |
US8990049B2 (en) * | 2010-05-03 | 2015-03-24 | Honeywell International Inc. | Building structure discovery and display from various data artifacts at scene |
JP5628560B2 (en) * | 2010-06-02 | 2014-11-19 | 富士通株式会社 | Portable electronic device, walking trajectory calculation program, and walking posture diagnosis method |
US8639020B1 (en) | 2010-06-16 | 2014-01-28 | Intel Corporation | Method and system for modeling subjects from a depth map |
US9320957B2 (en) | 2010-08-26 | 2016-04-26 | Blast Motion Inc. | Wireless and visual hybrid motion capture system |
US8827824B2 (en) | 2010-08-26 | 2014-09-09 | Blast Motion, Inc. | Broadcasting system for broadcasting images with augmented motion data |
US9418705B2 (en) | 2010-08-26 | 2016-08-16 | Blast Motion Inc. | Sensor and media event detection system |
US9607652B2 (en) | 2010-08-26 | 2017-03-28 | Blast Motion Inc. | Multi-sensor event detection and tagging system |
US9076041B2 (en) | 2010-08-26 | 2015-07-07 | Blast Motion Inc. | Motion event recognition and video synchronization system and method |
US8941723B2 (en) | 2010-08-26 | 2015-01-27 | Blast Motion Inc. | Portable wireless mobile device motion capture and analysis system and method |
US9619891B2 (en) | 2010-08-26 | 2017-04-11 | Blast Motion Inc. | Event analysis and tagging system |
US8994826B2 (en) | 2010-08-26 | 2015-03-31 | Blast Motion Inc. | Portable wireless mobile device motion capture and analysis system and method |
US9396385B2 (en) | 2010-08-26 | 2016-07-19 | Blast Motion Inc. | Integrated sensor and video motion analysis method |
US8905855B2 (en) | 2010-08-26 | 2014-12-09 | Blast Motion Inc. | System and method for utilizing motion capture data |
US9039527B2 (en) | 2010-08-26 | 2015-05-26 | Blast Motion Inc. | Broadcasting method for broadcasting images with augmented motion data |
US8944928B2 (en) | 2010-08-26 | 2015-02-03 | Blast Motion Inc. | Virtual reality system for viewing current and previously stored or calculated motion data |
US9604142B2 (en) | 2010-08-26 | 2017-03-28 | Blast Motion Inc. | Portable wireless mobile device motion capture data mining system and method |
US9247212B2 (en) | 2010-08-26 | 2016-01-26 | Blast Motion Inc. | Intelligent motion capture element |
US9626554B2 (en) * | 2010-08-26 | 2017-04-18 | Blast Motion Inc. | Motion capture system that combines sensors with different measurement ranges |
US9646209B2 (en) | 2010-08-26 | 2017-05-09 | Blast Motion Inc. | Sensor and media event detection and tagging system |
US9406336B2 (en) | 2010-08-26 | 2016-08-02 | Blast Motion Inc. | Multi-sensor event detection system |
US9261526B2 (en) | 2010-08-26 | 2016-02-16 | Blast Motion Inc. | Fitting system for sporting equipment |
US8903521B2 (en) * | 2010-08-26 | 2014-12-02 | Blast Motion Inc. | Motion capture element |
US9940508B2 (en) | 2010-08-26 | 2018-04-10 | Blast Motion Inc. | Event detection, confirmation and publication system that integrates sensor data and social media |
US9235765B2 (en) | 2010-08-26 | 2016-01-12 | Blast Motion Inc. | Video and motion event integration system |
US9401178B2 (en) | 2010-08-26 | 2016-07-26 | Blast Motion Inc. | Event analysis system |
DE102010039837A1 (en) * | 2010-08-26 | 2012-03-01 | Robert Bosch Gmbh | Method and device for controlling a device |
KR101871865B1 (en) * | 2010-09-18 | 2018-08-02 | 페어차일드 세미컨덕터 코포레이션 | Multi-die mems package |
CN103221332B (en) | 2010-09-18 | 2015-11-25 | 快捷半导体公司 | Reduce the encapsulation of the stress on MEMS |
TWI439947B (en) * | 2010-11-11 | 2014-06-01 | Ind Tech Res Inst | Method for pedestrian behavior recognition and the system thereof |
RU2584459C2 (en) * | 2010-12-17 | 2016-05-20 | Конинклейке Филипс Электроникс Н.В. | Gesture control for monitoring vital body signs |
KR101226742B1 (en) * | 2011-03-31 | 2013-01-25 | (주)우리들웰니스 | A walking pattern analysis system |
US9427177B2 (en) * | 2011-04-11 | 2016-08-30 | Fidelity Investment Corporation | Fall detection methods and devices |
US9363361B2 (en) * | 2011-04-12 | 2016-06-07 | Microsoft Technology Licensing Llc | Conduct and context relationships in mobile devices |
US8791901B2 (en) | 2011-04-12 | 2014-07-29 | Sony Computer Entertainment, Inc. | Object tracking with projected reference patterns |
US8718672B2 (en) * | 2011-04-18 | 2014-05-06 | Microsoft Corporation | Identifying status based on heterogeneous sensors |
CN102221369B (en) * | 2011-04-29 | 2012-10-10 | 闫文闻 | Gesture recognizing method and device of ball game and gesture auxiliary device |
US10145707B2 (en) * | 2011-05-25 | 2018-12-04 | CSR Technology Holdings Inc. | Hierarchical context detection method to determine location of a mobile device on a person's body |
CN102198003B (en) * | 2011-06-07 | 2014-08-13 | 嘉兴恒怡科技有限公司 | Limb movement detection and evaluation network system and method |
JP6031735B2 (en) | 2011-06-13 | 2016-11-24 | ソニー株式会社 | Information processing apparatus, information processing method, and computer program |
US11048333B2 (en) | 2011-06-23 | 2021-06-29 | Intel Corporation | System and method for close-range movement tracking |
JP6074170B2 (en) | 2011-06-23 | 2017-02-01 | インテル・コーポレーション | Short range motion tracking system and method |
US9251463B2 (en) * | 2011-06-30 | 2016-02-02 | Wsu Research Foundation | Knowledge transfer in smart environments |
US9374659B1 (en) | 2011-09-13 | 2016-06-21 | Dp Technologies, Inc. | Method and apparatus to utilize location data to enhance safety |
JP6051509B2 (en) | 2011-10-31 | 2016-12-27 | ソニー株式会社 | Power generation control system, power generation control program, and electronic device |
JP5740285B2 (en) * | 2011-10-31 | 2015-06-24 | 株式会社東芝 | Gait analyzer and gait analysis program |
US20130124240A1 (en) * | 2011-11-14 | 2013-05-16 | Srm Institute Of Technology | System and Method for Student Activity Gathering in a University |
US8958631B2 (en) | 2011-12-02 | 2015-02-17 | Intel Corporation | System and method for automatically defining and identifying a gesture |
CN103957777B (en) * | 2011-12-07 | 2018-01-09 | 捷通国际有限公司 | Behavior tracking and update the system |
US8913134B2 (en) | 2012-01-17 | 2014-12-16 | Blast Motion Inc. | Initializing an inertial sensor using soft constraints and penalty functions |
WO2013113036A1 (en) | 2012-01-26 | 2013-08-01 | Healthmantic, Inc | System and method for processing motion-related sensor data with social mind-body games for health application |
KR101939683B1 (en) * | 2012-03-29 | 2019-01-18 | 삼성전자 주식회사 | Apparatus and method for recognizing user activity |
US9477303B2 (en) | 2012-04-09 | 2016-10-25 | Intel Corporation | System and method for combining three-dimensional tracking with a three-dimensional display for a user interface |
US10314492B2 (en) | 2013-05-23 | 2019-06-11 | Medibotics Llc | Wearable spectroscopic sensor to measure food consumption based on interaction between light and the human body |
US9582035B2 (en) | 2014-02-25 | 2017-02-28 | Medibotics Llc | Wearable computing devices and methods for the wrist and/or forearm |
US10716510B2 (en) | 2013-09-17 | 2020-07-21 | Medibotics | Smart clothing with converging/diverging bend or stretch sensors for measuring body motion or configuration |
US10602965B2 (en) | 2013-09-17 | 2020-03-31 | Medibotics | Wearable deformable conductive sensors for human motion capture including trans-joint pitch, yaw, and roll |
US10321873B2 (en) | 2013-09-17 | 2019-06-18 | Medibotics Llc | Smart clothing for ambulatory human motion capture |
US9588582B2 (en) | 2013-09-17 | 2017-03-07 | Medibotics Llc | Motion recognition clothing (TM) with two different sets of tubes spanning a body joint |
US9582072B2 (en) | 2013-09-17 | 2017-02-28 | Medibotics Llc | Motion recognition clothing [TM] with flexible electromagnetic, light, or sonic energy pathways |
US9462632B2 (en) | 2012-07-17 | 2016-10-04 | Qualcomm Incorporated | Concurrent data streaming using various parameters from the same sensor |
US9641266B2 (en) | 2012-07-17 | 2017-05-02 | Qualcomm Incorporated | Sensor with concurrent data streaming using various parameters |
DE102013014881B4 (en) | 2012-09-12 | 2023-05-04 | Fairchild Semiconductor Corporation | Enhanced silicon via with multi-material fill |
US20160051167A1 (en) * | 2012-10-10 | 2016-02-25 | Invensense, Inc. | System and method for activity classification |
US10212986B2 (en) | 2012-12-09 | 2019-02-26 | Arris Enterprises Llc | System, apparel, and method for identifying performance of workout routines |
US9278255B2 (en) | 2012-12-09 | 2016-03-08 | Arris Enterprises, Inc. | System and method for activity recognition |
US10304325B2 (en) | 2013-03-13 | 2019-05-28 | Arris Enterprises Llc | Context health determination system |
US9135248B2 (en) | 2013-03-13 | 2015-09-15 | Arris Technology, Inc. | Context demographic determination system |
US20140288875A1 (en) * | 2013-03-15 | 2014-09-25 | Aliphcom | Methods and architecture for determining activity and activity types from sensed motion signals |
KR102023601B1 (en) * | 2013-04-04 | 2019-09-23 | 삼성전자 주식회사 | Terminal device and method for preventing accident |
US20140349822A1 (en) * | 2013-05-21 | 2014-11-27 | LaTrina Taylor Patterson | WalkBuddy |
US9750433B2 (en) | 2013-05-28 | 2017-09-05 | Lark Technologies, Inc. | Using health monitor data to detect macro and micro habits with a behavioral model |
CN103340634B (en) * | 2013-06-17 | 2015-11-18 | 无锡市中安捷联科技有限公司 | A kind of method detecting people's kinestate based on acceleration change |
WO2014210210A1 (en) * | 2013-06-25 | 2014-12-31 | Lark Technologies, Inc. | Method for classifying user motion |
CN104348855B (en) * | 2013-07-29 | 2018-04-27 | 华为技术有限公司 | Processing method, mobile terminal and the server of user information |
GB2516865A (en) * | 2013-08-02 | 2015-02-11 | Nokia Corp | Method, apparatus and computer program product for activity recognition |
US9622687B2 (en) | 2013-09-05 | 2017-04-18 | Qualcomm Incorporated | Half step frequency feature for reliable motion classification |
US9418342B2 (en) | 2013-12-06 | 2016-08-16 | At&T Intellectual Property I, L.P. | Method and apparatus for detecting mode of motion with principal component analysis and hidden markov model |
CN103727959B (en) * | 2013-12-31 | 2016-09-14 | 歌尔声学股份有限公司 | Step-recording method and device |
US9801568B2 (en) * | 2014-01-07 | 2017-10-31 | Purdue Research Foundation | Gait pattern analysis for predicting falls |
US9506761B2 (en) | 2014-01-10 | 2016-11-29 | Alcatel Lucent | Method and apparatus for indoor position tagging |
US20150198443A1 (en) * | 2014-01-10 | 2015-07-16 | Alcatel-Lucent Usa Inc. | Localization activity classification systems and methods |
JP6508061B2 (en) * | 2014-01-20 | 2019-05-08 | ソニー株式会社 | INFORMATION PROCESSING APPARATUS, INFORMATION PROCESSING METHOD, AND PROGRAM |
CA2939633A1 (en) | 2014-02-14 | 2015-08-20 | 3M Innovative Properties Company | Activity recognition using accelerometer data |
US10429888B2 (en) | 2014-02-25 | 2019-10-01 | Medibotics Llc | Wearable computer display devices for the forearm, wrist, and/or hand |
JP6147446B1 (en) * | 2014-04-22 | 2017-06-14 | ブラスト モーション インコーポレイテッドBlast Motion Inc. | Inertial sensor initialization using soft constraints and penalty functions |
CN105934654B (en) * | 2014-05-09 | 2017-09-26 | 皇家飞利浦有限公司 | For the method and apparatus for the orientation for determining accelerometer |
CN105094305B (en) | 2014-05-22 | 2018-05-18 | 华为技术有限公司 | Identify method, user equipment and the Activity recognition server of user behavior |
US10371528B2 (en) * | 2014-07-03 | 2019-08-06 | Texas Instruments Incorporated | Pedestrian navigation devices and methods |
US20160051168A1 (en) * | 2014-08-25 | 2016-02-25 | Virtualbeam, Inc. | Real-Time Human Activity Recognition Engine |
JP6395295B2 (en) * | 2014-08-25 | 2018-09-26 | 国立研究開発法人農業・食品産業技術総合研究機構 | Animal behavior discrimination device, behavior discrimination method, and program |
BR112017005277B1 (en) | 2014-09-15 | 2022-11-16 | 3M Innovative Properties Company | METHOD FOR MONITORING DYSFUNCTION INDICATORS AND DEVICE FOR MONITORING DYSFUNCTION INDICATORS |
US9410979B2 (en) * | 2014-09-23 | 2016-08-09 | Fitbit, Inc. | Hybrid angular motion sensors |
JP6980525B2 (en) * | 2014-11-20 | 2021-12-15 | ブラスト モーション インコーポレイテッドBlast Motion Inc. | Video and motion event integration system |
US9877668B1 (en) | 2014-11-21 | 2018-01-30 | University Of South Florida | Orientation invariant gait matching |
US10684485B2 (en) | 2015-03-06 | 2020-06-16 | Sony Interactive Entertainment Inc. | Tracking system for head mounted display |
US20190117128A1 (en) * | 2015-03-19 | 2019-04-25 | Meloq Ab | Method and device for anatomical angle measurement |
US10296086B2 (en) | 2015-03-20 | 2019-05-21 | Sony Interactive Entertainment Inc. | Dynamic gloves to convey sense of touch and movement for virtual objects in HMD rendered environments |
US9687179B2 (en) * | 2015-03-25 | 2017-06-27 | Withings | System and method to recognize activities performed by an individual |
FR3037422B1 (en) * | 2015-06-15 | 2017-06-23 | Morpho | METHOD FOR IDENTIFYING AND / OR AUTHENTICATING AN INDIVIDUAL BY RECOGNIZING IRIS |
CA2934366A1 (en) * | 2015-06-30 | 2016-12-30 | Ulterra Drilling Technologies, L.P. | Universal joint |
CN107847187B (en) * | 2015-07-07 | 2021-08-17 | 皇家飞利浦有限公司 | Apparatus and method for motion tracking of at least part of a limb |
US11565163B2 (en) | 2015-07-16 | 2023-01-31 | Blast Motion Inc. | Equipment fitting system that compares swing metrics |
US9694267B1 (en) | 2016-07-19 | 2017-07-04 | Blast Motion Inc. | Swing analysis method using a swing plane reference frame |
US10974121B2 (en) | 2015-07-16 | 2021-04-13 | Blast Motion Inc. | Swing quality measurement system |
US11577142B2 (en) | 2015-07-16 | 2023-02-14 | Blast Motion Inc. | Swing analysis system that calculates a rotational profile |
US10124230B2 (en) | 2016-07-19 | 2018-11-13 | Blast Motion Inc. | Swing analysis method using a sweet spot trajectory |
US9872150B2 (en) | 2015-07-28 | 2018-01-16 | Microsoft Technology Licensing, Llc | Inferring logical user locations |
WO2017038260A1 (en) | 2015-08-28 | 2017-03-09 | ソニー株式会社 | Information processing device, information processing method, and program |
US10172541B2 (en) * | 2015-09-25 | 2019-01-08 | J-Mex Inc. | Motion recognition device and method |
KR102459677B1 (en) * | 2015-11-05 | 2022-10-28 | 삼성전자주식회사 | Method and apparatus for learning algorithm |
US10055948B2 (en) | 2015-11-30 | 2018-08-21 | Nike, Inc. | Apparel with ultrasonic position sensing and haptic feedback for activities |
US11210299B2 (en) | 2015-12-01 | 2021-12-28 | Amer Sports Digital Services Oy | Apparatus and method for presenting thematic maps |
US11137820B2 (en) | 2015-12-01 | 2021-10-05 | Amer Sports Digital Services Oy | Apparatus and method for presenting thematic maps |
US11215457B2 (en) | 2015-12-01 | 2022-01-04 | Amer Sports Digital Services Oy | Thematic map based route optimization |
US11144107B2 (en) | 2015-12-01 | 2021-10-12 | Amer Sports Digital Services Oy | Apparatus and method for presenting thematic maps |
US11587484B2 (en) | 2015-12-21 | 2023-02-21 | Suunto Oy | Method for controlling a display |
US11838990B2 (en) | 2015-12-21 | 2023-12-05 | Suunto Oy | Communicating sensor data in wireless communication systems |
US11541280B2 (en) | 2015-12-21 | 2023-01-03 | Suunto Oy | Apparatus and exercising device |
US11284807B2 (en) | 2015-12-21 | 2022-03-29 | Amer Sports Digital Services Oy | Engaging exercising devices with a mobile device |
GB2545668B (en) | 2015-12-21 | 2020-05-20 | Suunto Oy | Sensor based context management |
US9993182B2 (en) * | 2016-02-19 | 2018-06-12 | Conduent Business Services, Llc | Computer vision system for ambient long-term gait assessment |
US10265602B2 (en) | 2016-03-03 | 2019-04-23 | Blast Motion Inc. | Aiming feedback system with inertial sensors |
US11511156B2 (en) | 2016-03-12 | 2022-11-29 | Arie Shavit | Training system and methods for designing, monitoring and providing feedback of training |
WO2017199589A1 (en) * | 2016-05-18 | 2017-11-23 | 株式会社 東芝 | Behavior estimating method, behavior estimating system, service providing method, signal detecting method, signal detecting unit, and signal processing system |
US20170352130A1 (en) * | 2016-06-05 | 2017-12-07 | Mediatek Inc. | Display apparatus dynamically adjusting display resolution and control method thereof |
CN106197473A (en) * | 2016-06-24 | 2016-12-07 | 北京奇虎科技有限公司 | The crawler behavior recognition methods of equipment and device |
US10564177B2 (en) | 2016-08-01 | 2020-02-18 | Samsung Electronics Co., Ltd. | System and method for user activity recognition using accelerometer |
WO2018030734A1 (en) * | 2016-08-09 | 2018-02-15 | 주식회사 비플렉스 | 3d simulation method and apparatus |
CN107886103B (en) * | 2016-09-29 | 2023-12-08 | 日本电气株式会社 | Method, device and system for identifying behavior patterns |
US10820151B2 (en) * | 2016-10-06 | 2020-10-27 | Mars, Incorporated | System and method for compressing high fidelity motion data for transmission over a limited bandwidth network |
DE102017009171A1 (en) | 2016-10-17 | 2018-04-19 | Amer Sports Digital Services Oy | EMBEDDED APPENDIX |
EP3316076A1 (en) | 2016-10-25 | 2018-05-02 | Thomson Licensing | Activity compensated haptic interface |
JP6737505B2 (en) * | 2017-03-03 | 2020-08-12 | 株式会社ノーニューフォークスタジオ | Walking teaching system, walking teaching method |
CN107102735B (en) * | 2017-04-24 | 2018-06-19 | 广东虚拟现实科技有限公司 | A kind of alignment schemes and alignment means |
US10786728B2 (en) | 2017-05-23 | 2020-09-29 | Blast Motion Inc. | Motion mirroring system that incorporates virtual environment constraints |
WO2018226882A1 (en) * | 2017-06-07 | 2018-12-13 | Amazon Technologies, Inc. | Behavior-aware security systems and associated methods |
IT201700062668A1 (en) * | 2017-06-08 | 2018-12-08 | Univ Degli Studi Roma La Sapienza | PROCEDURE AND DEVICE FOR DETECTING TRAVEL CONDITIONS DURING THE TRAVEL OF AN ATHLETE |
KR101877495B1 (en) * | 2017-06-29 | 2018-08-07 | 주식회사 룬랩 | Smart menstrual cup and method of measuring menstrual blood by using the smart menstrual cup |
CN107669278B (en) * | 2017-09-22 | 2020-11-13 | 广州杰赛科技股份有限公司 | Motion state recognition method and system and animal behavior recognition system |
US10460748B2 (en) | 2017-10-04 | 2019-10-29 | The Toronto-Dominion Bank | Conversational interface determining lexical personality score for response generation with synonym replacement |
US10339931B2 (en) | 2017-10-04 | 2019-07-02 | The Toronto-Dominion Bank | Persona-based conversational interface personalization using social network preferences |
JP7006128B2 (en) * | 2017-10-24 | 2022-01-24 | 株式会社アイシン | Information processing equipment |
US10545578B2 (en) | 2017-12-22 | 2020-01-28 | International Business Machines Corporation | Recommending activity sensor usage by image processing |
US10628667B2 (en) | 2018-01-11 | 2020-04-21 | Futurewei Technologies, Inc. | Activity recognition method using videotubes |
CN108549900A (en) * | 2018-03-07 | 2018-09-18 | 浙江大学 | Tumble detection method for human body based on mobile device wearing position |
US10405146B1 (en) * | 2018-06-11 | 2019-09-03 | The Toronto-Dominion Bank | Voice assistance direction |
US10769422B2 (en) | 2018-09-19 | 2020-09-08 | Indus.Ai Inc | Neural network-based recognition of trade workers present on industrial sites |
US10853934B2 (en) | 2018-09-19 | 2020-12-01 | Indus.Ai Inc | Patch-based scene segmentation using neural networks |
CN109498375B (en) * | 2018-11-23 | 2020-12-25 | 电子科技大学 | Human motion intention recognition control device and control method |
TWI729596B (en) * | 2018-12-21 | 2021-06-01 | 芬蘭商亞瑪芬體育數字服務公司 | Sensor data management |
CN109822574B (en) * | 2019-03-20 | 2021-01-05 | 华中科技大学 | Industrial robot end six-dimensional force sensor calibration method |
CN110209270B (en) * | 2019-05-14 | 2022-10-25 | 李子琪 | Data glove, data glove system, correction method and storage medium |
US11307050B2 (en) | 2020-06-12 | 2022-04-19 | Koneksa Health Inc. | Measuring method and device |
US11397193B2 (en) * | 2020-06-12 | 2022-07-26 | Koneksa Health Inc. | Movement analysis method and apparatus |
CN112033439B (en) * | 2020-08-20 | 2022-08-12 | 哈尔滨工业大学 | Gravity acceleration vector weftless construction method under swinging base geosystem |
EP4361854A1 (en) | 2021-06-25 | 2024-05-01 | Sony Group Corporation | Information processing device, information processing method, and program |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6122960A (en) | 1995-12-12 | 2000-09-26 | Acceleron Technologies, Llc. | System and method for measuring movement of objects |
US20020170193A1 (en) | 2001-02-23 | 2002-11-21 | Townsend Christopher P. | Posture and body movement measuring system |
US6522266B1 (en) | 2000-05-17 | 2003-02-18 | Honeywell, Inc. | Navigation system, method and software for foot travel |
US20050033200A1 (en) | 2003-08-05 | 2005-02-10 | Soehren Wayne A. | Human motion identification and measurement system and method |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3330945A (en) * | 1960-05-25 | 1967-07-11 | Gen Precision Inc | Accelerated north-seeking gyrocompassing system |
US3304787A (en) * | 1962-12-29 | 1967-02-21 | Toyoda Chuo Kenkyusho Kk | Three-dimensional accelerometer device |
US3428789A (en) * | 1964-08-13 | 1969-02-18 | Honeywell Inc | Control apparatus |
US3559492A (en) * | 1967-01-30 | 1971-02-02 | Litton Systems Inc | Two-axes angular rate and linear acceleration multisensor |
US3744322A (en) * | 1970-12-07 | 1973-07-10 | Space Res Corp | Angular velocity sensors |
US3899028A (en) * | 1972-03-30 | 1975-08-12 | Systron Donner Corp | Angular position sensing and control system, apparatus and method |
US3974699A (en) * | 1973-08-28 | 1976-08-17 | Systron Donner Corporation | Angular position sensing and control system, apparatus and method |
US4896268A (en) * | 1987-11-25 | 1990-01-23 | Sundstrand Data Control, Inc. | Apparatus and method for processing the output signals of a coriolis rate sensor |
US4821572A (en) * | 1987-11-25 | 1989-04-18 | Sundstrand Data Control, Inc. | Multi axis angular rate sensor having a single dither axis |
US5128671A (en) * | 1990-04-12 | 1992-07-07 | Ltv Aerospace And Defense Company | Control device having multiple degrees of freedom |
US5178012A (en) * | 1991-05-31 | 1993-01-12 | Rockwell International Corporation | Twisting actuator accelerometer |
US5297028A (en) * | 1991-08-27 | 1994-03-22 | Zexel Corporation Daihatsu-Nissan | Method and apparatus for correcting drift errors in an angular rate sensor |
US5485402A (en) * | 1994-03-21 | 1996-01-16 | Prosthetics Research Study | Gait activity monitor |
US5583776A (en) * | 1995-03-16 | 1996-12-10 | Point Research Corporation | Dead reckoning navigational system using accelerometer to measure foot impacts |
JPH09229667A (en) * | 1996-02-28 | 1997-09-05 | Imeeji Joho Kagaku Kenkyusho | Apparatus and method for measuring movement of rotary joint structure |
US5806365A (en) * | 1996-04-30 | 1998-09-15 | Motorola, Inc. | Acceleration sensing device on a support substrate and method of operation |
JP3505040B2 (en) * | 1996-07-11 | 2004-03-08 | 株式会社リコー | Portable information processing device |
CA2218242C (en) * | 1996-10-11 | 2005-12-06 | Kenneth R. Fyfe | Motion analysis system |
US6301964B1 (en) * | 1997-10-14 | 2001-10-16 | Dyhastream Innovations Inc. | Motion analysis system |
US6176837B1 (en) * | 1998-04-17 | 2001-01-23 | Massachusetts Institute Of Technology | Motion tracking system |
JP4612928B2 (en) * | 2000-01-18 | 2011-01-12 | マイクロストーン株式会社 | Body motion sensing device |
JP3936833B2 (en) * | 2000-08-28 | 2007-06-27 | 株式会社日立製作所 | Body motion sensing device and body motion sensing system |
JP4881517B2 (en) * | 2001-07-12 | 2012-02-22 | マイクロストーン株式会社 | Physical condition monitoring device |
US6853909B2 (en) * | 2001-12-03 | 2005-02-08 | Applanix Corporation, Inc | Walking stick navigator for position determination |
JP4126388B2 (en) * | 2002-04-08 | 2008-07-30 | カシオ計算機株式会社 | Walking direction detecting device and program |
JP4007899B2 (en) * | 2002-11-07 | 2007-11-14 | オリンパス株式会社 | Motion detection device |
JP2005074075A (en) * | 2003-09-02 | 2005-03-24 | Matsushita Electric Works Ltd | Walking cycle measuring device, periodic image obtaining device, compression processor for moving object outline, and moving object discrimination system |
JP2005031697A (en) * | 2004-09-24 | 2005-02-03 | Hitachi Ltd | Microcomputer device for speech recognition and computer-readable recording medium |
JP5028751B2 (en) * | 2005-06-09 | 2012-09-19 | ソニー株式会社 | Action recognition device |
-
2005
- 2005-06-09 JP JP2005169507A patent/JP5028751B2/en not_active Expired - Fee Related
-
2006
- 2006-05-18 US US11/435,746 patent/US7421369B2/en active Active
- 2006-06-09 EP EP06011895.7A patent/EP1731097B1/en not_active Expired - Fee Related
- 2006-06-09 CN CNB2006100916757A patent/CN100545658C/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6122960A (en) | 1995-12-12 | 2000-09-26 | Acceleron Technologies, Llc. | System and method for measuring movement of objects |
US6522266B1 (en) | 2000-05-17 | 2003-02-18 | Honeywell, Inc. | Navigation system, method and software for foot travel |
US20020170193A1 (en) | 2001-02-23 | 2002-11-21 | Townsend Christopher P. | Posture and body movement measuring system |
US20050033200A1 (en) | 2003-08-05 | 2005-02-10 | Soehren Wayne A. | Human motion identification and measurement system and method |
Cited By (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9545518B2 (en) | 2008-07-11 | 2017-01-17 | Medtronic, Inc. | Posture state classification for a medical device |
EP2313004B1 (en) * | 2008-07-11 | 2014-06-11 | Medtronic, Inc | Posture state classification for a medical device |
US9327129B2 (en) | 2008-07-11 | 2016-05-03 | Medtronic, Inc. | Blended posture state classification and therapy delivery |
US8958885B2 (en) | 2008-07-11 | 2015-02-17 | Medtronic, Inc. | Posture state classification for a medical device |
EP2303122B1 (en) * | 2008-07-11 | 2014-10-29 | Medtronic, Inc | Posture state classification for a medical device |
EP2656787A1 (en) * | 2008-07-11 | 2013-10-30 | Medtronic Inc. | Posture state classification for a medical device |
US8688225B2 (en) | 2008-07-11 | 2014-04-01 | Medtronic, Inc. | Posture state detection using selectable system control parameters |
FR2942388A1 (en) * | 2009-02-26 | 2010-08-27 | Movea | SYSTEM AND METHOD FOR DETECTING THE MARKET OF A PERSON |
WO2010122174A1 (en) * | 2009-04-24 | 2010-10-28 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | System and method for determining the posture of a person |
CN102438521A (en) * | 2009-04-24 | 2012-05-02 | 原子能和辅助替代能源委员会 | System and method for determining the posture of a person |
WO2010122173A1 (en) * | 2009-04-24 | 2010-10-28 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | System and method for determining the activity of a person lying down |
US8898041B2 (en) | 2009-04-24 | 2014-11-25 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | System and method for determining the activity of a person lying down |
US9445752B2 (en) | 2009-04-24 | 2016-09-20 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | System and method for determining the posture of a person |
US8834392B2 (en) | 2010-01-08 | 2014-09-16 | Medtronic, Inc. | Posture state classification for a medical device |
WO2011139153A1 (en) * | 2010-05-04 | 2011-11-10 | Technologies88 B.V. | Device and method for motion capture and analysis |
NL2004660C2 (en) * | 2010-05-04 | 2011-11-07 | Technologies88 B V | Device and method for motion capture and analysis. |
US9623257B2 (en) | 2011-04-18 | 2017-04-18 | Medtronic, Inc. | Recharge tuning techniques for an implantable device |
ITAN20130095A1 (en) * | 2013-05-17 | 2014-11-17 | Safe Way S R L | METHOD FOR THE PREVENTION OF ACCIDENTS AND ACCIDENTS AND ITS RELEVANT IMPLEMENTING SYSTEM |
WO2014184638A1 (en) * | 2013-05-17 | 2014-11-20 | Safe Way S.R.L. | Method for the prevention of accidents and system implementing said method |
US11837027B2 (en) | 2014-06-17 | 2023-12-05 | Nant Holdings Ip, Llc | Activity recognition systems and methods |
US9547678B2 (en) | 2014-06-17 | 2017-01-17 | Nant Holdings Ip, Llc | Activity recognition systems and methods |
WO2015195765A1 (en) * | 2014-06-17 | 2015-12-23 | Nant Vision, Inc. | Activity recognition systems and methods |
US10216984B2 (en) | 2014-06-17 | 2019-02-26 | Nant Holdings Ip, Llc | Activity recognition systems and methods |
US10572724B2 (en) | 2014-06-17 | 2020-02-25 | Nant Holdings Ip, Llc | Activity recognition systems and methods |
US11232292B2 (en) | 2014-06-17 | 2022-01-25 | Nant Holdings Ip, Llc | Activity recognition systems and methods |
US9886625B2 (en) | 2014-06-17 | 2018-02-06 | Nant Holdings Ip, Llc | Activity recognition systems and methods |
WO2019042941A1 (en) | 2017-08-28 | 2019-03-07 | Institut National Du Sport De L'expertise Et De La Performance | Method for assessing the mechanical load of an individual |
Also Published As
Publication number | Publication date |
---|---|
CN100545658C (en) | 2009-09-30 |
EP1731097A3 (en) | 2008-03-19 |
EP1731097B1 (en) | 2016-08-10 |
JP5028751B2 (en) | 2012-09-19 |
US20060284979A1 (en) | 2006-12-21 |
US7421369B2 (en) | 2008-09-02 |
CN1877340A (en) | 2006-12-13 |
JP2006340903A (en) | 2006-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1731097B1 (en) | Activity recognition apparatus, method and program | |
Hou et al. | Pedestrian dead reckoning with wearable sensors: A systematic review | |
Chen et al. | Oxiod: The dataset for deep inertial odometry | |
Skog et al. | Zero-velocity detection—An algorithm evaluation | |
JP5594940B2 (en) | Method and apparatus for detecting a substantially invariant axis of rotation | |
US6522266B1 (en) | Navigation system, method and software for foot travel | |
US10215587B2 (en) | Method for step detection and gait direction estimation | |
WO2017215024A1 (en) | Pedestrian navigation device and method based on novel multi-sensor fusion technology | |
Xiao et al. | Robust pedestrian dead reckoning (R-PDR) for arbitrary mobile device placement | |
US10429196B2 (en) | Method and apparatus for cart navigation | |
US10302434B2 (en) | Method and apparatus for determining walking direction for a pedestrian dead reckoning process | |
WO2005017459A1 (en) | Human motion identification and measurement system and method | |
US10126108B2 (en) | Apparatus and method for classifying orientation of a body of a mammal | |
JP5750742B2 (en) | Mobile object state estimation device | |
Sabatini | Inertial sensing in biomechanics: a survey of computational techniques bridging motion analysis and personal navigation | |
Stirling | Development of a pedestrian navigation system using shoe mounted sensors | |
Wang et al. | Scenario-dependent ZUPT-aided pedestrian inertial navigation with sensor fusion | |
Marron et al. | Multi sensor system for pedestrian tracking and activity recognition in indoor environments | |
JP2011047950A (en) | Dead reckoning device | |
JP4714853B2 (en) | Dead reckoning equipment | |
US10678337B2 (en) | Context aware movement recognition system | |
Zhao et al. | Towards arbitrary placement of multi-sensors assisted mobile navigation system | |
Li et al. | Free-walking 3D pedestrian large trajectory reconstruction from IMU sensors | |
Susi | Gait analysis for pedestrian navigation using MEMS handheld devices | |
JP6147446B1 (en) | Inertial sensor initialization using soft constraints and penalty functions |
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 |
|
AK | Designated contracting states |
Kind code of ref document: A2 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC NL PL PT RO SE SI SK TR |
|
AX | Request for extension of the european patent |
Extension state: AL BA HR MK YU |
|
RIN1 | Information on inventor provided before grant (corrected) |
Inventor name: CLARKSON, BRIAN |
|
PUAL | Search report despatched |
Free format text: ORIGINAL CODE: 0009013 |
|
AK | Designated contracting states |
Kind code of ref document: A3 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC NL PL PT RO SE SI SK TR |
|
AX | Request for extension of the european patent |
Extension state: AL BA HR MK YU |
|
17P | Request for examination filed |
Effective date: 20080819 |
|
17Q | First examination report despatched |
Effective date: 20080924 |
|
AKX | Designation fees paid |
Designated state(s): DE FR GB |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: G06K 9/00 20060101ALN20160211BHEP Ipc: A61B 5/00 20060101ALN20160211BHEP Ipc: A61B 5/103 20060101ALI20160211BHEP Ipc: G01C 22/00 20060101ALN20160211BHEP Ipc: G01C 21/16 20060101ALN20160211BHEP Ipc: A61B 5/06 20060101ALN20160211BHEP Ipc: A61B 5/11 20060101AFI20160211BHEP |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: A61B 5/00 20060101ALN20160212BHEP Ipc: G01C 22/00 20060101ALN20160212BHEP Ipc: A61B 5/103 20060101ALI20160212BHEP Ipc: A61B 5/11 20060101AFI20160212BHEP Ipc: G01C 21/16 20060101ALN20160212BHEP Ipc: A61B 5/06 20060101ALN20160212BHEP Ipc: G06K 9/00 20060101ALN20160212BHEP |
|
GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
INTG | Intention to grant announced |
Effective date: 20160405 |
|
GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): DE FR GB |
|
REG | Reference to a national code |
Ref country code: GB Ref legal event code: FG4D |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R096 Ref document number: 602006049840 Country of ref document: DE |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R097 Ref document number: 602006049840 Country of ref document: DE |
|
PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
26N | No opposition filed |
Effective date: 20170511 |
|
GBPC | Gb: european patent ceased through non-payment of renewal fee |
Effective date: 20170609 |
|
REG | Reference to a national code |
Ref country code: FR Ref legal event code: ST Effective date: 20180228 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: GB Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20170609 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: FR Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20170630 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: DE Payment date: 20200618 Year of fee payment: 15 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R119 Ref document number: 602006049840 Country of ref document: DE |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: DE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20220101 |