Ηγέτες σκέψης
Εφαρμογή του AI στη Διαδικασία Επεξεργασίας Βίντεο σε Εchtzeit: Οι Βασικές Αρχές και Περισσότερα

Từ Maksym Tatariants, Data Science Μηχανικός στην MobiDev.
Δεν υπάρχει τίποτα νέο στην χρήση τεχνητής νοημοσύνης (AI) στη διαδικασία επεξεργασίας βίντεο. Αν κοιτάξετε πέρα από την επεξεργασία εικόνων – είναι μια από τις πιο συχνές περιπτώσεις χρήσης του AI. Και όπως και η επεξεργασία εικόνων, η επεξεργασία βίντεο χρησιμοποιεί καθιερωμένες τεχνικές όπως οπτική υπολογιστών, αναγνώριση αντικειμένων, μηχανική μάθηση και βαθιά μάθηση για να βελτιώσει αυτή τη διαδικασία.
Ανεξάρτητα από το αν χρησιμοποιείτε οπτική υπολογιστών και NLP στη επεξεργασία βίντεο και γεννήτρια, αναγνώριση αντικειμένων στη αυτόματη ετικέτα περιεχομένου βίντεο εργασίες, μηχανική μάθηση για να ροηματοποιήσετε την ανάλυση βίντεο AI ή βαθιά μάθηση για να επιταχύνετε την επεξεργασία βίντεο σε εchtzeit, οι περιπτώσεις χρήσης συνεχίζουν να αυξάνονται με την ημέρα.
Συνεχίστε να διαβάζετε για να μάθετε ποια προσέγγιση μπορείτε να ακολουθήσετε όταν πρόκειται για τη χρήση του AI στη διαδικασία επεξεργασίας βίντεο.
Οι Βασικές Αρχές της Επεξεργασίας Βίντεο σε Εchtzeit
Ας ξεκινήσουμε με τις βασικές αρχές. Η επεξεργασία βίντεο σε εchtzeit είναι μια απαραίτητη τεχνολογία στα συστήματα επιτήρησης που χρησιμοποιούν αναγνώριση αντικειμένων και προσώπων. Είναι επίσης η διαδικασία που δίνει ενέργεια στο λογισμικό ελέγχου οπτικής AI στον βιομηχανικό τομέα.
Έτσι, πώς λειτουργεί η επεξεργασία βίντεο; Η επεξεργασία βίντεο περιλαμβάνει μια σειρά από βήματα, τα οποία περιλαμβάνουν αποκωδικοποίηση, υπολογισμό και κωδικοποίηση. Εδώ είναι τι πρέπει να γνωρίζετε:
- Αποκωδικοποίηση: Η διαδικασία που απαιτείται για τη μετατροπή ενός βίντεο από ένα συμπιεσμένο αρχείο πίσω στο αρχικό του μορφότυπο.
- Υπολογισμός: Μια συγκεκριμένη λειτουργία που εκτελείται σε ένα сыρό πλαίσιο βίντεο.
- Κωδικοποίηση: Η διαδικασία της αναμετάτρεψης του επεξεργασμένου πλαισίου πίσω στην αρχική του συμπιεσμένη κατάσταση.
Τώρα, ο στόχος κάθε εργασίας επεξεργασίας βίντεο είναι να ολοκληρώσετε αυτά τα βήματα όσο το δυνατόν πιο γρήγορα και ακριβώς. Οι ευκολότεροι τρόποι για να το πετύχετε περιλαμβάνουν: εργασία σε παράλληλο και βελτιστοποίηση του αλγορίθμου για ταχύτητα. Σε απλά λόγια; Πρέπει να εκμεταλλευτείτε τη διαίρεση αρχείων και την αρχιτεκτονική αγωγού.
Τι είναι η Διαίρεση Αρχείων Βίντεο;
Η διαίρεση αρχείων βίντεο επιτρέπει στους αλγόριθμους να εργάζονται ταυτόχρονα, επιτρέποντάς τους να χρησιμοποιούν πιο αργούς, mais ακριβείς μοντέλα. Αυτό επιτυγχάνεται με τη διαίρεση των βίντεο σε ξεχωριστά μέρη που στη συνέχεια επεξεργάζονται την ίδια στιγμή.
Μπορείτε να σκεφτείτε τη διαίρεση βίντεο ως一种 εικονική γεννήτρια αρχείων αντί για υπο-αρχείο γεννήτρια.
Παρά τούτο, η διαίρεση αρχείων βίντεο δεν είναι η καλύτερη επιλογή για την επεξεργασία βίντεο σε εchtzeit. Γιατί ακριβώς; Αυτή η διαδικασία καθιστά δύσκολο για σας να παύσετε, να επαναλάβετε και να επανεκκινήσετε ένα αρχείο ενώ επεξεργάζεται.
Τι είναι η Αρχιτεκτονική Αγωγού;
Η άλλη επιλογή είναι η αρχιτεκτονική αγωγού. Αυτή η διαδικασία λειτουργεί για τη διαίρεση και την παράλληλη εκτέλεση των εργασιών που εκτελούνται κατά τη διάρκεια της επεξεργασίας, αντί για την απλή διαίρεση του βίντεο.
Εδώ είναι ένα γρήγορο παράδειγμα του τι είναι η αρχιτεκτονική αγωγού στην πράξη και πώς μπορεί να χρησιμοποιηθεί σε ένα σύστημα επιτήρησης βίντεο για να ανιχνεύσει και να θολώσει πρόσωπα σε εchtzeit.
Σε αυτό το παράδειγμα, ο αγωγός έχει διαχωρίσει τις εργασίες σε αποκωδικοποίηση, ανίχνευση προσώπου, θόλωση προσώπου και κωδικοποίηση. Και αν θέλετε να βελτιώσετε την ταχύτητα του αγωγού, μπορείτε να χρησιμοποιήσετε τεχνικές βαθιάς μάθησης.
Αποκωδικοποίηση και Κωδικοποίηση: Εξηγήσεις
Τι γίνεται με την αποκωδικοποίηση και την κωδικοποίηση; Υπάρχουν δύο τρόποι για να ολοκληρώσετε αυτές τις διαδικασίες: λογισμικό και υλικό.
Μπορείτε ήδη να γνωρίζετε την έννοια της επιτάχυνσης υλικού. Αυτή η διαδικασία είναι δυνατή χάρη στους αποκωδικοποιητές και κωδικοποιητές που εγκαθίστανται στις τελευταίες κάρτες γραφικών NVIDIA, καθώς και τους πυρήνες CUDA.
Έτσι, ποιες επιλογές έχετε διαθέσιμες για την επιτάχυνση υλικού για τις διαδικασίες κωδικοποίησης και αποκωδικοποίησης; Εδώ είναι μερικές από τις πιο δημοφιλείς επιλογές:
- Συγκέντρωση του OpenCV με Υποστήριξη CUDA: Η συγκέντρωση του OpenCV με υποστήριξη CUDA βελτιστοποιεί cả την αποκωδικοποίηση και τους υπολογισμούς αγωγού που χρησιμοποιούν το OpenCV. Θυμηθείτε ότι θα πρέπει να γράψετε σε C++ επειδή η Python περιτύλιξη δεν υποστηρίζει αυτό. Αλλά σε περιπτώσεις που απαιτούν cả αποκωδικοποίηση και αριθμητικούς υπολογισμούς με GPU χωρίς αντίγραφο από τη μνήμη CPU, είναι ακόμα μια από τις καλύτερες επιλογές.
- Συγκέντρωση του FFmpeg ή GStreamer με Υποστήριξη NVDEC/NVENC Codec: Μια άλλη επιλογή είναι να χρησιμοποιήσετε τον ενσωματωμένο αποκωδικοποιητή και κωδικοποιητή NVIDIA που περιλαμβάνεται με τις εγκαταστάσεις του FFmpeg και Gstreamer. Ωστόσο, συνιστούμε να χρησιμοποιήσετε το FFmpeg εάν είναι δυνατόν, επειδή απαιτεί λιγότερη συντήρηση. Επίσης, οι περισσότερες βιβλιοθήκες τροφοδοτούνται από το FFmpeg, που σημαίνει ότι θα αυξήσετε αυτόματα την απόδοση της βιβλιοθήκης αντικαθιστώντας την.
- Χρήση Πλαισίου Επεξεργασίας Βίντεο NVIDIA: Η τελική επιλογή είναι να χρησιμοποιήσετε μια Python περιτύλιξη για να αποκωδικοποιήσετε το πλαίσιο απευθείας σε ένα PyTorch tensor στην GPU. Αυτή η επιλογή αφαιρεί το πρόσθετο αντίγραφο από τη CPU στην GPU.
Ανίχνευση και Θόλωση Προσώπου
Τα μοντέλα ανίχνευσης αντικειμένων (SSDs ή RetinaFace) είναι μια δημοφιλής επιλογή για την ολοκλήρωση της ανίχνευσης προσώπου. Αυτές οι λύσεις εργάζονται για να εντοπίσουν το ανθρώπινο πρόσωπο σε ένα πλαίσιο. Και βάσει της εμπειρίας μας, συνήθως προτιμούμε τα μοντέλα ανίχνευσης προσώπου Caffe και ανίχνευσης αντικειμένων TensorFlow, επειδή παρείχαν τα καλύτερα αποτελέσματα. Επιπλέον, και τα δύο είναι διαθέσιμα χρησιμοποιώντας το dnn module της OpenCV.
Τι γίνεται μετά την ανίχνευση ενός προσώπου; Μετά, το Python και OpenCV-βασισμένο σύστημα θα αποκαλύψει τις περιοχές οριοθέτησης και τη διαβεβαίωση ανίχνευσης. Τέλος, εφαρμόζεται ένας αλγόριθμος θόλωσης στις περικομμένες περιοχές.
Πώς Να Κτίσουμε Λογισμικό Επεξεργασίας Βίντεο με Δύναμη AI;
Δεν είναι μυστικό ότι η επεξεργασία βίντεο, τα codec που την τροφοδοτούν και το υλικό και λογισμικό που απαιτούνται είναι αρκετά τεχνικά.
Παρά τούτο, αυτό δεν σημαίνει ότι δεν μπορείτε να χρησιμοποιήσετε αυτά τα εργαλεία για να κτίσουμε το δικό σας λογισμικό επεξεργασίας βίντεο.
Εδώ είναι μια σύντομη περιγραφή του τι πρέπει να κάνετε:
- Ξεκινήστε με την προσαρμογή του προ-εκπαιδευμένου νευρωνικού δικτύου σας για να ολοκληρώσετε τις απαιτούμενες εργασίες.
- Ρυθμίστε την υποδομή cloud σας για να χειριστείτε την επεξεργασία βίντεο και να κλιμακωθεί ανάλογα με τις ανάγκες.
- Κτίστε ένα λογισμικό για να συμπυκνώσετε τη διαδικασία και να ενσωματώσετε συγκεκριμένες περιπτώσεις χρήσης όπως εφαρμογές κινητών και πάνελ διαχείρισης ή ιστοσελίδας.
Η ανάπτυξη ενός MVP για παρόμοιο λογισμικό επεξεργασίας βίντεο μπορεί να διαρκέσει έως και τέσσερις μήνες χρησιμοποιώντας ένα προ-εκπαιδευμένο νευρωνικό δίκτυο και απλές εφαρμογικές στρώσεις. Ωστόσο, ο σκοπός και ο χρονοδιάγραμμα εξαρτώνται από τις λεπτομέρειες του κάθε έργου. Σε meisten περιπτώσεις, έχει νόημα να ξεκινήσετε με την ανάπτυξη Proof of Concept για να εξερευνήσετε τις λεπτομέρειες του έργου και να βρείτε μια βέλτιστη ροή.














