CN105827976A - 基于gpu的视频采集与处理装置及系统 - Google Patents

基于gpu的视频采集与处理装置及系统 Download PDF

Info

Publication number
CN105827976A
CN105827976A CN201610266790.7A CN201610266790A CN105827976A CN 105827976 A CN105827976 A CN 105827976A CN 201610266790 A CN201610266790 A CN 201610266790A CN 105827976 A CN105827976 A CN 105827976A
Authority
CN
China
Prior art keywords
video
gpu
processing
video acquisition
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201610266790.7A
Other languages
English (en)
Inventor
冯伟明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Brisky Technology Development Co Ltd
Original Assignee
Beijing Brisky Technology Development Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Brisky Technology Development Co Ltd filed Critical Beijing Brisky Technology Development Co Ltd
Priority to CN201610266790.7A priority Critical patent/CN105827976A/zh
Publication of CN105827976A publication Critical patent/CN105827976A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof
    • H04N23/81Camera processing pipelines; Components thereof for suppressing or minimising disturbance in the image signal generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/62Text, e.g. of license plates, overlay texts or captions on TV images
    • G06V20/625License plates

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Human Computer Interaction (AREA)
  • Image Processing (AREA)

Abstract

本发明涉及一种基于GPU的视频采集与处理装置及系统,该装置包括:至少一个并行工作的视频采集与处理单元,每个视频采集与处理单元包括:视频采集模块,针对与所述视频采集与处理单元相对应的视频获取部件所获取的视频流信息生成视频帧;视频处理模块,与所述视频采集模块连接,对所生成的视频帧进行至少一种处理并生成结果数据,所述视频处理模块针对各处理分别调用基于图形处理器GPU的处理接口以进行并行处理;以及数据发送模块,与所述视频处理模块连接,将来自所述视频处理模块的结果数据发送到服务器。本发明实施例的装置在提高了视频分析处理实时性的同时,节省了用于远程视频数据传输的传输带宽。

Description

基于GPU的视频采集与处理装置及系统
技术领域
本发明涉及视频领域,尤其涉及一种基于GPU(GraphicsProcessingUnit,图形处理器)的视频采集与处理装置及系统。
背景技术
近年来,随着计算机和网络技术的发展,远程视频采集与处理技术也得到了进步,视频采集与处理系统已在交通、安防等领域取得了广泛的应用。目前,现有的频采集与处理系统是把前端的原始视频通过网络直接输入到后端服务器,然后由后端服务器进行视频分析,这种方式主要存在以下问题:一是需要从前端到后端传输大量原始视频数据,占用大量网络带宽;二是存在一定的视频分析处理的延迟。
发明内容
技术问题
有鉴于此,本发明要解决的技术问题是,视频传输占用的传输带宽过大和视频分析处理的延迟过大。
解决方案
为了解决上述技术问题,提出一种基于GPU的视频采集与处理装置,包括至少一个并行工作的视频采集与处理单元,每个视频采集与处理单元包括:视频采集模块,针对与所述视频采集与处理单元相对应的视频获取部件所获取的视频流信息生成视频帧;视频处理模块,与所述视频采集模块连接,对所生成的视频帧进行至少一种处理并生成结果数据,所述视频处理模块针对各处理分别调用基于图形处理器GPU的处理接口以进行并行处理;以及数据发送模块,与所述视频处理模块连接,将来自所述视频处理模块的结果数据发送到服务器。
在一个示例中,所述视频采集模块针对所述相对应的视频获取部件建立独立的视频采集线程,以根据所述相对应的视频获取部件所获取的视频流信息生成视频帧;所述视频处理模块针对所述相对应的视频获取部件建立独立的视频处理线程,以对所生成的视频帧进行至少一种处理并生成结果数据;所述数据发送模块针对所述相对应的视频获取部件建立独立的数据发送线程,以将来自所述视频处理模块的结果数据发送到服务器。
在一个示例中,所述视频处理模块,包括:判断子模块,用于判断所述视频采集模块所生成的视频帧是否需要进行预处理;预处理子模块,用于在所述视频采集模块所生成的视频帧需要进行预处理的情况下,对所述视频帧先进行至少一种预处理;处理子模块,用于对经过预处理的视频帧进行所述处理并生成结果数据,其中,所述预处理子模块对各预处理分别调用基于GPU的预处理接口以进行并行处理。
在一个示例中,所述基于GPU的处理接口包括:基于GPU的人脸识别处理接口、基于GPU的车牌识别处理接口、和基于GPU的视频摘要处理接口中的一个或多个。
在一个示例中,所述基于GPU的预处理接口包括:基于GPU的去噪预处理接口、基于GPU的锐化预处理接口、基于GPU的去雾预处理接口、和基于GPU的夜间增强预处理接口中的一个或多个。
在一个示例中,所述视频处理模块,还包括:并行处理子模块,用于响应于对各基于GPU的预处理接口或处理接口的调用,对每个所述预处理或者所述处理进行基于GPU的并行化处理,所述并行处理子模块包括:定位单元,用于定位所述预处理或者所述处理中耗时多的性能瓶颈部位;划分单元,用于将所述性能瓶颈部位划分成包含至少一层循环体的单独模块;复制单元,用于将内存中所述循环体涉及的输入、输出数据复制到GPU显存;运算单元,用于编写GPU设备核心函数替换所述的单独模块,利用所述GPU显存中的输入、输出数据进行GPU运算,并将运算结果复制回所述内存。
为了解决上述技术问题,提出一种基于GPU的视频采集与处理系统,包括:上述的基于GPU的视频采集与处理装置;至少一个视频获取部件,各视频获取部件与所述视频采集与处理装置中的相对应的视频采集与处理单元的视频采集模块连接,用于为所述视频采集模块提供视频流信息;以及服务器,分别与所述视频采集与处理装置中的各视频采集与处理单元通信连接。
在一个示例中,所述服务器包括:数据接收模块,分别与各视频采集与处理单元的数据发送模块连接,用于接收所述数据发送模块发送的所述结果数据;数据存储模块,与所述数据接收模块连接,用于存储所述的结果数据。
在一个示例中,所述服务器还包括:数据检索模块,与所述数据接收模块和/或所述数据存储模块连接,用于针对所述数据接收模块所接收的结果数据和/或所述数据存储模块所存储的结果数据进行检索,生成检索信息。
在一个示例中,所述服务器还包括:数据显示模块,与所述数据接收模块、所述数据存储模块和所述数据检索模块中的一个或多个连接,用于显示所述数据接收模块所接收的结果数据、所述数据存储模块所存储的结果数据和所述检索信息中的一个或多个。
有益效果
本发明实施例的基于GPU的视频采集与处理装置可应用于视频采集前端,通过为各视频获取部件设立并行工作的视频采集与处理单元,而且每个视频采集与处理单元包括视频采集模块、视频处理模块和数据发送模块,每个视频处理模块分别调用基于GPU的处理接口对视频帧进行并行处理,并且每个数据发送模块可将分析处理后结果数据并行发送到服务器。通过上述并行处理的技术手段,相比于现有的视频采集与处理系统,本发明实施例在前端高效地完成了视频采集和处理,并将处理后的结果数据而非采集的原始数据发送给服务器,由此提高了视频分析处理实时性的同时,节省了用于远程视频数据传输的传输带宽。
根据下面参考附图对示例性实施例的详细说明,本发明的其它特征及方面将变得清楚。
附图说明
包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本发明的示例性实施例、特征和方面,并且用于解释本发明的原理。
图1示出根据本发明一实施例的基于GPU的视频采集与处理装置的结构图;
图2示出根据本发明一实施例的基于GPU的视频采集与处理装置的多线程工作的示意图;
图3示出根据本发明一实施例的基于GPU的视频采集与处理装置的视频采集线程的处理流程图;
图4示出根据本发明一实施例的视频采集与处理单元的结构图;
图5示出根据本发明一实施例的视频处理线程中的视频处理流程图;
图6示出根据本发明一实施例的去噪预处理的流程图;
图7示出根据本发明一实施例的锐化预处理的流程图;
图8示出根据本发明一实施例的去雾预处理的流程图;
图9示出根据本发明一实施例的间增强预处理的流程图;
图10示出根据本发明一实施例的人脸检测的流程图;
图11示出根据本发明一实施例的人脸识别的流程图;
图12示出根据本发明一实施例的人脸识别库建立的流程图;
图13示出根据本发明一实施例的车牌识别处理的流程图;
图14示出根据本发明一实施例的基于GPU的并行化处理的流程图;
图15示出根据本发明另一实施例的基于GPU的视频采集与处理系统的结构图;
图16示出根据本发明另一实施例的基于GPU的视频采集与处理系统的另一结构图;
图17示出根据本发明另一实施例的建立通信连接的流程图;
图18示出根据本发明另一实施例的发送结果数据到服务器的流程图。
具体实施方式
以下将参考附图详细说明本发明的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
另外,为了更好的说明本发明,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本发明同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本发明的主旨。
实施例1
图1示出根据本发明一实施例的基于GPU的视频采集与处理装置10的结构图。如图1所示,该装置10主要包括:至少一个并行工作的视频采集与处理单元20,每个视频采集与处理单元20包括:视频采集模块21,针对与所述视频采集与处理单元相对应的视频获取部件所获取的视频流信息生成视频帧;视频处理模块22,与视频采集模块21连接,对所生成的视频帧进行至少一种处理并生成结果数据,视频处理模块22针对各处理分别调用基于图形处理器GPU的处理接口以进行并行处理;数据发送模块23,与视频处理模块22连接,将来自视频处理模块22的结果数据发送到服务器。
本发明实施例的基于GPU的视频采集与处理装置可应用于视频采集前端,通过为各视频获取部件设立并行工作的视频采集与处理单元,而且每个视频采集与处理单元包括视频采集模块、视频处理模块和数据发送模块,每个视频处理模块分别调用基于GPU的处理接口对视频帧进行并行处理,并且每个数据发送模块可将分析处理后结果数据并行发送到服务器。通过上述并行处理的技术手段,相比于现有的视频采集与处理系统,本发明实施例在前端高效地完成了视频采集和处理,并将处理后的结果数据而非采集的原始数据发送给服务器,由此提高了视频分析处理实时性的同时,节省了用于远程视频数据传输的传输带宽。
图2示出根据本发明一实施例的基于GPU的视频采集与处理装置10的多线程工作的示意图。
在一个示例中,如图2所述,视频采集模块21可针对相对应的视频获取部件建立独立的视频采集线程,以根据该相对应的视频获取部件所获取的视频流信息生成视频帧;视频处理模块22可针对相对应的视频获取部件建立独立的视频处理线程,以对所生成的视频帧进行至少一种处理并生成结果数据;数据发送模块23可针对相对应的视频获取部件建立独立的数据发送线程,以将来自视频处理模块的结果数据发送到服务器。
以通过Nvidia公司的基于GPU的JESTONTK1型嵌入式计算机(以下简称TK1计算机)来实现基于GPU的视频采集与处理装置10为例,TK1计算机可包括多个并行工作的视频采集与处理单元20,视频获取部件可以为摄像机,例如球型摄像机(以下简称球机)或者枪型摄像机(以下简称枪机)。通常,用于人脸识别的摄像机一般选择球机,用于车牌识别的摄像机一般选择枪机。一个TK1计算机可以连接多个摄像机,每个摄像机可进行视频采集,为与每个摄像机连接的视频采集与处理单元20中的视频采集模块21提供视频流信息。每个视频采集与处理单元20可包括三个模块:视频采集模块21、视频处理模块22、数据发送模块23。可通过视频采集和视频处理的分离,做到了视频采集和视频处理互不影响,为视频处理分析的并行打下基础。
视频采集模块21可为每个(或根据需要分组后的每组)连接到TK1计算机的摄像机建立一个独立的视频采集线程进行采集,如图2所示,视频采集线程可通过H.264协议同摄像机进行通信,可采用FFMPEG(FastForwardMPEG)软件接口,每个视频采集线程可为其对应的视频建立多个缓冲区,持续不断地采集视频帧并把这些视频帧放入缓冲区。图3示出根据本发明一实施例的基于GPU的视频采集与处理装置的视频采集线程的处理流程图。如图3所示,视频采集线程可采用FFMPEG库进行视频的采集。首先可进行FFMPEG解码器的注册以及FFMPEG注册,然后可寻找FFMPEGH.264解码器并打开FFMPEGH.264解码器,然后可用FFMPEG打开摄像机并获取视频流信息,选取视频流,把视频流信息写入FFMPEG解码器上下文,根据FFMPEG解码器上下文获取视频帧转换信息,可分配视频帧接收缓冲区,然后可进行视频采集循环:读取一原始帧到原始帧接收缓冲区,然后解码原始视频帧,解码后得到RGB24(RedGreenBlue24)格式视频帧,可把RGB24格式视频帧写入与数据处理线程共享的缓冲区,并可通知数据处理线程有新的视频帧已经采集到。
视频处理模块22可为每个(或根据需要分组后的每组)摄像机建立一个独立的视频处理线程,如图2所示,此视频处理线程总是拿到此摄像机对应的视频采集线程采集的最新的视频帧,并进行处理分析,处理过程中可调用基于GPU的处理接口,针对每种处理,系统都提供了基于GPU的处理接口,通过针对各处理分别调用相应的处理接口,可并行执行各处理。由于为每个摄像机分配一个视频采集线程,一个视频处理线程,大大提高了多路视频处理的并行性和实时性,而且每个视频处理线程所调用的基于GPU的处理接口实现了每次单元视频帧处理的高并发和高吞吐量,相比于在CPU(CentralProcessingUnit,中央处理器)模式下极大地节省了处理时间,确保了在嵌入式计算机中进行视频分析处理的实时性。
数据发送模块23可为每个(或根据需要分组的每组)摄像机建立了一个数据发送线程,可把对应到此摄像机的视频分析和处理线程中的结果数据发送到服务器,这种每个(或每组)摄像机一个单独的数据发送线程也极大地增强了多路视频的结果数据发送的并发和实时性。数据发送线程可采用套接字同服务器进行连接并发送结果数据。
图4示出根据本发明一实施例的视频采集与处理单元20的结构图。
在一个示例中,如图4所示,视频处理模块22可包括:判断子模块221,可用于判断所述视频采集模块21所生成的视频帧是否需要进行预处理;预处理子模块222,可用于在所述视频采集模块21所生成的视频帧需要进行预处理的情况下,可对所述视频帧先进行至少一种预处理,处理子模块223,可用于对经过预处理的视频帧进行所述处理并生成结果数据,其中,所述预处理子模块222对各预处理可分别调用基于GPU的预处理接口以进行并行处理。通过在对视频帧进行处理之前,根据需要进行适当的预处理,可以进一步提高处理质量和效率。
在视频处理模块22针对相对应的视频获取部件建立独立的视频处理线程的情况下,可通过上述判断子模块221、预处理子模块222、和处理子模块223来实现视频处理线程的处理过程。图5示出根据本发明一实施例的视频处理线程中的视频处理流程图。视频处理线程可循环地执行图5所示的过程:根据最新帧所在的位置,读取在与视频采集线程共享的缓冲区中的最新视频帧,然后依据视频帧的情况(例如,视频帧的图像有噪点或曝光不足时)判断是否需要某种或者几种预处理(可由判断子模块221进行判断),如果需要则可调用预处理接口进行预处理(可由预处理子模块222进行预处理),预处理完毕后,进行处理(可由处理子模块223进行处理),处理完毕后,可把需要发送给服务器端的结果数据存储入与数据发送线程共享的缓冲区,并可通知数据发送线程进行发送。
在一个示例中,所述基于GPU的预处理接口可包括:基于GPU的去噪预处理接口、基于GPU的锐化预处理接口、基于GPU的去雾预处理接口、和基于GPU的夜间增强预处理接口中的一个或多个。举例而言,视频帧的处理可经过两个阶段:一是预处理阶段,二是处理阶段。预处理阶段可包括去噪预处理,去雾预处理,锐化预处理,夜间增强预处理等。为了提高视频处理的质量,可先进行预处理。例如,当视频帧的图像中有噪点存在时,可先进行去噪预处理;当是有雾的天气时,可先进行去雾预处理,在夜间时,可先进行夜间增强预处理,也可以针对某个视频帧进行多种预处理,例如对某个视频帧先进行夜间增强预处理,然后再进行去噪预处理。
举例而言,调用基于GPU的去噪预处理接口可进行如图6所示的去噪预处理,可首先获取视频帧的RGB图像,将所述RGB图像转为灰度图像;接着可判断噪声所在行列号;然后可对判定为噪声的像元进行邻域中值滤波;最后可获取滤波后的RGB图像。
调用基于GPU的锐化预处理接口可进行如图7所示的锐化预处理,可首先获取视频帧的RGB图像,接着可扩展所述RGB图像;对所扩展的RGB图像进行卷积;然后可采用线性二阶微分Laplacian算子对所卷积的RGB图像进行锐化;最后可获取锐化后的RGB图像。
调用基于GPU的去雾预处理接口可进行如图8所示的去雾预处理,可首先获取视频帧的RGB图像,以暗原色先验知识作为约束条件,从有雾的所述RGB图像中恢复场景辐射、大气光和透射率;接着可估算出成像时刻的雾浓度;然后可采用包滤波器减小或去除雾影响;获取去雾处理后的RGB图像。
调用基于GPU的夜间增强预处理接口可进行如图9所示的夜间增强预处理,可首先获取视频帧的RGB图像,扩展所述RGB图像;接着可对所扩展的RGB图像进行卷积及高斯滤波;对高斯滤波后的RGB图像进行引导滤波;最后可获取引导滤波后的RGB图像。
在一个示例中,所述基于GPU的处理接口可包括:基于GPU的人脸识别处理接口、基于GPU的车牌识别处理接口、和基于GPU的视频摘要处理接口中的一个或多个。调用上述接口,可进行人脸识别处理、车牌识别处理和摘要处理等。人脸识别处理可从视频帧的图像中找到并识别出人脸,并可获得与人脸相对应的编号;车牌识别处理可识别出车牌号码;摘要处理可从若干视频帧中选取出摘要帧,这些处理都可生成最终的结果数据。
举例而言,调用基于GPU的人脸识别处理接口进行人脸识别处理可先进行人脸检测,然后再进行人脸识别。人脸检测的一个示例性的处理过程如图10所示,可首先获取视频帧的RGB图像,将所述RGB图像变为灰度图像;接着可调整所述灰度图像的大小;然后可利用级联分类器方法获取人脸所在的矩形;最后可获取人脸图像部分,生成待识别的头片图像。人脸识别的一个示例性的处理过程如图11所示,可首先获取待识别的头片图像;然后可将所述头片图像转为灰度图像;调整所述灰度图像的大小;接着可采用特征脸算法进行识别;最后可得到人脸识别代码。进行人脸识别处理依赖于已经训练好的人脸识别库,人脸识别库建立的流程如图12所示,可首先获取待训练的头片图像;将所述头片图像转为灰度图像;然后可调整所述灰度图像的大小;最后可采用特征脸算法进行训练;如果还有人脸图片需要训练,可重复上述过程。在人脸识别库建立完成后,便可以进行人脸识别。
调用基于GPU的车牌识别处理接口可进行如图13所示的车牌识别处理,可首先获取视频帧的RGB图像,对所述RGB图像进行HSV滤波;接着可对滤波后的RGB图像进行去噪;对去噪后的RGB图像进行边缘检测;获得车牌在RGB图像中矩形位置;最后可利用OCR算法获取车牌号码。
本领域技术人员应理解,以上各种预处理、处理及其各自的示例性处理过程仅仅是出于举例说明的目的,而非以任何形式限制本发明。
在一个示例中,如图4所示,视频处理模块22还可包括:并行处理子模块224,可用于响应于对各基于GPU的预处理接口或处理接口的调用,对每个所述预处理或者所述处理进行基于GPU的并行化处理。并行处理子模块224可包括:定位单元2241,可用于定位所述预处理或者所述处理中耗时多的性能瓶颈部位;划分单元2242,可用于将所述性能瓶颈部位划分成包含至少一层循环体的单独模块;复制单元2243,可用于将内存中所述循环体涉及的输入、输出数据复制到GPU显存;运算单元2244,可用于编写GPU设备核心函数替换所述的单独模块,利用所述GPU显存中的输入、输出数据进行GPU运算,并将运算结果复制回所述内存。并行处理子模块224可对每个预处理或者处理进行如图14所示的基于GPU的并行化处理,可首先定位处理或者预处理中耗时最多的性能瓶颈部位(可由定位单元2241实现);然后可将所述性能瓶颈部分独立成包含至少一层(例如1至3层)循环体的单独模块(可由划分单元2242实现);接着可将内存中所述循环体涉及的输入、输出内存数据复制到GPU显存(可由复制单元2243实现);编写GPU设备核心函数kernel替换所述单独模块,利用所述GPU显存中的输入、输出数据进行GPU运算,最后可将GPU运算结果复制回所述内存(可由运算单元2244实现),其中,针对所述核心函数kernel所涉及的输入、输出数据可进行对齐和合并访问等性能优化。对上述预处理和处理进行基于GPU的并行化处理后,预处理和处理的性能比未并行化处理前有大幅提升。例如,针对于1280*720格式标准的图像,去噪预处理处理的时间可由52ms减少到8.7ms,锐化预处理的时间可由132ms减少到9.3ms,夜间增强预处理的时间可由1430ms减少到47ms,去雾预处理的时间可由2700ms减少到68ms,人脸识别处理的时间可由121ms减少到21ms,车牌识别处理的时间可由135ms减少到31ms。通过基于GPU的并行化处理后,视频分析处理实时性获得极大地提高。
实施例2
图15示出根据本发明另一实施例的基于GPU的视频采集与处理系统30的结构图。如图15所示,基于GPU的视频采集与处理系统30包括:实施例1中所述的基于GPU的视频采集与处理装置10,至少一个视频获取部件31,各视频获取部件31与所述视频采集与处理装置10中的相对应的视频采集与处理单元20的视频采集模块21连接,用于为视频采集模块21提供视频流信息,服务器32,分别与视频采集与处理装置10中的各视频采集与处理单元20通信连接。
在一个示例中,视频获取部件31可以为摄像机,例如球机或者枪机。视频采集与处理单元20可以通过TK1计算机实现,TK1计算机可对多个摄像机采集的视频流信息进行并行分析处理后,将结果数据并行发送给服务器。
图16示出根据本发明另一实施例的基于GPU的视频采集与处理系统30的另一结构图。
在一个示例中,服务器32可包括:数据接收模块321,分别与各视频采集与处理单元20的数据发送模块23连接,可用于接收数据发送模块23发送的结果数据;数据存储模块322,与所述数据接收模块321连接,可用于存储结果数据。
举例而言,数据发送模块23与服务器32中的数据接收模块321可建立通信连接。通信连接的流程如图17所示,数据发送模块23可首先在数据发送线程中生成套接字,并按照TK1计算机的IP和与数据发送线程对应的摄像机的端口号进行初始化,然后可监听来自后端的服务器的连接请求,如果有请求针对于该IP地址和端口号,则可建立连接。数据发送线程发送结果数据到服务器的流程如图18所示,当数据发送线程收到前端的视频处理线程的通知(即有新的结果数据需要发送给服务器)后,数据发送模块23便利用与服务器32建立的套接字连接,把结果数据发送给服务器。
数据存储模块322可以为数据库,例如MYSQL数据库或者Oracle数据库,用来存储接收到的结果数据。
在一个示例中,服务器32还可包括:数据检索模块323,与数据接收模块321和/或数据存储模块322连接,可用于针对数据接收模块321所接收的结果数据和/或数据存储模块322所存储的结果数据进行检索,并可生成检索信息。
在一个示例中,服务器32还可包括:数据显示模块324,与数据接收模块321、数据存储模块322和数据检索模块323中的一个或多个连接,可用于显示数据接收模块321所接收的结果数据、数据存储模块322所存储的结果数据和检索信息中的一个或多个。
举例而言,在重要的交通路口可部署几部枪机作为视频获取部件31,可部署TK1计算机来实现基于GPU的视频采集与处理装置10,然后启动本系统,可在某综合大楼里部署后端的服务器32。服务器可根据TK1计算机的IP地址和每台枪机对应的端口号,与TK1计算机进行连接。TK1计算机可对每台枪机开启视频采集线程进行视频采集,同时开启视频处理线程。如果是大雾天气,可对采集到视频先进行去雾预处理,然后进行车牌识别处理,可把进入违规区域的车牌号分析出来,并可通过启动的数据发送线程把违规的车牌号发送到后端的服务器,后端的服务器的数据接收线程可接收到违规的车牌号,把违规的车牌号违规记录存储入数据存储模块322(例如MySQL数据库),以备以后查询。数据检索模块323可在MySQL数据库中检索出车牌号对应的车主及其联系方式等信息,可将所述信息发送至数据显示模块324,数据显示模块324可将接收到的信息显示出来,从而方便相关人员进行进一步处理。
举例而言,可在火车站候车大厅安装多个球机作为视频获取部件31,可部署TK1计算机来实现基于GPU的视频采集与处理装置10,然后启动本系统,可在火车站驻守的公共安全机关的某个应急响应房间里部署服务器32,服务器可根据TK1计算机的IP地址和每台球机对应的端口号,与TK1计算机进行连接。TK1计算机可对每台球机开启视频采集线程进行视频采集,同时可开启视频处理线程,进行人脸识别处理,识别目的可以是识别出全国的流窜作案的犯罪分子或者恐怖分子。视频采集线程采集到视频帧信息后可将该视频帧信息传递给视频处理线程,视频处理线程可对视频帧进行针对上述人群的人脸识别。例如,如果是晚上,可以先做夜间增强预处理,再做人脸识别处理。如果识别出某个犯罪分子的人脸,可把与该犯罪分子对应的识别代号(即结果数据)发送到后端的服务器,服务器的数据检索模块323可在数据存储模块322(例如MySQL数据库)中,把该犯罪分子的相关信息全部检索出来,然后将信息发送至数据显示模块324以供显示,方便相关公共安全人员进行应急处理。服务器也可把该犯罪分子在此车站出现的记录存储在MySQL数据库中。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种基于GPU的视频采集与处理装置,包括至少一个并行工作的视频采集与处理单元,每个视频采集与处理单元包括:
视频采集模块,针对与所述视频采集与处理单元相对应的视频获取部件所获取的视频流信息生成视频帧;
视频处理模块,与所述视频采集模块连接,对所生成的视频帧进行至少一种处理并生成结果数据,所述视频处理模块针对各处理分别调用基于图形处理器GPU的处理接口以进行并行处理;以及
数据发送模块,与所述视频处理模块连接,将来自所述视频处理模块的结果数据发送到服务器。
2.根据权利要求1所述的基于GPU的视频采集与处理装置,其中,
所述视频采集模块针对所述相对应的视频获取部件建立独立的视频采集线程,以根据所述相对应的视频获取部件所获取的视频流信息生成视频帧;
所述视频处理模块针对所述相对应的视频获取部件建立独立的视频处理线程,以对所生成的视频帧进行至少一种处理并生成结果数据;
所述数据发送模块针对所述相对应的视频获取部件建立独立的数据发送线程,以将来自所述视频处理模块的结果数据发送到服务器。
3.根据权利要求1所述的基于GPU的视频采集与处理装置,其中,所述视频处理模块,包括:
判断子模块,用于判断所述视频采集模块所生成的视频帧是否需要进行预处理;
预处理子模块,用于在所述视频采集模块所生成的视频帧需要进行预处理的情况下,对所述视频帧先进行至少一种预处理;
处理子模块,用于对经过预处理的视频帧进行所述处理并生成结果数据,
其中,所述预处理子模块对各预处理分别调用基于GPU的预处理接口以进行并行处理。
4.根据权利要求1所述的基于GPU的视频采集与处理装置,其中,所述基于GPU的处理接口包括:基于GPU的人脸识别处理接口、基于GPU的车牌识别处理接口、和基于GPU的视频摘要处理接口中的一个或多个。
5.根据权利要求3所述的基于GPU的视频采集与处理装置,其中,所述基于GPU的预处理接口包括:基于GPU的去噪预处理接口、基于GPU的锐化预处理接口、基于GPU的去雾预处理接口、和基于GPU的夜间增强预处理接口中的一个或多个。
6.根据权利要求3所述的基于GPU的视频采集与处理装置,其中所述视频处理模块,还包括:
并行处理子模块,用于响应于对各基于GPU的预处理接口或处理接口的调用,对每个所述预处理或者所述处理进行基于GPU的并行化处理,所述并行处理子模块包括:
定位单元,用于定位所述预处理或者所述处理中耗时多的性能瓶颈部位;
划分单元,用于将所述性能瓶颈部位划分成包含至少一层循环体的单独模块;
复制单元,用于将内存中所述循环体涉及的输入、输出数据复制到GPU显存;
运算单元,用于编写GPU设备核心函数替换所述的单独模块,利用所述GPU显存中的输入、输出数据进行GPU运算,并将运算结果复制回所述内存。
7.一种基于GPU的视频采集与处理系统,包括:
根据权利要求1至6中任意一项所述的基于GPU的视频采集与处理装置;
至少一个视频获取部件,各视频获取部件与所述视频采集与处理装置中的相对应的视频采集与处理单元的视频采集模块连接,用于为所述视频采集模块提供视频流信息;以及
服务器,分别与所述视频采集与处理装置中的各视频采集与处理单元通信连接。
8.根据权利要求7所述的基于GPU的视频采集与处理系统,其中,所述服务器包括:
数据接收模块,分别与各视频采集与处理单元的数据发送模块连接,用于接收所述数据发送模块发送的所述结果数据;
数据存储模块,与所述数据接收模块连接,用于存储所述的结果数据。
9.根据权利要求8所述的基于GPU的视频采集与处理系统,其中,所述服务器还包括:
数据检索模块,与所述数据接收模块和/或所述数据存储模块连接,用于针对所述数据接收模块所接收的结果数据和/或所述数据存储模块所存储的结果数据进行检索,生成检索信息。
10.根据权利要求9所述的基于GPU的视频采集与处理系统,其中,所述服务器还包括:
数据显示模块,与所述数据接收模块、所述数据存储模块和所述数据检索模块中的一个或多个连接,用于显示所述数据接收模块所接收的结果数据、所述数据存储模块所存储的结果数据和所述检索信息中的一个或多个。
CN201610266790.7A 2016-04-26 2016-04-26 基于gpu的视频采集与处理装置及系统 Pending CN105827976A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610266790.7A CN105827976A (zh) 2016-04-26 2016-04-26 基于gpu的视频采集与处理装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610266790.7A CN105827976A (zh) 2016-04-26 2016-04-26 基于gpu的视频采集与处理装置及系统

Publications (1)

Publication Number Publication Date
CN105827976A true CN105827976A (zh) 2016-08-03

Family

ID=56527521

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610266790.7A Pending CN105827976A (zh) 2016-04-26 2016-04-26 基于gpu的视频采集与处理装置及系统

Country Status (1)

Country Link
CN (1) CN105827976A (zh)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106339993A (zh) * 2016-08-26 2017-01-18 北京金山猎豹科技有限公司 人脸图像磨皮方法、装置以及终端设备
CN106603977A (zh) * 2016-12-12 2017-04-26 深圳市中博睿存科技有限公司 基于Linux多核环境的视频采集方法及装置
CN106713942A (zh) * 2016-12-27 2017-05-24 广州华多网络科技有限公司 视频处理方法和装置
CN107465875A (zh) * 2017-09-13 2017-12-12 北京元心科技有限公司 相机预览数据缓存方法及装置
CN107979778A (zh) * 2016-10-25 2018-05-01 杭州海康威视数字技术股份有限公司 一种视频分析方法、装置及系统
CN108154685A (zh) * 2017-12-28 2018-06-12 广东傲智创新科技有限公司 一种轻便式车牌数据采集装置、服务器和系统
CN109214993A (zh) * 2018-08-10 2019-01-15 重庆大数据研究院有限公司 一种雾霾天气智能车视觉增强方法
CN109242784A (zh) * 2018-08-10 2019-01-18 重庆大数据研究院有限公司 一种雾霾天气大气覆盖率预测方法
CN109753848A (zh) * 2017-11-03 2019-05-14 杭州海康威视数字技术股份有限公司 执行人脸识别处理的方法、装置和系统
CN110322391A (zh) * 2019-07-08 2019-10-11 上海天诚比集科技有限公司 基于多线程的视频告警事件分析方法
CN111192230A (zh) * 2020-01-02 2020-05-22 北京百度网讯科技有限公司 基于多相机的图像处理方法、装置、设备和可读存储介质
WO2021159842A1 (zh) * 2020-09-22 2021-08-19 平安科技(深圳)有限公司 人脸抓拍架构及其人脸抓拍方法、装置、设备及存储介质
CN113473126A (zh) * 2020-03-31 2021-10-01 阿里巴巴集团控股有限公司 视频流的处理方法、装置、电子设备及计算机可读介质
CN114125299A (zh) * 2021-11-26 2022-03-01 凌云光技术股份有限公司 一种工业相机及其控制方法
CN114235148A (zh) * 2022-02-25 2022-03-25 南京信息工程大学 一种基于夜光遥感数据的道路夜间照明质量监测方法
US11997314B2 (en) 2020-03-31 2024-05-28 Alibaba Group Holding Limited Video stream processing method and apparatus, and electronic device and computer-readable medium

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040263519A1 (en) * 2003-06-30 2004-12-30 Microsoft Corporation System and method for parallel execution of data generation tasks
US7813570B2 (en) * 2004-09-13 2010-10-12 Microsoft Corporation Accelerated video encoding using a graphics processing unit
CN101908035A (zh) * 2010-07-30 2010-12-08 北京华傲精创科技开发有限公司 视频编解码方法、gpu及其与cpu的交互方法及系统
CN102547289A (zh) * 2012-01-17 2012-07-04 西安电子科技大学 基于gpu并行实现的快速运动估计方法
CN103440117A (zh) * 2013-08-29 2013-12-11 广东威创视讯科技股份有限公司 视频图像处理的方法及系统
CN103888771A (zh) * 2013-12-30 2014-06-25 中山大学深圳研究院 基于gpgpu技术的并行视频图像处理方法
CN104881660A (zh) * 2015-06-17 2015-09-02 吉林纪元时空动漫游戏科技股份有限公司 基于gpu加速的人脸表情识别及互动方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040263519A1 (en) * 2003-06-30 2004-12-30 Microsoft Corporation System and method for parallel execution of data generation tasks
US7813570B2 (en) * 2004-09-13 2010-10-12 Microsoft Corporation Accelerated video encoding using a graphics processing unit
CN101908035A (zh) * 2010-07-30 2010-12-08 北京华傲精创科技开发有限公司 视频编解码方法、gpu及其与cpu的交互方法及系统
CN102547289A (zh) * 2012-01-17 2012-07-04 西安电子科技大学 基于gpu并行实现的快速运动估计方法
CN103440117A (zh) * 2013-08-29 2013-12-11 广东威创视讯科技股份有限公司 视频图像处理的方法及系统
CN103888771A (zh) * 2013-12-30 2014-06-25 中山大学深圳研究院 基于gpgpu技术的并行视频图像处理方法
CN104881660A (zh) * 2015-06-17 2015-09-02 吉林纪元时空动漫游戏科技股份有限公司 基于gpu加速的人脸表情识别及互动方法

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106339993A (zh) * 2016-08-26 2017-01-18 北京金山猎豹科技有限公司 人脸图像磨皮方法、装置以及终端设备
CN107979778A (zh) * 2016-10-25 2018-05-01 杭州海康威视数字技术股份有限公司 一种视频分析方法、装置及系统
CN106603977B (zh) * 2016-12-12 2020-03-24 深圳市中博科创信息技术有限公司 基于Linux多核环境的视频采集方法及装置
CN106603977A (zh) * 2016-12-12 2017-04-26 深圳市中博睿存科技有限公司 基于Linux多核环境的视频采集方法及装置
CN106713942A (zh) * 2016-12-27 2017-05-24 广州华多网络科技有限公司 视频处理方法和装置
CN106713942B (zh) * 2016-12-27 2020-06-09 广州华多网络科技有限公司 视频处理方法和装置
CN107465875A (zh) * 2017-09-13 2017-12-12 北京元心科技有限公司 相机预览数据缓存方法及装置
CN109753848B (zh) * 2017-11-03 2021-01-26 杭州海康威视数字技术股份有限公司 执行人脸识别处理的方法、装置和系统
CN109753848A (zh) * 2017-11-03 2019-05-14 杭州海康威视数字技术股份有限公司 执行人脸识别处理的方法、装置和系统
CN108154685A (zh) * 2017-12-28 2018-06-12 广东傲智创新科技有限公司 一种轻便式车牌数据采集装置、服务器和系统
CN109214993A (zh) * 2018-08-10 2019-01-15 重庆大数据研究院有限公司 一种雾霾天气智能车视觉增强方法
CN109242784A (zh) * 2018-08-10 2019-01-18 重庆大数据研究院有限公司 一种雾霾天气大气覆盖率预测方法
CN109214993B (zh) * 2018-08-10 2021-07-16 重庆大数据研究院有限公司 一种雾霾天气智能车视觉增强方法
CN110322391B (zh) * 2019-07-08 2023-07-11 上海天诚比集科技有限公司 基于多线程的视频告警事件分析方法
CN110322391A (zh) * 2019-07-08 2019-10-11 上海天诚比集科技有限公司 基于多线程的视频告警事件分析方法
CN111192230A (zh) * 2020-01-02 2020-05-22 北京百度网讯科技有限公司 基于多相机的图像处理方法、装置、设备和可读存储介质
CN111192230B (zh) * 2020-01-02 2023-09-19 北京百度网讯科技有限公司 基于多相机的图像处理方法、装置、设备和可读存储介质
CN113473126A (zh) * 2020-03-31 2021-10-01 阿里巴巴集团控股有限公司 视频流的处理方法、装置、电子设备及计算机可读介质
WO2021197157A1 (zh) * 2020-03-31 2021-10-07 阿里巴巴集团控股有限公司 视频流的处理方法、装置、电子设备及计算机可读介质
US11997314B2 (en) 2020-03-31 2024-05-28 Alibaba Group Holding Limited Video stream processing method and apparatus, and electronic device and computer-readable medium
WO2021159842A1 (zh) * 2020-09-22 2021-08-19 平安科技(深圳)有限公司 人脸抓拍架构及其人脸抓拍方法、装置、设备及存储介质
CN114125299A (zh) * 2021-11-26 2022-03-01 凌云光技术股份有限公司 一种工业相机及其控制方法
CN114125299B (zh) * 2021-11-26 2023-10-10 凌云光技术股份有限公司 一种工业相机及其控制方法
CN114235148A (zh) * 2022-02-25 2022-03-25 南京信息工程大学 一种基于夜光遥感数据的道路夜间照明质量监测方法

Similar Documents

Publication Publication Date Title
CN105827976A (zh) 基于gpu的视频采集与处理装置及系统
CN108596277B (zh) 一种车辆身份识别方法、装置和存储介质
US20130279758A1 (en) Method and system for robust tilt adjustment and cropping of license plate images
CN110728283A (zh) 一种车牌类型识别方法及设备
CN105678213B (zh) 基于视频特征统计的双模式蒙面人事件自动检测方法
CN101059838A (zh) 一种人脸识别系统与识别方法
CN110119726A (zh) 一种基于YOLOv3模型的车辆品牌多角度识别方法
CN105354573B (zh) 一种集装箱车牌识别方法及系统
Gan et al. Video object forgery detection algorithm based on VGG-11 convolutional neural network
Li et al. Road vehicle monitoring system based on intelligent visual internet of things
CN109297978B (zh) 基于双目成像的电力线路无人机巡检及缺陷智能诊断系统
Chandra et al. Recognition of vehicle number plate using Matlab
CN202306822U (zh) 一种基于dsp的便携式车牌信息快速识别装置
CN111429376A (zh) 高低精度融合的高效数字图像处理方法
KR101236266B1 (ko) 주차공간정보 관리시스템
CN112235598A (zh) 一种视频结构化处理方法、装置及终端设备
Tripathi et al. Automatic Number Plate Recognition System (ANPR): The Implementation
Nigussie et al. Automatic recognition of Ethiopian license plates
US20220405527A1 (en) Target Detection Methods, Apparatuses, Electronic Devices and Computer-Readable Storage Media
CN111708907B (zh) 一种目标人员的查询方法、装置、设备及存储介质
CN114266713A (zh) 基于NonshadowGAN的无人机铁路扣件图像阴影去除方法及系统
Dandu et al. Vehicular number plate recognition using edge detection and characteristic analysis of national number plates
CN113836972A (zh) 基于ocr的安全审计方法、装置、设备及存储介质
CN103905522B (zh) 基于云计算环境的图像身份对比监测识别方法
CN109886268A (zh) 一种基于深度学习的车牌识别系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20160803