Åpen kildekode Python API for bilder
Superoppløsning for bilder ved hjelp av Deep Learning
Hva er Neural Enhance?
Neural Enhance er en åpen kildekode Python API for bildeforbedring. API forbedrer bildet ved hjelp av dyp læring, ved hjelp av API er det mulig å trene det nevrale nettverket og zoome 2x eller til og med 4x inn i bildene dine. Du kan forbedre bildene ved å øke antallet nevroner i bildet, med et datasett som ligner på bildet med lav oppløsning.
Du kan forbedre bildene dine ved å bruke både CPU- og GPU-gjengivelses-HQ. Generering av 1080p-utgang på GPU bør ta rundt 5s eller 2s per bilde, og CPU-gjengivelses-HQ bør ta rundt 20-60s for 1080-utgang.
Komme i gang med Neural Enhance
Den anbefalte måten å installere Neural Enhance på er via Docker. Bruk følgende kommando for å installere Neural Enhance.
Installer Neural Enhance via Docker
docker run --rm -v `pwd`:/ne/input -it alexjc/neural-enhance --help
Forbedre bilder via gratis Python API
Neural-Enhance API gjør det mulig å forbedre bilder programmatisk. API-en gir en liste over kommandoer som du kan bruke med den forhåndstrente modellen som er tilgjengelig i API-en. Ved å bruke API kan du kjøre superoppløsningsskriptet for å reparere JPEG-artefakter, zoomefaktorer, behandle flere kvalitetsbilder med en enkelt kjøring og vise utdatabildene. Du kan enkelt forbedre bildene dine ved å bruke denne ene kodelinjen
Forbedre bilder via Python
- Åpne ledetekst
- Gå til katalogen enhance.py
- Kjør følgende kommando og pass filtype, reparasjon, zoomalternativ og bildebane som skal forbedres
Forbedre bilder 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
Trening av superoppløsningsbilder via Python
Bildebiblioteket med åpen kildekode Neural Enhance trener bildene dine på din egen måte. API-en kommer med standard forhåndstrente modeller, du kan trene din egen prosess ved å bruke parametere basert på bildedatasettet ditt. Du kan trene modellen din ved å bruke perseptuelle tap fra papir, trene modellen ved å bruke et kontradiktorisk oppsett og mer.
Bruk forhåndstrente modeller og trenings super-opplø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