SOTOHP

A software to easily and quickly manage a huge amount of photos. Why ? Just because those past 23 years, I've taken more than 103000 photos. Once again this project has first started as just a "small" script.

Principles

  • The photos referential is always your photos directories as you've organized them,
  • Your photos directories are left unchanged, only read operations are done,
  • A local LMDB database is used to store/cache/query, serialization is JSON based,
  • Background jobs are run to update, to enrich, to analyze, to process your photos
  • Dedicated Filesystem targets for pre-processed photos
  • Photos are identified using an ULID identifier computed from the shoot timestamp
    • if shoot timestamp is missing or invalid, file last modified is used (at first seen)
    • SO photos stream is automatically ordered by this timestamp
  • DeepJavaLibrary is intensively used for
    • photos classifications,
    • people faces detection,
    • objects detection,...

Current status

  • no release available yet
  • code is stable and usable for
    • visualization
    • publishing photo records to elasticsearch / opensearch
    • searching and statistics purposes

The visualisation with the graphical user interface is very fast :) It starts in 2 seconds even with my 103000 photo database.

Published information to elasticsearch or opensearch make it easy to build very interesting dashboards such as :