OpencvgetMemory Main.OpencvgetMemory HistoryHide minor edits - Show changes to output Changed line 5 from:
! Classe OpenCV : getMemory(), getMemory2 to:
! Classe OpenCV : getMemory(), getMemory2() Changed lines 14-16 from:
** getMemory() ** getMemory2() to:
** getMemory() : renvoie le buffer Memory, image RGB 3 canaux. ** getMemory2(): renvoie le buffer Memory2, image RGB 3 canaux. Changed lines 29-30 from:
public PImage restore2() to:
Deleted line 35:
Changed lines 87-97 from:
//--- opérations sur image --- opencv.gray("BUFFER"); // transforme le buffer OpenCV désigné en niveau de gris - copie mise dans le buffer Gray //--- affiche image finale --- image(opencv.getBuffer(),0,0); // affiche le buffer principal OpenCV dans la fenêtre Processing = image traitée opencv.restore(); // recharge le buffer memory dans le buffer principal = l'image de départ image (opencv.getBuffer(), opencv.width(), 0); // affiche le buffer principal OpenCV dans la fenêtre Processing to:
Added lines 54-107:
// Programme d'exemple de la librairie javacvPro // par X. HINAULT - mars 2012 // Tous droits réservés - Licence GPLv3 // Exemple fonction remember(), restore(), getMemory() 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()*2, 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 //--- mémorise image du buffer principal dans buffer Memory opencv.remember(); //--- affiche image de départ via le buffer mémory --- //image(opencv.getMemory(),0,0); // affiche le buffer Memory OpenCV dans la fenêtre Processing //--- opérations sur image --- opencv.gray("BUFFER"); // transforme le buffer OpenCV désigné en niveau de gris - copie mise dans le buffer Gray //--- affiche image finale --- image(opencv.getBuffer(),0,0); // affiche le buffer principal OpenCV dans la fenêtre Processing = image traitée opencv.restore(); // recharge le buffer memory dans le buffer principal = l'image de départ image (opencv.getBuffer(), opencv.width(), 0); // affiche le buffer principal OpenCV dans la fenêtre Processing noLoop(); // stop programme } void draw() { // fonction exécutée en boucle } Added lines 7-9:
%center%Path:/mes_images/javacvpro/bandeau_javacvpro_processing_opencv_400.png Changed line 5 from:
! Classe OpenCV : getMemory(), getMemory2() to:
! Classe OpenCV : getMemory(), getMemory2(), restore(), restore2() Changed lines 11-13 from:
** getMemory() ** getMemory2() : renvoie le buffer Memory2, image RGB 3 canaux. to:
** getMemory() et restore() : renvoie le buffer Memory, image RGB 3 canaux. ** getMemory2() et restore2() : renvoie le buffer Memory2, image RGB 3 canaux. Changed lines 24-28 from:
public PImage public PImage public PImage public PImage public PImage getBufferB to:
public PImage getMemory () public PImage getMemory2() public PImage restore() public PImage restore2() Changed lines 33-34 from:
img=opencv. to:
img=opencv.getMemory(); // renvoie le buffer Memory dans le PImage img=opencv.restore(); // renvoie le buffer Memory dans le PImage Added lines 1-67:
(:notitle:) (:include HautPageReference:)\\ [[Main.LibrairieJavacvPro|Librairie JavacvPro]] ! Classe OpenCV : getMemory(), getMemory2() ---- !! Description * Ces fonctions renvoient un PImage avec le contenu d'un des "buffers image" de mémorisation d'image RGB 3 canaux disponibles avec la classe OpenCV de la librairie javacvPro. Respectivement : ** getMemory() : renvoie le buffer Memory, image RGB 3 canaux. ** getMemory2() : renvoie le buffer Memory2, image RGB 3 canaux. >>tip<< * Ces 2 buffers sont particulièrement utiles pour le stockage d'images intermédiaires impliquant plusieurs images. Typiquement, on pourra combiner le buffer principal (typiquement issu d'un flux vidéo) et une image stockée dans Memory et garder le résultat obtenu dans le buffer Memory2. * Cette utilisation de buffers distincts évite les effets imprévus liés à l'enregistrement successif dans un même buffer la source et le résultat d'un traitement d'image. >><< * Voir également : substract() !! Déclaration source java (:source lang=java :) public PImage getBuffer () public PImage getBufferGray() public PImage getBufferR() public PImage getBufferG() public PImage getBufferB() (:sourcend:) !! Syntaxe (:source lang=processing :) img=opencv.getBufferR(); // renvoie le buffer rouge dans le PImage (:sourcend:) !! Paramètres * opencv : un objet OpenCV déclaré avec le constructeur [[OpencvOpencv|OpenCV]]. * img : un objet PImage (conteneur image Processing) !! Valeur renvoyée * Objet PImage contenant l'image présente dans le buffer voulu !! Exemple (:source lang=processing :) (:sourcend:) (:include OpencvBuffers :) !! 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 |