LeanImg

Πώς μπορώ να αναβαθμίσω μια εικόνα σε 4K δωρεάν;

Η 4K είναι 3840x2160. Εδώ είναι τι ανακατασκευάζει ένα μοντέλο, τι παρεμβάλλει ένας αναδιαστάτης, το πλάτος της πηγής που χρειάζεστε και η ανώτατη δυνατότητα του υλικού που αποφασίζει αν θα λειτουργήσει.

· Updated

Η 4K σημαίνει 3840 επί 2160 pixels. Αυτό είναι 8.294.400 από αυτά. Αν η πηγή σας είναι μια μικρογραφία 400 επί 269, ζητάτε από το λογισμικό περίπου 8,2 εκατομμύρια pixels που κανείς δεν έχει καταγράψει ποτέ, και ένα μοντέλο θα τα παράγει ευχαρίστως προβλέποντας τι ανήκει σε κάθε κενό. Ένας αναδιαστάτης κάνει κάτι πιο απλό. Μέσες τιμές των pixels που ήδη έχετε σε ένα μεγαλύτερο πλέγμα, και δεν προσθέτει καθόλου πληροφορίες.

Ο αναβαθμιστής της LeanImg εκτελεί το Real-ESRGAN realesr-general-x4v3 μέσα στην καρτέλα του προγράμματος περιήγησης σας, χρησιμοποιώντας το WebGPU όταν η μηχανή σας το υποστηρίζει. Το αρχείο μοντέλου κατεβαίνει μία φορά από το δικό μας domain και τα pixels σας παραμένουν στη συσκευή. Οι περισσότερες δωρεάν αναβαθμιστές 4K λειτουργούν αντίστροφα, ανεβάζοντας το αρχείο σας και υποσχόμενοι να το διαγράψουν σε μία ή δύο ώρες. Δεν έχουμε δημιουργήσει διαδρομή ανέβασμα. Δεν υπάρχει διαδρομή API σε αυτόν τον κώδικα που θα μπορούσε να δεχθεί μία.

Τι σημαίνει πραγματικά η 4K σε pixels;

Η καταναλωτική 4K είναι UHD στα 3840 επί 2160, το πλαίσιο που περιγράφει η σύσταση ITU-R BT.2020 για την υπερυψηλή ανάλυση. Η κινηματογραφική 4K είναι πιο ευρεία στα 4096 επί 2160 και θα τη συναντήσετε μόνο σε DCP έργα. Για ένα ταπετσαρία, ένα φόντο τηλεόρασης ή μια ανάρτηση στο YouTube, το 3840 πλάτος είναι ο αριθμός που έχει σημασία. Διαιρέστε αυτόν τον αριθμό με τα δύο κουμπιά που εκθέτει ο αναβαθμιστής μας και θα πάρετε το ελάχιστο πλάτος πηγής σας: 960 pixels για το κουμπί 4x και 1920 pixels για το 2x. Δεν υπάρχει 3x. Δεν υπάρχει κουτί όπου μπορείτε να πληκτρολογήσετε 3840 επίσης, οπότε ο πολλαπλασιαστής είναι η ολόκληρη απόφαση.

Προσθέτει ένας αναβαθμιστής AI λεπτομέρεια που δεν υπήρχε στο αρχείο;

Προσθέτει λεπτομέρεια. Εάν αυτή η λεπτομέρεια είναι αληθινή είναι μια ξεχωριστή ερώτηση. Το Real-ESRGAN έμαθε από ζευγάρια εικόνων που έχουν υποβαθμιστεί και αποκατασταθεί, οπότε έχει μια ισχυρή προτίμηση για το πώς φαίνεται μια άκρη τούβλου, μια βλεφαρίδα ή μια ύφανση υφάσματος σε υψηλότερη ανάλυση, και το ζωγραφίζει εκεί που η πηγή έχει μόνο μια θολούρα. Η μηχανή μας του παρέχει 256 pixel πλακίδια με 16 pixel επικαλύψεις σε κάθε πλευρά. Διατηρεί τον πυρήνα 224 pixel κάθε αποτελέσματος και πετάει τις επικαλυπτόμενες ραφές.

Δοκιμάσαμε ένα PNG 400x269 των 177,1 KB και από τα δύο κουμπιά. Η διέλευση 4x επέστρεψε 1600x1076 στα 2,7 MB. Η διέλευση 2x επέστρεψε 800x538 στα 782,8 KB, και αυτό αξίζει να κατανοηθεί: το μοντέλο παράγει μόνο 4x έξοδο, οπότε κάθε πλακίδιο παράγεται στα 4x και μειώνεται αργότερα με υψηλής ποιότητας ομαλοποίηση. Το αποτέλεσμα 2x εξακολουθεί να φέρει την ανακατασκευή του μοντέλου. Μια βικυβική μεγέθυνση του ίδιου αρχείου δεν φέρει καμία από αυτήν.

Διαχωρισμένη προβολή μιας πηγής 400x269 και του αναβαθμισμένου αποτελέσματος 1600x1076
Η εκτέλεση 4x: 400x269 εισέρχεται, 1600x1076 εξέρχεται. Ακριβής, και εξακολουθεί να είναι 2240 pixels λιγότερα από 4K.

Πόσο μεγάλο πρέπει να είναι το αρχείο μου για να φτάσει τα 3840 pixels πλάτος;

Μαθηματικά κλίμακας για τους δύο πολλαπλασιαστές που προσφέρει το εργαλείο. Μόνο η πρώτη σειρά είναι μια μετρημένη εκτέλεση.
ΠηγήΈξοδος 2xΈξοδος 4xΦτάνει τα 3840 πλάτος;
400x269 (μετρημένη εκτέλεση)800x538, 782,8 KB1600x1076, 2,7 MBΌχι
960x5401920x10803840x2160Ναι, στα 4x
1920x10803840x21607680x4320Ναι, σε οποιοδήποτε

Αυτή η πρώτη σειρά είναι πραγματική. Μια μικρογραφία 400 pixels δεν μπορεί να φτάσει 4K σε μία μόνο εκτέλεση εδώ, και οποιοδήποτε εργαλείο που ισχυρίζεται το αντίθετο είτε εκτελεί το μοντέλο δύο φορές είτε αναφέρει έναν αριθμό που ποτέ δεν παρήγαγε. Αν η πηγή σας σας φέρνει πάνω από 3840 (η σειρά 1920x1080 στα 4x σας δίνει 7680), ολοκληρώστε στον αναδιαστάτη και μειώστε το πλάτος ακριβώς στα 3840. Η μείωση μετά από μια αναβάθμιση είναι φθηνή και φαίνεται καλή.

Γιατί το αρχείο μου που αναβαθμίστηκε είναι 2,7 MB όταν το αρχικό ήταν 177 KB;

Ο αναβαθμιστής πάντα γράφει PNG. Το PNG είναι χωρίς απώλειες, οπότε δεν υπάρχει ρυθμιστικό ποιότητας για να μαλακώσει την προσγείωση, και το 4x σημαίνει δεκαέξι φορές τον αριθμό των pixels που εισέρχονται σε μια μορφή που αποθηκεύει καθένα από αυτά ακριβώς. Οι μεγάλες εξόδους αποστέλλονται σε δίσκο ταινία με ταινία ως truecolor PNG, που διατηρεί τη μνήμη επίπεδη ενώ το αρχείο μεγαλώνει πέρα από οτιδήποτε μπορεί να κρατήσει μια καρτέλα.

Συμπιέστε το αργότερα. Ο συμπιεστής μας πήρε ένα JPEG 3840x2160 των 538,6 KB και το μείωσε σε 286,1 KB σε έξυπνη λειτουργία, μια μείωση 47% χωρίς αλλαγή στις διαστάσεις. Όταν μετατράπηκε σε WebP με ρυθμιστικό 63, το ίδιο αρχείο βγήκε στα 200,6 KB. Το AVIF έφτασε τα 186,9 KB και χρειάστηκε περίπου 10 έως 11 δευτερόλεπτα για να κωδικοποιηθεί, ενώ οι κωδικοποιήσεις JPEG και WebP ήταν άμεσες. Ένα πράγμα που πρέπει να γνωρίζετε πριν συμπιέσετε ένα αρχείο που θέλετε να κρατήσετε: η συμπίεση αφαιρεί όλα τα μεταδεδομένα, συμπεριλαμβανομένων των EXIF, GPS και ICC.

Θα τρέξει πραγματικά ο περιηγητής μου μια αναβάθμιση 4K;

Αυτή είναι η ανώτατη δυνατότητα που αποφασίζει αν μπορείτε να κάνετε οτιδήποτε από αυτά. Με το WebGPU διαθέσιμο, η διαδρομή 4x δέχεται έως περίπου 32 megapixels εισόδου. Χωρίς αυτό, επιστρέφουμε σε μονόνηθρο WebAssembly και το όριο εισόδου πέφτει περίπου σε 1,1 megapixels, το οποίο απορρίπτει μια απλή φωτογραφία 1920x1080 στα 2,07 megapixels πριν ξεκινήσει. Ελέγξτε πρώτα το caniuse. Τα τηλέφωνα είναι ακόμα χαμηλότερα: η ανώτατη δυνατότητα κινητού καμβά βάζει μια εργασία 4x γύρω από 1 megapixel εισόδου, που εξακολουθεί να καθαρίζει το 4K στην πλευρά εξόδου. Υπάρχει επίσης ένα σκληρό όριο 32.000 pixels ανά πλευρά, και το εργαλείο δέχεται ένα αρχείο τη φορά έως 50 MB.

Πόσες διόδους είναι μια αναβάθμιση;

Μια εργασία δεν είναι μια εκτέλεση μοντέλου. Είναι ένα πλέγμα από αυτές, επειδή η μηχανή λειτουργεί σε πυρήνες 224 pixel. Διαιρέστε το πλάτος της πηγής σας με 224 και στρογγυλοποιήστε προς τα πάνω, κάντε το ίδιο με το ύψος και πολλαπλασιάστε: αυτό είναι πόσες φορές εκτελείται το μοντέλο. Μια πηγή 960x540, η μικρότερη που φτάνει 4K στα 4x, είναι ένα πλέγμα 5 επί 3, οπότε 15 εκτελέσεις. Μια πηγή 1920x1080 είναι 9 επί 5, οπότε 45. Γίνονται η μία μετά την άλλη και η μηχανή επιστρέφει τον έλεγχο πίσω στον περιηγητή μεταξύ κάθε μίας, γι' αυτό η καρτέλα παραμένει χρήσιμη και γι' αυτό η πρόοδος που αναφέρει κινείται ανά πλακίδιο αντί για ανά αρχείο. Είναι επίσης ο λόγος που η εναλλακτική CPU δεν είναι αργή μία φορά. Είναι αργή μία φορά ανά πλακίδιο.

Γιατί η εικόνα στην κάρτα αποτελέσματος δεν είναι το αρχείο που κατέβασα;

Πάνω από ένα ορισμένο μέγεθος εξόδου, το αποτέλεσμα δεν υπάρχει ποτέ ως μία εικόνα στη μνήμη. Στη διαδρομή WebGPU επι desktop, ο συναρμολογημένος καμβάς περιορίζεται στα 64 εκατομμύρια pixels, που στα 4x σημαίνει οποιαδήποτε πηγή πάνω από 4 megapixels και στα 2x οποιαδήποτε πηγή πάνω από 16. Πέρα από αυτό, η μηχανή γράφει το PNG ταινία με ταινία και δημιουργεί μια ξεχωριστή προεπισκόπηση δίπλα της, περιορισμένη στα 1600 pixels στην πιο μεγάλη πλευρά της. Έτσι, σε μια μεγάλη εργασία, η εικόνα που βλέπετε είναι μια μείωση και η λήψη είναι η πραγματική έξοδος. Κρίνετε την λεπτομέρεια αφού ανοίξετε το αρχείο, όχι στην κάρτα. Αν το βήμα προεπισκόπησης αποτύχει, εξακολουθείτε να λαμβάνετε το αρχείο, επειδή ένα ολοκληρωμένο αποτέλεσμα που χρειάστηκε λεπτά δεν απορρίπτεται ποτέ πάνω από μια μικρογραφία.

Τι γίνεται αν το αρχείο μου είναι HEIC ή έχει διαφάνεια;

Ο αναβαθμιστής δέχεται JPG, PNG, WebP και AVIF. Το HEIC δεν είναι στη λίστα, οπότε μια φωτογραφία iPhone χρειάζεται μια στάση στο HEIC σε PNG πρώτα. Η διαφάνεια δεν θα επιβιώσει επίσης την εκτέλεση, επειδή το μοντέλο είναι μόνο RGB και το άλφα επίπεδο γίνεται λευκό πριν επεξεργαστεί το πρώτο πλακίδιο. Κρατήστε το πρωτότυπό σας αν η κοπή έχει σημασία, και εκτελέστε αφαίρεση φόντου μετά την αναβάθμιση ώστε το κανάλι άλφα να παραχθεί στην τελική ανάλυση. Τι χωρίζει το μοντέλο καθαρά και τι όχι αξίζει να διαβαστεί πρώτα.

Πότε είναι ο απλός αναδιαστάτης το σωστό εργαλείο;

Όταν πηγαίνετε προς τα κάτω, ή όταν η πηγή είναι ήδη κοντά στον στόχο. Ο αναδιαστάτης αναθέτει τη δουλειά στον καμβά του προγράμματος περιήγησης σε υψηλή ποιότητα ομαλοποίησης, που μετράει τα γειτονικά pixels και δεν εφευρίσκει τίποτα. Έρχεται με την επιλογή "Μην μεγεθύνετε" επιλεγμένη, οπότε ένα πλάτος που πληκτρολογείτε που είναι μεγαλύτερο από το αρχικό περιορίζεται αμέσως πίσω στο αρχικό. Οι κοινωνικές προεπιλογές είναι η μία εξαίρεση, καθώς η επιλογή ενός ονομαστικού μεγέθους πλατφόρμας είναι μια σκόπιμη επιλογή και κερδίζει πάνω από τον περιορισμό. Η έξοδος PNG παραμένει χωρίς απώλειες εκεί και όλα τα άλλα επανακωδικοποιούνται σε ποιότητα 90 από προεπιλογή. Πηγαίνοντας από 3000 πλάτος σε 3840, η παρεμβολή είναι καλή. Πηγαίνοντας από 800, δεν είναι. Πώς συγκρίνονται τα δύο εργαλεία σειρά προς σειρά εξερευνά περαιτέρω αυτή τη διαφορά.

Φεύγει η εικόνα μου από τον υπολογιστή μου;

Όχι. Αυτή η εφαρμογή δεν έχει διαδρομές API και καμία ενέργεια διακομιστή, οπότε δεν υπάρχει σημείο που θα μπορούσε να δεχθεί ένα αρχείο ακόμη και κατά λάθος. Το μόνο αίτημα δικτύου κατά τη διάρκεια μιας αναβάθμισης είναι η ίδια προέλευση που κατεβάζει το μοντέλο, και αποθηκεύεται στην κρυφή μνήμη μετά την πρώτη εκτέλεση. Ανοίξτε τα DevTools και παρακολουθήστε την καρτέλα Δικτύου ενώ εκτελείται μια εργασία αν προτιμάτε να το δείτε παρά να το διαβάσετε. Η σελίδα απορρήτου μας το εκφράζει με λιγότερες λέξεις, και η μηχανή OCR που κατεβάζει μία φορά και μετά σταματά να ζητά είναι το άλλο εργαλείο εδώ που έχει κατασκευαστεί με τον ίδιο τρόπο.

Επόμενο βήμα: ανοίξτε τον αναβαθμιστή με μια πηγή τουλάχιστον 960 pixels πλάτος, επιλέξτε 4x και περιμένετε να ολοκληρωθεί η λήψη του μοντέλου. Όταν το PNG προσγειωθεί, στείλτε το στον αναδιαστάτη και ρυθμίστε το πλάτος στα 3840, στη συνέχεια ολοκληρώστε στον συμπιεστή ώστε η ταπετσαρία 4K που μόλις δημιουργήσατε να μην είναι ένα πολυμεγέθες PNG.