神奇的分形艺术: Mandelbrot集和Julia集

这段时间看了一个关于维度的视频介绍,叹于其惊艳的多维几何体和分形的视觉动画效果。其实关于分形,已经有很成熟的分形软件和应用场景,可以参看目前流行的分形软件一览,不过没有及时更新,有些链接已经进不了,还有一个 分形艺术网
关于分形视频的制作,有不同的制作办法,例如,这位仁兄的作品:他的思路是通过Shader渲染,然后通过ffmpeg命令把图片生成mp4视频;也可以通过专业的分形软件来做也可以在分形软件基础上定制开发;本文采用纯Python实现,借助MoviePy这个包来生成视频或者gif动画,本文只是提供有兴趣的朋友,了解这个领域,并可以动手实践体验。
本文讨论范围局限在 Mandelbrot集合和Julia集合。

Mandelbrot集合

如果英语还行,建议去维基百科读英文 Mandelbrot集合

Mandelbrot集合是一个复数c的集合,c由 z_{n+1}=z_{n}^2 + c公式在z_0=0开始迭代而得到。得到的值可以组成一个数列,依次为 c,c^2+c,(c^2+c)^2+c……。当该数列发散到无穷时,对应的点就属于Mandelbrot集合。Mandelbrot集合是分形中最经典例子。

c=0 时,显然数列永远是0,并不发散,因此 c=0 不属于Mandelbrot集合。

又如c=3i 时,对应的数列为3i, -9+3i, 63-51i, 1431-6477j …. ,数字越来越庞大,因此3i就属于Mandelbrot集合。

在二维平面上,将所有不属于Mandelbrot集合的点标记为黑色,将所有属于Mandelbrot集合的点按照其发散速度赋予不同的颜色,就可以得到Mandelbrot的经典图像:


在这里插入图片描述

请注意: Mandelbrot集合是在z_0=0时,不断的迭代c得到。

在生成的Mandelbrot集合中,我们可以将图像放大,选取某些区域进行生成,就可以得到格式各样造型迥异的分形图案。在Mandelbrot集合中,有很多地方图案比较奇特,如下图中的3个位置。


在这里插入图片描述

其中编号为2的地方被称为“Elephant Valley”,因为此处的图案与大象很像,直接运行可以得到该区域的图像:

 # Elephant Valley
 fractal.gen_mandelbrot(fractal.set_data(x_tuple=(.275, .28),
                                     y_tuple=(.006, .01)),
                        rgb=(.9, .6, .6)).save("mandelbrot_area.png")
大象山谷

编号为3的地方被称为“Triple Spiral Valley”(三重螺旋),在mandelbrot_area.py修改一下坐标位置为(ratio调整的是颜色):

# 三重螺旋
fractal.gen_mandelbrot(fractal.set_data(x_tuple=(-.09, -.086),
                                        y_tuple=(.654, .657)),
                       rgb=(.2, .6, .6)).save("mandelbrot_3.png")
   

就可以得到该处的图案:


三重螺旋

最后编号为1的地方被称为“Seahorse Valley”(海马山谷),对应的坐标为:

 # Seahorse Valley(海马山谷)
  fractal.gen_mandelbrot(fractal.set_data(x_tuple=(-.75, -.747),
                                          y_tuple=(.099, .102)),
                          rgb=(.1, .1, .3)).save("mandelbrot_sea.png")

图像如下,确实和海马有一点神似:


海马山谷
Julia集合

如果英语还行,建议去维基百科读英文 Julia集合

Julia集合和Mandelbrot集合差不多,但这次我们固定c,转而计算发散的z的值。即c是固定的常数(可以任取),数列变成z,z^2+c,(z^2+c)^2 +c,…..。如果该数列发散,对应的z集合就属于Julia集合。我们看看不同的c值下Julia图案的差别:

c = -0.835-0.2321i 时:

在这里插入图片描述

c = 0.285 - 0.01i 时::

在这里插入图片描述

c = -0.8 + 0.156i,图案又变得完全不同:

在这里插入图片描述

c = -0.835 - 0.2321i,图案又变得完全不同:

在这里插入图片描述

c = 0.70176 - 0.3842i,图案成为树状:

分形树

生成Julia集合的动画

在Julia集合中,每次都对c的值进行微小的改变,并将依次生成图片制作为gif,就可以生成如下所示的动画: 从这里下载观看,
文件超过尺寸了。程序中提供了一个width参数,可以修改它以生成更大尺寸,质量更高的动画图像。

代码实现

代码采用TensorFlow实现, 比较简单,可以从这里下载代码。希望你能点赞,反馈,谢谢!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,126评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,254评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,445评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,185评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,178评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,970评论 1 284
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,276评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,927评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,400评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,883评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,997评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,646评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,213评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,204评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,423评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,423评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,722评论 2 345

推荐阅读更多精彩内容

  • 令人目眩的万花筒,螺旋纹路的西兰花,它们之间存在什么相似之处? 我们说“一花一世界,一树一菩提”,说的是以小见大,...
    牛油果进化论阅读 3,473评论 0 16
  • 20170301 协方差矩阵的理解 协方差矩阵的几何解释(Very Good) [LDA 线性判别分析](1)(2...
    NoneLand阅读 386评论 0 1
  • 早上好,对自己打个招呼 真勇敢,太棒了,对自己竖起大拇指 能量满满的遇见最好的自己 在颓废的时候,在梨花带雨痛哭流...
    轮滑公主阅读 152评论 0 0
  • 上个月反反复复的看这几本书,看到激动处会立即起来扔掉一样纠结很久依然不舍得扔的物品,心中涌起想扔东西的欲望。因为爱...
    荣荣手工阅读 864评论 5 10
  • 常会杰就是这样一个嫁给了爱情的人,她和丈夫付伟超是在大学时期自由恋爱的。大学毕业后,付伟超分配到了当地的小学当老师...
    bright_e596阅读 335评论 0 0