自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 资源 (3)
  • 收藏
  • 关注

原创 Opencv4 -Python官方教程学习笔记40---相机校准

目标在本节中,我们将学习 - 由相机引起的失真类型, - 如何找到相机的固有和非固有特性 - 如何根据这些特性使图像不失真基础一些针孔相机会给图像带来明显的失真。两种主要的变形是径向变形和切向变形。 径向变形会导致直线出现弯曲。距图像中心越远,径向畸变越大。例如,下面显示一个图像,其中棋盘的两个边缘用红线标记。但是,您会看到棋盘的边框不是直线,并且与红线不匹配。所有预期的直线都凸出。有关更多详细信息,请访问“失真(光学)”。径向变形可以表示成如下:同样,由于摄像镜头未完全平行于成像平面对齐,因此

2020-07-26 15:20:28 487

原创 Opencv4 -Python官方教程学习笔记39---光流

目标了解光流的概念及其使用Lucas-Kanade方法的估计。 - 我们将使用cv.calcOpticalFlowPyrLK()之类的函数来跟踪视频中的特征点。 - 我们将使用cv.calcOpticalFlowFarneback()方法创建一个密集的光流场。光流光流是由物体或照相机的运动引起的两个连续帧之间图像物体的视运动的模式。它是2D向量场,其中每个向量都是位移向量,表示点从第一帧到第二帧的运动。...

2020-07-25 11:16:42 461 1

原创 Opencv4 -Python官方教程学习笔记38---meanshift和camshift

Meanshift和Camshift目标将学习用于跟踪视频中对象的Meanshift和Camshift算法。MeanshiftMeanshift背后的直觉很简单,假设你有点的集合。(它可以是像素分布,例如直方图反投影)。你会得到一个小窗口(可能是一个圆形),并且必须将该窗口移到最大像素密度(或最大点数)的区域。如下图所示:初始窗口以蓝色圆圈显示,名称为“C1”。其原始中心以蓝色矩形标记,名称为“C1_o”。但是,如果找到该窗口内点的质心,则会得到点“C1_r”(标记为蓝色小圆圈),它是窗口的真实质

2020-07-25 10:11:12 174

原创 Opencv4 -Python官方教程学习笔记36---特征匹配+单应性查找对象

目标将把calib3d模块中的特征匹配和findHomography混合在一起,以在复杂图像中找到已知对象。基础那么我们在上一环节上做了什么?我们使用了queryImage,找到了其中的一些特征点,我们使用了另一个trainImage,也找到了该图像中的特征,并且找到了其中的最佳匹配。简而言之,我们在另一个混乱的图像中找到了对象某些部分的位置。此信息足以在trainImage上准确找到对象。为此,我们可以使用calib3d模块中的函数,即cv.findHomography()。如果我们从两个图像中传

2020-07-24 12:10:11 212 1

原创 Opencv4 -Python官方教程学习笔记35---特征匹配

目标我们将在OpenCV中使用Brute-Force匹配器和FLANN匹配器 。我们将在OpenCV中使用Brute-Force匹配器和FLANN匹配器蛮力匹配器很简单。它使用第一组中一个特征的描述符,并使用一些距离计算将其与第二组中的所有其他特征匹配。并返回最接近的一个。对于BF匹配器,首先我们必须使用cv.BFMatcher()创建BFMatcher对象。 它需要两个可选参数。第一个是normType,它指定要使用的距离测量。默认情况下为cv.NORM_L2。对于SIFT,SURF等(也有cv.

2020-07-24 11:43:58 321

原创 Opencv4 -Python官方教程学习笔记34---ORB

理论作为OpenCV的狂热者,关于ORB的最重要的事情是它来自“ OpenCV Labs”。该算法由Ethan Rublee,Vincent Rabaud,Kurt Konolige和Gary R. Bradski在其论文《ORB:SIFT或SURF的有效替代方案》中提出。2011年,正如标题所述,它是计算中SIFT和SURF的良好替代方案成本,匹配性能以及主要是专利。是的,SIFT和SURF已获得专利,你应该为其使用付费。但是ORB不是!!!ORB基本上是FAST关键点检测器和Brief描述符的融合,

2020-07-23 10:34:40 409

原创 Opencv4 -Python官方教程学习笔记33---BRIEF

理论我们知道SIFT使用128维矢量作为描述符。由于它使用浮点数,因此基本上需要512个字节。同样,SURF最少也需要256个字节(用于64像素)。为数千个功能部件创建这样的向量会占用大量内存,这对于资源受限的应用程序尤其是嵌入式系统而言是不可行的。内存越大,匹配所需的时间越长。但是实际匹配可能不需要所有这些尺寸。我们可以使用PCA,LDA等几种方法对其进行压缩。甚至使用LSH(局部敏感哈希)进行哈希的其他方法也可以将这些SIFT描述符中的浮点数转换为二进制字符串。这些二进制字符串用于使用汉明距离匹配要

2020-07-23 08:46:36 200

原创 Opencv4 -Python官方教程学习笔记32---FAST角点检测器

目标在本章中, - 我们将了解FAST算法的基础知识。 - 我们将使用OpenCV功能对FAST算法进行探索。理论我们看到了几个特征检测器,其中很多真的很棒。但是,从实时应用程序的角度来看,它们不够快。最好的例子是计算资源有限的SLAM(同时定位和制图)移动机器人使用FAST进行特征检测1.选择图像中是否要识别为兴趣点的像素p,使其强度为Ip2.选择适当的阈值t3.考虑被测像素周围有16个像素的圆圈。(见下图)4.现在,如果圆中存在一组(共16个像素)n个连续的像素,它们均比Ip+t亮,或者

2020-07-22 11:33:35 269

原创 Opencv4 -Python官方教程学习笔记31---SURF

目标在这一章当中, - 我们将了解SURF的基础 - 我们将在OpenCV中看到SURF函数理论在上一章中,我们看到了SIFT用于关键点检测和描述符。但相对缓慢,人们需要更多的加速版本。2006年,三个人,H .Tuytelaars,T. and Van Gool,L,发表了另一篇论文,“SURF:加速健壮的特征”,引入了一种名为“SURF”的新算法。正如名字所表明的那样,它是一个加速版本的SIFT。在SIFT中,Lowe用高斯差近似高斯的拉普拉斯算子来寻找尺度空间。SURF走得更远,使用Box F

2020-07-22 11:05:14 1127 2

原创 Opencv4 -Python官方教程学习笔记30---SIFT尺度不变特征变换

目标在这一章当中, - 我们将学习SIFT算法的概念 - 我们将学习找到SIFT关键点和描述算符。理论Harris这样的拐角检测器。它们是旋转不变的,这意味着即使图像旋转了,我们也可以找到相同的角。很明显,因为转角在旋转的图像中也仍然是转角。但是缩放呢?如果缩放图像,则拐角可能不是角。例如,检查下面的简单图像。在同一窗口中放大小窗口中小图像中的拐角时,该角是平坦的。因此,Harris拐角不是尺度不变的。因此,在2004年,不列颠哥伦比亚大学的D.Lowe在他的论文《尺度不变关键点中的独特图像特征》

2020-07-22 10:30:50 333

原创 Opencv4 -Python官方教程学习笔记29---Shi-tomas拐角检测器和益于跟踪的特征

目标在本章中, - 我们将学习另一个拐角检测器:Shi-Tomasi拐角检测器 - 我们将看到以下函数:cv.goodFeaturesToTrack()理论在上一章中,我们看到了Harris Corner Detector。1994年下半年,J。Shi和C. Tomasi在他们的论文《有益于跟踪的特征》中做了一个小修改,与Harris Harris Detector相比,显示了更好的结果。哈里斯角落探测器的计分功能由下式给出:取而代之的是,史托马西提出:如果大于阈值,则将其视为拐角。如果像在Har

2020-07-21 10:46:37 138

原创 Opencv4 -Python官方教程学习笔记28---Harris角点检测

目标在本章中, - 我们将了解”Harris Corner Detection”背后的概念。 - 我们将看到以下函数:cv.cornerHarris(),cv.cornerSubPix()理论Harris创建了一个分数,基本上是一个等式,它将确定一个窗口是否可以包含一个角。其中:因此,这些特征值的值决定了区域是拐角,边缘还是平坦。当|R|较小,这在λ1和λ2较小时发生,该区域平坦。当R<0时(当λ1>>λ2时发生,反之亦然),该区域为边。当R很大时,这发生在λ1和

2020-07-20 11:32:41 204

原创 Opencv4 -Python官方教程学习笔记27---图像分割与Watershed算法

目标我们将学习使用分水岭算法实现基于标记的图像分割 - 我们将看到:cv.watershed()理论任何灰度图像都可以看作是一个地形表面,其中高强度表示山峰,低强度表示山谷。你开始用不同颜色的水(标签)填充每个孤立的山谷(局部最小值)。随着水位的上升,根据附近的山峰(坡度),来自不同山谷的水明显会开始合并,颜色也不同。为了避免这种情况,你要在水融合的地方建造屏障。你继续填满水,建造障碍,直到所有的山峰都在水下。然后你创建的屏障将返回你的分割结果。这就是Watershed背后的“思想”。你可以访问Wat

2020-07-19 14:56:07 658 1

原创 Opencv4 -Python官方教程学习笔记26---霍夫圈变换

目标我们将学习使用霍夫变换来查找图像中的圆。 - 我们将看到以下函数:cv.HoughCircles()理论圆在数学上表示为(x−xcenter)2+(y−ycenter)2=r2,其中(xcenter,ycenter)是圆的中心,r是圆的半径。从等式中,我们可以看到我们有3个参数,因此我们需要3D累加器进行霍夫变换,这将非常低效。因此,OpenCV使用更加技巧性的方法,即使用边缘的梯度信息的Hough梯度方法。我们在这里使用的函数是cv.HoughCircles()。它有很多参数,这些参数在文档

2020-07-19 10:50:37 119

原创 Opencv4 -Python官方教程学习笔记25---霍夫线变换

目标在这一章当中, - 我们将了解霍夫变换的概念。 - 我们将看到如何使用它来检测图像中的线条。 - 我们将看到以下函数:cv.HoughLines(),cv.HoughLinesP()理论如果可以用数学形式表示形状,则霍夫变换是一种检测任何形状的流行技术。即使形状有些破损或变形,也可以检测出形状。我们将看到它如何作用于一条线。一条线可以表示为y=mx+c或以参数形式表示为ρ=xcosθ+ysinθ,其中ρ是从原点到该线的垂直距离,而θ是由该垂直线和水平轴形成的角度以逆时针方向测量(该方向随您如何

2020-07-17 14:17:35 149

原创 Opencv4 -Python官方教程学习笔记24---模板匹配

目标在本章中,您将学习 - 使用模板匹配在图像中查找对象 - 你将看到以下功能:cv.matchTemplate(),cv.minMaxLoc()理论模板匹配是一种用于在较大图像中搜索和查找模板图像位置的方法。为此,OpenCV带有一个函数cv.matchTemplate()。 它只是将模板图​​像滑动到输入图像上(就像在2D卷积中一样),然后在模板图像下比较模板和输入图像的拼图。 OpenCV中实现了几种比较方法。(您可以检查文档以了解更多详细信息)。它返回一个灰度图像,其中每个像素表示该像素的邻域

2020-07-17 09:31:41 263

原创 Opencv4 -Python官方教程学习笔记23---傅里叶变换

目标在本节中,我们将学习 - 使用OpenCV查找图像的傅立叶变换 - 利用Numpy中可用的FFT函数 - 傅立叶变换的某些应用程序 - 我们将看到以下函数:cv.dft(),cv.idft()等理论傅立叶变换用于分析各种滤波器的频率特性。对于图像,使用2D离散傅里叶变换(DFT)查找频域。一种称为快速傅立叶变换(FFT)的快速算法用于DFT的计算。关于这些的详细信息可以在任何图像处理或信号处理教科书中找到。请参阅其他资源部分。对于正弦信号x(t)=Asin(2πft),我们可以说f是信号的频率

2020-07-16 15:06:31 326

原创 Opencv4 -Python官方教程学习笔记22---二维直方图

目标查找和绘制2D直方图。介绍在第一篇文章中,我们计算并绘制了一维直方图。 之所以称为一维,是因为我们仅考虑一个特征,即像素的灰度强度值。 但是在二维直方图中,您要考虑两个特征。 通常,它用于查找颜色直方图,其中两个特征是每个像素的色相和饱和度值。已经有一个python示例(samples / python / color_histogram.py)用于查找颜色直方图。 我们将尝试了解如何创建这种颜色直方图,这对于理解诸如直方图反向投影之类的更多主题将很有用。标题OpenCV中的二维直方图它非

2020-07-15 16:23:56 189

原创 Opencv4 -Python官方教程学习笔记21---直方均衡化

目标学习直方图均衡化的概念,并利用它来提高图像的对比度。理论考虑这样一个图像,它的像素值仅局限于某个特定的值范围。例如,较亮的图像将把所有像素限制在高值上。但是一幅好的图像会有来自图像所有区域的像素。因此,您需要将这个直方图拉伸到两端(如下图所示,来自wikipedia),这就是直方图均衡化的作用(简单来说)。这通常会提高图像的对比度。OpenCV中的直方图均衡OpenCV具有执行此操作的功能cv.equalizeHist()。它的输入只是灰度图像,输出是我们的直方图均衡图像。 下面是一个简单的

2020-07-15 15:32:10 132

原创 Opencv4 -Python官方教程学习笔记20---直方图

目标查找绘制直方图理论直方图:横坐标:图像中各个像素点的灰度级纵坐标:灰度级的个数归一化直方图:纵坐标为:出现这个灰度级的概率(原先的纵坐标/像素总数)DIMS:使用参数的数量,考虑几件事情,一般情况为1BINS:参数子集的数目,例如灰度级:0-255,意思为256个子集RANGE:灰度值的范围绘制直方图1.使用MatplotlibMatplotlib带有直方图绘图功能:matplotlib.pyplot.hist() 它直接找到直方图并将其绘制。您无需使用calcHist(

2020-07-15 10:44:00 183

原创 Opencv4 -Python官方教程学习笔记19---轮廓属性

目标在这里,我们将学习提取一些常用的物体属性,如坚实度,等效直径,掩模图像,平均强度等。更多的功能可以在Matlab regionprops文档中找到。长宽比import numpy as npimport cv2 as cvpath = r'D:\PYTHON\timg.jpg' im = cv.imread(path) #读取图像imgray = cv.cvtColor(im, cv.COLOR_BGR2GRAY)ret, thresh = cv.threshold(imgra

2020-07-14 10:53:28 222

原创 Opencv4 -Python官方教程学习笔记18---轮廓特征

目标在本文中,我们将学习 - 如何找到轮廓的不同特征,例如面积,周长,质心,边界框等。 - 您将看到大量与轮廓有关的功能。1.特征矩特征矩可以帮助您计算一些特征,例如物体的质心,物体的面积等。请查看特征矩上的维基百科页面。函数cv.moments()提供了所有计算出的矩值的字典。见下文:import numpy as npimport cv2 as cvpath = r'D:\PYTHON\timg.jpg' im = cv.imread(path) #读取图像imgray = c

2020-07-11 11:05:05 221

原创 Opencv4 -Python官方教程学习笔记17---图像轮廓

目标了解轮廓是什么。学习查找轮廓,绘制轮廓。函数:cv.findContours(),cv.drawContours()什么是轮廓?轮廓可以简单地解释为连接具有相同颜色或强度的所有连续点(沿边界)的曲线。轮廓是用于形状分析以及对象检测和识别的有用工具。1.为了获得更高的准确性,请使用二进制图像。因此,在找到轮廓之前,请应用阈值或canny边缘检测。2.从OpenCV 3.2开始,findContours()不再修改源图像。3.在OpenCV中,找到轮廓就像从黑色背景中找到白色物体。因此请

2020-07-11 09:08:52 185

原创 Opencv4 -Python官方教程学习笔记16---图像金字塔

目标这里我们将学习图像金字塔,使用图像金字塔创建一个新的水果“Oraoole0”将学习以下函数:cv.pyrUp(),cv.pyrDown()理论通常,我们过去使用的是恒定大小的图像。但是在某些情况下,我们需要使用不同分辨率的(相同)图像。例如,当在图像中搜索某些东西(例如人脸)时,我们不确定对象将以多大的尺寸显示在图像中。在这种情况下,我们将需要创建一组具有不同分辨率的相同图像,并在所有图像中搜索对象。这些具有不同分辨率的图像集称为“图像金字塔”(因为当它们堆叠在底部时,最高分辨率的图像位于顶部,

2020-07-10 11:41:39 214

原创 Opencv4 -Python官方教程学习笔记15---canny边缘检测

目标学习Canny边缘检测的概念,学习OpenCV函数:cv.Canny()理论Canny Edge Detection是一种流行的边缘检测算法。这是一个多阶段算法:首先是降噪,所以第一步便是使用5x5高斯滤波器消除图像中的噪声。1.查找图像中的强度梯度然后使用Sobel核在水平和垂直方向上对平滑的图像进行滤波,以在水平方向(Gx)和垂直方向(Gy)上获得一阶导数。从这两张图片中,我们可以找到每个像素的边缘渐变和方向。渐变方向始终垂直于边缘。将其舍入为代表垂直,水平和两个对角线方向的四个角度之

2020-07-09 16:32:16 180

原创 Opencv4 -Python官方教程学习笔记14---图像梯度

目标查找图像梯度,边缘等将看到以下函数:cv.Sobel(),cv.Scharr(),cv.Laplacian()等理论OpenCV提供三种类型的梯度滤波器或高通滤波器,即Sobel,Scharr和Laplacian。我们将看到他们每一种。1.Sobel 和 Scharr 算子Sobel算子:Sobel算子理论上是对图像进行一阶求导,而后为了方便计算设计了3x3的卷积模板。Sobel算子可以计算水平Gx和垂直方向Gy的梯度变换.Gx方向的卷积模板:Gy方向的卷积模板:2.Laplaci

2020-07-09 13:03:19 101

原创 Opencv4 -Python官方教程学习笔记13---形态学转换

目标学习不同的形态学操作:侵蚀,膨胀,开闭运算。将学习以下函数:cv.erode(),cv.dilate(), cv.morphologyEx()等。理论形态变换是一些基于图像形状的简单操作。通常在二进制图像上执行。它需要两个输入,一个是我们的原始图像,第二个是决定操作性质的结构元素或内核。两种基本的形态学算子是侵蚀和膨胀。然后,它的变体形式(如“打开”,“关闭”,“渐变”等)也开始起作用。在下图的帮助下,我们将一一看到它们:原图:1.侵蚀内核滑动通过图像(在2D卷积中)。原始图像中的一个像素

2020-07-09 09:34:04 202

原创 Opencv4 -Python官方教程学习笔记12---图像平滑

目标学会使用各种低通滤波模糊图像 - 将定制的滤镜应用于图像(2D卷积)2D卷积(图像过滤)与一维信号一样,还可以使用各种低通滤波器(LPF),高通滤波器(HPF)等对图像进行滤波。LPF有助于消除噪声,使图像模糊等。HPF滤波器有助于在图像中找到边缘。OpenCV提供了一个函数cv.filter2D来将内核与图像进行卷积。例如,我们将尝试对图像进行平均滤波。5x5平均滤波器内核如下所示:操作如下:保持这个内核在一个像素上,将所有低于这个内核的25个像素相加,取其平均值,然后用新的平均值替换中心

2020-07-08 17:30:14 118

原创 Opencv4 -Python官方教程学习笔记11---图像阈值

目标在本教程中,您将学习简单阈值,自适应阈值和Otsu阈值。你将学习函数cv.threshold和cv.adaptiveThreshold。简单阈值对于每个像素,应用相同的阈值。如果像素值小于阈值,则将其设置为0,否则将其设置为最大值。函数cv.threshold用于应用阈值。第一个参数是源图像,它应该是灰度图像。第二个参数是阈值,用于对像素值进行分类。第三个参数是分配给超过阈值的像素值的最大值。OpenCV提供了不同类型的阈值,这由函数的第四个参数给出。通过使用cv.THRESH_BINARY

2020-07-05 10:29:44 121

原创 Opencv4 -Python官方教程学习笔记10---图像的几何变换

目标学习将不同的几何变换应用到图像上,如平移、旋转、仿射变换等。你会看到这些函数: cv.getPerspectiveTransform变换OpenCV提供了两个转换函数cv.warpAffine和cv.warpPerspective,您可以使用它们进行各种转换。cv.warpAffine采用2x3转换矩阵,而cv.warpPerspective采用3x3转换矩阵作为输入。缩放缩放只是调整图像的大小。为此,OpenCV带有一个函数cv.resize()。图像的大小可以手动指定,也可以指定缩放

2020-07-05 09:24:39 143

原创 Opencv4 -Python官方教程学习笔记9---改变颜色空间

目标在本教程中,你将学习如何将图像从一个色彩空间转换到另一个,像BGR↔灰色,BGR↔HSV等除此之外,我们还将创建一个应用程序,以提取视频中的彩色对象你将学习以下功能:cv.cvtColor,cv.inRange等。改变颜色空间OpenCV中有超过150种颜色空间转换方法。但是我们将研究只有两个最广泛使用的,BGR↔灰色和BGR↔HSV。对于颜色转换,我们使用cv函数。cvtColor(input_image, flag),其中flag决定转换的类型。对于BGR→灰度转换:cv.COLO

2020-07-04 09:50:32 140

原创 Opencv4 -Python官方教程学习笔记8---性能衡量和提升技术

目标衡量代码的性能。一些提高代码性能的技巧。你将看到以下功能:cv.getTickCount,cv.getTickFrequency等。除了OpenCV,Python还提供了一个模块time,这有助于衡量执行时间。另一个模块profile有助于获取有关代码的详细报告,例如代码中每个函数花费了多少时间,调用了函数的次数等。但是,如果你使用的是IPython,则所有这些功能都集成在用户友好的界面中方式。使用OpenCV衡量性能cv.getTickCount函数返回从参考事件(如打开机器的那一刻)

2020-07-03 15:10:56 158

原创 Opencv4 -Python官方教程学习笔记7---图像上的算术运算

目标学习图像的几种算术运算,例如加法,减法,按位运算等。您将学习以下功能:cv.add,cv.addWeighted等。图像加法您可以通过OpenCV函数cv.add()或仅通过numpy操作res = img1 + img2添加两个图像。两个图像应具有相同的深度和类型,或者第二个图像可以只是一个标量值。import numpy as npimport cv2 as cvx = np.uint8([250])y = np.uint8([10])print( cv.add(x,y) )

2020-07-03 14:25:23 174

原创 Opencv4 -Python官方教程学习笔记6---图像基本操作

目标学会: - 访问像素值并修改它们 - 访问图像属性 - 设置感兴趣区域(ROI) - 分割和合并图像本节中的几乎所有操作都主要与Numpy相关,而不是与OpenCV相关。要使用OpenCV编写更好的优化代码,需要Numpy的丰富知识。访问和修改像素值让我们先加载彩色图像:import numpy as npimport cv2 as cvpath = r'D:\PYTHON\timg.jpg' #不能有中文路径img = cv.imread(path)通过行和列坐标来访问像素值。对

2020-06-30 11:43:46 188

原创 Opencv4 -Python官方教程学习笔记5---轨迹栏作为调色板

目标了解将轨迹栏固定到OpenCV窗口您将学习以下功能:cv.getTrackbarPos,cv.createTrackbar等。代码演示在这里,我们将创建一个简单的应用程序,以显示您指定的颜色。您有一个显示颜色的窗口,以及三个用于指定B、G、R颜色的跟踪栏。滑动轨迹栏,并相应地更改窗口颜色。默认情况下,初始颜色将设置为黑色。对于cv.getTrackbarPos()函数,第一个参数是轨迹栏名称,第二个参数是它附加到的窗口名称,第三个参数是默认值,第四个参数是最大值,第五个是执行的回调函数每次

2020-06-30 10:07:48 120

原创 Opencv4 -Python官方教程学习笔记4---用鼠标画图

鼠标作为画笔目标了解如何在OpenCV中使用鼠标您将学习以下函数:cv.setMouseCallback()简单演示在这里,我们创建一个简单的应用程序,无论我们在哪里双击它,都可以在图像上绘制一个圆。首先,我们创建一个鼠标回调函数,该函数在发生鼠标事件时执行。鼠标事件可以是与鼠标相关的任何事物,例如左键按下,左键按下,左键双击等。它为我们提供了每个鼠标事件的坐标(x,y)。通过此活动和地点,我们可以做任何我们喜欢的事情。要列出所有可用的可用事件,请在Python终端中运行以下代码:impo

2020-06-30 09:52:42 168

原创 Opencv4 -Python官方教程学习笔记3---绘图

opencv中的绘图功能学习使用OpenCV绘制不同的几何形状学习以下功能:cv.line(),cv.circle(),cv.rectangle(),cv.ellipse(),cv.putText()等。画线绘制线可以改变线条的起始终止坐标,线条的颜色,粗细,类型等等import numpy as npimport cv2 as cv# 创建黑色的图像img = np.zeros((512,512,3), np.uint8)# 绘制一条厚度为5的蓝色对角线cv.line(img,(0

2020-06-30 09:21:14 143

原创 Opencv4 -Python官方教程学习笔记2---视频入门

视频入门学习读取视频,显示视频和保存视频。学习从相机捕捉并显示它。你将学习以下功能:cv.VideoCapture(),cv.VideoWriter()从相机中读取视频要捕获视频,你需要创建一个 VideoCapture 对象。它的参数可以是设备索引或视频文件的名称。设备索引就是指定哪个摄像头的数字。正常情况下,一个摄像头会被连接(就像我的情况一样)。所以我简单地传0(或-1)。你可以通过传递1来选择第二个相机,以此类推。import numpy as npimport cv2 as cv

2020-06-28 17:31:48 249

原创 Opencv4 -Python官方教程学习笔记1---图像入门

图像入门在这里,你将学习如何读取图像,如何显示图像以及如何将其保存回去你将学习以下功能:cv.imread(),cv.imshow(),cv.imwrite()你将学习如何使用Matplotlib显示图像读取、显示、写入图像cv.imread():第一个参数是图片路径,第二个参数表示读取图片的形式cv.imshow():第一个参数是窗口名称,它是一个字符串。第二个参数是我们的对象cv.imwrite:第一个参数:需要写入的文件名,会自己创建;第二个参数:要保存的图像数据。在下面的程序

2020-06-28 11:23:13 346

基于双目视觉的目标识别与定位

给出一种双目视觉系统的目标识别与定位方法,采用SURF特征实现目标识别的方法,利用双目视觉的原理求取识别出的目标物体的三维坐标信息,从而实现目标物体的识别与定位,与传统的基于SIFT(Scale Invariant Feature Transform)特征或基于颜色形状特征的目标识别与定位方法相比,该方法更具有鲁棒性和实时性.实验结果证明了该方法进行目标识别与定位的可行性,具有一定的应用价值.

2020-10-21

利用matlab实现三维重建,双目视觉的三维重构

很好的源码,思路清晰,利用双目实现的,大家有兴趣使用的可以直接下载,可以应用到比赛和论文内的,工具是matlab,代码也很好理解

2020-10-21

tensorflow2.0学习资源

其中最主要介绍tensorflow的基础教程,详细明了,包括从基础到实战的视频教程,数学讲解清晰,包括resnet,rnn,goolenet,lstm,域对抗等网络的搭建实战,是有偿的,需要的可以联系我(Chovy-QW),很值得看。

2020-07-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除