7 ms·
Show HN: Our new online face recognition demo
- lbrandy 18y agoI have a few comments for you guys about our demo: 1. Image to Image is a bit misleading because we are fairly strict in our online demo in pose requirements, so many faces are "non-suitable" because they aren't frontal. 2. It works much better for video settings (but that type of online demo is way too CPU intensive) because we can organize each person into continuous tracks and we only need them to become 'frontal' once to do matching. And the more they are frontal, the more data points we have. Here's an example of recognition applied to video: http://www.youtube.com/watch?v=jsjf3IDXef8 http://www.youtube.com/watch?v=jsjf3IDXef8
- 10ren 18y agoImpressive. What's the implementation language? I assume C.
- rlm 18y agoWhy do you assume that? It could just as well be MatLab or something similar, that makes fiddling with multimedia very easy.
- Rod 18y agoHow would you create a stand-alone executable file using MATLAB?
- 10ren 18y agoPerformance
- rlm 18y agoMatLab-performance can be quite good :-)
- 10ren 18y agoOK, I'm not familiar with MatLab performance. :-) But image processing is very computationally expensive, and the demo here is unbelievably fast. It must be optimized for its specific tasks. You just can't get that from a general package. In retrospect, it's not surprising that they're optimizing some parts with assembler - even SSE (Streaming SIMD (Single Instruction, Multiple Data) Extensions http://en.wikipedia.org/wiki/Streaming_SIMD_Extensions http://en.wikipedia.org/wiki/Streaming_SIMD_Extensions), which I hadn't heard of, but which is the kind of vector parallelism that gives supercomputers their speed.
- lbrandy 18y agoIt's a hodgepodge of low-level stuff. Some C. My favorite is the SSE-optimized assembly :)
- westside1506 18y agoDoes this technology work using both images simultaneously? Or could lots of images be pre-processed individually into something that allowed a cheaper comparison? Just to try to explain the question better, here's an example. Let's say I have 10 images and I want to find the most similar people among any pair of images. Do I need to run every pair of images (45 full comparisons) or can I pre-process the 10 images into something such that the 45 comparisons can be done in a less expensive way?
- lbrandy 18y agoRecognition is generally broken down into two steps, processing faces into "templates" and then comparing those templates. Generating templates includes all the preprocessing stuff as well: detecting faces in an image, estimating their pose, and finding landmark points. Our site goes into these issues in some depth (with some examples). So yes, we do break the process down: generating the templates can be done individually for every image, which allows you store that result and use it for future comparisons. Generating 2 templates is many more times expensive than comparing those templates. However, as your dataset grows, generating templates grows at N, and the number of comparisons you need to do grows at N^2. So eventually, comparisons dominate.
- chime 18y agoIt worked quite well for my face but not my wife's ( http://webdemo.pittpatt.com/recognition_demo/view.php?id=X3YPJH35U9579 http://webdemo.pittpatt.com/recognition_demo/view.php?id=X3Y... ) because her head is slightly tilted and not facing front in these pictures. I'm certain your video recog. is better but I think you should look into making the requirements for photos a bit more lax because very few photographs have full-frontal, upright faces. And once you get it right, talk to Facebook/Myspace etc. :)
- dkokelley 18y agoSorry, we are experiencing a large volume of submissions. There are 1 images ahead of you. You can try refreshing this page later, or resubmit the same image to see the results.
- spydez 18y agoMy first R&D project at my company when I just got out of college was in image recognition, so this is pretty interesting. Here's 2 I did: http://webdemo.pittpatt.com/recognition_demo/view.php?id=JKWNVKFUCF167 http://webdemo.pittpatt.com/recognition_demo/view.php?id=JKW... http://webdemo.pittpatt.com/recognition_demo/view.php?id=Q9JA7ZVNZW158 http://webdemo.pittpatt.com/recognition_demo/view.php?id=Q9J... The second one pretty impressive, even if it's under the default 0.00 threshold. I mean, RMS's mouth is obscured behind a katana and it still got a -0.14. You need to work on the PG recognition though. It doesn't seem to want to recognize two photos as being both him. :P
- lutorm 18y agoFunny, my first test was also a pic of RMS.
- vaksel 18y agoSeems to work, good job.
- 10ren 18y agoMichael Jackson vs. Jackson 5 http://webdemo.pittpatt.com/recognition_demo/view.php?id=N56RE2RST3297 http://webdemo.pittpatt.com/recognition_demo/view.php?id=N56... It needs a threshold of -3 to detect it, but it gets the right face (I think).
- markessien 18y agoI totally misunderstood what this is. You recognize and match two faces across two pictures! I thought you just identify that a face is there. You REALLY need to explain a bit clearer what it is - for you it's obvious, for a random person clicking through, it's not obvious at all. The Michael Jackson picture would be the best sample of this.
- markessien 18y agoSo...how exactly does one go about getting a-hold of this technology? There is no download link and it's not clear if the contact link will result in my being sent a demo.
- dbul 18y agoCMU has been working on facial recognition for a long time. VASC and the now defunct MAPS lab did quite a bit of research for recognizing objects in general as well as facial features. It is good to see a spinoff company that can make money from the hard work put into it. More info: http://www.ri.cmu.edu/research_project_detail.html?project_id=621&menu_id=262 http://www.ri.cmu.edu/research_project_detail.html?project_i...
- ktharavaad 18y agoVery good demo and it also happens to be related to my interests so here's my little analysis. 1, The face detection of this program is more impressive than the face recognition. 2, The detector is able to detect across variaty of poses and come up with a an estimate for the pose of the face. It does a lot more than the best opensource detector (openCV) out there. 3, If you download the mac program and open up the package contents, you will see that under the data file directory, it uses a different set of files (features.bin, log_likelihood.bin) for frontal and profile view detection. 4, If you look at the company's CEO's background and publications here: http://www.ri.cmu.edu/person.html?type=publications&person_id=270 http://www.ri.cmu.edu/person.html?type=publications&pers... It would suggest that the detector is using a histogram-based detector as outlined in his paper. The other detector made by CMU is the Rowley-Kanade one but I don't think that one is fast enough to run in realtime. Shamelsss plug, I implemented a javascript face detector ( with source code ) here: http://blog.kpicturebooth.com/?p=8 http://blog.kpicturebooth.com/?p=8 , it only handles frontal non-rotated faces =P
- spoiledtechie 18y agoLooks like something to give the government to track your EVERY MOVE. Good job tho guys. Its pretty impressive.
- cool-RR 18y agoHow is this better than what Facebook uses?
- thepanister 18y agoThis is amazing... although it needs some additional work( no ideas in my head for now). Did you use your own algorithm for it?
- allenbrunson 18y agowho else thought of this? http://www.youtube.com/watch?v=Uco5Ed-5y2U http://www.youtube.com/watch?v=Uco5Ed-5y2U (synopsis: ancient mr. show sketch involving a corporate mascot called pit-pat. warning: swearing)
- brett 18y agoIt was certainly the first thing that came to mind for me. After seeing the URL, I was pretty disappointed not to find a magical nonthreatening pansexual spokesthing on the actual page.