攝 影 機
Server端 網 際 網 路
PDA
個 人 電 腦 行 動 電 話
Client端 攝 影 機
攝 影 機
攝 影 機
第二章 監控系統架構
2.1 遠 端 監 控 系 統 之 架 設
所謂「遠端監控」,是一種讓使用者或設備,在不與遠端設備接觸的情 況下,經由各種通訊媒介與遠端設備溝通,進而達到訊息傳遞或設備操控的 動作。近十年來,隨著網際網路的快速蓬勃發展,以網路為基礎之遠端監控 技術已成為這幾年熱門的研究領域。在本研究架構的遠端監控系統中,網際 網路為一通訊介質,連接主控端及用戶端,主控端由PC 擔任,負責多通道 視訊擷取、壓縮及檔案傳輸之工作,而用戶端經網路與主控端取得聯繫,其 中以 TCP/IP 通訊協定作為資料傳輸標準,讓網路遠端各種不同設備能進行 資料傳遞或交換,不需因硬體或應用程式不同而任何改變,用戶端可以藉由 網際網路下達指令給Sever 端,進行基本功能操作,且允許多人同時連線。
圖1 所示即為本研究之遠端系統架構。
圖1 遠端監控系統架構圖
程 式 開 始
抓 取 新 影 像
動 態 偵 測
是 否 停 止
程 式 結 束 影 像 擷 取 設 定
警 告 燈 號 及 通 報 系 統 啟 動
壓 縮 及 發 送 影 像 至 遠 端 相 異
相 同
是 否
遠端。整個監控流程如圖2所示。
圖2 監控流程圖
2.2 TCP/IP 通 訊 協 定
在本系統架構中,Sever 端與 Client 端,以網際網路 TCP/IP 通訊協定 (Transmission Control Protocol/Internet Protocol)[17]為資料傳輸標準。此標準 基本上是依照國際標準組織(ISO)所發展的 OSI(Open System Interconnect)為 主。由於是開放式的架構,加上可以使用在大多數的網路硬體,如乙太網路、
電話線路、Token Ring 等等,因此是網際網路常見到的通訊協定,除了規範 資料段(datagram)的基本傳送單位外,也決定了 Internet 的定址方式,就是所 謂的 IP 位址,此外也決定了資料段傳送資料時的路徑,並且負責資料段的 分解與重組。
一般而言,網路通訊協定是一種層級式(Layering)的結構,每一層都 呼叫它的下一層所提供的服務來完成自己的需求。而 TCP/IP 通訊協定可以 分為以下四層,如表2 所示。
表2 TCP/IP 協定架構的層次
應用層(Application Layer) Telnet、FTP、STMP … 傳輸層(Transport Layer) TCP、UDP
網際層(Internet Layer) IP、ICMP、ARP、RARP 網路存取層(Network Access Layer) Ethernet、ToKen Ring
(1)應用層(Application Layer):
應用程式間溝通的協定,此為應用程式取得網路存取的地方,如簡易 電子郵件傳送(SMTP, Simple Mail Transfer Protocol)、檔案傳輸協定
(FTP, File Transfer Protocol)、網路終端機模擬協定(TELNET)等。
Control Protocol)、使用者資料協定(UDP, User Datagram Protocol)等,
負責傳送資料,並且確定資料已被送達及接收。
(3)網際層(Internet Layer):
定義了在網際網路上每一台主機的位址格式,使包含 IP 位址的資料 塊能夠正確地抵達目的端。(但不檢查是否被正確接收),如網際協定
(IP, Internet Protocol)。
(4)網路存取層(Network Access Layer):
實質網路媒體的管理協定,定義如何使用實際網路(如Ethernet, Serial Line 等)來傳送資料。
藉由此四層協定結構,網路提供了一致性的資料處理標準,使得網路上 各設備彼此間,能有效的進行通訊及資料傳輸等動作。在資料傳輸上,TCP/IP 是以封包的形式來傳送的。一個 TCP/IP 封包是由表頭區和資料區所組成,
而每一階層的協定都有其自己的表頭區定義,並有特定的程式負責解讀表頭 區的欄位,以瞭解對方的需求並採取適當的處置。所以一個完整的 TCP/IP 封包,由內而外會包括了上述四層的表頭。資料從應用程式開始就一層層地 加上表頭,完整的 TCP/IP 封包經由實體的網路傳輸到接收端,而接收端再 一層層地將封包表頭拆解開來,最後的原始資料才傳送到接收者的手中。整 個傳輸的程序可以下圖3 來表示。
資 料
T 表 頭 資 料 段
I 表 頭
應用層
傳輸層
網際 層
網路存取 層
網路 主控端
(傳送資料)
用戶端 (接收資料)
T 表 頭 資 料 段
I 表 頭 T 表 頭 資 料 段
N 表 頭
資 料
T 表 頭
資 料 段
I 表 頭
T 表 頭
資 料 段
I 表 頭
T 表 頭
資 料 段 N
表 頭
圖3 TCP/IP 傳 輸 程 序
2.3 視 訊 擷 取
由於系統必須以被監控環境的視訊,來做為畫面是否有所變動之依據,
因此本系統必須開發出運用視訊的監控系統,而微軟公司軟體開發人員提供 了專門用於視訊擷取DirectX9 SDK[18]。DirectX 9是微軟針對多媒體影音的 需求,所推出的一套具有彈性、可重覆使用性元件的整合性多媒體資料流架 構。而DirectShow 是微軟DirectX族群的一份子,它架構在COM 的技術之 上,因此提供了Windows 平台之間的相容性,使得DirectShow 的元件能利 用COM 準則,在各平台之上為使用者提供相同的服務。
DirectShow 的架構,主要是針對下列幾種需求來設計的:
● 不同的媒體串流的播放,如影像、聲音串流。
● 不同的媒體資料來源,如網路、檔案、硬體擷取設備。
因此針對這些需求,設計了DirectShow 架構,如圖4所示,DirectShow 的 核心是由一個濾波器圖管理者(Filter Graph Manager;FGM)和濾波器(Filter)
組成的資料流,FGM 主要是管理所有資料流的播放或關閉的狀態。而資料 流必須由三種濾波器來組成,分別是來源濾波器(Source Filter)、轉換濾波 器(Transform Filter)、展現濾波器(Rendering Filter)。資料流的觀念就 如同軟體的IC,每個濾波器都有接腳(Pin),經由接腳可將濾波器一個個 連結在一起,然後由來源濾波器將資料一級一級往下傳,至繪圖濾波器結 束,這樣即完成一條資料流的過程。DirectShow 架構如圖4所示。
圖4 DirectShow 架構[18]
如 上 圖 所 示 , 來 源 濾 波 器 的 功 能 是 要 支 援 各 種 資 料 來 源 , 目 前 DirectShow支援網路來源、檔案系統和擷取設備。而轉換濾波器的目的則是 於濾波器將接收的資料轉換成另一種資料,如將MPEG2的資料,解碼成影 像或聲音,這即是一種轉換過程。展現濾波器的功用即是把資料輸出至某一 設備上,如將影像輸出至螢幕上,聲音輸出至音效卡上。
由於 DirectShow 基本上是通過圖形過濾管理器來與上層應用程式和下
IGraphBuilder
IVideoWindow
IMediaControl
IMediaEvent
層的驅動進行聯繫,在撰寫程式時,是經由幾個COM 介面來對視頻擷取過 程進行控制,其中”IGraphBuilder” 用於建立過濾程式,與驅動程式進行連 結,而”IVideoWindow”、 ”IMediaControl”、”IMediaEventExE”分別對整個過 程的視訊視窗,播放過程和事件回應進行控制,整個視訊擷取流程如圖5 所 示。
圖5 視訊擷取流程圖
2.4 動態偵測
當監控系統啟動時,一般系統是處於全程監視錄影的狀態,所有的影像 資料透過影像壓縮技術壓縮處理後,全數儲存於電腦硬碟中,以備將來查閱 或作為證據之用。但是在某些特定之應用或是特定環境下,例如預估之錄影 時間較長、儲存空間不足或是監視區域將長時間處於靜止狀態等等,監控系 統不需要將儲存空間浪費於儲存大量的靜止影像。以此發展由移動影像作為 觸發的錄影模式,稱之為「動態偵測」。而動態偵測方法很多,最常見的為
小波轉換 小波轉換
差值運算
移動物判別
素的差值運算,作為有物體進入監視範圍的判斷依據,如果其差值大於所給 定的門檻值,就將此畫素標示為動態物件。此方法雖能快速地偵測出影像的 動態,但卻很容易受到光線及雜訊影響,造成假警報之產生。為了避免此情 況產生,一般監控系統通常需額外進行補光或中值濾波等動作,增加了系統 的負擔。
為了進一步解決這個問題,本系統壓縮編碼時所進行之小波轉換,在這 裡將被直接拿來使用,由於小波轉換是由一組高低通濾波器與向下取樣所實 現,當視訊影像轉至小波域時,所有的雜訊將會被分解至小波域中的高頻子 頻帶中,而低頻能保有完整的影像成份,我們就只針對低頻部份執行差值運 算,進行移動物判斷。如此一來,動態偵測與壓縮編碼兩機制藉由小波轉換 相結合,不但可以降低光線及雜訊影響,也可降低系統運算成本。低頻小波 域之動態偵測如圖 6所示。
圖 6 於低頻小波域之動態偵測