我在处理一些视频文件时需要做很多手工劳动,我想知道是否有办法可以使这项工作更轻松:
我想做的是拿一个视频文件(例如,硅谷的一集)并检测其中某个角色(即Erlich Bachman)说话的部分。我不太确定该如何进行,但这肯定会使我的工作轻松得多。
我猜想实现这个目标的方法可能是这样的:用Erlich的语音音频文件训练某种特殊的神经网络,然后使用ffmpeg对视频文件进行抽样,将样本通过神经网络运行,如果输出为正,则进行更精细的搜索以找到对话的确切开始/结束点。
回答:
我认为你可以使用LSTM,并逐一输入音频帧(或你称之为什么)。你不应该只用Erlich的语音音频文件来训练它。你实际上应该输入几集视频,每当Erlich说话时,将期望输出设置为1
,当他/她不说话时,将期望输出设置为0
。训练后,LSTM将输出一个介于0-1
之间的值;值越高,Erlich说话的可能性就越大。
但请记住,你需要一个像样的训练集才能拥有一个表现良好的神经网络。加上开发所需的时间和精力,可能会超过你自己寻找Erlich说话部分所花费的时间。所以看看一些API:
这个看起来是你可能想要使用的东西。你应该谷歌Speaker Recognition,你会找到你需要的东西。