如何做图片网站,专业团队高清壁纸,西部域名网,河南工程信息网官网文章目录1 概述2 模型结构简述2.1 TransNet2.2 TransNet V23 数据集的构建4 模型效果5 参考文献1 概述
有些时候#xff0c;一段视频是由多段短视频拼接而成的。拼接可以是直接拼接#xff08;硬拼接#xff0c;见图2#xff09;#xff0c;也可以是由一个转场过渡拼接一段视频是由多段短视频拼接而成的。拼接可以是直接拼接硬拼接见图2也可以是由一个转场过渡拼接软拼接见图2。我们希望拿到其中的每个小片段作为素材这个时候就要做视频切割了。这样的视频切割有的做法的目标是找拼接的边界故称之为shot boundary detection也有做法的目标是找每个小片段也称之为scene detection。
图1 硬拼接视频图2 软拼接视频基于传统方法去做就是找相邻帧之间的差异然后设定一个阈值去判断pyscenedetect这个库就是做这个事的。这个库可以把大部分的硬拼接切割的比较好但是存在两个问题
对于高速运动的物体且视频帧率不高时相邻帧之间的差异就会很大这就会被误判为是一个硬拼接对于软拼接效果是单纯的不好特别是那些比较长的转场。
于是深度学习就出场了。TransNet以及TransNet V2都是为了解决以上这两个问题而出现的后者是前者的升级版。
2 模型结构简述
2.1 TransNet
TransNet的结构由下图所示其官方实现可见这里其结构可见图3。这个模型的结构非常简单输入为长度为NNN的序列帧且被resize为48×2748 \times 2748×27序列帧会经过4个Dilated 3D CNN这四个Dilated 3D CNN的dilation rates在时间维度上是不同的。作者说这么做是因为相对于标准的3D CNN要看到同样的感受野这样的做法会减少训练参数量。然后把这些特征concat起来这整个block叫做一个DDCNN cell。如果再加上一个max pooling那就是SDDCNN block这样的cell和block会堆叠多次可以很深。最后经过两层全连接和softmax输出N×2N \times 2N×2的一个向量表示输入的每帧是否是shot boundary。
图3 TranNet结构图2.2 TransNet V2
TransNet V2是TransNet的升级版其官方实现可见这里其结构可见图4。它是在TransNet的基础上进行改进的主要的改进点有如下几个
加入了batch normalization和残差网络结构。在训练时加入了噪声。将3D的k×k×kconvolutionk \times k \times k \ convolutionk×k×k convolution分解为了2D的k×kconvolutionk \times k \ convolutionk×k convolution和一个kernel size为kkk的1D temporal convolution。这个做法可以强迫模型去分别学习图像特征和时间维度的特征。把连续帧的RGB color histogram和卷积输出的特征相似性作为特征也就是图4中的两个红色方框。增加了一个head用于预测整个transition的frames这个多加的head仅用于训练不用于预测另一个head还是和TransNet中保持一致。也就是在遇到软拼接的时候原始的head只预测中间那一帧为shot boundary新增加的head会预测整个transition的所有帧为shot boundary。 图3 TranNet V2结构图3 数据集的构建
模型的结构就算不去深究它也没关系因为说到底就是拿3D CNN去train一发结构上的改进带来的提升也没有特别大。数据是我比较关心的一块一个好的数据集往往比一个好的结构有更棒的提升作用。在这个shot boudary detection的任务当中有一个非常令人兴奋的事情就是它的数据集几乎是零成本的。
我们只需要找到一大堆短视频时长可以不要太长也不要太短然后我们随意去硬拼接或者软拼接这些视频就有了我们的数据集。因为拼接是我们自己做的因此shot boundary在哪里我们也是比谁都清楚的。唯一需要成本的就是测试集。为了检验数据的真实效果测试集还是需要人工去标注一批的。
这里要注意的就是我们使用的短视频需要是没有转场的镜头在里面的不然就有脏数据了。
另一个值得一提的是粗剪的时候设计师希望把一些虚帧也给剪掉这也有办法我们把这些虚帧也作为转场标进去就可以了。不过这个可能得要人工去标注了。能不能合成还真没调研过能合成自然是最好的。
4 模型效果
最终的结果就是对每一帧打一个分可见下图4。预测transition第一帧的head的概率值是图中的绿色柱子预测整个transition的是图中的蓝色柱子。可以看一下软拼接部分这两者概率的不同。可以根据实际场景去使用但基本还是只用绿色柱子。
图4 结果可视化图数据集的构成是对模型的效果有一定影响的在TransNet V2中作者测试了人工标注的数据集和合成的数据集用于训练对模型最终效果的影响。real是人工标注的cuts是合成的硬拼接dissolves是合成的软拼接。从在三个数据集下测试的效果可以看出人工标注的训练集并没有带来太多的提升反而还是用合成的数据集更好。结果如下表1所示其中的指标为f1-score。
表1 不同训练集的效果比较不同模型的效果如下表2所示其中的指标为f1-score。可见TransNet V2相对而言更好。
表2 不同训练集的效果比较5 参考文献
[1] TransNet: A deep network for fast detection of common shot transitions [2] TransNet V2: An e!ective deep network architecture for fast shot transition detection [3] pyscenedetect