深度学习实战22(进阶版)-AI漫画视频生成模型,做自己的漫画视频

大家好,我是微学AI,今天给大家带来深度学习实战22(进阶版)-AI漫画视频生成模型。

回顾之前给大家介绍了《深度学习实战8-生活照片转化漫画照片应用》,今天我借助这篇文章的原理做一个AI漫画视频生成的功能,让我们进入AI生成视频的时代吧。

AI生成视频是利用人工智能技术生成视频的过程,通常,这种技术基于图像识别、语音合成等算法,从各种不同来源的数据中获取信息,然后自动生成视频。 AI生成视频技术的优势是可以快速生成高质量视频,同时还可以自动完成各种冗长的编辑工作,提高工作效率。此外,还可以实现一些人类不可能完成的任务,例如在极端天气、危险环境下进行拍摄。

目前,AI生成视频技术主要应用于视频广告、教育教学、虚拟演示,短视频等领域。虽然这种技术正在不断发展,但其缺点是不具有人类的创造性和情感体验。因此,目前的技术仍无法替代人类在视频制作中的重要作用。

一、AI生成漫画视频

本项目里面采用原有视频转化为漫画视频,首先先将视频分割成一帧一帧的图片,然后将图片转化为漫画形式,在进行合成视频,这里运用imageio技术。

imageio是Python中用于处理图像和视频的第三方库,其中的get_writer函数用于创建图像或视频的写入器(writer)对象。 get_writer函数接收一个参数,即输出文件的路径或文件对象,如下:

import imageio # 输出文件的路径 
writer = imageio.get_writer('output.mp4') # 输出文件的文件对象 
with open('output.mp4', mode='wb') as file: 
     writer = imageio.get_writer(file, format='mp4')

在调用get_writer函数后,我们可以使用writer对象将图像或视频写入输出文件。

import numpy as np 
import imageio 

# 创建一个数组作为图像数据 
image_data = np.zeros((256, 256, 3), dtype=np.uint8) 

# 获取写入器对象 
writer = imageio.get_writer('output.mp4') # 写入帧 
for i in range(30): 
     writer.append_data(image_data) 

# 关闭写入器对象 
writer.close() 

上面我们创建了一个256x256大小的黑色图像,并使用get_writer函数创建了名为output.mp4的视频写入器对象。接着,在一个循环中,我们将同样的图像数据重复写入帧中,并最终关闭写入器对象。 需要注意的是,imageio支持许多不同的视频和图像格式和编解码器。

二、AI生成漫画视频代码案例

import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '3'
import imageio
from modelscope.outputs import OutputKeys
from modelscope.pipelines import pipeline
from tqdm import tqdm
import numpy as np
import cv2
from PIL import Image
import os

def video2cartoon(filepath):

    outpath = 'output2.mp4'

    reader = imageio.get_reader(filepath)
    fps = reader.get_meta_data()['fps']
    writer = imageio.get_writer(outpath, mode='I', fps=fps, codec='libx264')

    model_name = 'damo/cv_unet_person-image-cartoon_compound-models'
    img_cartoon = pipeline('image-portrait-stylization', model=model_name,device='cpu')

    for i, img in tqdm(enumerate(reader)):
        try:
            cv2.imwrite(f'result{i}.png',img)
            img = Image.open(f'result{i}.png')
            new_size = (1050,590)
            img = img.resize(new_size) # 保存修改后的图片
            result = img_cartoon(img)
            res = result[OutputKeys.OUTPUT_IMG]
            writer.append_data(res[..., ::-1].astype(np.uint8))
            os.remove(f'result{i}.png')
            print(i)
        except:
            pass

    writer.close()
    print('finished!')

    return outpath

video2cartoon('video.mp4')

输出结果:

大家也可以试一下,生成自己的漫画视频哦。

往期作品:

 深度学习实战项目

1.深度学习实战1-(keras框架)企业数据分析与预测

2.深度学习实战2-(keras框架)企业信用评级与预测

3.深度学习实战3-文本卷积神经网络(TextCNN)新闻文本分类

4.深度学习实战4-卷积神经网络(DenseNet)数学图形识别+题目模式识别

5.深度学习实战5-卷积神经网络(CNN)中文OCR识别项目

6.深度学习实战6-卷积神经网络(Pytorch)+聚类分析实现空气质量与天气预测

7.深度学习实战7-电商产品评论的情感分析

8.深度学习实战8-生活照片转化漫画照片应用

9.深度学习实战9-文本生成图像-本地电脑实现text2img

10.深度学习实战10-数学公式识别-将图片转换为Latex(img2Latex)

11.深度学习实战11(进阶版)-BERT模型的微调应用-文本分类案例

12.深度学习实战12(进阶版)-利用Dewarp实现文本扭曲矫正

13.深度学习实战13(进阶版)-文本纠错功能,经常写错别字的小伙伴的福星

14.深度学习实战14(进阶版)-手写文字OCR识别,手写笔记也可以识别了

15.深度学习实战15(进阶版)-让机器进行阅读理解+你可以变成出题者提问

16.深度学习实战16(进阶版)-虚拟截图识别文字-可以做纸质合同和表格识别

17.深度学习实战17(进阶版)-智能辅助编辑平台系统的搭建与开发案例

18.深度学习实战18(进阶版)-NLP的15项任务大融合系统,可实现市面上你能想到的NLP任务

19.深度学习实战19(进阶版)-SpeakGPT的本地实现部署测试,基于ChatGPT在自己的平台实现SpeakGPT功能

20.深度学习实战20(进阶版)-文件智能搜索系统,可以根据文件内容进行关键词搜索,快速找到文件

21.深度学习实战21(进阶版)-AI实体百科搜索,任何名词都可搜索到的百科全书

猜你喜欢

转载自blog.csdn.net/weixin_42878111/article/details/129844212