Το JES είναι ένα περιβάλλον προγραμματισμού που περιλαμβάνει τόσο μια περιοχή προγραμματισμού όσο και τη δική του γραμμή εντολών. Μπορείτε να χρησιμοποιήσετε το JES για την επεξεργασία εικόνων, βίντεο και ήχων.
Υπάρχουν πολλοί διαφορετικοί τρόποι με τους οποίους μπορείτε να επεξεργαστείτε μια φωτογραφία χρησιμοποιώντας το JES. Αυτό περιλαμβάνει την προσθήκη ενός φίλτρου κλίμακας του γκρι ή ενός αρνητικού φίλτρου. Μπορείτε επίσης να αντικατοπτρίσετε την εικόνα ή να βελτιώσετε ένα συγκεκριμένο χρώμα.
Πώς να δημιουργήσετε εικόνες σε κλίμακα του γκρι
Πολλά εύχρηστες εφαρμογές επεξεργασίας φωτογραφιών σας επιτρέπουν να επεξεργάζεστε εικόνες με διαφορετικούς τρόπους. Ένα από αυτά περιλαμβάνει την προσθήκη ενός φίλτρου κλίμακας του γκρι. Στο JES, μπορείτε να επεξεργαστείτε εικόνες για να χρησιμοποιήσετε ένα φίλτρο κλίμακας του γκρι αλλάζοντας το χρώμα κάθε pixel για χρήση λευκού, γκρι ή μαύρου.
Το JES χρησιμοποιεί τη γλώσσα προγραμματισμού Jython, η οποία μοιάζει πολύ με την Python και ακολουθεί τους ίδιους κανόνες εσοχής. Εάν χρειάζεται, μπορείτε να δείτε μερικά χρήσιμες εντολές Python για αρχάριους για να σε ενημερώσω.
- Δημιουργήστε μια νέα συνάρτηση που ονομάζεται makeGrayscalePicture():
defmakeGrayscalePicture():
- Μέσα στη νέα συνάρτηση, χρησιμοποιήστε τη συνάρτηση pickAFile() για να ζητήσετε από τον χρήστη να επιλέξει μια εικόνα. Χρησιμοποιήστε τη συνάρτηση makePicture() για να δημιουργήσετε ένα αντικείμενο εικόνας από το επιλεγμένο αρχείο:
αρχείο = pickAFile()
pic = makePicture (αρχείο) - Χρησιμοποιήστε τη συνάρτηση getPixels() για να λάβετε έναν πίνακα με όλα τα pixel μέσα στην επιλεγμένη εικόνα:
pixels = getPixels (εικόνα)
- Χρησιμοποιήστε έναν βρόχο for-loop για να κάνετε βρόχο σε κάθε pixel στην εικόνα:
για pixel σε pixel:
- Μέσα στον βρόχο for, λάβετε την τιμή RGB του εικονοστοιχείου. Μπορείτε να αποθηκεύσετε τις τιμές του κόκκινου, του πράσινου και του μπλε του χρώματος σε διαφορετικές μεταβλητές.
r = getRed (pixel)
g = getGreen (pixel)
b = getBlue (pixel) - Υπολογίστε τη μέση τιμή κάθε χρώματος. Μπορείτε να το κάνετε αυτό προσθέτοντας τις τιμές του κόκκινου, του πράσινου και του μπλε και διαιρώντας το σύνολο με 3:
μέσος όρος = (r + g + b) / 3
- Ορίστε όλες τις τιμές του κόκκινου, του πράσινου και του μπλε στην ίδια τιμή. Αυτό θα κάνει το pixel γκρι.
setRed (pixel, μέσος όρος)
setGreen (pixel, μέσος όρος)
setBlue (pixel, μέσος όρος) - Μετά το for-loop, εμφανίστε την εικόνα:
προβολή(φωτό)
- Κάνε κλικ στο Φόρτωση προγράμματος κουμπί, που βρίσκεται μεταξύ της περιοχής προγραμματισμού και της γραμμής εντολών.
- Εκτελέστε τη συνάρτηση χρησιμοποιώντας την περιοχή της γραμμής εντολών:
makeGrayscalePicture()
- Χρησιμοποιήστε την εξερεύνηση αρχείων για να επιλέξετε μια εικόνα. Κάντε κλικ στο Ανοιξε.
- Περιμένετε να ολοκληρώσει η λειτουργία την επεξεργασία της εικόνας. Θα ανοίξει ένα νέο παράθυρο για να εμφανιστεί η νέα εικόνα σε κλίμακα του γκρι.
Πώς να δημιουργήσετε αρνητικές εικόνες
Μια αρνητική εικόνα είναι μια εικόνα όπου οι φωτεινές περιοχές της φωτογραφίας εμφανίζονται σκοτεινές και τα σκοτεινά μέρη της φωτογραφίας είναι ανοιχτόχρωμα. Μπορείτε να δημιουργήσετε αυτό το εφέ τροποποιώντας τις τιμές κόκκινου, πράσινου και μπλε κάθε pixel.
- Δημιουργήστε μια νέα συνάρτηση που ονομάζεται makeNegativePicture():
defmakeNegativePicture():
- Μέσα στη νέα συνάρτηση, χρησιμοποιήστε τη συνάρτηση pickAFile() για να ζητήσετε από τον χρήστη να επιλέξει μια εικόνα. Χρησιμοποιήστε τη συνάρτηση makePicture() για να δημιουργήσετε ένα αντικείμενο εικόνας από το επιλεγμένο αρχείο:
αρχείο = pickAFile()
pic = makePicture (αρχείο) - Χρησιμοποιήστε τη συνάρτηση getPixels() για να λάβετε έναν πίνακα με όλα τα pixel μέσα στην επιλεγμένη εικόνα:
pixels = getPixels (εικόνα)
- Χρησιμοποιήστε έναν βρόχο for-loop για να κάνετε βρόχο σε κάθε pixel στην εικόνα:
για pixel σε pixel:
- Μέσα στο βρόχο for, λάβετε τις τιμές του κόκκινου, του πράσινου και του μπλε για το pixel:
r = getRed (pixel)
g = getGreen (pixel)
b = getBlue (pixel) - Για να δημιουργήσετε το αρνητικό αποτέλεσμα, λάβετε την αντίθετη τιμή του χρώματος στο φάσμα RGB. Για παράδειγμα, εάν η κόκκινη τιμή είναι 100, η αντίθετη τιμή θα είναι 255 - 100, δηλαδή 155.
νέοΚόκκινο = 255 - r
νέοΜπλε = 255 - g
νέοΠράσινο = 255 - β - Αντικαταστήστε το χρώμα του pixel με τις νέες τιμές κόκκινου, πράσινου και μπλε:
setRed (pixel, newRed)
setBlue (pixel, newBlue)
setGreen (pixel, newGreen) - Μετά το for-loop, εμφανίστε την εικόνα:
προβολή(φωτό)
- Κάνε κλικ στο Φόρτωση προγράμματος κουμπί, που βρίσκεται μεταξύ της περιοχής προγραμματισμού και της γραμμής εντολών.
- Εκτελέστε τη συνάρτηση makeNegativePicture() από τη γραμμή εντολών:
makeNegativePicture()
- Χρησιμοποιήστε την εξερεύνηση αρχείων για να επιλέξετε μια εικόνα. Κάντε κλικ στο Ανοιξε.
- Θα ανοίξει ένα νέο παράθυρο για να εμφανιστεί η αρνητική εικόνα.
Πώς να βελτιώσετε ένα συγκεκριμένο χρώμα σε μια εικόνα
Μπορείτε επίσης να χρησιμοποιήσετε το JES για να βελτιώσετε συγκεκριμένα χρώματα μιας εικόνας. Για παράδειγμα, μπορείτε να διπλασιάσετε την τιμή του κόκκινου κάθε pixel για να κάνετε την εικόνα να φαίνεται πιο κόκκινη.
- Δημιουργήστε μια νέα συνάρτηση που ονομάζεται alterReds():
defalterReds():
- Μέσα στη νέα συνάρτηση, χρησιμοποιήστε τη συνάρτηση pickAFile() για να ζητήσετε από τον χρήστη να επιλέξει μια εικόνα. Χρησιμοποιήστε τη συνάρτηση makePicture() για να δημιουργήσετε ένα αντικείμενο εικόνας από το επιλεγμένο αρχείο:
αρχείο = pickAFile()
pic = makePicture (αρχείο) - Χρησιμοποιήστε τη συνάρτηση getPixels() για να λάβετε έναν πίνακα με όλα τα pixel μέσα στην επιλεγμένη εικόνα:
pixels = getPixels (εικόνα)
- Χρησιμοποιήστε έναν βρόχο for-loop για να κάνετε βρόχο σε κάθε pixel στην εικόνα:
για pixel σε pixel:
- Μέσα στον βρόχο for, λάβετε μόνο την κόκκινη τιμή του pixel:
r = getRed (pixel)
- Διπλασιάστε την κόκκινη τιμή και αποθηκεύστε την σε μια νέα μεταβλητή:
ενισχυμένοΚόκκινο = r*2
- Αντικαταστήστε την κόκκινη τιμή του εικονοστοιχείου με τη νέα, βελτιωμένη τιμή. Για παράδειγμα, εάν η αρχική τιμή RGB του εικονοστοιχείου ήταν rgb (100, 50, 50), η νέα τιμή θα ήταν rgb (200, 50, 50).
setRed (pixel, ενισχυμένο κόκκινο)
- Μετά το βρόχο for, εμφανίστε την εικόνα:
προβολή(φωτό)
- Κάνε κλικ στο Φόρτωση προγράμματος κουμπί, που βρίσκεται μεταξύ της περιοχής προγραμματισμού και της γραμμής εντολών.
- Εκτελέστε τη συνάρτηση χρησιμοποιώντας την περιοχή της γραμμής εντολών:
alterReds()
- Χρησιμοποιήστε την εξερεύνηση αρχείων για να επιλέξετε μια εικόνα. Κάντε κλικ στο Ανοιξε.
- Θα ανοίξει ένα νέο παράθυρο για να εμφανιστεί η επεξεργασμένη εικόνα.
Πώς να αντικατοπτρίσετε μια εικόνα
Για να αντικατοπτριστεί μια εικόνα, κάθε pixel στην αριστερή πλευρά της εικόνας πρέπει να ταιριάζει ακριβώς με το αντίθετο pixel στη δεξιά πλευρά.
Μπορείτε να το κάνετε αυτό δημιουργώντας μια νέα κενή εικόνα με λευκό φόντο. Στη συνέχεια, μπορείτε να αντιγράψετε κάθε pixel για να δημιουργήσετε τη νέα κατοπτρισμένη εικόνα.
- Δημιουργήστε μια νέα συνάρτηση που ονομάζεται mirror():
defκαθρέφτης():
- Μέσα στη νέα συνάρτηση, χρησιμοποιήστε τη συνάρτηση pickAFile() για να ζητήσετε από τον χρήστη να επιλέξει μια εικόνα. Χρησιμοποιήστε τη συνάρτηση makePicture() για να δημιουργήσετε ένα αντικείμενο εικόνας από το επιλεγμένο αρχείο:
αρχείο = pickAFile()
pic = makePicture (αρχείο) - Λάβετε το ύψος και το πλάτος της επιλεγμένης εικόνας:
πλάτος = getWidth (εικόνα)
ύψος = πάρε Ύψος (εικόνα) - Χρησιμοποιήστε τη συνάρτηση makeEmptyPicture() για να δημιουργήσετε μια κενή εικόνα. Μια κενή εικόνα είναι μια εικόνα με λευκό φόντο. Διπλασιάστε το πλάτος, ώστε να χωρέσετε την αρχική εικόνα στην αριστερή πλευρά και την αναποδογυρισμένη εικόνα στη δεξιά πλευρά:
mirroredPic = makeEmptyPicture (πλάτος*2, ύψος)
- Δημιουργήστε έναν βρόχο for για να πραγματοποιήσετε βρόχο σε κάθε συντεταγμένη x και y της αρχικής εικόνας. Μέσα στον βρόχο for, αποθηκεύστε το pixel σε αυτήν τη θέση:
για x στην περιοχή (0, πλάτος):
για y στην περιοχή (0, ύψος):
originalPix = getPixel (pic, x, y) - Ακόμα μέσα στον βρόχο for, λάβετε το pixel στη νέα κενή εικόνα στην ίδια θέση x και y. Αυτή θα είναι η αριστερή πλευρά της κατοπτρισμένης εικόνας:
leftMirrorPixel = getPixel (mirroredPic, x, y)
- Αντιγράψτε το χρώμα του αρχικού pixel στο pixel στην αριστερή πλευρά της νέας εικόνας:
setColor (αριστερόMirrorPixel, getColor (originalPix))
- Κάντε το ίδιο πράγμα για τη δεξιά πλευρά. Η συντεταγμένη y θα είναι η ίδια. Εφόσον η συντεταγμένη x θα είναι από τη δεξιά πλευρά, αφαιρέστε τη συντεταγμένη x από το πλήρες πλάτος της νέας κατοπτρισμένης εικόνας:
rightMirrorPixel = getPixel (mirroredPic, (width*2)-x-1, y)
- Αντιγράψτε το χρώμα του αρχικού pixel στο εικονοστοιχείο στη δεξιά πλευρά της νέας εικόνας:
setColor (δεξιάMirrorPixel, getColor (originalPix))
- Μετά το βρόχο for, εμφανίστε την εικόνα:
προβολή(MirroredPic)
- Κάνε κλικ στο Φόρτωση προγράμματος κουμπί, που βρίσκεται μεταξύ της περιοχής προγραμματισμού και της γραμμής εντολών.
- Εκτελέστε τη συνάρτηση mirror() από τη γραμμή εντολών:
καθρέφτης()
- Χρησιμοποιήστε την εξερεύνηση αρχείων για να επιλέξετε μια εικόνα. Κάντε κλικ στο Ανοιξε.
- Θα ανοίξει ένα νέο παράθυρο για να εμφανιστεί η κατοπτρισμένη εικόνα.
Επεξεργασία εικόνων με χρήση JES
Τώρα ελπίζουμε να κατανοήσετε πώς να επεξεργάζεστε φωτογραφίες στο JES χρησιμοποιώντας μια ποικιλία τεχνικών. Αυτές δεν είναι οι μόνες τεχνικές που μπορείτε να εφαρμόσετε στις φωτογραφίες, ώστε να πειραματιστείτε περισσότερο με άλλες δυνατότητες στο JES.
Εάν θέλετε να βελτιώσετε τις δεξιότητές σας στην Python, τα σύντομα και διασκεδαστικά έργα είναι ένας πολύ καλός τρόπος για να κατανοήσετε βασικές έννοιες της Python.