- 博客(21)
- 资源 (6)
- 收藏
- 关注
原创 相机标定中一些细节--畸变模型和参数
张正友标定方法做相机标定的主要过程是先估计每张图片的单应性矩阵,然后通过这一系列的单应性矩阵估计出内外参数初值,最后再考虑畸变模型的加入进行非线性优化。同时优化内参、外参和畸变参使得重投影误差最小。其中Brown-Conrady适用于畸变较小的情况,另外几个畸变模型都是针对广角和鱼眼镜头设计的。要做好一个相机的标定除了精确的标定板和规范的图片采集过程,还需要选择合适的标定模型和参数才能达到。在此主要讨论Brown-Conrady模型的一些情况。
2024-06-09 10:17:05 643
原创 2022.3.17 关于镜头标称焦距和相机标定的焦距的差异
2022.3.17 关于镜头标称焦距和相机标定的焦距的差异有些日子没聊点什么了,这些年一直在做计算机视觉相关任务。近日有朋友问了我个问题,问计算机视觉里面相机标定出来的焦距(focal length)和镜头标称的焦距怎么都对不上?比如一个12mm镜头,相机标定方法得出的焦距是以像素为单位,乘以单个像素(像元)的尺寸后得到的数值总是大一些。
2022-03-18 12:09:00 1127
原创 Calibration tool for 3D scanner based on line laser and camera
Calibration tool for 3D scanner based on line laser and camerahttps://github.com/jah10527/laserLineToolkitThis tool is available for free now!It is designed to calibrate the line structured light...
2019-06-07 19:23:11 765 1
原创 三星全球软考的一道题
目前三星软件相关的岗位通常需要进行软件考试,该考试有三个级别:advanced、professional、expert。不同的人员需要通过不同的级别。请移步至https://jah10527.github.io/articles/problem.html...
2019-05-12 12:53:22 998
原创 说说单应性矩阵(homography)在拼接全景图中的应用
说说单应性矩阵(homography)在拼接全景图中的应用单应性矩阵为一3x3矩阵,描述了射影几何中平面到平面的映射关系,其自由度为8,有九个元素组成,通常令最后一个元素为1或者使其F范数为1,该矩阵可将无穷远点投射于有限处,即空间中平行线在图像上相交于有限处。s⎡⎣⎢x′y′1⎤⎦⎥=H⎡⎣⎢xy1⎤⎦⎥=⎡⎣⎢h11h21h31h12h22h32h13h23h33⎤⎦⎥⎡⎣⎢xy1⎤⎦
2018-01-17 11:01:18 9411
原创 sfm从运动到结构
sfm,即structure from motion。从一堆同一场景的照片中恢复场景的三维结构和照片拍摄时相机的位置,可分为全局sfm和增量式sfm。全局sfm主要包括以下步骤:1.提取各张照片上的特征点及其描述;2.对所有照片相互进行特征点匹配;3.根据匹配的特征点计算照片i到照片j的相互位置关系(本质矩阵5点算法,或其它算法),得到view graph;4.对相互位置关系进行准确性验证(val
2017-12-21 21:20:57 7920 3
原创 扫地机器人的清扫路径规划
扫地机器人的清扫路径规划近一年多,断断续续地在研究扫地机器人根据所建立的地图,规划清扫路径的算法。先贴张效果图:
2017-08-26 15:38:55 13953 36
原创 树莓派2上运行LSD_SLAM
在树莓派2上运行了LSD_SLAM算法,大概为帧率为1帧每秒。其中使用opencv3.2版本,在树莓派2上直接编译release版本。在ubuntu平台上用arm-bcm2708hardfp-linux-gnueabi-编译器交叉编译的opencv3.2库会比树莓派平台直接编译的opencv库快3倍左右,但是目前不知为啥交叉编译的opencv库编译出的lsd
2017-06-19 20:17:52 2795 2
原创 计算机视觉中的李代数与李群
在计算机视觉领域的文献里经常会见到李代数和李群的概念,在此说说我个人对李代数与李群的理解。本人第一次遇见李代数与李群的概念是在研一时必修课《非线性控制系统理论与应用》上,在该课程中是使用李群与李代数来解决非线性控制系统精确线性化这一任务的。之后在计算机视觉课程中深入学习了双视几何,期间了解到三维旋转的不同表示方法。三维旋转的自由度为3,可以使用旋转矩阵、欧拉角、四元数和旋转向量来表示。
2017-04-12 10:43:12 3788
原创 LSD slam with stereo cameras (使用双目相机的LSD算法)
基于双目相机的LSD算法是一种在普通CPU上能实时高帧率运行的双目SLAM算法。与基于稀疏角点的一些SLAM算法不同,该算法直接使用角点、边缘和纹理等高对比度的一些像素的摄影连贯性来关联对齐图片。双目相机在同一时刻采集到的两张图片(空间维度)与双目相机前后帧之间的图片(时间维度),同时使用这时间维度和空间维度的图片来估计出这些像素的深度数据。而且双目相机可以克服单目SLAM中常出现的尺度漂移或不定的情况。此外文中还介绍了一种鲁棒方法用来对付环境光线渐变的影响,极大地提高了该双目SLAM在真实环境下的性能。
2017-04-07 14:31:21 6799 11
原创 棋盘格标定板角点的提取算法(摘取自开源算法PTAMM的相机标定部分)
在机器视觉领域,相机标定是一项很基础的任务。目前我们的经常使用的标定工具有opencv和matlab。opencv的棋盘格角点提取API需要我们指定棋盘格的横纵点数,才能进行角点的提取。其主要流程是把图片二值化,形态学处理,找到若干个四边形,给各个四边形编号,根据所获取的这一组四边形和设置的横纵点数进行漏掉的四边形补上、多余的剔除。若找失败,则改变二值化和形态学等参数继续这一过程,直到
2017-04-02 19:34:23 8968
原创 相机畸变中心(principal point)的基础矩阵估计方法
相机主点(principal point),即相机畸变中心的基础矩阵估计方法设相机前方一平面标定板的坐标为xc=[x,y,1]’,其所成的像的坐标为xd=[u,v,1]’,畸变矫正的坐标为xu,则xc与xd之间存在如下关系:其中F称为径向畸变基础矩阵(fundamental matrix for radial distortion),等于畸变中心点e=[cc1,cc2,1]
2016-12-27 12:12:48 9225 2
原创 里程计及基于双目视觉的视觉里程计(stereo visual odometry)
里程计在slam算法中扮演的作用不言而喻,通常里程计可以分为轮子编码器的里程计(wheel odometry)和视觉里程计(visual odometry)。而视觉里程计又可分为基于单目的视觉里程计(mono-camera odometry)和基于双目的视觉里程计(stereo odometry)。关于轮子编码器的里程计,当路面水平时精度尚可,否则误差越来越大,此时有基于IMU等传感器
2016-10-17 17:43:12 14749
原创 monoslam开源算法SceneLib2在64位ubuntu 16.04 上的安装过程
SceneLib2是一款开源slam算法,该算法在已知尺寸参照物附近徘徊时,相机姿态与特征点坐标估计比较精确,但是当相机视野远离参照物时,误差会变得越来越大。所以并不适合在大场景的应用。下面介绍下本软件在64位ubuntu16.04下的安装方法。下面是该代码的安装流程***************** Installation *****************1.
2016-09-06 16:15:12 2206 1
原创 双目视觉与虚拟现实之间
双目视觉是机器视觉的一个重要方向,双目视觉技术的最初目的是模拟人的双眼看周围的三维世界。该技术有一些特性又是人眼所不及的,如三维测量,三维重构等。人眼只能定性的感知到距离的远近,并不能定量的把具体的远近距离表示出来。但是双目也有其缺点,那就是双目匹配的难点,以及双目标定过程的复杂等。目前虚拟现实(Virtual reality, VR)技术中有一部分关键技术就是基于双目视觉而衍生出来的
2016-06-12 14:17:22 4329
原创 线结构光视觉传感器/线激光深度传感器标定工具
续集:线结构光视觉传感器/线激光深度传感器标定工具(续)https://jah10527.github.io/articles/lineLaser.html线结构光视觉系统有着结构简单、使用灵活、受周围光照环境影响小等一系列特点,在实际中得到广泛的应用。在该技术的使用中,标定是避免不了的一个环节。线结构光的标定过程大概可以分为两个部分:相机标定和线结构光标定。目前相机标定技术比较成熟...
2016-06-11 13:33:16 15069 30
原创 openTLD算法在opencv3版本下运行所需的修改
由于opencv3的各种版本相对于opencv2的版本已经改变了很多内容,openTLD跟踪算法所依赖的一些函数在opencv3中已经消失了,为此需要对openTLD进行适当修改才能使之在opencv3的各种版本中运行。加入如下文件,并在对应的地方include头文件即可。PatchGenerator.h#include namespace cv{c
2016-05-03 15:27:00 3941 4
原创 基于opencv3的本质矩阵(essential matrix)估计算例
至今opencv3面世快两年了,五一期间抽空看了下新增的几个关于双目视觉标定算法的使用。关于双目的标定有一类方法是基于本质矩阵(Essential matrix)的标定方法,本质方程与基础方程都是刻画双目视觉极几何关系的两个方程,只不过它们所使用的坐标系不一样而已,本质方程是在相机光心坐标系下描述的双目成像几何关系,而基础方程是本质方程在相机像素坐标系下的表示。由于本质矩阵
2016-05-02 08:58:25 17503 10
原创 stc跟踪算法的一点优化
关于STC跟踪算法的一些介绍可参见http://blog.csdn.net/zouxy09/article/details/16889905github上有一个较为完善的该算法的C++实现版本实现,见https://github.com/pby5/stc_tracker,该版本在树莓派2上跑能达到的帧率大概只有4帧。树莓派2代的Model B采用Broadcom BCM2836 9
2016-04-24 17:59:08 2686 4
原创 树莓派2配置opencv3和qt5
本文将阐述在Ubuntu环境下交叉编译opencv3.0.0和qt5.5.1的过程,目标平台为树莓派2首先搭建树莓派交叉编译环境,cd /optmkdir toolsgit clone git://github.com/raspberrypi/tools.git tools详细过程参考http://shumeipai.nxez.com/2013/10/08/configure-
2015-12-07 20:22:51 3122
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人