MDMAniac said:
I understand the principle from OP, my question was related to the fact that basically Natal was taught some set of positions of human body. But when designing game around Natal, developer may have some crazy idea, and then BAM! that pose happened to be not included in the set Natal knows about. You can't be serious when saying it knows all possible configurations, and OP tell us that Natal learned those poses which are more likely to appear than others. That's what I'm worried about, but again I'm not technical savvy, and if there is solution for this problem, I'll be glad. |
The way I read it, it doesn't need to "know" all possible configurations. It's an expert system that makes educated guesses to convert the images into the 3d skeleton structure.
It's probably based on a neural-network-like piece of software, and the input they provided was meant to train it.
That's how handwriting recognition software or voice recognition software generally works as well: the software doesn't "know" all possible configurations of loops and lines or all possible phoneme combinations. But it's been trained by giving it the correct answers over a significative subset of cases. These are obvioulsy a tiny subset of all possible configurations, but still the bet is that every configuration you'll show to the system in practice will be close enough to a known one: in these kinds of software recognition works by calculating a "matching score" that is used in finding the most likely answer.
In other words even if the system only "knows" with 100% accuracy poses A, B and C because the designers did the work of building the skeleton points for those, an incredible number of intermediate, combined, extrapolated poses will be generally correctely transformed into a skeleton model because of that limited knowledge base.
Of course there might be really weird poses, so far from the known ones that the system will match it very poorly. But since the system knows that you're a human being moving less quickly than a hummingbird, it will be able to infer the position of your limbs from previous states (one every 30th of second is a good rate for human motions) even when it can't really "understand" the current pose in terms of its knowledge base.
At least, this is this developer's point of view based on what I know from those statements... take everything with a pinch of salt, but this is roughly how these pieces of software tend to be designed.