Shashin это система управления библиотекой фотографий на основе командной строки
Быстрый старт
git checkout https://github.com/gerdemb/shashin.git
cd shashin
pip -r requirements.txt
./shashin.py scan dir1
./shashin.py scan dir2
./shashin.py serve
Откройте http: // localhost: 8000 /
Прочие команды
Команды для организации изображений по YYYY/MM/DD
папкам. src
Каталог будет сканироваться рекурсивно, а файлы копироваться или перемещаться в dest/YYYY/MM/DD
каталоги на основе DateTimeOriginal
тега или, FileModifyDate
если DateTimeOriginal
тег не существует. Команда organize
переместит файлы в место назначения на место. Используйте --dry-run
опцию для проверки действий файла.
./shashin.py cp src dest/
./shashin.py mv src dest/
./shashin.py organize dest/
Безопасность
Веб-интерфейс должен обслуживаться только для локальных браузеров. Нет никакой безопасности, и любой внешний пользователь может просматривать или удалять изображения. Кроме /Users/admin/photos/album/img_1.jpg
того, браузеру открывается полный путь к каждому изображению (т. Е.).
Архитектура
При импорте хеш-код md5 и dhash каждого файла рассчитывается и сохраняется в базе данных sqlite3. Эта база данных используется для обнаружения идентичных файлов и похожих изображений. По умолчанию он хранится в~/.cache/shashin/shashin.sqlite3
Машинное обучение
В веб-интерфейсе группа дублированных изображений упорядочена так, что ПЕРВОЕ изображение должно быть сохранено, а следующие изображения должны быть удалены. Прогноз делается путем построения модели машинного обучения, сравнивающей метаданные изображений, которые были удалены, с изображениями, которые были сохранены. Новая модель строится каждый раз при serve
запуске команды.