Skip to content

gorinator/StockSort

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📷 StockSort

Автоматическая отбраковка нечётких кадров перед загрузкой на фотостоки

Python Platform OpenCV License


StockSort — крошечная десктопная утилита, которая за секунды находит и убирает в сторону технический брак: смазы, шевелёнку и расфокус. Незаменима перед импортом серии в Lightroom или загрузкой на фотосток.

Возможности

  • Поддержка Sony RAW (.ARW) — встроенный JPEG-превью извлекается на лету без полного декодирования, что даёт ускорение в 15–20 раз
  • Анализ резкости через OpenCV — дисперсия Лапласиана точно отличает чёткие кадры от смазанных
  • Три уровня строгости — Мягкий / Стандарт / Строгий для любых сценариев отбора
  • Не зависает — анализ идёт в фоновом потоке, интерфейс всегда отзывчив
  • Автономный .exe — не требует установленного Python и библиотек

Как это работает

Папка с кадрами
      │
      ▼
 [Извлечение превью]          ← rawpy мгновенно читает JPEG из ARW
      │
      ▼
 [Оценка резкости]            ← OpenCV: дисперсия Лапласиана на 640×480
      │
      ├── score ≥ threshold   →  кадр остаётся на месте ✓
      │
      └── score < threshold   →  кадр перемещается в ./Брак/ ✗
Режим Порог Лапласиана Когда использовать
Мягкий 70 Портреты, намеренное боке
Стандарт 120 Универсальный режим для большинства съёмок
Строгий 180 Репортаж, спорт, стоковая фотография

Установка и запуск

Готовый исполняемый файл

Скачайте StockSort.exe из папки releases/ и запустите — установка не нужна.

Запуск из исходников

# 1. Клонировать репозиторий
git clone https://gitverse.ru/gorinator/StockSort.git
cd StockSort

# 2. Установить зависимости
pip install -r requirements.txt

# 3. Запустить
python stocksort.py

Сборка .exe самостоятельно

pip install pyinstaller
pyinstaller --onefile --windowed --name StockSort \
            --collect-all customtkinter \
            --collect-all rawpy \
            stocksort.py
# Готовый файл: dist/StockSort.exe

Зависимости

Библиотека Роль
customtkinter Современный UI с тёмной темой
rawpy Чтение Sony ARW, извлечение JPEG-превью
opencv-python Вычисление дисперсии Лапласиана
Pillow Конвертация изображений
numpy Матричные операции

Структура проекта

StockSort/
├── stocksort.py        # Весь код приложения (~200 строк)
├── requirements.txt    # Зависимости для pip
└── README.md

Лицензия

MIT © 2025 gorinator

About

Умная очистка съёмки от технического брака и микросмазов на базе Computer Vision.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages