Skip to main content
 首页 » 编程设计

python之将 Mono8 图像缓冲区转换为 wx.Bitmap 中 wxPython 中的可显示格式 Phoenix in Python

2025年04月02日31bonelee

我是图像处理的新手。
我目前有一个用 Mono8 编码的图像缓冲区。

我正在尝试使用 wx.Bitmap 显示它.但是,我只能找到 RGB、RGBA 或 PNG 的文档。

  • 有什么方法可以将 Mono8 缓冲区转换为 wx.Bitmap() 可显示的另一种格式?
  • 是否有另一个小部件能够显示 Mono8 图像缓冲区?

请您参考如下方法:

我已经找到方法了:

Mono8 只是 grayscale 上从 0 到 255 的像素值表。 .
RGB 是根据其他颜色(红、绿、蓝)同一张表。

因此,同样的图像在 RGB 中的值是在 Mono8 中的 3 倍。
=> 对每个像素的分量重复相同的值。

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

感谢 Martijn Pieters 的 help上榜领悟!