lbp代码matlab实现,统一化LBP算子UniformLBP的MATLAB实现程序

Function [histLBP,MatLBP]=getLBPFea(I)

%计算分区图像I的LBP特征,(8,2),uniform

%

%输入:I----分区图像

%

%返回值:MatLBP---LBP响应矩阵

% histLBP---行向量,LBP直方图

%获得分块图像I的大小

[m n]=size(I);

Rad=2;

If (m<=2*rad)||(n<=2*rad)

error(‘I is too small to compute LBP feature!’);

end

MatLBP=zeros(m-2*rad,n-2*rad);

%读入LBP映射(像素灰度与直方图收集箱索引的映射)

Load Mat/LBPMap.mat;

For ii=1+rad:m-rad;

For jj=1+rad:n-rad

nCnt=1;

%计算(8,2)领域的像素值,不在像素中心的点通过双线性插值获得其值nbPT(nCnt)=I(ii,jj-rad);

nCnt=nCnt+1;

horInterp1=I(ii-2,jj-2)+0.5858*(I(ii-2,jj-1)-I(ii-2,jj-2);%水平方向插值

horInterp2=I(ii-1,jj-2)+0.5858*(I(ii-1,jj-1)-I(ii-1,jj-2);%水平方向插值

verInterp=horInterp1+0.5858*(horInterp2-horInterp1);%竖直方向插值

nbPT(nCnt)=verInterp;

nCnt=nCnt+1;

nbPT(nCnt)=I(ii-2,jj);

nCnt=nCnt+1;

horInterp1=I(ii-2,jj+1)+0.4142*(I(ii-2,jj+2)-I(ii-2,jj+1);

horInterp2=I(ii-1,jj+1)+0.4142*(I(ii-1,jj+2)-I(ii-1,jj+1);

verInterp=horInterp1+0.5858*(horInterp2-horInterp1);

nbPT(nCnt)=verInterp;

nCnt=nCnt+1;

nbPT(nCnt)=I(ii,jj+2);

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值