首页IT科技线稿图怎么画手绘(这年头还不来尝试线稿图视频??)

线稿图怎么画手绘(这年头还不来尝试线稿图视频??)

时间2025-06-14 01:45:00分类IT科技浏览4572
导读: 🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝 ...

 🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝 

🥰 博客首页:knighthood2001

😗 欢迎点赞👍评论🗨️

❤️ 热爱python             ,期待与大家一同进步成长!!❤️

先看后赞                     ,已成习惯😁👍👍(只截取了一部分       ,怕截取太多      ,你们打开卡)

目录

前言

1原始视频逐帧提取.py

2原始视频音频提取.py

3-1PIL批量转换细节帧线稿图.py

3-2PIL批量转换边缘增强线稿图.py

4PIL帧-视频合成.py

5音视频合成最终有声完整视频.py

总结

前言

入门opencv                     ,欢笑快乐每一天

大致思路和上篇文章的类似              ,这里采用了opencv+PIL+moviepy      ,最终制作了线稿图的带声音的MP4             。

这里我讲了一些关于PIL的知识:利用PIL库进行简单的图像操作                    ,隔壁打王者的小孩子都在向我要素描图              ,快上车!!

目录如下:需要准备一个视频

代码主要分成以下几个部分:

        1原始视频逐帧提取

        2原始视频音频提取

        3-1PIL批量转换细节帧线稿图  3-2PIL批量转换边缘增强线稿图

        4PIL帧-视频合成

        5音视频合成最终有声完整视频

注:需要更改的,笔者已经在代码中注释todo了                     。

1原始视频逐帧提取.py

import os import cv2 # todo cap = cv2.VideoCapture(ikun.mp4) fps = cap.get(cv2.CAP_PROP_FPS) width = cap.get(cv2.CAP_PROP_FRAME_WIDTH) height = cap.get(cv2.CAP_PROP_FRAME_HEIGHT) frames = cap.get(cv2.CAP_PROP_FRAME_COUNT) print(fps:, fps, \n, width:, width, \n, height:, height, \n, frames:, frames) # todo path = ikun if not os.path.exists(path): os.mkdir(path) i = 0 while True: flag, frame = cap.read() filename = path + /{}.jpg.format(str(i)) print(filename) cv2.imwrite(filename, frame) i = i + 1 if i > int(frames): break

        在上篇文章中                    ,笔者是直接将原始视频提取的帧继续边缘检测处理后保存为图片                     ,而在这里,笔者就直接提取原视频的帧并不做修改保存       。便于后续操作      。 

2原始视频音频提取.py

import moviepy.editor as mp def extract_audio(videos_file_path): my_clip = mp.VideoFileClip(videos_file_path) my_clip.audio.write_audiofile(f{videos_file_path.split(".")[0]}.mp3) # todo extract_audio(ikun.mp4)

3-1PIL批量转换细节帧线稿图.py

import os from PIL import Image from PIL import ImageFilter # todo 这里的path为之前逐帧提取的图片             ,new_path为新生成的线稿图保存的目录 path = ikun new_path = new_ikun1 if not os.path.exists(new_path): os.mkdir(new_path) # 输出原始目录图片数量 a = os.listdir(path) b = len(a) print("原始目录图片数:", b) for i in range(b): 细节 square = Image.open(path + "/{}.jpg".format(i)) square1 = square.filter(ImageFilter.DETAIL) 轮廓 square2 = square1.filter(ImageFilter.CONTOUR) square2.save(new_path + "/{}.jpg".format(i)) print(new_path + "/{}.jpg".format(i))

这里笔者采用了PIL中细节+轮廓的方式                     ,提取线稿图(PIL提取线稿图       ,需要有轮廓这一步骤)

图片变化展示

3-2PIL批量转换边缘增强线稿图.py

import os from PIL import Image from PIL import ImageFilter # todo 这里的path为之前逐帧提取的图片             ,new_path为新生成的线稿图保存的目录 path = ikun new_path = new_ikun2 if not os.path.exists(new_path): os.mkdir(new_path) # 输出原始目录图片数量 a = os.listdir(path) b = len(a) print("原始目录图片数:", b) for i in range(b): 边缘增强 square = Image.open(path + "/{}.jpg".format(i)) square1 = square.filter(ImageFilter.EDGE_ENHANCE) 轮廓 square2 = square1.filter(ImageFilter.CONTOUR) square2.save(new_path + "/{}.jpg".format(i)) print(new_path + "/{}.jpg".format(i))

同样的                     ,笔者在这里只换了PIL的一个函数       ,采用边缘增强+轮廓的方式      ,大家可以去我之前博客看看                     ,大家也可以自行去尝试              ,试出多种风格                     。

 利用PIL库进行简单的图像操作      ,隔壁打王者的小孩子都在向我要素描图                    ,快上车!!

图片变化展示:

(不知道为啥              ,感觉这个更好看)

4PIL帧-视频合成.py

import cv2 import os size = (854, 480) # todo path和保存的视频名称需要根据变化 path = new_ikun1 videowrite = cv2.VideoWriter(output_ikun1.mp4, -1, 25, size) a = os.listdir(path) n = len(a) for i in range(n): img = cv2.imread(path + "/{}.jpg".format(i)) videowrite.write(img) videowrite.release() print(end!)

5音视频合成最终有声完整视频.py

import moviepy.editor as mp # todo 路径都要看情况变化 # todo 传入的线稿图视频 video = mp.VideoFileClip(output_ikun1.mp4) audio = mp.AudioFileClip(ikun.mp3) video_merge = video.set_audio(audio) # todo 最终生成的带音频的视频 video_merge.write_videofile(final_ikun1.mp4) # video = mp.VideoFileClip(output_ikun2.mp4) # audio = mp.AudioFileClip(ikun.mp3) # video_merge = video.set_audio(audio) # video_merge.write_videofile(final_ikun2.mp4)

注:4和5都只是根据3-1的线稿图内容进行制作视频

总结

        大致上已经讲完了,大家对这篇文章里面内容不熟悉的                    ,可以看我前一篇文章                     ,里面有详细讲解              。

        接下来如果有空的话就会将其改为函数,方便大家更改与使用!!

        注:以上内容只是用来探讨🐔技术             ,方便大家对其产生兴趣!!

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
网站快速优化排名排名(网站排名优化怎么弄) rec下删除模块(rmmod命令 – 移除内核模块)