学会Python等于拥有整个世界!来看下智能视觉视频识别吧!

简介: 今天在群里一个小伙伴,发了这个视频问学委,我打开一看贼有意思!

【教程】如何一键将视频转化为彩色的字符动画-哔哩哔哩】

嘿嘿,看起来还是一个挺有趣的python项目,它用计算机视觉把流媒体/图片转换成彩色的位图,效果如下:

(把右边的猫自动转成左边的彩色位图,其他图片视频也可以哦)

image.png

好家伙,敢情这个机器视觉高度近视啊!!!


虽然第一次看到这项目,但作为一枚懂python的老手,从接触这个项目,安装使用,到写完博客也就不到一个多小时吧(小小炫耀一下,不过也没啥,毕竟计算机视觉近视的问题还没来得及处理,哈哈)


但是学会Python,等于拥有整个世界,大把炫酷的库玩不腻!

别执着女神了,过来玩Python 入坑吧!


下面开始,步骤有3大步,但是都是遇到问题一个一个解决。


总结就是3大步随手玩转一个Python项目

那就直接就源码开搞了吧。


第一步:快速浏览项目结构,README ,从代码把握核心。

首先,拿到一个python开源项目,我们需要大概浏览一下README 也是就是 项目Github首页

ShellPlayer GitHub


image.png

发现这个挺简单的,基于opencv这个开源视觉库,嗯,这个项目只是一个壳(当然也有一些贡献的,还不赖吧!)。


整个项目就是调用ffmpeg(可以命令行调用的流媒体处理工具)加载图片/视频,再用opencv来识别图像,生成彩色位图的。

这个基于opencv智能视觉来识别图片/视频,然后转换生成彩色位图!


下面是代码,新手不要纠结细节,因为纠结会让你更迷了!!!


雷学委建议:把握两个关键 1)读取流媒体数据 和 2) opencv 读取流媒体数据转换成一帧帧位图输出。


感兴趣可以去看:https://github.com/HypoX64/ShellPlayer/blob/master/play.py


image.png

这里是衔接ffmpeg的方法读取视频流:https://github.com/HypoX64/ShellPlayer/blob/master/util/ffmpeg.py

image.png

第三步,项目运行效果

我们先看效果,感兴趣在去看第二步的安装吧。

左边程序生成的彩色位图,跟右边的猫咪也没有挺像的。但是就是这个意思吧!

所以,雷学委推荐读者下载一些分辨比较清晰的,这样生成的位图轮廓会更清晰呢。

image.png

还可以吧,运行的命令是下面的:

#play.py在git clone 检出的ShellPlayer目录
#这里是python执行play.py脚本,并带上参数‘-m' 和视频或则图片的路径,读者可以试试下载其他视频尝试。
python play.py -m "/Users/mac/Desktop/hometown-cat2021.mp4"

这里是第二步,相信你对这个有点兴趣了。

想要玩一些炫酷的东西,需要耐心的。

雷学委认为:太简单的东西,一点也不好玩,所以这个东西才有玩的价值,您觉得呢?

安装步骤来了3 步。

下载ShellPlayer代码

git clone git clone https://github.com/HypoX64/ShellPlayer.git

下载之后,目录结构大致如下:

(PS: 雷学委这里用了virtualenv来创建虚拟环境安装项目的依赖python库的,不清楚的同学直接忽略)

image.png

安装依赖的python库

#这个官网并没有提到,但是一运行player就报错了,无语。好的项目文档需要搞好!
pip install numpy -i http://mirrors.aliyun.com/pypi/simple --trusted-host mirrors.aliyun.com 
pip install opencv-python -i http://mirrors.aliyun.com/pypi/simple --trusted-host mirrors.aliyun.com

安装ffmpeg

这个怎么简单怎来装。

雷学委用的是macbook,所有用brew安装了。

运行下面命令brew tap添加 ffmpeg 项目仓库,方便下面安装:

brew tap homebrew-ffmpeg/ffmpeg

image.png

运行下面命令安装ffmpeg:

brew install ffmpeg

下面截几个安装截图,挺漫长的,需要下载很多依赖和安装。

image.png

image.png

看到下面这个图,恭喜你,安装好了。下面可以试试ffmpeg是否安装成功。

image.png

输入‘ffmpeg -version’ ,输出下面版本和一些运行选项,标志ffmpeg流处理工具安装成功了!

image.png

到这里,安装成功了,回到中间的第三步运行一下吧。

此文没有总结了,觉得好玩有趣的赶紧去试试看。

目录
相关文章
|
1月前
|
计算机视觉 Python
Python实用记录(一):如何将不同类型视频按关键帧提取并保存图片,实现图片裁剪功能
这篇文章介绍了如何使用Python和OpenCV库从不同格式的视频文件中按关键帧提取图片,并展示了图片裁剪的方法。
67 0
|
1月前
|
机器学习/深度学习 编解码 Python
python将照片集变成视频
`shigen`是一位坚持更新文章的博客作者,记录成长历程,分享认知见解,留住生活感动。他利用Python库`Pillow`和`MoviePy`开发了一个工具,能够批量处理照片并生成高质量视频。该工具支持多种分辨率、自定义播放时间和照片方向,并能自动调整照片比例以实现居中对齐。通过简单的代码实现了照片视频化的需求,适合强迫症患者使用。**与shigen一起,每天不一样!**个人IP:shigen。
43 9
python将照片集变成视频
|
1月前
|
数据安全/隐私保护 流计算 开发者
python知识点100篇系列(18)-解析m3u8文件的下载视频
【10月更文挑战第6天】m3u8是苹果公司推出的一种视频播放标准,采用UTF-8编码,主要用于记录视频的网络地址。HLS(Http Live Streaming)是苹果公司提出的一种基于HTTP的流媒体传输协议,通过m3u8索引文件按序访问ts文件,实现音视频播放。本文介绍了如何通过浏览器找到m3u8文件,解析m3u8文件获取ts文件地址,下载ts文件并解密(如有必要),最后使用ffmpeg合并ts文件为mp4文件。
|
2月前
|
编解码 Python
Python如何给视频添加音频和字幕
Python如何给视频添加音频和字幕
|
2月前
|
编解码 Python Windows
python有没有包 可以检测 这个视频是否可以播放
python有没有包 可以检测 这个视频是否可以播放
|
2月前
|
前端开发 JavaScript 关系型数据库
基于Python+Vue开发的反诈视频宣传管理系统
基于Python+Vue开发的反诈视频宣传管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Python编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Python的反诈宣传管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
34 4
|
3月前
|
自然语言处理 数据挖掘 开发者
Python腾讯视频16978条弹幕,发现弹幕比剧还精彩
Python腾讯视频16978条弹幕,发现弹幕比剧还精彩
54 4
Python腾讯视频16978条弹幕,发现弹幕比剧还精彩
|
3月前
|
存储 数据可视化 Python
使用python moviepy提取视频中的音频,同时对音频数据进行数据可视化分析
使用python moviepy提取视频中的音频,同时对音频数据进行数据可视化分析
139 0
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
【深度学习】python之人工智能应用篇——视频生成技术
视频生成技术是一种基于深度学习和机器学习的先进技术,它使得计算机能够根据给定的文本、图像、视频等单模态或多模态数据,自动生成符合描述的、高保真的视频内容。这种技术主要依赖于深度学习模型,如生成对抗网络(GAN)、自回归模型(Auto-regressive Model)、扩散模型(Diffusion Model)等。其中,GAN由两个神经网络组成:一个生成器用于生成逼真的图像或视频,另一个判别器用于判断生成的图像或视频是否真实。通过不断的对抗学习,生成器和判别器共同优化,以产生更高质量的视频。
95 2
|
3月前
|
数据可视化 Python
通过python建立一个web服务查看服务器上的文本、图片、视频等文件
通过python建立一个web服务查看服务器上的文本、图片、视频等文件
68 0