1. Produkter
  2.   Billede
  3.   Python
  4.   Neural Enhance
 
  

Open-Source Python API til billeder

Super opløsning til billeder ved hjælp af Deep Learning

Hvad er Neural Enhance?

Neural Enhance er en open source Python API til billedforbedring. API'et forbedrer billedet ved hjælp af deep learning, ved hjælp af API'en er det muligt at træne det neurale netværk og zoome 2x eller endda 4x ind i dine billeder. Du kan forbedre billederne ved at øge antallet af neuroner i billedet med et datasæt svarende til dit lavopløsningsbillede.

Du kan forbedre dine billeder ved at bruge både CPU- og GPU-gengivelses-HQ. Generering af 1080p-output på GPU bør tage omkring 5s eller 2s pr. billede, og CPU-gengivelses-HQ bør tage omkring 20-60s for 1080-output.

Previous Next

Kom godt i gang med Neural Enhance

Den anbefalede måde at installere Neural Enhance på er via Docker. Brug venligst følgende kommando til at installere Neural Enhance.

Installer Neural Enhance via Docker

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

Forbedre billeder via gratis Python API

Neural-Enhance API giver mulighed for at forbedre billeder programmatisk. API'en giver en liste over kommandoer, som du kan bruge med den forudtrænede model, der er tilgængelig i API'et. Ved hjælp af API'en kan du køre superopløsningsscriptet for at reparere JPEG-artefakter, zoomfaktorer, behandle flere kvalitetsbilleder med en enkelt kørsel og vise outputbillederne. Du kan nemt forbedre dine billeder ved at bruge denne ene kodelinje

Forbedre billeder via Python

  1. Åbn kommandoprompt
  2. Gå til mappen enhance.py
  3. Kør følgende kommando, og send filtype, reparation, zoomindstilling og billedsti for at blive forbedret

Forbedre billeder via 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
  

Træning af billeder i superopløsning via Python

Open Source-billedbiblioteket Neural Enhance træner dine billeder på din egen måde. API'et kommer med standard fortrænede modeller, du kan træne din egen proces ved at bruge parametre baseret på dit billeddatasæt. Du kan træne din model ved at bruge perceptuelt tab fra papir, træne din model ved at bruge en kontradiktorisk opsætning og mere.

Brug fortrænede modeller og trænings super-opløsning via 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
 Dansk