專利名稱:生成和匹配多媒體內容的散列的制作方法
技術領域:
本發(fā)明涉及用于生成標識信息信號的散列信號的方法和裝置。本發(fā)明還涉及用于使這種散列信號與存儲在數(shù)據(jù)庫中的散列信號匹配的方法和裝置。
密碼散列的一個特性是它的極端脆弱性。翻轉源數(shù)據(jù)中單個比特通常就會導致完全不同的散列值。這使得密碼散列法不適用于標識多媒體內容,多媒體內容中相同內容的不同質量的版本應產(chǎn)生相同的簽名。在某種程度上對數(shù)據(jù)處理(只要處理保持內容可接受的質量)保持不變的多媒體內容的簽名稱為健壯簽名,或者作為我們最佳命名約定,稱為健壯散列。利用健壯散列和內容標識符的數(shù)據(jù)庫,可以識別未知內容,即使它已被劣化(例如被壓縮或經(jīng)過AD/DA轉換)。健壯散列捕獲視聽內容感覺上的基本部分。
對于就同一目的采用水印技術,采用健壯散列標識多媒體內容是一個可選方案。但是其間也有很大差別。加水印需要在釋放之前對原始內容起作用(即水印嵌入),存在對內容質量的潛在影響和邏輯問題,而健壯散列則不需要在釋放之前起作用。散列技術的缺點是需要訪問數(shù)據(jù)庫(即,散列法僅在連接的上下文中才可行),而水印檢測器可以在本地操作(例如未連接的DVD播放器)。
美國專利4677466公開了一種從電視信號中導出簽名的已知方法,用于廣播監(jiān)控。在此現(xiàn)有技術的方法中,在指定事件、如空白幀出現(xiàn)之后從短的視頻或音頻序列中推導出簽名。
發(fā)明目的和概述本發(fā)明總的目的是提供一種健壯散列技術。更具體地說,本發(fā)明的第一目的是提供一種用于從多媒體內容中提取有限數(shù)量的散列比特的方法和裝置。散列比特是健壯的,但不意味著誤碼的概率為零。眾所周知,非精確模式匹配(即在數(shù)據(jù)庫中搜索最相似的散列值)是NP-完全的。對于外行來說,這意味著最佳搜索策略是窮舉搜索,這在涉及大型數(shù)據(jù)庫的許多應用中是行不通的。因此,本發(fā)明的第二目的是提供一種克服這種NP-完全搜索的復雜性的方法和裝置。
第一目的是通過如下步驟實現(xiàn)的將信息信號劃分成連續(xù)的(最好是交疊的)幀,為每幀計算散列字,并把相繼的散列字連接而構成散列信號(或簡稱散列)。散列字是通過如下方式計算的對信息信號的標量性質或性質矢量、如不相交頻帶的能量或圖像塊的平均亮度進行閾值處理。
第二目的是通過如下步驟實現(xiàn)的選擇散列字輸入塊中的單個散列字,在數(shù)據(jù)庫中搜索所述散列字,計算散列字輸入塊與對應的存儲的散列字塊之間的差值。對于進一步選擇的散列字重復這些步驟,直到所述差值低于預定閾值。
本發(fā)明的另一些特征在從屬權利要求中定義。
圖2是說明將音頻信號頻譜再劃分成按對數(shù)間隔的帶的示意圖。
圖3是說明從音頻剪輯中提取的散列字的示意圖。
圖4是根據(jù)本發(fā)明從視頻信號中提取散列信號的裝置的實施例的示意圖。
圖5是說明從視頻序列中提取的散列字的示意圖。
圖6是根據(jù)本發(fā)明、由
圖1所示計算機完成的操作的流程圖。
圖7是說明圖1所示的計算機操作的示意圖。
圖8表示圖3所示的構成提取散列塊的散列字中的誤碼的數(shù)量的圖表。
圖9表示圖3所示的散列塊的散列字的最可靠比特的圖表。
圖10是根據(jù)本發(fā)明的另一個實施例由圖1所示計算機完成的操作的流程圖。
從信號理論的意義上來說,兩個信號(音頻、視頻、圖像)可以非常顯著地不同(例如通過壓縮),而它們在感覺上又不能區(qū)分。理論上,散列函數(shù)模擬人類聽覺系統(tǒng)(HAS)或人類視覺系統(tǒng)(HVS)的行為,即它生成被認為與HAS/HVS所生成的相同的內容的散列信號。但是,許多種類的處理(壓縮、添加噪聲、添加回波、D/A和A/D轉換、均衡等)可能用于信號,而且沒有能夠完美地模擬HAS/HVS的算法。一種復雜的因素是,甚至HAS/HVS對于不同的人以及不同的時間也不同,甚至單獨一個HAS/HVS的概念也不是一成不變的。散列的經(jīng)典定義未將時間考慮在內健壯散列應該不僅能夠標識內容,而且應該還能夠標識時間(時間間隔)。為此,這里采用如下對健壯散列的定義健壯散列是將多媒體內容的每個基本時間單元與對于HAS/HVS所感受的內容相似性而言是連續(xù)的半一致的比特序列相關聯(lián)的函數(shù)。
換言之,如果HAS/HVS標識兩個非常相似的音頻、視頻或圖像片斷,則相關聯(lián)的散列也應該非常相似。具體地說,原始內容和壓縮內容的散列應該是相似的。再者,如果為交疊的各幀計算散列字,這些散列字應該是相似的,即散列應該具有低通特征。另一方面,如果兩個信號真實地表示不同的內容,則健壯散列應該能夠區(qū)分這兩個信號(半一致)。這類似于經(jīng)典密碼散列的沖突要求。該散列函數(shù)所要求的健壯性是通過如下方式實現(xiàn)的根據(jù)健壯特征(性質)、即對處理有很大程度的不變性的特征來推導散列函數(shù)。健壯性可以由誤碼率(BER)來表示,它被定義為錯誤比特數(shù)與總比特數(shù)之比。
健壯散列法可實現(xiàn)內容識別,這是許多感興趣應用的基礎??紤]識別多媒體數(shù)據(jù)庫中的內容的實例。假定一個人正在觀看電影中一個場景,想知道該鏡頭出自哪部電影。一個查找方法是將該場景與數(shù)據(jù)庫中所有電影的尺寸相同的所有片斷進行比較。顯然,在大型數(shù)據(jù)庫的情況中,此方法完全不可行即使短的視頻場景也是由大量字節(jié)表示的,可能需要與整個數(shù)據(jù)庫進行比較。由此,為了實現(xiàn)此目的,需要存儲大量易于訪問的數(shù)據(jù),所有這些數(shù)據(jù)都需要與要識別的視頻場景進行比較。因此,存在存儲量的問題(數(shù)據(jù)庫)以及計算問題(配合大量數(shù)據(jù))。健壯散列法通過減少表示視頻場景所需的比特數(shù)來減輕這兩個問題需要存儲的比特較少,需要用于比較的比特也較少。
首先說明音頻信號的健壯散列。音頻信號假定為單聲道音頻,它是以采樣頻率44.1kHz(CD質量)進行采樣的。如果音頻是立體聲的,則有兩種選擇或者散列信號是對左右聲道分別提取的,或者在提取散列信號之前將左右聲道相加。
即使只有較短音頻片斷(數(shù)秒的),也想判斷它是哪首歌。因為音頻可以被看作無限的音頻樣本流,所以需要將音頻信號再劃分成時間間隔或幀,并對每一幀計算散列字。
往往在嘗試匹配數(shù)據(jù)庫中的散列時,無法確定幀邊界。此同步問題特別適合于音頻散列。此問題通過將信號分成交疊幀來解決。交疊還確保相鄰幀的散列字具有一定的相關度。換言之,散列隨時間緩慢改變。
圖1表示根據(jù)本發(fā)明、用于生成音頻散列信號的裝置的實施例的示意圖。首先在下降抽樣器11對音頻信號進行下降抽樣,以便降低后續(xù)操作的復雜性且將該操作限制于300-3000Hz的頻率范圍,這個頻率范圍最切合人類聽覺系統(tǒng)。
在成幀電路12中,音頻信號被分成多個幀。這些幀被具有16384個樣值的長度(≈0.4秒)和31/32的重疊因子的漢寧窗進行加權。重疊是這樣選擇的確保相繼的幀之間的散列字具有高的相關性。每個幀的頻譜表示由傅立葉變換電路13來計算。在下一個方框14中,計算(復數(shù)的)傅立葉系數(shù)的絕對值(量值)。
頻帶劃分級15將頻譜分成許多個(例如33個)頻帶。在圖1中,此操作由選擇器151來圖示說明,它們各選擇各頻帶的傅立葉系數(shù)。在裝置的最佳實施例中,頻帶具有對數(shù)間距,因為HAS也在近似于對數(shù)的頻帶上工作。通過以此方式選擇頻帶,散列將較小地受到處理變化(如壓縮和濾波)的影響。在最佳實施例中,第一個頻帶起始于300Hz而每個頻帶具有一個樂音的帶寬(即按每個頻帶21/12≈1.06的因子增加的帶寬)。圖2示出幀的頻譜201及其劃分成按對數(shù)規(guī)律間隔的頻帶202的實例。
隨后,對每個頻帶,計算一定(不一定是標量)的特征性質。性質的實例是能量、音調以及功率譜密度的標準偏差。一般,所選的性質可以是傅立葉系數(shù)的任意函數(shù)。通過試驗已經(jīng)驗證,每個頻帶的能量是對許多種類的處理最健壯的性質。此能量計算在能量計算級16進行。對于各個頻帶,它包括計算該頻帶內傅立葉系數(shù)的(平方)量值之和的級161。
為了得到每幀的二進制散列字,隨后將這些健壯的性質轉換成比特。這些比特可通過以下方式指定計算可能不同的幀的健壯性質的任意函數(shù),然后將其與閾值比較。閾值本身還可以是健壯性質值的另一個函數(shù)的結果。
在本裝置中,比特推導電路17將頻帶的能級轉換成二進制散列字。在一個簡單實施例中,比特推導級為每個頻帶生成一比特,例如,如果能級在閾值之上,則為“1”;如果該能級在所述閾值之下,則為“0”。閾值對于不同頻帶可以不同?;蛘?,如果其能級大于相鄰頻帶的能級,則對該頻帶賦予散列比特“1”;否則該散列比特為“0”。本實施例采用后一方案的又改進的版本。為防止音頻信號中的主要單個頻率對于連續(xù)幀產(chǎn)生完全相同的散列字,還要將隨時間的幅度變化考慮在內。更具體地說,如果其能級大于相鄰頻帶的能級且前一幀也是如此,則為頻帶賦予散列比特“1”;否則該散列比特為“0”。如果以EB(n,m)表示幀n的頻帶m的能量,以H(n,m)表示幀n的散列字H的第m個比特,則比特推導電路17以如下方式生成散列字的比特 至此,對于每個頻帶,比特推導電路17包括第一減法器171、幀延遲172、第二減法器173以及比較器174。音頻幀的頻譜的33個能級由此被轉換成32位散列字。最后將連續(xù)幀的散列字存儲在可被計算機20訪問的緩沖器18中。計算機將大量原始歌曲的健壯散列存儲在數(shù)據(jù)庫21。
在后續(xù)操作中,采用相同裝置計算未知音頻剪輯的散列。圖3中參考標號31表示存儲在數(shù)據(jù)庫21中的音頻剪輯的256個連續(xù)交疊音頻幀(≈3秒)的散列字。圖中,每行為一個32位散列字,白色像素表示散列字的“1”比特,而黑色像素表示“0”比特,時間由頂至底進行。參考標號32顯示以32千比特/秒進行MP3壓縮之后從同一音頻剪輯中提取的散列字。理論上,兩個散列塊應該完全相同,但是由于壓縮的原因,某些比特會不同。此差異表示為圖3中的33。
現(xiàn)在說明圖像或視頻信號的健壯散列法。同樣,健壯散列是由信息信號的特定特征推導出來的。要問的第一個問題是,要在哪個域中提取確定散列字的所述特征。與音頻(其中頻域最佳地表示了感覺特征)相比,要采用哪個域更不明確。由于復雜性的原因,最好避免諸如DCT或DFT變換之類的復雜操作。因此,計算時空域中的特征。再者,為了使從最大壓縮視頻流中的特征提取更容易,選擇可以容易地由基于塊的DCT系數(shù)來計算的特征。
基于這些考慮,最佳算法是以簡單統(tǒng)計、如對相對較大圖像區(qū)域計算的平均值和方差為基礎的。這些區(qū)域以相當簡單的方式來選擇圖像幀被劃分為64×64像素的方塊。這些特征從亮度分量中提取。但是,這不是基本的選擇還可以采用色度分量。事實上,增加散列比特數(shù)的最容易的方法是以從亮度中提取的類似方式從色度分量中提取它們。
圖4表示根據(jù)本發(fā)明、用于生成標識視頻信號的散列信號的裝置的方框圖。該裝置接收視頻信號的連續(xù)幀。每幀被分成(41)M+1個塊。對這些塊的每一個,計算(42)像素的亮度值的平均值。幀p中的塊k的平均亮度表示為F(p,k),其中k=0、…、M。
為了使散列獨立于亮度的整體層次和標度,計算(43)兩個相鄰塊之間的亮度差。此外,為了降低散列字在時間方向上的相關性,還計算(44,45)相鄰幀中的空間不同的平均亮度值的差。換言之,將簡單的時空2×2 Haar濾波器運用于平均亮度。結果的符號構成(46)幀p中塊k的散列比特H(p,k)。用數(shù)學方法表示如下 在本實例中,每幀被分成尺寸為64×64的33個塊(即M=32)。完整的散列H由從30個連續(xù)幀提取的比特構成。包括30個各有32位的散列字的這種散列塊(960個比特)使錯誤正概率足夠地小,如下所述。圖5中的51表示典型的原始散列塊,其中黑和白分別對應于“0”和“1”。參考標號52表示水平縮放為94%的相同素材的對應散列塊。標號53表示散列塊51與52之間的差。在此情況中,誤碼率等于11.3%。應當指出,錯誤比特在時間(垂直)方向上的確具有強相關性。
現(xiàn)在說明將所提取的散列塊與大型數(shù)據(jù)庫中的散列塊匹配的處理。這是非平凡任務,因為眾所周知不良匹配(切記所提取的散列字可能含有誤碼)是NP完全的。這一點通過下列(音頻)實例來說明。在數(shù)據(jù)庫中,存儲約5分鐘的100000首歌曲(每首歌曲≡25000個散列字)。假定已經(jīng)從未知的音頻剪輯中提取了具有256個散列字的散列塊(例如圖3中的散列塊32)。現(xiàn)在確定這100000首存儲的歌曲中哪一個與所提取的散列塊最匹配。因此,需要找到這100000首歌曲之中與所提取的散列塊最相似、即誤碼率(BER)最小或者BER低于一定閾值的一首歌中的散列塊的位置。閾值直接決定了錯誤確認比率、即錯誤地從數(shù)據(jù)庫中識別歌曲的比率。
如果兩個推導的散列塊H1和H2之間的漢明距離低于一定的閾值T,則判斷這兩個3秒的音頻剪輯(或兩個30幀的視頻序列)相似。該閾值T直接決定了錯誤確認比率Pf,即錯誤判斷兩個音頻剪輯/視頻序列為相等(即在觀看者眼中看來是不正確的)的比率T越小,概率Pf將越小。另一方面,小值的T會負面影響錯誤否認概率Pn,即,兩個信號“相等”、但未被識別為相等的概率。為了分析閾值T的選擇,假定散列提取處理產(chǎn)生了隨機i.i.d.(獨立且同樣的分布)比特。則誤碼的數(shù)量將具有參數(shù)(n,p)的二項式分布,其中n等于提取的比特數(shù)而p(=0.5)是提取“0”或“1”的概率。因為在此應用中n(對于音頻,32×256=8192;對于視頻,32×30=960)是很大的,二項式分布可以由平均值為μ=np且標準偏差為σ=np(1-p)]]>的正態(tài)分布來近似。給定散列塊H1,隨機選擇的散列塊H2相對于H1有少于T=an個誤碼的概率由下式給出Pf(α)=12π∫(1-2α)n∞ex22dx=12erfc(1-2α2n)---(1)]]>但是,在實際情況中,健壯散列沿時間軸具有高相關性。這由基礎視頻序列的大時間相關性或者音頻幀的重疊所致。實驗表明,錯誤比特的數(shù)量是正態(tài)分布的,但是標準偏差約為i.i.d.情況的3/2倍。因此對公式(1)進行修改以包括因子3/2。Pf(α)=12erfc(1-2α32n)---(2)]]>試驗過程中采用的BER的閾值為α=0.25。這意味著,8192個比特中,要出現(xiàn)少于2048個誤碼,以便確認該散列塊是取自同一首歌曲。在此情況中,這些誤碼具有np=4096的平均值μ和3(np(1-p))=135.76]]>的標準偏差σ的正態(tài)分布。所選閾值設置則對應于15.2σ的錯誤告警概率。因此,該錯誤告警概率等于1.8·10-52。但是,應當指出,如果數(shù)據(jù)庫中包括具有相似散列字的音樂(例如兩個不同鋼琴演奏家演奏一個莫扎特作品),則錯誤告警概率實際上更高。
在數(shù)據(jù)庫中搜索所提取的散列塊的位置可以通過強制匹配來完成。這將進行約25億(=25000×100000)次匹配。此外,匹配數(shù)目隨數(shù)據(jù)庫的大小而線性增加。
根據(jù)本發(fā)明的一個方面,計算機20采用更有效的策略以在數(shù)據(jù)庫21中查找對應的歌曲。圖6是由計算機完成的操作的流程圖。當將原始歌曲存儲在數(shù)據(jù)庫中時,在步驟60計算機更新查找表(LUT)。LUT在圖1中表示成單獨的存儲器22,但是應當明白,它實際上是大型數(shù)據(jù)庫存儲器21的一部分。如圖7所示,LUT 22含有對應于每個可能的32位散列字的入口。LUT的每個入口指向一首或多首歌曲以及這些歌曲中各個散列字出現(xiàn)的位置。因為一個散列字可能出現(xiàn)在多首歌曲中的多個位置,所以歌曲指針被存儲在鏈接的列表中。由此,LUT可以生成多個候選歌曲。應當指出,當數(shù)據(jù)庫中只有數(shù)量有限的歌曲時,包含232個入口的LUT可能是不切實際的。在此情況中,最好用散列表和鏈接列表實現(xiàn)LUT。圖7中的參考標號70表示從未知音頻剪輯中提取的256個散列字的塊(例如圖3中的散列塊32)。
在匹配方法的第一實施例中,假定常常單個散列字沒有誤碼。在步驟61,單個散列字H(m)是從散列塊中選擇的并被發(fā)送到數(shù)據(jù)庫。最初,這將是所提取的散列塊的最后一個散列字H(256)。在圖7所示的實例中,這是散列字0x00000001。數(shù)據(jù)庫中的LUT指向歌曲1中的某個位置。假定此位置為位置p。在步驟62,計算機要計算所提取散列塊與從歌曲1的位置p-255至位置p的散列字塊(如圖7中71所示)之間的BER。在步驟63,檢查BER低(<0.25)還是高。如果BER低,則所提取的散列字源自歌曲1的概率較高。如果BER高,該歌曲不在數(shù)據(jù)庫中或者單個散列字H(m)含有差錯。本實例中假定為后一種情況。然后在步驟64選擇另一個單個散列字,并在LUT中查找。在圖7中,現(xiàn)在正在查找最后且僅一個單個散列字H(255)。此散列字看來似乎出現(xiàn)在歌曲2中。輸入塊70與存儲塊72之間的BER看上去是低于0.25,這樣歌曲2就被標識為該音頻剪輯所源于的歌曲。應當指出,存儲塊52中的最后一個散列字是0x00000000。顯然,先前選擇的散列字0x0000001有一個誤碼。
因此,計算機一次僅查看一個單個的散列字,而且假定時常此單個散列字沒有誤碼。然后將提取的散列塊的BER與候選歌曲的(時間軸上)對應的散列塊進行比較。具有最低BER的候選歌曲的標題被選為所提取散列字所源于的歌曲,前提是最低BER低于閾值(步驟65)。否則,數(shù)據(jù)庫將報告找不到所提取的散列塊。然后就嘗試另一個單個散列字。如果任何一個單個散列字都沒有獲得成功(步驟66),則數(shù)據(jù)庫將給予響應,報告數(shù)據(jù)庫中不存在該候選歌曲(步驟67)。
上述方法基于這樣的假定時常所提取的散列字沒有誤碼,即它完全等于對應的存儲散列字。廣泛的實驗表明,對于大多數(shù)音頻來說,這會有規(guī)律地每秒出現(xiàn)幾次。例如圖8中說明了這一點,其中表示構成圖3B的提取塊的256個散列字中的誤碼數(shù)。在此3秒的音頻剪輯中出現(xiàn)十三個沒有任何誤碼的散列字。
但是,當對音頻進行嚴重處理時,出現(xiàn)沒有任何誤碼的散列字是不可能的。在此情況中,通過先前的方法無法檢索歌曲的標題。至此,將說明匹配方法的另一個實施例。此方法采用散列提取算法的軟信息在數(shù)據(jù)庫中查找所提取的散列字。軟信息應理解為表示比特的可靠性或者已經(jīng)正確檢索出散列比特的概率。在本實施例中,用于提取散列字的裝置包括比特可靠性判斷電路。比特可靠性判斷電路在圖1所示的音頻散列提取裝置中表示為19。此電路以實數(shù)的形式接收差分能帶電平。如果實數(shù)非常接近于閾值(此實例中為0),此個別的散列比特是不可靠的。相反,如果此數(shù)與閾值差很遠,則它是可靠的散列比特。該閾值可以是固定的或者受控的,使得可靠比特的數(shù)量為固定的。
比特可靠性判斷電路19判斷每個散列比特的可靠性,從而使此提取裝置或計算機20可以為每個散列字生成最可能備選散列字的列表。通過再次假定備選散列字中至少一個是正確的,就可以正確和容易地接收歌曲標題。圖9表示對于圖3中的散列塊32的所有256個散列字來說,散列字的哪個比特是最可靠的。
圖10是在數(shù)據(jù)庫中查找提取散列塊的方法的這個實施例中、由計算機完成的操作的流程圖。對于前面已描述的操作,采用相同的參考標號。同樣地,最初選擇散列塊的最后一個提取的散列字(0x00000001,見圖7),并將其發(fā)送到數(shù)據(jù)庫(步驟61)。數(shù)據(jù)庫中的LUT指向歌曲1中的位置p。計算提取的散列塊和歌曲1中的對應塊71之間的BER(步驟62)。同時,從先前實例已知,該BER較高。在步驟101,計算機現(xiàn)在詢問比特可靠性判斷電路19(圖1),了解到比特0是此特定散列字的最不可靠比特?,F(xiàn)在通過翻轉所述比特來獲得下一個最可能的候選散列字。在步驟102,新的散列字(0x00000000)被發(fā)送到數(shù)據(jù)庫。如圖7所示,散列字0x00000000產(chǎn)生數(shù)據(jù)庫中的兩個可能的候選歌曲歌曲1和歌曲2。例如,如果所提取的散列字現(xiàn)在相對于歌曲2的散列字具有低BER,則歌曲2將被標識為該提取散列塊所源于的歌曲。否則,將生成新候選散列字,或者將采用另一個散列字來嘗試查找數(shù)據(jù)庫中的各個歌曲。此策略將繼續(xù)進行,直到在步驟103發(fā)現(xiàn)再沒有可選的候選散列字為止。
應當指出,一旦音頻片斷被實際識別為取自某首歌曲,數(shù)據(jù)庫可以在生成所有候選散列字之前,先嘗試將所提取的散列字與該歌曲進行匹配。
一個非常簡單的生成最可能的散列字的列表的方法是包括具有N個固定的最可靠比特和其余比特的每種可能組合的所有散列字。在每個散列32位且選擇N=23的情況中,需要512個候選散列字的列表。此外,它意味著在再也不能識別音頻選段之前,散列字的9個最不可靠比特可能是錯誤的。對于圖6所示的情況,這意味著117個散列字(而不是先前方法的13個散列字)會產(chǎn)生指向數(shù)據(jù)庫中歌曲的正確指針。
在匹配方法的一個可選實施例中,匹配只是基于被標記為可靠的散列比特進行的。此方法基于這樣的理解沒必要將所接收散列的不可靠比特與數(shù)據(jù)庫中的相應比特進行比較。雖然付出的代價是更復雜的搜索策略和將所有必需信息發(fā)送到數(shù)據(jù)庫所需的更大帶寬,但是得到了小得多的誤碼率。
現(xiàn)在說明健壯散列法的幾個應用。
廣播監(jiān)控廣播監(jiān)控系統(tǒng)包括兩個部分包含大量歌曲的散列的中央數(shù)據(jù)庫;以及從例如廣播電臺所廣播的音頻中提取散列塊的監(jiān)控臺。監(jiān)控臺將所提取的散列塊發(fā)送到中央數(shù)據(jù)庫,然后數(shù)據(jù)庫就可以判斷哪首歌曲已經(jīng)廣播過。
移動電話音頻信息想象一下,坐在酒吧里并傾聽著想知道其名稱的歌曲。然后只需拿起移動電話,撥打音頻散列數(shù)據(jù)庫。音頻散列數(shù)據(jù)庫就收聽該歌曲并提取散列塊。如果它在數(shù)據(jù)庫中找到該散列塊,就會報告歌曲的名稱。
連接的內容(“媒體橋”)Digimarc公司目前有一種稱為“媒體橋”的應用,它是基于水印技術。其理念是多媒體片斷中的水印把用戶引導到因特網(wǎng)上某個URL,在那里他可以獲取某些額外信息。例如,對雜志中的廣告進行水印處理。將此廣告放置在網(wǎng)絡攝相機(webcam)前方,水印檢測器提取要發(fā)送到數(shù)據(jù)庫的水印密鑰。該數(shù)據(jù)庫就包含了這樣的URL,用戶要重定向到該URL。同樣的應用可以對健壯散列技術的使用行得通。將來,甚至可以設想,一個人將他的移動視頻電話對準現(xiàn)實中的實物。音頻散列數(shù)據(jù)庫就會直接或通過因特網(wǎng)上的URL返回報告有關該實物的信息。
多媒體質量測量如果高質量的原始內容的散列字被列于數(shù)據(jù)庫中,則可以通過確定處理后的多媒體內容的提取散列字的BER來獲得質量測量值。
從抽象的角度來看,健壯音頻散列是從音頻信號中通過比較不同頻帶和不同時間上的能量來推導的。此方法的廣義形式是考慮LTI和非線性函數(shù)的任何級聯(lián)。具體來說,健壯散列還可以通過以下方式獲得應用(二元)濾波器組(LTI算子),然后進行平方或取絕對字(非線性函數(shù)),然后是時間和/或頻帶上的差異算子(LTI算子),最后是閾值處理算子。通過運用仔細設計的線性濾波器組作為初始算子,可以避免FFT的復雜性。此外,由于許多壓縮引擎具有作為初始級的線性濾波器組,所以可以選擇將特征提取與壓縮集成。
還應指出,可以組合地采用健壯散列法和數(shù)字水印來識別內容。上述方法和某些水印檢測算法有許多共同的初始處理步驟、即頻譜表示的計算。這導致這樣的想法可以很容易地將水印檢測與特征提取集成在一個應用中。然后可以同時將檢索的水印和散列字發(fā)送到中央數(shù)據(jù)庫以供進一步分析,從而實現(xiàn)內容識別。
總之,所公開的方法為多媒體內容、例如音頻剪輯生成了健壯散列。音頻剪輯被分成(12)連續(xù)(最好交疊的)幀。對于每一幀,又將頻譜分成(15)頻帶。計算(16)每個頻帶的健壯特性(例如能量)并通過各個散列比特來表示(17)。由此,音頻剪輯就由一串二進制散列字(每幀一個散列字)來表示。要識別可能經(jīng)過壓縮的音頻信號,計算機(20)將從中推導的散列字塊與大型數(shù)據(jù)庫(21)進行匹配。這些匹配策略也已公開。在最佳實施例中,提取處理還提供了關于散列比特中哪些最不可靠的信息(19)。將這些比特翻轉會顯著地提高匹配處理的速度和性能。
權利要求
1.一種生成標識信息信號的散列信號的方法,所述方法包括如下步驟將所述信息信號分成各幀;為每一幀計算散列字;以及將相繼的散列字連接而構成所述散列信號。
2.如權利要求1所述的方法,其特征在于,所述計算步驟包括如下步驟將所述信息信號的每一幀分成不相交的帶或塊;計算所述每個帶或塊中的信號的性質;將所述帶或塊中的性質與各個閾值進行比較;由散列字的各個比特表示所述比較的結果。
3.如權利要求2所述的方法,其特征在于,相鄰帶或塊的性質構成所述閾值。
4.如權利要求2所述的方法,其特征在于,前一幀中相應的帶或塊的性質構成所述閾值。
5.如權利要求2所述的方法,其特征在于,所述帶或塊是所述信息信號的各個幀的頻譜的頻帶。
6.如權利要求5所述的方法,其特征在于,所述頻帶具有作為頻率的函數(shù)的遞增帶寬。
7.如權利要求5所述的方法,其特征在于,所述性質是頻帶的能量。
8.如權利要求5所述的方法,其特征在于,所述性質是頻帶的音調。
9.如權利要求1所述的方法,其特征在于,所述信息信號被分成交疊的幀。
10.如權利要求2所述的方法,其特征在于,所述信息信號是視頻信號,該信號的各幀被分成塊,塊的平均亮度構成所述塊的性質。
11.如權利要求2所述的方法,其特征在于還包括采用所述比較步驟的輸入來生成指示所述散列字的比特的可靠性的信息的步驟。
12.一種生成標識信息信號的散列信號的方法,其特征在于包括如下步驟將所述信息信號分成塊;對于每個塊,提取所述塊內的信息信號的特征;將所提取的特征的值與閾值進行比較;為每個塊生成指示所述提取的特征的值是大于還是小于所述閾值的散列比特;為每個塊確定指示所述提取的特征的值是否與所述閾值相差很遠的可靠性信息;將這些塊的所述散列比特與所述可靠性信息組合成具有如下比特的散列值可靠散列比特,對于這些比特,所提取的特征與所述閾值相差很大;以及不可靠比特,對于這些比特,所提取的特征與所述閾值沒有實質上的差別。
13.一種根據(jù)如權利要求1至12中任一個所述的方法、生成標識信息信號的散列信號的裝置。
14.一種將表示信息信號的至少一部分的散列字輸入塊與存儲在數(shù)據(jù)庫中標識各個信息信號的散列信號進行匹配的方法,所述方法包括如下步驟(a)選擇所述散列字輸入塊中的一個散列字;(b)在所述數(shù)據(jù)庫中搜索所述散列字;(c)計算所述散列字輸入塊與存儲的散列字塊之間的差,其中在步驟(b)找到的散列字與輸入塊中所選的散列字的位置相同;(d)對進一步選擇的散列字重復步驟(a)至(c),直到所述差低于預定的閾值為止。
15.如權利要求14所述的方法,其特征在于,所述進一步選擇的散列字是所述散列字輸入塊中的另一個散列字。
16.如權利要求14所述的方法,其特征在于,所述進一步選擇的散列字是通過使先前選擇的散列字的比特相反來獲得的。
17.如權利要求16所述的方法,其特征在于還包括如下步驟接收表示所選的散列字的比特的可靠性的信息,并利用所述信息確定要使之相反的比特。
18.一種將表示未識別的信息信號的散列值與存儲在數(shù)據(jù)庫中且標識相應的多個信息信號的多個散列值進行匹配的方法,該方法包括如下步驟(a)以多個可靠散列比特和不可靠散列比特的形式接收所述散列值;(b)在所述數(shù)據(jù)庫中搜索所存儲的散列值,對于這些散列值,所運用的散列值的可靠比特與所存儲的散列值的相應比特匹配;(c)對于步驟(b)中找到的每個存儲的散列值,計算表示所述未識別的信息信號的散列值的可靠比特與所述存儲的散列值的相應比特之間的誤碼率;以及(d)確定對于哪個存儲的散列值、該誤碼率最小且足夠小。
19.一種將表示未識別的信息信號的散列信號與存儲在數(shù)據(jù)庫中且標識相應的多個信息信號的多個散列信號進行匹配的方法,該方法包括如下步驟(a)以一系列散列值的形式接收所述散列信號,各個散列值具有可靠散列比特和不可靠散列比特;(b)將所述系列的散列值之一運用于所述數(shù)據(jù)庫;(c)在所述數(shù)據(jù)庫中搜索滿足如下條件的所存儲的散列值所運用的散列值的可靠比特與所存儲的散列值的相應比特匹配;(d)對于步驟(c)中找到的每個存儲的散列值在所述數(shù)據(jù)庫中選擇存儲的散列值的相應系列;計算表示所述未識別的信息信號的所述一系列散列值中的可靠比特與數(shù)據(jù)庫中選擇的散列值系列的相應比特之間的誤碼率;以及(f)確定對于哪一個存儲的散列值系列、該誤碼率最小且足夠小。
20.如權利要求19所述的方法,其特征在于還包括以下步驟對所述未識別的信息信號的其它散列值重復步驟(b)-(f),直到找到誤碼率最小且足夠小的存儲的散列值系列。
21.一種裝置,它根據(jù)如權利要求14至20中任一個所述的方法,將表示信息信號的至少一部分的散列字輸入塊與存儲在數(shù)據(jù)庫中標識各個信息信號的散列信號進行匹配。
22.一種將信息信號的接收者重定向至因特網(wǎng)站點的方法,該方法包括如下步驟從所述信息信號推導出散列信號,并將所述散列信號與存儲在數(shù)據(jù)庫中標識因特網(wǎng)站點的散列信號進行匹配。
23.一種測量信息信號的質量的方法,該方法包括如下步驟從所述信息信號推導出散列信號,將所述散列信號與存儲在數(shù)據(jù)庫中的標識所述信息信號的散列信號進行匹配,然后計算推導的散列信號與存儲的散列信號之間的差。
24.一種識別多媒體信號的方法,該方法包括如下步驟接收和/或記錄所述多媒體信號的至少一部分,從所述多媒體信號推導散列信號,將所述散列信號發(fā)送到數(shù)據(jù)庫,用以將其與存儲在所述數(shù)據(jù)庫中的散列信號進行匹配,以及從所述數(shù)據(jù)庫接收所述多媒體信號的標識符。
25.如權利要求24所述的方法,其特征在于,所述接收和/或記錄所述多媒體信號、推導和發(fā)送所述散列信號以及接收所述標識符的各步驟是由移動電話裝置來執(zhí)行的。
全文摘要
散列是可用于標識文件的數(shù)據(jù)文件的簡短摘要或簽名。對多媒體內容(音頻、視頻、圖像)運用散列法較為困難,因為原始內容的散列和處理后(例如壓縮后)的內容的散列可能顯著不同。本公開的方法為多媒體內容、例如音頻剪輯生成健壯散列。音頻剪輯被分成(12)連續(xù)(最好交疊)的各幀。對于每一幀,將頻譜分成(15)頻帶。計算(16)每個頻帶的健壯性質(例如能量)并通過各個散列比特表示(17)。由此,音頻剪輯就由一串二進制散列字(每幀對應一個)來表示。為識別可能壓縮的音頻信號,計算機(20)將從其中推導出的散列字塊與大型數(shù)據(jù)庫(21)比較。這些匹配策略也已公開。在最佳實施例中,提取處理還提供關于散列比特中哪些最不可靠的信息(19)。將這些比特翻轉會顯著地提高匹配處理的速度和性能。
文檔編號G09C1/00GK1461565SQ02801152
公開日2003年12月10日 申請日期2002年2月7日 優(yōu)先權日2001年2月12日
發(fā)明者J·A·海特斯馬, A·A·C·M·卡克, C·P·M·J·巴根, J·C·奧斯特維恩 申請人:皇家菲利浦電子有限公司