目前,視頻監(jiān)控被越來越廣泛應(yīng)用于諸如智能家居系統(tǒng)、安全監(jiān)視系統(tǒng)中。在涉及視頻監(jiān)控的系統(tǒng)中,移動檢測一項重要任務(wù)。移動檢測任務(wù)通常涉及檢測所采集的視頻內(nèi)容中物體(諸如人、動物等)的移動并且基于檢測結(jié)果向用戶發(fā)送告警。例如,具有移動檢測功能的監(jiān)控攝像機可以被安裝在房屋內(nèi)并且在住戶離開房屋之后被啟動。一旦檢測到有人嘗試闖入房間,該監(jiān)控攝像機可以檢測到視頻畫面中存在物體的移動,并且然后通過通信網(wǎng)絡(luò)向住戶的手持設(shè)備發(fā)送告警,使得用戶獲悉此情況。視頻監(jiān)控系統(tǒng)的性能主要取決于移動檢測的準(zhǔn)確性。
技術(shù)實現(xiàn)要素:
根據(jù)本文所描述的主題的實現(xiàn),提出了一種移動檢測方案。將當(dāng)前獲得的視頻的幀與相應(yīng)的參考幀相比較以確定出兩者之間的相關(guān)度。這個相關(guān)度用于指示當(dāng)前幀的變化程度。如果針對當(dāng)前幀的相關(guān)度小于預(yù)定閾值,將不會直接確定出當(dāng)前幀包括物體的移動,而是還要考慮在當(dāng)前幀之前或之后的一個或多個幀與相應(yīng)的參考幀之間的相關(guān)度。如果所考慮的幀的相關(guān)度也小于預(yù)定閾值,則可以檢測出當(dāng)前幀包括物體的移動。通過這種方式,降低了在噪聲、誤差等因素造成視頻的幀的較大變化的情況中對物體移動的不正確檢測,提高了檢測物體移動的準(zhǔn)確度。
提供發(fā)明內(nèi)容部分是為了簡化的形式來介紹對概念的選擇,它們在下文的具體實施方式中將被進一步描述。發(fā)明內(nèi)容部分無意標(biāo)識要求保護的主題的關(guān)鍵特征或主要特征,也無意限制要求保護的主題的范圍。
附圖說明
圖1示出了能夠?qū)嵤┍疚乃枋鲋黝}的多個實現(xiàn)的設(shè)備的方框圖;
圖2示出了根據(jù)本文所描述主題的一個實現(xiàn)的檢測物體的移動的方法的流程圖;
圖3示出了根據(jù)本文所描述主題的一個實現(xiàn)的示出當(dāng)前幀、參考幀和前景圖之間的比較的示意圖;
圖4示出了根據(jù)本文所描述主題的另一個實現(xiàn)的檢測物體的移動的方法的流程圖;以及
圖5示出了根據(jù)本文所描述主題的一個實現(xiàn)的三種檢測結(jié)果對應(yīng)的狀態(tài)之間的狀態(tài)轉(zhuǎn)換機制的示意圖。
具體實施方式
現(xiàn)在將參照若干示例實現(xiàn)來論述本文所描述的主題。應(yīng)當(dāng)理解,論述了這些實現(xiàn)僅是為了使得本領(lǐng)域普通技術(shù)人員能夠更好地理解且因此實現(xiàn)本文所描述的主題,而不是暗示對本主題的范圍的任何限制。
如本文中所使用的,術(shù)語“包括”及其變體要被解讀為意味著“包括但不限于”的開放式術(shù)語。術(shù)語“或者”要被解讀為“和/或”,除非上下文明確另外指示。術(shù)語“基于”要被解讀為“至少部分地基于”。術(shù)語“一個實現(xiàn)”和“一種實現(xiàn)”要被解讀為“至少一個實現(xiàn)”。術(shù)語“另一個實現(xiàn)”要被解讀為“至少一個其他實現(xiàn)”。術(shù)語“第一”、“第二”等等可以指代不同的或相同的對象。下文還可能包括其他明確的和隱含的定義。
圖1示出能夠?qū)嵤┰诖怂枋鲋黝}的多個實現(xiàn)的設(shè)備120的方框圖。如圖所示,設(shè)備120包括輸入部件122、至少一個處理器124、至少一個存儲器126和輸出部件128。諸如總線、控制器或網(wǎng)絡(luò)之類的互連機制(未示出)使設(shè)備120的部件互連。
輸入部件122可以包括從外部設(shè)備接收輸入數(shù)據(jù)的電路,諸如由一個或多個集成電路形成的射頻(RF)接收器、收發(fā)器、功率放大器電路、低噪聲輸入放大器、無源RF組件、一個或多個天線、以及用于處理RF無線信號的其它電路。輸入部件122還可以包括鍵盤、鼠標(biāo)、操縱桿、點擊輪、滾輪、觸摸屏、觸摸傳感器以及用于從用戶或其它外部源收集輸入的其他裝置。
輸出部件128可以包括向外部設(shè)備傳輸輸出數(shù)據(jù)的電路,諸如由一個或多個集成電路形成的射頻(RF)發(fā)射器、收發(fā)器、功率放大器電路、低噪聲輸入放大器、無源RF組件、一個或多個天線、以及用于處理RF無線信號的其它電路。輸出部件128還可以包括顯示屏、傳感器、振動器、諸如麥克風(fēng)和揚聲器之類的音頻部件、狀態(tài)指示燈、音調(diào)發(fā)生器、以及用于生成用于用戶或外部設(shè)備的輸出的其它裝置。
處理器124執(zhí)行計算機可執(zhí)行指令并且可以是真實處理器或虛擬處理器。在多處理系統(tǒng)中,多個處理器執(zhí)行計算機可執(zhí)行指令以增強處理力。處理器124可以用于根據(jù)存儲在存儲器126中的程序而執(zhí)行各種適當(dāng)?shù)膭幼骱吞幚硪钥刂圃O(shè)備120的操作。處理器124可以包括通用處理器、專用處理器、一個或多個微處理器、微控制器、數(shù)字信號處理器、基帶處理器集成電路、專用集成電路、圖形處理器等。具有一個合適的布置,處理器124可以被用來運行設(shè)備120上的軟件程序,諸如操作系統(tǒng)功能、用于收集和處理視頻數(shù)據(jù)相關(guān)聯(lián)的功能的軟件程序、與實施移動檢測相關(guān)聯(lián)的軟件程序等。
存儲器126可以包括一個或多個不同類型的儲存器,諸如硬盤驅(qū)動器儲存器、非易失存儲器(例如,閃速存儲器或其它電可編程只讀存儲器)、易失性存儲器(例如,靜態(tài)或動態(tài)隨機存取存儲器)等。存儲器126可以用于存儲從輸入部件122接收到的用戶輸入或者文本數(shù)據(jù)、圖像數(shù)據(jù)、或視頻數(shù)據(jù),可以用于存儲由處理器124執(zhí)行各種過程等需要的數(shù)據(jù)等。
設(shè)備120可以是任意類型的移動終端、固定終端或便攜式終端, 包括移動手機、站點、單元、設(shè)備、多媒體計算機、多媒體平板、互聯(lián)網(wǎng)節(jié)點、通信器、臺式計算機、膝上型計算機、筆記本計算機、上網(wǎng)本計算機、平板計算機、個人通信系統(tǒng)(PCS)設(shè)備、個人導(dǎo)航設(shè)備、個人數(shù)字助理(PDA)、音頻/視頻播放器、數(shù)碼相機/攝像機、定位設(shè)備、電視接收器、無線電廣播接收器、電子書設(shè)備、游戲設(shè)備、可佩戴電子設(shè)備或者其任意組合,包括這些設(shè)備的配件和外設(shè)或者其任意組合。
以上僅出于解釋說明的目的來描述設(shè)備120的結(jié)構(gòu)和功能,而不是暗示對本文所描述的主題的范圍的任何限制,設(shè)備120可以包括比圖1所示的組件更多、更少或不同的組件。本文中所描述的主題能夠以不同的結(jié)構(gòu)和/或功能來體現(xiàn)。
設(shè)備120可以被應(yīng)用在視頻監(jiān)控系統(tǒng)中。在操作中,設(shè)備120的輸入部件122可以經(jīng)由有線連接或無線連接而從被安裝在特定場景中的視頻捕獲設(shè)備接收視頻流。視頻捕獲設(shè)備可以包括一個或多個用于捕獲場景的視頻/圖像的攝像機。該視頻捕獲設(shè)備可以被集成在設(shè)備120中或者可以是設(shè)備120的遠端設(shè)備。接收到的視頻數(shù)據(jù)可以被存儲在存儲器126或外部存儲設(shè)備中并且由處理器124處理以檢測其中是否包括物體的移動。可以在設(shè)備120、例如設(shè)備120的存儲器126中或者設(shè)備120的外部存儲設(shè)備中維護同一場景中的背景幀,也被稱為背景模型。背景幀通常包含場景中的固定物體,例如建筑、街道、樹木、墻壁、門窗、家具、電器等。這些物體的位置在場景中不會發(fā)生改變。在常規(guī)的移動檢測方法中,通過將接收到的視頻內(nèi)容中給定的幀與背景幀相比較,以便識別出幀中的變化。基于識別到的變化來檢測該幀是否包括物體的移動。如果檢測到物體的移動,設(shè)備120的處理器124可以控制輸出部件128向用戶輸出告警或者將檢測結(jié)果傳輸給用戶的其他設(shè)備用于告警。
視頻監(jiān)控系統(tǒng)、例如如圖1所示的系統(tǒng)的性能主要取決于移動檢測的準(zhǔn)確性。準(zhǔn)確地檢測出視頻內(nèi)容中的物體的移動是之后的各種處理任務(wù)的基礎(chǔ),這些任務(wù)的示例可以包括但不限于用戶告警、 人體檢測/追蹤、動作識別和事件檢測等等。移動檢測的不準(zhǔn)確性會嚴重降低后續(xù)任務(wù)的準(zhǔn)確性和有效性。例如,錯誤的移動檢測結(jié)果會觸發(fā)過多的偽警報被呈現(xiàn)給用戶,從而嚴重影響用戶體驗。
在一些情況中,視頻捕獲設(shè)備在捕獲視頻時引入的噪聲(包括像素級噪聲和幀級噪聲)和視頻處理過程中產(chǎn)生的采樣誤差、幀誤差等等會使得一些幀中的內(nèi)容與背景幀之間的差異較大并且進而給出場景中存在移動的物體這樣的檢測結(jié)果,即使這些幀中實際并不存在物體的移動。大多數(shù)視頻監(jiān)控系統(tǒng)會針對每個幀標(biāo)識物體的移動。一旦判斷出該幀包括物體的移動,就向用戶發(fā)送告警。這樣的移動檢測過程對于視頻中的噪聲或誤差過于敏感,無法提供合意的檢測結(jié)果。
在另外一些情況中,錯誤的移動檢測結(jié)果可能歸因于對幀中的物體移動的錯誤識別。通常在視頻監(jiān)控時期望檢測由諸如人類、機器、車輛或動物之類的不透明物體的移動。然而,除了移動物體導(dǎo)致采集的幀的變化之外,環(huán)境照明條件的改變也會導(dǎo)致幀的變化,例如幀中的像素值的變化。照明條件的改變可以包括場景的全局照明度改變或者局部照明度改變,這可能發(fā)生在例如場景中燈光的開關(guān)、燈光亮度的調(diào)整、太陽光的改變、場景外的物體投射的陰影、場景外的諸如車燈之外的照明物體照射進來的光線等等的情況中。大多數(shù)基于變化的像素值的數(shù)目而執(zhí)行移動檢測的方案會在幀中僅包括照明度的改變的情況下給出錯誤的檢測結(jié)果。
檢測視頻中移動的物體是一個受到廣泛關(guān)注的技術(shù)問題。為了提高移動檢測的準(zhǔn)確性,期望提供對于視頻的噪聲和誤差、和/或?qū)τ诃h(huán)境照明度變化具有更高魯棒性的方案。根據(jù)本文中所描述的主題的各種實施例,實現(xiàn)了對移動的物體更加準(zhǔn)確的檢測。
圖2示出了根據(jù)本文所描述主題的一個實現(xiàn)的檢測物體的移動的方法200的流程圖。方法200可以由如圖1所示的設(shè)備120來實現(xiàn)。具體地,可以由設(shè)備120中的處理器124結(jié)合存儲器126來實現(xiàn)該方法。
在步驟210中,設(shè)備120確定視頻的第一幀與第一參考幀之間的第一相關(guān)度(被表示為“C1”)。該視頻可以從視頻捕獲設(shè)備接收到。在某些實現(xiàn)中,視頻捕獲設(shè)備可以實時地向設(shè)備120傳輸在視頻捕獲設(shè)備安裝于其中的環(huán)境中采集到的視頻,例如借助于流式傳輸技術(shù)。備選地,也可以定期向設(shè)備120提供采集到的視頻信號,或者將一段視頻一次性存儲到設(shè)備120中。設(shè)備120可以針對接收到的視頻的每個幀確定對應(yīng)的相關(guān)度。
第一相關(guān)度C1用于指示第一幀的變化程度。第一參考幀用作體現(xiàn)第一幀中的變化的參考。在某些實現(xiàn)中,第一參考幀可以是該視頻的預(yù)定背景幀。如以上提及的,背景幀包括場景中的不移動物體。計算設(shè)備120可以基于第一幀與背景幀之間的差異來確定第一相關(guān)度C1,從而第一相關(guān)度C1能夠指示第一幀中的內(nèi)容與靜止的背景幀之間的差異。
備選地或附加地,第一參考幀還可以是與第一幀相鄰的幀。在本文中使用的術(shù)語“相鄰”可以指的是直接相鄰、或者兩個幀的中間存在其他的幀。因此,在某些實現(xiàn)中,第一參考幀可以是緊挨著第一幀的之前或之后的一個或多個幀。例如,在計算設(shè)備120實時接收視頻流用于處理的實現(xiàn)中,第一參考幀可以是第一幀之前的一個或多個幀。在計算設(shè)備120對預(yù)先存儲的視頻進行處理的情況中,可以將第一參考幀選擇為第一幀之后的一個或多個幀。當(dāng)然,在這種情況中,也可以將第一幀之前的一個或多個幀用作參考幀。計算設(shè)備120可以基于第一幀與相鄰的幀之間的差異來確定第一相關(guān)度C1,從而第一相關(guān)度C1能夠指示第一幀中的內(nèi)容在較短時間內(nèi)的變化。
在某些實現(xiàn)中,將背景幀和相鄰幀均用作第一參考幀,可以更好地指示出當(dāng)前的第一幀相對于靜止的背景的變化以及在一段時間內(nèi)的變化。在利用多個第一參考幀、例如一個或多個背景幀和一個或多個相鄰幀的情況中,計算設(shè)備120還可以針對每個第一參考幀確定對應(yīng)的第一相關(guān)度C1。關(guān)于相關(guān)度的確定將在以下詳細描述。
設(shè)備120可以在例如存儲器126或者外部存儲設(shè)備中維護背景幀。背景幀可以被預(yù)先配置并且通常包括視頻捕獲設(shè)備所處的場景中不移動物體。在某些實現(xiàn)中,可以將在視頻捕獲設(shè)備初始運行時捕獲的畫面用作背景幀。背景幀可以通過這樣的方式來獲得:首先捕獲多個幀,而后從這些幀中移除那些移動的物體所處的區(qū)域,最后整合剩余的背景。備選地或附加地,可以由用戶控制對背景幀的捕獲。背景幀的數(shù)目可以是一個或者多個。
在某些實現(xiàn)中,還可以由設(shè)備120更新一個或多個背景幀。可以使用目前已知的或者未來開發(fā)的背景幀(背景模型)更新方法。例如,可以使用ViBe(Visual Background Extractor,視覺背景提取)方法來創(chuàng)建和更新背景幀。具體地,可以將新近接收到的幀中的一個或多個像素用于隨機更新多個背景幀中的對應(yīng)像素。在另一個示例中,可以用新近接收到的幀替換多個背景幀中被采集的時間最長的背景幀、也即“最老”的背景幀。在某些實現(xiàn)中,可以在確定接收到的幀中不存在物體的移動之后,將該幀用于背景幀的更新。在某些實現(xiàn)中,背景幀的更新頻率較高。在這種情況下,可以在確定第一相關(guān)度C1時僅考慮背景幀而不必考慮第一幀相鄰的幀,因為背景幀與第一幀已經(jīng)足夠接近。
第一幀與每個第一參考幀之間的第一相關(guān)度C1可以用作檢測該幀中是否存在物體的移動的基礎(chǔ)。如果第一相關(guān)度C1較高(例如,超過第一閾值Th1),那么意味著第一幀的變化較小,并且該幀中存在物體的移動的可能性較小。相反,如果第一相關(guān)度C1較低(例如,低于第一閾值Th1),那么第一幀相對于第一參考幀(例如,背景幀或者相鄰幀)具有較大改變,從而該幀存在物體的移動的可能性較大。然而,由于第一幀中可能存在一些噪聲和誤差,僅基于第一相關(guān)度C1來判斷移動物體的存在可能導(dǎo)致檢測錯誤,進而導(dǎo)致基于檢測結(jié)果的后續(xù)處理的錯誤。例如,可能導(dǎo)致錯誤告警被頻繁地發(fā)送給用戶,造成用戶的困擾。
根據(jù)本文所描述主題的實現(xiàn),在檢測第一幀是否包括物體的移 動時,還考慮第一幀附近(在第一幀之前或之后)的一些幀的相關(guān)度。如果第一幀附近的一些幀與它們相應(yīng)的參考幀之間的相關(guān)度也低于例如第一閾值Th1,那么可以確定第一幀包括物體的移動。換而言之,在多個幀或者某段時間中持續(xù)檢測到較低的相關(guān)度的情況下,才確定采集到的視頻中存在物體的移動,而不是像傳統(tǒng)方案中那樣直接將第一幀確定為存在移動物體的幀。如果之前采集到的幀的變化較小,那么可以確定第一幀中不存在物體的移動。通過這種方式,降低了在噪聲、誤差等因素造成視頻的幀變化較大的情況中對物體移動的不正確檢測,從而提高了移動檢測的準(zhǔn)確度。
具體地,在方法200的步驟220中,設(shè)備120確定第一相關(guān)度C1是否低于第一閾值Th1。在設(shè)備120參考多個第一參考幀的情況中,可以確定第一幀與較多的第一參考幀(例如,比預(yù)定閾值數(shù)目更多的參考幀、或者全部參考幀)之間的第一相關(guān)度C1低于第一閾值Th1。第一閾值Th1可以基于以下一項或多項來設(shè)置:幀的分辨率、相關(guān)度的度量單位,等等。在某些實現(xiàn)中,第一閾值Th1可以隨著第一參考幀的更新而被重新配置。
如果在步驟220中確定出第一相關(guān)度C1超過第一閾值Th1,那么方法200行進至步驟260,設(shè)備120檢測出第一幀中不包括物體的移動。在存在多個第一參考幀的情況中,如果在步驟220中確定第一幀與較小數(shù)目(例如,低于某個閾值)的第一參考幀之間的第一相關(guān)度C1高于第一閾值Th1,則方法200行進至步驟260。
如果確定出第一相關(guān)度C1低于第一閾值Th1,設(shè)備120在步驟230中獲取第一幀之前的至少一個第二幀與相應(yīng)的第二參考幀之間的第二相關(guān)度(被表示為C2)。第二幀可以是第一幀之前或之后的多個連續(xù)幀,也可以是非連續(xù)的幀。例如,可以使用第一幀之前的連續(xù)20個第二幀的相關(guān)度作為對第一幀的移動檢測的基礎(chǔ)。還可以參考第一幀之前的50個幀中不連續(xù)的20個幀。備選地或附加地,還可以將第一幀之后的若干幀確定為第二幀,以便用于指示第一幀中的變化是持續(xù)的或者是偶然發(fā)生的。在某些實現(xiàn)中,可以在存儲 器126或外部存儲設(shè)備中緩存針對已經(jīng)確定的多個幀的相關(guān)度,以供使用。被用作對第一幀的移動檢測的參考的第二幀的數(shù)目可以被預(yù)先配置。備選地,可以配置預(yù)定的時間段,并且將在該時間段中采集到的幀用作移動檢測的參考。
第二幀的第二參考幀可以與第一參考幀相同,例如可以是視頻的背景幀。類似地,第二參考幀可以備選地或附加地被選擇為與第二幀相鄰的一個或多個幀。基于背景幀和相鄰幀計算得到的第二相關(guān)度可以指示出第二幀相對于靜止的背景和/或鄰近的幀的變化程度。
在步驟240中,設(shè)備120確定第二相關(guān)度C2是否低于第一閾值Th1。與第一幀類似,如果針對每個第二幀,保存有多個第二相關(guān)度C2(即該第二幀與多個第二參考幀之間的相關(guān)度),則確定這些第二相關(guān)度C2中的一個或多個是否低于第一閾值Th1??梢詫⒚總€第二幀對應(yīng)的第二相關(guān)度C2與第一閾值Th1作比較。如果確定出所參考的第二幀的相關(guān)度C2全部或者大部分均低于第一閾值Th1,這意味著相關(guān)度較低的情況在視頻中持續(xù)了一段時間,減少了由于噪聲或者誤差導(dǎo)致的某個或某幾個幀的突然變化的可能性。接下來,設(shè)備120在步驟250中確定檢測出當(dāng)前考慮的第一幀包括物體的移動。
在某些實現(xiàn)中,響應(yīng)于檢測出第一幀包括物體的移動,設(shè)備120可以為用戶生成告警,使得用戶獲知視頻捕獲設(shè)備監(jiān)視的場景中存在物體的移動。例如,設(shè)備120的輸出設(shè)備128可以向用戶提供文本、視頻、音頻、提示燈等形式的告警。備選地或附加地,設(shè)備120還可以將檢測到物體的移動這樣的檢測結(jié)果傳輸給其他設(shè)備,以便經(jīng)由其他設(shè)備向用戶告警。例如,在設(shè)備120是固定的或者未由用戶攜帶的情況中,設(shè)備120可以向用戶預(yù)先設(shè)置的其他設(shè)備發(fā)送告警信號。在另外一些實現(xiàn)中,對于移動物體的檢測還可以用于提供給其他處理裝置,用于對包括第一幀的視頻進行另外的處理。這些另外的處理的示例可以包括但不限于用戶告警、人體檢測/追蹤、動 作識別和事件檢測等等。
在某些實現(xiàn)中,如果在步驟240中確定出第二相關(guān)度C2超過第一閾值Th1,例如與所參考的第二幀中的一個或多個幀相關(guān)聯(lián)的第二相關(guān)度C2超過Th1,那么在步驟260中,設(shè)備120檢測出第一幀中不包括物體的移動。在這種情況中,由于第一幀之前沒有足夠數(shù)目的幀的相關(guān)度低于第一閾值Th1,即使第一幀的相關(guān)度C1已經(jīng)低于第一閾值Th1,也暫時無法確定第一幀中存在物體的移動。
在某些實現(xiàn)中,如果在步驟220中確定出第一幀的第一相關(guān)度C1低于第一閾值Th1,設(shè)備120可以將第一幀的相關(guān)度C1緩存到存儲器126或者外部存儲設(shè)備中,以供用作后續(xù)的幀的移動檢測的參考。在某些實現(xiàn)中,為了節(jié)省存儲空間,可以將存儲器126或者外部存儲設(shè)備中緩存時間最長的幀的相關(guān)度刪除。也就是說,可以存儲預(yù)定數(shù)目的幀的相關(guān)度,并且采用先入先出的方式更新所存儲的相關(guān)度。
以上討論了在確定視頻的幀中存在物體的移動時的一些實現(xiàn)。圖2所示的方法200可以開始于設(shè)備120在接收到第一幀之前的一個或多個幀中未檢測到物體的移動的情況。通過將第一幀之前的一些第二幀考慮在內(nèi),來抑制由于噪聲或干擾而導(dǎo)致的對物體的移動的錯誤判斷,使得不必由于頻繁地檢測出物體的移動而引起過度告警。在某些實現(xiàn)中,如果已經(jīng)檢測到第一幀包括物體的移動,那么對于第一幀之后的幀,期望用更嚴格的條件來約束將移動檢測的結(jié)果改變回到?jīng)]有移動的檢測結(jié)果。這樣也是為了減少由于噪聲和誤差在視頻的幀中的存在而可能導(dǎo)致的錯誤檢測。更嚴格的條件可以避免在存在物體移動的結(jié)果與不存在物體移動的結(jié)果之間頻繁變化,有效地緩解大量的告警對用戶造成干擾的情況。
在某些實現(xiàn)中,設(shè)備120可以確定第一幀之后的第三幀與相應(yīng)的參考幀之間的第三相關(guān)度(被表示為“C3”)。第三幀可以是設(shè)備120在第一幀之后緊接著接收到的幀,也可以是間隔一段時間之后接收到的幀。例如,如果設(shè)備120被配置為在檢測到物體的移動 之后間隔一段時間再對輸入的視頻流執(zhí)行移動檢測的話,第三幀則可以是重新開始執(zhí)行檢測時接收到的幀。與第一、第二幀的參考幀類似,第三幀的第三參考幀也可以包括視頻的一個或多個背景幀,或者是與第三幀相鄰的一個或多個幀。
如果第一幀由設(shè)備120檢測出包括物體的移動,在確定之后的第三幀是否存在物體的移動時,設(shè)備120將采用更大的閾值(例如,大于第一閾值Th1的第二閾值Th2)來與第三相關(guān)度C3進行比較。較大的第二閾值Th2可以使得第三幀相對第一幀更容易被確定為包括物體的移動,而更難以被確定為不包括物體的移動。在這種情況下,如果第三相關(guān)度C3低于第二閾值Th2,設(shè)備120繼續(xù)確定第三幀中依然存在物體的移動。因此,告警信號可以繼續(xù)被提供給用戶。在第三相關(guān)度C3超過第二閾值Th2的情況下,設(shè)備120可以確定第三幀中不再存在物體的移動,并且因此可以停止對用戶進行告警。要認識到,在其他實現(xiàn)中,對于被檢測出包括物體移動的第一幀之后的幀,設(shè)備120可以采用同樣的相關(guān)度閾值(即,第一閾值Th1)對這些幀執(zhí)行移動檢測。
現(xiàn)在來討論視頻的幀的相關(guān)度的確定。所描述的相關(guān)度確定過程可以用于確定以上提及的第一幀、第二幀和第三幀中的每個幀與相應(yīng)的參考幀之間的相關(guān)度。該相關(guān)度可以用于度量給定的幀與參考幀之間的差異程度。在此,參考幀可以包括預(yù)定的一個或多個背景幀,也可以包括與該幀相鄰的一個或多個幀。
在某些實現(xiàn)中,設(shè)備120可以通過將給定的幀與背景幀相比較,從該幀的像素中標(biāo)識出多個前景像素。這個過程可以被稱為背景減除(background subtraction)。一般而言,在背景減除中僅使用背景幀而不是當(dāng)前幀的相鄰幀來進行比較,以確定出該幀與場景中的固定物體相比的變化。所標(biāo)識的前景像素不同于背景幀中的對應(yīng)像素(即,處于圖像的二維空間中的相同位置的像素)。在一個示例中,設(shè)備120可以比較要處理的幀中的每個像素與背景幀中的對應(yīng)像素的像素值。如果像素值之間的差異大于預(yù)定閾值,則將該幀中的像 素標(biāo)識為前景像素。
在某些實現(xiàn)中,可以將幀的尺寸縮放到與背景幀相同的尺寸,然后逐一比較兩個幀中的像素。例如,為了節(jié)省存儲空間和提高處理效率,背景幀可以被壓縮成具有較小的尺寸。取決于視頻捕獲設(shè)備的分辨率,采集到的幀的尺寸也可以被壓縮或放大,以便與背景幀匹配。應(yīng)當(dāng)認識到,當(dāng)前已知的或者將來開發(fā)的任何其他背景減除方法可以被用于標(biāo)識前景像素。所標(biāo)識的多個前景像素組成的圖像可以被稱為前景圖。在某些實現(xiàn)中,基于對前景像素的標(biāo)識結(jié)果,可以創(chuàng)建一個二值布爾(Boolean)圖像作為前景圖,其具有與對應(yīng)的幀相同的尺寸。在該圖像中,用二值中的一個值(例如,“1”)標(biāo)識前景像素,并且用另一值(例如,“0”)標(biāo)識其他像素(也可以成為背景像素)。設(shè)備120可以基于這個布爾圖像來尋址幀中的前景像素。
如以上討論的,視頻捕獲設(shè)備監(jiān)視的場景中的環(huán)境照明度的改變也會導(dǎo)致所捕獲的幀與參考幀不同。為了區(qū)別視頻的幀中的照明度的改變與物體移動的改變而導(dǎo)致的幀變化,在某些實現(xiàn)中,設(shè)備120可以基于前景像素的強度值來確定該幀與參考幀之間的相關(guān)度。具體地,設(shè)備120可以確定幀的前景像素的強度值與參考幀中的對應(yīng)像素的強度值之間的強度差異,并且然后基于強度差異來確定相關(guān)度。在某些實現(xiàn)中,可以將當(dāng)前幀與參考幀的尺寸縮放到相同的尺寸,以利于強度值的比較。設(shè)備120可以將當(dāng)前幀和參考幀變換到灰度空間,以便確定它們中的像素的強度值。在一個示例中,強度差異可以被確定為相應(yīng)的前景像素強度值與參考幀中對應(yīng)的像素強度值之間的差值。在另一個示例中,強度差異可以是兩個像素強度值之間的商。備選地或附加地,還可以采用其他方式來表示像素強度值之間的差異。
可以使用多種方式來確定出一個相關(guān)度的值用于度量當(dāng)前幀的前景像素與參考幀中的對應(yīng)像素之間的差異程度。在一個示例中,可以計算強度差異的值的均值和方差,并且基于計算得到的均值和 方差以及前景像素的數(shù)目來確定相關(guān)度。這可以被表示如下:
其中C表示相關(guān)度,N表示前景像素的數(shù)目,Q={qi|i∈[1,N]}表示N個前景像素的強度差異序列,其包括與每個前景像素對應(yīng)的強度差異的值qi,Mean(Q)表示強度差異序列Q的均值,并且Var(Q)表示強度差異序列Q的方差。均值Mean(Q)和方差Var(Q)可以基于它們的標(biāo)準(zhǔn)定義來計算如下:
通過基于前景像素的強度來確定給定幀與相應(yīng)的參考幀之間的相關(guān)度,在前景像素的強度差異與參考幀的對應(yīng)像素的強度差異較大、例如方差Var(Q)較大時,可以確定出較小的相關(guān)度,并且該幀被檢測為包括物體的移動的可能性較大。如果強度差異較小,意味著該幀的前景像素的強度值不會存在較大變化,因而對應(yīng)的相關(guān)度較大并且該幀也較不可能被檢測為包括物體的移動。
通常,如果幀中存在物體的移動,物體、諸如人或動物可以呈現(xiàn)出與背景幀中包括的不移動物體(諸如墻壁、街道)不同的外觀。人或動物的圖像的紋理較多。對于視頻的幀中的給定位置的像素,其紋理將隨著物體的移動而改變,但是這種改變通常不會影響該像素的強度。因此,基于像素強度值確定出的方差較大,并且因此得到的相關(guān)度較小,使得更容易檢測出該幀中存在物體的移動。如果該幀中不存在實際的物體的移動而是發(fā)生了照明度的改變(例如,由于光線或者陰影),那么該幀中受影響的區(qū)域的強度值會一致地變高或者變低,產(chǎn)生較低的強度差異變化和較高的相關(guān)度。在這種情況下,該幀可以被正確地確定為不包括物體的移動。通過這種方式,減少了由于無法區(qū)分照明度的改變和物體的移動而導(dǎo)致的錯誤 移動檢測結(jié)果。
圖3示出了根據(jù)本文所描述主題的一個實現(xiàn)的示出當(dāng)前幀、參考幀和前景圖之間的比較的示意圖。在當(dāng)前幀為310所指示的圖像的情況中,參考幀312是在當(dāng)前幀310之前采集到的幀。相對于參考幀312而言,幀310中存在人的移動,但是該場景中的照明條件保持不變。設(shè)備120將幀310與在該場景中預(yù)定的背景幀(未示出)相比較,提取出前景圖314。前景圖314中的前景像素集中在由316所標(biāo)記的區(qū)域中。基于前景圖314中所標(biāo)識的前景像素的強度值,設(shè)備120確定幀310對應(yīng)的相關(guān)度,并且檢測到該相關(guān)度低于例如第一閾值Th1。如果設(shè)備120還確定出幀310之前的預(yù)定數(shù)目的第二幀的第二相關(guān)度C2低于第一閾值Th1,則可以正確地檢測出幀310包括物體的移動。
對于當(dāng)前幀為320所指示的圖像的情況,參考幀322是在當(dāng)前場景中設(shè)置的背景幀。相對于參考幀322而言,幀320僅包括(例如,由于燈光亮度增強而導(dǎo)致的)照明度的改變。設(shè)備120可以類似地處理幀320并且確定出幀320相對于背景幀(也即幀322)而標(biāo)識出的前景圖324。設(shè)備120然后基于前景圖324來確定出幀320與參考幀322之間的相關(guān)度。由于幀320中大多數(shù)前景像素的強度值由于照明度的增強而一致地變大,這些強度值之間的差異較小,使得設(shè)備120確定出的相關(guān)度較大(例如,大于第一閾值Th1)。因此,設(shè)備120正確地檢測出幀320不包括物體的移動,而不會由于場景的照明度的改變而給出錯誤的判斷。
對于當(dāng)前幀為330所指示的圖像的情況,參考幀332是在當(dāng)前幀330之前采集到的幀。與圖像320對應(yīng)的場景類似,幀330中也僅存在由于窗外經(jīng)過的車輛的車燈而導(dǎo)致的照明度改變,而不包括物體的移動。設(shè)備120可以類似地確定出幀330相對于在該場景中預(yù)定背景幀(未示出)而標(biāo)識出的前景圖334,并且基于前景圖334中的前景像素的強度值,設(shè)備120也可以檢測出幀330不包括物體的移動。
備選地或附加地,在某些實現(xiàn)中,設(shè)備120還可以基于前景像素的顏色屬性來確定給定的幀與參考幀之間的相關(guān)度。在這種情況下,可以在彩色空間中處理給定的幀和參考幀,以確定前景像素的顏色屬性。彩色空間的示例可以包括HSI(色度、飽和度和強度)空間、RGB(紅、綠和藍)空間、等等。像素的顏色屬性可以由色度值以及飽和度值中的一個或者兩個來確定表示。在某些實現(xiàn)中,設(shè)備120可以確定該幀的前景像素的色度值與參考幀中對應(yīng)的像素的色度值之間的色度差異。對于飽和度值,也可以類似地確定飽和度差異。然后,設(shè)備120可以結(jié)合強度差異和/或色度差異一起來確定相關(guān)度。例如,設(shè)備120可以利用以上描述的基于強度值的相關(guān)度計算的類似方式來確定與色度差異和/或飽和度差異有關(guān)的相關(guān)度。然后,基于計算得到的多個相關(guān)度的加權(quán)和來確定對應(yīng)的幀的相關(guān)度。
在某些實現(xiàn)中,視頻的幀的改變可能無法體現(xiàn)在顏色(例如,色度值或飽和度值)的變化上。例如,如果場景中的環(huán)境照明度較低或者視頻捕獲設(shè)備在紅外模式中工作時,即使場景中出現(xiàn)物體的移動,也無法由顏色來有效地指示。因此,在確定用于計算相關(guān)度的因素之前,可以首先確定環(huán)境的照明度,如果照明度較低,則可以忽略前景像素的色度和飽和度,而僅考慮強度值。在另外一些實現(xiàn)中,為了降低計算復(fù)雜度和提高處理效率,在確定相關(guān)度時,也可以忽略前景像素的色度和/或飽和度。
以上給出了基于視頻的幀與參考幀之間的相關(guān)度來確定該幀是否存在物體的移動。取決于參考幀的選擇,該相關(guān)度可以指示視頻的幀與背景幀之間的差異程度、或者該幀與其相鄰幀之間的差異程度。在某些實現(xiàn)中,還可以根據(jù)前景像素的數(shù)目來確定視頻的幀是否包括物體的移動。由于前景像素是基于該幀與背景幀的比較得到的,因此前景像素的數(shù)目也可以指示出該幀與背景幀之間的差異程度。
圖4示出了根據(jù)這種實現(xiàn)的檢測物體的移動的方法400的流程 圖。方法400可以由如圖1所示的設(shè)備120來實現(xiàn)。具體地,可以由設(shè)備120中的處理器124結(jié)合存儲器126來實現(xiàn)該方法。在方法400中,設(shè)備120將要確定從例如視頻捕獲設(shè)備接收到的幀中是否包括物體的移動。方法400與方法200類似,區(qū)別在于在方法400中幀中的前景像素的數(shù)目被用作判斷的依據(jù)。為了簡潔,在以下描述中將重點描述方法400與方法200的區(qū)別。
在步驟410中,設(shè)備120確定第一幀中的前景像素的第一數(shù)目(被表示為“N1”)。前景像素的標(biāo)識在以上已經(jīng)討論。設(shè)備120可以統(tǒng)計所標(biāo)識的前景像素的數(shù)目。對于存在多個背景幀的情況,可以確定第一幀相對于每個背景幀的前景圖中的前景像素的第一數(shù)目N1。
在步驟420中,設(shè)備120確定第一數(shù)目N1是否超過第三閾值Th3。如以上提及的,第一幀中的前景像素不同于背景幀中對應(yīng)的像素。在某些實現(xiàn)中,前景像素的數(shù)目越多,第一幀與背景幀之間的差異越大。反之,前景像素的數(shù)目越少,第一幀與背景幀相似度越高。如果使用了多個背景幀并且計算出多個第一數(shù)目N1,設(shè)備120可以確定是否大部分(例如,超過某個閾值的)第一數(shù)目N1均大于第三閾值Th3。第三閾值Th3的設(shè)置可以與所參考的背景幀和第一幀的分辨率有關(guān)。在某些實現(xiàn)中,第三閾值Th3可以隨著背景幀的更新而被重新配置。
如果設(shè)備120在步驟420中確定出第一數(shù)目N1低于第三閾值Th3,那么在步驟460中檢測出第一幀中不包括物體的移動。在設(shè)備120維護有多個背景幀并且獲取到多個第一數(shù)目N1的情況中,如果在步驟420中確定較少數(shù)目(例如,低于某個閾值)的第一數(shù)目低于第三閾值Th3,則方法400行進至步驟460。
如果在步驟420中確定出第一數(shù)目N1超過第三閾值Th3,為了避免第一幀中的噪聲和誤差的影響,設(shè)備120進一步參考第一幀之前的一個或多個第二幀中的前景像素的數(shù)目(被表示為“N2”)。如圖4所示,設(shè)備120在步驟430中獲取第二幀中的前景像素的第 二數(shù)目。在某些實現(xiàn)中,可以在存儲器126或外部存儲設(shè)備中緩存一個或多個幀中的前景像素的數(shù)目。在對第一幀進行移動檢測時要考慮的第二幀的數(shù)目可以被預(yù)先配置。備選地,可以配置預(yù)定的時間段,并且將在該時間段中采集到的幀的前景像素數(shù)目用作參考。
接下來,在步驟440中,設(shè)備120確定第二數(shù)目N2是否超過第三閾值Th3。與第一幀類似,如果針對每個第二幀,保存有多個第二數(shù)目N2(即該第二幀相對于多個背景幀的前景像素的數(shù)目),則確定這些第二數(shù)目N2的一個或多個是否低于第一閾值Th1。如果確定出所參考的第二幀的前景像素的數(shù)目N2的全部或者大部分均高于第三閾值Th3,這意味著前景像素的數(shù)目較高的情況在視頻中持續(xù)了一段時間,視頻的多個幀中均發(fā)生較大變化。因此,可以排除由于噪聲或者誤差導(dǎo)致視頻的某個或某幾個幀的突然變化的可能性。接下來,設(shè)備120在步驟450中確定檢測出當(dāng)前考慮的第一幀包括物體的移動。進一步地,響應(yīng)于這個檢測結(jié)果,設(shè)備120可以向用戶提供告警。
在某些實現(xiàn)中,如果在步驟440中確定出第二數(shù)目N2低于第三閾值Th3,例如所考慮的第二幀中的大部分幀的前景像素數(shù)目較低,那么方法400進行至步驟460,設(shè)備120確定第一幀中不包括物體的移動。
在某些實現(xiàn)中,如果在步驟420中確定出第一幀中的前景像素的第一數(shù)目N1高于第三閾值Th3,與緩存第一幀的相關(guān)度的方式類似,設(shè)備120也可以將該前景像素的數(shù)目緩存到存儲器126或可連接的外部存儲設(shè)備,以供用作視頻的后續(xù)幀的移動檢測的參考。
在以上關(guān)于圖4討論的基于前景像素的數(shù)目確定物體的移動的實現(xiàn)中,方法400可以開始于設(shè)備120在接收到第一幀之前的一個或多個幀中未檢測到物體的移動的情況。如果已經(jīng)檢測到設(shè)備120已經(jīng)在第一幀中檢測到物體移動,那么對于第一幀之后的幀,期望用更嚴格的條件來約束將移動檢測的結(jié)果改變回沒有移動的檢測結(jié)果,從而抑制由于噪聲和誤差而引起的過度告警。
在某些實現(xiàn)中,設(shè)備120可以確定第一幀之后的第三幀中的前景像素的第三數(shù)目(被表示為“N3”)。在確定第三幀中是否存在物體的移動時,設(shè)備120可以采用更小的閾值(例如,小于第三閾值Th3的第四閾值Th4)來與第三數(shù)目N3進行比較。較小的第四閾值Th4使得第三幀相對于第一幀更容易被確定為包括物體的移動,而更難以被確定為不包括物體的移動。如果第三數(shù)目N3超過第四閾值Th4,設(shè)備120可以繼續(xù)確定第三幀中存在物體的移動并且繼續(xù)向用戶提供告警。當(dāng)?shù)谌龜?shù)目N3低于第四閾值Th4時,設(shè)備120可以確定第三幀中不再存在物體的移動,并且因此可以停止對用戶進行告警。要認識到,在其他實現(xiàn)中,對于被檢測出包括物體的移動的第一幀之后的幀,設(shè)備120可以采用同樣的前景像素的數(shù)目閾值(即,第三閾值Th3)對這些幀執(zhí)行移動檢測。
在某些實現(xiàn)中,方法400和方法200可以獨立地用于檢測給定的幀。在其他實現(xiàn)中,方法400中提出的基于前景像素的數(shù)目執(zhí)行的移動檢測可以與方法200中提出的基于相關(guān)度執(zhí)行的移動檢測結(jié)合來確定給定的幀是否包括物體的移動。在方法400與方法200結(jié)合用于執(zhí)行移動檢測的實現(xiàn)中,如果設(shè)備120確定出第一幀的第一相關(guān)度C1小于第一閾值Th1并且前景像素的第一數(shù)目N1大于第三閾值Th3,而且要參考的之前的第二幀的相關(guān)度和前景像素的數(shù)目也滿足相應(yīng)的條件,則可以檢測出第一幀包括物體的移動。否則,可以確定第一幀不包括物體的移動。在不考慮物體的移動的情況中,第一幀中可能僅在照明度方面相對于參考幀存在改變,或者即不存在物體的移動也不存在照明度的改變。
從以上參考圖2的方法200和/或圖4的方法400而描述的物體移動檢測可以看出,對于給定的幀,設(shè)備120可以確定出三種檢測結(jié)果:(1)幀不包括物體的移動(對應(yīng)于不移動狀態(tài));(2)幀包括物體的移動(對應(yīng)于感興趣的移動狀態(tài));(3)將幀用作候選幀(對應(yīng)于候選移動狀態(tài)),其中暫時無法確定視頻的幀是否包括物體的移動,要緩存該幀的相關(guān)度和/或前景像素數(shù)目。如先前提及 的,這樣的候選移動狀態(tài)可以有助于降低由于視頻的噪聲和誤差而導(dǎo)致錯誤檢測。在對視頻進行檢測時,設(shè)備120可以在這三個狀態(tài)之中進行轉(zhuǎn)換,給出各個幀的檢測結(jié)果。
圖5示意性示出了三種檢測結(jié)果對應(yīng)的狀態(tài)之間的狀態(tài)轉(zhuǎn)換機制。在圖5的示例中,基于視頻捕獲設(shè)備捕獲的給定幀的相關(guān)度(被表示為C)和前景像素的數(shù)目(被表示為N)兩者來示出狀態(tài)的轉(zhuǎn)換。在其他示例中,可以僅基于相關(guān)度C或僅基于前景像素的數(shù)目N來確定轉(zhuǎn)臺的轉(zhuǎn)換。
如所示出的,在開始針對視頻執(zhí)行移動檢測時、或者已經(jīng)檢測出之前的幀不包括物體的移動時,該視頻的檢測結(jié)果處于不移動狀態(tài)510。如果隨后接收到的幀的相關(guān)度C大于等于第一閾值Th1或者前景像素的數(shù)目N小于第三閾值Th3,那么設(shè)備120確定該視頻依然處于不移動狀態(tài)510。如果相關(guān)度C小于第一閾值Th1并且前景像素的數(shù)目N大于等于第三閾值Th3,那么設(shè)備120確定該視頻轉(zhuǎn)換到候選移動狀態(tài)520。設(shè)備120將在該狀態(tài)520中停留一段時間T,這個停留時間可以是預(yù)定的時間段或者是預(yù)定的幀數(shù)目對應(yīng)的時間長度。
如果在接下來的時間段T內(nèi)接收到的幀的相關(guān)度C依然小于第一閾值Th1并且前景像素的數(shù)目N依然大于第三閾值Th3,那么設(shè)備120轉(zhuǎn)換到感興趣的移動狀態(tài)530,并且確定此時接收到的幀中存在物體的移動。也就是說,設(shè)備120還可以維護在候選移動狀態(tài)中停留的時間T對應(yīng)的閾值(被表示為閾值Th0)。時間T可以從檢測到C小于Th1并且N大于Th3的第一個幀起開始計時。時間T還可以響應(yīng)于接收到的一個或多個幀的相關(guān)度C小于Th1并且前景像素的數(shù)目N大于Th3而不斷累積。如果時間T大于閾值Th0,那么可以從候選移動狀態(tài)520轉(zhuǎn)換到感興趣的移動狀態(tài)530。如果在時間T的累計過程中,所檢測的幀的相關(guān)度C大于閾值Th1或者前景像素的數(shù)目N小于Th3,那么可以從候選移動狀態(tài)520轉(zhuǎn)換到不移動狀態(tài)510。
當(dāng)設(shè)備120確定視頻處于感興趣的移動狀態(tài)530時,設(shè)備120可以采用嚴格的條件來約束從狀態(tài)530轉(zhuǎn)換到狀態(tài)510。具體地,設(shè)備120使用比第一閾值Th1更大的第二閾值Th2來判斷隨后的幀的相關(guān)度C是否滿足條件,并且使用比第三閾值Th3更小的第四閾值Th4來判斷隨后的幀的前景像素數(shù)目是否滿足條件。如果相關(guān)度C小于第二閾值Th2并且前景像素的數(shù)目N大于第四閾值Th4,那么依然維持在狀態(tài)530。如果相關(guān)度C大于第二閾值Th2或者前景像素的數(shù)目N小于第四閾值Th4,那么設(shè)備120確定從狀態(tài)530轉(zhuǎn)換至狀態(tài)510。
本文中以上描述的功能可以至少部分地由一個或多個硬件邏輯部件來執(zhí)行。例如,非限制性地,可以使用的示范類型的硬件邏輯部件包括:場可編程門陣列(FPGA)、專用集成電路(ASIC)、專用標(biāo)準(zhǔn)產(chǎn)品(ASSP)、芯片上系統(tǒng)的系統(tǒng)(SOC)、負載可編程邏輯設(shè)備(CPLD)等等。
用于實施本文所描述的主題的方法的程序代碼可以采用一個或多個編程語言的任何組合來編寫。這些程序代碼可以提供給通用計算機、專用計算機或其他可編程數(shù)據(jù)處理裝置的處理器或控制器,使得程序代碼當(dāng)由處理器或控制器執(zhí)行時使流程圖和/或框圖中所規(guī)定的功能/操作被實施。程序代碼可以完全在機器上執(zhí)行、部分地在機器上執(zhí)行,作為獨立軟件包部分地在機器上執(zhí)行且部分地在遠程機器上執(zhí)行或完全在遠程機器或服務(wù)器上執(zhí)行。
在本公開內(nèi)容的上下文中,機器可讀介質(zhì)可以是有形的介質(zhì),其可以包含或存儲以供指令執(zhí)行系統(tǒng)、裝置或設(shè)備使用或與指令執(zhí)行系統(tǒng)、裝置或設(shè)備結(jié)合地使用的程序。機器可讀介質(zhì)可以是機器可讀信號介質(zhì)或機器可讀儲存介質(zhì)。機器可讀介質(zhì)可以包括但不限于電子的、磁性的、光學(xué)的、電磁的、紅外的、或半導(dǎo)體系統(tǒng)、裝置或設(shè)備,或者上述內(nèi)容的任何合適組合。機器可讀存儲介質(zhì)的更具體示例會包括基于一個或多個線的電氣連接、便攜式計算機盤、硬盤、隨機存取存儲器(RAM)、只讀存儲器(ROM)、可擦除可 編程只讀存儲器(EPROM或快閃存儲器)、光纖、便捷式緊湊盤只讀存儲器(CD-ROM)、光學(xué)儲存設(shè)備、磁儲存設(shè)備、或上述內(nèi)容的任何合適組合。
此外,雖然采用特定次序描繪了各操作,但是這應(yīng)當(dāng)理解為要求這樣操作以所示出的特定次序或以順序次序執(zhí)行,或者要求所有圖示的操作應(yīng)被執(zhí)行以取得期望的結(jié)果。在一定環(huán)境下,多任務(wù)和并行處理可能是有利的。同樣地,雖然在上面論述中包含了若干具體實現(xiàn)謝姐,但是這些不應(yīng)當(dāng)被解釋為對本文所描述的主題的范圍的限制。在單獨的實現(xiàn)的上下文中描述的某些特征還可以組合地實現(xiàn)在單個實現(xiàn)中。相反地,在單個實現(xiàn)的上下文中描述的各種特征也可以單獨地或以任何合適的子組合的方式實現(xiàn)在多個實現(xiàn)中。
下面列出在此所描述主題的一些示例實現(xiàn)。
一方面,在此所描述主題公開一種方法。該方法包括確定視頻的第一幀與第一參考幀之間的第一相關(guān)度。該方法還包括響應(yīng)于第一相關(guān)度低于第一閾值,確定第一幀之前的至少一個第二幀與第二參考幀之間的第二相關(guān)度低于第一閾值;以及至少部分地基于確定出第二相關(guān)度低于第一閾值,檢測出第一幀包括物體的移動。
在某些實現(xiàn)中,該方法進一步包括響應(yīng)于確定第一幀之后的第三幀與第三參考幀之間第三相關(guān)度低于第二閾值,檢測出第三幀包括物體的移動,第二閾值大于第一閾值。
在某些實現(xiàn)中,該方法進一步包括響應(yīng)于檢測出第一幀包括物體的移動,為用戶生成告警。
在某些實現(xiàn)中,確定第一相關(guān)度包括:通過將第一幀與視頻的背景幀相比較,來從第一幀的像素中標(biāo)識出多個前景像素,前景像素不同于背景幀中的對應(yīng)像素;以及基于所標(biāo)識的前景像素的亮度值來確定第一相關(guān)度。
在某些實現(xiàn)中,基于所標(biāo)識的前景像素的亮度值來確定第一相關(guān)度包括:確定第一幀中的前景像素的強度值與第一參考幀中的對應(yīng)像素的強度值之間的強度差異;以及基于強度差異來確定第一相 關(guān)度。
在某些實現(xiàn)中,確定第一相關(guān)度包括:獲取前景像素的顏色屬性,顏色屬性包括以下各項中的至少一項:色度值和飽和度值;以及進一步基于前景像素的強度值和前景像素的顏色屬性,確定第一相關(guān)度。
在某些實現(xiàn)中,該方法進一步包括:響應(yīng)于第一幀中的前景像素的第一數(shù)目超過第三閾值,確定至少一個第二幀中的前景像素的第二數(shù)目超過第三閾值。在這些實現(xiàn)中,該方法中的檢測包括響應(yīng)于確定第二相關(guān)度低于第一閾值并且第二數(shù)目超過第三閾值,檢測出第一幀包括物體的移動。
在某些實現(xiàn)中,該方法進一步包括響應(yīng)于確定在第一幀之后的第四幀中的前景像素的第三數(shù)目超過第四閾值,檢測出第四幀包括物體的移動,第四閾值小于第三閾值。
另一方面,提供了一種設(shè)備。該設(shè)備包括至少一個處理器;以及至少一個存儲器。至少一個存儲器包括計算機程序代碼,至少一個存儲器和計算機程序代碼被配置為與至少一個處理器一起使得設(shè)備:確定視頻的第一幀與第一參考幀之間的第一相關(guān)度;響應(yīng)于第一相關(guān)度低于第一閾值,確定第一幀之前的至少一個第二幀與第二參考幀之間的第二相關(guān)度低于第一閾值;以及至少部分地基于確定出第二相關(guān)度低于第一閾值,檢測出第一幀包括物體的移動。
在某些實現(xiàn)中,至少一個存儲器和計算機程序代碼進一步被配置為與至少一個處理器一起使得設(shè)備:響應(yīng)于確定第一幀之后的第三幀與第三參考幀之間第三相關(guān)度低于第二閾值,檢測出第三幀包括物體的移動,第二閾值大于第一閾值。
在某些實現(xiàn)中,至少一個存儲器和計算機程序代碼進一步被配置為與至少一個處理器一起使得設(shè)備響應(yīng)于檢測出第一幀包括物體的移動,為用戶生成告警。
在某些實現(xiàn)中,至少一個存儲器和計算機程序代碼進一步被配置為與至少一個處理器一起使得設(shè)備:通過將第一幀與視頻的背景 幀相比較,來從第一幀的像素中標(biāo)識出多個前景像素,前景像素不同于背景幀中的對應(yīng)像素;以及基于所標(biāo)識的前景像素的亮度值來確定第一相關(guān)度。
在某些實現(xiàn)中,至少一個存儲器和計算機程序代碼進一步被配置為與至少一個處理器一起使得設(shè)備:確定第一幀中的前景像素的強度值與第一參考幀中的對應(yīng)像素的強度值之間的強度差異;以及基于強度差異來確定第一相關(guān)度。
在某些實現(xiàn)中,至少一個存儲器和計算機程序代碼進一步被配置為與至少一個處理器一起使得設(shè)備:獲取前景像素的顏色屬性,顏色屬性包括以下各項中的至少一項:色度值和飽和度值;以及進一步基于前景像素的強度值和前景像素的顏色屬性,確定第一相關(guān)度。
在某些實現(xiàn)中,至少一個存儲器和計算機程序代碼進一步被配置為與至少一個處理器一起使得設(shè)備:響應(yīng)于第一幀中的前景像素的第一數(shù)目超過第三閾值,確定至少一個第二幀中的前景像素的第二數(shù)目超過第三閾值。在這些實現(xiàn)中,該方法中的檢測包括響應(yīng)于確定第二相關(guān)度低于第一閾值并且第二數(shù)目超過第三閾值,檢測出第一幀包括物體的移動。
在某些實現(xiàn)中,至少一個存儲器和計算機程序代碼進一步被配置為與至少一個處理器一起使得設(shè)備:響應(yīng)于確定在第一幀之后的第四幀中的前景像素的第三數(shù)目超過第四閾值,檢測出第四幀包括物體的移動,第四閾值小于第三閾值。
在某些實現(xiàn)中,該設(shè)備進一步包括:接收器,被配置為從遠端的視頻捕獲設(shè)備接收視頻。
在又一方面,提供了一種計算機程序產(chǎn)品,計算機程序產(chǎn)品包括被有形地體現(xiàn)在機器可讀介質(zhì)上的計算機程序,計算機程序包含用于執(zhí)行包括如下步驟的過程的程序代碼:確定視頻的第一幀與第一參考幀之間的第一相關(guān)度;響應(yīng)于第一相關(guān)度低于第一閾值,確定第一幀之前的至少一個第二幀與第二參考幀之間的第二相關(guān)度低 于第一閾值;以及至少部分地基于確定出第二相關(guān)度低于第一閾值,檢測出第一幀包括物體的移動。
在某些實現(xiàn)中,計算機程序包含用于執(zhí)行包括如下步驟的過程的程序代碼:響應(yīng)于確定第一幀之后的第三幀與第三參考幀之間第三相關(guān)度低于第二閾值,檢測出第三幀包括物體的移動,第二閾值大于第一閾值。
在某些實現(xiàn)中,計算機程序包含用于執(zhí)行包括如下步驟的過程的程序代碼:響應(yīng)于檢測出第一幀包括物體的移動,為用戶生成告警。
在某些實現(xiàn)中,計算機程序包含用于執(zhí)行包括如下步驟的過程的程序代碼:通過將第一幀與視頻的背景幀相比較,來從第一幀的像素中標(biāo)識出多個前景像素,前景像素不同于背景幀中的對應(yīng)像素;以及基于所標(biāo)識的前景像素的亮度值來確定第一相關(guān)度。
在某些實現(xiàn)中,計算機程序包含用于執(zhí)行包括如下步驟的過程的程序代碼:確定第一幀中的前景像素的強度值與第一參考幀中的對應(yīng)像素的強度值之間的強度差異;以及基于強度差異來確定第一相關(guān)度。
在某些實現(xiàn)中,計算機程序包含用于執(zhí)行包括如下步驟的過程的程序代碼:獲取前景像素的顏色屬性,顏色屬性包括以下各項中的至少一項:色度值和飽和度值;以及進一步基于前景像素的強度值和前景像素的顏色屬性,確定第一相關(guān)度。
在某些實現(xiàn)中,計算機程序包含用于執(zhí)行包括如下步驟的過程的程序代碼:響應(yīng)于第一幀中的前景像素的第一數(shù)目超過第三閾值,確定至少一個第二幀中的前景像素的第二數(shù)目超過第三閾值。在這些實現(xiàn)中,該方法中的檢測包括響應(yīng)于確定第二相關(guān)度低于第一閾值并且第二數(shù)目超過第三閾值,檢測出第一幀包括物體的移動。
在某些實現(xiàn)中,計算機程序包含用于執(zhí)行包括如下步驟的過程的程序代碼:響應(yīng)于確定在第一幀之后的第四幀中的前景像素的第三數(shù)目超過第四閾值,檢測出第四幀包括物體的移動,第四閾值小 于第三閾值。
盡管已經(jīng)采用特定于結(jié)構(gòu)特征和/或方法邏輯動作的語言描述了本主題,但是應(yīng)當(dāng)理解所附權(quán)利要求書中所限定的主題未必局限于上面描述的特定特征或動作。相反,上面所描述的特定特征和動作僅僅是實現(xiàn)權(quán)利要求書的示例形式。