xiotechnologies / gait-tracking Goto Github PK
View Code? Open in Web Editor NEWLicense: MIT License
License: MIT License
hello,
I would like to try out your code howeveer I get the following errror with the importation of imufusion :
import imufusion
ImportError: numpy.core.multiarray failed to import
Did you already encounter this problem or do you have an idea of how to fix it?
Hi,
the python code seems to be intended for use with a previously recorded dataset in determining how to deal with the moving/non-moving moments of time. Some questions to that:
Thanks
Hello, thank you very much for your project which helps me a lot. However I wanted to test your code and I get this error:
AttributeError: module 'imufusion' has no attribute 'CONVENTION_NWU'
I'm sorry if this is a silly question but I'm a beginner. I checked that the latest version of imufusion was installed. I'm working on conda, maybe that's where the problem comes from?
Thanks in advance for your help.
Hello,
Thanks for sharing your code, I am getting some errors while running your code. For the parameters and data of the code I did not make any changes. But still this error occurs.
"
D:\ProgramData\Anaconda3\envs\labelme\python.exe D:/code/Gait-Tracking/gait_tracking.py
Error: 0.082 m
"
What should I do about it, please?
Thank you.
Hi, how to get the imufusion source? Thank!
Hi, thanks for your code!
When I run project with my own data, I find the Yaw has a error compare to real value.
Maybe it will cause the error for gait-tracking
Hello,
Very nice demo
But when I run it, ahrs_internal_states.acceleration_rejection_timer
, gives me an error.
Should I replace it with ahrs_internal_states.acceleration_recovery_trigger
Hello @xioTechnologies ,
First of all, thank you for your great work on this Gait-Tracking algorithm.
I'm working on an IMU project using the STM32 lsm6dsr sensor, and I'm having issues with dropping over 1 meter on the Z axis (please take a look at the pictures on the links below).
X-Y Plane.png
X-Y-Z Plane.png
Do you have an idea what can be issuing this dropping on the Z-axis, or what I can do to decrease it? The test was made on a flat surface, and it shouldn't be any movement around the Z-axis. I have used data from a gyroscope and accelerometer.
Thank you in advance and best regards,
Dragan
can i use other devices collect data instead of matlab's data;the way I use it is with a hand-held gyroscope
The imufusion library in gait_tracking.py is not available. Could you help to fix tt? Thanks so much!
I have Acceleration data and Gyroscope data with 100Hz. When I am trying to use this, the direction showing is total opposite than the actual direction. Like If I am going in North Direction then it is showing I am going into South Direction. Why is that so??
And what are the parameters I should vary to make it compatible with my sensor(MPU6050 GY-521) ??
@xioTechnologies
Hi, Thanks for your great work.
I'm going to do a dead reckoning using IMU in a mobile robot.
For this algorithm, I understand that speed and position are obtained through integration only if there is acceleration.
For constant velocity motion, the acceleration value is very small.
Then can I use this algorithm even in the above situation?
If it's not suitable, do you have any algorithms to recommend in my situation?
I'd appreciate it if you could answer me.
Thanks,
Hello!Can you tell me where the "import imufusion" in your code comes from?
hi,how the gyroscope in used in acceleration computation?
Hi , can this tracking method used in the Android data?
I tryed to get the gyroscope and accelerometer data from Android phone, some data like below
Time (s),Accelerometer X (m/s/s),Accelerometer Y (m/s/s),Accelerometer Z (m/s/s),Gyroscope X (rad/s),Gyroscope Y (rad/s),,Gyroscope Z (rad/s)
0.005 0.16660027 0.07058827 9.853045 -0.0017561859 -0.0018325418 3.8177954E-4
0.01 0.1689931 0.07537391 9.83151 -5.344914E-4 -0.0012216945 -2.2906772E-4
0.015 0.17377874 0.0634098 9.836296 -0.0017561859 0.0012216945 -0.0014507623
0.02 0.14745769 0.058624156 9.8219385 -0.0023670332 0.0 -8.39915E-4
0.025 0.14027923 0.04426722 9.836296 -5.344914E-4 -0.0018325418 -0.0014507623
0.030000000000000002 0.14985052 0.032303106 9.81476 -0.0023670332 -0.0012216945 -8.39915E-4
0.035 0.15702899 0.032303106 9.843474 7.635591E-5 -0.002443389 -8.39915E-4
0.04 0.15463616 0.051445685 9.802796 -5.344914E-4 -0.0012216945 -2.2906772E-4
0.045 0.1689931 0.05383851 9.829117 7.635591E-5 -0.0018325418 -2.2906772E-4
the sample_rate is 200HZ and I changed the data fomat by follow code
sample_rate = 200 # 200 Hz
timestamp = data[:, 0]
gyroscope = data[:, 4:7]*180/math.pi
accelerometer = data[:, 1:4]/9.81
I first stood still for a period of time, then walked around a building with my phone, which was about tens of meters. In the end, the starting and ending positions were basically the same. However, from the calculation results, there was basically no change in the displacement.
Hi, can you exaplain why you multiply the earth acceleration by the gravitational acceleration (9.81)?
Gait-Tracking/gait_tracking.py
Line 64 in ccc5521
Hello,
First I would like to thank you for the experiment you did and the information so rewarding.
I am a civil engineering student and I want to use the IMU sensor to determine the displacement of a particle.
I am currently using a WitMotion Bluetooth BLE 5.0 9 Axis WT901BLE sensor.
For the calibration of the sensor, I use the software provided by the company Witmotion.
The recording is done by a frequency of 20 Hz. I try to have first simple displacements, like 30 or 50 cm on the X axis.
I entered my data in your code by changing the frequency, but I still get zero speed and zero displacement.
Can you tell me if this code can work in my case, if so what are the parameters to change?
If not, can you direct me to other codes, or what do you recommend?
Thank you
Hello,
I'm using your code to plot a 3D figure of gait tracked with my Arduino MKR IMU shield (BNO055), but I'm encountering some problems. In particular, I believe that the plotted position (in meters) does not match reality.
First of all, I collected 10Hz data for over 60 minutes without filtering the data in my Arduino code. Do I need to filter the data?
The IMU was upside-down, so the z-axis was pointing downwards. I set the NED convention, but do I need to multiply the acceleration by -1?
These are my imufusion settings:
`
``ahrs.settings = imufusion.Settings(imufusion.CONVENTION_NED, 0.8, 2000, 20, 10, 1 * sample_rate)```
And I modified the acceleration threshold as follows:
`is_moving[i] = numpy.sqrt(acceleration[i].dot(acceleration[i])) > 0.55
and the margin :
margin = int(0.1 * sample_rate)
Could you please tell me if I have set the parameters correctly?
Thank you.
I want to use my own data from my own IMU. I was wondering how important is it that the timestamps on the 2 sets of sensors match?
Does the code expect an exact sample rate or an average sample rate? (my sensor is able to get an average of 50 hz, but its not perfectly logging every 0.002 seconds)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.