LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Fall Detection with Quaternions

Hello,

I have a wearable device that gives output in Quaternions and I have the four values from q0 to q3. My task is to develop a threshold based fall detection system based on these values. I am totally new in working with this. 

 

Could someone guide as to where I should start. Do I need to convert Quats to Euler angles for this? FYI I don't have access to Accelerometer values.

Any help is appreciable

0 Kudos
Message 1 of 8
(3,584 Views)

Hi GoKu,

 

do you have typical values for "not falling" and "falling" conditions?

Is there any data pattern you can recognize?

Is there a datasheet dexcribing your sensor data?

 

Please provide more information to get answers, that will push you in the right direction!

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 2 of 8
(3,552 Views)

Just thinking about the problem as a physiologist, it would seem to me that rotations about the Z axis would be "benign" (though you might get dizzy), while rotations about the X or Y axes (or combinations thereof) would tend to bring the center of gravity away from the point of support, destabilizing the subject.

 

While quaternions are certainly one way to represent such rotations, I would think that expressing the motion using rotation vectors would make more intuitive sense.  I don't know of data on the subject (but it wouldn't surprise me if such data were present), but any rotation velocity vector that has a significant deviation from the Z axis could signal a pending fall ...

 

Bob Schor

0 Kudos
Message 3 of 8
(3,537 Views)

Hi GerdW,

The device is fixed to a shoe in the posture similar to what you see in the picture.

I don't have the threshold values yet. 

Right now I am just thinking about forward and backward fall. So I assume rotations of 90 degress about Z axis in either direction have to be considered. Or do I have to consider Roll & Pitch above a threshold indicating fall? 

I have attached sample data read from device

 

Just some Note:

I also have matlab files like Euler from Quat, NEDdegree from Rotation Matrix, Rotation matrix from Quat, which I have been told to use. But I don't knowhow.

Download All
0 Kudos
Message 4 of 8
(3,522 Views)

If you are worried about (only) forward/backward fall, then (assuming the convention RH axes with Z Up, X out the nose, and Y out the left ear) you only have to worry about rotations about the Y axis, often called "Pitch".

 

How much Mechanical Engineering (or mechanics) knowledge do you have?  Do you the conditions for fore-aft stability for a standing (human) subject?

 

Bob Schor

Message 5 of 8
(3,513 Views)

I think Bob makes a good point about establishing an "Initial Threshold" for a fall.  However, I would only use that as an initial threshold.  Why? consider these secnarios:

 

  • Subect intentionally transitions to a supine posture.  For instance, reclining in a chair or laying down upon a bed, engaging in bathing for sport or hygine.  These would not be "Fall" actions.  Of especial note consider the case of springboard diving.  In each of these cases the following moment of deceleration would be needed as a threshold to discriminate a "Fall" from a non-hazard posture change.
  • Subject decends a staircase unconventionally or is defenestrated.  These would be "Falls" but, the basis vectors of H could be chaotic.

In either case, translations back to moments of acceleration would be helpful - especially to those of us like myself, that are less conversant in the math concepts involved.


"Should be" isn't "Is" -Jay
0 Kudos
Message 6 of 8
(3,504 Views)

Hi Bob,

 

In my case, the detection is focused on a worker in a Industrial environment near machines and with in a 10 m radius of the machine. I do have to consider the cases of lateral fall. The coordinate system is NorthEastDown meaning( with your analogy) Z comes out of nose, X through left ear, and Y upwards. 

Besides using Yaw for forward and backward fall, what kind of fall can I detect with roll & Pitch combined

 

 

0 Kudos
Message 7 of 8
(3,474 Views)

Sigh.  While one is always free to define coordinate systems any way you want, it really complicates things to use coordinates that differ from 99% of the rest of the world!  [A seminal paper in the eye-movement literature drove me crazy until I realized the Author was using a left-hand coordinate system, perfectly legal, of course, but confusing, as I kept getting the opposite sign from his results].

 

So I'll go back to my suggestion of doing as much as possible with Rotation Vectors to describe the orientation of the body with respect to a "base" orientation (which we can take as "standing upright, normal to Earth's Gravitational Field", the usual Z axis).  If you now express change of body orientation as the derivative of the Rotation Vector, the problem reduces to having derivatives that depart "significantly" (to be determined by your study or modeling) from the Vertical Axis.

 

As I learned it, Yaw, Pitch, and Roll come from ship or airplane motions.  There is always a question of whether the coordinate system is fixed on the Object or on the World, but I'm going to beg the question by assuming that the Object is more-or-less "upright" (the boat, for example, is in calm seas with its keel down).  Yaw is rotation about the Vertical Axis (either Earth Vertical or Object "vertical" when in the upright position).  Roll is rotation about the Object's "axis of motion", i.e. along the boat's long axis (as that is the direction it moves normally), while Pitch describes the movement of this "axis of motion" in the (Earth-) vertical plane.  Note that the Roll, Pitch, and Yaw axes are always at right angles to each other.  In the Usual Convention, Z is vertical, X is "axis of motion", and Y is at right angles to X and Z.

 

Bob Schor

0 Kudos
Message 8 of 8
(3,461 Views)