一种视频大数据分布式解码的方法技术

技术编号:11120066 阅读:145 留言:0更新日期:2015-03-07 01:39
本发明专利技术公开了一种视频大数据分布式解码的方法,即基于Spark计算框架以及HDFS的视频大数据分布式解码方法,属于计算机领域。该方法主要包括如下步骤,步骤a:将海量视频文件直接上传至HDFS中进行存储;步骤b:自定义Spark的分片模型,该分片包含视频文件的头信息以及完整的视频关键帧边界;步骤c:构造Spark的分布式数据集HadoopRDD,自定义读取分片数据的方式;步骤d:在HadoopRDD的RDD转化中完成分布式解码;步骤e:在HadoopRDD的RDD动作中对解码后视频图像文件进行保存,用于后续的智能视频分析。

【技术实现步骤摘要】

本专利技术涉及一种计算机视频处理领域,特别是一种视频大数据分布式解码的方 法。
技术介绍
目前视频分析已然在学术以及现实生活中的一个热门领域,原因在于视频数据包 含了大量的有价值的信息,但是视频文件具有容量大,无法直接对其进行分析处理,需要对 视频文件进行解码,获得原始的视频图像帧后,再对图像帧进行分析,这必然涉及到传输、 存储以及解码等工作。
技术实现思路
专利技术目的:本专利技术提出了一种基于Spark计算框架以及HDFS的视频大数据分布式 解码的方法,解决了现有的海量视频分布式解码方法中存在的不足,有效提高了解码效率, 并且解码准确率达到接近100%。 为了解决上述技术问题,本专利技术公开了一种基于Spark计算框架以及HDFS的视频 大数据分布式解码方法,包括如下步骤: 步骤a :将海量(PB级以上)视频文件直接上传至HDFS中进行存储; 步骤b :定义Spark计算框架的分片模型(InputSplit),该分片包含视频文件的头 信息以及完整的视频关键帧边界; 步骤c :构造Spark的分布式数据集HadoopRDD,定义读取分片数据的方式; 步骤d :在分布式数据集HadoopRDD的transformation (RDD转化)中完成分布式 解码; 步骤e :在HadoopRDD的action (RDD动作阶段)中对解码后视频图像文件进行保 存,用于后续的智能视频分析。 本专利技术分布式计算是基于Spark,分布式存储是基于HDFS(HadoopDistributed File System, Hadoop分布式文件系统)。 所述步骤b中,根据Spark提供的API实现java类InputSplit的子类,该子类 不仅包含数据块在视频文件的起始位置、结束位置、主机信息,还包含视频文件头信息的 结束位置以及主机信息。自定义java类InputFormat类的子类,实现该子类的java类 getSplits方法,修改HDFS数据块(block)的分割方法,以视频图像帧作为分割边界,即对 于每个分割(Split),需判断该分割是否能够得到可解码的帧,从而解决了 HDFS现有分割 方法(按字节)导致的视频图像帧分裂进而无法解码的问题。 所述步骤c中,自定义java类RecordReader的子类,该子类的作用是自定义读 取分片数据的方式,并结合步骤b中自定义的InputFormat构造Spark的分布式数据集 HadoopRDD。 所述步骤d中,实现HadoopRDD的map转化,对每一个map输入,根据视频解码所 需的头信息,以及FFmpeg解码库实现对海量视频的分布式解码,并按照〈帧的播放时间,视 频中贞图像文件〉格式输出。实现HadoopRDD的reduce转化,对所有HadoopRDD的map转化 的输出结果按key (键)进行排序。 所述步骤e中,实现HadoopRDD的action动作,最后结果保存在指定路径下的 SequenceFileOlDFS提供的一种二进制存储文件)中,这些信息能够用于动态监测、前后景 监测、图像识别等智能视频分析。 相对于现有技术,本专利技术具有如下有益效果: 1.本专利技术将海量视频文件直接存储在HDFS中,不需要事先对视频大数据按分布 式文件系统的数据块进行分割,方便了海量视频的存储。 2.本专利技术自定义Spark的数据分片模型ImageInputSplit,继承抽象类 InputSplit,该类不仅包含数据块在视频文件的起始位置、结束位置、主机信息,还包含视 频文件头信息的结束位置以及主机信息。 3.本专利技术自定义InputFormat的子类,实现该子类的getSplits方法,修 改HDFS数据块(block)的分割方法,以视频图像帧作为分割边界,解决了帧分裂导致 视频图像帧缺失的问题。并且自定义分片(ImagelnputSplit)数据的读取方式,即自 定义 RecordReader 类,实现 InputFormat 的 createRecordReader 方法。从而保证了 ImagelnputSplit包含完整的视频关键巾贞边界,解决了传统分布式解码存在的巾贞分裂问题。 4?本专利技术根据以上所述构造Spark的分布式数据集HadoopRDD,通过map、reduce 等转化完成所有解码工作,最后通过action (动作)保存最终的视频图像文件。 本专利技术基于Spark和HDFS,将视频解码任务分发到由可以是较低配置的计算机组 成的集群环境中执行,既节约了系统运行成本,又提高了解码效率,同时解码后的视频图像 帧能够直接用于后续的智能视频分析。 本方法在对海量视频文件的解码过程进行创新,不同于传统的基于单机系统的方 法,本方法是面向海量视频文件的解码方法,同时也不同基于MR(Hadoop的分布式计算框 架Map Reduce)的分布式系统,本方法克服了 MR的性能瓶颈,特别是MR无法高效处理小文 件(小于 64M)的缺点。本方法还修改了 HDFS(Hadoop Distributed File System,Hadoop 分布式文件系统)的数据块(block)的分割策略,解决了帧分裂导致视频图像帧缺失的问 题。 【附图说明】 下面结合附图和【具体实施方式】对本专利技术做更进一步的具体说明,本专利技术的上述和 /或其他方面的优点将会变得更加清楚。 图1方法的整体结构图。 图2逻辑分割流程图。 图3逻辑分割示例图。 图4两种方法所用时间对比图。 【具体实施方式】 本专利技术公开了,即基于Spark计算框架以及 HDFS(HadoopDistributed File System,Hadoop分布式文件系统)的视频大数据分布式解 码方法,属于计算机领域。该方法主要包括如下步骤,步骤a :将海量视频文件直接上传至 HDFS中进行存储;步骤b :自定义Spark的分片模型(InputSplit),该分片包含视频文件的 头信息以及完整的视频关键巾贞边界;步骤c :构造Spark的分布式数据集HadoopRDD,自定 义读取分片数据的方式;步骤d :在HadoopRDD的transformation(RDD转化)中完成分布 式解码;步骤e :在HadoopRDD的action (RDD动作)中对解码后视频图像文件进行保存,用 于后续的智能视频分析。 具体而言,如图1所示,本专利技术提供一种新的视频大数据分布式解码方法,包括如 下步骤: 步骤a :将海量视频文件直接上传至HDFS中进行存储; 步骤b :自定义Spark的分片模型(InputSplit),该分片包含视频文件的头信息以 及完整的视频关键巾贞边界: bl :自定义Spark的分片模型(InputSplit),实现了用户自定义 的ImageInputSplit类,该类继承自抽象类InputSplit,自定义构造方法 ImageInputSpIit(Path file, longbIockStart, long blockLength,String[] blockLocations, long 本文档来自技高网...
一种<a href="http://www.xjishu.com/zhuanli/62/201410748160.html" title="一种视频大数据分布式解码的方法原文来自X技术">视频大数据分布式解码的方法</a>

【技术保护点】
一种视频大数据分布式解码的方法,其特征在于,包括如下步骤:步骤a:将海量视频文件直接上传至HDFS中进行存储;步骤b:定义Spark计算框架的分片模型,该分片包含视频文件的头信息以及完整的视频关键帧边界;步骤c:构造Spark计算框架的分布式数据集HadoopRDD,定义读取分片数据的方式;步骤d:在分布式数据集HadoopRDD的RDD转化中完成分布式解码;步骤e:在分布式数据集HadoopRDD的RDD动作阶段中对解码后视频图像文件进行保存,用于后续的智能视频分析。

【技术特征摘要】
1. 一种视频大数据分布式解码的方法,其特征在于,包括如下步骤: 步骤a :将海量视频文件直接上传至HDFS中进行存储; 步骤b :定义Spark计算框架的分片模型,该分片包含视频文件的头信息以及完整的视 频关键巾贞边界; 步骤c :构造 Spark计算框架的分布式数据集HadoopRDD,定义读取分片数据的方式; 步骤d :在分布式数据集HadoopRDD的RDD转化中完成分布式解码; 步骤e :在分布式数据集HadoopRDD的RDD动作阶段中对解码后视频图像文件进行保 存,用于后续的智能视频分析。2. 根据权利要求1所述一种视频大数据分布式解码的方法,其特征在于:所述步骤b 中,根据Spark提供的API实现InputSplit的子类,自定义InputFormat类的子类,实现 InputFormat类的子类的getSp 1 i ts方法,修改HDFS数据块的分割方法,以视频图像巾贞作为 分割边界,即对于每个分割,判断该分割是否能够得到可解码的帧;InputSplit子类包含 数据块在视频...

【专利技术属性】
技术研发人员:高翔宋智军曹博琦
申请(专利权)人:中国电子科技集团公司第二十八研究所
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1