自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 收藏
  • 关注

转载 nvidia-docker install

目录Docker安装 Nvidia-docker安装Docker安装1.更换国内软件源,推荐中国科技大学的源,稳定速度快(可选)? 1 2 3 sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak sudo sed -i 's/archive.ubuntu.com...

2019-11-02 13:46:32 362

转载 为什么使用卷积层替代CNN末尾的全连接层

CNN网络的经典结构是: 输入层—>(卷积层+—>池化层?)+—>全连接层+ (其中+表示至少匹配1次,?表示匹配0次或1次)全卷积神经网络Fully Convolutional Network (FCN)全卷积神经网络即把CNN网络最后的全连接层替换为卷积层。为什么这么做?换句话说这样会带来什么好处呢?首先,说一下卷积层和全连接层的区别:卷积层为局部连接;而全连接层则使用图像的...

2018-07-12 22:00:09 2187

转载 卷积神经网络(CNN)中全连接层(FC layer)的作用

卷积神经网络(CNN)中全连接层(FC layer)的作用前言一般来说,卷积神经网络会有三种类型的隐藏层——卷积层、池化层、全连接层。卷积层和池化层比较好理解,主要很多教程也会解释。卷积层(Convolutional layer)主要是用一个采样器从输入数据中采集关键数据内容;池化层(Pooling layer)则是对卷积层结果的压缩得到更加重要的特征,同时还能有效控制过拟合。但是可怜的全连接层(...

2018-07-12 21:58:37 9599 2

转载 全连接层的作用到底是什么?

全连接层的作用到底是什么?爱的机器百家号17-03-1108:32在卷积神经网络尚未炽热的年代,人们运用haar/lbp + adaboost级连的组合方式检测人脸,hog+svm的组合方式检测行人。这种传统的目的检测办法一个认知上的优势就是: 模块的功用明白,划分得很明晰,契合人们的了解方式。其中,haar,lbp,hog等手工设计的特征提取算子用于提取特征,adaboost,svm用于对提取的...

2018-07-12 21:57:48 4335

转载 多标签图像分类任务的评价方法

多标签图像分类任务的评价方法-mAP转载2015-12-17 13:27:15标签:multi-labelprecisionrecallmap多标签图像分类(Multi-label   Image  Classification)任务中图片的标签不止一个,因此评价不能用普通单标签图像分类的标准,即mean  accuracy,该任务采用的是和信息检索中类似的方法—mAP(mean  Average...

2018-07-11 17:04:56 466

转载 OpenCV3 外极线的绘制

两张视角相似的图片,通过提取特征点、描述子,然后进行匹配,再通过单应约束优化之后得到的匹配关系基本就是正确的匹配了。然后在此基础上想画出外极线,来验证一下匹配的结果是否正确。于是就写了一个简单的函数。假设已经得到了匹配的特征点了,下面的函数将会画出这些点对应的外极线。[cpp] view plain copy//画出外极线,对应点已经经过了RANSAC优化  void DrawEpiLines(c...

2018-03-26 13:47:55 1422

转载 单应矩阵Homography介绍

Homography 理解本文转自:http://m.blog.csdn.net/blog/xuluhui123/17115073在计算机视觉中,平面的单应性被定义为一个平面到另外一个平面的投影映射。因此一个二维平面上的点映射到摄像机成像仪上的映射就是平面单应性的例子。如果点Q到成像仪上的点q的映射使用齐次坐标,这种映射可以用矩阵相乘的方式表示。若有一下定义:则可以将单应性简单的表示为:这里引入参...

2018-03-22 11:50:15 478

转载 OpenCV角点检测器测试和比较

关于特征检测,OpenCV提供了通用的接口FeatureDetector类。简单调用其成员函数create()和detect()即可完成角点检测。选取8个以角点为特征的特征检测器进行测试,包括:HARRISGFTT (Shi-tomasi)SIFTSURFFASTSTARORB (oriented BRIEF)BRISK测试代码#include <stdio.h>#include &...

2018-03-21 16:19:02 490

转载 Harris角点检测完以后如何进行配准

[html] view plain copy  本人菜鸟一枚,刚刚接触opencv进行三维重建,在进行角点检测匹配的时候,遇到了harris角点匹配的问题,在教材中只提到harris角点的检测,却没有详细的关于harris角点匹配问题,完成角点检测以后,接下来就蒙圈了,不知道如何下手了,关于surf、sift两种检测匹配算法,在opencv3中都封装了相关的函数,包括计算特征点、描述子,而在har...

2018-03-14 09:50:00 1039

转载 OpenCV3双目视觉实验

1 双目视觉何为双目视觉? 双目视觉是模拟人类视觉原理,使用计算机被动感知距离的方法。从两个或者多个点观察一个物体,获取在不同视觉下的图像,根据图像之间像素的匹配关系,通过三角测量原理计算出像素之间的偏移来获取物体的三维信息。得到了物体的景深信息,就可以计算出物体与相机之间的实际距离,物体3维大小,两点之间实际距离。目前也有很多研究机构进行3维物体识别,来解决2D算法无法处理遮挡,姿态

2018-02-03 15:39:13 1284 1

转载 特征点匹配——使用基础矩阵、单应性矩阵的RANSAC算法去除误匹配点对

不管是我在之前的博文中提到的SIFT、ORB等算法,其实真正匹配的结果都不会特别好,一旦视角上的变化比较大或者出现之前图像中没有出现的区域,就很容易产生误匹配。但是在实际应用中这些误匹配的点并没有对最终的匹配结果造成很大的影响,这是因为一般在进行匹配以后,都进行了去除误匹配点对的操作,这篇博文主要介绍的就是一种比较有名的RANSAC算法。 那么,首先来看一下这个算法。一、RANSAC算

2018-02-02 17:35:55 1671

原创 opencv

读取视频写入视频目标检测特征匹配相机校正双目视觉基本矩阵双目图像匹配单应矩阵Comments参考资料:《OpenCV 2 Computer Vision Application Programming Cookbook》《The OpenCV Reference Manual》读取视频使用 CV::VideoCaptu

2018-02-02 16:22:38 285

转载 特征点匹配及消除误匹配点

Mastering OpenCV with Practical Computer Vision Projects 中的第三章里面讲到了几种特征点匹配的优化方式1. OpenCV提供了两种Matching方式:• Brute-force matcher (cv::BFMatcher) • Flann-based matcher (cv::F

2018-02-02 15:17:03 1392

转载 特征点匹配——使用基础矩阵、单应性矩阵的RANSAC算法去除误匹配点对

不管是我在之前的博文中提到的SIFT、ORB等算法,其实真正匹配的结果都不会特别好,一旦视角上的变化比较大或者出现之前图像中没有出现的区域,就很容易产生误匹配。但是在实际应用中这些误匹配的点并没有对最终的匹配结果造成很大的影响,这是因为一般在进行匹配以后,都进行了去除误匹配点对的操作,这篇博文主要介绍的就是一种比较有名的RANSAC算法。 那么,首先来看一下这个算法。一、RANSAC算

2018-02-02 15:13:11 3304

转载 OpenCV2:特征匹配及其优化

在OpenCV2简单的特征匹配中对使用OpenCV2进行特征匹配的步骤做了一个简单的介绍,其匹配出的结果是非常粗糙的,在这篇文章中对使用OpenCV2进行匹配的细化做一个简单的总结。主要包括以下几个内容:DescriptorMatcherDMatcherKNN匹配计算两视图的基础矩阵F,并细化匹配结果计算两视图的单应矩阵H,并细化匹配结果DescriptorMatcher 和 DM

2018-02-02 15:05:22 216

转载 利用SIFT和RANSAC算法(openCV框架)实现物体的检测与定位,并求出变换矩阵(findFundamentalMat和findHomography的比较)

本文目标是通过使用SIFT和RANSAC算法,完成特征点的正确匹配,并求出变换矩阵,通过变换矩阵计算出要识别物体的边界(文章中有部分源码,整个工程我也上传了,请点击这里)。SIFT算法是目前公认的效果最好的特征点检测算法,关于该算法的就不多说了,网上的资料有很多,在此提供两个链接,一个是SIFT原文的译文,一个是关于SIFT算法的详细解释:SIFT算法译文SIFT算法详

2018-02-01 19:27:27 1087

转载 OpenCV中findFundamentalMat函数使用的模型

本文转自:http://wiki.opencv.org.cn/index.php/Cv%E7%85%A7%E7%9B%B8%E6%9C%BA%E5%AE%9A%E6%A0%87%E5%92%8C%E4%B8%89%E7%BB%B4%E9%87%8D%E5%BB%BA针孔相机模型和变形这一节里的函数都使用针孔摄像机模型,这就是说,一幅视图是通过透视变换将三维空

2018-02-01 19:26:34 1214

转载 基于OpenCV的立体相机标定StereoCalibration与目标三维坐标定位

标签:说明:以下涉及到的一些公式以及图片来自于Learning OpenCV。做了快2个月的立体相机标定,遇到了一些问题,也有了一些体会,在这里记下来。1.在做立体相机标定的时候,标定板的规范与否直接影响到最后标定的结果,进而会影响目标3D坐标重建。这里说的规范指的是,打印的棋盘格(或者圆点)需要保证每个square都是严格大小一致的,即打印出来后每个棋盘格大小应一

2018-01-29 19:33:17 1637 1

转载 双摄像头三维重建报告

双摄像头三维重建报告写在前面:文章中公式不全的或其他有错误的的地方还请大家给予意见更改,转载请注明出处,版权所有,翻版必究!一、摄像机成像模型1.1 针孔摄像机模型在此模型中,光线是从很远的物体发射过来,通过一个很小的针孔点(或摄像机镜头),投影到成像表面,其结果是在投影平面图像被聚焦。如图所示,AO为物距,CO为焦距f,

2018-01-29 19:32:08 2025

转载 【opencv】双目视觉下空间坐标计算/双目测距 6/13更新

最近是多么的崩溃,昨天中了最新的cerber病毒,把我的电脑资料一扫而空,虽然有备份,但是已经是一周前的了。不得不加班加点补回来。这篇博客,这是我第二次写,我凭着记忆,重新写一遍之前写的,因为之前写好了,却不小心被删掉,然而CSDN又特别默契的在那一刻保存了一下,满满的都是伤心; 摄像机矩阵由内参矩阵和外参矩阵组成,对摄像机矩阵进行QR分解可以得到内参矩阵和外参矩阵。

2018-01-26 21:03:59 1851 1

转载 张正友相机标定Opencv实现以及标定流程&&标定结果评价&&图像矫正流程解析(附标定程序和棋盘图)

使用Opencv实现张正友法相机标定之前,有几个问题事先要确认一下,那就是相机为什么需要标定,标定需要的输入和输出分别是哪些?相机标定的目的:获取摄像机的内参和外参矩阵(同时也会得到每一幅标定图像的选择和平移矩阵),内参和外参系数可以对之后相机拍摄的图像就进行矫正,得到畸变相对很小的图像。相机标定的输入:标定图像上所有内角点的图像坐标,标定板图像上所有内角点的空间三维坐

2018-01-26 21:02:42 311

转载 OpenCV畸变校正原理以及损失有效像素原理分析

OpenCV畸变校正原理以及损失有效像素原理分析上一篇博客简要介绍了一下常用的张正友标定法的流程,其中获取了摄像机的内参矩阵K,和畸变系数D。1.在普通相机cv模型中,畸变系数主要有下面几个:(k1; k2; p1; p2[; k3[; k4; k5; k6]] ,其中最常用的是前面四个,k1,k2为径向畸变系数,p1,p2为切向畸变系数。2.在fishey

2018-01-26 21:01:36 2323 1

转载 双摄像头立体成像(三)-畸变矫正与立体校正

双摄像头立体成像(三)-畸变矫正与立体校正畸变矫正是上一篇博文的遗留问题,当畸变系数和内外参数矩阵标定完成后,就应该进行畸变的矫正,以达到消除畸变的目的,此其一。在该系列第一部分的博文中介绍的立体成像原理中提到,要通过两幅图像估计物点的深度信息,就必须在两幅图像中准确的匹配到同一物点,这样才能根据该物点在两幅图像中的位置关系,计算物体深度。为了降低匹配的计算量,两个摄像头的成像平面应处

2018-01-26 20:40:09 2175

转载 VS2017+OpenCV3.3基于SGBM算法的双目立体视觉、双目测距(双目校正和立体匹配)

前些日子做了一个关于双目立体视觉的入门作业,现在在这里总结一下学到的一些知识(写的可能会有很多欠缺的地方,还望海涵!) 本篇博客不涉及双目标定的知识,关于双目标定网上资料很多,大家可以自行查找学习。 先说一下本博客的双目立体视觉的实现基础,已知以下信息: (1)双目采集图像分辨率为1920X1024;(2)双目相机相对于虚拟焦平面的外参及各自内参如下: 左视相机: 内参

2018-01-26 20:39:02 3023 3

翻译 最近邻点比次近邻点

sift特征点直接运用BruteForce方法进行匹配会出现很多错误,因此我们运用最近邻点比次近邻点进行限制,可大大提高特征点匹配的正确率。 即:bestmatchBFMatcher matcher(NORM_L2, false);//定义一个匹配对象 vectorvector> matches2;//定义一个容器用来装最近邻点和次近邻点 vectormatches;//定

2017-12-27 20:51:35 2399

转载 仿射变换VS透视变换

序言       在图像处理中,对图像进行二维变换有仿射变换(Affine Transformation),透视变换(Perspective Transformation)(应该还有其他变换,但是我用到的比较多的是这两种变换)。一、仿射变换1、概念       仿射变换(Affine Transformation)是空间直角坐标系的变换,从一个二维坐标变换到另一个二

2017-12-22 12:44:37 244

转载 仿射变换OpenCV实现的最小二乘优化

仿射变换OpenCV实现的最小二乘优化本文由 @lonelyrains出品,转载请注明出处。 文章链接: http://blog.csdn.net/lonelyrains/article/details/49865683// opencv中关于仿射变换的实现代码:cv::Mat cv::getAffineTransform( const Point2f src[], const

2017-12-22 12:42:36 436

转载 特征检测和特征匹配方法

特征检测和特征匹配方法一幅图像中总存在着其独特的像素点,这些点我们可以认为就是这幅图像的特征,成为特征点。计算机视觉领域中的很重要的图像特征匹配就是一特征点为基础而进行的,所以,如何定义和找出一幅图像中的特征点就非常重要。这篇文章我总结了视觉领域最常用的几种特征点以及特征匹配的方法。在计算机视觉领域,兴趣点(也称关键点或特征点)的概念已经得到了广泛的应用, 包括

2017-12-19 19:25:24 9731 1

转载 Surf特征点检测与匹配代码分析

#include   #include   #include   #include   #include   #include     using namespace std;  using namespace cv;    vector ransac(vector queryKeyPoint,vector trainKeyPoint,vector matc

2017-12-12 15:23:12 954

转载 引入极线约束的surf特征匹配

[cpp] view plain copy#include   #include "opencv2/core/core.hpp"  #include "opencv2/features2d/features2d.hpp"  #include "opencv2/highgui/highgui.hpp"  #include "opencv2/nonfre

2017-12-12 15:21:11 811 2

转载 极线约束(epipolar constraint)

三维空间中一点p,投影到两个不同的平面I1、I2,投影点分别为p1,p2。p、p1、p2在三维空间内构成一个平面S。S与面I1的交线L1过p1点,称之为对应于p2的极线。同理S与I2的交线称之为对应于p1的极线(对应于左边图像点的极线在右边图像上,右边与之相同)。如图:所谓极线约束就是说同一个点在两幅图像上的映

2017-12-12 14:51:30 1964

转载 opencv双目视觉标定、匹配和测量 (附代码)

本文主要记录我自己在双目视觉标定,立体匹配,测量中遇到的问题和解决方法,并附有代码,文末有代码下载的地址,欢迎交流。博主使用的相机是USB双目免驱相机,相机驱动见另外一篇博客:USB免驱摄像头采集图像【VS2012+opencv+directShow(CcameraDS)实现】 

2017-12-12 14:31:39 1367

原创 相机内参外参

1、 相机参数是三种不同的参数。 相机的内参数是六个分别为:1/dx、1/dy、r、u0、v0、f。opencv1里的说内参数是4个其为fx、fy、u0、v0。实际其fx=F*Sx,其中的F就是焦距上面的f,Sx是像素/没毫米即上面的dx,其是最后面图里的后两个矩阵进行先相乘,得出的,则把它看成整体,就相当于4个内参。其是把r等于零,实际上也是六个。dx和dy表示:x方向和

2017-11-29 18:39:35 13710

转载 opencv3中SurfFeatureDetector、SurfDescriptorExtractor、BruteForceMatcher的使用 opencv2中SurfFeatureDetector

opencv3中SurfFeatureDetector、SurfDescriptorExtractor、BruteForceMatcher的使用opencv2中SurfFeatureDetector、SurfDescriptorExtractor、BruteForceMatcher在opencv3中发生了改变。具体如何完成特征点匹配呢?示例如下://寻找关键点int m

2017-11-29 14:24:35 1708 2

转载 Freak特征描述+BruteForceMatcher匹配+RANSAC剔除误匹配

Freak特征描述+BruteForceMatcher匹配+RANSAC剔除误匹配时间一晃飞快,前几日的广州之行让人难忘,置身炎热的户外仿佛蒸桑拿一样。这一段时间一直在研究一种从一幅图片中找到给定目标的方法,而基于局部特征提取并且进行特征的匹配可以实现。 目前局部特征描述子有以下几种,2004年发展成熟的SIFT后来改进的SURF,它们的描述符是高维度整型的数字。2010年出现

2017-11-28 14:23:31 587

转载 Opencv实现:SIFT特征提取+RANSAC剔除误匹配点

最近整理一下利用SIFT特征提取方法和RANSAC(随机抽样一致性方法)进行剔除无匹配点的内容,将实现过程进行记录。 程序注释的非常清楚了,新手也能很快看懂。 //读取图像 Mat img01=imread("3.png"); Mat img02=imread("4.png"); imshow("original image1",img01); ims

2017-11-28 14:19:35 4270 1

转载 SURF特征点检测与匹配之误匹配点删除

SURF特征点检测与匹配之误匹配点删除SURF(SpeededUp Robust Feature)是加速版的具有鲁棒性的算法,是SIFT算法的加速版。但是SURF特征匹配之后有大量的误匹配点,需要对这些误匹配点进行删除。这里不从理论上讲解SURF原理等,直接说用法。特征匹配的步骤分为三步:1、找出特征点2、描述特征点3、特征点匹配具体

2017-11-28 14:18:33 3070 3

转载 k-d tree算法的研究

k-d tree算法的研究(看这篇博文时,我主要的关注点是:特征匹配时,剔除误匹配点的方法)动机本文出自 “UnderTheHood” 博客,请务必保留此出处http://underthehood.blog.51cto.com/2531780/687160先前写了一篇文章《SIFT算法研究》讲了讲SIFT特征具体是如何检测和描述的,其中也提到

2017-11-28 14:15:21 240

转载 特征点匹配及消除误匹配点

Mastering OpenCV with Practical Computer Vision Projects 中的第三章里面讲到了几种特征点匹配的优化方式1. OpenCV提供了两种Matching方式:• Brute-force matcher (cv::BFMatcher) • Flann-based matcher (cv::F

2017-11-28 14:13:26 18102 1

转载 世界坐标系与像素坐标系的点互相转换

最近是多么的崩溃,昨天中了最新的cerber病毒,把我的电脑资料一扫而空,虽然有备份,但是已经是一周前的了。不得不加班加点补回来。这篇博客,这是我第二次写,我凭着记忆,重新写一遍之前写的,因为之前写好了,却不小心被删掉,然而CSDN又特别默契的在那一刻保存了一下,满满的都是伤心; 摄像机矩阵由内参矩阵和外参矩阵组成,对摄像机矩阵进行QR分解可以得到内参矩阵和外参矩阵。

2017-11-27 18:42:07 47695 14

空空如也

空空如也

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

TA关注的人

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