OpenCv
文章平均质量分 91
OpenCv
1_bit
全网20w+粉丝、知名博主、CSDN博客之星、各大平台签约作者、评委、导师、嘉宾,超15年编程经验
InfoQ签约作者
动漫系列编程作者
自媒体程序员
2021Infoq社区年度社区荣誉共建奖
51、InfoQ专家
2021年火爆C站的大话教程作者
展开
-
[python opencv 计算机视觉零基础到实战] 十八、用鼠标进行画画
一、学习目标了解如何在图片中加入文字了解如何使用鼠标进行图像绘制二、了解如何通过鼠标进行图像绘制2.1 了解putText方法的使用putText方法接收图像,文字内容, 坐标 ,字体,大小,颜色,字体厚度这几个参数,我们用中文的函数原型说明如下:putText(图像,文字内容, 坐标 ,字体,大小,颜色,字体厚度)我们可以首先自定义一张纯黑图片,代码如下:import cv2import numpy as npimg=np.zeros((800,800,3), np.uint8原创 2021-02-03 16:55:24 · 1643 阅读 · 3 评论 -
[python opencv 计算机视觉零基础到实战] 十六、用opencv画画
一、学习目标了解如何使用line方法了解如何使用rectangle方法了解如何使用ellipse方法如有错误欢迎指出~二、了解OpenCV的绘图方法2.1 了解直线绘图方法我们在前两节中有了解使用OpenCV中的矩形绘制,接下来我们了解一下更多的图形绘制方法。我们在OpenCV中若需要绘制直线需要使用line方法,line方法的原型如下:cv2.line(img, pt1, pt2, color[, thickness[, lineType[, shift]]])其中img表示需要原创 2021-01-29 20:17:36 · 1766 阅读 · 1 评论 -
[python opencv 计算机视觉零基础到实战] 七、逻辑运算与应用
一、学习目标了解opencv中图像运算的方法了解opencv中图像运算的运用如有错误欢迎指出~二、了解OpenCV中图像运算的运用2.1 了解and逻辑运算在上一节中,我们了解了基本的图像运算,这一节将了解在opencv将两张图片进行逻辑运算。逻辑运算在编程中较为常见的一种基本运算,在此不在进行赘述。我们首先了解一下opencv中的逻辑与运算,opencv中逻辑与运算与我们基本的逻辑与运算一致,也就是1 and 1为1,1 and 0 为0。我们可以通过一个小示例来直观的感受opencv的a原创 2021-01-01 22:12:37 · 1589 阅读 · 0 评论 -
【python opencv 计算机视觉零基础到实战】二、 opencv文件格式与摄像头读取
一、学习目标了解图片的结构属性了解如何捕获视频了解waitkey的使用方法二、了解opencv的图像属性2.1 图像的属性在我们获取到图像后,可以获取到图像的大小、类型以及通道等信息;通道指的是RGB这三个颜色通道,一幅完整的图像是由单独的红色图像、单独的绿色图像以及单独的蓝色图像组成;一幅图像若绿色通道没有,或者说关闭,它将会偏向其它两个颜色,同理,若其它颜色通道关闭后亦是如此。我们可以操作这些通道信息,完成对图像的编辑。这三个通道的单独值范围都是0-255,显示方式如单独的红色则是(2原创 2020-12-20 15:13:51 · 2151 阅读 · 14 评论 -
[python opencv 计算机视觉零基础到实战] 十一找到图片中指定内容
一、学习目标了解图片内容定位方法matchTemplate使用了解minMaxLoc方法使用如有错误欢迎指出~二、了解从一张图片中找到指定内容的方法2.1 使用matchTemplate函数对图片中的指定内容进行查找有小伙伴可能用过一些辅助软件,帮助我们从一些游戏中找到固定像素,并且去对该像素位置进行点击,随后解放双手。今天这一节所讲解的就是与这个功能相关的内容,对图像中的指定图形元素进行查找,并且选中该元素。我们所使用的方法是matchTemplate。matchTemplate主要是一原创 2021-01-21 13:25:15 · 1848 阅读 · 1 评论 -
[python opencv 计算机视觉零基础到实战] 十二 直方图
一、学习目标了解matplotlib绘图库的使用了解如何通过折线图或者直方图对图表进行绘制了解了通过图标对图片内容进行直观判断如有错误欢迎指出~二、了解图像直方图及其应用2.1 了解matplotlib库在了解图像直方图前我们需要了解一个matplotlib库,matplotlib库和numpy可谓是一对好伴侣,就像泡面伴侣火腿肠一样。matplotlib是一个绘图库,我们将通过matplotlib绘制图像的直方图。为什么图像可以绘制直方图呢?我们可以想一下,图像是由一堆数据组成,既然是原创 2021-01-29 20:15:55 · 1648 阅读 · 2 评论 -
[python opencv 计算机视觉零基础到实战] 十七、用鼠标画画
一、学习目标了解长轴和短轴参数了解旋转角度参数了解起始角度参数了解终止角度参数二、深入了解OpenCV的ellipse方法2.1 纵横椭圆的绘制方法在上一节中我们已经知道了是使用ellipse,ellipse的函数原型如下,为了清晰认识ellipse方法,在此使用了中文代替参数:ellipse(image, 椭圆的中心坐标, 长轴和短轴, 旋转角度, 起始角度, 终止角度, color ,粗细)我们依旧沿用上一节的代码,如下:import cv2import numpy as n原创 2021-01-29 20:18:06 · 1636 阅读 · 0 评论 -
[python opencv 计算机视觉零基础到实战] 十、图片效果毛玻璃
一、学习目标了解高斯模糊的使用方法了解毛玻璃的图片效果添加了解如何自己做一个噪声图片如有错误欢迎指出~二、了解模糊与美颜2.1 使用高斯模糊降噪由于很多小伙伴反应抛开原理或理论讲解使用用法对于初学者来说会很舒服,从本节开始将会以比较简单的方式进行讲解相关API的应用。首先我们有一张图:这张图存在很多的噪点,那如何对改图片进行降噪呢?学过前几节的同学可能对降噪还是挺了解的。可能有些同学会说均值模糊和中值模糊。那我们先试试中值模糊:首先获取图片:import cv2img = c原创 2021-01-19 13:29:05 · 2242 阅读 · 5 评论 -
[python opencv 计算机视觉零基础到实战] 六、图像运算
一、学习目标了解opencv中图像运算的方法了解opencv中图像运算的运用如有错误欢迎指出~二、了解OpenCV中图像运算的运用2.1 了解图像间的加法在opencv中可以使两张图片进行组合相加,使用add方法。两张图片进行相加其实是具体的数值进行运算,从而得到结果。需要注意的是进行运算的图片大小必须一致,例如:以上是我三张图片的尺寸大小数据。每张图片如下:1bit:1bit2:1bit3:我们可以先将图片1bit与图片1bit3做加法运算。opencv提供了add方法给原创 2020-12-29 11:32:01 · 1975 阅读 · 10 评论 -
[python opencv 计算机视觉零基础到实战] 十三 直方图颜色提鲜
一、学习目标了解了均衡化的作用是什么了解灰度、YUV、彩色图片均衡化的方法是使用什么方法了解了合并通道的方法是什么了解了分离通道的方法是什么如有错误欢迎指出~二、了解图像均衡化2.1 了解直方图均衡化图像直方图均衡化主要是对图像中的少数灰度进行压缩,扩展该值的范围,以致于让这个图的对比度调高,使当前图像变得更加清晰。在一张图片中,若整体偏亮,直方图的值应该是在偏右侧,就可能会产生过渡曝光;若一张图像的直方图整体偏暗就会导致直方图呈现数值整体偏左,可能会造成过暗不清晰,所以一张图是否看起来原创 2021-01-29 20:16:29 · 1666 阅读 · 1 评论 -
[python opencv 计算机视觉零基础到实战] 一 opencv的helloworld
前置条件说明:本系列opencv实战教程将从基础到实战,若只是简单学习完python也可以通过该教程完成一般的机器学习编程;文中将会对很多python的基础内容进行讲解,但由于文章定位的原因将不会赘述过多的基础内容,基础内容进行第一次讲解后第二次将不会过多赘述,本文主要讲解的是opencv相关知识。本文系统及环境:本文将在windows7操作系统下以python作为编程语言,完成对opencv的程序编写。python版本是3.8。一、学习目标安装opencv了解什么是计算机视觉了解读取图片的方原创 2020-12-18 22:26:34 · 2563 阅读 · 14 评论 -
[python opencv 计算机视觉零基础到实战] 九、模糊
一、学习目标了解什么是卷积了解模糊的使用方法与应用如有错误欢迎指出~二、了解模糊的应用2.1 了解卷积是什么在本节中,卷积我们不过多的进行深入讲解,我本人对卷积也只是稍有理解,不敢过多的编写太深的内容。在OpenCV中的模糊操作中,模糊需要用到卷积,在此引入贾志刚老师对于OpenCV的基本卷积的讲解。以下是一个基本卷积的图示,第一列是一维数组中每一个位置的值。其中111我们称为卷积核。通过卷积核与一维数组进行计算最终将会得到蓝最下面的蓝色方块内的值。第一位我们照着写下,蓝色区域为1,蓝色方原创 2021-01-18 13:33:37 · 1529 阅读 · 2 评论 -
[python opencv 计算机视觉零基础到实战] 十五 直方图反向投影
一、学习目标了解了直方图反向投影的一般流程了解2D直方图的使用如有错误欢迎指出~二、了解直方图反向投影2.1 了解2D直方图需要对直方图进行反向投影,需要使用2D直方图。2D直方图需要使用calcHist方法。calcHist方法在前两节中已经有了解,现在再来复习一下。首先我们查看calcHist方法的原型。calcHist(images; channels; mask; histSize; ranges[; hist[; accumulate]])calcHist方法中images参原创 2021-01-29 20:17:02 · 1610 阅读 · 1 评论 -
[python opencv 计算机视觉零基础到实战] 八、ROI泛洪填充
一、学习目标了解什么是ROI了解floodFill的使用方法如有错误欢迎指出~二、了解OpenCV中图像ROI的颜色填充2.1 了解ROI是什么ROI指的是region of Interest,翻译过来就是你所感兴趣的区域。弱在一张图片中,你感兴趣的是某一个区域,那么这个区域就可以称为ROI。我们通过一些方法选取了该区域后,可以进行操作;例如颜色填充、图像变换等编辑。先有一张图如下:我们对这张图的激光雕刻机部分感兴趣,那么就可以选取该部分。如何进行选取呢?我们可以通过代码得知该图片的大原创 2021-01-03 22:04:30 · 1659 阅读 · 0 评论 -
[python opencv 计算机视觉零基础到实战] 四、了解色彩空间及其详解
一、学习目标了解什么是色彩空间了解opencv中色彩空间的转换如有错误欢迎指出~二、了解OpenCV中常见的色彩空间2.1 什么是色彩空间色彩空间又可以叫做色域,英文是Color Sapce,是一种人为建立,用于表示色彩的一种“坐标系统”,或者说是一种色彩访问的取值系统,用于描述色彩。了解色彩空间对我们今后使用opencv进行图像处理很重要,在今后对图像处理时将会涉及到色彩空间的内容,所以学习了解色彩空间是有必要的。2.2 RGB颜色空间首先我们了解RGB颜色空间,RGB颜色空间常用于显原创 2020-12-27 15:51:06 · 2181 阅读 · 12 评论 -
[python opencv 计算机视觉零基础到实战] 十九、简易绘画板制作
一、学习目标了解事件编写一个简易绘画板二、了解如何制作简易绘画板2.1 了解鼠标多种事件上一节我们简单的使用opencv的图形绘制方法,用鼠标绘制了一些内容。上一节所响应的是简单的双击事件EVENT_LBUTTONDBLCLK,在OpenCV的鼠标事件中还有很多。以下将列举出来:EVENT_MOUSEMOVE:鼠标滑动EVENT_LBUTTONDOWN:左键单击EVENT_RBUTTONDOWN:右键单击EVENT_MBUTTONDOWN:中间单击EVENT_LBUTTONUP:左原创 2021-02-03 16:57:27 · 1628 阅读 · 3 评论 -
[python opencv 计算机视觉零基础到实战] 五、对象追踪
一、学习目标了解为什么色彩空间的转换那么重要了解opencv中进行对象跟踪的方法如有错误欢迎指出~二、了解OpenCV中使用inRange进行对象跟踪2.1 了解色彩空间的转换为什么那么重要上一节中,我们了解了色彩空间的转换,那为什么要了解色彩空间?上一节中并没有进行说明,这一节将通过色彩空间的转换,使我们能够对一些对象进行追踪;这一节所需要转换的色彩空间是HSV色彩空间,在HSV色彩空间中,不同的颜色有不同的取值范围,通过这些范围可以对一些指定颜色进行过滤捕获,从而实现跟踪。首先我们查看原创 2020-12-28 17:54:26 · 2187 阅读 · 12 评论 -
[python opencv 计算机视觉零基础到实战] 三、numpy与图像编辑
一、学习目标了解图片的通道与数组结构了解使用numpy创建一个图片了解使用numpy对图片的一般操作方法如有错误欢迎指出~二、了解numpy对图像的编辑2.1 了解zeros方法的使用方法并且输入了解uint8类型在前两节中,我们对图像的属性进行了查看,得到了宽、高以及通道,但是我们对整体的图片数据结构还是存在一定的不理解;这一节将加深对图片数据结构上的理解,方便我们接下来的学习。首先我们需要使用numpy创建一张图片,从最基本的操作逐步对图像数据结构进行了解。我们先在代码头部引入所需库原创 2020-12-24 11:10:47 · 2271 阅读 · 10 评论