
计算机视觉
文章平均质量分 95
YuYunTan
只是一个学习的初步者
展开
-
《计算机视觉:模型、学习和推理》自学笔记(二)-概率(1)
概率概述前言概率前导概率定义公理化定义相对频率定义古典定义概率公理集合论集合运算概率空间随机变量联合概率边缘化条件概率贝叶斯公式独立性期望概率概述前言 上一篇自学笔记的博文,描述了计算机视觉和机器视觉的区别以及其含义和计算机视觉的简单历史。 本文之后的几个部分都是围绕概率和概率分布来进行,要知道,几乎所有...原创 2019-05-25 22:26:40 · 1600 阅读 · 6 评论 -
图像形成(3)理想相机模型
文章目录图像形成(3)理想相机模型前言必备知识(回顾)理想的透视相机具有内参的相机总结图像形成(3)理想相机模型前言 在针孔相机模型和朗伯表面的假设(在此博文中有描述)下,人们可以基本上减少图像形成过程,以追踪从物体上的点到像素的光线。 也就是说,知道空间中的哪个点投影到图像平面上的哪个点允许人们直接将该点处的辐射与其图像的辐照度相关联。透视投影的几何图形捕获了这个过程的本质,它可以简...原创 2018-11-15 09:15:28 · 1299 阅读 · 0 评论 -
MVG学习笔记(11) --变换层次
MVG学习笔记(11) --变换层次 射影变换组成一个群,称为射影线性群。 n×nn\times nn×n可逆实矩阵为一般线性群,称为GL(n)GL(n)GL(n)。将相差纯量因子矩阵视为等同得到射影线性群PL(n)PL(n)PL(n),是GL(n)GL(n)GL(n)的商群。 PL(3)PL(3)PL(3)的重要子群有仿射群和欧式群。仿射群是PL(3)PL(3)PL(3)中最后一行为...原创 2018-11-16 21:33:27 · 1027 阅读 · 1 评论 -
图像形成(5)球面透视投影和近似相机模型
文章目录图像形成(5)球面透视投影和近似相机模型球面透视投影近似相机模型图像形成(5)球面透视投影和近似相机模型球面透视投影 我们在博文图像形成(3)理想相机模型中描述的透视针孔相机模型考虑平面成像表面。 另一种常用的成像表面是球体,如图1所示。球面透视投影模型:三维点ppp的像是穿过光学中心ooo的光线与光学中心周围的半径为rrr的球体的交点处的点xxx。 通常rrr被选为111。...原创 2018-11-16 10:28:01 · 4849 阅读 · 1 评论 -
图像形成(4)投影几何语言中的图像形成
文章目录图像形成(4) 投影几何语言中的图像形成射影空间及其齐次坐标小例子-投影空间的拓扑模型无穷远点和"消失点(灭点,vanishing points)"的图像例子2-图像“在图像平面之外”图像形成(4) 投影几何语言中的图像形成 本文是上一篇文章的部分补充。 我们已经知道描述的透视针孔照相机模型的两个式子【系列的上一篇博文有描述】:λx′=KΠ0gX0\lambda x^\prim...原创 2018-11-16 09:22:16 · 787 阅读 · 0 评论 -
图像形成(2) 基本的辐射图像形成模型(扩展内容,可不阅读)
文章目录图像形成(2) 基本的辐射图像形成模型简版详版投影缩减(Foreshortening)和立体角(solid angle)辐亮度(radiance)和辐照度(irradiance)双向反射分布函数朗伯(Lambertian)表面朗伯表面的图像强度图像形成(2) 基本的辐射图像形成模型 下面将简要描述一个基本的辐射图像形成模型,并表明为了将模型简化为纯几何模型必须要进行一些简化。 我们会...原创 2018-11-14 16:07:12 · 1569 阅读 · 0 评论 -
MVG学习笔记(10) --射影变换的初步了解
文章目录射影变换的初步了解逆命题平面间的映射消除平面透视图像的射影失真直线与二次曲线的变换直线的变换二次曲线的变换博文内容总结和概览知识定理射影变换的初步了解 2D射影几何研究的是关于射影平面IP2{\rm IP}^2IP2在所谓射影映射的变换群下保持不变的性质。定义1 射影映射是把IP2{\rm IP}^2IP2到自身的一种满足下列条件的可逆映射hhh:三点x1,x2,x3{\rm x...原创 2018-11-12 17:25:15 · 4063 阅读 · 0 评论 -
李群与李代数大全(1) 在计算机视觉应用详细描述
文章目录李群与李代数大全(1) 在计算机视觉应用详细描述为什么说李群可以使用在机器人学和计算机视觉中三维欧氏空间向量叉积(Cross product)叉积例子(右手定则,Right-hand rule)反对称矩阵刚体运动刚体运动或特殊欧氏变换例子:三重积和体积旋转运动及其表示旋转的正交矩阵表示旋转矩阵$SO(3)$上的指数坐标(映射)$SO(3)$中的李对数罗德里格斯公式(Rodrigues' f...原创 2018-11-12 11:37:18 · 2490 阅读 · 0 评论 -
从零开始一起学习SLAM(10)神奇的单应矩阵
文章目录从零开始一起学习SLAM(10)神奇的单应矩阵神奇的单应矩阵快速理解单应矩阵从零开始一起学习SLAM(10)神奇的单应矩阵 此文发于公众号:计算机视觉life。 从零开始一起学习SLAM | 神奇的单应矩阵 小白最近在看文献时总是碰到一个奇怪的词叫“homography matrix”,查看了翻译,一般都称作“单应矩阵”,更迷糊了。正所谓:“每个字都认识,连在一块却不认识”就...转载 2018-11-14 10:47:26 · 661 阅读 · 0 评论 -
从零开始一起学习SLAM(9)不推公式,如何真正理解对极约束?
文章目录对极几何基本概念如何得到极线方程?作业 此文发于公众号:计算机视觉life。 原文链接:从零开始一起学习SLAM | 不推公式,如何真正理解对极约束? 自从小白向师兄学习了李群李代数和相机成像模型的基本原理后,感觉书上的内容没那么难了,公式推导也能推得动了,感觉进步神速,不过最近小白在学习对极几何,貌似又遇到了麻烦。。。 小白:师兄,对极几何这块你觉得重要吗? 师兄:当...转载 2018-11-08 17:20:38 · 702 阅读 · 1 评论 -
图像形成(完) 点和线的图像,原像和余像及系列博文总结
图像形成(完) 点和线的图像,原像和余像及系列博文总结 通过前面的该系列博文,博主相信各位已经建立了一个点的透视图像的概念。 原则上,这允许我们定义3D中任何其他几何实体的图像,其可以被定义为一组点(例如,线或平面)。 然而,正如我们从球面投影中看到的那样,即使对于一个点,对于其图像也存在看似不同的表示:两个向量x∈R3x\in \mathbb{R}^3x∈R3和y∈R3y\in \mathb...原创 2018-11-17 09:51:38 · 1753 阅读 · 0 评论 -
各向异性(anisotropic)浅提
文章目录各向异性(anisotropic)定义哪种物体具有各向异性反射?什么导致各向异性反射?总结各向异性(anisotropic)定义 它指一种存在方向依赖性,这意味着在不同的方向不同的特性,相对于该属性各向同性。当沿不同轴测量时,它可以定义为材料的物理或机械特性(吸光度,折射率)的差异,电导率,拉伸强度等)该定义摘自维基百科 我们关注的元宝是计算机视觉领域,在计算机图形学领域...原创 2018-11-22 20:19:28 · 17348 阅读 · 0 评论 -
g2o学习记录(7)g2o例子-沿着球体行走的机器人(新旧版本g2o实现)
文章目录前言介绍代码代码说明注意说明结语前言 该例子参考于SLAM十四讲的第十一讲第274页。介绍 真实的轨迹是一个球,从上往下的多个层组成。每层为一个正圆形,很多个大小不一的圆形层组成了一个完整的球体,共包含2500 个位姿节点(如下图),可以看成一个转圈上升的过程。 然后程序生成t−1t-1t−1到ttt时刻的边,称为odometry里程计,此外又生成在层与层之间的边,称为...原创 2019-01-02 22:31:16 · 1177 阅读 · 38 评论 -
g2o学习记录(6)旧版本g2o的g2o_viewer在ubuntu16.04的运行报错解决
文章目录旧版本g2o的问题问题的探查原因处理和解决旧版本g2o的问题 最近使用g2o_viewer查看g2o的文件的时候会报错。 报错的问题输出如下:*** Error in `g2o_viewer': realloc(): invalid pointer: 0x00007f2d983e5820 ***======= Backtrace: =========/lib/x86_64...原创 2019-01-02 16:56:24 · 2531 阅读 · 0 评论 -
g2o学习记录(3)源码下的example例子运行
g2o(3)源码下的example例子运行 由于我使用的是Cmake3.5.1版本,高版本必须加上cmake_minimum_required(VERSION 3.5) 第一次运行cmake命令的时候会出现:/usr/bin/cmake -DCMAKE_BUILD_TYPE=Debug -G "CodeBlocks - Unix Makefiles" /home/tanqiwei/D...原创 2018-12-26 10:58:55 · 2685 阅读 · 0 评论 -
g2o学习记录(2)官方文档的阅读及理解
文章目录g2o学习记录(2)官方文档的阅读及理解前言g2o描述和介绍基本定义SLAM而言的例子超图g2o的目的(超)图可嵌入优化问题超图优化问题最小二乘优化关于线性化方程组结构的思考流形上的最小二乘法稳健最小二乘库的概览g2o类图优化问题的表示线性化问题的构造与表示初始化计算误差线性化方程组构建线性方程组更新Levenberg-Marquardt求解器(Solvers)扩展知识:舒尔补Action...原创 2018-12-25 23:08:23 · 3921 阅读 · 0 评论 -
g2o学习记录(1)安装和运行其下面的unit_test项目
文章目录前言安装依赖项运行unit_test结语前言 最近对新版本的g2o进行学习,相关的安装我这里就稍微说一下,以作记录,最主要的倒是它的unit_test的那个项目测试,调试得我真的是一言难尽,最后才调试出来,但是在其中一部分的调试并运行中,感觉是自己的处理有问题,或者原g2o就没处理好。这部分只能一个个的该,需要一定的权限,这就是真的尴尬的局面了。 我是在2018年12月21日进行...原创 2018-12-22 20:26:49 · 3499 阅读 · 0 评论 -
g2o学习记录(5)g2o例子-曲线拟合(新旧版本g2o实现)
文章目录前言代码代码说明曲线拟合问题描述流程步骤问题建模顶点的定义这是实现的cpp边的定义这是实现的cpp误差函数的设计具体实现旧版本的g2o实现新版本的g2o实现总结前言 该曲线拟合的例子来源于高翔,但是他的版本首先是g2o过旧,这里面包含了新旧版本的g2o中曲线拟合的实现,其次是不适用于现在的版本,而且存在使用Opencv的依赖项。本次实现不需要Opencv的依赖项,不过看个人喜好,我在...原创 2018-12-27 20:03:55 · 3656 阅读 · 11 评论 -
g2o学习记录(4)cmake-gui再次编译g2o及不太完美的处理cs.h错误[20190323已找到完美解决方案](非干货纯记录,可不看)
文章目录前言第一次cmake-gui安装g2o安装cmake-gui第二次cmake-gui编译g2o第三次cmake-gui安装第四次cmake-gui安装g2o不太完美的解决cs.h但编译时....总结前言 最近编译运行g2o的example下的例子代码时,出现了cs.h no such file or directory。后面考虑再三,打算重新编译一次g2o,这次不采用命令行的cmak...原创 2018-12-27 17:20:10 · 5984 阅读 · 13 评论 -
OpenCV3.4.x版本+Opencv_contrib+Ubuntu16.04安装记录
文章目录前言安装过程安装前的必备包安装依赖包处理图像所需的包处理视频所需包opencv功能优化部分依赖包可选依赖编译和安装运行测试安装过程命令总结前言 Opencv发展至今,已经到了4.0版本稳定版的出现,但是项目上,很多人还是估计喜欢3版本,4.0版本才刚刚出来,而且相应的学习书籍还没出现,所以本人还是喜欢用3版本的opencv,而且因为多台电脑开发,所以有时候opencv需要多装许多次,...原创 2018-12-15 19:48:44 · 5528 阅读 · 0 评论 -
PCL学习(1)PCL初玩
PCL学习文章目录PCL学习@[toc]前言安装说明一步步引导做例子关于CMakeLists.txt具体实践官网的例子解释参数总结前言 最近进行毕设论文的设计时,博主学习计算机相关学习的过程中,但是浏览中感觉PCL进行点云可视化十分强大,而且除此之外,对于本身研究方向的扩展的SLAM中,MRPT的显示也是很用科技感觉。 对于这两个的学习,想要加入自己的学习历程。但是苦于快要毕业,这部分...原创 2018-12-09 11:22:11 · 4487 阅读 · 5 评论 -
从零开始一起学习SLAM(8)相机成像模型
文章目录小孔成像纷繁复杂的坐标系针孔相机成像原理相机畸变 此文发于公众号:计算机视觉life。 原文链接:从零开始一起学习SLAM | 相机成像模型上一篇文章《从零开始一起学习SLAM (7) 为啥需要李群与李代数?》以小白和师兄的对话展开,受到了很多读者的好评。本文继续采用对话的方式来学习一下相机成像模型,这个是SLAM中极其重要的内容,必须得掌握哦~ 小白:师兄,上次听你讲了李群...转载 2018-11-08 17:14:32 · 560 阅读 · 0 评论 -
从零开始一起学习SLAM(7)为啥需要李群与李代数?
文章目录为啥需要李代数?李群怎么理解?李代数是李群的亲戚吗?反对称矩阵是啥?指数映射如何计算呢?李群李代数之间的指数对数映射关系李代数推导 此文发于公众号:计算机视觉life。 原文链接:从零开始一起学习SLAM | 为啥需要李群与李代数? 很多刚刚接触SLAM的小伙伴在看到李群和李代数这部分的时候,都有点蒙蒙哒,感觉突然到了另外一个世界,很多都不自觉的跳过了,但是这里必须强调一点,这...转载 2018-11-08 17:05:12 · 711 阅读 · 0 评论 -
从零开始一起学习SLAM(6) 三维空间刚体的旋转
文章目录三维空间中刚体的旋转表示1 旋转矩阵2 四元数3 旋转向量4 欧拉角矩阵线性代数运算库Eigen作业 此文发于公众号:计算机视觉life。 原文链接:从零开始一起学习SLAM | 三维空间刚体的旋转 刚体,顾名思义,是指本身不会在运动过程中产生形变的物体,如相机的运动就是刚体运动,运动过程中同一个向量的长度和夹角都不会发生变化。刚体变换也称为欧式变换。 视觉SLAM中使用的...转载 2018-11-08 16:52:18 · 624 阅读 · 0 评论 -
多视图几何的数学基础知识的掌握(2)--李群李代数
文章目录前言多视图几何的数学基础知识的掌握(2)--李群李代数三维重建的起源三维欧式空间叉乘与反对称阵刚体运动刚体运动的表示旋转的指数坐标李群$SO(3)$李群与李代数李群定义指数映射$SO(3)$的对数李群与李代数的图解可视化罗德里格斯的公式$SE(3)$李群表示刚体运动$SE(3)$运动旋量(twist)的李代数(The Lie Algebra of Twists)$SE(3)$的指数坐标相机...原创 2018-11-02 18:31:42 · 1271 阅读 · 0 评论 -
MVG学习笔记(7) --自动标定和3D图形模型
文章目录自动标定已知在无穷远处的平面给定图像中的方形像素进行自动校准3D图形模型视频增强自动标定 在不了解相机标定的情况下,不可能比射影重建做得更好。 在任意数量的视图中的一组特征对应中没有信息可以帮助我们找到绝对二次曲线的图像,或者相当于相机的校准。 但是,如果我们只知道相机的校准,那么我们就可以确定绝对二次曲线的位置。 例如,假设已知对于从图像序列重建场景中使用的每个相机的校准是...原创 2018-11-01 11:14:49 · 755 阅读 · 0 评论 -
【文献翻译】ICE-BA: Incremental, Consistent and Efficient Bundle Adjustment for Visual-Inertial SLAM
文章目录前言文献信息【文献翻译】CVPR2018论文:ICE-BA:视觉惯性SLAM的增量,一致和高效的束调整摘要1、引言2、相关工作3、框架3.1约束函数3.2 局部和全局优化4、VI-SLAM的高效求解器4.1 一般增量BA解决器4.2 局部BA的改进4.3 IBA的增量PCG5、相对边缘化6、评估6.1 算法验证6.2 局部准确性6.3 解决器精度6.4 与Google Tango进行定性...翻译 2018-11-01 11:13:34 · 3048 阅读 · 0 评论 -
MVG学习笔记(6) --迁移和欧几里德重建
文章目录迁移(Transfer)欧几里德重建迁移(Transfer) 我们已经从一组图像讨论了3D重建。 投影几何的另一个有用的应用是迁移(Transfer):给定一个(或多个)图像中的点的位置,确定它将在该组的所有其他图像中出现的位置。 为此,我们必须首先使用(例如)一组辅助点对应来建立摄像机之间的关系。 概念性地迁移是直接给出一个重建是可能的。 例如,假设在两个视图(x\rm xx...原创 2018-10-31 16:18:25 · 655 阅读 · 0 评论 -
多视图几何的数学基础知识的掌握(1)--线性代数相关
文章目录前言多视图几何的数学基础知识的掌握(1)线性空间线性空间的定义小题目举个例子子空间举个例子线性独立性和基基的性质向量的内积规范和诱导内积勾股定理(毕达哥拉斯定理)正交分解柯西-施瓦茨不等式三角不等式平行四边形恒等式克罗内克乘积(Kronecker Product)和矩阵的拼接(stack)例子例子线性变换和矩阵规范化定义单射(injective)线性群$GL(n)$和$SL(n)$示例群的...原创 2018-10-31 15:58:27 · 1654 阅读 · 2 评论 -
MVG学习笔记(5) --四视图几何和n视图重建
四视图几何和n视图重建 可以使用基于张量的方法再进行一步,并定义四个视图中可见的四焦点张量相关实体。 然而这种方法很少使用,因为计算符合其内部约束的四焦点张量的相对困难。 然而,它确实提供了基于四个视图计算投影重建的非迭代方法。 然而,张量方法不会扩展到超过四个视图,因此从四个以上的视图重建变得更加困难。 从几种观点考虑了许多方法进行重建,我们考虑了其中的一些方法。 一种方法是使用三...原创 2018-10-29 09:32:24 · 1111 阅读 · 0 评论 -
MVG学习笔记(4) --三视图几何
三视图几何 在上一次博文中,讨论了如何从一组点的两个视图重建一组点,以及相机的相对位置。 重建可能仅限于空间的射影变换,以及对相机矩阵的相应调整。 在本博文中,我们考虑三种观点的情况。 而对于两个视图,基本代数实体是基础矩阵(fundamental matrix),对于三个视图,这个角色由三焦点张量扮演。 三焦点张量是3×3×3数字阵列,其涉及三个视图中对应点或线的坐标。 正如基础矩阵...原创 2018-10-28 15:16:56 · 3293 阅读 · 0 评论 -
经典霍夫变换(Hough Transform)
引言历史和简介历史简介原理例子1例子2霍夫变换提取直线如何实现?实现机理是为何?实现使用的例子说明描述简单闭合矩形城市场景遥感应用实现算法描述代码实现matlab版本python实现Opencv实现浅提霍夫变换提取圆步骤霍夫变换提取圆的一些实现链接浅提广义霍夫变换基本霍夫变换的限制结语引言 本文讲述...原创 2018-04-29 11:56:19 · 91650 阅读 · 32 评论 -
【文献翻译】LSD: A Fast Line Segment Detector with a False Detection Control
前言 博主译文水平不好,为了学习,所以进行论文翻译和研究,博文以译文为主。如果有翻译不对之处,还请各位指出,便于我修改。 文献信息 引用格式:Gioi R G V, Jakubowicz J, Morel J M, et al. LSD: A Fast Line Segment Detector with a False Detection Control[J]. IEEE Trans...翻译 2018-04-22 11:27:27 · 5160 阅读 · 0 评论 -
旋转表达之四元数
文章目录旋转表达之四元数四元数四元数运算加减法乘法标量乘法四元数乘法共轭模与范数四元数的逆四元数的数乘四元数的点乘(点积)四元数的叉积四元数指数,对数和幂函数四元数表示旋转四元数与旋转矩阵的转换四元数恢复轴角表示四元数的特殊子群文章目录旋转表达之四元数四元数四元数运算加减法乘法标量乘法四元数乘法共轭模与范数四元数的逆四元数的数乘四元数的点乘(点积)四元数的叉积四元数指数,对数和幂函数四元数表示旋...原创 2018-11-07 17:54:04 · 6975 阅读 · 1 评论 -
MVG学习笔记(8) --背景和平面几何
文章目录原创 2018-11-05 15:14:53 · 411 阅读 · 0 评论 -
从零开始一起学习SLAM(5) 为什么要用齐次坐标?
文章目录为什么使用齐次坐标什么是齐次坐标?使用齐次坐标有什么优势?1 能否非常方便的表达点在直线或平面上2 方便表达直线与直线,平面与平面的交点3 能够区分一个向量和一个点4 能够表达无穷远5 更简洁的表达欧氏空间变换作业 此文发于公众号:计算机视觉life。 原文链接:从零开始一起学习SLAM | 为什么要用齐次坐标?为什么使用齐次坐标 在涉及到计算机视觉的几何问题中,我们经常看到...转载 2018-11-08 16:34:07 · 822 阅读 · 1 评论 -
从零开始一起学习SLAM(4)C++新特性要不要学?
文章目录从零开始一起学习SLAM | C++新特性要不要学?为何要学习新特性?常用的C++新特性1 更方便的列表初始化2 省心省力的自动类型推导3 简洁舒服的循环体4 简洁的lambda表达式5 随心所欲可变长的参数模板6 其他新特性练习题 此文发于公众号:计算机视觉life。 原文链接:从零开始一起学习SLAM | C++新特性要不要学?从零开始一起学习SLAM | C++新特性要不要...转载 2018-11-08 16:21:49 · 416 阅读 · 0 评论 -
旋转表达之Lie-Cartan坐标及欧拉角
文章目录旋转表达之Lie-Cartan坐标及欧拉角讲解欧拉角预知描述和定义几何定义(静态定义)Tait-Bryan角万向锁数学公式说明万向锁总结旋转表达之Lie-Cartan坐标及欧拉角讲解 指数坐标(eω^te^{\hat{\omega}t}eω^t)和单位四元数q=q0+q1i+q2j+q3k{\rm q}=q_0+q_1i+q_2j+q_3kq=q0+q1i+q2j+q3k都可...原创 2018-11-11 15:55:30 · 1998 阅读 · 2 评论 -
从零开始一起学习SLAM(3)SLAM有什么用?
文章目录从零开始一起学习SLAM | SLAM有什么用?初步认识SLAMSLAM的应用1 定位相关应用2 建图相关应用讨论 此文发于公众号:计算机视觉life。 原文链接:从零开始一起学习SLAM | SLAM有什么用?从零开始一起学习SLAM | SLAM有什么用? SLAM是 Simultaneous Localization And Mapping的 英文首字母组合,一般翻译为...转载 2018-11-08 10:22:24 · 1003 阅读 · 0 评论 -
从零开始一起学习SLAM(2)学习SLAM到底需要学什么?
文章目录编程环境数学计算机视觉相关英语开源代码数据集作业 此文发于公众号:计算机视觉life。 原文链接:从零开始一起学习SLAM | 学习SLAM到底需要学什么? SLAM涉及的知识面很广,我简单总结了 “SLAM知识树” 如下所示: 可以看到涉及的知识面还是比较广的。这里放出一张SLAM圈子里喜闻乐见的表达悲喜交加心情的漫画图,大家可以感受一下: 每个学SLAM的小伙伴...转载 2018-11-08 10:15:30 · 782 阅读 · 0 评论