Kinect Sex - Because you knew I'd make this post sooner or later
Oh come on. You knew this was going to happen. I just had to stop integrating people's code long enough to actually make the damn blog post. So let's ruin the end of our nice 4-day weekend (in the US, at least) by taking some new technology and donginating it a bit.
The kinect. If you haven't heard about it yet, you're probably not reading this blog right now, because people interested in dildo tech are usually also at least semi-interested in real tech, and this has been all the fuck over the real tech news lately. Not only that, there's an open source, cross platform driver set available so you can do whatever your perverted little heart wants with this poor piece of future, thus continuing the human condition of "not being able to have nice things." (Full disclosure: Some of the code in those drivers is my fault, as is the code integration.)
But, for those of you have haven't read up yet, here's a quick kinect overview.
Most cameras produce 1 image. It's made up of color information.
The kinect produces two images. Color information, and depth information. It does this by projecting evil rays onto whatever is in front of it and then seeing how much the evil distorts and using that to calculate distance. Anyone that calls this IR is lying. Being hit by the kinect camera is evil, and is a sin.
The evil looks like this:
The result is fucking awesome, and also gives you depth. Evil depth.
For an idea of how we used to have to do depth, check out this video of a creepy gesture project I did in 2007.
And now, here's a picture of me doing an impression of the dude from Indiana Jones that got the medallion burned into his hand, in a combination RGB and depth image from the kinect.
So you have your normal color picture, as well as how far away things are in the picture, which means we can easily cut out what's in front of and behind a body and just see the body, and then spend our computing power figuring things out about that certain body's position and movement instead of just trying to find it with all of the background clutter. Instead of having to do all the weirdness with the calibration and the dots in the video, now we just say "Only look for things like between 2 and 2.5 feet away from the camera", and the camera goes "ok" and we expect to find a hand in there and we just have to look at the depth outline. This is WAY easier and less mathtastic than the dots. Less mathtasticness for finding hands means more mathtasticness for shiny.
There's some microphones on the kinect too but we don't know how to use them yet so I'm just gonna ignore them for now.
The question arises: But how can I fuck it?
Well, you can't fuck it like, directly. The airvents are pretty small, and honestly, it's a camera. I /guess/ it could be insertable (lord knows that never stopped anyone with a wiimote), but... no. Dildo cams exist for a reason.
It's an electronic eyeball. And really, how often do you stick it in someone's eyeball?
Put your hand down, Japan.
The next question arises: But how can I fuck with it?
Ok, better question. There's a few different sex things you could do with the kinect. But let's look at what other people have come up with in the past few weeks first.
MotionSwinger is basically a joke website with pictures from Second Life that's not all that interesting outside of the following block:
let Kinect scan in your whole body and see how you and your willie rank in comparison to other motion swinger Users (Internet & Xbox Live required)
Now, there's a few reasons this isn't very easily possible, but I'll get into that later.
The Kinect Titty Tracker brings up a lot of interesting properties of the kinect. First off, it's using depth to find body shape in order to know where to put the images. This would be a much more difficult problem with just an RGB camera due to trying to figure out where the body in the picture was with all of the background clutter behind it. Now you can just use depth to find the structure of the body, and go from there, without having to worry about lighting or relative position of nipples or whatever. This could certainly be improved upon by isolating the body depth, then culling out the rest of the RGB image to do image based analysis on the body alone (i.e. to actually find nipples via depth plus coloration/patterns), but we get proof of concept with this, as well as titties. Proof of titty concept.
So what can the kinect bring to sex? Well, probably not a good real time rendering of your cock, or strap-on, or really any genitalia a usable way for pornography. Why? Because that's not really what it was made for.
Microsoft put a ton of work into making the kinect track the human body as a whole, so you can play games by jumping and running and generally acting the fucking fool and feel like you're in the game instead of just sad. Genitalia, for the most part, are not a major geometric feature of the human body when taken in perspective of physical size (as opposed to say, genitalia perspective in relation to the ego, where they may actually make up more than 100%). Neither are they normally used in the control of video games, be they rated everyone or AO. Not to say that experiment hasn't been tried, but it didn't turn out too well, and we're probably a few years off of the video game market being ready for Mike Tyson's Super Cockslap-Out. So why even try to track that small part when you're interested in the whole body? You may be able to see it, but it won't work well.
But, since this is a psuedo-science blog, let's sudo-science some shit together to make this seem researched.
This is your run-of-the-mill Doc Johnson Vac-u-loc dildo, same kind I'm sure most of my readers with a few fucking machines strewn around the house. It's around 5.75", so we can call this "average". No, really, if you are so appendaged, feel free to hold yourself up to that not-to-scale image and feel insanely larger than average. I'll wait.
Ok, all done?
Anyways, the first thing we have to remember is that we have a boundary of around 18" from the camera that we have to stay out of, otherwise we violate the focal depth and don't get a reading. So, let's see what sort of depth information we get at 18".
This is just a colorized version of what the depth data gives us. So you can see the dildo in front of the background. Great if we wanted to know where the dildo was, but...
This is a point cloud rendering of the dildo. Each point represents a point of distance in space, and it's colorized based on the RGB image we get back. Remember, we're only getting depth information from a single source, therefore we fall prey to THE SHADOWS insert scary music here. You can see that in this rendering. You get the front of the cock, sorta...
But no back. And if I weren't a lazy bastard, I'd take video of the rendering and you'd see how much information we lose from the depth camera scaling too. It's staticy as hell.
Not only that, you then have a common problem of looking at the human body from a single point when trying to render a scene: self-occlusion.
For instance, check out when happens when I stick out my tongue and take incredibly crappy images of the resulting point cloud.
From the front, we're ok. Ish. Sorta.
But from the side, where things get interesting because hey we've got depth now, my tongue occludes my chin and I become freaky no-chin guy! Now gimme some candy! (Yes I realize halloween was last month but it's never too late for an Adam Sandler SNL reference). 3D porn, while doable with this, won't be very interesting.
In short, porn is about sex, but for many customers it's also about being able to see the sex in a way that doesn't make you think "Wait, why does her arm detach completely when her boob is in front of it" or "why does he have a penis shaped hole in his stomach". The pattern the kinect uses to get depth data is made for picking up full bodies to control video games, and therefore isn't quite so good at picking up minutiae about those bodies.
However, none of this will or should stop people from trying. I bet we'll see kinect porn and possibly kinect skype services within the month. Just don't come crying to me when you lose side or under boob to breast shadowing or taint viewing due to ball blockage. Yes, there will be depth, but it will be very inaccurate and noisy and I think most people will just want their 2D image back. We've had a few millenia to get that one right, after all.
Now, what can we do with the body parts that ARE big enough for the kinect to register? That's where the really interesting part comes in.
First off, let's start with this TUIO interface.
So you may be thinking, "But qDot, what's interesting about this?" Well, mainly the fact that it's easier to find gestures thanks to the depth information here. In this video, fists are found via depth thresholding, which is a bit of a hack, but still shows that when we say "only look at picture information that's at a certain depth", we can do cool things quickly.
Let's apply that to sex. Sexual manuevers usually make for somewhat deliberate gestures, as the following Whitest Kids You Know video shows.
Now, usually when we talk about sex toy control interfaces, we need hardware. Someone to stick it in, or stick in, or whatever, that has sensors in it to tell us how far what got stuck where. Usually, that hardware is also shit.
The kinect alliviates the need for having hardware, because now as long as we have a shot of the "action", as it were, we can use that "gesture" as a control. Not only that, the gesture itself is the toy. Or you could employ a toy under the gesture. The possibilities, they may or may not halt.
With masturbation, however, the kinect does not make this a trivially solved problem. Due to the close contact of the hand with the body, possibly with some inanimate object in between, there will still have to be some calibration and thresholding to figure out exactly where the genitalia versus the hand versus the surrounding body parts are. We'll have the image and the depth data, but it's not like the above above video where the hands are being held far out from the body, which is a situation the kinect is made for. Masturbation and general self-manipulation is something that's out of the kinect's normal operating procedure, but I'm sure we'll figure something out. We're smart and bored, after all.
Finally, there's avatar overlays. Now that we can very easily know where your head, body, arms, etc are, we can put images and overlays on that to turn you into whatever non-realistic, cartoony thing it is you want to be to get off. The above picture is actually from logitech's quickcam avatar suite, but this is so happening on kinect like so ASAP it's not even funny. The above titty tracker video is pretty much proof of concept right there.
In summary, the camera can watch you masturbate, easily know you are masturbating, and use information that to control shit, be it your text editor or someone else's love device. It can also make bad 3d porn of you while you masturbate and control, or it can overlay cartoony shit on you so you don't have to be you while you're doing whatever it is you do to yourself if you're into that to control that thing that other person is into.
I don't think I've really broken any new ground on the already over-done subject of sex and 3d cameras here. I'm sure the pervs of the world to prove me a sexual luddite once again. At least, I hope they will.