自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Faded

under the sea

  • 博客(38)
  • 收藏
  • 关注

原创 从NMS谈起——自适应非极大值抑制算法(ANMS)

自适应非极大值抑制算法自适应非极大值抑制算法是论文Multi-Image Matching using Multi-Scale Oriented Patches提出的一种算法。基本思想是评估所有interesting point的极大区域,并进行排序。具体来说,就是先选取很多的interesting point,组成集合S。对S中的每个点xix_i,寻找它的响应能作为区域最大值的区域半径rir_i,

2017-10-13 14:02:25 5876

原创 多视图几何学(Multiple View Geometry)读书笔记目录

##关于这个系列《计算机视觉中的多视图几何》是计算机视觉、三维重建的基础,但是由于它涉及的内容较多,英语术语也很多,初学者看起来往往感到吃力,我也是第二次看这本书才搞清楚其中的一些东西。于是整理阅读过程中的一些笔记,加深自己的理解。但是由于笔者整理过程中有时思路上的偏差,导致一开始成文顺序不是特别明朗,而CSDN貌似又没有博文的排序功能,故在此进行索引,标注出正确的顺序。欢迎指正。...

2017-08-04 21:42:16 5923 2

原创 迭代求解最优化问题——带约束问题

在求解最优化问题时,很多问题的变量会满足一定的约束,其数学形式为$$\min f(\mathbf x) \\ st. \mathbf C(\mathbf x)=0 $$显然,对于带约束问题,我们使用前面的方法进行求解时,一次迭代结束后得到的x很容易不满足约束条件。

2022-01-18 00:13:01 3104

原创 对极几何、姿态估计与尺度一致性

尺度不确定/不一致性通过分解本质矩阵可以反推t和R。显然X1Tt×RX2=0=X1Tst×RX2X_1^Tt^\times R X_2=0=X_1^Tst^\times R X_2X1T​t×RX2​=0=X1T​st×RX2​因此求出来的t也是无尺度的。对同一场景中的三帧,我们通过求解和分解本质矩阵的方法求出它们之间的相对位姿T12,T23,T13T_{12},T_{23},T_{13}T12​,T23​,T13​,由于单独两帧求解时存在尺度的不确定性,因此求出来的位置具有尺度不一致性,即T12

2021-12-25 01:32:18 4124

原创 对极几何

两视图几何对同一场景在两个不同的视角下观看,可以得到两张不同的图像,如图所示。与此相关的几何问题即两视图几何问题对极几何根据投影模型,场景中的同一点在不同的视角下所在的图像的像素位置存在一定的约束,这一约束称为对极约束。具体来说,假设世界坐标系下的某一点...

2021-12-13 23:05:04 2638

原创 特征匹配——以目标图像检测为例

问题描述标记定位是指在图像中寻找给定标记并框选标记所在区域的过程。这个问题包括两个部分:识别标记是否在图像中计算出图像中标记的边界。一个典型的标记检测的例子如下: 标记识别标记识别其实是在图像中进行标记的匹配的过程。关于图像匹配很自然的一个想法是逐点比较像素的RBG值。但是几何变换前后的图像我们通常认为是同一幅图像,考虑这一点,这种初级的想法是行不通的。对于图像的匹配我们一般使用特征点来进行

2021-11-26 00:01:09 2479

原创 从NMS谈起——实时ANMS

上一篇中讲到ANMS可以实现关键点在局部上的稀疏分布和全局上的均匀分布。然而由于时间复杂度太高,无法实时运行,因此不具备实用价值。### Approximate ANMS为解决这一问题,学术界通过近似,提出了能够实时运行同时效果接近于ANMS的算法。这里对Efficient adaptive non-maximal suppression algorithms for homogeneous spatial keypoint distribution 中提出的SSC算法进行介绍

2021-11-22 00:17:08 2676

原创 从NMS谈起——什么是好的特征

特征的评价提取特征时我们往往先提取关键点,再提取描述符。前者决定了我们用哪些点来代表一幅图像,后者决定了我们如何描述图像的内容。相应的,对于关键点和描述符都有不同的评价标准。对于描述符,我们希望对应点对的描述符尽量相似,非对应点对的描述符尽量不同。对于关键点,则没有这么简单。可重复性我们使用一副图像中的某些点(或者patch)来代表整张图像,因此对于关键点,我们希望它有明确的几何意义,因此现在使用的关键点往往是角点或者斑点。对于同一场景,我们希望提取的特征不随着视角和环境变化而大幅度变动,这实际上是希

2021-06-03 01:08:57 468

原创 MVG读书笔记——相机模型

我们平常接触到的世界是3维的,但是计算机视觉的研究中,感知到的信息都是二维的图像。从三维的世界到二维的图像的转换通过相机投影完成。

2020-05-11 01:58:05 753

原创 MVG读书笔记——单应矩阵估计这件小事(一)

参数估计是计算机视觉中经常遇到的一个问题,为较好的估计参数,人们发明了各种各样的算法。这里我们就以单应矩阵H的估计为例,一个个介绍这些常用算法。##DLT算法DLT(direct linear transform)算法是一个用于解决包含尺度的最小二乘问题的算法。可以解决的问题包括相机内参估计、单应矩阵估计、基础矩阵估计等。以单应

2019-04-11 00:28:09 2504

原创 SLAM从入门到放肆——SLAM简述

SLAM同时定位与建图(simultaneous localization and mapping,SLAM)是自动驾驶与增强现实领域中常用的技术。主要研究装置通过各种传感器在未知环境中的感知与定位问题。归根结底,SLAM是一个状态估计问题,即根据当前的观测(图像、IMU传感器读数等),判断当前自身所处的状态(自身的6自由度位姿,所在的地点的地图结构)。假设当前时刻k的状态为XkX_kXk​...

2019-01-09 20:35:35 6378

原创 迭代求解最优化问题——信赖域方法

信赖域方法前面提到了Line Search算法分为两步,首先确定方向,然后确定步长,实际上是假设近似模型在某一方向上可以较好的代表真实模型。Trust region算法则在此基础上,假设在一个选定的可信赖区域中,可以选择一个近似模型较好的代表真实模型,在此基础上,计算迭代增量。信赖域方法的一般形式由上面的表述我们可以得到信赖域方法的几个要素 1. 近似模型mkm_k 2. 可信赖区域Ωk={x∈

2017-12-26 04:03:30 10582 3

原创 迭代求解最优化问题——步长确定

线搜索前面提到迭代求解最优化问题的一般形式是xk+1=xk+Δx_{k+1}=x_k+\Delta。事实上我们可以把Δ\Delta分为两个部分:方向和步长。先确定方向,再确定步长的算法称为信赖域算法。它的一般形式为。梯度下降法和牛顿法其实在某种程度上只是确定了下降的方向。而下降的步长还需要我们自己确定。而对于不同的问题下降的步长往往也是不一样的。

2017-12-25 02:06:36 26679 6

原创 最大似然估计和最大后验概率估计

最大似然估计似然函数似然函数是一种关于统计模型中参数的函数,表示模型参数中的似然性。给定观测量x时,关于参数θ的似然函数L(θ)(在数值上)等于给定参数θ后变量x的概率:L(θ)=L(θ|x)=pθ=p(x|θ)=p(x;θ)L(\theta) = L(\theta|x)=p_{\theta} = p(x|\theta)=p(x;\theta)最大似然估计给定一组观

2017-12-16 15:51:37 2440

原创 几种特殊的平面射影变换

共轭旋转对旋转矩阵R,如果它有特征值{1,eiθ,e−Iθ1,e^{i\theta},e^{-I\theta}},分别对应特征值{a,I,J},其中a是旋转轴,θ\theta为旋转角,I,JI,J为与a正交的平面的虚圆点。假设单应矩阵H=TRT−1H=TRT^{-1}。则它是一个共轭旋转。共轭旋转的一个例子是相机绕它的中心旋转。平面透射有一条由不动点组成的直线(称为轴)和不在该直线上的一个不动点(称

2017-11-25 22:37:48 2352

原创 MVG读书笔记——求解结果的评价

在求出模型之后,我们往往需要对模型的正确性进行评估。这种正确性取决于许多因素,包括使用的点的数量和精度,匹配准确度,数据点之间的关系等(比如同一条直线附近的几个对应点对求出的单应矩阵可能在垂直于直线的方向就不太准确)。 对模型可靠性的度量常通过计算模型的协方差矩阵来进行,对单应矩阵来说,它的协方差矩阵是一个9×99\times 9的方阵。单幅图像误差两幅图像存在误差

2017-11-15 00:19:40 999

原创 距离变换及其数学推导

距离变换假设二值图像I,其中有前景点集F,背景点集B。则由通过距离变换可以得到距离图D。 其中 D(p)=min(d(p,q)),p∈F,q∈BD(p)=min(d(p,q)),p\in F,q\in B

2017-10-26 19:44:38 1552

原创 迭代求解最优化问题——Levenberg-Marquardt算法

高斯牛顿法使用的条件上一篇中提到了线性最小二乘问题minx||Ax−b||\min \limits_x ||Ax-b||的的标准方程为ATAx−ATb=0A^TAx-A^Tb=0。其中x为n维向量,b为m维向量,A为m×nm\times n的矩阵。从标准方程我们可以求出x的解析解,然而这其实隐含了一个条件,就是rank(A)=n。当A秩亏的时候,rank(ATA)≤rank(A)<nrank(A^T

2017-10-20 21:24:57 6194

原创 迭代求解最优化问题——最小二乘问题、高斯牛顿法

##最小二乘问题最小二乘问题是应用最广泛的优化问题,它的一般形式如下:$$\min_x ||r(x)||^2$$我们把r(x)称为残差函数。一个最简单的最小二乘问题就是线性回归问题,对于这个问题的求解可以上一节所说的梯度下降法。###线性最小二乘问题线性最小二乘问题是最简单的最小二乘问题,它的一般形式如下:$$\min_x ||Ax-b||^2$$线性最小二乘问题的求解很容易,令$$h(x) = ||

2017-10-17 14:27:20 16776

原创 迭代求解最优化问题——梯度下降、牛顿法

如前面所提到的,对于一些问题我们可能需要使用迭代的方法进行求解。迭代求解一般包括三个步骤:确定初值x0x_0确定每次迭代的增量dd进行一次迭代xk+1=xk+dx_{k+1} = x_k + d判断是否收敛或达到最大迭代次数,若没有,返回第二步。常用的迭代方法有梯度下降法,牛顿法,和它们的变种高斯牛顿法、L-M算法。梯度下降法梯度下降法直观的表述如图。图中心代表最低点。梯度下降法的主要思想

2017-10-17 03:45:47 7483

原创 MVG读书笔记——单应矩阵估计这件小事(四)

不同于之前提到的代数误差,几何误差往往不能直接解出。为优化几何误差,我们需要使用迭代的方法。迭代最小化的方法一般包括5个环节:

2017-10-02 01:50:10 956 5

原创 BRIEF,rBRIEF,BOLD——从Binary描述量说起

关键点,描述子在进行图像匹配的时候,为加快速度,也为了去除干扰,我们常常通过图像的关键点进行匹配。图像的角点、斑点等称为关键点。为使得关键点具有区分度(high variance)。我们使用一组向量来对关键点进行描述,称这组向量为描述子(描述量)。这组向量可以是直接对关键点周围patch的像素进行展开,可以使用关键点周围的梯度统计直方图构建,当然也有许多其它的方法。BRIEF为使得不同光照,视角下同

2017-10-01 01:12:23 2510

原创 MVG读书笔记——单应矩阵估计这件小事(三)

实际应用中,不同程序对于坐标原点的规定可能不同,坐标系的尺度也可能不同。于是问题就来了,在这些情况下我们通过两幅图像的对应点求解出的单应矩阵还是同一个么?即单应矩阵有没有不变性?

2017-09-10 19:46:31 1416 4

原创 MVG读书笔记——单应矩阵估计这件小事(二)

还是以两幅图像进行单应矩阵求解为例,上面讲到使用DLT算法一对对应点之间可以构成一个方程组Ah=0Ah=0,其中A为一个2×92 \times 9的矩阵。由此只需要4个点就可以求解出H矩阵。但是在实际的应用中,还有一些问题需要解决。超定方程一方面,我们得到的两幅图像的对应点往往多于4个点,从而得到一个系数矩阵A2n×9A_{2n \times 9},而由于噪声的存在,矩阵的行向量之间并不是线性相关的

2017-09-09 22:23:51 2969 2

原创 RANSAC算法应用

问题描述在对数据进行建模时,我们往往会遇到数据中存在异常数据(outlier,一般称为外点)的情况,如图,用一条直线拟合图中的点,其中左下和右上的点明显是外点。此时使用最小二乘法,则会由于外点的存在偏离正确模型较多,如下图,因此我们需要找出并剔除这些外点,从而得到一个较好的模型。RANSAC算法原理RANSAC(Random Sample Consensus)基本思想是通过多次随机抽取部分数据进行模

2017-08-30 21:59:59 1258

原创 MVG读书笔记——三维空间中的欧氏变换

三维空间中的射影变换基本是二维空间中变换的推广,在此不多赘述。且三维空间中我们一般只会用到欧氏变换。因此在此主要介绍欧氏变换##欧氏变换平面上的欧氏变换可以看作三维空间中欧氏变换的特例。平面上的欧氏变换旋转轴总是垂直于平面,平移的方向总是在平面上。而在三维空间中,欧氏变换的旋转轴和平移方向则不一定垂直。为了研究这种变换,我们引入了所谓了screw分解来对它进行简化。

2017-08-23 15:39:22 3146 2

原创 MVG读书笔记——三维空间中的射影几何(二)

##直线通常三维空间中的直线可以由两点的连线或者两平面的相交线确定,但它的表示却比较麻烦。三维空间中的直线有4个自由度。一个简单的解释是想象在两个正交平面上各取一个点,从而得到一条直线,这两个点各有两个自由度,因此合起来有4个自由度。

2017-08-23 00:48:21 1732

原创 MVG读书笔记——三维空间中的射影几何(一)

前面讲了2D情况下的射影几何和射影变换,我们用到更多的则是3D情况下的射影几何。这里只需对一些概念进行推广即可。##三维齐次坐标

2017-08-13 00:45:17 2199

原创 MVG读书笔记——射影变换的校正(三)

上一节讲到,知道了图像的C∗∞C^*_\infty,就可以恢复图像的部分度量性质,事实上,对C∗∞C^*_\infty进行SVD分解,就能得到图像的各种性质,分解如下: C∗∞′=HpHAHsC∗∞(HpHAHs)T=(HpHA)(HsC∗∞HTp)(HTAHTp)=[KKTvTKKTKKTvvTKKTv]\begin{align}C^*_\infty{'}&=H_pH_AH_sC^*_\inft

2017-08-13 00:34:16 1563

原创 MVG读书笔记——射影变换的校正(二)

虚圆点(circular points)上一节讲到仿射变换中无穷远处的直线是固定的。而其上的点是不固定的。这很容易理解,对一条直线沿着它的切线方向便宜,直线方程不变,但是上面的点的坐标却发生了变化。然而,由几何计算却可以发现对于相似变换,无穷远处有两个共轭的理想点是固定的,即 I=⎡⎣⎢⎢1−i0⎤⎦⎥⎥,J=⎡⎣⎢⎢1−i0⎤⎦⎥⎥ I=\begin{bmatrix}1\\-i\\0\end{b

2017-08-11 21:20:07 1371 2

原创 MVG读书笔记——射影变换的校正(一)

仿射变换中的固定直线上一节讲到,无限远处直线经过投影变换可能变成有限处直线,而对于仿射变换则不会出现这种情况。这是由仿射变换的性质决定的,证明如下: l′∞=H−TAl∞=[A−T−tTA−T01]⎡⎣⎢⎢001⎤⎦⎥⎥=⎡⎣⎢⎢001⎤⎦⎥⎥=l∞l'_\infty = H_A^{-T}l_\infty=\begin{bmatrix}A^{-T}&0\\-t^TA^{-T}&1\end{bmat

2017-08-04 20:54:44 1614 1

原创 MVG读书笔记——射影几何下的二次曲线

双曲线、椭圆、抛物线等统称为二次曲线(或圆锥曲线),它其实是三维空间中圆锥在截面上的投影,如图齐次坐标下的二次曲线表示二次曲线的在欧氏空间的方程为 ax2+bxy+cy2+dx+ey+f=0ax^2+bxy+cy^2+dx+ey+f=0 即一个二次多项式。 使用齐次坐标表示为 ax21+bx1x2+cx22+dx1x2+ex2x3+fx23=0ax_1^2+bx_1x_2+cx_2^2+

2017-08-01 13:39:52 5330 1

原创 MVG读书笔记——射影变换的校正(零)

直线的投影变换对直线l进行投影变换得到l’,有 l′=H−Tll'=H^{-T}l

2017-07-31 11:23:29 1332

原创 MVG读书笔记——射影几何下的直线

引入齐次坐标之后我们可以得到直线的表示方式。一条直线上的点满足方程ax+by+c=0。由此,我们可以用一个向量l=[a,b,c]T[a,b,c]^T来表示一条直线。判断点在直线上(直线过一点)对一点x=[x1,x2,1]Tx=[x_1,x_2,1]^T,使用直线方程可以很简单的判断点是否在直线上。通常使用向量形式,即x⋅l=0x\cdot l=0。直线的交点两条直线l,l′l,l'的交点x=l×l′

2017-07-24 18:29:47 2198

原创 MVG读书笔记——几何变换续

上一篇文章讲了欧氏变换和相似变换,这篇文章接着介绍剩下的变换。包括仿射变换和投影变换。仿射变换前面介绍了旋转、平移、缩放几种基础的变换。仿射变换则是在它们的基础上加上了类似于四边形不稳定性那种性质,这称为剪切变换,或错切变换。 错切变换的转换矩阵为 Q=[1shyshx1]Q=\begin{bmatrix}1&shx\\shy&1 \end{bmatrix} x、y为变换拉伸的方向。一个典型的

2017-07-23 14:57:37 1069

原创 MVG读书笔记——几何变换

德国著名数学家Felix Klein在他的Erlangen纲领中提出:“几何就是研究变换中的不变性的学科。”事实上,几何变换在几何的研究中占有重要地位。也是图形学应用的基础。下面我们就对常用的几何变换进行介绍:欧氏变换提到几何变换,最先想到的就是图形的平移和旋转,图形的平移和旋转统称为图形的欧氏变换,一个典型的欧氏变换如下图: 可以看到,从左边的正方形变成右边的正方形分为两步。一是将它沿着某方

2017-07-22 23:32:10 1949

原创 MVG读书笔记——齐次坐标与射影几何

几何学是图形学的基础。研究几何学则从最基本的点、线、面开始。这里我们从二维平面上的点开始,一步步研究图形学中常用的几何知识。欧氏几何欧氏几何是最简单、最常用的几何框架。欧氏几何由五条公理进行推导,得到了一个完整的公理系统。

2017-07-22 18:47:26 4343

原创 博客介绍

开这个博客呢,主要有几个原因,一是平时学习的过程中有很多东西要记下来。实验室电脑和个人电脑系统不一样,没有一个很好的跨平台的云同步软件,所以干脆直接写成博客,刚好CSDN的Markdown可以支持LaTeX公式,撰写起来比较简单。二是之前有个博客,但是主要是记录一些嵌入式、FPGA相关的东西。而这个阶段我不太想再搞这些了。以前的东西也不是很想再被看到。不如直接另开一个博客,和以前划清界限(误)。总的

2017-07-22 14:40:24 381

空空如也

空空如也

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

TA关注的人

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