前后端配合智能分析的方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及視頻分析領(lǐng)域,尤其涉及前后端配合智能分析的方法及裝置。
【背景技術(shù)】
[0002]監(jiān)控系統(tǒng)中前端設(shè)備獲取視頻流之后,需要對視頻流進(jìn)行分析,并將分析結(jié)果疊加到對應(yīng)的時間位置上。以IPC作為前端設(shè)備進(jìn)行舉例,有一些IPC本身帶有這種視頻流分析的模塊,從而直接輸出帶有分析結(jié)果的視頻流,但大多數(shù)IPC都不具備這種功能,因此需要進(jìn)行額外的分析和疊加處理。
[0003]因此現(xiàn)有技術(shù)的問題在于,如果要對前端設(shè)備所采集的視頻進(jìn)行分析,就就需要進(jìn)行對應(yīng)的硬件改進(jìn)。
【發(fā)明內(nèi)容】
[0004]為了解決現(xiàn)有技術(shù)存在的問題,現(xiàn)提供了一種智能分析的方法,將前端設(shè)備與后端的服務(wù)器配合,進(jìn)行視頻的分析,從而避免出現(xiàn)這種錯位的結(jié)果。
[0005]—種前后端配合智能分析的方法,應(yīng)用于分析服務(wù)器中,包括:
[0006]接收前端設(shè)備發(fā)送的視頻,所述前端設(shè)備將發(fā)送給分析服務(wù)器的視頻同時也發(fā)送給存儲設(shè)備;
[0007]分析接收的視頻,將所得分析數(shù)據(jù)返回給對應(yīng)的前端設(shè)備,由前端設(shè)備將分析數(shù)據(jù)以私有數(shù)據(jù)的形式與當(dāng)前需要發(fā)送給存儲設(shè)備的視頻一起打包發(fā)送至存儲設(shè)備進(jìn)行存儲,其中分析數(shù)據(jù)含有分析結(jié)果以及分析結(jié)果所對應(yīng)的視頻的時間位置信息;
[0008]在存儲設(shè)備中查找分析數(shù)據(jù),利用分析數(shù)據(jù)中的時間位置信息查找與分析結(jié)果相對應(yīng)的視頻,并將分析結(jié)果與相應(yīng)視頻相疊加,將疊加結(jié)果重新打包并覆蓋存儲設(shè)備上相應(yīng)的視頻。
[0009]本發(fā)明的視頻分析方法不需要對現(xiàn)有的前端設(shè)備進(jìn)行硬件上的改進(jìn),即可完成對視頻的智能分析,利用后端的分析服務(wù)器以及存儲設(shè)備來完成對分析結(jié)果的疊加。另外,雖然存在分析盒子放在前端設(shè)備到播放端的路徑中,對視頻流進(jìn)行實時分析的技術(shù),但是由于實時性的要求,緩存容量并不大且分析結(jié)果通常也比較粗略,否則容易造成延遲;而對于非實時的播放,需要更大的緩存,對于一個用于實時分析的分析盒子,如果要應(yīng)用到非實時播放,則需要進(jìn)行硬件改造,比較復(fù)雜。而本發(fā)明較為適合非實時的播放,存儲設(shè)備可以根據(jù)分析算法的精細(xì)程度來選擇,從而在疊加顯示分析結(jié)果時不會造成錯位的現(xiàn)象,而且由于分析服務(wù)器與存儲設(shè)備是獨立的,可以通過對分析服務(wù)器更新算法來提高分析能力,也可以通過更換存儲設(shè)備來增加視頻流及分析數(shù)據(jù)的存儲能力,較為便利。
[0010]其中分析服務(wù)器在進(jìn)行分析時,前端設(shè)備實時在向存儲設(shè)備發(fā)送視頻,因此,前端設(shè)備在收到分析數(shù)據(jù)時,與分析數(shù)據(jù)一起發(fā)送的視頻不是與分析視頻向?qū)?yīng)的視頻,而是當(dāng)前需要發(fā)送給存儲設(shè)備的視頻(即分析數(shù)據(jù)所要發(fā)送時刻的視頻),當(dāng)前需要發(fā)送的視頻與分析數(shù)據(jù)對應(yīng)的視頻相比時間上是延后的。當(dāng)分析服務(wù)器將分析數(shù)據(jù)返回對應(yīng)的前端設(shè)備后,前端設(shè)備將接收到的分析數(shù)據(jù)以私有數(shù)據(jù)的形式與當(dāng)前需要發(fā)送給存儲設(shè)備的視頻一起打包發(fā)送至存儲設(shè)備進(jìn)行存儲。
[0011 ] 其中,前端設(shè)備向分析服務(wù)器和存儲設(shè)備發(fā)送的視頻以傳輸流格式進(jìn)行發(fā)送。
[0012]TS格式因為采取了固定長度的包布局,當(dāng)傳輸誤碼破損了某一 TS包的同步信息時,接收數(shù)據(jù)包的設(shè)備可在固定的地位檢測它后面包中的同步信息,從而恢復(fù)同步,避免了信息喪失。因此TS格式的數(shù)據(jù)包具有良好的抗干擾能力。傳輸流格式由于包含了同步信息,因此當(dāng)碼流速率發(fā)生改變時,可以得到計算的視頻存儲位置與實際的視頻存儲位置之間的偏移量,因此能夠得到視頻存儲的正確位置。
[0013]進(jìn)一步而言,分析數(shù)據(jù)及視頻按照發(fā)送到存儲設(shè)備的時間順序進(jìn)行存儲在存儲設(shè)備中,所述利用分析數(shù)據(jù)中的時間位置查找與分析結(jié)果相對應(yīng)的視頻的方式為,根據(jù)時間位置信息計算視頻存儲位置與分析結(jié)果存儲位置之間的位置關(guān)系,利用分析結(jié)果所存儲的位置以及位置關(guān)系獲取視頻在存儲設(shè)備中的存儲位置,查找到對應(yīng)的視頻。
[0014]在查找分析結(jié)果所對應(yīng)的視頻時,可以通過逐一比較分析結(jié)果與視頻的時間來進(jìn)行疊加,但這樣查找效率比較低下。而通過按時間順序存儲視頻,在分析時,與分析結(jié)果相對應(yīng)的視頻已通過前端設(shè)備先行發(fā)送到存儲設(shè)備進(jìn)行存儲了,因此分析結(jié)果是被放在所對應(yīng)視頻后面的視頻中被發(fā)過來的,從而在存儲設(shè)備中的存儲位置是延后于相對應(yīng)的視頻的。由于視頻流的碼流速率是可知的,而分析時間的長短也是可知的,因此時間長短是可知的,由于存儲時按照的換算為存儲位置的差值,因此根據(jù)分析結(jié)果得知了對應(yīng)的視頻所在時間位置,可以算出分析結(jié)果與對應(yīng)視頻之間的時間延遲,從而將時間延時換算為存儲位置關(guān)系,利用這個存儲位置關(guān)系即可找到當(dāng)前分析結(jié)果所對應(yīng)視頻在存儲設(shè)備中的存儲位置,從而找到視頻進(jìn)行疊加。
[0015]實際過程中,視頻流速率可能發(fā)生改變。如果視頻流的速率發(fā)生了改變,所以計算的位置可能有前后微調(diào)。
[0016]進(jìn)一步而言,在所述利用分析數(shù)據(jù)中的時間位置信息查找與分析結(jié)果相對應(yīng)的視頻的過程中,如果根據(jù)時間位置信息計算得到的視頻存儲位置與實際的視頻存儲位置相比存在向前偏移或向后偏移的情況,則根據(jù)偏移量朝與偏移方向相反的方向查找實際的視頻存儲位置,并且記住實際查找到的視頻存儲位置用于下一個視頻的查找。
[0017]根據(jù)偏移量朝與偏移方向相反的方向查找實際的視頻存儲位置,是指根據(jù)計算得到的位置與相應(yīng)位置所保存的視頻時間相比較,如果發(fā)現(xiàn)計算的位置偏后,則根據(jù)偏移量,向前讀數(shù)據(jù);同理,如果計算的位置偏前,則向后讀取數(shù)據(jù)。在得到當(dāng)前分析結(jié)果對應(yīng)的視頻所在位置后,記住該視頻位置,則位于該視頻后面的視頻只需從該視頻所存儲位置向后查找即可。
[0018]為了配合分析服務(wù)器所采用的方法,現(xiàn)提供一種方法,在前端設(shè)備中應(yīng)用,以配合分析服務(wù)器的分析過程。
[0019]—種前后端配合智能分析的方法,應(yīng)用于前端設(shè)備中,包括:
[0020]發(fā)送視頻給分析服務(wù)器和存儲設(shè)備,由分析服務(wù)器分析來自前端設(shè)備的視頻,并接收分析服務(wù)器返回的分析數(shù)據(jù);
[0021]將接收到的分析數(shù)據(jù)以私有數(shù)據(jù)的形式與當(dāng)前需要發(fā)送給存儲設(shè)備的視頻一起打包,并發(fā)送至存儲設(shè)備進(jìn)行存儲,其中,分析數(shù)據(jù)含有分析結(jié)果以及分析結(jié)果所對應(yīng)的視頻的時間位置信息,以使得分析服務(wù)器利用分析數(shù)據(jù)中的時間位置信息在存儲設(shè)備中查找與分析結(jié)果相對應(yīng)的視頻,并將分析結(jié)果與相應(yīng)視頻相疊加,將疊加結(jié)果重新打包并覆蓋存儲設(shè)備上相應(yīng)的視頻。
[0022]本發(fā)明的視頻分析方法不需要對現(xiàn)有的前端設(shè)備進(jìn)行硬件上的改進(jìn),即可完成對視頻的智能分析,利用后端的分析服務(wù)器以及存儲設(shè)備來完成對分析結(jié)果的疊加。私有數(shù)據(jù)是非標(biāo)準(zhǔn)定義的方式。其中私有數(shù)據(jù)有兩種承載方式:一種方式為,視頻流的數(shù)據(jù)包中既包含視頻,也包含私有數(shù)據(jù);另一種方式為,數(shù)據(jù)包僅包含私有數(shù)據(jù)。這兩種方式均可實現(xiàn)分析數(shù)據(jù)與視頻流一起發(fā)送。私有數(shù)據(jù)采用以下其中一種方式打包至數(shù)據(jù)報文中:數(shù)據(jù)報文的數(shù)據(jù)包中既包含私有數(shù)據(jù)也包含視頻;數(shù)據(jù)報文的數(shù)據(jù)包僅包含私有數(shù)據(jù)。
[0023]其中,前端設(shè)備發(fā)送到分析數(shù)據(jù)及視頻按照發(fā)送到存儲設(shè)備的時間順序進(jìn)行存儲在存儲設(shè)備中。分析服務(wù)器在利用前端設(shè)備發(fā)送到存儲設(shè)備的分析數(shù)據(jù)和視頻進(jìn)行分析結(jié)果疊加時,利用分析數(shù)據(jù)中的時間位置查找與分析結(jié)果相對應(yīng)的視頻的方式為,根據(jù)時間位置信息計算視頻存儲位置與分析結(jié)果存儲位置之間的位置關(guān)系,利用分析結(jié)果所存儲的位置以及位置關(guān)系獲取視頻在存儲設(shè)備中的存儲位置,查找到對應(yīng)的視頻。
[0024]其中,分析服務(wù)器在所述利用分析數(shù)據(jù)中的時間位置查找與分析結(jié)果相對應(yīng)的視頻的過程中,如果根據(jù)時間位置信息計算得到的視頻存儲位置與實際的視頻存儲位置相比存在向前偏移或向后偏移的情況,則根據(jù)偏移量朝與偏移方向相反的方向查找實際的視頻存儲位置,并且記住實際查找到的視頻存儲位置用于下一個視頻的查找。
[0025]進(jìn)一步而言,向分析服務(wù)器和存儲設(shè)備發(fā)送的視頻以傳輸流格式打包后進(jìn)行發(fā)送。
[0026]數(shù)據(jù)報文中的數(shù)據(jù)包有兩種封裝模式,第一種為PS (Program Stream,節(jié)目流)格式,而一個PS包又由若干個PES包構(gòu)成。PS包的包頭中包含了同步信息與時鐘恢復(fù)信息。一個PS包最多可包含具有同一時鐘基準(zhǔn)的16個視頻PES包和32個音頻PES包。第二種為TS (Transport Stream,傳輸流)格式,TS格式數(shù)據(jù)包為定長的數(shù)據(jù)包(188字節(jié)),TS包是對PES包的一個從頭封裝,PES包的包頭信息依然存在于TS包中。
[00