3

画像処理初心者です。
現在、Mono8 でエンコードされた画像バッファーがあります。

wx.Bitmapを使用して表示しようとしています。ただし、RGB、RGBA、または PNG のドキュメントしか見つかりません。

  • Mono8 バッファを wx.Bitmap() で表示可能な別の形式に変換する方法はありますか?
  • Mono8 画像バッファを表示できる別のウィジェットはありますか?
4

1 に答える 1

2

私はそれを行う方法を見つけました:

Mono8 は、グレースケールで 0 から 255 までのピクセル値のテーブルです。
RGB は、他の色 (赤、緑、青) による同じテーブルです。

したがって、同じ画像は、Mono8 よりも RGB の方が 3 倍多くの値を持ちます。
=> 各ピクセルのコンポーネントに対して同じ値を繰り返します。

rgb = [ v for v in image_buffer for _ in range( 3 ) ]
rgb_ba = bytearray( rgb )
bitmap.FromBuffer( height, width, rgb_ba )

リストの理解を助けてくれた Martijn Pieters に感謝します!

于 2016-05-16T21:47:20.263 に答える