![](https://img-blog.csdnimg.cn/20190918140053667.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Opencv
文章平均质量分 84
Opencv
GondorFu
这个作者很懒,什么都没留下…
展开
-
Learning Opencv 3 —— 十一章 通用图像变换 General Image Transforms
Opencv 通用图像变换 General Image Transforms相比于一类图像变换——卷积,其特点是图像中某个像素点的值只周围的几个像素点的值有关,而本文将介绍的图像变换并不属于此类。拉伸、收缩、扭曲和旋转Uniform Resizevoid cv::resize( cv::InputArray src, // Input image cv::OutputArra...原创 2018-10-17 11:19:29 · 933 阅读 · 0 评论 -
Learning Opencv 3 —— 十三章 模板匹配 Template Matching
Opencv 模板匹配 Template Matching模板匹配不同于直方图中的反向投影,它将模板图片在感兴趣图片中滑动,并用相应匹配方法度量相似性。void cv::matchTemplate( cv::InputArray image, // Input image to be searched, 8U or 32F, size W-by-H cv::InputArray te...原创 2018-10-10 17:41:26 · 1385 阅读 · 0 评论 -
Learning Opencv 3 —— 十八章 摄像机模型与标定 Camera Models and Calibration
Opencv 摄像机模型与标定 Camera Models and Calibration本文函数总结:convertPointsToHomogeneous(),convertPointsFromHomogeneous():实现平面上的点与齐次坐标系下的点之间的转换 Rodrigues():实现三维空间变换的矩阵和向量表示之间的转换 findChessboardCorners():根据...原创 2018-10-11 17:10:31 · 2833 阅读 · 0 评论 -
Learning Opencv 3 —— 十六章 关键点和描述符(一)—— 关键点及跟踪基础
Opencv 关键点和描述符(一)—— 关键点及跟踪基础Opencv 关键点和描述符(二)—— 通用关键点和描述符Opencv 关键点和描述符(三)—— 核心关键点检测方法corners:包含大量本地信息的像素块,并能够在另一张图中被快速识别keypoints:作为corners的扩展,它将像素块的信息进行编码从而使得更易辨识,至少在原则上唯一descriptors:它是对...原创 2018-10-18 16:27:55 · 2656 阅读 · 0 评论 -
Learning Opencv 3 —— 十五章 背景去除 Background Subtraction (二)
更复杂的背景去除方法——codebook具体算法介绍可以参考CodeBook算法的百度百科介绍。这种模型能很好地处理时间起伏,缺点是需要消耗大量的内存。CodeBook算法为当前图像的每一个像素建立一个CodeBook(CB)结构,每个CodeBook结构又由多个CodeWord(CW)组成。CB和CW的形式如下:CB={CW1,CW2,…CWn,t}CW={lHigh,l...翻译 2019-05-05 17:34:35 · 1183 阅读 · 0 评论 -
Learning Opencv 3 —— 十九章 投影和三维视觉 Projection and Three-Dimensional Vision
Opencv 投影和三维视觉 Projection and Three-Dimensional Vision投影当我们已经获得了标定好的摄像头之后,我们就可以利用以下函数实现三维空间中的点向投影平面的投影。void cv::projectPoints( cv::InputArray objectPoints, // 3xN/Nx3 Nc=1, 1xN/Nx1 Nc=3, ...原创 2018-10-17 14:34:27 · 2343 阅读 · 2 评论 -
Learning Opencv 3 —— 十章 图像形态学 Image Morphology
Opencv 图像形态学 Image Morphology图像形态学包含诸多操作,不过都是基于两个基础操作——膨胀(Dilation)和腐蚀(Erosion)。膨胀和腐蚀膨胀就是使用一个核在给定的图像做卷积,而指定的像素值将被替换为核所覆盖的图像像素的最大值。膨胀的作用就是填充图像中的空隙,扩大图像中的明亮区域。而腐蚀就是相反的操作,用局部最小值来替代指定的像素值。同理,腐蚀的作用...原创 2018-10-11 10:12:01 · 390 阅读 · 0 评论 -
Learning Opencv 3 —— 十六章 关键点和描述符(二)—— 通用关键点和描述符
Opencv 关键点和描述符(二)——通用关键点和描述符Opencv 关键点和描述符(一)—— 关键点及跟踪基础Opencv 关键点和描述符(三)—— 核心关键点检测方法关键点就是一小块图像,而描述符是一种数学结构,通常为一组浮点数。而如何更好地将图像信息抽象为描述符将是一个主要的问题。同时,对于描述符,它应该能够针对不同的场景,给出一定的旋转不变性。关键点和描述符的是三个主要的...原创 2019-01-23 09:33:46 · 1732 阅读 · 0 评论 -
Python Opencv 计算几何相关 API
PythonOpencv 计算几何相关 APIOpencv 中有很多常用的计算几何 API,比如轮廓,连通性,最小外接矩形,多边形填充,多边形内外判断等。这些函数很实用,但参数较多,使用时经常需要现在网上查找。因此,为提高效率,写了这篇文章进行总结。连通性对于一个 8-bit 单通道图片获取每个像素点的连通性def connectedComponents(image, labels=None, connectivity=None, ltype=None): # real signatur.原创 2021-02-10 17:34:59 · 497 阅读 · 0 评论 -
Learning Opencv 3 —— 七章 Opencv 中的函子
Opencv 函数Principal Component Analysis (cv::PCA)主成分分析主要完成的功能是从高维空间中抽取其中的若干维,并使得保留的维度能够保留原始数据的绝大多数信息。图中显示了PCA的完成过程,其找出现有分布中方差较大的多个维度,并将数据向这几个方向进行投影,从而完成数据的降维。Opencv针对PCA操作提供了一个功能类cv::PCA...原创 2018-11-22 10:02:30 · 440 阅读 · 0 评论 -
Learning Opencv 3 —— 十三章 直方图 Histogram
Opencv3 直方图 Histogram直方图广泛应用于很多计算机视觉应用中,是计算机视觉中最经典的工具之一。简单的说,直方图就是对数据进行统计,将统计值组织到一系列事先定义好的 bin中,bin中的数值就是从数据中得到的特征统计量。边缘,色彩,角等直方图构成了可以被传递给目标识别分类器的一个通用特征类型。直方图表示由于直方图就是每个 bin中记录的统计数值,因此直方图能够直接...原创 2018-10-09 20:32:43 · 952 阅读 · 0 评论 -
Opencv3 基础数据类型
Opencv3 基础数据类型b:unsigned character s:short integer i:32-bit integer f:32-bit floating-point number d:64-bit floating-point numberPoint: Point2i, Point3f操作 例子 默认构造器 cv::Poi...原创 2018-09-18 11:33:10 · 662 阅读 · 0 评论 -
Learning Opencv 3 —— 十二章 图像分析
Opencv 图像分析之前提到的图像变换都是将原图的某个像素点转换到目标图像的另一个位置,其结果本质上仍然是一幅图像。这里提到的图像分析则是将图像转换为另一种完全不同的形式,有可能是数组甚至是向量,比如离散傅立叶变换和Hough直线变换。最后将给出图像分割方法。离散傅立叶变换对于N个离散的点,一维离散傅立叶变换而二维离散傅立叶变换使用传统方法将需要,而如果使用...原创 2019-01-24 10:20:26 · 1165 阅读 · 1 评论 -
Learning Opencv 3 —— 十五章 背景去除 Background Subtraction (一)
Learning Opencv 3 —— 十五章 背景去除 Background Subtraction背景去除概述background subtraction 也被称为 background differencing。这里将首先介绍经典背景模型的缺点,之后将介绍一些更高阶的方法。其中将介绍一种处理室内光线相对稳定的快速方法和一种能够兼容室外场景的一种称为 codebook 速度较慢的方法...翻译 2019-05-05 17:35:04 · 2587 阅读 · 0 评论 -
Learning Opencv 3 —— 十四章 轮廓 Contours
Learning Opencv 3 —— 十四章 轮廓 Contours虽然之前的Canny算法能够检测出其中的边缘像素点,但算法并不能将这些点作为一个整个的边缘理解。好在Opencv提供了一系列有用的工作,比如cv::findContours()来实现类似的功能。查找轮廓轮廓在Opencv中被表示为一系列的点。其中...原创 2019-03-01 17:50:43 · 878 阅读 · 0 评论 -
Learning Opencv 3 —— 四章 SparseMat 介绍
Opencv SparseMat 介绍Example Description cv::SparseMat sm; Create a sparse matrix without initialization cv::SparseMat sm( 3, sz, CV_32F ); Create a three-dimensional sparse matrix with d...原创 2018-09-18 17:48:21 · 1597 阅读 · 0 评论 -
学习 Opencv3 —— 视频控制播放
学习 Opencv3 —— 视频控制播放程序通过 Trackbar 实现了对视频播放的控制。程序的整体控制流程如下:1、创建显示窗口,并通过传入参数打开对应视频类 VideoCapture2、之后通过 createTrackbar 函数生成滑动条,其函数原型int createTrackbar (const string& trackbarName, // 创建的Tr...原创 2018-09-17 11:46:57 · 721 阅读 · 0 评论 -
Learning Opencv 3 —— 十六章 关键点和描述符(三)—— 核心关键点检测方法
Opencv 关键点和描述符(三)—— 核心关键点检测方法Opencv 关键点和描述符(一)—— 关键点及跟踪基础Opencv 关键点和描述符(二)—— 通用关键点和描述符存在着大量的关键点检测算法,它们之间没有明显的优劣,因此Opencv提供了一个通用的接口来处理所有的检测器使得用户能够更好地使用它们。The Harris-Shi-Tomasi feature detecto...原创 2019-01-23 09:26:53 · 2090 阅读 · 0 评论 -
Learning Opencv 3 —— 十六章 关键点和描述符(四)—— 匹配方法与结果显示
十六章 关键点和描述符(四)—— 匹配方法与结果显示匹配方法在得到关键点之后,就可以基于此来进行目标的检测与跟踪。这两种应用,对象都派生自cv::DescriptorMatcher。对于的基础的匹配服务,有两种匹配方法。其中一种是brute force matching(暴力匹配),其就是比较集合A中的每一个元素和集合B中的每一个元素。另一种被称为FLANN, 其本质是一个接口,提供了一系列接口来定位最近邻元素。不过由于暴力匹配更基础,因此被更广泛地使用。Brute force match...原创 2020-10-27 21:01:09 · 3473 阅读 · 0 评论 -
Learning Opencv 3 —— 四章 Mat 数据类型
Opencv Mat 数据类型Mat类型其本质只是一片数据域的指针,当进行复制操作时,并不会新复制一片数据,而只是创建一个新的指针指向原数据域。CV_{8U,16S,16U,32S,32F,64F}C{1,2,3}:数据类型和通道数Mat构造函数Constructor Description cv::Mat; 默认构造器 cv::Mat( int rows, ...原创 2018-09-18 17:22:40 · 1049 阅读 · 0 评论 -
Visual Studio 调用 opencv 库
Visual Studio 调用 opencv 库 下载 opencv 库访问 opencv 官网:https://opencv.org/releases.html 下载对应平台的库文件。下载之后的运行 exe 文件,但并不会安装软件,只是解压得到一个文件夹。Opencv只是一个计算机视觉库,在VS中使用时,需要对文件进行配置,调用其中的文件。 build 文件夹下的文件介绍...原创 2018-08-15 20:56:07 · 5791 阅读 · 1 评论 -
Learning Opencv 3 —— 十四章 轮廓匹配
Opencv 轮廓匹配关于 Opencv 轮廓的介绍可以参考:https://blog.csdn.net/a40850273/article/details/88063478MomentsMoments 是一种轮廓、图像和点的高层次特征,计算方式如下其能够理解为对图像中每个像素点的加权和,如果,即,则每个像素点的权重都是 1。如果对于一幅二值图像(像素值不是 1 就是 0),那么就是非零像素值的面积。如果一个轮廓,那么就是轮廓的长度。同理,如果用和除以,则表示图像在...原创 2020-07-16 20:39:52 · 1419 阅读 · 0 评论