Öppen källkod Python API för bilder
Superupplösning för bilder med hjälp av Deep Learning
Vad är Neural Enhance?
Neural Enhance är ett Python API med öppen källkod för bildförbättring. API:et förbättrar bilden med hjälp av djupinlärning, med API:t är det möjligt att träna det neurala nätverket och zooma 2x eller till och med 4x in i dina bilder. Du kan förbättra bilderna genom att öka antalet neuroner i bilden, med en datauppsättning som liknar din lågupplösta bild.
Du kan förbättra dina bilder med både CPU- och GPU-rendering HQ. Att generera 1080p-utdata på GPU bör ta cirka 5s eller 2s per bild och CPU-rendering HQ bör ta cirka 20-60s för 1080-utdata.
Komma igång med Neural Enhance
Det rekommenderade sättet att installera Neural Enhance är via Docker. Använd följande kommando för att installera Neural Enhance.
Installera Neural Enhance via Docker
docker run --rm -v `pwd`:/ne/input -it alexjc/neural-enhance --help
Förbättra bilder via gratis Python API
Neural-Enhance API gör det möjligt att förbättra bilder programmatiskt. API:et tillhandahåller en lista över kommandon som du kan använda med den förtränade modellen som finns tillgänglig i API:et. Med hjälp av API:t kan du köra superupplösningsskriptet för att reparera JPEG-artefakter, zoomfaktorer, bearbeta flera kvalitetsbilder med en enda körning och visa utdatabilderna. Du kan enkelt förbättra dina bilder genom att använda denna kodrad
Förbättra bilder via Python
- Öppna kommandotolken
- Gå till katalogen enhance.py
- Kör följande kommando och skicka filtyp, reparation, zoomalternativ och bildsökväg för att förbättras
Förbättra 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
Träning av superupplösta bilder via Python
Bildbiblioteket med öppen källkod Neural Enhance tränar dina bilder på ditt eget sätt. API:et kommer med förtränade standardmodeller, du kan träna din egen process genom att använda parametrar baserade på din bilddatauppsättning. Du kan träna din modell genom att använda perceptuell förlust från papper, träna din modell med en kontradiktorisk konfiguration och mer.
Använd förtränade modeller och tränings superupplö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