[发明专利]基于OpenCL的VP8视频的帧间预测方法及系统在审
申请号: | 201710889891.4 | 申请日: | 2017-09-27 |
公开(公告)号: | CN107613298A | 公开(公告)日: | 2018-01-19 |
发明(设计)人: | 郭振华 | 申请(专利权)人: | 郑州云海信息技术有限公司 |
主分类号: | H04N19/176 | 分类号: | H04N19/176;H04N19/109;H04N19/423 |
代理公司: | 北京集佳知识产权代理有限公司11227 | 代理人: | 罗满 |
地址: | 450018 河南省郑州市*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 opencl vp8 视频 预测 方法 系统 | ||
技术领域
本发明涉及数据处理技术领域,特别涉及一种基于OpenCL的VP8视频的帧间预测方法、系统及计算机可读存储介质。
背景技术
随着移动互联网和社交网络的兴起,基于互联网和网络的视频数据规模呈指数级上涨。作为Google在2010年开源的一种全新的视频压缩格式,VP8提供了一种高质量、开放的开源视频压缩格式,能够在有限带宽情况下提供高质量的视频媒体传输,减少在网络中实时传输的视频数据量。
帧间预测是VP8视频压缩编码算法中的一种核心关键技术,在视频压缩编码过程中,相当一部分的比特花费在编码运动矢量上,尤其在低码率情况下预测帧中运动矢量的开销显得更加明显,而VP8提供了有效的运动矢量编码方案,通过重用邻近宏块的运动矢量信息,可以大大降低运动矢量的编码开销。
现有技术中,帧间预测的通常有两种实现方式,一种是常用的C语言实现,在基于冯诺依曼体系结构的CPU上串行执行,由于通用处理器串行执行方式的局限性,往往导致帧间预测的性能受限;另外一种是硬件实现,通过Verilog HDL等硬件语言设计的ASIC(Application Specific Integrated Circuit,集成电路)专用处理器进行视频数据的硬件实时解码,ASIC芯片由于专用的硬件电路设计,可以实现较高性能VP8视频解码,但是ASIC专用芯片不可复用和升级的特性,导致实现成本过高。因此,如何提供能够在提高帧间预测的性能的基础上,降低设计复杂度,减少成本,是现今急需解决的问题。
发明内容
本发明的目的是提供一种基于OpenCL的VP8视频的帧间预测方法、系统及计算机可读存储介质,以利用OpenCL(Open Computing Language,开放运算语言)实现FPGA(Field-Programmable Gate Array,现场可编程门阵列)对帧间预测的性能加速,提高帧间预测的性能。
为解决上述技术问题,本发明提供一种基于OpenCL的VP8视频的帧间预测方法,包括:
主机端通过OpenCL提供的写Buffer方式,将预测帧数据发送至FPGA板卡上的DDR内存;其中,所述预测帧数据为VP8视频数据流中的每一个预测帧的原始数据;
FPGA端利用OpenCL实现的帧间预测内核,采用预设预测模式对所述DDR内存中存储的所述预测帧数据中的每个宏块进行运功矢量预测,并将获取的所述预测帧数据中的每个宏块的运动矢量和采用的预测模式数据信息存储至所述DDR内存;
通过OpenCL提供的读Buffer方式,从所述DDR内存获取所述预测帧数据中的每个宏块的运动矢量和采用的预测模式数据信息。
可选的,所述预设预测模式,包括:NEARMV预测模式、NEARESTMV预测模式、ZEROMV预测模式、NEWMV预测模式和SPLITMV预测模式。
可选的,所述主机端通过OpenCL提供的写Buffer方式,将预测帧数据发送至FPGA板卡上的DDR内存之前,还包括:
主机端对所述VP8视频数据流进行解析,获取所述预测帧数据。
本发明还提供了一种基于OpenCL的VP8视频的帧间预测系统,包括:
主机端,用于通过OpenCL提供的写Buffer方式,将预测帧数据发送至FPGA板卡上的DDR内存;通过OpenCL提供的读Buffer方式,从所述DDR内存获取所述预测帧数据中的每个宏块的运动矢量和采用的预测模式数据信息;其中,所述预测帧数据为VP8视频数据流中的每一个预测帧的原始数据;
FPGA端,用于利用OpenCL实现的帧间预测内核,采用预设预测模式对所述DDR内存中存储的所述预测帧数据中的每个宏块进行运功矢量预测,并将获取的所述预测帧数据中的每个宏块的运动矢量和采用的预测模式数据信息存储至所述DDR内存。
可选的,所述FPGA端具体用于利用所述帧间预测内核,在所述FPGA中采用NEARMV预测模式、NEARESTMV预测模式、ZEROMV预测模式、NEWMV预测模式和SPLITMV预测模式对所述预测帧数据中的每个宏块进行运功矢量预测。
可选的,所述主机端还用于对所述VP8视频数据流进行解析,获取所述预测帧数据。
此外,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的基于OpenCL的VP8视频的帧间预测方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州云海信息技术有限公司,未经郑州云海信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710889891.4/2.html,转载请声明来源钻瓜专利网。