Ανοιχτού κώδικα Python API για εικόνες
Σούπερ ανάλυση για εικόνες που χρησιμοποιούν Deep Learning
Τι είναι το Neural Enhance;
Το Neural Enhance είναι ένα Python API ανοιχτού κώδικα για βελτίωση εικόνας. Το API βελτιώνει την εικόνα χρησιμοποιώντας βαθιά εκμάθηση, χρησιμοποιώντας το API είναι δυνατό να εκπαιδεύσετε το νευρωνικό δίκτυο και να κάνετε ζουμ 2x ή ακόμα και 4x στις εικόνες σας. Μπορείτε να βελτιώσετε τις εικόνες αυξάνοντας τον αριθμό των νευρώνων στην εικόνα, με ένα σύνολο δεδομένων παρόμοιο με την εικόνα χαμηλής ανάλυσης.
Μπορείτε να βελτιώσετε τις εικόνες σας χρησιμοποιώντας και CPU και GPU rendering HQ. Η παραγωγή εξόδου 1080p σε GPU θα πρέπει να διαρκεί περίπου 5 ή 2 δευτερόλεπτα ανά εικόνα και η απόδοση της CPU HQ θα πρέπει να διαρκεί περίπου 20-60 δευτερόλεπτα για έξοδο 1080.
Ξεκινώντας με το Neural Enhance
Ο προτεινόμενος τρόπος εγκατάστασης του Neural Enhance είναι μέσω του Docker. Χρησιμοποιήστε την ακόλουθη εντολή για να εγκαταστήσετε το Neural Enhance.
Εγκαταστήστε το Neural Enhance μέσω Docker
docker run --rm -v `pwd`:/ne/input -it alexjc/neural-enhance --help
Βελτιώστε τις εικόνες μέσω του Free Python API
Το Neural-Enhance API επιτρέπει τη βελτίωση των εικόνων μέσω προγραμματισμού. Το API παρέχει μια λίστα εντολών που μπορείτε να χρησιμοποιήσετε με το προεκπαιδευμένο μοντέλο που είναι διαθέσιμο στο API. Χρησιμοποιώντας το API, μπορείτε να εκτελέσετε το σενάριο υπερ-ανάλυσης για να επιδιορθώσετε τεχνουργήματα JPEG, παράγοντες ζουμ, να επεξεργαστείτε πολλές εικόνες ποιότητας με μία μόνο εκτέλεση και να εμφανίσετε τις εικόνες εξόδου. Μπορείτε εύκολα να βελτιώσετε τις εικόνες σας χρησιμοποιώντας αυτή τη μία γραμμή κώδικα
Βελτιώστε τις εικόνες μέσω Python
- Ανοίξτε τη γραμμή εντολών
- Μεταβείτε στον κατάλογο enhance.py
- Εκτελέστε την ακόλουθη εντολή και περάστε τον τύπο αρχείου, την επιδιόρθωση, την επιλογή ζουμ και τη διαδρομή εικόνας για βελτίωση
Βελτιώστε τις εικόνες μέσω 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 συνοδεύεται από προεπιλεγμένα προεκπαιδευμένα μοντέλα, μπορείτε να εκπαιδεύσετε τη δική σας διαδικασία χρησιμοποιώντας παραμέτρους που βασίζονται στο σύνολο δεδομένων εικόνων σας. Μπορείτε να εκπαιδεύσετε το μοντέλο σας χρησιμοποιώντας αντιληπτική απώλεια από χαρτί, να εκπαιδεύσετε το μοντέλο σας χρησιμοποιώντας μια αντίθετη ρύθμιση και πολλά άλλα.
Χρησιμοποιήστε Προ-εκπαιδευμένα Μοντέλα & Εκπαίδευση Super-Resolution μέσω 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