本發(fā)明涉及目標(biāo)檢測及跟蹤領(lǐng)域,尤其涉及一種實(shí)時(shí)攝像方法及系統(tǒng)。
背景技術(shù):
在大型田徑運(yùn)動會上,經(jīng)常會直播運(yùn)動員比賽的全過程。傳統(tǒng)的檢測方法是動態(tài)目標(biāo)跟蹤方法,即攝像頭跟隨運(yùn)動員一起,或者攝像頭固定在某一個(gè)位置搖動攝像頭,進(jìn)行動態(tài)目標(biāo)跟蹤。這樣最大的弊端就是跟蹤的目標(biāo)監(jiān)控時(shí)間短暫以及比賽全過程不能完整記錄下來。
公開號為cn105208282a的專利提供了一種比賽現(xiàn)場根據(jù)籃球位置控制攝像頭自動跟拍的方法,包括云臺;包括跟蹤控制單元,所述跟蹤控制單元包括采集模塊、轉(zhuǎn)換模塊、控制模塊、終端通訊模塊、顯示模塊、球體識別模塊;包括高清可變焦可360°轉(zhuǎn)動的攝像機(jī);包括視頻處理單元;所述終端通訊模塊與攝像機(jī)通訊。該發(fā)明提供的一種比賽現(xiàn)場根據(jù)籃球位置控制攝像頭自動跟拍的方法,對球體的準(zhǔn)確識別以及對攝像頭的自動控制是其中主要解決的問題。但是該發(fā)明是將攝像頭固定在一個(gè)位置搖擺,進(jìn)行動態(tài)目標(biāo)的跟蹤。
公開號為cn104835182a的專利提供了一種攝像機(jī)上實(shí)現(xiàn)動態(tài)目標(biāo)實(shí)時(shí)跟蹤的方法,所述的方法包括攝像機(jī)采集所述的動態(tài)目標(biāo)的圖像;控制模塊基于svm方法特征檢測以及基于相鄰幀差法運(yùn)動檢測對所述的動態(tài)目標(biāo)的圖像進(jìn)行分析;所述的攝像機(jī)根據(jù)所述的控制模塊的分析結(jié)果調(diào)整所述的攝像機(jī)的方向及位置,以實(shí)現(xiàn)對所述的動態(tài)目標(biāo)的跟蹤。采用該種結(jié)構(gòu)的攝像機(jī)上實(shí)現(xiàn)動態(tài)目標(biāo)實(shí)時(shí)跟蹤的方法,同時(shí)采用svm方法檢測和相鄰幀差法運(yùn)動檢測,具有更好的檢測能力,能更精確的捕捉到目標(biāo)位置,并能控制攝像機(jī)對目標(biāo)進(jìn)行有效跟蹤,對于復(fù)雜背景的適應(yīng)能力,很大程度上降低了靜態(tài)目標(biāo)誤檢率,克服svm方法檢測時(shí)動態(tài)背景適應(yīng)能力的問題,應(yīng)用范圍廣泛。該發(fā)明也是將攝像頭固定在一個(gè)位置搖擺,進(jìn)行動態(tài)目標(biāo)的跟蹤。不能高質(zhì)量地監(jiān)控動態(tài)目標(biāo)比賽全過程。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明要解決的技術(shù)問題目的在于提供一種實(shí)時(shí)攝像方法及系統(tǒng),用以解決傳統(tǒng)的動態(tài)目標(biāo)跟蹤方法跟蹤目標(biāo)監(jiān)控時(shí)間短暫,動態(tài)目標(biāo)運(yùn)動的全過程不能完整記錄的問題。
為了實(shí)現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案為:
一種實(shí)時(shí)攝像方法,包括步驟:
s1、計(jì)算動態(tài)監(jiān)控點(diǎn)與均勻安裝在攝像范圍側(cè)的攝像頭的位置信息;
s2、判斷所述位置信息是否滿足預(yù)設(shè)條件,若是,進(jìn)入循環(huán)隊(duì)列;否則,不進(jìn)入循環(huán)隊(duì)列;
s3、根據(jù)所述進(jìn)入循環(huán)隊(duì)列的位置信息將攝像頭由大到小編號并放置到攝像切換的循環(huán)隊(duì)列;
s4、呈現(xiàn)所述最大編號的攝像頭拍攝的畫面。
進(jìn)一步地,均勻安裝所述攝像頭的步驟具體包括:
根據(jù)所述動態(tài)監(jiān)控點(diǎn)的移動速率與視覺暫留時(shí)間計(jì)算所述攝像范圍側(cè)的攝像頭的間隔距離;
根據(jù)所述攝像范圍側(cè)的長度大小及所述間隔距離計(jì)算均勻安裝所述攝像頭的數(shù)量。
進(jìn)一步地,步驟s1具體包括:
計(jì)算所述攝像頭與所述動態(tài)監(jiān)控點(diǎn)的余弦距離與歐式距離以及所述動態(tài)監(jiān)控點(diǎn)與所述攝像頭的方向向量的夾角。
進(jìn)一步地,步驟s2具體包括:
判斷所述攝像頭與所述動態(tài)監(jiān)控點(diǎn)的歐氏距離是否不大于第一閾值且所述動態(tài)監(jiān)控點(diǎn)與所述攝像頭的方向向量的夾角不大于第二閾值,若是,進(jìn)入循環(huán)隊(duì)列;否則,不進(jìn)入循環(huán)隊(duì)列。
進(jìn)一步地,步驟s3具體包括:
根據(jù)所述攝像頭與所述動態(tài)監(jiān)控點(diǎn)的余弦距離將攝像頭由大到小編號并放置到攝像切換的循環(huán)隊(duì)列。
一種實(shí)時(shí)攝像系統(tǒng),包括:
計(jì)算模塊,用于計(jì)算動態(tài)監(jiān)控點(diǎn)與均勻安裝在攝像范圍側(cè)的攝像頭的位置信息;
判斷模塊,用于判斷所述位置信息是否滿足預(yù)設(shè)條件,若是,進(jìn)入循環(huán)隊(duì)列;否則,不進(jìn)入循環(huán)隊(duì)列;
循環(huán)模塊,用于根據(jù)所述進(jìn)入循環(huán)隊(duì)列的位置信息將攝像頭由大到小編號并放置到攝像切換的循環(huán)隊(duì)列;
呈現(xiàn)模塊,用于呈現(xiàn)所述最大編號的攝像頭拍攝的畫面。
進(jìn)一步地,所述計(jì)算模塊包括:
均勻安裝計(jì)算單元;用于根據(jù)所述動態(tài)監(jiān)控點(diǎn)的移動速率與視覺暫留時(shí)間計(jì)算所述攝像范圍側(cè)的攝像頭的間隔距離并根據(jù)所述攝像范圍側(cè)的長度大小及所述間隔距離計(jì)算均勻安裝所述攝像頭的數(shù)量。
進(jìn)一步地,所述計(jì)算模塊還包括:
位置信息計(jì)算單元,用于計(jì)算所述攝像頭與所述動態(tài)監(jiān)控點(diǎn)的余弦距離與歐式距離以及所述動態(tài)監(jiān)控點(diǎn)與所述攝像頭的方向向量的夾角。
進(jìn)一步地,所述判斷模塊還用于判斷所述攝像頭與所述動態(tài)監(jiān)控點(diǎn)的歐氏距離是否不大于第一閾值且所述動態(tài)監(jiān)控點(diǎn)與所述攝像頭的方向向量的夾角不大于第二閾值,若是,進(jìn)入循環(huán)隊(duì)列;否則,不進(jìn)入循環(huán)隊(duì)列。
進(jìn)一步地,所述循環(huán)模塊還用于根據(jù)所述攝像頭與所述動態(tài)監(jiān)控點(diǎn)的余弦距離將攝像頭由大到小編號并放置到攝像切換的循環(huán)隊(duì)列。
本發(fā)明與傳統(tǒng)的技術(shù)相比,有如下優(yōu)點(diǎn):
利用余弦距離和循環(huán)隊(duì)列算法,高質(zhì)量監(jiān)控動態(tài)目標(biāo)運(yùn)動的全過程。
附圖說明
圖1是本發(fā)明實(shí)施例提供的一種實(shí)時(shí)攝像方法流程圖;
圖2是本發(fā)明實(shí)施例提供的一種實(shí)時(shí)攝像系統(tǒng)結(jié)構(gòu)圖;
圖3是本發(fā)明實(shí)施例計(jì)算余弦距離的坐標(biāo)軸示意圖。
具體實(shí)施方式
以下是本發(fā)明的具體實(shí)施例并結(jié)合附圖,對本發(fā)明的技術(shù)方案作進(jìn)一步的描述,但本發(fā)明并不限于這些實(shí)施例。
本實(shí)施例提供了一種實(shí)時(shí)攝像方法,如圖1所示,包括步驟:
s11:計(jì)算動態(tài)監(jiān)控點(diǎn)與均勻安裝在攝像范圍側(cè)的攝像頭的位置信息;
s12:判斷位置信息是否滿足預(yù)設(shè)條件,若是,進(jìn)入循環(huán)隊(duì)列;否則,不進(jìn)入循環(huán)隊(duì)列;
s13:根據(jù)所述進(jìn)入循環(huán)隊(duì)列的位置信息,將攝像頭由大到小編號并放置到攝像切換的循環(huán)隊(duì)列;
s14:呈現(xiàn)最大編號的攝像頭拍攝的畫面。
本實(shí)施例通過計(jì)算動態(tài)監(jiān)控點(diǎn)與攝像頭的余弦距離,由大到小將攝像頭的編號放置到循環(huán)隊(duì)列。由此達(dá)到高質(zhì)量監(jiān)控動態(tài)目標(biāo)比賽的全過程,同時(shí)不影響比賽過程的目的。
其中,余弦距離,也稱為余弦相似度,是用向量空間中兩個(gè)向量夾角的余弦值作為衡量兩個(gè)個(gè)體間差異的大小的度量。
向量,是多維空間中有方向的線段,如果兩個(gè)向量的方向一致,即夾角接近零,那么這兩個(gè)向量就相近。而要確定兩個(gè)向量方向是否一致,這就要用到余弦定理計(jì)算向量的夾角。
循環(huán)隊(duì)列是指,為充分利用向量空間,克服“假溢出”現(xiàn)象的方法是:將向量空間想象為一個(gè)首尾相接的圓環(huán),并稱這種向量為循環(huán)向量。存儲在其中的隊(duì)列稱為循環(huán)隊(duì)列。這種循環(huán)隊(duì)列可以以單鏈表的方式來在實(shí)際編程應(yīng)用中來實(shí)現(xiàn)。
其中,系統(tǒng)作為隊(duì)列用的存儲區(qū)還沒有滿,但隊(duì)列卻發(fā)生了溢出,我們把這種現(xiàn)象稱為“假溢出”。單鏈表是一種鏈?zhǔn)酱嫒〉臄?shù)據(jù)結(jié)構(gòu),用一組地址任意的存儲單元存放線性表中的數(shù)據(jù)元素。
循環(huán)隊(duì)列中,由于入隊(duì)時(shí)尾指針向前追趕頭指針;出隊(duì)時(shí)頭指針向前追趕尾指針,造成隊(duì)空和隊(duì)滿時(shí)頭尾指針均相等。因此無法通過條件front==rear來判別隊(duì)列是"空"還是"滿"。
解決這個(gè)問題的方法如下:
數(shù)據(jù)結(jié)構(gòu)常用的:隊(duì)滿時(shí):(rear+1)%n==front,n為隊(duì)列長度(所用數(shù)組大小),由于rear,front均為所用空間的指針,循環(huán)只是邏輯上的循環(huán),所以需要求余運(yùn)算。如圖情況,隊(duì)已滿,但是rear(5)+1=6?。絝ront(0),對空間長度求余,作用就在此6%6=0=front(0)。
類型定義采用環(huán)狀模型來實(shí)現(xiàn)隊(duì)列,各數(shù)據(jù)成員的意義如下:
front指定隊(duì)首位置,刪除一個(gè)元素就將front順時(shí)針移動一位;
rear指向元素要插入的位置,插入一個(gè)元素就將rear順時(shí)針移動一位;
count存放隊(duì)列中元素的個(gè)數(shù),當(dāng)count等于maxqsize時(shí),不可再向隊(duì)列中插入元素。
隊(duì)空:count=0
隊(duì)滿:count=maxqsize
循環(huán)隊(duì)列的操作特點(diǎn)是“先進(jìn)先出”。前者主要是頭指針、尾指針的使用,后者主要是理解循環(huán)隊(duì)列提出的原因及其特點(diǎn)。兩者都要掌握隊(duì)列空與滿的判定條件以及出隊(duì)列、入隊(duì)列操作的實(shí)現(xiàn)。
本實(shí)施例中,在攝像范圍側(cè)每隔固定距離安裝一臺攝像頭。
其中,均勻安裝攝像頭的具體步驟為:
根據(jù)動態(tài)監(jiān)控點(diǎn)的移動速率與視覺暫留時(shí)間計(jì)算攝像范圍側(cè)的攝像頭的間隔距離;
根據(jù)攝像范圍側(cè)的長度大小及間隔距離計(jì)算均勻安裝攝像頭的數(shù)量。
優(yōu)選的,以百米跑道為例,在百米跑道一側(cè)每隔固定距離安裝一臺攝像頭,如圖3所示。
優(yōu)選的,在百米跑道的一側(cè)每隔2.5米固定安裝一臺攝像頭。
由于攝像頭距離跑道外環(huán)線的最短距離將直接影響拍攝的畫面的清晰度和拍攝跑道的范圍,但本發(fā)明只需要保證相鄰兩個(gè)攝像頭所能夠拍攝的范圍沒有死角即可。
在物體快速運(yùn)動時(shí),當(dāng)人眼所看到的影像消失后,人眼仍能繼續(xù)保留其影像0.1~0.4秒左右的圖像,這種現(xiàn)象被稱為視覺暫留現(xiàn)象。而田徑運(yùn)動員在比賽的過程中平均速度是10米/秒,因此相鄰兩個(gè)攝像頭應(yīng)保持的距離在1米到4米之間,就可以保證攝像頭切換畫面時(shí)給觀看者的影響視覺是連續(xù)的,這里選取的距離為2.5米,因此在百米跑道上安裝的攝像頭數(shù)量可為40臺。
每臺攝像頭固定編號,這些攝像頭按照順時(shí)針方向組合成單向循環(huán)隊(duì)列,隊(duì)首指針為頭部指針,即front指針,隊(duì)尾指針為尾部指針,即rear指針。
其中,循環(huán)隊(duì)列頭部指針指向余弦距離最大的攝像頭,循環(huán)隊(duì)列尾部指針指向余弦距離最小的攝像頭。畫面呈現(xiàn)的是頭部指針對應(yīng)的攝像頭里面的畫面。由此達(dá)到高質(zhì)量監(jiān)控動態(tài)監(jiān)控點(diǎn)比賽的全過程,同時(shí)不影響比賽過程的目的。
本實(shí)施例中,所述攝像頭的位置信息需滿足預(yù)設(shè)條件才能進(jìn)入循環(huán)隊(duì)列,具體包括步驟:
計(jì)算攝像頭與動態(tài)監(jiān)控點(diǎn)的余弦距離與歐氏距離以及動態(tài)監(jiān)控點(diǎn)與攝像頭的方向向量的夾角;
判斷攝像頭與動態(tài)監(jiān)控點(diǎn)的歐氏距離是否不大于第一閾值且動態(tài)監(jiān)控點(diǎn)與攝像頭的方向向量的夾角不大于第二閾值;若是,進(jìn)入循環(huán)隊(duì)列;否則,不進(jìn)入循環(huán)隊(duì)列。
具體的,余弦距離的計(jì)算具體包括如下步驟:
對每一個(gè)動態(tài)監(jiān)控點(diǎn)、每一個(gè)攝像頭以及跑道建立二維坐標(biāo)圖;
根據(jù)攝像頭與動態(tài)監(jiān)控點(diǎn)的坐標(biāo)信息計(jì)算每個(gè)攝像頭與動態(tài)監(jiān)控點(diǎn)的余弦距離。
其中,動態(tài)監(jiān)控點(diǎn)與攝像頭的余弦距離通過安置于動態(tài)監(jiān)控點(diǎn)的位置定位器計(jì)算。
優(yōu)選的,以跑道的圓心為坐標(biāo)軸的原點(diǎn),橫坐標(biāo)為起點(diǎn)與原點(diǎn)的連線,縱坐標(biāo)垂直于橫坐標(biāo),如圖3所示。
所有攝像頭的坐標(biāo)位置信息可以確定下來。
假設(shè)任意攝像頭的坐標(biāo)為an(xn,yn),其中0≤n≤40,動態(tài)監(jiān)控點(diǎn)的坐標(biāo)為d(x,y),則動態(tài)監(jiān)控點(diǎn)到攝像頭的方向向量為w(an_d)=(xn-x,yn-y),攝像頭與動態(tài)監(jiān)控點(diǎn)的距離wn=|w(an_d);
這里設(shè)定攝像頭i與跑道中心的單向箭頭線li,攝像頭i與動態(tài)監(jiān)控點(diǎn)的連線為虛線di,設(shè)定li和di夾角標(biāo)記為ai(0≤ai≤90)。則攝像頭i與動態(tài)監(jiān)控點(diǎn)的余弦距離為cos(ai)。
設(shè)定當(dāng)前動態(tài)監(jiān)控點(diǎn)坐標(biāo)為pt(xt,yt),距離當(dāng)前時(shí)間的前0.2秒的估計(jì)坐標(biāo)為p0(x0,y0),則運(yùn)動員的方向向量p=(xt-x0,yt-y0),同時(shí)可以求出p和w(an_d)的夾角為:
θ=arcos[(xn-x,yn-y)(xt-x0,yt-y0)]/[|(xn-x,yn-y)|*|(xt-x0,yt-y0)|]
如圖3所示,e是經(jīng)過動態(tài)監(jiān)控點(diǎn)pt和跑道圓心(0,0)的虛線,f是垂直于e的虛線,跑道的半徑標(biāo)志為r。
將所有攝像頭的距離按照以上步驟計(jì)算完成后,生成隊(duì)列q。
本實(shí)施例中,判斷攝像頭與動態(tài)監(jiān)控點(diǎn)的歐氏距離是否不大于第一閾值且動態(tài)監(jiān)控點(diǎn)與攝像頭的方向向量的夾角不大于第二閾值;若是,進(jìn)入循環(huán)隊(duì)列;否則,不進(jìn)入循環(huán)隊(duì)列。
具體的,判斷隊(duì)列q是否能進(jìn)入循環(huán)隊(duì)列,需同時(shí)滿足以下兩個(gè)條件:
1)滿足wn≤r,即攝像頭與動態(tài)監(jiān)控點(diǎn)的歐氏距離不大于跑道半徑。圖3中f虛線的左上方所有攝像頭均滿足,但是f虛線的右下方的攝像頭不滿足條件。
2)θ≤90°,即動態(tài)監(jiān)控點(diǎn)到攝像頭的方向向量夾角不大于90度。圖3中e虛線的下方攝像頭均滿足條件,上方的攝像頭均不滿足條件。
隊(duì)列q中同事滿足下面兩個(gè)條件的進(jìn)入循環(huán)隊(duì)列,否則,不進(jìn)入循環(huán)隊(duì)列。即虛線e和f的左下方部分進(jìn)入循環(huán)隊(duì)列。
將所有攝像頭的編號按照余弦距離放入到循環(huán)隊(duì)列中,而頭部指針指向的是余弦值最大的攝像頭,尾部指針指向的是余弦距離最小的攝像頭,則front=(rear+1%)40。
隨著動態(tài)監(jiān)控點(diǎn)的移動,會出現(xiàn)攝像頭影像切換。根據(jù)動態(tài)監(jiān)控點(diǎn)的移動切換攝像頭拍攝的畫面。此時(shí)iffront.next?。絥ull則front->front.next;根據(jù)實(shí)際情況可知,在隊(duì)列中的攝像頭的排列順序與他們實(shí)際情況的位置序列是一致的,因此當(dāng)檢測沒有進(jìn)入隊(duì)列的攝像頭,若出現(xiàn)同時(shí)滿足入隊(duì)的兩個(gè)條件的時(shí)候(通過控制檢測時(shí)間間隔,可控制僅出現(xiàn)一個(gè)攝像頭為ai滿足入隊(duì)條件),則直接執(zhí)行ai=rear.next,rear=rear.next;。
本實(shí)施例中,呈現(xiàn)余弦距離最大的攝像頭拍攝的畫面??梢匀轿坏夭蹲降教飶竭\(yùn)動員比賽的全過程,并且不影響觀看效果。
本實(shí)施例還提供了一種實(shí)時(shí)攝像系統(tǒng),如圖2所示,包括:
計(jì)算模塊21,用于計(jì)算動態(tài)監(jiān)控點(diǎn)與均勻安裝在攝像范圍側(cè)的攝像頭的位置信息;
判斷模塊22,用于判斷位置信息是否滿足預(yù)設(shè)條件,若是,進(jìn)入循環(huán)隊(duì)列;否則,不進(jìn)入循環(huán)隊(duì)列;
循環(huán)模塊23,用于根據(jù)進(jìn)入循環(huán)隊(duì)列的位置信息將攝像頭由大到小編號并放置到攝像切換的循環(huán)隊(duì)列;
呈現(xiàn)模塊24,用于呈現(xiàn)最大編號的攝像頭拍攝的畫面。
本實(shí)施例通過計(jì)算動態(tài)監(jiān)控點(diǎn)與攝像頭的余弦距離,由大到小將攝像頭的編號放置到循環(huán)隊(duì)列。由此達(dá)到高質(zhì)量監(jiān)控動態(tài)目標(biāo)比賽的全過程,同時(shí)不影響比賽過程的目的。
其中,余弦距離,也稱為余弦相似度,是用向量空間中兩個(gè)向量夾角的余弦值作為衡量兩個(gè)個(gè)體間差異的大小的度量。
循環(huán)隊(duì)列是指,為充分利用向量空間,克服“假溢出”現(xiàn)象的方法是:將向量空間想象為一個(gè)首尾相接的圓環(huán),并稱這種向量為循環(huán)向量。存儲在其中的隊(duì)列稱為循環(huán)隊(duì)列。這種循環(huán)隊(duì)列可以以單鏈表的方式來在實(shí)際編程應(yīng)用中來實(shí)現(xiàn)。
其中,系統(tǒng)作為隊(duì)列用的存儲區(qū)還沒有滿,但隊(duì)列卻發(fā)生了溢出,我們把這種現(xiàn)象稱為“假溢出”。單鏈表是一種鏈?zhǔn)酱嫒〉臄?shù)據(jù)結(jié)構(gòu),用一組地址任意的存儲單元存放線性表中的數(shù)據(jù)元素。
循環(huán)隊(duì)列中,由于入隊(duì)時(shí)尾指針向前追趕頭指針;出隊(duì)時(shí)頭指針向前追趕尾指針,造成隊(duì)空和隊(duì)滿時(shí)頭尾指針均相等。
循環(huán)隊(duì)列的操作特點(diǎn)是“先進(jìn)先出”。前者主要是頭指針、尾指針的使用,后者主要是理解循環(huán)隊(duì)列提出的原因及其特點(diǎn)。兩者都要掌握隊(duì)列空與滿的判定條件以及出隊(duì)列、入隊(duì)列操作的實(shí)現(xiàn)。
本實(shí)施例中,計(jì)算模塊21包括:
均勻安裝單元,用于根據(jù)所述動態(tài)監(jiān)控點(diǎn)的移動速率與視覺暫留時(shí)間計(jì)算所述攝像范圍側(cè)的攝像頭的間隔距離并根據(jù)所述攝像范圍側(cè)的長度大小及所述間隔距離計(jì)算均勻安裝所述攝像頭的數(shù)量。
優(yōu)選的,如圖3所示,優(yōu)選的,在百米跑道的一側(cè)每隔2.5米固定安裝一臺攝像頭。本發(fā)明只需要保證相鄰兩個(gè)攝像頭所能夠拍攝的范圍沒有死角即可。
在物體快速運(yùn)動時(shí),當(dāng)人眼所看到的影像消失后,人眼仍能繼續(xù)保留其影像0.1~0.4秒左右的圖像,這種現(xiàn)象被稱為視覺暫留現(xiàn)象。而田徑運(yùn)動員在比賽的過程中平均速度是10米/秒,因此相鄰兩個(gè)攝像頭應(yīng)保持的距離在1米到4米之間,就可以保證攝像頭切換畫面時(shí)給觀看者的影響視覺是連續(xù)的,這里選取的距離為2.5米,因此在百米跑道上安裝的攝像頭數(shù)量可為40臺。
本實(shí)施例中,計(jì)算模塊21還包括:
位置信息計(jì)算單元,用于計(jì)算攝像頭與動態(tài)監(jiān)控點(diǎn)的余弦距離與歐式距離以及動態(tài)監(jiān)控點(diǎn)與攝像頭的方向向量的夾角。
對每一個(gè)動態(tài)監(jiān)控點(diǎn)、每一個(gè)攝像頭以及跑道建立二維坐標(biāo)圖;
根據(jù)攝像頭與動態(tài)監(jiān)控點(diǎn)的坐標(biāo)信息計(jì)算每個(gè)攝像頭與動態(tài)監(jiān)控點(diǎn)的余弦距離。
優(yōu)選的,以跑道的圓心為坐標(biāo)軸的原點(diǎn),橫坐標(biāo)為起點(diǎn)與原點(diǎn)的連線,縱坐標(biāo)垂直于橫坐標(biāo),如圖3所示。
所有攝像頭的坐標(biāo)位置信息可以確定下來。
假設(shè)任意攝像頭的坐標(biāo)為an(xn,yn),其中0≤n≤40,動態(tài)監(jiān)控點(diǎn)的坐標(biāo)為d(x,y),則動態(tài)監(jiān)控點(diǎn)到攝像頭的方向向量為w(an_d)=(xn-x,yn-y),攝像頭與動態(tài)監(jiān)控點(diǎn)的距離wn=|w(an_d);
這里設(shè)定攝像頭i與跑道中心的單向箭頭線li,攝像頭i與動態(tài)監(jiān)控點(diǎn)的連線為虛線di,設(shè)定li和di夾角標(biāo)記為ai(0≤ai≤90)。則攝像頭i與動態(tài)監(jiān)控點(diǎn)的余弦距離為cos(ai)。
設(shè)定當(dāng)前動態(tài)監(jiān)控點(diǎn)坐標(biāo)為pt(xt,yt),距離當(dāng)前時(shí)間的前0.2秒的估計(jì)坐標(biāo)為p0(x0,y0),則運(yùn)動員的方向向量p=(xt-x0,yt-y0),同時(shí)可以求出p和w(an_d)的夾角為:
θ=arcos[(xn-x,yn-y)(xt-x0,yt-y0)]/[|(xn-x,yn-y)|*|(xt-x0,yt-y0)|]
如圖3所示,e是經(jīng)過動態(tài)監(jiān)控點(diǎn)pt和跑道圓心(0,0)的虛線,f是垂直于e的虛線,跑道的半徑標(biāo)志為r。
將所有攝像頭的距離按照以上步驟計(jì)算完成后,生成隊(duì)列q。
本實(shí)施例中,所述判斷模塊22還用于判斷攝像頭與動態(tài)監(jiān)控點(diǎn)的歐氏距離是否不大于第一閾值且動態(tài)監(jiān)控點(diǎn)與攝像頭的方向向量的夾角不大于第二閾值;若是,進(jìn)入循環(huán)隊(duì)列;否則,不進(jìn)入循環(huán)隊(duì)列。
具體的,判斷隊(duì)列q是否能進(jìn)入循環(huán)隊(duì)列,需同時(shí)滿足以下兩個(gè)條件:
1)滿足wn≤r,即攝像頭與動態(tài)監(jiān)控點(diǎn)的歐氏距離不大于跑道半徑。圖3中f虛線的左上方所有攝像頭均滿足,但是f虛線的右下方的攝像頭不滿足條件。
2)θ≤90°,即動態(tài)監(jiān)控點(diǎn)到攝像頭的方向向量夾角不大于90度。圖3中e虛線的下方攝像頭均滿足條件,上方的攝像頭均不滿足條件。
隊(duì)列q中同事滿足下面兩個(gè)條件的進(jìn)入循環(huán)隊(duì)列,否則,不進(jìn)入循環(huán)隊(duì)列。即虛線e和f的左下方部分進(jìn)入循環(huán)隊(duì)列。
本實(shí)施例中,循環(huán)模塊23用于將每臺攝像頭固定編號,這些攝像頭按照順時(shí)針方向組合成單向循環(huán)隊(duì)列,隊(duì)首指針為頭部指針,即front指針,隊(duì)尾指針為尾部指針,即rear指針。
其中,循環(huán)隊(duì)列頭部指針指向余弦距離最大的攝像頭,循環(huán)隊(duì)列尾部指針指向余弦距離最小的攝像頭。畫面呈現(xiàn)的是頭部指針對應(yīng)的攝像頭里面的畫面。由此達(dá)到高質(zhì)量監(jiān)控動態(tài)監(jiān)控點(diǎn)比賽的全過程,同時(shí)不影響比賽過程的目的。
優(yōu)選的,將所有攝像頭的編號按照余弦距離放入到循環(huán)隊(duì)列中,而頭部指針指向的是余弦值最大的攝像頭,尾部指針指向的是余弦距離最小的攝像頭,則front=(rear+1%)40。
隨著動態(tài)監(jiān)控點(diǎn)的移動,會出現(xiàn)攝像頭影像切換。根據(jù)動態(tài)監(jiān)控點(diǎn)的移動切換攝像頭拍攝的畫面。此時(shí)iffront.next!=null則front->front.next;根據(jù)實(shí)際情況可知,在隊(duì)列中的攝像頭的排列順序與他們實(shí)際情況的位置序列是一致的,因此當(dāng)檢測沒有進(jìn)入隊(duì)列的攝像頭,若出現(xiàn)同時(shí)滿足入隊(duì)的兩個(gè)條件的時(shí)候(通過控制檢測時(shí)間間隔,可控制僅出現(xiàn)一個(gè)攝像頭為ai滿足入隊(duì)條件),則直接執(zhí)行ai=rear.next,rear=rear.next;。
本實(shí)施例中,呈現(xiàn)模塊24用于呈現(xiàn)余弦距離最大的攝像頭拍攝的畫面。隨著動態(tài)監(jiān)控點(diǎn)的移動,會出現(xiàn)攝像頭影像切換。根據(jù)動態(tài)監(jiān)控點(diǎn)的移動切換攝像頭拍攝的畫面??梢匀轿坏夭蹲降教飶竭\(yùn)動員比賽的全過程,并且不影響觀看效果。
本文中所描述的具體實(shí)施例僅僅是對本發(fā)明精神作舉例說明。本發(fā)明所屬技術(shù)領(lǐng)域的技術(shù)人員可以對所描述的具體實(shí)施例做各種各樣的修改或補(bǔ)充或采用類似的方式替代,但并不會偏離本發(fā)明的精神或者超越所附權(quán)利要求書所定義的范圍。