Lizard & Dog Blog

Installation d’OpenCV avec FFMPEG activé sur IntelliJ (Java, Linux)

Préface:

Des difficultés à implémenter OpenCV avec FFmpeg dans IntelliJ ? Ne vous inquiétez pas, vous n’êtes pas seul. La configuration d’une application de vision par ordinateur peut être une tâche intimidante, surtout si vous êtes novice dans le domaine. Même avec l’aide d’outils puissants comme ChatGPT, il peut être difficile d’obtenir toutes les informations dont vous avez besoin pour commencer. Mais ne craignez rien, dans cet article, nous vous guiderons étape par étape dans le processus, afin que vous puissiez configurer votre environnement de développement facilement et commencer à construire votre prochain projet de vision par ordinateur. Et la meilleure partie ? Nous avons même utilisé ChatGPT pour rédiger l’article à notre place ! Alors plongeons-y et commençons à construire votre prochain projet de vision par ordinateur facilement.

Setup:

Pour ce tutoriel, nous travaillerons sur Linux (Ubuntu 22.04) et utiliserons la version 2023.1 d’IntelliJ. Nous utiliserons également la version 4.7.0 d’OpenCV et la version 6.0 de FFmpeg. Il convient de noter que bien que ces versions spécifiques soient utilisées dans ce tutoriel, les étapes que nous décrivons ici devraient également s’appliquer à d’autres versions des outils.

Enfin, vous devrez installer CMAKE et GCC pour travailler avec OpenCV, ainsi que les dépendances suivantes :

sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev


Installation:

Avant de plonger dans les détails de la mise en œuvre d’applications de Computer Vision avec OpenCV et FFmpeg, nous devons nous assurer d’avoir ces outils installés sur notre système. Dans cette section, nous allons vous guider à travers les étapes d’installation de FFmpeg et OpenCV sur un système Linux.

Commencons par installer FFMPEG via le terminal:

  1. Assurez vous d’être à jour avec la commande suivante:
sudo apt update && sudo apt upgrade
  1. Installez FFmpeg avec la commande suivante:
sudo apt install ffmpeg
  1. Vérifiez que FFmpeg est installé correctement :
ffmpeg -version

Passons à OpenCV:

Pour télécharger OpenCV, rendez-vous sur le site officiel d’OpenCV (https://opencv.org/releases/) et sélectionnez la version que vous souhaitez (dans ce cas, nous utiliserons la version 4.7.0). Cliquez sur le lien “Sources” pour télécharger le package.

Après avoir téléchargé OpenCV, décompressez le dossier et déplacez-le vers l’emplacement d’installation souhaité. Il peut s’agir d’un emplacement global ou d’un répertoire local pour votre projet.

Ensuite, vous devrez ajouter le support FFmpeg à OpenCV. Pour ce faire, accédez au dossier “cmake/templates” dans le répertoire OpenCV et localisez le fichier “cvconfig.h.in”. Ouvrez le fichier et ajoutez la ligne suivante à la fin :

#define HAVE_FFMPEG 1

Maintenant, ouvrons un terminal et accédons au dossier OpenCV. Une fois dans ce dossier, nous allons créer un dossier “build” en lançant cette commande dans notre terminal :

mkdir build

Retournons ensuite au dossier build:

cd build

Maintenant, il est temps d’utiliser CMake ! Exécutons la commande suivante :

cmake ..

Générons les fichiers de construction avec le support de FFmpeg :

make -j$(nproc)

Une fois le processus de construction terminé, vous pouvez installer OpenCV en exécutant la commande suivante :

sudo make install

Enfin, vous devez configurer IntelliJ IDEA pour utiliser la bibliothèque OpenCV.

Ouvrez votre projet IntelliJ IDEA et accédez à File -> Project Structure

Sous Project Settings, séléctionnez Modules

Cliquez sur l’icône plus pour ajouter un nouveau module. Accédez au dossier “bin” :

Choisissez “Java” comme type de bibliothèque et donnez-lui un nom.

Sous l’onglet “Classpath”, cliquez sur l’icône plus et accédez au répertoire de la bibliothèque OpenCV (généralement /usr/local/lib).

Ajoutez le fichier opencv-<version>.jar au classpath.

Si cela a été ajouté correctement, vous obtiendrez ceci :

Double-cliquez sur la ligne qui a été ajoutée pour ouvrir le menu suivant :

Cliquez sur le signe “+” et recherchez le chemin des bibliothèques natives (les fichiers .so) :

Après cela, tout devrait être prêt.

Pour essayer, créons rapidement un premier programme :

public class Main {
// Loads the library
    static{System.loadLibrary(Core.NATIVE_LIBRARY_NAME);}
    public static void main(String[] args) {
// If opencv is properly configured, there shouldn’t be any issue with creating a Mat object
        Mat u= new Mat();
// To check if FFMPEG is used as a backend, try and open a video and get the backend name
        VideoCapture di=new VideoCapture();
        di.open("/home/ld/Downloads/video.mp4");
        System.out.println(di.getBackendName());
    }

Si tout fonctionne correctement, vous devriez voir FFMPEG s’afficher à l’écran (le nom du backend).

Et voilà, vous êtes prêt à partir et devriez maintenant pouvoir utiliser OpenCV et FFmpeg dans votre prochain projet Java !

Si vous avez des questions complémentaires, n’hésitez pas à nous contacter directement ici ou à visiter notre site web:

http://www.lizardanddog.com

Leave a comment

Create a website or blog at WordPress.com