第四章 利用雙相機做物體平面座標定位
6.3 Client/Server 端架構
[Server 端架構]
圖 6-3-1 Server 端架構
圖 6-3-1 為我們所佈建的監控平台的 Server 端架構,利用此架構 實現具串流傳輸的互動式監控平台。以下將介紹各區塊功能及系統運作 流程。首先,Graphical User Interface(GUI)為電腦程式和使用者之 間的介面,使用者可按下介面上的 button 啟動相對應的程式運算動作。
舉例來說,如使用者按下〝streaming start〞button,此時 GUI 接收 到〝streaming start〞button 按下的指令,會執行此 button 對應的動 作。首先會透過 Streaming Service Interface 建立 Streaming server
的角色以提供 Client 連線。如有 Client 端向 Server 發出建立連線訊 息的話,Server 端會透過 RTSP Channel 收到此連線要求訊息,接著將 此訊息告知 RTSP State and Message Processor 處理此訊息。接著此 Processor 會透過 Streaming Service Interface 針對 Client 端所要求 的影音檔案進行處理。分別針對 stored video、lived capture 的影像 透過 MPEG4 Encoder、3GP Parser、RTP Packetizer、Data Streamer 等裝置將影音檔案包裝成 RTP Audio、RTP Video 封包,透過 RTP Audio、
RTP Video Channel 將封包傳輸出去,而 Client 端將透過網路接收到此 影音資料。而 Client 端如果想針對此連線所取得的影音檔進行暫停、
停止、錄影等動作的話,只要再透過對應的 RTSP Message 傳送給 Server 端告知欲進行的動作即可。Server 端經 RTSP Channel 取得 RTSP Message 之後,交由 RTSP State and Message Processor 處理,此 Processor 會依所掌握的 Client 端狀態及 RTSP Message,執行相對應的動作,如 此一來,Client/Server 二端可達到互動式的功能。
[Client 端架構]
圖 6-3-2 Client 端架構
圖 6-3-2 為我們所佈建的監控平台的 Client 端架構,以下將介紹 各區塊功能及系統運作流程。首先,Graphical User Interface(GUI) 為電腦程式和使用者之間的介面,使用者可按下介面上的 button 啟動 相對應的程式運算動作。舉例來說,如使用者按下〝OPEN〞button,此 時 GUI 接收到〝OPEN〞button 按下的指令,會執行此 button 對應的動 作。首先會透過 Streaming Service Interface 和 Server 端建立連線。
連線的建立是透過 RTSP State and Message Processor 透過 RTSP Channel 發出建立連線要求的 RTSP Message 給 Server。當 Server 端接 收到此 RTSP Message 時,如同意此連線要求的話,會將收集到的影音 資料透過 RTP Audio、RTP Video Channel 傳送給 Client 端。而 Client
端也會透過 RTP Audio、RTP Video Channel 接收到此影像資料,接著 透過 RTP De-Packetizer 取出 MPEG4 影像區段,再經由 MPEG4 Decoder 解碼成 RGB 資料型式的影像。接著將影像送到 GUI 呈現及交給 Image Processing 程式處理,將影像處理後的結果對應事先定義的〝事件定義〞
之後,便知道該執行何種後續動作。舉例來說,如處理後的結果為〝入 侵者進行〞,此時可能要告知 Server 端進行錄影的動作。Client 端是透 過 RTSP State and Message Processor 發出夾帶錄影訊息字串的 RTSP Message 給 Server 端。當 Server 端經由 RTSP Channel 收到此夾帶錄影 訊息字串的 RTSP Message 時,便知道 Client 要求錄影的動作,接著依 此錄影訊息字串執行錄影的動作。