GEGL c2g: Ένας αξιόλογος b&w converter από το gimp

... επεξεργασία φωτογραφίας και σχετικό λογισμικό GNU Linux

Συντονιστής: adem1

GEGL c2g: Ένας αξιόλογος b&w converter από το gimp

Δημοσίευσηαπό digibill » 14 Μάιος 2010, 11:56

Κάποιοι τον χαρακτήρισαν σαν τον "απόλυτο b&w converter"! Ας μην γελιόμαστε όμως... Όπως παντού στην ζωή, έτσι και στην ψηφιακή επεξεργασία δεν υπάρχει το "απόλυτο". Υπάρχει απλά το καταλληλότερο εργαλείο για κάθε δουλειά. Και εκεί ακριβώς έγκειται μίας από τις αξίες της φωτογραφικής καλλιέργειας: να είναι κανείς σε θέση να επιλέξει (ενσυνείδητα) το καταλληλότερο εργαλείο για την δουλειά που θέλει να κάνει. Πάμε όμως στα πιο πρακτικά θέματα.....

H GEGL είναι μία βιβλιοθήκη με ρουτίνες επεξεργασίας γραφικών και προβλέπεται να αποτελέσει την βιβλιοθήκη γραφικών που στο μέλλον θα χρησιμοποιεί το GIMP. Από τις σημαντικότερες νέες τεχνολογίες που αναμένεται να φέρει στο gimp είναι η πλήρης υποστήριξη 16bit. Προς το παρόν το gimp δεν βασίζεται εξ' ολοκλήρου σε αυτή την βιβλιοθήκη, μπορεί ωστόσο να την χρησιμοποιήσει κανείς και να πάρει μια πρώτη γεύση από τα καλούδια της.
Μία υπορουτίνα της βιβλιοθήκης αυτής είναι και το c2g ("convert to grayscale"), για το οποίο και γίνεται ο λόγος εδώ. Η εφαρμογή του c2g είναι γενικά αρκετά αργή, αλλά τα αποτελέσματα είναι τουλάχιστον ενδιαφέροντα και σε ορισμένες περιπτώσεις κολλάνε πολύ καλά στο αποτέλεσμα που θα θέλαμε (τουλάχιστον στα δικά μου μάτια). Ειδικά στις φωτογραφίες όπου εμπλέκεται ουρανός με ελαφρά συννεφιά, στα τοπία γενικά κλπ το c2g μπορεί να κάνει καλή δουλειά, δίνοντας δραματικότητα και ομοιογένεια στο αποτέλεσμα....
Φαίνεται (και λέω φαίνεται γιατί το διαθέσιμο documentation της ρουτίνας στο internet προς το παρόν είναι σχεδόν ανύπαρκτο) ότι η επεξεργασία που εφαρμόζει είναι κάτι σαν HDR tone mapping. Κάπου αλλού διάβασα ότι μιμείται τον τρόπου που το μάτι μας φιλτράρει την πληροφορία φωτεινότητας από την εικόνα που βλέπει, δημιουργώντας έτσι μια γενικά ομοιόμορφη τονικά εικόνα με πολύ όμως τοπικό κόντραστ.
Πέρα από την θεωρία, σημασία έχει ότι αν κανείς το παρακάνει βγάζει εύκολα χάλια αποτέλεσμα, αν όμως δώσει λίγη βάση και πειραματιστεί με τις ρυθμίσεις μπορεί να πετύχει απίστευτα καλορυθμισμένο κόντραστ στο α/μ του! Θα μπορούσα να πω ότι είναι κάτι παρόμοιο με την μέθοδο του Lenswide εδώ, μόνο που πηγαίνει από άλλο δρόμο (εντελώς!) και μπορεί να πετύχει πολύ διαφορετικά αποτελέσματα, ίδιας όμως φιλοσοφίας (όλα γίνονται για το τοπικό μικρο-κόντραστ και την εφαρμογή του έτσι που να μην μοιάζει ψεύτικο). Πώς το χρησιμοποιούμε:

Αρχικά ενεργοποιούμε την χρήση της gegl, πηγαίνοντας στο μενού Colors και επιλέγοντας το κουτάκι Use GEGL.

Εικόνα

Κατόπιν, επιλέγοντας Tools -> GEGL Operations... ανοίγει ένα μενού με διάφορα "actions" που περιέχει η βιβλιοθήκη. Ένα από αυτά είναι και το c2g. Επιλέγοντάς το, το παραθυράκη της gegl γίνεται έτσι:

Εικόνα

Αυτό το παράθυρο μας δείχνει τις διάφορες παραμέτρους του συγκεκριμένου action. Όπως προείπα υπάρχει ελάχιστο documentation κι έτσι θα προσπαθήσω να περιγράψω το τι κάνει κάθε ρύθμιση με βάση τα "πειράματά" μου και τις πληροφορίες πυο κατάφερα να βρω....

Radius

Η ακτίνα radius είναι η ακτίνα των pixel που θα ληφθούν υπόψη κατά το tone mapping. Αυτό σημαίνει, ότι με μικρότερη τιμή ακτίνας τα αρνητικά αποτελέσματα του tone mapping ("halo effects") θα είναι πολύ πιο ορατά. Μπορείτε να φανταστείτε την ακτίνα, ως το μέγεθος του χώρου της εικόνας σας που θα τροποποιηθεί έτσι ώστε να έχετε τόνους μεταξύ του πλήρους μαύρου και του πλήρους λευκού. Αυξάνοντας την ακτίνα, οι μεταβάσεις στο μικροκόντραστ θα είναι πιο ομαλές και τα halo effects δεν θα είναι τόσο εμφανή, με ομαλότερες μεταβάσεις στο κόντραστ.Μικρή ακτίνα, θα σας δώσει απότομες εναλλαγές πλήρους άσπρου και μαύρου, κάτι πιο κοντινό στο λιθογραφικό φιλμ. Αντιθέτως, μεγαλύτερη ακτίνα θα οδηγήσει σε πιο ήρεμο, πιο συνεκτικό αποτέλεσμα με αυξημένο κόντραστ μεν, πιο ομαλό αποτέλεσμα δε.
Για φωτογραφία 10ΜΡ μια ακτίνα κοντά στο 1100px είναι μια καλή αρχή. Μεγαλύτερα νούμερα δίνουν ακόμη πιο ομαλά αποτελέσματα, αλλά εμένα μου αρέσει κάπου εκεί.

Δείτε για παράδειγμα τις επόμενες τρεις δοκιμές (παρμένες από εδώ). Το αρχικό αρχείο είναι 1800*1200 px και έχει εφαρμοστεί c2g με όλες τις ρυθμίσεις default, με μόνη αυξομοίωση την ακτίνα:

Εικόνα Radius: 100px

Εικόνα Radius: default 384px

Εικόνα Radius: 1100px

Νομίζω φαίνεται ξεκάθαρα το αποτέλεσμα της τιμής του radius.
Γενικά να θυμάστε ότι η τιμή για το radius θα πρέπει να είναι αρκετά μεγάλη ώστε να καλύπτει σημαντικές σκοτεινές ή φωτεινές περιοχές στη φωτογραφία σας, οι οποίες θα πρέπει να παραμείνουν φωτεινές ή σκοτεινές.

Samples

Όσο μεγαλύτερη η δειγματοληψία, τόσο ομαλότερο το αποτέλεσμα, τόσο περισσότερο χάνετε σε τοπικό κόντραστ. Η συνολική εμφάνιση της φωτογραφίας θα είναι πολύ πιο ρεαλιστική, θα αποφύγετε τα εξτρίμ αποτελέσματα και τα halo effects. Επιπλέον, χρησιμοποιώντας περισσότερα samples θα μειώθεί δραματικά ο θόρυβος που προκαλείται από την επεξεργασία που κάνει το c2g. Εγώ χρησιμοποιώ συνήθως μια τιμή γύρω στο 10.

Iterations

Υποτίθεται ότι η τιμή αυτή ελέγχει κάπως την παραγωγή θορύβου και την "αγριάδα" του αποτελέσματος. Στην πράξη εγώ δεν βλέπω μεγάλες διαφορές (τουλάχιστον στα μεγάλα αρχεία των 10ΜΡ που έχω δοκιμάσει).
Στα μικρότερα αρχεία υπάρχει διαφορά, αλλα'γενικά είναι προτιμότερο να εφαρμόζετε το c2g σε πλήρους μεγέθους μεγάλα αρχεία. Δείτε τα παραπάνω παραδείγματα με σταθερές τις άλλες τιμές, αλλά διαφορετικά iterations:

Εικόνα 50 samples per iterations

Εικόνα 60 iterations


Γενικά έχετε υπ 'όψιν τα εξής:
  • Αποφύγετε τα halos! Χρησιμοποιήστε μεγαλύτερη ακτίνα, περισσότερα samples και παίξτε με το slider "strength".
  • Διατηρείστε σκούρες και φωτεινές περιοχές στη φωτογραφία σας ώστε να είναι ρεαλιστικό το αποτέλεσμα! Μην χρησιμοποιείτε πολύ μικρές ακτίνες καθώς το αποτέλεσμα θα οδεύει προς το solarization του Man Ray.
  • Όταν κανείς δουλεύει για ώρα με υψηλά κόντραστ μπορεί εύκολα να συνηθίσει το μάτι του και μετά να θέλει ακόμα μεγαλύτερες δόσεις για να εντυπωσιαστεί :D Καταλήγουμε έτσι πολύ εύκολα σε υπερβολικά αποτελέσματα! Δουλεύοντας με το c2g καλό θα είναι να αντιγράψετε το background σε ένα νέο layer ώστε να βλέπετε εύκολα την διαφορά από την αρχική φωτογραφία κιαι να μην παρασύρεστε...
  • Όπως προείπα, εφαρμόζετε το φίλτρο σε μεγάλα αρχεία, καθώς τα μικρά σε μέγεθος αρχεία παράγουν πάρα πολύ εύκολα artifacts από την επιθετική επεξεργασία που το c2g εφαρμόζει.
  • Το c2g δυστυχώς είναι πολύ πεινασμένο για υπολογιστική ισχύ, με αποτέλεσμα να είναι γενικά αργό. Μπορείτε να γλιτώσετε λιγάκι χρόνο αν κατά το preview χρησιμοποιείτε μικρή τιμή για το iterations. Θυμηθείτε όμως να το αυξήσετε πριν την τελική εφαρμογή (πριν πατήσετε το "ΟΚ" απανεργοποιήστε το preview και βάλτε το iterations κάπου στο 60)

Μια δικιά μου φωτογραφία επεξεργασμένη με την συγκεκριμένη μέθοδο:

Εικόνα
http://darktable.sourceforge.net/www.yiannakos.gr
Σύστημα:AMD Ryzen 5 1600, 16GB DDR4 RAM, ASUS PRIME B350 Plus m/b, nVidia GeForce GTX 1070 Ti 8GB
OS:Ubuntu 18.04 64bit en
http://petition.stopsoftwarepatents.eu/351004340091/
Άβαταρ μέλους
digibill
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 721
Εγγραφή: 18 Μάιος 2008, 20:12
Τοποθεσία: Αθήνα
Εκτύπωση

Re: GEGL c2g: Ένας αξιόλογος b&w converter από το gimp

Δημοσίευσηαπό digibill » 20 Μάιος 2010, 21:48

Άλλη μία χρήση του c2g.

Ανοίγουμε στο gimp μια έγχρωμη φωτογραφία:

Εικόνα

Δημιουργούμε ένα αντίγραφο του background layer σε νέο layer. Στο αντίγραφο αυτό εφαρμόζουμε το c2g όπως περιγράφηκε παραπάνω. Αφού ολοκληρωθεί η διαδικασία, παίρνουμε το αρχικό background, το φέρνουμε πάνω από το νέο layer (που τώρα είναι α/μ) και αλλάζουμε το layer mode σε "color". Το αποτέλεσμα είναι κάπως έτσι:

Εικόνα

Πιο κορεσμένο, πιο κοντραστοειδές και σίγουρα πιο 3D! Πολύ εύκολα μπορούμε να το παρακάνουμε, πειραματιστείτε με δική σας ευθύνη Άπειρα παραδείγματα τέτοιων φανταχτερών αποτυχημένων φωτογραφιών μπορείτε να δείτε πχ εδώ.

Τέλος, με την χρήση του c2g μπορούμε να προσεγγίσουμε και το αποτέλεσμα του bleach bypass (για το οποίο συζητήσαμε εδώ).
Ακολουθούμε την παραπάνω διαδικασία, μόνο που δεν αλλάζουμε την σειρά των layers και αφήνουμε το α/μ layer με το c2g πάνω-πάνω. Αφήνουμε το layer mode στο normal και απλά αλλάζουμε το opacity του σε κάτι που να μας αρέσει (κάπου στο 50% δίνει καλό αποτέλεσμα). Voila:

Εικόνα

Όχι κάτι τρομερό, αλλά καλούτσικο
http://darktable.sourceforge.net/www.yiannakos.gr
Σύστημα:AMD Ryzen 5 1600, 16GB DDR4 RAM, ASUS PRIME B350 Plus m/b, nVidia GeForce GTX 1070 Ti 8GB
OS:Ubuntu 18.04 64bit en
http://petition.stopsoftwarepatents.eu/351004340091/
Άβαταρ μέλους
digibill
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 721
Εγγραφή: 18 Μάιος 2008, 20:12
Τοποθεσία: Αθήνα
Εκτύπωση


Επιστροφή στο Φωτογραφία και GNU Linux