OpenCV读写图像文件


OpenCV的imread函数()和imwrite( )函数能支持各种静态图像文件格式。不同系统支
持的文件格式不一样,但都支持BMP格式,通常还应该支持PNG , JPFG和TIFF格式。

1 通过二维Numpy数组来简单创建一个黑色的正方形图像:

img = np.zeros((3,3),dtype=np.uint8)
print(img)

打印:

[[0 0 0]
 [0 0 0]
 [0 0 0]]

每个像素都由一个8位整数来表示 ,即每个像素值的范围是0~255。

现在利用cv2.cvtColor函数将该图像转换成Blue-green-red ( BGR)格式:

img = cv2.cvtColor(img,cv2.COLOR_GRAY2BGR)
print(img)
print(img.shape)

打印:

[[[0 0 0]
  [0 0 0]
  [0 0 0]]
  
 [[0 0 0]
  [0 0 0]
  [0 0 0]]
  
 [[0 0 0]
  [0 0 0]
  [0 0 0]]]
  
(3, 3, 3)

从这个结果可看出:现在每个像素都由一个三元数组表示,并且每个整型(integer)向
量分别表示一个B、G、R通道。


2 读取一种格式图像文件,然后保存为另一种格式:

image = cv2.imread('cat.1.jpg')
cv2.imwrite('cat.1.png',image)

3 读取图像文件作为灰度图像并保存:

grayImage = cv2.imread('cat.1.jpg',cv2.IMREAD_GRAYSCALE)
cv2.imwrite('cat.1.gray.jpg',grayImage)

前后图像对比:
这里写图片描述
这里写图片描述


4 在窗口显示图像

image = cv2.imread('cat.1.jpg')
cv2.imshow('my image',image)
cv2.waitKey()
cv2.destroyAllWindows()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值