大学本科毕业设计(论文)
的周期性。图4-8中包含了4个周期,其变差函数值周期值的大小就是两个相邻的极小值点之间的距离或两个相邻的极大值点之间的距离,且这些极值点的函数值随滞后距离的增加而单调上升或单调下降[15]。说明在水平方向选取窗口能够充分表现出图像的纹理周期性。图4-6说明从水平方向选取窗口不能够体现出该纹理图像的纹理周期性。
5045403530252015100102030405060708090100
图4-9 D102原图 图4-10 n取200列的变差函数图
(2)比较图4-8和图4-10,两者都显示出了明显的周期性。但是n取得相同的列数值200,图4-8包含了4个极小值,也就是4个周期;图4-10包含了2个极小值,也就是包含了2个多周期,所以图4-7和图4-9的周期值大小不同。此处也表现了周期成分的复杂性[16],它定义为在每个周期内实验变差函数的极值点数量,图4-8的每个周期内的极值点数量比图4-10的极值点数量多,因此我们可以说图4-7较图4-9的纹理成分更加复杂。
4.2 变差函数在垂直方向的程序实验结果及分析
858075706560555045400102030405060708090100
图4-11 D11原图 图4-12 n取200行的变差函数图
25
大学本科毕业设计(论文)
90858075706560555045400102030405060708090100
图4-13 D49原图 图4-14 n取200行的变差函数图
65
605550454035302520150102030405060708090100
图4-15 D102原图 图4-16 n取200列的变差函数图
取像素矩阵垂直方向上的矩阵程序与水平方向上的程序相似,这里不作过多解释。仅对Brodatz纹理库中部分纹理图像进行程序实验和分析。
(1)图4-8是对图4-7的水平方向选取窗口进行变差函数分析,如果对图4-11的垂直方向选取窗口进行变差函数分析,所得到的结果图应该大致相同。比较图-8和图4-12可以明显发现两个图相同,因此可以得到结论,4.1节与4.2节所用的程序正确,并且D11图像有图4-12的所表现出来的纹理周期性。
(2)比较图4-12、图4-14、图4-16可以明显看出这3个图都有明显的周期性,但是其周期值值大小不同,周期成分的复杂程度也不同。
4.3 变差函数在任意方向的矩阵程序实验结果及分析
4.3.1 验证程序的正确性
为验证程序的正确性,我们仍然选用图4-1的黑白格子图进行验证。我们取
26
大学本科毕业设计(论文)
角度为45?,从图像左上角即I1(1,1)点出发选10行200列进行变差函数值计算,实验图像如图4-17所示。图4-17结果证明推论正确,即说明本节所用程序正确。
140001200010000800060004000200000102030405060708090100
图4-17 黑白格子顺时针45°划线取200列程序结果图
下面对Brodatz纹理库中部分纹理图像进行程序实验和分析。本节中所使用的程序中选的A阵窗口都是从I1矩阵的第一行第一列取起,取10行200列,取不同的角度变差函数值不同,变差函数图如下。图4-18是Brodatz纹理库中D11纹理图。图4-19是顺时针取30°时变差函数图。
35003000250020001500100050000102030405060708090100
图4-18 竹签格子原图 图4-19 顺时针取30°时变差函数图
27
大学本科毕业设计(论文)
此处再一次验证A阵选取的正确性。在MATLAB命令窗口运行出I1(1:10,1:10)的结果,与A(1:5,1:10)的结果进行比较,可以得出A阵选取的正确性。
输入命令I1(1:10,1:10) 输出结果为 ans =
71 61 60 56 52 54 54 55 54 55 69 68 61 55 61 60 56 56 48 48 69 60 55 61 61 56 53 48 52 61 62 60 55 55 55 55 55 52 52 52 46 52 68 62 62 61 56 60 60 60 60 55 55 62 61 62 60 56 54 55 48 55 52 52 54 52 61 56 61 56 54 53 55 54 52 52 52 69 68 68 61 61 62 68 61 60 60 62 71 75 70 75 75 76 75 62 62 75 98 140 166 187 186 179 172 140 140 输入命令为A(1:5,1:10) 输出结果为 ans =
71 68 61 55 61 52 60 60 54 48 69 61 60 55 55 60 55 52 52 52 69 60 55 61 56 54 55 54 60 60 62 62 62 60 56 53 68 61 62 62 68 61 62 56 54 62 76 75 140 140 上面矩阵A(1:5,1:10)输出结果的第一行(浅色的元素)与第二行(深色的元素),分别用圈和五边形在矩阵I1(1:10,1:10)中画了出来,后面的行同前两行相似。从I1(1,1)即元素71射出的30°的直线,可能会不落在元素上,于是在给出列n_rank时,用公式 n_line=ceil(n_rank*tand(AA))求出行数向无穷大取整,当某些列元素没被画到时就向无穷大取整(矩阵中取到下一行),如上面取I1(2,2)、
28
大学本科毕业设计(论文)
I1(3,4)、I1(5,7)、I1(6,9)都是取到了下一行。
以上验证了A阵的取法是正确的,也就是说程序是正确的。 4.3.2 纹理图像的程序实验结果及分析
本实验中为了论证图像的纹理周期性特征[17],采用了全方位的任意方向划线扫描选取矩阵窗口进行实验。图4-20是顺时针取45°时变差函数图,图4-21是顺时针取60°时变差函数图,这两个图是从像素矩阵的左上角划线到右下角的方向(从X轴起顺时针方向分别旋转45°和60°角度)选取窗口;而图4-22和图4-23分别是逆时针旋转45°和60°的变差函数图,是从像素矩阵的左下角划线到右上角的方向(从X轴起逆时针方向分别旋转45°和60°角度)选取窗口。
400040003500350030002500300020002500150020001000500010203040506070809010015000102030405060708090100
图4-20 顺时针取45°时变差函数图 图4-21 顺时针取60°时变差函数图
40004000
35003500300030002500250020002000150010001500500010203040506070809010010000102030405060708090100
图4-22 逆时针取45°时变差函数图 图4-23 逆时针取60°时变差函数图
比较图4-20和图4-22,图4-21和图4-23,它们都存在纹理周期,并且周期
29