Oct 5, 2010

Ideas for Face detection application in daily usage.

I had posted this idea on Feb 14 2009 halfbakery.com . After that, It has almost got a life of it's own. I just made a backup/snapshot here for people who go through my blog.

This post has been edited to remove halfbakery post actions (like edit, add, flag , etc.) . Comments have not been included as the posters might want to edit them on the site.

Face based presence sensor, Auto-brightness and tilt for laptop screen & more!!

use that integrated webcam for more than it was designed for.

[Update 6: Since I posted this, I have regulary come across stuff that uses head tracking, every time increasing my hopes that all these ideas are coming closer to reality .. See links]
[UPDATE 5: added another idea 8) ]
[UPDATE 4: modified idea 7]
[UPDATE 3: added another idea 7) ]
[UPDATE 2: added one more contributed idea and changed main title and title of 1) of so that Jutta does not get thrown off ;-)]
[UPDATE: added 2 more ideas 4 and 5. also added a contributed idea]
***** ***** Idea begins here ***** *****
Most new laptops,netbooks come with integrated webcams on the top. I can immedietely think of two really usefull ways of using this.
1) Replace input device activity detector with face detector for sensing user presence.
Instead of relying on keyboard and mouse activity, rely on availability of face for activity sensing. No face in front for more than 1 minute? lock screen, show as away on IM. Face came back ? show "unlock" password prompt. This is especially usefull if you are watching a movie or reading a long article using auto-scroll. The screen won't lock/go to screen saver mode in the middle of it.
2) Auto tilt.
I sometimes use my laptop when I sleep on my side to read really long pages. As I use GNU/Linux, I just issue the command xrandr -o 1 or xrandr -o3 depending on which side I am sleeping on. As far as I can remember many recent Windows graphics drivers, even some old ones register Ctrl+Alt+cursorkey to change orientations.
My idea was to use the web cam to detect which angle your face is on.
There are enough face detection softwares out there. Even good open source ones. If someone who can understand all the code can make it extract the angle of the face, then the angle can be fed to another piece of code which uses simple heuristics and time outs to change the orientation of the screen when the user is seeing the screen at 90 degrees.
3) Auto-brightness
At least in linux, its quite easy to change the brightness of the laptop screen, you just write your brightness level to a special file and done. if you can find out the ambient brightness from the camera, then just simply adjust screen backlight brighness appropriately through code. done.
4) Could also be an interesting input for gaming. Though it can be a pain in the neck if the game gets too continuous or fast paced. But the possibilities are interesting.. [a] In a FPS you can use it to control the head of the charector (to look around). [b] In a flight simulator, you could use it to control the pitch, roll, etc
Even better: If you look away from the screen for more than 2 seconds the game can pause itself!
5) [ok.. ideas are getting a bit crazier now]
Hands free! Use it for alternative input for dialogs.. Nod your head around x axis for yes. nod your head around y axis for no. Hands free!
Hands free browsing!. Firefox plugin and extension which can be switched on while having lunch. The plugin that knows where you are looking and automatically scrolls it to centre (very very useful if you have the habit of reading slashdot or other news while having food). A left wink can bookmark the page and position for rereading. A right wink can bookmark the page and position for commenting later on(after lunch).
6) Sleep pause
If you are watching a movie and doze off, the movie should get paused, and the laptop can go to low power mode. ( I am confused whether I should be really adding this idea in the "contributed" section as i got the idea from [bigsleep]'s nick :-)
7) Boss / kids / wife detector.
Saves a lot of embarrassing moments ;-)
8) Guesture based reading of cards (Visiting cards, barcodes(?) semacodes, etc)
If I point at an object (near the camera) edge with an index finger, it should try to find text/barcode/semacode on it. OCR it and present in a dialog. After I confirm or correct and then confirm the input, operations follow suit - URL is bookmarked/launched, visiting card info is stored in my addressbook, etc.
The cam of my EEE Pc is 1.3 megapixel and so I guess all newer notebooks carry good enough cameras.
Contributed ideas:
[2 fries shy of a happy meal]
".. detect how far a persons face is from the screen and change font size accordingly.."
".. if one of a number of faces disappears[while watching a movie] it could press pause."
augment speech recognition with face detection. just like hearing-impaired people do.
kamathln, Feb 14 2009

Dual spectrum Eye Recognition dual-spectrum_20eye_20recognition
got any laptops with IR cams ? [kamathln, 25 2009]

(5) implemented by opera!!! http://my.opera.com...log/face-the-future
(seems to be april fool though :-( ) [kamathln, Apr 01 2009]

CamSpace http://www.youtube....watch?v=v0srY37kkMw
Comes close to (4) [kamathln, May 02 2009]

Sixth Sense http://www.ted.com/...he_sixth_sense.html
Comes close to 8 [kamathln, May 02 2009]

smert.net http://smert.net/20...-beta/#comment-2805
Implementation by Jason [kamathln, 02 2009]

Presence sensor *almost* baked! http://www.pcworld...._cant_get_here.html
not on sale in the US yet though... [DIYMatt, May 19 2009, last modified May 20 2009]

Mousetrap http://live.gnome.org/MouseTrap
Gaze based cursor control [kamathln, Jul 02 2010]

John Underkoffer's hand gestures demo http://www.ted.com/...with_a_gesture.html
21 Quest 's suggestion :baked? Just have to adapt it to Laptop :) [kamathln, 04 2010, last modified Jul 06 2010]

same UI Chat_20Enhancer
for text-based conversation [FlyingToaster, Jul 04 2010]

HandVu http://www.movesins.../HandVu/HandVu.html
Hand Gesture Recognition using OpenCV [kamathln, Jul 07 2010]

Auto-dimming TV http://www.gizmag.c...watching-you/15330/
[comes close to (1), but on tv and not on a computer. Samsung Bravia TV dims/switches off when you are not looking [kamathln, 15 2010]

Ubuntu getting physical http://design.canon...9/getting-physical/
[kamathln, Sep 16 2010]

Compiz head tracking http://ubuntuforums...thread.php?t=952895
[kamathln, 16 2010]

Proxemic media player concept http://www.youtube....watch?v=OHm9teVoNE8
Comes close to the string of ideas in comments that came about thanks to idea #6 [kamathln, 01 2010]

Jul 13, 2010

Surprising Old Tech

[The theme of this collection is gadget/tech concepts that we feel "current technology", but has existed for a long time. Of course, this list is definitely not complete. If you know anything that matches the theme but I have missed, please suggest them in the comments. The main reason they are more widespread today is because of falling prices and advancements in processor speed and storage, making it more feasible. But if companies coming up with current products based on these old concepts act as though they inventted the concept, please send them a reminder.]

Apples' first Iphone? [Apple's secret Iphone design, 1983]

IBM Simon [First Smart Mobile phone. 1993 Also the first smart mobile phone with touchscreen]
Dont miss the Full view of the UI(big file)

EO personal communicator/Penpoint OS 1991 (its 50 mins long, but its
just superb considering its from 1991, so please make time to watch.
you can skip first 8.5 mins if you are in a hurry):
The dev tool demoed in 1994 is not less awesome:

The "Mother of all demos" from 1968 . [more than just the mouse, it was the data management ideas that I liked. We could probably call it one of the first crude "mashups"]

First hand writing recognition was partly mechanical , Nov 1914 (yes, 1914)

Aspen Movie Map 1978 was street view 30+ years before Google introduced street view

Etaks Car Navigation System  1985 was a navigation system that does notuse satellite aid, and instead relies on dead reckoning.

 First Watch calculator 1977 (dont miss the advanced features)

First digital camera 1975

17000 mile journey on a modified cycle with a solar powered laptop back in 1983

First HDTV (monochrome, 819 lines) came in 1949!

Patent of iPod like device back in 1979

Multi-touch, Multi-pointer UI, And some concepts like magic lenses which are not yet in today's world! 1982 - 1997 . These need not necessarily be invented by the people who demonstrate them in the video.

Xerox Alto :[Desktop , 1973]

Xerox Star:[Desktop, 1982, dont miss screenshots .. search on youtube too]

ATT Viewtron [an older try at Internet/www 1981]

Digital Desk by Pierre Wellner, 1991. Some of the "Envisionment" simulations were also implemented in the EuroParc during this project.

Touch Screen, [1982]

And now let us take a detour from the digital world

P1 electric car by Porsche 1898

Disclaimer : these were a bunch of stuff I came across by searching on the internet. I have not researched thoroughly about them, nor have I confirmed these. Though these info have been got from somewhat reliable sources, I do not give any kind of assurance that the data/information is correct. I only added items here which I got impressed by the age of the claim and quality/geekery.

Jun 4, 2010

JqS5 Slide show and bookmarklet.

I just loved JQS5 (jQuery Simple Standards based Slide Show System) for the simple beauty that it is. If you just have a bunch of points to put across, and you are fast at html, you can throw together a slideshow in about 2 minutes.

Start writing a normal html file, put the main title in <h1> tag, your name in <i> follow it by a bunch of lists of points, each headed by an <h2>, load it in the browser and you are ready to hit full screen.

"Oh wait .. dont you have to add the css and js" ?

Oh yeah!, or you could just let these 2 bookmarklets to do that for you .. drag these bookmarklets to your bookmarks toolbar:

Load JQS5



"Load JQS5" inserts the the js and css .. Dont worry if not much happens, the js is not "activated" - only loaded. Click the "show" button. and let it do the rest for you.

These bookmarks load the js and css from the JQS5 website itself, which I discourage on 2 counts.
  1. We are using JQS5 website's bandwidth
  2. It will be faster to load it from the local machine.

Feb 8, 2010

Inkjet Printer hacks

Hacks are fun. Hacks are also usefull. Wierdly, I suddently stumbled upon 3 hacks back to back that use inkjet printers. So I started to list those that I find. If you know more, please leave a comment

Direct to cd printer used for printing cirquits

Inkjet printer used to "print" several different medical tests on paper based, postage stamp sized, "lab" (watch the whole vid, its included somewhere)

Inkjet printer used to "print" out a set of living heart muscles. (watch the whole vid, its included somewhere)

Inkjet printer used to "print" out other organs like kidney, bladder etc.