本技术涉及图像处理的,尤其涉及一种红外摄像头遮挡检测方法、装置、设备及存储介质。
背景技术:
1、随着摄像头技术在多个领域的广泛应用,对摄像头数据的实时性要求日益增长,以确保摄像头在任何时间和地点都能可靠地工作。摄像头遮挡检测作为确保摄像头正常运作的基础功能,能够有效减少人工监控和排查的时间成本。
2、目前,市面上的遮挡检测技术主要包括两种方法:一是通过二值化处理图像,计算前景连通区域的面积来判断遮挡程度;二是监听网络上的视频流,还原视频后提取关键帧进行相似度对比,以判定是否发生遮挡;这些摄像头遮挡检测主要针对彩色摄像头进行,利用其丰富的色彩信息,可以相对容易地实现遮挡检测。
3、然而,对于红外摄像头,由于缺乏色彩信息,传统的基于色彩的遮挡检测技术难以取得良好的效果,此外,复杂的算法在计算资源消耗上较高,尤其是在处理红外摄像头数据时,对cpu资源的需求尤为显著;例如,在rk1109设备上,某些主流的遮挡面积计算和图像相似度对比方法的cpu资源消耗高达20%,因此,有必要开发新的技术来解决红外摄像头遮挡检测中存在的问题,以实现高效、准确的遮挡检测。
技术实现思路
1、本技术提供了一种红外摄像头遮挡检测方法、装置、设备及存储介质,能提高对红外摄像头遮挡检测的效率和准确性。
2、第一方面,本技术提供了一种红外摄像头遮挡检测方法,包括:采集当前帧红外图像,并对所述当前帧红外图像进行图像缩放和图像裁切处理,得到多个红外子图像;分别对每个红外子图像进行中值滤波处理,得到对应的滤波红外子图像;对每个滤波红外子图像进行边缘检测处理,得到边缘检测图像,并对所述边缘检测图像进行中值滤波处理,得到对应的滤波边缘检测图像;分别对每个滤波边缘检测图像进行边缘点计算,得到各自对应的当前帧单位边缘点尺寸,并基于所述当前帧单位边缘点尺寸,确定红外摄像头遮挡状态。
3、在一种可能的实现方式中,对所述当前帧红外图像进行图像缩放和图像裁切处理,得到多个红外子图像,具体包括:基于预设缩放比例对所述当前帧红外图像进行缩放处理,得到缩放红外图像;对所述缩放红外图像进行复制处理,得到第一缩放红外图像和第二缩放红外图像;对所述第一缩放红外图像进行裁切处理,得到多个第一裁切子图像,并对所述第二缩放红外图像进行裁切处理,得到多个第二裁切子图像;整合所述多个第一裁切子图像和所述多个第二裁切子图像,得到多个红外子图像。
4、在一种可能的实现方式中,对所述第一缩放红外图像进行裁切处理,得到多个第一裁切子图像,并对所述第二缩放红外图像进行裁切处理,得到多个第二裁切子图像,具体包括:获取所述第一缩放红外图像对应的第一角点坐标,并获取预设的横向裁切数量,以及所述第一缩放红外图像对应的图像宽度值,基于所述第一角点坐标、所述横向裁切数量和所述图像宽度值,确定第一裁切角坐标,并基于所述第一裁切角坐标,对所述第一缩放红外图像进行横向裁切处理,得到多个第一裁切子图像;获取所述第二缩放红外图像对应的第二角点坐标,并获取预设的竖向裁切数量,以及所述第二缩放红外图像对应的图像长度值,基于所述第二角点坐标、所述竖向裁切数量和所述图像长度值,确定第二裁切角坐标,并基于所述第二裁切角坐标,对所述第二缩放红外图像进行竖向裁切处理,得到多个第二裁切子图像。
5、在一种可能的实现方式中,所述分别对每个红外子图像进行中值滤波处理,得到对应的滤波红外子图像,具体包括:分别对每个红外子图像中的像素点进行遍历处理,并在遍历过程中,基于预设的第一平滑算子,计算每个像素点对应的第一邻域中值,并基于所述第一邻域中值对像素点的像素值进行更新处理,直至遍历完红外子图像中的所有像素点,得到每个红外子图像对应的滤波红外子图像。
6、在一种可能的实现方式中,所述对每个滤波红外子图像进行边缘检测处理,得到边缘检测图像,具体包括:设置预设的边缘检测算法的算法参数,其中,所述算法参数包括索贝尔算子值、高阈值数、低阈值数和欧几里得范数;基于所述索贝尔算子值,分别计算每个滤波红外子图像中每个像素点对应的梯度和梯度方向,并基于所述欧几里得范数,分别计算每个像素点的梯度对应的梯度幅值;遍历每个像素点,并在遍历过程中,基于当前像素点对应的所述梯度幅值和所述梯度方向,确定所述当前像素点是否为局部最大值点,若是,则保留所述当前像素点,否则,删除所述当前像素点;获取所有保留像素点,并将每个保留像素点对应的所述梯度幅值与所述高阈值数和所述低阈值数进行对比,若所述梯度幅值不小于所述高阈值数,或所述梯度幅值等于所述低阈值数,则保留所述梯度幅值对应的目标像素点,若所述梯度幅值小于所述低阈值数,或所述梯度幅值大于所述低阈值数,且所述梯度幅值小于所述高阈值数,则删除所述梯度幅值对应的目标像素点;基于保留的所述目标像素点,生成每个滤波红外子图像对应的边缘检测图像。
7、在一种可能的实现方式中,所述分别对每个滤波边缘检测图像进行边缘点计算,得到各自对应的当前帧单位边缘点尺寸,具体包括:分别统计每个滤波边缘检测图像中非零像素值对应的像素点数量,得到每个滤波边缘检测图像对应的图像边缘点数量;基于所述每个滤波边缘检测图像对应的图像宽度和图像长度,计算所述每个滤波边缘检测图像对应的总像素点数量;将所述图像边缘点数量与所述总像素点数量和像素范围最大值进行除法运算,得到每个滤波边缘检测图像各自对应的当前帧单位边缘点尺寸。
8、在一种可能的实现方式中,所述基于所述当前帧单位边缘点尺寸,确定红外摄像头遮挡状态,具体包括:当检测到存在任一滤波边缘检测图像对应的当前帧单位边缘点尺寸小于预设单位边缘点尺寸阈值时,分别获取每个滤波边缘检测图像对应的上一帧单位边缘点尺寸,将每个滤波边缘检测图像对应的所述当前帧单位边缘点尺寸和所述上一帧单位边缘点尺寸进行对比处理,若对比结果满足红外摄像头遮挡规则,则确定红外摄像头遮挡状态为红外摄像头存在遮挡,否则,确定红外摄像头遮挡状态为红外摄像头不存在遮挡;当检测到不存在任一滤波边缘检测图像对应的当前帧单位边缘点尺寸小于预设单位边缘点尺寸阈值时,则确定红外摄像头遮挡状态为红外摄像头不存在遮挡。
9、在一种可能的实现方式中,红外摄像头遮挡检测装置,包括:图像处理模块、中值滤波模块、边缘检测模块和遮挡检测模块;其中,所述图像处理模块,用于采集当前帧红外图像,并对所述当前帧红外图像进行图像缩放和图像裁切处理,得到多个红外子图像;所述中值滤波模块,用于分别对每个红外子图像进行中值滤波处理,得到对应的滤波红外子图像;所述边缘检测模块,用于对每个滤波红外子图像进行边缘检测处理,得到边缘检测图像,并对所述边缘检测图像进行中值滤波处理,得到对应的滤波边缘检测图像;所述遮挡检测模块,用于分别对每个滤波边缘检测图像进行边缘点计算,得到各自对应的当前帧单位边缘点尺寸,并基于所述当前帧单位边缘点尺寸,确定红外摄像头遮挡状态。
10、第三方面,本技术实施例还提供了一种计算机设备,其包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法。
11、第四方面,本技术实施例还提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序当被处理器执行时可实现上述方法。
12、本技术实施例提供了一种红外摄像头遮挡检测方法、装置、设备及存储介质,与现有技术相比具有如下优点:
13、通过采集当前帧红外图像,并对所述当前帧红外图像进行图像缩放和图像裁切处理,得到多个红外子图像;能将大尺寸图像分解为多个小尺寸的子图像,降低了每次处理的数据量,从而减少了计算复杂度和cpu资源消耗,提高后续的检测效率;后续分别对每个红外子图像进行中值滤波处理,得到对应的滤波红外子图像;对每个滤波红外子图像进行边缘检测处理,得到边缘检测图像,并对所述边缘检测图像进行中值滤波处理,得到对应的滤波边缘检测图像;通过对裁剪出来的每个子图像进行两次中值滤波出来,能尽可能保留有用信息的边缘,减少无用信息对检测的干扰,提高检测的准确性;分别对每个滤波边缘检测图像进行边缘点计算,得到各自对应的当前帧单位边缘点尺寸,并基于所述当前帧单位边缘点尺寸,确定红外摄像头遮挡状态;该操作仅通过确定当前帧单位边缘点尺寸,即可判断图像遮挡情况,该过程操作简单,相比于现有技术中需要采用复杂的算法,能减少对计算资源的占用,进一步提高遮挡检测的有效性。
1.一种红外摄像头遮挡检测方法,其特征在于,包括:
2.如上述权利要求1所述的方法,其特征在于,对所述当前帧红外图像进行图像缩放和图像裁切处理,得到多个红外子图像,具体包括:
3.如上述权利要求2所述的方法,其特征在于,对所述第一缩放红外图像进行裁切处理,得到多个第一裁切子图像,并对所述第二缩放红外图像进行裁切处理,得到多个第二裁切子图像,具体包括:
4.如上述权利要求1所述的方法,其特征在于,所述分别对每个红外子图像进行中值滤波处理,得到对应的滤波红外子图像,具体包括:
5.如上述权利要求1所述的方法,其特征在于,所述对每个滤波红外子图像进行边缘检测处理,得到边缘检测图像,具体包括:
6.如上述权利要求1所述的方法,其特征在于,所述分别对每个滤波边缘检测图像进行边缘点计算,得到各自对应的当前帧单位边缘点尺寸,具体包括:
7.如上述权利要求1所述的方法,其特征在于,所述基于所述当前帧单位边缘点尺寸,确定红外摄像头遮挡状态,具体包括:
8.一种红外摄像头遮挡检测装置,其特征在于,包括:图像处理模块、中值滤波模块、边缘检测模块和遮挡检测模块;
9.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序当被处理器执行时可实现如权利要求1-7中任一项所述的方法。
