facerecognition

Nextcloud app that implement a basic facial recognition system.

AGPL-3.0 License

Stars
496
Committers
13

Bot releases are hidden (Show)

facerecognition - Facerecognition v0.7.1

Published by matiasdelellis almost 4 years ago

Screenshots

Person View Photos of person Person Integration Assign Name

Changelog

[0.7.1] - 2020-11-17

Added

  • Add support for analyzing photos from group folders. Issue #364

Fixed

  • Fixed Prevent error when pretty url is disabled on subfolder #379
  • Fix responses when you want to see another user's faces. Issue #352
  • Fix enconde name to URL params queries. Issue #359
  • Typo in title. Issue #357 and #380. Thanks to @strugee
  • Try to improve some messages.

Translations

  • Add Dutch translation thanks to Robin Slot.
  • Update Macedonian language thanks to Сашко Тодоров
  • Update French language thanks to Tho Vi
  • Update Serbian language thanks to Branko Kokanovic.
  • Update Spanish language thanks to Matias De lellis.

[0.7.0] - 2020-10-24

Added

  • Support to Nextcloud 20. Issue #343 and #347. Thanks to xiangbin li.
  • Add a dialog to assign names to the new persons found.

Changed

  • The main view of face clusters change switches to a view of persons. We
    consider person to the set of all faces with the same name, regardless of the
    clusters. Fix issue #334 and parts of #134.
  • The second viev show all photos of a person. The server thumbnails are reused,
    and therefore the performance is drastically improved. In general fix issue
    #193 and parts of #134.
  • Finally, the third view, allows you to see all the clusters as before, only to
    fix name errors if necessary.

Fixed

  • Fix crashed on postWrite and prevent other apps to work. Issue #341

Translations

  • Update French tranlation thanks to Tho Vi
facerecognition - Facerecognition v0.7.0

Published by matiasdelellis almost 4 years ago

Screenshots

Person View Photos of person Person Integration Assign Name

Changelog

[0.7.0] - 2020-10-24

Added

  • Support to Nextcloud 20. Issue #343 and #347. Thanks to xiangbin li.
  • Add a dialog to assign names to the new persons found.

Changed

  • The main view of face clusters change switches to a view of persons. We
    consider person to the set of all faces with the same name, regardless of the
    clusters. Fix issue #334 and parts of #134.
  • The second viev show all photos of a person. The server thumbnails are reused,
    and therefore the performance is drastically improved. In general fix issue
    #193 and parts of #134.
  • Finally, the third view, allows you to see all the clusters as before, only to
    fix name errors if necessary.

Fixed

  • Fix crashed on postWrite and prevent other apps to work. Issue #341

Translations

  • Update French tranlation thanks to Tho Vi
facerecognition - Facerecognition v0.6.3

Published by matiasdelellis about 4 years ago

Resume

Fixed some minor bugs introduced in the new model. Nothing special if you haven't changed the model yet. 😅 However, they are necessary corrections that deserve a new release. 😉

Also reduce the minimum system memory to 1GB. Keep in mind that this would be the absolute minimum, but it is clear that for large installations it may be insufficient.

Changelog

[0.6.3] - 2020-08-28

Changed

  • Reduce the minimum system memory to 1GB. Issue #319 and others.

Fixed

  • Fix migration command due 'Invalid datetime format'. Issue #320
  • Fix can't change model to 4, migration says model <4> not installed. Issue #318

Translations

  • Update French tranlation thanks to Tho Vi
facerecognition - Facerecognition v0.6.2

Published by matiasdelellis about 4 years ago

Resume

Well... In the last month, there were only few changes that came in this release, but before there was a lot of research and testing, to come up with this little release. You can see the PR https://github.com/matiasdelellis/facerecognition/pull/294 to see part of the main discussion.

But the main conclusion is that we discovered that model 2 has many grouping problems, and therefore we should advise against its use. 😞
If you are using it, sorry, but we suggest you migrate your faces to model 1, 3, if you dare, to model 4. However, I must recommend the analysis from scratch when switching to any model.

Perhaps the most important thing about this release is the introduction of model 4, which in summary is an extension of model 1, where we do a validation of the faces using the detector of model 3, to avoid clustering faces which potentially cause problems.

imagen

As you can see in this image, these are faces that the CNN detector finds, but the landmark detector fails to align the faces. We are fortunate that HOG does not detect these faces. and we take advantage of that, to validate the faces, and not group these faces. So, you can still see these faces, you can name them, but they will not clustered with others causing errors.

In our tests with 433 Images of The Big Bang Theory we got that:

433 Images Model 1 Model 2 Model 3 Model 4
Faces 1405 1405 1024 1405
Total clusters 757 730 423 820
Faces in Bad Clusters 13 63 0 0
Faces Error % 0,93 % 4,48 % 0,00 % 0,00 %

As you can see, the quality of groupings improved dramatically. 😃
(and here we reaffirm avoiding model 2. Sorry again..)

...but this is also expensive:

433 Images Model 1 Model 2 Model 3 Model 4
AVG Time 16,70 16,59 41,56 50,21
Procesing Time 02:00:29 01:59:43 04:59:56 06:02:19
Percentage 100,00 % 99,37 % 248,93 % 300,71 %

It is two times slower. 😞
Well, It's still in testing stages, but it looks promising and everyone will know if it is worth it. 😉

Changelog

All notable changes to this project will be documented in this file.

[0.6.2] - 2020-08-14

Added

  • Introduduce a new model (Model 4, aka DlibCnnHog5) that is 2 times slower, but
    much more accurate, which now is in testing stages, and we invite you to test
    since probably will be the next recommended model. See PR #313 for details.
  • Add face:migrate command that allows to migrate the faces obtained in a model
    to a new one. Still recommended to fully analyze the images when changing
    models, but can save a lot of time migrating them. See PR #309
  • Add face:reset --model command to just reset current model.

Changed

  • At least 1000 faces are needed for to make an initial clustering.
  • Don't group faces smaller than 40 pixels, which are supposed to be of poor
    quality. This is configurable within an advanced hidden setting. PR #299
  • All reset commands require a confirmation to work.
  • Hint the 4x3 relation when model recommending memory values.

Deprecated

  • After many analysis, we discourage the use of model 2 (Aka DlibCnn68). We
    still recommend model 1, and model 3 for low-resource devices. You can migrate
    the faces using the new command, but we recommend analyzing them again.

Fixed

  • Fix estimated time in the administration panel. See RP #297
  • Fix that removing .nomedia file does not trigger facerecognition when next
    analysis starts. Issue #304
  • Fix travis tests and lot of scrutinizer reports.
  • Fix that if increase the minimum confidence dont cluster any face in model 3
  • Log the system info before return any error. Part of issue #278

Translations

  • Add Macedonian translation thanks to Сашко Тодоров
facerecognition - Facerecognition v0.6.1

Published by matiasdelellis over 4 years ago

Resume

I don't know how reliable is this, but it seems that the application was downloaded 3079 times in two months. 🎉

facerecognition_v0.6.0.tar.gz (0.25 MiB) - downloaded 3,079 times. Last updated on 2020-05-05

Well, Far from believing that they are all using the app, I was pleasantly surprised by the number. 😄

In two months there were few reports of errors. Just 2 reports that we never test certain options without having the model installed, and a couple of documentation reports. Also help a couple of users install the dependencies, but overall it seems that all the effort to document was worth it. 😃

And finally there is still confusion about how to interpret the quality of the recognition. Our users still expect to see a single perfect group, and they want to ignore unknown people. Our current focus is to show all the information we have and it seems to be overwhelming. I'm still not clear how to improve this (Although removing the faces view, and leaving the work to photos/viewer would solve everything. 😅) but if users can have perfect groups, even if they are several, I would be really satisfied.

So, I would like to do a small survey to the users to know how they use it, their expectations and the results. 🤔

Changelog

All notable changes to this project will be documented in this file.

[0.6.1] - 2020-06-27

Changed

  • Adjust the appstore makefile rule to ignore vue and teplates files.

Bug fixes

  • Fix dump models table when none was installed yet. Issue #276.
  • Fix integer overflow on 32 bit systems.. Issue #278.
  • Fix Admin page when not model installed. Issue #284.

Translations

  • Update German (Germany) translations thanks to ProfDrJones.
facerecognition - Initial App Store Release

Published by matiasdelellis over 4 years ago

Facrecognition v0.6.0

After almost 3 years of development (Wow .. a long time. 😄) we are pleased to publish this face recognition application for Nextcloud. 🎉

Special thanks to Branko Kokanovic (@stalker314314 in Github). He wrote me a simple email a year ago since he intended to do something similar and we joined forces in making this application. Thank you very much. 😃
Of course also appreciate the @goodspb work for the PDlib extension that does most of the magic. Many thanks. 😃
... and I can't stop thanking all the users who test this application, reported errors, suggested changes, or translated the application. Thank you very much to all!. 🥰

It probably has flaws, and surely there are things to improve... but we understand that it is fully functional for everyone can try it.

In this initial version:

  • The server administrator must configure a background task where he analyzes the images of the users.
  • To preserve everyone's privacy, it is disabled by default, and each user must enable it.
  • The background task progressively discovery the faces in the photos of the users and similar faces will be grouped as persons.
  • There is a view where you can observe all the groups, and you can assign them names.
  • You can search for all the photos where a person appears just by typing the name.
  • Also add a side panel for the files application where you can see the persons in a photo and rename them.

Changelog since the last pre-release

Added

  • Experimental support of External Storage. Issue #212
  • Add some documentation about how expect to install, test and use the application
  • Optionally you can install Pdlib 1.0.2 from https://github.com/matiasdelellis/pdlib that increase the speed of clustering drastically.
  • The sidebar has been rewritten to show it in the Photos application.
  • Add php-bzip2 as a necessary dependency to install the models.

Changed

  • Also adds a minimum php memory requirement for HOG. 128 MB.
  • Indicate which model is enabled in the summary table of the setup --model command.

Bug fixes

  • Consider the memory configured in php as a dependency on the models.
  • Improves the description of errors and prints the links to documentation whenever it can.
  • Fix plurals in admin panel. Issue #256.
  • Use paginated queries when search persons on file app. Fix part of issue #263.
  • Search mainly faces, rather than persons in file view. Fix issue #264.
  • Don't compare a good face with a bad one. This greatly improves the quality of the faces clusters.
  • Fix that sidebar says no faces were found when just not clustered yet. Issue #255.
  • Fix tests on Nextcloud 18 and 19.

Translations

  • New French tranlation thanks to Florian Carpentier
  • Update Chinese translation thanks to yui874397188 and Jack Frost
  • Update German translation thanks to Johannes Szeibert
  • Update Polish translation thanks to Piotr Esse
  • Update Spanish translation thanks to Matias De lellis

A picture is worth a thousand words.

facerecognition-clusters-view

If you want to help us to improve it, we invite you to test it. Please, leave us your comments, open new Issues, translate it and any pull request is welcome. 😄

We suggest you read our documentation and mainly the installation notes and the FAQ.

facerecognition - Initial App Store Release (For Nextcloud 16 and 17)

Published by matiasdelellis over 4 years ago

Facrecognition v0.5.15

After almost 3 years of development (Wow .. a long time. 😄) we are pleased to publish this face recognition application for Nextcloud. 🎉

Special thanks to Branko Kokanovic (@stalker314314 in Github). He wrote me a simple email a year ago since he intended to do something similar and we joined forces in making this application. Thank you very much. 😃
Of course also appreciate the @goodspb work for the PDlib extension that does most of the magic. Many thanks. 😃
... and I can't stop thanking all the users who test this application, reported errors, suggested changes, or translated the application. Thank you very much to all!. 🥰

It probably has flaws, and surely there are things to improve... but we understand that it is fully functional for everyone can try it.

In this initial version:

  • The server administrator must configure a background task where he analyzes the images of the users.
  • To preserve everyone's privacy, it is disabled by default, and each user must enable it.
  • The background task progressively discovery the faces in the photos of the users and similar faces will be grouped as persons.
  • There is a view where you can observe all the groups, and you can assign them names.
  • You can search for all the photos where a person appears just by typing the name.
  • Also add a side panel for the files application where you can see the persons in a photo and rename them.

Changelog since the last pre-release

Added

  • Experimental support of External Storage. Issue #212
  • Add some documentation about how expect to install, test and use the application
  • Optionally you can install Pdlib 1.0.2 from https://github.com/matiasdelellis/pdlib that increase the speed of clustering drastically.
  • Add php-bzip2 as a necessary dependency to install the models.

Changed

  • Also adds a minimum php memory requirement for HOG. 128 MB.
  • Indicate which model is enabled in the summary table of the setup --model command.

Bug fixes

  • Consider the memory configured in php as a dependency on the models.
  • Improves the description of errors and prints the links to documentation whenever it can.
  • Fix plurals in admin panel. Issue #256.
  • Use paginated queries when search persons on file app. Fix part of issue #263.
  • Search mainly faces, rather than persons in file view. Fix issue #264.
  • Don't compare a good face with a bad one. This greatly improves the quality of the faces clusters.
  • Fix that sidebar says no faces were found when just not clustered yet. Issue #255.
  • Fix tests on Nextcloud 18 and 19.

Translations

  • New French tranlation thanks to Florian Carpentier
  • Update Chinese translation thanks to yui874397188 and Jack Frost
  • Update German translation thanks to Johannes Szeibert
  • Update Polish translation thanks to Piotr Esse
  • Update Spanish translation thanks to Matias De lellis

A picture is worth a thousand words.

facerecognition-clusters-view

If you want to help us to improve it, we invite you to test it. Please, leave us your comments, open new Issues, translate it and any pull request is welcome. 😄

We suggest you read our documentation and mainly the installation notes and the FAQ.

facerecognition - Facerecognition v0.5.14

Published by matiasdelellis over 4 years ago

Changelog

All notable changes to this project will be documented in this file.

[0.5.14] - 2020-03-30

Bug fixes

  • Fix image will be skipped due 'Unable to open file: /tmp/oc_tmp_###'. Issue #242

[0.5.13] - 2020-03-29

Added

  • Add face:reset --all|--clustering command. Details in README.md file.
  • Add face:stats command. Details in README.md file.
  • Add face:progress command. Details in README.md file.
  • Multiple model support was implemented. Details on Wiki.
  • Allow to change the model using the face:setup command.
  • Allow configure the supported mimetype. Details on Wiki.

Changed

  • Change to use area of the images instead of memory as the main parameter.
  • Don't upsampling image on CNN, better pass a bigger picture.
  • Don't install any model by default, just dump list of models.
  • Better message and print system/php memory as debug.
  • Test: Move to new repo that use reprepro and use bionic.

Bug fixes

  • Fix show not grouped on main view.

Translations

  • Add Portuguese (Brazil) thanks to Marcelo Rovani.
  • Update Chinese language thanks to Jack Frost.
  • Update German language thanks to Mark Ziegler.
  • Update Spanish language thanks to Matias De lellis.

A picture is worth a thousand words.

facerecognition-clusters-view

If you want to help us to improve it, we invite you to test it. Please, leave us your comments, open new Issues, translate it and any pull request is welcome. 😄

We suggest you read our documentation and mainly the installation notes and the FAQ.

facerecognition - Facerecognition v0.5.13

Published by matiasdelellis over 4 years ago

Changelog

All notable changes to this project will be documented in this file.

[0.5.13] - 2020-03-29

Added

  • Add face:reset --all|--clustering command. Details in README.md file.
  • Add face:stats command. Details in README.md file.
  • Add face:progress command. Details in README.md file.
  • Multiple model support was implemented. Details on Wiki.
  • Allow to change the model using the face:setup command.
  • Allow configure the supported mimetype. Details on Wiki.

Changed

  • Change to use area of the images instead of memory as the main parameter.
  • Don't upsampling image on CNN, better pass a bigger picture.
  • Don't install any model by default, just dump list of models.
  • Better message and print system/php memory as debug.
  • Test: Move to new repo that use reprepro and use bionic.

Bug fixes

  • Fix show not grouped on main view.

Translations

  • Add Portuguese (Brazil) thanks to Marcelo Rovani.
  • Update Chinese language thanks to Jack Frost.
  • Update German language thanks to Mark Ziegler.
  • Update Spanish language thanks to Matias De lellis.

A picture is worth a thousand words.

facerecognition-clusters-view

If you want to help us to improve it, we invite you to test it. Please, leave us your comments, open new Issues, translate it and any pull request is welcome. 😄

We suggest you read our documentation and mainly the installation notes and the FAQ.

facerecognition - Face Recognition v0.5.12

Published by matiasdelellis over 4 years ago

Changelog

All notable changes to this project will be documented in this file.

[0.5.12] - 2020-01-06

Bug fixes

  • Force cast to integer after multiplying by a number. Issue #199, #208
  • Fix initial view when enable analysis and still don't analyze anything. Issue #225 and others.
  • face-preview: Person photo is blank #226

Changed

  • Change the minimum memory requirement to 2GB. If you have less use Swap.
  • Change the minimum memory assigned for analysis to 1.2GB.
  • Change the maximum memory assigned for analysis to 8 GB.
  • Change the formula to calculate the area according to memory. Issue #220, #176, and others.
  • Implement a settings service where to handle everything a little more clean.
  • Move FaceManagementService together with the others services.
  • Test node binary needed to build handlebars templates. Issue #223 and #217
  • Fix some grammatical errors and typos. Issue 224.

Translations

  • Add German translation thanks to Mark Ziegler.
  • Update Chinese language thanks to Jack Frost.
  • Update Spanish language thanks to Matias De lellis.

A picture is worth a thousand words.

facerecognition-clusters-view

If you want to help us to improve it, we invite you to test it. Please, leave us your comments, open new Issues, translate it and any pull request is welcome. 😄

We suggest you read our documentation and mainly the installation notes and the FAQ.

facerecognition - Facerecognition v0.5.11

Published by matiasdelellis almost 5 years ago

[0.5.11] - 2019-12-20

Added

  • Add custom exclusion folder option beyond the .nomedia file. Issue #171
  • Add sidebar to folders which allows to enable/disable these.
  • Add support for encrypted storage. Issue #201
  • Add experimental support for shared storage. Issue #26
  • Add support to Nextcloud 18

Changed

  • Fix travis CI test.
  • General cleaning of a lot of code and doc.

Translations

  • Update Chinese language thanks to Jack Frost.
  • Update Spanish language thanks to Matias De lellis.

A picture is worth a thousand words.

facerecognition-clusters-view

If you want to help us to improve it, we invite you to test it. Please, leave us your comments, open new Issues, translate it and any pull request is welcome. 😄

We suggest you read our documentation and mainly the installation notes and the FAQ.

facerecognition -

Published by matiasdelellis almost 5 years ago

Changelog

[0.5.10] - 2019-12-06

Added

  • Add a button to show all clusters with same person name.
  • Add a button to go back and show all clusters.

Changed

  • Select the name when open the rename dialog.
  • Remove the spaces at both ends of the names before saving them.
  • Force delete invalid entries when a file does not exist. Issue #154
  • Improve tests broken since adding the face:setup command.
  • Move from deprecated database.xml to use DB migrations.
  • Try to be consistent in that we work with clusters at least in api/endpoints.
  • Fix most of the 'App is not compliant' reports. Issue #72
  • Remove Nextcloud 15 support. If you need it, ask for help.

Translations

  • Update Chinese language thanks to Jack Frost.
  • Update Serbian language thanks to Branko Kokanovic.
  • Update Spanish language thanks to Matias De lellis.

[0.5.9] - 2019-11-25

Changed

  • Migrate deprecated json_array db type to json.

[0.5.8] - 2019-11-22

Added

  • A personal settings panel to enable the analysis by each user.
  • Progressive discovery of faces in the photos of the users.
  • Automatic clustering of similar faces as persons.
  • Can view and rename face groups in the personal settings pane.
  • A side panel where you can see the persons in a photo and rename them.
  • Can search for all the photos where a person appears just by typing the name.
  • A admin settings panel to configure the main options.

Translations

  • Added Chinese language thanks to Jack Frost.
  • Added Polish language thanks to Olaf Lipinski.
  • Added Serbian language thanks to Branko Kokanovic.
  • Added Spanish language thanks to Matias De lellis.

[0.5.4] – 2017-10-04

  • Initial release

A picture is worth a thousand words.

facerecognition-clusters-view

If you want to help us to improve it, we invite you to test it. Please, leave us your comments, open new Issues, translate it and any pull request is welcome. 😄

We suggest you read our documentation and mainly the installation notes and the FAQ.

facerecognition - Initial public release.

Published by matiasdelellis almost 5 years ago

Facrecognition v0.5.9

After two years of development, we are pleased to publish this face recognition application for Nextcloud.

Special thanks to Branko Kokanovic (@stalker314314 in Github). He wrote me a simple email a year ago since he intended to do something similar and we joined forces in making this application. Thank you very much!.

It probably has flaws, and surely there are things to improve.. . but we understand that it is fully functional for everyone can try it.

In this initial version:

  • The server administrator must configure a background task where he analyzes the images of the users.
  • To preserve everyone's privacy, it is disabled by default, and each user must enable it.
  • The background task progressively discovery the faces in the photos of the users and similar faces will be grouped as persons.
  • There is a view where you can observe all the groups, and you can assign them names.
  • You can search for all the photos where a person appears just by typing the name.
  • Also add a side panel for the files application where you can see the persons in a photo and rename them.

A picture is worth a thousand words.

facerecognition-clusters-view

If you want to help us to improve it, we invite you to test it. Please, leave us your comments, open new Issues, translate it and any pull request is welcome. 😄

We suggest you read our documentation and mainly the installation notes and the FAQ.

facerecognition - Initial public release

Published by matiasdelellis almost 5 years ago

Facrecognition v0.5.8

After two years of development, we are pleased to publish this face recognition application for Nextcloud.

Special thanks to Branko Kokanovic (@stalker314314 in Github). He wrote me a simple email a year ago since he intended to do something similar and we joined forces in making this application. Thank you very much!.

It probably has flaws, and surely there are things to improve.. . but we understand that it is fully functional for everyone can try it.

In this initial version:

  • The server administrator must configure a background task where he analyzes the images of the users.
  • To preserve everyone's privacy, it is disabled by default, and each user must enable it.
  • The background task progressively discovery the faces in the photos of the users and similar faces will be grouped as persons.
  • There is a view where you can observe all the groups, and you can assign them names.
  • You can search for all the photos where a person appears just by typing the name.
  • Also add a side panel for the files application where you can see the persons in a photo and rename them.

A picture is worth a thousand words.

facerecognition-clusters-view

If you want to help us to improve it, we invite you to test it. Please, leave us your comments, open new Issues, translate it and any pull request is welcome. 😄

We suggest you read our documentation and mainly the installation notes and the FAQ.