1. Продукти
  2.   Образ
  3.   Python
  4.   Neural Enhance
 
  

API на Python с отворен код за изображения

Супер разделителна способност за изображения, използващи Deep Learning

Какво е Neural Enhance?

Neural Enhance е API на Python с отворен код за подобряване на изображението. API подобрява изображението чрез задълбочено обучение, с помощта на API е възможно да обучите невронната мрежа и да увеличите 2x или дори 4x вашите изображения. Можете да подобрите изображенията, като увеличите броя на невроните в изображението, с набор от данни, подобен на вашето изображение с ниска разделителна способност.

Можете да подобрите вашите изображения, като използвате HQ за изобразяване както на CPU, така и на GPU. Генерирането на 1080p изход на GPU трябва да отнеме около 5 s или 2 s на изображение, а HQ рендирането на CPU трябва да отнеме около 20-60 s за 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
 Български