Python IR Tracking For The Handicapped

[Techb] had a friend who was paralyzed after an accident and could no long use a computer. He rigged up an amazingly simple mouse interface using python to implement infrared tracking. The controller was built from an old hat by adding an IR LED and wireless mouse modified so that the button could be clicked by the user’s mouth. A webcam with exposed film used as a filter can track the IR LED and take input from the wireless mouse buttons.

This setup, which draws inspiration from Wii Remote white boards,  is much simpler than the Eyewriter (and doesn’t shine an IR LED into your eye). Although [Techb] wants to add facial recognition to the system, there’s something to be said for such a simple implementation.

[Thanks Wolfmankurd]

18 thoughts on “Python IR Tracking For The Handicapped

  1. This is similar in operation to FreeTrack, or NaturalPoint’s TrackIR. With FreeTrack you open the webcam, take the IR filter out, and the floppy disc layers are there to filter visible light and let IR light pass.

    I’d imagine that’s similar to what the floppy disc layers are for here.

  2. Not to ruin the moment, but the whole “friend” thing…? Not so much. Read the link. He was just fucking around, and ran into a handicap guy that was complaining, and realized what he had been fucking around with could help the guy.

    Still a nice thing to do, but it doesn’t sound like they’re even friends after the fact. Just some guy he felt like helping… I guess that makes it even better, but whatever. My favorite line was “no he gets online and looks at porn just like the rest of us!”

    @UKSci: atrain is right. It filters everything BUT IR. It is powered by a python script after all; It’s just looking for the colored dot I would guess. Sounds like eventually he wants to do facial recognition so he won’t need the hardware hack.

  3. I didn’t know the guy until the survey thing. But after I introduced him to my project we became friends.

    And I should have clarified it does filter out all other light but infrared. It looks for the first true pixel value from the getprojection() function in PIL.

    I have written a new updated version that looks for the highest RBG value to base on. It can read two IR dots now. Mouse movement isn’t incorporated in the new version, but could be implemented via slop degrees.

    My ultimate goal was to mimic the WII with my webcam, it just happened to help someone in the process.

  4. i don’t see why there’s even an upset about using “handicapped/disabled”. It’s the program that’s there to help.Weather it’s for a friend or stranger, doesn’t matter. The fact that he took time to come up with this is awsome! It takes some one who cares with the know how to do this!So while those of you are wondering “which term” to use, Tech B will be helping those that need it! I am for one very proud of Tech B!

  5. hey would you happen to know anything about gaze tracking using just the simple webcams? i mean yes it would require computer vision (pycv?) but i don’t know much.. OpenCV 2.3.1 installation on dev c++ is still not complete.. i don’t have any idea what i’m gonna do about it. and i hate MS VC++.. so bloated.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.