Bitmap Daten

OP #250283
Lesenswert?
• ▲
▼
Hallo.

Ich möchte ein BMP- File mit Hilfe von C/C++ binär einlesen.
Anschließend möchte ich das BMP- File in seine Bestandteile zerlegen
(Header, Info und die reinen Bilddaten), so dass ich zum Schluss
Zugriff auf die einzelnen Pixel habe.

Wer hat sowas schonmal gemacht und kann mir helfen ?

Danke...
Gast #250286
Lesenswert?
• ▲
▼
es hört sich so als würdest du so etwas gerne selbst programmieren, dann
kann ich nciht weiterhelfen.
Willst du ein programm, das das kann was du beschrieben hast ..nämlich
aus BMP eine header Datei machen, in der alle Pixel aufgelistet sind
kann ich dir helfen. allerdings geht es nur für BMP mit <= 240x160, da
das Prog zur Gameboy Programmierung dient !
Persönliche Seite #250289
Lesenswert?
• ▲
▼
Hi

wo liegt den genau das Problem? Du ermittelst die Größe der Datei,
allokierst ausreichend Speicher und ließt die Datei ein. Anschließend
ließt du die Header-Daten ein und weißt wie die Pixeldaten aufgebaut
sind. Wenn du spezielle Probleme hast kann ich dir gerne helfen. Hab
erst gestern ein C++ Klasse geschrieben die eben jenes macht (nicht zur
Veröffentlichung gedacht)

Matthias
OP #250290
Lesenswert?
• ▲
▼
@Matthias

so das große Problem sollte das schon nicht werden, das ist mir auch
klar. paar fragen hätte ich noch: ich hätte es halt so gemacht:
das bild binär in ein array (frage datentyp: mein vorschlag: unsigned
char ?)  mit irgendwelchen file-operationen (fread, fseek)einlesen.
Anschließend lese ich den Header aus und weiß somit den Offset der
reinen Bilddaten. Die reinen Bildddaten schreib ich mir eben dann in
ein neues Array. Das müsste doch von der Idee her klappen, oder?

Markus
OP #250293
Lesenswert?
• ▲
▼
Hallo,

ich habe jetzt mein eigenes kleines Programmchen für die Daten. Hab nur
noch eine Frage, ob es auch so richtig ist. Für die Bilddaten verwende
ich ein unsigned char- Array. Kann es sein, dass die Bilddaten fast
immer 255 sind, also im ASCII- Format jetzt? Kann ich die mir irgendwie
auch als reinen Bitstrom ansehen ??

Danke...

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.