三维测量与建模
文章平均质量分 64
亦枫Leonlew
嵌入式开发相关工作10+年,熟悉ARM/RISC-V架构,曾在展讯、华为工作
热爱技术,喜欢分享
喜欢自驾游和户外徒步,成都的朋友可以约起来
目前方向是3D视觉
展开
-
三维测量与建模笔记 - 7.3 表面建模概念和方法
当我们通过3D扫描设备对物体进行扫描后,会得到三维点云,通过表面建模,我们会重建出物体的3D模型。如果想得到完整的物体的3D模型,需要对物体进行多个角度的扫描并通过拼接算法重建。经过处理得到的3D模型,在很多场景中都有大量应用,下图是一些典型的应用。原创 2024-12-23 21:10:09 · 929 阅读 · 0 评论 -
三维测量与建模笔记 - 7.2 点云滤波
最初投影结果如右上所示,红色点投影到了比较集中的一个小范围中,然后通过迭代优化,红点之间相互排斥,但排斥的距离不会超过绿点约束的范围,因为绿点对红点有吸引力。左下图是经过几轮迭代后,红点逐渐散开到整个表面,右下图是经过多次迭代后得到的较为理想的均匀分布的情况。选取要计算的点和它周围一定范围内的点可以拟合出一个平面,最基本的方法是通过最小二乘法取对这些点到平面的距离进行优化(计算量很大)。WLOP改进了LOP,主要是加入了一项基于点云密度的局部权重项,并且初始的X可以理解为是原有点云的一个下采样的点云。原创 2024-12-16 21:42:56 · 590 阅读 · 0 评论 -
三维测量与建模笔记 - 7.1 三维点云的基本特征
三维点云学习(2)中kd-tree 实现代码来自黎老师github三维kd-tree 的图示如下图所示,为三维kd-tree的切割图,进行三个维度的切割,kd-tree的本质就是对三个维度的数据点不断构建平衡二叉树。这种方法,既可以看成是四叉树方法在三维空间的推广,也可以认为是三维体素阵列表示形体方法的一种改进。多个离散的3D点对应上图的点云。体素(Voxel)是3D空间的像素,量化的,大小固定的单位体积组成(可类比2D的像素,只是体素多了一个维度),每个单元都是固定大小和离散坐标。原创 2024-12-12 20:48:15 · 916 阅读 · 0 评论 -
三维测量与建模笔记 - 6.2 结构光三维成像简介
双目视觉系统中,找到左右图像中的同名点是很困难的。即便是经过了极线校正,也存在很多问题比如高光等造成无匹配。对于结构光方案来说,找到同名点的过程会相对简单些。结构光方案中,会增加一个投射器,将编码后的光束打到物体上,由于投射的图案本身是预知的,可以起到辅助定位的作用。结构光方案有多种,摄像机数量上看有单目和双目的,编码方式上看有线激光、格雷码编码、伪随机吗等方案。结构光重建有很多应用,其成本较低,精度高,能满足很多工业场景。原创 2024-12-10 21:02:45 · 412 阅读 · 0 评论 -
三维测量与建模笔记 - 6.1 双目立体视觉系统
参考如下两篇笔记:几何角度理解相机成像过程_亦枫Leonlew的博客-CSDN博客本笔记从几何角度来理解相机的成像过程,我们生活在三维世界中,相机所捕捉到的画面是2D的,3D空间中的点是如何投影到2D平面的过程是本笔记关注的。三角测量的原理如上图,假设以左相机为基础坐标系,则有相机的矩阵P'和左图像之前相差一个[R|t]变换,通过这两个相机矩阵可以算出两个同名点链接两个光心的射线,射线交于一点(理想情况下交于一点,实际中存在误差大概率无法相交,需要进行额外计算),这个点就是该点在三维世界中对应的位置点。原创 2024-12-09 21:18:24 · 1934 阅读 · 0 评论 -
三维测量与建模笔记 - 5.3 光束法平差(Bundle Adjustment)
一、高斯牛顿法发展历程1、从上倒下为高斯牛顿法的前世今生已经未来的演化:最速下降法(一阶梯度法)牛顿法(二阶梯度法)高斯牛顿法列文伯格法马夸尔特法二、高斯牛顿法引出的前世注:由于原理的相似性,最速下降法和牛顿法可以统称为一阶,二阶梯度法1、最速下降法考虑如下优化目标函数:..._gauss-newton算法步骤。如上图,在不同位姿下对同一个物体采集到了一系列图像, 例子中有四张图片。物体上某点M,在四幅图像上都能找到其观测点。此篇笔记尚未理解,先做笔记。原创 2024-12-03 20:48:29 · 459 阅读 · 0 评论 -
三维测量与建模笔记 - 5.2 二视图重建
上面的公式中,m1表示M点在左成像平面上观测到的点位置,P1M是通过相机投影矩阵计算出来的M在左成像平面上的对应点位置(m2,P2M也是相同理解,只是所有位置是在右平面)。通过找到多组同名点,就有多个重投影误差项,我们的目的是找到这些所有重投影误差之和,使这个值最小化,在这个过程中,可以找到最优的P1和P2。理想情况下,在左右两幅图像中找到同名点后,连接同名点和光心会产生两条直线,这两条直线会相交于一点,这个点就是物体世界中该点的位置。第一步,对一个物体拍摄出很多图像,这些图像组成一个图像序列。原创 2024-12-02 21:14:05 · 622 阅读 · 0 评论 -
三维测量与建模笔记 - 5.1 对极几何-基础矩阵-本质矩阵
从式子可以看出,本质矩阵将空间中的某个点M在左右两个归一化平面上的两个点联系起来了,E包含了两个平面的旋转和平移信息。回忆一下基础矩阵F的式子,基础矩阵将空间中的某个点M在左右两个实际成像平面上的两个点联系起来了。原创 2024-11-27 21:52:30 · 1772 阅读 · 0 评论 -
三维测量与建模笔记 - 点特征提取 - 4.6 特征匹配
下图是一个特征匹配的例子,表格的意思是对于左边图像的5个特征点,分别和右图的五个特征点进行匹配的分值。比如左图的特征点1和右图的特征点1的相似分值是0.96。特征匹配的一个典型应用时全景图片拼接,多张图片中需要有重复的可辨别的区域。计算特征相似性的常见方法。原创 2024-11-22 21:06:25 · 296 阅读 · 0 评论 -
三维测量与建模笔记 - 点特征提取 - 4.5 SURF-FAST-ORB
SURF的步骤和SIFT基本一致,只是在每个步骤上都进行了优化以减少计算量。原创 2024-11-21 20:43:41 · 720 阅读 · 0 评论 -
三维测量与建模笔记 - 点特征提取 - 4.4 SIFT
SIFT(Scale Invariant Feature Transform),尺度不变特征变换。具有旋转不变性、尺度不变性、亮度变化保持不变性,是一种非常稳定的局部特征。在目标检测和特征提取方向占据着重要的地位。SIFT算法所查找到的关键点是一些很突出,不因光照、仿射变换和噪声等因素而变化的点,比如角点、边缘点、暗区亮点或亮区暗点等。上图展示了DoG空间的一个例子,不同的。关键点检测SIFT算法笔记-CSDN博客。和k所产生的细节是不一样的。原创 2024-11-19 20:57:09 · 904 阅读 · 0 评论 -
三维测量与建模笔记 - 点特征提取 - 4.3 Harris特征点
一般来说,角点就是极值点,在某些属性上强度最大或者最小的孤立点、线段的终点或拐点等。其实理解角点可以按照我们的直觉来理解,以下图为例,图中用颜色标注的地方都是角点:对于人类来说,判断角点是很容易的,对于计算机来说又是如何检测到角点的呢?从上面描述可以看出,如果窗口处于颜色变化不明显或者没有变化的区域,E的值很小或为0;如上图,当图像亮度和对比度发生变化时,计算结果会不一样,导致角点检测失败(阈值检测失败)。在3D重建应用中,很重要的一个场景是找到两幅图像中的同名特征点,这个过程需要对特征点进行提取和描述。原创 2024-11-18 21:20:53 · 988 阅读 · 0 评论 -
三维测量与建模笔记 - 特征提取与匹配 - 4.2 梯度算子、Canny边缘检测、霍夫变换直线检测
如上图所示,图像空间中两个蓝色点、一个橙色点在一条直线上,褐色点不在一条直线上,则对应参数空间中,有三条曲线交于一个公共点,有一条曲线则顶多和某一条直线在某个位置有交点,不会通过前面三条线的公共点。如果将图像空间切换到参数空间(以m和b为基础坐标系的空间),此时x,y成了参数,m,b是变量(比如已知b求m)。在图像空间(x,y轴组成的平面)中,将直线上的点x,y称为变量,直线的斜率m和截距b称为参数。第二步是对图像空间中的边缘点进行迭代,找到对应曲线经过的H空间坐标,对应坐标的统计数加1。原创 2024-11-14 22:41:50 · 1436 阅读 · 0 评论 -
三维测量与建模笔记 - 特征提取与匹配 - 4.1 梯度信息提取
上面说的“可关联性”,举一个例子,比如我们拍摄一个凹凸不平的金属表面,在某个角度拍的时候,从图像中可以看到这些凹凸不平的地方,但是换个角度(或者光照发生变化)拍就看不到了。上图是使用某种边缘检测算法计算后得到的边缘,由于两只大象的颜色是相近的,因此左边大象头部和右边大象身体的差异不大,因此算法得到的结果更多地反映了大象和背景的区分。图像边缘提取在很多应用中都需要,比如自动驾驶中的车道线提取,生物影像中血管、细胞的边缘,自动驾驶中语义分割等。图像处理中,通常使用卷积来做各种运算,比如均值滤波,边缘检测等。原创 2024-11-13 21:20:49 · 636 阅读 · 0 评论 -
三维测量与建模笔记 - 3 Python Opencv实现相机标定
【代码】三维测量与建模笔记 - 3 Python Opencv实现相机标定。原创 2024-11-12 20:44:00 · 583 阅读 · 0 评论 -
三维测量与建模笔记 - 3.3 张正友标定法
上图中,提到了世界坐标系在张正友标定法中的设计,可以理解为将世界坐标系的原点放到了棋盘格左上角点的位置,并且棋盘格平面上所有点的Z为0,将Z规定为0的话,可以简化掉一个维度(列向量r3)。替换后的这两个等式,只包含单应矩阵的列向量和K(相机内参),h1, h2可以通过已知的世界坐标系的点和相机观测到的像素点得到单应矩阵后拿到,因此求解出K就能得到相机内参。b向量里的值是我们要求解的,总共有6个元素(6个未知数),因此理想情况下,3张图像就能得到6个方程,就能求解出内参矩阵了。, 用上面的等式,将。原创 2024-11-07 21:35:13 · 1459 阅读 · 0 评论 -
三维测量与建模笔记 - 3.2 直接线性变换法标定DLT
总共有14个变量,经过整理后的L参数总共有11个。因此理论上讲,只要6个[X,Y,Z]和[u,v]点对儿(12个方程)就能解出所有L参数。(u,v)是像点坐标,(X,Y,Z)是世界坐标系统的相点位置。移到右侧,整理合并后将分子和分母上的X的系数分别用。引入畸变参数后,总共有16个L,写成线性方程形式。表示,以此类推,可以得到相点坐标的方程。对于标定来说,需要找到。参数就相当于将原来的。原创 2024-11-06 21:31:54 · 685 阅读 · 0 评论 -
三维测量与建模笔记 - 3.1 相机标定基本概念
相机几何模型基于小孔成像原理,相关文章很多,上图中R t矩阵是外参矩阵(和相机在世界空间中的位姿相关),K矩阵是内参矩阵(和相机本身参数相关,比如焦距,像素大小,镜头畸变等)。上图是一个实际案例,左上的图标注了径向畸变的畸变值变化情况,可以看到随着半径的增大畸变也越厉害。切向畸变一般都比较小,因此各处畸变的值都很小。标定的参照物,有三维空间标定设备如上图,也有2D平面标定设备如棋盘格标定板。无畸变情况下,三维世界坐标下的点通过以下变化可以得到像素坐标系上的坐标点。笔记所说的相机标定主要是指几何标定。原创 2024-11-05 21:04:02 · 611 阅读 · 0 评论 -
三维测量与建模笔记 - 2.2 射影几何
对于齐次坐标理解,可以参考下图,可以知道W=1时,相当于X点所在的平面抬升到了垂直高度为1的位置,对于无穷远的点,W=0, 因此无穷远的点相当于这个平面回到了原点高度位置。交比看下图,中心点为S,发出四条射线(绿色),蓝色直线与这四条射线相交于A,B,C,D四个交点,交比定义为AB*CD/BC*AD。共点不变性,下图中黄色方块标记的点,在射影变换前后,虽然直线的形状有所变化,但仍然相交于同一个点。共线不变性,下图黄色标记的两个点,在射影变换前后,仍然在同一条直线上。教程中H矩阵写的有问题,上图中。原创 2024-11-04 21:01:48 · 711 阅读 · 0 评论 -
三维测量与建模笔记 - 2.1 坐标转换基础
平移可以看做是对原始的x和y加上了一个偏移,也可以理解为按照给定的平移向量进行移动。缩放变换,本质是对x,y乘上一个缩放系数。综合缩放、旋转、平移矩阵乘法的顺序会对结果有影响,需要注意。2D欧式变换是在2D平面内进行的变换。单应变换可以理解为从一个2D平面变换(映射)到另一个2D平面的操作。原创 2024-10-28 21:16:16 · 973 阅读 · 0 评论 -
三维测量与建模笔记 - 1.简介
主要有两个最主要的层面,几何和语义。几何层面描述了客观事实,比如物体的尺寸、大小、形状、位置等。语义层面则是从人类抽象出的概念出发,描述了物体是什么、行为是什么、为什么,比如自动驾驶场景中识别出信号灯,行人等物体,并能感知到这些物体的行为。原创 2024-10-16 21:24:50 · 317 阅读 · 0 评论
分享