[Digikam-devel] GSoC - digiKam Face Recognition Proposal

Aditya Bhatt adityabhatt1991 at gmail.com
Mon Mar 22 07:09:16 GMT 2010


Hi,

I would really like to participate in GSoC so I can work on digiKam's Face
Detection and Recognition and Auto Tagging Feature.
I've been working with opencv before, and have been working with Alex
Jironkin, (who is listed as the mentor for the biometric part of this
project) to hack on libface. I've also talked a bit with Marcel about how
the interface of libface should be made so that digiKam can use it best. So
I'd like to continue this as part of GSoC.

So I present the first draft of my proposal below. Please comment on it so
that it can be made better for submitting to socghop.

Thanks,
Aditya

Proposal:

----------------------------------------
Project: Face Recognition
----------------------------------------

Name : Aditya Bhatt

E-mail : adityabhatt1991 at gmail.com

Freenode/IRC : Adityab

Location : Ahmedabad, India


Title: Automatic face detection, recognition, and tagging in digiKam

--------------------------------------
Motivation
--------------------------------------

digiKam has always been my photo management program of choice. When coupled
with KIPI, it becomes something akin to the swiss army knife of all photo
management suites.
One of the most demanded features of digiKam has been the automatic tagging
of photograps with names of the people in them by detecting faces and
recongizing who's who.
In KDE's bugzilla, this is the feature request for digiKam with the most
votes since a long time, and is the 26th most wanted feature in all of KDE.

digiKam will benefit a lot from this. Picasa's linux version does not have
face recognition, nor does F-Spot have it. So digiKam will, as far as I
know, be the first linux suite to have this feature.
This feature will be very useful for searching and organizing. After
everything is implemented in digiKam, nepomuk/akonadi integration can be
done.

-------------------------------------
Implementation
-------------------------------------

Our interface for libface is almost ready, and from what I learned from
Marcel, requires a minimal amount of polishing, related to accepting image
data. The face detection part works pretty good now. I intend to implement a
face tagging widget, and the requirement to port some features from the Qt3
support classes to Qt4 might also arise. I'll learn from the digiKam core
devs and mentor about how to play with image metadata in the summer, and how
tags are organised in digiKam. Meanwhile, I'll keep working on libface to
make the biometric part better and better, as that is something that can
always have scope of improvement.

------------------------------------
Tentative Schedule
------------------------------------

First half of May:
Get familiar with the digiKam team, learn about digiKam's databases, how
tags are organized, and start writing some working code for a plugin. Work
on libface meanwhile.

Mid-May to Mid-June:
Knock up a working version of a people-tagging widget. Also keep working on
libface.

Mid-June to Beginning of July:
Possible porting of some components from Qt3 Support classes to pure Qt4.
Make the people tagging widget work nicely with libface. This will have a
possible voting system.

Start of July to July-End:
Start integrating the tagging widget and libface combo into digiKam. Might
involve possible changes to how to accept tag input from user. Work more on
the voting system for training.

August:
Clean-up of code, possible akonadi/nepomuk work, write documentation on
usage of the new feature, and kill bugs :)

-----------------------------------
About Me
-----------------------------------

I'm a second-year engineering student currently doing my Bachelors in
Information and Communication Technology.
I've been using linux since about 1999, when I was eight or nine. I used X11
interfaces, and what I think was KDE at that time. I used gnome and windows
from 2003 to 2006, then went back to KDE. I loved and still love KDE because
of it's immense configurability. The new explosion of incoming developers
and artists into KDE is wonderful, and I love the way new features are being
rapidly integrated into KDE SC.

My primary fields of interest are Image Processing, Pattern Recognition,
Cryptography, and Mathematical Computing.

I'm quite familiar with C and C++. I dislike Java.

I speak on FOSS topics in my University's Open-Source Society, and also
about emerging computing trends in our IEEE student branch's TechTalks.

A few links:
My bitbucket: http://bitbucket.org/aditya_bhatt/
My Blog : http://adityabhatt.wordpress.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/digikam-devel/attachments/20100322/fba2ccb8/attachment.html>


More information about the Digikam-devel mailing list