图像提取特征(下)| 学习笔记

简介: 快速学习图像提取特征(下),介绍了图像提取特征(下)系统机制, 以及在实际应用过程中如何使用。

开发者学堂课程【高校精品课-华中科技大学 -智能媒体计算图像提取特征(下)】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/811/detail/15707


图像提取特征(下)


前面讲了 SIFT 手工的这种局部特征。还有很多其它的手工的局部特征,大家可以去看一看,团队撰写过这种特征的整个特征融合的综述,后面的参考图片。

image.png

下面再介绍一种深度的特征的提取,已知 CNN 为例,CNN 叫卷积神经网络,深度学习应该说这十几年,非常滞后。它是一个简单的什么层层的这个堆点,卷积层Pooling 层,需要就把它再次增加,局部的连接卷积层与层之间的话局部相连,也就是权值共享就是同一个通道的这个所有神经元,它共享相同的参数。

另外就是传统的全神经网络向MLP网络它的计算量减少层数更是,同时什么最近的若干这种深度学习神经网络越来越火了其实得益于这几个因素

第一就是对于 CNN 的普及

比如数据变大,有大的数据集,比如说 ImageNet其实对这个整个 CNN 的普及起到了推动作用,另外现在的计算机强大的计算能力,尤其是 GPU 这种加速性能,为这种计算的多层的反复迭代的计算提供了可能。另外还有 ReLU 这种激励函数的 Rropout  机制共同推动

另外就是训练的数据充足。大数据,你能够找到大量的训练基地,运算速度快,将强大的运算能力,收敛速度快,RELU 激励函数是导致收敛速度快,前面一个是大数据使得训练数据充足。强大的 GPU   CPU 的处理运算速度快, ReLU 使得收敛速度快。Dropout机制使得过拟合不容易产生,这样共同使得训练大而深的这种神经网络成为可能

卷积神经网络的发展,你看从1980年以后,经过了近40年的发展,有各种各样的网络的模型出现,就去搜索这个相应的这个网络的名字,可以找到它的原始的论文以及相应的一些应用场景。局部特征,提取了详细的算法,课后可以去下载提取的它的源代码,然后去真正的人可以用 matlab 或者自己用这个 Python 或者是其他语言设计,来看看它的效果

下面看一看局部特征,无论是手工的,还是深度的这种局部特征提取之后要进行编码,作用就是局部特征数量大,他空间开销大,能对们进行适当的压缩,同时能够形成一个图像的单一并长的表示,比方说不同的图像提出来的长度不同,将来没办法怎样进行匹配怎么去配置

编码方法有很多比如可以利用 0阶的统计信息都发生的频数信息像 BOW(BOF/TF-IDF)另外利用一阶统计信息,一般用它的均值 ,VLAD ,IntraVLAD/ASMK 等,VLAD 在图像检索里用的很多,后面会以特征编码来进行解释。

还有利用的二阶统计信息就是方差,比如说 FV以及 IFV / TE以及 FAemb 等等二阶的统计信息其实同时利用了一阶和二阶,而对于深度的这种局部特征可以通过一些池化的方法

通常有讲和池化,叫 SumPooling ,像 CroW / SPoC 描述符都是通过和池化,还有个平均池化,叫 AveragePooling ,另外还有个最大池化,叫 R-MAC 描述符。

以这个局部特征描述符- VLAD 为例介绍:

那么它的名称叫局部描述符聚合向量。比如 SIFT 128位形成的一个向量叫 Vector ofAggragate Locally Descriptor,叫 VLAD  ,这里在图像检索大量的文献里边引用了这个。

生成步骤:

第一步提取 SIFT 特征,然后聚合生成词汇向量,怎么生成词汇向量,用了 k-means 的算法。前面的课程讲过,在这里面的码子就是这个 k-means算法得到的,每一个聚类里面,就 class 里边的,它的至心,这里叫中心。这是它的字子。马书就是这个码子的集合,就是就是说分成了很多很多,像这里。你把一个空间,把它分割成了若干的 class  ,若干的区域,每个区域是可以找到中心,这个中心就是码字,每个中心点把它集合在一起,就是它的码书。生成 VLAD 向量怎么做,就是对每一幅图像落在同一个聚类中心区域里面的残差进行累加。

它的残差是什么,比如说落在了这个区域,.X点,它本身的这个特征值跟这个中心值求一个差,这个叫叫残差,把这个残差怎么给它加起来,因为它有不同维,每一维都放在不同的区域里它都有一个残差,把这个残差 sigma 起来。就是它的 VLAD

描述符的分布有四部:

一个是分配,聚合残差归一化,还有串连

第一步输入局部特征集合,进来以后分配,就是将特征分配到最近的码字

K-means 算法,k 要足够的大,一般要大于4096。再就是对聚合,聚合 sigma,聚合残差聚合各个码字对应的这个特征的残差,然后对它进行归一化。归一化后各个聚类产生的残差,最后把它串联起来,这就是 VLAD。

那么有了这个以后,每一幅图像都有一个定长的 VLAD 的向量,拿它去建索引,去检索就变得容易。

举一个例子:

左边这幅图它 VLAD 的向量是上面这一块,这幅图像是下边这一块。

这两幅图像它是有变化的,它远近,要么就是角度不同。它的整个的整个的 VLAD 向量是非常接近的,注意的是 VLAD 的输入是 SIFT ,里面存的是梯度,是主方向,剩下这个图不就是角度不同。这就有了统一的一个全局的定长的表示,这就为图像下一步的图像的建索引建检索,实现检索变得基础

image.png

图像描述服务深层浅层,按照时间排序进行了这个综述,可以参考下列文献,了解他整个的发展脉络。

相关文章
|
2月前
|
编解码 自动驾驶 测试技术
【论文速递】PETR: 用于多视图 3D 对象检测的位置嵌入变换
【论文速递】PETR: 用于多视图 3D 对象检测的位置嵌入变换
|
8月前
|
存储 传感器 数据可视化
3D目标检测数据集 KITTI(标签格式解析、3D框可视化、点云转图像、BEV鸟瞰图)
本文介绍在3D目标检测中,理解和使用KITTI 数据集,包括KITTI 的基本情况、下载数据集、标签格式解析、3D框可视化、点云转图像、画BEV鸟瞰图等,并配有实现代码。
738 1
|
2月前
|
自然语言处理
将向量提取器用于平行语料对齐的一个小示例
将向量提取器用于平行语料对齐的一个小示例
25 0
|
2月前
|
算法 机器人
[3D&Halcon] 3D鞋点胶的点云边界提取
[3D&Halcon] 3D鞋点胶的点云边界提取
311 0
|
12月前
|
编解码
使用遮罩提取图像中感兴趣的区域
使用遮罩隔离感兴趣区域 (ROI) 来有效地处理被阻止的图像。 某些大图像源仅在图像的一小部分中具有有意义的数据。可以通过将处理限制为包含有意义数据的 ROI 来缩短总处理时间。使用掩码定义投资回报率。蒙版是一种逻辑图像,其中像素表示投资回报率。
92 1
|
12月前
|
存储 监控 计算机视觉
基于颜色特征的图像检索系统
基于颜色特征的图像检索系统。
96 0
|
存储 机器学习/深度学习 传感器
【图像隐藏】基于DWT与SVD算法实现数字水印嵌入提取附matlab代码
【图像隐藏】基于DWT与SVD算法实现数字水印嵌入提取附matlab代码
|
安全 知识图谱
三维点云的开放世界理解,分类、检索、字幕和图像生成样样行
三维点云的开放世界理解,分类、检索、字幕和图像生成样样行
214 0
|
机器学习/深度学习 传感器 算法
【图像隐藏】基于RS码结合小波变换实现数字水印嵌入与提取附Matlab代码
【图像隐藏】基于RS码结合小波变换实现数字水印嵌入与提取附Matlab代码
|
人工智能 人机交互
可组合扩散模型主打Any-to-Any生成:文本、图像、视频、音频全都行
可组合扩散模型主打Any-to-Any生成:文本、图像、视频、音频全都行
143 0