于 洪,杜小丹,申建軍
(1.瓊州學院 海南 五指山 572200;2.成都大學 四川 成都 610106;3.重慶大學 重慶 400044)
計算機技術(shù)、通訊技術(shù)和網(wǎng)絡技術(shù)的高速發(fā)展,加快了數(shù)字監(jiān)控系統(tǒng)取代模擬監(jiān)控系統(tǒng)的步伐,數(shù)字化視頻監(jiān)控已成為監(jiān)控技術(shù)的必然趨勢。數(shù)字化監(jiān)控不僅可以利用計算機網(wǎng)絡和先進的視/音頻壓縮、解壓縮技術(shù)遠程視頻監(jiān)控,還可以根據(jù)報警功能需求設計靈活多樣的報警聯(lián)動,生成詳細的報警記錄和操作數(shù)據(jù)記錄庫,設計完整的系統(tǒng)用戶管理功能。
在考慮數(shù)字化監(jiān)控系統(tǒng)的基本要求、靈敏度高、低成本和符合監(jiān)控系統(tǒng)發(fā)展趨勢的基礎上,在普通PC機上運用高級語言編程實現(xiàn)了 “基于圖像識別的攝像頭監(jiān)控系統(tǒng)設計”。當有入侵者入侵時,畫面發(fā)生變化,系統(tǒng)依靠圖像識別而不是依靠傳感器自動進行拍照,并發(fā)出警告。并且只在圖像有變化時記錄,可以節(jié)省大量的存貯空間。存貯的內(nèi)容減少了,對于后期的查找也帶來了優(yōu)勢,使得后期查找更方便快捷。
筆者設計的系統(tǒng)由微機、攝像頭和軟件組成,主要功能和特點如下:
1)利用攝像對現(xiàn)場進行穩(wěn)定、可靠的監(jiān)控。并且監(jiān)控精度可根據(jù)需要調(diào)整。
2)能夠?qū)崿F(xiàn)智能化、自動化。只有在圖像發(fā)生變化時才自動記錄和報警,可以節(jié)省大量的存貯空間。
3)具有拍照功能。當出現(xiàn)異常情況時能將有關(guān)場景拍照下來,為日后分析提供影像資料,同時還提供時間信息。
4)具有完善的后處理能力。在設計系統(tǒng)內(nèi)可以查看所拍攝的照片。
5)可靈活地實現(xiàn)由自動監(jiān)控到人工監(jiān)控的功能。
系統(tǒng)硬件構(gòu)成如圖1所示。
筆者設計程序以微型計算機為設計原型,系統(tǒng)主機由一臺普通PC機加載軟件而構(gòu)成。系統(tǒng)設計在兼顧高性能和低價格的綜合分析下,采用微型計算機硬盤作為存貯空間,一般在30 GB以上,這在當前的計算機配備中是非常容易達到的。選用穩(wěn)定性能高的CPU以保證系統(tǒng)長時間地運行。攝像頭型號不限,當然精度高一些,監(jiān)控效果會好一些。
圖1 監(jiān)控系統(tǒng)硬件圖Fig.1 Hardware block diagram of supervise system
筆者設計系統(tǒng)的工作過程如下:在計算機的控制下,攝像頭開始工作??紤]到不同攝像頭需要不同的驅(qū)動程序,這樣設計出來的程序通用性比較差。所以本系統(tǒng)在設計上采取了比較通用的由微軟開發(fā)的API(avicap32.dll)來實現(xiàn)攝像頭的控制[1]??蓪崿F(xiàn)對不同型號的攝像頭進行控制,不針對專門的型號的攝像頭,實用性、通用性更強、克服某些監(jiān)控程序?qū)iT針對某種型號的攝像頭的缺點。攝像頭每隔一段時間采集圖像一次并存貯,并且間隔時間可調(diào)。接收到圖像后,系統(tǒng)先對圖像進行二值化處理,將彩色圖像處理成黑白圖像,并對特征點進行統(tǒng)計,然后對二幅圖像的特征點進行比較,若差值沒達到設計者預定的閾值,則繼續(xù)進行圖像采集,此時并不對圖像進行存貯記錄[2]。當差值達到設計者預定的閾值時,則系統(tǒng)自動啟動存貯記錄并啟動報警。當圖像停止變化時,系統(tǒng)會自動停止存貯和記錄,以節(jié)約存貯空間。系統(tǒng)程序圖如圖2所示。
圖2 程序流程圖Fig.2 Flow chart of procedure
方案研究的重點在于如何實現(xiàn)識別到圖像變化的轉(zhuǎn)換,并自動啟動相應的程序。設計者讓計算機控制攝像頭每50 ms采集一幅現(xiàn)場圖像,并對兩幅圖像進行比較,但直接對兩幅圖像進行比較由于攝像頭的精度及存貯機制的問題,總是不能成功。于是考慮到將圖像進行二值化處理[3],然后再進行特征點的讀取,最后將兩幅圖像的特征點進行比較,當比較值超過閾值時,程序開始自動報警并記錄。設計者將閾值設計成可以改變大小的,以適應不同的監(jiān)控要求[4]。首先進行彩色圖像的二值化處理,二值化程序如下[5]:
For i=1 To width5 Step 5
For j=1 To heigh5 Step 5
rgb5=GetPixel(hdc5, i, j)
bBlue=Blue(rgb5&H10000) And &HFF
bRed=Red(rgb5 And &HFF)
bGreen=Green(rgb5&H100) And &HFF
y= (9798*bRed+19235*bGreen+3735*bBlue) 32768
Next I,J
二值化后,就可以對特征點進行提取了,對于提取的特征點進行比較,程序如下:
If y>75 Then
n2=n2+1
End If
對特征點統(tǒng)計后,就要進行比較了,如果比較結(jié)果達不到設計者設定的閾值,則系統(tǒng)不進行處理,繼續(xù)進行讀取圖像程序。如果比較結(jié)果差超過了設計者設定的閾值,說明有物體移動了,于是系統(tǒng)開始自動報警并記錄[6]。
If Abs(n1-n2) >HScroll1.Value Then
Beep
SavePicture Clipboard.GetData, "d:" & Year (Now) & "年"& ""& Month(Now)& "月"& ""& Day(Now)& "日"& "" & "monit" & Replace(Time, ":", "-") & ".bmp"
End If
當物體移動結(jié)束后,監(jiān)控能自動停止記錄,減少存貯空間的占用量。方便以后的查找。
筆者設計的程序基于圖像識別的程序控制,使得程序不必一開始監(jiān)控就進行無用的記錄,只有在圖像發(fā)生變化時才記錄,節(jié)省了大量的存貯空間。用戶不必裝配大容量的存貯介質(zhì),個人電腦就可以完成存貯,節(jié)約了財力,特別適用于小型用戶和家庭用戶。經(jīng)過了大量的實際實驗,證明本程序是可靠、靈敏的,達到了設計效果。
[1]高昂,段念,何峰,等.Google API大全——編程·開發(fā)·實例[M].北京:電子工業(yè)出版社,2009.
[2]匡松,蔣義軍.VB大學應用教程[M].北京:高等教育出版社,2010.
[3]湯一平,葉永杰,朱藝華,等.智能全方位視覺傳感器及其應用研究[J].傳感技術(shù)學報,2007,20(6):1316-1320.TANG Yi-ping,YE Yong-jie,ZHU Yi-hua,et al.Research on intelligent omni-directional vision sensors and their application [J].Chinese Journal of Sensors and Actuators,2007,20(6):1316—1320.
[4]周德澤.計算機智能監(jiān)測控制系統(tǒng)的設計及應用[M].北京:清華大學出版社,2002.
[5]趙榮椿,趙忠明.數(shù)字圖像處理導論[M].西安:西北工業(yè)大學出版社,2000.
[6]姚華.VB程序設計[M].天津:天津大學出版社,2009.