注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

tangxiao的博客

以为我是天才

 
 
 

日志

 
 
 
 

【转载】关于利用滤波器组(MR8,S, LM)进行纹理分类的总结工作  

2015-05-29 10:26:29|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
        在本博文前面提及的“A Statistical Approach to Material Classification Using Image Patch Exemplars ”和 “Texture Classification from Random Features”两篇文章中,都提及现在较好的纹理识别的方法,一类是基于滤波器组的方法,一类是基于类似于BOW的方法(其实BOW的方法与纹理中texton非常相似)只对patch做,其实还有一类就是基于稀疏特征点来做识别;
这儿只讨论第一种,也是最早大家关注的方法,滤波器组作为特征。对于这些滤波器组的生成可以参照:http://www.robots.ox.ac.uk/~vgg/research/texclass/with.html ,并且提供了matlab代码,这里不详细描述,想要查看滤波组的组成,具体可以参照的文章有:“Representing and Recognizing the Visual Appearance of Materials using Three-dimensional Textons”(LM--只参照其中2D纹理分类)、“A Statistical Approach to Texture Classification from Single Images(MR8、MR4)”、“Constructing models for content-based image retrieval(S-filter)”,可以多参考Varm and Zisserman的其他文章,多读几篇可以更加深刻的理解;
对于滤波器组的理解
      可以参照http://www.robots.ox.ac.uk/~vgg/research/texclass/filters.html中的相关阐述,这里简单介绍一下:
LM:
Figure 1
图一:multiple scales and orientations. It has a total of 48 filters - 2 Gaussian derivative filters at 6 orientations and 3 scales, 8 Laplacian of Gaussian filters and 4 Gaussian filters.
S-Filters:
Figure 2
图二:The S filter bank is rotationally invariant and has 13 isotropic, "Gabor-like" filters.
MRF:
Figure 3
图三:The RFS filter bank consists of 2 anisotropic filters (an edge and a bar filter, at 6 orientations and 3 scales), and 2 rotationally symmetric ones (a Gaussian and a Laplacian of Gaussian).
说明一下:
1、S-Filter和MR8滤波器组是具有旋转不变性的,LM不具有该特性;
2、S-Filter的维数为13,LM维数为48,MR8在滤波后只取最大的8个数,故维数为8; 最大数的选取方法是在每个尺度上选取最大的那个滤波响应值作为该尺度时的结果。

具体的步骤如下:
1、读取图像
2、对图像进行归一化,就是将图像归一化到mean is 0 and standard deviation is 1,这样可以消除不同光照条件的影响。
3、对图像与滤波器组做卷积。
4、将滤波后的每个像素响应值(ROW*COL*DIM, 其中DIM为滤波器组的个数,LM = 48,S = 13,MR8=8)按照顺序排列起来(ROW*COL,DIM);
5、利用Kmeans进行聚类,这儿选取的为每个类20个聚类中心,但是很多时候都会提示在最终不会出现收敛的结果,由于纹理重复性很多,故这个影响很有限;
6、对每一类图像都进行2-5的操作,这样就得到了N*K个聚类中心,其中N=总类数,K=聚类中心数;这N*K个聚类中心就形成了texton;聚类中心的维数为(N*K,DIM);
7、然后下一步就是对train的图像进行model的建立,model是通过比对每个像素的与texton的距离,将距离最小的texton+1,方法类似于BOW的过程,这样就形成了每类中都有NI个图像模型,每个图像模型的维数为(1,N*K);说明一下,距离的求取有欧氏距离和卡方距离两种,可选,卡方效果更好点,时间稍微长点。
8、现在就可以对纹理图像进行分类了。同样根据texton建立测试样本的model,通过与训练样本的模型进行欧氏距离或者卡方距离的比较,距离最小的即为最接近的类别。

实验结果:实验数据(CUReT)
采用欧式距离,每类中20个训练样本,20个texton,滤波器组为:S-Filter,最终分类正确率为:95%。很高吧。嘿嘿。
引用地址: http://blog.163.com/pz124578@126/blog/static/23522694201210821719908/
  评论这张
 
阅读(44)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018