1.直方图

用于计算图片特征,表达, 使得数据具有总结性, 颜色直方图对数据空间进行量化,好比10个bin

2. 聚类

类内对象的相关性高

类间对象的相关性差

常用算法:kmeans, EM算法, meanshift, 谱聚类(密度聚类), 层次聚类

kmeans聚类

选取k个类中心,随机选取

计算每个点跟k个类中心的位置

把数据点分配给距离最近的一个类中心

计算新的类中心-对该类中的所有点取均值

类中心数K的选取

K类平均质心的距离加权平均值, 当k=5时的斜率发生变化,我们可以选取5作为分类的个数

kmeans ++ 半随机(初始点的选取)

第一类中心 - 随机选取

记D(x) 为数据点x距离最近的聚类中心的距离

选取下一个聚类中心, 选取的概率正比于D(x) ^ 2

以此类推,到第k个

量化颜色直方图

聚类颜色直方图: 使用聚类算法对像素点颜色向量进行聚类, 单元由聚类中心代表

3. 边缘检测

像素明显变化的区域, 具有丰富的语义信息

用途: 物体识别,几何视角变化

定义: 像素函数快速变化的区域, 一阶导数的极值区域,二阶导数的0点位置

步骤:

先高斯去噪,再使用一阶导数获取极值

公式:        对x方向进行求导  б 表示的是标准差                                                    对y方向进行求导

梯度幅值/强度

hx(x,y)^ 2 + hy(x, y) ^ 2

梯度(增加最快)方向

arctan(hy(x, y)/ hx(x, y))

4. 兴趣点/关键点

稳定局部

特点: 可重复性,显著性

抗图片变化

外貌变化(亮度,光照)

几何变化(平移, 选择,尺度)

5.Harris角点

一种显著点:在任何方向上移动小观察窗,导致大的像素变动

  E(u, v) =  ΣW(x, y)[I(x+u, y+v)-I(x, y)] ^2

W(x, y)是高斯函数进行加权的, x,y表示当前位置, u和v表示移动了的位置

6.斑点(Blob)

拉普拉斯梯度:一阶导数极值点 - 二阶导数零点

梯度/边缘可以通过查找:二阶导数接近零, 一阶导数足够大

对噪声很敏感, 需要先做高斯平滑

公式: Δf = δ2f / δ2x +  δ2f / δ2y 对x求二阶导, 对y方向求二阶导

斑点是找拉普拉斯的极值

边缘是找拉普拉斯的零值

7.SIFT

SIFT特征计算

计算高斯差分(DoG)尺度空间,获取极值点

特征点处理: 位置插值, 去除低对比度点, 去除边缘点

方向估计: 2*2网格, 8个方向,获得最高值为关键点的主方向,特征点方向归一化,即所有方向为同一方向

描述子提取: 在旋转坐标上采样16*16的像素窗, 4*4网格,8方向直方图,总共178维

8.纹理特征

HOG(方向梯度直方图)

梯度幅值,方向 s = sqrt(sx^2 + sy^2)

Block 拆分

16*16的block 步长是8, 包含2*2个cell, 每个cell8*8, 9个方向

积累梯度幅值,使用位置高斯加权,使用相邻bin线性插值

64&128的维度图:7*15 * (2*2) * 9 = 3780

LBP(局部二值模式)

将每个像素点与周围点大小半径比较,半径R的圆上,均匀采样P个点,根据赫值大小,量化为0或1

图像特征与描述子(直方图, 聚类, 边缘检测, 兴趣点/关键点, Harris角点, 斑点(Blob), SIFI, 纹理特征)的更多相关文章

  1. BRIEF特征点描述子

    简介 BRIEF是2010年的一篇名为<BRIEF:Binary Robust Independent Elementary Features>的文章中提出,BRIEF是对已检测到的特征点 ...

  2. 第三讲_图像特征与描述Image Feature Descriptor

    第三讲_图像特征与描述Image Feature Descriptor 概要 特征提取方法 直方图 对图片数据/特征分布的一种统计:对不同量进行直方图统计:可以表示灰度,颜色,梯度,边缘,形状,纹理, ...

  3. Brief描述子

    一.Brief算法 1.基本原理 BRIEF是2010年的一篇名为<BRIEF:Binary Robust Independent Elementary Features>的文章中提出,B ...

  4. [OpenCV-Python] OpenCV 中图像特征提取与描述 部分 V (一)

    部分 V图像特征提取与描述 OpenCV-Python 中文教程(搬运)目录 29 理解图像特征 目标本节我会试着帮你理解什么是图像特征,为什么图像特征很重要,为什么角点很重要等.29.1 解释 我相 ...

  5. (一)ORB描述子提取

    ORBSLAM2中使用ORB描述子的方法 经典的视觉SLAM系统大体分为两种:其一是基于特征点法的,其二是基于直接法的.那么本文主要就讲特征点法的SLAM. 基于特征点法的视觉SLAM系统典型的有PT ...

  6. LBP纹理特征[转自]

    LBP方法(Local binary patterns)是一个计算机视觉中用于图像特征分类的一个方法.LBP方法在1994年首先由T. Ojala, M.Pietikäinen, 和 D. Harwo ...

  7. 图像的特征工程:HOG特征描述子的介绍

    介绍 在机器学习算法的世界里,特征工程是非常重要的.实际上,作为一名数据科学家,这是我最喜欢的方面之一!从现有特征中设计新特征并改进模型的性能,这就是我们进行最多实验的地方. 世界上一些顶级数据科学家 ...

  8. SIFT算法:特征描述子

    SIFT算法:DoG尺度空间生产  SIFT算法:KeyPoint找寻.定位与优化 SIFT算法:确定特征点方向  SIFT算法:特征描述子 目录: 1.确定描述子采样区域 2.生成描述子 2.1 旋 ...

  9. SIFT解析(三)生成特征描述子

    以上两篇文章中检测在DOG空间中稳定的特征点,lowe已经提到这些特征点是比Harris角点等特征还要稳定的特征.下一步骤我们要考虑的就是如何去很好地描述这些DOG特征点. 下面好好说说如何来描述这些 ...

随机推荐

  1. POJ3279 搜索/思维

    Fliptile Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 10457   Accepted: 3866 Descrip ...

  2. Mybatis整合Spring -- typeAliasesPackage

    Mybatis整合Spring 根据官方的说法,在ibatis3,也就是Mybatis3问世之前,Spring3的开发工作就已经完成了,所以Spring3中还是没有对Mybatis3的支持. 因此由M ...

  3. Linux修改字符集

    set NLS_LANG=american_america.AL32UTF8-----Linux下查看及更改oracle字符集编码[root@OracleDB ~]# cd /usr/local/or ...

  4. Deploying Qt or how to avoid “could not find or load the Qt platform plugin”

    (转自:http://www.tripleboot.org/?p=138) Once you’ve built your first Qt program, have you tried it on ...

  5. MissingNumber缺失的数字,FirstMissingPositive第一个缺失的正数

    MissingNumber问题描述:给定一个数组,数组数字范围是0-n,找到缺失的数字.例如nums={0,1,3},return2. 算法分析:第一种方法,对数组进行排序,然后找到和下标不一致的数字 ...

  6. c# 通过文件夹共享复制文件到服务器

    public static string[] GetFileNames(string directoryPath, string searchName) { return Directory.GetF ...

  7. 软工2017第三周作业之找bug——测试报告

    作业要求来自:https://edu.cnblogs.com/campus/nenu/SWE2017FALL/homework/957 环境:windows7  cmd命令行 要求1 bug计分.阅读 ...

  8. Python协程 Gevent Eventlet Greenlet

    https://zh.wikipedia.org/zh-cn/%E5%8D%8F%E7%A8%8B 协程可以理解为线程中的微线程,通过手动挂起函数的执行状态,在合适的时机再次激活继续运行,而不需要上下 ...

  9. ballerina 学习二十四 监控ballerina

    ballerina 服务的监控还是比较方便的,以及集成了Prometheus Grafana Jaeger Elastic Stack 监控服务监控的集成 主要包含以下几个步骤 a. 安装docker ...

  10. js中setAttribute 的兼容性

    js中setAttribute 的兼容性class和className兼容方法: object.setAttribute("class","content") ...