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

OpenGL Discussion :

Compter pixels différents entre deux images


Sujet :

OpenGL

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Compter pixels différents entre deux images
    Bonjour,

    Voila mon problème, je voudrais savoir si OpenGL pouvait faire des opération post-rendu, comme par exemple compter le nombre de pixels différents entre l'image qu'il vient de calculer et une autre image stockée dans un autre de ses buffers. Pour l'instant je suis obligé de récupérer le rendu avec la fonction glReadPixels, et faire la comparaison dans mon programme, mais c'est trop lent. Est ce que la carte graphique ne pourrait pas faire des opérations de ce genre, et juste me renvoyer le nombre de pixels différents.

    merci

  2. #2
    Rédacteur
    Avatar de bafman
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    2 574
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2003
    Messages : 2 574
    Points : 5 323
    Points
    5 323
    Par défaut
    a la limite, tu peut faire un shader qui va faire la soustraction entre deux image, la stocker dans une texture sur laquelle tu va calculer le nombre de pixels non noir (donc differents de 0), mais ca ne sera probablement pas plus rapide et nettement plus complexe à mettre en oeuvre

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Ok et pour compter les pixels non noirs je suis quand même obligé de "télécharger" la texture avec readPixels ou getTex (je me souviens plus de la fonction) et de faire "à la main" ceci. Je peux pas faire faire ca pas la carte graphique ?

  4. #4
    Rédacteur
    Avatar de bafman
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    2 574
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2003
    Messages : 2 574
    Points : 5 323
    Points
    5 323
    Par défaut
    a priori non

  5. #5
    Futur Membre du Club
    Inscrit en
    Mars 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 9
    Points : 6
    Points
    6
    Par défaut
    Salut,
    je me permets d'intervenir car nous sommes sur un projet qui consiste à faire la différence entre deux images (ce que j'ai réussi à faire via les shaders) et à calculer la somme de ces différences pixel par pixel (c'est-à-dire en fait la somme des valeurs des pixels sur l'image finale) ce qui est assez proche de ce que veut faire Hiccup apparemment (d'ailleurs nous pouvons éventuellement te renseigner là-dessus).
    La question que je me posais est : une fois qu'on a réussi à faire une différence de textures via les shaders, peut-on alors obtenir la somme des pixels de l'image finale (par exemple via un accumulateur placé dans les shaders), une des difficultés apparente étant qu'on ne peut apparemment pas modifier des variables dans le fragment shader...
    Enfin voilà, l'union fait la force et toute solution intéressera apparemment au moins trois personnes...
    Cordialement
    Aymeric et Pierre

  6. #6
    Rédacteur
    Avatar de bafman
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    2 574
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2003
    Messages : 2 574
    Points : 5 323
    Points
    5 323
    Par défaut
    non justement, c'est la toute la limitation actuelle des shaders, c'est qu'ils ne peuvent pas renvoyer d'information au CPU sans passer par des textures ou autres feintes

Discussions similaires

  1. laisser trainer des pixels entre deux images
    Par Garra dans le forum OpenCV
    Réponses: 9
    Dernier message: 11/10/2013, 15h42
  2. mouvement d'un pixel entre deux images
    Par bechir ouni dans le forum Images
    Réponses: 2
    Dernier message: 22/04/2012, 15h40
  3. Réponses: 7
    Dernier message: 10/11/2011, 21h57
  4. Différence entre deux images
    Par Mookie dans le forum 2D
    Réponses: 3
    Dernier message: 13/04/2006, 16h46
  5. [PIL] Difference entre deux images
    Par t_om84 dans le forum Calcul scientifique
    Réponses: 4
    Dernier message: 26/12/2005, 13h45

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