Bug 392142

Summary: Use Tensorflow for face and object recognition
Product: [Applications] digikam Reporter: Stefan Weiberg <stefan.weiberg>
Component: Faces-RecognitionAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: normal CC: caulier.gilles
Priority: NOR    
Version First Reported In: unspecified   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed/Implemented In: 7.0.0
Sentry Crash Report:

Description Stefan Weiberg 2018-03-21 16:53:24 UTC
Googles' deep learning framework Tensorflow is Open Source for quite some time now. It might be interesting to use TensorFlow for face and object detection/recognition in Digikam. This could improve the hit rate and also add some performance on CUDA based hardware.

Sample implementation in the Tensorflow Tutorials on GitHub:
https://github.com/tensorflow/models/tree/master/tutorials/image

Another implementation:
https://github.com/priya-dwivedi/Deep-Learning/blob/master/Object_Detection_Tensorflow_API.ipynb

Helpful blog entry by Google:
https://research.googleblog.com/2017/06/supercharge-your-computer-vision-models.html
Comment 1 caulier.gilles 2018-03-21 19:13:55 UTC
TensorFlow is python based API. We use C++ here. So no way to use TensorFlow.

Also, we have other algorithm to finalize and one explicitly based on Neural Network :

https://cgit.kde.org/digikam.git/tree/core/libs/facesengine/dnnface

This is based on DLib :

https://github.com/davisking/dlib

Gilles Caulier
Comment 2 Stefan Weiberg 2018-03-22 08:07:28 UTC
(In reply to caulier.gilles from comment #1)
> TensorFlow is python based API. We use C++ here. So no way to use TensorFlow.
> 
> Also, we have other algorithm to finalize and one explicitly based on Neural
> Network :
> 
> https://cgit.kde.org/digikam.git/tree/core/libs/facesengine/dnnface
> 
> This is based on DLib :
> 
> https://github.com/davisking/dlib
> 
> Gilles Caulier

There is a C++ API for Tensorflow as well:
https://www.tensorflow.org/tutorials/image_recognition (section: Usage with the C++ API)

Thanks for the additional info on the ongoing work.
Comment 3 caulier.gilles 2019-12-23 07:28:51 UTC
7.0.0 release will use Neural Network deep learning from OpenCV.