首页 > 解决方案 > 使用python打开/读取带有颜色的rw2图像?

问题描述

有人可以用颜色打开这个原始文件吗?这是一张图片,我用 numpy、rawpy、fastrawviewer 等尝试了一切。我尝试用颜色打开几乎 3 天,但我失败了。

import numpy as np
import cv2
fd = open('img.rw2', 'rb')
ROWS = 2000
COLS = 2000
f = np.fromfile(fd, dtype=np.uint8,count=ROWS*COLS*4)
im = f.reshape((ROWS, COLS,4))
fd.close()
cv2.imshow('img.rw2', im)
cv2.waitKey()
cv2.destroyAllWindows()

标签: pythonnumpy

解决方案


如果您的图像是 2000x2000 RGB,它将是 12,000,000 字节,但它是 16,000,000。所以试着把它读成 RGBA,而不是 RGB。

im = np.fromfile('img.raw', dtype=np.uint8).reshape((2000,2000,4))

[![在此处输入图像描述][1]][1]

如果图像保存为 RGBA,则需要更正 OpenCV 中的排序,因为这将使用 BGRA -use cv2.cvtColor()


推荐阅读