黃藝香,甘世溪,劉曉波
(泉州信息工程學(xué)院機(jī)械與電氣工程學(xué)院,福建泉州 362000)
大學(xué)學(xué)校是國(guó)家電力重點(diǎn)確保單位,其用電量也十分驚人。究其原因,除了大學(xué)人數(shù)體量大,用電設(shè)備多造成電量消耗大的原因外,在大多數(shù)學(xué)校對(duì)教室用電電器的管理都還停留在人工手動(dòng)階段,教室用電電器沒(méi)能及時(shí)關(guān)閉也是導(dǎo)致電能浪費(fèi)的重要原因。另一方面,教室是學(xué)生最主要的學(xué)習(xí)活動(dòng)場(chǎng)所,其環(huán)境溫度和光線強(qiáng)度直接影響學(xué)生的身心健康和工作效率[1-2]。因此為師生營(yíng)造舒適的教室環(huán)境,并達(dá)到節(jié)能減排效果,特別在能源日益緊缺的時(shí)代,是一個(gè)很有意義的課題。現(xiàn)有的智能教室管理系統(tǒng)主要采用RFID 技術(shù)或紅外傳感器技術(shù)自動(dòng)感應(yīng)某一范圍內(nèi)是否有人來(lái)決定照明燈等電器的工作狀態(tài)[3]。這種架構(gòu)的系統(tǒng)實(shí)時(shí)性很好,但需要在硬件上提供更多的支持,會(huì)增加系統(tǒng)硬件復(fù)雜度,也缺乏良好的柔性度。隨著機(jī)器視覺(jué)在事物的檢測(cè)和識(shí)別方面逐漸發(fā)展成熟,憑借其非破壞性、高精度、快速度等特點(diǎn),在各行業(yè)得到廣泛研究和應(yīng)用[4]。本文的主要工作是研究基于機(jī)器視覺(jué)的教室智能控制系統(tǒng),包括3 個(gè)方面:(1)構(gòu)建視覺(jué)系統(tǒng),利用位置固定的監(jiān)控?cái)z像頭結(jié)合混合高斯模型算法,統(tǒng)計(jì)教室內(nèi)各分區(qū)人數(shù);(2)設(shè)計(jì)硬件系統(tǒng),包括人數(shù)、溫度、光照度和驅(qū)動(dòng)電路;(3)設(shè)計(jì)軟件程序,采用PID 控制算法形成控制量,自動(dòng)調(diào)控教室的空調(diào)、風(fēng)扇和照明系統(tǒng),達(dá)到改善教室用電浪費(fèi)問(wèn)題,并為師生營(yíng)造舒適工作環(huán)境目的。
本系統(tǒng)構(gòu)成如圖1 所示,由教室主控制器和若干個(gè)檢測(cè)模塊、驅(qū)動(dòng)模塊構(gòu)成。系統(tǒng)由視覺(jué)模塊負(fù)責(zé)監(jiān)測(cè)教室各個(gè)照明燈下一定區(qū)域內(nèi)是否有人,并實(shí)時(shí)將監(jiān)測(cè)結(jié)果傳輸給主控制器,由主控制器啟動(dòng)各檢測(cè)模塊獲取教室實(shí)時(shí)環(huán)境參數(shù),經(jīng)控制算法實(shí)現(xiàn)各照明燈和風(fēng)扇的開(kāi)啟與關(guān)閉,及空調(diào)工作溫度調(diào)節(jié)。教室管理人員可以借助手機(jī)終端App 實(shí)時(shí)監(jiān)控各教室人員數(shù)量、電器工作狀態(tài)、系統(tǒng)故障等情況,并發(fā)出無(wú)線控制指令。
圖1 教室控制系統(tǒng)結(jié)構(gòu)
人數(shù)檢測(cè)電路采用紅外對(duì)管,其原理如圖2 所示。在教室的每個(gè)門框前、后各安裝一路反射式紅外對(duì)管傳感器,當(dāng)有人進(jìn)出教室的門時(shí),兩路紅外傳感器先后感應(yīng)到信號(hào),由此判斷人進(jìn)入還是走出教室。圖中包括兩路紅外對(duì)管電路,每路由紅外發(fā)射電路、紅外接收電路和比較電路組成,如電阻R15、R23、三極管Q2和紅外發(fā)射二極管就構(gòu)成了一個(gè)完整的發(fā)射電路。為了降低干擾,Q2基極輸入調(diào)制信號(hào)頻率為38 kHz,在5 V的工作電壓條件下,發(fā)射接收對(duì)管的有效距離約20 cm。當(dāng)紅外接收管接收到紅外線時(shí)導(dǎo)通,電阻變小,LM393的同相端第5 腳電壓將低于反相端第6 腳的閾值電壓,第7 腳輸出低電平給單片機(jī)。
圖2 人數(shù)檢測(cè)電路
環(huán)境檢測(cè)電路包括溫度檢測(cè)和光照度檢測(cè)兩部分,分別測(cè)取區(qū)域下方的環(huán)境光照度和溫度值,其原理如圖3 所示。溫度檢測(cè)采用傳感器DHT11,使用3.3 V 電壓供電,為了避免接線過(guò)長(zhǎng)導(dǎo)致傳感器供電不足,造成測(cè)量偏差,系統(tǒng)盡量縮短數(shù)據(jù)端DATA 與控制器的連接線。由于系統(tǒng)在不同位置安裝多個(gè)DHT11,其與控制器的連線長(zhǎng)度不一,所以每個(gè)數(shù)據(jù)端DATA的上拉電阻需要根據(jù)實(shí)際連線長(zhǎng)短進(jìn)行取值。圖中的DHT11離主控制器最近,采用4.7 kΩ 上拉電阻,其他DHT11 隨著連線長(zhǎng)度增加需要降低上拉電阻的阻值。光照度檢測(cè)電路由R10和光敏電阻R9 的分壓電路構(gòu)成,光線強(qiáng)度變化將引起光敏電阻的阻值發(fā)生變化,隨之其兩端的電壓值也變化,經(jīng)A/D 轉(zhuǎn)換后得到精確的環(huán)境光線強(qiáng)度數(shù)值。
圖3 環(huán)境檢測(cè)電路
系統(tǒng)主控制器在3.3 V 供電條件下,輸入/輸出口灌電流為8 mA,源電流為4 mA,無(wú)法滿足繼電器吸合電流,所以采用了S8050 進(jìn)行擴(kuò)流,其原理如圖4 所示。繼電器線圈作為集電極負(fù)載,主控制器向S8050 基極輸出脈沖信號(hào),使其工作在開(kāi)關(guān)狀態(tài),接通或斷開(kāi)繼電器線圈,促使觸點(diǎn)動(dòng)作。在S8050 由飽和變?yōu)榻刂箷r(shí),線圈兩端產(chǎn)生較大反向電壓,二極管D2 起續(xù)流放電作用,使S8050集電極對(duì)地電壓不超過(guò)允許值。
圖4 一路繼電器驅(qū)動(dòng)電路
教室控制系統(tǒng)設(shè)有手動(dòng)模式和智能模式,其主流程如圖5所示。在智能模式下,教室主控制器根據(jù)各檢測(cè)模塊提供的實(shí)時(shí)環(huán)境數(shù)據(jù),自動(dòng)控制教室的照明燈、風(fēng)扇、空調(diào)等設(shè)備,并完成人數(shù)統(tǒng)計(jì)和環(huán)境參數(shù)采集與顯示、與前臺(tái)手機(jī)終端App通信等功能。當(dāng)系統(tǒng)處于手動(dòng)模式時(shí),可由手機(jī)App手動(dòng)控制教室的用電電器。
圖5 教室主程序流程
在系統(tǒng)的智能模式下,利用教室內(nèi)位置固定的監(jiān)控?cái)z像頭,采用“視覺(jué)監(jiān)測(cè)+分區(qū)管理”的方式,控制每個(gè)分區(qū)照明燈的開(kāi)啟與關(guān)閉。系統(tǒng)初次使用時(shí),需要先提取監(jiān)控視頻一幀清晰的教室圖片,結(jié)合教室照明燈的分布情況,確定圖片中每個(gè)照明燈大致ROI區(qū)域。然后由視覺(jué)系統(tǒng)實(shí)時(shí)監(jiān)測(cè)教室內(nèi)各ROI區(qū)是否有人,并將結(jié)果傳輸?shù)较到y(tǒng)控制器。控制器根據(jù)光照度傳感器采集的數(shù)據(jù)及各分區(qū)人數(shù),經(jīng)算法分析,實(shí)現(xiàn)對(duì)教室的照明系統(tǒng)自動(dòng)控制。
由于系統(tǒng)采用位置固定的監(jiān)控?cái)z像頭,在光照、風(fēng)和背景物體增減等因素變化不大的情況下,教室背景相對(duì)穩(wěn)定。與活動(dòng)的前景相比較,背景(顏色)持續(xù)時(shí)間長(zhǎng)且更加靜止,利用這個(gè)特點(diǎn),為教室圖像的每個(gè)像素位置建立基于時(shí)間序列的背景模型,這樣每個(gè)像素位置在整個(gè)時(shí)間序列中會(huì)有很多像素值,且持續(xù)的時(shí)間也存在差異。因此,如果將顏色在整個(gè)視頻中存在時(shí)間的長(zhǎng)短作為混合的權(quán)重,可以實(shí)現(xiàn)教室前景和背景的分割,完成監(jiān)控視頻中活動(dòng)的人的提取[6],圖6 所示為本文采用的前景提取算法混合高斯模型(GMM)的完整流程。
圖6 混合高斯模型前景提取流程
在進(jìn)行前景檢測(cè)前,需要先對(duì)背景進(jìn)行訓(xùn)練。對(duì)圖像中每個(gè)背景像素采用一個(gè)混合高斯模型(GMM)進(jìn)行模擬,每個(gè)背景像素的GMM 包括多個(gè)高斯分布,其個(gè)數(shù)可以自適應(yīng)。本文為每個(gè)背景像素GMM 模型最多建立5 個(gè)高斯分布,每個(gè)高斯分布保存了滑動(dòng)均值、滑動(dòng)方差和權(quán)值3 個(gè)參數(shù)。在測(cè)試階段,根據(jù)這3 個(gè)參數(shù)對(duì)新來(lái)的像素進(jìn)行GMM 匹配,如果新像素能夠匹配GMM中的一個(gè)高斯分布,就認(rèn)為是背景[5]。
每個(gè)高斯分布的滑動(dòng)均值決定了分布的中心位置,其與像素值的關(guān)系滿足式(1);滑動(dòng)方差與像素點(diǎn)偏離高斯分布中心位置有關(guān),如果像素點(diǎn)偏離中心位置在一定方差范圍內(nèi),認(rèn)為該點(diǎn)為背景,滑動(dòng)方差采用式(2)的計(jì)算方法;權(quán)值會(huì)影響高斯分布的中心位置的更新,其采用式(3)的計(jì)算方法。當(dāng)需要為某個(gè)像素新建一個(gè)高斯分布時(shí),新分布的均值通常取該像素值,同時(shí)會(huì)為權(quán)值和滑動(dòng)方差賦一個(gè)合適的初始值[6-7]。
式(1)~(3)中:μt-1、wt-1和分別為當(dāng)前的滑動(dòng)均值、權(quán)值和滑動(dòng)方差;ρt為時(shí)間t的像素值,即新到來(lái)的像素值;α為學(xué)習(xí)速率,它決定了當(dāng)前值對(duì)計(jì)算均值有多大的影響[8]。
為了解決亮度等因素變化引起的場(chǎng)景變化,而導(dǎo)致算法模型適應(yīng)性降低的問(wèn)題,在前景提取過(guò)程中,選擇一定的權(quán)值系數(shù)對(duì)當(dāng)前高斯分布的中心位置進(jìn)行更新,以便于適應(yīng)緩慢的光線變化。本文根據(jù)有效高斯分布閾值T得到有效的截止索引,從而實(shí)現(xiàn)了不同像素點(diǎn)高斯分布個(gè)數(shù)的自適應(yīng)選擇,消除訓(xùn)練中的噪聲點(diǎn)[9]。其步驟如下:(1)根據(jù)w/σ2對(duì)像素點(diǎn)各個(gè)高斯分布進(jìn)行降序排列;(2)選取GMM 最前面X個(gè)高斯分布,其中X滿足式(4):
式中:weightsum為每個(gè)像素GMM 的所有高斯分布的權(quán)值之和,T取0.7,即滿足w/weightsum大于0.7 的個(gè)數(shù)為自適應(yīng)個(gè)數(shù)X。
最后,判斷新來(lái)的像素點(diǎn)是不是前景。將新來(lái)像素點(diǎn)的值逐個(gè)與GMM 的X個(gè)高斯分布的滑動(dòng)均值進(jìn)行比較,只要與其中一個(gè)高斯分布的滑動(dòng)均值的差值在2.5σ2之內(nèi),認(rèn)為是背景,反之認(rèn)為是前景。前景賦值為255,背景賦值為0,至此完成了一幅前景二值圖的提取。對(duì)生成的前景圖的塊利用findContours函數(shù)框出,通過(guò)統(tǒng)計(jì)塊數(shù)來(lái)計(jì)算人數(shù)[10]。
教室光線或其他原因可能會(huì)造成機(jī)器視覺(jué)人數(shù)統(tǒng)計(jì)發(fā)生失誤,降低識(shí)別準(zhǔn)確度,所以系統(tǒng)采用了“機(jī)器視覺(jué)+紅外對(duì)管”的雙計(jì)數(shù)模式,以保證統(tǒng)計(jì)數(shù)據(jù)準(zhǔn)確性。系統(tǒng)利用前后門上的紅外對(duì)管,采用鍵盤掃描框架,當(dāng)紅外傳感器0 感受到有人時(shí),標(biāo)志位sign|=0x01,對(duì)人數(shù)寄存器cnum 加一。紅外傳感器1 被感受到時(shí)標(biāo)志位sign|=0x02,對(duì)人數(shù)寄存器出門減一。當(dāng)標(biāo)志位sign=0x03時(shí)表示已經(jīng)完成了一個(gè)進(jìn)或出過(guò)程。
教室的溫度調(diào)節(jié)采用PID 算法形成控制輸出量,調(diào)節(jié)對(duì)象包括空調(diào)和風(fēng)扇,其結(jié)構(gòu)如圖7 所示。S(t)為用戶設(shè)置的目標(biāo)環(huán)境溫度值;E(t)為目標(biāo)值與當(dāng)前值的誤差;B(t)為教室當(dāng)前溫度值經(jīng)A/D 轉(zhuǎn)換后的數(shù)值;N(t)為外界的溫度干擾,如門窗敞開(kāi)度的變化、人數(shù)和電器數(shù)量變化等。當(dāng)人數(shù)統(tǒng)計(jì)模塊監(jiān)測(cè)到教室有人,控制器開(kāi)啟環(huán)境溫度采集并A/D轉(zhuǎn)換,通過(guò)溫度誤差值E(t)經(jīng)PID調(diào)節(jié)控制教室內(nèi)的空調(diào)、風(fēng)扇[11]。
圖7 室溫調(diào)節(jié)結(jié)構(gòu)框圖
系統(tǒng)測(cè)試時(shí),手機(jī)終端選用支持Andrio 操作系統(tǒng)的小米4X,該型號(hào)手機(jī)具有藍(lán)牙功能,已集成RFCOMM 協(xié)議,具有仿真RS232 功能,只需要建立與RFCOMM 協(xié)議接口的應(yīng)用程序,就可以實(shí)現(xiàn)手機(jī)藍(lán)牙串口數(shù)據(jù)通信[12]。圖8 所示為自主設(shè)計(jì)的手機(jī)終端App界面。
圖8 手機(jī)終端App界面
圖9 所示為本設(shè)計(jì)的實(shí)物模型,視覺(jué)模塊根據(jù)6 盞照明燈的分布,將教室分為6 個(gè)ROI 區(qū)域,其平面示意圖如圖10所示。
圖9 模型實(shí)物
圖10 分區(qū)管理平面示意圖
試驗(yàn)中,為了使系統(tǒng)獲得良好的穩(wěn)定性和精確度,視覺(jué)系統(tǒng)拍攝了200 幀空教室圖片,用于訓(xùn)練GMM 背景模型,每個(gè)像素的最大GMM 個(gè)數(shù)取5,學(xué)習(xí)率α=0.005。訓(xùn)練過(guò)程中,需要建立新GMM模型時(shí),其權(quán)值和方差分別取0.05和30。
圖11 原始圖片和前景圖片
為了解決教室用電電器手動(dòng)控制容易存在電能浪費(fèi),以及傳統(tǒng)人數(shù)統(tǒng)計(jì)方式帶來(lái)的增加硬件復(fù)雜度、缺乏柔性度等問(wèn)題,本文基于機(jī)器視覺(jué),采用混合高斯模型目標(biāo)檢測(cè)算法實(shí)時(shí)檢測(cè)和統(tǒng)計(jì)教室分區(qū)人數(shù),實(shí)現(xiàn)了根據(jù)分區(qū)是否有人自動(dòng)調(diào)控各分區(qū)照明燈;根據(jù)人體最適體感舒適度,采用PID 算法調(diào)節(jié)教室溫度。實(shí)驗(yàn)結(jié)果表明,通過(guò)這些控制策略,系統(tǒng)的智能控制結(jié)果比單純?nèi)斯す芾斫淌矣秒娫O(shè)備更為可靠,更能達(dá)到按需供給電能,起到節(jié)能減排的效果,同時(shí)為師生營(yíng)造良好的學(xué)習(xí)和工作環(huán)境,具有良好現(xiàn)實(shí)意義。下一步將通過(guò)優(yōu)化前景提取算法結(jié)構(gòu)和參數(shù)、優(yōu)化人數(shù)統(tǒng)計(jì)方法,進(jìn)一步提高教室人數(shù)統(tǒng)計(jì)速度和精度。