IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

OpenCV Discussion :

Libération de mémoire d'une cvMat


Sujet :

OpenCV

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 16
    Par défaut Libération de mémoire d'une cvMat
    Bonjour,
    Comme l'intitulé le montre, j'ai besoin d'aide pour libérer la mémoire d'une cvMat.
    J'ai essayé avec la méthode cvReleaseMat() mais ça me donne une erreur.

    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    CvPoint *points = (CvPoint*)malloc( nbMaxPoints * sizeof(points[0]));
    CvMat pointMat = cvMat( 1, nbMaxPoints, CV_32SC2, points );
    //...//
    cvReleaseMat(pointMat); // Me retourne l'erreur
    Tout fonctionne sauf la libération de la mémoire et donc au bout d'un certain nombre d'image traitées, ça commence à être vraiment long pour effectuer le traitement.
    Finalement, ce qui occupe la mémoire, c'est points alors peut être que c'est ça qu'il faut que je cherche à libérer mais je n'ai pas trouvé comment...

  2. #2
    Membre expérimenté
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2009
    Messages
    141
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2009
    Messages : 141
    Par défaut
    Salut,
    Comme indique dans le manuel cvRelease prend:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    void cvReleaseMat( CvMat** mat );
    Donc moi je changerai ton code en quelquechose comme ca:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    CvPoint *points = (CvPoint*)malloc( nbMaxPoints * sizeof(points[0]));
    	CvMat *pointMat = cvCreateMat(1,nbMaxPoints,CV_32SC2);
    	pointMat->data.fl=(float *)points;
    	cvReleaseMat(&pointMat);
    Je sais pas si ca t'a aide.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 16
    Par défaut
    Oui merci, ça fonctionne avec ça.

  4. #4
    Membre expérimenté
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2009
    Messages
    141
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2009
    Messages : 141
    Par défaut
    Tu peux marquer le sujet comme resolu comme ca les gens sauront qu'il y a une reponse quand ils chercheront pour la meme chose.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 16
    Par défaut
    Autre petite question, aurais tu une idée de comment libérer la mémoire de mon CvPoint *points?
    J'ai testé avec CvFree_() et CvReleaseData() mais sans résultats...
    Merci à toi en tout cas.

  6. #6
    Membre chevronné
    Inscrit en
    Mars 2010
    Messages
    439
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 439
    Par défaut
    avec ca ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 7
    Dernier message: 11/05/2014, 08h12
  2. Problème de libération de la mémoire dans une fonction
    Par ArnaudFu1 dans le forum Débuter
    Réponses: 2
    Dernier message: 23/02/2012, 16h21
  3. Libération mémoire dans une CMap
    Par BigzYeah dans le forum MFC
    Réponses: 0
    Dernier message: 19/01/2011, 17h01
  4. Affectation et libération mémoire d'une WideString
    Par delphidebutant dans le forum Débuter
    Réponses: 5
    Dernier message: 29/10/2010, 08h55
  5. problème libération mémoire après une DLL
    Par salseropom dans le forum C
    Réponses: 22
    Dernier message: 03/09/2008, 12h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo