铁 锐
(无锡商业职业技术学院,江苏 无锡 214153)
高校具有人员多、面积大、建筑物密集的特点,同时建筑内部用电设备众多,若没有高效且智能化的管控手段,将导致单位建筑能耗居高不下。[1]根据笔者对所在学校实际用能情况分析,教室是主要用电区域之一。教室既要承担白天的教学工作,又要满足晚间学生的自习需求,在使用过程中,不可避免地会出现教室无人或只有少量人员,或环境光、温度均适宜,灯具、空调却仍然全部开放等浪费能源的现象。面对这种状况,如果单纯依靠教室管理人员粗放式的人工管理,很难满足实际需求[2],因而必须考虑技术节能,通过技术手段提高后勤管理整体水平。
目前国内高校教室智能控电系统的研究,基本以光线、声音、热释电红外传感器等作为现场信息采集终端,通常选取其中一种或者两种作为逻辑判断依据,较为单一,且传感器在工作的过程中容易受多种环境因素影响,造成数据采集不准确,导致系统运行不可靠。[3]基于上述原因,设计一种以机器视觉为实时信息采集方式,环境光和温度检测协同工作的节能控电系统,可以在最大程度上弥补传统方式的不足,从而取得更好的管控效果。
系统基于校园以太网络组建,由教室信息采集终端、网络数据传输和后台服务器3 个主要部分组成,同时兼顾科学性、实用性和简洁性进行设计。具体运行路径如图1 所示。
图1 系统运行路径
教室智能面板作为教室通断电控制终端,代替原先教室内的普通面板,直接接入用电回路,从而可以最大程度上降低施工改造的难度并节约改造经费。智能面板接线示意图见图2。
图2 教室智能面板接线示意图
教室智能面板与网关之间采用Lora 无线通信技术设计,其具有传输距离远、功耗低、信号穿透力强、抗干扰能力强等优点,同时可以免于布线,节约建设经费,降低维护难度。
选择教室合适位置安装PoE 网络摄像机,摄像机直接与教学楼弱电间的交换机连接,接入校园以太网,供后台服务器上部署的视频检测程序抓取视频流并进行分析。
服务器将检测结果反馈至智能面板终端,其内置MCU 单元将检测到的人数、光线、温度及红外传感数据进行综合处理后,下发实时控制策略,实现教室用电的智能化控制。
OpenCV 作为开源计算机视觉和机器学习软件库,提供了Python、MATLAB、Ruby 等多种语言接口,包含多种图形图像处理和机器视觉方面的通用算法,且不需要添加新的外部支持也可以完整地编译、链接、生成执行程序,很适合用来做算法的移植。[4]基于建设成本因素考虑,本项目选择普通200 万像素广角摄像机作为视频检测终端,基于OpenCV 视觉检测算法,结合DeepSORT 目标跟踪算法,自行构建视觉识别程序,实现低成本开发。
3.2.1 目标检测
(1)视频捕捉。OpenCV 提供了视频捕捉函数cv2.VideoCapture(视频路径),针对多个视频检测终端场景,通常使用cv2.VideoCapture.grab()方法指向下一帧,cv2.VideoCapture.retrieve()方法解码并返回grab()方法捕获的视频帧。多个摄像头数据流捕获核心代码如下:
(2)目标提取。由于本项目设定场景是室内,几乎不受光照突变和其他环境因素影响,教室人员流动性也较小,不会影响到高斯模型中均值和方差两个参数的更新速度,因而在使用cv2.cvt-Color()函数对目标图像灰度化处理后,选择混合高斯模型作为目标提取算法,通过Background-SubtractorMOG2 函数将人物从背景画面中分离出来,其核心代码如下:
然后,调用cv2.threshold(src,dst,threshold,maxval,type)函数进行图像二值化运算,将图像上像素点的值设为0 或255,图像只剩黑白两色。threshold 是设定的阈值,maxval 是某像素点灰度值大于(或小于)阈值时被赋予的值。
最后,使用cv2.morphologyEx(src,dst,op,kernel)函数对二值化后的图像进行形态学变化。通过cv2.getStructureElement()函数获取kernel 卷积核,对图像进行腐蚀和膨胀操作,最终将人物作为独立的个体从图像中分离出来。
(3)目标识别。OpenCV 提供了多个Haar 级联分类器来进行目标识别,比如人脸、人体、汽车、自行车等。[5]Haar 分类器主要通过样本学习、特征计算和采集、adboost 算法训练和强分类器级联这几个过程来产生,把分类器中存储的对象特征与待检测图像中分离出来的特征进行比对,当检测到对象含有同样的特征时,即可判断对象属性。[6]
OpenCV 在sources/data/haarcascades 和sources/data/lbpcascades 文件夹下自带已经训练好的.xml 文件,比如haarcascade_frontalface_default.xml(正脸)、haarcascade_profileface.xml(侧脸)、haarcascade_lefteye_2splits.xml(左眼)、haarcascade_righteye_2splits.xml(右眼)等。用CascadeClassifier()函数加载分类器文件,用CascadeClassifier.detectMultiScale()函数进行人脸侦测。
本项目在OpenCV 提供的样本基础上,根据教室光线的明暗程度、人的不同姿势状态、空教室状态等特征准备了2586 张左右正负样本图片,通过OpenCV 样本训练工具,自行训练得到了大量的.xml 样本文件,有效提高了检测精度。
3.2.2 目标跟踪
通常教室内会同时出现多个目标,且有各自的运动轨迹,仅仅依靠目标检测算法尚不能准确完成计数功能,因此还需要加入目标跟踪模块。经过比较选择,本项目利用DeepSORT 算法实现多目标跟踪。流程图见图3。
图3 DeepSORT 算法流程图
3.2.3 视觉检测结果验证
根据样本检测结果分析,在光线较弱或人员进入室内时互相叠加程度较大的情况下,仍然会出现漏检的情况。取样教室检测精度计算公式如下:
其中,φ 为检测精度值,n为实际人数,m为检测到的人数。通过式(1)可以计算出样本平均视觉检测精度为92.8%,能够满足项目需求。视觉检测精度如表1 所示。
表1 视觉检测精度统计表
本项目以教学楼中的普通教室作为研究对象,设计不同的室内人数、光照强度、温湿度等场景下系统内部控制逻辑,最终形成完整的系统工作逻辑。
当教室光照度不够且处于断电状态时,红外感应模块作为是否有人进入教室的判断依据。项目选用的摄像机芯片感光度以10lux 为分界线。工作流程图见图4。当室内光线强度高于10lux 时,MCU 判断室内光线能够满足摄像机正常工作需求,此时终端红外感应模块不工作;当室内光线强度低于10lux 的时候,判断为光照度不满足条件,此时MCU 发出指令,激活红外线感应模块,当感应到有人进入教室时,即接通照明电源,如果摄像机在后续向MCU 反馈的数据满足持续亮灯的条件,照明设备就会保持正常工作状态。
图4 红外感应模块工作流程图
光线检测模块主要用于实时检测教室内部光线强弱数据。按照卫生部和国家标准化管理委员会修订发布的中华人民共和国国家标准《中小学校教室采光和照明卫生标准》(GB7793-2010)要求,课桌面平均照度≥300lux,黑板平均照度≥500lux。本项目以此标准作为依据,计划在室内采取分区域照明策略,将教室顶部划分为4 个区域,每个区域设置1 组用电回路,安装2 组照明灯具。[7]工作流程图见图5。通过导入的课程表和摄像机反馈的现场实时数据综合判断当前教室使用状态。当教室处于授课期间,且正在使用,若室内光线强度低于300lux 时,照明全部打开;授课结束后语音播报提醒学生收拾课本离开教室,并关闭全部用电设备。非授课期间,除专门安排的自习室外,其余教室灯具原则上不响应。当教室处于自习状态时,如果室内人数大于10 人,且光线强度低于300Lx时,照明全部打开;如果室内人数小于10 人,教室智能终端通过语音播报,指导学生尽量聚集到人数较多的教室自习,照明不响应;如果教室内自习人员人数较少但大于10 人,摄像机则根据实际座位分布,统计A、B、C、D 四个区域内人员分布数据,如果人员座位较为分散,且室内光线不满足要求,则将人员聚集区域的灯具打开,且语音播报提醒学生尽量集中到开灯区域,非聚集区域不开灯。
图5 光线检测模块与照明的联动控制流程图
在本系统设定中空调为380V 用电回路,因而需用继电器控制接触器来实现回路通断。根据国家节能减排政策和《中华人民共和国劳动法》对空调温度的规定,若夏季室内温度高于32℃,冬季室内温度低于20℃,可以开放空调使用。温度检测模块与空调联动控制工作流程图见图6。通过导入课程表和摄像机反馈的现场实时数据综合判断教室使用状态。当教室处于授课期间,且正在使用,若室内温度不在20℃~32℃范围内,空调电源回路接通,可随时根据需求开机;非授课期间,除自习室外,其余教室原则上空调不响应。当教室处于自习状态时,若室内温度不在20℃~32℃范围内,且室内人数大于10 人,空调电源回路接通;如果室内人数小于10 人,教室智能终端的语音播报模块启动,指导学生尽量聚集到人数较多的教室自习,空调不响应。
图6 温度检测模块与空调的联动控制流程图
上述各模块根据每个传感器的作用、工作条件以及国家政策规定等因素单独进行流程设计,剖析流程细节。最终需要将视觉检测模块与红外、光线、温度控制模块进行联动控制,控制策略如下:在教室正常授课状态,如果光线强度低于设定值,且摄像机判断教室人数符合条件,MCU 下达开灯指令;在教室正常授课状态,如果温湿度数据满足设定值,且摄像机判断教室人数符合条件,MCU 下达开空调或风扇指令;在教室自习状态,如果光线或者温湿度数据满足设定值,但摄像机判断教室人数不符合条件,终端可通过语音播报提示学生聚集到人数较多的教室中;在教室自习状态,如果检测到教室内人数较少,则提示学生分区域照明;如果摄像机在15min 内没有检测到任何人员活动,则关闭室内全部用电设备;如果当前时间超出系统设定的工作时间,语音播报提前10min 提醒学生尽快收拾课本离开,然后关闭教室全部用电设备。
在正常工作状态下,教室用电设备的开关由教室智能控制终端来自动控制,不允许人为干预,只有在教室使用临时调整或设备故障等特殊情况下,管理员可在客户端手动设置开关设备。如果发生调课或者申请临时使用教室,在完善手续后向教管站管理人员报备,管理员可以根据提出的需求进行手动控制设备启停。每个教室为照明、空调额外增加两路冗余用电回路,在教室管理站设置控制终端盒,如果校园网络或者智能控电系统设备发生故障,可以由管理员根据需要,手动控制某个教室的通断电。
选取10 个主要用电设备为照明和空调的普通教室为样本,每个教室内有24 盏36W 普通日光灯和1 台5P 空调,每天开放时间为12 个小时。分别以2021 年6 月和2022 年6 月为统计区间,记录改造前后每个样本教室平均日用电量,并按照式(1)来计算改造后的节能率,其中φ 为节能率,n为改造前单个教室日平均用电量,m为改造后单个教室日平均用电量,如表2 所示。最后可以计算出全部样本教室平均节能率为12.21%,节电效果良好。
表2 样本教室节能率
以笔者所在学校为例,全校各类教室有254间,主要用电设备包括照明灯具约6300 支,总功率约190kW·h,5P 空调柜机约180 台,平均总功率约700kW·h。根据无锡市气象资料统计,自2012 年5 月至2022 年5 月,共计125 个月,其中约55 个月因雨雪天气导致光线强度不足,需要白天开灯,占比约44%。假设照明用电每年按照270天计算,光线不足时平均照明时长为12 小时/天,光线满足时平均照明时长为5 小时/天;空调用电每年按照80 天计算,平均使用时长为10 小时/天。由此可以计算出改造前照明和空调年均用电时长分别为2200 小时和800 小时,对应用电量约为42万kW·h 和56 万kW·h。节能效益如表3 所示。
表3 节能效益分析表
由此可见,改造后按照平均节能率12.21%计算,每年教室可节约用电约12 万kW·h,约为40个普通家庭一年的用电量,带来的经济效益和社会效益均非常显著。
随着全球气候变暖趋势的加剧,各国都在逐步实施低碳经济转型,我国也已经明确提出“双碳”目标,响应政府节能减排的号召是每一个人的责任和义务[8]。本文研究的核心是利用视觉检测算法获取现场实时人数信息,通过综合的数据判断,下发最符合现场实际情况的控制策略,实现高校教室用电的智能化控制,最终达到节能减排的目的。