HWZ Forums

Login Register FAQ Mark Forums Read

need help for poly fyp

Like Tree2Likes
  • 1 Post By davidktw
  • 1 Post By davidktw
Reply
 
LinkBack Thread Tools
Old 07-11-2012, 02:39 PM   #1
Senior Member
 
Join Date: Nov 2007
Posts: 648
need help for poly fyp

setup: i5 laptop, kinect,

config: pointcloud disable in brekel, NITE Skeleton smoothing set at 0.2


need help for programming kinect. using brekel kinect & motionbuilder 2011.

having problem to get the skeleton to move smoothly like in real-time. like to capture the movement when jumping from one point to another. the movement recorded is not very smooth during the jump.

feel free to give any comment like other software or what i need to take note.
7urfer is offline   Reply With Quote
Old 07-11-2012, 05:23 PM   #2
Arch-Supremacy Member
 
davidktw's Avatar
 
Join Date: Apr 2010
Posts: 10,059
setup: i5 laptop, kinect,

config: pointcloud disable in brekel, NITE Skeleton smoothing set at 0.2


need help for programming kinect. using brekel kinect & motionbuilder 2011.

having problem to get the skeleton to move smoothly like in real-time. like to capture the movement when jumping from one point to another. the movement recorded is not very smooth during the jump.

feel free to give any comment like other software or what i need to take note.
Give that kinect will give marginal errors during the capturing, perhaps what you need is to first smooth out the samples before feeding into the motionbuilder.

I uses kinect but not for motion tracking, however the general idea is similar. At 30fps tracking, you definitely have opportunity to stabilize your tracking points using previous frames points. Using a weight-age system, the current frame with a higher weight-age and less as you move backwards away from the current frames, you can allocate less weight-age. You should get a smoother tracking.

If you are more adventurous, consider the 2nd derivative (which is the rate of change of each tracking point) to affect your weight-age. In this way, when there is an abrupt change in tracking, it will have a much lower weight-age, so that the change in tracking will be more responsive.
davidktw is offline   Reply With Quote
Old 08-11-2012, 02:43 PM   #3
Senior Member
 
Join Date: Nov 2007
Posts: 648
@david thanks for replying

sorry i dun get understand wad u mean by using a weight-age system?
able to explain in simpler terms?
not exactly a programming pro here

Last edited by 7urfer; 08-11-2012 at 02:47 PM..
7urfer is offline   Reply With Quote
Old 08-11-2012, 02:59 PM   #4
Arch-Supremacy Member
 
davidktw's Avatar
 
Join Date: Apr 2010
Posts: 10,059
sorry i dun get understand wad u mean by using a weight-age system?
able to explain in simpler terms?
not exactly a programming pro here
How are you feeding the tracked points into the motion builder ?
Are you doing this realtime or capture first stored into a file and then import this file into the motion builder ?

The idea is sampling averaging.

Suppose I have 0.3, 0.4, 0.1, -0.1. The average will be 0.175. This is a simple averaging with constant weightage across all samples.

If you consider 0.3 is current time frame T's tracked value, 0.4 is frame of T-1 and 0.1 T-2 and -0.1 is T-3 and so forth. Then you can simply put up a sliding window idea to apply your sampling.

Suppose the following tracked stream values

[ 0.3 0.4 0.1 -0.1 ] -0.2 0.0 0.3 0.5 0.7

At T, my actual tracked value after sampling is

[ 0.175 ]

At T - 1, the sliding window should be

0.3 [ 0.4 0.1 -0.1 -0.2 ] 0.0 0.3 0.5 0.7

[ 0.15 ]

As you can see the fluctuation between 0.175 and 1.15 is not as large, that's because this resultant value is after a simple averaging. The simple concept is to minimise on marginal error, use more samples to derive out your actual value.

The larger your sliding window, meanwhile is CURRENT FRAME + 3 PREVIOUS FRAME, the more stable your derived values but you get a less responsive change. Imagine you suddenly move your hand, it will take a long while for the sliding window to give tracked values to reflect the new position of your hand because it takes time for the sliding window to move into the new set of values where it stablized at the new coordinates.

To be more responsive, use a weightage system in the sliding window as such

[ 0.5 * T1, 0.25 * T2, 0.15 * T3, 0.1 * T4 ]

Tx are actual tracked values in the sliding window. You still get average sampling which helps in dismissing errors, but more sensitive now. I believe there are more eleborate algorithm in margin errors management. You might need to read up more if you are interested in this field. This field is not exactly my forte, so there are limitation to how much I can advice. This is a starting point you can try.

If you want to play with robotics and relevant fields, you need to work on good mathematics and programming skill sets.
davidktw is offline   Reply With Quote
Old 08-11-2012, 09:24 PM   #5
Senior Member
 
Join Date: Nov 2007
Posts: 648
erm...is there any reference book that u can intro me?
i think i might need to do some reading.
thanks in advance
7urfer is offline   Reply With Quote
Old 08-11-2012, 09:39 PM   #6
Arch-Supremacy Member
 
davidktw's Avatar
 
Join Date: Apr 2010
Posts: 10,059
erm...is there any reference book that u can intro me?
i think i might need to do some reading.
thanks in advance
I don't think I have any reference to offer you. These are knowledge from general understanding on how to approach error reduction by multiple sampling approach. It's the same as why during a laboratory experiment, you perform the same test multiple time and get the average. It's not rocket science.
davidktw is offline   Reply With Quote
Old 27-11-2012, 08:27 PM   #7
Senior Member
 
Join Date: Jun 2008
Posts: 1,110
ts what you're looking for and what davidktw said is a moving average filter. it's fairly simple to implement just google around...

y[n] = (x[n] + x[n-1] + x[n-2] + x[n-3]) / 4

Where y is output , x is input and n is current sample
gammie is offline   Reply With Quote
Old 20-12-2012, 12:11 AM   #8
Arch-Supremacy Member
 
davidktw's Avatar
 
Join Date: Apr 2010
Posts: 10,059
I using brekel ver 0.50 + motionbuilder 2011 for my project.
My project is trying to stream Live motion from brekel kinect to motionbuilder.
i'm able to get the image on motionbuilder but there are some issue.

1. Motion not so smooth as there are some staggering.
2. Unable to capture more precise movement like neck or wrist twisting movement.

PS: I NEED SOME SERIOUS HELP

I'm following the guide from the link below
For smoother movement, consider tweaking this ?

davidktw is offline   Reply With Quote
Old 07-03-2016, 11:41 AM   #9
Arch-Supremacy Member
 
davidktw's Avatar
 
Join Date: Apr 2010
Posts: 10,059
Hi sorry to impose on the old thread as i am in dire needs and am unable to post a new thread. I am requiring help on a 2d and 3d mapping robot and am in dire need of help. I am willing to give a cash reward and budget for helping do email me at kilojack1312[at]gmail[dot]com
Post your questions if you wanted people to help
kilojack likes this.
davidktw is offline   Reply With Quote
Old 07-03-2016, 12:08 PM   #10
Junior Member
 
Join Date: Mar 2016
Posts: 18
My questions are mountainous and i probably require someone who has done this or with major experience which is why i put the cash incentive.
kilojack is offline   Reply With Quote
Old 07-03-2016, 12:15 PM   #11
Arch-Supremacy Member
 
davidktw's Avatar
 
Join Date: Apr 2010
Posts: 10,059
My questions are mountainous and i probably require someone who has done this or with major experience which is why i put the cash incentive.
Well then hope you get someone to help you personally Otherwise you can try posting what you need critically here.
kilojack likes this.
davidktw is offline   Reply With Quote
Old 07-03-2016, 12:19 PM   #12
Junior Member
 
Join Date: Mar 2016
Posts: 18
Well then hope you get someone to help you personally Otherwise you can try posting what you need critically here.
Thank you for your support. My brains are about to be ripped lol. Alright i will try to post the basic stuff and move on. Again sorry to highjack as being new restricts you from creating a new thread.
kilojack is offline   Reply With Quote
Reply
Important Forum Advisory Note
This forum is moderated by volunteer moderators who will react only to members' feedback on posts. Moderators are not employees or representatives of HWZ. Forum members and moderators are responsible for their own posts.

Please refer to our Terms of Service for more information.


Thread Tools

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are On