一. 原始LBP特征描述

LBP纹理特征描述:纹理是一种反映图像中同质现象的视觉特征,它体现了物体表面的具有缓慢变化或者周期性变化的表面结构组织排列属性。
原始LBP通过比较3x3邻域与中心像素值得到一个8位的二值数,并将其转化为一个十进制数用于描述该中心点。

其中(Xc, yc) 是中心像素,亮度是ic ;而 ip则是相邻像素的亮度。s是一个符号函数:

二. 圆形LBP算子

基本的 LBP算子的最大缺陷在于它只覆盖了一个固定半径范围内的小区域,这显然不能满足不同尺寸和频率纹理的需要。且不具有旋转不变性。
为了使LBP算子具有旋转不变性,设计了旋转取最小值代替原LBP描述符的方法:LBP’ = min{Rot(LBP)},其中min{}函数为取最小值。Rot函数为按位旋转。如果近邻点不在整数位置上,就需要进行插值运算。
求取旋转不变的 LBP 的过程示意图:

此时的LBP算子貌似比较不错,但实际使用发现LBPROT并不具有很好地辨别力,因为随着采样点数的增加,二进制模式会急剧增多,会使得数据量过大,直方图过于稀疏,不能很好地反映图像特征。

三. LBP等价模式和混合模式

一个LBP算子可以产生不同的二进制模式,对于半径为R的圆形区域内含有p个采样点的LBP算子将会产生2^p种模式。所以Ojala提出了采用一种“等价模式”(Uniform Pattern)来对LBP算子的模式种类进行降维。
Ojala将“等价模式”定义为:当某个LBP所对应的循环二进制数从0到1或从1到0最多有两次跳变时,该LBP所对应的二进制就称为一个等价模式类。如00000000(0次跳变),00000111(只含一次从0到1的跳变),10001111(先由1跳到0,再由0跳到1,共两次跳变)都是等价模式类。除等价模式类以外的模式都归为另一类,称为混合模式类,例如10010111(共四次跳变)。模式数量由原来的 2^p种减少为 p ( p − 1 ) + 2种,如3×3邻域内8个采样点来说,二进制模式由原始的256种减少为58+1(混合)=59种。
0次跳变:2种
1次跳变:2×(p−1)种
2次跳变:2×((p−2)+(p−3)+(p−4)+⋯+1)种
总和为:p(p−1) + 2种
检查某种模式是否是等价模式:将其和其移动一位后的二进制模式按位相减。并绝对值求和。若小于等于2,则为等价模式。

计算该统计直方图的步骤如下:

  1. 计算图像的LBP特征图像,即上面的所说的计算方式,为每个坐标计算其的LBP(xc,yc)值。
  2. 将整个LBP特征图像进行分块,Opencv中默认将LBP特征图像分成8行8列64块区域。然后分别计算每块区域的特征图像的直方图,即统计该区域中所有像素点的LBP(xc,yc)值(该值有[0, 2^(p-1)] 的2^p种情况,p为采样点个数)的分布情况。
  3. 连接块向量得到全图LBP特征向量,维度为2px64。如当采样点数p为8时,如果使用的是原始模式的LBP,对应的LBP(xc,yc)值个数为2^8 = 256,则最后得到的LBP特征向量的维度为256x64 = 16384维;如果使用的是等价模式,则最后的特征向量的维度为59x64=3776维。

Reference:
https://www.cnblogs.com/wanghui-garcia/p/12626925
https://blog.csdn.net/wzyaiwl/article/details/107614819

LBP—局部二值模式相关推荐

  1. LBP(局部二值模式)特征提取原理

    1.前言 LBP(Local Binary Pattern,局部二值模式)是一种用来描述图像局部纹理特征的算子:它具有旋转不变性和灰度不变性等显著的优点.它是首先由T. Ojala, M.Pietik ...

  2. 局部二值模式LBP的详细理解

    局部二值模式LBP的噶几详细的理解 一个电脑小白的自我成长之路,总是这么的寂寞.孤独.无聊,却充满新奇.艰难,唯有坚韧不拔,持续奋斗,才可披荆斩棘.登临云端.各位看官们:"咋的,能不能上干货 ...

  3. 局部二值模式(Local Binary Patterns)纹理灰度与旋转不变性

    Multiresolution Gray Scale and Rotation Invariant Texture Classification with Local Binary Patterns, ...

  4. matlab lbp直方图特征多少维,LBP局部二值特征

    最近一直在看LBP的东西,就说说LBP吧.先从最基本的LBP说起,LBP的全称是Local Binary Pattern即局部二值模式,是局部信息提取中的一种方法.目前LBP有很多应用,如人脸识别,表 ...

  5. 特征提取算法——LBP(Local Binary Pattern)局部二值模式学习笔记

    在上Computer Vision lecture的时候,讲师介绍了LBP算子,这里对他进行简单的介绍. LBP(Local Binary Pattern) 局部二制模式,是描述图像局部纹理特征的算子 ...

  6. gabor 幅值域 matlab,基于全局二值模式的特征提取方法及其应用

    基于全局二值模式的特征提取方法及其应用 来源:原创论文网 添加时间:2014-02-09 摘 要 提出一种全局二值模式( GBP) 的纹理分析方法,解决局部二值模式( LBP) 易受噪声影响的问题. ...

  7. Opencv全局二值化和局部二值化(python实现)

    文章目录 1.前置知识 (1).什么是形态学处理 (2).形态学图像处理 2.二值化 (1)全局二值化 1)函数 2)阈值类型 3)代码实战 (2)局部二值化(自适应阈值) 1)函数 2)阈值类型 1 ...

  8. 基于堆栈二值化自动编码器和二值化神经的无约束人脸表情识别算法(An efficient unconstrained FERa based on BAEs and BNN)

    摘要(abstract) 虽然深度学习在许多模式识别任务中都取得了良好的效果,但对于含有大量参数集.标记数据有限的深度网络,过拟合问题仍然是一个严重的问题.在这项工作中,二进制自动编码器(BAEs)和 ...

  9. 基于旋转轮廓的点云局部浮点型和二值化特征描述(RCS)

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 本次介绍一个发表于Computer Vision and Image Understanding的经典 ...

  10. [转载+原创]Emgu CV on C# (五) —— Emgu CV on 局部自适应阈值二值化

    局部自适应阈值二值化 相对全局阈值二值化,自然就有局部自适应阈值二值化,本文利用Emgu CV实现局部自适应阈值二值化算法,并通过调节block大小,实现图像的边缘检测. 一.理论概述(转载自< ...

最新文章

  1. qps是什么意思_面试官:说说你之前负责的系统,QPS 能达到多少?
  2. 华为什么时候开始升级鸿蒙,鸿蒙什么时候开放升级?华为又食言了,官方宣布延期到六月...
  3. 李开复:不是言AI必称中美,而是欧洲太堂吉诃德
  4. 谈谈NTFS数据流文件
  5. 【SAP】PO中“交货已完成”的功能解析
  6. 工程师如何解决穿衣搭配烦恼?
  7. javascript如何阻止事件冒泡和默认行为
  8. 一款非常简约好看的白色网格个人引导页HTML源码
  9. rabbitmq多个消费者_为什么要选择RabbitMQ,RabbitMQ简介,各种MQ选型对比
  10. Windows7系统下编译安装X264
  11. windows 10下hosts文件写入权限
  12. Oracle基础篇--01数据库控制语言DCL
  13. 【转】VC6.0+icc编译STLPort5.2
  14. 成都女学霸高考 692 分想当“程序媛”,网友:快劝劝孩子
  15. android fastboot 最新版,用adb、fastboot拯救你的安卓手机
  16. linux进程通信方式总结
  17. 一篇通俗易懂的文章初探NIO
  18. 微积分小糊涂源于微积分大糊涂
  19. PostgreSQL 源码解读(35)- 查询语句#20(查询优化-简化Having和Grou...
  20. 备战蓝桥杯单片机倒数第四天 小蜜蜂老师公众号更新内容

热门文章

  1. 台式计算机如何联络无线网,台式电脑怎样设置无线网络
  2. 豆瓣排名前500的电视剧
  3. git合并其他分支的代码产生冲突处理过程
  4. MATLAB 提取图片曲线
  5. react中axios封装ajax,【逆流而上】[React]axios的封装使用
  6. python if .for 等函数
  7. Python编程定义函数参数的小tips
  8. Pycharm使用小Tips
  9. python解析mht文件_实现MHT文件格式的解析和内容抽取
  10. 描述性物理海洋学 --第五章学习笔记(大洋中水、盐和热收支以及风应力)