Releases: matiasdelellis/facerecognition
Nextcloud Face Recognition v0.9.60
Changelog
All notable changes to this project will be documented in this file.
[0.9.60] - 2024-11-19
Nextcloud Face Recognition v0.9.51
Changelog
All notable changes to this project will be documented in this file.
[0.9.51] - 2024-06-18
- Fix admin page when for any reason disable pdlib.
- Adds batch option for face clustering. Issue #712 (Among many others)
- Shows how many processed images there are in the stats command.
- Add setting to enable facial recognition for all users by default.
Nextcloud Face Recognition v0.9.50
Changelog
All notable changes to this project will be documented in this file.
[0.9.50] - 2024-05-22
- Enable Nextcloud 29 and drop 27.
- Add support to authorization imaginary with key. PR #746, Issue #700. Thanks to fabalexsie.
- Add button to "Review ignored people". PR #747, Issue #735. Thanks to wronny.
- Add the sixth model to the application. Aka DlibTaguchiHog model. =)
This model was trained from scratch by Taguchi Tokuji to slightly improve the
bias of the original model on non-Caucasian/American people, training with a
greater number of Japanese and others Asians people. It obtained a similar
result in the LFW tests, slightly lower, but within the acceptable margins of
error.
This model should improve the behavior of the application with people with
these traits. - Update translations. Many thanks to everyone!.
For more information about the model, you can see the official website:
Nextcloud Face Recognition v0.9.40
[0.9.40] - 2024-04-24
- Enable PHP 8.3 and NC28
- Add special modes to background_job command that allows images to be analyzed in multiple processes to improve speed.
- Add special mode to sync-album command to generate combined albums with multiple people. PR #709
How to use that:
#!/bin/bash
echo "Synchronizing user files..."
php occ face:background_job -u user --sync-mode
echo "Done"
echo "Analyzing user files..."
for i in {1..4}; do
php occ face:background_job -u user --analyze-mode &
pids[${i}]=$!
done
for pid in ${pids[*]}; do
wait $pid
done
echo "Done"
echo "Calculating user face clusters..."
php occ face:background_job -u user --cluster-mode
echo "Done"
Nextclod Face Recognition v0.9.31
Codename???? 🤔
[0.9.31] - 2023-08-24
- Be sure to open the model before getting relevant info. Issue #423
[0.9.30] - 2023-08-23
- Implement the Chinese Whispers Clustering algorithm in native PHP.
- Open the model before requesting information. Issue #679
- If Imaginary is configured, check that it is accessible before using it.
- If Memories is installed, show people's photos in this app.
- Add face thumbnail when search persons.
- Disable auto rotate for HEIF images in imaginary. Issue #662
- Add the option to print the progress in json format.
Why that meme as codename?
To the happiness of many (Issue #690, #688, #687, #685, #649, #632, #627, #625, etc..?), Implement the Chinese Whispers Clustering algorithm in native PHP, just means that we do not depend on the pdlib extension, but it goes without saying that its use is still highly recommended.
So, the application can be installed without pdlib or bzip2 installed. But if you want to use models 1, 2, 3, or 4 you still have to rely on these extensions.
Do you insist on not installing these extensions?.
You must configure the external model and select model 5 here, and thus free yourself from these extensions. 😬
Well, You will understand that it is slower, however I must admit that with JIT enabled, it is quite acceptable, and this is the only reason why decided to publish it.
Some statistics
Just I added 2162 Big Bang Theory photos on my test server, resulting in 6059 faces, and I cluster them with both implementations..
Dlib: (Reference)
- User time (seconds): 10.53
- Maximum resident set size (kbytes): 245412
PHP:
- User time (seconds): 45.45
- Maximum resident set size (kbytes): 266060
Time:
=> 45.45/10.53 = 4,316239316
Memory:
=> 266060/245412 = 1,084136065
PHP + JIT
User time (seconds): 16.20
Maximum resident set size (kbytes): 283760
Time:
=> 16.20/10.53 = 1,538461538
Memory:
=> 283760/245412 = 1,156259678
So, as you can see the php implementation is 3.3 times slower, but if you enable JIT, it's only 53 percent slower. I guess it's ok, and the memory didn't increase much. 😄
Note:
Once again I insist on recommending the use of local models (with dlib), and I invite those who want to use it to give a little love to the external model. 😬
Nextclod Face Recognition v0.9.30
Codename???? 🤔
[0.9.30] - 2023-08-23
- Implement the Chinese Whispers Clustering algorithm in native PHP.
- Open the model before requesting information. Issue #679
- If Imaginary is configured, check that it is accessible before using it.
- If Memories is installed, show people's photos in this app.
- Add face thumbnail when search persons.
- Disable auto rotate for HEIF images in imaginary. Issue #662
- Add the option to print the progress in json format.
Why that meme as codename?
To the happiness of many (Issue #690, #688, #687, #685, #649, #632, #627, #625, etc..?), Implement the Chinese Whispers Clustering algorithm in native PHP, just means that we do not depend on the pdlib extension, but it goes without saying that its use is still highly recommended.
So, the application can be installed without pdlib or bzip2 installed. But if you want to use models 1, 2, 3, or 4 you still have to rely on these extensions.
Do you insist on not installing these extensions?.
You must configure the external model and select model 5 here, and thus free yourself from these extensions. 😬
Well, You will understand that it is slower, however I must admit that with JIT enabled, it is quite acceptable, and this is the only reason why decided to publish it.
Some statistics
Just I added 2162 Big Bang Theory photos on my test server, resulting in 6059 faces, and I cluster them with both implementations..
Dlib: (Reference)
- User time (seconds): 10.53
- Maximum resident set size (kbytes): 245412
PHP:
- User time (seconds): 45.45
- Maximum resident set size (kbytes): 266060
Time:
=> 45.45/10.53 = 4,316239316
Memory:
=> 266060/245412 = 1,084136065
PHP + JIT
User time (seconds): 16.20
Maximum resident set size (kbytes): 283760
Time:
=> 16.20/10.53 = 1,538461538
Memory:
=> 283760/245412 = 1,156259678
So, as you can see the php implementation is 3.3 times slower, but if you enable JIT, it's only 53 percent slower. I guess it's ok, and the memory didn't increase much. 😄
Note:
Once again I insist on recommending the use of local models (with dlib), and I invite those who want to use it to give a little love to the external model. 😬
Nextclod Face Recognition v0.9.20
Changelog
All notable changes to this project will be documented in this file.
[0.9.20] - 2023-06-14
- Add support for (Now old) Nextcloud 26.
- Add support to NC27 for early testing.
- Clean some code an split great classed to improve maintenance.
- Don't catch Imaginary exceptions. Issue #658
- Update french translation thanks to Jérémie Tarot.
Note:
This is a version made with a bit of shame. I'm short on time, and I was hoping to do a little more before release it, but that nextcloud publishes a new version before enabling the previous one, it presupposes this release. 🤦🏻♂️ 😞
It's actually well tested in NC26, but I'd like to improve some things soon. Not so in NC27, I hope to hear your reports.. 🙈
Face Recognition v0.9.12
[0.9.12] - 2023-03-25
- Add support for using imaginary to create the temporary files.
This add support for images heic, tiff, and many more. Issue #494,
#215 and #348 among many other reports. - Memory optimization in face clustering task. Part of issue #339
In my tests, it reduces between 33% and 39% of memory, and as an
additional improvement, there was also a reduction in time of around
19%. There are still several improvements to be made, but it is a
good step. - Modernizes the construction of the javascript code. Issue #613
- Fix Unhandled exception and Albums are not being created. Issue #634
Note:
About Imaginary, if it is installed correctly it works automatically, however you still have to select the types of files you want to read. So you must add this configuration in config/config.php
+ 'enabledFaceRecognitionMimetype' => array(
+ 0 => 'image/jpeg',
+ 1 => 'image/png',
+ 2 => 'image/heic',
+ 3 => 'image/tiff',
+ 4 => 'image/webp',
+ ),
Finally adds the --crawl-missing
option to face:background_job
that forces a search for the files to analyze the new allowed types. 😄
Face Recognition v0.9.11
Changelog
All notable changes to this project will be documented in this file.
[0.9.11] - 2022-12-28
[0.9.10] - 2022-12-12
- Just bump version, to remove beta label and allow installing in NC25
- Gratitude: @pulsejet, very kindly accept the integration of this application into your super cool photo gallery called Memories.
If you didn't know about this project, I invite you to give it a try, that will pleasantly surprise you. 🎉
Thanks again. 😃 - New Russian translation thanks to Regardo.
Face Recognition v0.9.10
Changelog
All notable changes to this project will be documented in this file.
[0.9.10] - 2022-12-12
- Just bump version, to remove beta label and allow installing in NC25
- Gratitude: @pulsejet, very kindly accept the integration of this application into your super cool photo gallery called Memories.
If you didn't know about this project, I invite you to give it a try, that will pleasantly surprise you. 🎉
Thanks again. 😃 - New Russian translation thanks to Regardo.