Hallo Leute! Ich habe ein TFT mit rgb565 Interface. Ansteuerung soweit einfach. Nun möchte ich aber gerne ein JPG Bild (oder ein anderes Format) anzeigen lassen, da ein JPG Bild weniger Speicherplatz als Rohdaten verbraucht. Ist es möglich mit einem Mikrocontroller die RGB Werte der Pixel aus einem JPG Bild auszulesen? Wenn ja, wie? Danke im voraus M.H. PS: Mit dem Format bin ich flexibel. Kann also auch BMP PNG o.ä. sein. Sollte nur ein gängiges Bildformat sein.
M. H. schrieb: > Ist es möglich mit einem Mikrocontroller die RGB Werte der Pixel aus > einem JPG Bild auszulesen? Wenn ja, wie? > > PS: Mit dem Format bin ich flexibel. Kann also auch BMP PNG o.ä. sein. > Sollte nur ein gängiges Bildformat sein. JPG ist kompliziert, das will man nicht selber decodieren. Ob die jpeglib für Deinen Mikrocontroller verfügbar ist, ist natürlich eine Frage des Controllers. PNG ist auch kompliziert, weil es da viele Varianten gibt, auch hier würde die libpng sehr helfen. BMP ist einfach, insbesonders weil es auch RGB565 enthalten kann (kann man z.B. mit GIMP erzeugen). Allerdings bietet es keine sinnvolle Kompression, so dass man gegenüber Rohdaten nicht viel gewinnt. Viele Grüße, Simon
OK. Vielen Dank für die info. Ich habe vor eine ATxmega128a1 zu verwenden. Mit 32MHz. Werde mir mal die libs anschauen.
Ja, der Thread ist schon ein paar Monate alt, aber da ich auch gerade nach Jpeg-C(++)-Bibliotheken für µCs (ARM) gesucht habe, kann ich hier noch meine Ergebnisse anbieten. 1. jpeg-compressor - http://code.google.com/p/jpeg-compressor/ Vielleicht die kompakteste Implementierung für JPEG-Kompression &-Dekodierung Der Encoder ist trotz der geringen Größe sehr schön und recht leicht zu verstehen und zu modifizieren, wenn man die Jpeg-Grundlagen kennt. Es gibt auch einen Patch (http://altdevblogaday.com/2011/04/06/a-smaller-jpg-encoder/), der die Speichernutzung noch etwas optimiert. Es werden wohl maximal 32 KB benötigt und umständliche "malloc()"s eingespart! Der Decoder ist wohl etwas aufwendiger, aber wenigstens nur eine einzelne Datei mit nicht zu vielen Features (im Vergleich zur libjpeg). 2. NanoJPEG - http://keyj.emphy.de/nanojpeg/ Weiterer Minimalansatz eines Dekoders in einer einzelnen Datei. Speicherbedarf ist ziemlich hoch (>>512 kB+Bild), aber man kann einiges optimieren. (sh. Kommentare auf der Homepage) Auf einem ARM mit ggf. externem RAM lässt sich das schon gut nutzen. Ob's auch auf einem AVR läuft bleibt fraglich.
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.