TWI787841B - 影像識別方法 - Google Patents
影像識別方法 Download PDFInfo
- Publication number
- TWI787841B TWI787841B TW110119204A TW110119204A TWI787841B TW I787841 B TWI787841 B TW I787841B TW 110119204 A TW110119204 A TW 110119204A TW 110119204 A TW110119204 A TW 110119204A TW I787841 B TWI787841 B TW I787841B
- Authority
- TW
- Taiwan
- Prior art keywords
- tensor
- depth
- sub
- values
- image
- Prior art date
Links
Images
Landscapes
- Image Processing (AREA)
- Image Analysis (AREA)
Abstract
一種影像識別方法,包括下述步驟。輸入影像至偵測模型而獲得熱圖張量、參考深度張量、權重張量以及子目標張量。自熱圖張量獲得K個位置索引值。基於權重張量以及子目標張量,獲得融合張量。基於融合張量與參考深度張量,獲得預測深度張量。參考K個位置索引值,自預測深度張量中取出K個向量。對所述K個向量執行投影矩陣的轉換,以獲得真實空間中的K個座標向量。
Description
本發明是有關於一種物件追蹤演算法,且特別是有關於一種影像識別方法。
手勢與手姿態相關的研究與應用是一種與電腦系統溝通的方式。隨著擴增實境(augmented reality,AR)、虛擬實境(virtual reality,VR)、大屏顯示系統等電腦視覺技術的發展,市面上關於手的應用漸漸從以往的手勢辨識(hand gesture recognition)朝向手姿態估測與追蹤(hand pose estimation and tracking)發展。比起單純的辨識手勢,如果可以知道整個手的狀態,例如每個指節(joint)點的位置,將可利用雙手來進行更自然、更流暢的操作,並進一步提高應用範圍。
一般而言,傳統的手姿態追蹤系統需經過至少兩階段的模型處理,即,手部偵測模型以及指節偵測模型。先利用手部偵測模型偵測各圖像中的手部位置,接著,利用指節偵測模型計算各個手的指節點在二維或三維空間中的實際位置,之後將其結果傳送給系統做後續的辨識或操作的動作。
然而,由於電腦視覺技術的要求越來越高,既要由即時性還要兼顧高影格率(Frames per second,FPS)的分析辨識。因此,現有兩階段處理的手姿態追蹤系統可能會造成高延遲性且降低使用者用戶體驗(Quality of Experience,QoE),且其過程也涉及一些複雜的前處理或後處理,難以應用於手機或VR/AR眼鏡等消費者終端上。
“先前技術”段落只是用來幫助了解本發明內容,因此在“先前技術”段落所揭露的內容可能包含一些沒有構成所屬技術領域中具有通常知識者所知道的習知技術。在“先前技術”段落所揭露的內容,不代表該內容或者本發明一個或多個實施例所要解決的問題,在本發明申請前已被所屬技術領域中具有通常知識者所知曉或認知。
本發明提供一種影像識別方法,可一階段來找出影像中之目標物所包括的子目標的位置。
本發明的影像識別方法,包括:輸入影像至偵測模型而獲得熱圖張量、參考深度張量、權重張量以及子目標張量;自熱圖張量獲得K個位置索引值;基於權重張量以及子目標張量,獲得融合張量;基於融合張量與參考深度張量,獲得預測深度張量;參考K個位置索引值,自預測深度張量中取出K個向量;以及對所述K個向量執行投影矩陣的轉換,以獲得真實空間中的K個座標向量。在此,熱圖張量包括用以預測影像的多個位置索引值對應的多個區塊中出現目標物的多個機率值,目標物中包括多個子目標。參考深度張量包括每一區塊對應的第一深度值,其為預測拍攝所述影像的取像裝置與每一區塊之間的距離。權重張量包括用以對所述子目標進行優化的多個權值。子目標張量包括用以預測所述子目標在影像中的多個座標位置及所述子目標的第二深度值。所述融合張量包括基於所述權值與所述第二深度值而獲得的多個融合深度值。所述預測深度張量包括基於所述融合深度值與所述第一深度值而獲得的多個預測深度值。
在本發明的一實施例中,所述熱圖張量包括對應至所述區塊的多個區塊資料,各區塊資料包括對應的一個位置索引值以及兩個機率值,所述兩個機率值代表對應的一個區塊中包括左手的機率值及包括右手的機率值。其中,自熱圖張量獲得K個位置索引值的步驟包括:根據所述兩個機率值,自所述區塊資料中具有最高機率值的區塊資料起,取出K個區塊資料對應的K個位置索引值。
在本發明的一實施例中,所述影像的解析度為H×L,在輸入影像至偵測模型後會獲得解析度縮小S倍的熱圖張量、參考深度張量、權重張量以及子目標張量。其中,基於權重張量以及子目標張量,獲得融合張量的步驟包括:利用下述公式對權重張量以及子目標張量進行卷積:
O(a,b,c,d)=
;
其中,ks為核大小,W為權重張量,V為子目標張量,a={1,2,...,H/S},b={1,2,...,L/S},c={1,2,...,N},N為子目標數量,d={1,2,3}。
在本發明的一實施例中,所述基於融合張量與參考深度張量,獲得預測深度張量的步驟包括:將融合張量中各位置索引值對應的所述多個融合深度值與參考深度張量中各位置索引值對應的第一深度值相加,而獲得各位置索引值對應的多個預測深度張量。
在本發明的一實施例中,所述偵測模型為基於卷積神經網路的特徵提取器。
在本發明的一實施例中,所述目標物為手,所述子目標為指節點。
基於上述,本揭露能夠藉由一次性的推理同時完成兩種任務,分別為偵測目標物以及偵測目標物中所包括的子目標,而無需基於各別的任務來建立模型。
有關本發明之前述及其他技術內容、特點與功效,在以下配合參考圖式之一較佳實施例的詳細說明中,將可清楚的呈現。以下實施例中所提到的方向用語,例如:上、下、左、右、前或後等,僅是參考附加圖式的方向。因此,使用的方向用語是用來說明並非用來限制本發明。
本發明提出一種影像識別方法,其可透過電子裝置來實現。為了使本發明之內容更為明瞭,以下特舉實施例作為本發明確實能夠據以實施的範例。
圖1是依照本發明一實施例的電子裝置的方塊圖。請參照圖1,電子裝置100包括處理器110以及儲存器120。處理器110耦接至儲存器120。
處理器110可以是具備運算處理能力的硬體(例如晶片組、處理器等)、軟體元件(例如作業系統、應用程式等),或硬體及軟體元件的組合。處理器110例如是中央處理單元(Central Processing Unit,CPU)、圖形處理單元(Graphics Processing Unit,GPU),或是其他可程式化之微處理器(Microprocessor)、數位訊號處理器(Digital Signal Processor,DSP)、可程式化控制器、特殊應用積體電路(Application Specific Integrated Circuits,ASIC)、程式化邏輯裝置(Programmable Logic Device,PLD)或其他類似裝置。
儲存器120例如是任意型式的固定式或可移動式隨機存取記憶體、唯讀記憶體、快閃記憶體、安全數位卡、硬碟或其他類似裝置或這些裝置的組合。儲存器120中儲存有多個程式碼片段,而上述程式碼片段在被安裝後,由處理器110來執行,藉此來執行顯示影像識別方法。
圖2是依照本發明一實施例的影像識別方法的流程圖。圖3是依照本發明一實施例的影像識別模型的架構圖。本實施例的影像識別模型為一階段的神經網路(Neural Network,NN)模型。影像識別模型的輸入為二維的任意類型的影像300,輸出的目標清單390包括根據機率值排名的多個子目標組合。
請參照圖2及圖3,在步驟S205中,輸入影像300至偵測模型310而獲得熱圖(Heat-Map)張量320、參考深度張量330、權重張量340以及子目標張量350。在此,影像300的張量維度例如為[H, L, C]。其中,H是影像的高度(Height)、L是影像的寬度(Length),C是影像的通道數(Channel)。例如,倘若輸入來源是彩色影像(RGB-based Image)則C=3。倘若輸入來源是深度影像(depth-based Image),則C=1。
熱圖張量320包括用以預測影像300的多個位置索引值對應的多個區塊中出現目標物的多個機率值。所述目標物還包括多個子目標。參考深度張量330包括影像300的每一區塊對應的第一深度值(作為參考深度)。所述第一深度值為預測拍攝影像300的取像裝置與各區塊之間的距離。權重張量340包括用以對多個子目標進行優化的多個權值。子目標張量350包括用以預測各子目標在影像300中的座標位置及對應於各子目標的第二深度值。
偵測模型310為基於卷積神經網路(Convolutional Neural Network,CNN)的特徵提取器。偵測模型310的架構部分類似於YOLO第四版(YOLOv4)演算法。偵測模型310是單一輸入多個輸出的模型架構,且多個輸出的張量均會縮小整數S倍。例如,以影像300的解析度為H×L而言,所獲得的熱圖張量320、參考深度張量330、權重張量340以及子目標張量350的解析度皆為H/S×L/S。
如果輸入(影像300)的裝置來源是彩色取像裝置(彩色相機),就使用彩色影像的資料集來訓練偵測模型310。如果輸入(影像300)的裝置來源是深度取像裝置,就用深度影像的資料集來訓練偵測模型310。每個資料集包含多個目標物的三維位置以及取像裝置的投影矩陣(Projection Matrix)。
在此,偵測的目標物為手,子目標為手的指節點。圖4是依照本發明一實施例的定義手的指節點的示意圖。手的指節點的定義可如圖4所示的21個指節點J01~J21。利用本實施例的影像識別模型可在影像300中偵測出K隻手及其各自對應的21個指節點。
熱圖張量320包括用以預測出現手的機率值,參考深度張量330包括用以預測拍攝影像300的取像裝置距離手的距離(第一深度值),權重張量340包括用以對指節點進行優化的權值,子目標張量350包括用以預測各指節點在影像300中的座標位置及對應於各指節點的第二深度值。對應於各指節點的第二深度值指的是各個指節點到手腕的距離。
熱圖張量320的張量維度為[H/S, L/S, 2],其中,第1、2個維度代表區塊的位置索引值(i, j),i={1, 2, ..., H/S},j={1, 2, ..., L/S},第3個維度“2”代表每一個位置索引值(i, j)對應至兩種目標物(即“左手”和“右手”)出現的機率值。即,影像300被輸入至偵測模型310而被切分成等大小為H/S×L/S的區塊,並對每一個區塊估測兩個機率值,即,出現左手的機率值及出現右手的機率值。故,熱圖張量320包括H/S×L/S×2個區塊資料。所述機率值位於為0~1之間。
參考深度張量330的張量維度為[H/S, L/S, 1],其中,第1、2個維度代表區塊的位置索引值(i, j),第3個維度“1”代表每一個位置索引值(i, j)代表的區塊對應至1個第一深度值。參考深度張量330包括H/S×L/S×1個第一深度值。
權重張量340的張量維度為[H/S, L/S, N],其中,第1、2個維度代表區塊的位置索引值(i, j),第3個維度“N”代表每一個位置索引值(i, j)代表的區塊所包括的N個指節點對應的優化用的權值。權重張量340包括H/S×L/S×N個權值。
子目標張量350的張量維度為[H/S, L/S, N, 3],其中,第1、2個維度代表區塊的位置索引值(i, j),第3個維度“N”代表每一個位置索引值(i, j)代表的區塊對應至N個指節點,第4個維度“3”代表用以預測各指節點於x、y、z三者的座標位置。子目標張量350包括H/S×L/S×N組的座標位置(x, y, z),其中,x、y代表指節點在影像中的位置,z代表指節點的深度值(即,第二深度值)。
接著,在步驟S210中,自熱圖張量320獲得K個位置索引值。例如,根據熱圖張量320所包括的H/S×L/S×2個區塊資料中,以具有最高機率值的區塊資料起,取出K個區塊資料對應的K個位置索引值記錄至位置索引清單360。其中,K為目標物(例如:手)的數量。例如,位置索引清單360記錄有:位置索引值(gx_1, gy_1)、(gx_2, gy_2)、…、(gx_K, gy_K)。
在步驟S215中,基於權重張量340以及子目標張量350,獲得融合張量370。在此,利用下述公式對於權重張量340以及子目標張量350進行卷積,藉此獲得融合張量370。融合張量370包括基於所述權值與所述第二深度值而獲得的多個融合深度值。
O(a,b,c,d)=
其中,ks為核大小(Kernel Size),W為權重張量340,V為子目標張量350,a={1,2,...,H/S},b={1,2,...,L/S},c={1,2,...,N},N為子目標數量(即,指節點的數量),d={1,2,3}(代表x、y、z三軸)。O(a,b,c,d)為融合張量370。融合張量370的張量維度為[H/S, L/S, N, 3]。第4個維度“3”代表用以預測各指節點於x、y、z三軸的座標位置,z所對應的深度值為經卷積後的融合深度值。
之後,在步驟S220中,基於融合張量370與參考深度張量330,獲得預測深度張量380。預測深度張量380包括基於所述融合深度值與所述第一深度值而獲得的多個預測深度值。具體而言,將融合張量370中各位置索引值對應的融合深度值(即,融合張量370的第4個維度中的z值)與參考深度張量330中各位置索引值對應的第一深度值(即,參考深度張量330的第3個維度的值)相加,而獲得預測深度張量380。這是因為,取像裝置到指節點的預測深度值會是取像裝置與手之間的距離(第一深度值)和各個指節點到手腕的距離(融合深度值)的相加結果。
最後,在步驟S225中,參考位置索引值,自預測深度張量380中取出K個向量。根據自熱圖張量320所獲得的位置索引清單360所記載的位置索引值,自預測深度張量380中取出對應的K個向量,進而獲得目標清單390。每一個向量中皆記錄了N個指節點的位置。例如,目標清單390包括向量(J_1_1, J_1_2, ... J_1_N)、向量(J_2_1, J_2_2, ... J_2_N)、…、向量(J_K_1, J_K_2, ... J_K_N)。
以位置索引清單360的第1個位置索引值(gx_1, gy_1)而言,其對應的向量為(J_1_1, J_1_2, ... J_1_N),“J_1_1”、“J_1_2”、…、“J_1_N”分別表示位置索引值(gx_1, gy_1)的N個指節點的位置。以位置索引清單360的第2個位置索引值(gx_2, gy_2)而言,其對應向量為(J_2_1, J_2_2, ... J_2_N),“J_2_1”、“J_2_2”、…、“J_2_N”分別表示位置索引值(gx_2, gy_2)的N個指節點的位置。以位置索引清單360的第K個位置索引值(gx_K, gy_K)而言,其對應向量為(J_K_1, J_K_2, ... J_K_N),“J_K_1”、“J_K_2”、…、“J_K_N”分別表示位置索引值(gx_K, gy_K)的N個指節點的位置。
圖5A及圖5B是依照本發明一實施例的偵測結果的示意圖。圖5A所示為一隻手的偵測結果。圖5B所示為兩隻手的偵測結果。透過上述方式可在影像中確實偵測到一或多手的指節點。
之後,在步驟S230中,對所述K個向量執行投影矩陣(Projection Matrix)的轉換,以獲得真實空間中的K個座標向量。透過上述步驟,可以追蹤輸入的影像300上所出現的手部姿態。
綜上所述,本揭露能夠藉由一次性的推理同時完成兩種任務,分別為偵測目標物以及偵測目標物中所包括的子目標,而無需基於各別的任務來建立模型。據此,將本揭露應用於多手姿態追蹤上,將任意類型的影像輸入便能夠輸出多個根據機率值排名後在影像上的手指節組合。
此外,本揭露只要知道輸入來源是彩色影像及深度影像中其中一種類型,便能夠根據輸入來源的類型來選定同類型的資料集來重新訓練模型,在無須更動CNN模型架構下,本揭露使用的架構依然能一次性完成手部偵測和手指節回歸。
由於本揭露中間過程不需要物件偵測的邊界框所擷取出的子圖像,因此不會出現擷取到較差的子圖像從而降低手指節估測精度下降的問題。在一張影像出現K隻手的情況下,傳統的多手姿態追蹤系統需要執行K+1次的模型運算,反觀本揭露,其可在經1次的運算後便能同時獲得K隻手及其手指節的位置。故,本揭露可降低在消費者終端上的延遲性,並提高使用者體驗品質。
惟以上所述者,僅為本發明之較佳實施例而已,當不能以此限定本發明實施之範圍,即大凡依本發明申請專利範圍及發明說明內容所作之簡單的等效變化與修飾,皆仍屬本發明專利涵蓋之範圍內。另外本發明的任一實施例或申請專利範圍不須達成本發明所揭露之全部目的或優點或特點。此外,摘要部分和標題僅是用來輔助專利文件搜尋之用,並非用來限制本發明之權利範圍。此外,本說明書或申請專利範圍中提及的“第一”、“第二”等用語僅用以命名元件(element)的名稱或區別不同實施例或範圍,而並非用來限制元件數量上的上限或下限。
100:電子裝置
110:處理器
120:儲存器
300:影像
310:偵測模型
320:熱圖張量
330:參考深度張量
340:權重張量
350:子目標張量
360:位置索引清單
370:融合張量
380:預測深度張量
390:目標清單
J01~J21:指節點
S205~S230:影像識別方法的步驟
圖1是依照本發明一實施例的電子裝置的方塊圖。
圖2是依照本發明一實施例的影像識別方法的流程圖。
圖3是依照本發明一實施例的影像識別模型的架構圖。
圖4是依照本發明一實施例的手的指節點的示意圖。
圖5A及圖5B是依照本發明一實施例的偵測結果的示意圖。
S205~S230:影像識別方法的步驟
Claims (6)
- 一種由一處理器所執行的影像識別方法,包括:輸入一影像至一偵測模型而獲得一熱圖張量、一參考深度張量、一權重張量以及一子目標張量,其中該熱圖張量包括用以預測該影像的多個位置索引值對應的多個區塊中出現一目標物的多個機率值,該目標物中包括多個子目標,該參考深度張量包括每一該些區塊對應的一第一深度值,該第一深度值為預測拍攝該影像的一取像裝置與每一該些區塊之間的距離,該權重張量包括用以對該些子目標進行優化的多個權值,該子目標張量包括用以預測該些子目標在該影像中的多個座標位置及該些子目標的多個第二深度值;自該熱圖張量獲得K個位置索引值;基於該權重張量以及該子目標張量,獲得一融合張量,其中該融合張量包括基於該些權值與該些第二深度值而獲得的多個融合深度值;基於該融合張量與該參考深度張量,獲得一預測深度張量,其中該預測深度張量包括基於該些融合深度值與該些第一深度值而獲得的多個預測深度值;參考K個位置索引值,自該預測深度張量中取出K個向量;以及對所述K個向量執行一投影矩陣的轉換,以獲得真實空間中的K個座標向量。
- 如請求項1所述影像識別方法,其中該熱圖張量包括對應至該些區塊的多個區塊資料,每一該些區塊資料包括對應的每一該些位置索引值以及兩個機率值,所述兩個機率值代表對應的每一該些區塊包括左手的機率值及包括右手的機率值,其中,自該熱圖張量獲得K個位置索引值的步驟包括:根據所述兩個機率值,自該些區塊資料中具有最高機率值的區塊資料起,取出K個區塊資料對應的該K個位置索引值。
- 如請求項1所述影像識別方法,其中基於該融合張量與該參考深度張量,獲得該預測深度張量的步驟包括:將該融合張量中每一該些位置索引值對應的該些融合深度值分別與該參考深度張量中每一該些位置索引值對應的該第一深度 值相加,而獲得每一該些位置索引值對應的該些預測深度值。
- 如請求項1所述的影像識別方法,其中該偵測模型為基於卷積神經網路的特徵提取器。
- 如請求項1所述的影像識別方法,其中該目標物為手,該些子目標為指節點。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW110119204A TWI787841B (zh) | 2021-05-27 | 2021-05-27 | 影像識別方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW110119204A TWI787841B (zh) | 2021-05-27 | 2021-05-27 | 影像識別方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202247097A TW202247097A (zh) | 2022-12-01 |
TWI787841B true TWI787841B (zh) | 2022-12-21 |
Family
ID=85793833
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW110119204A TWI787841B (zh) | 2021-05-27 | 2021-05-27 | 影像識別方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI787841B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201923707A (zh) * | 2017-10-11 | 2019-06-16 | 香港商阿里巴巴集團服務有限公司 | 圖像處理方法和處理設備 |
CN111209861A (zh) * | 2020-01-06 | 2020-05-29 | 浙江工业大学 | 一种基于深度学习的动态手势动作识别方法 |
CN111797753A (zh) * | 2020-06-29 | 2020-10-20 | 北京灵汐科技有限公司 | 图像驱动模型的训练、图像生成方法、装置、设备及介质 |
US20210042930A1 (en) * | 2019-08-08 | 2021-02-11 | Siemens Healthcare Gmbh | Method and system for image analysis |
-
2021
- 2021-05-27 TW TW110119204A patent/TWI787841B/zh active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201923707A (zh) * | 2017-10-11 | 2019-06-16 | 香港商阿里巴巴集團服務有限公司 | 圖像處理方法和處理設備 |
US20210042930A1 (en) * | 2019-08-08 | 2021-02-11 | Siemens Healthcare Gmbh | Method and system for image analysis |
CN111209861A (zh) * | 2020-01-06 | 2020-05-29 | 浙江工业大学 | 一种基于深度学习的动态手势动作识别方法 |
CN111797753A (zh) * | 2020-06-29 | 2020-10-20 | 北京灵汐科技有限公司 | 图像驱动模型的训练、图像生成方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
TW202247097A (zh) | 2022-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230410329A1 (en) | Scalable Real-Time Hand Tracking | |
US10043308B2 (en) | Image processing method and apparatus for three-dimensional reconstruction | |
WO2021227726A1 (zh) | 面部检测、图像检测神经网络训练方法、装置和设备 | |
CN109902548B (zh) | 一种对象属性识别方法、装置、计算设备及系统 | |
WO2022179581A1 (zh) | 一种图像处理方法及相关设备 | |
CN111062263B (zh) | 手部姿态估计的方法、设备、计算机设备和存储介质 | |
WO2020228682A1 (zh) | 对象交互方法及装置、系统、计算机可读介质和电子设备 | |
EP4309151A1 (en) | Keypoint-based sampling for pose estimation | |
CN115147558B (zh) | 三维重建模型的训练方法、三维重建方法及装置 | |
CN113449573A (zh) | 一种动态手势识别方法及设备 | |
Ali et al. | Hardware/software co-design of a real-time kernel based tracking system | |
Zhou et al. | A lightweight hand gesture recognition in complex backgrounds | |
WO2021098802A1 (en) | Object detection device, method, and systerm | |
CN114972958B (zh) | 关键点检测方法、神经网络的训练方法、装置和设备 | |
WO2023083030A1 (zh) | 一种姿态识别方法及其相关设备 | |
WO2022052782A1 (zh) | 图像的处理方法及相关设备 | |
US20220351405A1 (en) | Pose determination method and device and non-transitory storage medium | |
US20230401799A1 (en) | Augmented reality method and related device | |
WO2024078088A1 (zh) | 互动处理方法及装置 | |
WO2024017282A1 (zh) | 一种数据处理方法及其装置 | |
TWI787841B (zh) | 影像識別方法 | |
CN116686006A (zh) | 基于可变形模型的三维扫描配准 | |
CN112183155B (zh) | 动作姿态库建立、动作姿态生成、识别方法及装置 | |
CN116228850A (zh) | 物体姿态估计方法、装置、电子设备及可读存储介质 | |
Cui et al. | Camera distance helps 3d hand pose estimated from a single RGB image |