自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(238)
  • 资源 (2)
  • 收藏
  • 关注

原创 二维图像的双线性插值

见下图,假设原图为单通道的灰度图,想求图像中某点Q(x,y)的灰度值。

2024-04-21 02:52:35 38

原创 手眼标定(外参)

flags的选项中有一个是CALIB_CB_CLUSTERING,可以使用or逻辑符与图案标识符一起设置,此时函数会以稍微不同的算法来寻找圆圈,这个替代算法对透视畸变具有较高的鲁棒性,但对背景的干扰也更加敏感,适合标定具有非常宽视野的相机。flags :(默认缺省)标识符,标识所采用的图案类型(对称圆点CALIB_CB_SYMMETRIC_GRID or 非对称圆点CALIB_CB_ASYMMETRIC_GRID)以及相关的算法参数。做圆点标定中的特征点提取时,发现对于部分存在较大透视畸变的标定图片,

2024-04-18 12:12:26 42 1

原创 windows系统下查找某目录中具有指定后缀的全部文件

打开cmd,进入到所要进行查询的目录:#全路径显示#如果只要纯文件名:

2024-04-12 11:44:33 110

原创 三维空间内的直线最小二乘拟合(代码经过实测)

【代码】三维空间内的直线最小二乘拟合。

2024-04-10 23:31:47 20

原创 计算2个空间向量支架的夹角(固定系欧拉角XYZ)分量

前提:固定系欧拉角,旋转顺序XYZ。

2024-01-25 18:08:48 104

原创 二维点集的凸包点寻找算法

利用凸凹最直接的性质去判断,即:两个相近的凸点组成的直线,将会把他们的近邻点完全隔离在直线的同一侧。如此一来,先选取一个明显的凸点,如y坐标最小的点,以它为出发点,贪婪式搜寻即可。如下图所示:假设0点为y坐标最小的点,图中带编号的点为其近邻点(kd-tree加速查找),遍历编号1~13的点,当遍历到点1时,点0点1组成的直线将点2~点13完全隔离在直线同一侧(条件),满足这个条件后,将点1作为下一轮的出发点,重复上述过程即可。

2024-01-12 16:44:39 182

原创 SVD+QR分解求点云法向量

利用到了QR分解求解方程组的方法。

2023-12-03 03:06:31 451

原创 使用主成分分析之特征向量法求点云法向量

我们知道主成分分析会得到特征值、特征向量,最大的特征值及其对应的特征向量则为主成分,表示数据分布的主方向。最小特征值对应的特征向量则可以认为是空间点云的法向量。

2023-11-26 01:54:17 597

原创 Eigen:旋转向量(Angle-Axis)转换为四元素和旋转矩阵

绕固定系旋转,旋转的先后顺序为X、Y、Z。当然也支持XYZ的任意顺序旋转。

2023-11-12 00:31:30 484

原创 C++保留小数后几位

#include #include ofstream ofs;ofs.open(xxx);ofs

2023-11-08 12:01:29 98

原创 求两个(法)向量之间的rpy夹角

【代码】求两个(法)向量之间的rpy夹角。

2023-11-04 02:10:18 204

原创 使用C++构建安全队列

【代码】使用C++构建安全队列。

2023-10-29 12:57:10 385

原创 基于Eigen的椭圆拟合

原理就是根据数据构建求解方程组,分析其系数矩阵的性质进行求解。

2023-10-29 00:59:09 170

原创 LS最小二乘圆拟合

是关于列旋转(pivoting)的QR分解。它对所有矩阵都适用,而且速度也很快。

2023-10-29 00:44:34 181

原创 查找内轮廓(孔洞)

参数列表中有个数据结构参数:hierarchy(译层次结构),hierarchy是一个向量,其元素个数与查找到的轮廓总数相同,每一个元素中包含4个int类型数据hierarchy[i][0]~hierarchy[i][3]。分别表示:1表示同一级轮廓的下个轮廓的编号,如果这一级轮廓没有下一个轮廓,则为-1。2表示同一级轮廓的上个轮廓的编号,如果这一级轮廓没有上一个轮廓,则为-1。3表示该轮廓包含的下一级轮廓的第一个的编号,假如没有,则为-1。

2023-09-19 00:35:04 166

原创 点云配准算法之NDT

如果随机变量X满足正态分布(即 X∼N(μ,σ) ),则其概率密度函数为:其中的 μ 为正态分布的均值, σ2 为方差,这是对于维度 D=1 的情况而言的。对于多元正态分布而言,其概率密度函数可以表示为:其中u 表示均值向量,而∑表示协方差矩阵。协方差矩阵对角元素表示的是对应的元素的方差,非对角元素则表示对应的两个元素(行与列)的相关性。协方差矩阵对角元素表示的是对应的元素的方差,非对角元素则表示对应的两个元素(行与列)的相关性。

2023-08-28 23:14:24 201

原创 高斯牛顿(非线性最小二乘优化方法)

【代码】高斯牛顿(非线性最小二乘优化方法)

2023-08-06 23:49:07 167

原创 求二维离散点集的凸包点

这类求解最外围的点集问题,我们称之为凸包问题,光光是⽤⾁眼去观察的话,这种问题我们很快就能得出答案,并且能马上说出哪⼏个点是解,但是如果让你敲代码,去解决这类的问题,可能很多⼈会不知道如何去下⼿。在讲解凸包这类问题的解法前,我们⾸先要先讲下向量积这个数学⼩知识。了解了上⾯这个数学⼩知识后,我们现在可以正式开始着⼿去解决凸包问题了,⾸先我们先思考下,如果我们要去解决凸包问题,我们就必须要⼀个个去寻找最外围的点,万事开头难,第⼀个点该从哪⾥找起呢?

2023-07-30 21:44:13 261

原创 vscode中task.json和launch.json的关系

坐标的label要跟 右边的 "preLaunchTask"对应。

2023-07-30 13:56:36 476

原创 一些三维点云去噪算法

噪声:也称为孤立点/离群点/异常点,是指点云数据中的不相关或不希望存在的干扰信号或误差。噪声来源:环境光线的明亮程度、测量设备精度及系统误差、物体材料及表面的纹理和人为抖动等因素影响。

2023-07-13 00:39:59 427

原创 手写算法! 每个小球都是独立唯一的。 盒子的数量是动态不固定的,每个盒子内的小球数量也是不固定的(至少1个)。从N个盒子里取球,每个盒子中每次取出一个,罗列出所有组合。

每个小球都是独立唯一的。盒子的数量N是动态不固定的,每个盒子内的小球数量也是不固定的(至少1个)。从N个盒子里取球,每个盒子中每次取出一个,要设计一套算法,罗列出所有组合。

2023-07-01 03:18:38 106

原创 ubuntu 20.04安装cloud compare

sudo apt install snapsudo snap install cloudcompare

2023-06-26 16:37:39 573

原创 使用Eigen库进行(X-Y-Z固定角坐标系)下的矩阵、RPY角、四元素之间的转换

固定一词指的是旋转是在固定的(不运动的)参考坐标系中确定的。也成翻滚角(Roll)、俯仰角(Pitch)、偏转角(Yaw).运行结果和输入结果一致,前提是输入要在合理范围内!

2023-06-09 11:37:16 371

原创 明度补正(基于OpenCV实现)

光源不足够稳定,不同时刻排出的图片的平均亮度不足够稳定时,可以采用明度补正的办法。我们往往需要一张理想的模板图作为标准的亮度水平,其余的图要往模板上尽可能的接近。

2023-05-20 23:32:59 170

原创 最小二乘least-squares拟合曲线(三次或多次)

基于最小least-squares去拟合出多次曲线,考虑到了所有的样本点,因此这种方法对噪声敏感,尤其是遇到较为明显的噪声时,曲线的形状易受干扰。

2023-05-07 23:11:20 445

原创 基于OpenCV(C++)实现的RANSAC随机抽样一致性的曲线拟合(二次)

这篇文章与其类似,只是从拟合直线变为拟合曲线(二次)。有时候只懂得拟合直线可能是不够的,甚至只拟合二次曲线都不一定能满足实际需求。但好在我们可以触类旁通,举一反三。对于学习算法的人,最重要的就是理解它的思想,久而久之形成自己的思想体系,以后遇到问题的时候就能在脑子里闪现出方案。活学活用四个字很简单,但做起来却是很难很难,跟做人一样,活到老学到老。

2023-04-04 23:11:17 1078

原创 基于OpenCV实现的RANSAC随机抽样一致性直线拟合

该方法最早是由Fischler和Bolles提出的一种鲁棒估计方法,最早用于计算机视觉中位姿估计问题,现在已广泛应用于已知模型的参数估计问题中。其思想比较直观和容易理解,即可从坐标点中随机抽取两点,计算一条直线,然后判断所有的点与该直线的吻合程度,不断重复直到挑选出最好的。w为点集中内点的比例,一般可以在初始时设置一个较小值,如0.1,然后迭代更新;n为模型参数估计需要的最小点个数,直线拟合最少需要2个点。本文介绍基于ransac随机抽样一致性随机抽样一致性的直线拟合方法,涵盖一下的内容。

2023-03-16 20:12:26 703

原创 OpenCV中phase函数及其输出的角度

输出的四个角度分别为: 45(第一象限平分线) , 315(第四象限平分线) , 135(第二象限平分线) , 225度(第三象限平分线)。而c++中atan2函数是通过正切值返回弧度的,并通过判断x,y的正负决定象限,因此c++中atan2函数值域是从-Pi到Pi的。在图像坐标系 (图中XY)中:phase输出的角度范围为:0~360,顺时针旋转方向(来计算角度,计算精度大约为0.3弧度,当x,y相等时,angle为0。默认为false,即弧度,当置为true时,则输出为角度。phase函数根据函数。

2023-03-15 15:52:37 283

原创 VS2017中集成QT环境,Qt关键字下面出现红线,无法解析

可以看到,工程默认的附加包含目录已经含有Qt_INCLUDEPATH_,但是电脑上并没有Qt_INCLUDEPATH_这个环境变量。如果不想设置 Qt_INCLUDEPATH_环境变量,那么就在VS中添加附加包含目录。那么新建Qt_INCLUDEPATH_变量,然后重启VS即可。右键打开工程属性页。

2023-03-09 11:40:33 590

原创 如何在微软官网上下载旧版本的visual studio

4.到这里就可以点击下载自己想要的版本了。3.下拉到最后,找到“1.进入微软官网首页,2.下拉,直到找到“”,如下图,点击,进入下一界面。想在微软官网下载旧版本的VS.”,如下图,点击进入下一界面。

2023-03-01 23:59:28 2677

转载 Max Pooling和 Average Pooling的区别,使用场景分别是什么?

最大池化可以提取特征纹理, 最大池化提取边缘等“最重要”的特征平均池化可以保留背景信息,平均池化提取的特征更加smoothly当特征map中的信息都具有一定贡献的时候使用AvgPooling,例如图像分割中常用global avgpool来获取全局上下文关系,再比如网络走到比较深的地方,这个时候特征图的H W都比较小,包含的语义信息较多,这个时候再使用MaxPooling就不太合适了, 是因为网络深层的高级语义信息一般来说都能帮助分类器分类。

2023-01-29 16:17:48 1560

原创 图像旋转任意角度及其后图中点坐标的对应变化

图像中有一个点P, 将图像旋转任意角度(默认旋转点为图像中心)后,求旋转后的图像?求原图中的点P在旋转后图像中的坐标?问题分为2大步去解决。1)得到旋转矩阵.主要是借助于getRotationMatrix2D算子。getRotationMatrix2D得到的矩阵为2行3列。2)计算旋转后图像的新大小,旋转后图像的宽高发生变化。此外,图像的中心位置也发生偏移,需要进行偏移量调整。

2023-01-28 14:17:58 744

原创 常用激活函数的比较、激活函数非0中心导致的问题

(神经网络:激活函数非0中心导致的问题)

2023-01-05 11:25:23 154

原创 手眼标定之九点法

包含使用背景、方法简述、案例代码。

2022-12-29 19:20:11 1886

原创 神经网络中常用的权重初始化方法及为何不能全初始化为0

在一个给定的区间[-r,r]内采用均匀分布来初始化参数。超参数r的设置可以按照神经元的连接数量进行自适应的调整。参数从一个固定均值(比如0)和固定方差(比如0.01)的高斯分布进行随机初始化。

2022-12-28 17:56:36 1462

原创 Win10从零安装、训练、部署yolov5 6.x一条龙实战案例

Win10 64位;:英伟达GTX 1050TI(配置较低):pytorch 1.7.1(python 3.6),基于Anaconda环境.:包含3类案例,1) OpenCV DNN(C++ 、Python,使用CPU进行推理),若想通过 OpenCV DNN利用GPU进行推理,则必须编译支持CUDA的OpenCV库;本人 只有CPU版本的OpenCV 4.5.4,没有尝试CUDA版本的OpenCV推理。往往在工程部署中,设备端是没有GPU的,所以本人也不想侧重于GPU推理。

2022-12-25 21:46:05 465 1

原创 深入浅出Yolo系列之Yolov3&Yolov4&Yolov5&Yolox核心基础知识完整讲解

知乎江大白,墙裂推荐!

2022-12-22 11:21:02 185

原创 C++开发面试常考

C++后台开发面试常考-pudn.com

2022-12-21 16:07:05 97

转载 一文讲清楚FPN+PAN结构、SPP结构

FPN 高维度向低维度传递语义信息(大目标更明确)PAN 低维度向高维度再传递一次语义信息(小目标也更明确)深层的feature map携带有更强的语义特征,较弱的定位信息。而浅层的feature map携带有较强的位置信息,和较弱的语义特征。FPN就是把深层的语义特征传到浅层,从而增强多个尺度上的语义表达。而PAN则相反把浅层的定位信息传导到深层,增强多个尺度上的定位能力。

2022-12-20 15:42:47 6220

原创 什么是SPP网络

例如:最后一层特征图大小为6*6*10,(width,hight,channels),global average pooling就是将6*6大小的特征图平均采样为一个值,这样最后就输出1*10大小的特征向量,这种方式就只和通道数有关,而与特征图大小没有关系了。使用不同的size,stride,对全连接层前的卷积层进行不同池化大小的pooling,然后拼接,这样最终的输出一定是(p1*p1+p2*p2+…2)替换网络中的全连接层,对最后的卷积层使用global average pooling。

2022-12-20 14:53:22 1720

Windows C++访问SQL SERVER数据库项目实战案例

Windows C++访问SQL SERVER数据库项目实战案例。 VS2015工程。 实现 连接、读取、修改等数据库常用功能,封装完整。 实测可用!!! Windows C++访问SQL SERVER数据库项目实战案例。 VS2015工程。 实现 连接、读取、修改等数据库常用功能,封装完整。 实测可用!!! Windows C++访问SQL SERVER数据库项目实战案例。 VS2015工程。 实现 连接、读取、修改等数据库常用功能,封装完整。 实测可用!!! Windows C++访问SQL SERVER数据库项目实战案例。 VS2015工程。 实现 连接、读取、修改等数据库常用功能,封装完整。 实测可用!!! Windows C++访问SQL SERVER数据库项目实战案例。 VS2015工程。 实现 连接、读取、修改等数据库常用功能,封装完整。 实测可用!!! Windows C++访问SQL SERVER数据库项目实战案例。 VS2015工程。 实现 连接、读取、修改等数据库常用功能,封装完整。 实测可用!!! Windows C++访问SQL SER

2022-09-05

棋牌格标定板图片(张氏标定法)

可直接用于相机的内外参标定

2022-02-14

棋盘格标定板图像(可用于张氏标定法)

可以直接用于进行相机的内外参标定

2022-02-14

空空如也

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

TA关注的人

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