Ich kann ein JPEG-Bild laden, es in Bitmap konvertieren und es in einer WX-Anwendung plotten. Es fällt mir jedoch schwer, ein PIL-Bildobjekt in eine Bitmap umzuwandeln, die in eine WX-Anwendung geplottet werden kann.Umwandlung eines PIL-Bildes in WxPython-Bitmap-Bild
Online, der beste Vorschlag, den ich finden konnte, aber so etwas wie
wx.Bitmap(PIL_image.tobytes())
zu tun ist, gibt dies mir den folgenden Fehler
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 59: invalid start byte
oder
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc8 in position 51: invalid continuation byte
jemand eine Hat guter Tipp, wie man diesen Punkt anspricht? Vielen Dank!
Es funktioniert, danke, aber ich hatte es so zu ändern: 'Rückkehr wx.Bitmap.FromBuffer (. Breite, Höhe, image.convert ("RGB") ToBytes())' –
Bist Du sicher dass Sie einen extra Punkt zwischen Bitmap und FromBuffer hinzufügen mussten? Nur um es zu bestätigen. Denn wenn Sie das getan haben, dann wurden einige Änderungen in neueren Versionen von wxPython eingeführt, von denen ich noch keine Ahnung habe. Wie für convert(), nun, tut mir leid, ich habe vergessen, es zurückzugeben. Ich habe es entfernt, weil meine aktuelle Anwendung standardmäßig mit RGB arbeitet, so dass extra convert() nicht benötigt wird. Wenn es vorhanden ist, macht es die Funktion nur weitgehend nutzbar, verlangsamt es aber in anderen Fällen. Ich verwende PIL, um ein Bild von der Kamera vorzubereiten, und dann zeichne ich es auf wx.Panel(). So ist jeder Gebrauch wertvoll. – Dalen
Ja, es gab Änderungen. Ohne den Punkt erhältst du nur eine Warnung. Über die RGB-Konvertierung verstehe ich. Ich habe es nur kommentiert, da es für andere Leute nützlich sein könnte, die Ihre Antwort lesen. –