一种基于硬件加速卡的全景视频拼接系统及方法与流程

文档序号:15274268发布日期:2018-08-28 22:48阅读:789来源:国知局

本发明主要涉及计算机视觉领域,数据全景视频监控领域,特别是涉及一种基于硬件加速卡的全景视频拼接系统。



背景技术:

全景视频拼接系统利用多个固定摄像机从不同视角对同一场景进行拍摄,根据图像间的相关性,通过视频图像拼接技术产生比单个图像具有更宽视野和更高分辨率的图像,从而实现对大型场景的360°无盲区监控。

全景视频是监控领域的一个全新的方向,它可以通过鱼眼镜头、广角摄像机等方法实现,但均存在缺陷,前者显示后的图像变形严重,而后者造价高昂,角度有限,不能实现远距离全景监控。一个镜头不能实现高性能、高效率的全景监控,那么通过多个镜头获取同一场景、不同角度的画面,然后利用不同帧图像之间的相关性,通过各种途径,最终拼接成一幅高分辨率的全景图,成为当下研究的热点。

全景视频拼接的主要步骤包括图像采集、图像预处理、图像配准、图像融合以及图像显示。其中图像配准和图像融合是拼接的关键,直接影响了图像最终显示的效果和拼接效率。目前,视频拼接的方法主要纯软件实现。纯软件实现全景视频拼接较为简单,但现如今视频的数据量较大,分辨率也在逐渐提升,市场上主流的计算机性能难以满足实时拼接要求,造成拼接后显示的画面延时很大。



技术实现要素:

有鉴于此,本发明的目的在于提供一种基于硬件加速卡的全景视频拼接系统及方法,该系统包括摄像单元、硬件加速卡单元和主控单元。所述方法为由硬件加速卡接收4路来自前端摄像机采集到的视频信号,通过arm和dsp之间的协同作用,植入基于linux系统的视频拼接算法,对4路视频源进行初步拼接后,通过pci-e将初步拼接后的数据传输给主控计算机,主控计算机会利用gpu加速将硬件加速卡之间的视频数据作进一步拼接,并进行全景显示。该系统充分利用了dsp强大的数据处理能力,gpu并行处理数据的能力,以及pci-e高性能数据传输以及多卡协同合作的结构,高效的完成了高清视频之间的拼接融合。

为了实现上述目的,本发明采取的技术方案如下:

本发明公开的一种基于硬件加速卡的全景视频拼接系统,所述系统包括摄像单元、硬件加速单元以及主控单元,各单元之间的关系为摄像单元为多路可选的前段摄像机获取视频源,并将视频源传输至硬件加速单元;硬件加速单元获取的高清视频源后进行初步拼接后通过pci-e总线传输至主控单元;主控单元接收pci-e总线传输的视频源数据进行最终的拼接处理,并进行全景显示。

在上述技术方案中,所述摄像单元中,包括多路可选前端摄像机,按照扇形的排列方式排布,各路摄像头固定在同一平面,且各路摄像头之间的夹角α为45°,每4路视频源传输至一个硬件加速单元中。

在上述技术方案中,所述硬件加速单元,包括视频采集模块、硬件加速卡模块、实时拼接模块以及视频压缩存储模块;

其核心部件为dm8168芯片,在该加速卡植入基于dsp优化的拼接算法,结合该芯片数据处理能力,将从摄像模块中获取的高清视频源进行初步拼接,视频源数量的增减对应于硬件加速模块的增减。

在上述技术方案中,所述主控模块中的计算机带有高性能显卡gpu,此单元中视频拼接功能由计算机的cpu和gpu协同作用完成,cpu通过调用pci-e协议的驱动接口函数控制硬件加速卡接收到数据并传输到指定的缓存区域,gpu完成视频数据的并行运算。

在上述技术方案中,所述硬件加速单元与主控单元、主控单元cpu与gpu之间,均通过pci-e高速协议进行通信,pci-e可以实现1gbytes/s的数据传输速度。

本发明还公开一种基于硬件加速卡的全景视频拼接方法,所述方法步骤如下:1)通过多路摄像机获取视频源,将视频源数据传输到硬件加速卡中;2)硬件加速卡对获取的视频源进行校正、投影变换以及拼接操作后,通过pci-e总线传输至主控计算机;3)主控计算机对获取的视频数据进行最终拼接,并进行显示。

在上述技术方案中,所述步骤1)中,前端摄像机多路可选,按照扇形的排列方式排布,各路摄像头固定在同一平面,且各路摄像头之间的夹角α为45°,每4路视频源传输至一个硬件加速卡中。

在上述技术方案中,所述步骤2)所述硬件加速卡的核心为dm8168芯片,在该加速卡中植入基于dsp优化的拼接算法,结合该芯片数据处理能力,经过视频采集、实时拼接以及视频压缩将从摄影机获取的高清视频源进行初步拼接。

在上述技术方案中,所述主控计算机带有高性能显卡gpu,视频拼接功能由此计算式的cpu和gpu协同作用完成,cpu通过调用pci-e协议的驱动接口函数控制硬件加速卡接收到数据并传输到指定的缓存区域,gpu加速完成视频数据的并行运算。

在上述技术方案中,所述硬件加速卡与主控计算机、主控计算机的cpu与gpu之间,均通过pci-e高速协议进行通信,pci-e可以实现1gbytes/s的数据传输速度。

本发明一种基于硬件加速卡的全景视频拼接系统及方法的有益效果是:运行效率高,数据处理和传输速度快,该系统充分利用了dm8168的数据处理能力,gpu并行计算,以及pci-e高速串行总线,充分保证了高清视频全景显示的实时性。该系统对于每个硬件加速卡只处理4路视频数据,视频源数量的增减,只需相应增加硬件加速卡的数量,保证了应用的可扩展性。

附图说明

图1为本发明基于硬件加速卡的全景视频拼接系统硬件组成框图;

图2为本发明基于硬件加速卡的全景视频拼接系统前端结构设计框图;

图3为本发明基于硬件加速卡的全景视频拼接系统硬件加速卡工作原理示意图;

图4为本发明基于硬件加速卡的全景视频拼接系统硬件加速单元与主控单元之间数据传输原理示意图;

图5为本发明基于硬件加速卡的全景视频拼接示意图。

具体实施方式

下面结合附图对本发明作进一步详细描述

如图1-图5所示,一种基于硬件加速卡的全景视频拼接系统包括以下单元:摄像单元、硬件加速单元以及主控单元。

第一摄像单元

多路可选的前段摄像机获取视频源,并将视频源传输至硬件加速单元;

其中,前端高清摄像机多路可选,对摄像机的分辨率、焦距以及视场角没有特殊要求,多路摄像机按照扇形的排列方式排布,各路摄像头固定在同一平面,且各路摄像头之间的夹角α为45°,视频数据通过网络或bnc接口(一种用于同轴电缆的接头)传输至硬件加速卡。

具体的,高清摄像机对同一场景的不同角度进行拍摄,两台摄像机间的重叠角度保持在20°左右,并处于同一水平面上,调整每个摄像机的分辨率和视场角一样,以任意一台摄像机为基准,以此编号为001、002、003……,将001~004接入第一个硬件加速卡,005~008接入第二个硬件加速卡,依此类推,不足4路的接入最后一个硬件加速卡。

第二硬件加速单元

获取的高清视频源后进行初步拼接后通过pci-e总线传输至主控单元;

其中,如图4所示硬件加速卡的核心为ti的dm8168开发板,该开发板集成了视频采集、视频显示、编解码等相关模块,运用了arm(处理器)和dsp(数字信号处理)的架构,大大提升了其数据处理的能力。具体为开发板内嵌主频为1.2ghz的arm核,运行基于linux操作系统的视频拼接应用程序,视频数据的处理由加速卡中的dsp内核执行,而arm负责对dsp进行协同管理和控制工作,它们之间的协同工作通过dsp优化后的视频拼接算法植入dm8168,由dm8168的数字视频软件开发包(dvrdk)提供的codecengine软件模块来完成,一个硬件加速卡处理4路视频源,视频源数量的增减只需要增加相应硬件加速卡的数量即可,经过一系列的处理后,最终将所接收的所有数据拼接成一个完整的画面。

视频数据初步拼接处理完成后,硬件加速卡会接收主控单元发送过来的数据传输准备命令,通过pci-e总线,将数据传输到主控单元。

第三主控单元

主控单元接收pci-e总线传输的视频源数据进行最终的拼接处理,并进行全景显示。

主控单元中包括一台带显卡的高性能计算机,此计算机预装win7操作系统,运行集成采集、拼接以及显示功能的应用程序,该运用程序通过调用pci-e协议的驱动接口函数实现对硬件加速卡的控制,从硬件加速卡模块中获取视频数据。

其中,该单元中的视频拼接功能是高性能计算机cpu(处理器)和gpu(图像处理器)协同作用完成的,两者之间的数据交互,也是通过pci-e互联实现。

gpu主要完成大量视频数据的并行运算,cpu控制接收到的数据并传输到指定的缓存区域中,并通过配置cuda(通用计算设备架构)的开发环境以及有关gpu函数接口的调用,将视频数据传输至gpu端并行拼接处理,gpu完成拼接处理后,将视频数据传输至cpu进行全景显示。

主控单元与用户交互的软件程序,程序中不仅集成了对整个系统控制的所有操作,包括视频源的选择、拼接参数的设置以及显示模式的设置等,当用户搜索到硬件加速卡时,可以选择相邻的硬件加速卡进入拼接系统。

本发明还公开一种基于硬件加速卡的全景视频拼接方法,所述方法步骤如下:

步骤1)通过多路摄像机获取视频源,将视频源数据传输到硬件加速卡中;

步骤2)硬件加速卡对获取的视频源进行校正、投影变换以及拼接操作后,通过pci-e总线传输至主控计算机;

步骤3)主控计算机对获取的视频数据进行最终拼接,并进行显示。

所述步骤1)中,前端摄像机多路可选,按照扇形的排列方式排布,各路摄像头固定在同一平面,且各路摄像头之间的夹角α为45°,每4路视频源传输至一个硬件加速卡中。

所述步骤2)所述硬件加速卡的核心为dm8168芯片,在该加速卡中植入基于dsp优化的拼接算法,结合该芯片强大的数据处理能力,经过视频采集、实时拼接以及视频压缩将从摄像机中获取的视频源进行初步拼接。

所述步骤3)中,所述主控计算机带有高性能显卡gpu,视频拼接功能由此计算式的cpu和gpu协同作用完成,cpu通过调用pci-e协议的驱动接口函数控制硬件加速卡接收到数据并传输到指定的缓存区域,gpu加速完成视频数据的并行运算。

所述硬件加速卡与主控计算机、主控计算机的cpu与gpu之间,均通过pci-e高速协议进行通信,pci-e可以实现1gbytes/s的数据传输速度。

以上方法实施例与系统实施例是一一对应的,方法实施例简略之处,参见系统实施例即可。

说明书中未阐述的部分均为现有技术或公知常识。本实施方式仅用于说明该发明,而不用于限制本发明的范围,本领域技术人员对于本发明所做的等价置换等修改均认为是落入该发明权利要求书所保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1