特征提取与图像处理

2019-04-05 21:58:05 seven_tree 阅读数 1163

《计算机视觉特征提取与图像处理(第三版)》第一章(1)

Cpt1 绪论(人类视觉系统/计算机视觉系统/数学系统/参考文献)

1.2 人类视觉和计算机视觉

a. 图像处理领域常用图片/视频:openCV自带的图片库/视频库,例如Lena;
b. 广义图像采集:摄像机图像/MRI(软组织图像/computerized tomography计算断层摄影术/infrared sensor或synthetic-aperture radar遥感图像/sonar array等的空间信息,即计算机视觉系统对广义的图像进行处理;
c. 使用合成图像评价不同方法各自性能的局限;
纹理库:Brodatz album of texture,Brodatz纹理相簿;
http://multibandtexture.recherche.usherbrooke.ca/original_brodatz.html

1.3 人类视觉系统

a. 人类视觉善于区分相对距离,而不善于估计绝对距离,计算机视觉正好相反,善于估测绝对差异,但对相对差异估测的效果较差;
b. 人类视觉系统可以用三个部分来建模:
眼睛,物理模型,很多功能可以用病理学来确定;
处理系统,实验模型,不能精确断定;
脑分析,心理模型,通过实验或推理来判断它的活动;

1.3.1 眼睛物理模型

a. 虹膜iris/瞳孔pupil;角膜cornea或巩膜sclera;脉络膜choroid;视网膜retina;中央凹forvea;盲点blind spot;
b. 感光细胞分为:
rod柱细胞(暗视觉,scotopic vision,1千万左右)
cone锥细胞(明视觉,photopic vision,1亿左右),分为S短波长(蓝光,数量少)、M中波长(绿光)、L长波长(红光);
c. 视敏度,通常表现为空间分辨率(清晰度)和亮度/色彩分辨率,;
d. 视觉响应成对数特性,依赖于从暗处到亮处的亮度适应;
e. 马赫带效果(Mach band):不同亮度区域的交界处在人眼中存在过冲响应以便于区分视界内的不同目标;人类视觉实际上可以辨别5bit的灰度等级;

1.3.2 神经系统

眼睛产生的神经信号实际上是视锥细胞和视杆细胞两种细胞所传送的响应,通过加法模型和对数函数模型映射眼睛产生的已知响应;然后与权重因子相乘调节特定单元权重;

1.3.3 处理系统

a. 神经信号被传送到大脑的两个区域进行进一步处理,分别为联络皮层和枕叶皮层;
b. 参考书:The Joy of Vision,Schwarz;
www.yorku.ca./eye/thejoy.htm

1.4 计算机视觉系统

1.4.1 摄像机

a. 成像原理:空穴/电子对的数量同入射光量成正比,亮度增强则电流增大,电压增大;
b. 摄像机主要分为:摄像管(早期模拟技术,需要扫描过程,性能较差,存在部件磨损;)、CCD(Charge Coupled Devices)相机和CMOS(Complementary Metal Oxide Silicon)相机;
半导体像素传感器可以分为passive sensor无源传感器和active sensor有源传感器;

1.4.2 图像处理

a. C、C++、Java是目前为止最受欢迎的视觉系统实现语言,在集成高低和低级功能方面力量强大且编译能力较强;
基于Java的演示系统:http://www.southampton.ac.uk/~msn/book/new_demo/
软件包:OpenCV,“通过创建一个免费和开放的基础平台把视觉领域的成果进行整合和性能优化,帮助计算机视觉在人机交互、机器人、监测、生物测量和安全方面实现商业应用”;
VXL库(vision-something-libraries),为计算机视觉研究和实现而设计的而设计的C++库集https://vxl.github.io/;
Adobe通用图像库(GIL),旨在减少图像相关代码的编写难度http://stlab.adobe.com/group__asl__gil.html;
CImg Library,图像处理算法通用平台系统,http://www.cimg.eu/;
VLFeat,http://www.vlfeat.org/;
此外还包括部分有开源软件的竞赛网站,如ACM Multimedia;

1.5 数学系统

1.5.1 数学工具

a. 目前最受欢迎的数学系统有Mathematica、Maple、MATLAB、Mathcad等;

1.5.2 Hello MATLAB,hello images

a. Matlab提供强有力的矩阵计算来开发和测试复杂的实现;
本书成像模型采用正投影,,世界坐标直接映射到图像;通过Matlab的应用代码转换比其他系统容易,能够将代码直接编译;

1.5.3 Hello, Mathcad!

a. Mathcad是一个所见即所得系统,而不是基于屏幕的(把Mathcad看作Word,则Matlab看作Latex);Mathcad使用Mapple数学库来扩展其功能;
因为必须包含低级函数,Mathcad代码的应用比Matlab复杂;
可以从参考网站下载worksheet;

1.6 相关资料

1.6.1 期刊杂志和学术会议

a. Vision System Design和Advanced Imaging
b. IEEE Transactions on: Pattern Analysis and Machine Intelligence
Image Processing;
System, Man and Cybernetics;
Medical Imaging;
Pattern Recognition;
Pattern Recognition Letters;
International Journal of Computer Vision;
Image and Vision Computing;

1.6.2学术会议:

IEEE;
CVPR;
ICCV;
Springer,Lecture Notes in Computer Science

1.6.3 书籍推荐

a. World of Mathematics;
b. Numerical Recipes信号处理相关;
c. Digital Signal Processing;
d. Joy of Visual Perception;
e. CVOnline,
http://homepages.inf.ed.ac.uk/rbf/CVonline/(强烈推荐!!!!)
f. Vision
Fundamentals of Computer Vision
Robot Vision
Image Processing, Analysis and Computer Vision(Sonka et al., 2007)
Machine Vision(Jain et al., 1995)
Digital Image Processing(Gonzalez and Woods, 2008),冈萨雷斯的著名教程
Digital Picture Processing(Rosenfeld and Kak, 1982)
Digital Image Processing(Pratt, 2001)
Active Contour(Blake and Isard, 1998)
Image Processing The Fundamentals(Petrou and Petrou, 2010)
Computer Vision(Shapiro and Stockman, 2001),图像数据库和虚拟及增强现实
Computer Imaging: Digital Image Analysis and Processing(Umbaugh, 2005)
Computer Vision: A Modern Approach(Forsyth and Ponce, 2002)
Image Processing and Computer Vision(Parker, 2010)
Practical Algorithms for Image Analysis(O’ Gorman et al., 2008 )
Computer Vision and Image Processing(Umbaugh, 2005) ,侧重工程性
The Art of Image Processing with Java(Hunt, 2011),Java教程
The Image Processing Handbooks(Russ, 2006)
Machine Vision: Theory, Algorithms and Practicalities(Davies, 2005),侧重工业视觉系统
Handbook of Pattern Recognition and Computer Vision(Cheng and Wang, 2009);

2018-03-11 11:45:15 qxconverse 阅读数 5882

关于经典的计算机视觉这一块,简单地总结一下,罗列一些知识点,方便以后的再学习或是查阅。之所以称它为经典的,主要是因为里面都是些传统的方法,相较于最近几年才发展起来的深度学习方法而言。


1. 绪论

2. 图像、采样、频域处理

2.1 灰度,颜色,分辨率,动态范围,存储等

关于采样,要先理解信号在频域中的解释,理解傅里叶变换。
采样标准:为了从样本重构原信号,采样频率必须至少是被采样信号最大频率的两倍。

2.2 离散傅里叶变换,其特性

平移、旋转、尺度变化,频域叠加(线性)。

2.3 除了傅里叶以外的其它变换

离散余弦变换
离散Hartley变换
小波变换
Walsh变换

2.4 滤波——频域特性的应用

3. 基本的图像处理运算

3.1 直方图

3.2 点运算

亮度映射:加法、反转、尺度变化、对数、指数。
亮度正规化,直方图均衡化,阈值处理和最优阈值处理。

3.3 群运算

模板卷积(包括频域实现)。统计算子:直接平均,高斯滤波,中值滤波,众数(截断中值)滤波。
直接平均:可以去除大量的噪声,但是使特征边界模糊;
高斯滤波:保留更多特性,但是与直接平均相比,几乎没有优势(噪声不是高斯分布的);
中值滤波:保留一些噪声,但是得到清晰的边界特征;
截断中值滤波:去除更多噪声,但也去除更多的图像细节。
图像平滑处理的各向异性扩散。
力场变换。
数学形态学:击中或未击中变换,腐蚀,膨胀(包括灰度算子:腐蚀算子,膨胀算子,开算子,闭算子等),明科夫斯基算子。

4. 低级特征提取(包括边缘检测)(边缘检测、角点检测、运动检测)

4.1 边缘检测

一阶边缘检测算子
差分运算、Roberts交叉算子、平滑处理、Prewitt、Sobel、Canny等算子。
二阶边缘检测算子
二阶差分、Laplacian算子、过零点检测;Marr-Hildreth算子、Laplacian of Gaussian,高斯差分,尺度空间。
其它的边缘检测算子:Spacek算子,Petrou算子、Susan算子。
所有边缘算子的结果都是用滞后阈值处理来实现的。
对于拥有很大噪声的图像,Canny算子、Spacek算子相较于其它的算子表现要好些。

4.2 相位一致性

相位一致性方法是一个特征检测算子,主要有两个优点:

  1. 可以检测大范围的特征;
  2. 对局部(和平滑)光照变化具有不变性。

频域分析;检测一连串特征;光度不变性,小波。

4.3 定位特征提取(角点提取)

平面曲率;角点;Moravec和Harris检测器;尺度空间。
SIFT(尺度不变特征变换)
其具有尺度、旋转不变性。对光照变化也有一定的不变性。
SURF(加速的鲁棒特征)。
显著性算子。

4.4 描述图像运动

差分检测;光流,孔径问题,平滑约束;微分方法;Horn and Schunk方法;相关性。

5. 形状匹配的特征提取

5.1 阈值处理和背景减法(差分)

5.2 模板匹配

直接实现和傅里叶实现。

5.3 低级特征

收集低级特征进行目标提取;基于频率的和基于部件的方法;检测测量值的分布。
小波和Haar小波;SIFT和SURF描述;以及方向梯度的直方图。

5.4 霍夫变换

通过匹配进行特征提取;利用霍夫变换检测二次曲线,以及任意形状;不变性表达。

6. 高级特征提取:可变形形状分析

不具备目标形状(即特征)模型的知识;形状未知或形状的波动无法参数化。

6.1 可变形形状分析

可变形模板;能量最大化;基于部分的形状分析;

6.2 主动轮廓和蛇模型

曲线演变的能量最小化;贪心算法;Kass蛇模型。

6.3 形状骨架化

距离变换和形状骨架;平均轴变换;离散对称算子;对称点分布的证据累加。

6.4 主动形状模型

通过统计方法表达形状变化;利用特征提取获取形状变化。
主动形状模型;主动外观模型;主成分分析。

7. 目标描述

7.1 边界描述

边界和区域,如何确定边界及其所界定的区域,如何形成区域描述及其必要的特性?
基本方法:链码。傅里叶描述符:离散近似;累积角函数和椭圆傅里叶描述符。

7.2 区域描述符

如何描述形状的区域?
基本形状量度:面积;周长;紧凑度;分散性。
矩:基本矩;中心矩;不变矩;Zernike矩;特性及重构。

8. 纹理描述、分割和分类基础

8.1 纹理描述

什么是图像纹理,如何确定几组数值来识别纹理?
特征提取:傅里叶变换,共生矩阵,区域;
现代方法:局部二值模式(LPB)和均一LBP。
特征描述:能量,熵,惯性。

8.2 距离量度

距离量度:Manhattan城区和欧式(L1/L2距离),Mahalanobis,Bhattacharyya和余弦;构造、可视化和混淆矩阵。

8.3 纹理分类

如何将所得的数值与已知样本相联系?
k近邻法则,支持向量机及其它分类方法(与机器学习交叉的部分)。

8.4 纹理分割

如何在图像范围内找出纹理区域?
卷积计算,平铺处理,阈值处理。

9. 运动对象的检测与描述

9.1 运动对象提取

如何将运动对象从它们的背景中分离?
应用到背景图像估计的平均与中值滤波。通过减从背景分离。通过高斯混合与阈值化处理改善。
问题:颜色、光照和阴影。
使用膨胀与腐蚀;开、闭运算。连通组件分析。

9.2 运动对象跟踪

跟踪过程中实现时域一致性。建模线性系统动力学。
通过局部搜索进行跟踪;Lucas-Kanade方法;Kalman滤波;多目标跟踪;特征点与背景减的比较;Camshift与Meanshift方法。对象检测跟踪。

9.3 运动形状分析与描述

通过证据收集描述运动以及提取运动形状。添加速率与位移到形状描述;针对识别目的,描述运动目标。

2012-02-10 10:45:07 z397164725 阅读数 13025

  特征提取是计算机视觉和图像处理中的一个概念。它指的是使用计算机提取图像信息,决定每个图像的点是否属于一个图像特征。特征提取的结果是把图像上的点分为不同的子集,这些子集往往属于孤立的点、连续的曲线或者连续的区域。 


特征的定义 

        至今为止特征没有万能和精确的定义。特征的精确定义往往由问题或者应用类型决定。特征是一个数字图像中“有趣”的部分,它是许多计算机图像分析算法的起点。因此一个算法是否成功往往由它使用和定义的特征决定。因此特征提取最重要的一个特性是“可重复性”:同一场景的不同图像所提取的特征应该是相同的。 

        特征提取是图象处理中的一个初级运算,也就是说它是对一个图像进行的第一个运算处理。它检查每个像素来确定该像素是否代表一个特征。假如它是一个更大的算法的一部分,那么这个算法一般只检查图像的特征区域。作为特征提取的一个前提运算,输入图像一般通过高斯模糊核在尺度空间中被平滑。此后通过局部导数运算来计算图像的一个或多个特征。 

       有时,假如特征提取需要许多的计算时间,而可以使用的时间有限制,一个高层次算法可以用来控制特征提取阶层,这样仅图像的部分被用来寻找特征。 

        由于许多计算机图像算法使用特征提取作为其初级计算步骤,因此有大量特征提取算法被发展,其提取的特征各种各样,它们的计算复杂性和可重复性也非常不同。 


边缘 
        边缘是组成两个图像区域之间边界(或边缘)的像素。一般一个边缘的形状可以是任意的,还可能包括交叉点。在实践中边缘一般被定义为图像中拥有大的梯度的点组成的子集。一些常用的算法还会把梯度高的点联系起来来构成一个更完善的边缘的描写。这些算法也可能对边缘提出一些限制。 

局部地看边缘是一维结构。 


角 
        角是图像中点似的特征,在局部它有两维结构。早期的算法首先进行边缘检测,然后分析边缘的走向来寻找边缘突然转向(角)。后来发展的算法不再需要边缘检测这个步骤,而是可以直接在图像梯度中寻找高度曲率。后来发现这样有时可以在图像中本来没有角的地方发现具有同角一样的特征的区域。 


区域 
       与角不同的是区域描写一个图像中的一个区域性的结构,但是区域也可能仅由一个像素组成,因此许多区域检测也可以用来监测角。一个区域监测器检测图像中一个对于角监测器来说太平滑的区域。区域检测可以被想象为把一张图像缩小,然后在缩小的图像上进行角检测。 


脊 
        长条形的物体被称为脊。在实践中脊可以被看作是代表对称轴的一维曲线,此外局部针对于每个脊像素有一个脊宽度。从灰梯度图像中提取脊要比提取边缘、角和区域困难。在空中摄影中往往使用脊检测来分辨道路,在医学图像中它被用来分辨血管。 


特征抽取 
        特征被检测后它可以从图像中被抽取出来。这个过程可能需要许多图像处理的计算机。其结果被称为特征描述或者特征向量。 


常用的图像特征有颜色特征、纹理特征、形状特征、空间关系特征。 

一 颜色特征 

(一)特点:颜色特征是一种全局特征,描述了图像或图像区域所对应的景物的表面性质。一般颜色特征是基于像素点的特征,此时所有属于图像或图像区域的像素都有各自的贡献。由于颜色对图像或图像区域的方向、大小等变化不敏感,所以颜色特征不能很好地捕捉图像中对象的局部特征。另外,仅使用颜色特征查询时,如果数据库很大,常会将许多不需要的图像也检索出来。颜色直方图是最常用的表达颜色特征的方法,其优点是不受图像旋转和平移变化的影响,进一步借助归一化还可不受图像尺度变化的影响,基缺点是没有表达出颜色空间分布的信息。 

(二)常用的特征提取与匹配方法 

(1) 颜色直方图 

        其优点在于:它能简单描述一幅图像中颜色的全局分布,即不同色彩在整幅图像中所占的比例,特别适用于描述那些难以自动分割的图像和不需要考虑物体空间位置的图像。其缺点在于:它无法描述图像中颜色的局部分布及每种色彩所处的空间位置,即无法描述图像中的某一具体的对象或物体。 

         最常用的颜色空间:RGB颜色空间、HSV颜色空间。 

         颜色直方图特征匹配方法:直方图相交法、距离法、中心距法、参考颜色表法、累加颜色直方图法。 

(2) 颜色集 

        颜色直方图法是一种全局颜色特征提取与匹配方法,无法区分局部颜色信息。颜色集是对颜色直方图的一种近似首先将图像从 RGB颜色空间转化成视觉均衡的颜色空间(如 HSV 空间),并将颜色空间量化成若干个柄。然后,用色彩自动分割技术将图像分为若干区域,每个区域用量化颜色空间的某个颜色分量来索引,从而将图像表达为一个二进制的颜色索引集。在图像匹配中,比较不同图像颜色集之间的距离和色彩区域的空间关系 

(3) 颜色矩 

        这种方法的数学基础在于:图像中任何的颜色分布均可以用它的矩来表示。此外,由于颜色分布信息主要集中在低阶矩中,因此,仅采用颜色的一阶矩(mean)、二阶矩(variance)和三阶矩(skewness)就足以表达图像的颜色分布。 

(4) 颜色聚合向量 

        其核心思想是:将属于直方图每一个柄的像素分成两部分,如果该柄内的某些像素所占据的连续区域的面积大于给定的阈值,则该区域内的像素作为聚合像素,否则作为非聚合像素。 

(5) 颜色相关图 

二 纹理特征 

(一)特点:纹理特征也是一种全局特征,它也描述了图像或图像区域所对应景物的表面性质。但由于纹理只是一种物体表面的特性,并不能完全反映出物体的本质属性,所以仅仅利用纹理特征是无法获得高层次图像内容的。与颜色特征不同,纹理特征不是基于像素点的特征,它需要在包含多个像素点的区域中进行统计计算。在模式匹配中,这种区域性的特征具有较大的优越性,不会由于局部的偏差而无法匹配成功。作为一种统计特征,纹理特征常具有旋转不变性,并且对于噪声有较强的抵抗能力。但是,纹理特征也有其缺点,一个很明显的缺点是当图像的分辨率变化的时候,所计算出来的纹理可能会有较大偏差。另外,由于有可能受到光照、反射情况的影响,从2-D图像中反映出来的纹理不一定是3-D物体表面真实的纹理。 

        例如,水中的倒影,光滑的金属面互相反射造成的影响等都会导致纹理的变化。由于这些不是物体本身的特性,因而将纹理信息应用于检索时,有时这些虚假的纹理会对检索造成“误导”。 

        在检索具有粗细、疏密等方面较大差别的纹理图像时,利用纹理特征是一种有效的方法。但当纹理之间的粗细、疏密等易于分辨的信息之间相差不大的时候,通常的纹理特征很难准确地反映出人的视觉感觉不同的纹理之间的差别。

(二)常用的特征提取与匹配方法 

  纹理特征描述方法分类 

(1)统计方法统计方法的典型代表是一种称为灰度共生矩阵的纹理特征分析方法Gotlieb 和 Kreyszig 等人在研究共生矩阵中各种统计特征基础上,通过实验,得出灰度共生矩阵的四个关键特征:能量、惯量、熵和相关性。统计方法中另一种典型方法,则是从图像的自相关函数(即图像的能量谱函数)提取纹理特征,即通过对图像的能量谱函数的计算,提取纹理的粗细度及方向性等特征参数 

(2)几何法 

        所谓几何法,是建立在纹理基元(基本的纹理元素)理论基础上的一种纹理特征分析方法。纹理基元理论认为,复杂的纹理可以由若干简单的纹理基元以一定的有规律的形式重复排列构成。在几何法中,比较有影响的算法有两种:Voronio 棋盘格特征法和结构法。 

(3)模型法 

        模型法以图像的构造模型为基础,采用模型的参数作为纹理特征。典型的方法是随机场模型法,如马尔可夫(Markov)随机场(MRF)模型法和 Gibbs 随机场模型法 

(4)信号处理法 

        纹理特征的提取与匹配主要有:灰度共生矩阵、Tamura 纹理特征、自回归纹理模型、小波变换等。 

        灰度共生矩阵特征提取与匹配主要依赖于能量、惯量、熵和相关性四个参数。Tamura 纹理特征基于人类对纹理的视觉感知心理学研究,提出6种属性,即:粗糙度、对比度、方向度、线像度、规整度和粗略度。自回归纹理模型(simultaneous auto-regressive, SAR)是马尔可夫随机场(MRF)模型的一种应用实例。 

三 形状特征 

(一)特点:各种基于形状特征的检索方法都可以比较有效地利用图像中感兴趣的目标来进行检索,但它们也有一些共同的问题,包括:①目前基于形状的检索方法还缺乏比较完善的数学模型;②如果目标有变形时检索结果往往不太可靠;③许多形状特征仅描述了目标局部的性质,要全面描述目标常对计算时间和存储量有较高的要求;④许多形状特征所反映的目标形状信息与人的直观感觉不完全一致,或者说,特征空间的相似性与人视觉系统感受到的相似性有差别。另外,从 2-D 图像中表现的 3-D 物体实际上只是物体在空间某一平面的投影,从 2-D 图像中反映出来的形状常不是 3-D 物体真实的形状,由于视点的变化,可能会产生各种失真。 

(二)常用的特征提取与匹配方法 

Ⅰ几种典型的形状特征描述方法 

        通常情况下,形状特征有两类表示方法,一类是轮廓特征,另一类是区域特征。图像的轮廓特征主要针对物体的外边界,而图像的区域特征则关系到整个形状区域。 

几种典型的形状特征描述方法: 

(1)边界特征法该方法通过对边界特征的描述来获取图像的形状参数。其中Hough 变换检测平行直线方法和边界方向直方图方法是经典方法。Hough 变换是利用图像全局特性而将边缘像素连接起来组成区域封闭边界的一种方法,其基本思想是点—线的对偶性;边界方向直方图法首先微分图像求得图像边缘,然后,做出关于边缘大小和方向的直方图,通常的方法是构造图像灰度梯度方向矩阵。 

(2)傅里叶形状描述符法 

        傅里叶形状描述符(Fourier shape deors)基本思想是用物体边界的傅里叶变换作为形状描述,利用区域边界的封闭性和周期性,将二维问题转化为一维问题。 

        由边界点导出三种形状表达,分别是曲率函数、质心距离、复坐标函数。 

(3)几何参数法 

        形状的表达和匹配采用更为简单的区域特征描述方法,例如采用有关形状定量测度(如矩、面积、周长等)的形状参数法(shape factor)。在 QBIC 系统中,便是利用圆度、偏心率、主轴方向和代数不变矩等几何参数,进行基于形状特征的图像检索。 

        需要说明的是,形状参数的提取,必须以图像处理及图像分割为前提,参数的准确性必然受到分割效果的影响,对分割效果很差的图像,形状参数甚至无法提取。 

(4)形状不变矩法 

利用目标所占区域的矩作为形状描述参数。 

(5)其它方法 

        近年来,在形状的表示和匹配方面的工作还包括有限元法(Finite Element Method 或 FEM)、旋转函数(Turning )和小波描述符(Wavelet Deor)等方法。 

Ⅱ 基于小波和相对矩的形状特征提取与匹配 

        该方法先用小波变换模极大值得到多尺度边缘图像,然后计算每一尺度的 7个不变矩,再转化为 10 个相对矩,将所有尺度上的相对矩作为图像特征向量,从而统一了区域和封闭、不封闭结构。 

四 空间关系特征 

(一)特点:所谓空间关系,是指图像中分割出来的多个目标之间的相互的空间位置或相对方向关系,这些关系也可分为连接/邻接关系、交叠/重叠关系和包含/包容关系等。通常空间位置信息可以分为两类:相对空间位置信息和绝对空间位置信息。前一种关系强调的是目标之间的相对情况,如上下左右关系等,后一种关系强调的是目标之间的距离大小以及方位。显而易见,由绝对空间位置可推出相对空间位置,但表达相对空间位置信息常比较简单。 

        空间关系特征的使用可加强对图像内容的描述区分能力,但空间关系特征常对图像或目标的旋转、反转、尺度变化等比较敏感。另外,实际应用中,仅仅利用空间信息往往是不够的,不能有效准确地表达场景信息。为了检索,除使用空间关系特征外,还需要其它特征来配合。 

(二)常用的特征提取与匹配方法 

        提取图像空间关系特征可以有两种方法:一种方法是首先对图像进行自动分割,划分出图像中所包含的对象或颜色区域,然后根据这些区域提取图像特征,并建立索引;另一种方法则简单地将图像均匀地划分为若干规则子块,然后对每个图像子块提取特征,并建立索引。 
姿态估计问题就是:确定某一三维目标物体的方位指向问题。姿态估计在机器人视觉、动作跟踪和单照相机定标等很多领域都有应用。 

        在不同领域用于姿态估计的传感器是不一样的,在这里主要讲基于视觉的姿态估计。 

        基于视觉的姿态估计根据使用的摄像机数目又可分为单目视觉姿态估计和多目视觉姿态估计。根据算法的不同又可分为基于模型的姿态估计和基于学习的姿态估计。 

一基于模型的姿态估计方法 

        基于模型的方法通常利用物体的几何关系或者物体的特征点来估计。其基本思想是利用某种几何模型或结构来表示物体的结构和形状,并通过提取某些物体特征,在模型和图像之间建立起对应关系,然后通过几何或者其它方法实现物体空间姿态的估计。这里所使用的模型既可能是简单的几何形体,如平面、圆柱,也可能是某种几何结构,也可能是通过激光扫描或其它方法获得的三维模型。 

        基于模型的姿态估计方法是通过比对真实图像和合成图像,进行相似度计算更新物体姿态。目前基于模型的方法为了避免在全局状态空间中进行优化搜索,一般都将优化问题先降解成多个局部特征的匹配问题,非常依赖于局部特征的准确检测。当噪声较大无法提取准确的局部特征的时候,该方法的鲁棒性受到很大影响。 

二基于学习的姿态估计方法 

        基于学习的方法借助于机器学习(machine learning)方法,从事先获取的不同姿态下的训练样本中学习二维观测与三维姿态之间的对应关系,并将学习得到的决策规则或回归函数应用于样本,所得结果作为对样本的姿态估计。基于学习的方法一般采用全局观测特征,不需检测或识别物体的局部特征,具有较好的鲁棒性。其缺点是由于无法获取在高维空间中进行连续估计所需要的密集采样,因此无法保证姿态估计的精度与连续性。 

        基于学习的姿态估计方法源于姿态识别方法的思想。姿态识别需要预先定义多个姿态类别,每个类别包含了一定的姿态范围;然后为每个姿态类别标注若干训练样本,通过模式分类的方法训练姿态分类器以实现姿态识别。 

        这一类方法并不需要对物体进行建模,一般通过图像的全局特征进行匹配分析,可以有效的避免局部特征方法在复杂姿态和遮挡关系情况下出现的特征匹配歧义性问题。然而姿态识别方法只能将姿态划分到事先定义的几个姿态类别中,并不能对姿态进行连续的精确的估计。 

        基于学习的方法一般采用全局观测特征,可以保证算法具有较好的鲁棒性。然而这一类方法的姿态估计精度很大程度依赖于训练的充分程度。要想比较精确地得到二维观测与三维姿态之间的对应关系,就必须获取足够密集的样本来学习决策规则和回归函数。而一般来说所需要样本的数量是随状态空间的维度指数级增加的,对于高维状态空间,事实上不可能获取进行精确估计所需要的密集采样。因此,无法得到密集采样而难以保证估计的精度与连续性,是基于学习的姿态估计方法无法克服的根本困难。 

        和姿态识别等典型的模式分类问题不同的是,姿态估计输出的是一个高维的姿态向量,而不是某个类别的类标。因此这一类方法需要学习的是一个从高维观测向量到高维姿态向量的映射,目前这在机器学习领域中还是一个非常困难的问题。 

        特征是描述模式的最佳方式,且我们通常认为特征的各个维度能够从不同的角度描述模式,在理想情况下,维度之间是互补完备的。 

        特征提取的主要目的是降维。特征抽取的主要思想是将原始样本投影到一个低维特征空间,得到最能反应样本本质或进行样本区分的低维样本特征。 

        一般图像特征可以分为四类:直观性特征、灰度统计特征、变换系数特征与代数特征。 

        直观性特征主要指几何特征,几何特征比较稳定,受人脸的姿态变化与光照条件等因素的影响小,但不易抽取,而且测量精度不高,与图像处理技术密切相关。 

        代数特征是基于统计学习方法抽取的特征。代数特征具有较高的识别精度,代数特征抽取方法又可以分为两类:一种是线性投影特征抽取方法;另外一种是非线性特征抽取方法。 

        习惯上,将基于主分量分析和Fisher线性鉴别分析所获得的特征抽取方法,统称为线性投影分析。 

       基于线性投影分析的特征抽取方法,其基本思想是根据一定的性能目标来寻找一线性变换,把原始信号数据压缩到一个低维子空间,使数据在子空间中的分布更加紧凑,为数据的更好描述提供手段,同时计算的复杂度得到大大降低。在线性投影分析中,以主分量分析(PCA,或称K-L变换)和Fisher线性鉴别分析(LDA)最具代表性,围绕这两种方法所形成的特征抽取算法,已成为模式识别领域中最为经典和广泛使用的方法。 

        线性投影分析法的主要缺点为:需要对大量的已有样本进行学习,且对定位、光照与物体非线性形变敏感,因而采集条件对识别性能影响较大。 

        非线性特征抽取方法也是研究的热点之一。“核技巧”最早应用在SVM中,KPCA和KFA是“核技巧”的推广应用。 

        核投影方法的基本思想是将原样本空间中的样本通过某种形式的非线性映射,变换到一个高维甚至无穷维的空间,并借助于核技巧在新的空间中应用线性的分析方法求解。由于新空间中的线性方向也对应原样本空间的非线性方向,所以基于核的投影分析得出的投影方向也对应原样本空间的非线性方向。 

        核投影方法也有一些弱点:几何意义不明确,无法知道样本在非显式映射后变成了什么分布模式;核函数中参数的选取没有相应选择标准,大多数只能采取经验参数选取;不适合训练样本很多的情况,原因是经过核映射后,样本的维数等于训练样本的个数,如果训练样本数目很大,核映射后的向量维数将会很高,并将遇到计算量上的难题。 

         就应用领域来说,KPCA远没有PCA应用的广泛。如果作为一般性的降维KPCA确实比PCA效果好,特别是特征空间不是一般的欧式空间的时候更为明显。PCA可以通过大量的自然图片学习一个子空间,但是KPCA做不到。 

        变换系数特征指先对图像进行Fourier变换、小波变换等,得到的系数后作为特征进行识别

再opencv的CHM帮助文件中解释:

目标检测方法最初由Paul Viola [Viola01]提出,并由Rainer Lienhart [Lienhart02]对这一方法进行了改善. 首先,利用样本(大约几百幅样本图片)的 harr 特征进行分类器训练,得到一个级联的boosted分类器。训练样本分为正例样本和反例样本,其中正例样本是指待检目标样本(例如人脸或汽车等),反例样本指其它任意图片,所有的样本图片都被归一化为同样的尺寸大小(例如,20x20)。

分类器训练完以后,就可以应用于输入图像中的感兴趣区域(与训练样本相同的尺寸)的检测。检测到目标区域(汽车或人脸)分类器输出为1,否则输出为0。为了检测整副图像,可以在图像中移动搜索窗口,检测每一个位置来确定可能的目标。 为了搜索不同大小的目标物体,分类器被设计为可以进行尺寸改变,这样比改变待检图像的尺寸大小更为有效。所以,为了在图像中检测未知大小的目标物体,扫描程序通常需要用不同比例大小的搜索窗口对图片进行几次扫描。

分类器中的“级联”是指最终的分类器是由几个简单分类器级联组成。在图像检测中,被检窗口依次通过每一级分类器, 这样在前面几层的检测中大部分的候选区域就被排除了,全部通过每一级分类器检测的区域即为目标区域。 目前支持这种分类器的boosting技术有四种: Discrete Adaboost, Real Adaboost, Gentle Adaboost and Logitboost。"boosted" 即指级联分类器的每一层都可以从中选取一个boosting算法(权重投票),并利用基础分类器的自我训练得到。基础分类器是至少有两个叶结点的决策树分类器。 Haar特征是基础分类器的输入,主要描述如下。目前的算法主要利用下面的Harr特征。

?

每个特定分类器所使用的特征用形状、感兴趣区域中的位置以及比例系数(这里的比例系数跟检测时候采用的比例系数是不一样的,尽管最后会取两个系数的乘积值)来定义。例如在第三行特征(2c)的情况下,响应计算为复盖全部特征整个矩形框(包括两个白色矩形框和一个黑色矩形框)象素的和减去黑色矩形框内象素和的三倍 。每个矩形框内的象素和都可以通过积分图象很快的计算出来。(察看下面和对cvIntegral的描述).

通过HaarFaceDetect 的演示版可以察看目标检测的工作情况。

下面只是检测部分的参考手册。 haartraining是它的一个单独的应用,可以用来对系列样本训练级联的 boosted分类器。

2017-06-03 10:08:55 coming_is_winter 阅读数 44921

                          图像处理之特征提取:HOG特征简单梳理

 

           HOG方向梯度直方图,这里分解为方向梯度与直方图。

一、方向梯度

梯度:在向量微积分中,标量场的梯度是一个向量场。标量场中某一点上的梯度指向标量场增长最快的方向,梯度的长度是这个最大的变化率。更严格的说,从欧几里得空间Rn到R的函数的梯度是在Rn某一点最佳的线性近似。在这个意义上,梯度是雅可比矩阵的一个特殊情况。
      在单变量的实值函数的情况,梯度只是导数,或者,对于一个线性函数,也就是线的斜率。

在图像中梯度的概念也是像素值变换最快的方向,把边缘(在图像合成中单一物体的轮廓叫做边缘)引入进来,边缘与梯度保持垂直方向。

                                                                                                     图1

方向梯度中的方向是如何确定的?P0到P1的梯度方向:

                                                                                                        图2

具体在HOG中方向梯度的实现:首先用[-1,0,1]梯度算子对原图像做卷积运算,得到x方向(水平方向,以向右为正方向)的梯度分量gradscalx,然后用[1,0,-1]T梯度算子对原图像做卷积运算,得到y方向(竖直方向,以向上为正方向)的梯度分量gradscaly。然后再用以下公式计算该像素点的梯度大小和方向。

二、直方图

  直方图是一个图像处理中用的比较多的概念,想深入了解,可以度娘一下。

三、方向梯度直方图HOG的提取

  方向梯度直方图为图像局部区域的梯度特征量统计,我们为什么要提取这个东东呢?

     HOG主要应用于行人检测方面,以行人照片为例。

       

                                                                                                        图3

  上图是一张行人图的四种表示方式,原三色图,灰度图,边缘图,梯度图,人脑根据前期学习与先验知识很容易理解到图像中包含着一个行人,并可以根据一定情况将其从图像中抠选出来,但计算机是怎么思考的呢?怎样让计算机理解以上图像中包含的是一个行人呢?前三个图像现在情况不适用,所以选取梯度图,现在的梯度图同样也是人脑处理理解的平面结果,计算机是办不到的,需要将直观地的梯度图像转换成一种计算机容易理解的数据特征语言。

  

  对于64*128的图像而言,每8*8的像素组成一个cell,每2*2个cell组成一个块,以8个像素为步长,那么,水平方向将有7个扫描窗口,垂直方向将有15个扫描窗口。也就是说,64*128的图片,总共有36*7*15=3780个特征。这里截取梯度图的一部分画图进行理解,尺寸与比例并不精确。

                                                                                                          图4

 

  单独将其中一个8*8的小格拿出来,方向梯度中指的方向范围为2π,360°,为了画直方图我们还需要选取合适的组距也就是bin,这里组距选取2π/9,也就是最后的直方图组数为9。下图为8*8像素的cell对应的方向梯度(未全部画出,共有8*8=64个)。

 

 

                                                                                                   图5

  将上面的64个方向梯度,按着直方图的参数设置进行画图,其中梯度的大小在统计数量中呈线性关系,比如梯度大小为2,则直方图对应增加2个单位,

        画出的对应直方图假设如下所示:

 

                                                                                                              图6

 

  把上图中单个cell对应的方向直方图转换为单维向量,也就是按规定组距对对应方向梯度个数进行编码,(8,10,6,12,4,5,8,6,14),得到单个cell的9个特征,每个block(扫描窗口)包含2*2个cell也就是2*2*9=36个特征,一个64*128大小的图像最后得到的特征数为36*7*15=3780个。这样将一幅直观的梯度图通过分解提取变为计算机容易理解的特征向量。

  以上工作为HOG提取的主要内容,最后得到对应的行人的由方向梯度直方图HOG提取到的特征向量,但是计算机还是不知道这个数据数组代表了什么意思,什么时候这组向量代表行人,什么时候代表其他东西,怎样train,最后通过不断地学习,而后在检测积累的基础上对对未知图像检测识别有没有行人呢?那就是后一步SVM要做的事了。

 

参考文献:

      目标检测的图像特征提取之(一)HOG特征  

2019-04-09 21:35:11 seven_tree 阅读数 748

第三章 基本图像处理运算

3.2 直方图

a. 亮度直方图表示每个亮度级在图像中的占有率;一般图像对比度是通过亮度级范围来度量的;
直方图拉伸可以增强图像对比度;通过和理想直方图进行对比,可以进行噪声处理;

3.3 点算子

3.3.1 基本点运算

a. 点运算指,以单个像素作为输入,并输出单个像素的运算;
简单的线性点运算(如复制、亮度翻转、亮度相加、亮度的乘法变化等)通常可以表达为线性方程的形式;
b. 锯齿算子,用于强化局部对比变化;
c. 非线性点运算,例如通过对数函数压缩亮度范围,通过指数函数扩大亮度级范围,它们一般用于均衡相机的响应或者压缩显示的亮度级范围;
自然地,应用对数点算子会把亮度值的乘法转变为加法,可以用来降低乘法性亮度变化的效果;它还常用于傅里叶变换压缩以便更好地显示,这是由于直流分量与其他点的对比可能非常大以至于无法显示其他点;
d. 点算子的硬件实现包括查找表等方法;

3.3.2 直方图正规化

a. 直方图正规化用于扩展亮度级范围,其计算公式为,
直方图正规化
3.3.3 直方图均衡化
a. 直方图均衡化的目的是通过一种适合人类视觉分析的方法来增强图像的亮度,作用是使图像的直方图更加平坦;
直方图均衡映射函数为,
直方图均衡化
其中q为新图像对应灰度,p为旧图像灰度等级,Nx,y表示输出图像像素;
b. 直方图均衡,正如名字表述的那样,可以使灰度分布更加均衡;
c. 对图像进行线性亮度变换并不影响其直方图均衡化的结果;
由于直方图均衡化对噪声敏感,在电子系统中噪声不可能真正的消除,因此直方图均衡化很少用于通用的图像处理系统,但在专业应用中非常有效;此外,直方图均衡化是非线性处理,且是不可逆的,因此在实际应用中更常用的是直方图正规化;

3.3.4 阈值处理

a. 包括均一阈值处理,最优应阈值处理等;
b. 最优阈值处理用于更好地对目标和背景进行区分;Otsu方法是最受欢迎的最优阈值处理方法之一;基本原理是利用正规化直方图,其中每个亮度级的值为该亮度级的点数除以图像总点数,因此亮度级的概率分布表示为p(l)=(N(l))/N^2 ,计算正规化直方图到亮度级k的零阶和一阶累积矩,ω(k)=∑p(l) ,μ(k)=∑_l∙p(l) ,图像的总平均级计算为μT=∑l∙p(l) ,这样类分离的方差可以表示为
在这里插入图片描述
最优阈值即类分离方差最大时的亮度等级在这里插入图片描述;

3.4 群运算

a. 群运算是利用分组处理,根据一个像素的邻域来计算新像素值;
3.4.1 模版卷积
a. 模版卷积是一种常用的群运算表征方式,基础模版为方形,大小为奇数从而保证恰当定位;
b. 由于模版不能超出图像,无法计算新图像边界的新值,所以新图像比原始图像尺寸小;
计算边界像素的值一般由3种选择:

  1. 设置边界为黑色;
  2. 假设图像沿两个维度方向重复,利用循环位移根据另一边界来计算新值;
  3. 修改边界模版形状;

上述方法都不是最优的,但是考虑一般兴趣目标不处在图像边缘,因此边界信息认为对处理没有影响;
c. 以简单的加权算子33模版为例,目标像素值即当前像素值33范围内像素值的加权和;
d. 模版卷积可以表示为,N=W*O,其中W表示权重模版,O为输入图像;

3.4.2 平均算子

a. 模版尺寸为(2N+1)*(2N+1),内部元素权重为1/(2N+1)2 ;
平均处理会消除图像细节,同时可以降低噪声,从频域来看可以看作是低通滤波器;模版尺寸越大可以滤除的噪声越多;
b. 傅里叶变换可以给出另一种实现模版卷积的方法,并且利用较大的模版加快实现速度,通过将图像频域和模版频域进行相乘;要求模版和图像大小相等,包含模版的图像在变换之前需要补零;计算过程为,
P
T=ς-1 (ς§×ς(T))

3.4.3 不同的模版尺寸

a. 常用模版尺寸为3/5/7;一般算子尺寸越大,图像细节越少,频域上限越低;

3.4.5 高斯平均算子

a. 高斯平均算子被认为是对图像平滑处理的最优算法;
高斯算子模版通过高斯关系式进行设置,对坐标x,y的像素,其高斯函数g利用方差σ2进行计算,
高斯平均模版计算
方差的选择要确保模版系数在模版边界上近似零,以5*5模版为例,其方差通常选为1;
b. 高斯函数可以近似忽略距离模版中心距离大于3σ的点的影响;相比平均算子,高斯平均算子可以保留更多的细节特征;
c. 高斯平均算子和图像进行卷积得到高斯模糊函数,通过缩放x和y的坐标值可以得到高斯模糊函数的不对称特性,这样的处理可以应用于目标的形状和方向在图像分析前已知的情形;
d. 高斯平均相比普通平均的优势可以用傅里叶变换理论解释,平均滤波算子在空间域表现为二维方波,其频域形式为二维sinc函数,该变换有一个变换幅度不以平滑方式减小的频率响应;
作为对比,高斯函数的频域变换同样是高斯函数,较为平滑且没有边波带;
e. 平均处理实际上是一个统计算子,其目的是估算局部近邻的平均值,处理过程中会引入较大的误差,对于容量为N的样本,统计误差数量级为Error=Mean/√N
增加平均算子尺寸可以改善计算误差,但通常会导致细节损失;

3.5 其他统计算子

3.5.1 中值滤波

a. 中值滤波算子的输出为邻域像素统计的中值;所采用的模版和平均处理类似;计算需求推动了其他形状模版的使用比如十字形、线形、优势方向等;
b.中值算法可以去除椒盐噪声同时保留边界;
椒盐噪声是由于图像传输系统中的解码误差等原因产生的,导致图像中出现孤立的白点和黑点;

3.5.2 众数滤波 mode

a. 由于图像的众数存在与否很难确定,众数需要依靠一定的计算规则,了截断中值滤波假设对于非高斯分布而言,图像的平均值、中值和众数的次序是相同的,因此如果把分布截断,那么截断分布中的中值将接近原分布中的众数;
中值小于平均值,截断点upper=2median-min(distribution);
中值大于均值,截断点lower=2
median-max(distribution);
b. 众数滤波一般用于消除瑞利噪声;

图像特征提取总结

阅读数 42464

关于图像特征提取

阅读数 126964