全球旧事资料 分类
原LBP特征提取算法
201359阅读1039评论1本文的PDF版本,以及涉及到的所有文献和代码可以到下列地址下载:1、PDF版本以及文献:httpdow
loadcsd
etdetailty10153498162、原作者的MATLAB代码:httpdow
loadcsd
etdetailty1015349894LBP一种用来描述图像纹理特征的算子,该算子由芬兰奥卢大学的TOjala等人在1996年提出1,在2002年时,TimoOjala等人在PAMI上又发表了一篇关于LBP的文章2,该文章非常清楚的阐述了多分辨率、灰度尺度不变和旋转不变、等价模式的改进的LBP特征。LBP的核心思想就是:以中心像素的灰度值作为阈值,与他的领域相比较得到相对应的二进制码来表示局部纹理特征。呃,这句话实在有些拗口_还是举例吧,下面我们从最简单的入手,一步一步讲解整个LBP特征(整个LBP特征提取流程请看文章最后的appe
dix)。l初级的LBP计算方法(先撇开多分辨率、灰度尺度不变、旋转不变_)假设我们有一个33的窗口,窗口内的值代表每个像素的灰度值,如下所示:
可以看到中心像素点的灰度值为6,我们将这个中心像素点的灰度值与它周围8领域的像素值大小做比较,也就是说我们将7、9、8、7、1、2、5、6这8个数字分别与6做比较,大于6,我们则把右边相应的方格置为1,小于6则置为0。之后我们就得右边的窗口,我们按逆时针方向把这些1和0连起来就得到了所谓的LBP模式:11110001(注意是二进制的),然后将这个数转换为10进制,也就是241。Tips扩展后的LBP中的窗口形状上面所说的版本是TimoOjala在1996年提出的,在2002年的时候TimoOjala在PAMI上的文章对上述算法进行了拓展。拓展后的算法可以设置邻域和半径的属性,用P来表示邻域像素点个数,用R来表示半径,上面我们描述的初级版本就是P8R10的版本(不考虑插值,后面会详细描述)。下图描述了P,R取不同值时的情形:
f注意初级版本1的领域是没有表现出插值的思想的(也就是方形邻域),而2002年的PAMI文章2是圆形邻域,是涉及到插值的(可以看出,只有对角线的像素需要插值)。其实将方形窗口换成圆形窗口也有利于后面的旋转不变性的实现,后面会详细描述。Tips关于LBP的亮度变化鲁棒性以及灰度尺度不变灰度尺度不变其实很好理解,我们依旧用图1为例子,我们将亮度放大10倍:
可以看到,灰度尺度的变换并没有对最后的局部二值模式产生影响,同样的道理,即使该窗口的9个像素的灰度值出现了亮度的非线性变换,只要中心像素的灰度值与8邻域内像素的灰度值的大小关系不变,那么最终产生的Lr
好听全球资料 返回顶部