版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/m0_37606112/article/details/79325005
最近在进行换脸操作时,经常需要进行变换过程的动画演示,把GIF文件制作过程和效果写出来,供大家参考。
软件:
win10
VistualStudio2017
python3.6
opencv3.4
dlib19.9
过程
- 构建一个空的图像集
- 把经过opencv处理后的过程图片不断添加进去(需要转换成RGB格式)
用imageio的mimsave(函数)完成GIF动画制作
本例中直接读入两张本地图片(大小需相同)进行变换。
代码:
# -*- coding: utf-8 -*-
import cv2
import imageio
path='e:/python/dlib/'
img1=cv2.imread(path+'%s'%('g1.jpg'))
img2=cv2.imread(path+'%s'%('g2.jpg'))
buff=[]
k=31
for i in range(k):
alpha=i*1/k
img=cv2.addWeighted(img1,alpha,img2,(1-alpha),0)
cv2.imshow('img',img)
img=cv2.cvtColor(img,cv2.COLOR_BGR2RGB)
buff.append(img)
cv2.waitKey(100)
gif=imageio.mimsave('gaox.gif', buff, 'GIF', duration = 0.1)
if cv2.waitKey(0)==ord('q'):cv2.destroyAllWindows()
效果