OpenCV-Python官方教程-01-图片的读,显示和保存

图片的读,显示和保存:

这里用到了三个函数:cv2.imread();cv2.imshow();cv2.imwrite()

  • cv2.imread(param1,param2):
    param1:图像的地址,可以是相对路径,亦或绝对路径。注意:路径中不可以出现中文,否则会报错!
    param2:常用的有三个:(1)cv2.IMREAD_COLOR:读入一幅彩色图像。图像的透明度会被忽略,这是默认参数。(2)cv2.IMREAD_GRAYSCALE:以灰度模式读入图像。(3)cv2.IMREAD_UNCHANGED:读入一幅图像,不改变通道数,包括图像的alpha通道(透明度)。

  • cv2.imshow(param1,param2):
    param1:窗口的名字;param2:cv2.imread()读取的图像。
    窗口显示图像,窗口会根据图像的大小进行调节。如果图像过大,无法全部显示,这时候我们需要调用另外一个函数,来调节窗口的大小:cv2.namedWindow(param1,param2),其中param1代表窗口的名字;param2是窗口的调节方式:(1)cv2.WINDOW_NORMAL窗口大小可以改变;(2)cv2.WINDOW_AUTOSIZE窗口大小不可以改变,函数默认的是这种方式;
    这里还有两个函数可能会用到:(1)cv2.waitKey(param) 是一个键盘绑定函数。param是毫秒级的时间尺度。函数等待特定的几毫秒,看是否有键盘输入。时间之内,如果按下任意键,这个函数会返回按键的ASCII码值,程序将会继续运行。如果键盘没有输入,返回值-1。如果我们param为0,那它将会无限期的等待键盘输入。它也可以被用来检测特定键是否被按下,例如按键s是否被按下等。(2)cv2.destroyAllWindows() 用来删除任何已建立的窗口。如想要删除特定的窗口可以使用cv2.destroyWindow(),在括号内输入你想删除的窗口名即可。

  • cv2.imwrite(param1,param2):
    param1:保存图像的路径,param2:需要保存的图像。

下面我们来看示例代码:

import cv2
img = cv2.imread('x.png')
img1 = cv2.imread('x.png',cv2.IMREAD_COLOR)
img2 = cv2.imread('x.png',cv2.IMREAD_GRAYSCALE)
img3 = cv2.imread('x.png',cv2.IMREAD_UNCHANGED)
print (img.shape)
print (img1.shape)
print (img2.shape)
print (img3.shape)
cv2.namedWindow('img1',cv2.WINDOW_NORMAL)
cv2.namedWindow('img2',cv2.WINDOW_AUTOSIZE)
cv2.namedWindow('img3')
cv2.imshow('img1',img1)
cv2.imshow('img2',img2)
cv2.imshow('img3',img3)
cv2.waitKey(0)
# wait for ESC key to exit
if k == 27:
    cv2.destroyAllWindows()
# wait for 's' key to save and exit
elif k == ord('s'):
    cv2.imwrite('x_gray.jpg',img2)
    cv2.destroyAllWindows()

结果:

(319, 319, 3)
(319, 319, 3)
(319, 319)
(319, 319, 4)

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值