开发者社区> tommy_tl> 正文

基于深度学习技术的视频内容检测

简介: 短视频APP在UGC场景下出现了大量重复视频内容,该重复视频被重复曝光、重复消费,造成了用户体验较差,甚至于用户流失。本次分享重点介绍基于深度学习CNN技术构建视频重复内容检测服务,并给出该方案的工程实现。该服务上线后,重复检测准确率80%,视频内容分发提效20%。
+关注继续查看

1、背景介绍
克拉克拉(KilaKila)是国内专注年轻用户的娱乐互动内容社区软件。KilaKila 推出互动语音直播、短视频、对话小说等功能,满足当下年轻用户个性化、碎片化的文娱需求。其中短视频每天都有海量的视频素材产生,这对用户造成了严重的信息过载,难以从中自主挑选感兴趣的内容。每一位视频内容的消费者同时也是生产者,期望自己的作品能够被更多的志同道合者所看到,获得最大的曝光度。但短视频在UGC场景下出现了大量重复视频内容,该重复视频被重复曝光、重复观看,造成了用户体验较差甚至于用户流失。本文重点介绍基于深度学习CNN技术构建视频重复内容检测服务并给出该方案的工程架构。该服务上线后,重复检测准确率80%,视频内容分发提效20%。

2、图像特征描述符方法
视频内容理解的第一步便是对视频进行片段化视频帧处理,也就是随机采样。视频抽帧指用视频的关键帧表征整个视频的完整含义,针对不同类型视频编码格式、帧速率、比特率、视频分辨率以及不同种类的视频,视频的抽帧大概分为按视频固定时间间隔抽帧和基于实际图像内容抽帧,具体可细分为聚类抽帧,基于运动抽帧,基于镜头抽帧本文采取深度学习CNN模型框架对图像进行提取特征,其中并对比了目前主流模型的特征提取能力并针对特征数据进行针对训练,以便得到更好的模型参数。
传统的特征描述符方法可以清晰看到特征点的移动,有利于特征点的跟踪而对于边 (edge) 、区域 (patch) 等特征则无能为力。深度学习方法可以保留图像邻域的联系和空间的局部特点(CNN)更容易处理高维图像。对使用者而言无需知道提取的特征有哪些。大量实践表明,深度学习在提取图像特征方面有明显优势。

_1


图一:早期判断图片相似的网络结构

3、深度学习CNN的模型选择
1)深度学习算法之图片提取特征模型(2D-CNN)
FFmpeg按照视频时间的固定间隔抽取关键帧,抽帧间隔灵活选取。利用AlexNe版本的CNN模型处理原始图片为1000维的特征向量。输入的原始数据图像需要经过深度学习模型提取图片特征,以高维数据展示并存取图片对应名称以方便后续操作。

_2


图二:高维数据


2)深度学习算法之视频提取特征模型(3D-CNN)
FFmpeg根据视频相关参数选取合理数量的clip作为单次输入数据。利用C3D版本CNN模型获取视频特征的高维向量表达。对基于视频分析的问题,2D卷积无法有效获取时序上的信息。采用可提取三维图像特征的3D卷积模型,对clip同时还可以提取时空特征,用高维向量表示。Clip固定帧数的视频片段。

_3


图三:2D卷积


_4


图四:3D卷积


_5


图五:C3D模型网络结构

3)深度学习算法之视频提取特征模型
FFmpeg根据视频相关参数选取合理数量的clip作为metadata。利用R2Plus1D版本的CNN模型获取视频特征的高维向量表达。将3D卷积分解为空间卷积和时间卷积,采用ResNet网络的基础block。相比C3D模型在不增加参数量的前提下增强了模型的表达能力。

_6


图六:a)R3D模型卷积核;b)R2Plus1D模型卷积核;R3D模型和R2Plus1D模型网络结构

4、检索方法
1)哈希检索算法
此部分将CNN模型抽取出的1000维特征向量存入Redis数据库完成持久化存储,Redis数据库动态更新保存增量数据。为了保证相关特征向量的查询比对,其中的方案之一便是使用LSH算法,该算法是查询视频的高维特征向量再做高维数据空间向量的位置敏感哈希算法( Locality-Sensitive Hashing ),即将每个视频对应的图片计算得到的特征向量实现归一化后得到每张查询视频在数据库中最相似的视频所对应的特征向量。
2)聚类算法
聚类方法避免对全空间进行搜索,而是对全空间进行分割,将其分割成若干小的子空间,在搜索的时候,锁定查询向量应该落入的子空间,在该子空间中做遍历查询。通过增加索引子类空间的个数提高搜索的精准度。

_7


图七:特征向量聚类算法

3)矢量量化方法 (vector quantiation) 是将一个向量空间中的点用一个有限子集来进行编码表示的过程。典型的有PQ乘积量化 (Product Quantization) 和倒排乘积量化 (IVFPQ) 。PQ乘积量化:本质是一种聚类的方法。

5、视频重复内容检测服务的工程架构选择
1)视频重复性检测系统架构(2D-CNN+LSH算法)

_8


图八:2D-CNN+LSH算法流程图

2)视频重复性检测系统架构(3D-CNN+聚类算法)

_9


图九:3D-CNN+聚类算法流程图

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
图神经网络11-GCN落地的必读论文:GraphSAGE
图神经网络11-GCN落地的必读论文:GraphSAGE
5 0
图神经网络必读论文-Must-read papers on GNN
GNN: graph neural network Contributed by Jie Zhou, Ganqu Cui, Zhengyan Zhang and Yushi Bai. 来源:THUNLP 链接:https://github.com/thunlp/GNNPapers
7 0
图神经网络12-分子指纹GCN:Neural FPs
图神经网络12-分子指纹GCN:Neural FPs
6 0
2021Vue.js面试题汇总及答案【全网最全 建议收藏】(二)
2021Vue.js面试题汇总及答案【全网最全 建议收藏】
7 0
iOS逆向-day8:LLDB 动态调试
iOS逆向-day8:LLDB 动态调试
5 0
iOS逆向-day9:签名机制(上)
iOS逆向-day9:签名机制(上)
7 0
Kaggle虾皮商品匹配大赛银牌方案复盘
Kaggle虾皮商品匹配大赛银牌方案复盘
4 0
图神经网络13-图注意力模型GAT网络详解
图神经网络13-图注意力模型GAT网络详解
6 0
使用 Haproxy + Nginx 实现高可用
Haproxy 是目前比较流行的一种集群调度工具,同类集群调度器工具有很多,如 LVS 和 Nginx。相比较而言,LVS 性能最好,但是搭建相对复杂;Nginx 的 upstream 模块虽然支持集群功能,但是对集群节点健康检查功能不强,性能没有 Haproxy 好。
8 0
2021Vue.js面试题汇总及答案【全网最全 建议收藏】(一)
2021Vue.js面试题汇总及答案【全网最全 建议收藏】
4 0
+关注
10
文章
0
问答
来源圈子
更多
阿里云最有价值专家,简称 MVP(Most Valuable Professional),是专注于帮助他人充分了解和使用阿里云技术的意见领袖阿里云 MVP 奖项为我们提供了这样一个机会,向杰出的意见领袖表示感谢,更希望通过 MVP 将开发者的声音反映到我们的技术路线图上。
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
OceanBase 入门到实战教程
立即下载
阿里云图数据库GDB,加速开启“图智”未来.ppt
立即下载
实时数仓Hologres技术实战一本通2.0版(下)
立即下载