给出一张图片,本文实现一个由明变暗的动画效果。
工具/原料
1
电脑
2
python
方法/步骤
1
用imageio读取png截图,一般都有四个通道,其中第四个通道代表透明度,我们把这个通道去掉。代码是:img=np.uint8(io.imread('0.png')[:,:,:3])np.uint8的作用是,把浮点数数据转化为整数。
2
图片变暗,就是亮度降低,可以使用除法:pic=np.uint8(img/j)如果j=5,图片效果如下:
3
如果j从9减少到1,就得到一串图片,连起来看,就是下面的动态图。
4
导出动态图,需要把图片按顺序装到一个列表里面:pics=[]u=10for i in range(1,u,1): j=u-i pic=np.uint8(img/j) pics.append(pic)
5
导出动态图的命令是io.mimsave:io.mimsave('0.gif',pics,duration=1)
6
明暗循环的动画效果:
7
代码如下图: