图像与分形维数
一、分形和维数
0维:点
一维空间:线段,有长度,没有宽度;
二维空间:平行四边形,有周长、面积;
三维空间:球,表面积、体积;
曲线是一维,那么我们可以构造图一左上的等边三角形,然后将其每一遍都做三等分,再次构造三角形,如右上和左下所示,直至最后形如右下角的图。称为Koch曲线
图一Koch曲线 图二 Koch曲线
我们可以看到,最终的图是由规则的线段构造得到,所以它的维数应该是1,但是它又能够“几乎”充满整个空间,所以维数应该接近2。同样的例子如图二所示。直观上讲,他们的维数应该在1-2之间。实际上维度为1.2618……。
上面两图所说的就是传说中的分形(fractal)。我们来看看它的定义。
最为流行的一个定义是:分形是一种具有自相似特性的现象、图象或者物理过程。(曼德布罗特在1986年提出的定义是:分形是其组成部分以某种方式与整体相似的形。原文是:A fractal is a shape made of parts similarto the whole in some way.)也就是说,在分形中,每一组成部分都在特征上和整体相似,只仅仅是变小了一些而已。
关于分形的维数,豪斯多夫维数给出了易于理解的解释
一方面,我们首先画一个线段、正方形和立方体,它们的边长都是1。将它们的边长二等分,此时,原图的线度缩小为原来的1/2,而将原图等分为若干个相似的图形。其线段、正方形、立方体分别被等分为2^1、2^2和2^3个相似的子图形,其中的指数1、2、3,正好等于与图形相应的经验维数。
一般说来,如果某图形是由把原图缩小为1/a的相似的b个图形所组成,有:
a^D=b
D=logb/loga
的关系成立,则指数D称为相似性维数,D可以是整数,也可以是分数。
计算分形维数的公式是 ,式中ε是小立方体一边的长度, N(ε)是用此小立方体覆盖被测形体所得的数目,维数公式意味着通过用边长为ε的小立方体覆盖被测形体来确定形体的维数。对于通常的规则物体 ,覆盖一根单位长度的线段所需 的数目要 N(ε)=1/ε^1,覆盖一个单位边长的正方形,N(ε)=(1/ε)^2,覆盖单位边 长的立方体,N(ε)=(1/ε)^3。从这三个式子可见维数公式也适用于通常的维数含义。
比如Koch曲线,每次分为1/3,每次变换使长度增加了1/3,即总长度为原来的4/3。则维数为log4/log3=1.2618。
下面我们来看一个三维的情况
门杰(Menger)海绵(也称谢尔宾斯基海绵)
图三 谢尔宾斯基海绵
构造:取一立方体,第一步把立方体27等分后,舍去体心的一个小立方体和六个面面心的小立方体,保留20个小立方体。第二步再对20个小立方体作同样处理,此时保留下来的小立方体的数目为20*20=400个。如此操作,直至无穷。于是在极限情况下其体积趋于零,而表面积趋于无穷大,所以实际上得到一个面集。
从表面上看,海绵立方块是:一个立方体,是三维的,但它是以某一构造为基础而规则形成的许多孔洞的高度无序结构。在一定压力下它能压实在一个平面上,这时就是2维的。这说明表观看上去充实的立方体实际上是部分充实的3维结构,其真实维数大于2.0而小于3.0。所以可以说经典几何的整数维数只能反映物体的表观现象,而分形维数能刻画物体的内在特性。用基于测度论的豪斯多夫维数表示为(ln 20) / (ln 3)(大约2.726833)。
再来看一个类似2维的例子
图四 谢尔宾斯基地毯
1915~1916年,波兰数学家谢尔宾斯基(W.Sierpinski)将三分康托尔集的构造思想推广到二维平面,构造出谢尔宾斯基“垫片”:
设E0是边长为1的等边三角形区域,将它均分成四个小等边三角形,去掉中间一个得E1,对E1的每个小等边三角形进行相同的操作得E2,……,这样的操作不断继续下去直到无穷,最终所得的极限图形F称为谢尔宾斯基“垫片”
图五 谢尔宾斯基垫片
谢氏垫片(地毯)的极限图形的面积趋于零,而小图形的数目趋于无穷,作为小图形的边的线段数目趋于无穷,实际上是一个线集。图形具有严格的自相似性和无标度性。其维数为log8/log3=1.89。
二、图像的分形维数
将图像作为三维空间的一个曲面,然后进行分形维数计算,从前面的例子不难看出,其维数应该在2-3之间。一般计算得到的维数为2.2-2.6之间
最后来看mandelbrot大师的杰作吧
图六 mandelbrot分形
写给中学生的科普文章在这里http://www.xgdfz.com/Fractal/index.htm,本贴也从中copy了好几段