Advertisement
If you have a new account but are having problems posting or verifying your account, please email us on hello@boards.ie for help. Thanks :)
Hello all! Please ensure that you are posting a new thread or question in the appropriate forum. The Feedback forum is overwhelmed with questions that are having to be moved elsewhere. If you need help to verify your account contact hello@boards.ie

Facial Recognition

Options
  • 03-10-2006 4:31pm
    #1
    Moderators, Education Moderators, Technology & Internet Moderators Posts: 35,079 Mod ✭✭✭✭


    Hi guys.

    I'm starting work on my third year project and I decided that doing a facial recognition program would be really cool. You know the type the program has a picture of somebodies face, analysises it and takes key measurements that uniquely identify that person so that they can be identified later (Kinda like las vegas or C.S.I. type stuff). The only problem is that I have just realised I havn't a notion how to do this.

    I'm just wondering if anyone has any suggestions on how to do this or knows of any website where they have done something similar.

    The language I am using is C# if anyone knows of any libraries that can help with this that would be great.

    Any help on this would be great guys.


Comments

  • Closed Accounts Posts: 8,866 ✭✭✭Adam


    Does this kind of thing actually exist? I was always of the impression that it was a made for tv tech thing that would realistically be very very difficult to achieve...perhaps I'm naive though!

    EDIT: Google is my friend...wow...


  • Moderators, Education Moderators, Technology & Internet Moderators Posts: 35,079 Mod ✭✭✭✭AlmightyCushion


    Yeah it exists. And while I have found a few programs that do it. They all use a neural net that requires training or something equal to that effect. Which sounds cool but doing something that advanced scares the living crap out of me.


  • Closed Accounts Posts: 8,866 ✭✭✭Adam


    I found this: http://sourceforge.net/projects/opencvlibrary/

    I'm not really sure what it is tbh, I think its just a library of the calculations used...there's a forum on there that might help you though.


  • Moderators, Education Moderators, Technology & Internet Moderators Posts: 35,079 Mod ✭✭✭✭AlmightyCushion


    This seems to be helpful (I havn't been able to figure what the hell this thing actually does either) but unfortunately it can only be used for c++ and visual basic and I really would prefer to stick with c# and not have to teach myself a new language. But I will keep it as an option.

    Thanks for the help though.

    Does anyone know of anything like this for c#?


  • Closed Accounts Posts: 17,208 ✭✭✭✭aidan_walsh


    If the library can be compiled as a DLL library, you can call unmanaged DLLs from C#. Doing so could also earn you bonus points in your project ;)


  • Advertisement
  • Closed Accounts Posts: 8,866 ✭✭✭Adam


    /pats self on back

    :)


  • Registered Users Posts: 1,466 ✭✭✭Smoggy


    I have no experience in facial recognition software , but you can be fairly sure that the algorithms aren't straight forward, could you be jumping in at the deep end ?

    my friend created software for his 3rd year project that came with spell checking algorithms (the idea that the likes of mobiles wouldnt need to store a dictionary), its no way as cool as facial rec software, but it turned out to be quite an interesting project.


  • Moderators, Society & Culture Moderators Posts: 9,689 Mod ✭✭✭✭stevenmu


    The basics of it can be simple enough, but you really need to decide exactly what you're trying to achieve with this. Are you trying to create a system that could pick a terrorists face out of a crowded airport, or something more basic, like a system to create company ID cards for workers. One such system I've seen would take a photo and analyse things like the relative distances between your eyes and nose or various other facial features. This could then be stored on an ID card and compared against the bearer of the ID card. Something like this would be relatively simple to achieve.


  • Banned (with Prison Access) Posts: 1,380 ✭✭✭derry


    EEEEEEKKKKK thats serious programming stuff

    My friends in IT college who did software program projects some of them looked at something similar finger print and eye recognition

    Thier project bogged down quickly as the programs out there are all propiertry and so you cant get the code without big money and the companies had teams of programmers to write the code sothey changed to another project


    I think even simple shape recognition programs are difficult

    sooner you than me....


    Derry


  • Registered Users Posts: 2,426 ✭✭✭ressem


    The wiki link related to fade_to_grey's suggestion
    http://opencvlibrary.sourceforge.net/#head-62a8722021cf124ccbf21ae0916e19aae66ea453

    should at least introduce one way of carrying out the problem and terminology.


  • Advertisement
  • Registered Users Posts: 7,314 ✭✭✭Nietzschean


    opencv is the way to go i'd some courses based about it previously, as computer vision libraries go its by far the most complete library thats publically available i've seen anyway.

    to the OP just swap to using C/C++ , the CV algorithms are rather expensive at the best of times, C intel compiler could probally give you some quite good speed ups running it. And sure C/C++ is something any comp student should know anyway imo.

    though realistically nothing in the Open CV wiki or resource pages will help you learn the theory behind what your doing, so if that matters at all(for a college project i'd assume it does? ) you'll still have to go get a book on it, what was it Sonka's one i've used before
    http://www.amazon.com/Image-Processing-Analysis-Machine-Vision/dp/053495393X/sr=8-1/qid=1160181956/ref=pd_bbs_1/104-3710153-9755132?ie=UTF8&s=books
    its one of the bigger titles in the field, though for an undergrad its pretty heavy reading after the first few chapters...

    i'd some machine vision book that was more readable somewhere, can find out the title if thats any use to you?

    though in all honisty i wouldn't go near comp vision unless your prepared for a fun learning curve, there are easier things for a 3rd year project...

    though if you are going for it, things you'd be looking at would be identifying the eye's(tends to be pretty easy) , then measuring the distance between them, or some other feature like that, you'll end up needing to try probally recreate a 3D image from a single 2D picture based on shading to get good accuracy, which isn't alot of fun.

    (facial recognition is still an area of major research and isn't considered fool proof last i recall)


  • Registered Users Posts: 5,379 ✭✭✭DublinDilbert


    Sounds like a cool project. A Neural Net would be ideal for this sort of thing... In fact neural networks for pattern recognition wouldn't be too difficult. Don't be put off by the term neural network, the concept is quite simple, and they are very good at dealing with fuzziness in the incoming data..

    I would consider developing/testing the neural network in matlab, with different facial images stored on the hard disk... It would be a nice one to test to, take lots of photos of yourself from different angles/lighting conditions, then pass them through the neural network.

    You could use a web cam to take images then verify the user is who they say they are in C#


  • Moderators, Education Moderators, Technology & Internet Moderators Posts: 35,079 Mod ✭✭✭✭AlmightyCushion


    Cheers for the reply Dilbert but I dropped that idea and did an image editing program instead (complete photoshop killer by the way :D) I was thinking for my forth year project that I could ressurect this idea as it is a pretty cool project. Either that or something with directx haven't decided yet. I plan on doing some reading up over the next couple of months though and maybe get a start made on it. But we'll see how that goes :D. So if any ones got any pointers or anything they think I should read then please leave a comment.


  • Registered Users Posts: 21,264 ✭✭✭✭Hobbes


    IEEE Computer magazine has a nice article recently on this. "A language for human action".

    (you need to be a member to read)
    http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?isnumber=4198228&arnumber=4198245&count=38&index=16

    Basically it is a linguistics language that maps human movement/facial expressions. They would probably have some good stuff on face recognition.

    But as someone has pointed out this would be a heavy project.


  • Registered Users Posts: 4,276 ✭✭✭damnyanks


    I think unless you could come to some agreement with your supervisor to complete a certain % and then carry it on as a final year project you will be hard pressed to get something useful done.

    The problem with "cool" and interesting projects is they are a killer on time. You need to sit down and think of something you can manage to complete without wrecking your performance in other classes etc.


  • Registered Users Posts: 6,240 ✭✭✭hussey


    I did a simple digit recongnition program before, man it was a pain

    it was an interesting project, but I spent 60% of my time researching rather than coding

    But I didn't use a library, as the point (of my project) was not to use one.

    neural nets are your friend!


Advertisement