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

C++Builder Discussion :

Convertir une image colorée en niveau de gris


Sujet :

C++Builder

  1. #1
    Membre du Club
    Inscrit en
    Mars 2009
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 109
    Points : 61
    Points
    61
    Par défaut Convertir une image colorée en niveau de gris
    Salut,
    Aidez moi svp pour realiser une petite application qui prend une image en couleur en entree et la rendre en niveau de gris; ou je peut commancer ? quelle notion de traitement d'image il faut savoir? je suis out dans ce domaine et je veux que vous me guider.
    Merci, J'attand vos suggestions.

  2. #2
    Membre expérimenté
    Avatar de sat83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2004
    Messages
    1 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 040
    Points : 1 307
    Points
    1 307
    Par défaut
    Tu peux utiliser la fonction ScanLine.
    Effectue des recherches sur le forum ou sur Google, tu trouvera des exemples d'utilisation.

  3. #3
    Membre actif
    Avatar de TheDrev
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    310
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 310
    Points : 263
    Points
    263
    Par défaut
    pour convertir de la couleur en niveau de gris, il faut simplement additionner les composantes couleurs (RGB) et diviser le chiffre obtenu par 3

  4. #4
    Membre expérimenté
    Avatar de sat83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2004
    Messages
    1 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 040
    Points : 1 307
    Points
    1 307
    Par défaut
    Sur cette page tu trouvera un exemple Delphi de conversion Couleur=> Niveau de Gris (procedure ToGrayScale).

    Tu peux t'en inspirer et l'adapter en C++ Builder.

  5. #5
    Membre chevronné

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 390
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 390
    Points : 1 777
    Points
    1 777
    Par défaut
    Citation Envoyé par TheDrev Voir le message
    pour convertir de la couleur en niveau de gris, il faut simplement additionner les composantes couleurs (RGB) et diviser le chiffre obtenu par 3
    Salut !

    Pas tout à fait vrai puisque cela dépend du type de conversion.
    Pour retrouver les niveaux de gris de l'argentique la formule est :
    (R*30 + G*59+ B*11) / 100

    Si on veut modifier la lumière et le contraste lors de cette conversion, on mettra en lice d'autres pourcentages !
    Le 3/3 n'est qu'une conversion parmi d'autres, avec une luminosité et un contraste particulier (du fait du 3/3... on perd en luminance (G) ... et on accroît la chrominance que l'on déséquilibre (R/B)) !

    En ce qui concerne le développement, tout dépend si on se situe dans un contexte optimisé ou non.
    Dans ce cadre, on ne convertira pas un 8 bits de la même manière qu'un "couleurs vraies" (>= 24 bits).
    Puisque l'on pourra tirer avantage de la palette.
    Cela représente un gain de temps d'exécution excessivement appréciable puisque la conversion ne s'applique qu'aux 256 teintes de la palette, le traitement de pixel en pixel se résume en une substitution d'index !
    Toute conversion de 8 bits -> 24 bits simplifie le code mais ralentira la conversion des 8 bits.
    Un 24 bits (couleurs vraies RGB) nécessite une conversion pixel par pixel !

    Ensuite, il y a le problème de la sortie : que fait-on des niveaux de gris ?

    Il y a déjà du code sur ce forum ... bien plus qu'il n'en suffirait !

    A plus !

  6. #6
    Membre du Club
    Inscrit en
    Mars 2009
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 109
    Points : 61
    Points
    61
    Par défaut
    Merci pour vos reponse, j'ai pu réaliser ma application en C++Builder c'est tres facile, mais est ce que quelqu 'un a des bons tutorials sur ça (traitement d'image, infographie...), car j ai pas trouver de bon cours sur le net, je pense c'est a cause que j ai pas taper le bon mot clé sous google, bref ce que vous avez dit, I like this Knowledge , et veux apprendre ça, SVP Help me
    et merci.

  7. #7
    Membre chevronné

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 390
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 390
    Points : 1 777
    Points
    1 777
    Par défaut
    Salut !

    http://www.developpez.net/forums/f64...ement-dimages/

    En principe c'est dédié à l'algorithmie spécifique au traitement d'images.
    Pour tout ce qui relève de l'implémentation spécifique à BCB alors c'est bien ici !

    La conversion en niveaux de gris... est-elle resolue ou non ?

    A plus !

  8. #8
    Membre du Club
    Inscrit en
    Mars 2009
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 109
    Points : 61
    Points
    61
    Par défaut
    Oui le problème a été résolu , seulement j’ai demandé un cours de traitement d’image (débutant) qui mélange entre la théorie et la pratique (exemple de programmation), cad
    1 - Un peu de définition + théorie ….
    2 – Application de ces théorèmes.
    Si ça existe .
    Pour bien comprendre les choses, et merci

Discussions similaires

  1. Convertir une image couleur en niveau de gris
    Par mine87 dans le forum Flex
    Réponses: 1
    Dernier message: 29/12/2009, 12h20
  2. Réponses: 1
    Dernier message: 27/09/2009, 18h38
  3. fonction pour segmenter une image de visage (niveau de gris)
    Par masterinfo dans le forum Traitement d'images
    Réponses: 3
    Dernier message: 05/06/2009, 17h13
  4. methode de transformation d'une image colorée en niveau de gris
    Par foufar2009 dans le forum Traitement d'images
    Réponses: 1
    Dernier message: 18/03/2009, 11h57
  5. transformer une image RGB en niveau de gris
    Par tapouni dans le forum Traitement d'images
    Réponses: 9
    Dernier message: 28/04/2008, 17h25

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