專利名稱:基于有限狀態(tài)自動(dòng)機(jī)的多艾真體動(dòng)態(tài)多目標(biāo)協(xié)作跟蹤方法
技術(shù)領(lǐng)域:
本發(fā)明屬于機(jī)器人導(dǎo)航和應(yīng)用領(lǐng)域,涉及一種基于有限狀態(tài)自動(dòng)機(jī)的多艾真體動(dòng)態(tài)多目標(biāo)協(xié)作跟蹤方法。
背景技術(shù):
現(xiàn)代任務(wù)的復(fù)雜化和多樣化使得對多機(jī)器人結(jié)合和團(tuán)隊(duì)任務(wù)的完成有了較高的需求,協(xié)同多元艾真體如何通過已具備的視頻獲取設(shè)備,通過信息交互與融合,對環(huán)境進(jìn)行偵察,通過視覺來指導(dǎo)行為的能力就特別重要。但是,目前在這方面并未存在一個(gè)通用性強(qiáng)的跟蹤方法,可供廣泛應(yīng)用。
在一個(gè)未知環(huán)境中,要使用一個(gè)具有視覺設(shè)備的大型機(jī)器人團(tuán)隊(duì)協(xié)作觀測與跟蹤動(dòng)態(tài)多目標(biāo),需要異步的通過多機(jī)器人上的艾真體模型對環(huán)境實(shí)時(shí)地進(jìn)行觀察,并解決局部問題,同時(shí)需要整個(gè)多艾真體系統(tǒng)之間的同步與通信,保證信息的實(shí)時(shí)性和準(zhǔn)確性,并根據(jù)全局信息進(jìn)行決策。同步方面可以通過協(xié)議中的時(shí)間戳,多艾真體群體信息交互,或者結(jié)合服務(wù)器端的全局監(jiān)控和管理來進(jìn)行同步,而異步則使用基于有限狀態(tài)自動(dòng)機(jī)的艾真體模型,通過狀態(tài)的定位,獨(dú)立于動(dòng)作控制平臺,可調(diào)動(dòng)不帶視頻設(shè)備的異質(zhì)多艾真體,分布式計(jì)算信息,協(xié)同完成任務(wù)。這兩者的結(jié)合,較好的折中解決了信息和決策的同步和異步問題,增加機(jī)器人團(tuán)隊(duì)對環(huán)境的自適應(yīng)性,有利于機(jī)器人團(tuán)隊(duì)高效協(xié)同合作,保證偵察信息的全面性、準(zhǔn)確性和快速性。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是,提供一種基于有限狀態(tài)自動(dòng)機(jī)的多艾真體動(dòng)態(tài)多目標(biāo)協(xié)作跟蹤方法。
本發(fā)明為解決上述技術(shù)問題所采用的技術(shù)方案是 一種基于有限狀態(tài)自動(dòng)機(jī)的多艾真體動(dòng)態(tài)多目標(biāo)協(xié)作跟蹤方法,其特征在于復(fù)合式艾真體根據(jù)通過自身探測的環(huán)境信息I、服務(wù)器或其他艾真體或艾真體群體管理者傳達(dá)的需要完成的任務(wù)信息M、和/或服務(wù)器傳達(dá)的人為的指定信息H,在多個(gè)有限自動(dòng)狀態(tài)機(jī)中,選擇一個(gè)有限自動(dòng)狀態(tài)機(jī)作為用以維持該復(fù)合式艾真體行為狀態(tài)模型的有限自動(dòng)狀態(tài)機(jī)。
所述的有限自動(dòng)狀態(tài)機(jī)為全自動(dòng)狀態(tài)機(jī)和半自動(dòng)狀態(tài)機(jī);全自動(dòng)狀態(tài)機(jī)為 由等待、觀測、跟蹤、丟失和忙碌5個(gè)狀態(tài)組成,各狀態(tài)的具體轉(zhuǎn)換關(guān)系如下 (a)對于“等待”狀態(tài),輸入為“禁止連接”則保持原狀態(tài);輸入為“連接”則切換到“觀測”狀態(tài); (b)對于“觀測”狀態(tài),輸入為“丟失目標(biāo)”則保持原狀態(tài);輸入為“禁止連接”則切換到“等待”狀態(tài);輸入為“任務(wù)”則切換到“忙碌”狀態(tài);輸入為“命令”則切換到“丟失”狀態(tài);輸入為“發(fā)現(xiàn)目標(biāo)”則切換到“跟蹤”狀態(tài); (c)對于“跟蹤”狀態(tài),輸入為“發(fā)現(xiàn)目標(biāo)”則保持原狀態(tài);輸入為“丟失目標(biāo)”則切換到“丟失”狀態(tài);輸入為“任務(wù)”則切換到“忙碌”狀態(tài);輸入為“命令”則切換到“觀測”狀態(tài);輸入為“禁止連接”則切換到“等待”狀態(tài); (d)對于“丟失”狀態(tài),輸入為“丟失目標(biāo)”則保持原狀態(tài);輸入為“發(fā)現(xiàn)目標(biāo)”則切換到“跟蹤”狀態(tài);輸入為“任務(wù)”則切換到“忙碌”狀態(tài);輸入為“命令”則切換到“觀測”狀態(tài); (e)對于“忙碌”狀態(tài),輸入為“禁止連接”則切換到“等待”狀態(tài);輸入為“任務(wù)完成”則根據(jù)記錄,回復(fù)到接受任務(wù)之前的狀態(tài),可以為“觀測”狀態(tài),“丟失”狀態(tài)或者是“跟蹤”狀態(tài); 半自動(dòng)狀態(tài)機(jī)為 由等待、觀測、跟蹤、丟失和忙碌5個(gè)狀態(tài)組成,各狀態(tài)的具體轉(zhuǎn)換關(guān)系如下 (a)對于“等待”狀態(tài),輸入為“禁止連接”則保持原狀態(tài);輸入為“連接”則切換到“觀測”狀態(tài); (b)對于“觀測”狀態(tài),輸入為“丟失目標(biāo)”則保持原狀態(tài);輸入為“禁止連接”則切換到“等待”狀態(tài);輸入為“任務(wù)”則切換到“忙碌”狀態(tài);輸入為“發(fā)現(xiàn)目標(biāo)”則切換到“跟蹤”狀態(tài); (c)對于“跟蹤”狀態(tài),輸入為“發(fā)現(xiàn)目標(biāo)”則保持原狀態(tài);輸入為“丟失目標(biāo)”則切換到“丟失”狀態(tài);輸入為“任務(wù)”則切換到“忙碌”狀態(tài); 輸入為“命令”則切換到“觀測”狀態(tài);輸入為“禁止連接”則切換到“等待”狀態(tài); (d)對于“丟失”狀態(tài),輸入為“丟失目標(biāo)”則保持原狀態(tài);輸入為“發(fā)現(xiàn)目標(biāo)”則切換到“跟蹤”狀態(tài);輸入為“任務(wù)”則切換到“忙碌”狀態(tài); 輸入為“命令”則切換到“觀測”狀態(tài); (e)對于“忙碌”狀態(tài),輸入為“禁止連接”則切換到“等待”狀態(tài);輸入為“任務(wù)完成”則根據(jù)記錄,回復(fù)到接受任務(wù)之前的狀態(tài),可以為“觀測”狀態(tài),“丟失”狀態(tài)或者是“跟蹤”狀態(tài)。
所述的復(fù)合式艾真體的行為可表示為M=(Q,∑,δ,q0,F(xiàn)),是一個(gè)由以下幾部分組成的數(shù)學(xué)模型 一個(gè)狀態(tài)的有窮集合Q={等待,觀測,跟蹤,丟失,忙碌},即 Q={Wait,Detect,Track,Lost,Busy}; 可接受的輸入集合∑,它指明了所有允許輸入的符號,有限自動(dòng)狀態(tài)機(jī)根據(jù)這個(gè)集合中的符號的輸入,進(jìn)行狀態(tài)的變化,其表示如下 ∑={連接,發(fā)現(xiàn)目標(biāo),丟失目標(biāo),禁止連接,任務(wù),任務(wù)完成,命令}, 即∑={connect,findobj,lostobj,unconnect,work,finishwork,order} 起始狀態(tài)q0={等待},即q0={Wait},艾真體開啟之后的第一個(gè)狀態(tài),在無法連接視頻設(shè)備的情況下,將維持在這個(gè)狀態(tài); 結(jié)束狀態(tài)F={等待},即F={Wait},當(dāng)艾真體無法繼續(xù)主動(dòng)參與完成協(xié)作跟蹤的情況下,斷開視頻設(shè)備后進(jìn)入該狀態(tài),在艾真體物理設(shè)備結(jié)束一切任務(wù)之前,也首先斷開視頻設(shè)備,宣告離開艾真體群體; 轉(zhuǎn)移函數(shù)δ是Q×∑→Q的一個(gè)映射,由所述的有限自動(dòng)狀態(tài)機(jī)所識別。
通過復(fù)合式艾真體有限自動(dòng)狀態(tài)機(jī)所維持行為狀態(tài)模型以及實(shí)時(shí)的任務(wù)和環(huán)境的約束,將多個(gè)復(fù)合式艾真體分離成若干群體,群體內(nèi)部復(fù)合式艾真體可以直接進(jìn)行信息的交流;每個(gè)群體有一個(gè)艾真體群體管理者,各個(gè)群體之間可通過艾真體群體管理者直接或間接進(jìn)行交流;群體之間的直接交流是通過信息更新激發(fā)信息交互和/或定時(shí)信息交互來進(jìn)行,所述的間接交流是在有服務(wù)器的多艾真體系統(tǒng)中,群體間通過服務(wù)器進(jìn)行交流。
艾真體群體管理者從復(fù)合式艾真體個(gè)體中獲取三類信息 第一類為目標(biāo)信息,用于保證艾真體群體管理者或服務(wù)器上的目標(biāo)庫的信息為最新信息; 第二類為視頻設(shè)備的詳細(xì)信息和復(fù)合式艾真體個(gè)體的狀態(tài)信息;艾真體群體管理者定時(shí)從艾真體個(gè)體接收新的信息,在有服務(wù)器情況下,艾真體群體管理者根據(jù)所更新信息的更新服務(wù)器中黑板的內(nèi)容; 第三類信息為請求信息;當(dāng)復(fù)合式艾真體個(gè)體遇到緊急情況,在意外處理無效的情況下,會發(fā)生援助請求信號,寫入請求序列,激發(fā)請求處理模塊;請求處理模塊會讓所在的群體進(jìn)行模塊調(diào)度,滿足某個(gè)復(fù)合式艾真體發(fā)送的請求;在單個(gè)群體任務(wù)無法完成時(shí),該單個(gè)群體再調(diào)度其他群體進(jìn)行協(xié)助。
所述的復(fù)合式艾真體包括如下幾個(gè)部分 1)一個(gè)用有限自動(dòng)狀態(tài)機(jī)所維持的行為狀態(tài)模型,行為狀態(tài)模型中包括規(guī)劃方案,行為狀態(tài)模型根據(jù)當(dāng)前的狀態(tài)和規(guī)劃方案決定從模塊庫中選擇合適的模塊進(jìn)行下一步的計(jì)算; 2)一個(gè)模塊庫,包括視頻處理模塊和建模模塊,模塊可根據(jù)需求進(jìn)行擴(kuò)展;視頻處理模塊包括基于三幀差的目標(biāo)檢測、形態(tài)學(xué)去噪聲、目標(biāo)分割、目標(biāo)篩選、目標(biāo)信息計(jì)算、目標(biāo)合并與提取以及均值偏移算法跟蹤;建模模塊包括意外處理的記憶過程、預(yù)測過程和自保護(hù)處理; 3)通訊模塊,用于與其他復(fù)合式艾真體、艾真體群體管理者和/或服務(wù)器通信。
所采用的協(xié)商方案包括協(xié)商協(xié)議、協(xié)商方法和協(xié)商途徑三個(gè)部分 1)協(xié)商協(xié)議 協(xié)商協(xié)議的形式包括多位起始和結(jié)束標(biāo)志、指令長度協(xié)商元語、消息編號和消息內(nèi)容;所述的協(xié)商元語包括請求、命令和信息指令,所述的消息內(nèi)容包括消息接收者類型、有效信息內(nèi)容和消息發(fā)送時(shí)間; 2)協(xié)商方法 一種協(xié)商方法是通過艾真體群體管理者或服務(wù)器提供的機(jī)器人狀態(tài)列表和全局目標(biāo)庫、決策選擇、任務(wù)列表和請求序列信息的實(shí)時(shí)變化,激活任務(wù)分配算法、競爭協(xié)商算法、信息計(jì)算部分和請求處理模塊,獲得最優(yōu)協(xié)商方案,將結(jié)果回寫任務(wù)列表;然后管理者根據(jù)任務(wù)列表以最高優(yōu)先權(quán)將指令發(fā)送給相關(guān)的復(fù)合式艾真體個(gè)體。
另外一種協(xié)商方法是在復(fù)合式艾真體群體中,復(fù)合式艾真體個(gè)體之間交互信息,相互直接信息融合,協(xié)商完成任務(wù); 3)協(xié)商途徑 通過可重構(gòu)的多移動(dòng)機(jī)器人點(diǎn)對點(diǎn)通信平臺進(jìn)行通訊,復(fù)合式艾真體個(gè)體在狀態(tài)變化時(shí)會將當(dāng)前信息發(fā)送給艾真體群體管理者,艾真體群體管理者交互更新信息,或更新服務(wù)器信息;在沒有狀態(tài)變化的情況下,每隔時(shí)間T更新一次艾真體群體管理者的信息,同時(shí)更新一次艾真體群體管理者所維護(hù)的群體內(nèi)其他復(fù)合式艾真體個(gè)體的狀態(tài)和信息。
所述的基于有限狀態(tài)自動(dòng)機(jī)的多艾真體動(dòng)態(tài)多目標(biāo)協(xié)作跟蹤方法,包括以下步驟 第一步,復(fù)合式艾真體準(zhǔn)備復(fù)合式艾真體開啟之后,通過有限自動(dòng)狀態(tài)機(jī)維持的行為狀態(tài)模型進(jìn)行活動(dòng),或和其他復(fù)合式艾真體進(jìn)行交流;當(dāng)該復(fù)合式艾真體開啟時(shí),處于等待狀態(tài),即wait狀態(tài),當(dāng)復(fù)合式艾真體能夠連接視頻設(shè)備后,就離開這個(gè)狀態(tài);維持在這個(gè)狀態(tài)的復(fù)合式艾真體個(gè)體,可能由于視頻設(shè)備故障,沒有視頻設(shè)備或者是被指定為不允許進(jìn)行偵查活動(dòng),無法自我觀測外界環(huán)境變化,只等待接收外界指令來進(jìn)行活動(dòng); 第二步,指定任務(wù)完成當(dāng)復(fù)合式艾真體開啟之后,如果在群體內(nèi),則開始定時(shí)更新復(fù)合式艾真體群體管理者上的信息,如果有服務(wù)器,則同時(shí)更新服務(wù)器信息;當(dāng)接受到一個(gè)指定任務(wù)時(shí),復(fù)合式艾真體如果是全自動(dòng)狀態(tài),則會轉(zhuǎn)換成半自動(dòng)狀態(tài);接受的任務(wù)如果是隊(duì)形排列,則所有處于非忙碌狀態(tài)的復(fù)合式艾真體都進(jìn)入任務(wù)群組,將任務(wù)根據(jù)當(dāng)前完成任務(wù)的復(fù)合式艾真體個(gè)數(shù)來進(jìn)行分配,并指導(dǎo)復(fù)合式艾真體完成;如果接受的任務(wù)是指定目標(biāo)查找或跟蹤,則所有當(dāng)前處于觀測狀態(tài)的或某個(gè)區(qū)域的機(jī)器人進(jìn)入任務(wù)群組接受任務(wù);以接受任務(wù)的某一個(gè)復(fù)合式艾真體找到目標(biāo)為標(biāo)志,表示任務(wù)完成,并通知任務(wù)群組中其他復(fù)合式艾真體放棄該任務(wù);當(dāng)復(fù)合式艾真體接受任務(wù)后,其狀態(tài)為忙碌狀態(tài);狀態(tài)的轉(zhuǎn)換根據(jù)分配的指令來轉(zhuǎn)換,在沒有指定要轉(zhuǎn)換的狀態(tài)的情況下,則自動(dòng)返回到進(jìn)入忙碌狀態(tài)之前的狀態(tài),恢復(fù)保存的任務(wù)點(diǎn),繼續(xù)完成被中斷的工作; 第三步,環(huán)境偵查復(fù)合式艾真體個(gè)體連接視頻設(shè)備后,自動(dòng)進(jìn)入觀測狀態(tài)進(jìn)行偵查活動(dòng);處于觀測狀態(tài)的復(fù)合式艾真體個(gè)體,觀察視野范圍內(nèi)移動(dòng)個(gè)體,計(jì)算和記錄它們的信息;如果聯(lián)系到服務(wù)器或其他復(fù)合式艾真體,則將信息共享和通知;若是全自動(dòng)狀態(tài),則根據(jù)給定的規(guī)則對目標(biāo)進(jìn)行選取和跟蹤,并轉(zhuǎn)入跟蹤狀態(tài),即Track狀態(tài);若是半自動(dòng)狀態(tài),根據(jù)授權(quán)進(jìn)行動(dòng)作;在全自動(dòng)狀態(tài),當(dāng)目標(biāo)被提取出來之后,如果跟蹤到了目標(biāo),則以滿足先到先跟蹤、跟蹤可視面積最大、目標(biāo)與復(fù)合式艾真體個(gè)體距離最近的標(biāo)準(zhǔn),選取最優(yōu)目標(biāo)進(jìn)行動(dòng)作轉(zhuǎn)換到跟蹤狀態(tài)進(jìn)行跟蹤,其他目標(biāo)可進(jìn)行基本的視覺跟蹤;如果沒有跟蹤到目標(biāo),則回到觀測狀態(tài)繼續(xù)觀測; 第四步,目標(biāo)跟蹤復(fù)合式艾真體個(gè)體通過感知器從外界環(huán)境獲取大量數(shù)據(jù)信息,通過模塊庫中視頻處理模塊對數(shù)據(jù)進(jìn)行分析,得到跟蹤的目標(biāo)信息,并通過建模模塊對分析后的信息進(jìn)行存儲和計(jì)算;跟蹤主要通過基于顏色的均值偏移算法來實(shí)現(xiàn);當(dāng)所跟蹤的目標(biāo)丟失之后,則進(jìn)入目標(biāo)丟失狀態(tài),即Lost狀態(tài); 第五步,意外處理包括記憶過程和預(yù)測過程; 1)記憶過程,記憶是復(fù)合式艾真體個(gè)體在跟蹤狀態(tài)的同時(shí),將已知信息在存儲中進(jìn)行保存的一個(gè)過程,分為短期記憶和長期記憶;短期記憶會記住最近所做的動(dòng)作,而長期記憶會記住在跟蹤一個(gè)目標(biāo)的整個(gè)過程中,所得到的復(fù)合式艾真體個(gè)體和目標(biāo)移動(dòng)的路徑;根據(jù)獲取的信息,通過曲線擬合對復(fù)合式艾真體個(gè)體和目標(biāo)移動(dòng)的路徑的信息進(jìn)行歸納;在客戶端進(jìn)行擬合只考慮最近部分?jǐn)?shù)據(jù),對其進(jìn)行分段的曲線擬合;復(fù)合式艾真體管理者或服務(wù)器端會對總體的數(shù)據(jù)進(jìn)行計(jì)算; 2)預(yù)測過程,當(dāng)計(jì)算目標(biāo)的面積小于某個(gè)閾值之后,認(rèn)為目標(biāo)丟失;則進(jìn)入丟失狀態(tài),即Lost狀態(tài);短期記憶一般不超過三個(gè)動(dòng)作,起主要作用的是最近的動(dòng)作,其他的起輔助檢驗(yàn)作用;如果通過短期記憶引導(dǎo),沒有再次找到目標(biāo),則通過長期記憶的多項(xiàng)式曲線擬合出的目標(biāo)軌跡,指導(dǎo)復(fù)合式艾真體轉(zhuǎn)到所預(yù)測到的角度來進(jìn)行觀測;當(dāng)復(fù)合式艾真體在一定時(shí)限內(nèi)還沒有找到目標(biāo),認(rèn)為目標(biāo)確實(shí)丟失了,則發(fā)出目標(biāo)丟失信息。
本發(fā)明的有益效果有 本發(fā)明所提出的基于有限狀態(tài)自動(dòng)機(jī)的多艾真體動(dòng)態(tài)多目標(biāo)協(xié)作跟蹤方法,獨(dú)立于動(dòng)作控制平臺,支持集中式控制和艾真體個(gè)體信息交互控制。復(fù)合式多艾真體的提出,將適用于不同的多艾真體系統(tǒng)體系結(jié)構(gòu),適合多機(jī)器人團(tuán)隊(duì)的多目標(biāo)協(xié)作跟蹤。各個(gè)艾真體能獨(dú)立工作,還能協(xié)同完成任務(wù),由于按照任務(wù)分成不同的艾真體群體,因此工作效率更高。有服務(wù)器參與時(shí),服務(wù)器即為總的指揮中樞,從全局上指揮各個(gè)艾真體或群體協(xié)調(diào)配合。
圖1為本發(fā)明中基于有限狀態(tài)自動(dòng)機(jī)的多艾真體動(dòng)態(tài)多目標(biāo)協(xié)作跟蹤方法的抽象應(yīng)用; 圖2為本發(fā)明中復(fù)合式艾真體模型的設(shè)計(jì)構(gòu)架; 圖3為本發(fā)明中基于有限狀態(tài)自動(dòng)機(jī)的多艾真體動(dòng)態(tài)多目標(biāo)協(xié)作跟蹤方法行為模型的狀態(tài)與模塊之間的詳細(xì)調(diào)用關(guān)系示意圖; 圖4為本發(fā)明基于有限狀態(tài)自動(dòng)機(jī)的多艾真體動(dòng)態(tài)多目標(biāo)協(xié)作跟蹤方法中行為模型在全自動(dòng)狀態(tài)下的有限自動(dòng)狀態(tài)機(jī); 圖5為本發(fā)明基于有限狀態(tài)自動(dòng)機(jī)的多艾真體動(dòng)態(tài)多目標(biāo)協(xié)作跟蹤方法中行為模型在半自動(dòng)狀態(tài)下的有限自動(dòng)狀態(tài)機(jī); 圖6為本發(fā)明中艾真體團(tuán)隊(duì)協(xié)商協(xié)議的格式; 圖7為本發(fā)明中多艾真體動(dòng)態(tài)多目標(biāo)協(xié)作跟蹤方法中行為模型的Track狀態(tài)和Lost狀態(tài)之間的模塊流程圖;
具體實(shí)施例方式 下面結(jié)合附圖和具體實(shí)施方式
對本發(fā)明作進(jìn)一步說明。
實(shí)施例1 本發(fā)明提出一種基于有限狀態(tài)自動(dòng)機(jī)的多艾真體動(dòng)態(tài)多目標(biāo)協(xié)作跟蹤方法,其應(yīng)用基礎(chǔ)是一個(gè)多艾真體系統(tǒng)(Multi-Agent System,簡稱MAS)。該方法應(yīng)用在一個(gè)可持續(xù)自主發(fā)揮作用的艾真體上,它根據(jù)環(huán)境和任務(wù)需求選擇一個(gè)有限自動(dòng)狀態(tài)機(jī)(Deterministic Finite Automation,簡稱DFA)維持復(fù)合式艾真體的行為狀態(tài)模型,然后結(jié)合視頻設(shè)備傳感器所感知的環(huán)境信息與艾真體群體中的共享資源,與其他艾真體通信協(xié)作與協(xié)商,進(jìn)行建模、預(yù)測、規(guī)劃、決策,指導(dǎo)艾真體個(gè)體自身動(dòng)作控制執(zhí)行器進(jìn)行一定動(dòng)作。本發(fā)明將艾真體個(gè)體抽象為一個(gè)復(fù)合式模型,在該模型中,對艾真體自身,有限自動(dòng)狀態(tài)機(jī)可根據(jù)環(huán)境和任務(wù)需求自由選擇來維持行為狀態(tài),對艾真體社會群體,可從一個(gè)抽象層次來管理異質(zhì)的多艾真體團(tuán)隊(duì)。該艾真體以行為狀態(tài)及情感信息,如艾真體的跟蹤疲勞度,以估值函數(shù)為衡量所反映的艾真體的個(gè)性偏好等因素為驅(qū)動(dòng),通過信息交互或者結(jié)合服務(wù)器團(tuán)隊(duì)協(xié)調(diào),進(jìn)行集中式控制或艾真體個(gè)體信息交互控制。該多目標(biāo)協(xié)作跟蹤方法可適用于集中式、分布式、混合式等不同體系結(jié)構(gòu)。
為了解決現(xiàn)有異質(zhì)多艾真體多目標(biāo)協(xié)作跟蹤存在的技術(shù)問題,本發(fā)明根據(jù)有限狀態(tài)自動(dòng)機(jī)的特性針對該問題提出了一種基于有限狀態(tài)自動(dòng)機(jī)的多艾真體動(dòng)態(tài)多目標(biāo)協(xié)作跟蹤方法,該方法獨(dú)立于動(dòng)作控制平臺,支持集中式控制和艾真體個(gè)體信息交互控制。這種復(fù)合式多艾真體的提出,將適用于不同的多艾真體系統(tǒng)體系結(jié)構(gòu),給出了一種適合多機(jī)器人團(tuán)隊(duì)的多目標(biāo)協(xié)作跟蹤的方案。
各個(gè)艾真體群體從各艾真體中獲取到有效的數(shù)據(jù),將其融合,共享給所有的艾真體,并根據(jù)更新的信息和艾真體個(gè)體的任務(wù)請求,調(diào)用不同的決策,實(shí)現(xiàn)任務(wù)分配,協(xié)同好群體的合作,達(dá)到在未知環(huán)境動(dòng)態(tài)背景動(dòng)態(tài)多目標(biāo)的協(xié)作檢測與協(xié)作跟蹤的目的;為了實(shí)現(xiàn)這個(gè)功能,在艾真體群體領(lǐng)導(dǎo)艾真體上,決策生成模塊中包含任務(wù)分配部分,建模目標(biāo)預(yù)測等知識資源,指導(dǎo)整體機(jī)器人群體進(jìn)行動(dòng)作。
艾真體個(gè)體上具有一個(gè)可在協(xié)同計(jì)算的環(huán)境中持續(xù)自主發(fā)揮作用的一個(gè)復(fù)合式艾真體模型,通過視頻設(shè)備傳感器感知其環(huán)境,并通過動(dòng)作控制作用于該環(huán)境。它通過自己獲取的環(huán)境信息,并通過艾真體群體中的共享資源和與其他艾真體通信協(xié)作與協(xié)商,選擇自身使用有限自動(dòng)狀態(tài)機(jī)來維持行為狀態(tài)模型,進(jìn)行建模,預(yù)測,規(guī)劃,決策,指導(dǎo)動(dòng)作控制執(zhí)行器進(jìn)行動(dòng)作,作用于環(huán)境,如果有服務(wù)器,則同步更新服務(wù)器上的相應(yīng)資源。
下面結(jié)合附圖對本發(fā)明作進(jìn)一步的說明。
1.艾真體群體抽象 該方法通過基于有限狀態(tài)自動(dòng)機(jī)的艾真體模型的狀態(tài)定位進(jìn)行了兩個(gè)層次的抽象。第一,通過獨(dú)立于運(yùn)動(dòng)控制平臺的艾真體模型將異質(zhì)的多艾真體抽象成一致的艾真體個(gè)體模型;第二,通過艾真體模型中的有限自動(dòng)狀態(tài)機(jī)所維持行為狀態(tài)模型將多個(gè)艾真體個(gè)體,通過實(shí)時(shí)的任務(wù)和環(huán)境的約束,將該多個(gè)個(gè)體分離成若干群組,每個(gè)群組有一個(gè)性能較強(qiáng)的管理者,然后各個(gè)群組之間可通過管理者直接或間接進(jìn)行交流。而群組內(nèi)部直接各艾真體可以直接進(jìn)行信息的交流。整個(gè)抽象形式如圖1所示。
艾真體群體管理者從艾真體個(gè)體中獲取三類信息。
第一類為目標(biāo)信息,用于保證群體管理者或服務(wù)器上的目標(biāo)庫的信息為最新信息,一方面觸發(fā)信息計(jì)算部分,它對被更新的目標(biāo)有效的已知信息進(jìn)行多項(xiàng)式曲線分段擬合,并修正誤差,另一方面,根據(jù)決策的選擇,觸發(fā)任務(wù)分配算法產(chǎn)生新的跟蹤決策,根據(jù)機(jī)器人任務(wù)列表發(fā)送指令給相關(guān)的艾真體個(gè)體。
第二類為視頻設(shè)備的詳細(xì)信息和艾真體個(gè)體的狀態(tài)信息。群體管理者定時(shí)從艾真體個(gè)體接收新的信息,如果有服務(wù)器,則群體管理者根據(jù)所更新信息的更新黑板的內(nèi)容。
第三類信息為請求信息。當(dāng)艾真體個(gè)體遇到緊急情況,在意外處理無效的情況下,會發(fā)生援助請求信號,寫入請求序列,激發(fā)請求處理模塊。請求處理模會讓所在的艾真體群體進(jìn)行模塊調(diào)度,滿足某個(gè)艾真體發(fā)送的請求。在單個(gè)群體任務(wù)無法完成時(shí),再調(diào)度其他群體進(jìn)行協(xié)助。
2.復(fù)合式艾真體個(gè)體模型 復(fù)合式艾真體按照提出的方法進(jìn)行了如圖2設(shè)計(jì),包括如下幾個(gè)部分 1)一個(gè)用DFA所維持的行為狀態(tài)模型,模型中包括規(guī)劃方案,模型根據(jù)當(dāng)前的狀態(tài)和規(guī)劃方案決定從模塊庫中選擇合適的模塊進(jìn)行下一步的計(jì)算; 2)一個(gè)模塊庫,主要有視頻處理模塊和建模模塊,模塊可根據(jù)需求進(jìn)行擴(kuò)展;視頻處理模塊包括基于三幀差的目標(biāo)檢測,形態(tài)學(xué)去噪聲,目標(biāo)分割,目標(biāo)篩選,目標(biāo)信息計(jì)算,目標(biāo)合并與提取,Meanshift跟蹤(均值偏移算法)等;建模模塊包括意外處理的記憶過程,預(yù)測過程和自保護(hù)處理。
3)通訊模塊 3.艾真體的行為狀態(tài)模型 DFA維持的行為狀態(tài)模型和視頻處理模塊和建模模塊的模塊庫組成了行為決策層的實(shí)現(xiàn)實(shí)體,可表示成一個(gè)M=(Q,∑,δ,q0,F(xiàn))的數(shù)學(xué)模型,詳細(xì)介紹如下。
1)一個(gè)狀態(tài)的有窮集合Q={Wait,Detect,Track,Lost,Busy}狀態(tài)集中有五個(gè)狀態(tài)等待狀態(tài)Wait,觀測狀態(tài)Detect,跟蹤狀態(tài)Track,丟失跟蹤狀態(tài),簡稱為跟蹤狀態(tài)Lost,忙碌狀態(tài)Busy。詳細(xì)的介紹參見行為狀態(tài)模型的詳細(xì)介紹。狀態(tài)集中的Detect狀態(tài),Track狀態(tài)和Lost狀態(tài)中的規(guī)劃方案對艾真體的自主行為規(guī)劃進(jìn)行了完整的覆蓋。這三種狀態(tài)的規(guī)劃方案,結(jié)合模塊庫中提供的視頻處理模塊和建模模塊,對獲得的信息進(jìn)行處理,根據(jù)結(jié)果對艾真體的行為給出自身的決策。這三種狀態(tài)與它們所對應(yīng)的規(guī)劃方案要調(diào)用的模塊詳細(xì)關(guān)系如圖3所示。
2)可接受的輸入集合∑,它指明了所有允許輸入的符號,有限自動(dòng)狀態(tài)機(jī)根據(jù)這個(gè)集合中的符號的輸入,進(jìn)行狀態(tài)的變化,表示如下 ∑={連接,發(fā)現(xiàn)目標(biāo),丟失目標(biāo),禁止連接,任務(wù),任務(wù)完成,命令},即 ∑={connect,findobj,lostobj,unconnect,work,finishwork,order} 這個(gè)集合中包括7個(gè)可輸入的符號,它們代表在實(shí)際中相應(yīng)的物理事件的發(fā)生,詳細(xì)介紹如下 連接connect表示艾真體個(gè)體成功的進(jìn)行可用視頻設(shè)備連接; 發(fā)現(xiàn)目標(biāo)findobj表示艾真體個(gè)體在現(xiàn)有的狀態(tài)下,通過當(dāng)前獲取的視頻圖像在視野可及的范圍內(nèi),搜尋到一個(gè)未知或已知的目標(biāo); 丟失目標(biāo)lostobj表示艾真體個(gè)體在現(xiàn)有狀態(tài)下,通過當(dāng)前獲取的視頻圖像在視野可及范圍內(nèi),無法找到一個(gè)和歷史信息吻合的目標(biāo); 禁止連接unconnect表示艾真體個(gè)體在物理?xiàng)l件限制或整體進(jìn)行資源調(diào)配時(shí),規(guī)定其不能使用視頻設(shè)備獲取環(huán)境信息和主動(dòng)參與協(xié)同跟蹤活動(dòng); work表示艾真體個(gè)體在當(dāng)前狀態(tài)接受指定命令,分配新的任務(wù),在接受work指令后,艾真體進(jìn)入Busy狀態(tài),不允許自身進(jìn)行新的任務(wù)調(diào)配。
任務(wù)完成finishwork表示艾真體個(gè)體完成指令隊(duì)列中所有的任務(wù)。在完成任務(wù)后,艾真體恢復(fù)到接受命令之前的狀態(tài),繼續(xù)完成被指定命令中斷的任務(wù); 命令order表示艾真體個(gè)體接受指令,轉(zhuǎn)換到新的狀態(tài),完成指定的任務(wù)。
3)起始狀態(tài)q0={Wait},當(dāng)艾真體開啟之后,直接進(jìn)入這個(gè)狀態(tài),如果無法連接視頻設(shè)備,則維持在這個(gè)狀態(tài)。
4)結(jié)束狀態(tài)F={Wait},當(dāng)艾真體無法繼續(xù)主動(dòng)參與完成協(xié)作跟蹤時(shí),則斷開視頻設(shè)備,進(jìn)入該狀態(tài),在艾真體物理設(shè)備結(jié)束一切任務(wù)之前之前,也首先斷開視頻設(shè)備,宣告離開艾真體群體。
5)轉(zhuǎn)移函數(shù)δ是Q×∑→Q的一個(gè)映射,被有限自動(dòng)狀態(tài)機(jī)所識別。有限自動(dòng)狀態(tài)機(jī)根據(jù)艾真體個(gè)體的行為狀態(tài)分為兩種,一種是全自動(dòng)狀態(tài)下的有限自動(dòng)狀態(tài)機(jī),一種是半自動(dòng)狀態(tài)下的有限自動(dòng)狀態(tài)機(jī)。
全自動(dòng)狀態(tài)在艾真體行為過程中,在沒有其他艾真體和服務(wù)器信息支持的情況下,也能夠完成自主的發(fā)現(xiàn)目標(biāo),進(jìn)行跟蹤任務(wù),自主搜尋其他艾真體個(gè)體等工作的狀態(tài),被稱為全自動(dòng)狀態(tài)。
半自動(dòng)狀態(tài)在艾真體行為過程中,在指定協(xié)作的情形下,艾真體接受指令,跟蹤搜尋指定目標(biāo),和已知的艾真體進(jìn)行通訊,協(xié)作完成任務(wù),不能隨意放棄現(xiàn)有任務(wù),進(jìn)行其他非授權(quán)的自主行為,被稱為半自動(dòng)狀態(tài)。
全自動(dòng)狀態(tài)和半自動(dòng)狀態(tài)下的有限自動(dòng)狀態(tài)機(jī)的狀態(tài)集是一致的,兩個(gè)狀態(tài)可以根據(jù)現(xiàn)實(shí)環(huán)境和任務(wù)需求自由轉(zhuǎn)換。自由轉(zhuǎn)換通過自身探測的環(huán)境信息I,服務(wù)器或其他艾真體傳達(dá)的需要完成的任務(wù)信息M,和服務(wù)器傳達(dá)的人為的指定信息H,在多種有限自動(dòng)狀態(tài)機(jī)中,以N=f(I,M,H)為選擇指標(biāo),選擇最優(yōu)的自動(dòng)狀態(tài)機(jī)。如果當(dāng)前艾真體自身探測的環(huán)境信息中包括目標(biāo)信息,且艾真體群體管理者或服務(wù)器沒有傳達(dá)任務(wù)指令,則該艾真體以全自動(dòng)狀態(tài)進(jìn)行運(yùn)行;而如果艾真體群體管理者或服務(wù)器傳達(dá)了任務(wù)指令,則選擇半自動(dòng)狀態(tài),以合作為目的,優(yōu)先執(zhí)行任務(wù)指令,任務(wù)完成后,回到全自動(dòng)狀態(tài),然后進(jìn)行自我決策;如果接收到人工指令信息,則處于半自動(dòng),無條件服從指令,直到任務(wù)完成,接收到其他指令為止。
有限自動(dòng)狀態(tài)機(jī)具體的轉(zhuǎn)移函數(shù)可參見圖4和圖5。
4.協(xié)商方案 該方法采用的協(xié)商方案包括協(xié)商協(xié)議、協(xié)商方法和協(xié)商途徑三個(gè)部分。
1)協(xié)商協(xié)議 通信是本實(shí)施例方法實(shí)現(xiàn)協(xié)作的關(guān)鍵環(huán)節(jié),它在實(shí)現(xiàn)協(xié)作的過程中起到了橋梁作用。該方法中協(xié)商協(xié)議的形式如圖6所示。多位起始和結(jié)束標(biāo)志,指令長度,均是為了保證在網(wǎng)絡(luò)的傳輸中,能完整的解析一條指令,因?yàn)楫?dāng)信息打包傳輸時(shí),不一定一次能給出一條完整的信息,因此在連續(xù)接收的信息中,需要能將被拆分的指令還原。消息編號和消息發(fā)送時(shí)間是為了在出現(xiàn)網(wǎng)絡(luò)堵塞和重發(fā)時(shí),保證不用重復(fù)或過時(shí)的信息來更新艾真體群體管理者或服務(wù)器以及艾真體個(gè)體中的數(shù)據(jù)。
2)協(xié)商方法 本發(fā)明可以采用以下兩種協(xié)商方法,一種是通過艾真體群體管理者或服務(wù)器提供的機(jī)器人狀態(tài)列表和全局目標(biāo)庫、決策選擇、任務(wù)列表、請求序列等信息的實(shí)時(shí)變化,激活任務(wù)分配算法、競爭協(xié)商算法、信息計(jì)算部分和請求處理模塊等知識資源,得到最優(yōu)協(xié)商方案,將結(jié)果回寫任務(wù)列表。然后管理者根據(jù)任務(wù)列表以最高優(yōu)先權(quán)將指令發(fā)送給相關(guān)的艾真體個(gè)體。另外一種協(xié)商方法是艾真體個(gè)體和艾真體個(gè)體之間交互信息,相互直接信息融合,協(xié)商完成任務(wù)。艾真體個(gè)體之間的選擇是通過艾真體群體管理者之間信息交互后或服務(wù)器根據(jù)任務(wù)進(jìn)行群組劃分的結(jié)果。滿足相似條件的艾真體個(gè)體將被劃分為一個(gè)艾真體群組(即一個(gè)艾真體群體),艾真體個(gè)體和艾真體群組中其他成員交互所需信息。
3)協(xié)商途徑 該異質(zhì)多艾真體通過可重構(gòu)的多移動(dòng)機(jī)器人點(diǎn)對點(diǎn)通信平臺進(jìn)行通訊,艾真體個(gè)體在狀態(tài)變化時(shí)會將當(dāng)前信息發(fā)送給艾真體群體管理者,艾真體群體管理者交互更新信息,或更新服務(wù)器信息(在存在服務(wù)器的情形下)。在沒有狀態(tài)變化的情況下,每隔時(shí)間T更新一次艾真體群體管理者的信息,同時(shí)更新一次它所維護(hù)的群組內(nèi)其他艾真體個(gè)體的狀態(tài)和信息。
本發(fā)明應(yīng)用于在一個(gè)未知環(huán)境中,使用一個(gè)具有視覺設(shè)備的大型機(jī)器人團(tuán)隊(duì)上,用于進(jìn)行協(xié)作觀測與跟蹤動(dòng)態(tài)多目標(biāo),主要步驟如下 第一步,艾真體準(zhǔn)備當(dāng)一個(gè)艾真體開啟之后,它就通過DFA維持的行為狀態(tài)模型,進(jìn)行活動(dòng),或和其他艾真體進(jìn)行交流。當(dāng)該艾真體開啟時(shí),處于Wait狀態(tài),當(dāng)艾真體能夠連接視頻設(shè)備后,就離開這個(gè)狀態(tài)。維持在這個(gè)狀態(tài)的艾真體個(gè)體,可能由于視頻設(shè)備故障,沒有視頻設(shè)備或者是被指定為不允許進(jìn)行偵查活動(dòng),無法自我檢測外界環(huán)境變化。只等待接收外界指令來進(jìn)行活動(dòng); 第二步,指定任務(wù)完成當(dāng)艾真體開啟之后,如果在群體內(nèi),則開始定時(shí)更新艾真體群體管理者上的信息,如果有服務(wù)器,則同時(shí)更新服務(wù)器信息。服務(wù)器被設(shè)計(jì)為可以接受人工干預(yù)部分的信息。當(dāng)接受到一個(gè)指定任務(wù)時(shí),艾真體如果是全自動(dòng)狀態(tài),則會轉(zhuǎn)換成半自動(dòng)狀態(tài)。接受的任務(wù)如果是隊(duì)形排列,所有處于非Busy狀態(tài)的艾真體都進(jìn)入任務(wù)群組,將任務(wù)根據(jù)當(dāng)前完成任務(wù)的艾真體個(gè)數(shù)來進(jìn)行分配,并指導(dǎo)它們完成。如果接受的任務(wù)是指定目標(biāo)查找或跟蹤,則所有當(dāng)前處于Detect狀態(tài)的或某個(gè)區(qū)域的機(jī)器人進(jìn)入任務(wù)群組,接受任務(wù)。以接受任務(wù)的某一個(gè)艾真體找到目標(biāo)為標(biāo)志,表示任務(wù)完成,并通知任務(wù)群組中其他機(jī)器人,放棄該任務(wù)。如果當(dāng)艾真體接受任務(wù)后,則將處于在艾真體個(gè)體的狀態(tài)中優(yōu)先級最高的一個(gè)狀態(tài)Busy狀態(tài)。說明艾真體個(gè)體當(dāng)前正在完成一個(gè)被指派的工作,不可被自身的指令中斷,其他的命令應(yīng)當(dāng)在它完成該工作后進(jìn)行。狀態(tài)的轉(zhuǎn)換根據(jù)分配的指令來轉(zhuǎn)換,在沒有指定要轉(zhuǎn)換的狀態(tài)的情況下,則自動(dòng)返回到進(jìn)入忙碌狀態(tài)之前的狀態(tài),恢復(fù)保存的任務(wù)點(diǎn),繼續(xù)完成被中斷的工作。
第三步,環(huán)境偵查艾真體個(gè)體連接視頻設(shè)備后,自動(dòng)進(jìn)入觀測狀態(tài),進(jìn)行偵查活動(dòng)。處于觀測狀態(tài)的艾真體個(gè)體,觀察視野范圍內(nèi)移動(dòng)個(gè)體,計(jì)算和記錄它們的信息。如果聯(lián)系到服務(wù)器或其他艾真體,則將信息共享和通知。若是全自動(dòng)狀態(tài),則根據(jù)給定的規(guī)則對目標(biāo)進(jìn)行選取和跟蹤,并轉(zhuǎn)入Track狀態(tài),若是半自動(dòng)狀態(tài),根據(jù)授權(quán)進(jìn)行動(dòng)作;對于視野范圍內(nèi)移動(dòng)個(gè)體的偵查,采用的技術(shù)是先使用三幀差背景剪除方法來對目標(biāo)的提取,然后通過形態(tài)學(xué)去噪和高斯濾波,獲取運(yùn)動(dòng)空間中的分離部分制作掩模,進(jìn)行目標(biāo)分割,目標(biāo)合并與提取,最后進(jìn)行迭代式的原始目標(biāo)信息查找,并使用分水嶺算法獲取單個(gè)目標(biāo)信息。通過定義的目標(biāo)篩選的原則對它們進(jìn)行篩選,其目標(biāo)篩選的原則如下 1.目標(biāo)重心點(diǎn)位置相近,目標(biāo)色調(diào)值相似,面積大小相似,則認(rèn)為它是由同一目標(biāo)誤分割所致,選取面積較大的一個(gè)保留,取重心點(diǎn)均值,色調(diào)均值。
2.實(shí)際目標(biāo)觀測,基本不會出現(xiàn)RGB值為0或H值為0的情況。
3.無目標(biāo)時(shí)光線影響測出的噪聲一般面積很大,但是存在目標(biāo)時(shí),由于光線影響,測出的噪聲信息較小。艾真體個(gè)體的物理動(dòng)作也可能產(chǎn)生部分小面積信息,需要對這樣的小面積目標(biāo)進(jìn)行篩選。
進(jìn)行目標(biāo)篩選之后需要給目標(biāo)編號,其中給目標(biāo)編號需要通過艾真體群體管理者或服務(wù)器的分配。定義篩選目標(biāo)之后,先根據(jù)色調(diào)值,給目標(biāo)分配色調(diào)編號,然后服務(wù)器將信息編號發(fā)送給各艾真體個(gè)體,在目標(biāo)庫中查看是否有該色調(diào)編號目標(biāo),如果沒有,則可以給目標(biāo)編號為1。如果已有該色調(diào)編號的目標(biāo),則查看是否是同一個(gè)目標(biāo)。通過目標(biāo)已知信息,目標(biāo)重心在圖像中的位置,艾真體個(gè)體的位置和方向,聲納的數(shù)據(jù)信息等,可以得出目標(biāo)的位置或者方向。如果在全局地圖中,該目標(biāo)和已知目標(biāo)信息相似,則認(rèn)為是一個(gè)已知目標(biāo),分配已知編號,并將其信息通知給其他跟蹤此目標(biāo)的艾真體個(gè)體。然后跟蹤同一個(gè)目標(biāo)的幾個(gè)艾真體個(gè)體,在之后的過程中,幾個(gè)艾真體個(gè)體將相互交流信息,對信息進(jìn)行修正。若不是同一個(gè)目標(biāo),則根據(jù)已知編號,繼續(xù)分配下一個(gè)編號。
在全自動(dòng)狀態(tài),當(dāng)目標(biāo)被提取出來之后,如果跟蹤到了目標(biāo),則以滿足先到先跟蹤,跟蹤可視面積最大,目標(biāo)與艾真體個(gè)體距離最近的標(biāo)準(zhǔn),選取最優(yōu)目標(biāo)進(jìn)行動(dòng)作轉(zhuǎn)換到Track狀態(tài)進(jìn)行跟蹤,其他目標(biāo)可進(jìn)行基本的視覺跟蹤。如果沒有跟蹤到目標(biāo),則回到Detect狀態(tài)繼續(xù)觀測。
第四步,目標(biāo)跟蹤艾真體行為過程中和環(huán)境交互最多的狀態(tài)就是Track,跟蹤狀態(tài)。在此狀態(tài)中,艾真體個(gè)體通過感知器從外界環(huán)境獲取大量數(shù)據(jù)信息,通過模塊庫中視頻處理模塊對數(shù)據(jù)進(jìn)行分析,得到跟蹤的目標(biāo)信息,并通過建模模塊對分析后的信息進(jìn)行存儲和計(jì)算。由于目標(biāo)的描述,采用了兩個(gè)不變量顏色信息與輪廓信息,和一個(gè)可變量區(qū)域信息來表示,因此跟蹤采用的算法是主要通過基于顏色的Meanshift算法來進(jìn)行實(shí)現(xiàn)。如果當(dāng)所跟蹤的目標(biāo)丟失之后,則進(jìn)入Lost,目標(biāo)丟失狀態(tài)。理論分析上,Track狀態(tài)和Lost狀態(tài)之間的轉(zhuǎn)換確定性非常強(qiáng),當(dāng)目標(biāo)在視野范圍內(nèi),就不會丟失和狀態(tài)轉(zhuǎn)換。但是在一個(gè)移動(dòng)的艾真體和未知的環(huán)境中,由于艾真體物理移動(dòng)會產(chǎn)生一定的慣性,環(huán)境的光影會隨著艾真體移動(dòng)而發(fā)生變化,在多艾真體的環(huán)境中,遮擋也是不可忽視的問題。當(dāng)狀態(tài)轉(zhuǎn)換確定性過強(qiáng)的時(shí)候,艾真體對目標(biāo)跟蹤的丟失率就會過高。因此,在方法中設(shè)計(jì)了意外處理的過程。當(dāng)目標(biāo)發(fā)生丟失時(shí),首先通過意外處理中的記憶模型,指導(dǎo)進(jìn)行一定的動(dòng)作,進(jìn)行多次查找和確認(rèn),如果對目標(biāo)丟失的這個(gè)過程進(jìn)行多次確認(rèn)還是無法跟蹤目標(biāo),則認(rèn)為該目標(biāo)最終丟失,進(jìn)行下一步動(dòng)作; 第五步,意外處理在光線,物理慣性等各種不可預(yù)知的條件影響下,目標(biāo)的意外丟失是很有可能出現(xiàn)的事情。因此為了處理這種意外,為艾真體個(gè)體設(shè)計(jì)了記憶和預(yù)測功能。
(1)記憶過程,記憶是艾真體個(gè)體在Track狀態(tài)的同時(shí),將已知信息在容器中進(jìn)行保存的一個(gè)過程,分為短期記憶和長期記憶。短期記憶會記住最近所做的動(dòng)作,而長期記憶會記住在跟蹤一個(gè)目標(biāo)的整個(gè)過程中,所得到的艾真體個(gè)體和目標(biāo)移動(dòng)的路徑。在獲取到了一定量信息后,可以使用曲線擬合對艾真體個(gè)體和目標(biāo)移動(dòng)的路徑的信息進(jìn)行歸納。在客戶端,由于艾真體個(gè)體性能限制和圖像數(shù)據(jù)處理,通信等大量任務(wù),以及目標(biāo)運(yùn)動(dòng)的軌跡不確定性,進(jìn)行擬合只考慮最近部分?jǐn)?shù)據(jù),對其進(jìn)行分段的曲線擬合。艾真體管理者或服務(wù)器端會通過總體的數(shù)據(jù)進(jìn)行更詳細(xì)的計(jì)算 (2)預(yù)測過程,當(dāng)計(jì)算目標(biāo)的面積小于某個(gè)閾值之后,可認(rèn)為目標(biāo)丟失。則進(jìn)入Lost狀態(tài)。如果丟失目標(biāo)后,沒有通過短期記憶來進(jìn)行臨時(shí)動(dòng)作的話,則先完成一個(gè)臨時(shí)動(dòng)作,再進(jìn)行觀測。短期記憶一般不超過三個(gè)動(dòng)作,起主要作用的是最近的動(dòng)作,其他的起輔助檢驗(yàn)工作。如果通過短期記憶引導(dǎo),沒有再次找到目標(biāo),則通過長期記憶的多項(xiàng)式曲線擬合出的目標(biāo)軌跡,指導(dǎo)艾真體轉(zhuǎn)到所預(yù)測到的角度來進(jìn)行觀測。當(dāng)艾真體在一定時(shí)限內(nèi)還沒有找到目標(biāo),則認(rèn)為目標(biāo)確實(shí)丟失了,則發(fā)送信息到服務(wù)器,服務(wù)器將指導(dǎo)艾真體群體做出相應(yīng)決策與動(dòng)作。
權(quán)利要求
1、一種基于有限狀態(tài)自動(dòng)機(jī)的多艾真體動(dòng)態(tài)多目標(biāo)協(xié)作跟蹤方法,其特征在于復(fù)合式艾真體根據(jù)通過自身探測的環(huán)境信息I、服務(wù)器或其他艾真體或艾真體群體管理者傳達(dá)的需要完成的任務(wù)信息M、和/或服務(wù)器傳達(dá)的人為的指定信息H,在多個(gè)有限自動(dòng)狀態(tài)機(jī)中,選擇一個(gè)有限自動(dòng)狀態(tài)機(jī)作為用以維持該復(fù)合式艾真體行為狀態(tài)模型的有限自動(dòng)狀態(tài)機(jī)。
2、如權(quán)利要求1所述的一種基于有限狀態(tài)自動(dòng)機(jī)的多艾真體動(dòng)態(tài)多目標(biāo)協(xié)作跟蹤方法,其特征在于所述的有限自動(dòng)狀態(tài)機(jī)為全自動(dòng)狀態(tài)機(jī)和半自動(dòng)狀態(tài)機(jī);
全自動(dòng)狀態(tài)機(jī)為
由等待、觀測、跟蹤、丟失和忙碌5個(gè)狀態(tài)組成,各狀態(tài)的具體轉(zhuǎn)換關(guān)系如下
(a)對于“等待”狀態(tài),輸入為“禁止連接”則保持原狀態(tài);輸入為“連接”則切換到“觀測”狀態(tài);
(b)對于“觀測”狀態(tài),輸入為“丟失目標(biāo)”則保持原狀態(tài);輸入為“禁止連接”則切換到“等待”狀態(tài);輸入為“任務(wù)”則切換到“忙碌”狀態(tài);輸入為“命令”則切換到“丟失”狀態(tài);輸入為“發(fā)現(xiàn)目標(biāo)”則切換到“跟蹤”狀態(tài);
(c)對于“跟蹤”狀態(tài),輸入為“發(fā)現(xiàn)目標(biāo)”則保持原狀態(tài);輸入為“丟失目標(biāo)”則切換到“丟失”狀態(tài);輸入為“任務(wù)”則切換到“忙碌”狀態(tài);輸入為“命令”則切換到“觀測”狀態(tài);輸入為“禁止連接”則切換到“等待”狀態(tài);
(d)對于“丟失”狀態(tài),輸入為“丟失目標(biāo)”則保持原狀態(tài);輸入為“發(fā)現(xiàn)目標(biāo)”則切換到“跟蹤”狀態(tài);輸入為“任務(wù)”則切換到“忙碌”狀態(tài);輸入為“命令”則切換到“觀測”狀態(tài);
(e)對于“忙碌”狀態(tài),輸入為“禁止連接”則切換到“等待”狀態(tài);輸入為“任務(wù)完成”則根據(jù)記錄,回復(fù)到接受任務(wù)之前的狀態(tài),可以為“觀測”狀態(tài)、“丟失”狀態(tài)或者是“跟蹤”狀態(tài);
半自動(dòng)狀態(tài)機(jī)為
由等待、觀測、跟蹤、丟失和忙碌5個(gè)狀態(tài)組成,各狀態(tài)的具體轉(zhuǎn)換關(guān)系如下
(a)對于“等待”狀態(tài),輸入為“禁止連接”則保持原狀態(tài);輸入為“連接”則切換到“觀測”狀態(tài);
(b)對于“觀測”狀態(tài),輸入為“丟失目標(biāo)”則保持原狀態(tài);輸入為“禁止連接”則切換到“等待”狀態(tài);輸入為“任務(wù)”則切換到“忙碌”狀態(tài);輸入為“發(fā)現(xiàn)目標(biāo)”則切換到“跟蹤”狀態(tài);
(c)對于“跟蹤”狀態(tài),輸入為“發(fā)現(xiàn)目標(biāo)”則保持原狀態(tài);輸入為“丟失目標(biāo)”則切換到“丟失”狀態(tài);輸入為“任務(wù)”則切換到“忙碌”狀態(tài);輸入為“命令”則切換到“觀測”狀態(tài);輸入為“禁止連接”則切換到“等待”狀態(tài);
(d)對于“丟失”狀態(tài),輸入為“丟失目標(biāo)”則保持原狀態(tài);輸入為“發(fā)現(xiàn)目標(biāo)”則切換到“跟蹤”狀態(tài);輸入為“任務(wù)”則切換到“忙碌”狀態(tài);輸入為“命令”則切換到“觀測”狀態(tài);
(e)對于“忙碌”狀態(tài),輸入為“禁止連接”則切換到“等待”狀態(tài);輸入為“任務(wù)完成”則切換到“觀測”狀態(tài);輸入為“任務(wù)完成”則根據(jù)記錄,回復(fù)到接受任務(wù)之前的狀態(tài),可以為“觀測”狀態(tài)、“丟失”狀態(tài)或者是“跟蹤”狀態(tài)。
3、如權(quán)利要求2所述的一種基于有限狀態(tài)自動(dòng)機(jī)的多艾真體動(dòng)態(tài)多目標(biāo)協(xié)作跟蹤方法,其特征在于所述的復(fù)合式艾真體的行為可表示為M=(Q,∑,δ,q0,F(xiàn)),是一個(gè)由以下幾部分組成的數(shù)學(xué)模型
一個(gè)狀態(tài)的有窮集合Q={等待,觀測,跟蹤,丟失,忙碌},即
Q={Wait,Detect,Track,Lost,Busy};
可接受的輸入集合∑,它指明了所有允許輸入的符號,有限自動(dòng)狀態(tài)機(jī)根據(jù)這個(gè)集合中的符號的輸入,進(jìn)行狀態(tài)的變化,其表示如下
∑={連接,發(fā)現(xiàn)目標(biāo),丟失目標(biāo),禁止連接,任務(wù),任務(wù)完成,命令},
即∑={connect,findobj,lostobj,unconnect,work,finishwork,order}
起始狀態(tài)q0={等待},即q0={Wait},艾真體開啟之后的第一個(gè)狀態(tài),在無法連接視頻設(shè)備的情況下,將維持在這個(gè)狀態(tài);
結(jié)束狀態(tài)F={等待},即F={Wait},當(dāng)艾真體無法繼續(xù)主動(dòng)參與完成協(xié)作跟蹤的情況下,斷開視頻設(shè)備后進(jìn)入該狀態(tài),在艾真體物理設(shè)備結(jié)束一切任務(wù)之前,也首先斷開視頻設(shè)備,宣告離開艾真體群體;
轉(zhuǎn)移函數(shù)δ是Q×∑→Q的一個(gè)映射,由所述的有限自動(dòng)狀態(tài)機(jī)所識別。
4、如權(quán)利要求1所述的一種基于有限狀態(tài)自動(dòng)機(jī)的多艾真體動(dòng)態(tài)多目標(biāo)協(xié)作跟蹤方法,其特征在于通過復(fù)合式艾真體有限自動(dòng)狀態(tài)機(jī)所維持行為狀態(tài)模型以及實(shí)時(shí)的任務(wù)和環(huán)境的約束,將多個(gè)復(fù)合式艾真體分離成若干群體,群體內(nèi)部復(fù)合式艾真體可以直接進(jìn)行信息的交流;每個(gè)群體有一個(gè)艾真體群體管理者,各個(gè)群體之間可通過艾真體群體管理者直接或間接進(jìn)行交流;群體之間的直接交流是通過信息更新激發(fā)信息交互和/或定時(shí)信息交互來進(jìn)行,所述的間接交流是在有服務(wù)器的多艾真體系統(tǒng)中,群體間通過服務(wù)器進(jìn)行交流。
5、如權(quán)利要求4所述的一種基于有限狀態(tài)自動(dòng)機(jī)的多艾真體動(dòng)態(tài)多目標(biāo)協(xié)作跟蹤方法,其特征在于艾真體群體管理者從復(fù)合式艾真體個(gè)體中獲取三類信息
第一類為目標(biāo)信息,用于保證艾真體群體管理者或服務(wù)器上的目標(biāo)庫的信息為最新信息;
第二類為視頻設(shè)備的詳細(xì)信息和復(fù)合式艾真體個(gè)體的狀態(tài)信息;艾真體群體管理者定時(shí)從艾真體個(gè)體接收新的信息,在有服務(wù)器情況下,艾真體群體管理者根據(jù)所更新信息的更新服務(wù)器中黑板的內(nèi)容;
第三類信息為請求信息;當(dāng)復(fù)合式艾真體個(gè)體遇到緊急情況,在意外處理無效的情況下,會發(fā)生援助請求信號,寫入請求序列,激發(fā)請求處理模塊;請求處理模塊會讓所在的群體進(jìn)行模塊調(diào)度,滿足某個(gè)復(fù)合式艾真體發(fā)送的請求;在單個(gè)群體任務(wù)無法完成時(shí),該單個(gè)群體再調(diào)度其他群體進(jìn)行協(xié)助。
6.如權(quán)利要求4所述的一種基于有限狀態(tài)自動(dòng)機(jī)的多艾真體動(dòng)態(tài)多目標(biāo)協(xié)作跟蹤方法,其特征在于所述的復(fù)合式艾真體包括如下幾個(gè)部分
1)一個(gè)用有限自動(dòng)狀態(tài)機(jī)所維持的行為狀態(tài)模型,行為狀態(tài)模型中包括規(guī)劃方案,行為狀態(tài)模型根據(jù)當(dāng)前的狀態(tài)和規(guī)劃方案決定從模塊庫中選擇合適的模塊進(jìn)行下一步的計(jì)算;
2)一個(gè)模塊庫,包括視頻處理模塊和建模模塊,模塊可根據(jù)需求進(jìn)行擴(kuò)展;視頻處理模塊包括基于三幀差的目標(biāo)觀測、形態(tài)學(xué)去噪聲、目標(biāo)分割、目標(biāo)篩選、目標(biāo)信息計(jì)算、目標(biāo)合并與提取以及均值偏移算法跟蹤;建模模塊包括意外處理的記憶過程、預(yù)測過程和自保護(hù)處理;
3)通訊模塊,用于與其他復(fù)合式艾真體、艾真體群體管理者和/或服務(wù)器通信。
7.如權(quán)利要求4所述的一種基于有限狀態(tài)自動(dòng)機(jī)的多艾真體動(dòng)態(tài)多目標(biāo)協(xié)作跟蹤方法,其特征在于所采用的協(xié)商方案包括協(xié)商協(xié)議、協(xié)商方法和協(xié)商途徑三個(gè)部分
1)協(xié)商協(xié)議
協(xié)商協(xié)議的形式包括多位起始和結(jié)束標(biāo)志、指令長度協(xié)商元語、消息編號和消息內(nèi)容;所述的協(xié)商元語包括請求、命令和信息指令,所述的消息內(nèi)容包括消息接收者類型、有效信息內(nèi)容和消息發(fā)送時(shí)間;
2)協(xié)商方法
一種協(xié)商方法是通過艾真體群體管理者或服務(wù)器提供的機(jī)器人狀態(tài)列表和全局目標(biāo)庫、決策選擇、任務(wù)列表和請求序列信息的實(shí)時(shí)變化,激活任務(wù)分配算法、競爭協(xié)商算法、信息計(jì)算部分和請求處理模塊,獲得最優(yōu)協(xié)商方案,將結(jié)果回寫任務(wù)列表;然后管理者根據(jù)任務(wù)列表以最高優(yōu)先權(quán)將指令發(fā)送給相關(guān)的復(fù)合式艾真體個(gè)體。
另外一種協(xié)商方法是在復(fù)合式艾真體群體中,復(fù)合式艾真體個(gè)體之間交互信息,相互直接信息融合,協(xié)商完成任務(wù);
3)協(xié)商途徑
通過可重構(gòu)的多移動(dòng)機(jī)器人點(diǎn)對點(diǎn)通信平臺進(jìn)行通訊,復(fù)合式艾真體個(gè)體在狀態(tài)變化時(shí)會將當(dāng)前信息發(fā)送給艾真體群體管理者,艾真體群體管理者交互更新信息,或更新服務(wù)器信息;在沒有狀態(tài)變化的情況下,每隔時(shí)間T更新一次艾真體群體管理者的信息,同時(shí)更新一次艾真體群體管理者所維護(hù)的群體內(nèi)其他復(fù)合式艾真體個(gè)體的狀態(tài)和信息。
8.如權(quán)利要求1~7任一項(xiàng)所述的一種基于有限狀態(tài)自動(dòng)機(jī)的多艾真體動(dòng)態(tài)多目標(biāo)協(xié)作跟蹤方法,其特征在于,包括以下步驟
第一步,復(fù)合式艾真體準(zhǔn)備復(fù)合式艾真體開啟之后,通過有限自動(dòng)狀態(tài)機(jī)維持的行為狀態(tài)模型進(jìn)行活動(dòng),或和其他復(fù)合式艾真體進(jìn)行交流;當(dāng)該復(fù)合式艾真體開啟時(shí),處于等待狀態(tài),即Wait狀態(tài),當(dāng)復(fù)合式艾真體能夠連接視頻設(shè)備后,就離開這個(gè)狀態(tài);維持在這個(gè)狀態(tài)的復(fù)合式艾真體個(gè)體,可能由于視頻設(shè)備故障,沒有視頻設(shè)備或者是被指定為不允許進(jìn)行偵查活動(dòng),無法自我觀測外界環(huán)境變化,只等待接收外界指令來進(jìn)行活動(dòng);
第二步,指定任務(wù)完成當(dāng)復(fù)合式艾真體開啟之后,如果在群體內(nèi),則開始定時(shí)更新復(fù)合式艾真體群體管理者上的信息,如果有服務(wù)器,則同時(shí)更新服務(wù)器信息;當(dāng)接受到一個(gè)指定任務(wù)時(shí),復(fù)合式艾真體如果是全自動(dòng)狀態(tài),則會轉(zhuǎn)換成半自動(dòng)狀態(tài);接受的任務(wù)如果是隊(duì)形排列,則所有處于非忙碌狀態(tài)的復(fù)合式艾真體都進(jìn)入任務(wù)群組,將任務(wù)根據(jù)當(dāng)前完成任務(wù)的復(fù)合式艾真體個(gè)數(shù)來進(jìn)行分配,并指導(dǎo)復(fù)合式艾真體完成;如果接受的任務(wù)是指定目標(biāo)查找或跟蹤,則所有當(dāng)前處于觀測狀態(tài)的或某個(gè)區(qū)域的機(jī)器人進(jìn)入任務(wù)群組接受任務(wù);以接受任務(wù)的某一個(gè)復(fù)合式艾真體找到目標(biāo)為標(biāo)志,表示任務(wù)完成,并通知任務(wù)群組中其他復(fù)合式艾真體放棄該任務(wù);當(dāng)復(fù)合式艾真體接受任務(wù)后,其狀態(tài)為忙碌狀態(tài);狀態(tài)的轉(zhuǎn)換根據(jù)分配的指令來轉(zhuǎn)換,在沒有指定要轉(zhuǎn)換的狀態(tài)的情況下,則自動(dòng)返回到進(jìn)入忙碌狀態(tài)之前的狀態(tài),恢復(fù)保存的任務(wù)點(diǎn),繼續(xù)完成被中斷的工作;
第三步,環(huán)境偵查復(fù)合式艾真體個(gè)體連接視頻設(shè)備后,自動(dòng)進(jìn)入觀測狀態(tài)進(jìn)行偵查活動(dòng);處于觀測狀態(tài)的復(fù)合式艾真體個(gè)體,觀察視野范圍內(nèi)移動(dòng)個(gè)體,計(jì)算和記錄它們的信息;如果聯(lián)系到服務(wù)器或其他復(fù)合式艾真體,則將信息共享和通知;若是全自動(dòng)狀態(tài),則根據(jù)給定的規(guī)則對目標(biāo)進(jìn)行選取和跟蹤,并轉(zhuǎn)入跟蹤狀態(tài),即Track狀態(tài);若是半自動(dòng)狀態(tài),根據(jù)授權(quán)進(jìn)行動(dòng)作;在全自動(dòng)狀態(tài),當(dāng)目標(biāo)被提取出來之后,如果跟蹤到了目標(biāo),則以滿足先到先跟蹤、跟蹤可視面積最大、目標(biāo)與復(fù)合式艾真體個(gè)體距離最近的標(biāo)準(zhǔn),選取最優(yōu)目標(biāo)進(jìn)行動(dòng)作轉(zhuǎn)換到跟蹤狀態(tài)進(jìn)行跟蹤,其他目標(biāo)可進(jìn)行基本的視覺跟蹤;如果沒有跟蹤到目標(biāo),則回到觀測狀態(tài)繼續(xù)觀測;
第四步,目標(biāo)跟蹤復(fù)合式艾真體個(gè)體通過感知器從外界環(huán)境獲取大量數(shù)據(jù)信息,通過模塊庫中視頻處理模塊對數(shù)據(jù)進(jìn)行分析,得到跟蹤的目標(biāo)信息,并通過建模模塊對分析后的信息進(jìn)行存儲和計(jì)算;跟蹤主要通過基于顏色的均值偏移算法來實(shí)現(xiàn);當(dāng)所跟蹤的目標(biāo)丟失之后,則進(jìn)入目標(biāo)丟失狀態(tài),即Lost狀態(tài);
第五步,意外處理包括記憶過程和預(yù)測過程;
1)記憶過程,記憶是復(fù)合式艾真體個(gè)體在跟蹤狀態(tài)的同時(shí),將已知信息在存儲中進(jìn)行保存的一個(gè)過程,分為短期記憶和長期記憶;短期記憶會記住最近所做的動(dòng)作,而長期記憶會記住在跟蹤一個(gè)目標(biāo)的整個(gè)過程中,所得到的復(fù)合式艾真體個(gè)體和目標(biāo)移動(dòng)的路徑;根據(jù)獲取的信息,通過曲線擬合對復(fù)合式艾真體個(gè)體和目標(biāo)移動(dòng)的路徑的信息進(jìn)行歸納;在客戶端進(jìn)行擬合只考慮最近部分?jǐn)?shù)據(jù),對其進(jìn)行分段的曲線擬合;復(fù)合式艾真體管理者或服務(wù)器端會對總體的數(shù)據(jù)進(jìn)行計(jì)算;
2)預(yù)測過程,當(dāng)計(jì)算目標(biāo)的面積小于某個(gè)閾值之后,認(rèn)為目標(biāo)丟失;則進(jìn)入丟失狀態(tài),即Lost狀態(tài);短期記憶一般不超過三個(gè)動(dòng)作,起主要作用的是最近的動(dòng)作,其他的起輔助檢驗(yàn)作用;如果通過短期記憶引導(dǎo),沒有再次找到目標(biāo),則通過長期記憶的多項(xiàng)式曲線擬合出的目標(biāo)軌跡,指導(dǎo)復(fù)合式艾真體轉(zhuǎn)到所預(yù)測到的角度來進(jìn)行觀測;當(dāng)復(fù)合式艾真體在一定時(shí)限內(nèi)還沒有找到目標(biāo),認(rèn)為目標(biāo)確實(shí)丟失了,則發(fā)出目標(biāo)丟失信息。
全文摘要
本發(fā)明公開了一種基于有限狀態(tài)自動(dòng)機(jī)的多艾真體動(dòng)態(tài)多目標(biāo)協(xié)作跟蹤方法,其特征在于復(fù)合式艾真體根據(jù)通過自身探測的環(huán)境信息I、服務(wù)器或其他艾真體或艾真體群體管理者傳達(dá)的需要完成的任務(wù)信息M、和/或服務(wù)器傳達(dá)的人為的指定信息H,在多個(gè)有限自動(dòng)狀態(tài)機(jī)中,選擇一個(gè)有限自動(dòng)狀態(tài)機(jī)作為用以維持該復(fù)合式艾真體行為狀態(tài)模型的有限自動(dòng)狀態(tài)機(jī)。該艾真體以行為狀態(tài)及情感信息等因素為驅(qū)動(dòng),通過信息交互或者結(jié)合服務(wù)器團(tuán)隊(duì)協(xié)調(diào),進(jìn)行集中式控制或艾真體個(gè)體信息交互控制。本發(fā)明可適用于集中式、分布式、混合式等不同體系結(jié)構(gòu)。
文檔編號G01C21/00GK101303589SQ20081003154
公開日2008年11月12日 申請日期2008年6月20日 優(yōu)先權(quán)日2008年6月20日
發(fā)明者蔡自興, 盧薇薇, 陳愛斌, 文志強(qiáng) 申請人:中南大學(xué)