最近学Go的时候发现个好玩的库,可以识别图片中的人像,并且提供二进制发行版
使用
从Releases处下载对应系统的二进制
|
|
即可识别input.png
,并输出output.png
预览图
识别视频
因为Pigo默认只能识别图片,想让它识别整个视频的话只能将视频切成图片进行逐一识别,毕竟视频也是图片组成的
下载视频
B站不提供直接的视频下载方式,试了几个网站的下载工具发现要不就是不能用,要么分辨率太低,所以这里使用自带的缓存功能
到Android设备
|
|
目录下,会发现一串以数字命名的文件夹,进入其子目录,会看到一个以数字命名的文件夹,和两个.xml
,.json
结尾的文件
进入数字文件夹,需要的两个文件出现了,audio.m4s
为音频文件,video.m4s
为视频文件,将音频拓展名重命名为*.mp3
,视频为*.mp4
,移动到任意剪辑软件能读取的目录
将两个文件导入剪辑软件,将视频和音频同步拖到对应轨道,导出即可
切割视频
这里博主使用的工具是FFmpeg
最好创建一个专门的文件夹存放输出的图片
A complete, cross-platform solution to record, convert and stream audio and video.
使用ffmpeg -i lockHand.mp4 -r 24 ./lockHand/output%d.png
以每秒24张图片分解视频
-i: 指定分割的视频
-r: 设置帧率,默认为25
output%d.png
中%d
是占位符,ffmpeg将以1.2.3…的顺序命名输出文件
完成后,到lockHand
目录下即可看到输出的图片
批量识别
一个18秒,24帧的视频就需要432张图片,这么多图片难不成要我们手动一张张识别?估计得识别到地球爆炸;像我这么懒的人肯定不会这么做,我决定用一个脚本来替我完成这项艰巨的任务
|
|
很简单的脚本,其中442
为生成的源图片数量,./lockHand/output$i.png
需要改为源图片文件文件夹,$i
和%d
差不多,产出目录同上
等待脚本完成,到./lockHand
即可看到产出图片
合并视频
同样使用FFmpeg
|
|
参数代表的含义与分割视频一致
激动人心的时刻到了,点击output.mp4即可看到识别的红框
Last modified on 2024-01-31