本發(fā)明圖像大數(shù)據(jù)處理技術(shù)領(lǐng)域,尤其涉及一種海量圖像特征數(shù)據(jù)分布式采集處理和分級應(yīng)用系統(tǒng)及方法。
背景技術(shù):
近年來隨著計算機、數(shù)字影像及人工智能等相關(guān)技術(shù)領(lǐng)域的長足發(fā)展,在包括生產(chǎn)和生活在內(nèi)的社會活動層面里,使用了大量產(chǎn)生數(shù)字影像信息的攝像頭以及安防、醫(yī)療等領(lǐng)域產(chǎn)生數(shù)字圖像數(shù)據(jù)的軟硬件設(shè)備,這些數(shù)據(jù)為我們的工作生活帶來了極大的價值。隨著產(chǎn)生數(shù)據(jù)的裝置設(shè)備數(shù)量逐漸的增加,特別是一些安防領(lǐng)域內(nèi)的設(shè)備,在一定的應(yīng)用場景內(nèi)有著連續(xù)運行時間長、數(shù)據(jù)產(chǎn)生頻率高、實時性強以及數(shù)據(jù)量巨大等屬性,這為數(shù)字圖像數(shù)據(jù)的特征提取處理以及后續(xù)的數(shù)據(jù)分析等應(yīng)用帶來了很大的技術(shù)難題。
面對這些技術(shù)難題,現(xiàn)有的解決方法一般采用高配置計算機方式,使用高性能的單機硬件設(shè)備特別是高頻率CPU。計算機硬件性能不斷的在提高,為了追求應(yīng)用性能的上限,只能通過不斷的投入更大量的資金,使數(shù)據(jù)利用的綜合成本大量增加。
另一種方法也屬于單機層面的硬件性能提升,主要是增加GPU及其他CPU以外的計算單元,弊端同上述方法是一致的,都會導(dǎo)致成本的不斷提升。
技術(shù)實現(xiàn)要素:
本發(fā)明提供一種海量圖像特征數(shù)據(jù)分布式采集處理和分級應(yīng)用系統(tǒng)及方法,以解決上述技術(shù)問題。
本發(fā)明一種海量圖像特征數(shù)據(jù)分布式采集處理和分級應(yīng)用系統(tǒng),包括:
圖像采集單元、至少一個特征采集單元、至少一個圖片目錄服務(wù)器、至少一個下級信息處理單元、至少一個下級數(shù)據(jù)庫、上級信息處理單元以及上級數(shù)據(jù)庫,所述下級信息處理單元,包括:信息存儲模塊、內(nèi)存更新模塊以及下級內(nèi)存數(shù)據(jù)庫;
所述圖像采集單元,用于采集視頻和圖像并存儲所述視頻和圖像;
所述特征采集單元,用于檢測所述視頻或者圖像中的目標圖像,并提取所述目標圖像對應(yīng)的特征值,將所述特征值和所述目標圖像的附屬信息發(fā)送至所述信息存儲模塊,將目標圖像發(fā)送至圖片目錄服務(wù)器中;
所述圖片目錄服務(wù)器,用于存儲所述特征采集單元處理后的目標圖像,并支持所述上級信息處理單元通過FTP、HTTP通信協(xié)議的數(shù)據(jù)訪問;
所述信息存儲模塊,用于將所述目標圖像的特征值發(fā)送至內(nèi)存更新模塊,將目標圖像的附屬信息發(fā)送至下級數(shù)據(jù)庫;
所述內(nèi)存更新模塊,用于將所述目標圖像的特征值更新至所述下級內(nèi)存數(shù)據(jù)庫中;
所述下級數(shù)據(jù)庫,用于存儲所述目標圖像的附屬信息;
所述上級信息處理單元,包括:
上級內(nèi)存數(shù)據(jù)庫和應(yīng)用業(yè)務(wù)模塊;
所述上級內(nèi)存數(shù)據(jù)庫,用于接收所述下級信息處理單元發(fā)送的目標圖像的特征值并存儲;
所述應(yīng)用業(yè)務(wù)模塊,用于將上級內(nèi)存數(shù)據(jù)庫中存儲的所述目標圖像特的征值進行比對或者查詢,根據(jù)所述上級數(shù)據(jù)庫中存儲的所述目標圖像附屬信息還原所述目標圖像對應(yīng)的場景;
所述上級數(shù)據(jù)庫,用于接收所述下級信息處理單元發(fā)送的目標圖像的附屬信息并存儲。
進一步地,所述特征采集單元,包括:
目標檢測模塊、特征提取模塊以及圖片存儲管理模塊;
所述目標檢測模塊用于接收圖像采集單元發(fā)送的視頻或者圖像,并根據(jù)目標要求檢測所述視頻或者圖像確定目標圖像;
所述特征提取模塊用于提取所述目標圖像的特征;
所述圖片存儲管理模塊用于將已提取特征值的所述目標圖像進行重命名、分類、過濾以及篩選的處理。
進一步地,所述下級信息處理單元,還包括:
所述信息同步模塊,用于將下級內(nèi)存數(shù)據(jù)庫中所述目標圖像的特征值更新到上級內(nèi)存數(shù)據(jù)庫,并將下級數(shù)據(jù)庫中所述目標圖像的附屬信息更新到上級數(shù)據(jù)庫中,信息同步模塊用于接收所述上級信息處理單元發(fā)送的控制指令,所述控制指令包括:刪除某指定目標圖像在下級內(nèi)存數(shù)據(jù)庫中存儲的特征值和在下級數(shù)據(jù)庫中存儲的附屬信息;將某指定目標圖像的特征值和附屬信息從上級信息處理單元更新到下級信息處理單元。
本發(fā)明一種海量圖像特征數(shù)據(jù)分布式采集處理和分級應(yīng)用方法,包括:
圖像采集單元采集視頻和圖像并存儲所述視頻和圖像;
特征采集模塊獲取所述視頻和圖像,并檢測所述視頻或者圖像中的目標圖像,并提取所述目標圖像對應(yīng)的特征值,將所述特征值和所述目標圖像的附屬信息發(fā)送至所述信息存儲模塊,將目標圖像發(fā)送至圖片目錄服務(wù)器中;
所述下級處理單元接收所述特征值,存儲將目標圖像的附屬信息存儲至下級數(shù)據(jù)庫,并根據(jù)所述特征值實時更新所述下級數(shù)據(jù)庫;
上級信息處理單元接收所述下級信息處理單元發(fā)送的目標圖像的特征值并存儲。
進一步地,所述上級信息處理單元接收所述下級信息處理單元發(fā)送的目標圖像的特征值并存儲之后,包括:
所述目錄服務(wù)器存儲提取目標圖像對應(yīng)的特征值后的目標圖像,并支持所述上級信息處理單元通過FTP、HTTP通信協(xié)議的數(shù)據(jù)訪問。
進一步地,所述并根據(jù)所述特征值實時更新所述下級數(shù)據(jù)庫之后,還包括:
判斷信息同步模塊狀態(tài)是否為同步,若是,則將下級內(nèi)存數(shù)據(jù)庫中所述目標圖像的特征值更新到上級內(nèi)存數(shù)據(jù)庫,并將下級數(shù)據(jù)庫中所述目標圖像的附屬信息更新到上級數(shù)據(jù)庫中,接收上級信息處理單元發(fā)送的控制指令,所述控制指令包括:刪除所述目標圖像在下級內(nèi)存數(shù)據(jù)庫中存儲的特征值和在下級數(shù)據(jù)庫中存儲的附屬信息,將所述目標圖像的特征值和附屬信息從上級信息處理單元更新到下級信息處理單元,若否,則將所述目標圖像的特征值更新至所述下級內(nèi)存數(shù)據(jù)庫中。
本發(fā)明實現(xiàn)了在多級聯(lián)網(wǎng)的場景下,整合多臺計算機的處理能力,提高了視頻信息的特征提取及及數(shù)據(jù)的進一步處理的工作效率。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明海量圖像特征數(shù)據(jù)分布式采集處理和分級應(yīng)用系統(tǒng)示意圖;
圖2為本發(fā)明海量圖像特征數(shù)據(jù)分布式采集處理和分級應(yīng)用方法流程圖;
圖3為本發(fā)明圖像特征采集流程圖;
圖4為本發(fā)明下級信息處理單元實時更新處理流程圖;
圖5為本發(fā)明下級信息處理單元與上級信息處理單元之間信息同步流程圖。
具體實施方式
為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
圖1為本發(fā)明海量圖像特征數(shù)據(jù)分布式采集處理和分級應(yīng)用系統(tǒng)示意圖,如圖1所示,本實施例系統(tǒng),包括:
圖像采集單元101、至少一個特征采集單元102、至少一個圖片目錄服務(wù)器103、至少一個下級信息處理單元104、至少一個下級數(shù)據(jù)庫105、上級信息處理單元106以及上級數(shù)據(jù)庫107,所述下級信息處理單元,包括:信息存儲模塊108、內(nèi)存更新模塊109以及下級內(nèi)存數(shù)據(jù)庫110;
所述圖像采集單元,用于采集視頻和圖像并存儲所述視頻和圖像;
所述特征采集單元,用于檢測所述視頻或者圖像中的目標圖像,并提取所述目標圖像對應(yīng)的特征值,將所述特征值和所述目標圖像的附屬信息發(fā)送至所述信息存儲模塊,將目標圖像發(fā)送至圖片目錄服務(wù)器中;
所述圖片目錄服務(wù)器,用于存儲所述特征采集單元處理后的目標圖像,并支持所述上級信息處理單元通過FTP、HTTP通信協(xié)議的數(shù)據(jù)訪問;
所述信息存儲模塊,用于將所述目標圖像的特征值發(fā)送至內(nèi)存更新模塊,將目標圖像的附屬信息發(fā)送至下級數(shù)據(jù)庫;
所述內(nèi)存更新模塊,用于將所述目標圖像的特征值更新至所述下級內(nèi)存數(shù)據(jù)庫中;
所述下級數(shù)據(jù)庫,用于存儲所述目標圖像的附屬信息;
所述上級信息處理單元,包括:
上級內(nèi)存數(shù)據(jù)庫和應(yīng)用業(yè)務(wù)模塊;
所述上級內(nèi)存數(shù)據(jù)庫,用于接收所述下級信息處理單元發(fā)送的目標圖像的特征值并存儲;
所述應(yīng)用業(yè)務(wù)模塊,用于將上級內(nèi)存數(shù)據(jù)庫中存儲的所述目標圖像特的征值進行比對或者查詢,根據(jù)所述上級數(shù)據(jù)庫中存儲的所述目標圖像附屬信息還原所述目標圖像對應(yīng)的場景;
所述上級數(shù)據(jù)庫,用于接收所述下級信息處理單元發(fā)送的目標圖像的附屬信息并存儲。
具體而言,本實施例系統(tǒng)中的圖像采集單元為各種業(yè)務(wù)系統(tǒng)的視頻、圖像的采集設(shè)備。數(shù)量上可以為多個,采集的視頻和圖像通常以多路或多個文件的形式出現(xiàn)。
對應(yīng)上述同一業(yè)務(wù)的圖像采集單元的特征采集單元是檢測視頻文件或者視頻流內(nèi)的中目標圖像,并提取該目標圖像對應(yīng)的特征值,并將其存儲至圖片目錄服務(wù)器中。進一步地,所述特征采集單元,包括:目標檢測模塊、特征提取模塊以及圖片存儲管理模塊;所述目標檢測模塊用于接收圖像采集單元發(fā)送的視頻或者圖像,并根據(jù)目標要求檢測所述視頻或者圖像確定目標圖像;所述特征提取模塊用于提取所述目標圖像的特征;所述圖片存儲管理模塊用于將已提取特征值的所述目標圖像進行重命名、分類、過濾以及篩選的處理。具體來說,目標檢測模塊對于不同的目標要求選用不同檢測算法。本實施例目標檢測模塊利用統(tǒng)計的方法建立基于顏色和顏色梯度的背景模型,并實時地對背景模型進行更新,最后將這兩種背景模型綜合考慮對目標進行有效檢測。同理,特征提取模塊依據(jù)具體的業(yè)務(wù)處理要求而定提取特征的類型。本實施例特征提取模塊首先將圖像分成小的連通區(qū)域,然后采集區(qū)域中各像素點的梯度的或邊緣的方向直方圖,將局部直方圖在圖像的更大的范圍內(nèi)進行對比度歸一化,即計算各直方圖在這個區(qū)間中的密度,然后根據(jù)這個密度對區(qū)間中的各個聯(lián)通區(qū)域做歸一化,最后把這些直方圖進行組合進而構(gòu)成特征描述。目標檢測模塊及特征提取模塊允許根據(jù)具體業(yè)務(wù)內(nèi)容而靈活配置,可以基于但不限于上述內(nèi)容。
下級信息處理單元是對上述特征提取模塊生成的結(jié)構(gòu)化信息進行存儲以及進一步同步分發(fā)處理。主要是將數(shù)據(jù)通過信息存儲模塊存儲到下級數(shù)據(jù)庫和通過內(nèi)存更新模塊實時更新到下級內(nèi)存數(shù)據(jù)庫。其中,內(nèi)存更新模塊是通過定時裝置輪詢下級數(shù)據(jù)庫的變動情況,將最新的數(shù)據(jù)轉(zhuǎn)存至下級內(nèi)存數(shù)據(jù)庫。下級內(nèi)存數(shù)據(jù)是將存儲于下級信息處理單元內(nèi)以內(nèi)存為存儲及運算場所的結(jié)構(gòu)化數(shù)據(jù)庫系統(tǒng)。下級數(shù)據(jù)庫是指存在于下級信息處理單元內(nèi)基于物理磁盤存儲的機構(gòu)化數(shù)據(jù)庫。信息同步模塊是接收同步指令后,將下級數(shù)據(jù)庫以及下級內(nèi)存數(shù)據(jù)庫中未同步的數(shù)據(jù)存儲至對應(yīng)的上級數(shù)據(jù)庫及上級內(nèi)存數(shù)據(jù)庫中。
上級信息處理單元是為多個應(yīng)用業(yè)務(wù)提供數(shù)據(jù)支持的處理單元,數(shù)據(jù)來源是遠端的下級信息處理單元。其中,上級內(nèi)存數(shù)據(jù)庫是將存儲于上級信息處理單元內(nèi)以內(nèi)存為存儲及運算場所的結(jié)構(gòu)化數(shù)據(jù)庫。應(yīng)用業(yè)務(wù)模塊是將存儲于上級信息處理單元內(nèi)基于物理磁盤存儲的結(jié)構(gòu)化數(shù)據(jù)庫。
相對于磁盤,內(nèi)存的數(shù)據(jù)讀寫速度要高出幾個數(shù)量級,將數(shù)據(jù)保存在內(nèi)存中相比從磁盤上訪問能夠極大地提高應(yīng)用的性能。下級數(shù)據(jù)庫是按照數(shù)據(jù)結(jié)構(gòu)來組織、存儲和管理數(shù)據(jù)的建立在計算機存儲設(shè)備上的數(shù)據(jù)倉庫。是指存儲在物理磁盤當(dāng)中的數(shù)據(jù)庫管理系統(tǒng),本系統(tǒng)中用于存儲結(jié)構(gòu)化后的特征數(shù)值以及其他相關(guān)結(jié)構(gòu)化數(shù)據(jù)。應(yīng)用業(yè)務(wù)模塊是指需要通過上級數(shù)據(jù)庫、上級內(nèi)存數(shù)據(jù)庫以及圖片目錄服務(wù)器調(diào)取相應(yīng)數(shù)據(jù)用于解決某種需求的具體業(yè)務(wù)邏輯。本模塊為此種業(yè)務(wù)提供一個通用的接口用于相關(guān)數(shù)據(jù)操作。
進一步地,所述下級信息處理單元,還包括:
所述信息同步模塊,用于將下級內(nèi)存數(shù)據(jù)庫中所述目標圖像的特征值更新到上級內(nèi)存數(shù)據(jù)庫,并將下級數(shù)據(jù)庫中所述目標圖像的附屬信息更新到上級數(shù)據(jù)庫中,信息同步模塊用于接收所述上級信息處理單元發(fā)送的控制指令,所述控制指令包括:刪除某指定目標圖像在下級內(nèi)存數(shù)據(jù)庫中存儲的特征值和在下級數(shù)據(jù)庫中存儲的附屬信息;將某指定目標圖像的特征值和附屬信息從上級信息處理單元更新到下級信息處理單元。具體來說,本實施例信息同步模塊是指將下級信息處理單元的處理結(jié)果,復(fù)制并保存到上級信息處理單元內(nèi)。保存路徑主要是從下級數(shù)據(jù)庫以及下級內(nèi)存數(shù)據(jù)庫中的數(shù)據(jù)到與其對應(yīng)的上級數(shù)據(jù)庫及上級內(nèi)存數(shù)據(jù)庫,一般情況下通過網(wǎng)絡(luò)鏈路來完成。
信息同步模塊用于完成上級信息處理單元的上級內(nèi)存數(shù)據(jù)庫和下級信息處理單元的內(nèi)存更新模塊之間的雙向通信。
圖2為本發(fā)明海量圖像特征數(shù)據(jù)分布式采集處理和分級應(yīng)用方法流程圖,如圖2所示,本實施例方法,包括:
步驟101、圖像采集單元采集視頻和圖像并存儲所述視頻和圖像;
步驟102、特征采集模塊獲取所述視頻和圖像,并檢測所述視頻或者圖像中的目標圖像,并提取所述目標圖像對應(yīng)的特征值,將所述特征值和所述目標圖像的附屬信息發(fā)送至所述信息存儲模塊,將目標圖像發(fā)送至圖片目錄服務(wù)器中;
特征采集模塊的具體工作流程如圖3所示。舉例說明,特征采集模塊采用運動目標檢測算法檢測當(dāng)前視頻或者圖像幀中的運動目標。還可以是采用面部識別算法識別特定的目標人物。該運動目標或目標人物對應(yīng)的附屬信息為特征向量與編碼鍵值對、圖像采集時間、采集位置,分辨率,存放位置等,并將上述運動目標或者特定的人員對應(yīng)的特征以及運動目標或者特定的人員對應(yīng)的目標圖像的附屬信息發(fā)送至信息存儲模塊。目標圖像則發(fā)送至圖片目錄服務(wù)器中。
步驟103、所述下級處理單元接收所述特征值,存儲將目標圖像的附屬信息存儲至下級數(shù)據(jù)庫,并根據(jù)所述特征值實時更新所述下級數(shù)據(jù)庫;
下級信息處理單元的工作流程如圖4所示。舉例說明,下級信息處理單元將面部識別數(shù)據(jù)轉(zhuǎn)換為人臉特征碼矩陣。
步驟104、上級信息處理單元接收所述下級信息處理單元發(fā)送的目標圖像的特征值并存儲。
進一步地,所述上級信息處理單元接收所述下級信息處理單元發(fā)送的目標圖像的特征值并存儲之后,包括:
所述目錄服務(wù)器存儲提取目標圖像對應(yīng)的特征值后的目標圖像,并支持所述上級信息處理單元通過FTP、HTTP通信協(xié)議的數(shù)據(jù)訪問。
進一步地,所述并根據(jù)所述特征值實時更新所述下級數(shù)據(jù)庫之后,還包括:
判斷信息同步模塊狀態(tài)是否為同步,若是,則將下級內(nèi)存數(shù)據(jù)庫中所述目標圖像的特征值更新到上級內(nèi)存數(shù)據(jù)庫,并將下級數(shù)據(jù)庫中所述目標圖像的附屬信息更新到上級數(shù)據(jù)庫中,接收上級信息處理單元發(fā)送的控制指令,所述控制指令包括:刪除所述目標圖像在下級內(nèi)存數(shù)據(jù)庫中存儲的特征值和在下級數(shù)據(jù)庫中存儲的附屬信息,將所述目標圖像的特征值和附屬信息從上級信息處理單元更新到下級信息處理單元,若否,則將所述目標圖像的特征值更新至所述下級內(nèi)存數(shù)據(jù)庫中。
如圖5所示,本發(fā)明的下級信息處理單元與上級信息處理單元之間信息同步流程:
步驟1:開始信息同步流程;
步驟2:判斷系統(tǒng)是否設(shè)置為主動同步,判斷結(jié)果為主動同步模式下,進入步驟5信息同步等待狀態(tài);
步驟3:如果步驟2判斷結(jié)果為非主動同步模式,則為定時輪詢模式,判斷是否到達輪詢時間,如果已經(jīng)到達輪詢時間,則進入步驟5;
步驟4:如果步驟3沒有到達輪詢時間,則進入等待輪詢時間到達后進入步驟5;
步驟5:進入等待信息同步狀態(tài);
步驟6:判斷前次同步事務(wù)是否結(jié)束,如果未結(jié)束,則返回步驟5繼續(xù)等待信息同步狀態(tài);
步驟7:如果前次同步事務(wù)已經(jīng)結(jié)束,則將下級數(shù)據(jù)庫及內(nèi)存數(shù)據(jù)庫中標識為未同步的數(shù)據(jù)同步至上級數(shù)據(jù)庫及內(nèi)存數(shù)據(jù)庫;
步驟8:同步完畢后,更新下級數(shù)據(jù)庫及內(nèi)存數(shù)據(jù)庫的同步標識為已同步;
步驟9:結(jié)束當(dāng)前信息同步事務(wù)。
最后應(yīng)說明的是:以上各實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述各實施例對本發(fā)明進行了詳細的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對前述各實施例所記載的技術(shù)方案進行修改,或者對其中部分或者全部技術(shù)特征進行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù)方案的范圍。