1. 引言
自然景物模拟是计算机图形学中一个重要研究课题,其中植物形态仿真模拟引起了广泛的关注。许多学者对其进行了大量的研究,目前常见的方法有L-系统 [1] [2] 、迭代函数系统 [3] [4] [5] 、粒子系统 [6] [7] 、扩散受限凝聚(DLA)模型 [8] 等。迭代函数系统(Iteration Function System,简称IFS)是绘制植物分形图的主要方法,利用该方法既可以模拟自然界存在的物种也可以创造新物种。1999年郝小琴 [9] 提出了基于树木的分枝模式与叶序模式的三维IFS建模法并生成了槐树和雪松。2004仲兰芬、王琰等 [10] 给出了生成单轴分枝和合轴分枝两类树木的递归算法。2008年潘陆益 [11] 提出了基于IFS的分形图的拟仿射变换模型。2012年韩江萍、周敏等 [12] 利用拟仿射变换实现树木成行、树木成林。2016年仲兰芬、王文忠等 [13] 提出了一种通过包含边缘轮廓和主叶脉的树叶草图生成三维树叶的方法。在利用迭代函数系统生成植物的过程中,大多数文献是直接给出IFS码,鲜有文献分析IFS码中各参数对分形图生成的影响。本文通过IFS码对给定图像的第一次应用来揭示内部的仿射变换收缩特性,分析了各仿射变换参数对分形图的影响效果,根据需求可以人为地设定仿射变换的个数以及参数继而得到相应的IFS码,生成单轴、合轴以及树冠的个数不同的分形树。通过IFS码生成的分形图的拟仿射变换即对分形图的平移、旋转、缩放、错切等变换生成具有相似性的多片叶瓣的树叶如三角枫叶、五角枫叶等。
2. 预备知识
仿射变换是指在不同的方向上变化的比率可以不同的一种比例变换。使一个图形产生它的复制品,于是可以将原图分解为几个部分,每个部分可看作是在不同仿射变换下的复制品,而这种分解与尺度无关,即原图经仿射变换后仍可对其局部图形进行类似的分解,这种整体与局部相似的性质正是分形的特征。
定义1 [8] :变换
W
:
R
2
→
R
2 具有形式为
W
[
x
y
]
=
[
a
b
c
d
]
[
x
y
]
+
[
e
f
]
,
其中
a
,
b
,
c
,
d
,
e
,
f 为实数,则称
W 为一个(二维)仿射变换。
当
x
∈
R
2 时,上式常改写为
W
(
x
)
=
A
x
+
t
,
其中
A
=
[
a
b
c
d
]
,
t
=
[
e
f
] 。
定义2 [8] :度量空间
(
X
,
ρ
) 上的变换
f
:
X
→
X 称为压缩映射或压缩,如果存在一常量
0
≤
s
<
1 ,使得
ρ
(
f
(
x
)
,
f
(
y
)
)
≤
s
ρ
(
x
,
y
)
,
∀
x
,
y
∈
X
,
数
s 称为
f 的压缩因子。
定义3 [8] :(迭代函数系统IFS)一个迭代函数系统由一个完备度量空间
(
X
,
ρ
) 和一个有限的压缩映射集
W
n
:
X
→
X 及相应的压缩因子
s
n
,
n
=
1
,
2
,
⋯
,
N 所组成,每个
W
n 有一个伴随概率
p
n
,
0
<
p
n
<
1 且
∑
p
n
=
1 。迭代函数系统IFS记为:
{
X
;
W
n
,
n
=
1
,
2
,
⋯
,
N
} ,随机迭代函数系统IFSP记为:
{
X
;
W
n
,
p
n
,
n
=
1
,
2
,
⋯
,
N
} ,且其压缩因子都是
s
=
max
{
s
n
:
n
=
1
,
2
,
⋯
,
N
} 。IFS若满足条件
s
1
p
1
⋅
s
2
p
2
⋅
s
3
p
3
⋯
s
N
p
N
<
1 ,则称之为一个IFS码。
定理1 [8] :设
{
X
;
W
n
,
n
=
1
,
2
,
⋯
,
N
} 是拥有压缩因子
s 的IFS码,则定义变换
W
:
H
(
X
)
→
H
(
X
) 为
W
(
B
)
=
∪
n
=
1
N
W
n
(
B
)
,
∀
B
∈
H
(
X
)
,
且
W 是完备空间
(
H
(
X
)
,
h
(
ρ
)
) 上具有压缩因子
s 的压缩映射,即
h
(
W
(
A
)
,
W
(
B
)
)
≤
s
h
(
A
,
B
)
,
∀
A
,
B
∈
H
(
X
)
,
它的唯一不动点集
P
∈
H
(
X
) 满足
P
=
W
(