Χρήση τεχνητής νοημοσύνης για υπερσυμπίεση εικόνων

Χρήση τεχνητής νοημοσύνης για υπερσυμπίεση εικόνων
Οι αλγόριθμοι που βασίζονται σε δεδομένα, όπως τα νευρωνικά δίκτυα, έχουν καταιγίσει τον κόσμο. Η ανάπτυξή τους οφείλεται σε διάφορους λόγους, συμπεριλαμβανομένου του φθηνού και ισχυρού εξοπλισμού και του τεράστιου όγκου δεδομένων. Τα νευρωνικά δίκτυα βρίσκονται αυτή τη στιγμή στην πρώτη γραμμή σε οτιδήποτε σχετίζεται με «γνωστικές» εργασίες όπως η αναγνώριση εικόνας, η κατανόηση φυσικής γλώσσας κ.λπ. Αλλά δεν πρέπει να περιορίζονται σε τέτοιες εργασίες. Αυτό το άρθρο μιλά για τον τρόπο συμπίεσης εικόνων χρησιμοποιώντας νευρωνικά δίκτυα, χρησιμοποιώντας υπολειπόμενη μάθηση. Η προσέγγιση που παρουσιάζεται στο άρθρο είναι ταχύτερη και καλύτερη από τους τυπικούς κωδικοποιητές. Σχέδια, εξισώσεις και, φυσικά, ένας πίνακας με δοκιμές κάτω από το κόψιμο.

Αυτό το άρθρο βασίζεται σε αυτό δουλειά. Υποτίθεται ότι είστε εξοικειωμένοι με τα νευρωνικά δίκτυα και τις έννοιές τους. περιελιγμός и λειτουργία απώλειας.

Τι είναι η συμπίεση εικόνας και πώς λειτουργεί;

Η συμπίεση εικόνας είναι η διαδικασία μετατροπής μιας εικόνας έτσι ώστε να καταλαμβάνει λιγότερο χώρο. Η απλή αποθήκευση εικόνων θα καταλάμβανε πολύ χώρο, γι' αυτό υπάρχουν κωδικοποιητές όπως το JPEG και το PNG που στοχεύουν στη μείωση του μεγέθους της αρχικής εικόνας.

Όπως γνωρίζετε, υπάρχουν δύο τύποι συμπίεσης εικόνας: καμιά απώλεια и με απώλειες. Όπως υποδηλώνουν τα ονόματα, η συμπίεση χωρίς απώλειες μπορεί να διατηρήσει τα αρχικά δεδομένα εικόνας, ενώ η συμπίεση με απώλειες χάνει ορισμένα δεδομένα κατά τη συμπίεση. για παράδειγμα, τα JPG είναι αλγόριθμοι με απώλειες [περ. μετάφρ. - βασικά, ας μην ξεχνάμε επίσης το JPEG χωρίς απώλειες] και το PNG είναι ένας αλγόριθμος χωρίς απώλειες.

Χρήση τεχνητής νοημοσύνης για υπερσυμπίεση εικόνων
Σύγκριση συμπίεσης χωρίς απώλειες και χωρίς απώλειες

Παρατηρήστε ότι υπάρχουν πολλά μπλοκ τεχνουργήματα στην εικόνα στα δεξιά. Αυτές είναι χαμένες πληροφορίες. Τα γειτονικά εικονοστοιχεία παρόμοιων χρωμάτων συμπιέζονται ως μια ενιαία περιοχή για εξοικονόμηση χώρου, αλλά οι πληροφορίες σχετικά με τα πραγματικά εικονοστοιχεία χάνονται. Φυσικά, οι αλγόριθμοι που χρησιμοποιούνται στους κωδικοποιητές JPEG, PNG κ.λπ. είναι πολύ πιο περίπλοκοι, αλλά αυτό είναι ένα καλό διαισθητικό παράδειγμα συμπίεσης με απώλειες. Η συμπίεση χωρίς απώλειες είναι καλή, αλλά τα συμπιεσμένα αρχεία χωρίς απώλειες καταλαμβάνουν πολύ χώρο στο δίσκο. Υπάρχουν καλύτεροι τρόποι συμπίεσης εικόνων χωρίς απώλεια πολλών πληροφοριών, αλλά είναι αρκετά αργοί και πολλοί χρησιμοποιούν επαναληπτικές προσεγγίσεις. Αυτό σημαίνει ότι δεν μπορούν να εκτελεστούν παράλληλα σε πολλαπλούς πυρήνες CPU ή GPU. Αυτός ο περιορισμός τα καθιστά εντελώς μη πρακτικά στην καθημερινή χρήση.

Είσοδος συνελικτικού νευρωνικού δικτύου

Εάν κάτι πρέπει να υπολογιστεί και οι υπολογισμοί μπορεί να είναι κατά προσέγγιση, προσθέστε νευρικό σύστημα. Οι συγγραφείς χρησιμοποίησαν ένα αρκετά τυπικό συνελικτικό νευρωνικό δίκτυο για να βελτιώσουν τη συμπίεση της εικόνας. Η παρουσιαζόμενη μέθοδος όχι μόνο αποδίδει ισάξια με τις καλύτερες λύσεις (αν όχι καλύτερες), μπορεί επίσης να χρησιμοποιήσει παράλληλους υπολογιστές, γεγονός που οδηγεί σε δραματική αύξηση της ταχύτητας. Ο λόγος είναι ότι τα Συνελικτικά Νευρωνικά Δίκτυα (CNN) είναι πολύ καλά στην εξαγωγή χωρικών πληροφοριών από εικόνες, οι οποίες στη συνέχεια παρουσιάζονται σε πιο συμπαγή μορφή (για παράδειγμα, διατηρούνται μόνο τα «σημαντικά» κομμάτια της εικόνας). Οι συγγραφείς ήθελαν να χρησιμοποιήσουν αυτή τη δυνατότητα του CNN για να αναπαραστήσουν καλύτερα τις εικόνες.

Αρχιτεκτονική

Οι συγγραφείς πρότειναν ένα διπλό δίκτυο. Το πρώτο δίκτυο παίρνει μια εικόνα ως είσοδο και δημιουργεί μια συμπαγή αναπαράσταση (ComCNN). Η έξοδος αυτού του δικτύου στη συνέχεια υποβάλλεται σε επεξεργασία από έναν τυπικό κωδικοποιητή (π.χ. JPEG). Αφού υποβληθεί σε επεξεργασία από τον κωδικοποιητή, η εικόνα περνά σε ένα δεύτερο δίκτυο, το οποίο "διορθώνει" την εικόνα από τον κωδικοποιητή σε μια προσπάθεια να επιστρέψει την αρχική εικόνα. Οι συγγραφείς ονόμασαν αυτό το δίκτυο Reconstructive CNN (RecCNN). Όπως και τα GAN, και τα δύο δίκτυα εκπαιδεύονται επαναληπτικά.

Χρήση τεχνητής νοημοσύνης για υπερσυμπίεση εικόνων
Η συμπαγής αναπαράσταση ComCNN μεταβιβάζεται στον τυπικό κωδικοποιητή

Χρήση τεχνητής νοημοσύνης για υπερσυμπίεση εικόνων
RecCNN. Η έξοδος ComCNN κλιμακώνεται και τροφοδοτείται στο RecCNN, το οποίο θα προσπαθήσει να μάθει το υπόλοιπο

Η έξοδος του κωδικοποιητή κλιμακώνεται και στη συνέχεια μεταβιβάζεται στο RecCNN. Το RecCNN θα προσπαθήσει να αποδώσει την εικόνα όσο το δυνατόν πιο κοντά στο πρωτότυπο.

Χρήση τεχνητής νοημοσύνης για υπερσυμπίεση εικόνων
Πλαίσιο συμπίεσης εικόνας από άκρο σε άκρο. Το Co(.) είναι ένας αλγόριθμος συμπίεσης εικόνας. Οι συγγραφείς χρησιμοποίησαν JPEG, JPEG2000 και BPG

Τι είναι ένα υπόλοιπο;

Το υπόλοιπο μπορεί να θεωρηθεί ως ένα βήμα μετα-επεξεργασίας για τη «βελτίωση» της εικόνας που αποκωδικοποιείται από τον κωδικοποιητή. Έχοντας πολλές «πληροφορίες» για τον κόσμο, ένα νευρωνικό δίκτυο μπορεί να λάβει γνωστικές αποφάσεις σχετικά με το τι πρέπει να διορθώσει. Αυτή η ιδέα βασίζεται σε υπολειπόμενη μάθηση, διαβάστε τις λεπτομέρειες για τις οποίες μπορείτε εδώ.

Λειτουργίες απώλειας

Οι δύο συναρτήσεις απώλειας χρησιμοποιούνται επειδή έχουμε δύο νευρωνικά δίκτυα. Το πρώτο από αυτά, το ComCNN, φέρει την ετικέτα L1 και ορίζεται ως εξής:

Χρήση τεχνητής νοημοσύνης για υπερσυμπίεση εικόνων
Λειτουργία απώλειας για ComCNN

Επεξήγηση

Αυτή η εξίσωση μπορεί να φαίνεται περίπλοκη, αλλά στην πραγματικότητα είναι το πρότυπο (ριζικό μέσο τετραγωνικό σφάλμα) MSE. ||² σημαίνει τον κανόνα του διανύσματος που περικλείουν.

Χρήση τεχνητής νοημοσύνης για υπερσυμπίεση εικόνων
Εξίσωση 1.1

Το Cr υποδηλώνει την έξοδο του ComCNN. Το θ υποδηλώνει τη δυνατότητα εκμάθησης των παραμέτρων ComCNN, το XK είναι η εικόνα εισόδου

Χρήση τεχνητής νοημοσύνης για υπερσυμπίεση εικόνων
Εξίσωση 1.2

Re() σημαίνει RecCNN. Αυτή η εξίσωση απλώς μεταφέρει το νόημα της εξίσωσης 1.1 στο RecCNN. Το θ υποδηλώνει τις εκπαιδεύσιμες παραμέτρους RecCNN (ένα καπέλο στην κορυφή σημαίνει ότι οι παράμετροι είναι σταθερές).

Διαισθητικός ορισμός

Η εξίσωση 1.0 θα αναγκάσει το ComCNN να αλλάξει τα βάρη του έτσι ώστε όταν αναδημιουργηθεί με το RecCNN, η τελική εικόνα να μοιάζει όσο το δυνατόν πιο παρόμοια με την εικόνα εισόδου. Η δεύτερη συνάρτηση απώλειας RecCNN ορίζεται ως εξής:

Χρήση τεχνητής νοημοσύνης για υπερσυμπίεση εικόνων
Εξίσωση 2.0

Επεξήγηση

Και πάλι, η συνάρτηση μπορεί να φαίνεται περίπλοκη, αλλά αυτή είναι ως επί το πλείστον μια τυπική συνάρτηση απώλειας νευρωνικού δικτύου (MSE).

Χρήση τεχνητής νοημοσύνης για υπερσυμπίεση εικόνων
Εξίσωση 2.1

Co() σημαίνει έξοδος κωδικοποιητή, x με καπέλο στην κορυφή σημαίνει έξοδο ComCNN. Οι θ2 είναι εκπαιδεύσιμες παράμετροι RecCNN, res() είναι απλώς η υπολειπόμενη έξοδος του RecCNN. Αξίζει να σημειωθεί ότι το RecCNN εκπαιδεύεται στη διαφορά μεταξύ του Co() και της εικόνας εισόδου, αλλά όχι στην εικόνα εισόδου.

Διαισθητικός ορισμός

Η εξίσωση 2.0 θα αναγκάσει το RecCNN να αλλάξει τα βάρη του έτσι ώστε η έξοδος να μοιάζει όσο το δυνατόν πιο παρόμοια με την εικόνα εισόδου.

Σχέδιο μάθησης

Τα μοντέλα εκπαιδεύονται επαναληπτικά, όπως GAN. Τα βάρη του πρώτου μοντέλου καθορίζονται ενώ τα βάρη του δεύτερου μοντέλου ενημερώνονται, στη συνέχεια τα βάρη του δεύτερου μοντέλου καθορίζονται ενώ το πρώτο μοντέλο εκπαιδεύεται.

Δοκιμές

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

Χρήση τεχνητής νοημοσύνης για υπερσυμπίεση εικόνων
Σύγκριση δείκτη δομικής ομοιότητας (SSIM). Οι υψηλές τιμές υποδεικνύουν καλύτερη ομοιότητα με το πρωτότυπο. Η έντονη γραφή υποδηλώνει το αποτέλεσμα της εργασίας των συγγραφέων

Συμπέρασμα

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

Η εκμάθηση των νευρωνικών δικτύων έχει γίνει πιο εύκολη, επειδή φτιάξαμε έναν κωδικό προσφοράς ειδικά για το Habravchan HABR, δίνοντας επιπλέον έκπτωση 10% στην έκπτωση που αναγράφεται στο banner.

Χρήση τεχνητής νοημοσύνης για υπερσυμπίεση εικόνων

Περισσότερα μαθήματα

Επιλεγμένα άρθρα

Πηγή: www.habr.com

Προσθέστε ένα σχόλιο