Loading...
墨滴

张春成

2021/08/14  阅读:24  主题:默认主题

艺术细菌

艺术细菌

用了三种方法对图片进行艺术化渲染,分别是低分辨率化、马赛克化和动态化。 工科狗的艺术细菌就长到这了。。


艺术效果

三种艺术加工效果如下

PicEffects
PicEffects

当然,你也可以对它们进行动态调整

  • 调整分辨率大小;
  • 调整马赛克大小和随机效果;
  • 调整运动速度与细碎程度。

【这是一段棒到不行的视频】

【这是另一段棒到不行的视频】

如果感兴趣,可以移步我的我的可视化工程[1]。 它支持你输入图像地址,来对你感兴趣的图像进行艺术化加工。 (如果这算艺术的话。。。)

实现方法

低分辨率化

这个最简单,降采样就可以了。

马赛克化

马赛克化的难点是如何制作小瓦片。 本项目使用的方法是利用

超立方体的不重叠边,可以用来模拟马赛克瓦片

如下图所示

  • 四维立方体示意图

    SuperCube1
    SuperCube1
  • 一个透视面(瓦片)的示意图

    SuperCube2.png
    SuperCube2.png

本方法借鉴了可视化项目1[2]的生成超立方体瓦片的代码。

动态化

动态化是基于Voronoi算法对图像进行动态分割。 如下图所示

Voronoi
Voronoi

分割出的小块,按照原图在小块中心(黑色点)位置的颜色进行填充,即可得到这样小块化的图像。

由于该算法还特别快(第三方包用起来既简单又快速,就问你气不气)。 我们可以对这些中心点的位置进行动态更新,同时动态渲染即可实现图像的动态化呈现。

参考资料

[1]

我的可视化工程: https://observablehq.com/@listenzcc/picture-effects

[2]

可视化项目1: https://observablehq.com/@dkirkby/hypercubes

张春成

2021/08/14  阅读:24  主题:默认主题

作者介绍

张春成