La bibliothèque libre OpenCV 4.7 (Open Source Computer Vision Library) a été publiée, offrant des outils pour le traitement et l'analyse du contenu des images. OpenCV propose plus de 2500 algorithmes, à la fois classiques et reflétant les dernières avancées dans le domaine de la vision par ordinateur et des systèmes d'apprentissage automatique. Le code de la bibliothèque est écrit en C++ et est distribué sous licence BSD. Des liaisons ont été préparées pour différents langages de programmation, y compris Python, MATLAB et Java.
La bibliothèque peut être utilisée pour la reconnaissance d'objets sur des photographies et des vidéos (par exemple, la reconnaissance faciale et des silhouettes humaines, du texte, etc.), le suivi du mouvement des objets et de la caméra, la classification des actions sur vidéo, la transformation d'images, l'extraction de modèles 3D, la création d'espaces 3D à partir d'images de caméras stéréo, la construction d'images de haute qualité à partir d'images de plus basse qualité, la recherche d'objets sur une image similaires à un ensemble donné, l'application de méthodes d'apprentissage automatique, le placement de marqueurs, la détection d'éléments communs sur différentes images, et l'élimination automatique des défauts comme l'effet des yeux rouges.
Parmi les changements de la nouvelle version :
- Une optimisation significative de la performance des convolutions dans le module DNN (Deep Neural Network) a été réalisée avec la mise en œuvre d'algorithmes d'apprentissage automatique basés sur des réseaux neuronaux. Un algorithme de convolutions rapides de Winograd a été implémenté. De nouvelles couches ONNX (Open Neural Network Exchange) ont été ajoutées : Scatter, ScatterND, Tile, ReduceL1 et ReduceMin. Le support du framework OpenVino 2022.1 et du backend CANN a été ajouté.
- La qualité de détection et de décodage des QR codes a été améliorée.
- Le support des marqueurs visuels ArUco et AprilTag a été ajouté.
- Un tracker Nanotrack v2 basé sur des réseaux neuronaux a été ajouté.
- L'algorithme de flou Stackblur a été implémenté.
- Le support de FFmpeg 5.x et CUDA 12.0 a été ajouté.
- Une nouvelle API pour la manipulation de formats d'images multipages a été proposée.
- Le support de la bibliothèque libSPNG pour le format PNG a été ajouté.
- Des accélérations avec des instructions SIMD ont été activées dans libJPEG-Turbo.
- Pour la plateforme Android, le support de H264/H265 a été réalisé.
- Toutes les API de base pour le langage Python sont fournies.
- Un nouveau backend universel pour les instructions vectorielles a été ajouté.
Source : opennet.ru
