Bild-Daten Kompression gesucht

Gast #5231764
Lesenswert?

Ich habe nicht im Internet gesucht da ich nicht weiss mit
welchen Kriterien und Begriffen ich suchen soll. Vielleicht
kann mir jemand helfen und mich drauf stossen.

Ausgangslage:

Durch Kodierung von 8 Pixeln in einem Byte erzeuge ich mir
bereits kompakte Grafiken mit 1 Bit Farbtiefe die ich durch
beliebige Wahl von Vordergrund- und Hintergrundfarbe auf einem
Farbdisplay darstellen kann.

Auf einem 320x240 Display sind das z.B. 76800 Pixels bzw 9600
Bytes. Diese Anzahl Bytes hätte ich gerne noch verlustfrei
komprimiert um Speicherplatz im Flash zu sparen.

Lässt sich da noch was machen ohne den Decodier-Aufwand im
Mikrocontroller groß werden zu lassen? Die Software soll ja
nicht so gross werden dass sie die Platzersparnis der
Grafik(en) auffrisst.

Habe leider keine Erfahrung damit und suche hiermit um Hilfe.
#5231822
Lesenswert?

Byte Sparer schrieb:
> Durch Kodierung von 8 Pixeln in einem Byte erzeuge ich mir
> bereits kompakte Grafiken mit 1 Bit Farbtiefe
>
> Auf einem 320x240 Display sind das z.B. 76800 Pixels bzw 9600
> Bytes. Diese Anzahl Bytes hätte ich gerne noch verlustfrei
> komprimiert um Speicherplatz im Flash zu sparen.
>
> Lässt sich da noch was machen ohne den Decodier-Aufwand im
> Mikrocontroller groß werden zu lassen?

Was du als "großen Aufwand" für den Decoder bezeichnest, ist natürlich 
Geschmackssache. Meine Empfehlung wäre, ein komprimiertes Bildformat aus 
dem PC-Bereich zu verwenden. Da kriegst du nämlich den Encoder frei 
Haus. Es muß ja nicht gerade DjVu oder PNG sein (obwohl die jeweils 
excellent komprimieren). Aber PCX ist bspw. hinreichend einfach 
aufgebaut und komprimiert ganz annehmbar.
Persönliche Seite #5231826
Lesenswert?

Ein ziemlich primitiver, aber daher auch mit wenig Softwareaufwand zu 
implementierender Kompressionsalgorithmus wurde in *.pcx-Graphikdateien 
verwendet.

http://www.fileformat.info/format/pcx/egff.htm

Wenn Du das auf monochrome Bitmaps begrenzt, und auf den Header 
verzichtest (alle Bitmaps haben die gleiche Größe, Farbpalette etc. ist 
entbehrlich), sollte, sofern Deine Bilder kein "digitales Rauschen" 
enthalten, das schon einiges bringen.
#5232321
Lesenswert?

Sabberalot W. schrieb:
> Je nach Menge der Bilder koennte man sich auch an einem AT45DB041D,
> einem 512Kx8 Flasch im SO8 Gehause versuchen.

Abgekündigt (EOL) laut Mouser.

Es gibt noch viel größere Flash ICs in SO8 oder vergleichbaren Packages, 
denn die Multi-MB großen PC BIOS (UEFI) werden damit gespeichert. D.h. 
viele MB zu annehmbaren Preisen, allerdings mit 3,3V Betriebsspannung.

Außerdem kann man über MicroSD Sockel nachdenken, dann hätte man GBytes 
Speicherplatz und könnte z.B. Animationen darstellen. Außerdem ließen 
sich darüber Firmware Updates leicht einspielen - einfach SDHC Karte 
wechseln. Die Software gibts mit FATFS praktisch fertich.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren