视觉信息处理与检索——入门

概述

图像识别目标

让计算机将语义概念相似的图像划分为同一个类别

图像识别面临挑战

语义鸿沟现象

  • 图像底层视觉特征和高级语义概念之间的鸿沟

    • 不相似的视觉特征,相同的于一概念(不同视角、不同光照、不同大小)
    • 相似的视觉特性,不同的语义概念
  • 在深度学习之前,总是想认为设置不同的特征、尺度来更全面地表达图像。

  • 深度学习回避了这个问题,很多层的神经网络,可以表示不同层的信息,完成特征的表达,比人为的设置特征更强,更精确。

图像识别基本框架

测量空间 -> 特征空间 -> 类别空间

传统方法与深度学习方法的区别

  • 传统方法:设计特征

  • 深度学习:学习特征

传统图像识别技术

早期图像识别技术(1990-2003)

流程:特征提取(颜色、边缘) → 索引技术 → 相关反馈 → 重排序

注: 但早期做的还是比较少,因为计算机存储、算力都达不到。

全局特征提取

图片被表示成向量。

用全局的视觉底层特性统计量表示图像。

  • 颜色
  • 形状
  • 纹理

流程

原图片 → 向量空间映射 → 向量表示(相似度高的图片在空间中所标识的点更为接近)

特征变换

提高特征的表示性能

  • 空间变换

    • 相以的物体 → 距离近
    • 不相似的物体 → 距离远
  • manifold learning / embedding

    • 映射为低维空间下的向量表示,常用方法如 PCA、MDS、ISOMAP、LLE、Laplacian Eigenmap
  • 简单特征变换

    • 中心化
    • 归一化

索引技术

  • 穷举搜索
    • 效率太低,时间复杂度太高
  • 改进方式
    • 牺牲精度,寻找近似的最近邻居
  • 常用方法
    • KD-Tree,LSH(Locality Sensitive Hashing)

相关反馈

反馈类型

  • Explicit feedback:反馈正例或者负例
  • Implicit feedback:根据可观察的行为推断用户意图

重排序

根据相关反馈,重新计算权重、距离值,做一个重新的排序。

早期图像识别的问题

全局特征丢掉了图像细节

例:全局的颜色直方图就会丢掉位置信息。

解决方法:把一张图片分为好多块,每一块来做颜色直方图,从而一定程度上代表了位置信息,也就有了后面的 中期图像识别技术

中期图像识别技术(2003-2012)

特征提取 → 向量化 → 索引技术 → 后处理

文本搜索的经典模型 — 词袋模型(Bag - of - Words)

提取文档的关键词,看搜索的文本与关键词的匹配度。

图像也可以使用类似(Bag - of - Words),即视觉词袋。

特征提取

局部特征(Local Feature):图像区块(patch)的向量

可以用来表示:位置信息 + 视觉内容信息

  • 图像中的哪个区块 - 区块坐标:

    • 特征检测子(Feature Detector)
    • 检测图像区块中心位置( interest points )
    • 局部检测子:Harris, DoG, SURF, Harris - Affine, Hessian - Affine, and MSER……
  • 把图像区块表示为向量:

    • 特征描述子(Feature Descriptor)
    • 描述区块的视觉内容
    • 局部描述子:SIFT, PCA - SIFT, GLOH, Shape Context, ORB, COGE……

向量化

视觉词典的生成

图像向量 对应到 特征空间 ,再根据 特征聚类 形成 视觉关键词

局部特征 → 视觉关键字

  • 局部特征转化为视觉关键词(即特征量化,Feature Quantization )

    • 对每一个局部特征,查找其在视觉词典里距高最近的视觉关键词,把局部特征的向量转化为该视觉关键词在词典中的序号。
  • 常用特征量化技术

    • Hierarchical 1- NN(最近邻)
    • KD - tree

基于视觉关键词的图像表示

图像 → (特征提取) → 局部特征 → (特征量化) → 视觉词袋 → 视觉关键词数量直方图

索引技术

  • 倒排索引

  • 排序:根据不同的视觉单词,对检索到的图片加权 → tf - IDF 加权( Term frequency - inverse document frequency )

后处理

  • 查询拓展:原有査询项含有更多的局部特征,再进行扩展查询。

  • 其它后处理技术:局部几何验证( Local Geometric Verification ),乘积量化( Product Quantization )等等。

总结

早、中期的图像识别技术特点:通过人工设置的底层、中层的特征,来进行图像检索,特点,特征都是人工设置的。

优势:人工设置的特征指向性更清晰。

劣势:受限比较多,特征有时仅能代表局部的图片。

深度学习与图像识别

通过深度学习,使计算机自己确定特征,使得到的

深度学习在图像领域的应用

  • 图片检索

  • 识别异常肿瘤或者癌细胞

  • 图片描述

  • 图片着色

为什么使用深度学习

  • 传统方法:人工特征提取+分类器
  • 深度学习:手工地选取特征是一件非常费力、启发式(需要专业知识)的方法,能不能选取好很大程度上靠经验和运气,而且它的调节需要大量的时间。深度学习便避免了这项缺陷。

模拟人脑视觉机制

神经 - 中枢 - 大脑

  • 从原始信号摄入(瞳孔摄入像素 Pixels ) → 初步处理(大脑皮层某些细胞发现边缘和方向)→抽象(大脑判定,眼前的物体的形状,是圆形的)→ 进一步抽象(大脑进步判定该物体是人脸)
  • 从原始信号,做低级抽象,逐新向高级抽象迭代.
  • 测量空间(表象)→ 特征空间(概念)

如何使用深度学习

使用机器学习(深度学习)的目的:寻找一个函数。

学习过程

  • 确定函数集合——建立模型、网络结构(人)
  • 如何评价好坏——损失函数(人)
  • 调出最好的函数——参数学习(机器)

注:

现在很多网络都有一个骨干网络,先通过骨干网络的训练得到一些参数,再通过自己的数据集进行训练调整,得到最终的实际网络(可以用于当数据集中数量比较少的时候)。

使用步骤

选择什么样的网络结构?

  • 神经元

  • 神经网络

  • 激活函数

    • 同一个神经网络中为了简化,激活函数应该都是一样的
    • 为什么引入激活函数?
    • 为了増强网络的表达能力,我们需要激活函数来将线性函数 ->非线性函数。
    • 非线性的激活函数需要有连续性。因为连续非线性激活函数可以可导的,所以可以用最优化的方法来求解。
  • 前馈神经网络

    • 输入层

    • 隐藏层(隐藏层数越多意味着网络越深)

    • 输出层

猜你喜欢

转载自blog.csdn.net/qq_61539914/article/details/127469105