Guten Morgen zusammen :D
Ich möchte eine JPG Array in ein BMP Array umwandeln. Kennt jemand eine
gute Library welche mir das machen kann?
Ich brauche das Bitmap-Array um das Bild an einem Display anzeigen zu
können, das JPG-Array erhalte ich von einem kleinen Kameramodul.
Ich muss also nur die Umwandlung von JPG-Array ins BMP-Array vornehmen,
der rest funktioniert bereits.
Danke schon im voraus für jegliche Hilfe
Mit freundlichen Grüssen ME:D
Moin,
Hab's noch nicht selbst gemacht, aber ich haett' erstmal die libjpeg im
Verdacht, das zu koennen. Soll das auf der Zielhardware (welcher) laufen
oder aufm PC - da waere ImageMagick eine Moeglichkeit?
Gruss
WK
Dergute W. schrieb:> Soll das auf der Zielhardware (welcher) laufen> oder aufm PC
Schlussundendlich möchte ich das BMP-Array an einem Display anzeigen,
die Hardware wurde soweit fertig gestellt. Mir fehlt nur noch die
Umwandlung vom JPG-Array ins BMP-Array.
guest schrieb:> libjpeg.sourceforge.net>> https://github.com/nothings/stb
Danke, aber wie wäre es mit einer kleinen Beschreibung?
Bonnard schrieb:> Danke, aber wie wäre es mit einer kleinen Beschreibung?
Bitte schön: Beides Links enthalten Source Code zum Dekodieren von JPEG
inklusive Dokumentation.
Genau so hilfrfeich wie Deine Beschreibung vom Projekt übrigens,
wenn der µC/SOC zu klein gewählt wurde scheitert JPEG Dekodierung am RAM
oder an Perfromance.
Moin,
Bonnard schrieb:> Schlussundendlich möchte ich das BMP-Array an einem Display anzeigen,> die Hardware wurde soweit fertig gestellt. Mir fehlt nur noch die> Umwandlung vom JPG-Array ins BMP-Array.
Achso, ja dann isses ganz klar. Also ein Display. Aha - interessant; die
Hardware auch schon fertig. Super! Ja, logo - einfach nur noch das
JPG-Array umwandeln. Ist ganz simpel. Nee - ist eh' klar, ne....Kein
Ding und so.
SCNR,
WK
Jim M. schrieb:> Genau so hilfrfeich wie Deine Beschreibung vom Projekt übrigens,> wenn der µC/SOC zu klein gewählt wurde scheitert JPEG Dekodierung am RAM> oder an Perfromance.
uP ist STM32, denke nicht das dieser zu "schwach" ist.
... na ja, wenn die Konvertierung im Controller machen magst, muß
mindestens das JPEG und das BMP im RAM gehalten werden.... Je nachdem
welchen STM32 du nutzt kann das schon mal sehr eng werden.....
Ralph S. schrieb:> ... na ja, wenn die Konvertierung im Controller machen magst, muß> mindestens das JPEG und das BMP im RAM gehalten werden.... Je nachdem> welchen STM32 du nutzt kann das schon mal sehr eng werden.....
Oke, also habe den STM32F407 verlötet, was denkst du? reicht das?
.-. schrieb:> du bist ja sehr sparsam mit deinen Infos...
uP: STM32F407
Display: NHD-2.4-240320
Kamera: Mini TTL Serial JPEG von Adafruit (leider keine genaue Angabe,
jedoch ist hier das Datasheet -->
https://cdn-shop.adafruit.com/product-files/1386/1386+v2+datasheet.pdf)
Sonst noch was?
Nun zurück zur Frage, kennt jemand eine gute und einfach zu verstehende
Library zur Umwandlung von JPG-Arrays in Bitmap-Arrays?
Wäre euch sehr dankbar:)
Mfg Bonnard P.
http://www.elm-chan.org/fsw/tjpgd/00index.html
Ich hab damit noch nicht gearbeitet, aber die Projekte vom Meister Chan
aus dem fernen Osten stehen immer für sehr gute Qualität.
Sajonara
Falk B. schrieb:> http://www.elm-chan.org/fsw/tjpgd/00index.html>> Ich hab damit noch nicht gearbeitet, aber die Projekte vom Meister Chan> aus dem fernen Osten stehen immer für sehr gute Qualität.>> Sajonara
oke danke, werd mich da mal ein bisschen schlau machen :D
Bonnard schrieb:> Nun zurück zur Frage, kennt jemand eine gute und einfach zu verstehende> Library zur Umwandlung von JPG-Arrays in Bitmap-Arrays?
Liest du überhaupt, was man dir antwortet?
mar IO schrieb:> Beitrag "jpg mit STM32 dekodieren"
In diesem Beitrag werden 2 kleine Libraries erwähnt, die ganau dafür
gedacht sind. Und niemand wird probieren, dir was fertiges zu schreiben
für einen Controller, der nur 64k CCRAM hat und 128k normalen RAM - Viel
Spass dabei.
Mein Tipp wäre, das du erstmal die 128k komplett von allen anderen
Variablen freiräumst, die du in den CCRAM verlegst.
Ob dann 128k ausreichen, darin ein JPG in RAW zu entpacken und dann auf
den Schirm zu werfen, wirst du wohl ausprobieren müssen. Ein STM32F429
wäre da wohl ein wenig geeigneter, zumal da ein LCD Interface schon bei
ist. Und das Disco F429 hat sogar schon dicken SDRAM onboard.
Moin,
Oha, kaum dass man mit einer Hilti arbeitet, dann lassen sich sogar
hydraulisch einzelne getrocknete Trauben aus Riechorganen ziehen.
Neben den Loesungen, die scheinbar schon direkt fuer den Prozessor
existieren, waere es eine ganz verrueckte Idee, z.b. bei der libjpeg
einfach mal in das File mit dem hochverdaechtigen Namen example.c zu
gucken. Da koennte man dann sogar Kommentare wie den folgenden (steht
ungefaehr in Filemitte ) erblicken:
Also: Man muss evtl. garnicht die komplette, unkomprimierte Bitmap im
Speicher halten; wenn das Display nicht regelmaessig refresht werden
muss.
Gruss
WK
Bonnard schrieb:> Ich möchte eine JPG Array in ein BMP Array umwandeln.-. schrieb:> du bist ja sehr sparsam mit deinen Infos...
immer noch, kein einziges Wort über die Bildgröße!
soweit ich weiss arbeitet JPG mit 24-bit Farben, das BMP erwartet pro
Pixel ähnliches :)
Wenn also nicht mal die Bildgröße genannt wurde, wie soll man da den RAM
Bedarf nur fürs BMP abschätzen?
X-pix Y-pix 3 Byte fürs BMP + Header
Joachim B. schrieb:> immer noch, kein einziges Wort über die Bildgröße!
Sei mal etwas beweglicher! Der Unterhaltungswert des Threads ist doch
viel höher, wenn du etwas rätseln musst. Und außerdem ist Freitag :-)
Das Display hat 320*240 Pixel und die Kamera kann man auch auf dieses
Format zwingen. Also wird es das wohl sein. Das BMP kann er sofort nach
Umwandlung einer JPG-Gruppe (8 Zeilen) stückweise raus schieben. Nur das
JPG wird er komplett zwischenspeichern müssen, da die Kamera das seriell
per RS232 raus wirft.
Ich mach noch mal einen Eimer Popcorn.
Draco schrieb:> Hast du es noch immer nicht hinbekommen?
Wenn du so gut bist, da mach es gerade...
Wenn du nicht helfen willst, gerne Klappe halten.! Danke
Bonnard schrieb:> Draco schrieb:>> Hast du es noch immer nicht hinbekommen?>> Wenn du so gut bist, da mach es gerade...>> Wenn du nicht helfen willst, gerne Klappe halten.! Danke
Entschuldige mal, du machst drei verschiedene Threads auf, kommst mit
keinen Info. Und nein... Ich würde es nicht machen, weil es dafür ganz
andere Ansätze gibt.
Wo sind denn die ganzen Infos? Wo ist denn deine Bereitschaft auf das
obig genannte einzugehen?
Sorry, ich bin raus!
kommt halt drauf an was mit dem Bild alles passieren soll ... nur
Anzeigen geht wohl mit der Lib Line by Line, dann nur noch ans LCD raus
schieben. Das JPG musser halt puffern.
Wenn da noch z.B. Filter angewendet werden sollen wirds da dann enger.
Hab sowas vor Jahren mal mit nem Mega32 gemacht und Sobel-Filter für
Objekterkennung drüber laufen lassen ... ging, aber nur weil ich extern
n EDO-RAM Riegel drangehängt habe.