我正在使用 Micro-Manager 1.4 为显微镜使用相机。使用 Python 界面,我设法访问相机、更改曝光时间等,并且可以捕获单个图像。
但是,每个图像都作为 NumPy 数组返回,其中每个像素都表示为单个整数,例如“7765869”。据我在网上找到,这在 Java 中被称为“BufferedImage”,这意味着 RGB 值被编码为:
BufferedImage = R * 2^16 + G * 2^8 + B
我的问题是:我如何使用 Numpy 或 OpenCV 将这种数组转换为更方便的数组,其中每个像素都是 uint8 值的 RGB 三元组?不用说,转换应该尽可能高效。