新聞中心

EEPW首頁 > 光電顯示 > 設(shè)計(jì)應(yīng)用 > 基于場所人數(shù)檢測的照明節(jié)能控制系統(tǒng)設(shè)計(jì)

基于場所人數(shù)檢測的照明節(jié)能控制系統(tǒng)設(shè)計(jì)

作者: 時(shí)間:2011-06-23 來源:網(wǎng)絡(luò) 收藏

1.2 S3C2440芯片開發(fā)
(1)WinCE條件下USB設(shè)備的開發(fā)
由于本系統(tǒng)運(yùn)用USB接口來進(jìn)行圖像的采集,所以要對Windows CE下的USB設(shè)備驅(qū)動(dòng)進(jìn)行開發(fā)。在Windows CE系統(tǒng)下對USB設(shè)備進(jìn)行開發(fā)需要運(yùn)用系統(tǒng)本身提供的流接口驅(qū)動(dòng)模型,它能夠?yàn)樵O(shè)備驅(qū)動(dòng)的開發(fā)提供通用的接口函數(shù),系統(tǒng)將會(huì)對設(shè)備進(jìn)行編號,這樣就可以在程序中直接打開設(shè)備并且對其進(jìn)行操作。本系統(tǒng)的USB攝像頭驅(qū)動(dòng)的設(shè)計(jì)采用了4個(gè)流接口函數(shù):CAM_Init、CAM_Open、CAM_IOControl、CAM_Close,完成獲取注冊表中驅(qū)動(dòng)、初始化系統(tǒng)、處理用戶命令、釋放分配資源的功能。
(2)GPIO接口的開發(fā)
GPIO接口的控制首先需要設(shè)置GPXCON寄存器為輸出功能,然后再通過設(shè)置GPXDAT寄存器的值為0或1來控制GPIO口的低或高電平。在S3C 2440中提供了4個(gè)LED燈,它們分別由GPB5到GPB84個(gè)GPIO口來控制,用戶可以通過觀察LED燈的不同狀態(tài)來了解信號的輸出。要實(shí)現(xiàn)這個(gè)驅(qū)動(dòng)程序,首先要建立流驅(qū)動(dòng)所必需的文件并設(shè)定設(shè)備名,其次要將代碼對信號的輸出和控制初始化,最后以條件語句表示設(shè)備出現(xiàn)的各種情況,并運(yùn)行主程序。
1.3 主要算法及設(shè)計(jì)
針對公共場所顏色較為單一,且在HSV顏色空間里H、S、V值分布比較明顯的特點(diǎn),本系統(tǒng)采用對圖像進(jìn)行處理的方法來獲取公共場所的人數(shù)。
將模板彩色圖像進(jìn)行銳化操作并調(diào)節(jié)圖像亮度,隨后將此RGB圖像進(jìn)行顏色空間轉(zhuǎn)換,這樣就可以分別得到每一點(diǎn)的H、S、V值,并利用圖像上各個(gè)點(diǎn)的H、S、V值來進(jìn)行下一步的計(jì)算,此時(shí)將公共場所依照外輪廓?jiǎng)澐殖?個(gè)區(qū)域。由于物體對背景的遮擋效果,圖像被遮住部分將擁有與模板圖像對應(yīng)位置不同的H、S、V值。采用循環(huán)對比的方法,將兩幅圖像上對應(yīng)點(diǎn)的H、S、V值進(jìn)行比較,如果兩者值之差在規(guī)定的誤差范圍之內(nèi),那么將此像素跳過,當(dāng)兩點(diǎn)H、S、V值相差較大時(shí),標(biāo)記這些像素。然后將圖像進(jìn)行二值化處理,即標(biāo)記的像素的值為1,沒有標(biāo)記的像素的值為0,再通過形態(tài)學(xué)濾波方法(如腐蝕、膨脹),最終過濾掉多余的雜點(diǎn)得到單一目標(biāo)的分布區(qū)域。計(jì)算出目標(biāo)面積在每個(gè)劃分區(qū)域的百分比,由給出的公共場所的最大容量得出總?cè)藬?shù),確定開燈數(shù)目所占總數(shù)目的比值。
設(shè)si為在第i區(qū)域圖像中對象的面積,si為圖像中第i區(qū)域的總面積,n為第i區(qū)域的最大容量,N為所求總?cè)藬?shù),a為需要開的照明燈個(gè)數(shù),A為照明燈總個(gè)數(shù),根據(jù)上文即可得以下算式:
c.JPG


評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉