python - python OpenCV:将 png 转换为 16 位 RGBA png 图像以用于电子纸显示
问题描述
使用OpenCV在python中将RGB图像转换为RGBA的方法是什么?我的要求很具体,因为我试图在 E-Paper Display 上显示图像。我需要将图像转换为 16 位 RGBA。我编写的代码正在转换图像,但它是全黑的。我尝试将 1 位深图像转换为 RGBA? NumPy也将这些解决方案转换为 8 位到 16/32 位图像。我必须在 Linux 上使用GMU 图像编辑器手动转换它然后才能工作。由于我正在尝试打开 pdf 并将每个页面转换为图像以将其显示在 E-Paper Diaplay 上。我不能走那条路。
i = cv2.imread(FNAME, cv2.IMREAD_UNCHANGED)
img = np.array(i, dtype=np.uint16)
img *= 256
filename = 'khrgb.png'
cv2.imwrite(filename, img)
解决方案
使用 cv2.cvtColor
rgba=cv2.cvtColor(i,cv2.COLOR_BGR2RGBA)
推荐阅读
- python - pymongo,按日期查找记录并忽略小时分钟
- python - 用条件替换(不删除)字符
- android - Kotlin Android 视图绑定:Kotlin Android 扩展问题
- python - InvalidConfig:`routes_pathname_prefix` 需要在登录页面以 `/` 结尾
- java - MissingResourceException:找不到基本名称资源的捆绑包。controls.controls_res,语言环境
- java - Docker 化多模块 Maven 应用程序?
- visual-studio - 如何在 linux-musl-x64 (Alpine Linux) 的 Visual Studio .NET 核心应用程序中发布?
- docker - How can I separate my Jenkins build in a docker container and keep it clean?
- python - 调整位置编码形状(DETR 模型)以支持批量大小 > 1
- python-3.x - 如何使用 Meson 和 Python 依赖项进行交叉编译?