多相机检测系统的线程处理方法、装置、存储介质和终端制造方法及图纸

技术编号:28977795 阅读:23 留言:0更新日期:2021-06-23 09:23
本发明专利技术涉及多相机视觉检测技术领域,特别涉及一种多相机检测系统的线程处理方法、装置、存储介质和终端,包括以下步骤:在计算机上创建一个独立线程,用于管理相机图像的数据以及功能块的分析、判断及输出结果;对相机图像进行数据采集,并基于相机的数量以及各相机所使用的功能块在系统中自动加载所有功能块,以生成一个二维功能块空间;所述独立线程对所述二维功能块空间内的功能块进行分析,以输出结果并执行必要的动作。本发明专利技术提供的线程处理方法,只通过一个线程来管理多相机的图像分析,使其适用在低功耗的芯片上;另一方面,通过生成可自由伸缩的二维空间分配各个功能块,可大大节省了系统的内存,使其达到最优化,具有较好的应用价值。

【技术实现步骤摘要】
多相机检测系统的线程处理方法、装置、存储介质和终端
本专利技术涉及多相机视觉检测
,特别涉及一种多相机检测系统的线程处理方法、装置、存储介质和终端。
技术介绍
随着视觉检测技术的不断发展,多相机系统应用在3D重建、运动捕捉、多视点视频等,其应用范围也不断扩大。多相机系统是指每个相机都开辟一个线程,这个线程读取对应相机采集的图像,还对图像进行分析。除了每个相机对应的线程,还需一个线程来统一汇总每个相机的分析结果,进行逻辑判断、综合输出结果。而多相机系统需要依靠的硬件主要分为两大类:基于X86架构的PC系统和基于ARM架构的嵌入式系统。然而,将现有的多相机处理技术应用在低功耗可用线程数少的芯片,比如ARM架构的计算机上时,发现存在着如下缺点:一、无论是连续的相机工作模式还是触发的相机工作模式,每个相机分析处理图像都是在各自线程中完成的,导致创建过多的线程,而对于低功耗可用线程数少的芯片,其多线程处理能力比较弱,就会产生线程处理滞后的现象,从而造成了从启动检测到得出最后结果的总时间根本无法有效掌控的问题。二、如果只用一个独立的线程去管理各个相机的分析,则需要生成一个二维功能块空间,但如果使用目前的多线程技术中创建矩阵的模式,就会产生一个横向空间长度必须完全相同的二维矩阵,因此,该模式将使得每个相机用到的功能块的数量必须全部相同,这就会导致内存空间的巨大浪费。
技术实现思路
为解决上述提到的多相机检测系统应用在线程数较少的芯片中存在的线程处理技术问题,本专利技术提供了一种多相机检测系统的线程处理方法,包括以下步骤:S100、在计算机上创建一个独立线程,用于管理相机图像的采集数据以及对数据进行功能块的分析、判断及输出结果;S200、对相机图像进行数据采集,并基于相机的数量以及各相机所使用的功能块在系统中自动加载所有功能块,以生成一个二维功能块空间;S300、所述独立线程对所述二维功能块空间内的功能块进行分析,以输出结果并执行必要的动作。在上述技术方案的基础上,进一步地,所述各相机的工作模式为触发模式。在上述技术方案的基础上,进一步地,在步骤S200中,所述二维功能块空间基于Python开发语言通过以下步骤生成:S210、构建一功能块的类作为数据结构,记为C;S220、创建一空的列表list,记为A=[];S230、获取相机总数m,同时设置一个数值从1到m的循环变量i,代表当前处理的相机序号,初始值为1;S240、列表A扩充为一维空间,即A.append([]);S250、获取第i个相机执行的总功能块数量n,同时设置一个数值从1到n的循环变量j,代表当前处理的功能块序号,初始值为1;S260、在A的第i个一维空间中扩充,填上功能块的类,即为A[i].append(C);S270、将A[i][j]实体化,即在空列表中读入第i个相机第j个功能块的参数,将所有相机的所有功能块实体化后即生成二维功能块空间。在上述技术方案的基础上,进一步地,在步骤S300中,对所述二维功能块空间内的功能块进行分析包括以下步骤:S310、传输一采集信号以使相机进行图像采集,并判断在规定时间内是否所有相机的图像都传输回系统,若至少一个相机的图像没有传输回系统,则报警,并且停止检测;S320、依次执行每一个功能块,在判定全部功能块执行完成后,再执行功能块集合的组合逻辑判断,以输出总检测结果;若当前执行的功能块检测结果符合它的中断条件时,则中断所有功能块的执行,并判定以该功能块指定的结果作为总检测结果;S330、将总检测结果输出给外部电路,以执行必要的动作。在上述技术方案的基础上,进一步地,步骤S310中,在给所有相机传输采集信号前,需要检测所述采集信号是否为真,若为真,则开始给所有相机传输所述采集信号;若为假,则检测停止信号是否为真,若停止信号为真,则结束分析,若停止信号为假,则重新检测新的采集信号是否为真。本专利技术还提供一种多相机检测装置,包括:采集模块,用于对多个相机图像进行数据采集;线程创建模块,创建一个独立线程,用于管理采集的相机图像数据以及对数据进行功能块的分析、判断及输出结果;二维功能块生成模块,基于相机的数量以及各相机所使用的功能块在系统中自动加载所有功能块,以生成一个二维功能块空间;分析输出模块,通过所述线程对所述二维功能块空间内的功能块进行分析并输出结果。在上述技术方案的基础上,进一步地,还包括执行模块,对分析输出模块中传输的信号执行必要的动作。在上述技术方案的基础上,进一步地,所述分析输出模块还用于执行以下步骤:(1)传输一采集信号以使相机进行图像采集,并判断在规定时间内是否所有相机的图像都传输回系统,若至少一个相机的图像没有传输回系统,则报警,并且停止检测;(2)依次执行每一个功能块,在判定全部功能块执行完成后,再执行功能块集合的组合逻辑判断,以输出总检测结果;若当前执行的功能块的检测结果符合它的中断条件,则中断所有功能块的执行,并判定以该功能块指定的结果作为总检测结果;(3)将总检测结果输出给外部电路,以执行必要的动作。本专利技术提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于:该程序被处理器执行时实现如上所述的多相机检测系统的线程处理方法。本专利技术还提供一种终端,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如上所述的多相机检测系统的线程处理方法。本专利技术提供的一种多相机检测系统的线程处理方法,与现有技术相比,具有以下优点:一方面,仅通过一个独立线程管理多相机的图像分析,适用在低功耗且多线程处理能力弱的芯片上,且能稳定输出结果,不会造成线程处理滞后现象;另一方面,通过生成一个可自由伸缩的二维空间来分配各个功能块,大大节省了系统的存储空间,使其达到内存的最优化,不仅能够解决ARM架构的计算机线程管理问题,同样也可在X86架构上有效工作,具有较好的应用价值。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术提供的多相机检测系统的线程处理方法的流程图;图2为使用现有技术创建二维功能块空间的示意图;图3为使用本专利技术方法创建二维功能块空间的示意图;图4为生成二维功能块空间的步骤流程图;图5为对所述二维功能块空间内的功能块进行分析的步骤流程图;图6为检测盘面物体的示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术本文档来自技高网...

【技术保护点】
1.一种多相机检测系统的线程处理方法,其特征在于,包括以下步骤:/nS100、在计算机上创建一个独立线程,用于管理相机图像的采集数据以及对数据进行功能块的分析、判断及输出结果;/nS200、对相机图像进行数据采集,并基于相机的数量以及各相机所使用的功能块在系统中自动加载所有功能块,以生成一个二维功能块空间;/nS300、所述独立线程对所述二维功能块空间内的功能块进行分析,以输出结果并执行必要的动作。/n

【技术特征摘要】
1.一种多相机检测系统的线程处理方法,其特征在于,包括以下步骤:
S100、在计算机上创建一个独立线程,用于管理相机图像的采集数据以及对数据进行功能块的分析、判断及输出结果;
S200、对相机图像进行数据采集,并基于相机的数量以及各相机所使用的功能块在系统中自动加载所有功能块,以生成一个二维功能块空间;
S300、所述独立线程对所述二维功能块空间内的功能块进行分析,以输出结果并执行必要的动作。


2.根据权利要求1所述的多相机检测系统的线程处理方法,其特征在于:所述各相机的工作模式为触发模式。


3.根据权利要求1所述的多相机检测系统的线程处理方法,其特征在于:在步骤S200中,所述二维功能块空间基于Python开发语言通过以下步骤生成:
S210、构建一功能块的类作为数据结构,记为C;
S220、创建一空的列表list,记为A=[];
S230、获取相机总数m,同时设置一数值从1到m的循环变量i,代表当前处理的相机序号,初始值为1;
S240、列表A扩充为一维空间,即A.append([]);
S250、获取第i个相机执行的总功能块数量n,同时设置一数值从1到n的循环变量j,代表当前处理的功能块序号,初始值为1;
S260、在A的第i个一维空间中扩充,填上功能块的类,即为A[i].append(C);
S270、将A[i][j]实体化,即在空列表中读入第i个相机第j个功能块的参数,将所有相机的所有功能块实体化后即生成二维功能块空间。


4.根据权利要求1-3任一项所述的多相机检测系统的线程处理方法,其特征在于,在步骤S300中,对所述二维功能块空间内的功能块进行分析包括以下步骤:
S310、传输一采集信号以使相机进行图像采集,并判断在规定时间内是否所有相机的图像都传输回系统,若至少一个相机的图像没有传输回系统,则报警,并且停止检测;
S320、依次执行每一个功能块,在判定全部功能块执行完成后,再执行功能块集合的组合逻辑判断,以输出总检测结果;若当前执行的功能块检测结果符合它的中断条件时,则中断所有功能块的执行,并判定以该功能块指定的结...

【专利技术属性】
技术研发人员:邱剑瑜钟祥微
申请(专利权)人:厦门树冠科技有限公司
类型:发明
国别省市:福建;35

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

1