
Opencv-Python
文章平均质量分 88
opencv-python
YEGE学AI算法
From Zero To Hero!
展开
-
OpenCV-Python 中文教程
OpenCV-Python 中文教程索引目录 I 走进 OpenCV 10详细目录I 走进 OpenCV 101 关于 OpenCV-Python 教程 102 在 在 Windows 上安装 OpenCV-Python 113 在 在 Fedora 上安装 OpenCV-Python 12II OpenCV 中的 Gui 特性 134 图片 134.1 读入图像 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .原创 2021-01-29 17:16:01 · 2383 阅读 · 0 评论 -
[OpenCV-Python] 24 模板匹配
文章目录OpenCV-Python:IV OpenCV中的图像处理24 模板匹配24.1 OpenCV 中的模板匹配24.2 多对象的模板匹配OpenCV-Python:IV OpenCV中的图像处理24 模板匹配目标在本节我们要学习: 1. 使用模板匹配在一幅图像中查找目标 2. 函数:cv2.matchTemplate(),cv2.minMaxLoc()原理 模板匹配是用来在一副大图中搜寻查找模版图像位置的方法。OpenCV 为我们提供了函数:cv2.matchTemplate()原创 2021-02-01 15:43:51 · 387 阅读 · 0 评论 -
[OpenCV-Python] 4 图像读取
OpenCV-Python4 图片目标 • 在这里你将学会怎样读入一幅图像,怎样显示一幅图像,以及如何保存一幅图像 • 你将要学习如下函数:cv2.imread(),cv2.imshow(),cv2.imwrite() • 如果你愿意的话,我会叫你如何使用 Matplotlib 显示一幅图片4.1 读入图像 使用函数 cv2.imread() 读入图像。这幅图像应该在此程序的工作路径,或者给函数提供完整路径,第二个参数是要告诉函数应该如何读取这幅图片。• cv2.IMREAD_COL原创 2021-01-29 17:56:01 · 891 阅读 · 0 评论 -
[OpenCV-Python] 5 视频
OpenCV-Python5 视频目标 • 学会读取视频文件,显示视频,保存视频文件 • 学会从摄像头获取并显示视频 • 你将会学习到这些函数:cv2.VideoCapture(),cv2.VideoWrite()5.1 用摄像头捕获视频 我们经常需要使用摄像头捕获实时图像。OpenCV 为这中应用提供了一个非常简单的接口。让我们使用摄像头来捕获一段视频,并把它转换成灰度视频显示出来。从这个简单的任务开始吧。 为了获取视频,你应该创建一个 VideoCapture 对象。他的参数可原创 2021-01-29 19:55:47 · 384 阅读 · 0 评论 -
[OpenCV-Python] 6 OpenCV 中的绘图函数
OpenCV-Python6 OpenCV 中的绘图函数目标 • 学习使用 OpenCV 绘制不同几何图形 • 你将会学习到这些函数:cv2.line(),cv2.circle(),cv2.rectangle() ,cv2.ellipse() ,cv2.putText() 等。代码上面所有的这些绘图函数需要设置下面这些参数: • img:你想要绘制图形的那幅图像。 • color:形状的颜色。以 RGB 为例,需要传入一个元组,例如: (255,0,0 )代表蓝色。对于灰度图只需要传原创 2021-01-29 20:02:18 · 616 阅读 · 0 评论 -
[OpenCV-Python] 7 把鼠标当画笔
OpenCV-Python7 把鼠标当画笔目标 • 学习使用 OpenCV 处理鼠标事件 • 你将要学习的函数是:cv2.setMouseCallback()7.1 简单演示 这里我们来创建一个简单的程序,他会在图片上你双击过的位置绘制一个圆圈。首先我们来创建一个鼠标事件回调函数,但鼠标事件发生是他就会被执行。鼠标事件可以是鼠标上的任何动作,比如左键按下,左键松开,左键双击等。我们可以通过鼠标事件获得与鼠标对应的图片上的坐标。根据这些信息我们可以做任何我们想做的事。你可以通过执行下列代码查原创 2021-01-29 20:07:52 · 566 阅读 · 0 评论 -
[OpenCV-Python] 8 用滑动条做调色板
OpenCV-Python8 用滑动条做调色板目标 • 学会把滑动条绑定到 OpenCV 的窗口 • 你将会学习这些函数:cv2.getTrackbarPos(),cv2.creatTrackbar()等。8.1 代码示例 现在我们来创建一个简单的程序:通过调节滑动条来设定画板颜色。我们要创建一个窗口来显示显色,还有三个滑动条来设置 B,G,R 的颜色。当我们滑动滚动条是窗口的颜色也会发生相应改变。默认情况下窗口的起始颜色为黑。 cv2.getTrackbarPos() 函数:第一个参原创 2021-01-29 20:12:13 · 312 阅读 · 0 评论 -
[OpenCV-Python] 9 图像的基础操作
OpenCV-Python 核心操作9 图像的基础操作目标 • 获取像素值并修改 • 获取图像的属性(信息) • 图像的 ROI() • 图像通道的拆分及合并几乎所有这些操作与 Numpy 的关系都比与 OpenCV 的关系更加紧密,因此熟练 Numpy 可以帮助我们写出性能更好的代码。(示例将会在 Python 终端中展示,因为他们大部分都只有一行代码)9.1 获取并修改像素值 首先我们需要读入一幅图像:import cv2import numpy as npimg=c原创 2021-01-29 20:23:43 · 435 阅读 · 1 评论 -
[OpenCV-Python] 10 图像上的算术运算
OpenCV-Python 核心操作10 图像上的算术运算目标 • 学习图像上的算术运算,加法,减法,位运算等。 • 我们将要学习的函数与有:cv2.add(),cv2.addWeighted() 等。10.1 图像加法 你可以使用函数 cv2.add() 将两幅图像进行加法运算,当然也可以直接使用 numpy,res=img1+img。两幅图像的大小,类型必须一致,或者第二个图像可以使一个简单的标量值。注意:OpenCV 中的加法与 Numpy 的加法是有所不同的。OpenCV 的加法是原创 2021-01-29 20:33:04 · 307 阅读 · 0 评论 -
[OpenCV-Python] 11 程序性能检测及优化
OpenCV-Python 核心操作11 程序性能检测及优化目标在图像处理中你每秒钟都要做大量的运算,所以你的程序不仅要能给出正确的结果,同时还必须要快。所以这节我们将要学习: • 检测程序的效率 • 一些能够提高程序效率的技巧 • 你要学到的函数有:cv2.getTickCount,cv2.getTickFrequency等除了 OpenCV,Python 也提供了一个叫 time 的的模块,你可以用它来测量程序的运行时间。另外一个叫做 profile 的模块会帮你得到一份关于你的程序原创 2021-01-29 20:39:05 · 643 阅读 · 0 评论 -
[OpenCV-Python] 13 颜色空间转换
OpenCV-Python13 颜色空间转换目标 • 你将学习如何对图像进行颜色空间转换,比如从 BGR 到灰度图,或者从BGR 到 HSV 等。 • 我没还要创建一个程序用来从一幅图像中获取某个特定颜色的物体。 • 我们将要学习的函数有:cv2.cvtColor(),cv2.inRange() 等。13.1 转换颜色空间 在 OpenCV 中有超过 150 中进行颜色空间转换的方法。但是你以后就会、发现我们经常用到的也就两种:BGR↔Gray 和 BGR↔HSV。我们要用到的函数是原创 2021-01-29 20:49:40 · 615 阅读 · 0 评论 -
[OpenCV-Python] 14 几何变换
OpenCV-Python:IV OpenCV中的图像处理14 几何变换目标 • 学习对图像进行各种几个变换,例如移动,旋转,仿射变换等。 • 将要学到的函数有:cv2.getPerspectiveTransform。变换OpenCV 提供了两个变换函数,cv2.warpAffine 和 cv2.warpPerspective,使用这两个函数你可以实现所有类型的变换。cv2.warpAffine 接收的参数是2 × 3 的变换矩阵,而 cv2.warpPerspective 接收的参数是 3原创 2021-01-30 10:49:26 · 300 阅读 · 0 评论 -
[OpenCV-Python] 15 图像阈值
OpenCV-Python:IV OpenCV中的图像处理15 图像阈值目标 • 本节你将学到简单阈值,自适应阈值,Otsu’s 二值化等 • 将要学习的函数有 cv2.threshold,cv2.adaptiveThreshold 等。15.1 简单阈值 与名字一样,这种方法非常简单。但像素值高于阈值时,我们给这个像素赋予一个新值(可能是白色),否则我们给它赋予另外一种颜色(也许是黑色)。这个函数就是 cv2.threshhold()。这个函数的第一个参数就是原图像,原图像应该是灰度图。原创 2021-01-30 10:57:50 · 363 阅读 · 0 评论 -
[OpenCV-Python] 16 图像平滑
文章目录OpenCV-Python:IV OpenCV中的图像处理16 图像平滑图像模糊(图像平滑)16.1 平均16.2 高斯模糊16.3 中值模糊16.4 双边滤波OpenCV-Python:IV OpenCV中的图像处理16 图像平滑目标 • 学习使用不同的低通滤波器对图像进行模糊 • 使用自定义的滤波器对图像进行卷积(2D 卷积)2D 卷积 与一维信号一样,我们也可以对 2D 图像实施低通滤波(LPF),高通滤波(HPF)等。LPF 帮助我们去除噪音,模糊图像。HPF 帮助我们找原创 2021-01-30 11:10:20 · 355 阅读 · 0 评论 -
[OpenCV-Python] 17 形态学转换
文章目录OpenCV-Python:IV OpenCV中的图像处理17 形态学转换17.1 腐蚀17.2 膨胀17.3 开运算17.4 闭运算17.5 形态学梯度17.6 礼帽17.7 黑帽17.8 形态学操作之间的关系OpenCV-Python:IV OpenCV中的图像处理17 形态学转换目标 • 学习不同的形态学操作,例如腐蚀,膨胀,开运算,闭运算等 • 我们要学习的函数有:cv2.erode(),cv2.dilate(),cv2.morphologyEx()等原理 形态学操作是原创 2021-01-30 11:44:21 · 290 阅读 · 0 评论 -
[OpenCV-Python] 18 图像梯度
文章目录OpenCV-Python:IV OpenCV中的图像处理18 图像梯度18.1 Sobel 算子和 Scharr 算子18.2 Laplacian 算子OpenCV-Python:IV OpenCV中的图像处理18 图像梯度目标 • 图像梯度,图像边界等 • 使用到的函数有:cv2.Sobel(),cv2.Schar(),cv2.Laplacian() 等原理 梯度简单来说就是求导。 OpenCV 提供了三种不同的梯度滤波器,或者说高通滤波器:Sobel,Scharr 和原创 2021-01-30 11:49:55 · 338 阅读 · 0 评论 -
[OpenCV-Python] 19 Canny 边缘检测
文章目录OpenCV-Python:IV OpenCV中的图像处理19 Canny 边缘检测19.1 原理19.2 OpenCV 中的 Canny 边界检测OpenCV-Python:IV OpenCV中的图像处理19 Canny 边缘检测目标 • 了解 Canny 边缘检测的概念 • 学习函数 cv2.Canny()19.1 原理Canny 边缘检测是一种非常流行的边缘检测算法,是 John F.Canny 在1986 年提出的。它是一个有很多步构成的算法,我们接下来会逐步介绍。19.原创 2021-01-30 11:54:46 · 344 阅读 · 0 评论 -
[OpenCV-Python] 20 图像金字塔
文章目录OpenCV-Python:IV OpenCV中的图像处理20 图像金字塔20.1 原理20.2 使用金字塔进行图像融合OpenCV-Python:IV OpenCV中的图像处理20 图像金字塔目标 • 学习图像金字塔 • 使用图像创建一个新水果:“橘子苹果” • 将要学习的函数有:cv2.pyrUp(),cv2.pyrDown()。20.1 原理一般情况下,我们要处理是一副具有固定分辨率的图像。但是有些情况下,我们需要对同一图像的不同分辨率的子图像进行处理。比如,我们要在一幅原创 2021-01-30 12:13:49 · 266 阅读 · 0 评论 -
[OpenCV-Python] 21 OpenCV 中的轮廓
文章目录OpenCV-Python:IV OpenCV中的图像处理21 OpenCV 中的轮廓21.1 初识轮廓21.1.1 什么是轮廓21.1.2 怎样绘制轮廓21.1.3 轮廓的近似方法21.2 轮廓特征21.2.1 矩1.2.2 轮廓面积21.2.3 轮廓周长21.2.5 凸包21.2.6 凸性检测21.2.7 边界矩形1.2.8 最小外接圆21.2.9 椭圆拟合21.2.10 直线拟合21.3 轮廓的性质21.3.2 Extent21.3.3 Solidity21.3.4 Equivalent Di原创 2021-01-30 12:34:40 · 828 阅读 · 0 评论 -
[OpenCV-Python] 22 直方图
文章目录OpenCV-Python:IV OpenCV中的图像处理22 直方图22.1 直方图的计算,绘制与分析22.1.1 统计直方图22.1.2 绘制直方图22.1.3 使用掩模22.2 直方图均衡化22.2.1 OpenCV 中的直方图均衡化22.2.2 CLAHE22.3 2D 直方图22.3.1 介绍22.3.2 OpenCV 中的 2D 直方图22.3.3 Numpy 中 中 2D 直方图22.3.4 绘制 2D 直方图22.4 直方图反向投影22.4.1 Numpy 中的算法22.4.2 Op原创 2021-01-30 14:15:37 · 805 阅读 · 0 评论 -
[OpenCV-Python] 23 图像变换
文章目录OpenCV-Python:IV OpenCV中的图像处理23 图像变换23.1 傅里叶变换23.1.1 Numpy 中的傅里叶变换23.1.2 OpenCV 中的傅里叶变换23.1.3 DFT 的性能优化23.1.4 为什么拉普拉斯算子是高通滤波器?OpenCV-Python:IV OpenCV中的图像处理23 图像变换23.1 傅里叶变换目标本小节我们将要学习: • 使用 OpenCV 对图像进行傅里叶变换 • 使用 Numpy 中 FFT(快速傅里叶变换)函数 • 傅里叶原创 2021-01-30 14:27:23 · 453 阅读 · 0 评论