Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🖼️ PhotoRevive

Инструмент для восстановления старых фотографий на основе ИИ

Восстановите, улучшите и раскрасьте свои драгоценные воспоминания с помощью искусственного интеллекта

Python PySide6 License Stars

ФункцииУстановкаИспользованиеСкриншотыУчастие в разработке


✨ Функции

Функция Описание
🔧 Удаление царапин Автоматическое обнаружение и удаление царапин, трещин и разрывов
🎨 Раскрашивание с ИИ Преобразование чёрно-белых фото в яркие цветные изображения
Улучшение качества Увеличение разрешения и общее улучшение качества изображения
👤 Восстановление лиц Улучшение и восстановление деталей лица с использованием GFPGAN
🔄 Сравнение «До/После» Интерактивный ползунок для сравнения оригинала и результата
📁 Пакетная обработка Обработка сразу нескольких фотографий
↩️ Отмена/Повтор Полная история всех операций редактирования
💾 Поддержка форматов JPG, PNG, BMP, TIFF и WebP

🚀 Установка

Требования

  • Python 3.9 или новее
  • NVIDIA GPU (рекомендуется для ускорения обработки)
  • Минимум 8 ГБ ОЗУ (рекомендуется 16 ГБ)

Быстрый запуск

  1. Клонируйте репозиторий

    git clone https://github.com/Mas562/PhotoRevive.git
    cd PhotoRevive
  2. Создайте виртуальное окружение

    # Windows
    python -m venv venv
    venv\Scripts\activate
    
    # macOS/Linux
    python -m venv venv
    source venv/bin/activate
  3. Установите зависимости

    pip install -r requirements.txt
  4. Запустите приложение (модели загрузятся автоматически при первом запуске)

    python main.py

📖 Использование

Запуск приложения

python main.py

Основной рабочий процесс

  1. 📂 Откройте изображение — нажмите «Открыть» или перетащите старую фотографию
  2. 🔧 Выберите параметры восстановления:
    • Включите удаление царапин
    • Включите раскрашивание (для ч/б фото)
    • Укажите уровень улучшения
  3. ▶️ Обработайте — нажмите «Восстановить» и дождитесь завершения
  4. 👀 Сравните — используйте ползунок для просмотра «до/после»
  5. 💾 Сохраните — экспортируйте результат

Горячие клавиши

Комбинация Действие
Ctrl+O Открыть изображение
Ctrl+S Сохранить результат
Ctrl+Z Отмена
Ctrl+Y Повтор
Пробел Переключение «до/после»
Ctrl+R Запуск восстановления
Ctrl+E Экспорт настроек

⚙️ Настройки

Параметры обработки

# Чувствительность удаления царапин
LOW = 0.3      # Только лёгкие царапины
MEDIUM = 0.5   # Сбалансированное обнаружение
HIGH = 0.8     # Агрессивное удаление

# Уровень увеличения разрешения
2x  # Быстрее, подходит для веба
4x  # Баланс качества и скорости
8x  # Максимальное качество (медленно)

Использование CPU

PhotoRevive автоматически обнаруживает NVIDIA GPU. Чтобы запустить в режиме только CPU:

python main.py --cpu-only

🧠 Используемые ИИ-модели

Модель Назначение Ссылка
Real-ESRGAN Суперразрешение изображений Ссылка
GFPGAN Восстановление лиц Ссылка
DeOldify Раскрашивание фотографий Ссылка
Custom CNN Обнаружение царапин

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

PhotoRevive/
├── main.py              # Точка входа приложения
├── requirements.txt     # Зависимости Python
├── README.md           # Этот файл
├── src/
│   ├── ui/             # Компоненты интерфейса
│   │   ├── main_window.py
│   │   ├── components.py
│   │   └── styles.py
│   ├── core/           # Логика обработки
│   │   ├── restorer.py
│   │   ├── colorizer.py
│   │   ├── enhancer.py
│   │   └── scratch_remover.py
│   └── utils/          # Вспомогательные функции
│       ├── image_utils.py
│       └── file_handler.py
├── models/             # ИИ-модели (загружаются автоматически)
├── assets/             # Иконки и шрифты
└── examples/           # Примеры изображений

🤝 Участие в разработке

Вы можете помочь проекту! Вот как:

  1. 🍴 Сделайте форк репозитория
  2. 🌿 Создайте ветку новой функции:
    git checkout -b feature/awesome-feature
  3. 💾 Зафиксируйте изменения:
    git commit -m 'Добавлена потрясающая функция'
  4. 📤 Отправьте ветку:
    git push origin feature/awesome-feature
  5. 🔃 Создайте Pull Request

Настройка среды разработки

# Установка зависимостей для разработки
pip install -r requirements-dev.txt

# Запуск тестов
pytest tests/

# Форматирование кода
black src/

❓ Часто задаваемые вопросы

Почему обработка занимает так много времени? ИИ-модели требуют больших вычислительных ресурсов. Использование GPU ускоряет обработку в десятки раз. В режиме CPU обработка может занимать в 5–10 раз дольше.
Не загружаются модели? Проверьте интернет-соединение. Общий объём моделей — около 500 МБ. Вы также можете вручную скачать их из релизов и поместить в папку `models/`.
Раскрашивание выглядит неестественно? Попробуйте уменьшить интенсивность раскрашивания с помощью ползунка. Для некоторых фотографий лучше подходят более низкие значения.

📜 Лицензия

Этот проект распространяется под лицензией MIT — подробности см. в файле LICENSE.


🙏 Благодарности

  • Real-ESRGAN — восстановление изображений
  • GFPGAN — улучшение лиц
  • DeOldify — вдохновение для раскрашивания
  • BasicSR — базовая архитектура
Создано с ❤️ Mas562

⭐ Поставьте звезду, если проект оказался полезен!

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages