用于智能視頻刪減的方法和設備的制造方法
【專利摘要】根據至少一個示例實施例,刪減視頻數據的方法和相應的裝置包括基于與所述視頻數據的內容相關聯的短期的和長期的變化,檢測視頻數據的視頻幀內的運動區域。然后,基于所檢測到的運動區域、相應的過濾后的運動區域和與所述視頻數據相關聯的變化模式,識別與所述視頻數據的內容相關聯的運動事件。基于所識別的運動事件,確定用于儲存所述視頻數據的視頻幀的儲存模式。視頻幀根據所確定的儲存模式而儲存。
【專利說明】
用于智能視頻刪減的方法和設備
【背景技術】
[0001]未壓縮的視頻數據是一系列的視頻幀或圖像。如此,儲存視頻數據通常與大的存儲器消耗相關聯。許多視頻應用涉及儲存大量的視頻數據。例如,視頻監視系統通常被設計成不斷地捕捉視頻數據并且儲存捕捉的視頻以用于需要的任何時候的潛在的未來訪問。
【發明內容】
[0002]在涉及大量的視頻內容的儲存的視頻應用中,可用的存儲器容量通常對可以儲存多少視頻數據施加限制。在這樣的情況中,識別相對較高重要性的視頻內容并且優先其儲存是有用的。
[0003]根據至少一個示例實施例,用于刪減視頻數據的方法和相應的設備包括基于與所述視頻數據的內容相關聯的短期的和長期的變化檢測視頻數據的視頻幀中的運動區域。基于所檢測到的運動區域、相應的過濾后的運動區域和與所述視頻數據相關聯的變化模式,識別與所述視頻數據的內容相關聯的運動事件。然后,基于所識別的運動事件,確定所述視頻數據的視頻幀的儲存時段。視頻幀根據所確定的儲存時段而儲存。
[0004]過濾后的運動區域也被識別。例如,過濾后的區域與重復的運動相關聯。如此,在已經識別的運動區域內的并且與重復的運動相關聯的子區域被識別。與重復的運動相關聯的子區域然后被從已經識別的運動區域排除,得到過濾后的運動區域。如果捕捉視頻數據的相機不是固定的,例如,旋轉的視頻相機,則由于相機運動導致的視頻數據的內容中的變化可以被估計和過濾。
[0005]根據至少一個示例實施例,用于運動區域和過濾后的運動區域的運動檢測基于單獨的檢測時間段而進行。在檢測時間段中,對于每個相應的視頻幀產生一個或多個運動描述符。例如,對于每個視頻幀,基于相應的識別的運動區域產生第一描述符,并且基于相應的過濾后的運動區域產生第二描述符。運動描述符包括在每個視頻幀內的運動區域的分布的指示、在每個視頻幀內的運動區域的相對量的指示和/或在單個視頻塊內的運動像素的最大數量。
[0006]—旦產生運動描述符,分析在單獨的分析時間段內的視頻幀,并且確定每個分析時間段內的變化模式的一個或多個指示符。確定的指示符被儲存以用在識別所述運動事件中。基于一個或多個閾值識別運動事件。例如,閾值可以包括運動的最小時段、最小運動等級和兩個連續的運動事件之間的最大間隙時段。根據一個示例方面,對于每個分析時間端適應性地確定閾值。例如,在分析時間段內基于默認的閾值初始地識別運動事件。如果識別的運動事件的數量被認為太高,則默認的閾值被提高并且重復識別運動事件的過程。但是,如果識別的運動事件被認為太少,則默認的閾值被降低,并且重復識別運動事件的過程。
[0007]根據至少一個示例實施例,運動事件被分級。基于運動事件的分級,確定視頻幀的儲存時段。例如,與運動事件相關聯的等級越高,一個或多個相應的視頻幀被儲存地越久。
【附圖說明】
[0008]以上將從如在附圖中所示出的本發明的示例實施例的下列更具體的描述中變得顯而易見,附圖中貫穿不同的視圖,相似的附圖標記指代相同的部件。附圖未必是按比例的,而是將重點放在示出本發明的實施例。
[0009]圖1是根據至少一個示例實施例示出視頻監視系統的圖;
[0010]圖2是根據至少一個示例實施例示出刪減視頻數據的方法的流程圖;
[0011]圖3是根據至少一個示例實施例示出識別運動塊以用于過濾的方法的流程圖;
[0012]圖4是根據至少一個示例實施例示出排序運動事件的方法的流程圖;以及
[0013]圖5是根據至少一個示例實施例示出儲存視頻數據和相應的存儲器消耗的模式的表。
【具體實施方式】
[0014]本發明的示例實施例的描述如下。
[0015]圖1是根據至少一個示例實施例示出視頻監視系統100的圖。視頻監視系統100包括一個或多個相機、例如1la-1OlcU處理裝置110和存儲裝置120。處理裝置110可以是計算機裝置,例如個人計算機、膝上型計算機、服務器、平板機、手持裝置等等,或者可以是具有處理器和其中儲存了計算機代碼指令的存儲器的計算裝置。例如,處理裝置110可以是嵌入在(一個或多個)相機、例如1la-1Old中的處理器,或可以是被配置為儲存和分析由(一個或多個)相機、例如1la-1Old捕捉的視頻數據的視頻服務器。儲存裝置120是被配置為儲存由例如1la-1Old的(一個或多個)相機記錄的視頻數據的存儲器裝置,例如外部存儲器裝置、服務器等等。根據一個示例實現方式,處理裝置110和儲存裝置120是同一電子設備的組件。可替代地,處理裝置110和儲存裝置120實現在相機1la-1Old的一個或每一個中。甚至根據另一個實現方式,例如1la-1Old的(一個或多個)相機、處理裝置110和儲存裝置120通過諸如局域網、廣域網、其組合等的通信網絡相互耦接。例如1la-1Old的(一個或多個)相機可以通過有線或者無線鏈路105耦接到處理裝置110或儲存裝置120。
[0016]在視頻監視系統100中,例如1la-1Old的(一個或多個)相機通常不斷地捕捉視頻數據。記錄的視頻數據通常儲存一段時間以用于在需要時的潛在的訪問。視頻數據儲存的越久,提供對之前記錄的事件的訪問的可能性越大。如此,設計例如100的視頻監視系統的難題在于給定硬件儲存容量,存盡可能多的感興趣的視頻內容。具體而言,一天的記錄的視頻數據產生將要儲存的數百萬的視頻幀,或者相當于十億字節的視頻數據。給定監視系統100的或者等同的儲存裝置120的存儲器儲存容量,目標是儲存盡可能多的感興趣的視頻內容,并且因此保存盡可能多的感興趣的事件的記錄。
[0017]儲存所有記錄的視頻幀導致儲存感興趣的視頻內容也儲存不具有感興趣的事件的視頻內容。如此,儲存不具有感興趣的事件的視頻內容消耗否則將可用于儲存指示感興趣的事件的視頻內容的存儲空間。視頻監視系統100的用戶通常想要保存感興趣事件的記錄盡可能最長的時間段。此外,簡單地儲存幀內(I幀)以及丟棄幀間預測(P幀)不提供用于訪問之前的感興趣事件的足夠的存儲信息。
[0018]根據至少一個示例實施例,分析捕捉的視頻數據,并且基于運動或時間變化的從捕捉的視頻數據得到的信息識別運動事件。這里,運動事件被定義為其中在相鄰視頻幀之上幾乎不斷地檢測到顯著運動的視頻幀的序列或時間段。運動事件可包括一個或多個其中沒有檢測到顯著運動的相對較短的時間段。得到的運動信息包括原始的和過濾后的運動信息。原始的運動信息包括基于從捕捉的視頻數據檢測的短期和長期的變化而確定的運動信息。通過從該原始的運動中排除至少重復的運動而產生過濾后的運動信息。
[0019]識別的運動事件被用于確定儲存模式,相應的幀的視頻根據該存儲模式被儲存。例如,運動事件越相關,相應的視頻幀儲存在儲存裝置120中越久。根據一個示例實現方式,識別的視頻事件按照相關性或重要性通過基于相應的運動信息的無監督的學習而被分類或分級(rank)。用于每一個運動事件的分類或分級的信息然后被用于確定用于與相同的運動事件相關聯的視頻幀的儲存模式。給定儲存容量,所確定的儲存模式使得相關的或信息豐富的視頻數據的儲存能夠比典型的視頻刪減(prune)技術長久得多。
[0020]圖2是示出根據至少一個示例實施例的刪減視頻數據的方法200的流程圖。通過例如1la-1Old的(一個或多個)相機捕捉的視頻數據可以直接儲存在儲存裝置120中或在被儲存在儲存裝置120之前被轉發到處理裝置110用于處理。在塊210處,基于與當前視頻幀相關聯的短期和長期的時間變化而檢測原始的運動區域、例如像素。長期的變化可以使用諸如高斯混合模型(GMM)、移動平均等的背景減除技術來檢測。短期的變化可以例如通過從當前視頻幀中減去前一視頻幀而檢測。
[0021]然后采用閾值來將當前視頻幀的像素標記為“運動”或“靜止”像素。在閾值以上的區別于背景的當前幀的像素被標記為“運動”像素。此外,在閾值以上的區別于前一幀中的相應的像素的當前幀的像素被標記為“運動”像素。對于長期和短期的變化可以使用相同的閾值或不同的閾值。基于當前視頻幀的內容,(一個或多個)閾值可以是動態的。為了抑制照明改變的影響,標準化的交叉關聯可以被用作在檢測運動像素中的度量。本領域技術人員應理解的是,使用長期變化和短期變化兩者得到運動像素的較少噪聲的估計。
[0022]一旦檢測到運動像素,當前視頻幀被分成NXN個視頻塊,其中N是整數。然后使用第二閾值將每一個塊標記為“運動”或“靜止”塊。如果“運動”像素的計數大于第二閾值,則該塊被標記為“運動”塊;否則其被標記為“靜止”塊。形態學的腐蝕或開運算(opening)可應用于在標記視頻塊之前去除噪聲“運動”像素。例如,當形態學的腐蝕或開運算被應用于當前視頻幀時,相對小或細的“運動”區域通常被消除。
[0023]在塊220處,檢測的“運動”塊被過濾并且相應的過濾后的“運動”塊被確定。在過濾運動塊時,考慮在至少一個之前的視頻幀中的相應的視頻塊的標記。換句話說,基于在當前視頻幀和之前的視頻幀中的運動信息而確定過濾后的運動。
[0024]圖3是示出根據至少一個示例實施例的識別運動塊以用于過濾的方法的流程圖。運動改變計數器(MCC)被定義用于每一個視頻塊以指示視頻塊標記在相應的檢測時間段中從“靜止”翻轉為“運動”的次數。如此,MCC被用于檢測重復的或波動的運動。例如,每一個檢測時間段具有預定持續時間,例如,五或十分鐘,并且MCC在每一個檢測時段的開始時被復位。提出運動改變歷史圖像(MCHI)以保持每一個視頻塊的運動歷史。對于在當前視頻幀中的視頻塊,在塊310處檢查視頻塊的標記。如果視頻塊被標記為“靜止”,則在塊315處遞減相應的MCHI ο然而,如果視頻塊被標記為“運動”,則在塊320處檢查在前一視頻幀中的相同的視頻塊的標記。如果在前一幀中的該頻塊的標記是“靜止”,則在塊325處遞增對應于該視頻塊的MCC。如果當前視頻塊被標記為“運動”,則在塊330處對于相同的視頻塊的MCHI被設置在最大值。對于每一個新的檢測時間段MCHI還被復位。
[0025]在塊340處,將用于視頻塊的MCC與標記改變閾值相比較。如果MCC大于標記改變閾值,則在塊350處,相應的噪聲屏蔽(mask)條目被設置為I,指示相應的檢測到的運動為噪聲或者是不相干的運動。例如,視頻監視系統100的用戶通常對保持搖擺的旗幟或者移動的樹葉和樹枝的跟蹤不感興趣。如果對應于視頻塊的MCC小于標記改變閾值,則在塊245處相應的噪聲屏蔽條目被設置為O。如果用于視頻塊的噪聲屏蔽條目被設置為0(塊260),則在塊265處檢查指示在之前的視頻幀上的該視頻塊的噪聲屏蔽條目的歷史的歷史屏蔽條目。如果該歷史屏蔽條目大于0,則在塊380處該視頻塊的噪聲屏蔽被設置為I。如果在塊360處發現噪聲屏蔽條目等于I,則在塊370處相應的歷史屏蔽條目被設置為正值。即使在相應的視頻場景中一段時間沒有運動,歷史屏蔽也保持對過去的噪聲屏蔽值的跟蹤并且被用于抑制噪聲。對于在當前視頻幀內的所有視頻塊重復關于圖3描述的過程。然后采用噪聲屏蔽來過濾當前視頻幀中的檢測到的原始運動。
[0026]在圖2的塊230處,產生用于當前視頻幀的至少一個運動描述符。運動描述符包括運動活動性值、運動分布指示符和在“運動”視頻塊中的“運動”像素的最大數量。運動活動性值指示在相應的視頻幀內檢測的運動塊的百分比。運動分布指示符表示對于相應的視頻幀的視頻塊的分布。例如,運動分布指示符可以是位序列,每一位指示相應的視頻塊是被標記為“運動”還是“靜止”。例如,整個視頻幀可以被均勻地分為8 X 8或更精細的視頻塊。運動分布指示符的每個格(bin)對應于視頻幀中的視頻塊。對于包含大于閾值數量的多個運動像素的視頻塊,相應的位被設置為I。對于包含少于閾值數量的多個運動像素的視頻塊,相應的位被設置為O ο如此,32位整數表示32個視頻塊,這是描述在視頻幀中的運動分布的有效方式。在“運動”視頻塊中的“運動”像素的最大數量是用于評估在視頻幀中的運動量的統計參數。本領域技術人員應理解的是,可以使用其它統計的參數,例如每一個“運動”視頻塊的“運動”像素的平均數、在“運動”視頻塊中的“運動”像素的最小數量、其組合等。
[0027]與運動描述符相關聯的參數被用于將運動與散射的噪聲相區分。根據至少一個示例實施例,對于處理的每一個視頻幀,產生兩個運動描述符。一個運動描述符對應于在視頻幀中檢測到的原始的運動,而另一個運動描述符基于相應的過濾后的運動而獲得。
[0028]根據至少一個示例實施例,對于與檢測時間段相關聯的視頻幀進行在塊210-230中描述的過程。換句話說,由例如1I a-101 d的(一個或多個)相機記錄的視頻數據被作為單獨的視頻的序列而處理,視頻幀的每一個序列對應于一個檢測時間段。在與檢測時間段相關聯的每一個視頻序列中的視頻幀被一起處理。在塊240處,分析在當前分析時間段中的運動活動性模式,并且計算且儲存相應的度量。具體而言,在當前檢測時間段內估計在每一個視頻塊i中的運動的概率分布Pit。上標t是指與被處理的視頻幀相關聯的分析時間段。例如,分析時間段可以以每個小時為基礎定義,其中一天的每個小時表示一個時間段。可替代地,分析時間段可以不同地定義,例如,不是所有的時間段具有相同的持續時間。例如,分析時間段可以是一個小時或兩個小時長。本領域技術人員應理解的是,可以定義用于分析時間段的其它持續時間。可替代地,可以按照多個連續的視頻幀而定義分析時間段。本領域技術人員應理解的是,其它統計的或非統計的參數可以作為在每一個分析時間段內的運動模式的分析的部分而計算。此外,在表征與給定的檢測時間段相關聯的運動模式時,與在之前的一天或多天中的相同的分析時間段相關聯的參數可以被合并。
[0029]在塊250處,基于與在當前分析時間段中的視頻幀相關聯的運動描述符以及作為與當前分析時間段相關聯的運動模式的分析的部分而獲得的參數來檢測在當前分析時間段內的運動事件。運動事件在這里被定義為視頻幀的序列、或在當前分析時間段中的相應的時間間隔,在該間隔內在相鄰視頻幀之上幾乎不斷地檢測到顯著運動。運動事件可包括其中沒有檢測到顯著運動的一個或多個相對較短的時段。根據至少一個示例實施例,基于在相應的視頻幀內的運動活動性的量、時間間隔的長度、或承載幾乎持續的運動的連續視頻幀的數量和與在承載幾乎持續的運動的時間間隔內的“靜止”視頻幀相關聯的(一個或多個)間隙時段的長度來識別運動事件。
[0030]具體地,運動活動性閾值被用于在當前分析時間段內作為“運動”幀或“靜止”幀的每一個視頻幀。如果相應的運動活動性水平大于運動活動性閾值,則視頻幀被標記為“運動”幀。例如,運動活動性可以被定義在范圍[O,100]內,其中O指示場景中沒有運動并且100指示場景中的全運動。對于原始的和過濾后的運動兩者采用相同的范圍。本領域技術人員應理解的是,可以不同地定義運動活動性。
[0031]根據一個示例實施例,基于檢測到的原始的運動來檢測第一組運動事件,并且基于相應的過濾后的運動來檢測第二組運動事件。一旦當前時間段的視頻幀被標記,使用兩個時間閾值來檢測運動事件。第一時間閾值表示用于檢測運動事件的幾乎持續的運動的最小時間段。第二時間閾值表示在任意兩個連續的運動事件之間的最小間隙時段。具體而言,如果檢測到的幾乎持續運動的時段大于第一時間閾值,則基于幾乎持續運動的檢測的時段而識別相應的運動事件,否則檢測的時段被忽略。此外,如果兩個相鄰的檢測到的運動事件之間的間隙小于第二時間閾值,則這兩個檢測到的運動事件被合并為一個較長的運動事件。
[0032]根據至少一個示例實施例,運動活動性閾值、第一時間閾值和第二時間閾值的至少一個至少部分地基于用于相應的分析時間段的運動模式分析而被定義。例如,可以基于在相應的檢測時間段期間的運動活動性水平和運動事件的頻率來計算(一個或多個)閾值。具體地,可以例如基于檢測到的運動事件的數量迭代地確定閾值參數。例如,可以在第一迭代中使用默認的閾值參數值,并且然后在接下來的迭代中基于在每一迭代時檢測到的運動事件的數量而更新該默認的閾值參數值。本領域技術人員應理解的是,與在至少前一天中的相同的分析時間段相關聯的參數也可用于設置(一個或多個)閾值。例如基于相應的運動模式分析使用自適應閾值允許在一天的不同時間時的更可靠的運動事件檢測。例如,對所有的時間段使用固定的閾值使得難以在白天和夜晚檢測運動,因為在白天和夜晚的運動水平完全不同。
[0033]根據一個示例實現方式,迭代地確定自適應閾值。給出運動活動性的默認閾值,初始運動事件被識別。如果檢測到的運動事件太少,則降低自適應閾值并且再次檢測運動事件。這樣的過程被重復直至檢測到的運動事件的數量大于相應的最小值。相反,如果檢測到太多的事件或者檢測到太長時間段的事件,則增加運動自適應閾值并且再次檢測運動事件。該過程被重復直至檢測到的運動事件的數量下降到預定的范圍。
[0034]一旦檢測到運動事件,在當前檢測時間段中基于原始的和過濾后的運動而檢測到的運動事件在塊260處被分級。基于檢測到的原始和過濾后的運動進行分級。運動事件的分級可以被看作基于相應的重要性或相關性而分類運動事件的方式。例如,與原始的和過濾后的運動兩者相關聯的運動事件被認為比僅與原始的運動相關聯的運動事件更加相關。
[0035]圖4是示出根據至少一個示例實施例的分級運動事件的方法的流程圖。首先,在塊405和415處,對于基于原始的運動檢測到的運動事件和基于過濾后的運動檢測到的運動事件定義一個或多個層級。層級包含幾個層。例如,層O是頂層,其具有最粗略的時間間隔,例如五分鐘的持續時間。也就是說,分析時間段被分成例如12個五分鐘的時間段。接下來的層包含越來越精細的時間間隔,例如一分鐘、20秒、5秒和/或甚至I秒的時間間隔。
[0036]在塊440到455處,計算在分級的層級的最低等級處的運動事件的分級。基于在層級的最低等級處計算的分級信息,以越來越粗略的時間粒度構造層級的較高等級處的運動事件的分級,如在塊470到485處所示。例如在最低的等級處的時間間隔是I秒,并且較高的等級的時間間隔可以是10秒、I分鐘和/或5分鐘。根據一個示例實施例,在其中沒有檢測到原始的運動的視頻幀的序列被分配最低的等級。較高的等級被分配給其中僅檢測到原始的運動的運動事件。更加高的等級被分配給在其中檢測到原始的和過濾后的運動兩者的運動事件。
[0037]在給定的層級中,運動事件的分級從包含最精細的時間間隔的底層開始、并且以最粗略的或最大的時間間隔結束而進行。運動事件的分級從最精細的間隔傳播到相應的較大間隔。從底層、例如層N-1、并且向上,逐層構建該層級。從層j+Ι到層j,時間間隔的最大分級將被分配給相應的較粗略的時間間隔,直至達到頂層或最粗略的層,例如層O。
[0038I在塊270處,基于例如在塊240處計算的運動模式統計或參數以及與相同的運動事件相關聯的視頻幀的用戶交互來調整計算的運動事件的分級。例如,具有在相應的視頻塊處檢測到的具有相對較低的運動概率、例如Pit的運動的運動事件的分級被提高作為在該運動事件中的(一個或多個)非預期的事件的指示。此外,用戶查詢被跟蹤并且存儲在處理裝置110或數據庫120中。例如,用戶查詢的開始和結束時間、與作為用戶查詢的對象的視頻幀相關聯的運動模式、以及用戶訪問視頻段的時間由監視系統100儲存。使用與用戶查詢有關的存儲的信息,與對視頻幀的用戶查詢和導出或訪問相關聯的運動事件的分級被提高。類似于與用戶查詢相關聯的運動事件的并且在一天中相同的時間槽處的檢測到的運動事件的(一個或多個)分級也可以作為分級調整的一部分而被提高。
[0039]在塊280處,儲存視頻數據的模式基于檢測到的運動事件和相應的分級而確定,并且視頻數據據此儲存在數據庫120中。根據至少一個示例實施例,與最低分級的運動事件相關聯的視頻段被首先刪除。然而,與較高分級的運動事件相關聯的視頻段基于相應的分級和在數據庫120處可用的空閑存儲空間而被儲存較長的時間。
[0040]圖5是示出根據至少一個示例實施例的基于檢測到的原始事件和(一個或多個)相應的分級來儲存視頻數據的模式的表。所有視頻段不管相應的分級如何都被儲存達第一預定的時間段,例如三天。一旦經過了第一預定的時間段,僅與檢測到的運動事件相關聯的視頻段、例如具有等于或大于4的等級的視頻段被儲存達第二預定的時間段,例如4到6天,并且其他的視頻段被刪除。在經過第二預定的時間段之后,與具有過濾后的運動的運動事件相關聯的視頻段、例如具有大于7的等級的視頻段被儲存達第三預定的時間段,例如7-10天。此外,與僅具有原始的運動的運動事件相關聯的、例如具有在4和7之間的等級的1-幀在第三預定的時間段期間被保持儲存。
[0041]在第三預定的時段之后,僅與僅具有過濾后的運動的運動事件對應的1-幀被保持達第四預定的時段,例如11-14天。在第五預定的時段期間,例如15到18天,僅與僅具有原始的運動的運動事件相關聯的關鍵幀被保持儲存在數據庫120中。在第六預定的時段期間,例如19到28天,僅與具有過濾后的運動的運動事件相關聯的關鍵幀被保持儲存在數據庫120中。在第六預定的時間段之后,與具有過濾后的運動的運動事件對應的關鍵幀被刪除。關鍵幀被定義為包含對于相應的運動事件的時段的最顯著的運動的1-幀。圖5中的表的最后一行示出了對應于每一個預定的時間段的存儲器消耗。
[0042]假定對于單個相機的2兆比特每秒的視頻比特率,儲存在一天中捕捉的相應的視頻數據消耗存儲器的21千兆字節。如果每單個相機分配105千兆字節的存儲器容量,如果不應用刪減,存儲器容量僅允許儲存5天的視頻數據。然而,通過應用圖5中描述的儲存模式,一些視頻內容被保持儲存多達28天。
[0043]根據至少一個示例實施例,從例如1la-1Old的(一個或多個)捕捉相機接收的視頻數據由處理裝置110在運行中(on the fly)處理和分析。例如,接收的視頻數據被儲存到分別的視頻文件中,每一個視頻文件對應于檢測時間段。對于原始的視頻數據,在視頻文件中的圖像組(GOP)中的視頻的每一個1-幀和第一P-幀的捕捉時間和位置被記錄在數據庫中。視頻事件的分級、識別的運動事件的開始時間和結束時間也被儲存。根據一個示例實現方式,視頻數據的1-幀和P-幀被分開儲存。如此,所有P-幀可以被一起刪除。此外,保持對每一個GOP的位置的跟蹤使得易于進行視頻刪減處理。此外,尤其是如果將分層地進行視頻剪除,分層的分級特別有用。
[0044]本領域技術人員應理解的是,本文所述的視頻刪減的過程是示例實施例并且不應以限制的方式解釋。例如,替代于對識別的運動事件分級,可以基于相應的檢測到的運動區域而分類運動事件。此外,如果捕捉相機是移動的,則由于相機運動引起的變化可以被過濾。本領域技術人員還應理解的是,本文所述的視頻刪減過程也可以應用在不同于視頻監視的視頻應用。此外,替代于定義用于儲存視頻幀的時間段,可以基于檢測到的運動事件定義可變的幀速率。這樣的可變的幀速率然后可以被用于視頻數據壓縮或視頻數據傳輸中。可替換地,可以基于檢測到的運動事件定義可變的視頻分辨率或可變的視頻質量。
[0045]應理解的是,以上描述的示例實施例可以以多種不同的方式實現。在一些示例中,本文所述的各種方法和機器每個可以由物理的、虛擬的或混合通用或專用計算機而實施,該計算機具有中央處理器、存儲器、磁盤或其它大容量儲存裝置、(一個或多個)通信接口、(一個或多個)輸入/輸出(I/O)裝置和其它外圍設備。通用或專用計算機例如通過將軟件指令加載到數據處理器中、然后使得指令執行以實行本文所述的功能而被轉換為執行以上描述的方法的機器。
[0046]如本領域已知的,這樣的計算機可包含系統總線,其中總線是用于在計算機或處理系統的組件之間的數據傳送的一組硬件線。一個或多個總線本質上是連接計算機系統的例如處理器、磁盤儲存裝置、存儲器、輸入/輸出端口、網絡端口等的不同元件的共享導線,該導線使能在元件之間的信息的傳送。一個或多個中央處理器被附接到系統總線并且提供計算機指令的執行。還附接到系統總線的通常是I/O裝置接口,用于將各種輸入和輸出裝置、例如鍵盤、鼠標、顯示器、打印機、揚聲器等連接到計算機。(一個或多個)網絡接口允許計算機連接到附接到網絡的各種其它裝置。存儲器提供用于實現實施例的計算機軟件指令和數據的易失性存儲。磁盤或其它大容量儲存裝置提供用于實現例如本文所述的各種過程的計算機軟件指令和數據的非易失性存儲。
[0047]因此,實施例通常可以以硬件、固件、軟件或其任意組合而實現。
[0048]在某些實施例中,本文所述的程序、裝置和處理構成提供用于系統的軟件指令的至少一部分的包括計算機可讀介質的計算機程序產品,該計算機可讀介質例如諸如一個或多個DVD-ROM、CD-ROM、軟盤、磁帶等的可拆卸的存儲介質。這樣的計算機程序產品可以由任何合適的軟件安裝過程來安裝,如本領域眾所周知的。在另一個實施例中,軟件指令的至少一部分也可通過電纜、通信和/或無線連接而下載。
[0049]實施例也可以實現為儲存在非暫時機器可讀介質上的指令,其可以由一個或多個處理器讀取和執行。非瞬態機器可讀介質可包括用于以可由例如計算裝置的機器讀取的形式儲存或傳輸信息的任何機制。例如,非瞬態機器可讀介質可包括只讀存儲器(ROM);隨機存取存儲器(RAM);磁盤儲存介質;光儲存介質;閃速存儲器裝置;以及其它。
[0050]另外,固件、軟件、例程或指令在本文可以被描述為進行數據處理器的某些動作和/或功能。然而,應理解,本文包含的這樣的描述只是為了方便并且這樣的動作事實上從計算裝置、處理器、控制器或執行固件、軟件、例程、指令等的其它裝置得到。
[0051]還應理解的是,流程圖、框圖和網絡圖可以包括更多或更少的要素,可以不同地布置或者不同地表示。但是將進一步理解的是,某些實現方式可以指導塊和網絡圖以及示出以特定方式實現的實施例的執行的塊和網絡圖的數量。
[0052]因此,進一步的實施例還可以以物理的、虛擬的、云計算機和/或其一些組合的多種計算機架構而實現,因此,本文所述的數據處理器意圖僅用于說明的目的并且不作為對實施例的限制。
[0053]盡管本發明已經參考其示例實施例具體示出并且描述,但是本領域技術人員將理解的是,可以在不脫離由所附權利要求包含的本發明的范圍的情況下,在其中做出形式和細節上的各種改變。
【主權項】
1.一種刪減視頻數據的方法,包括: 由計算機裝置基于與所述視頻數據的內容相關聯的短期的和長期的變化,檢測在所述視頻數據的視頻幀內的運動區域; 基于所檢測到的運動區域、相應的過濾后的運動區域和與所述視頻數據相關聯的變化模式,識別與所述視頻數據的內容相關聯的運動事件;以及 基于所識別的運動事件,確定用于所述視頻數據的視頻幀的儲存時段。2.如權利要求1所述的方法,還包括根據確定的儲存時段儲存所述視頻幀。3.如權利要求1所述的方法,還包括識別所述過濾后的運動區域。4.如權利要求3所述的方法,其中識別所述過濾后的運動區域包括: 識別在所識別的運動區域內的與重復的運動相關聯的子區域;以及 識別所述過濾后的運動區域作為排除與重復的運動相關聯的子區域的識別的運動區域。5.如權利要求1所述的方法,還包括產生用于所述視頻數據的每一幀的一個或多個運動描述符。6.如權利要求5所述的方法,其中產生用于所述視頻數據的每一幀的一個或多個運動描述符包括: 基于相應的識別的運動區域產生用于每個視頻幀的第一描述符;以及 基于相應的過濾后的運動區域產生用于每個視頻幀的第二描述符。7.如權利要求5所述的方法,其中每個運動描述符包括: 每個視頻幀內的運動區域的分布的指示;以及 每個視頻幀內的運動區域的相對量的指示。8.如權利要求1所述的方法,還包括: 確定與所述視頻數據相關聯的變化模式的一個或多個指示符;以及 儲存所確定的變化模式的一個或多個指示符以在識別所述運動事件中使用。9.如權利要求5所述的方法,其中識別所述運動事件包括基于產生的一個或多個運動描述符以及一個或多個閾值來識別所述運動事件。10.如權利要求9所述的方法,其中所述一個或多個閾值包括以下的至少一個: 運動的最小時段; 最小運動等級;以及 兩個連續的運動事件之間的最大間隙時段。11.如權利要求9所述的方法,其中所述一個或多個閾值的至少一個是自適應的閾值。12.如權利要求11所述的方法,其中迭代地識別所述至少一個的自適應的閾值和所述運動事件。13.如權利要求1所述的方法,還包括對所識別的運動事件分級。14.如權利要求13所述的方法,其中基于過濾后的運動區域而識別的運動事件比基于未過濾的運動區域而檢測的運動事件分級更高。15.如權利要求13所述的方法,其中確定視頻幀的所述儲存時段包括基于運動事件的分級來確定與該運動事件相關聯的視頻幀的儲存時段。16.如權利要求15所述的方法,其中與高分級的運動事件相關聯的視頻幀比與低分級的運動事件相關聯的視頻幀儲存更長的時段。17.一種用于刪減視頻數據的設備,包括: 處理器;以及 存儲器,在其上儲存有計算機代碼指令, 所述存儲器和在其上儲存有計算機代碼指令的所述處理器被配置為使得該設備:基于與所述視頻數據的內容相關聯的短期的和長期的變化來檢測在所述視頻數據的視頻幀內的運動區域; 基于所檢測的運動區域、相應的過濾后的運動區域和與所述視頻數據相關聯的變化模式來識別與所述視頻數據的內容相關聯的運動事件; 以及 基于所識別的運動事件來確定用于所述視頻數據的視頻幀的儲存時段。18.如權利要求17所述的設備,其中所述處理器和在其上儲存有計算機代碼指令的所述存儲器還被配置為使得所述設備根據所確定的儲存時段來儲存所述視頻幀。19.如權利要求17所述的設備,其中所述處理器和在其上儲存有計算機代碼指令的所述存儲器還被配置為使得所述設備識別所述過濾后的運動區域。20.如權利要求19所述的設備,其中在識別所述過濾后的運動區域中,所述處理器和在其上儲存有計算機代碼指令的所述存儲器還被配置為使得所述設備: 識別在所識別的運動區域內的與重復的運動相關聯的子區域;以及識別所述過濾后的運動區域作為排除與重復的運動相關聯的子區域的識別的運動區域。21.如權利要求17所述的設備,其中所述處理器和在其上儲存有計算機代碼指令的所述存儲器還被配置為使得所述設備產生用于所述視頻數據的每一幀的一個或多個運動描述符。22.如權利要求21所述的設備,其中在產生用于所述視頻數據的每一幀的一個或多個運動描述符中,所述處理器和在其上儲存有計算機代碼指令的所述存儲器還被配置為使得所述設備: 基于相應的識別的運動區域產生用于每個視頻幀的第一描述符;以及 基于相應的過濾后的運動區域產生用于每個視頻幀的第二描述符。23.如權利要求21所述的設備,其中每個運動描述符包括: 每個視頻幀內的運動區域的分布的指示;以及 每個視頻幀內的運動區域的相對量的指示。24.如權利要求17所述的設備,其中所述處理器和在其上儲存有計算機代碼指令的所述存儲器還被配置為使得所述設備: 確定與所述視頻數據相關聯的變化模式的一個或多個指示符;以及 儲存所確定的變化模式的一個或多個指示符以在識別所述運動事件中使用。25.如權利要求17所述的設備,其中在識別所述運動事件中,所述處理器和在其上儲存有計算機代碼指令的所述存儲器還被配置為使得所述設備基于一個或多個閾值識別所述運動事件。26.如權利要求25所述的設備,其中所述一個或多個閾值包括以下的至少一個: 運動的最小時段; 最小運動等級;以及 兩個連續的運動事件之間的最大間隙時段。27.如權利要求25所述的設備,其中所述一個或多個閾值的至少一個是自適應的閾值。28.如權利要求27所述的設備,其中所述處理器和在其上儲存有計算機代碼指令的所述存儲器還被配置為使得所述設備迭代地識別所述至少一個的自適應的閾值和所述運動事件。29.如權利要求27所述的設備,其中所述處理器和在其上儲存有計算機代碼指令的所述存儲器還被配置為使得所述設備對所識別的運動事件分級。30.如權利要求29所述的設備,其中基于過濾后的運動區域而識別的運動事件比基于未過濾的運動區域而檢測的運動事件分級更高。31.如權利要求28所述的設備,其中在確定視頻幀的所述儲存時段中,所述處理器和在其上儲存有計算機代碼指令的所述存儲器還被配置為使得所述設備基于所述運動事件的分級確定與運動事件相關聯的視頻幀的儲存時段。32.如權利要求31所述的設備,其中與高分級的運動事件相關聯的視頻幀比與低分級的運動事件相關聯的視頻幀儲存更長的時段。33.一種非暫時計算機可讀介質,在其上儲存有計算機軟件,該計算機軟件在由處理器執行時被配置為使得設備: 基于與視頻數據的內容相關聯的短期的和長期的變化,檢測在所述視頻數據的視頻幀內的運動區域; 基于所檢測到的運動區域、相應的過濾后的運動區域和與所述視頻數據相關聯的變化模式,識別與所述視頻數據的內容相關聯的運動事件;以及 基于所識別的運動事件,確定用于所述視頻數據的視頻幀的儲存時段。
【文檔編號】G06F9/46GK106062715SQ201380082021
【公開日】2016年10月26日
【申請日】2013年12月24日
【發明人】L.王, F.阿格達西, G.M.米勒, S.J.米切爾
【申請人】派爾高公司