Open-Source Python API pro obrázky
Super rozlišení pro obrázky pomocí hlubokého učení
Co je Neural Enhance?
Neural Enhance je open-source Python API pro vylepšení obrazu. API vylepšuje obraz pomocí hlubokého učení, pomocí API je možné trénovat neuronovou síť a přibližovat 2x nebo dokonce 4x své obrázky. Obrázky můžete vylepšit zvýšením počtu neuronů v obrázku s datovou sadou podobnou vašemu obrázku s nízkým rozlišením.
Své obrázky můžete vylepšit pomocí CPU i GPU rendering HQ. Generování výstupu 1080p na GPU by mělo trvat přibližně 5 s nebo 2 s na obrázek a vykreslování CPU HQ by mělo trvat přibližně 20-60 s pro výstup 1080.
Začínáme s neurálním vylepšením
Doporučený způsob instalace Neural Enhance je přes Docker. K instalaci Neural Enhance použijte prosím následující příkaz.
Nainstalujte Neural Enhance přes Docker
docker run --rm -v `pwd`:/ne/input -it alexjc/neural-enhance --help
Vylepšete obrázky pomocí bezplatného Python API
Neural-Enhance API umožňuje vylepšování obrázků programově. Rozhraní API poskytuje seznam příkazů, které můžete použít s předem trénovaným modelem dostupným v rozhraní API. Pomocí rozhraní API můžete spustit skript s vysokým rozlišením pro opravu artefaktů JPEG, faktory přiblížení, zpracování více kvalitních obrázků jediným spuštěním a zobrazení výstupních obrázků. Své obrázky můžete snadno vylepšit pomocí tohoto jednoho řádku kódu
Vylepšete obrázky pomocí Pythonu
- Otevřete příkazový řádek
- Přejděte do adresáře enhance.py
- Spusťte následující příkaz a předejte typ souboru, opravu, možnost zvětšení a cestu k obrazu, které chcete vylepšit
Vylepšete obrázky pomocí Pythonu
# 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
Školení obrázků v super rozlišení přes Python
Knihovna obrázků s otevřeným zdrojovým kódem Neural Enhance trénuje obrázky vlastním způsobem. API je dodáváno s výchozími předtrénovanými modely, můžete trénovat svůj vlastní proces pomocí parametrů založených na vaší obrazové datové sadě. Můžete trénovat svůj model pomocí percepční ztráty z papíru, trénovat svůj model pomocí nepřátelského nastavení a dalších.
Používejte předem trénované modely a super-rozlišení školení prostřednictvím 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