python读写rgb图像

#导入opencv
import cv2
#导入numpy
import numpy as np
#创建一个640*480 的bgr图像
data = np.zeros((480,640,3),dtype=np.uint8)
#每个像素都赋值成红色
data[:] = (0,0,255)
#显示图像
cv2.imshow("text",data)
#每个像素都赋值成绿色
data[:] = (0,255,0)
cv2.imshow('ttt',data)
#保存为png图像
cv2.imwrite('e:/green.png',data,[int(cv2.IMWRITE_PNG_COMPRESSION),9])
#保存为numpy 多维数组
np.save("e:/green.npy",data)
#加载npy多维数组
b = np.load(file='e:/green.npy')
cv2.imshow('green',b)

#把图像转一维数组
c = b.flatten()
print(c)
#保存到文件
np.savetxt('e:/green.txt',c,fmt="%d")
#一维数组转640*480*3的bgr图像
d = np.reshape(c,(480,640,3))
cv2.imshow('reshape',d)

#模拟c语言生成bgr原始文件
with open('e:/raw.bgr','wb') as f:
	f.write(c)

#读二进制bgr文件
f = open('e:/raw.bgr','rb')
e = np.fromfile(f,dtype=np.uint8)
#一维数组转640*480*3的bgr图像
g = np.reshape(e,(480,640,3))
cv2.imshow('read',g)

其他语言生成的bgr原始文件,没有现成的工具可以查看效果,整理一下使用python把其显示出来的相关代码,记录一下,以备后面参考

你可能感兴趣的:(python,python,opencv)