Halloween Forum banner
1 - 10 of 10 Posts

· Registered
Joined
·
7 Posts
Discussion Starter · #1 ·
I'm a software guy that's developing a concept for a creepy portrait of a figure whose eyes follow you as you move through a room like in the old Scooby Doo cartoons. I attached an animation of what the finished product should look like but there are a lot of secret-sauce behind-the-scenes technical features to make it work. If there are any industry folks who are interested, please PM me!

Let me know what you think. :)

 

· Registered
Joined
·
205 Posts

· Registered
Joined
·
7 Posts
Discussion Starter · #3 ·
Interesting trick but I think it would be more effective if the portrait is completely flat, otherwise the suspension of disbelief would be diminished somewhat. The technical features to achieve the effect involve facial recognition and infrared video processing.
 

· Registered
Joined
·
30 Posts
This approach would require a PC for processing behind the scenes, but if you are into .Net:
http://www.aforgenet.com/
It is an open-source image processing library. I have used it to detect objects with a webcam in real time.
Many of the examples out there deal with color filtering, but if you could control the ambient lighting in the webcam's view, you could use "blob detection" only.
-Mike
 

· Registered
Joined
·
7 Posts
Discussion Starter · #5 ·
I was thinking of using a Raspberry Pi, OpenCV, and an IR camera for use in dark environments. It would primarily rely on facial recognition, but if that fails I'd have the servo move the eyes towards the biggest moving blob in the room. ;)
 

· Registered
Joined
·
30 Posts
How far away do you imagine people would be from this in the typical scene?
These IR proximity sensors can see out to about 5 feet. You could position 2 of them at 45 degree angles fanning out in front of the picture. You could then poll the 2 analog voltages from the 2 sensors, compare them, then calculate the best position for the eyes to look.
That might be a simple approach without needing to get too fancy.
-Mike
 

· Registered
Joined
·
7 Posts
Discussion Starter · #7 ·
I'd imagine people possibly being up to 10 feet away -- I haven't worked with proximity sensors before but the range might be an issue. I don't think the computer vision approach should be too difficult and with an on-board computer I have the option of easily adding sound effects or turning it into a wifi security camera.
 

· Registered
Joined
·
13 Posts
I just ordered 3 of the IR proximity sensors (Sharp GP2Y0A02YK0F) for a similar project, and I plan to use them with an Arduino Uno board. I also looked at using a Microsoft Kinect, but the cost was high and I think it required a PC to be connected. I'll let you know how the IR sensors work out.
 

· Registered
Joined
·
125 Posts
Face detection/tracking is totally doable with OpenCV, but you need to be comfortable developing in C/C++. The Beta version of OpenCV 3.0 has changed some of the face detection functions that you may come across referenced in older how-tos, so be sure to check out the latest docs if you use this version.

Another thing to note is that the Pis are fairly processor limited, so your frame rate may not be very high.
 

· Registered
Joined
·
468 Posts
There are simple ways, and not so simple ways to do this, depending on what your requirements are. Some things to consider are: I don't think you need facial recognition, as you mentioned earlier, unless you want to respond to faces you have seen before. Face detection and tracking typically requires training, but I think this would only be required if you have to track faces from a camera mounted higher up. This would enable to detect TOTs that are facing your display. If the detecting camera is mounted more at eye level you would not even need facial detection or tracking, you could simply detect movement. For example, focus the eyes on the top of the biggest moving object within the field of view. The advantage of this would be much simpler software, and no training.
 
1 - 10 of 10 Posts
This is an older thread, you may not receive a response, and could be reviving an old thread. Please consider creating a new thread.
Top