GSoC/2019/StatusReports/ThanhTrungDinh: Difference between revisions
No edit summary |
No edit summary |
||
Line 9: | Line 9: | ||
* '''Improve face detection''': ''implementation to be investigated'' | * '''Improve face detection''': ''implementation to be investigated'' | ||
** detect faces across various scales (e.g. big, small, etc.), with occlusion (e.g. sunglasses, scarf, mask etc.), with different orientations (e.g. up, down, left, right, side-face etc.) | ** detect faces across various scales (e.g. big, small, etc.), with occlusion (e.g. sunglasses, scarf, mask etc.), with different orientations (e.g. up, down, left, right, side-face etc.) | ||
'''Mentors''' : Maik Qualmann, Gilles Caulier, Stefan Müller | '''Mentors''' : Maik Qualmann, Gilles Caulier, Stefan Müller | ||
== Important Links == | == Important Links == | ||
=== Proposal | === Proposal === | ||
[https://drive.google.com/open?id=1PeWZIeR3JcgrN5QqbpkYSH8bcZsblMRJ Project Proposal] | [https://drive.google.com/open?id=1PeWZIeR3JcgrN5QqbpkYSH8bcZsblMRJ Project Proposal] | ||
Line 27: | Line 21: | ||
=== Contribution === | === Contribution === | ||
== Work report == | |||
=== Bonding period (May 6 to May 27) === | |||
Generally, I familiarized myself with current Deep Learning (DL) based approach for face recognition in digiKam. I picked up the work of Yingjie Liu (the student working on that topic in 2017), investigated his codes, read his proposal, his blog posts and status report in order to understand clearly what he did and what he left. His work led me to FaceNet paper and a C++ implementation of the OpenFace face recognition library. They seemed very potential to my work. In addition, Liu also indicated the results of unit tests on his DL implementation. However, those tests were conducted externally, without using any digiKam preprocessing feature. | |||
For the rest of the bonding period, I decided to read carefully FaceNet paper and also investigated other neural network models in order to select the right model to implement when coding period begins. I also started coding test program, so that I could evaluate more exactly the benchmark of current DL implementation for face recognition in digiKam. | |||
My plan for next 2 weeks of coding period is: | |||
* Finish neural network model selection | |||
* Finish test codes | |||
* Start to port current DL implementation to OpenCV DNN module | |||
=== Coding period : Phase one (May 28 to June 23) === | |||
== Blog Posts == | |||
== Contacts == | == Contacts == |
Revision as of 20:50, 23 June 2019
digiKam AI Face Recognition with OpenCV DNN module
digiKam is KDE desktop application for photos management. For a long time, digiKam team has put a lot of efforts to develop face engine, a feature allowing to scan user photos and suggest face tags automatically basing on pre-tagged faces by users. However, that functionality is currently deactivated in digiKam, as it is slow while not adequately accurate. Thus, this project aims to improve the performance and accuracy of facial recognition in digiKam by exploiting state-of-the-art neural network models in AI and machine learning, combining with highly-optimized OpenCV DNN module.
The project includes 2 main parts:
- Improve face recognition: implementation with OpenCV DNN module
- reduce processing time while keeping high accuracy
- classify unknown faces into classes of similar faces
- Improve face detection: implementation to be investigated
- detect faces across various scales (e.g. big, small, etc.), with occlusion (e.g. sunglasses, scarf, mask etc.), with different orientations (e.g. up, down, left, right, side-face etc.)
Mentors : Maik Qualmann, Gilles Caulier, Stefan Müller
Important Links
Proposal
Git dev branch
Contribution
Work report
Bonding period (May 6 to May 27)
Generally, I familiarized myself with current Deep Learning (DL) based approach for face recognition in digiKam. I picked up the work of Yingjie Liu (the student working on that topic in 2017), investigated his codes, read his proposal, his blog posts and status report in order to understand clearly what he did and what he left. His work led me to FaceNet paper and a C++ implementation of the OpenFace face recognition library. They seemed very potential to my work. In addition, Liu also indicated the results of unit tests on his DL implementation. However, those tests were conducted externally, without using any digiKam preprocessing feature.
For the rest of the bonding period, I decided to read carefully FaceNet paper and also investigated other neural network models in order to select the right model to implement when coding period begins. I also started coding test program, so that I could evaluate more exactly the benchmark of current DL implementation for face recognition in digiKam.
My plan for next 2 weeks of coding period is:
- Finish neural network model selection
- Finish test codes
- Start to port current DL implementation to OpenCV DNN module
Coding period : Phase one (May 28 to June 23)
Blog Posts
Contacts
Email: [email protected]
Github: TrungDinhT