• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

百度飞桨情人节特辑想做就做,让爱豆对你说情话,过凡尔赛式情人节~

武飞扬头像
非鱼子焉
帮助1

百度飞桨系列文章

关注专栏百度飞桨

学新通

一. 前言

  • 情人节,又称圣瓦伦丁节或圣华伦泰节,日期在每年公历的2月14日,是西方国家的传统节日之一,起源于基督教。如今已经成为全世界著名的浪漫节日,但是不同国家的人们表达爱意的方式却各不相同。
  • 情人节是一个关于爱、浪漫以及花、巧克力、贺卡的节日,男女在这一天互送礼物用以表达爱意或友好。情人节的晚餐约会通常代表了情侣关系的发展关键。
  • 情人节现已成为欧美各国青年人喜爱的节日,其他国家也已开始流行。中国将传统节日七夕节视作情人节。由于能表达共同的人类情怀,各国各地纷纷发掘了自身的“情人节”。

情人节这天,爱豆居然对我「说情话」!? ̊ଳ ̊

情人节将至,当其他人还在苦思冥想如何准备情人节礼物时,我却已经收到了我最喜欢的爱豆说给我的情话视频~无论是女神还是男神,只要是你喜欢的,你全都能拥有!

不仅仅是让爱豆圆了你的梦想,现实生活中的你也将享受爱情💏的甜蜜!!

羞涩的你是否还在:抓耳扰腮给另一半准备惊喜⭐?绞尽脑汁如何给暗恋的人直击TA❤️的告白?

那来看看如何利用我们的技能让女神男神刮目相看吧,说不定最后就眉目传情,就有对象了。有对象的拿去跟对象表达爱也是可以的。

学新通

二. 项目简介

本项目使用的是paddlepaddle 2.x 框架,基于PaddleGAN实现的视频唇形同步模型Wav2lip, 它实现了爱豆口型与告白台词语音同步。 比如这样:

学新通
  • Wav2lip模型还可以将你本人的图片或者视频,进行唇形转换,其中音频用于驱动唇形合成,而图片/视频中的人物则根据此音频进行唇形合成。输出与目标语音相匹配的视频,Wav2lip 实现唇形与语音精准同步的关键在于,它采用了唇形判别器来强制生成器产生准确而逼真的唇部运动。从此动人情话不再害羞说出口,你也可以成为魅力四射的情感大师。

  • 同时,Wav2Lip模型在判别器中使用了多连续帧,通过视觉质量损失来提升视觉的质量,这样解决了时间相关性的问题。

  • 此外,本项目支持大家上传自己准备的爱豆/自己的人脸素材视频和告白台词音频, 合成任意想要的情话/情歌告白视频!!!只需在如下命令中的face参数audio参数分别换成自己的人脸素材视频和告白台词音频路径,然后运行如下命令,就可以生成和台词音频同步的爱豆告白视频。程序运行完成后,会在当前文件夹下生成文件名为outfile参数指定的爱豆告白视频文件,该文件即为和台词音频同步的爱豆告白视频文件。

本项目中提供了demo展示所用到的爱豆人脸视频和告白台词音频文件。具体的参数使用说明如下:

  • face: 原始爱豆人脸视频,视频中的爱豆的唇形将根据台词音频进行唇形合成。

  • audio:驱动唇形合成的告白台词音频

  • outfile: 指定生成的视频文件的保存路径及文件名.
    学新通

学新通

三. 代码实现

代码基于飞桨的 BML CodeLab 编写

# 下载PaddlePaddle安装包
 /home/aistudio/work
# 从github上克隆PaddleGAN代码(如下载速度过慢,可用gitee源)
!git clone https://gitee.com/PaddlePaddle/PaddleGAN
# 安装所需安装包
!mkdir sndfile
 sndfile
!wget http://www.mega-nerd.com/libsndfile/files/libsndfile-1.0.28.tar.gz
!tar xzvf libsndfile-1.0.28.tar.gz

 libsndfile-1.0.28
!./configure --prefix=/home/aistudio/build_libs CFLAGS=-fPIC --enable-shared 
!make
!make install

 /home/aistudio/work/PaddleGAN
!pip install -r requirements.txt
 applications/
!export PYTHONPATH=$PYTHONPATH:/home/aistudio/work/PaddleGAN && python tools/wav2lip.py --face /home/aistudio/work/jieyi13s.mp4 --audio /home/aistudio/work/gaobai12s.m4a --outfile pp_gaobai_jieyi.mp4
学新通

四. 项目成果

要是想保存视频的话,可以直接在上述路径 work/PaddleGAN/applications/pp_gaobai_jieyi.mp4 下找到文件并下载到本地。

# display the output video
import cv2
import imageio
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
from IPython.display import HTML
import warnings

# video display function
def display(driving, fps, size=(8, 6)):
    fig = plt.figure(figsize=size)
    ims = []
    for i in range(len(driving)):
        cols = []
        cols.append(driving[i])
        im = plt.imshow(np.concatenate(cols, axis=1), animated=True)
        plt.axis('off')
        ims.append([im])
    video = animation.ArtistAnimation(fig, ims, interval=1000.0/fps, repeat_delay=1000)
    plt.close()
    return video
    
# Display the output video
# 视频比较长的话,运行时间会稍长,建议把视频下载到本地预览,视频保存路径为'/home/aistudio/work/PaddleGAN/applications'
video_path = 'pp_gaobai_jieyi.mp4'
video_frames = imageio.mimread(video_path, memtest=False)
# 获得视频的原分辨率
cap = cv2.VideoCapture(video_path)
fps = cap.get(cv2.CAP_PROP_FPS)
HTML(display(video_frames, fps).to_html5_video())
学新通

学新通

学新通

五. 总结

  • PaddleGAN不仅能实现唇形同步,还可以实现其他的许多功能,例如风格迁移等,欢迎大家尝试。
  • 可以尝试使用 wav2lipHD 模型,该模型基于wav2lip,增添了高分辨率。
  • 项目基于 飞桨_PaddleGAN 发布的项目Idol对我说情话–PaddleGAN带你过凡尔赛式情人节,大家可以进行参考,并在此基础上进行延申。
  • 来AI Studio互粉吧,等你哦,来互关呀~请点击—> 非鱼子焉
  • 欢迎大家喜欢收藏评论三连,感兴趣的朋友也可互相关注一下啊~
学新通

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgfkheb
系列文章
更多 icon
同类精品
更多 icon
继续加载