图像处理的基本操作

一、PyCharm中安装OpenCV模块
二、读取图像
1、基本语法

OpenCV提供了用于读取图像的imread()方法,其语法如下:

python 复制代码
image = cv2.imread(filename,flags)
(1)image:是imread方法的返回值,返回的是读取到的图像
(2)filename:要读取的图像的完整文件名
(3)flags:读取图像类型的标记。默认值为1,表示读取的是彩色图像;为0时表示读取的灰度图像
2、示例

读取当前目录下的图像

python 复制代码
imort  cv2
image = cv2.imread("001.png",1)
print(image)

输出结果:

二、显示图像
1、基本语法

OpenCV提供了imShow()方法、waitKey()方法和destroyAllWindows()方法

(1)imShow()方法
python 复制代码
cv2.imShow(winname,mat)
(1)winname:显示图像的窗口名称
(2)mat:要显示的图像
(2)waitKey()方法

用于等待用户按下键盘上按键的时间。当用户按下键盘上的任意按键时,将执行waitKey方法,并且获取waitKey方法的返回值。其语法格式如下:

python 复制代码
retval = cv2.waitKey(delay)
(1)retval:与被按下的按键相对应的ASCII码
(2)delay:等待用户按下键盘上按键的时间,单位为毫秒(ms)。当delay的值为负数、0或者为空时,表示无限等待用户按下键盘上按键的时间
(3)destroyAllWindows()方法

用于销毁所有正在显示图像的窗口。其语法如下:

python 复制代码
cv2.destroyAllWindows()
2、示例
python 复制代码
import cv2

image = cv2.imread('E:/images/2.png')
print(image)
cv2.imshow('image', image)  //在名为image的窗口中显示图像
cv2.waitKey(2000)  //等待用户按下按键的时间为2秒
cv2.destroyWindow() //销毁所有窗口

注意:
(1)显示图像的窗口名称不能为中文
(2)为了能够正常显示图像,要在cv2.imShow()之后紧跟cv2.waitKey()
三、保存图像
1、基本用法

OpenCV提供了用于按照指定路径保存图像的imwrite()方法,其语法格式如下:

python 复制代码
cv2.imwrite(filename,img)
(1)filename:保存图像时所用的完整路径
(2)img:要保存的图像
2、示例
python 复制代码
import cv2

image = cv2.imread('E:/images/2.png')
cv2.imwrite("E:/images/22222.png", image)
四、获取图像属性
1、常用属性
(1)shape

如果是彩色图像,那么获取的是一个由图像的像素列数、像素行数和通道数所组成的数组;如果是灰度图像,那么

获取的是一个包含图像的像素列数、像素行数的数组

(2)size

获取的是图像包含的像素个数,其值为"像素列数 × 像素行数 × 通道数 "。灰度图像的通道数是1

(3)dtype

获取的是图像的数据类型

2、示例
python 复制代码
import cv2

image = cv2.imread('E:/images/2.png')
print("获取彩色图像的属性:")
print("shape: ", image.shape)
print("size:",image.size)
print("dtype:", image.dtype)

image_gray = cv2.imread('E:/images/2.png',0)
print("获取灰度图像的属性:")
print("shape: ", image_gray.shape)
print("size:",image_gray.size)
print("dtype:", image_gray.dtype)
五、总结
相关推荐
whoarethenext1 小时前
C++ OpenCV 学习路线图
c++·opencv·学习
jndingxin15 小时前
OpenCV CUDA模块图像处理------创建一个模板匹配(Template Matching)对象函数createTemplateMatching()
图像处理·人工智能·opencv
吴声子夜歌17 小时前
OpenCV——Mat类及常用数据结构
数据结构·opencv·webpack
新知图书21 小时前
OpenCV为图像添加边框
人工智能·opencv·计算机视觉
空中湖1 天前
免费批量图片格式转换工具
图像处理·python·程序人生
东皇太星2 天前
SIFT算法详细原理与应用
图像处理·算法·计算机视觉
audyxiao0012 天前
计算机视觉顶刊《International Journal of Computer Vision》2025年5月前沿热点可视化分析
图像处理·人工智能·opencv·目标检测·计算机视觉·大模型·视觉检测
..活宝..2 天前
【Emgu CV教程】11.2、Scharr边缘检测
图像处理·计算机视觉·c#·emgu cv·图像分析
whoarethenext2 天前
使用 C/C++ 和 OpenCV 实现滑动条控制图像旋转
c语言·c++·opencv
SuperW2 天前
Opencv中的copyto函数
人工智能·opencv·计算机视觉