1 Python-OpenCV 图像基本处理

图像基本处理

在图像处理过程中,最基本的读取图像显示图像,保存图像

读取图片

使用函数 cv2.imread() 读入图像。
cv2.imread():读入图片,共两个参数,第一个参数为要读入的图片文件名(这幅图像应该在此程序的工作路径,
或者给函数提供完整路径,),第二个参数为如何读取图片,
包括 cv2.IMREAD_COLOR:读入一副彩色图片;cv2.IMREAD_GRAYSCALE:以灰度模式读入图片;cv2.IMREAD_UNCHANGED:读入一幅图片,并包括其alpha通道

alpha通道:阿尔法通道是一个8位的灰度通道,该通道用256级灰度来记录图像中的透明度信息,定义透明、不透明和半透明区域,其中白表示不透明,黑表示透明,灰表示半透明。

注意:在使用过程中并非使用这三个变量,你可以使用整数 0,1,-1 分别代表他们。

import numpy as np
import cv2
img=cv2.imread('1.jpg',0)

显示图片

使用函数 cv2.imshow() 显示图像。窗口会自动调整为图像大小。第一个参数是窗口的名字,其次才是我们的图像。你可以创建多个窗口,只要你喜欢,但是必须给他们不同的名字

cv2.imshow('image',img)
cv2.waitKey(0)
#cv2.destroyWindow (‘image’)#释放指定窗口,参数为窗口名 
cv2.destroyAllWindows()#删除建立的全部窗口

运行图片如下所示:
插入图片描述

retval=cv2.waitKey([delay]):键盘绑定函数,共一个参数,表示等待毫秒数,将等待特定的几毫秒,看键盘是否有输入,返回值为ASCII值。如果其参数为0,则表示无限期的等待键盘输入。
1.retval 表示返回值。如果没有按键被按下,则返回-1;如果有按键被按下,则返回该按键的ASCII码
2.delay 表示等待键盘触发的时间,单位是 ms 当该值是负数或者零时,表示无限等待, 该值的默认值为0
在实际使用中,可以通过函数 cv2.waitKey()获取按下的按键,并针对不同的键做出不同的反应,从而实现交互功能。

cv2.waitKey()函数的其他用法

使用 ord()函数获取该特定字符的 ASCII码值,再将该值与cv2.waitKey() 数的返回值进行比较,从而确定是否按下了某个特定的键。
下面的程序将会加载一个灰度图,显示图片,按下’s’键保存后退出,或者``按下 ESC 键退出不保存

import numpy as np
import cv2
img=cv2.imread('1.jpg',0)
cv2.imshow('image',img)
k=cv2.waitKey()
if k==27:#按下ESC(ASCII码是27)键退出
      cv2.destroyAllWindows()
elif  k==ord('s')#按下s键保存后退出
    cv2.imwrite('save.jpg',img)#使用函数 cv2.imwrite() 来保存一个图像。首先需要一个文件名,之后才是你要保存的图像。
      cv2.destroyAllWindows()

图像的另一种显示方法

cv2.namedWindow()先创建一个窗口再加载图像,这种情况下可以调整窗口的大小
cv2.namedWindow(‘窗口名’,默认参数)
当默认参数设为cv2.WINDOW_AUTOSIZE 时窗口大小不可以改变
当为cv2.WINDOW_NORMAL时窗口大小可以改变

cv2.namedWindow('image', cv2.WINDOW_NORMAL)
11 cv2.imshow('image',img)
12 cv2.waitKey(0)
13 cv2.destroyAllWindows()
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值