OpenCV系列学习之(一)

简介: OpenCV系列学习之(一)

一、一般使用Python中的cv2库。

读取图像:img=cv2.imread('name') #彩色 img=cv2.imread('name',cv2.IMREAD_GRAYSCALE) #黑白图像

图像保存:cv2.imwrite('mycat.jpg',img)

视屏:读取视屏:①cv2.VideoCapture{'name.mp4'}可以捕获摄像头,用数字来控制不同设备,例如:0,1 ②如果是视频文件,直接指定路径即可。

cv2库中三种通道为BGR,排序分别为0,1,2,当只保留R通道时,代码如下:

img=cv2.imread('cat.jpg  ')
cur_img=img.copy()
#只保留R
cur_img[:,:,0]=0
cur_img[:,:,1]=0
cv2.imshow('R',cur_img)
cv2.waitKey(0)
cv2.destroyAllWindows()

二、边界填充

边界填充有几种方式,但是效果的是一样的,只是边缘复制的不一样。具体见下图代码

6773f803ed9bc43b1f68bac0bd96b2d7.jpg

0bd008bc497bb131e225c63c2b1569a7.jpg

三、数值计算

当把图片加上数值时,就是图片的每个像素点都加上这个数。

四、图像处理

4。1、图像阈值

a880ac051ba635e9afe7c87f62c4e335.jpg



4.2、图像平滑

1)均值滤波

要构造一个卷积和的矩阵,大小可以为33,5*5…等等。矩阵为 全一矩阵。然后跟图像进行卷积求和。如下程序:

#均值滤波
blur=cv2.blur(img,(3,3))
cv2.imshow('blur',blur)
cv2.waitKey(0)
cv2.destroyAllWindows()

2)方框滤波

#方框滤波,基本和均值滤波一样
box=cv2.boxFilter(img,-1,(3,3),normalize=True)
cv2.imshow('box',box)
cv2.waitKey(0)
cv2.destroyAllWindows()

3)高斯滤波

相当于更重视中间的数值

aussian=cv2.GaussianBlur(img,(5,5),1)

4)中值滤波

median=cv2.medianBlur(img,5)

四、图像形态学操作

1)腐蚀操作

一般图片是二值化数据,即只有黑白两种颜色。

kernel=np.ones((3,3),np.uint8)
erosion=cv2.erode(img,kernel,iterations=1)

kernel为腐蚀所需要的矩阵。

2)膨胀操作

跟腐蚀操作互为相反

a6e57f69e1a152ca0c461ed3d96a048f.jpg


3)开运算与并运算

开运算:先腐蚀,再膨胀

并运算:先膨胀后腐蚀

f7c3e5d75f022de2a7b9374401bd2b8e.jpg

4)梯度运算

梯度=膨胀-腐蚀

4d2270c8425125b9da4cdf7c49e5e1e1.jpg

morphologyEx表示为形态学。

5)礼帽与黑帽

礼帽=原始输入-开运算结果

黑帽=闭运算-原始输入口

2213ee729ea2d303f3fcb1700961aed3.jpg

相关文章
|
6月前
|
机器学习/深度学习 存储 数据库
Python3 OpenCV4 计算机视觉学习手册:6~11(5)
Python3 OpenCV4 计算机视觉学习手册:6~11(5)
79 0
|
6月前
|
存储 资源调度 算法
Opencv(C++)系列学习---SIFT、SURF、ORB算子特征检测
Opencv(C++)系列学习---SIFT、SURF、ORB算子特征检测
308 0
|
6月前
|
机器学习/深度学习 算法 数据可视化
计算机视觉+深度学习+机器学习+opencv+目标检测跟踪+一站式学习(代码+视频+PPT)-2
计算机视觉+深度学习+机器学习+opencv+目标检测跟踪+一站式学习(代码+视频+PPT)
|
6月前
|
机器学习/深度学习 Ubuntu Linux
计算机视觉+深度学习+机器学习+opencv+目标检测跟踪+一站式学习(代码+视频+PPT)-1
计算机视觉+深度学习+机器学习+opencv+目标检测跟踪+一站式学习(代码+视频+PPT)
|
5月前
|
机器学习/深度学习 人工智能 自然语言处理
OpenCV与AI深度学习之常用AI名词解释学习
AGI:Artificial General Intelligence (通用人工智能):是指具备与人类同等或超越人类的智能,能够表现出正常人类所具有的所有智能行为。又被称为强人工智能。
125 2
|
4月前
|
计算机视觉 Python
opencv 处理图像去噪的几种方法学习
OpenCV 提供了多种图像去噪的方法,以下是一些常见的去噪技术以及相应的 Python 代码示例: 均值滤波:使用像素邻域的灰度均值代替该像素的值。
55 0
|
5月前
|
机器学习/深度学习 开发框架 TensorFlow
### 如何系统化学习OpenCV4
### 如何系统化学习OpenCV4
39 0
|
6月前
|
算法 计算机视觉 Python
【OpenCV】-算子(Sobel、Canny、Laplacian)学习
【OpenCV】-算子(Sobel、Canny、Laplacian)学习
126 2
|
6月前
|
存储 计算机视觉
OpenCV—学习基本绘图
OpenCV—学习基本绘图
|
6月前
|
算法 C++ 计算机视觉
Opencv(C++)学习系列---Laplacian拉普拉斯边缘检测算法
Opencv(C++)学习系列---Laplacian拉普拉斯边缘检测算法
271 0