本發(fā)明涉及用于在幀序列中檢測運動的設(shè)備,涉及一種在幀序列中檢測運動的方法。
背景技術(shù):
經(jīng)常期望的是在通過相機(jī)傳感器捕獲的幀序列中執(zhí)行運動檢測。例如,這在安全相機(jī)中會是有用特征,因為它允許相機(jī)標(biāo)記視頻供應(yīng)中的運動周期或者僅在檢測到運動時才記錄或發(fā)送所捕獲的視頻流。情況往往是這樣,相機(jī)硬件或者關(guān)聯(lián)的處理設(shè)備中可用于執(zhí)行運動檢測的資源非常有限,和/或期望以低功率來執(zhí)行運動檢測。結(jié)果,由相機(jī)傳感器捕獲的幀通常被下采樣(例如,從hd至vga分辨率)并且以低幀速率(例如,每秒10-15幀,而非比如說相機(jī)傳感器所提供的每秒30幀)在下采樣的幀中執(zhí)行運動檢測。
為了進(jìn)一步降低處理負(fù)擔(dān),幀通常關(guān)于執(zhí)行何種運動檢測被分割成塊集合,各個塊包括幀的多個像素。然而,即使利用這些技術(shù),仍難以利用存在于相機(jī)硬件或關(guān)聯(lián)的處理設(shè)備內(nèi)的有限計算資源來執(zhí)行精確的運動檢測。
技術(shù)實現(xiàn)要素:
根據(jù)本發(fā)明的第一方面,提供一種用于在幀序列中檢測運動的數(shù)據(jù)處理裝置,各個幀包括一個或更多個像素塊,所述數(shù)據(jù)處理裝置包括:
采樣單元,其被配置為確定塊的樣本點集合處的圖像特性;
特征生成單元,其被配置為形成所述塊的當(dāng)前特征,所述當(dāng)前特征具有從所述樣本點推導(dǎo)的多個值;以及
運動檢測邏輯,其被配置為通過將塊的當(dāng)前特征與表示所述塊的歷史特征值的學(xué)習(xí)特征進(jìn)行比較來生成所述塊的運動輸出。
特征生成單元可被配置為依據(jù)所確定的圖像特性來形成所述塊的當(dāng)前特征。
特征生成單元可被配置為:比較所述集合中的多對樣本點的圖像特性,各個比較是相應(yīng)對的樣本點之間的比較;并且形成所述塊的當(dāng)前特征,使得各個值表示一對樣本點的所述比較的結(jié)果。
學(xué)習(xí)特征可表示所述塊的多對樣本點的歷史特征值。
關(guān)于一對樣本點形成的當(dāng)前特征的各個值可在表示該對樣本點的歷史值的學(xué)習(xí)特征中具有對應(yīng)值。
當(dāng)前特征的各個值可包括比特作為由運動檢測邏輯針對相應(yīng)一對樣本點的所述比較的結(jié)果的二進(jìn)制表示。
特征生成單元可被配置為從所述塊的樣本點集合隨機(jī)地選擇各對點。
特征生成單元可被配置為針對當(dāng)前特征的各個值,利用二進(jìn)制值來表示所述比較的結(jié)果,所述二進(jìn)制值指示該對樣本點的圖像特性中的哪一個值較大。
學(xué)習(xí)特征的各個值處的歷史值可以是由特征生成單元針對所述塊的相應(yīng)一對樣本點的所述比較結(jié)果在多個幀上的加權(quán)平均。
當(dāng)前特征可以是從樣本點推導(dǎo)的圖像特性直方圖,其中所述多個值中的各個值對應(yīng)于限定預(yù)定義的范圍的條塊(bin)并且包括具有落入該條塊內(nèi)的圖像特性的采樣點的數(shù)量的計數(shù)。
學(xué)習(xí)特征可表示所述塊的歷史圖像特性直方圖。
當(dāng)前特征的各個條塊可在具有該條塊的所述預(yù)定義的范圍的歷史值的學(xué)習(xí)特征中具有對應(yīng)條塊。
學(xué)習(xí)特征的各個條塊處的歷史值可以是針對所述塊具有落入該條塊內(nèi)的圖像特性的采樣點的數(shù)量的計數(shù)在多個幀上的加權(quán)平均。
所述序列的各個幀可包括相同的一個或更多個像素塊。
采樣單元、特征生成單元和運動檢測邏輯可被配置為關(guān)于序列的各個幀的多個塊執(zhí)行其相應(yīng)的功能,特征生成單元被配置為維護(hù)各個塊的學(xué)習(xí)特征。
采樣單元可被配置為依據(jù)位于采樣點處的一個或更多個像素的像素值來識別各個圖像特性。
采樣單元可被配置為隨機(jī)地生成所述塊的樣本點集合,在幀序列上所述樣本點集合對于所述塊是固定的。
采樣單元可被配置為根據(jù)偽隨機(jī)halton序列來隨機(jī)地生成所述塊的樣本點集合。
特征生成單元可包括采樣單元。
特征生成單元可被配置為依據(jù)在所述序列的多個幀上接收的所述塊的樣本點來維護(hù)所述塊的學(xué)習(xí)特征。
特征生成單元可被配置為通過在接收到所述序列的幀時使其多個值衰減并且將當(dāng)前特征的值分配給學(xué)習(xí)特征的對應(yīng)值來維護(hù)所述塊的所述學(xué)習(xí)特征。
特征生成單元可被配置為根據(jù)預(yù)定義的衰減因子來使學(xué)習(xí)特征的值衰減。
特征生成單元可被配置為在將當(dāng)前特征的值分配給學(xué)習(xí)特征的值之前根據(jù)預(yù)定義的加權(quán)因子對當(dāng)前特征的值進(jìn)行加權(quán)。
運動檢測邏輯可被配置為通過計算當(dāng)前特征的值與學(xué)習(xí)特征的對應(yīng)值之差的測量來將針對所述塊形成的當(dāng)前特征與所述塊的學(xué)習(xí)特征進(jìn)行比較。
由運動檢測邏輯執(zhí)行的所述比較可包括基于所述差的測量就所述當(dāng)前特征是否基于所述塊的所述學(xué)習(xí)特征的歷史值被預(yù)期在預(yù)定義或自適應(yīng)閾值內(nèi)形成估計。
運動檢測邏輯可被配置為如果所述估計超過所述預(yù)定義或自適應(yīng)閾值,則生成運動輸出以指示所述塊處的運動。
運動檢測邏輯可被配置為維護(hù)所述塊的預(yù)期變化程度的估計,并且依據(jù)該估計,為所述塊形成所述自適應(yīng)閾值。
運動檢測邏輯可被配置為通過在接收到幀時依據(jù)針對所述幀的所述塊形成的當(dāng)前特征與針對所述塊維護(hù)的學(xué)習(xí)特征之間的相似度的測量更新所述塊的預(yù)期變化程度的所述估計來維護(hù)所述估計。
運動輸出可以是運動的二進(jìn)制指示,其標(biāo)識由運動檢測邏輯執(zhí)行的比較的結(jié)果是否指示所述塊中的運動。
各個塊可包括幀的一個或更多個像素。
數(shù)據(jù)處理裝置還可包括決策邏輯,該決策邏輯被配置為基于由運動檢測邏輯關(guān)于幀的所述塊生成的所述一個或更多個運動輸出來生成該幀的運動的指示。
根據(jù)本發(fā)明的第二方面,提供一種在幀序列中檢測運動的方法,各個幀包括一個或更多個像素塊,所述方法包括以下步驟:
識別塊的樣本點集合處的圖像特性;
形成所述塊的當(dāng)前特征,所述當(dāng)前特征具有從所述樣本點推導(dǎo)的多個值;以及
通過將塊的當(dāng)前特征與具有表示所述塊的歷史特征值的多個值的學(xué)習(xí)特征進(jìn)行比較來生成所述塊的運動輸出。
所述方法還可包括以下步驟:
從所述塊的樣本點集合形成多對樣本點;以及
針對各個對,比較該對樣本點的圖像特性,
其中,當(dāng)前特征的所述多個值各自表示一對樣本點的所述比較的結(jié)果。
學(xué)習(xí)特征可表示所述塊的多對樣本點的歷史特征值。
關(guān)于一對樣本點形成的當(dāng)前特征的各個值可在表示該對樣本點的歷史值的學(xué)習(xí)特征中具有對應(yīng)值。
當(dāng)前特征的各個值可包括比特作為由運動檢測邏輯針對相應(yīng)一對樣本點的所述比較的結(jié)果的二進(jìn)制表示。
形成多對樣本點的步驟可包括從所述塊的樣本點集合隨機(jī)地選擇各對點。
形成所述塊的當(dāng)前特征的步驟可包括針對當(dāng)前特征的各個值,利用二進(jìn)制值來表示所述比較的結(jié)果,所述二進(jìn)制值指示該對樣本點的圖像特性中的哪一個值較大。
所述方法還可包括維護(hù)學(xué)習(xí)特征,使得所述學(xué)習(xí)特征的各個值處的歷史值是針對所述塊的相應(yīng)一對樣本點的所述比較結(jié)果在多個幀上的加權(quán)平均。
形成所述塊的當(dāng)前特征的步驟可包括從樣本點推導(dǎo)圖像特性直方圖,其中所述多個值中的各個值對應(yīng)于限定預(yù)定義的范圍的條塊并且包括具有落入該條塊內(nèi)的圖像特性的采樣點的數(shù)量的計數(shù)。
學(xué)習(xí)特征可表示所述塊的歷史圖像特性直方圖。
當(dāng)前特征的各個條塊可在具有該條塊的所述預(yù)定義的范圍的歷史值的學(xué)習(xí)特征中具有對應(yīng)條塊。
所述方法還可包括維護(hù)學(xué)習(xí)特征,使得所述學(xué)習(xí)特征的各個條塊處的歷史值是針對所述塊具有落入該條塊內(nèi)的圖像特性的采樣點的數(shù)量的計數(shù)在多個幀上的加權(quán)平均。
所述方法還可包括隨機(jī)地生成所述塊的樣本點集合,在幀序列上所述樣本點集合對于所述塊是固定的。
所述方法還可包括依據(jù)在所述序列的多個幀上接收的所述塊的樣本點來維護(hù)所述塊的學(xué)習(xí)特征。
維護(hù)所述塊的學(xué)習(xí)特征的步驟可包括在接收到所述序列的幀時,使學(xué)習(xí)特征的所述多個值衰減并且將當(dāng)前特征的值分配給學(xué)習(xí)特征的對應(yīng)值。
將針對所述塊形成的當(dāng)前特征與所述塊的學(xué)習(xí)特征進(jìn)行比較的步驟可包括計算當(dāng)前特征的值與學(xué)習(xí)特征的對應(yīng)值之差的測量。
將針對所述塊形成的當(dāng)前特征與所述塊的學(xué)習(xí)特征進(jìn)行比較的步驟可包括基于所述差的測量就所述當(dāng)前特征是否基于所述塊的所述學(xué)習(xí)特征的歷史值被預(yù)期在預(yù)定義或自適應(yīng)閾值內(nèi)形成估計。
所述方法還可包括維護(hù)所述塊的預(yù)期變化程度的估計,并且依據(jù)該估計,為所述塊形成所述自適應(yīng)閾值。
維護(hù)所述塊的預(yù)期變化程度的所述估計的步驟可包括在接收到幀時,依據(jù)針對所述幀的所述塊形成的當(dāng)前特征與針對所述塊維護(hù)的學(xué)習(xí)特征之間的相似度的測量來更新所述估計。
所述設(shè)備可在集成電路上以硬件來具體實現(xiàn)??商峁┮环N在集成電路制造系統(tǒng)處制造所述設(shè)備的方法??商峁┮环N集成電路定義數(shù)據(jù)集,該集成電路定義數(shù)據(jù)集在集成電路制造系統(tǒng)中被處理時配置所述系統(tǒng)以制造所述設(shè)備。可提供一種存儲有集成電路的計算機(jī)可讀描述的非暫時性計算機(jī)可讀存儲介質(zhì),所述計算機(jī)可讀描述在集成電路制造系統(tǒng)中被處理時使得集成電路制造系統(tǒng)制造所述設(shè)備。
可提供一種集成電路制造系統(tǒng),該集成電路制造系統(tǒng)包括:
非暫時性計算機(jī)可讀存儲介質(zhì),其存儲有描述所述設(shè)備的計算機(jī)可讀集成電路描述;
布局處理系統(tǒng),其被配置為處理所述集成電路描述以生成具體實現(xiàn)所述設(shè)備的集成電路的電路布局描述;以及
集成電路生成系統(tǒng),其被配置為根據(jù)所述電路布局描述來制造所述設(shè)備。
可提供用于執(zhí)行如本文所述的方法的計算機(jī)程序代碼??商峁┐鎯τ杏嬎銠C(jī)可讀指令的非暫時性計算機(jī)可讀存儲介質(zhì),所述計算機(jī)可讀指令在計算機(jī)系統(tǒng)處執(zhí)行時使得計算機(jī)系統(tǒng)執(zhí)行本文所述的方法。
附圖說明
現(xiàn)在將參照附圖作為示例描述本發(fā)明。附圖中:
圖1是用于在相機(jī)處所捕獲的視頻幀的流中執(zhí)行運動檢測的設(shè)備的示意圖。
圖2示出基于樣本點對的隨機(jī)選擇形成塊的二進(jìn)制特征。
圖3示出具有穩(wěn)定內(nèi)容的塊的學(xué)習(xí)特征以及具有不穩(wěn)定內(nèi)容的塊的學(xué)習(xí)特征。
圖4是示出可在圖像處理器處執(zhí)行的處理的流程圖。
圖5是集成電路制造系統(tǒng)的示意圖。
圖6是示出根據(jù)第二方面的特征生成單元和運動檢測器的操作的流程圖。
圖7示出在被分割成多個塊的圖像幀上操作的運動檢測器的二進(jìn)制輸出。
圖8示出基于點樣本的集合為幀的塊形成直方圖。
圖9是示出點采樣技術(shù)的流程圖。
具體實施方式
作為示例呈現(xiàn)以下描述以使得本領(lǐng)域技術(shù)人員能夠制造并使用本發(fā)明。本發(fā)明不限于本文所描述的實施方式,對于本領(lǐng)域技術(shù)人員而言對所公開的實施方式的各種修改將是顯而易見的。
描述基于從樣本點形成的學(xué)習(xí)特征在圖像幀序列中執(zhí)行運動檢測的設(shè)備和方法。在本文所描述的示例中,所述設(shè)備和方法形成描述塊或幀的亮度值的學(xué)習(xí)特征。通常,所述設(shè)備和方法可關(guān)于任何輸入值形成二進(jìn)制特征,包括亮度(luminance)、色調(diào)、曝光度、色彩度、色度、飽和度、明度和光亮度(brightness)的測量。
現(xiàn)在將作為示例針對圖1所示的用于在相機(jī)處所捕獲的視頻幀序列中執(zhí)行運動檢測的設(shè)備描述本發(fā)明的各方面。
圖1是包括相機(jī)模塊101和運動檢測器115的設(shè)備的示意圖。相機(jī)模塊101包括被布置為向圖像處理器103提供幀的相機(jī)傳感器102。圖像處理器103可生成在運動檢測器和(可能地)相機(jī)流水線上或之外的其它處理單元處使用的各種圖像特性。例如,圖像處理器可收集在相機(jī)流水線的自動白平衡和自動曝光功能處使用的統(tǒng)計數(shù)據(jù)。圖像處理器被配置為提供幀的一個或更多個塊的圖像特性。例如,各個幀可被分割成16個塊的集合,圖像處理器關(guān)于各個塊生成圖像特性。
塊可以是幀的一部分或全部,任何給定塊可與同一幀的其它塊交疊或不交疊。塊可以是幀的一個或更多個像素的集合,并且可采取任何形狀。塊的像素可在幀內(nèi)鄰接或不鄰接。幀的一個或更多個像素可不屬于為幀定義的任何塊。幀的任何給定像素可屬于一個或更多個塊。
圖像處理器可被配置為針對圖像幀的一個或更多個顏色通道(例如,在相機(jī)處所捕獲的rgb圖像的情況下,針對紅色、綠色和藍(lán)色通道中的每一個)獨立地生成圖像特性。由圖像處理器提供的亮度的測量可作為顏色分量或其它圖像特性的集合來提供,以便于在運動檢測器處解釋為亮度的測量。
圖4中示出了流程圖400,流程圖400示出圖像處理器103的示例性操作。圖像處理器從相機(jī)傳感器102接收(輸入流104的)原始圖像401,并且執(zhí)行圖像的bayer空間處理402和去馬賽克403。在404,圖像處理器將原始圖像轉(zhuǎn)換為rgb圖像,在該rgb圖像上圖像處理器計算在相機(jī)流水線(未示出)的自動曝光和自動白平衡功能處使用的統(tǒng)計數(shù)據(jù)405。這些統(tǒng)計數(shù)據(jù)可被包括在提供給運動檢測器115的圖像特性108中。圖像處理器可另外執(zhí)行進(jìn)一步的rgb空間處理406,例如顏色校正。圖像處理器將rgb圖像幀轉(zhuǎn)換到y(tǒng)uv顏色空間407中以生成yuv圖像幀408,對該yuv圖像幀408可執(zhí)行yuv空間處理409(例如,對比度增強(qiáng))。所得yuv幀可根據(jù)從圖像處理器得到其輸入的后續(xù)單元(例如,編碼器106)的要求按照一個或更多個不同的縮放比例410、411來提供。在此示例中,縮放器410可輸出提供給編碼器106的幀流105以便于編碼為視頻流107。編碼器106可經(jīng)由可存儲來自相機(jī)傳感器(可能通過圖像處理器103處理)的幀數(shù)據(jù)的幀存儲部118來接收幀。在一些示例中,運動檢測器可(例如,經(jīng)由縮放器411)從圖像處理器103接收幀流。
可由圖像處理器103按照比相機(jī)傳感器所捕獲的分辨率低的分辨率來執(zhí)行圖像處理。例如,相機(jī)傳感器可以是hd傳感器,但是可按照比如說vga分辨率(640×480個像素)來執(zhí)行圖像處理。諸如vga的較低分辨率通常對于生成用于運動檢測的統(tǒng)計數(shù)據(jù)而言足夠了,并且降低了圖像處理器所需的處理能力和/或允許圖像處理以低功率來執(zhí)行。在一些示例中,由相機(jī)傳感器捕獲的圖像幀可在被提供給圖像處理器之前被縮小,而相機(jī)傳感器直接向編碼器106提供完整分辨率幀(可能經(jīng)由幀存儲部118和/或另一單元,例如將原始幀轉(zhuǎn)換為yuv幀)。圖像處理器可被配置為提供在運動檢測器處使用的描述各個幀的一個或更多個塊的圖像特性,而不是圖像幀本身。
圖1所示的相機(jī)模塊101的布置方式僅是一種可能,將理解,相機(jī)模塊的各種其它布置方式也是可能的。具體地講,編碼器106是否存在與運動檢測器115的操作無關(guān),僅出于例示性目的而包括。相機(jī)模塊101僅需要為運動檢測器提供圖像特性108,圖像特性108對運動檢測器形成指示塊處的運動的輸出而言足夠了。圖像特性108可包括一個或更多個不同類型的圖像特性,例如一個或更多個顏色通道的曝光度信息和顏色信息。在其它示例中,相機(jī)模塊101可以是在運動檢測器處使用的圖像特性108的任何其它來源(例如,模塊101可從所存儲的圖像幀推導(dǎo)圖像特性)。
圖像處理器可提供幀內(nèi)的點處的亮度的測量作為運動檢測器的輸入值。亮度的測量可表示執(zhí)行運動檢測所基于的圖像特性108。亮度的測量可按照任何合適的方式來提供。例如,亮度值可用作幀內(nèi)的點處的一個或更多個像素的亮度的測量(例如,yuv顏色空間的亮度分量),或者亮度的測量可包括一個或更多個單獨的顏色分量,各個顏色分量表示在幀內(nèi)的點處的相應(yīng)顏色分量的平均值。
下面描述可利用圖1的設(shè)備執(zhí)行的兩種不同的運動檢測技術(shù)。第一種技術(shù)使用點采樣技術(shù)來生成表示幀的塊的圖像特性的直方圖,并且這與學(xué)習(xí)直方圖進(jìn)行比較以確定該塊中是否存在運動。第二種技術(shù)使用二進(jìn)制特征來表示幀的塊的圖像特性,并且這與學(xué)習(xí)特征進(jìn)行比較以確定該塊中是否存在運動。
基于點采樣直方圖的運動檢測
數(shù)字相機(jī)的處理流水線通常使用直方圖來總結(jié)由相機(jī)傳感器的像素捕獲的參數(shù)的頻率分布,例如曝光度或顏色通道參數(shù)。直方圖將參數(shù)的可能輸入值的范圍分割成一系列條塊,各個條塊表示具有落入該條塊的相應(yīng)范圍內(nèi)的參數(shù)的像素的數(shù)量的計數(shù)。這些直方圖可由流水線的圖像處理算法使用以便執(zhí)行相機(jī)的控制功能,例如自動曝光、自動聚集和自動白平衡。相機(jī)傳感器通常將包括幾百萬像素,使用這樣的直方圖有助于以流水線算法可管理的適當(dāng)?shù)募?xì)節(jié)水平提供所捕獲的幀的特性的總結(jié)。
為了方便基于每塊的運動檢測處理(以及可能其它圖像處理功能),相機(jī)流水線可為各個塊生成表示塊內(nèi)(可能在多個幀上)的圖像參數(shù)的頻率分布的直方圖。例如,可為塊生成表示亮度的典型測量的直方圖,并且可在該塊中通過尋找指示運動的該塊的亮度的突然變化來識別運動。
然而,每塊針對參數(shù)使用有限數(shù)量的像素和/或使用窄條塊和/或使用低幀速率可導(dǎo)致為塊生成稀疏填充的直方圖,即,在直方圖分布中具有相當(dāng)大比例的空條塊和間隙的直方圖。這樣的稀疏直方圖往往是參數(shù)的基礎(chǔ)頻率分布的差質(zhì)量的表示。
現(xiàn)在將參照圖9描述高效點采樣技術(shù),其允許在沒有足夠資源來處理所捕獲的整個幀或塊的設(shè)備(例如,在相機(jī)傳感器102處)生成精確的直方圖(無論作為全分辨率幀還是隨后在圖像處理器103處下采樣)。在本示例中,點采樣是對亮度值,但是將理解,該技術(shù)可被應(yīng)用于任何圖像特性的點采樣。
在本示例中,采樣單元120被配置為在由相機(jī)傳感器捕獲的幀或者其它圖像區(qū)域的塊內(nèi)的多個點處執(zhí)行點采樣。用于采樣的點可隨機(jī)地或者偽隨機(jī)地選擇。這是圖9中的201。
采樣單元可訪問存儲在幀存儲部118處的幀數(shù)據(jù)和/或從圖像處理器103接收幀(例如,經(jīng)由縮放器411)。通常,采樣單元可被設(shè)置在設(shè)備的任何地方(作為單獨的實體或者與另一實體集成)。例如,采樣單元120可形成圖像處理器103的一部分,其被配置為提供采樣的點(或者從其推導(dǎo)的值)作為各個塊的圖像特性108,或者采樣單元120可形成運動檢測器115的一部分(例如,在特征生成單元109處)。
采樣單元可被配置為將采樣的點或者從樣本點推導(dǎo)的值提供給運動檢測器115的特征生成單元109。采樣單元可被配置為從可用幀數(shù)據(jù)計算幀的各個采樣點處的相關(guān)圖像特性(在這種情況下,亮度),例如,采樣單元可將為給定像素存儲的rgb值轉(zhuǎn)換為該像素的亮度值。
針對各個塊,采樣單元120被配置為在塊內(nèi)的選擇的點集合處對亮度值進(jìn)行采樣(例如,通過從保存在幀存儲部119處的幀數(shù)據(jù)讀取選擇的點集合處的亮度值)。這是圖9中的202。點集合可由采樣單元或者任何其它實體來選擇。對于要在運動檢測器115處以下面所述的方式執(zhí)行運動檢測的給定幀序列,所選擇的點集合對于要檢測運動的幀序列或者以其它方式比較的幀可為固定的。
點集合可針對塊偽隨機(jī)地選擇或者以其它方式選擇。例如,點集合可根據(jù)halton序列來選擇,其中塊內(nèi)的樣本點的位置由下式給出:
s(n)=(h(n+20,2),h的+20,3))(1)
其中h(n,b)是基于b的halton序列中的第n值。由于halton序列中的前面幾個值往往是相關(guān)的,所以在式1中可忽略預(yù)定義的初始數(shù)量(例如,前20)的halton序列值。使用halton序列的優(yōu)點在于,樣本點在塊內(nèi)偽隨機(jī)地分布,同時在塊上均勻地分布。這確保了為塊選擇的樣本點集合表示塊的圖像特性的良好分布的采樣。
圖8中示出了為幀801的塊803生成的偽隨機(jī)樣本點集合802的示例。點集合可按照任何合適的方式來生成,包括:在設(shè)計時選擇并存儲以便于采樣單元使用;在采樣單元的初始化時選擇;以及由采樣單元在運行時關(guān)于幀的序列的一個或更多個塊選擇。一旦為塊選擇了點集合,為相機(jī)傳感器所捕獲的幀序列中的后續(xù)幀選擇那些相同的點。對于被分割成大小相同的塊的幀,相同的點集合可用于各個塊。
樣本點可利用分?jǐn)?shù)坐標(biāo)(在諸如一些gpu的一些硬件處可支持)來選擇。樣本點可被四舍五入為最近的整數(shù),如果這導(dǎo)致生成重復(fù)的樣本點,則重復(fù)的樣本可被去除并且被另外生成的樣本點代替。
在集合中的各個點處執(zhí)行點采樣時,采樣單元可被配置為根據(jù)任何合適的采樣策略在塊的各個點處對一個或更多個像素或者像素組進(jìn)行采樣。例如,在各個點處,采樣單元可根據(jù)預(yù)定圖案對單個像素或多個像素進(jìn)行采樣(例如,采樣單元可取位于樣本點處的像素及其四個最近的像素的亮度值的平均)。
采樣單元或另一實體(例如,下面所描述的特征生成單元)可為塊形成采樣的圖像特性的表示。這是圖9中的203。例如,可形成采樣的圖像特性的直方圖,其表示塊處的圖像特性的分布。這種直方圖或者其它表示(例如,二進(jìn)制特征表示)的形成的示例在下面更詳細(xì)地描述。
為了利用亮度或者通過點采樣建立的另一圖像特性在幀序列中執(zhí)行運動檢測,被配置為使用采樣的點(或者其推導(dǎo)值)來比較序列幀之間的圖像特性的表示的特征生成單元109可被設(shè)置。在下面所描述的示例中,特征生成單元109為幀的一個或更多個塊形成圖像特性的表示(例如,直方圖);在其它示例中,這種表示可由采樣單元120形成。運動檢測邏輯110可被設(shè)置為基于特征生成單元所執(zhí)行的比較來檢測幀序列中的運動?,F(xiàn)在將描述特征生成單元和運動檢測邏輯的操作的示例。
在第一示例中,對于幀的一個或更多個塊,特征生成單元可被配置為維護(hù)描述為塊選擇的樣本點集合處的亮度值的頻率分布的直方圖804。各個塊的直方圖可在存儲器111處維護(hù),如圖1中由標(biāo)記112指示的。例如,特征生成單元可被配置為通過將為該塊的樣本點接收的亮度值分配給一系列條塊j(各個條塊表示一定范圍的亮度值)中的一個或更多個條塊來形成在給定幀的塊處采樣的亮度值的當(dāng)前直方圖
其中
每塊的樣本數(shù)nsamples可根據(jù)可用處理資源和/或直方圖的所需精度來選擇。
通過將塊的當(dāng)前直方圖與該塊的學(xué)習(xí)直方圖(表示塊的歷史頻率分布)進(jìn)行比較,可估計塊的當(dāng)前亮度值屬于歷史頻率分布的概率。
特征生成單元109被配置為維護(hù)幀的一個或更多個塊的學(xué)習(xí)直方圖,所述學(xué)習(xí)直方圖針對各個塊表示該塊的亮度隨時間的頻率分布。例如,在接收到為塊采樣的亮度值集合時,特征生成單元可按照下面所述的方式利用所接收的亮度值來更新塊的直方圖。
塊的直方圖的各個條塊可利用適合于實現(xiàn)的值來初始化。例如,對于具有256個條塊的直方圖,直方圖的各個條塊可初始被設(shè)定為:
在接收到塊的采樣的亮度值集合時,該塊的直方圖的各個條塊
learncoeff的合適的值可通過經(jīng)驗來確定。
256條塊學(xué)習(xí)直方圖然后可根據(jù)式5通過例如以下方式來維護(hù):隨著接收到各個幀,使直方圖的條塊衰減并且將特征生成單元所形成的當(dāng)前直方圖的條塊處所保持的值分配給通過learncoeff(取0與1之間的值)加權(quán)的學(xué)習(xí)直方圖的條塊:
在多個幀上,可構(gòu)建特定塊的像素值的預(yù)期分布的非參數(shù)表示,其允許捕獲復(fù)雜的多模態(tài)行為。
一旦特征生成單元形成了塊的當(dāng)前直方圖,可在運動檢測邏輯110處將它與學(xué)習(xí)直方圖進(jìn)行比較以便獲得兩個直方圖之間的相似度的測量。當(dāng)前直方圖和學(xué)習(xí)直方圖可利用陸地移動距離(emd)或者wasserstein尺度來比較。此選擇的優(yōu)點在于計算簡單。
對于要比較的兩個直方圖,可首先例如通過下式將它們歸一化:
并且對于
然后可在運動檢測邏輯110處利用陸地移動距離(emd)來形成相似度的測量,這將被寬松地稱作給定學(xué)習(xí)亮度直方圖,當(dāng)前亮度直方圖表示前景運動的概率pforeground:
pforeground=emd(hleanned,hcurrent)(8)
其中emd(a,b)是兩個歸一化的直方圖分布之間的陸地移動距離。
這樣,可針對各個塊從該塊的相應(yīng)當(dāng)前直方圖和學(xué)習(xí)直方圖形成運動概率pforeground。運動檢測邏輯然后可就塊將被分類為具有運動(前景,fi=1)還是沒有運動(背景,fi=0)形成決策。一個方法是將亮度值屬于為該塊維護(hù)的直方圖分布(即,是背景)的概率與預(yù)定義或自適應(yīng)閾值t進(jìn)行比較:
因此,如果兩個直方圖足夠相似,則塊被分類為背景(無運動);否則,塊可被分類為前景(運動)??砂凑杖魏畏绞酱_定合適的閾值,包括:通過經(jīng)驗來確定;從幀序列推導(dǎo)(例如,作為在圖像處理器103處生成的一個或更多個統(tǒng)計數(shù)據(jù));以及按照任何合適的方式自適應(yīng)地計算。
對于包含相對恒定的像素值的塊,上述方法可良好地作用。然而,使用自適應(yīng)閾值可提供更好的性能。例如,對于包含值由于動態(tài)圖像特征(本身不表示場景中的總運動)而頻繁地變化的像素的塊,適當(dāng)?shù)氖强墒褂酶叩拈撝狄员苊忮e誤肯定。像素亮度的這種變化不僅可由于場景的變化(例如,在風(fēng)中移動的樹葉)而出現(xiàn),而且還可來自于傳感器噪聲。
自適應(yīng)閾值可從歷史每塊概率
其中
歷史每塊概率基于塊的歷史點樣本提供塊內(nèi)的預(yù)期變化量(或預(yù)期運動)的估計。自適應(yīng)閾值tadaptive然后可形成為:
其中tuser是預(yù)定義的參數(shù),其可例如由用戶通過經(jīng)驗來選擇或者依據(jù)一個或更多個算法來自動地確定以實現(xiàn)系統(tǒng)的期望性能。
使用這種自適應(yīng)閾值可意味著在高背景運動的區(qū)域中,由于自適應(yīng)閾值在這些區(qū)域中增加,算法變得對運動不那么敏感。然而通常,由傳感器噪聲或小場景變化導(dǎo)致的背景運動預(yù)期遠(yuǎn)小于場景中的前景運動。
基于二進(jìn)制特征的運動檢測
現(xiàn)在將描述檢測塊的圖像特性的變化(可指示該塊中的運動)的另選方法。在本示例中,該另選方法同樣使用亮度作為圖像特性,但是通常,可使用任何合適的圖像特性以適合于特定實現(xiàn)方式。代替直方圖或者除了直方圖之外,本示例中所描述的另選方法使用二進(jìn)制特征來表示塊的內(nèi)容(例如,亮度)。更一般地,二進(jìn)制特征可以是為塊形成的任何類型的當(dāng)前特征,該當(dāng)前特征的值不限于是二進(jìn)制比特。
已提出了使用圖像參數(shù)的直方圖作為運動檢測的基礎(chǔ)的另選方式。例如,m.
再參照圖1,如所指出的,運動檢測器包括特征生成單元109和運動檢測邏輯110。在使用二進(jìn)制特征運動檢測時,特征生成單元109維護(hù)塊的學(xué)習(xí)特征,運動檢測邏輯110基于塊的學(xué)習(xí)特征來形成塊的運動輸出,如下面將作為示例描述的。特征生成單元和運動檢測邏輯可按照任何方式來操作,包括串行地或者同時/并行地。特征生成單元和運動檢測邏輯可并行地操作,因為在特征生成單元利用所接收的圖像特性更新學(xué)習(xí)特征之前運動檢測邏輯可使用塊的學(xué)習(xí)特征。運動檢測器115可被有利地配置為利用上述點采樣捕獲各個塊的圖像特性(例如,亮度)值來維護(hù)幀的一個或更多個塊的學(xué)習(xí)特征;在其它示例中,運動檢測器可按照任何其它方式利用從幀的一個或更多個塊采樣或者關(guān)于幀的一個或更多個塊形成的圖像特性來操作。
并非為各個塊生成直方圖112,特征生成單元109可被配置為從樣本點集合形成各個塊的當(dāng)前二進(jìn)制特征,并且還為各個塊維護(hù)表示塊的二進(jìn)制特征的歷史內(nèi)容的學(xué)習(xí)特征。學(xué)習(xí)特征113可在存儲器111處保持。
采樣單元120可被配置為按照任何合適的方式來執(zhí)行點采樣,包括按照上面在“基于點采樣直方圖的運動檢測”部分中描述的任何方式。例如,采樣單元可被配置為對根據(jù)halton序列選擇的塊的樣本點的偽隨機(jī)選擇進(jìn)行采樣(參見上式1)。在其它示例中,另一實體可執(zhí)行點采樣(按照任何合適的方式,包括按照本文中針對采樣單元描述的任何方式)并且將值(或者多對值的比較,如下所述)傳遞給特征生成單元。
圖6示出了流程圖,該流程圖示出運動檢測器115的操作的示例。在(例如,從相機(jī)模塊101)接收到塊1101的點樣本時,特征生成單元109和運動檢測邏輯110執(zhí)行其相應(yīng)的功能以便分別維護(hù)塊的學(xué)習(xí)特征和形成塊的運動輸出。
特征生成單元可被配置為比較多對樣本點處的值,使得針對每一點對形成二進(jìn)制值。這是圖6中的1102。二進(jìn)制1可用于指示該對中的第一點具有比第二點更大的值,二進(jìn)制0可用于指示該對中的第二點具有比第一點更大的值。例如,對于第j點對,二進(jìn)制值sj可形成為:
其中
各對點可從塊的樣本點集合(偽)隨機(jī)地選擇,或者根據(jù)某種預(yù)定義的算法來選擇。如果樣本點本身是(偽)隨機(jī)集合,則一對中的哪一點被標(biāo)記為第一點,哪一點被標(biāo)記為該對的第二點無關(guān)緊要??蓤?zhí)行樣本點的選擇以使得各個樣本點屬于至多一對。在一些示例中樣本點可屬于不止一對:這可導(dǎo)致性能受影響,但是通常將減少存儲器訪問次數(shù)。塊的每一個樣本點可被分配給至少一對??筛鶕?jù)式13生成滿足nsamples=2npairs的二進(jìn)制值集合。幀的各個塊可共享相同的樣本點集合(可能相同的樣本點對集合)。一旦為幀的塊定義了樣本點對集合,則對于后續(xù)幀的該塊使用相同的樣本點對集合,以允許二進(jìn)制特征與學(xué)習(xí)特征的比較。
通過形成表示塊的多對點中的每一對的亮度值的比較結(jié)果的二進(jìn)制值,可為塊構(gòu)造表示塊的亮度值的采樣的二進(jìn)制特征。這是圖6中的1103?;卺槍閴K定義的樣本對集合形成的二進(jìn)制值而形成該塊的二進(jìn)制特征。此處理示出于圖2中,圖2示出了用于形成二進(jìn)制特征902的塊901的樣本點對集合。各對的二進(jìn)制比較的結(jié)果表示二進(jìn)制特征902的比特。在二進(jìn)制特征902中,黑條表示“1”,白條表示“0”。
特征生成單元可被配置為維護(hù)存儲器111處的學(xué)習(xí)特征113,其表示各點對的預(yù)期值。學(xué)習(xí)特征包括一系列值,各個值對應(yīng)于塊的點對。例如,學(xué)習(xí)特征的各個值可落在0和1之間。接近0的值將指示相應(yīng)對將預(yù)期具有值0;接近1的值將指示相應(yīng)對將預(yù)期具有值1。常常在一和零之間相等地變化的對將趨向于學(xué)習(xí)值0.5。具有穩(wěn)定像素亮度值的塊的學(xué)習(xí)特征的大多數(shù)值將接近于一或零。像素亮度值規(guī)則地變化的塊的學(xué)習(xí)特征的值將散布于大得多的范圍上。在其它示例中,學(xué)習(xí)特征的值可落在任何其它合適的范圍內(nèi)。
學(xué)習(xí)特征113的值可由特征生成單元針對塊根據(jù)下式來維護(hù):
其中
學(xué)習(xí)特征的各個值可被初始化為:
圖3示出學(xué)習(xí)特征的兩個示例。學(xué)習(xí)特征301表示具有穩(wěn)定亮度內(nèi)容的塊,其值大部分落在0或1附近(即,該學(xué)習(xí)特征指示具有高置信度的點對的預(yù)期值)。學(xué)習(xí)特征302表示具有不穩(wěn)定亮度內(nèi)容的塊,其許多值落在0和1之間(即,該學(xué)習(xí)特征指示具有低置信度的點對的預(yù)期值)。
在運動檢測邏輯110處可使用塊的學(xué)習(xí)特征113通過將塊的當(dāng)前二進(jìn)制特征與塊的學(xué)習(xí)特征進(jìn)行比較來形成給定塊包括運動的概率的測量。這可在利用當(dāng)前二進(jìn)制特征更新學(xué)習(xí)特征之前進(jìn)行。如本文所用,術(shù)語概率可不是取介于0和1之間的值的真實概率,而是所接收的二進(jìn)制特征(或者先前部分中的一個或更多個圖像特性)屬于學(xué)習(xí)分布(例如,直方圖或?qū)W習(xí)特征)的可能性的任何測量。可在運動檢測邏輯處例如根據(jù)下式利用點對的學(xué)習(xí)值和當(dāng)前值的絕對差之和來計算概率的合適測量:
這是圖6中的1108??墒褂昧磉x測量,例如平方差之和。優(yōu)選地,計算所使用的測量以使得各個點對被獨立地評估并且對之間不存在順序關(guān)系。
運動檢測邏輯110可使用關(guān)于塊計算的概率pforeground以便確定該塊是否可能表示運動。概率可以是給定關(guān)于塊形成的學(xué)習(xí)特征,可預(yù)期針對該塊形成的當(dāng)前二進(jìn)制特征的可能性的測量。運動檢測邏輯可就概率是否指示塊包含運動(即,表示所捕獲的場景中的前景)形成二進(jìn)制決策,前景運動的決策為fi=1,塊表示背景(無運動)的決策為fi=0。一個方法是將所計算的概率與預(yù)定義或自適應(yīng)閾值t進(jìn)行比較,如上面關(guān)于式10描述的。
可按照任何方式來確定合適的閾值,包括:通過經(jīng)驗來確定;從幀序列推導(dǎo)(例如,作為在圖像處理器處生成的一個或更多個統(tǒng)計數(shù)據(jù));以及按照任何合適的方式自適應(yīng)地計算。例如,可根據(jù)上面的式11和12來確定合適的自適應(yīng)閾值,使得從歷史每塊概率
這是圖6中的1109。學(xué)習(xí)系數(shù)可與式6和/或11中所使用的相同。歷史每塊概率基于塊的歷史點樣本提供塊內(nèi)的預(yù)期變化量或預(yù)期運動的估計。自適應(yīng)閾值tadaptive然后可形成為:
其中tuser是預(yù)定義的參數(shù),其可例如由用戶通過經(jīng)驗來選擇或者依據(jù)一個或更多個算法來自動地確定以實現(xiàn)系統(tǒng)的期望性能。這是圖6中的1110。
這樣,可針對幀的各個塊就點采樣的亮度值是否指示幀中存在運動形成二進(jìn)制指示:
其中如果概率超過自適應(yīng)閾值,則運動檢測邏輯將塊分類為包括運動(fi=1),如果概率沒有超過自適應(yīng)閾值,則分類為不包括運動(fi=0)。這是圖6中的1111。
無論使用基于點采樣直方圖的運動檢測還是基于二進(jìn)制特征的運動檢測,通過就幀的各個塊是否被認(rèn)為表示運動形成二進(jìn)制決策,運動檢測邏輯110可在存儲器111中存儲運動矩陣114,該運動矩陣114表示被確定存在于所接收的幀中的塊方式運動。這可以是針對塊1112的運動輸出。圖7中針對幀701示出了所存儲的矩陣114處保持的信息的示例。幀被分割成16個塊,運動矩陣114指示幀中的哪些塊表示運動:指示運動的塊(例如,703)在圖中利用“m”來標(biāo)記,不指示運動的塊(例如,702)在圖中不用“m”來標(biāo)記。圖中的這些標(biāo)記僅是例示性的;通常,可使用確定塊處是否存在運動的任何指示。運動矩陣114可按照任何合適的方式來表示幀的一個或更多個塊的運動信息,包括例如作為二進(jìn)制串、值陣列、或者作為被編碼為幀或者與幀本身關(guān)聯(lián)的信息。運動矩陣可以是或可以不是值的矩形陣列。
在本文所描述的示例中,決策邏輯116可被配置為使用在運動檢測器115處針對幀的一個或更多個塊生成的運動信息(例如,運動矩陣)來形成幀的運動輸出117。例如,運動檢測邏輯116可被配置為當(dāng)在落在所定義的關(guān)注區(qū)域內(nèi)的一個或更多個塊中檢測到運動時在幀中識別出運動,或者當(dāng)預(yù)定鄰接數(shù)量的塊指示運動時可識別出運動。幀的運動輸出117可采取任何合適的形式,包括作為二進(jìn)制指示或者幀中觀察到的運動程度的某種測量(例如,運動檢測器115識別為代表運動的塊的數(shù)量或比例)。
決策邏輯還可接收(例如,與運動矩陣一起或者包括在運動矩陣中)給定由特征生成單元針對塊形成的直方圖所表示的頻率分布,那些塊的亮度值(例如,在運動檢測邏輯處形成)出現(xiàn)的可能性的測量。這可允許決策邏輯進(jìn)一步解釋為幀形成的運動矩陣。例如,決策邏輯可被配置為檢查運動矩陣中沒有指示運動的一個或更多個塊是否在其相應(yīng)幀中被運動矩陣中指示運動的塊環(huán)繞,并且如果是這樣,則如果其相應(yīng)的可能性的測量落在由運動檢測邏輯確定的預(yù)定義或自適應(yīng)閾值附近,將那些被環(huán)繞的塊也解釋為指示運動。
根據(jù)本文所描述的原理配置的運動檢測器115可在低功率處理器處具體實現(xiàn)。由運動檢測器或者關(guān)聯(lián)的決策邏輯117生成的塊或幀的運動輸出(例如,117)可被布置為喚醒另一處理器(例如,編碼器106)。此特定示例使得能夠以節(jié)能方式實現(xiàn)運動激活記錄。
如本文所述的點采樣、二進(jìn)制特征和學(xué)習(xí)特征的使用可與任何其它合適的圖像特性一起采用,不限于使用亮度值。例如,所述技術(shù)可與用于塊的多對值一起使用,其中所述值是圖像特性(例如,亮度、顏色的測量等)的分散的測量,例如標(biāo)準(zhǔn)偏差或者方差。
幀包括多個像素,各個像素具有關(guān)聯(lián)的圖像特性。本文中使用術(shù)語像素來表示關(guān)于其計算、采樣、感測或者以其它方式形成圖像特性的任何類型的圖像元素。像素不限于與數(shù)字相機(jī)的感測元件(例如,紅色、綠色或藍(lán)色感測元件或其集合)具有一對一對應(yīng)關(guān)系。如本文所用,術(shù)語隨機(jī)涵蓋真實隨機(jī)和偽隨機(jī)分布、選擇或值二者;術(shù)語偽隨機(jī)涵蓋真實隨機(jī)和偽隨機(jī)分布、選擇或值二者。
圖1的相機(jī)模塊和運動檢測器被示出為包括若干功能塊。這僅是示意性的,并非意在限定這些實體的不同邏輯元件之間的嚴(yán)格劃分。各個功能塊可按照任何合適的方式設(shè)置。將理解,本文中被描述為由相機(jī)模塊或運動檢測器的任何實體形成的中間值無需由相機(jī)模塊或運動檢測器在任何點物理地生成,可僅僅表示方便地描述由相機(jī)模塊或運動檢測器在其輸入和輸出之間執(zhí)行的處理的邏輯值。
圖4和圖6的流程圖僅是示意性的。那些流程圖中所示的示例中的步驟的間距和相對位置不應(yīng)被當(dāng)作以絕對方式或相對于其它步驟指示各個步驟發(fā)生的精確時間。流程圖僅僅示出根據(jù)本文所描述的示例可執(zhí)行步驟的示例性順序。
通常,上述任何功能、方法、技術(shù)或組件可實現(xiàn)于軟件、固件、硬件(例如,固定邏輯電路)或其組合中。本文中可使用術(shù)語“模塊”、“功能”、“組件”、“元件”、“單元”、“塊”和“邏輯”來總體地表示軟件、固件、硬件或其任何組合。在軟件實現(xiàn)方式的情況下,模塊、功能、組件、元件、單元、塊或邏輯表示當(dāng)在處理器上執(zhí)行那時執(zhí)行所指定的任務(wù)的程序代碼。本文所述的算法和方法可由執(zhí)行代碼的一個或更多個處理器來執(zhí)行,所述代碼使得處理器執(zhí)行所述算法/方法。計算機(jī)可讀存儲介質(zhì)的示例包括隨機(jī)存取存儲器(ram)、只讀存儲器(rom)、光盤、快閃存儲器、硬盤存儲器以及可使用磁、光以及其它技術(shù)來存儲指令或其它數(shù)據(jù)并且可由機(jī)器訪問的其它存儲器裝置。
如本文所用,術(shù)語計算機(jī)程序代碼和計算機(jī)可讀指令表示用于處理器的任何類型的可執(zhí)行代碼,包括以機(jī)器語言表示的代碼、解釋性語言或腳本語言。可執(zhí)行代碼包括二進(jìn)制代碼、機(jī)器代碼、字節(jié)代碼、定義集成電路的代碼(例如,硬件描述語言或網(wǎng)表)以及以諸如c、java或opencl的編程語言代碼表示的代碼??蓤?zhí)行代碼可以是例如任何類型的軟件、固件、腳本、模塊或庫,其在虛擬機(jī)或其它軟件環(huán)境處被適當(dāng)?shù)貓?zhí)行、處理、解釋、編譯、執(zhí)行時,使得支持可執(zhí)行代碼的計算機(jī)系統(tǒng)的處理器執(zhí)行代碼所指定的任務(wù)。
處理器、計算機(jī)或計算機(jī)系統(tǒng)可以是任何類型的裝置、機(jī)器或?qū)S秒娐?、或者其集合或一部分,其具有處理能力以使得它可?zhí)行指令。處理器可以是任何類型的通用或?qū)S锰幚砥?,例如cpu、gpu、系統(tǒng)芯片、狀態(tài)機(jī)、媒體處理器、專用集成電路(asic)、可編程邏輯陣列、現(xiàn)場可編程門陣列(fpga)等。計算機(jī)或計算機(jī)系統(tǒng)可包括一個或更多個處理器。
還旨在涵蓋定義如本文所述的硬件的配置的軟件,例如hdl(硬件描述語言)軟件,其用于設(shè)計集成電路,或者用于配置可編程芯片,以執(zhí)行期望的功能。即,可提供一種以集成電路定義數(shù)據(jù)集的形式編碼有計算機(jī)可讀程序代碼的計算機(jī)可讀存儲介質(zhì),所述集成電路定義數(shù)據(jù)集在集成電路制造系統(tǒng)中被處理時配置所述系統(tǒng)制造被配置為執(zhí)行本文所述的任何方法的數(shù)據(jù)處理裝置,或者制造包括本文所述的任何設(shè)備的數(shù)據(jù)處理裝置。集成電路定義數(shù)據(jù)集可以是例如集成電路描述。
集成電路定義數(shù)據(jù)集可為計算機(jī)代碼的形式,例如作為網(wǎng)表、用于配置可編程芯片的代碼、作為在任何級別定義集成電路的硬件描述語言,包括作為寄存器傳送級(rtl)代碼、作為高級電路表示(例如,verilog或vhdl)以及作為低級電路表示(例如,oasis(rtm)和gdsii)。邏輯上定義集成電路的高級表示(例如,rtl)可在被配置用于在包括電路元件的定義以及組合那些元件的規(guī)則的軟件環(huán)境的上下文中生成集成電路的制造定義的計算機(jī)系統(tǒng)處被處理以便生成由所述表示如此定義的集成電路的制造定義。軟件在計算機(jī)系統(tǒng)處執(zhí)行以定義機(jī)器時通常是這樣,為了使被配置用于生成集成電路的制造定義的計算機(jī)系統(tǒng)執(zhí)行定義集成電路的代碼,可能需要一個或更多個中間用戶步驟(例如,提供命令、變量等)以生成該集成電路的制造定義。
現(xiàn)在將參照圖5描述在集成電路制造系統(tǒng)處處理集成電路定義數(shù)據(jù)集以配置所述系統(tǒng)制造數(shù)據(jù)處理裝置的示例。
圖5示出包括布局處理系統(tǒng)1004和集成電路生成系統(tǒng)1006的集成電路(ic)制造系統(tǒng)1002的示例。ic制造系統(tǒng)1002被配置為接收ic定義數(shù)據(jù)集(例如,定義如本文的任何示例中所描述的數(shù)據(jù)處理裝置),處理ic定義數(shù)據(jù)集,并且根據(jù)ic定義數(shù)據(jù)集來生成ic(例如,具體實現(xiàn)如本文的任何示例中所描述的數(shù)據(jù)處理裝置)。ic定義數(shù)據(jù)集的處理配置ic制造系統(tǒng)1002制造具體實現(xiàn)如本文的任何示例中所描述的數(shù)據(jù)處理裝置的集成電路。
布局處理系統(tǒng)1004被配置為接收并處理ic定義數(shù)據(jù)集以確定電路布局。從ic定義數(shù)據(jù)集確定電路布局的方法是本領(lǐng)域已知的,例如可涉及合成rtl代碼以確定要生成的電路的門級表示(例如,從邏輯組件(例如,nand、nor、and、or、mux和flip-flop組件)方面)。可從電路的門級表示通過確定邏輯組件的位置信息來確定電路布局。這可自動地進(jìn)行或者通過用戶參與來進(jìn)行,以便優(yōu)化電路布局。當(dāng)布局處理系統(tǒng)1004確定了電路布局時,它可向ic生成系統(tǒng)1006輸出電路布局定義。電路布局定義可以是例如電路布局描述。
ic生成系統(tǒng)1006根據(jù)電路布局定義來生成ic,如本領(lǐng)域已知的。例如,ic生成系統(tǒng)1006可實現(xiàn)半導(dǎo)體裝置制造工藝以生成ic,這可涉及在由半導(dǎo)體材料制成的晶圓上逐漸形成電子電路的多步的照相平版印刷和化學(xué)處理步驟序列。電路布局定義可為掩模的形式,該掩模可用在用于根據(jù)電路定義生成ic的平版印刷工藝中。另選地,提供給ic生成系統(tǒng)1006的電路布局定義可為計算機(jī)可讀代碼的形式,ic生成系統(tǒng)1006可使用其來形成用于生成ic的合適掩模。
由ic制造系統(tǒng)1002執(zhí)行的不同處理可全部在一個位置實現(xiàn)(例如,由一方實現(xiàn))。另選地,ic制造系統(tǒng)1002可以是分布式系統(tǒng),使得一些處理可在不同位置處執(zhí)行,并且可由不同方執(zhí)行。例如,一些階段:(i)合成表示ic定義數(shù)據(jù)集的rtl代碼以形成要生成的電路的門級表示、(ii)基于門級表示來生成電路布局、(iii)根據(jù)電路布局來形成掩模以及(iv)利用該掩模制造集成電路,可在不同位置執(zhí)行和/或由不同方執(zhí)行。
在其它示例中,在集成電路制造系統(tǒng)處處理集成電路定義數(shù)據(jù)集可配置所述系統(tǒng)制造數(shù)據(jù)處理裝置,而無需處理ic定義數(shù)據(jù)集以生成電路布局。例如,集成電路定義數(shù)據(jù)集可定義可重配置處理器(例如,fpga)的配置,并且處理該數(shù)據(jù)集可配置ic制造系統(tǒng)生成具有該定義的配置的可重配置處理器(例如,通過將配置數(shù)據(jù)加載到fpga)。
在一些實施方式中,集成電路制造定義數(shù)據(jù)集當(dāng)在集成電路制造系統(tǒng)中被處理時可使得集成電路制造系統(tǒng)生成如本文所述的裝置。例如,通過集成電路制造定義數(shù)據(jù)集按照上面關(guān)于圖5所描述的方式配置集成電路制造系統(tǒng)可使得如本文所述的裝置被制造。
在一些示例中,集成電路定義數(shù)據(jù)集可包括在數(shù)據(jù)集處定義的硬件上運行或者與數(shù)據(jù)集處定義的硬件組合的軟件。在圖5所示的示例中,ic生成系統(tǒng)還可由集成電路定義數(shù)據(jù)集配置,以在制造集成電路時根據(jù)集成電路定義數(shù)據(jù)集處定義的程序代碼將固件加載到集成電路上,或者向程序代碼提供集成電路以隨集成電路一起使用。
申請人由此孤立地公開了本文所述的各個單獨的特征以及兩個或更多個這些特征的任何組合,使得這些特征或組合能夠依據(jù)本領(lǐng)域技術(shù)人員的公知常識基于本說明書作為整體來實現(xiàn),而不管這些特征或特征的組合是否解決本文所公開的任何問題。鑒于以上描述,對于本領(lǐng)域技術(shù)人員而言將顯而易見的是,在本發(fā)明的范圍內(nèi)可進(jìn)行各種修改。
在附錄a的編號段落中從特征的示例性組合方面描述本公開的各方面。
附錄a
1.一種用于在幀序列中檢測運動的數(shù)據(jù)處理裝置,各個幀包括一個或更多個像素塊,所述數(shù)據(jù)處理裝置包括:
采樣單元,其被配置為確定塊的樣本點集合處的圖像特性;
特征生成單元,其被配置為形成所述塊的當(dāng)前特征,所述當(dāng)前特征具有從所述樣本點推導(dǎo)的多個值;以及
運動檢測邏輯,其被配置為通過將塊的當(dāng)前特征與表示所述塊的歷史特征值的學(xué)習(xí)特征進(jìn)行比較來生成所述塊的運動輸出。
2.根據(jù)段落1所述的數(shù)據(jù)處理裝置,其中,所述特征生成單元被配置為:比較所述集合中的多對樣本點的圖像特性,各個比較是相應(yīng)對的樣本點之間的比較;并且形成所述塊的當(dāng)前特征,使得各個值表示一對樣本點的所述比較的結(jié)果。
3.根據(jù)段落2所述的數(shù)據(jù)處理裝置,其中,所述學(xué)習(xí)特征表示所述塊的多對樣本點的歷史特征值。
4.根據(jù)段落3所述的數(shù)據(jù)處理裝置,其中,關(guān)于一對樣本點形成的當(dāng)前特征的各個值在表示該對樣本點的歷史值的學(xué)習(xí)特征中具有對應(yīng)值。
5.根據(jù)段落2、3或4所述的數(shù)據(jù)處理裝置,其中,所述當(dāng)前特征的各個值包括比特作為由運動檢測邏輯針對相應(yīng)一對樣本點的所述比較的結(jié)果的二進(jìn)制表示。
6.根據(jù)段落2至5中任一項所述的數(shù)據(jù)處理裝置,其中,所述特征生成單元被配置為從所述塊的樣本點集合隨機(jī)地選擇各對點。
7.根據(jù)段落2至6中任一項所述的數(shù)據(jù)處理裝置,其中,所述特征生成單元被配置為針對當(dāng)前特征的各個值,利用二進(jìn)制值來表示所述比較的結(jié)果,所述二進(jìn)制值指示該對樣本點的圖像特性中的哪一個值較大。
8.根據(jù)段落2至7中任一項所述的數(shù)據(jù)處理裝置,其中,所述學(xué)習(xí)特征的各個值處的歷史值是由特征生成單元針對所述塊的相應(yīng)一對樣本點的所述比較結(jié)果在多個幀上的加權(quán)平均。
9.根據(jù)段落1所述的數(shù)據(jù)處理裝置,其中,所述當(dāng)前特征是從樣本點推導(dǎo)的圖像特性直方圖,其中所述多個值中的各個值對應(yīng)于限定預(yù)定義的范圍的條塊并且包括具有落入該條塊內(nèi)的圖像特性的采樣點的數(shù)量的計數(shù)。
10.根據(jù)段落9所述的數(shù)據(jù)處理裝置,其中,所述學(xué)習(xí)特征表示所述塊的歷史圖像特性直方圖。
11.根據(jù)段落10所述的數(shù)據(jù)處理裝置,其中,所述當(dāng)前特征的各個條塊在具有該條塊的所述預(yù)定義的范圍的歷史值的學(xué)習(xí)特征中具有對應(yīng)條塊。
12.根據(jù)段落9、10或11所述的數(shù)據(jù)處理裝置,其中,所述學(xué)習(xí)特征的各個條塊處的歷史值是針對所述塊具有落入該條塊內(nèi)的圖像特性的采樣點的數(shù)量的計數(shù)在多個幀上的加權(quán)平均。
13.根據(jù)任何前述段落所述的數(shù)據(jù)處理裝置,其中,所述序列的各個幀包括相同的一個或更多個像素塊。
14.根據(jù)任何前述段落所述的數(shù)據(jù)處理裝置,其中,所述采樣單元、特征生成單元和運動檢測邏輯被配置為關(guān)于序列的各個幀的多個塊執(zhí)行其相應(yīng)的功能,特征生成單元被配置為維護(hù)各個塊的學(xué)習(xí)特征。
15.根據(jù)任何前述段落所述的數(shù)據(jù)處理裝置,其中,所述采樣單元被配置為依據(jù)位于采樣點處的一個或更多個像素的像素值來識別各個圖像特性。
16.根據(jù)任何前述段落所述的數(shù)據(jù)處理裝置,其中,所述采樣單元被配置為隨機(jī)地生成所述塊的樣本點集合,在幀序列上所述樣本點集合對于所述塊是固定的。
17.根據(jù)任何前述段落所述的數(shù)據(jù)處理裝置,其中,所述采樣單元被配置為根據(jù)偽隨機(jī)halton序列來隨機(jī)地生成所述塊的樣本點集合。
18.根據(jù)任何前述段落所述的數(shù)據(jù)處理裝置,其中,所述特征生成單元包括采樣單元。
19.根據(jù)任何前述段落所述的數(shù)據(jù)處理裝置,其中,所述特征生成單元被配置為依據(jù)在所述序列的多個幀上接收的所述塊的樣本點來維護(hù)所述塊的學(xué)習(xí)特征。
20.根據(jù)任何前述段落所述的數(shù)據(jù)處理裝置,其中,所述特征生成單元被配置為通過在接收到所述序列的幀時使其多個值衰減并且將當(dāng)前特征的值分配給學(xué)習(xí)特征的對應(yīng)值來維護(hù)所述塊的所述學(xué)習(xí)特征。
21.根據(jù)段落20所述的數(shù)據(jù)處理裝置,其中,所述特征生成單元被配置為根據(jù)預(yù)定義的衰減因子來使學(xué)習(xí)特征的值衰減。
22.根據(jù)段落20或21所述的數(shù)據(jù)處理裝置,其中,所述特征生成單元被配置為在將當(dāng)前特征的值分配給學(xué)習(xí)特征的值之前根據(jù)預(yù)定義的加權(quán)因子對當(dāng)前特征的值進(jìn)行加權(quán)。
23.根據(jù)任何前述段落所述的數(shù)據(jù)處理裝置,其中,所述運動檢測邏輯被配置為通過計算當(dāng)前特征的值與學(xué)習(xí)特征的對應(yīng)值之差的測量來將針對所述塊形成的當(dāng)前特征與所述塊的學(xué)習(xí)特征進(jìn)行比較。
24.根據(jù)任何前述段落所述的數(shù)據(jù)處理裝置,其中,由所述運動檢測邏輯執(zhí)行的所述比較包括基于所述差的測量就所述當(dāng)前特征是否基于所述塊的所述學(xué)習(xí)特征的歷史值被預(yù)期在預(yù)定義或自適應(yīng)閾值內(nèi)形成估計。
25.根據(jù)段落24所述的數(shù)據(jù)處理裝置,其中,所述運動檢測邏輯被配置為如果所述估計超過所述預(yù)定義或自適應(yīng)閾值,則生成運動輸出以指示所述塊處的運動。
26.根據(jù)段落24或25所述的數(shù)據(jù)處理裝置,其中,所述運動檢測邏輯被配置為維護(hù)所述塊的預(yù)期變化程度的估計,并且依據(jù)該估計,為所述塊形成自適應(yīng)閾值。
27.根據(jù)段落26所述的數(shù)據(jù)處理裝置,其中,所述運動檢測邏輯被配置為通過在接收到幀時依據(jù)針對所述幀的所述塊形成的當(dāng)前特征與針對所述塊維護(hù)的學(xué)習(xí)特征之間的相似度的測量更新所述塊的預(yù)期變化程度的所述估計來維護(hù)所述估計。
28.根據(jù)任何前述段落所述的數(shù)據(jù)處理裝置,其中,所述運動輸出是運動的二進(jìn)制指示,其標(biāo)識由運動檢測邏輯執(zhí)行的比較的結(jié)果是否指示所述塊中的運動。
29.根據(jù)任何前述段落所述的數(shù)據(jù)處理裝置,其中,各個塊包括幀的一個或更多個像素。
30.根據(jù)任何前述段落所述的數(shù)據(jù)處理裝置,該數(shù)據(jù)處理裝置還包括決策邏輯,該決策邏輯被配置為基于由運動檢測邏輯關(guān)于幀的所述塊生成的所述一個或更多個運動輸出來生成該幀的運動的指示。
31.一種在幀序列中檢測運動的方法,各個幀包括一個或更多個像素塊,所述方法包括以下步驟:
識別塊的樣本點集合處的圖像特性;
形成所述塊的當(dāng)前特征,所述當(dāng)前特征具有從所述樣本點推導(dǎo)的多個值;以及通過將塊的當(dāng)前特征與具有表示所述塊的歷史特征值的多個值的學(xué)習(xí)特征進(jìn)行比較來生成所述塊的運動輸出。
32.根據(jù)段落31所述的方法,該方法還包括以下步驟:
從所述塊的樣本點集合形成多對樣本點;以及
針對各個對,比較該對樣本點的圖像特性,
其中,當(dāng)前特征的所述多個值各自表示一對樣本點的所述比較的結(jié)果。
33.根據(jù)段落32所述的方法,其中,所述學(xué)習(xí)特征表示所述塊的多對樣本點的歷史特征值。
34.根據(jù)段落33所述的方法,其中,關(guān)于一對樣本點形成的當(dāng)前特征的各個值在表示該對樣本點的歷史值的學(xué)習(xí)特征中具有對應(yīng)值。
35.根據(jù)段落32、33或34所述的方法,其中,所述當(dāng)前特征的各個值包括比特作為由運動檢測邏輯針對相應(yīng)一對樣本點的所述比較的結(jié)果的二進(jìn)制表示。
36.根據(jù)段落32至35中任一項所述的方法,其中,形成多對樣本點的步驟包括從所述塊的樣本點集合隨機(jī)地選擇各對點。
37.根據(jù)段落32至36中任一項所述的方法,其中,形成所述塊的當(dāng)前特征的步驟包括針對當(dāng)前特征的各個值,利用二進(jìn)制值來表示所述比較的結(jié)果,所述二進(jìn)制值指示該對樣本點的圖像特性中的哪一個值較大。
38.根據(jù)段落32至37中任一項所述的方法,該方法還包括維護(hù)學(xué)習(xí)特征,使得所述學(xué)習(xí)特征的各個值處的歷史值是針對所述塊的相應(yīng)一對樣本點的所述比較結(jié)果在多個幀上的加權(quán)平均。
39.根據(jù)段落31所述的方法,其中,形成所述塊的當(dāng)前特征的步驟包括從樣本點推導(dǎo)圖像特性直方圖,其中所述多個值中的各個值對應(yīng)于限定預(yù)定義的范圍的條塊并且包括具有落入該條塊內(nèi)的圖像特性的采樣點的數(shù)量的計數(shù)。
40.根據(jù)段落39所述的方法,其中,所述學(xué)習(xí)特征表示所述塊的歷史圖像特性直方圖。
41.根據(jù)段落40所述的方法,其中,當(dāng)前特征的各個條塊在具有該條塊的所述預(yù)定義的范圍的歷史值的學(xué)習(xí)特征中具有對應(yīng)條塊。
42.根據(jù)段落40或41所述的方法,該方法還包括維護(hù)學(xué)習(xí)特征,使得所述學(xué)習(xí)特征的各個條塊處的歷史值是針對所述塊具有落入該條塊內(nèi)的圖像特性的采樣點的數(shù)量的計數(shù)在多個幀上的加權(quán)平均。
43.根據(jù)段落31至42中任一項所述的方法,該方法還包括隨機(jī)地生成所述塊的樣本點集合,在幀序列上所述樣本點集合對于所述塊是固定的。
44.根據(jù)段落31至43中任一項所述的方法,該方法還包括依據(jù)在所述序列的多個幀上接收的所述塊的樣本點來維護(hù)所述塊的學(xué)習(xí)特征。
45.根據(jù)段落44所述的方法,其中,維護(hù)所述塊的學(xué)習(xí)特征的步驟包括在接收到所述序列的幀時,使學(xué)習(xí)特征的所述多個值衰減并且將當(dāng)前特征的值分配給學(xué)習(xí)特征的對應(yīng)值。
46.根據(jù)段落31至45中任一項所述的方法,其中,將針對所述塊形成的當(dāng)前特征與所述塊的學(xué)習(xí)特征進(jìn)行比較的步驟包括計算當(dāng)前特征的值與學(xué)習(xí)特征的對應(yīng)值之差的測量。
47.根據(jù)段落46所述的方法,其中,將針對所述塊形成的當(dāng)前特征與所述塊的學(xué)習(xí)特征進(jìn)行比較的步驟包括基于所述差的測量就所述當(dāng)前特征是否基于所述塊的所述學(xué)習(xí)特征的歷史值被預(yù)期在預(yù)定義或自適應(yīng)閾值內(nèi)形成估計。
48.根據(jù)段落47所述的方法,該方法還包括維護(hù)所述塊的預(yù)期變化程度的估計,并且依據(jù)該估計,為所述塊形成所述自適應(yīng)閾值。
49.根據(jù)段落48所述的方法,其中,維護(hù)所述塊的預(yù)期變化程度的所述估計的步驟包括在接收到幀時,依據(jù)針對所述幀的所述塊形成的當(dāng)前特征與針對所述塊維護(hù)的學(xué)習(xí)特征之間的相似度的測量來更新所述估計。
50.一種被配置為執(zhí)行根據(jù)段落31至49中任一項所述的方法的運動檢測系統(tǒng)。
51.根據(jù)段落1至30中任一項所述的數(shù)據(jù)處理裝置,其中,所述數(shù)據(jù)處理裝置在集成電路上以硬件來具體實現(xiàn)。
52.一種集成電路定義數(shù)據(jù)集,該集成電路定義數(shù)據(jù)集在集成電路制造系統(tǒng)中被處理時配置所述系統(tǒng)制造根據(jù)段落51所述的數(shù)據(jù)處理裝置。
53.一種存儲有集成電路的計算機(jī)可讀描述的非暫時性計算機(jī)可讀存儲介質(zhì),所述計算機(jī)可讀描述在集成電路制造系統(tǒng)中被處理時使得所述集成電路制造系統(tǒng)制造根據(jù)段落51所述的數(shù)據(jù)處理裝置。
54.一種集成電路制造系統(tǒng),該集成電路制造系統(tǒng)包括:
非暫時性計算機(jī)可讀存儲介質(zhì),其存儲有描述根據(jù)段落51所述的數(shù)據(jù)處理裝置的計算機(jī)可讀集成電路描述;
布局處理系統(tǒng),其被配置為處理所述集成電路描述以生成具體實現(xiàn)所述數(shù)據(jù)處理裝置的集成電路的電路布局描述;以及
集成電路生成系統(tǒng),其被配置為根據(jù)所述電路布局描述來制造所述數(shù)據(jù)處理裝置。
55.用于執(zhí)行根據(jù)段落31至49中任一項所述的方法的計算機(jī)程序代碼。
56.一種存儲有計算機(jī)可讀指令的非暫時性計算機(jī)可讀存儲介質(zhì),所述計算機(jī)可讀指令在計算機(jī)系統(tǒng)處執(zhí)行時使得所述計算機(jī)系統(tǒng)執(zhí)行根據(jù)段落31至49中任一項所述的方法。
57.一種基本上如本文中參照圖1至圖9中的任一圖所示的數(shù)據(jù)處理裝置。