纹理_结构特征分析
纹理分析

9.2影像纹理的直方图分析法
纹理区域的灰度直方图作为纹理特征,为了研 究灰度直方图的相似性,可以比较累积灰度直方 图分布,计算灰度级的最大偏差或总偏差。如果 限定对象,则采用这样简单的方法也能够识别纹 理。但是灰度直方图不能得到纹理的二维灰度变 化,即使作为一般性的纹理识别法,其能力是很 低的。例如图9.2.1两种纹理具有相同的直方图, 只靠直方图就不能区别这两种纹理。
ˆ p ( i , j ) = p (i , j ) / R
这里R是正规化常数。
当取δ=1,θ=0°时,每一行有2(Nx–1)个水平 相邻像素对,因此总共有2Ny(Nx–1)水平相邻像素 对,这时R=2Ny(Nx–1)。 当取δ=1, θ=45°时,共有2(Ny–1)(Nx–1)相邻 像素对,R=2(Ny –1)(Nx –1) 。由对称性可知,当 θ=90°和135°时,其相邻像素对数是显然的。 Haralick等人由灰度共生矩阵提取了14种特征。 最常用的5个特征是: 1)角二阶矩(能量) 2)对比度(惯性矩) 3)相关 4)熵 5)逆差矩
P(i,j,δ,θ) = {[(x,y),(x+Δx,y+Δy)] |f(x,y)=i,f(x+Δx,y+Δy)=j;x, y=0,1 ,…,N-1}
根据上述定义,所构成的灰度共生矩阵的第 i 行、 第 j 列元素,表示图像上所有在θ方向、相隔为δ,一 个为灰度 i 值,另一个为灰度 j 值的像素点对出现的频率。 这里θ取值一般为00、450、900和1350。很明显,若Δx =1,Δy=0,则θ=00;Δx=1,Δy=-1,则θ= 450;Δx=0,Δy=-1,则θ=900;Δx=-1,Δy=-1,则 θ=1350。δ的取值与图像有关,一般根据试验确定。 例如,图9.5.2(a)所示的图像,取相邻间隔δ=1,各 方向的灰度共生矩阵如图9.5.1(b)所示。
生物图像分析中的纹理特征提取研究

生物图像分析中的纹理特征提取研究随着科技的进步和生物学研究的发展,生物图像分析在近年来已经成为生物学领域中重要的研究方法之一。
其中,纹理特征是生物图像分析中的重要研究领域之一,也是生物图像分析中的一个重要方向。
纹理特征是指朝向一定方向上出现的局部视觉结构,由于纹理不仅包含了物体表面的细节信息,还包括了物体的形状、方向等重要信息,因此在生物学领域中应用广泛。
在生物图像分析中,纹理特征的提取和分析十分重要,对于识别、分类、分割等任务均具有重要作用。
在纹理特征的提取和分析中,有多种方法可供选择。
其中,灰度共生矩阵(GLCM)、灰度区域协方差矩阵(GLRLM)、小波变换、局部二进制模式(LBP)等方法应用广泛。
(一)灰度共生矩阵(GLCM)灰度共生矩阵是一种常用的纹理特征提取方法,它可以提取图像中灰度级的空间关系,计算出图像的灰度共生矩阵后便可计算纹理特征,如对比度、能量、熵、相关性等。
在生物图像分析中,GLCM主要应用于纹理分析和分类任务中。
例如,用GLCM提取膜蛋白图像的纹理特征可以用于分类膜蛋白的种类。
此外,有研究利用GLCM分析血管壁的纹理特征,可以用于评估血管粗糙度等指标。
(二)灰度区域协方差矩阵(GLRLM)灰度区域协方差矩阵是一种提取纹理特征的方法,主要用于将图像中的像素分为若干区域,计算每个区域内像素间的协方差矩阵,然后利用这些矩阵来计算纹理特征。
在生物图像分析中,GLRLM可用于提取组织、细胞、细胞核等的纹理特征。
例如,有研究利用GLRLM提取CT扫描图像中肝脏癌症区域的纹理特征,可以用于癌症区域的识别与区分。
(三)小波变换小波变换是一种能够对信号或图像进行局部分析的多尺度分析方法,它具有不变性、可压缩性等优良性质。
在生物图像分析中,小波变换主要用于纹理特征提取、图像增强、模式识别等任务。
例如,有研究利用小波变换提取心脏血管图像中的纹理特征,可以用于监测血管病变情况。
(四)局部二进制模式(LBP)局部二进制模式是一种灰度不变的纹理特征提取方法,它是通过将该点的像素值与周围邻域像素值的大小关系转换为二进制数编码来进行的。
图像的纹理分析

摘 要纹理是表达物体表面或结构的属性。
纹理分析的主要目标是纹理识别和基于纹理的性状分析。
存在两个主要的纹理描述方法——统计的纹理描述方法和句法的纹理描述方法。
用共生矩阵的方法描述纹理的方法是统计的方法的一种。
由于灰度-梯度共生矩阵能提取到图像灰度和梯度两方面的信息,因此能够很好的描述图像的纹理。
因此,基于灰度-梯度共生矩阵的特征提取能够对纹理进行很好的分类。
真实世界的纹理通常是不规则的,且伴随着频繁的结构误差,变形和结构的变化,使得没有严格的语法可用。
因此,句法和混合纹理描述方法没有像统计方法那样得到广泛应用。
在我们的世界里,纹理是常见的,应用的可能性几乎是没有限制的。
关键词:纹理、统计的纹理描述方法、句法的纹理描述方法、共生矩阵、纹理分类AbstractTexture refers to properties that represent the surface or structure of an object. The main aim of texture analysis is texture recognition and texture-based shape analysis. Two main texture description approaches exists-statistical and syntactic. The co-occurrence matric method of texture description is statistical. It based on the repeated occurrence of some gray-level and gradient-level configuration in the texture. Texture classification can be based on criteria derived from the co-occurrence matrices. Syntactic and hybrid texture description methods are not as widely used as statistical approach. Textures are very common in our world, and possibilities are almost unlimited.keywords: Texture, co-occurrence matric, statistical, syntactic, texture classification目 录第一章 图像基础1.1 图像的概念1.2 图像信息的分类1.3 图像的统计特性1.4 图像信息的统计量1.5数字图像处理基础1.6 BMP位图基础第二章 图像纹理的特征提取2.1 引言2.2 图像纹理的定义2.3图像纹理特征提取流程2.4 纹理特征提取的方法2.5 结果与分析第三章 图像的灰度梯度共生矩阵3.1引言3.2梯度图像的生成3.3灰度梯度共生矩阵的生成3.4灰度梯度共生矩阵的结果与分析3.5 基于灰度梯度共生矩阵的图像纹理特征参数描述 第四章 实例分析及应用第五章 结论参考资料致谢第一章 图像纹理分析基础1.1 图像的概念图像(Image)是指用镜头等科技手段得到的视觉形象。
图像处理和识别中的纹理特征和模型

.纹理特征和模型1,基于纹理谱的纹理特征图像纹理分析中,最重要的问题是提取能够描述纹理的特征信息;这些特征可被用来分类和描述不同的纹理图像。
在实际中常用到的方法有结构法和统计法;本文提出一种新的统计方法,每个纹理单元表征该位置及其领域象素的特征,整幅图像的纹理特征用纹理谱来表征,用这种方法进行分析较为简单。
定义纹理谱:纹理单元的频率分布。
基于纹理频谱的纹理特征:3×3领域:权重:original reference calculate by myself (1)、黑白对称性()(3281)1*100()s i S iBWSS i⎡⎤-+⎢⎥⎢⎥=-⎢⎥⎢⎥⎣⎦∑∑反映频谱的对称性,不随纹理单元中起始计数位置的不同而不同。
(2)、几何对称性()4()11*10042*()Sj i Sj iGSSj i⎡⎤-+⎢⎥⎢⎥=-⎢⎥⎢⎥⎣⎦∑∑∑反映图像旋转180度后,纹理谱的相似性;.(3)、方向度()()11*10062*()Sm i Sn i DD Sm i ⎡⎤-⎢⎥⎢⎥=-⎢⎥⎢⎥⎣⎦∑∑∑ 反映线性结构的角度。
大的DD 说明纹理谱对图像的方向模式较为敏感;即图像中有线性机构纹理单元存在。
以上三个特征都是图像的几何特征,可描述原始图像的宏观纹理;下面介绍几个描述图像微观纹理的特征。
(4)、方向特征 微观水平结构特征:()*()MHS S i HM i =∑()(,,)*(,,)HM i P a b c P f g h =同样,我们可以得到其它方向的方向纹理特征MVS ,MDS1,MDS2(5)中心对称性2()*[()]CS S i K i =∑2.常用统计特征:把图像看成是一个二维随机过程的一次实现,可得到图像的直方图、均值、方差、偏度、峰度、能量、墒、自相关、协方差、惯性矩、绝对值、反差分等特征量。
常用来描述纹理的统计特征的技术有子相关函数、功率谱、正交变换、灰度级同时事件、灰度级行程长、灰度级差分、滤波模板、相对极值密度、离散马尔可夫随机场模型、自回归模型、同时自回归模型等。
椴木原木的解剖结构和纹理分析

椴木原木的解剖结构和纹理分析椴木(拉丁学名:Tilia spp.),又名棋椴、白椴,是一种常见的落叶乔木,属于锦葵科椴木属。
椴木原产于亚洲和欧洲地区,如中国、日本、俄罗斯、法国等。
它以其坚硬的木材和美丽的纹理而受到广泛的青睐。
本文将对椴木原木的解剖结构和纹理进行详细分析。
椴木的解剖结构主要包括树材结构和纤维细胞结构两个方面。
首先,椴木的树材结构由树皮、韧皮部、木质部和髓部组成。
树皮是椴木最外层的组织,起到保护树干的作用。
韧皮部位于树皮和木质部之间,主要由维管束、韧皮纤维和树脂细胞组成。
木质部是椴木干部最重要的组织,由纤维、木射线和导管组成。
纤维是木质部的主要成分,它们由长而细的细胞组成,具有很高的抗拉强度和抗压强度,是椴木的主要强度来源。
木射线连接纤维和导管,起到输送水分和养分的作用。
导管是负责输送水分和溶解养分的细胞,具有管状结构。
髓部位于木质部的中央,主要由髓细胞组成。
其次,椴木的纤维细胞结构是指椴木细胞的形状、大小和排列方式等特征。
椴木的纤维细胞呈长圆柱形,长度一般为0.5-2mm,直径约为10-25μm。
纤维细胞排列有密集排列和杂乱排列两种形式。
密集排列的纤维细胞有较高的密度和紧密的连接,木材质地较硬,适合用于制作家具和地板等需要耐磨性的产品。
杂乱排列的纤维细胞则较为疏松,木材质地较软,适合用于制作纸浆、纸板和薄板等需要柔软性的产品。
此外,椴木的纹理是其最为显著的特点之一。
椴木的纹理呈现出一种细腻而均匀的特点,具有明显的线条感。
其纹理以直纹和细纹为主,直纹呈现出木材纵向的直线条纹,而细纹则形成一种独特的细密纹理,使椴木具有独特的美感。
椴木的纹理经过充分打磨后,会呈现出一种光滑细腻的触感,非常适合用于木制品的表面装饰。
总的来说,椴木原木的解剖结构和纹理是其木材优良性能的基础。
通过对椴木的解剖结构分析,我们可以了解到它的木质部构造和树皮结构,并从中得知其木材的强度和稳定性。
而纤维细胞结构和纹理则决定了椴木木材的质地和外观特点,使其成为一种常见的优质木材资源。
图像处理中的纹理分析与纹理特征提取算法研究

图像处理中的纹理分析与纹理特征提取算法研究摘要:图像纹理分析和纹理特征提取是计算机视觉和图像处理领域的重要研究方向之一。
纹理在图像中包含了丰富的视觉信息,能够用于图像分类、目标检测和识别等应用。
本文将介绍图像纹理分析的相关概念和算法,并讨论纹理特征提取的常用方法和应用。
1. 引言图像纹理是指由多个纹理单元组成的图像区域。
这些纹理单元在某种视觉空间上独立地重复出现,形成了具有一定规律的纹理模式。
图像中的纹理可以根据其表现形式分为统计纹理和结构纹理。
统计纹理是指通过统计纹理单元的分布和统计规律来描述纹理特征,而结构纹理则是指通过纹理单元的空间关系来描述纹理特征。
图像纹理的分析和特征提取是图像处理中的重要任务之一。
2. 图像纹理分析算法图像纹理分析是指对图像中的纹理进行描述和分析的过程。
常用的图像纹理分析算法有以下几种:2.1 灰度共生矩阵(GLCM)灰度共生矩阵是一种描述图像纹理统计特性的方法。
它将图像的灰度级别相邻像素的关系编码成一个矩阵。
通过对该矩阵进行统计分析,可以得到一系列纹理特征。
常用的纹理特征包括对比度、相关性、能量和熵等。
2.2 Gabor滤波器Gabor滤波器是一种用于提取图像纹理特征的滤波器。
它模拟了人类视觉系统中的简单细胞的特性,可以捕捉到图像中的纹理细节。
Gabor滤波器使用一组复指数函数来对图像进行滤波,得到一组滤波响应,然后通过对响应进行统计分析,提取纹理特征。
2.3 小波变换小波变换是一种用于图像分析的时-频分析方法,也可以用于纹理分析。
通过对图像进行小波变换,可以将图像分解为不同尺度和方向上的纹理分量。
然后可以对这些分量进行统计分析,提取纹理特征。
3. 纹理特征提取算法纹理特征提取是指从图像纹理中提取具有表征能力的特征。
常用的纹理特征提取算法有以下几种:3.1 统计特征统计特征是指通过对图像纹理的统计规律进行描述的特征。
常用的统计特征包括对比度、相关性、能量和熵等。
3.2 结构特征结构特征是指通过纹理单元的空间关系来描述纹理特征的特征。
如何利用计算机视觉技术进行纹理分析

如何利用计算机视觉技术进行纹理分析计算机视觉技术是指通过图像或视频等视觉数据,对其中的结构、特征进行分析和处理的一门技术。
其中,纹理分析是计算机视觉领域中的重要研究方向之一。
通过纹理分析,我们可以对图像或者视频中的纹理特征进行提取和分类,进而应用于许多领域,如图像处理、目标检测和识别、医学影像分析等。
一、纹理特征的提取纹理特征是指图像中由于物体表面颜色、形状、方向等局部变化所形成的连续性分布。
计算机视觉技术通过一系列算法和方法,可以从图像或者视频中提取出丰富的纹理特征。
1. Gabor滤波器Gabor滤波器是常用的纹理特征提取工具之一。
它通过使用一系列正弦函数和高斯函数相乘,对图像进行卷积运算,从而得到具有多个尺度和多个方向的纹理特征响应。
Gabor滤波器可以同时考虑图像中的空间和频率域信息,提取到的纹理特征更加细致和准确。
2. 尺度不变特征变换(Scale-Invariant Feature Transform,SIFT)SIFT算法是一种常用的纹理特征提取算法。
它通过检测图像中的局部特征点,并提取出这些特征点周围的描述子,用于表示图像中不同区域的纹理特征。
SIFT算法具有良好的尺度不变性和旋转不变性,能够较好地适应图像中不同纹理特征的变化。
二、纹理特征的分类纹理特征的分类是通过对提取到的特征进行进一步处理和分析,将图像或视频中的纹理区域划分为不同的类别。
直方图是一种常用的纹理分类方法。
它将图像或视频中出现的纹理特征按照不同的灰度级别进行统计,并绘制成直方图图像。
通过比较不同图像或视频间直方图的相似性,可以将它们分为同一类别或不同类别。
2. 统计特征统计特征是一种基于特征的概率分布,用于表示图像或视频中的纹理信息。
常用的统计特征包括均值、方差、相关性等。
通过对图像纹理区域的统计特征进行提取和比较,可以实现纹理的分类和识别。
三、纹理分析的应用利用计算机视觉技术进行纹理分析在许多领域都具有重要的应用价值。
现代图像分析(高新波)章 (6)

(6.2-14)
第六章 纹理图像分析
(6) 局部均匀性(逆差矩):
L1
L(d, )
i0
L1
j0
1 1 (i j)2
p(i, j, d, )
(6.2-15)
(7) 和平均:
2L2 L1 L1
S(d, ) p(i, j,d, ) k i j
k0 i0 j0
(6.2-16)
第六章 纹理图像分析
第六章 纹理图像分析
6.1 纹理特征 6.2 纹理图像的统计方法描述 6.3 纹理能量测量 6.4 用马尔可夫随机场模型分析纹理 6.5 用分形和分维理论描述纹理 6.6 纹理的结构分析方法和纹理梯度 6.7 小结
第六章 纹理图像分析
6.1 纹 理 特 征
虽然图像纹理尚无公认的定义,但字典中对纹理的定义 是“由紧密的交织在一起的单元组成的某种结构”,这种说 法还是较为恰当的。观察图6.1.1的几幅图像,不难发现这些 图像在局部区域内呈现了不规则性,而在整体上表现出某种 规律性。显然只有采用有效描述纹理特性的方法去分析纹理 区域与纹理图像,才能真正描述与理解它们。
第六章 纹理图像分析
然而,共生矩阵PB(0°)则是主对角线上的元素值很大, 表明水平方向上灰度变化的频度较低,说明纹理粗糙。再看 PA(135°)的共生矩阵,主对角线上的元素值很大,其余元素 为0,说明该图像沿135°方向无灰度变化。但是图像B沿 135°方向,偏离主对角线的元素值较大,说明纹理较粗。
k | i j | (6.2-20)
第六章 纹理图像分析
(12) 差熵:
L1 L1 L1
L1
HD (d, ) p(i, j,d, ) p(i, j,d, )
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验2_纹理_结构特征分析一、实验目的加深对SAR影像纹理、结构特征及相关概念的理解,能编程实现SAR影像纹理、结构特征的统计分析。
二、实验软件Matlab三、实验数据德国TerraSAR卫星获取的成都市部分SAR影像sar_cd01.tif及从中裁剪的两部分影像sar_cd01_1.tif、sar_cd01_2.tif。
四、实验内容及步骤1. 基于Matlab,编写统计分析影像纹理特征和结构特征的程序;1.1编写纹理特征程序1)纹理特征主程序CTFmain:依次实现的功能为:a打开并读取影像文件;b获取灰度影像;c扩展原始数据;d统计纹理特征频次;e对纹理特征频次排序并得到原始编码索引;f要求用户输入纹理特征分类个数目;g对纹理特征分类并得到类别编码对原始编码的索引;h生成纹理特征图。
function im=CTFmain% 选择影像文件[fn,pn]=uigetfile({'*.jpg;*.tif;*.png;*.gif',...'All Image Files(*.jpg,*.tif,*.png,*.gif)'; ...'*.fig','Figures(*.fig)';'*.*','All Files' },...'请选择影像文件');if fn~=0% 添加当前路径addpath(pn);% 读取影像文件dat=imread(fn);% 取出起始时间t1=clock;% 获取灰度影像data0=GetGMap(dat);fprintf('%s\n','灰度影像生成完毕!');% 扩展原始数据矩阵data0为datadata=EnlargeMat(data0,1,1);fprintf('%s\n','影像数据扩展完毕!');% 统计每种纹理特征向量出现的频数,得到纹理特征查询矩阵stvm和原始编码图codm [stvm,codm]=StatTVm(data);fprintf('%s\n','纹理特征统计完毕!');% 对各种纹理特征向量频数由大到小排序,得到排序后的纹理特征原始编码索引id0=SortGetId0(stvm);% 取出终了时间t2=clock;% 显示程序运行时间fprintf('%s%.1f%s\n','该阶段运行时间:',etime(t2,t1),'s');% 提示用户输入纹理特征分类数目n=input('请根据统计数据输入纹理特征类别的数目n [10]:');if isempty(n)n=10;end% 取出起始时间t1=clock;% 合并相似的纹理特征,得到频次和类别编码索引fid以及原始编码和类别编码索引iid [fid,iid]=IcprtTF(stvm,id0,n);fprintf('%s\n','特征类别编码完毕!');% 生成纹理特征图im=CreatIM(codm,fid,iid);fprintf('%s\n','纹理特征图生成完毕!');% 取出终了时间t2=clock;% 显示程序运行时间fprintf('%s%.1f%s\n','该阶段运行时间:',etime(t2,t1),'s');% 显示纹理特征图imshow(im,[min(min(im)),max(max(im))]);elseerror('您没有选择影像文件!');endend2)获取灰度图像子程序GetGMap:实现了根据输入数据结构采用相应算法得到灰度图像的功能,即:a如果是单层影像数据,直接认为是灰度图像,有data0 = dat;b如果是3层影像数据,采用gray = 0.299*r+0.587*g+0.114*b公式计算出灰度图像:c如果是多余3层的影像数据,采用所有数据层平均的方法得到灰度图像。
function data0=GetGMap(dat)ds=size(dat);data0=zeros(ds(1),ds(2));dss=size(ds);if dss(2)==3data0=0.299*dat(:,:,1)+0.587*dat(:,:,2)+0.114*dat(:,:,3);else if dss(2)>3for i=1:dss(2)data0=data0+dat(:,:,i);endelsedata0=dat;endendend3)扩展原始数据子程序EnlargeMat:实现将数据data0扩展为data的功能,具体的方法是:a将data0的4个角点值分别赋给在其所处对角线另一端的data的角点;b将data0的初始端制定数目的行赋给data最末端制定数目的行,而data0最末端制定数目的行赋给data初始端制定数目的行;c与b相同的方法给data的初始端制定数目的列和最末端制定数目的列赋值。
function data=EnlargeMat(data0,dr,dc)% 取出原始数据的行列数[row,col]=size(data0);% 扩展data0为datadata=zeros(row+2*dr,col+2*dc);data(dr+1:row+dr,dc+1:col+dc)=data0;data(1,1)=data0(row,col);data(row+2*dr,1)=data0(1,col);data(1,col+2*dc)=data0(row,1);data(row+2*dr,col+2*dc)=data0(1,1);data(1,dc+1:col+dc)=data0(row,:);data(row+2*dr,dc+1:col+dc)=data0(1,:);data(dr+1:row+dr,1)=data0(:,col);data(dr+1:row+dr,col+2*dc)=data0(:,1);end4)统计纹理特征子程序StatTVm:实现了对每种纹理特征出现频次的统计,将每种纹理特征向量按三进制转换为十进制再加1作为其对应的原始编码,然后删除纹理特征向量频次统计矩阵(stvm)中频次为0的纹理特征所对应的行数据,最后返回stvm和赋予了原始编码的原始编码图(codm)。
function [stvm,codm]=StatTVm(data)% 取出输入数据data的行列数[row,col]=size(data);% 定义纹理特征向量统计矩阵stvmstvm=CreatTVm;% 定义纹理特征编码图codm=zeros(row-2,col-2);% 初始化一个进度条h=waitbar(0,'正在统计纹理特征:请稍后...');% 计算tv0,并对比stvm中每一种纹理特征向量,统计其出现的次数for i=2:row-1for j=2:col-1w=data(i-1:i+1,j-1:j+1);tv=ComputTV(w);k=ComputIdx(tv);for k0=1:6561if k==k0stvm(k,9)=stvm(k,9)+1;codm(i-1,j-1)=k0;endendendwaitbar((i-1)/(row-1));endid=stvm(:,9)==0;stvm(id,:)=[];waitbar((row-1)/(row-1));% 关闭进度条close(h);end5)生成纹理特征向量频次统计矩阵子函数CreatTVm:实现生成一个纹理特征向量频次统计矩阵的功能,其最后两列存频数和原始编码。
function tvm=CreatTVm% 定义纹理特征向量矩阵,最后两列存频数和原始编码tvm=zeros(6561,10);% 生成纹理特征向量矩阵,其包含了6561种纹理特征向量i=1;for k1=0:2for k2=0:2for k3=0:2for k4=0:2for k5=0:2for k6=0:2for k7=0:2for k8=0:2tvm(i,1)=k1;tvm(i,2)=k2;tvm(i,3)=k3;tvm(i,4)=k4;tvm(i,5)=k5;tvm(i,6)=k6;tvm(i,7)=k7;tvm(i,8)=k8;tvm(i,10)=i;i=i+1;endendendendendendendendend6)计算纹理特征向量子函数ComputTV:实现根据3*3窗口w的数据计算对应的纹理特征向量的功能。
function tv=ComputTV(w)% 定义纹理特征向量tvtv=zeros(1,9);% 计算纹理特征向量tvfor r=1:3for c=1:3k=3*r+c-3;if w(r,c)==w(2,2)tv(1,k)=1;else if w(r,c)>w(2,2)tv(1,k)=2;elsetv(1,k)=0;endendendend% 删除w窗口中心所对应的列tv(:,5)=[];end7)计算原始编码子函数ComputIdx:实现根据纹理特征向量计算出其对应的原始编码的功能。
function idx=ComputIdx(tv)% 计算纹理特征向量tv的索引值idx=tv(8)+3*tv(7)+3^2*tv(6)+3^3*tv(5)+3^4*tv(4)+3^5*tv(3)+3^6*tv(2)+3^7*tv(1)+1;end8)建立纹理特征频次排序索引子程序SortGetId0:实现了对精简后的纹理特征频次由大到小排序,得到排序后的纹理特征原始编码索引的功能。
function id0=SortGetId0(stvm)% 取出stvm大小s=size(stvm);% 对频数排序[fqn,id0]=sort(stvm(:,9),'descend');% 给id0替换原始编码值for i=1:s(1)jd=id0(:)==i;id0(jd)=stvm(i,10);endend9)纹理特征合并分类编码子程序IcprtTF:实现了合并相似的纹理特征,得到频次和类别编码索引fid以及原始编码和类别编码索引iid的功能。
function [fid,iid]=IcprtTF(stvm,id0,n)% 取出stvm的大小s=size(stvm);% 初始化频数和类别的索引fidfid=zeros(n,2);% 初始化编码和类别的索引iidiid=zeros(s(1),2);% 初始化频数较大的前n种纹理特征查询表stv0stv0=zeros(n,9);% 给stv0赋值,前8位是纹理特征向量,最后1位是纹理特征对应的编码for k=1:nfor i=1:s(1)if id0(k)==stvm(i,10)stv0(k,1:8)=stvm(i,1:8);stv0(k,9)=id0(k);endendend% 将剩余向量和查询表里的向量按夹角归类,建立编码和类别的索引iid for i=1:s(1)ag=pi*ones(n,1);for k=1:nif stvm(i,10)~=stv0(:,9)ag(k)=ComputAg(stv0(k,1:8),stvm(i,1:8));elsebreak;endend[agm,k0]=min(ag);if agm==piiid(i,1)=stvm(i,10);iid(i,2)=stvm(i,10);elseiid(i,1)=stvm(i,10);iid(i,2)=stv0(k0,9);endend% 给fid赋值for k=1:nfor i=1:s(1)if iid(i)==id0(k)fid(k,1)=fid(k,1)+stvm(i,9);endendendfid(:,2)=id0(1:n);end10)生成纹理特征图子程序CreatIM:实现生成纹理特征图的功能:首先建立灰度查找表glt(Gray Look Table),然后根据原始编码图codm和频次-类别编码索引fid和原始编码-类别编码iid的信息,在glt中查找对应灰度,给纹理特征强度图im(intensity map)赋值。