[Digikam-devel] Re: Face detection

Alex Jironkin alexjironkin at gmail.com
Fri Nov 5 16:21:39 GMT 2010


You can do all this already. Just got to use more than one instance of libface. The only issue might be is the name of configuration file. At the moment its libface-config.xml, so if more than one instance of libface is running on the same config folder it will get confused. But that can be easily changed.

The only difficulty is how good Eigen values are, as a measure of similarity. I personally think not very good. What might be good to try is to project images using Eigen values (what we are doing now), but the actual metrics for calculating similarity can be different. For example one can use root mean squared (RMS) to see how similar a test face is to every other projected face in the database. 

Once you find a similar face project it using existing data. Which is very fast. In fact its constant with respect to total number of trained faces, because you not actually recomputing everything.


Alex

On 5 Nov 2010, at 15:07, Aditya Bhatt wrote:

> 
> 
> On Fri, Nov 5, 2010 at 7:55 PM, Marcel Wiesweg <marcel.wiesweg at gmx.de> wrote:
> 
> > I think it really is the first tag I added.
> >
> > And those faces confused are already quite well trained, i.e. > 50 pitures
> > confirmed for each.
> 
> I'll test face recognition. Maybe it simply still doesnt work.
> 
> 
> 
> I recall that there was a bug in libface, the very first training has to be done with more than one tag IDs. That is, in the very first training of the database, all the faces in the training vector should not have the same ID. This is an issue with the very nature of the algorithm. 
> Two ways to fix this : 
> 
> Patching libface
> I might take a look into how to fix this soon, most likely it will be fixed by appending a dummy face with a special ID (one that will be never assigned by digikam normally).
> 
> Workaround in digiKam
> I haven't looked in the new code about how things are done, but the faces could be given for training in bunches of 10 or 20 at a time. 
> 
> The second way is rather hackish however, and I'd look at patching libface as a solution to this.
> 
> >
> > This gets me to another point. Would it be possible to not only have
> > unknown pictures but groups of unknown, i.e. digikam should be able to
> > guess which faces might look the same although it does not know their
> > name.
> 
> I have already thought of this. No idea if face recognition technology
> availalbe to us is ready for this.
> 
> 
> About grouping within the "Unknown" set:
> This, although possible in theory, is *very* computationally expensive. It requires a clustering algorithm to condense the faces into groups, however, in the clustering, the computation of the "distance" between faces in the face space is computationally. More so because the dimension of the face space changes with the amount of faces, plus the number of unknown faces is supposed to change so frequently that a re-clustering every now and then would be required. AFAIK, none of the 'competition' do this.
> 
> >
> > And also, what happens if a user scans the whole collection and ends up
> > with thousands of pictures in unknown? He would have to assign tags to
> > each of them and digikam would not try automatically to guess faces again
> > after it got some training. So the user would have to know about the
> > "recognise again" feature in the scanning GUI. I think there should be
> > some smartness in digikam that at least asks after x pictures training for
> > a tag whether it should try to find all pictures for that person.
> 
> Yes, interesting idea.
> 
> I support this idea too.
>  
> 
> -- 
> Adi
> _______________________________________________
> Digikam-devel mailing list
> Digikam-devel at kde.org
> https://mail.kde.org/mailman/listinfo/digikam-devel

If we knew what we were doing, it wouldn't be called research, would it?
-- Albert Einstein



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/digikam-devel/attachments/20101105/881a47ed/attachment.html>


More information about the Digikam-devel mailing list