zoukankan      html  css  js  c++  java
  • IFS分形艺术

          (一)前言

      

           许久之前,斌牛就完成了对分形艺术中 L-System 的研究学习,其中的每个图形都是无比的冲击与震撼,几何之美,淋漓尽致。在此也感谢胡老师提供的分形艺术研究的点子。

           附:斌牛L-System之学习总结博客:http://wybwzl.iteye.com/blog/1275520

                 胡老师推荐BBC混沌理论视频: http://v.youku.com/v_show/id_XMTcyNjE2MzMy.html

                 分形艺术网址推荐:http://paulbourke.net/fractals/

            (二)正文

               

              下面先给出一幅图感受IFS (Iterated Function System) 分形美感。

          

    图1.Sprial

           不知道读者看到这么一幅图的第一感受是什么样的,至少我第一次看到的时候就被惊住了。当然,在这里我要说的是:这幅图的灵魂是一个极其简单的二元一次数学方程组。必须要重复的是“极其简单”。分形艺术本身就不是复杂的,它是以非常简单非常普遍的规则或公式为基石,展示了一种自相似的美,甚至揭露宇宙规律。

           对于L-System,定义一个规则就能生成一幅美图。这对于本文要介绍的IFS也是一样,这个规则就是一个n维甚至是一维的方程组。规则不仅产生了美图,以至于我们人类都是活在规则之下。

           对于IFS-System来说,其核心二元一次方程组都是这样的:

       

           可以看出,两条递推公式会随着a,b,c,d,e,f六个参数的变化得到不一样的结果,我们要做的就是把这6个参数和一个概率定下来,仅此而已。(概率稍后会提到)

           好了,具体还是拿图1.Spiral来说,在上述方程组基础上我们运用下面的参数表就能画出:       

          可以看出,我们需要三组不同的 a~f 的值来构造Spiral图形,不同的set,会把某个固定点(x, y)映射到不同的位置。而细心的你会发现,对于每一组参数值都对应一个概率(probability),不能小看这个概率,它直接影响整幅图的美感。如果三个set的概率改成0.333, 0.333, 0.334的话,会得到一个相对颜色均匀的图形,那将会是另外一番景象。可以通俗一点儿来说:参数 a~f 决定图形轮廓,概率p决定图形某些位置颜色的深浅。

           IFS图形是一种概率算法的体现,这种用概率来绘画与L-System是完全不同的。

           那么,这个参数表怎么来构造呢?概括的说有这么些常用的方法:交互式确定法、三点式确定法、图形变换法,参数试验法,具体见上传论文《利用图形变换法快速提取分形图IFS码》,此处不再赘述。

           至此已经把我所熟知的 IFS 分形介绍完毕,一句话总结就是:

           IFS = 二元一次方程组 + 参数表 + 概率

           下面以几幅IFS分形图结束本文:

             

                               

           iteye同文链接:http://huangfeinetjava.iteye.com/admin/blogs/1847204

  • 相关阅读:
    简单说说Restful API
    事务的ACID特性
    WPF DataGrid与ListView性能对比与场景选择
    WPF MVVM实现INotifyPropertyChanged数据监听
    学习Promise异步编程
    CSS单位
    Mac Docker设置国内镜像加速器
    Mac下安装Redis,附可视化工具Medis
    预告 | XPocket开源产品发布会将于1月15日正式线上直播!
    CSDN资源免费下载
  • 原文地址:https://www.cnblogs.com/huangfeihome/p/3021365.html
Copyright © 2011-2022 走看看