LBP特征笔记

        LBP,局部二值模式(Local Binary Pattern),是一种描述图像局部纹理特征的方式,具有旋转不变性和灰度不变性。首先由T. Ojala, M.Pietikäinen, 和 D. Harwood 在1994年提出。

LBP特征描述

基础LBP算子

        基础的LBP算子定义为在3*3的窗口内,以窗口中心像素为阈值,将相邻的8个像素的灰度值与其进行比较,若周围像素值大于中心像素值,则该像素点的位置被标记为1,否则为0。这个方法和前面提到的Brief描述子由点类似,二进制的值都是对比像素值大小出来的。、

          如上图所示,3x3窗口中有8个相邻的像素。这8个像素和中心像素进行对比可以得到8个二进制值,这8个bit就被用来表示中心点的纹理信息。根据bit权重值窗口可以得知,对应二进制为11100001(最高有效位在左边,如果最高有效位在右边,则是10000111),对应十进制的225,计算过程的起点是左上角的像素按顺时针方向计算。

        计算的过程的数学表达式如下:

         其中s(x)定义如下:

         这个过程其实就是上图表达的意思。

LBP改进:圆形LBP

        基础的LBP算子覆盖的区域非常小,不能满足不同尺寸的纹理特征描述需求。因此Ojala改进了LBP算子,将3x3的区域扩展为任意半径的圆形,在半径为 R 的圆形邻域内有任意多个像素点,记为LBP_p^R,R表示半径大小,p表示采样点的个数。

         以上图的LBP_8^1为例,它表示半径为1的圆上取8个采样点生成LBP描述符。需要注意的是,随着半径的增大,采样点像素和中心像素的相关度会降低。

LBP等价模式(Uniform Patterns)

        对于有P个采样点的LBP来说,LBP对应的二进制数总共有2^P个可能的值。随着采样点数量的增加,值的个数会增长的很快。如此多的模式会对纹理提取和分类造成不利影响。为了解决这个问题,Ojala提出了“等价模式(Uniform Patterns)”。对于一个二进制串,按照首尾相接的环的方式,统计其bit跳变的次数。如果跳变次数最多只有两次,则称为等价模式,否则称为混合模式(hybrid pattern)。

        以P=8为例来说:00000000(0次跳变),01110000(2次跳变),11001111(2次跳变),这几个都是等价模式。11001001(4次跳变)和01010010(6次跳变)则不是等价模式。使用下面的方法来检查模式是否是等价模式:

        从公式中的第一个|s(g_{p-1} - g_0) - s(g_0 - g_c)| 可以看出,是计算了串的首尾bit是否有跳变的。网上有些文章举的例子比如00001111跳变次数只有1次,从目前我看到的资料看(也许是我看的资料有错?)感觉是有问题的。

        对于P = 8,总共有58个等价模式(7 * 8 + 2,2是因为全0和全1都是等价模式,推导过程其实考虑到如果要跳变次数不超过两次,1的位置必须是紧挨着的这一点就可以了),其形式如下图: 


The 58 different uniform patterns in (8,R) neighborhood .

         因此,等价模式把LBP值分为59类,58个uniform pattern为一类,其它的所有值为第59类。这样直方图从原来的256维变成59维。这使得特征向量的维数更少,并且可以减少高频噪声带来的影响。 

具有旋转不变性的LBP

        LBP算子本身具有灰度不变性(结果的0或1反映了灰度的相对强弱,而不是绝对的灰度差异),但无论是基础的LBP算子和运行LBP算子都不具有旋转不变性。为了让LBP具有旋转不变性,Maenpaa等人又将 LBP算子进行了扩展,提出了具有旋转不变性的 LBP 算子

        旋转不变的LBP算子通过不断旋转圆形邻域得到多个LBP值,取其中的最小值作为该邻域的 LBP 值。局部旋转不变的LBP模式定义如下:

         ROR是旋转函数。

         如上图所示,对于P=8的情况,总共计算了8个LBP值,其中13最小,会作为最终的LBP值使用。

        对于旋转不变的LBP,加上等价模式,得到的表达式如下:

 参考资料

https://www.researchgate.net/publication/259166826_Research_and_Perspective_on_Local_Binary_Patternhttps://www.researchgate.net/publication/259166826_Research_and_Perspective_on_Local_Binary_Pattern

https://www.researchgate.net/publication/305152373_Texture_Feature_Extraction_by_Using_Local_Binary_Patternhttps://www.researchgate.net/publication/305152373_Texture_Feature_Extraction_by_Using_Local_Binary_PatternTowards Understanding the Formation of Uniform Local Binary PatternsThe research reported in this paper focuses on the modeling of Local Binary Patterns (LBPs) and presents an apriori model where LBPs are considered as combinations of permutations. The aim is to increase the understanding of themechanisms related to the formation of uniform LBPs. Uniform patterns are known to exhibit high discriminativecapability; however, so far the reasons for this have not been fully explored. We report an observation that although the overall apriori probability of uniform LBPs is high, it is mostly due to the high probability of only certain classes of patterns, whilethe a priori probability of other patterns is very low. In order to examine this behavior, the relationship between the runs upand down test for randomness of permutations and the uniform LBPs was studied. Quantitative experiments were then carriedout to show that the relative effect of uniform patterns to the LBP histogram is strengthened with deterministic data, in comparisonwith the i.i.d. model. This was verified by using an a priori model as well as through experiments with natural image data. It was further illustrated that specific uniform LBP codes can also provide responses to salient shapes, that is, to monotonically changing intensity functions and edges within the image microstructure.https://www.hindawi.com/journals/isrn/2013/429347/http://kiwi.bridgeport.edu/cpeg585/LocalBinaryPattern_Tutorial.pdfhttp://kiwi.bridgeport.edu/cpeg585/LocalBinaryPattern_Tutorial.pdfhttps://www.researchgate.net/publication/220809357_Rotation_Invariant_Image_Description_with_Local_Binary_Pattern_Histogram_Fourier_Featureshttps://www.researchgate.net/publication/220809357_Rotation_Invariant_Image_Description_with_Local_Binary_Pattern_Histogram_Fourier_Features

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/76138.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

# 关于Linux下的parted分区工具显示起始点为1049kB的问题解释

关于Linux下的parted分区工具显示起始点为1049kB的问题解释 文章目录 关于Linux下的parted分区工具显示起始点为1049kB的问题解释1 问题展示:2 原因3 修改为KiB方式显示4 最后 1 问题展示: kevinTM1701-b38cbc23:~$ sudo parted /dev/nvme1n1 GNU Part…

记一次使用gophish开展的钓鱼演练

这周接到客户要求,组织一次钓鱼演练,要求是发送钓鱼邮件钓取用户账号及个人信息。用户提交后,跳转至警告界面,以此来提高客户单位针对钓鱼邮件的防范意识。 与客户沟通后得知他们企业内部是由邮箱网关的,那么就意味着…

ARM微架构

一、流水线 二、指令流水线 指令流水线 指令流水线 指令流水线 ARM指令流水线 ARM7采用3级流水线 ARM9采用5级流水线 Cortex-A9采用8级流水线 注1:虽然流水线级数越来越多,但都是在三级流水线的基础上进行了细分 PC的作用(取指) …

搭建Django+pyhon+vue自动化测试平台

Django安装 使用管理员身份运行pycharm使用local 1 pip install django -i https://pypi.tuna.tsinghua.edu.cn/simple 检查django是否安装成功 1 python -m django --version 创建项目 1 1 django-admin startproject test cd 切换至创建的项目中启动django项目…

python 连接oracle pandas以简化excel的编写和数据操作

python代码 Author: liukai 2810248865qq.com Date: 2022-08-18 04:28:52 LastEditors: liukai 2810248865qq.com LastEditTime: 2023-07-06 22:12:56 FilePath: \PythonProject02\pandas以简化excel的编写和数据操作.py Description: 这是默认设置,请设置customMade, 打开koro…

SpringBoot+AOP+Redission实战分布式锁

文章目录 前言一、Redission是什么?二、使用场景三、代码实战1.项目结构2.类图3.maven依赖4.yml5.config6.annotation7.aop8.model9.service 四、单元测试总结 前言 在集群环境下非单体应用存在的问题:JVM锁只能控制本地资源的访问,无法控制…

docker容器的基本操作

一、查看Docker的版本信息 [roothuyang1 ~]# docker version 二、查看docker的详细信息 [roothuyang1 ~]# docker info 三、Docker镜像操作 Docker创建容器前需要本地存在对应的镜像,如果本地加载不到相关镜像,Docker默认就会尝试从镜像仓库https://hu…

算法竞赛入门【码蹄集新手村600题】(MT1100-1120)C语言

算法竞赛入门【码蹄集新手村600题】(MT1100-1120)C语言 目录MT1101 带参数的宏IIMT1102 长方体MT1103 球体积MT1104 三角形MT1105 英寸英尺英里MT1106 盎司磅MT1107 加仑/升MT1108 保留小数MT1109 和10相比MT1110 最小值MT1111 最大值MT1112 中庸之道MT1113 三人同行…

代码随想录算法训练营第17期第28天 | 93.复原IP地址 、78.子集 、​ 90.子集II

93. 复原 IP 地址 1.当点号有三个之后&#xff0c;当最后一部分数值是有效的话&#xff0c; 就可以加入结果集了 class Solution { public:vector<string> res;bool isvalid(const string& s, int left, int right){if (right < left){return false;}if (s[left]…

-bash: fork: retry: Resource temporarily unavailable 问题解决

错误提示&#xff1a; -bash: fork: retry: Resource temporarily unavailable 错误分析&#xff1a;之前已经出现过这种资源限制的报错提醒&#xff0c;然后整个系统可用的连接数就已经用完了&#xff0c;无法使用工具来获取系统信息&#xff0c;所以将运行的任务脚本kill后开…

【运维工程师学习八】代理及安装配置Nginx反向代理

【运维工程师学习八】代理 正向代理一、使用正向代理的主要作用有&#xff1a;二、反向代理三、使用反向代理的主要作用有&#xff1a;四、透明代理五、各种代理的主要区别六、Nginx的安装七、了解nginx的文件位置八、了解nginx程序的命令行参数九、开启nginx反向代理十、解读n…

less的使用

less的介绍&#xff1a; less使用 1、 less使用的第一种用法&#xff0c;起变量名&#xff0c;变量名区分大小写&#xff1a; 这里我们定义一个粉色变量 我想使用直接把变量拿过来就行 2、vscode使用插件&#xff0c;直接将Css文件转换less文件&#xff1a; 3、第二种用法&…

【力扣每日一题】2023.8.5 合并两个有序链表

目录 题目&#xff1a; 示例&#xff1a; 分析&#xff1a; 代码&#xff1a; 题目&#xff1a; 示例&#xff1a; 分析&#xff1a; 题目给我们两个有序的链表&#xff0c;要我们保持升序的状态合并它们。 我们可以马上想要把两个链表都遍历一遍&#xff0c;把所有节点的…

android Android Studio Giraffe | 2022.3.1 版本Lombok不兼容 解决方案

android Android Studio Giraffe | 2022.3.1 版本Lombok不兼容 解决方案 1.查看当前的android studio 版本 Android Studio Giraffe | 2022.3.1 Build #AI-223.8836.35.2231.10406996, built on June 29, 2023 2.打开 idea 官网下载页面 idea下载历史版本 找到对应的版本编号…

MySQL 与MongoDB区别

一、什么是MongoDB呢 ? MongoDB 是由C语言编写的&#xff0c;是一个基于分布式文件存储的开源数据库系统。在高负载的情况下&#xff0c;添加更多的节点&#xff0c;可以保证服务器性能。 MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB 将数据存储为一…

集中/本地转发、AC、AP

1.ADSL ADSL MODEM&#xff08;ADSL 强制解调器&#xff09;俗称ADSL猫 ADSL是一种异步传输模式&#xff08;ATM)。ADSL是指使用电话线上网&#xff0c;需要专用的猫&#xff08;Modem)&#xff0c;在上网的时候高频和低频分离&#xff0c;所以上网电话两不耽误&#xff0c;速…

Vue命名规范

JS文件命名 一般采用的是小驼峰命名法&#xff0c;如 pieChartHelp 第一个单词小写&#xff0c;其他单词首字母大写 Components 文件命名 一般采用的是大驼峰命名法&#xff0c;如PieChart 所有单词的首字母大写 常量命名 一般全部大写&#xff0c;每个单词使用分隔符隔开&…

若依打印sql

官方issue 自动生成的代码&#xff0c;sql日志怎么没有打印 在ruoyi-admin中的application.yml配置如下。 # 日志配置&#xff0c;默认 logging:level:com.ruoyi: debugorg.springframework: warn#添加配置com.ying: debug输出sql

网络基础1

文章目录 网络基础11. 计算机网络背景1.1 网路发展1.2 认识 "协议" 2. 网络协议初识2.1 协议分层2.2 OSI七层模型2.3 TCP/IP五层(或四层)模型协议栈与OS的关系 3. 网络传输基本流程3.1 同一个局域网两台主机通信3.2 同一个路由器的两个子网通信 4. 网络中的地址管理4…

PHP国外在线教育系统源码 在线课程系统源码 直播课程系统源码提供在线课程,现场课程,测验

Proacademy是在线教育一体化的解决方案&#xff0c;用于创建类似于Udemy、Skillshare、Coursera这种在线教育市场。 这个平台提供在线课程&#xff0c;现场课程&#xff0c;测验等等&#xff0c;并有一个基于实际业务需要的高级认证插件&#xff0c;程序基于Laravel强大的安全框…