View  Edit  Attributes  History  Attach  Print  Search


ACCUEIL | DOCUMENTATION | STRATEGIES | TESTS

Opencvcopy

Main.Opencvcopy History

Hide minor edits - Show changes to output

Added lines 46-86:
// Programme d'exemple de la librairie javacvPro
// par X. HINAULT - octobre 2011
// Tous droits réservés - Licence GPLv3

// Exemple fonction copy()

import monclubelec.javacvPro.*; // importe la librairie javacvPro

PImage img;

String url="http://www.mon-club-elec.fr/mes_images/online/lena.jpg"; // String contenant l'adresse internet de l'image à utiliser

OpenCV opencv; // déclare un objet OpenCV principal

void setup(){ // fonction d'initialisation exécutée 1 fois au démarrage

        //-- charge image utilisée ---
        img=loadImage(url,"jpg"); // crée un PImage contenant le fichier à partir adresse web

        //--- initialise OpenCV ---
        opencv = new OpenCV(this); // initialise objet OpenCV à partir du parent This
        opencv.allocate(img.width, img.height); // initialise les buffers OpenCv à la taille de l'image

        opencv.copy(img); // charge le PImage dans le buffer OpenCV

        //--- initialise fenêtre Processing
        size (opencv.width(), opencv.height()); // crée une fenêtre Processing de la 2xtaille du buffer principal OpenCV
        //size (img.width, img.height); // aalternative en se basant sur l'image d'origine

        //--- affiche image ---       
        image(opencv.getBuffer(),0,0); // affiche le buffer principal OpenCV dans la fenêtre Processing


      noLoop(); // stop programme     

}


void  draw() { // fonction exécutée en boucle

}
Added line 52:
Changed lines 57-58 from:
%center%%red%'''Ces nouvelles valeurs permettent d'obtenir des fréquences maximales potentielles de traitement de 60 fps à 200 fps selon la machine. Dans tous les cas, le 30fps est réellement possible même sur des machines modestes !'''
to:
%center%%red%'''Ces nouvelles valeurs permettent d'obtenir des fréquences maximales potentielles de traitement de 60 fps à 200 fps selon la machine. Dans tous les cas, une fréquence de traitement d'image de 30 fps est réellement atteinte même sur des machines modestes !'''
Changed line 69 from:
Aucun
to:
* %blue%La rapididté d'exécution de cette fonction est essentielle pour les traitements d'image sur un flux vidéo !%%
Added lines 50-58:

>>important<<
%blue%La version '''javacvPro 0.4''' apporte une amélioration significative du transfert du PImage vers le buffer OpenCV, divisant d'un facteur 10 à 20 les délais précédemment obtenus :
* ainsi sur un Intel Dual Core à 2.33Gz (sous Ubuntu 10.04 LTS avec la version OpenCV 2.3.1) pour une image de 320x240 donne une durée moyenne pour chaque exécution de 2 à 3ms en mode interprété !
* sur une carte Intel N2800 1.86 Gz (sous Ubuntu 11.10 avec la version OpenCV 2.3.1) pour une image de 320x240 donne une durée moyenne pour chaque exécution de 5 ms en mode interprété !

%center%%red%'''Ces nouvelles valeurs permettent d'obtenir des fréquences maximales potentielles de traitement de 60 fps à 200 fps selon la machine. Dans tous les cas, le 30fps est réellement possible même sur des machines modestes !'''

>><<
Changed lines 51-53 from:
{- * La réalisation de 100 exécutions successives de la fonction dans Processing (sur un Intel Dual Core à 2.33Gz sous Ubuntu 10.04 LTS avec la version OpenCV 2.3.1) pour une image de 320x240 donne une durée moyenne pour chaque exécution de :
** de 28 ms en mode "interprété"  soit une fréquence maximale potentielle de 35 fps.
** de 16 ms en mode "compilé" soit une fréquence maximale potentielle de 62 fps.-}
to:
* {- La réalisation de 100 exécutions successives de la fonction dans Processing (sur un Intel Dual Core à 2.33Gz sous Ubuntu 10.04 LTS avec la version OpenCV 2.3.1) pour une image de 320x240 donne une durée moyenne pour chaque exécution de -}:
** {-de 28 ms en mode "interprété"  soit une fréquence maximale potentielle de 35 fps.-}
** {-de 16 ms en mode "compilé" soit une fréquence maximale potentielle de 62 fps.-}
Changed lines 51-52 from:
[-
* La réalisation de 100 exécutions successives de la fonction dans Processing (sur un Intel Dual Core à 2.33Gz sous Ubuntu 10.04 LTS avec la version OpenCV 2.3.1) pour une image de 320x240 donne une durée moyenne pour chaque exécution de :
to:
{- * La réalisation de 100 exécutions successives de la fonction dans Processing (sur un Intel Dual Core à 2.33Gz sous Ubuntu 10.04 LTS avec la version OpenCV 2.3.1) pour une image de 320x240 donne une durée moyenne pour chaque exécution de :
Changed lines 53-54 from:
** de 16 ms en mode "compilé" soit une fréquence maximale potentielle de 62 fps.
-]
to:
** de 16 ms en mode "compilé" soit une fréquence maximale potentielle de 62 fps.-}
Added line 51:
[-
Added line 55:
-]
Changed line 49 from:
!! Délai d'exécution de la fonction
to:
!! Durée d'exécution de la fonction
Changed line 51 from:
* La réalisation de 100 exécutions successives de la fonction pour une image de 320x240 donne une durée moyenne pour chaque exécution de :
to:
* La réalisation de 100 exécutions successives de la fonction dans Processing (sur un Intel Dual Core à 2.33Gz sous Ubuntu 10.04 LTS avec la version OpenCV 2.3.1) pour une image de 320x240 donne une durée moyenne pour chaque exécution de :
Changed line 51 from:
* La réalisation de 100 exécutions successives de la fonction pour une image de 320x240 donne une durée moyenne :
to:
* La réalisation de 100 exécutions successives de la fonction pour une image de 320x240 donne une durée moyenne pour chaque exécution de :
Added lines 49-53:
!! Délai d'exécution de la fonction

* La réalisation de 100 exécutions successives de la fonction pour une image de 320x240 donne une durée moyenne :
** de 28 ms en mode "interprété"  soit une fréquence maximale potentielle de 35 fps.
** de 16 ms en mode "compilé" soit une fréquence maximale potentielle de 62 fps.
Changed line 8 from:
%center%%width=400px%Path:/mes_images/javacvpro/bandeau_javacvpro_processing_opencv.png
to:
%center%Path:/mes_images/javacvpro/bandeau_javacvpro_processing_opencv_400.png
Added lines 7-8:

%center%%width=400px%Path:/mes_images/javacvpro/bandeau_javacvpro_processing_opencv.png
Added lines 1-58:
(:notitle:)
(:include HautPageReference:)\\
[[Main.LibrairieJavacvPro|Librairie JavacvPro]]

! Classe OpenCV : copy()
----

!! Description

* Cette fonction charge un objet PImage dans le buffer principal. Cette fonction permet d'appliquer toutes les fonctions de la librairie à une image PImage une fois qu'elle a été chargée dans le buffer principal.

* Utilisation avancée : cette fonction peut également être utilisée pour charger un objet IplImage dans le buffer principal (conteneur d'image natif de la fonction OpenCV)

* Voir également : image(), getBuffer()

!! Déclaration source java

(:source lang=java :)
public void copy (PImage imgIn)
public void copy (opencv_core.IplImage iplImgIn)
(:sourcend:)

!! Syntaxe

(:source lang=processing :)
opencv.copy(img);
(:sourcend:)


!! Paramètres

* opencv : un objet OpenCV
* img : un objet PImage ou un objet IplImage

!! Valeur renvoyée

Aucune. L'image est chargée dans le buffer principal OpenCV.

!! Exemple


(:source lang=processing :)


(:sourcend:)


!! Commentaires utilisateurs

>>bgcolor=#dfd border='3px dotted green'<<

Aucun

>><<

(:include BasPageReference:)

Cette page est une création originale de Xavier HINAULT - Tous droits réservés - 2011