Πίνακας περιεχομένων:

Επεξεργαστής εικόνας κωδικοποιημένης Python GET1033: 5 βήματα
Επεξεργαστής εικόνας κωδικοποιημένης Python GET1033: 5 βήματα

Βίντεο: Επεξεργαστής εικόνας κωδικοποιημένης Python GET1033: 5 βήματα

Βίντεο: Επεξεργαστής εικόνας κωδικοποιημένης Python GET1033: 5 βήματα
Βίντεο: Learning Sets of Rules and Analytical Learning (in Greek) #AI #lecture #διαλεξη #μαθημα 2024, Νοέμβριος
Anonim
Επεξεργαστής εικόνας κωδικοποιημένος Python GET1033
Επεξεργαστής εικόνας κωδικοποιημένος Python GET1033

Αυτό το έργο αφορά τη δημιουργία του δικού μου επεξεργαστή κρυπτογραφημένης εικόνας python για τη μονάδα μου, GET1033 Εξερεύνηση Υπολογιστικής Παιδείας Μέσων. Αρχικά, ο χρήστης θα πρέπει να εισαγάγει μια δική του φωτογραφία και στη συνέχεια να επιλέξει τα φίλτρα που θέλει. Δημιούργησα 9 φίλτρα: Αφού επιλέξετε ένα από αυτά, η εικόνα εξόδου θα έχει τα εφέ. Όπως φαίνεται στην εικόνα, είναι το φίλτρο για την αλλαγή χρώματος όπου εντοπίζω τα πράσινα χρώματα pixel στην εικόνα και τα μετατρέπω σε ροζ χρώμα.

Βήμα 1: Διαδικασία κατασκευής

Διαδικασία Παρασκευής του
Διαδικασία Παρασκευής του

Βήμα 1: Κατεβάστε την Python από εδώ!

Βήμα 2: Κωδικοποιήστε το!

Πρώτα απ 'όλα, εισήγαγα μερικά πακέτα με προ-κωδικοποιημένη λειτουργία διαθέσιμα για χρήση στον κώδικα. Τα πακέτα που εισήγαγα είναι Scipy, Matplot και Numpy.

Για το Scipy, εισήγαγα Διάφορες ρουτίνες (MISC) και Πολυδιάστατη επεξεργασία εικόνας (NDIMAGE). Το MISC προορίζεται για ανάγνωση και αποθήκευση της εικόνας, ενώ το NDIMAGE για εκτέλεση gaussian φίλτρου και περιστροφή.

Για το Matplotlib, είναι μια βιβλιοθήκη για την απεικόνιση γραφήματος σε Python που παρέχει μια διεπαφή παρόμοια με το MATLAB.

Για το Numpy, είναι μια βιβλιοθήκη που μπορεί να υποστηρίξει μεγάλους, πολυδιάστατους πίνακες και πίνακες. Το Numpy είναι σημαντικό επειδή μου επιτρέπει να επεξεργάζομαι αποτελεσματικά τον πίνακα των κόκκινων, πράσινων και μπλε (RGB) των εικόνων όταν προσθέτω ή πολλαπλασιάζω τον πίνακα. Για παράδειγμα, A = [0, 1, 2] και με την παρουσία του Numpy, A*2 = [0, 2, 4] αντί να πάρει A*2 = [0, 1, 2, 0, 1, 2] Το

Όταν δουλεύω στο φίλτρο για την αλλαγή χρώματος, προσπαθώ να μετατρέψω τα πράσινα μαλλιά της κοπέλας σε ροζ χρώμα. Έτσι, αυτό που έκανα ήταν να εντοπίσω τα πράσινα χρώματα pixel στην εικόνα και να τα πολλαπλασιάσω με (2, 0,2, 0,8). Έτσι, θα αποκτήσω ένα ροζ κορίτσι μαλλιών αντί για τα πραγματικά πράσινα μαλλιά.

Όσο για το Photoshop, προσπαθώ να αντικαταστήσω το πράσινο φόντο στην εικόνα των Avengers με μια εικόνα του NUS. Έτσι, αυτό που έκανα ήταν να πολλαπλασιάσω το 0 σε όλα τα πράσινα εικονοστοιχεία και στη συνέχεια να προσθέσω τα εικονοστοιχεία της εικόνας του NUS στα πράσινα εικονοστοιχεία. Αυτό θα μου δώσει στη συνέχεια μια εικόνα των Avengers στο NUS.

Επισυνάπτω επίσης τον κωδικό μου στο GitHub και μπορείτε να τον κατεβάσετε εδώ!

Βήμα 2: Πώς λειτουργεί;

Πως δουλεύει?
Πως δουλεύει?

Το διάγραμμα ροής επισυνάπτεται για να δείξει πώς λειτουργεί ολόκληρος ο κώδικας!

1. Πρώτον, ο χρήστης καλείται να εισαγάγει μια εικόνα της επιλογής του. 2. Στη συνέχεια θα εμφανίσει τη λίστα των φίλτρων από τα οποία ο χρήστης μπορεί να επιλέξει. 3. Εάν ο χρήστης πληκτρολογήσει "1" έως "9", η εικόνα θα υποβληθεί σε επεξεργασία και θα εμφανιστεί σύμφωνα με κάθε φίλτρο. Εάν ο χρήστης πληκτρολογήσει 'R', θα επαναρυθμιστεί ολόκληρο το πρόγραμμα και θα ζητηθεί από τον χρήστη να ανεβάσει ξανά μια εικόνα. Εάν ο χρήστης εισήγαγε το «Q», το πρόγραμμα στη συνέχεια θα βγει από τον βρόχο.

Βήμα 3: Τι κάνει;

Σε αυτό το έργο, υπάρχουν συνολικά 9 φίλτρα που δημιούργησα, συγκεκριμένα

1. Εμφάνιση της εικόνας εισόδου - Για εμφάνιση της εικόνας που έχει μεταφορτωθεί

2. Εικόνα Καθρέφτη - Μια αντανακλασμένη αντιγραφή ενός αντικειμένου αλλά αντιστρέφεται προς την κατεύθυνση

3. Τοποθέτηση πίσω γραμμής - Εισαγωγή μαύρων κάθετων γραμμών με πλάτος και απόσταση ίση με 50 εικονοστοιχεία.

4. Τοποθέτηση πίσω από διαφανή γραμμή - Εισαγωγή διαφανών κάθετων ράβδων με πλάτος και απόσταση ίση με 50 εικονοστοιχεία

5. Εικόνα κύκλου - Για να δημιουργήσετε έναν κύκλο στο κέντρο της εικόνας

6. Θόλωση - Για να θολώσει την εικόνα

7. Περιστροφή - Για περιστροφή της εικόνας κατά 45 μοίρες

8. Αλλαγή χρώματος - Για να αλλάξετε το πράσινο χρώμα σε ροζ χρώμα

9. Photoshop - Για να αλλάξετε ένα μέρος μιας εικόνας με μια άλλη εικόνα

Βήμα 4: Γιατί τα κατάφερα;

Προηγουμένως, είμαι περίεργος για το πώς το Instagram και το Snapchat δημιούργησαν φίλτρα για τις εικόνες που τις έκαναν τόσο ενδιαφέρουσες. Μετά τη διάλεξη και το σεμινάριο για την επαυξημένη πραγματικότητα, ήθελα να κάνω κάτι σχετικό με αυτό, αλλά θα ήθελα να ξεκινήσω από το βασικό που είναι η επεξεργασία εικόνας επειδή είμαι αδύναμος στον προγραμματισμό και θα ήθελα να μάθω κωδικοποίηση Python.

Βήμα 5: Βελτιώσεις και τι θα κάνουν οι μελλοντικές εκδόσεις;

Μία από τις βελτιώσεις για αυτό το έργο είναι η δημιουργία των δικών μου Φίλτρων προσώπου σε ζωντανά βίντεο χρησιμοποιώντας Python. Προσπάθησα να το κωδικοποιήσω, αλλά δεν κατάφερα να επιτύχω κανένα από αυτά λόγω έλλειψης γνώσης προγραμματισμού και χρονικού περιορισμού. Εκτός από αυτό, ο επεξεργαστής εικόνας μπορεί να είναι «πιο έξυπνος» όπου μπορεί να ανιχνεύσει αυτόματα τα χρώματα και να αλλάξει τα μέρη που θέλουμε μόνο. Υπάρχει μια φορά που προσπαθώ να αλλάξω τα μαύρα μαλλιά ενός ατόμου σε άλλο χρώμα. Καταλήγω να αλλάζω και το χρώμα των ματιών και των μαλλιών σε μπλε που κάνουν την εικόνα να φαίνεται πολύ περίεργη. Ελπίζω ότι είμαι σε θέση να δημιουργήσω το δικό μου πρόσωπο

Συνιστάται: