一種提取圖像特徵的方法及裝置與流程
2023-09-12 01:07:05 2
本發明涉及圖像處理技術領域,特別是涉及一種提取圖像特徵的方法及裝置。
背景技術:
隨著圖像識別技術的快速發展,各應用領域對圖像識別的精確度也越來越高。為了提高機器識別圖像的精確度,人們通過圖像特徵可視化的方法,來改進機器在圖像識別中使用的圖像識別算法。
圖像特徵可視化具體是指:根據機器提取到的目標圖像的圖像特徵,對目標圖像進行還原。這樣,可以根據原始目標圖像和還原後的目標圖像之間的差異,對圖像識別算法進行改進,若原始目標圖像和還原後的目標圖像的差異較小,相似度較高,則說明當前使用的圖像識別算法較為適用,反之,則說明當前使用的圖像識別算法不適用。
目前,在圖像特徵可視化的過程中,用於提取圖像特徵的圖像識別算法包括主成分分析(principalcomponentanalysis,pca)算法和特徵檢測(histogramoforientedgridients,hog)算法;其中,pca算法擅長提取圖像的細節特徵,但對於細節特徵較少的圖像,比如天空,大海,牆面等,提取到的pca特徵信息中包含的圖像信息不完整;而hog算法擅長提取圖像的輪廓特徵,但提取到的hog特徵信息忽略了圖像的細節信息。這樣,導致根據使用pca算法或者hog算法提取出的圖像特徵,還原後的圖像與原始目標圖像的差異較大、相似度較低。
技術實現要素:
本發明實施例的目的在於提供一種提取圖像特徵的方法及裝置,能夠提取到包括細節特徵和輪廓特徵在內的豐富的圖像特徵。具體技術方案如下:
本發明實施例提出了一種提取圖像特徵的方法,所述方法包括:計算目標圖像中每個塊結構分別對應的第一hog特徵信息,所述塊結構包括預設數量的像素值組成的像素矩陣;針對每個所述塊結構,根據塊結構中的像素矩陣,生成pca算法的輸入集合;使用所述pca算法計算每個所述塊結構對應的pca特徵信息;級聯每個所述塊結構對應的第一hog特徵信息和所述pca特徵信息,生成每個所述塊結構對應的新hogp特徵信息;將所有塊結構對應的新hogp特徵信息級聯起來,生成所述目標圖像的新hogp特徵信息。
優選的,所述計算目標圖像中每個塊結構分別對應的第一hog特徵信息,所述塊結構包括預設數量的像素值組成的像素矩陣的步驟,包括:計算目標圖像中各像素值分別對應的梯度值;根據所述各像素值的梯度值,計算每個單元格分別對應的第二hog特徵信息,其中,所述每個單元格包括像素值矩陣l×l,所述第二hog特徵信息包括維度為r的hog特徵向量;根據所述每個單元格對應的第二hog特徵信息,計算每個塊結構對應的第一hog特徵信息,其中,所述每個塊結構包括單元格矩陣p1×p2,所述第一hog特徵信息包括維度為r×p1×p2的hog特徵向量。
優選的,所述根據塊結構中的像素矩陣,生成pca算法的輸入集合的步驟,包括:根據所述塊結構中的像素矩陣,生成pca算法的輸入集合;其中,所述像素矩陣為m×n,m=l×p1,n=l×p2,所述輸入集合為dm×n={x1,x2,...,xn},所述輸入集合dm×n包括n個像素值樣本x1,x2,...,xn,其中xi={x1,x2,...,xm},一個樣本xi包括所述像素矩陣m×n中第i列的m個像素值。
優選的,所述使用所述pca算法計算每個塊結構的對應的pca特徵信息的步驟,包括:使用所述pca算法計算每個塊結構的對應的pca特徵信息,其中,所述pca特徵信息包括維度為k×l×p2的pca特徵向量,k為所述pca特徵信息中每個樣本包括的像素值數量,k<m;所述級聯每個所述塊結構對應的hog特徵信息和所述pca特徵信息,生成每個所述塊結構對應的新hogp特徵信息的步驟,包括:級聯每個所述塊結構對應的、所述維度為r×p1×p2的hog特徵向量,以及每個所述塊結構對應的、所述維度為k×l×p2的pca特徵向量,生成每個所述塊結構對應的、維度為r×p1×p2+k×l×p2的新hogp特徵向量。
優選的,在所述根據所述每個單元格對應的第一hog特徵信息,計算每個塊結構對應的第二hog特徵信息的步驟之前,所述方法還包括:以塊結構為基本單位,按照預設的步長,對所述目標圖像中各像素值進行掃描,將所述目標圖像劃分為數量為q的所述塊結構;所述將所有塊結構對應的新hogp特徵信息級聯起來,生成所述目標圖像的新hogp特徵信息的步驟,包括:將所有塊結構對應的新hogp特徵信息級聯起來,生成所述目標圖像的維度為(r×p1×p2+k×l×p2)×q的新hogp特徵向量。
本發明實施例還提出了一種提取圖像特徵的裝置,所述裝置包括:第一計算單元,用於計算目標圖像中每個塊結構分別對應的第一hog特徵信息,所述塊結構包括預設數量的像素值組成的像素矩陣;生成單元,用於針對每個所述塊結構,根據塊結構中的像素矩陣,生成pca算法的輸入集合;第二計算單元,用於使用所述pca算法計算每個所述塊結構的對應的pca特徵信息;第一級聯單元,用於級聯每個所述塊結構對應的第一hog特徵信息和所述pca特徵信息,生成每個所述塊結構對應的新hogp特徵信息;第二級聯單元,用於將所有塊結構對應的新hogp特徵信息級聯起來,生成所述目標圖像的新hogp特徵信息。
優選的,所述第一計算單元,包括:第一計算子單元、第二計算子單元和第三計算子單元;所述第一計算子單元,用於計算目標圖像中各像素值分別對應的梯度值;所述第二計算子單元,用於根據所述各像素值的梯度值,計算每個單元格分別對應的第二hog特徵信息,其中,所述每個單元格包括像素值矩陣l×l,所述第二hog特徵信息包括維度為r的hog特徵向量;所述第三計算子單元,用於根據所述每個單元格對應的第二hog特徵信息,計算每個塊結構對應的第一hog特徵信息,其中,所述每個塊結構包括單元格矩陣p1×p2,所述第一hog特徵信息包括維度為r×p1×p2的hog特徵向量。
優選的,所述生成單元,具體用於根據所述塊結構中的像素矩陣,生成pca算法的輸入集合;其中,所述像素矩陣為m×n,m=l×p1,n=l×p2,所述輸入集合為dm×n={x1,x2,...,xn},所述輸入集合dm×n包括n個像素值樣本x1,x2,...,xn,其中xi={x1,x2,...,xm},一個樣本xi包括所述像素矩陣m×n中第i列的m個像素值。
本發明實施例又提出了一種電子設備,包括處理器、通信接口、存儲器和通信總線,其中,處理器,通信接口,存儲器通過通信總線完成相互間的通信;存儲器,用於存放電腦程式;處理器,用於執行存儲器上所存放的程序時,實現如下方法:
計算目標圖像中每個塊結構分別對應的第一hog特徵信息,所述塊結構包括預設數量的像素值組成的像素矩陣;
針對每個所述塊結構,根據塊結構中的像素矩陣,生成pca算法的輸入集合;
使用所述pca算法計算每個所述塊結構對應的pca特徵信息;
級聯每個所述塊結構對應的第一hog特徵信息和所述pca特徵信息,生成每個所述塊結構對應的新hogp特徵信息;
將所有塊結構對應的新hogp特徵信息級聯起來,生成所述目標圖像的新hogp特徵信息。
本發明實施例另提出了一種計算機可讀存儲介質,所述計算機可讀存儲介質內存儲有電腦程式,所述電腦程式被處理器執行時實現如下方法:
計算目標圖像中每個塊結構分別對應的第一hog特徵信息,所述塊結構包括預設數量的像素值組成的像素矩陣;
針對每個所述塊結構,根據塊結構中的像素矩陣,生成pca算法的輸入集合;
使用所述pca算法計算每個所述塊結構對應的pca特徵信息;
級聯每個所述塊結構對應的第一hog特徵信息和所述pca特徵信息,生成每個所述塊結構對應的新hogp特徵信息;
將所有塊結構對應的新hogp特徵信息級聯起來,生成所述目標圖像的新hogp特徵信息。
本發明實施例提供的一種提取圖像特徵的方法,首先,計算目標圖像中每個塊結構分別對應的第一hog特徵信息,然後,針對每個塊結構,根據塊結構中的像素矩陣,生成pca算法的輸入集合;接下來,使用pca算法計算每個塊結構的對應的pca特徵信息;級聯每個塊結構對應的第一hog特徵信息和pca特徵信息,生成每個塊結構對應的新hogp特徵信息;最後,將所有塊結構對應的新hogp特徵信息級聯起來,生成目標圖像的新hogp特徵信息。
可見,本發明實施例所述的提取圖像特徵的方法,能夠將hog算法和pca算法結合起來,生成包括hog特徵信息和pca特徵信息的新hogp特徵信息,使得最終生成的目標圖像的新hogp特徵信息包含的圖像特徵更加豐富準確,不僅能夠體現目標圖像細節特徵,而且能夠體現目標圖像的輪廓特徵;這樣,根據目標圖像的新hogp特徵信息進行可視化得到的還原圖像,與原始目標圖像的差異較小、相似度較高。當然,實施本發明的任一產品或方法必不一定需要同時達到以上所述的所有優點。
附圖說明
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
圖1為本發明實施例的提取圖像特徵的方法的一種流程圖;
圖2為本發明實施例的提取圖像特徵的方法的又一種流程圖;
圖3為本發明實施例中特徵字典的示意圖;
圖4為本發明實施例的圖像可視化結果的示意圖;
圖5為本發明實施例的提取圖像特徵的裝置的結構示意圖;
圖6為本發明實施例的電子設備的結構示意圖。
具體實施方式
下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬於本發明保護的範圍。
隨著圖像識別技術的快速發展,各應用領域對圖像識別的精確度也越來越高。為了提高機器識別圖像的精確度,人們通過圖像特徵可視化的方法,來改進機器在圖像識別中使用的圖像識別算法。
圖像特徵可視化具體是指:根據機器提取到的目標圖像的圖像特徵,通過算法模型對目標圖像進行還原。這樣,可以根據原始目標圖像和還原後的目標圖像之間的差異,對圖像識別算法進行改進,若原始目標圖像和還原後的目標圖像的差異較小,相似度較高,則說明當前使用的圖像識別算法較為適用,反之,則說明當前使用的圖像識別算法不適用。
目前,在圖像特徵可視化的過程中,用於提取圖像特徵的算法包括pca算法、hog算法、局部二值模式(localbinarypattern,lbp)算法、通用搜索樹(generalizedsearchtrees,gist)算法、尺度不變特徵轉換(scaleinvariantfeaturetransform,sift)算法等;用於根據圖像特徵還原目標圖像的算法模型包括詞包模型、稀疏字典模型以及反卷積網絡模型等。
pca算法通過對目標圖像數據進行簡化處理,以濾除目標圖像數據中的冗餘數據;使用pca算法提取目標圖像的pca特徵信息的流程如下:
步驟1,根據目標圖像的像素值,確定pca算法的樣本,多個樣本組成一個矩陣,稱為樣本集合;
步驟2,求該樣本集合的協方差矩陣;
步驟3,求該協方差矩陣的特徵值和特徵向量;
步驟4,將特徵向量按對應特徵值大小從上到下按行排列成矩陣,取前k行組成矩陣w,w為變換矩陣;
步驟5,通過變換矩陣w,將樣本集合中的每個樣本的維數降低,達到濾除目標圖像數據中的冗餘數據的目的,降維後的樣本集合歸一化處理後即為目標圖像的pca特徵信息。
因此,使用pca算法提取到的pca特徵信息能夠包含圖像的細節特徵,但對於細節特徵較少的圖像特徵包含的不完整,比如天空,大海,牆面等。
hog算法能夠通過梯度或邊緣的方向密度分布體現目標圖像中局部目標的表象和形狀;使用hog算法提取目標圖像的hog特徵信息的流程如下:
步驟1,對目標圖像通過gamma校正對顏色空間進行標準化處理;
步驟2,計算目標圖像中各像素點分別對應的梯度值;
步驟3,根據各像素點的梯度值,計算每個單元格的hog特徵信息,每個單元格由預設第一數量的像素點組成;
步驟4,根據每個單元格的hog特徵信息,計算每個塊結構的hog特徵信息;
步驟5,將目標圖像中所有塊結構的hog特徵信息級聯起來,得到目標圖像的hog特徵信息。
因此,使用hog算法提取目標圖像的hog特徵信息很好的體現了目標圖像的輪廓特徵,但忽略了目標圖像的細節信息。
針對上述問題,本發明實施例公開了一種提取圖像特徵的方法。參見圖1,圖1為本發明實施例的提取圖像特徵的方法的一種流程圖,包括如下步驟:
步驟101,計算目標圖像中每個塊結構分別對應的第一hog特徵信息。
其中,該塊結構包括預設數量的像素值組成的像素矩陣。
在本步驟中,將目標圖像的像素值劃分為多個塊結構,計算出每個塊結構對應的第一hog特徵信息;需要說明的是,計算目標圖像中每個塊結構對應的hog特徵信息可以參考現有技術,在此不再贅述。
這樣,目標圖像的第一hog特徵信息能夠體現目標圖像的輪廓特徵。
步驟102,針對每個該塊結構,根據塊結構中的像素矩陣,生成pca算法的輸入集合。
在本步驟中,生成目標圖像中每個塊結構對應的pca算法的輸入集合,以計算目標圖像的pca特徵信息,一個塊結構對應一個pca算法的輸入集合,pca算法的輸入集合的數量與塊結構的數量相同。
這樣,在後面的步驟中就能夠根據pca算法的輸入集合,使用pca算法計算目標圖像的pca特徵信息。
步驟103,使用該pca算法計算每個該塊結構的對應的pca特徵信息。
在本步驟中,根據步驟102計算出的pca的輸入集合,計算每個塊結構對應的pca特徵信息。需要說明的是,根據pca的輸入集合,使用pca算法計算pca特徵信息可以參考現有技術,在此不再贅述。
這樣,目標圖像的pca特徵信息能夠體現目標圖像的細節特徵。
步驟104,級聯每個該塊結構對應的第一hog特徵信息和該pca特徵信息,生成每個該塊結構對應的新hogp特徵信息;
在本步驟中,將步驟101中計算出的塊結構對應的第一hog特徵信息,與步驟103計算出的塊結構對應的pca特徵信息級聯起來,生成每個塊結構對應的新hogp特徵信息。
這樣,每個塊結構對應的新hogp特徵信息不僅能夠體現塊結構對應的部分圖像的輪廓特徵,而且能夠體現塊結構對應的部分圖像的細節特徵。
步驟105,將所有塊結構對應的新hogp特徵信息級聯起來,生成該目標圖像的新hogp特徵信息。
在本步驟中,將步驟104生成的所有塊結構對應的新hogp特徵信息級聯起來,生成完整的目標圖像的新hogp特徵信息。
這樣,目標圖像的新hogp特徵信息不僅能夠體現目標圖像的輪廓特徵,而且能夠體現目標圖像的細節特徵;相比傳統的pca算法和hog算法,新hogp特徵信息包含的圖像特徵更加豐富準確,使得根據新hogp特徵信息進行可視化得到的還原圖像,與原始目標圖像的差異較小、相似度較高。
可見,本發明實施例提供的提取圖像特徵的方法,能夠將hog算法和pca算法結合起來,生成包括hog特徵信息和pca特徵信息的新hogp特徵信息,使得最終生成的目標圖像的新hogp特徵信息包含的圖像特徵更加豐富準確,不僅能夠體現目標圖像細節特徵,而且能夠體現目標圖像的輪廓特徵;這樣,根據目標圖像的新hogp特徵信息進行可視化得到的還原圖像,與原始目標圖像的差異較小、相似度較高。
本發明的一個優選實施例公開了一種提取圖像特徵的方法。參見圖12,圖12為本發明實施例的提取圖像特徵的方法的又一種流程圖,包括如下步驟:
步驟201,計算目標圖像中各像素值分別對應的梯度值。
在本步驟中,首先,對目標圖像通過gamma校正對顏色空間進行標準化處理,以降低目標圖像局部的陰影和光照變化的影響;具體的,gamma標準化公式如公式(1)所示:
i(x,y)=i(x,y)gamma(1)
在公式(1)中,i表示目標圖像,gamma通常取值為0.5。
然後,對目標圖像i中每個像素值(x,y)求梯度值;具體的,像素值的梯度值大小的計算公式如公式(2)所示,像素值的梯度方向的計算公式如公式(3)所示。
在公式(2)和公式(3)中,i表示目標圖像,(x,y)表示目標圖像i中像素值的位置。
步驟202,根據該各像素值的梯度值,計算每個單元格分別對應的第二hog特徵信息。
其中,該每個單元格包括像素值矩陣l×l,該第二hog特徵信息包括維度為r的hog特徵向量。
在本步驟中,首先,將目標圖像劃分為多個單元格,其中,每個單元格是由l×l個像素組成的像素值矩陣;
接下來,針對每個單元格,均執行如下處理:按照像素值的梯度方向,將單元格中的所有像素值劃分為r個區間;計算每個區間中的各像素的梯度值大小總和;按照梯角度區間大小順序,將r個區間分別對應的梯度值大小總和排列形成一個r維hog特徵向量,r維特徵向量就是該單元格對應的第一hog特徵信息。
比如,每個單元格是由8×8個像素值組成的像素值矩陣;針對每個單元格,均執行如下處理:按照像素值的梯度方向,將單元格中的所有像素值劃分為8個區間,其中,梯度方向位於[0°,45°)的像素值劃分為第1區間,梯度方向位於[45°,90°)的像素值劃分為第2區間,梯度方向位於[90°,135°)的像素值劃分為第3區間,梯度方向位於[135°,180°)的像素值劃分為第4區間,梯度方向位於[180°,225°)的像素值劃分為第5區間,梯度方向位於[225°,270°)的像素值劃分為第6區間,梯度方向位於[270°,315°)的像素值劃分為第7區間,梯度方向位於[315°,0°)的像素值劃分為第8區間;分別計算每個區間的像素值的梯度值大小總和;將8個區間的梯度值大小總和排列形成一個8維hog特徵向量,8維hog特徵向量就是一個單元格對應的第一hog特徵信息。可以理解的,如果按照像素值的梯度方向將單元格中的所有像素值劃分為9個區間,則最終形成的第一hog特徵信息是一個9維的hog特徵向量。
步驟203,根據該每個單元格對應的第二hog特徵信息,計算每個塊結構對應的第一hog特徵信息。
其中,該每個塊結構包括單元格矩陣p1×p2,該第一hog特徵信息包括維度為r×p1×p2的hog特徵向量。
在本步驟中,首先,將每p1×p2個單元格組成一個塊結構,可以理解的,每個塊結構包括單元格矩陣p1×p2;接下來,針對每個塊結構,將塊結構中每個單元格對應的第二hog特徵信息排列起來,形成一個維度為r×p1×p2的hog特徵向量;最後,對維度為r×p1×p2的hog特徵向量進行歸一化處理,得到塊結構對應的第一hog特徵信息。
比如,將每2×3個單元格組成一個塊結構,已知每個單元格對應一個8維hog特徵向量;將6個單元格分別對應的8維hog特徵向量排列起來,可以得到一個48維hog特徵向量;對48維hog特徵向量進行歸一化處理,得到塊結構對應的第一hog特徵信息。
需要說明的是,在本發明實施例中,對於計算目標圖像中塊結構對應的hog特徵信息的方法,不僅局限於步驟201至步驟202所述的方法,還可以根據實際情況選擇其他方法計算目標圖像的塊結構對應的hog特徵信息。
在實際應用中,在步驟203之前,需要以塊結構為基本單位,按照預設的步長,對目標圖像中各像素值進行掃描,將目標圖像劃分為一定數量的塊結構。
這樣,才能在步驟203中計算出每個塊結構對應的第一hog特徵信息。
具體的,步長可以是一個單元格,也可以根據實際需求,將步長設置為若干個像素,比如8個像素;那麼,可以按照8個像素的步長,對目標圖像中各像素值進行掃描,將目標圖像劃分為多個塊結構。
這樣,目標圖像的第一hog特徵信息能夠體現目標圖像的輪廓特徵。
步驟204,根據該塊結構中的像素矩陣,生成pca算法的輸入集合。
其中,該像素矩陣為m×n,m=l×p1,n=l×p2,該輸入集合為dm×n={x1,x2,...,xn},該輸入集合dm×n包括n個像素值樣本x1,x2,...,xn,其中xi={x1,x2,...,xm},一個樣本xi包括該像素矩陣m×n中第i列的m個像素值。
具體的,一個塊結構由p1×p2個單元格組成,一個單元格由l×l個像素值組成,那麼,一個塊結構包括m×n個像素值組成的像素矩陣,其中,m=l×p1,n=l×p2;這樣,輸入集合中包括的樣本數量為像素矩陣的列數n,也即輸入集合包括n個樣本,每個樣本包括像素矩陣中的一列像素值,也即每個樣本包括m個像素值。
比如,一個塊結構由2×3個單元格,一個單元格由8×8個像素組成,那麼,一個塊結構包括16×24個像素值組成的像素矩陣,將像素矩陣的每一列作為一個樣本,則共有24個樣本,每個樣本包括16個像素值,一個像素值作為一個特徵,即每個樣本包括16個特徵。
步驟205,使用該pca算法計算每個塊結構的對應的pca特徵信息。
其中,該pca特徵信息包括維度為k×l×p2的pca特徵向量,k為該pca特徵信息中每個樣本包括的主成分數量,k<m。
具體的,根據pca算法的輸入集合計算pca特徵信息的過程如下所示:
首先,針對每個塊結構,計算塊結構對應的pca算法的輸入集合d的協方差矩陣c;
在公式(4)中,輸入集合d為m×n矩陣,n表示輸入集合d中的樣本數量,表示輸入集合d的均值,t表示對矩陣進行轉置處理,c為輸入集合d的協方差矩陣,為m×m矩陣。
接下來,對協方差矩陣c求特徵值和特徵向量;將特徵向量按照對應特徵值大小,從左往右按列排列成矩陣,取前k列組成變換矩陣w,變換矩陣w為m×k矩陣;
最後,通過變換矩陣w,將輸入集合d中的每個樣本從m維空間轉換到維空k維空間。
y=wtd(5)
在公式(5)中,y表示對輸入集合d中的每個樣本進行降維處理後得到的數據集,具體為k×n矩陣,也就是說,輸入集合d中的每個樣本均包括m個像素值,降維後的數據集y中的每個樣本均包括k個像素值。
可以理解的,包括k×n矩陣的數據集y就是一個塊結構的對應的pca特徵信息。
在實際應用中,考慮協方差矩陣c特徵值的貢獻率,以及使降維後的維數儘量小,選取特徵值較大的k維特徵向量作為變換矩陣w;因此,使用pca算法對輸入集合d進行計算,輸入集合d包括m×n像素矩陣,可獲得降維後的數據集y,數據集y包括k×n像素矩陣;最終,將其歸一化後排列成一個k×n維的pca特徵信息。
比如,將k值設置為2;已知一個塊結構由2×3個單元格,一個單元格由8×8個像素組成,因此,一個塊結構包括16×24個像素值組成的像素矩陣,那麼,計算出的塊結構的對應的pca特徵信息為2×24維的pca特徵向量。
這樣,在後面的步驟中就能夠根據pca算法的輸入集合,使用pca算法計算目標圖像的pca特徵信息。
步驟206,級聯每個該塊結構對應的、該維度為r×p1×p2的hog特徵向量,以及每個該塊結構對應的、該維度為k×l×p2的pca特徵向量,生成每個該塊結構對應的、維度為r×p1×p2+k×l×p2的新hogp特徵向量。
在本步驟中,針對每個塊結構,將維度為r×p1×p2的hog特徵向量和維度為k×l×p2的pca特徵向量級聯起來,生成維度為r×p1×p2+k×l×p2的新hogp特徵向量。
比如,已知每個塊結構對應的hog特徵向量為48維的hog特徵向量,每個塊結構對應的pca特徵向量為2×24維的pca特徵向量,那麼,每個塊結構對應的新hogp特徵向量為96維(48維+2×24維)的新hogp特徵向量。
步驟207,將所有塊結構對應的新hogp特徵信息級聯起來,生成該目標圖像的新hogp特徵信息。
將所有塊結構對應的新hogp特徵信息級聯起來,生成該目標圖像的維度為(r×p1×p2+k×l×p2)×q的新hogp特徵向量。
在本步驟中,將所有的塊結構對應的新hogp特徵信息級聯起來,生成目標圖像的新hogp特徵向量,維度為(r×p1×p2+k×l×p2)×q。
可選的,在步驟203之前,本發明實施例提供的提取圖像特徵的方法還包括:
以塊結構為基本單位,按照預設的步長,對該目標圖像中各像素值進行掃描,將該目標圖像劃分為數量為q的該塊結構。
比如,當q為1000時,已知每個塊結構對應的新hogp特徵向量為96維,那麼,目標圖像的新hogp特徵向量為1000×96=96000維。
可見,本發明實施例提供的提取圖像特徵的方法,能夠將hog算法和pca算法結合起來,生成包括hog特徵信息和pca特徵信息的新hogp特徵信息,使得最終生成的目標圖像的新hogp特徵信息包含的圖像特徵更加豐富準確,不僅能夠體現目標圖像細節特徵,而且能夠體現目標圖像的輪廓特徵;這樣,根據目標圖像的新hogp特徵信息進行可視化得到的還原圖像,與原始目標圖像的差異較小、相似度較高。
在本發明的一種應用實施例中,通過對目標圖像的可視化處理來驗證本發明實施例提出的提取圖像特徵的方法的有效性。
在實際應用中,需要預先建立一個特徵字典。
具體的,首先,將任意的彩色圖像或者黑白圖像作為測試圖像;使用本發明實施例提供的提取圖像特徵的方法,提取測試圖像中每個塊結構的新hogp特徵信息,以及塊結構中的像素值組成的圖像塊;
接下來,針對每個塊結構,將提取到的新hogp特徵信息和圖像塊一一對應起來,組合成一個「單詞」;這樣,多個塊結構的「單詞」,就組成了特徵字典。
具體的,特徵字典如圖3所示,圖3為本發明實施例中特徵字典的示意圖。在圖3中,上面一排是測試圖像中各塊結構的新hogp特徵信息,具體的,測量圖像中包括k個塊結構,α1…αk為測量圖像中k個塊結構分別對應的新hogp特徵信息;下面一排是與上面一排中每個塊結構的新hogp特徵信息對應的圖像塊,測試圖像一共包括k個圖像塊,同樣記為α1…αk;這樣,圖3中的每列即為一個「單詞」,k個「單詞」就組成了特徵字典。
需要說明的是,作為測試圖像的圖像當然儘量選擇細節豐富的圖像,測試圖像的圖像數量無需過多,只要包括不同形狀的特徵即可。
目標圖像可視化處理的具體步驟如下:
第1步,使用本發明實施例提出的提取圖像特徵的方法,提取目標圖像中每個塊結構的新hogp特徵信息。
第2步:計算目標圖像中每個塊結構的可視化圖像。
首先,針對目標圖像中每個塊結構,求解對應的稀疏向量α。
具體的,可以使用公式(6)求解該塊結構對應的向量α的稀疏解,即稀疏向量α;由公式(6)可以看出,首先,通過求解αdd-pi的二範數最小,即向量α與dd線性組合後的特徵、與目標圖像中提取到的新的hogp特徵信息的距離最小,初步確定向量α;再通過限定向量α的一範數小於ε得到向量α的稀疏解。
在公式(6)中,向量α是一個m維向量;m值太小不足以很好的表達目標圖像的圖像特徵,太大又增加運算成本,本發明實施例設定m為1024;dd表示從特徵字典中選出的1024個新hogp特徵信息,具體的,可以採用lasso算法,從特徵字典中選出的1024個新hogp特徵信息;pi表示目標圖像的第i個結構塊的新hogp特徵信息;ε是一個係數。
然後,從特徵字典中確定選出的1024個新hogp特徵信息對應的圖像塊,將該1024個圖像塊根據向量α進行線性加權後,疊加得到該塊結構的可視化圖像。
第3步:將每個塊結構的可視化圖像,按照目標圖像的順序拼接起來,再通過高斯濾波後即得到還原後的目標圖像。
具體如圖4所示,圖4為本發明實施例的圖像可視化結果的示意圖;在圖4中,最左邊一列為原始圖像,中間一列為根據hog特徵信息還原後的目標圖像,最右邊一列為根據新hogp特徵信息還原後的目標圖像。可以發現,相比根據hog特徵信息還原後的目標圖像,根據本發明實施例所述的新hogp特徵信息還原後的目標圖像更加清晰準確。
可見,使用本發明實施例提出的提取圖像特徵的方法提出的新hogp特徵信息,在用於目標圖像的可視化處理時,得到的還原後的目標圖像與原始目標圖像的相似度高,差異小。
本發明實施例又提出了一種提取圖像特徵的裝置,參見圖5,圖5為本發明實施例的提取圖像特徵的裝置的結構示意圖;該裝置包括:
第一計算單元501,用於計算目標圖像中每個塊結構分別對應的第一hog特徵信息,該塊結構包括預設數量的像素值組成的像素矩陣;
生成單元502,用於針對每個該塊結構,根據塊結構中的像素矩陣,生成pca算法的輸入集合;
第二計算單元503,用於使用該pca算法計算每個該塊結構的對應的pca特徵信息;
第一級聯單元504,用於級聯每個該塊結構對應的第一hog特徵信息和該pca特徵信息,生成每個該塊結構對應的新hogp特徵信息;
第二級聯單元505,用於將所有塊結構對應的新hogp特徵信息級聯起來,生成該目標圖像的新hogp特徵信息。
優選的,該第一計算單元501,包括:第一計算子單元、第二計算子單元和第三計算子單元;
該第一計算子單元,用於計算目標圖像中各像素值分別對應的梯度值;
該第二計算子單元,用於根據該各像素值的梯度值,計算每個單元格分別對應的第二hog特徵信息,其中,該每個單元格包括像素值矩陣l×l,該第一hog特徵信息包括維度為r的hog特徵向量;
該第三計算子單元,用於根據該每個單元格對應的第二hog特徵信息,計算每個塊結構對應的第一hog特徵信息,其中,該每個塊結構包括單元格矩陣p1×p2,該第一hog特徵信息包括維度為r×p1×p2的hog特徵向量。
優選的,該生成單元502,具體用於根據該塊結構中的像素矩陣,生成pca算法的輸入集合;其中,該像素矩陣為m×n,m=l×p1,n=l×p2,該輸入集合為dm×n={x1,x2,...,xn},該輸入集合dm×n包括n個像素值樣本x1,x2,...,xn,其中xi={x1,x2,...,xm},一個樣本xi包括該像素矩陣m×n中第i列的m個像素值。
優選的,該第二計算單元503,具體用於使用該pca算法計算每個塊結構的對應的pca特徵信息,其中,該pca特徵信息包括維度為k×l×p2的pca特徵向量,k為該pca特徵信息中每個樣本包括的像素值數,k<m;
該第一級聯單元504,具體用於級聯每個該塊結構對應的、該維度為r×p1×p2的hog特徵向量,以及每個該塊結構對應的、該維度為k×l×p2的pca特徵向量,生成每個該塊結構對應的、維度為r×p1×p2+k×l×p2的新hogp特徵向量。
優選的,該裝置還包括:
掃描單元,用於以塊結構為基本單位,按照預設的步長,對該目標圖像中各像素值進行掃描,將該目標圖像劃分為數量為q的該塊結構;
該第二級聯單元505,具體用於將所有塊結構對應的新hogp特徵信息級聯起來,生成該目標圖像的維度為(r×p1×p2+k×l×p2)×q的新hogp特徵向量。
可見,本發明實施例提供的提取圖像特徵的裝置,能夠將hog算法和pca算法結合起來,生成包括hog特徵信息和pca特徵信息的新hogp特徵信息,使得最終生成的目標圖像的新hogp特徵信息體現了目標圖像細節特徵和輪廓特徵;這樣,根據目標圖像的新hogp特徵信息能夠查找到與目標圖像的相似度較高的圖像。
本發明實施例還提供了一種電子設備,參考圖6,圖6為本發明實施例的電子設備的結構示意圖。如圖6所示,包括處理器601、通信接口602、存儲器603和通信總線604,其中,處理器601,通信接口602,存儲器603通過通信總線604完成相互間的通信,
存儲器603,用於存放電腦程式;
處理器601,用於執行存儲器603上所存放的程序時,實現如下步驟:
計算目標圖像中每個塊結構分別對應的第一hog特徵信息,該塊結構包括預設數量的像素值組成的像素矩陣;
針對每個該塊結構,根據塊結構中的像素矩陣,生成pca算法的輸入集合;
使用該pca算法計算每個該塊結構的對應的pca特徵信息;
級聯每個該塊結構對應的第一hog特徵信息和該pca特徵信息,生成每個該塊結構對應的新hogp特徵信息;
將所有塊結構對應的新hogp特徵信息級聯起來,生成該目標圖像的新hogp特徵信息。
上述電子設備提到的通信總線可以是外設部件互連標準(peripheralcomponentinterconnect,pci)總線或擴展工業標準結構(extendedindustrystandardarchitecture,eisa)總線等。該通信總線可以分為地址總線、數據總線、控制總線等。為便於表示,圖中僅用一條粗線表示,但並不表示僅有一根總線或一種類型的總線。
通信接口用於上述電子設備與其他設備之間的通信。
存儲器可以包括隨機存取存儲器(randomaccessmemory,ram),也可以包括非易失性存儲器(non-volatilememory,nvm),例如至少一個磁碟存儲器。可選的,存儲器還可以是至少一個位於遠離前述處理器的存儲裝置。
上述的處理器可以是通用處理器,包括中央處理器(centralprocessingunit,cpu)、網絡處理器(networkprocessor,np)等;還可以是數位訊號處理器(digitalsignalprocessing,dsp)、專用集成電路(applicationspecificintegratedcircuit,asic)、現場可編程門陣列(field-programmablegatearray,fpga)或者其他可編程邏輯器件、分立門或者電晶體邏輯器件、分立硬體組件。
可見,本發明實施例提供的一種電子設備,能夠將hog算法和pca算法結合起來,生成包括hog特徵信息和pca特徵信息的新hogp特徵信息,使得最終生成的目標圖像的新hogp特徵信息體現了目標圖像細節特徵和輪廓特徵;這樣,根據目標圖像的新hogp特徵信息能夠查找到與目標圖像的相似度較高的圖像。
本發明實施例另提供了一種計算機可讀存儲介質,所述計算機可讀存儲介質內存儲有電腦程式,所述電腦程式被處理器執行時實現如下步驟:
計算目標圖像中每個塊結構分別對應的第一hog特徵信息,所述塊結構包括預設數量的像素值組成的像素矩陣;
針對每個所述塊結構,根據塊結構中的像素矩陣,生成pca算法的輸入集合;
使用該pca算法計算每個該塊結構的對應的pca特徵信息;
級聯每個該塊結構對應的第一hog特徵信息和該pca特徵信息,生成每個該塊結構對應的新hogp特徵信息;
將所有塊結構對應的新hogp特徵信息級聯起來,生成該目標圖像的新hogp特徵信息。
可見,本發明實施例提供的計算機可讀存儲介質,能夠將hog算法和pca算法結合起來,生成包括hog特徵信息和pca特徵信息的新hogp特徵信息,使得最終生成的目標圖像的新hogp特徵信息體現了目標圖像細節特徵和輪廓特徵;這樣,根據目標圖像的新hogp特徵信息能夠查找到與目標圖像的相似度較高的圖像。
需要說明的是,在本文中,諸如第一和第二等之類的關係術語僅僅用來將一個實體或者操作與另一個實體或操作區分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關係或者順序。而且,術語「包括」、「包含」或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備所固有的要素。在沒有更多限制的情況下,由語句「包括一個……」限定的要素,並不排除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同要素。
本說明書中的各個實施例均採用相關的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對於系統實施例而言,由於其基本相似於方法實施例,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。
以上所述僅為本發明的較佳實施例而已,並非用於限定本發明的保護範圍。凡在本發明的精神和原則之內所作的任何修改、等同替換、改進等,均包含在本發明的保護範圍內。