(一)openCV图像入门

1、目标

  1. 在这里,您将学习如何读取图像,如何显示图像以及如何将其保存回
  2. 您将学习以下功能:cv.imread()cv.imshow()cv.imwrite()

2、常用方法

1)  cv.imread()读取对象

              第二个参数是一个标志,用于指定读取图像的方式

    注意:除了这三个标志,您可以分别简单地传递整数1、 0 或 -1

import numpy as np

import cv2 as cv

# Load a color image in grayscale

img = cv.imread('messi5.jpg', 0) # 如果路径错误 不会出现错误 print img 会是None

2)cv.imshow() 展示图像

           使用这个方法展示图片是,窗口将适应图片的大小

           第一个参数是窗口名,字符串

           第二个参数是图片

           可以有多个窗口,但窗口名必须不相同

cv.imshow(‘window-name’,img)

cv.waitKey(0)

cv.destroyAllWindows()

3)cv.waitKey()键盘绑定功能

是键盘绑定功能。它的参数是时间(以毫秒为单位)。该函数将为任何键盘事件等待指定的毫秒数。如果在此期间按任意键,程序将继续。如果传递 0,它将无限期地等待击键。还可以将其设置为检测特定的按键,例如是否按下了按键a,我们将在下面讨论。

注意

        除了绑定键盘事件之外,此功能还处理许多其他GUI事件,因此必须使用它来实际显示图像。

4)cv.destroyAllWindows()

         只会破坏我们创建的所有窗口。,

5)cv.destroyWindow()

          如果要销毁任何特定的窗口 ,在其中传递确切的窗口名称作为参数。

注意

在特殊情况下,您可以创建一个空窗口,然后再将图像加载到该窗口。在这种情况下,您可以指定窗口是否可调整大小。这是通过功能cv.namedWindow()完成的。默认情况下,该标志为cv.WINDOW_AUTOSIZE。但是,如果将标志指定为cv.WINDOW_NORMAL,则可以调整窗口大小。当图像尺寸过大以及向窗口添加跟踪栏时,这将很有帮助。

# cv.WINDOW_NORMAL
# cv.WINDOW_AUTOSIZE
# cv.WINDOW_FREERATIO
# cv.WINDOW_FULLSCREEN
# cv.WINDOW_GUI_EXPANDED
# cv.WINDOW_KEEPRATIO
# cv.WINDOW_OPENGL

请参见下面的代码:

cv.namedWindow('image',cv.WINDOW_NORMAL)

cv.imshow('image',img)

cv.waitKey(0)

cv.destroyAllWindows()

6)cv.imwrite() 保存图像

        第一个参数是文件名

        第二个参数是您要保存的图像

cv.imwrite('messigray.png',img)

        这会将图像以PNG格式保存在工作目录中

7)总结

             在下面的程序中,以灰度加载图像,显示图像,按 “s” 保存图像并退出,或者按ESC键直接退出而不保存

import numpy as np

import cv2 as cv

img = cv.imread('messi5.jpg',0)

cv.imshow('image', img)

k = cv.waitKey(0)

if k == 27:                     # wait for ESC key to exit

cv.destroyAllWindows()

elif k == ord('s'):               # wait for 's' key to save and exit

cv.imwrite('messigray.png', img)

cv.destroyAllWindows()

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值