Montage vidéo, apprentissage automatique et xml piraté - le tout dans un seul programme

De profession je suis directeur de montage et la programmation appliquée est comme un passe-temps pendant mon temps libre.





À un moment donné, l'idée est venue de combiner le travail avec un hobby, j'ai lu un article sur Habré sur la reconnaissance d'objets dans les images à l'aide de Core ML, et c'est ainsi que tout a commencé. Je partagerai ma modeste expérience et les problèmes auxquels vous pouvez faire face lors du développement d'applications fonctionnant avec Core ML.





Le fait est que près d'un tiers du travail d'un éditeur vidéo consiste en la recherche de routine des séquences vidéo à partir des sources, qui doivent être enroulées à chaque fois à la recherche d'un plan contextuel pour le texte hors écran, à mon avis cela ne comporte aucun composante créative, surtout lorsque vous faites cela depuis 15 ans). Eh bien, j'ai pensé, que se passerait-il si j'écrivais un logiciel qui parcourrait le dossier avec le code source, reconnaîtrait les objets, les «mettait» soigneusement dans la base de données. En outre, au moment de la recherche de fragments vidéo pour ce que l'on appelle "jeans", un mot de recherche est entré, par exemple "Sun", et tout ce qui est d'une certaine manière est transféré au système d'édition.





L'idée mûrit, allait s'empiler, j'ai décidé d'écrire en Swift, des modèles entraînés de Core ML lui-même, de la base de données SQLite. À première vue, l'idée semblait facile à mettre en œuvre, rien de compliqué.  





Très rapidement, j'ai ajouté le code principal qui extrait les images de la vidéo, reconnaît les objets à l'aide du modèle Resnet50 , qui a été recommandé par Yabloko sur leur site Web, cela a fonctionné très rapidement et vous a permis d'ajuster le pourcentage auquel l'objet était considéré comme reconnu. Le code lui-même est discrètement distribué sur le même apple.com   pour tout le monde. J'ai connecté la bibliothèque SQLite.swift , enveloppé ses fonctions dans mes méthodes, tout fonctionne! 





!  1000- mvc- , Stackoverflow. . , . , , , .  





, Grand Central Dispatch (GCD) - Apple, ,    - ! ! .





, 70 , - ! ! 420- , -   windows mobile, , , , …. 420 ! , , ! ? …. … 420 … .





, ( ) ! VNCoreMLRequest,   ML- , , . «»    copyCGImage, , generateCGImagesAsynchronously, , «» try catch.





. , . : YOLOv3 Resnet50, , . .





Slots pour les modèles CoreML dans les paramètres du programme
CoreML





Apple Xcode Create ML , , , .





Interface Apple Create ML
Apple Create ML

, - . - EDL XML.  , «» , . , EDL , , , , , , , , . XML! : , , , , , ! , , XML, , -.   Adobe Premiere XML.   . ,   - , , , , .  , String Xcode. , , . !   html-.  , , ) ! XML , dobe Premiere, , , , Final Cut Pro ( ),





Interface du programme Videoindex
Videoindex

, , , , .





, , , , . Apple Silicon, ML 16x, . Mac App Store, Videoindex.





,








All Articles