Just a few thoughts and tips:
rubening87 wrote:
so for martial arts spins, and break dance type of moves, would be enough 2 kinect?
As vmaslov mentioned, 30 fps is probably going to be too slow for very fast moves. That frame rate doesn't capture enough frames for smooth frame-to-frame tracking, so iPi has to rely more heavily on interpolation. Adding more Kinect devices my improve accuracy but it isn't necessarily going to help for fast motions.
That said, I successfully used two
Xbox Kinects a few years ago on a couple of feature films for digital stunt double and creature vfx, and it worked very well. (I'm putting together an article right now about this assignments...will post a link to the article and videos in the near future.)
It really depends on the motion you're capturing, but, in my experience, iPi's interpolation is actually pretty good with two XBox Kinects. You'll need to help it along at times, but it's not that difficult, especially if you're familiar with what the recorded motion is
supposed to look like anyway. Having the RGB video data as a visual reference also helps is there isn't too much motion blur in it.
As for using three XBox Kinects, this doesn't actually allow you to capture faster motion, but it might help smooth out some motions that might be affected by occlusion, and if you have more complete data, that can help with interpolation in those 'lost' frames.
That said, I experimented with three XBox sensors a few years ago, and I didn't find a big difference in quality for my needs, and I went back to using two since it was much easier to deal with in my home studio.
2 XBox Kinects actually works pretty well but you may need to experiment between <90 and <180 degree setups for best results.
Personally, I found <90 works very well most of the time but you need to be conscious of what's visible to the devices 3-dimensionally since the devices are recording depth. Because you are recording depth, the devices actually 'see' a lot more than a 2D camera, which is why you can get away with fewer devices.
<180 may seem like a better choice for coverage but there are a few things to consider:
- you need a lot more space to be able to place the devices in this position.
- you don't necessarily get a lot more space because the devices have limited range. In other words, if you space the devices far apart from each other, the data from one device may gradually grow 'fuzzier' as your performer moves closer towards the other device.
That said, I find <180 does have fewer occlusion problems and can work very well when most of the action stays near the center.
With <90 I find that I gain a little more performance space because I can position both devices on the same side of the room. This is better if you don't have a lot of space to begin with. I also think that, since there is more 'overlap' between the datasets, the point cloud can technically be more 'accurate' in those areas (well, more averaged anyway.) I don't know this for fact, it just seems that way to me.
It's true that the <90 setup can run into more occlusion issues but I find I can avoid much of that by planning the motions to favor the FOV range of the Kinect sensors.
As you might have guessed by now, I tend hop between <90 and <180 depending in what I'm recording. A general rule might be to use <90 when the performance generally faces one side of the room, and use <180 if there is a lot of turning around expected. For me personally, I use <90 most of the time and using <180 for special situations, but you're needs will probably be different.
*****
These days I'm working with two
Kinect 2 sensors, which output cleaner and higher res data. You'll need a second computer to use more than one of these sensors. What I'm finding with Kinect 2 is that the data is definitely cleaner, meaning the point cloud is less 'chunky' and jittery. This doesn't prevent occlusion problems but it helps the tracker deal with it much better. Occlusion errors still happens but it happens less and when it does, it's easier to clean up and correct.
The capture rate with Kinect 2 is still 30 fps though so fast motion can still be a problem. A little less so maybe because the data is more accurate but still an issue. But, unless there is
constant fast motion, I haven't found it to be difficult to deal with--iPi's tracking code is very intelligent and is easy to work with when it needs assistance. Most errors I run into only take a few seconds to a couple of minutes to fix, and I'm usually able to let the tracker handle most of the tracking.
*****
I actually have four Kinect 2 sensors here but because my computer network isn't up to handling more than two sensors at the moment, I haven't been able to test if there is any real benefit to using the additional Kinect 2 sensors yet. I don't know when I'll be able to add another Kinect 2 capable computer yet but when I do, I'll post test results.