Image recognition - Neural Networks or...?(Also, tutorials?)

Started by
6 comments, last by Lumino 17 years, 5 months ago
I'm doing a drm application, and I'd like to add the option for tieing a license down to a web cam image of the user.(I.e we send them a app, that takes a pic of them and saves an encrpyted key file containing it) but although i can handle all the logistics of it, the actual image reconigtion part is way beyond me at the moment. And this is mostly because I can't find a single tutorial that explains it's subjects in code. only math. So, any good tutorials you guys could reccomend? I do remember reading one ages back that used neural networks and was very easy to follow and explinaed with code instead of maths but can't find the link.
Advertisement
What, exactly, are you trying to recognize? To extract the shape of the face? The shape of specific parts of the face? To simply discard the background?

Depending on your objective, there are many options available (graph cuts, active contours...) which are large subjects in themselves.

I'm curious, though: suppose you take a picture of me. How will you determine that another picture of me taken later on will be the same (what if I shaved my head? grew a beard? got a tattoo/piercing?) And how will you prevent people from holding up a poster of Bruce Willis for the Webcam to capture?

In other news, biometrical identification is a top-level research subject nowadays, and most of the talking is done between researchers who know the subject in-depth and have no need to discuss the low-level details — the existence of online tutorials about the subject seems to me exceedingly small. And if you can't deduce the code from the equations (as you seem to imply), you will probably not be able to understand the code written by researchers either. Your remaining options consist in buying an existing biometrical identification solution, or learning enough about the field to understand implementations (by reading books and papers).
Lost password again, ant here.

Yeah I'm well aware of the shortcomings, but I'm mostly looking at is as a marketing tool. You look at a two drm programs. One says "Locks a video to a password." the other says "Locks a video to a machine key, a voice print and a facial image". which would you check out first?

I do want it to do it as best as I can though, hence looking for good tutorials.

I'm hopig for something Neural network related, as I've wrote quite a few of those(though not for ir) in my time and understand them well enough to just focus on the ir aspects of any such tutorial. There definitely is one, i just can't find it anymore.

Quote:Original post by Anonymous Poster
Yeah I'm well aware of the shortcomings, but I'm mostly looking at is as a marketing tool. You look at a two drm programs. One says "Locks a video to a password." the other says "Locks a video to a machine key, a voice print and a facial image". which would you check out first?


If it required investing a non-trivial sum of money, I would check both in no particular order, evaluate which is the most serious, efficient, time-tested and conceptually simple, and choose the best one based on price, usability, protection and user-friendliness considerations that may vary from project to project.

One particular thing I would look for, however, is false positive and false negative rates for any given technique. And, being savvy with statistical theories on the subject, I would be aware of the fact that using many tests sequentially increases either the false positive or the false negative rate, so I'd probably go for the method with the least tests, all other things being equal.

Quote:I'm hopig for something Neural network related, as I've wrote quite a few of those(though not for ir) in my time and understand them well enough to just focus on the ir aspects of any such tutorial. There definitely is one, i just can't find it anymore.


A neural network is used for classification, to answer questions such as "Is this a picture of a tree? Yes/No." They rely on large amounts of learning data (many pictures) compared to the input data, as well as large amounts of memory storage. In your case, I doubt that you have access to large amounts of different data, hence I would tend to consider that a machine learning approach would be far inferior to a tailored approach.

For instance, IRISCAN biometry has built-in hand-written functions for identifying the iris on the picture of an eye, which makes the identification quick and reliable, and then encodes iris contents in a predetermined way that was decided in order to minimize storage requirements, maximize recognizability, and be invariant by iris movements (such as a tilted camera or pupil dilatation).

I am aware of no image recognition papers or tutorials on the subject of reliably identifying a given user from a single picture using neural networks (most papers I've seen either use specific biometric measures, such as the iris, or use active contours with priors to extract face features).
Couldn't someone just print a picture and stick it in front of their camera?
ToohrVyk is right - if you can't read and understand the relevent research papers on the subject you don't stand a chance of getting even a half-decent implimentation. But I just wanted to expand on the practicality of this.

Web cameras are not universally avaliable, and having multiple schemes that let the user choose depending on there capability just allows the crackers to attack the weakest scheme. So you either restrict your market or produce a scheme with more potential flaws - a lose-lose situation.

ToohrVyk is again slap on the money when he sugests an image of Bruce Willis - not only could you use an image, the cracker could write a fake webcam driver that allways outputs an image of your selected celebrity. This scheme is in fact easier to crack than the ushall schemes. Biometrics only work in combination with other security systems - ushally it has to be a security guard making sure you don't game the system. A good example of this is fingerprints with laptops/pdas - instead of the password on a stickynote on the monitor its liberally splattered all over the case of the device in question. It just takes a little more technology to extract than ushall, but certainly nothing you can't buy in your local shops. People buy such devices because it sounds cool.

At the end of the day, theres a very reliable scheme avaliable - online verification with encrypted executables, as used by Steam for example. This requires nothing as annoying as fidling with a webcam by the user and is as good at verification as any other scheme with the advantage that you can detect key sharing and lock accounts.

You are right about one thing - marketing, as biometrics makes peoples eyes glow. But thats its only value, and irrelevant if you were actually going to sell this scheme, as its technical people who would make the choice - and such people are exceptionally good at seeing past bullshit in my experiance.

Sorry to have such a negative view, but this scheme fails the KISS principal spectacularly;-)
Yeah, i realise technical people would be savvy to it all, but we're aimming to hit the mass video consumer market. the youtube crowds. the guys who just want to spend 25 dollars on a app and protect their media. It's an untapped market imo.

Not to say quality is paramount, I'm just saying every idea doesn't have to be the best in it's field, cos frankly, it'll be a fraction of the cost of high end solutions and much easier to use(I imagine, going by those papers :) )
I have this bad feeling your walking youself into a front page Daily WTF. But you seem hell bent on this so here's some links:

Picture Analysis/Recognition:
:: Kohonen Self Organising Map
:: Kohonen Networks

All the best.
Lumino.

This topic is closed to new replies.

Advertisement