Dancing With the Robots
Posted on Jul 20, 2016 7:00 AM. 5 min read time
A few years back, as I was thinking of projects that would raise interest in technology for young girls, I thought of my own hobbies. That’s where I thought of dancing… and robots. Wouldn’t it be nice to make your own choreography and have your own crew that would mimic your every move?
The result would be a mix of Dance central, with an Xbox Kinect for the recognition of your moves, and some Nao robots to mimic them.
But How Would that Work?
In 2010, there was a wave of enthusiasm over the Kinect release, and not just for gamers: roboticists, computer engineers, and geeks of any kind were excited to have access to such amazing technology that inspired various projects for about 150$US. In robotics, it was and still is used for environment mapping, object tracking, detection of distance, etc. There was some controversy around this, but you can easily read the signals from the Kinect to use it for your own purposes, making it easy to implement in various projects.
Kinect uses a color camera and a depth sensor to capture your movements. Embedded in the Kinect are various algorithms: facial recognition algorithm, skeletal structure interpretation, etc. It uses 20 to 26 skeleton joints to define your actual body position.
The two Kinect versions – the old school version that I have at home and the Xbox one version
When using Kinect with Xbox games such as Kinect Adventures, the game replicates your detected movement on an avatar shown on screen (this is not always the case though:-Dance central 1 only showed your skeleton... the avatars you saw on screen were the dancers you had to mimic, not yourself). So you see yourself live, but in your avatar shape.
For a dancing robot, the first steps would be the same, but instead of showing your movements on your avatar, the robot itself would replicate it.
We’ve talked about industrial robots replicating human’s movements here. As you can see, the whole process was slow, so it might work on a languid ballet routine but not so well on a Lady Gaga song, which would be a bit too fast for processing.
The precision for the detection of your actual body position is impressive: about 3mm in height and width and 1 cm in depth for the first Kinect version. My ego will tell you that this kind of precision is possible only under the optimal conditions, and that with ambient light, the Kinect ‘just didn’t get my move’ because it was perfect. But that’s just my ego.
OK, so we can capture the movements… Now let’s see how robots can actually replicate them and dance :)
Just for you, I have made a compilation of my favorite dancing robots… All kinds of them!
First are the dancing drones, a choreography of 100 drones created by Intel and Ars Electronica Futurelab that has set a world record for Most Unmanned Aerial Vehicles (UAVs) airborne simultaneously.
Next are two industrial robots that take a break from their dull repetitive job:
Now it might be that I have never actually used an industrial robot to make it dance (why haven’t I thought of that?), but I was quite impressed by the funky move at 0m11sec. Don’t you want to spoil some cycle time to integrate that move? :)
You may already have seen this year’s Chinese New Year event, which was celebrated with 540 synchronized dancing robots. I personally like the break dancing part of the choreography:
Now for my top 3 favorite Nao robot dancers:
The ‘robot dance’ of these three:
The balancing act of this one:
But for the fluidity of its moves, I have to give the award to this one:
So back to my ‘dancing robot’ project I had in mind a few years back to raise interest in technology for young girls… That was in 2010, when the Kinect just came out. Surely in 6 years, somebody else has done something about it? Sure :)
Now if I didn’t mind having some kind of gear directly on me, I might also have tried this one that uses an exoskeleton, since the results are pretty impressive!
As for my own project, I have opted for the super-sophisticated version of the crew: they’re called kids. I have no gear to wear, there’s no coding involved, they are super fast at learning, and tada! I too have my own crew in my living room, trying to mimic my every dance move!
And I have to say, as much as I enjoy watching those dancing robots, it’s much cuter having a 17-months-old baby trying to mimic your moves :)