位置: IT常识 - 正文

这年头还不来尝试线稿图视频??(这年头不好混图片)

编辑:rootadmin
这年头还不来尝试线稿图视频??

推荐整理分享这年头还不来尝试线稿图视频??(这年头不好混图片),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:这年头没有钱歌曲视频,这年头dj,这年头没有钱歌曲视频,这年头没有钱歌曲视频,这年头dj,这年头谁还没点故事,这年头谁还没点故事,这年头没有钱原唱,内容如对您有帮助,希望把文章链接给更多的朋友!

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

🥰 博客首页: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原始视频逐帧提取.pyimport osimport cv2# todocap = 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)# todopath = 'ikun'if not os.path.exists(path): os.mkdir(path)i = 0while 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原始视频音频提取.pyimport moviepy.editor as mpdef extract_audio(videos_file_path): my_clip = mp.VideoFileClip(videos_file_path) my_clip.audio.write_audiofile(f'{videos_file_path.split(".")[0]}.mp3')# todoextract_audio('ikun.mp4')3-1PIL批量转换细节帧线稿图.pyimport osfrom PIL import Imagefrom 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批量转换边缘增强线稿图.pyimport osfrom PIL import Imagefrom 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帧-视频合成.pyimport cv2import ossize = (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音视频合成最终有声完整视频.pyimport 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的线稿图内容进行制作视频

总结

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

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

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

本文链接地址:https://www.jiuchutong.com/zhishi/298848.html 转载请保留说明!

上一篇:【JavaScript】DOM和事件简介和文档加载流程以及DOM查询(上)案例(附源码)(javascript bom dom)

下一篇:企微获取用户敏感数据(获取企业微信用户身份信息授权失败)

  • 华为和荣耀能互相克隆吗(华为和荣耀能互通超级终端吗)

    华为和荣耀能互相克隆吗(华为和荣耀能互通超级终端吗)

  • 常见的声音图像视频的压缩方法是(声音的图形)

    常见的声音图像视频的压缩方法是(声音的图形)

  • 王卡超级会员退订不了(王卡超级会员退了能重开吗)

    王卡超级会员退订不了(王卡超级会员退了能重开吗)

  • 小度1c二维码怎么找(小度的二维码怎么走)

    小度1c二维码怎么找(小度的二维码怎么走)

  • 怎么查看微信发来照片的拍摄时间(怎么查看微信发了多少消息)

    怎么查看微信发来照片的拍摄时间(怎么查看微信发了多少消息)

  • vnp是什么(vnp是什么的缩写)

    vnp是什么(vnp是什么的缩写)

  • 美图秀秀怎么把碎发p掉(美图秀秀怎么把背景图换成白色)

    美图秀秀怎么把碎发p掉(美图秀秀怎么把背景图换成白色)

  • 小米手环突然不提醒了(小米手环突然不亮了充电也没有反应)

    小米手环突然不提醒了(小米手环突然不亮了充电也没有反应)

  • 苹果8为什么耗电严重(苹果为什么耗电太快 什么原因啊)

    苹果8为什么耗电严重(苹果为什么耗电太快 什么原因啊)

  • ipad外放有滋滋声(ipad外放有滋滋声,耳机正常怎么回事)

    ipad外放有滋滋声(ipad外放有滋滋声,耳机正常怎么回事)

  • 微信怎么关闭对方正在输入(微信怎么关闭对方的朋友圈)

    微信怎么关闭对方正在输入(微信怎么关闭对方的朋友圈)

  • 对方关机微信语音显示什么(对方关机微信语音会忙线吗)

    对方关机微信语音显示什么(对方关机微信语音会忙线吗)

  • oppo 手机支持门禁卡功能吗(OPPO手机支持门禁)

    oppo 手机支持门禁卡功能吗(OPPO手机支持门禁)

  • 信号上面显示x怎么解决(信号上面显示HD怎么关闭)

    信号上面显示x怎么解决(信号上面显示HD怎么关闭)

  • 华为mate30pro多大的屏幕(华为mate30pro多大像素)

    华为mate30pro多大的屏幕(华为mate30pro多大像素)

  • 天猫精灵能远程控制吗(天猫精灵能远程放歌吗)

    天猫精灵能远程控制吗(天猫精灵能远程放歌吗)

  • 苹果x需要贴膜吗(苹果x贴膜后面容识别不了)

    苹果x需要贴膜吗(苹果x贴膜后面容识别不了)

  • reno具有osie功能吗(oppo reno有什么功能)

    reno具有osie功能吗(oppo reno有什么功能)

  • 爱拍原创怎么没了(爱拍原创2018没有我的视频)

    爱拍原创怎么没了(爱拍原创2018没有我的视频)

  • bclk频率调多少(bclk频率是100怎么调)

    bclk频率调多少(bclk频率是100怎么调)

  • 猫眼电影改签补差价吗(猫眼电影改签补差价怎么算)

    猫眼电影改签补差价吗(猫眼电影改签补差价怎么算)

  • 小米8无线投屏连接不上(小米8无线投屏怎么设置)

    小米8无线投屏连接不上(小米8无线投屏怎么设置)

  • 戴尔g3键盘灯怎么开(戴尔G3键盘灯怎么开不了)

    戴尔g3键盘灯怎么开(戴尔G3键盘灯怎么开不了)

  • 显卡怎么调高性能(显卡调到高性能)

    显卡怎么调高性能(显卡调到高性能)

  • 离职人员补发工资怎么做账
  • 企业名称税号
  • 自查补交以前年度增值税怎么做账
  • 购物税费怎么算
  • 个人出租商铺如何缴纳房产税
  • 非居民企业直接投资居民企业取得股息
  • 分公司成立时的法人是谁
  • 土地使用费怎么申报
  • 有留抵增值税怎么做账
  • 公司广告法违规交不起罚款怎么办
  • 应付账款发生额在哪方
  • 进项税额转出是不可以抵扣吗
  • 某企业月末由仓库转来发料凭证汇总表
  • 营改增后企业所得税不能跨年
  • 进项发票账务处理
  • 营改增后可以抵扣的范围
  • 兼营非应税劳务行为举例
  • 其他收益等于什么
  • 个税三险一金指什么意思
  • win10电脑键盘灵敏度怎么调
  • 应交增值税的会计科目
  • 出差人员差旅费作细的说明叫什么
  • 没有组策略权限
  • php的递归
  • 结算应付职工薪酬怎么算
  • 石炭纪的树有多高
  • 利润表本月数可以不填吗
  • php_imagick
  • 增值税专用发票的税率是多少啊
  • 微信小程序消息订阅怎么打开
  • php自动提交表单
  • 搭建本地http服务器
  • php读取文件内容的方法和函数
  • 小规模纳税人研发费用加计扣除优惠政策
  • 织梦论坛
  • 不动产投资缴纳什么税
  • 项目支出可以列支差旅费吗
  • 营业执照增加经营范围要钱吗
  • sqlserver 数据迁移
  • 退还留抵税额政策解读
  • 损益类科目的账务处理
  • 营业外收入怎么结转
  • 合作建房土地增值税清算案例
  • 存货核算科目设置
  • 收到水电费发票要交印花税吗
  • 售后回租含手续费吗
  • 企业购买固定资产要交什么税
  • 装修费用怎么结算
  • 专票取消认证
  • 年末未分配利润总额计算公式
  • mysql预编译原理
  • 在sql server中触发器不具有什么类型
  • php mysql insert into 结合详解及实例代码
  • windows10取消fn功能键
  • freebsd常用命令
  • freebsd查看硬盘信息
  • image driver
  • win8中文版怎么升级到win10
  • win8全屏快捷键
  • w7系统如何设置
  • win10系统怎么调整输入法
  • win8如何使用word
  • win7运行老游戏方法
  • windows7 excel
  • windows7开机磁盘检查怎么取消
  • cocos2dx怎么安装
  • jQuery Validation Engine验证控件调用外部函数验证的方法
  • bat批处理脚本教程
  • javascript运算
  • Node.js中的什么模块是用于处理文件和目录的
  • javascript网页游戏制作教程
  • javascript中的getElementById
  • 安卓打造世界中文全dlc
  • 关闭计算机盖的功能
  • jQuery+ajax简单实现文件上传的方法
  • 河南车船税收费标准2022年
  • 建筑企业如何
  • 广东税务app下载安装
  • 江西省国税局全称
  • 电子秒表怎么读数9:33.12
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设