机器学习实战——LBP特征提取

本文详细介绍了LBP(Local Binary Pattern)算法,包括基本的灰度不变性LBP、圆形LBP、旋转不变性LBP和等价LBP,强调其在纹理描述和图像识别中的应用。LBP通过比较像素点之间的灰度关系,形成局部特征,具有灰度和旋转不变性。文章还讨论了LBP特征在手写数字识别实验中的应用,以及等价模式如何降低特征维数。
摘要由CSDN通过智能技术生成


作者:张旭

编辑:栾志勇





全篇概述

LBP(Local Binary Pattern)算法

是一种描述图像特征像素点与各个像素点之间的灰度关系的局部特征的非参数算法,同时也是一张高效的纹理描述算法。


纹理是物体表面的自然特性,它描述图像像素点与图像领域之间的灰度空间的分布关系,不会因为光照强弱而改变图像的视觉变化。


LBP算法首次提出于1994年,主要是使用8邻域位置的局部关系,具有灰度不变性;随后在2002年提出了其改进版《Multiresolution gray-scale and rotation invariant texture classification with local binary patterns》Timo Ojala, Matti PietikaÈ inen,2002,主要引入了圆形模式、旋转不变性、和等价模式。


所以在下面我们将按照如下顺序介绍LBP特征:灰度不变性的基本LBP,灰度不变性的圆形LBP,旋转不变性的LBP,等价LBP,最后再继续进行我们上一次的实验,用LBP特征提取+KNN算法实现手写数字识别问题。





灰度不变性基本LBP算法:

   分析

    基本的LBP算法一般被定义为一个3*3的纹理单元,如图1,其中间的像素点灰度值为Pc,其他相邻的8个像素点灰度值分别为P0,P1,P2,P3,P4,P5,P6,P7,以该纹理单位的中心像素点的灰度值为阈值,若其余相邻的8个像素点的灰度值大于中心像素点灰度值的阈值,则该像素点的编码值为1,小于阈值的时候取编码值为0.


   计算

对于一个3*3的纹理单元,LBP的计算过程为:



为了得到各个像素点的编码值,则为每个S(Pi-Pc)分配权值2^i,然后将编码值连接成一个二进制值然后再转化成一个十进制的值,然后用现在的十进制值代替原来中心点的阈值,再对这个十进制进行计算,计算出的结果就是LBP算法的值,计算公式为:

   例子

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值