Εδώ είναι μια περιοχή μαθηματικών. Τα περισσότερα φίλτρα χρησιμοποιούν πίνακα συνέλιξης. Με το φίλτρο πίνακα συνέλιξης, εάν σας αρέσει, μπορείτε να δημιουργήσετε ένα προσαρμοσμένο φίλτρο.
Τι είναι πίνακας συνέλιξης; Είναι πιθανό να πάρετε μια χοντρική ιδέα του, χωρίς να χρησιμοποιήσετε μαθηματικά εργαλεία που μόνο λίγοι ξέρουν. Συνέλιξη είναι η επεξεργασία ενός πίνακα από έναν άλλο που λέγεται «πυρήνας».
Το φίλτρο πίνακα συνέλιξης χρησιμοποιεί έναν πρώτο πίνακα του οποίου η εικόνα θα επεξεργαστεί. Η εικόνα είναι μια δισδιάστατη συλλογή εικονοστοιχείων σε ορθογώνιες συντεταγμένες. Ο χρησιμοποιούμενος πυρήνας εξαρτάται από το εφέ που θέλετε.
Το GIMP χρησιμοποιεί πίνακες 5x5 ή 3x3. Θα εξετάσουμε μόνο τους πίνακες 3x3 που είναι οι πιο χρησιμοποιούμενοι και είναι αρκετοί για όλα τα εφέ που θέλετε. Εάν όλες οι τιμές περιγράμματος ενός πυρήνα ορίζονται σε μηδέν, τότε το σύστημα θα το θεωρήσει ως πίνακα 3x3.
Το φίλτρο μελετά διαδοχικά κάθε εικονοστοιχείο της εικόνας. Για καθένα τους, το οποίο αποκαλούμε το «αρχικό εικονοστοιχείο», πολλαπλασιάζει την τιμή αυτού του εικονοστοιχείου και τις τιμές των 8 εικονοστοιχείων που το περιβάλλουν με την αντίστοιχη τιμή πυρήνα. Έπειτα προσθέτει τα αποτελέσματα και το αρχικό εικονοστοιχείο ορίζεται σε αυτήν την τελική τιμή αποτελέσματος.
Ένα απλό παράδειγμα:
Στα αριστερά είναι ο πίνακας εικόνας: κάθε εικονοστοιχείο σημειώνεται με την τιμή του. Το αρχικό εικονοστοιχείο έχει ένα κόκκινο περίγραμμα. Η περιοχή επενέργειας του πυρήνα έχει ένα πράσινο περίγραμμα. Στη μέση είναι ο πυρήνας και στα δεξιά είναι το αποτέλεσμα συνέλιξης.
Να τι συμβαίνει: το φίλτρο διαβάζει διαδοχικά, από αριστερά στα δεξιά και από πάνω προς τα κάτω, όλα τα εικονοστοιχεία της περιοχής επενέργειας πυρήνα. Πολλαπλασιάζει την τιμή καθενός τους με την αντίστοιχη τιμή πυρήνα και προσθέτει τα αποτελέσματα. Το αρχικό εικονοστοιχείο έγινε 42: (40*0)+(42*1)+(46*0) + (46*0)+(50*0)+(55*0) + (52*0)+(56*0)+(58*0) = 42. (το φίλτρο δεν δουλεύει στην εικόνα αλλά σε ένα αντίγραφο). Ως ένα γραφικό αποτέλεσμα, το αρχικό εικονοστοιχείο μετακινήθηκε ένα εικονοστοιχείο προς τα κάτω.
Σημείωση | |
---|---|
Αυτές οι επιλογές περιγράφονται στο Τμήμα 2, «Κοινά χαρακτηριστικά». |
Αυτός είναι ένας πίνακας πυρήνα 5x5: εισάγετε τις επιθυμητές τιμές άμεσα στα πλαίσια.
Το αποτέλεσμα του προηγούμενου υπολογισμού θα διαιρεθεί με το διαιρέτη. Σπάνια θα χρησιμοποιήσετε ο,τιδήποτε άλλο εκτός από 1, που αφήνει το αποτέλεσμα αμετάβλητο και 9 ή 25 ανάλογα με το μέγεθος του πίνακα, που δίνει το μέσο όρο των τιμών εικονοστοιχείου. Ο διαιρέτης μπορεί να αλλαχθεί μόνο όταν η κανονικοποίηση δεν είναι επιλεγμένη.
Αυτή η τιμή προστίθεται στο αποτέλεσμα της διαίρεσης. Αυτό είναι χρήσιμο εάν το αποτέλεσμα μπορεί να είναι αρνητικό. Αυτή η αντιστάθμιση ίσως να είναι αρνητική. Μπορεί να αλλαχθεί μόνο όταν η κανονικοποίηση δεν είναι σημειωμένη.
Here you can select which channels the filter should change.
Εάν αυτή η επιλογή σημειωθεί, ο διαιρέτης παίρνει την τιμή του αποτελέσματος της συνέλιξης. Εάν αυτό το αποτέλεσμα είναι μηδέν (δεν είναι δυνατό να διαιρέσετε με μηδέν), τότε εφαρμόζεται αντιστάθμιση 128. Εάν είναι αρνητικό (αρνητικό χρώμα δεν είναι δυνατό), εφαρμόζεται μια αντιστάθμιση 255 (αντιστρέφει το αποτέλεσμα).
Εάν αυτή η επιλογή δεν σημειωθεί, το φίλτρο δεν λαμβάνει υπόψη διαφάνεια και αυτό μπορεί να είναι η αιτία μερικών παρασίτων κατά τη θόλωση.
Όταν το αρχικό εικονοστοιχείο είναι στο περίγραμμα, ένα μέρος του πυρήνα είναι εκτός εικόνας. Πρέπει να αποφασίσετε τι θα πρέπει να κάνει το φίλτρο:
From left: source image, None border, Loop border, Clamp border
Αυτό το τμήμα του πυρήνα δεν λαμβάνεται υπόψη.
Αυτό το τμήμα του πυρήνα θα μελετήσει εικονοστοιχεία στο αντίθετο περίγραμμα, έτσι εικονοστοιχεία που εξαφανίζονται από μια πλευρά επανεμφανίζονται στην άλλη πλευρά.
Εικονοστοιχεία στα περιγράμματα δεν τροποποιούνται, αλλά περικόπτονται.
Pixels on borders are changed to black.
Pixels on borders are changed to white.