1. 引言
在变电站的运检工作当中,对小动物入侵的检测和驱赶是非常重要的一项任务。因为各种小动物,例如鼠类,麻雀,猫,蛇,黄鼬等,可能会进入电缆沟盖板以下取暖,同时咬坏和破坏电缆;以及停留或排泄在绝缘子上,导致短路等诸多事故;更有一些现场工作人员和施工人员疏忽导致的裂纹、漏洞或者窗缝等问题,为小动物进入配电室提供了可能性,进而导致高压母线,端子排,刀闸开关等一系列控制机构存在被误触的危险,危害性极大。
传统的小动物感知和检测方法主要依赖于人力。其工作流程一是依赖于人的主观判断,没有足够的科学和数学依据,二是耗时耗力,且主要集中在事前预防和事后弥补两个环节,没有真正验证过方法的有效性,也就无法切实地进行评价和改进工作。
一些已有的研究工作可能会依赖于现有的监控摄像头画面,对运动的未知物体进行跟踪和识别,然后提交给后台人员判断和处理;或者构建一整套基于物联网的防控系统,当小动物触发到某些传感器时,迅速发出报警信号并提示人员前往处理 [1]。
但是,因为可采集的样本图像有限以及生物体本身形态的多样性,现有的视觉识别和机器学习方案并不能很好地检测到各种野生动物在变电站的出没情况。尤其对于小型生物,其在可见光相机的视野内往往只有几个像素的大小,难以准确识别判断,因而很容易产生漏报或者误报的情形,无法用于实际生产。
针对上述问题,本文提出了一种基于多光谱相机设备的检测方法,通过可见光相机和红外测温相机的联合检测,对活体生物的位置和数量进行精准的判断之后,再进行上报和自动驱赶处理。这一方法的准确性和自动化程度更高,且成本低廉,可以考虑使用现有的设备进行利旧改造,因此比较适合于变电站运维等典型的应用场景。
2. 基于多光谱数据的生物感知
2.1. 基于可见光的生物识别
我们使用现在流行的目标检测框架Yolo3来实现RGB摄像头画面中的生物目标识别:为了定位到目标的具体位置,我们将每一帧的输入图像分成许多子块,然后把子块送入到预训练的目标识别模型中。
进行目标定位的第一步是通过区域合并算法将图像划分为n个预分割的区域,然后计算每个区域和其相邻区域的相似度,从而得到一个n*n的相似度矩阵。注意某个区域与不相邻区域之间的相似度可设为NaN,即无效值。从矩阵中找出最大相似度值对应的两个区域,将这两个区域合二为一,重复该过程直到区域无法继续合并为止。如此得到初始的推荐目标区域,整个过程如图1所示。

Figure 1. Execution process of region merging algorithm
图1. 区域合并算法的执行过程
对于每一个推荐区域,将它输入到CNN网络的预训练模型中的多个分类模型进行过滤,判断哪个分类器给的分数最高,以确定区域的整体类别以及可信度,同时在这一过程中通过边界框(Bounding box)修正回归模型来改善轮廓界线 [2]。
考虑到基于CNN的图像识别方案大多数对于小目标的判断不理想,或者容易漏检;而变电站中对小动物的监测需求更为偏重,反而不需要对较大的目标进行监测(例如人,猫,狗,大型动物等),我们对Yolo3网络的边界框修正模型做了修改 [3]。并通过采样的方式增加了更多的小目标图像作为输入的训练图片,如图2所示。

Figure 2. Training images after oversampling enhancement
图2. 过采样增强后的训练图片
通过CNN神经网络对可见光图像进行识别,可以从输入的摄像头画面中找到几乎所有的小动物目标,但是它也会带来大量错误的识别结果。如图3所示,这里绝大多数的返回结果是具有一定特征的非生物体(例如设备反光,标识牌,墙面裂痕等),并非真的小动物。如果允许系统对任何识别到的对象都进行报警的话,误报率必然较高,对运检人员反而成了额外的时间浪费和工作负担;如果提高识别阈值,或者边界框的预测数据,那么又会漏掉应该被识别到的鼠类等生物,失去系统原本的价值。

Figure 3. CNN recognition results of small targets
图3. CNN识别小目标的结果
2.2. 基于温度采集设备的生物识别
为了优化和解决这一问题,我们引入了多光谱相机的方案,即,增加一台与可见光相机的视场角、位置和姿态完全一致的热红外测温相机,构成一个双光系统,共同对当前场景进行检测和目标识别。
热红外检测的主要方法是阈值判断和提取,即所谓的热点检测。热像仪价格昂贵,分辨率低,需要监测的物体通常以图像中的几个点(几个像素,甚至亚像素)的形式出现。不过,生物体往往呈现出比背景更热的形态,因为它们本身的体温,以及为了快速运动会产生动能 [4]。
对于这种背景和物体对比度较高的情形,我们可以通过阈值判断来择选出可疑的生物体,然后进行识别和跟踪。但是,单纯依靠红外测温的方式来识别生物的外型和种类是非常困难的:首先,生物身上可能有一些接近环境温度的“伪装区域”,例如人身上的外套和眼镜,或者冷血动物的身体;其次,生物体身上或者它附近的材质可能会对热像仪产生反射效果,导致错误的温度识别结果;第三,针对变电站这类应用场合,很多设备再工作过程中本身具有一定的温度,甚至是高于人体和生物体体温的温度。这些因素都可能导致单纯的热红外检测方法失效。因此,需要考虑可见光和热红外相机识别结果融合的方法:首先通过可见光相机的CNN识别出第一轮结果,然后对每个结果值进行二次筛选,通过热点检测去除明显不是所需结果的部分,从而大幅度提升生物体检测的稳定性和正确率。
2.3. 多光谱相机的结果融合
在进行识别结果融合之前,红外测温相机的画面需要与可见光相机进行标定对齐,因此我们需要提前测量并计算这两台相机的内参,以及它们的位置姿态关系。因为红外相机的画面分辨率通常不超过640 × 512,清晰度也有限,因此必须制作专用的标定板,我们选择常见的棋盘格形式标定板来实现可见光相机内参的计算,同时在棋盘格的每个单元边界上粘贴可发热的LED灯带,从而在红外相机中构成明显的温度矩阵图案,该图案可以用于红外相机的镜头内参标定。因为红外相机的视场角度通常较小,镜头畸变参数也较小。因此对内参标定的精度需求并不高,可以采用这种方案进行简单的标定输出。
同时,我们手动调整红外相机和可见光相机显示的黑白棋盘格和红外矩阵画面,将它们严格对齐,从而计算得到两台相机之间的位置姿态关系外参矩阵。假设红外相机相对于可见光相机的外参矩阵为Me,红外相机的内参矩阵为M0,可见光相机的内参矩阵为M1,则红外相机中的某个像素点P0与可见光相机中对应像素点P1之间的关系为:
由此我们可以将之前识别的结果代入到同一帧的红外相机画面中。如果某个识别框中存在同样形状的接近体温值的区域,则可以认为该识别框确实对应于某种类型的生物;如果识别框中不存在接近体温的数值,或者温度值范围的聚类结果完全不符合识别框中的区域形状,则认为该识别框的结果无效,将它直接忽略即可。
由此我们可以将图3的部分识别结果对齐到对应的红外相机画面中,并通过温度值的判断发现,所有之前的识别框得到的结果都是误报值,如图4所示。

Figure 4. Secondary filtering of recognition results in ultra-red camera
图4. 红外相机中对识别结果进行二次过滤
3. 小动物物驱赶技术的研究
3.1. 小动物驱赶方法概述
在识别到小动物入侵之后,目前常见的驱赶手段主要有超声波,激光束,或者机械振动等方式 [5]。
因超声波驱赶方案的设计原理是:人类的听觉频段在2 kHz到20 kHz之间,而小动物可以听到的声音频段通常在5 kHz到50 kHz之间,所以我们可以将超声频段设置在30 kHz到50 kHz之间,这样就避免对人类的听觉产生影响,但是会明确地对小动物产生警示作用 [6]。相比较一般的声波而言,超声波有着更高的频率和更短的波长,并有着良好的方向性,可以穿透不透明的物体。通过程序识别到小动物之后,控制GPIO端口输出高电平信号到超声波发射设备端,产生指定频段的超声波信号,这样就能够起到驱赶小动物的作用。
超声波驱赶的问题是有些经常出现在变电站附近的小动物可能会对此产生实应性。另一种常见的驱赶小动物,尤其是驱赶鸟类的方案是使用大型激光束:激光的波长设置在532 nm,即绿色波段;然后通过机械控制激光束在天空中随机舞动,从而产生惊吓鸟类的效果。因为鸟类等很多小动物的视觉敏感度很高,一旦受到激光照射会产生很强的刺激性,无法很快适应,因此这一方案的应用效果通常较好。当程序识别到小动物,尤其是鸟类靠近时,可以控制GPIO端口输出高电平信号到激光发射设备,控制它开始运动。这一方案的问题在于激光束对于人眼也有一定的刺激性,且造成局部环境的光污染问题,并且它对于地面上的小动物通常不具备很好的驱赶效果。
其它一些驱赶方式,例如机械振动产生噪音,模拟爆竹发声产生噪音,或者喷射刺激性水雾等,驱赶效果和应用场合各不相同,但是在变电站的应用都有一定的局限性,这里不再赘述。
3.2. 小动物自动识别和驱赶流程方案
我们将前文所述的双光相机识别小动物的方案,与超声波驱赶小动物的方案进行融合,可以得到整个系统的工作流程图,如下图5所示:

Figure 5. Small animal recognition and drive flowchart
图5. 小动物识别和驱赶流程图
4. 应用实例
我们使用一台海康威视的热成像双光谱MINI云台来实现小动物智能识别的工作。该设备的可见光相机分辨率为1080 P,热成像相机分辨率为640 × 512,整机重量约为4.5 kg,防水等级IP67,防雷防浪涌,符合变电站使用标准。设备外观如图6所示:

Figure 6. Hikvision thermal imaging dual-spectrum cloud platform
图6. 海康威视的热成像双光谱云台
通过测试数据进行动物识别和检测的结果如图7所示。从图中可以看出,一部分可见光图像中误检的识别框(左上图),在红外图像中被自动剔除了,而确实存在生物温度信息的识别框则保留下来,作为融合感知的最终结果传递到系统的下一个流程。

Figure 7. Recognition results of test data from dual-spectrum perception system
图7. 双光感知系统对测试数据识别的结果
通过对50张左右的测试图像进行单独可见光识别,单独红外阈值识别,以及融合识别的测试,得到的识别结果对比如下表1所示:

Table 1. Comparison of individual camera recognition and fusion recognition results
表1. 单独相机识别和融合识别的结果对比
从表中可以看出,融合识别的总正确率明显高于单独某台相机的识别正确率,该方案可以认为是切实有效的。
5. 结语
本文研究了变电站运检场景下,通过可见光和热红外相机组合的方式对小动物入侵进行识别的方案。首先我们需要保证两台相机的画面是经过严格标定对齐的。然后通过可见光相机以及针对小目标检测改进的CNN智能识别方法,找到可能是小动物的识别框并记录下来,并映射到热红外相机的同一帧画面结果中。依次识别每个框中是否存在明显异于环境温度的热点区域,并据此对前一步的识别结果进行排查和修剪。
如果仍然有可疑的识别结果,则认为可能是小动物入侵行为。此时通过GPIO端口驱动厂区内的超声波发射设备,发出指定频率的超声波来驱赶小动物。如果之前的识别结果属于误报,或者识别到的是人类,那么驱赶用的超声波信号并不会产生恶性影响。因此本系统的运行过程可以确保安全和稳定,且部署相对简单,甚至可以进行利旧设备的改造。
本文所述的识别算法运行稳定,有效地解决了小型生物体检测和识别困难的问题,大幅度提升了检测结果的准确性。并且可以很方便地与其它基于传感器或者基于深度学习的方案相结合。但是,该算法目前还没有达到完善的地步,这是因为变电站小动物入侵的图片较少,无法对CNN模型进行有效的人工标注和训练,而是只能使用其它公开的野生动物图片集(例如CameraTrap图集和Wild-Anim Dataset图集)。我们下一步的主要工作方向是尝试大量收集和标注变电站场景的小动物图片,构建具有针对性的识别模型,测试和完善我们的识别流程,从而尽快达到实际可用的程度。