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

VB.NET Discussion :

ouverture et extraction des données d'un fichier .bmp


Sujet :

VB.NET

  1. #1
    Membre confirmé
    Inscrit en
    Août 2009
    Messages
    143
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 143
    Par défaut ouverture et extraction des données d'un fichier .bmp
    Salut tout le monde

    J'aimerais savoir comment faire pour extraire les données d'un fichier bmp. J'ai essayé avec la méthode readallbytes des classes file et fileinfo mais seulement ces bytes, je ne sais quoi faire d'eux. serait-ce possible de les convertir en integer? Avec writealltext, je ne vois que du charabia, ce qui me semble-t-il est normal, vue la structure des fichiers bitmap.

    Merci d'avance

  2. #2
    Membre Expert
    Avatar de Sehnsucht
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2008
    Messages
    847
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Octobre 2008
    Messages : 847
    Par défaut
    Je ne suis pas sûr de savoir si c'est ce que tu recherches, la question étant vague, mais si tu veux retrouver une Image à partir d'un tableau de Bytes voilà une fonction qui devrait faire l'affaire:

    Code VB.Net : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Function ByteArrayToBitmap(ByVal bytes() As Byte) As Drawing.Bitmap
        Return CType(Drawing.Bitmap.FromStream(New IO.MemoryStream(bytes)), Bitmap)
    End Function

    Bon c'est du code condensé, mais rien de bien sorcier je pense

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Ta question n'est vraiment pas claire, tu cherches à faire quoi exactement ? quelles données veux-tu récupérer ?

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Février 2010
    Messages
    291
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 291
    Par défaut
    Bonjour,

    Effectivement la question n'est pas claire, mais s'il s'agit de récupérer toutes les données d'un fichier BMP, il y a plusieurs méthodes. Soit utiliser GDI+ se qui permet de récupérer facilement le tableau de byte définissant les pixels du bitmap.
    Soit utiliser les structures GDI32 dans ce cas il faut lire un peu, voici les structures dont vous aurez besoin (faire une recherche sur la MSDN)
    BITMAPFILEHEADER
    BITMAPINFO
    BITMAPINFOHEADER
    RGBQUAD

    A+

  5. #5
    Membre confirmé
    Inscrit en
    Août 2009
    Messages
    143
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 143
    Par défaut
    Pardon si ma question n'était pas claire.
    En fait je voudrais m'exercer au traitement d'images en vb.net. Pour cela j'ai besoin de lire le contenu de fichiers .bmp, mais seulement voilà, je sais pas comment faire. Tous ces bytes me perdent, je sais pas comment m'y prendre.
    J'espère que cette fois ci ma préoccupation est plus claire

  6. #6
    Membre chevronné
    Profil pro
    Inscrit en
    Février 2010
    Messages
    291
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 291
    Par défaut
    Bonjour,

    je voudrais m'exercer au traitement d'images en vb.net
    C'est pas tellement plus clair, le traitement d'image c'est vaste, très vaste ...
    Vous voulez faire quoi ? Modifier les couleurs, changer les dpi, modifier le contraste, la luminosité, faire de la télédétection, de la reconnaissance automatique de formes ...(pour les deux derniers cela fait partie du traitement d'image mais je doute que ce soit votre préoccupation).

    Dites nous:
    Je veux afficher une image, puis extraire le canal rouge par exemple, ça c'est clair.

  7. #7
    Membre confirmé
    Inscrit en
    Août 2009
    Messages
    143
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 143
    Par défaut
    Pour un début ma première préoccupation c'est d'extraire des informations comme la largeur et la hauteur de l'image, la taille du fichier, les valeurs des pixels de l'image quelle que soit le nombre de bits par pixels

  8. #8
    Membre chevronné
    Profil pro
    Inscrit en
    Février 2010
    Messages
    291
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 291
    Par défaut
    Bonjour,

    Comme je l'écrivais précédemment il y a deux façons d'aborder la chose, soit à l'aide de GDI+ et de la classe Bitmap de system.drawing.imaging
    Soit s'il on souhaite comprendre les choses de façon plus approfondies à l'aide des structures GDI32 telles que je les ais citées plus tôt.
    Une fois ces structures étudiée la façon la plus simple est d'utiliser un binaryreader et de lire les valeurs pas à pas. Attention par rapport à la doc GDI32 il faut penser à convertir le type de donnée en vb.net
    La doc MSDN de .NET donne tous les renseignements sur le sujet faites une recherche avec API GDI32 dans l'aide et vous trouverez tout ce qu'il faut.

  9. #9
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par SandyF Voir le message
    Pour un début ma première préoccupation c'est d'extraire des informations comme la largeur et la hauteur de l'image, la taille du fichier, les valeurs des pixels de l'image quelle que soit le nombre de bits par pixels
    Ben là c'est déjà plus clair

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Imports System.Drawing
    ...
     
     
    ' Ouverture de l'image
    Using bmp As New Bitmap("chemin du fichier")
     
        ' Dimensions
        Dim largeur As Integer = bmp.Width
        Dim hauteur As Integer = bmp.Height
     
        ' Récupération de la couleur du pixel à la position (100, 50)
        Dim couleur As Color = bmp.GetPixel(100, 50)
     
    ' Fin de l'utilisation de l'image, on referme le fichier et on libère les ressources
    End Using
    Pour la taille du fichier, ce n'est pas spécifique aux images. Tu peux utiliser la classe FileInfo pour ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Imports System.IO
     
    ...
     
     
    Dim fi As New FileInfo("chemin du fichier")
    Dim taille As Integer = fi.Length

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

Discussions similaires

  1. Extraction des données dans un fichier texte brut
    Par Patrice.peace dans le forum Langage
    Réponses: 10
    Dernier message: 16/03/2010, 09h40
  2. Extraction des données d'un fichier text en vb net
    Par sihammaster dans le forum VB.NET
    Réponses: 5
    Dernier message: 29/11/2009, 15h37
  3. Extraction des données d'un fichier (output)
    Par Jessy2 dans le forum Applications et environnements graphiques
    Réponses: 13
    Dernier message: 09/02/2009, 16h17
  4. Extraction des données vers un fichier EXCEL
    Par vanesa dans le forum SQL
    Réponses: 4
    Dernier message: 29/10/2008, 15h29
  5. [débutant]extraction des données d'un fichier xml simple
    Par ekram dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 14/03/2007, 12h24

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