CN113747195A - 视频数据处理方法、装置、设备及存储介质 - Google Patents

视频数据处理方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN113747195A
CN113747195A CN202111043797.XA CN202111043797A CN113747195A CN 113747195 A CN113747195 A CN 113747195A CN 202111043797 A CN202111043797 A CN 202111043797A CN 113747195 A CN113747195 A CN 113747195A
Authority
CN
China
Prior art keywords
frame data
processing
buffer queue
writing
data
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
CN202111043797.XA
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.)
Chongqing Cisai Tech Co Ltd
Original Assignee
Chongqing Cisai Tech 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 Chongqing Cisai Tech Co Ltd filed Critical Chongqing Cisai Tech Co Ltd
Priority to CN202111043797.XA priority Critical patent/CN113747195A/zh
Publication of CN113747195A publication Critical patent/CN113747195A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234309Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234363Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering the spatial resolution, e.g. for clients with a lower screen resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • H04N7/181Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a plurality of remote sources

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本申请提供一种视频数据处理方法、装置、设备及存储介质,其中,视频数据处理方法包括对原始视频流进行解码,得到帧数据并将帧数据写入第一缓冲队列;基于第一处理节点从第一缓冲队列获取帧数据并将帧数据写入第一管道中;基于第二处理节点从第一管道获取帧数据,并对帧数据进行预设算法处理,以得到第一处理结果并将第一处理结果写入第二管道中;基于第三处理节点从第二管道中读取第一处理结果,并对第一处理结果执行业务逻辑处理,以得到第二处理结果等步骤。本申请能够提高视频处理效率和灵活性。

Description

视频数据处理方法、装置、设备及存储介质
技术领域
本申请涉及视频处理技术领域,具体而言,涉及一种视频数据处理方法、装置、设备及存储介质。
背景技术
用于实时视频处理的边缘设备在安防、工业、交通等各种场景的应用已经越来越广泛,其中,关于视频处理的具体过程为:1、对原始视频流解码,以读取帧数据;2、调用算法模型处理帧数据;输出算法结果,如果有多个算法,或需要对算法结果进行额外处理,则处理后再输出;根据算法结果进行业务逻辑处理(如触发报警等);5、将算法结果叠加到帧数据,并重新编码成视频流。
以上视频处理作为现有技术,具有以下缺点:1、采用串行处理数据,效率较低,2、整体流程耦合紧密,实现业务逻辑时灵活度较差,比如想要在运行过程中调整视频流对应的算法配置,往往需要重启整个服务,耗时较长。
发明内容
本申请实施例的目的在于提供一种视频数据处理方法、装置、设备及存储介质,用以提高视频处理效率和灵活性。
为此本申请第一方面公开一种视频数据处理方法,所述方法包括:
对原始视频流进行解码,得到帧数据并将所述帧数据写入第一缓冲队列;
基于第一处理节点从所述第一缓冲队列获取所述帧数据并将所述帧数据写入第一管道中;
基于第二处理节点从所述第一管道获取所述帧数据,并对所述帧数据进行预设算法处理,以得到第一处理结果并将所述第一处理结果写入第二管道中;
基于第三处理节点从所述第二管道中读取所述第一处理结果,并对所述第一处理结果执行业务逻辑处理,以得到第二处理结果,并将所述第二处理结果写入第二缓冲队列;
从所述第一缓冲队列读取所述帧数据和从所述第二缓冲队列中读取所述第一处理结果输入预设视频编码器中,以使得预设视频编码器输出视频处理结果。
本申请第一方面的方法通过开启多个进程,使得每个进程独立执行视频流处理总任务中的一个子任务,且每个进程执行子任务的过程互不影响,例如,一个进程的执行无需得到另一个进程的子任务执行完毕后才启动,这样一来就能够通过充分利用监控平台的性能,提高视频流总任务的处理效率,缩短视频流总任务的处理耗时。另一方面,本申请实施例的方法中的每个进程处理子任务时不受其他进程的影响,这样一来就降低了子任务之间的耦合度,从而提高了子任务的配置灵活性、降低配置耗时,例如,当需要修改第二个进程执行的子任务逻辑时,可仅更新改第二个进程执行的子任务逻辑,而不更新第一个进程、第三个进程、第四个进程的子任务逻辑,在配置完成后,也不需要重新整个任务,而重启第二进程即可,从而降低配置耗时。
在本申请第一方面中,作为一种可选的实施方式,所述基于第一处理节点从所述第一缓冲队列获取所述帧数据并将所述帧数据写入第一管道中,包括:
从所述第一缓冲队列中截取预设时间段内的所述帧数据,所述预设时间段内所述帧数据的数据量小于等于所述第一缓冲队列中存储的数据量;
识别所述预设时间段内的所述帧数据的原始码率;
根据所述原始码率将所述预设时间段内的所述帧数据转的码率转换为目标码率,得到码率转换后的所述帧数据;
将所述码率转换后的所述帧数据写入所述第一管道。
本可选的实施方式能够基于帧数据的原始码率将预设时间段内的帧数据的码率转换为目标码率,以满足视频处理要求。
在本申请实施例中,作为一种可选的实施方式,所述对原始视频流进行解码,得到帧数据并将所述帧数据写入第一缓冲队列,包括:
识别所述原始视频流的初始编码格式;
根据所述原始视频流的初始编码格式、所述视频流解码器将所述原始视频流的编码格式转换为目标编码格式,并得到解码后的所述帧数据;
将所述解码后的所述帧数据写入所述第一缓冲队列。。
本可选的实施方式可对帧数据的编码格式进行转换,以对原始视频流进行解码。
本申请第二方面公开另一种视频数据处理方法,该方法应用于本申请第一方面公开的视频数据处理方法,其中,本申请第二方面的视频数据处理方法包括以下步骤:
在本申请第一方面中,作为一种可选的实施方式,所述基于第二处理节点从所述第一管道获取所述帧数据,并对所述帧数据进行预设算法处理,以得到第一处理结果并将所述第一处理结果写入第二管道中,包括:
获取车辆视频数据;
基于所述视频流解码器对车辆视频数据进行解码,得到帧数据并将所述帧数据写入第一缓冲队列;
基于第一处理节点从所述第一缓冲队列获取所述帧数据并将所述帧数据写入第一管道中;
基于所述第二处理节点,根据图像识别算法对所述帧数据识别,以识别用户的车辆的特征信息,将所述用户的所述车辆的特征信息写入所述第二管道中;
基于第三处理节点从所述第二管道中读取所述车辆的特征信息,并根据所述车辆的特征信息判断所述车辆是否有闯红灯行为并生成判断结果将所述判断结果和所述车辆的特征信息写入所述第二缓冲队列;
从所述第一缓冲队列读取所述帧数据和从所述第二缓冲队列中读取所述判断结果输入预设视频编码器中,以使得预设视频编码器输出视频处理结果。
本申请第二方面的方法能够利用本申请第一方面的方法对车辆的视频数据进程处理,以基于车辆的视频数据判断车辆是否有闯红灯行为,由于该过程应用了本申请第一方面的方法对车辆的视频数据,因此整个处理过程具有更低的处理耗时和更优的配置灵活性。
在本申请第二方面中,作为一种可选的实施方式,所述方法还包括:
基于所述第三处理节点,将所述判断结果写入第三缓冲队列中;
基于所述判断结果执行报警任务。
本可选的实施方式可基于判断结果执行报警任务。
在本申请第二方面中,作为一种可选的的实施方式中,所述车辆的特征信息包括:车辆的颜色、车辆的车牌号码、车辆的形状、车辆的品牌、车辆的位置信息。
本申请第三方面公开一种视频数据处理装置,所述装置包括:
解码模块,用于对原始视频流进行解码,得到帧数据并将所述帧数据写入第一缓冲队列;
第一处理模块,用于基于第一处理节点从所述第一缓冲队列获取所述帧数据并将所述帧数据写入第一管道中;
第二处理模块,用于基于第二处理节点从所述第一管道获取所述帧数据,并对所述帧数据进行预设算法处理,以得到第一处理结果并将所述第一处理结果写入第二管道中;
第三处理模块,用于基于第三处理节点从所述第二管道中读取所述第一处理结果,并对所述第一处理结果执行业务逻辑处理,以得到第二处理结果,并将所述第二处理结果写入第二缓冲队列;
第四处理模块,用于从所述第一缓冲队列读取所述帧数据和从所述第二缓冲队列中读取所述第一处理结果输入预设视频编码器中,以使得预设视频编码器输出视频处理结果。
本申请第二方面的装置通过执行视频数据处理方法,能够开启多个进程,使得每个进程独立执行视频流处理总任务中的一个子任务,且每个进程执行子任务的过程互不影响,例如,一个进程的执行无需得到另一个进程的子任务执行完毕后才启动,这样一来就能够通过充分利用监控平台的性能,提高视频流总任务的处理效率,缩短视频流总任务的处理耗时。另一方面,本申请实施例的装置中的每个进程处理子任务时不受其他进程的影响,这样一来就降低了子任务之间的耦合度,从而提高了子任务的配置灵活性、降低配置耗时,例如,当需要修改第二个进程执行的子任务逻辑时,可仅更新改第二个进程执行的子任务逻辑,而不更新第一个进程、第三个进程、第四个进程的子任务逻辑,在配置完成后,也不需要重新整个任务,而重启第二进程即可,从而降低配置耗时。
在本申请实施例中,作为一种可选的实施方式,所述第一处理模块执行基于第一处理节点从所述第一缓冲队列获取所述帧数据的具体步骤为:
从所述第一缓冲队列中截取预设时间段内的所述帧数据,所述预设时间段内所述帧数据的数据量小于等于所述第一缓冲队列中存储的数据量;
识别所述预设时间段内的所述帧数据的原始码率;
根据所述原始码率将所述预设时间段内的所述帧数据转的码率转换为目标码率,得到码率转换后的所述帧数据;
将所述码率转换后的所述帧数据写入所述第一管道。。
本可选的实施方式能够基于帧数据的原始码率将预设时间段内的帧数据的码率转换为目标码率,以满足视频处理要求。本申请第四方面公开一种视频数据处理设备,包括:
处理器;以及
存储器,配置用于存储机器可读指令,所述指令在由所述处理器执行时,执行本申请第一方面的视频数据处理方法。
本申请第三方面的设备通过执行视频数据处理方法,能够开启多个进程,使得每个进程独立执行视频流处理总任务中的一个子任务,且每个进程执行子任务的过程互不影响,例如,一个进程的执行无需得到另一个进程的子任务执行完毕后才启动,这样一来就能够通过充分利用监控平台的性能,提高视频流总任务的处理效率,缩短视频流总任务的处理耗时。另一方面,本申请实施例的设备中的每个进程处理子任务时不受其他进程的影响,这样一来就降低了子任务之间的耦合度,从而提高了子任务的配置灵活性、降低配置耗时,例如,当需要修改第二个进程执行的子任务逻辑时,可仅更新改第二个进程执行的子任务逻辑,而不更新第一个进程、第三个进程、第四个进程的子任务逻辑,在配置完成后,也不需要重新整个任务,而重启第二进程即可,从而降低配置耗时。
本申请第五方面公开一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序被处理器执行本申请第一方面和第二方面的视频数据处理方法。
本申请第四方面的计算机存储介质通过执行视频数据处理方法,能够开启多个进程,使得每个进程独立执行视频流处理总任务中的一个子任务,且每个进程执行子任务的过程互不影响,例如,一个进程的执行无需得到另一个进程的子任务执行完毕后才启动,这样一来就能够通过充分利用监控平台的性能,提高视频流总任务的处理效率,缩短视频流总任务的处理耗时。另一方面,本申请实施例的计算机存储介质中的每个进程处理子任务时不受其他进程的影响,这样一来就降低了子任务之间的耦合度,从而提高了子任务的配置灵活性、降低配置耗时,例如,当需要修改第二个进程执行的子任务逻辑时,可仅更新改第二个进程执行的子任务逻辑,而不更新第一个进程、第三个进程、第四个进程的子任务逻辑,在配置完成后,也不需要重新整个任务,而重启第二进程即可,从而降低配置耗时。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是本申请实施例公开的一种视频数据处理方法的流程示意图;
图2是本申请实施例公开的一种视频数据处理系统的结构示意图;
图3是本申请实施例公开的一种视频数据处理装置的结构示意图;
图4是本申请实施例公开的一种视频数据处理设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
实施例一
请参阅图1,图1是本申请实施例公开的一种视频数据处理方法的流程示意图。如图1所示,本申请实施例的方法包括以下步骤:
101、对原始视频流进行解码,得到帧数据并将帧数据写入第一缓冲队列;
102、基于第一处理节点从第一缓冲队列获取帧数据并将帧数据写入第一管道中;
103、基于第二处理节点从第一管道获取帧数据,并对帧数据进行预设算法处理,以将得到的第一处理结果写入第二管道中;
104、基于第三处理节点从第二管道中读取第一处理结果,并对第一处理结果执行业务逻辑处理,以得到第二处理结果,并将第二处理结果写入第二缓冲队列;
105、从第一缓冲队列读取帧数据和从第二缓冲队列中读取第一处理结果输入预设视频编码器中,以使得预设视频编码器输出视频处理结果。
在本申请实施例中,可选地,原始视频流通过摄像头采集,其中,摄像头用于实时监控场景的变化情况,例如,摄像头用于实时监控目标路段的变化情况。进一步地,摄像头可固定监控场景中的一个方向,也可以通过旋转,监控场景的多个方向。
在本申请实施例中,摄像头通过有线或者无线的通信方式与监控平台通信连接,从而将生成的原始视频流传输给监控终端,其中,该监控平台用于执行本申请实施例的一种视频数据处理方法。
在本申请实施例中,监控平台可同时接收两个或者两个摄像头传入的原始视频流。
在本申请实施例中,监控平台还可以从边缘设备中获取原始视频流,其中,边缘设备是一种充当入口点或出口点,并控制两个网络之间边界或周边的数据流的设备,其可以是一台服务器,其中,该服务器接收了4个视频监控器传入的实时视频数据,并且一个视频监控器传入的实时视频数据作为一路视频,这样一来该服务器接收4路视频数据。
在本申请实施例中,请参阅图2,图2是本申请实施例公开的一种视频数据处理框架的结构示意图。如图2所示,为了处理原始视频流,监控平台开启了多个进程用于处理视频处理任务,具体地,监控平台开启有五个进程,其中,第一个进程D1用于对原始视频流进行解码,得到帧数据并将帧数据写入第一缓冲队列Q1,第二个进程N1用于从第一缓冲队列Q1获取帧数据并写入第一管道P1中,第三个进程N2用于从第一管道P1获取帧数据,并对帧数据进行预设算法处理,以将得到的第一处理结果写入第二管道P2,第四个进程用N3于从第二管道P2读取第一处理结果,并对第一处理结果执行业务逻辑处理,以得到第二处理结果并将第二处理结果写入第二缓冲队列Q2中,而第五个进程用于将帧数据和第一处理结果输入预设视频编码器E1中,以使得预设视频编码器输出视频处理结果,因此,第二个进程、第三个进程、第四个进程分别对应第一处理节点、第二处理节点、第三处理节点。
本申请实施例的方法通过开启多个进程,使得每个进程独立执行视频流处理总任务中的一个子任务,且每个进程执行子任务的过程互不影响,例如,一个进程的执行无需得到另一个进程的子任务执行完毕后才启动,这样一来就能够通过充分利用监控平台的性能,提高视频流总任务的处理效率,缩短视频流总任务的处理耗时。示例性,假设步骤101、步骤102、步骤103、步骤104、步骤105这五个步骤分别耗时为t1,t2,t3,t4,t5,则现有技术采用的串行方式处理的总耗时为SUM(t1,t2,t3,t4,t5),而通过本申请实施例的方法,其总耗时为为MAX(t1,t2,t3,t4,t5),由此可知,本申请实施例的方法能够提高视频流总任务的处理效率,缩短视频流总任务的处理耗时。另一方面,本申请实施例的方法中的每个进程处理子任务时不受其他进程的影响,这样一来就降低了子任务之间的耦合度,从而提高了子任务的配置灵活性、降低配置耗时,例如,当需要修改第二个进程执行的子任务逻辑时,可仅更新改第二个进程执行的子任务逻辑,而不更新第一个进程、第三个进程、第四个进程的子任务逻辑,在配置完成后,也不需要重新整个任务,而重启第二进程即可,从而降低配置耗时。
在本申请实施例中,监控平台的每个进程需要进行数据通信,即在不影响其他进程执行子任务的前提下,当前进程需要将子任务的执行结果告知另一个进程,因此为了实现这种场景的数据交换,本申请实施例的方法利用第一缓冲队列、第一管道、第二管道和第二缓冲队列完成了进程之间的数据交换。
在本申请实施例中,作为一种可选的实施方式,步骤101:对原始视频流进行解码,得到帧数据并将帧数据写入第一缓冲队列的具体过程为:
识别所述原始视频流的初始编码格式;
根据所述原始视频流的初始编码格式、所述视频流解码器将所述原始视频流的编码格式转换为目标编码格式,并得到解码后的所述帧数据;
将所述解码后的所述帧数据写入所述第一缓冲队列。
在本可选的实施方式中,由于视频流的原始编码格式可能并不符合监控平台所支持的编码格式,因此需要对视频流的编码格式进行转换,转换过计即为视频流的解码过程,具体地是将视频流的原始编码格式转换为目标编码格式,其中,目标编码格式为监控平台所支持的编码格式,例如,原始视频流的原始编码格式为AVI,该编码格式监控平台不支持的编码格式,因此需要将其解码,以将视频流解码为mp4格式的数据,其中,mp4格式的数据为监控平台支持的编码格式。
在本申请实施例中,作为一种可选的实施方式,步骤102:所述基于第一处理节点从所述第一缓冲队列获取所述帧数据并将所述帧数据写入第一管道中,包括:
从第一缓冲队列中截取预设时间段内的帧数据,预设时间段内帧数据的数据量小于等于第一缓冲队列中存储的数据量;
识别预设时间段内的帧数据的原始码率;
根据原始码率将预设时间段内的帧数据转的码率转换为目标码率,得到码率转换后的帧数据;
将码率转换后的帧数据写入第一管道。
在本可选的实施方式中,由于第一缓冲队列中存储了解码后的全部时间段的帧数据,其中,这些帧数据包括了一些非关键时间段的帧数据,因此需要截取出预设时间段内的帧数据,预设时间段内的帧数据为可用于后续算法处理的数据。进一步地,预设时间段内的帧数据根据实际业务场景来确定,例如在判断车辆是否有闯红灯的应用场景中,可预设时间段内的帧数据可以是车辆通过斑马线区域前后5S的帧数据。
在本可选的实施方式,预设时间段内的帧数据的码率如果不满足监控平台的要求,则需要对该帧数据的码率进行转换,以满足要求,因此本申请实施例通过对预设时间段内的帧数据的码率进行转换,能够确保预设时间段内的帧数据能够被监控平台进行后续处理。
需要说明的是,本申请实施例的视频数据处理方法可以应用于车辆监控、人脸检测等基于视频流进行业务处理的场景中,进一步地,结合具体的应用场景,步骤103中的预设算法可以是人脸识别算法、也可以是车辆检测算法,其中,关于人脸识别算法、车辆检测算法请参阅现有技术,本申请实施例对此不作赘述。另一方面,步骤104中的业务逻辑可以是判断车辆是否有闯红灯,根据人脸判断用户是否带口罩等。
下面结合车辆监控场景,对本申请实施公开的第二种视频数据处理方法进行详细说明,其中,本申请实施公开的另一种视频数据处理方法包括以下步骤:
获取车辆视频数据;
基于所述视频流解码器对车辆视频数据进行解码,得到帧数据并将所述帧数据写入第一缓冲队列;
基于第一处理节点从所述第一缓冲队列获取所述帧数据并将所述帧数据写入第一管道中;
基于所述第二处理节点,根据图像识别算法对所述帧数据识别,以识别用户的车辆的特征信息,将所述用户的所述车辆的特征信息写入所述第二管道中;
基于第三处理节点从所述第二管道中读取所述车辆的特征信息,并根据所述车辆的特征信息判断所述车辆是否有闯红灯行为并生成判断结果将所述判断结果和所述车辆的特征信息写入所述第二缓冲队列;
从所述第一缓冲队列读取所述帧数据和从所述第二缓冲队列中读取所述判断结果输入预设视频编码器中,以使得预设视频编码器输出视频处理结果。
在本申请实施例中,第一个进程单独用于执行对车辆视频数据进行解码任务,第二个进程单独用于执行截取帧数据、转换帧数据的码率等任务,第三个进程单独用于执行根据图像识别算法对所述帧数据识别,而第四个进程单独用于执行根据所述车辆的特征信息判断所述车辆是否有闯红灯行为并生成判断结果任务,第五个进程单独用于执行对判断结果和帧数据进行编码任务,每个子任务的执行无需等待另一个子任务执行完成,因此其具有更低的处理耗时,另一方面,通过多个进程,降低了每个子任务支之间的耦合度,从而具有更优的配置灵活性。在本申请实施例中,作为一种可选的实施方式,第二种视频数据处理方法还包括以下步骤:
基于所述第三处理节点,将所述判断结果写入第三缓冲队列中;
基于所述判断结果执行报警任务。
在本可选的实施方式中,第三处理节点(第四进程)还用于将判断结果写入第三缓冲队列中,相应地,监控平台会启动一个新进程用于监听第三缓冲队列中的数据,如果第三缓冲队列存在数据,则根据判断结果执行报警任务,例如,当判断结果显示车辆有闯红灯行为时,将改车辆的信息存入数据库中的黑名单中。
在本可选的实施方式中,可选地,车辆的特征信息包括车辆的颜色、车辆的车牌号码、车辆的形状、车辆的品牌、车辆的位置信息。
在本可选的实施方式中,为了第三缓冲队列中的数据是基于第四进程执行完毕后数据,用于执行报警任务的进程异步于第四进程,即执行报警任务的进程需得等待第四进程执行任务完毕。
实施例二
请参阅图3,图3是本申请实施例公开的一种视频数据处理装置的结构示意图。如图3所示,本申请实施例的装置包括:
解码模块201,用于对原始视频流进行解码,得到帧数据并将帧数据写入第一缓冲队列;
第一处理模块202,用于基于第一处理节点从第一缓冲队列获取帧数据并将帧数据写入第一管道中;
第二处理模块203,用于基于第二处理节点从第一管道获取帧数据,并对帧数据进行预设算法处理,以得到第一处理结果并将第一处理结果写入第二管道中;
第三处理模块204,用于基于第三处理节点从第二管道中读取第一处理结果,并对第一处理结果执行业务逻辑处理,以得到第二处理结果,并将第二处理结果写入第二缓冲队列;
第四处理模块205,用于从第一缓冲队列读取帧数据和从第二缓冲队列中读取第一处理结果输入预设视频编码器中,以使得预设视频编码器输出视频处理结果。
本申请实施例的装置通过执行视频数据处理方法,能够提高视频数据的处理速度和降低视频数据的处理耗时。另一方面,本申请实施例的装置中的每个进程处理子任务时不受其他进程的影响,这样一来就降低了子任务之间的耦合度,从而提高了子任务的配置灵活性、降低配置耗时。
在本申请实施例中,作为一种可选的实施方式,第一处理模块202执行基于第一处理节点从第一缓冲队列获取帧数据的具体步骤为:
从所述第一缓冲队列中截取预设时间段内的所述帧数据,所述预设时间段内所述帧数据的数据量小于等于所述第一缓冲队列中存储的数据量;
识别所述预设时间段内的所述帧数据的原始码率;
根据所述原始码率将所述预设时间段内的所述帧数据转的码率转换为目标码率,得到码率转换后的所述帧数据;
将所述码率转换后的所述帧数据写入所述第一管道。。
本可选的实施方式能够基于帧数据的原始码率将预设时间段内的帧数据的码率转换为目标码率,以满足视频处理要求。
在本申请实施例中,作为一种可选的实施方式,解码模块201执行对原始视频流进行解码,得到帧数据并将所述帧数据写入第一缓冲队列的具体方式为:
识别所述原始视频流的初始编码格式;
根据所述原始视频流的初始编码格式、所述视频流解码器将所述原始视频流的编码格式转换为目标编码格式,并得到解码后的所述帧数据;
将所述解码后的所述帧数据写入所述第一缓冲队列。
本可选的实施方式可对帧数据的编码格式进行转换,以对原始视频流进行解码。
实施例三
请参阅图4,图4是本申请实施例公开的一种视频数据处理设备的结构示意图。如图4所示,本申请实施例的设备包括:
处理器301;以及
存储器302,配置用于存储机器可读指令,所述指令在由所述处理器301执行时,执行本申请实施例一的视频数据处理方法。
本申请实施例的设备通过执行视频数据处理方法,能够提高视频数据的处理速度和降低视频数据的处理耗时。另一方面,本申请实施例的设备中的每个进程处理子任务时不受其他进程的影响,这样一来就降低了子任务之间的耦合度,从而提高了子任务的配置灵活性、降低配置耗时。
实施例四
本申请实施例公开一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序被处理器执行本申请实施例一的视频数据处理方法。
本申请实施例计算机存储介质的通过执行视频数据处理方法,能够提高视频数据的处理速度和降低视频数据的处理耗时。另一方面,本申请实施例计算机存储介质中的每个进程处理子任务时不受其他进程的影响,这样一来就降低了子任务之间的耦合度,从而提高了子任务的配置灵活性、降低配置耗时
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
需要说明的是,功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-On ly Memory,ROM)随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (10)

1.一种视频数据处理方法,其特征在于,所述方法包括:
对原始视频流进行解码,得到帧数据并将所述帧数据写入第一缓冲队列;
基于第一处理节点从所述第一缓冲队列获取所述帧数据并将所述帧数据写入第一管道中;
基于第二处理节点从所述第一管道获取所述帧数据,并对所述帧数据进行预设算法处理,以得到第一处理结果并将所述第一处理结果写入第二管道中;
基于第三处理节点从所述第二管道中读取所述第一处理结果,并对所述第一处理结果执行业务逻辑处理,以得到第二处理结果,并将所述第二处理结果写入第二缓冲队列;
从所述第一缓冲队列读取所述帧数据和从所述第二缓冲队列中读取所述第一处理结果输入预设视频编码器中,以使得预设视频编码器输出视频处理结果。
2.如权利要求1所述的方法,其特征在于,所述基于第一处理节点从所述第一缓冲队列获取所述帧数据并将所述帧数据写入第一管道中,包括:
从所述第一缓冲队列中截取预设时间段内的所述帧数据,所述预设时间段内所述帧数据的数据量小于等于所述第一缓冲队列中存储的数据量;
识别所述预设时间段内的所述帧数据的原始码率;
根据所述原始码率将所述预设时间段内的所述帧数据转的码率转换为目标码率,得到码率转换后的所述帧数据;
将所述码率转换后的所述帧数据写入所述第一管道。
3.如权利要求2所述的方法,其特征在于,所述对原始视频流进行解码,得到帧数据并将所述帧数据写入第一缓冲队列,包括:
识别所述原始视频流的初始编码格式;
根据所述原始视频流的初始编码格式、所述视频流解码器将所述原始视频流的编码格式转换为目标编码格式,并得到解码后的所述帧数据;
将所述解码后的所述帧数据写入所述第一缓冲队列。
4.一种视频数据处理方法,其特征在于,所述方法应用于如权利要求1-3任一项所述的方法中,所述方法包括:
获取车辆视频数据;
基于所述视频流解码器对车辆视频数据进行解码,得到帧数据并将所述帧数据写入第一缓冲队列;
基于第一处理节点从所述第一缓冲队列获取所述帧数据并将所述帧数据写入第一管道中;
基于所述第二处理节点,根据图像识别算法对所述帧数据识别,以识别用户的车辆的特征信息,将所述用户的所述车辆的特征信息写入所述第二管道中;
基于第三处理节点从所述第二管道中读取所述车辆的特征信息,并根据所述车辆的特征信息判断所述车辆是否有闯红灯行为并生成判断结果将所述判断结果和所述车辆的特征信息写入所述第二缓冲队列;
将从所述第一缓冲队列读取所述帧数据和从所述第二缓冲队列中读取所述判断结果输入预设视频编码器中,以使得预设视频编码器输出视频处理结果。
5.如权利要求4所述的方法,其特征在于,所述方法还包括:
基于所述第三处理节点,将所述判断结果写入第三缓冲队列中;
基于所述判断结果执行报警任务。
6.如权利要求4所述的方法,其特征在于,所述车辆的特征信息包括:车辆的颜色、车辆的车牌号码、车辆的形状、车辆的品牌、车辆的位置信息。
7.一种视频数据处理装置,其特征在于,所述装置包括:
解码模块,用于对原始视频流进行解码,得到帧数据并将所述帧数据写入第一缓冲队列;
第一处理模块,用于基于第一处理节点从所述第一缓冲队列获取所述帧数据并将所述帧数据写入第一管道中;
第二处理模块,用于基于第二处理节点从所述第一管道获取所述帧数据,并对所述帧数据进行预设算法处理,以得到第一处理结果并将所述第一处理结果写入第二管道中;
第三处理模块,用于基于第三处理节点从所述第二管道中读取所述第一处理结果,并对所述第一处理结果执行业务逻辑处理,以得到第二处理结果,并将所述第二处理结果写入第二缓冲队列;
第四处理模块,用于从所述第一缓冲队列读取所述帧数据和从所述第二缓冲队列中读取所述第一处理结果输入预设视频编码器中,以使得预设视频编码器输出视频处理结果。
8.如权利要求7所述的装置,其特征在于,所述第一处理模块执行基于第一处理节点从所述第一缓冲队列获取所述帧数据的具体步骤为:
从所述第一缓冲队列中截取预设时间段内的所述帧数据,所述预设时间段内所述帧数据的数据量小于等于所述第一缓冲队列中存储的数据量;
识别所述预设时间段内的所述帧数据的原始码率;
根据所述原始码率将所述预设时间段内的所述帧数据转的码率转换为目标码率,得到码率转换后的所述帧数据;
将所述码率转换后的所述帧数据写入所述第一管道。
9.一种视频数据处理设备,其特征在于,包括:
处理器;以及
存储器,配置用于存储机器可读指令,所述指令在由所述处理器执行时,执行如权利要求1-6任一项所述的视频数据处理方法。
10.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序被处理器执行如权利要求1-6任一项所述的视频数据处理方法。
CN202111043797.XA 2021-09-07 2021-09-07 视频数据处理方法、装置、设备及存储介质 Pending CN113747195A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111043797.XA CN113747195A (zh) 2021-09-07 2021-09-07 视频数据处理方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111043797.XA CN113747195A (zh) 2021-09-07 2021-09-07 视频数据处理方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN113747195A true CN113747195A (zh) 2021-12-03

Family

ID=78736485

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111043797.XA Pending CN113747195A (zh) 2021-09-07 2021-09-07 视频数据处理方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN113747195A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117274781A (zh) * 2023-11-21 2023-12-22 成都合能创越软件有限公司 基于双管道信息交错车载实时检测方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109922315A (zh) * 2019-03-01 2019-06-21 西安电子科技大学 一种基于Spark与OpenCV的实时视频行为分析方法
CN111400405A (zh) * 2020-03-30 2020-07-10 兰州交通大学 一种基于分布式的监控视频数据并行处理系统及方法
CN111428083A (zh) * 2020-03-19 2020-07-17 平安国际智慧城市科技股份有限公司 视频监控警示方法、装置、设备及存储介质
CN112291483A (zh) * 2020-10-29 2021-01-29 京东方科技集团股份有限公司 视频推送方法及系统、电子设备及可读存储介质
CN113221706A (zh) * 2021-04-30 2021-08-06 西安聚全网络科技有限公司 基于多进程的多路视频流的ai分析方法及系统
CN113286175A (zh) * 2021-04-27 2021-08-20 金卯新能源集团有限公司 视频流处理方法、装置及存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109922315A (zh) * 2019-03-01 2019-06-21 西安电子科技大学 一种基于Spark与OpenCV的实时视频行为分析方法
CN111428083A (zh) * 2020-03-19 2020-07-17 平安国际智慧城市科技股份有限公司 视频监控警示方法、装置、设备及存储介质
CN111400405A (zh) * 2020-03-30 2020-07-10 兰州交通大学 一种基于分布式的监控视频数据并行处理系统及方法
CN112291483A (zh) * 2020-10-29 2021-01-29 京东方科技集团股份有限公司 视频推送方法及系统、电子设备及可读存储介质
CN113286175A (zh) * 2021-04-27 2021-08-20 金卯新能源集团有限公司 视频流处理方法、装置及存储介质
CN113221706A (zh) * 2021-04-30 2021-08-06 西安聚全网络科技有限公司 基于多进程的多路视频流的ai分析方法及系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117274781A (zh) * 2023-11-21 2023-12-22 成都合能创越软件有限公司 基于双管道信息交错车载实时检测方法及系统
CN117274781B (zh) * 2023-11-21 2024-04-16 成都合能创越软件有限公司 基于双管道信息交错车载实时检测方法及系统

Similar Documents

Publication Publication Date Title
CN110430444B (zh) 一种视频流处理方法及系统
CN105163127A (zh) 视频分析方法及装置
CN112183668A (zh) 并行训练业务模型的方法及装置
CN102364945A (zh) 多画面图像解码显示的方法及其视频监控终端
WO2020015087A1 (zh) 大规模图片处理方法、系统、计算机设备及计算机存储介质
US20230214338A1 (en) Data moving method, direct memory access apparatus and computer system
Ling et al. Rt-mdl: Supporting real-time mixed deep learning tasks on edge platforms
CN113747195A (zh) 视频数据处理方法、装置、设备及存储介质
CN112988337A (zh) 任务处理系统、方法、装置、电子设备、存储介质
CN110324629B (zh) 图片转码方法、装置及电子设备
CN111669599A (zh) 视频解码方法、视频解码装置及终端设备
CN116668691A (zh) 一种图片压缩传输方法、装置及终端设备
CN114625340B (zh) 基于需求分析的商用软件研发方法、装置、设备及介质
CN113395523B (zh) 基于并行线程的图像解码方法、装置、设备及存储介质
CN112181496A (zh) 一种基于开源指令集处理器的ai扩展指令执行方法、装置、存储介质及电子设备
CN113516739B (zh) 一种动画处理方法、装置、存储介质及电子设备
CN114666574A (zh) 视频流检测方法、装置、设备及存储介质
CN113516738B (zh) 一种动画处理方法、装置、存储介质及电子设备
KR102205518B1 (ko) 기계학습을 수행하는 저장 장치 및 그 장치의 기계학습 방법
CN112364682A (zh) 一种案件搜索方法及装置
CN112579280A (zh) 云资源的调度方法、装置及计算机存储介质
CN111757115A (zh) 一种视频流处理方法及装置
CN112835626A (zh) 流水线配置方法、装置、可读存储介质和电子设备
CN112232960B (zh) 交易应用系统监控方法及装置
CN116108492B (zh) 可横向扩展的数据防泄漏系统

Legal Events

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

Application publication date: 20211203

RJ01 Rejection of invention patent application after publication