
opencv学习
文章平均质量分 84
梦沁清风
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
vscode 配置opencv环境
1、首先需要使用cmake工具配置opencv源码,生成mingw编译器对应的makefile文件2、使用安装好的mingw-make 命令进行编译,时间较长半个小时(编译若遇到 hypot未定义,改成_hypot即可)3、编译好之后,会在相应的install目录下包含所需要的头文件include、静态链接库lib、和动态链接库bin文件夹4、配置vscode主要是对c_cpp_pro...原创 2020-04-19 00:20:01 · 5885 阅读 · 0 评论 -
Canny边缘检测算法原理
2、Canny边缘检测算法原理 JohnCanny于1986年提出Canny算子,它与Marr(LoG)边缘检测方法类似,也属于是先平滑后求导数的方法。本节对根据上述的边缘检测过程对Canny检测算法的原理进行介绍。2.1 对原始图像进行灰度化 Canny算法通常处理的图像为灰度图,因此如果摄像机获取的是彩色图像,那首先就得进行灰度化。对一幅彩色原创 2017-04-01 20:45:07 · 2995 阅读 · 0 评论 -
SIFT特征提取分析
转自:http://blog.youkuaiyun.com/abcjennifer/article/details/7639681/ Rachel-ZhangSIFT(Scale-invariant feature transform)是一种检测局部特征的算法,该算法通过求一幅图中的特征点(interest points,or corner points)及其有关scale 和 orienta转载 2017-03-31 18:45:19 · 553 阅读 · 0 评论 -
视觉SLAM漫谈
视觉SLAM漫谈1. 前言 开始做SLAM(机器人同时定位与建图)研究已经近一年了。从一年级开始对这个方向产生兴趣,到现在为止,也算是对这个领域有了大致的了解。然而越了解,越觉得这个方向难度很大。总体来讲有以下几个原因:入门资料很少。虽然国内也有不少人在做,但这方面现在没有太好的入门教程。《SLAM for dummies》可以算是一篇。中文资料几乎没有。SLAM研转载 2017-04-10 11:23:47 · 520 阅读 · 0 评论 -
ORB-SLAM(一)简介
ORB-SLAM(一)简介ORB-SLAM是一种基于ORB特征的三维定位与地图构建算法(SLAM)[1]。该算法由Raul Mur-Artal,J. M. M. Montiel和Juan D. Tardos于2015年发表在IEEE Transactions on Robotics。ORB-SLAM基于PTAM架构,增加了地图初始化和闭环检测的功能,优化了关键帧选取和地图构转载 2017-04-10 10:43:32 · 3678 阅读 · 0 评论 -
Camshift原理
Camshift原理CamShift算法的全称是"Continuously Adaptive Mean-SHIFT",即:连续自适应的MeanShift算法。其基本思想是对视频序列的所有图像帧都作MeanShift运算,并将上一帧的结果(即搜索窗口的中心位置和窗口大小)作为下一帧MeanShift算法的搜索窗口的初始值,如此迭代下去。简单点说,meanShift是针对单张图片寻找最优迭转载 2017-04-10 09:43:27 · 11794 阅读 · 0 评论 -
MeanShift的目标跟踪算法
这次将介绍基于MeanShift的目标跟踪算法,首先谈谈简介,然后给出算法实现流程,最后实现了一个单目标跟踪的MeanShift算法【matlab/c两个版本】 csdn贴公式比较烦,原谅我直接截图了… 一、简介 首先扯扯无参密度估计理论,无参密度估计也叫做非参数估计,属于数理统计的一个分支,和参数密度估计共同构成了概率密度估计方法。参数密度估计方转载 2017-04-10 09:31:47 · 402 阅读 · 0 评论 -
FREAK算法
FREAK算法是ICCV 2012上的一篇关于特征点检测与匹配的论文《FREAK: Fast Retina Keypoint》上提出的,从文章标题中可以看出来该算法的一个特点是快速,另外一个特点就是该算法是被人眼识别物体的原理上得到启发提出的。 看过我之前博文的可能知道,我到现在已经把SIFT算法、ORB算法、BRIEF算法和BRISK算法都进行了介绍。可以看出BRIEF、ORB和BRISK都转载 2017-04-09 21:01:56 · 834 阅读 · 0 评论 -
特征点提取算法列表
Feature Detection Methods List:Canny Edge Detect, A Computational Approach to Edge Detection, 1986. The Canny edge detector is an edge detection operator that uses a multi-stage algorithm to det原创 2017-04-09 08:45:38 · 2830 阅读 · 1 评论 -
ORB特征点检测与描述详解
相关 : Fast原理与源码解析 Brief描述子原理与源码解析 Harris原理与源码解析 转载请注明出处: http://blog.youkuaiyun.com/luoshixian099/article/details/48523267优快云-勿在浮沙筑高台 为了满足实时性的要求,前面文章中介绍过快速提取特征点算法Fast,以及特征描述子B转载 2017-04-09 15:36:20 · 3779 阅读 · 0 评论 -
智能指针类和OpenCV的Ptr模板类
转自:http://www.jianshu.com/p/0642948df118智能指针类引用计数智能指针(smart pointer)的一种通用实现技术是使用引用计数(reference count)。智能指针类将一个计数器与类指向的对象相关联,引用计数跟踪该类有多少个对象的指针指向同一对象。引用计数为0时,删除对象。其基本使用规则是:每次创建类的新对象时,初始化转载 2017-03-13 21:53:09 · 2259 阅读 · 1 评论 -
计算机视觉之一:特征检测
转自:http://www.cnblogs.com/AndyJee/p/3734805.html 主要内容:1、一个例子解释为什么要进行特征检测2、图像特征3、点特征检测:Harris角点、MOPS、SIFT4、边缘检测:一阶微分算子、二阶微分算子、Canny算子 一、为什么要检测特征?举一个例子:全景图像拼接,给定两张图像,转载 2017-03-16 23:09:37 · 2204 阅读 · 0 评论 -
SURF算法解析
转自:http://blog.youkuaiyun.com/cxp2205455256/article/details/41311013一、积分图像 积分图像的概念是由Viola和Jones提出的。积分图像中任意一点(i,j)的值为原图像左上角到任意点(i,j)相应的对焦区域的灰度值的总和,其数学公式如图1所示:那么,当我们想要计算图片一个区域的积分,就只转载 2017-03-17 10:24:56 · 3753 阅读 · 0 评论 -
Correlation Filter in Visual Tracking系列一:Visual Object Tracking using Adaptive Correlation Filters 论
链接: http://www.cnblogs.com/hanhuili/p/4266990.htmlVisual Object Tracking using Adaptive Correlation Filters 一文发表于2010的CVPR上,是笔者所知的第一篇将correlation filter引入tracking领域内的文章,文中所提的Minimum Output Sum o转载 2017-04-19 10:47:27 · 381 阅读 · 0 评论 -
RANSAC算法
本文翻译自维基百科,英文原文地址是:http://en.wikipedia.org/wiki/ransac,如果您英语不错,建议您直接查看原文。 RANSAC是“RANdom SAmple Consensus(随机抽样一致)”的缩写。它可以从一组包含“局外点”的观测数据集中,通过迭代方式估计数学模型的参数。它是一种不确定的算法——它有一定的概率得出一个合理的结果;为了提高概率必须提高迭代转载 2017-10-09 09:26:53 · 884 阅读 · 0 评论 -
小波变换
转自https://zhuanlan.zhihu.com/p/22450818?refer=dong5形象易懂讲解算法I——小波变换咚懂咚懂咚1 年前最早发于回答:能不能通俗的讲解下傅立叶分析和小波分析之间的关系? - 咚懂咚懂咚的回答现收入专栏。从傅里叶变换到小波变换,并不是一个完全抽象的东西,可以讲得很形象。小波变换有着明确的物理意义转载 2017-09-14 20:55:56 · 549 阅读 · 0 评论 -
鱼眼相机成像模型
鱼眼相机成像模型本人邮箱:sylvester0510@163.com,欢迎交流讨论, 欢迎转载,转载请注明网址http://blog.youkuaiyun.com/u010128736/一、鱼眼镜头模型 鱼眼镜头一般是由十几个不同的透镜组合而成的,在成像的过程中,入射光线经过不同程度的折射,投影到尺寸有限的成像平面上,使得鱼眼镜头与普通镜头相比起来拥有了更大的转载 2017-05-22 10:00:32 · 967 阅读 · 0 评论 -
基于opencv的视频传输
客户端:WinsockMatTransmissionClient.h文件:#ifndef __WINSOCKMATTRANSMISSIONCLIENT_H__#define __WINSOCKMATTRANSMISSIONCLIENT_H__#include "opencv2/opencv.hpp"#include "opencv2/highgui/highgui.hpp"#i原创 2017-06-16 22:06:38 · 1598 阅读 · 2 评论 -
利用透视变换做单目测量
原创 2017-05-19 17:02:40 · 2373 阅读 · 1 评论 -
opencv3.2+opencv_contrib+cmake
心得体会初学opencv发现opencv3.2(下载链接在附录)是没有xfeatures2d等模块的。第三方库opencv_contrib是在GitHub上。(下载链接在附录)。那么问题就在于怎么把原Opencv与opencv_contrib合成一个工程,这不仅仅对于加载头文件等有帮助,而且对欣赏源码也很有帮助。通过cmake(下载链接在附录)编译合成一个工程无疑是最好的解决方法。原创 2017-04-26 09:37:38 · 1223 阅读 · 0 评论 -
累计概率霍夫变换
In "A real-time lane marking localization, tracking and communication system":Hough transform (HT) was proposed in [30] and is usually used to detect lines and circles; it has been used as the cor原创 2017-05-16 10:52:55 · 2616 阅读 · 0 评论 -
霍夫圆变换
霍夫圆变换的基本思路是认为图像上每一个非零像素点都有可能是一个潜在的圆上的一点,跟霍夫线变换一样,也是通过投票,生成累积坐标平面,设置一个累积权重来定位圆。在笛卡尔坐标系中圆的方程为:其中(a,b)是圆心,r是半径,也可以表述为:即所以原创 2017-05-15 22:03:06 · 1061 阅读 · 0 评论 -
opencv的基本数据结构
/********************************************************************************************* 程序功能: OpenCv的基本数据结构源代码的解读,我们常用的OpenCv的基本数据结构有六种: 1--Point类 2--Siz原创 2017-05-12 09:30:13 · 519 阅读 · 0 评论 -
特征匹配,sift,surf,orb,brisk,brief
特征匹配(Feature Match)是计算机视觉中很多应用的基础,所以花一些时间去深入理解这个概念是不为过的。本文希望通过一种通俗易懂的方式来阐述特征匹配这个过程,以及在过程中遇到的一些问题。概念理解:假设这样的一个场景,小明和小小明都在看一个图片,但是他们想知道他们看的是否是同一幅图片,于是他们就通过电话描述这个图片,来判断是否是同一个图片。比如说有下面两个图片原创 2016-10-08 21:34:17 · 3934 阅读 · 0 评论 -
Lukas-Kanade光流法
转自:http://blog.youkuaiyun.com/u014568921/article/details/46638557光流是图像亮度的运动信息描述。光流法计算最初是由Horn和Schunck于1981年提出的,创造性地将二维速度场与灰度相联系,引入光流约束方程,得到光流计算的基本算法.光流计算基于物体移动的光学特性提出了2个假设:①运动物体的灰度在很短的间隔时间内保持不变;②给定邻域内转载 2017-03-21 09:51:53 · 2024 阅读 · 1 评论 -
小波变换
转自:http://blog.youkuaiyun.com/u012507022/article/details/50979009最近用Opencv做图像处理需要用到离散小波变换,但是Opencv没有提供小波变换函数。本人能力有限,自己也没写。其实用MATLAB就是分分钟的事,但是对于图像处理,MATLAB倾向于搞研究, Opencv实用性更广。在网上找点资源,发现资源很多,但是代码单一,基本上就是这两种转载 2017-03-20 22:31:28 · 417 阅读 · 0 评论 -
【OpenCV】双目测距(双目标定、双目校正和立体匹配)
转自“http://blog.youkuaiyun.com/wangchao7281/article/details/52506691?locationNum=2&fps=1”本文采用MATLAB标定工具箱和OpenCV3.10来实现双目测距,设备为两个CMOS工业相机和相应的双目云台。 首先感谢优快云上两位大神前辈邹宇华和scyscyao,虽然是六年前的博客,OpenCV也从1.0的版本更新到转载 2016-12-17 09:54:25 · 3889 阅读 · 1 评论 -
HOG 特征
转自:http://blog.youkuaiyun.com/flyingpig851334799/article/details/46445863?locationNum=7&fps=11、HOG特征: 方向梯度直方图(Histogram of Oriented Gradient, HOG)特征是一种在计算机视觉和图像处理中用来进行物体检测的特征描述子。它通过计算和统计图像局部区域转载 2016-11-14 22:26:56 · 407 阅读 · 0 评论 -
局部特征点检测算法综述
总体来说,图像特征可以包括颜色特征、纹理特等、形状特征以及局部特征点等。其中局部特点具有很好的稳定性,不容易受外界环境的干扰,本篇文章也是对这方面知识的一个总结。本篇文章现在(2015/1/30)只是以初稿的形式,列出了主体的框架,后面还有许多地方需要增加与修改,例如2013年新出现的基于非线性尺度空间的KAZE特征提取方法以及它的改进AKATE等。在应用方面,后面会增一些具有实际代码的例原创 2016-11-16 10:07:13 · 1327 阅读 · 0 评论 -
RANSAC算法
转自:http://www.cnblogs.com/konlil/archive/2012/02/01/2334492.htmlRANSAC算法当由一堆存在误差的数据样本恢复数据模型时,通常最简单的线性回归方法是最小二乘,然而当数据样本中的误差数据的误差值和其所占比例比较大时,最小二乘得出的结果往往不如人意,RANSAC算法(随机抽样一致性算法)利用迭代来解决这个问题。转载 2016-10-25 20:26:23 · 489 阅读 · 0 评论 -
粒子滤波和卡尔曼滤波简介
卡尔曼滤波:相信所有学习卡尔曼滤波的同学首先接触的都是状态方程和观测方程,学过控制系统的同学可能不陌生,否则,先被那两个看起来好深奥的公式给吓跑了,关键是还不知道他们究竟是干什么的,什么是状态,什么是观测。。。。。。如果再看到后面的一大串递归推导增益,实在很晕很晕,更糟糕的是还没整明白的时候就已经知道卡尔曼滤波其实已经不够使了,需要extended kalmanfilter 和原创 2016-10-25 20:21:45 · 1412 阅读 · 0 评论 -
层次凝聚聚类法
熟悉CMT的都知道,作者在聚类部分使用了层次凝聚聚类算法(Hierarchical Agglomerative Clustering)并且使用的是单链(Single-link),今天我们就来学习下这个算法。 前面学习了几种聚类算法,K-Means,EM,AP等都属于平面聚类(Flat Clustering),因为这些算法的输出都是返回一个平面的无结构的聚类集合,所以叫做Flat转载 2016-10-10 14:43:53 · 17117 阅读 · 1 评论 -
先验概率、后验概率、贝叶斯公式、 似然函数
一、先验概率、后验概率、贝叶斯公式、 似然函数在机器学习中,这些概念总会涉及到,但从来没有真正理解透彻他们之间的联系。下面打算好好从头捋一下这些概念,备忘。1、先验概率先验概率仅仅依赖于主观上的经验估计,也就是事先根据已有的知识的推断,先验概率就是没有经过实验验证的概率,根据已知进行的主观臆测。如抛一枚硬币,在抛之前,主观推断P(正面朝上) = 0.5。2、后转载 2016-10-08 22:47:11 · 3225 阅读 · 0 评论 -
BackgroundSubtractorMOG2前后背景分离
BackgroundSubtractorMOG2 重要方法1. BackgroundSubtractorMOG2 的构造函数 C++: BackgroundSubtractorMOG2::BackgroundSubtractorMOG2() 采用默认值进行构造BackgroundSubtractorMOG2的对象。Parameters:原创 2016-09-19 15:22:24 · 9785 阅读 · 0 评论 -
直方图均衡化
//直方图均衡化void histogram_equalization(unsigned char* img, int h, int w){ int i, j; int pixNum[256] = { 0 }; float pixP[256] = { 0 }; float pixNormalize[256] = { 0 }; int maxpix = img[0]; int min原创 2016-08-12 09:51:37 · 411 阅读 · 0 评论 -
使用opencv读取图像序列
在做目标跟踪实验时,需要和其他主流方法作比较,这时就需要读入视频或一些图像序列。下面介绍一种利用VideoCapture类读取图像序列的方法:如要读入以下图片序列 代码如下:#include #include #include using namespace cv;using namespace std;int main(int argc, char** a原创 2016-08-12 14:28:37 · 4021 阅读 · 2 评论 -
OpenCV描述符匹配
转自:http://blog.youkuaiyun.com/corfox_liu/article/details/48338939struct DMatch 关键点描述符匹配结果存储结构。匹配结果包括查询描述符的索引,训练描述符的索引,训练图像的索引和描述符之间的距离.[cpp] view plain copystruct DMatc转载 2017-01-09 10:09:13 · 2108 阅读 · 0 评论 -
特征点匹配
Mastering OpenCV with Practical Computer Vision Projects 中的第三章里面讲到了几种特征点匹配的优化方式1. OpenCV提供了两种Matching方式:• Brute-force matcher (cv::BFMatcher) • Flann-based matcher (cv::F原创 2017-01-09 10:45:40 · 13317 阅读 · 1 评论 -
StereoBM:opencv计算视差
转自:http://blog.youkuaiyun.com/chentravelling/article/details/536725780.前言 视差与深度的关系戳这里。在opencv里应该有三种求视差的方法和一些问题集锦,可参考:http://blog.youkuaiyun.com/chenyusiyuan/article/details/5967291/ 1.代码void saveDisp(co转载 2017-01-12 10:41:50 · 4930 阅读 · 0 评论 -
opencv安装
原创 2017-03-10 20:55:22 · 259 阅读 · 0 评论