目前許多公共場所的照明用電處于粗放式的管理狀態,這種管理存在著較大的缺陷,從而造成電能的大量浪費。這種現象與國家創建節約型社會的號召相違背,所以迫切需要合適的控制系統對這些公共場所進行管理。現在普遍采用的節能系統有松下智能照明節能控制系統和美國仁斯利爾大學開發的節能控制系統。前者采用熱線傳感器和計算機控制,后者采用日光轉換器控制。這些設備不僅操作復雜,而且增加整個系統的成本。針對以上問題設計了一種新型的公共場所的節能控制系統,采用基于ARM9內核的S3C2440芯片和USB攝像頭,在Windows CE操作系統下進行程序開發,使整個系統除具有一般的控制照明燈開關的功能之外,還能較準確地檢測公共場所人的數目,具有成本低、穩定性強的優點。
1 系統設計及主要算法
1.1 設計思路及系統結構
本系統主要是針對目前教室等公共場所的節能需求研究開發的,依據動態濾波、顏色匹配和歸一化等相關圖像視頻處理技術以及基于ARM9微處理器的嵌入式系統開發技術。系統工作流程如下:
第一步,初始化系統,即進行一系列的人機交互工作,獲取公共場所無人時的圖像并采取一定的圖像處理技術對圖像進行處理。
第二步,當公共場所的照明燈被打開,此時整個系統就進入工作狀態。系統獲取教室的實時圖像并進行一定的處理,然后采取一定的算法將圖像與模板進行圖形計算從而得到人。由于初始化時依據邊緣檢測的方法將整個圖像進行了分割,那么也就可以大致得出公共場所各個區域人的密度。
第三步,系統依據所得出的人的數目從GPIO接口傳出開關燈的脈沖信號,信號經放大后控制照明燈開關。
當系統運行時,通過設定系統工作的時鐘頻率使整個系統定時獲取公共場所的實時圖像進行開關燈操作。系統工作框圖如圖1所示。
基于模塊化的設計思想,根據系統工作流程可將系統分為以下4個部分:模板圖像的制作、公共場所實時圖像的采集、圖形計算和智能開關控制。這4個部分既保持相互獨立又通過一定的方式連接起來,這不僅使整個系統的穩定性和可維護性得到提高,也使整個系統具有層次性和擴展性。
1.2 S3C2440芯片開發
(1)WinCE條件下USB設備的開發
由于本系統運用USB接口來進行圖像的采集,所以要對Windows CE下的USB設備驅動進行開發。在Windows CE系統下對USB設備進行開發需要運用系統本身提供的流接口驅動模型,它能夠為設備驅動的開發提供通用的接口函數,系統將會對設備進行編號,這樣就可以在程序中直接打開設備并且對其進行操作。本系統的USB攝像頭驅動的設計采用了4個流接口函數:CAM_Init、CAM_Open、CAM_IOControl、CAM_Close,完成獲取注冊表中驅動、初始化系統、處理用戶命令、釋放分配資源的功能。
(2)GPIO接口的開發
GPIO接口的控制首先需要設置GPXCON寄存器為輸出功能,然后再通過設置GPXDAT寄存器的值為0或1來控制GPIO口的低或高電平。在S3C 2440中提供了4個LED燈,它們分別由GPB5到GPB84個GPIO口來控制,用戶可以通過觀察LED燈的不同狀態來了解信號的輸出。要實現這個驅動程序,首先要建立流驅動所必需的文件并設定設備名,其次要將代碼對信號的輸出和控制初始化,最后以條件語句表示設備出現的各種情況,并運行主程序。
1.3 主要算法及設計
針對公共場所顏色較為單一,且在HSV顏色空間里H、S、V值分布比較明顯的特點,本系統采用對圖像進行處理的方法來獲取公共場所的人數。
將模板彩色圖像進行銳化操作并調節圖像亮度,隨后將此RGB圖像進行顏色空間轉換,這樣就可以分別得到每一點的H、S、V值,并利用圖像上各個點的H、S、V值來進行下一步的計算,此時將公共場所依照外輪廓劃分成9個區域。由于物體對背景的遮擋效果,圖像被遮住部分將擁有與模板圖像對應位置不同的H、S、V值。采用循環對比的方法,將兩幅圖像上對應點的H、S、V值進行比較,如果兩者值之差在規定的誤差范圍之內,那么將此像素跳過,當兩點H、S、V值相差較大時,標記這些像素。然后將圖像進行二值化處理,即標記的像素的值為1,沒有標記的像素的值為0,再通過形態學濾波方法(如腐蝕、膨脹),最終過濾掉多余的雜點得到單一目標的分布區域。計算出目標面積在每個劃分區域的百分比,由給出的公共場所的最大容量得出總人數,確定開燈數目所占總數目的比值。
設si為在第i區域圖像中對象的面積,si為圖像中第i區域的總面積,n為第i區域的最大容量,N為所求總人數,a為需要開的照明燈個數,A為照明燈總個數,根據上文即可得以下算式:
2 實例
本系統適用于較為寬敞的公共場所,如教室、大型會議室、圖書館等。寬敞的環境一方面為攝像頭提供較為開闊的視野,另一方面可以使光照分布更為均勻,減少光照對圖像的影響。此實例是系統在不同大小教室環境下的應用,主要是對教室的照明燈進行控制以及測定教室內的人數,從而驗證本系統的可行性及準確性。
系統在教室的應用,其主要步驟如下:
首先,初始化系統。在人機互動步驟中輸入此場所的類型及場所的最大容量。這時系統會自動采集此時的教室圖像并對其進行處理。需要注意的是,此時要保證教室無人,這樣才能確保系統計算的準確性。這時可得模板圖像,即圖2(a),然后將教室劃分為9個區域,如圖2(b)所示。
其次,獲取實時圖像,計算人數。當有人打開照明燈時,電信號通過S3C2440的外部中斷接口激活系統使其開始工作。這時系統將定時采集教室內的實時圖片,并將所采集的圖片進行形態學的處理,如圖2(c)所示,與模板進行圖形計算得出人數以及開燈的數目。
最后,控制照明燈開關。通過系統得出的教室人數輸出脈沖信號,信號經放大后控制教室開關。得到需要開燈的個數之后,將照明燈按規劃依次打開,這時系統會根據燈是否開啟的狀態,依據一定的時鐘頻率獲取教室實時圖像。當然,當教室照明燈被人為關閉或系統連續3次檢測無人后,系統將進入待機狀態。
系統運行后得出不同情況下教室的總人數及教室的開燈數目。表1給出了系統運行后得到的各種情況下教室的參數值,從而得出教室的大小以及教室人數的多少對系統的準確性的影響。從所得誤差可知,雖然圖像在處理時采用了腐蝕、膨脹等方法,但是還是無法消除書包等物品對系統計算的影響,使整個系統測得的人數偏多。系統基于人性化的設計,使得開燈數的比例稍大于測得人數與教室的最大容量之比,一方面可以滿足國家建筑照明用電的照度標準,另一方面人們會有更多的工作空間。
由表1測得的數據可知,教室的大小和人數的多少對實驗誤差會產生一定的影響。教室越大,人數測定的誤差就越小;教室越小,所測人數誤差就越大;教室人數越多,誤差越小(人數越多,因書本和書包等物體遮擋的面積對總面積的影響越小)。雖然在小教室測定人數的誤差較大,但誤差均為正值,這會使更多的座位達到滿足工作所需照度的標準,也使工作者能夠選擇更加合適的座位。整個系統具有人性化的優點。
經調查本校教室的照明燈每天平均開啟14~15小時,計算得每間小教室耗電大約為18 kWh/天。通過對本校兩間小教室人流量的記錄以及對教室的開燈情況的統計,假設運用此系統后,上課、自習時間與部分課余時間分別為8小時、4小時與2小時,計算可得每天節約電能可達35%。以標準教室為例,每天可節約3.25元,10個月大約可節省資金975元,而此系統價格較低,成本僅為450~500元,半年就可收回成本。教育部統計,在全國范圍內全國約有15萬所中小學和1550多所高校以及大量的圖書館、會議室等。假設有一部分場所采用此系統,那
么將節約大量的電能,而產生一度電需要300~400 g煤,從而間接減少二氧化碳的排放。
3 結論
本系統采用基于ARM9微處理器的嵌入式系統設計,使節能系統能夠本地控制,可維護性及穩定性較計算機控制都有所提高。本系統不使用傳感器,單純地對圖像進行處理并得出人數,大大節約了系統成本。測試結果與實際結果的對比驗證了本系統的準確性,為系統的推廣打下基礎。該方法基于顏色空間、顏色匹配等圖像處理技術,算法簡單,大大縮短了系統的計算時間。由于本系統具有良好的節能特性和較低的成本等優點,所以其推廣對節能環保工作的開展有較大的意義。