專利名稱:云臺控制方法、系統(tǒng)及客戶端的制作方法
技術領域:
本發(fā)明涉及視頻監(jiān)控技術領域,具體涉及云臺控制方法、系統(tǒng)及客戶端。
背景技術:
視頻監(jiān)控系統(tǒng)中,某些攝像機需要具有旋轉、縮放、傾斜等功能,以便在日常使用 中,根據(jù)需要觀察不同位置和方向,這時就需要將攝像機安裝在云臺上。云臺就是兩個交流 電機組成的安裝平臺,可以水平和垂直運動,通過控制系統(tǒng)可以遠程控制其轉動、移動以及 傾斜方向等。 云臺可按外形分為普通型和球型,球型云臺是將云臺放置在一個半球狀防護罩 中,除防止灰塵干擾圖像外,還可達到隱蔽、美觀、快速的目的。這兩種云臺的控制方式相 同。 對云臺的控制是通過一個專用的帶有一組按鍵和搖桿的控制鍵盤完成的。圖1為 傳統(tǒng)模擬電路傳輸系統(tǒng)中控制云臺的示意圖,如圖l所示,控制鍵盤與云臺通過串口線相 連接,通過串口發(fā)送指令控制云臺旋轉、縮放、改變傾斜角等。由于模擬電路具備傳輸延遲 小的特點,視頻監(jiān)控系統(tǒng)的操作人員可以非常準確和靈敏地控制攝像機,捕捉和跟蹤目標。 在交通視頻監(jiān)控系統(tǒng)中,由于主要監(jiān)控目標是移動中的車輛,云臺的控制靈敏程度尤為重 要。 近年來,IP網(wǎng)絡技術不斷成熟,具備高性能、高容量、高可靠、開放性、擴展性、融合 性等諸多優(yōu)勢,成本也飛速下降。因此,越來越多的視頻監(jiān)控系統(tǒng)廠商開發(fā)了基于IP網(wǎng)絡 的軟交換視頻監(jiān)控系統(tǒng),以替代原有基于電路交換的模擬系統(tǒng)。圖2為現(xiàn)有的IP視頻監(jiān)控 系統(tǒng)中控制云臺的示意圖,如圖2所示,控制鍵盤通過串口線與軟件客戶端相連接,客戶端 通過IP網(wǎng)絡與云臺連接,控制鍵盤通過串口發(fā)送控制指令到客戶端,客戶端解析該指令, 將該指令通過IP網(wǎng)絡發(fā)送給云臺,以控制云臺旋轉、縮放、改變傾斜角等。
在目前的IP視頻監(jiān)控系統(tǒng)中,一直不能有效解決控制云臺的靈敏程度問題,這是 因為若要達到模擬系統(tǒng)級別的控制靈敏度,必須將控制鍵盤的指令高速可靠地通過IP網(wǎng) 絡發(fā)往云臺。 一般控制鍵盤的波特率設置不低于9600bps,以便捕捉到操作人員操作鍵盤搖 桿的輕微力量變化,控制云臺以精確的速度和角度轉動。雖然9600bps在目前的IP網(wǎng)絡條 件下不算是非常高的帶寬占用,但問題在于實時性和可靠性兩者難以兼得,具體如下
如果采用傳輸控制協(xié)議(TCP,Transmission Control Protocol)等面向連接的協(xié) 議傳送云臺指令,雖然可以保障可靠性,但在廣域網(wǎng)和互聯(lián)網(wǎng)的條件下必然產(chǎn)生較大的延 時,再加上視頻數(shù)據(jù)本身的傳送延時,很可能操作人員完全沒有辦法做到根據(jù)視頻圖像的 變化精確控制云臺的動作。 如果采用用戶數(shù)據(jù)報協(xié)議(UDP,User Datagram Protocol)等無連接的協(xié)議,固然 可以降低延時,但卻無法保障全部信令送達云臺。如果某些關鍵指令不能送達,會造成嚴重 的使用不便。例如如果停止轉動指令不能送達,那么云臺將保持向一個方向轉動,再也不 能停止,除非用戶再發(fā)送一次停止轉動指令;又如停止雨刷指令不能送達,那么雨刷就將不停地刷下去,直到雨刷損壞或者用戶再發(fā)送一次停止雨刷指令。
發(fā)明內容
本發(fā)明提供云臺控制方法、系統(tǒng)及客戶端,以實現(xiàn)云臺控制的實時性和可靠性。
本發(fā)明的技術方案是這樣實現(xiàn)的 —種云臺控制方法,客戶端和云臺之間的接口支持會話發(fā)起協(xié)議SIP和實時傳輸 協(xié)議RTP,在客戶端上設置關鍵指令,該方法包括
客戶端與云臺建立SIP會話; 控制鍵盤向客戶端發(fā)送控制指令,客戶端接收控制指令,若發(fā)現(xiàn)該指令為關鍵指 令,則將該控制指令承載在SIP消息中發(fā)送給云臺,否則,將該控制指令承載在RTP消息中 發(fā)送給云臺; 云臺執(zhí)行所述控制指令。 所述將該控制指令承載在RTP消息中發(fā)送給云臺之后、云臺執(zhí)行所述控制指令之 前進一步包括 云臺接收該RTP消息,提取該消息中的時間戳,判斷提取的時間戳是否大于最近 一次接受的RTP消息中的時間戳,若是,接受該RTP消息,轉至執(zhí)行所述控制指令的動作;否 則,丟棄該RTP消息。 所述關鍵指令為指示云臺停止當前操作的指令。 所述將該控制指令承載在SIP消息中發(fā)送給云臺之后進一步包括 客戶端判斷是否在預定時長內收到云臺返回的響應消息,若否,則重新向云臺發(fā)
送所述SIP消息。 所述SIP消息為SIP INFO消息。 —種云臺控制系統(tǒng),包括客戶端和云臺,客戶端和云臺之間的接口支持SIP和 RTP,在客戶端上設置關鍵指令,其中, 客戶端與云臺建立SIP會話,接收控制鍵盤發(fā)來的控制指令,若發(fā)現(xiàn)該指令為關 鍵指令,則將該控制指令承載在SIP消息中發(fā)送給云臺,否則,將該控制指令承載在RTP消 息中發(fā)送給云臺; 云臺接收客戶端發(fā)來的SIP消息或RTP消息,解析出消息中的控制指令,執(zhí)行該 指令。
所述云臺進一步包括 用于在接收到RTP消息時,從RTP消息中提取出時間戳,判斷提取的時間戳是否大 于最近一次接受的RTP消息中的時間戳,若是,接受該RTP消息;否則,丟棄該RTP消息的模 塊。
所述客戶端進一步包括 用于在發(fā)出SIP消息后,判斷是否在預定時長內收到云臺返回的響應消息,若否,
則重新向云臺發(fā)送所述SIP消息的模塊。 —種客戶端,包括 關鍵指令存儲模塊.存儲關鍵指令; 控制指令傳送模塊啟動時,與云臺建立SIP會話,接收控制鍵盤發(fā)來的控制指令,若發(fā)現(xiàn)該控制指令位于關鍵指令存儲模塊中的關鍵指令中,則將該控制指令承載在SIP 消息中發(fā)送給云臺,否則,將該控制指令承載在RTP消息中發(fā)送給云臺。
所述控制指令傳送模塊進一步包括 用于在發(fā)出SIP消息后,判斷是否在預定時長內收到云臺返回的響應消息,若否, 則重新向云臺發(fā)送所述SIP消息的子模塊。 與現(xiàn)有技術相比,本發(fā)明中,若云臺控制指令為關鍵指令,則將控制指令承載在 SIP消息中發(fā)送給云臺,否則,將控制指令承載在RTP消息中發(fā)送給云臺。本發(fā)明保證了云 臺控制的實時性和可靠性。且,本發(fā)明可支持現(xiàn)有的云臺控制鍵盤設計,不改變用戶的使用 習慣。
圖1為傳統(tǒng)模擬電路傳輸系統(tǒng)中控制云臺的示意圖; 圖2為現(xiàn)有的IP視頻監(jiān)控系統(tǒng)中控制云臺的示意圖; 圖3為本發(fā)明實施例一提供的IP視頻監(jiān)控系統(tǒng)中控制云臺的方法流程圖; 圖4為本發(fā)明實施例二提供的IP視頻監(jiān)控系統(tǒng)中控制云臺的方法流程圖; 圖5為本發(fā)明實施例提供的IP視頻監(jiān)控系統(tǒng)中的云臺控制系統(tǒng)的組成圖; 圖6為本發(fā)明實施例提供的IP視頻監(jiān)控系統(tǒng)中的客戶端的組成圖。
具體實施例方式
下面結合附圖及具體實施例對本發(fā)明再作進一步詳細的說明。 圖3為本發(fā)明實施例一提供的IP視頻監(jiān)控系統(tǒng)中控制云臺的方法流程圖,本實
施例中,控制鍵盤與客戶端之間通過串口連接,客戶端和云臺之間的接口支持會話發(fā)起協(xié)
議(SIP, Session Initiation Protocol)禾口實時傳輸協(xié)議(RTP, Real-time Transport
Protocol),如圖3所示,其具體步驟如下 步驟301 :在客戶端上設置關鍵指令列表。 關鍵指令主要指指示云臺停止當前操作的指令,如停止旋轉指令、停止傾斜指
令、停止縮放指令、停止紅外燈照明指令、停止雨刷指令等。 可由管理員在客戶端上設置關鍵指令列表。 步驟302 :客戶端啟動,與云臺建立SIP會話。
SIP會話建立過程可如下 01 :客戶端向云臺發(fā)送SIP加入(Invite)消息。 02 :云臺接收SIP Invite消息,向客戶端返回200響應(ok)消息。 03 :客戶端接收200ok消息,向云臺返回SIP確認(Ack)消息,云臺接收SIP Ack
消息,客戶端與云臺間的SIP會話建立。 步驟303 :控制鍵盤向客戶端發(fā)送控制指令。 步驟304:客戶端接收控制指令,判斷該控制指令是否在關鍵指令列表中,若是, 執(zhí)行步驟305 ;否則,執(zhí)行步驟306。 步驟305 :客戶端將該控制指令承載在SIP消息中發(fā)送給云臺,云臺接收到SIP消 息后,解析出指令,執(zhí)行該指令,并向客戶端返回200響應(ok)消息,本流程結束。
這里,可將控制指令承載在SIP的INFO消息中,可承載在INFO消息的消息體中, 云臺直接從消息體中讀取控制指令即可。 步驟306 :客戶端將該控制指令承載在RTP消息中發(fā)送給云臺,云臺接收該RTP消 息,從該RTP消息中解析出控制指令,執(zhí)行該指令。 控制指令可承載在RTP消息的消息體部分,云臺直接從消息體中讀取該控制指令 即可。 圖4為本發(fā)明實施例二提供的IP視頻監(jiān)控系統(tǒng)中控制云臺的方法流程圖,本實施 例中,控制鍵盤與客戶端之間通過串口連接,客戶端和云臺之間的接口支持SIP和RTP,如 圖4所示,其具體步驟如下 步驟401 :在客戶端上設置關鍵指令列表。
步驟402 :客戶端啟動,與云臺建立SIP會話。
步驟403 :控制鍵盤向客戶端發(fā)送控制指令。 步驟404:客戶端接收控制指令,判斷該控制指令是否在關鍵指令列表中,若是, 執(zhí)行步驟405 ;否則,執(zhí)行步驟406。 步驟405 :客戶端將該控制指令承載在SIP消息中發(fā)送給云臺,云臺接收到SIP消 息后,解析出控制指令,執(zhí)行該控制指令,并向客戶端返回200響應(ok)消息,本流程結束。
這里,可將控制指令承載在SIP的INFO消息中,可承載在INFO消息的消息體中, 云臺直接從消息體中讀取控制指令即可。 若客戶端發(fā)出SIP消息后,在預設時長內未收到云臺返回的200ok消息,則客戶端
會重新發(fā)送攜帶有控制指令的SIP消息,以保證該控制指令被送到云臺。 步驟406 :客戶端將該控制指令承載在RTP消息中發(fā)送給云臺,云臺接收該RTP消
息,提取該消息中的時間戳。 控制指令可承載在RTP消息的消息體部分,云臺直接從消息體中讀取該控制指令 即可。 步驟407 :云臺判斷提取的時間戳是否大于最近一次接受的RTP消息中的時間戳,
若是,執(zhí)行步驟409 ;否則,執(zhí)行步驟408。 步驟408 :云臺丟棄該RTP消息,本流程結束。 步驟409 :云臺接受該RTP消息,并記錄該消息中的時間戳,從該RTP消息中解析 出控制指令,執(zhí)行該指令。 由于SIP主要用于可靠的端點之間建立和拆除多媒體會話,如語音和視頻。云臺 控制指令具有周期性、連續(xù)性、高數(shù)據(jù)流的特點,和媒體流非常相似,且SIP本身具有的保 障會話可靠的機制,可以保證客戶端和云臺之間建立可靠的通訊。RTP是一種基于UDP的媒 體傳輸協(xié)議,使用無聯(lián)接的UDP,可以保障延時達到最小,且可丟棄亂序報文。本發(fā)明實施例 利用SIP傳送關鍵指令,可以保證關鍵指令不丟失;利用RTP傳送非關鍵指令,可以保證指 令傳送的實時性。 圖5為本發(fā)明實施例提供的IP視頻監(jiān)控系統(tǒng)中的云臺控制系統(tǒng)的組成圖,如圖5 所示,其主要包括,其特征在于,包括客戶端51和云臺52,客戶端51與云臺52之間的接 口支持SIP和RTP,其中 客戶端51 :啟動時,與云 52建立SIP會話,接收控制鍵盤發(fā)來的控制指令,若發(fā)現(xiàn)該控制指令為關鍵指令,則將該控制指令承載在SIP消息中發(fā)送給云臺52,否則,將該控 制指令承載在RTP消息中發(fā)送給云臺52。 客戶端51還可包括用于在發(fā)出SIP消息后,判斷是否在預定時長內收到云臺52
返回的200ok消息,若否,則重新向云臺52發(fā)送所述SIP消息的模塊。 云臺52 :接收客戶端51發(fā)來的SIP消息或RTP消息,解析出消息中的控制指令,
執(zhí)行該指令。 云臺52還可包括用于在接收到RTP消息時,從RTP消息中提取出時間戳,判斷提 取的時間戳是否大于最近一次接受的RTP消息中的時間戳,若是,接受該RTP消息;否則,丟 棄該RTP消息的模塊。 圖6為本發(fā)明實施例提供的客戶端的組成圖,如圖6所示,其主要包括關鍵指令 存儲模塊511和控制指令傳送模塊512,其中
關鍵指令存儲模塊511 :存儲關鍵指令列表。 控制指令傳送模塊512 :啟動時,與云臺52建立SIP會話,接收控制鍵盤發(fā)來的控 制指令,若發(fā)現(xiàn)該控制指令位于關鍵指令存儲模塊511的關鍵指令列表中,則將該控制指 令承載在SIP消息中發(fā)送給云臺52,否則,將該控制指令承載在RTP消息中發(fā)送給云臺52。
其中,控制指令傳送模塊512還可包括用于在發(fā)出SIP消息后,判斷是否在預定 時長內收到云臺52返回的200ok消息,若否,則重新向云臺52發(fā)送所述SIP消息的子模塊。
以上所述僅為本發(fā)明的過程及方法實施例,并不用以限制本發(fā)明,凡在本發(fā)明的 精神和原則之內所做的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內。
權利要求
一種云臺控制方法,其特征在于,客戶端和云臺之間的接口支持會話發(fā)起協(xié)議SIP和實時傳輸協(xié)議RTP,在客戶端上設置關鍵指令,該方法包括客戶端與云臺建立SIP會話;控制鍵盤向客戶端發(fā)送控制指令,客戶端接收控制指令,若發(fā)現(xiàn)該指令為關鍵指令,則將該控制指令承載在SIP消息中發(fā)送給云臺,否則,將該控制指令承載在RTP消息中發(fā)送給云臺;云臺執(zhí)行所述控制指令。
2. 如權利要求1所述的方法,其特征在于,所述將該控制指令承載在RTP消息中發(fā)送給 云臺之后、云臺執(zhí)行所述控制指令之前進一步包括云臺接收該RTP消息,提取該消息中的時間戳,判斷提取的時間戳是否大于最近一次 接受的RTP消息中的時間戳,若是,接受該RTP消息,轉至執(zhí)行所述控制指令的動作;否則, 丟棄該RTP消息。
3. 如權利要求1所述的方法,其特征在于,所述關鍵指令為指示云臺停止當前操作的 指令。
4. 如權利要求1至3任一所述的方法,其特征在于,所述將該控制指令承載在SIP消息 中發(fā)送給云臺之后進一步包括客戶端判斷是否在預定時長內收到云臺返回的響應消息,若否,則重新向云臺發(fā)送所 述SIP消息。
5. 如權利要求1至3任一所述的方法,其特征在于,所述SIP消息為SIP INFO消息。
6. —種云臺控制系統(tǒng),其特征在于,包括客戶端和云臺,客戶端和云臺之間的接口支 持SIP和RTP,在客戶端上設置關鍵指令,其中,客戶端與云臺建立SIP會話,接收控制鍵盤發(fā)來的控制指令,若發(fā)現(xiàn)該指令為關鍵指 令,則將該控制指令承載在SIP消息中發(fā)送給云臺,否則,將該控制指令承載在RTP消息中 發(fā)送給云臺;云臺接收客戶端發(fā)來的SIP消息或RTP消息,解析出消息中的控制指令,執(zhí)行該指令。
7. 如權利要求6所述的系統(tǒng),其特征在于,所述云臺進一步包括用于在接收到RTP消息時,從RTP消息中提取出時間戳,判斷提取的時間戳是否大于最 近一次接受的RTP消息中的時間戳,若是,接受該RTP消息;否則,丟棄該RTP消息的模塊。
8. 如權利要求6所述的系統(tǒng),其特征在于,所述客戶端進一步包括用于在發(fā)出SIP消息后,判斷是否在預定時長內收到云臺返回的響應消息,若否,則重 新向云臺發(fā)送所述SIP消息的模塊。
9. 一種客戶端,其特征在于,包括關鍵指令存儲模塊存儲關鍵指令;控制指令傳送模塊啟動時,與云臺建立SIP會話,接收控制鍵盤發(fā)來的控制指令,若 發(fā)現(xiàn)該控制指令位于關鍵指令存儲模塊中的關鍵指令中,則將該控制指令承載在SIP消息中發(fā)送給云臺,否則,將該控制指令承載在RTP消息中發(fā)送給云臺。
10. 如權利要求9所述的客戶端,其特征在于,所述控制指令傳送模塊進一步包括用于在發(fā)出SIP消息后,判斷是否在預定時長內收到云臺返回的響應消息,若否,則重 新向云臺發(fā)送所述SIP消息的子模塊。
全文摘要
本發(fā)明公開了云臺控制方法、系統(tǒng)及客戶端。客戶端和云臺之間的接口支持SIP和RTP,在客戶端上設置關鍵指令,方法包括客戶端與云臺建立SIP會話;控制鍵盤向客戶端發(fā)送控制指令,客戶端接收控制指令,若發(fā)現(xiàn)該指令為關鍵指令,則將該控制指令承載在SIP消息中發(fā)送給云臺,否則,將該控制指令承載在RTP消息中發(fā)送給云臺;云臺執(zhí)行所述控制指令。本發(fā)明保證了云臺控制的實時性和可靠性。
文檔編號H04N5/232GK101729564SQ200910238220
公開日2010年6月9日 申請日期2009年11月23日 優(yōu)先權日2009年11月23日
發(fā)明者蔡醒詩 申請人:北京中星微電子有限公司