API Python із відкритим кодом для зображень

Супер роздільна здатність для зображень із використанням глибокого навчання

Що таке Neural Enhance?

Neural Enhance — це API Python із відкритим кодом для покращення зображення. API покращує зображення за допомогою глибокого навчання, за допомогою API можна навчити нейронну мережу та збільшити зображення у 2 або навіть 4 рази. Ви можете покращити зображення, збільшивши кількість нейронів у зображенні з набором даних, подібним до вашого зображення з низькою роздільною здатністю.

Ви можете покращити свої зображення за допомогою CPU та GPU рендеринга HQ. Створення виводу 1080p на графічному процесорі має займати приблизно 5 або 2 с на зображення, а рендеринг центрального процесора HQ має займати приблизно 20-60 с для виведення 1080.

Previous Next

Початок роботи з Neural Enhance

Рекомендований спосіб встановлення Neural Enhance — через Docker. Щоб установити Neural Enhance, скористайтеся такою командою.

Встановіть Neural Enhance через Docker

docker run --rm -v `pwd`:/ne/input -it alexjc/neural-enhance --help

Покращуйте зображення за допомогою безкоштовного API Python

API Neural-Enhance дозволяє покращувати зображення програмним шляхом. API надає список команд, які можна використовувати з попередньо навченою моделлю, доступною в API. Використовуючи API, ви можете запустити сценарій із надвисокою роздільною здатністю, щоб виправити артефакти JPEG, коефіцієнти масштабування, обробити кілька якісних зображень за один запуск і відобразити вихідні зображення. Ви можете легко покращити свої зображення, використовуючи цей один рядок коду

Покращуйте зображення за допомогою Python

  1. Відкрийте командний рядок
  2. Перейдіть до каталогу enhance.py
  3. Виконайте наведену нижче команду та передайте тип файлу, відновлення, параметр масштабування та шлях до зображення, яке потрібно покращити

Покращуйте зображення за допомогою Python

# Run the super-resolution script to repair JPEG artefacts, zoom factor 1:1.
python3 enhance.py --type=photo --model=repair --zoom=1 broken.jpg
# Process multiple good quality images with a single run, zoom factor 2:1.
python3 enhance.py --type=photo --zoom=2 file1.jpg file2.jpg
# Display output images that were given `_ne?x.png` suffix.
open *_ne?x.png
  

Навчання зображень із надвисокою роздільною здатністю за допомогою Python

Бібліотека зображень із відкритим кодом Neural Enhance тренує ваші зображення на ваш власний спосіб. API поставляється з попередньо навченими моделями за замовчуванням, ви можете навчити власний процес, використовуючи параметри на основі вашого набору даних зображень. Ви можете навчити свою модель за допомогою втрати сприйняття з паперу, навчити свою модель за допомогою змагальної установки тощо.

Використовуйте попередньо навчені моделі та навчальну суперроздільність через Python API

# Pre-train the model using perceptual loss from paper [1] below.
python3.4 enhance.py --train "data/*.jpg" --model custom --scales=2 --epochs=50 \
    --perceptual-layer=conv2_2 --smoothness-weight=1e7 --adversary-weight=0.0 \
    --generator-blocks=4 --generator-filters=64
# Train the model using an adversarial setup based on [4] below.
python3.4 enhance.py --train "data/*.jpg" --model custom --scales=2 --epochs=250 \
         --perceptual-layer=conv5_2 --smoothness-weight=2e4 --adversary-weight=1e3 \
         --generator-start=5 --discriminator-start=0 --adversarial-start=5 \
         --discriminator-size=64
# The newly trained model is output into this file...
ls ne?x-custom-*.pkl.bz2
 Українська