机器视觉 之 Gabor Feature
2015-12-23 09:24
453 查看
在机器视觉中,gabor feature是一种比较常见的特征,因为其可以很好地模拟人类的视觉冲击响应而被广泛应用于图像处理, gabor feature 一般是通过对图像与gabor filter做卷积而得到,gabor filter定义为高斯函数与正弦函数的乘积,其表达式如下:
g(x,y;λ,θ,ψ,σ,γ)=exp(−x′2+γ2y′22σ2)exp(i(2πx′λ+ψ))
上面的式子可以通过三角函数展开:
实数部分:
R(g(x,y;λ,θ,ψ,σ,γ))=exp(−x′2+γ2y′22σ2)cos((2πx′λ+ψ))
虚数部分:
I(g(x,y;λ,θ,ψ,σ,γ))=exp(−x′2+γ2y′22σ2)sin((2πx′λ+ψ))
其中,x′,y′ 与原始坐标x,y满足如下的关系:
x′=xcosθ+ysinθ y′=−xcosθ+ycosθ
λ 表示波长,θ 表示旋转角度, ψ 表示相位偏移量,σ 是高斯函数里的标准差, γ 表示空间比率。当 γ 为 1 的时候,表示在x-y 平面的投影是一个圆,如果γ 不为1,则投影是一个椭圆。γ 越大,椭圆在 x 方向的轴越长,反之,γ 越小,椭圆在 y 方向的轴越长。
gabor filter 的实数部分,相当于各个方向的边缘检测算子,基于这一特性,可以利用 gabor filter来构造gabor space,下图给出一个各个方向的gabor filter:
利用 gabor filter 与 图像 做卷积,可以得到不同方向,不同尺度滤波后的图像,如下所示:
可以利用卷积后的图做进一步的处理,用来做各种分类,识别之类的。
参考来源: https://en.wikipedia.org/wiki/Gabor_filter
g(x,y;λ,θ,ψ,σ,γ)=exp(−x′2+γ2y′22σ2)exp(i(2πx′λ+ψ))
上面的式子可以通过三角函数展开:
实数部分:
R(g(x,y;λ,θ,ψ,σ,γ))=exp(−x′2+γ2y′22σ2)cos((2πx′λ+ψ))
虚数部分:
I(g(x,y;λ,θ,ψ,σ,γ))=exp(−x′2+γ2y′22σ2)sin((2πx′λ+ψ))
其中,x′,y′ 与原始坐标x,y满足如下的关系:
x′=xcosθ+ysinθ y′=−xcosθ+ycosθ
λ 表示波长,θ 表示旋转角度, ψ 表示相位偏移量,σ 是高斯函数里的标准差, γ 表示空间比率。当 γ 为 1 的时候,表示在x-y 平面的投影是一个圆,如果γ 不为1,则投影是一个椭圆。γ 越大,椭圆在 x 方向的轴越长,反之,γ 越小,椭圆在 y 方向的轴越长。
gabor filter 的实数部分,相当于各个方向的边缘检测算子,基于这一特性,可以利用 gabor filter来构造gabor space,下图给出一个各个方向的gabor filter:
利用 gabor filter 与 图像 做卷积,可以得到不同方向,不同尺度滤波后的图像,如下所示:
可以利用卷积后的图做进一步的处理,用来做各种分类,识别之类的。
参考来源: https://en.wikipedia.org/wiki/Gabor_filter
相关文章推荐
- javaScript笔记
- 调试出错:无法获取属性"parentNode"的值:对象为null或未定义
- 前端组件收集整理列表
- 关于HTML5标签不兼容(IE6~8)
- Hadoop NameNode 高可用 (High Availability) 实现解析
- DIV+CSS规范命名大全集合
- HTML5入门九---Canvas画布
- 移动H5前端性能优化指南
- 使用Function.apply()的参数数组化来提高 JavaScript程序性能的技巧
- js判断文本框输入的内容是否为数字
- Bootstrap快速学习笔记(3)网格系统
- H5相关
- javascript新闻跑马灯实例代码
- HTML5入门八---缓存控件元素的值
- jquery性能优化
- LazyLaod.js用法
- JavaScript模块化开发1
- JavaScript闭包
- CSS属性(常用的属性)
- iOS.ReactNative-5-make-react-native-to-support-dynamically-update