基于线程处理的数据时序恢复方法、系统、设备及介质技术方案

技术编号:35762709 阅读:12 留言:0更新日期:2022-12-01 13:57
本发明专利技术提供一种基于线程处理的数据时序恢复方法、系统、设备及介质,该方法包括:利用线程池内的线程轮询处理采集的图像帧数据;基于时间标识对经线程轮询处理得到的处理结果数据进行排序。本发明专利技术通过将多线程并发处理同一路实时图像帧数据写入暂存窗,再基于暂存窗将其内时间标识较小的处理结果数据发送至处理队列中,以避免图像帧数据发生时序混乱,保证来源于同一路视频图像数据的处理结果数据按照采集时间先后顺序发送到下一级应用。按照采集时间先后顺序发送到下一级应用。按照采集时间先后顺序发送到下一级应用。

【技术实现步骤摘要】
基于线程处理的数据时序恢复方法、系统、设备及介质


[0001]本专利技术涉及计算机系统
,尤其涉及一种基于线程处理的数据时序恢复方法、系统、设备及介质。

技术介绍

[0002]在智慧城市领域,网络摄像机等视频采集设备已遍布于楼宇、街道和园区之中,由此而生的实时视频图像采集,已经成为数字基础设施建设重要组成部分。实时图像采集是利用现代化技术进行实时图像信息获取的手段,在现代多媒体技术中占有重要的地位。在日常生活中、生物医学领域、航空航天等领域都有着广泛的应用。图像采集的速度、质量直接影响到产品的整体效果。
[0003]目前,实时图像采集系统主要包含实时视频图像的采集和预处理两个部分,采集部分获取实时视频流的帧数据,预处理部分处理视频帧数据为预定格式的图片或者视频数据。
[0004]然而,对于采用多个视频帧数据处理线程组的方式而言,由于多数基于实时图像的应用场景,需要的图像数据是按时间排序的,而引入多线程并发共同处理采集的图像帧后,每个线程获得的CPU处理时间不尽相同,因此,容易造成处理同一路图像帧消耗的时间不同,产生采集时间较晚的数据比采集时间较早的数据更早的被传送给下一级的情形,致使应用收到采集时间混乱的图像数据。

技术实现思路

[0005]本专利技术提供一种基于线程处理的数据时序恢复方法、系统、设备及介质,用以解决现有技术中多线程并发处理同一路实时图像时避免图像帧数据时序混乱的缺陷,确保多线程并发处理同一路图像采集队列数据时,图像在采集时间上的顺序性。
[0006]第一方面,本专利技术提供一种基于线程处理的数据时序恢复方法,包括:利用线程池内的线程轮询处理采集的图像帧数据;基于时间标识对经所述线程轮询处理得到的处理结果数据进行排序。
[0007]在一个实施例中,所述基于时间标识对经所述线程轮询处理得到的处理结果数据进行排序,包括:根据在先写入暂存窗内的处理结果数据的长度和预设的暂存窗的长度判断暂存窗容量是否满存;若所述暂存窗容量未满,则将当前处理结果数据写入暂存窗排队;否则,先将所述暂存窗内对应时间标识最小的在先处理结果数据发送至处理队列,再将所述当前处理结果数据写入所述暂存窗;其中,所述处理队列内的在先处理结果数据按时间标识排列。
[0008]在一个实施例中,所述根据在先写入暂存窗内的处理结果数据的长度和预设的暂存窗的长度判断暂存窗容量是否满存,包括:查看在先写入暂存窗内的处理结果数据的长度;将所述长度和所述暂存窗的长度进行比较;若所述长度小于所述暂存窗的长度,则所述暂存窗容量未满;若所述长度等于所述暂存窗的长度,则暂存窗容量满存。
[0009]在一个实施例中,在所述根据在先写入暂存窗内的处理结果数据的长度和所述暂存窗的长度判断暂存窗容量是否未满之前,包括:设置所述暂存窗的长度。
[0010]在一个实施例中,所述设置所述暂存窗的长度,包括:计算所述线程池内线程处理一次采集的图像帧数据的平均时耗;选取所述平均时耗中的最大值,从所述最大值对应采集的图像帧数据的时刻至将所述最大值对应的图像帧数据的处理结果数据写入至所述暂存窗的时间段内,所述线程池内所有线程采集并写入所述暂存窗的数据总个数;所述暂存窗的长度不小于所述数据总个数。
[0011]在一个实施例中,所述暂存窗的长度等于所述线程池中的线程数量;或者,所述暂存窗的长度等于所述线程池中的线程数量加一。
[0012]在一个实施例中,在利用线程池内的线程轮询处理采集的图像帧数据之前,包括:基于采集图像帧数据的频率以及采集的图像帧数据,估算单位时间内需要的线程数量;根据所述单位时间内需要的线程数量对所述线程池的容量进行调整。
[0013]在一个实施例中,所述估算单位时间内需要的线程数量,包括:估算所述线程池内线程处理一次采集的图像帧数据的平均处理时间;基于所述采集图像帧数据的频率和所述平均处理时间计算所述线程池内所有线程进行数据处理的总消耗时间;基于所述总消耗时间向上取整,得到单位时间内需要的线程数量。
[0014]在一个实施例中,所述根据所述单位时间内需要的线程数量对所述线程池的容量进行调整,包括:判断所述单位时间内需要的线程数量是否为0;若是,则调整当前线程池的线程的数量为1,且挂起所述线程;否则,判断所述单位时间内需要的线程数量和所述线程池中线程的数量之间的大小,以调整所述线程池容量。
[0015]在一个实施例中,所述判断所述单位时间内需要的线程数量和所述线程池中线程的数量之间的大小,以调整所述线程池容量,包括:若所述单位时间内需要的线程数量等于所述线程池中线程的数量,则不调整当前线程池内线程的数量;若所述单位时间内需要的线程数量大于所述线程池中线程的数量,则按所述单位时间内需要的线程数量和所述线程池中线程的数量的差值新增当前线程池内线程的数量;若所述单位时间内需要的线程数量小于所述线程池中线程的数量,则按所述线程池中线程的数量与所述单位时间内需要的线程数量的差值减少当前线程池内线程的数量。
[0016]第二方面,本专利技术提供一种基于线程处理的数据时序恢复系统,包括:处理模块,利用线程池内的线程轮询处理采集的图像帧数据;队列模块,基于时间标识对经所述线程轮询处理得到的处理结果数据进行排序。
[0017]第三方面,本专利技术提供一种电子设备,包括存储器和存储有计算机程序的存储器,所述处理器执行所述程序时实现第一方面或第二方面所述基于线程处理的数据时序恢复方法的步骤。
[0018]第四方面,本专利技术提供一种处理器可读存储介质,所述处理器可读存储介质存储有计算机程序,所述计算机程序用于使所述处理器执行第一方面或第二方面所述基于线程处理的数据时序恢复方法的步骤。
[0019]本专利技术提供的基于线程处理的数据时序恢复方法、装置、设备及介质,通过将多线程并发处理同一路实时图像帧数据写入暂存窗,再基于暂存窗将其内时间标识较小的处理结果数据发送至处理队列中,以避免图像帧数据发生时序混乱,保证来源于同一路视频图
像数据的处理结果数据按照采集时间先后顺序发送到下一级应用;通过动态调整线程池内线程的数量,以避免处理过程中线程较少造成数据堵塞,或避免处理过程中线程较多,造成系统资源的浪费。
附图说明
[0020]为了更清楚地说明本专利技术或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0021]图1是本专利技术提供的基于线程处理的数据时序恢复方法的流程示意图;
[0022]图2是本专利技术提供的动态调整线程池的流程示意图;
[0023]图3是本专利技术提供的暂存窗数据写入处理队列的流程示意图;
[0024]图4是本专利技术提供的基于线程处理的数据时序恢复系统的结构示意图之一;
[0025]图5是本专利技术提供的基于线程处理的数据时序恢复系统的结构示意图之二;
[0026]本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于线程处理的数据时序恢复方法,其特征在于,包括:利用线程池内的线程轮询处理采集的图像帧数据;基于时间标识对经所述线程轮询处理得到的处理结果数据进行排序。2.根据权利要求1所述的基于线程处理的数据时序恢复方法,其特征在于,所述基于时间标识对经所述线程轮询处理得到的处理结果数据进行排序,包括:根据在先写入暂存窗内的处理结果数据的长度和预设的暂存窗的长度判断暂存窗容量是否满存;若所述暂存窗容量未满,则将当前处理结果数据写入暂存窗排队;否则,先将所述暂存窗内对应时间标识最小的在先处理结果数据发送至处理队列,再将所述当前处理结果数据写入所述暂存窗;其中,所述处理队列内的在先处理结果数据按时间标识排列。3.根据权利要求2所述的基于线程处理的数据时序恢复方法,其特征在于,所述根据在先写入暂存窗内的处理结果数据的长度和预设的暂存窗的长度判断暂存窗容量是否满存,包括:查看在先写入暂存窗内的处理结果数据的长度;将所述长度和所述暂存窗的长度进行比较;若所述长度小于所述暂存窗的长度,则所述暂存窗容量未满;若所述长度等于所述暂存窗的长度,则暂存窗容量满存。4.根据权利要求2所述的基于线程处理的数据时序恢复方法,其特征在于,在所述根据在先写入暂存窗内的处理结果数据的长度和所述暂存窗的长度判断暂存窗容量是否未满之前,包括:设置所述暂存窗的长度。5.根据权利要求4所述的基于线程处理的数据时序恢复方法,其特征在于,所述设置所述暂存窗的长度,包括:计算所述线程池内线程处理一次采集的图像帧数据的平均时耗;选取所述平均时耗中的最大值,计算从所述最大值对应采集的图像帧数据的时刻至将所述最大值对应的图像帧数据的处理结果数据写入至所述暂存窗的时间段内,所述线程池内所有线程采集并写入所述暂存窗的数据总个数;所述暂存窗的长度不小于所述数据总个数。6.根据权利要求4所述的基于线程处理的数据时序恢复方法,其特征在于,所述暂存窗的长度等于所述线程池中的线程数量;或者,所述暂存窗的长度等于所述线程池中的线程数量加一。7.根据权利要求1所述的基于线程处理的数据时序恢复方法,其特征在于,在利用线程池内的线程轮询处理采集的图像帧数据之前,包括:基于采集图像帧数据的频率以及采集的图像帧数...

【专利技术属性】
技术研发人员:杨培志赵朝凤
申请(专利权)人:中移雄安信息通信科技有限公司中国移动通信集团有限公司
类型:发明
国别省市:

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

1