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...
ich habe so ein programm das genau das macht .. aber quellcode habe ich nicht !! bmp -> *.h Gruß, Thomas
@Thomas leider kann ich jetzt mit deiner Antwort nicht so viel anfangen. was meinst denn mit bmp ->*.h ??? Hast du nun ein Programm oder hast du keines ?
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 !
@Thomas Genau so ein Programm würde mir schon reichen. Ob es jetzt nur für Größen bis zu 240x160 ist, spielt vorerst mal keine Rolle. Wenn du willst kannst du mir das Programm ja per email schicken: red_corner04@yahoo.de Vielen Dank soweit schonmal !
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
@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
Hi Denk dran ,daß die Bitmapdaten nicht in der Reihenfolge in der Datei stehen wie sie angezeigt werden. Unterste Pixelzeile szteht am Anfang. MfG HG
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...
zur Beantwortung deiner Frage(n) müßten wir wissen was das für ein Bild ist. Bei Annahme eines Schwarz/Weiß-Bildes (1Bit) ist das Bild faßt komplett Schwarz. 255=11111111b unsigned char ist schon OK. Gruss
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.