算法学习
YOYCod
君子不器,成己达人
展开
-
K-Means++算法 及应用
k-means算法是一种基本的聚类算法,这个算法的先决条件是 1)必须选择最终结果需要聚为几类,就是k的大小。 2)初始化聚类中心点,也就是seeds。 当然,我们可以在输入的数据集中随机的选择k个点作为seeds,但是随机选择初始seeds可能会造成聚类的结果和数据的实际分布相差很大。既然选择初始的seeds这么重要,那有什么算法可以帮助选择初始的seeds吗?当然转载 2016-12-28 19:41:32 · 4589 阅读 · 0 评论 -
SVD分解 Eigen库 opencv库
如题,使用库函数进行svd分解,形如 A = U * S * VT.Eigen 库:#include #include #include //using Eigen::MatrixXf; using namespace Eigen; using namespace Eigen::internal; using namespace Eigen::Architect原创 2017-03-30 19:09:53 · 18034 阅读 · 1 评论 -
FAST算法学习
FAST 全称 Features fromaccelerated segment test,一种用于角点检测的算法,该算法的原理是取图像中检测点,以该点为圆心的周围的16个像素点判断检测点是否为角点。FAST的基本实现过程如下:1.角点检测对于检测点p,若周围的16个像素点中有N个连续的点的像素值都比其小一个阈值 或 大 一个阈值,则该点可作为角点。即img[x] img[原创 2017-05-10 20:26:32 · 9951 阅读 · 0 评论 -
ORB_SLAM ORBextractor 特征点提取 opencv源码学习
大体结构如下:重载()运算符实现:1.计算图像金字塔2.特征点提取3.高斯模糊4.计算描述子Operate()void ORBextractor::operator()( InputArray _image, InputArray _mask, vector& _keypoints, OutputArray _原创 2017-07-05 15:53:26 · 1503 阅读 · 0 评论 -
最小二乘法 拟合平面直线
前言: 最近要实现一个算法,“对一系列点拟合出一条线,且区分出不属于改线的点”。在网上找了许多资料,用数学公式解释原理以及用matlab实现的居多,本文章主要解释用最小二乘法的进行点拟合成线,matlab 和 c++两个版本的代码实现。使用矩阵实现: 根据公式A = (X'*X)-1*X'*Y(这个公式可以拟合一条最接近点的曲线,而不仅仅是直线,具体请参照链接),原创 2017-01-03 19:15:32 · 25869 阅读 · 3 评论 -
BRIEF描述子算法学习
BRIEF(Binary Robust Independent Elementary Features)一种对已检测到的特征点进行描述的算法,它是一种二进制编码的描述子,在图像匹配时使用BRIEF能极大的提升匹配速度。算法步骤如下:1、为减少噪声干扰,先对图像进行高斯滤波(方差为2,高斯窗口为9x9)。2、以特征点为中心,取SxS的邻域大窗口。在大窗口中随机选取转载 2017-12-06 14:52:58 · 4642 阅读 · 0 评论