Python - GFPGAN + MoviePy 提高人物视频画质

这篇具有很好参考价值的文章主要介绍了Python - GFPGAN + MoviePy 提高人物视频画质。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

视频高清 inference_gfpgan 使用,深度学习,Python,人工智能,GFP-GAN,moviepy,gif

目录

一.引言

二.gif_to_png

三.gfp_gan

四.png_to_gif

五.总结


一.引言

前面我们介绍了 GFP-GAN 提高人脸质量 与 OCR 提取视频台词、字幕,前者可以提高图像质量,后者可以从视频中抽帧,于是博主便想到了将二者进行结合并优化人物 GIF 图像质量。其步骤如下:

 MoviePy 截取视频关键帧

 GFP-GAN 提高人脸图像质量

 MoviePy 关键帧合并为 GIF

Tips:

后面的执行步骤需要电脑上已经配置好 GFP-GAN 的环境且安装了 moviepy 的依赖。

二.gif_to_png

def gif_to_png(_file_name, _output):
    from moviepy.editor import VideoFileClip

    # Load your gif
    clip = VideoFileClip(_file_name)
    print(f'Duration: {clip.duration} FPS: {clip.fps}')

    # Loop over clip frames
    for i, frame in enumerate(clip.iter_frames()):
        from PIL import Image
        img = Image.fromarray(frame)
        img.save(f'{_output}/frame_{i}.png')

if __name__ == '__main__':
    file_name = "/Users/Desktop/ori.gif"
    output = "/Users/Desktop/out"
    gif_to_png(file_name, output)

这一步我们读取 gif 并抽帧保存为多张图片,运行程序后会在 output 文件夹下得到 FPS x Duration = 40 张图片:

Duration: 4.0 FPS: 10.0

视频高清 inference_gfpgan 使用,深度学习,Python,人工智能,GFP-GAN,moviepy,gif

由于是老版电视剧的原因,gif 中人物的表情比较糊,画质较差:

视频高清 inference_gfpgan 使用,深度学习,Python,人工智能,GFP-GAN,moviepy,gif

三.gfp_gan

python inference_gfpgan.py -i inputs/gif_imgs -o results -v 1.3 -s 2

将上面的多帧图片存储至 GFP-GAN inputs 文件夹下,执行 inference_gfpgan.py,结果将输出至 results 文件夹内:

视频高清 inference_gfpgan 使用,深度学习,Python,人工智能,GFP-GAN,moviepy,gif

其中 restored_imgs 文件夹内存储了我们修复的多帧图像,看一下修复效果:

视频高清 inference_gfpgan 使用,深度学习,Python,人工智能,GFP-GAN,moviepy,gif

四.png_to_gif

def png_to_gif(_output, gif_name, fps):
    file_list = os.listdir(_output)
    file_list.sort()
    
    # 构造多个 ImageClip 片段
    clips = [ImageClip(_output + img).set_duration(1) for img in file_list if img.endswith(".png")]

    concat_clip = concatenate_videoclips(clips, method="compose")
    concat_clip.write_gif(gif_name, fps=fps)

if __name__ == '__main__':

    file_name = "/Users/Desktop/ori.gif" # 原始 GIF
    input = "/Users/Desktop/result/restored_imgs/" # 修复帧
    output = "out.gif" # 输出 GIF
    # 匹配原 GIF 的 FPS
    ori_fps = VideoFileClip(file_name).fps
    png_to_gif(input, output, ori_fps)
MoviePy - Building file out.gif with imageio.

出现上述命令后代表开始多帧图像的合并,可以看到修复后的 GIF 人物更加的清晰:

视频高清 inference_gfpgan 使用,深度学习,Python,人工智能,GFP-GAN,moviepy,gif

五.总结

GFP-GAN 整体来说可玩性还是很高,后面博主会继续跟进 wave2lip 的测试,把音频、图像、视频结合到一起。这里我们处理的原始 gif 大小为 10m,处理后大小为 14m;同时如果资源比较充足的话,也可以将 GIF 扩展为视频人物细节处理。文章来源地址https://www.toymoban.com/news/detail-858117.html

到了这里,关于Python - GFPGAN + MoviePy 提高人物视频画质的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Stable Diffusion - 真人照片的高清修复 (StableSR + GFPGAN) 最佳实践

    欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://spike.blog.csdn.net/article/details/132032216 GFPGAN (Generative Facial Prior GAN) 算法,用于实现真实世界的盲脸恢复的算法,利用预训练的面部 GAN(如 StyleGAN2 )中封装的丰富和多样的先验信息,来修复低质量、模糊、噪声或者损坏的

    2024年02月14日
    浏览(37)
  • python moviepy 自动化音视频处理实践

    MoviePy是一个用于视频编辑的Python库。它提供了一种简单且直观的方式来处理视频文件,包括剪辑、合并、裁剪、添加文本、添加音频等操作。使用MoviePy,你可以通过编写Python代码来创建和编辑视频,而无需使用复杂的视频编辑软件。 MoviePy建立在另一个库Pygame和软件MoviePy

    2024年02月14日
    浏览(27)
  • python+moviepy音视频处理(一):基本操作

    目录 视频处理 视频加载和输出 视频转换gif 视频裁剪 视频音量调节 去掉视频声音 视频中的音频提取与替换 获取视频属性 倍数播放视频 截取视频某帧为封面 多视频拼接 音频处理 替换视频文件的音频 多个音频文件拼接 安装:pip install moviepy 中文官网:moviepy-cn 文档 \\\'\\\'\\\' movie

    2023年04月23日
    浏览(35)
  • python+moviepy音视频处理(二):视频添加文字(字幕)、视频添加汉字不显示问题

    目录 添加文字报错处理 中文不显示处理 代码实例 给视频添加滚动文字(一) 给视频添加滚动文字(二) 报错内容 :OSError: MoviePy Error: creation of None failed because of the following error: [WinError 2] 系统找不到指定的文件。. .This error can be due to the fact that ImageMagick is not installed on your comput

    2024年02月09日
    浏览(67)
  • 当影像遇上Python:用MoviePy库轻松搞定视频编辑

    🎬 MoviePy 是什么? MoviePy 是一个使用 Python 编写的开源库,用于在视频编辑中创建、编辑和操作视频文件。它是一款强大且易于使用的视频处理工具,可以方便地剪辑、裁剪、组合和调整视频的大小和位置。 🎥 MoviePy 的特点 MoviePy 具有以下特点: 支持多种视频格式,包括

    2024年01月18日
    浏览(28)
  • 【python】只需一段代码,剪辑一个视频——Moviepy详解

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 知道吗,用moviepy一行代码就能够快速剪辑视频中某个区间的片段: clip = VideoFileClip(“videoplayback.mp4”).subclip(50,60) 这一段代码,能够在3秒内将videoplayback.mp4的50秒-60秒的视频片段提取出来,非常方便。

    2023年04月16日
    浏览(28)
  • python --moviepy合成视频加转场效果(淡入淡出),FFmepg

    示例一: 上述四行代码实现Moviepy模块的加载、然后读入视频文件、对视频前15秒进行淡入处理、输出调整后视频到结果视频文件。以上四行代码也可以精简为如下两行: 淡出处理类似,只要把函数fadein改成fadeout,并调整时间参数即可。 MoviePy是一个用于视频编辑的Python模块,

    2024年02月02日
    浏览(27)
  • 基于Wav2Lip+GFPGAN的高清版AI主播

    继上一篇 基于Wav2Lip的AI主播 的内容之后很多小伙伴反应一个问题就是生成的AI人物并不是很清晰,尤其是放到编辑器里会出现明显的痕迹,因此这次带来的了 Wav2Lip+GFPGAN 高清版的内容,如果不太了解这个项目实做什么的可以来先看一下效果。该项目暂时没有中文介绍,我这

    2024年01月20日
    浏览(32)
  • Python Moviepy 视频编辑踩坑实录01:谁动了我的音频比特率

    1.音频比特率:从16000,调用函数后编程了44100 2. 音频通道数:从1通道,变成了2通道; 部分参数采用了默认值,包括音频比特率,通道类型。  filename:视频文件名,只要是ffmpeg支持的视频文件如 .ogv, .mp4, .mpeg, .avi, .mov等都可以  fps:帧率,每秒编码的帧数  codec:用于图像

    2024年02月19日
    浏览(34)
  • 视频画质修复,老旧视频的模糊画质如何修复为4K画质?

    最近在B站听伍佰的时候,发现有不少UP主制作了4K画质修复版 Live 视频。这些二十多年前的视频,在4K画质下,似乎多了一份莫名的感动... 他们是怎么制作的这些视频的呢?老旧视频的模糊画质如何修复为4K画质,相信大家也收藏有不少老片。 1、如今有专业的视频修复公司,

    2024年02月12日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包