危化品仓库中码垛的监控方法及电子设备与流程

文档序号:17993726发布日期:2019-06-22 01:01阅读:316来源:国知局
危化品仓库中码垛的监控方法及电子设备与流程
本申请涉及危化品仓库安全
技术领域
,尤其涉及一种危化品仓库中码垛的监控方法及电子设备。
背景技术
:随着社会的现代化发展,对危险化学品(简称危化品)的需求量越来越大,危化品的使用越来越广泛,危化品的使用在方便人们的生产生活的同时,因其易燃易爆、有毒有害等特性,若使用不当,可能会对人们及生活环境造成危害。为避免造成危害,需要对危化品仓库进行监控,然而,相关技术中,并没有有效的对危化品仓库进行安全监控的方案,影响了危化品行业的健康发展。技术实现要素:本申请的目的是提供一种危化品仓库中码垛的监控方法及电子设备,以解决如何有效的对危化品仓库进行安全监控的问题。本申请的目的是通过以下技术方案实现的:一种危化品仓库中码垛的监控方法,包括:利用双目相机实时采集危化品仓库中危化品码垛的图像;对实时采集的所述危化品码垛的图像进行harris角点检测步骤,得到第一角点图像;所述harris角点检测步骤包括:采用soble算法计算出x方向和y方向的梯度并对梯度求导得到ix和iy,根据ix和iy计算局部特征结果矩阵m的特征值λ1和λ1以及响应函数rx,y,其中,rx,y为detm-k(tracem)2,detm为λ1*λ2,tracem为λ1+λ2,获取rx,y大于第一设定阈值的像素点,得到第一候选角点图像;对所述第一候选角点图像中的角点进行非极大值抑制并采用k-means聚类算法进行分类,去除非极大值的角点以及当根据聚类结果确定每两个类别间角点的数量的差值存在大于第二设定阈值的差值时,去除角点数量最少的n个类别的角点,得到最终角点图像;其中,k和n均为正整数,n小于k;将所述第一角点图像与预先得到的码垛满货状态下的第二角点图像进行对比;所述第二角点图像是采用与所述harris角点检测步骤相同的步骤得到的;所述码垛满货状态是按照五距的安全标准参数码放码垛时的状态;如果所述第一角点图像中的角点所确定的范围超出所述第二角点图像中的角点所确定的范围,确定所述码垛超标,并发出报警信息。可选的,所述对所述第一候选角点图像中的角点进行非极大值抑制并采用k-means聚类算法进行分类,去除非极大值的角点以及当根据聚类结果确定每两个类别间角点的数量的差值存在大于第二设定阈值的差值时,去除角点数量最少的n个类别的角点,得到最终角点图像,包括:对所述第一候选角点图像中的角点进行非极大值抑制,得到第二候选角点图像;采用k-means聚类算法对所述第二候选角点图像中的角点进行分类,得到k个类别的角点;统计每个类别中角点的数量;计算每两个类别间角点的数量的差值;当确定每两个类别间角点的数量的差值存在大于第二设定阈值的差值时:按照统计的每个类别中角点的数量对k个类别从低到高进行排序,去除前n个类别中的角点,得到最终角点图像;或者,按照统计的每个类别中角点的数量对k个类别从高到低进行排序,去除后n个类别中的角点,得到最终角点图像。可选的,所述对所述第一候选角点图像中的角点进行非极大值抑制并采用k-means聚类算法进行分类,去除非极大值的角点以及当根据聚类结果确定每两个类别间角点的数量的差值存在大于第二设定阈值的差值时,去除角点数量最少的n个类别的角点,得到最终角点图像,包括:采用k-means聚类算法对所述第一候选角点图像中的角点进行分类,得到k个类别的角点;统计每个类别中角点的数量;计算每两个类别间角点的数量的差值;当确定每两个类别间角点的数量的差值存在大于第二设定阈值的差值时:按照统计的每个类别中角点的数量对k个类别从低到高进行排序,去除前n个类别中的角点,得到第三候选角点图像;或者,按照统计的每个类别中角点的数量对k个类别从高到低进行排序,去除后n个类别中的角点,得到第三候选角点图像;对所述第三候选角点图像中的角点进行非极大值抑制,得到最终角点图像。可选的,去除的前n个类别中的角点数量,与未去除的k-n个类别中的角点数量相比,每两个类别间角点的数量的差值大于所述第二设定阈值;或者,去除的后n个类别中的角点数量,与未去除的k-n个类别中的角点数量相比,每两个类别间角点的数量的差值大于所述第二设定阈值。可选的,所述k的取值为3;所述n的取值为1或2。可选的,还包括:当对k个类别从低到高进行排序时,获取第1个类别的角点的数量,如果第1个类别的角点的数量大于或者等于第三设定阈值,则确定n的取值为1,如果第1个类别的角点的数量小于所述第三设定阈值,从第2个类别开始往后,依次选择各个类别作为当前处理类别,并进行如下处理:统计第p个类别及本类别之前的各类别的角点的总数量,将统计的第p个类别及本类别之前的各类别的角点的总数量与第三设定阈值进行比较,如果统计的第p个类别及本类别之前的各类别的角点的总数量大于所述第三设定阈值,则确定n的取值为p-1并停止选择当前处理类别,如果统计的第p个类别及本类别之前的各类别的角点的总数量等于所述第三设定阈值,则确定n的取值为p并停止选择当前处理类别,如果统计的第p个类别及本类别之前的各类别的角点的总数量小于所述第三设定阈值,则选择下一个当前处理类别;其中,p的取值为2~k的正整数;或者,当对k个类别从高到低进行排序时,获取第k个类别的角点的数量,如果第k个类别的角点的数量大于或者等于第三设定阈值,则确定n的取值为1,如果第k个类别的角点的数量小于所述第三设定阈值,从第k-1个类别开始往前,依次选择各个类别作为当前处理类别,并进行如下处理:统计第k-j个类别及本类别之后的各类别的角点的总数量,将统计的第k-j个类别及本类别之后的各类别的角点的总数量与第三设定阈值进行比较,如果统计的第k-j个类别及本类别之后的各类别的角点的总数量大于所述第三设定阈值,则确定n的取值为j并停止选择当前处理类别,如果统计的第k-j个类别及本类别之后的各类别的角点的总数量等于所述第三设定阈值,则确定n的取值为j+1并停止选择当前处理类别,如果统计的第k-j个类别及本类别之后的各类别的角点的总数量小于所述第三设定阈值,则选择下一个当前处理类别;其中,j的取值为1~k的正整数。可选的,还包括:当对k个类别从低到高进行排序时,获取第1个类别的角点的数量,如果第1个类别的角点的数量大于或者等于第四设定阈值,则确定n的取值为1,如果第1个类别的角点的数量小于所述第四设定阈值,从第2个类别开始往后,依次选择各个类别作为当前处理类别,并进行如下处理:统计第p个类别及本类别之前的各类别的角点的总数量,将统计的第p个类别及本类别之前的各类别的角点的总数量与第四设定阈值进行比较,如果统计的第p个类别及本类别之前的各类别的角点的总数量大于所述第四设定阈值,则确定n的取值为p-1并停止选择当前处理类别,如果统计的第p个类别及本类别之前的各类别的角点的总数量等于所述第四设定阈值,则确定n的取值为p并停止选择当前处理类别,如果统计的第p个类别及本类别之前的各类别的角点的总数量小于所述第四设定阈值,则选择下一个当前处理类别;其中,p的取值为2~k的正整数;或者,当对k个类别从高到低进行排序时,获取第k个类别的角点的数量,如果第k个类别的角点的数量大于或者等于第四设定阈值,则确定n的取值为1,如果第k个类别的角点的数量小于所述第四设定阈值,从第k-1个类别开始往前,依次选择各个类别作为当前处理类别,并进行如下处理:统计第k-j个类别及本类别之后的各类别的角点的总数量,将统计的第k-j个类别及本类别之后的各类别的角点的总数量与第四设定阈值进行比较,如果统计的第k-j个类别及本类别之后的各类别的角点的总数量大于所述第四设定阈值,则确定n的取值为j并停止选择当前处理类别,如果统计的第k-j个类别及本类别之后的各类别的角点的总数量等于所述第四设定阈值,则确定n的取值为j+1并停止选择当前处理类别,如果统计的第k-j个类别及本类别之后的各类别的角点的总数量小于所述第四设定阈值,则选择下一个当前处理类别;其中,j的取值为1~k的正整数。可选的,还包括:根据默认设置确定n的取值。可选的,所述根据ix和iy计算局部特征结果矩阵m的特征值λ1和λ1以及响应函数rx,y,包括:根据ix和iy,计算ix2、iy2和ix*iy;利用高斯函数对ix2、iy2和ix*iy进行滤波;根据ix2、iy2和ix*iy计算局部特征结果矩阵m的特征值λ1和λ1以及响应函数rx,y。一种电子设备,包括:处理器,以及与所述处理器相连接的存储器;所述存储器用于存储计算机程序;所述处理器用于调用并执行所述存储器中的所述计算机程序,以执行如以上任一项所述的方法。本申请采用以上技术方案,具有如下有益效果:本申请的方案中,对实时采集的危化品码垛的图像进行harris角点检测得到第一角点图像。其中,角点检测的过程中,通过非极大值抑制去除非极大值的角点,对harris算法自身检测误差进行纠正,对于码垛来说,还会受到光线照射、阴影等的干扰,会出现一些噪点,影响到检测的角点的准确性,本方案中,通过k-means聚类算法对角点分类,基于k-means聚类算法的特性,会将最相似的角点分为一类,那么,受到光线照射、阴影等干扰的角点因其相似性就会被分为一类,又由于这一类角点的数量一般是远小于实际的角点的数量的,因此,可以在根据聚类结果确定每两个类别间角点的数量的差值存在大于第二设定阈值的差值时,去除角点数量最少的n个类别的角点,从而把噪点去除,提高了harris角点检测的准确性。将第一角点图像与通过相同的harris角点检测预先得到的码垛满货状态下的第二角点图像进行对比,如果所述第一角点图像中的角点所确定的范围超出所述第二角点图像中的角点所确定的范围,确定所述码垛超标,并发出报警信息,从而实现了对危化品仓库中码垛的实时准确的监控。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为角点检测时,邻域窗口移动的示意图。图2为本申请一个实施例提供的一种危化品仓库中码垛的监控方法的流程图。图3为本申请另一个实施例中的对比效果图。图4为本申请另一个实施例中的标准库棋盘圆点原图。图5为本申请另一个实施例中对图4标准库棋盘圆点原图采用改进的harris角点检测方法寻找到的角点图。图6为本申请另一个实施例中满货、非满货、超标三种码垛的状态图。图7为本申请另一个实施例中对图6检测的角点效果对比图。图8为本申请另一个实施例中聚类结果示意图。图9为本申请另一个实施例中光线照射、阴影和其他非码垛物品干扰三种情况示意图。图10为本申请另一个实施例中对图9检测的角点效果对比图。图11为本申请另一个实施例检测的角点的f-measure值对比图。图12为本申请另一个实施例的一种电子设备的结构示意图。具体实施方式为使本申请的目的、技术方案和优点更加清楚,下面将对本申请的技术方案进行详细的描述。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本申请所保护的范围。实施例首先对本申请涉及到的概念进行简单介绍。一、角点检测角点检测是对具体定义、或者是能够具体检测出来的兴趣点的检测,角点是在某些属性上强度最大或者最小的孤立点、线段终点,或者是曲线上局部曲率最大的点。比如,在一个图像中,可以认为角点是物体轮廓线的连接点,当拍摄视角变化的时候,这些连接点仍能很好地保持稳定的属性。一种角点检测是以某像素点为基准,取一个邻域窗口,如图1所示,当邻域窗口在四周预设范围内进行小范围移动时,监测邻域窗口内平均的像素灰度值的变化,一个图像一般分为三个区域,包括物体平坦区点、物体边缘点、物体角点,三个区域的变化不同,平均的像素灰度值的变化为e(u,v),计算公式如下:e(u,v)=∑x,yw(x,y)[i(x+u,y+v)-i(x,y)]2(1)其中,x和y是图像像素点的坐标,u是窗口在水平方向的偏移量,v是窗口在竖直方向的偏移量,i(x,y)是像素点(x,y)的信息,w(x,y)是窗口函数,可以选用高斯函数。ix和iy分别为x方向和y方向的梯度的导数,对公式(1)的i(x+u,y+v)进行多元函数泰勒级数展开并取一阶近似得到如下公式(2):其中,o(u2,v2)为泰勒级数的余项,当u,v无论怎样取值,e(u,v)都是变化比较大的,这个像素点即为角点。而e(u,v)经过公式(2)的变化可得到如下公式(3):其中,m为结构张量,公式(3)近似处理后的e(u,v)是一个二次型,令e(u,v)=常数,即可用一个椭圆来描绘此函数,椭圆的长轴和短轴是与结构张量m的两个特征值λ1和λ1相对应的量,m也称局部特征结果矩阵。通过判断λ1和λ1的情况,就可以区分出物体平坦区点、物体边缘点、物体角点这三个区域,其中,结构张量m是由ix和iy构成,它的特征值正好可以反映ix和iy的情况,如表1所示,表示了三个区域ix和iy的变化。表1三个区域ix和iy的变化检测点的位置ix和iy变化情况物体平坦区点ix和iy变化都较小物体边缘点ix和iy只有一个变化较大物体角点ix和iy变化都较大基于此,一种传统的harris角点检测的步骤是:采用soble算法计算出x方向和y方向的梯度并对梯度求导得到ix和iy,根据ix和iy,计算ix2、iy2和ix*iy,利用高斯函数对ix2、iy2和ix*iy进行滤波,根据ix2、iy2和ix*iy计算局部特征结果矩阵m的特征值λ1和λ1以及响应函数rx,y。定义角点响应函数rx,y,公式如下:rx,y=detm-k(tracem)2(4)其中rx,y为某一像素点的响应函数值,k为经验常数,一般取值为0.04-0.06,detm为λ1*λ2,tracem为λ1+λ2。rx,y为大数值整数时,相应的像素点为角点,rx,y为大数值负值时,相应的像素点为边缘点,rx,y的绝对值是小数值时,相应的像素点为平坦区点。二、危化品仓库中的码垛在危化品仓库中,危化品以码垛形式码放,危化品码放是否安全,重要的影响参数就是码垛的“五距”信息,“五距”信息是指垛距、墙距、柱距、灯距、梁距,按照五距的安全标准参数码放码垛,才能保证危化品仓库的安全,相应的,对于危化品仓库中码垛的监控,即对码垛的一些参数进行监控,判断这些参数是否符合安全水平。基于以上概念,发明人提供了一种危化品仓库中码垛的监控方法,下面进行详细介绍。参见图2,图2是本申请一个实施例提供的一种危化品仓库中码垛的监控方法的流程图。如图2所示,本实施例提供的一种危化品仓库中码垛的监控方法,至少包括如下步骤:步骤21、利用双目相机实时采集危化品仓库中危化品码垛的图像。采集的码垛的图像需要体现出码垛的五距,因此,本步骤中采用双目相机这一三维测量技术实时采集码垛的图像。双目相机是基于计算机技术和人工智能发展而来,其具有技术先进可靠,成本较低等优点。步骤22、对实时采集的危化品码垛的图像进行harris角点检测步骤,得到第一角点图像;harris角点检测步骤包括:采用soble算法计算出x方向和y方向的梯度并对梯度求导得到ix和iy,根据ix和iy计算局部特征结果矩阵m的特征值λ1和λ1以及响应函数rx,y,其中,rx,y为detm-k(tracem)2,detm为λ1*λ2,tracem为λ1+λ2,获取rx,y大于第一设定阈值的像素点,得到第一候选角点图像;对第一候选角点图像中的角点进行非极大值抑制并采用k-means聚类算法进行分类,去除非极大值的角点以及当根据聚类结果确定每两个类别间角点的数量的差值存在大于第二设定阈值的差值时,去除角点数量最少的n个类别的角点,得到最终角点图像;其中,k和n均为正整数,n小于k。其中,k-means聚类算法可以把最相似的分为一个类别,对角点聚类时,是基于rx,y,将角点的rx,y进行聚类,得到k个类别。步骤23、将第一角点图像与预先得到的码垛满货状态下的第二角点图像进行对比;第二角点图像是采用与harris角点检测步骤相同的步骤得到的;码垛满货状态是按照五距的安全标准参数码放码垛时的状态。满货时的码垛是预先基于危化品仓库中码垛的五距的安全标准参数码放的,码垛满货状态下的第二角点图像就可以作为一个参考标准,监控时,可以将实时采集的可以体现五距的第一角点图像与码垛满货状态下的第二角点图像进行对比。步骤24、如果第一角点图像中的角点所确定的范围超出第二角点图像中的角点所确定的范围,确定码垛超标,并发出报警信息。角点图像中的各角点依次连接所确定的范围可以体现出物体的轮廓,如果实时得到的第一角点图像中各角点依次连接所确定的范围超出第二角点图像的角点所确定的范围,说明码垛码放超出了标准,不符合五距的安全标准参数,需要发出报警对管理人员进行提示。本实施例中,对实时采集的危化品码垛的图像进行harris角点检测得到第一角点图像。其中,角点检测的过程中,通过非极大值抑制去除非极大值的角点,对harris算法自身检测误差进行纠正,对于码垛来说,还会受到光线照射、阴影等的干扰,会出现一些噪点,影响到检测的角点的准确性,本方案中,通过k-means聚类算法对角点分类,基于k-means聚类算法的特性,会将最相似的角点分为一类,那么,受到光线照射、阴影等干扰的角点因其相似性就会被分为一类,又由于这一类角点的数量一般是远小于实际的角点的数量的,因此,可以在根据聚类结果确定每两个类别间角点的数量的差值存在大于第二设定阈值的差值时,去除角点数量最少的n个类别的角点,从而把噪点去除,即对harris角点检测的步骤做了改进,提高了harris角点检测的准确性。将第一角点图像与通过相同的harris角点检测预先得到的码垛满货状态下的第二角点图像进行对比,如果第一角点图像中的角点所确定的范围超出第二角点图像中的角点所确定的范围,确定码垛超标,并发出报警信息,从而实现了对危化品仓库中码垛的实时准确的监控。需要说明的是,在得到聚类结果后,如果根据聚类结果确定每两个类别间角点的数量的差值存在小于或者等于第二设定阈值的差值时,则认为每个类别之间的差异较小,说明受光线照射、阴影等干扰较小,如果这时也去除角点的话,会将大部分真实的角点也一并去除,影响结果的准确性,因此,本实施例中,针对这种情况,则不去除角点。其中,第二设定阈值的大小可以根据经验统计进行设置,比如,可以设置为18-21,可选的,设置为20。上述步骤22中,非极大值抑制和k-means聚类算法的先后顺序不做限定。如果先进行非极大值抑制,再进行k-means聚类算法,可选的,上述步骤22中,对第一候选角点图像中的角点进行非极大值抑制并采用k-means聚类算法进行分类,去除非极大值的角点以及当根据聚类结果确定每两个类别间角点的数量的差值存在大于第二设定阈值的差值时,去除角点数量最少的n个类别的角点,得到最终角点图像,其具体实现方式可以是:对第一候选角点图像中的角点进行非极大值抑制,得到第二候选角点图像;采用k-means聚类算法对第二候选角点图像中的角点进行分类,得到k个类别的角点;统计每个类别中角点的数量;计算每两个类别间的角点的差值;当确定每两个类别间的角点的差值存在大于第二设定阈值的差值时:按照统计的每个类别中角点的数量对k个类别从低到高进行排序,去除前n个类别中的角点,得到最终角点图像;或者,按照统计的每个类别中角点的数量对k个类别从高到低进行排序,去除后n个类别中的角点,得到最终角点图像。如果先进行进行k-means聚类算法,再进行非极大值抑制,可选的,上述步骤22中,对第一候选角点图像中的角点进行非极大值抑制并采用k-means聚类算法进行分类,去除非极大值的角点以及当根据聚类结果确定每两个类别间角点的数量的差值存在大于第二设定阈值的差值时,去除角点数量最少的n个类别的角点,得到最终角点图像,其具体实现方式可以是:采用k-means聚类算法对第一候选角点图像中的角点进行分类,得到k个类别的角点;统计每个类别中角点的数量;计算每两个类别间角点的数量的差值;当确定每两个类别间角点的数量的差值存在大于第二设定阈值的差值时:按照统计的每个类别中角点的数量对k个类别从低到高进行排序,去除前n个类别中的角点,得到第三候选角点图像;或者,按照统计的每个类别中角点的数量对k个类别从高到低进行排序,去除后n个类别中的角点,得到第三候选角点图像;对第三候选角点图像中的角点进行非极大值抑制,得到最终角点图像。基于聚类结果去除角点时,n的取值的确定是一个关键点,如果n的取值过大,也可能会将大部分真实的角点也一并去除,所以,需要合理确定n的取值,下面列举几种可能的方案。一些实施例中,采用第一种方案:去除的前n个类别中的角点数量,与未去除的k-n个类别中的角点数量相比,每两个类别间角点的数量的差值大于第二设定阈值;或者,去除的后n个类别中的角点数量,与未去除的k-n个类别中的角点数量相比,每两个类别间角点的数量的差值大于第二设定阈值。实施中,考虑到真实的角点是最相似的,也是数量最多的,可以作为一个类别,受干扰光线照射、阴影等影响的噪点是最相似的,数量相对较少,可以作为一个类别,为了避免去除的噪点中混入较多的真实角点,可以增加一个类别,形成制约,因此,上述k的取值可以为3;相应的,n的取值为1或2。如果3个类别中,一个类别的角点的数量与另外两个类别的角点的数量的差值均大于第二设定阈值,甚至远大于另外两个类别,认为是真实的角点,如果另外两个类别的角点的数量的差值小于或者等于第二设定阈值,则两个类别都去除,如果另外两个类别的角点的数量的差值大于第二设定阈值,则去除角点数量最少的一个类别。一些实施例中,采用第二种方案:根据默认设置确定n的取值。比如,默认设置n的取值为1,只去除一个角点数量最少的类别,提高处理效率。一些实施例中,先进行非极大值抑制,再进行k-means聚类算法,基于以上所介绍的具体实现方式,可以采用第三种方案:当对k个类别从低到高进行排序时,获取第1个类别的角点的数量,如果第1个类别的角点的数量大于或者等于第三设定阈值,则确定n的取值为1,如果第1个类别的角点的数量小于第三设定阈值,从第2个类别开始往后,依次选择各个类别作为当前处理类别,并进行如下处理:统计第p个类别及本类别之前的各类别的角点的总数量,将统计的第p个类别及本类别之前的各类别的角点的总数量与第三设定阈值进行比较,如果统计的第p个类别及本类别之前的各类别的角点的总数量大于第三设定阈值,则确定n的取值为p-1并停止选择当前处理类别,如果统计的第p个类别及本类别之前的各类别的角点的总数量等于第三设定阈值,则确定n的取值为p并停止选择当前处理类别,如果统计的第p个类别及本类别之前的各类别的角点的总数量小于第三设定阈值,则选择下一个当前处理类别;其中,p的取值为2~k的正整数。或者,当对k个类别从高到低进行排序时,获取第k个类别的角点的数量,如果第k个类别的角点的数量大于或者等于第三设定阈值,则确定n的取值为1,如果第k个类别的角点的数量小于第三设定阈值,从第k-1个类别开始往前,依次选择各个类别作为当前处理类别,并进行如下处理:统计第k-j个类别及本类别之后的各类别的角点的总数量,将统计的第k-j个类别及本类别之后的各类别的角点的总数量与第三设定阈值进行比较,如果统计的第k-j个类别及本类别之后的各类别的角点的总数量大于第三设定阈值,则确定n的取值为j并停止选择当前处理类别,如果统计的第k-j个类别及本类别之后的各类别的角点的总数量等于第三设定阈值,则确定n的取值为j+1并停止选择当前处理类别,如果统计的第k-j个类别及本类别之后的各类别的角点的总数量小于第三设定阈值,则选择下一个当前处理类别;其中,j的取值为1~k的正整数。一些实施例中,先进行k-means聚类算法,再进行非极大值抑制,基于以上所介绍的具体实现方式,可以采用第四种方案:当对k个类别从低到高进行排序时,获取第1个类别的角点的数量,如果第1个类别的角点的数量大于或者等于第四设定阈值,则确定n的取值为1,如果第1个类别的角点的数量小于第四设定阈值,从第2个类别开始往后,依次选择各个类别作为当前处理类别,并进行如下处理:统计第p个类别及本类别之前的各类别的角点的总数量,将统计的第p个类别及本类别之前的各类别的角点的总数量与第四设定阈值进行比较,如果统计的第p个类别及本类别之前的各类别的角点的总数量大于第四设定阈值,则确定n的取值为p-1并停止选择当前处理类别,如果统计的第p个类别及本类别之前的各类别的角点的总数量等于第四设定阈值,则确定n的取值为p并停止选择当前处理类别,如果统计的第p个类别及本类别之前的各类别的角点的总数量小于第四设定阈值,则选择下一个当前处理类别;其中,p的取值为2~k的正整数。或者,当对k个类别从高到低进行排序时,获取第k个类别的角点的数量,如果第k个类别的角点的数量大于或者等于第四设定阈值,则确定n的取值为1,如果第k个类别的角点的数量小于第四设定阈值,从第k-1个类别开始往前,依次选择各个类别作为当前处理类别,并进行如下处理:统计第k-j个类别及本类别之后的各类别的角点的总数量,将统计的第k-j个类别及本类别之后的各类别的角点的总数量与第四设定阈值进行比较,如果统计的第k-j个类别及本类别之后的各类别的角点的总数量大于第四设定阈值,则确定n的取值为j并停止选择当前处理类别,如果统计的第k-j个类别及本类别之后的各类别的角点的总数量等于第四设定阈值,则确定n的取值为j+1并停止选择当前处理类别,如果统计的第k-j个类别及本类别之后的各类别的角点的总数量小于第四设定阈值,则选择下一个当前处理类别;其中,j的取值为1~k的正整数。以上第三种和第四种方案中,为去除的角点的总数量设定阈值,去除的角点的总数量不能超过这个阈值,避免去除过多的角点,导致真实的角点的缺失,从而实现了动态确定n的取值的方案。其中,第三设定阈值和第四设定阈值的数值均可以根据经验统计进行设置。由于在进行非极大值抑制之前,角点的数量较多,因此,可以设置第四设定阈值大于第三设定阈值。以下对第三种方案进行举例说明,第四种方案可以参考实施。比如聚类得到三个类别,按照从高到低的顺序排序,第1个类别的角点的数量是10000,第2个类别的角点的数量是40,第3个类别的角点的数量是10,设置的第三设定阈值的数值为20,相应的,确定n的方案是:获取第3个类别的角点的数量,第3个类别的角点的数量10小于第三设定阈值的数值20,选择第2个类别作为当前处理类别,并进行如下处理:统计第2个类别及本类别之后的第3个类别的角点的总数量,得到30,将统计的第2个类别及本类别之后的各类别的角点的总数量30与第三设定阈值20进行比较,统计的第2个类别及本类别之后的各类别的角点的总数量30大于第三设定阈值20,则确定n的取值为1,并停止选择当前处理类别。基于以上对角点检测概念的介绍,上述步骤22中,根据ix和iy计算局部特征结果矩阵m的特征值λ1和λ1以及响应函数rx,y,其具体实现方式可以是:据ix和iy,计算ix2、iy2和ix*iy;利用高斯函数对ix2、iy2和ix*iy进行滤波;根据ix2、iy2和ix*iy计算局部特征结果矩阵m的特征值λ1和λ1以及响应函数rx,y。下面以一个具体的应用场景为例,对本申请实施例提供的一种危化品仓库中码垛的监控方法进行更加详细地描述。本实施例中的场景中,为危化品仓库设置的监控系统包括与以太网接口连接的本地存储主机、与存储主机连接的核心处理器、通过串口线与核心处理器连接的双目相机。其中,核心处理器可以独立设置,也可以内置在存储主机中。所使用的核心处理器的配置如下:cpu为intercorei54200,显卡为gt750m2gddr3,内存8g,其基于win10操作系统,采用的开发平台为visualstudio2023,opencv2.4.21。核心处理器可以通过tcp/ip与云端进行数据传输与访问,从而将监控数据传输到云端,远程的安装有app的手机可以通过网络访问云端,也可以在电脑上通过网页访问云端,实现远程智能监控。其中,采用的双目相机参数如下:分辨率为1920*1080,信噪比为39db,像素为200万。本实施例的方案中,基于步骤22所介绍的harris角点检测步骤对角点进行检测,其中,采用了非极大值抑制和k-means聚类算法,具体的实现方式上面已经详细介绍。本实施例中,k-means聚类算法中k的取值为3,n的取值的确定基于上述第一种方案实现,n的取值为1或2。在进行非极大值抑制的过程中,按照如下公式进行:其中,rows是图像的像素的长,cols是图像的像素的高,单位为px。u表示集合,x坐标和y坐标表示角点(即作为角点的像素点)的位置,x坐标对应的集合的范围是[ksize/2,rows-ksize/2],y坐标对应的集合的范围是[ksize/2,cols-ksize/2]设置窗口大小ksize主要是抑制像素位置迭代比较过程中出框现象。抑制对象为满足rx,y大于第一设定阈值δ的角点,δ的经验取值为20000。在本实施例的k-means聚类算法的实现过程中,随机选取3个角点的rx,y作为中心点,遍历所有的角点的rx,y,计算每个聚类的平均值,并作为新的中心点,判断是否收敛,即第n次与第n-1次中心点差小于0.001,如果不收敛,继续遍历所有的角点的rx,y,将每个rx,y划分到最近的中心点,否则归档聚类结果。聚类算法的时间复杂度为o(i*n*k*m),空间复杂度为o(n*m),m为每个元素字段个数,n为数据量,i为迭代个数。数据距离中心点远近的判断如公式(6)所示:其中,xs,ys为选取中心点的位置,n为角点的个数,xi,yi为非选取为中心点的角点i的位置,d为距中心点的距离。基于以上设置,可以对改进的harris角点检测的效果进行检验。如图3所示,图3中a为标准库几何图形的原图,b为标准库几何图形经过传统harris角点检测寻找的角点原图,c为本方案中步骤22改进的harris角点检测方案寻找到的角点图,左上角侧边上的噪点被去除,由图可见,改进的harris角点检测方案比传统算法能够更有效的识别正确角点。如图4所示,为opencv标准库棋盘圆点原图,在角点检测过程中,右下角竖向文字信息将产生噪点,类似于码垛角点检测中的非码垛货物干扰,如人为走动等。本方案中步骤22改进的harris角点检测方案寻找到的角点图如图5所示,其中圆点是右下角竖向文字信息在图片上的像素位置,可看出已有效检测。预先在危化品仓库中,按照五距的安全标准参数码放满货的码垛,以及码放非满货、超标的码垛,一共三种状态的码垛,如图6所示,a为非满货状态,c为超标状态,b为码垛满货状态,即码垛码放长宽高最大范围的标准码放状态,而码垛角点正是长宽高范围最凸出点,在获得此位置满货即标准对比图后,依次对相应位置后续码垛码放进行角点对比,若大量出现角点圈出范围外的像素坐标即为码垛超标码放,反之码垛码放正常,故角点去噪非常重要。如图7所示,上面一行的a、b、c为传统的harris角点检测方法得到的图像,下面一行的a、b、c为本方案改进的harris角点检测方法得到的图像,如图8所示,为聚类后的结果,分成了三个类别,其中,数量最少的类别被去除,可见,本方案的图像中角点数量明显减少,去除了噪点。在此基础上,再对光线照射、阴影和其他非码垛物品干扰三种情况的效果进行验证,如图9所示,a、b、c分别表示光线照射、阴影和其他非码垛物品干扰三种情况,如图10所示,上面一行的a、b、c为传统的harris角点检测方法得到图像,下面一行的a、b、c为本方案改进的harris角点检测方法得到图像,本方案的图像中角点数量明显减少,可见基本去除角点圈出范围以外的大量噪点。与此同时引入f-measure值进一步对数据进行比较判定。如下公式(7)所示,分别为准确率、召回率和f-measure的大小计算:其中,检测正确角点数为不包含噪点的角点数量,即码垛内部或边缘部分出现的角点。真实角点数为不包含噪点和码垛内部或边缘部分出现的角点,即码垛真实最凸出的棱角点。检测出来的角点数即为算法检测出来的所有角点数。公式(7)中,准确率大小应不超过1,且其值越大越好。召回率代表覆盖的度量,其值越接近1值越好。f-measure为综合评价指标,即解决准确率和召回率出现矛盾时的情况,其值越接近1越好。根据图10三组不同情况的对比图,分别计算相应的f-measure等值,如下表2所示。表2传统的harris角点检测和改进的harris角点检测的f-measure等值如上表2所示,在光线影响下经过改进的harris角点检测方法去噪后准确率提高10.62%。阴影影响下经过改进的harris角点检测方法去噪后准确率提高3.95%。非码垛物品干扰影响下经过改进的harris角点检测方法去噪后准确率提高了52.53%。综合上述各种干扰条件,通过双目相机采集的视频流检测,生成96幅监控画面图片,包括了以上光线、阴影等各种因素。分别基于传统的基于本实施例中改进的harris角点检测方法得到角点和基于传统的harris角点检测方法得到角点,并计算准确率值,并进行数据比对,如图11所示,横坐标为按时间顺序从视频流中检测的图片顺序号,3帧检测1幅图片,纵坐标为图片对应的f-measure值,星号标记表示改进的harris角点检测方法对应的f-measure值,圆圈表示传统的harris角点检测方法对应的f-measure值,由图11可见,改进的harris角点检测方法对应的f-measure值明显提高。并对生成的96幅监控画面图片,计算准确率、召回率以及f-measure的平均值,如下表3所示。表3准确率、召回率以及f-measure的平均值如表3所示,可看出其准确率平均提高16.35%,召回率平均提高18.55%。从实验结果表明,本实施例的改进方法对于光线、阴影和其他非堆垛物品干扰等多种情况具有很好的抗噪能力,时间效率接近,准确率平均提高16.35%。实施中,基于以上危化品仓库中的满货的码垛的状态,对危化品仓库中的码垛进行监控,利用双目相机实时采集危化品仓库中危化品码垛的图像,核心处理器对实时采集的危化品码垛的图像进行本实施例中改进的harris角点检测步骤,得到第一角点图像,将第一角点图像与预先得到的码垛满货状态下的第二角点图像进行对比,如果第一角点图像中的角点所确定的范围超出第二角点图像中的角点所确定的范围,确定码垛超标,通过发出报警信息,通过tcp/ip将报警信息发送到云端,远程的安装有app的手机可以通过网络访问云端,也可以在电脑端通过网页访问云端,实现远程智能监控。参见图12,图12是本申请另一个实施例提供的一种电子设备的结构示意图。如图12所示,本实施例提供的一种电子设备,包括:处理器1201,以及与处理器1201相连接的存储器1202;存储器1202用于存储计算机程序;处理器1201用于调用并执行存储器中的计算机程序,以执行如以上任意实施例的方法。本实施例中的电子设备可以但不限于是电脑。本申请实施例提供的电子设备的具体实施方案可以参考以上任意例的危化品仓库中码垛的监控方法的实施方式,此处不再赘述。可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。需要说明的是,在本申请的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本申请的描述中,除非另有说明,“多个”的含义是指至少两个。流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属
技术领域
的技术人员所理解。应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。本
技术领域
的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。上述提到的存储介质可以是只读存储器,磁盘或光盘等。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1