Gabor滤波小结整理
Gabor滤波小结整理
from:http://blog.sina.com.cn/s/blog_6f611c3001018jcx.html
一、Gabor 滤波器简介(部分资料来自维基百科)
在图像处理、模式识别以及计算机视觉等领域中,,Gabor 滤波器得到了广泛的应用。Gabor滤波器是一个用于边缘检测的线性滤波器。Gabor滤波器的频率和方向表示接近人类视觉系统对于频率和方向的表示,并且它们常备用于纹理表示和描述。在空域,一个2维的Gabor滤波器是一个正弦平面波和高斯核函数的乘积,具有在空间域和频率域同时取得最优局部化的特性,与人类生物视觉特性很相似,因此能够很好地描述对应于空间频率(尺度)、空间位置及方向选择性的局部结构信息。。Gabor滤波器是自相似的,也就是说,所有Gabor滤波器都可以从一个母小波经过膨胀和旋转产生。实际应用中,Gabor滤波器可以在频域的不同尺度,不同方向上提取相关特征。
Gabor变换是一种短时傅里叶变换方法,其实质是在傅里叶变换中加入一个窗函数,通过窗函数来实现信号的时频分析。当选取高斯函数作为窗函数时,短时傅里叶变换称为Gabor变换。
二、Gabor滤波器公式化定义
公式中:
λ:正弦函数波长;
θ:Gabor核函数的方向
ψ:相位偏移
σ:高斯函数的标准差
γ: 空间的宽高比(这个没太理解)
常用的偶对称二维Gabor滤波器可表示为:
1. 不同方向下的Gabor滤波器:
图1 不同方向上的滤波器
在实际应用时,可以根据检测对象的方向趋势,选择合适的方向参数进行滤波。如在检测人脸的五官时,可以根据人脸的偏转角度进行滤波,可以使特征点的定位更加准确。
2. 不同频率下的滤波器:
图2 不同频率下的滤波器
从图2可以看出随着的变化,Gabor滤波器中出现了很多宽窄与纹理不同的明暗条纹。当滤波器纹理与图像作用时,滤波器覆盖下的局部纹理频率与滤波器的频率越接近响应就越大,反之越小。
3. 人脸光照之Gabor滤波 试验结果:
在“人脸光照调整之DCT变换”随笔中,原始图像经过DCT变换处理后,并不能完全去除光照在人脸上分布不均的影响,而且人脸的本真信息也难以被全部表达。为此在DCT变换的基础上,用Gabor滤波对其进行再处理,可以达到更好的结果。
图三 基于DCT变换的Gabor滤波
图四 基于DCT变换的Gabor滤波
图三(c)是在(b)图基础上做的Gabor滤波,效果显示已基本完全消除了高曝光对图像的影响。同理,图四(c)的右边脸的光照也被抑制下来。图四(d)是对原始图像直接做Gabor滤波,虽然局部效果较(c)图更清晰,但整体纹理没有(c)图平滑,这样会给后续特征点定位的收敛性带来影响,因此定位效果欠稳定。
这两种方法合在一起使用,时间开销还是挺大的,在人脸识别等实时系统中,需要优化或精简。一般情况下,就单比处理效果和稳定性,Gabor要由于DCT变换。因此,在容许情况下,我们可以只取Gabor对图像进行处理。比如,作者在“眼睛定位”随笔中,就只用Gabor滤波对人脸处理,以提高眼睛定位精度。
下面,作者再贴几张图,看看这两种方法合在一起时,对AAM的帮助。
图五 光照调整对AAM定位的帮助
图五中的(a)图是AAM对原始图像直接定位的结果,(b)图是在去光照后的定位效果。比较两组图像,可以很明显的看到(b)图的定位精度有了大幅度的提高。
参考文献:
Gabor滤波小结:http://www.cppblog.com/polly-yang/archive/2012/07/14/183327.aspx
Gabor滤波小结整理相关推荐
- Gabor滤波进行目标图像纹理特征的提取
1.傅里叶变换 1) 简介 数字图像处理的方法主要分成两大部分:空域分析法和频域分析法.空域分析法就是对图像矩阵进行处理:频域分析法是通过图像变换将图像从空域变换到频域,从另外一个角度来分析图像的特征 ...
- matlab在图像调用Gabor滤波
有很多介绍Gabor的文章,Gabor是一种纹理特征提取,和灰度共生矩阵类似 ------------------------------------------------------------- ...
- 液晶 mura 机器视觉 matlab,基于Gabor滤波与C-V模型分割的LCDMura缺陷机器视觉检测方法...
基于Gabor滤波与C-V模型分割的LCD Mura缺陷机器视觉检测方法 [专利摘要]本发明属于LCD?Mura缺陷机器视觉检测[技术领域],其公开了一种基于Gabor滤波与C-V模型分割的LCD?M ...
- Gabor滤波简介与Opencv中的实现及参数变化实验
声明:本篇文章为转载,目的是便于以后查找学习 Gabor滤波是一种非常常见的特征提取算法,在人脸识别等领域有着很广泛的应用,在这里我主要介绍一下Gabor滤波器的公式及Opencv下的代码实现,以及我 ...
- Python对图像进行二维Gabor滤波加速
1️⃣作业需求 选取5个尺度,36个方向共180个二维模板对一幅图像(任取,可用作业(1)的图像)分别做二维卷积,得到180幅滤波结果图像,以此作为基准Gabor滤波结果.由于这个基准算法处理速度很慢 ...
- python 借助opencv实现Gabor滤波特征提取
首先说一下环境,windows 8.0 64位系统,OpenCV版本为2.4.7, python 版本为2.7.6,IDE为 64位 Anaconda 目的是实现图像的Gabor特征提取,分三个小程序 ...
- 【瑕疵检测】基于matlab GUI Gabor滤波布匹瑕疵检测【含Matlab源码 407期】
⛄一.Gabor滤波布匹瑕疵检测简介 1 Gabor滤波器 2 Gabor函数结合代码分析: ⛄二.部分源代码 function varargout = bupi(varargin) % BUPI M ...
- OpenCV—python Gabor滤波(提取图像纹理)
文章目录 一.Gabor滤波简介 二.代码演示 Gabor是一个用于边缘提取的线性滤波器,其频率和方向表达与人类视觉系统类似,能够提供良好的方向选择和尺度选择特性,而且对于光照变化不敏感,因此十分适合 ...
- 二维Gabor 滤波加速
以下内容原创首发,如需转载请注明来源! 实验题目: 选取5个尺度,36个方向共180个二维模板对一幅图像分别做二维卷积,得到180幅滤波结果图像,以此作为基准Gabor滤波结果.由于这个基准算法处理速 ...
最新文章
- oracle修改memory,Oracle 修改 MEMORY_TARGET
- BZOJ 2466 中山市选2009 树 高斯消元+暴力
- shell按照时间排序_【经典排序】希尔排序
- Java反射获取Android系统属性值
- redis配置认证密码以及远程访问
- 毕设题目:Matlab元胞自动机病毒仿真
- 【机器学习Machine Learning】资料大全
- ITIL学习笔记——核心流程之:变更管理
- 【emoji大全宝典】
- 用java写布尔矩阵奇偶性
- 史上最清晰的雷霆战机游戏开发全过程(基于java,素材和源码均齐全)
- 6、编写应用程序,计算两个非零正整数的最大公约数和最小公倍数,要求两个非零正整数从键盘输入。
- 三维空间中直角坐标与球坐标的相互转换
- CentOS7里ping命令详解
- 为何要开办《微积分阅览室》?
- mlp原来是这么回事
- 23届应届毕业生秋招分享——秋招经验
- 【极客赠书】向Richard Stallman提问,赢取传记《若为自由故》【活动结束】
- 前端开发 html第二课 自结束标签 注释 标签中的属性 文档声明 进制 字符编码 文档使用 VScode 实体 meta标签 语义化标签 块元素和行内元素 布局标签
- 认知无线电网络的服务质量——蜻蜓算法的应用(Matlab代码实现)