基於神經網路模型的目標跟蹤方法及裝置

基於神經網路模型的目標跟蹤方法及裝置

《基於神經網路模型的目標跟蹤方法及裝置》是北京曠視科技有限公司北京小孔科技有限公司於2016年5月10日申請的專利,該專利的申請號為2016103062507,公布號為CN105976400A,授權公布日為2016年9月28日,發明人是俞剛、李超、何奇正、陳牧歌、彭雨翔、印奇。

《基於神經網路模型的目標跟蹤方法及裝置》的實施例提供了基於神經網路模型的目標跟蹤方法和裝置。神經網路模型包括特徵提取神經網路、第一神經網路和第二神經網路,目標跟蹤方法包括:S120,將待處理視頻輸入至特徵提取神經網路,以提取待處理視頻的特徵數據;S140,將待處理視頻的特徵數據輸入至第一神經網路,以獲得待處理視頻中的至少一個目標的邊界框;以及S160,將待處理視頻的特徵數據和邊界框輸入至第二神經網路,從而獲得邊界框的標識符,以跟蹤待處理視頻中的至少一個目標,其中標識符用於指示至少一個目標。上述目標跟蹤方法和裝置能夠針對視頻更好地完成目標的檢測和跟蹤,提高了目標跟蹤的速度和準確性。

2018年12月20日,《基於神經網路模型的目標跟蹤方法及裝置》獲得第二十屆中國專利優秀獎。

(概述圖為《基於神經網路模型的目標跟蹤方法及裝置》摘要附圖)

基本介紹

  • 中文名:基於神經網路模型的目標跟蹤方法及裝置
  • 公告號:CN105976400A
  • 授權日:2016年9月28日
  • 申請號:2016103062507
  • 申請日:2016年5月10日
  • 申請人:北京曠視科技有限公司、北京小孔科技有限公司
  • 地址:北京市海淀區科學院南路2號A座313
  • 發明人:俞剛、李超、何奇正、陳牧歌、彭雨翔、印奇
  • Int.Cl.:G06T7/20(2006.01)I; G06N3/08(2006.01)I
  • 代理機構:北京睿邦智慧財產權代理事務所(普通合夥)
  • 代理人:徐丁峰、張瑋
  • 類別:發明專利
專利背景,發明內容,技術方案,改善效果,附圖說明,技術領域,權利要求,實施方式,榮譽表彰,

專利背景

隨著監控攝像頭越來越普及,通過攝像頭對重點場景的安防監控的等需求也越來越普及。這類需求中最急切的是對目標(例如行人、車輛等)的準確檢測和跟蹤。檢測和跟蹤視頻場景中的每一個目標是很多套用最基本且最重要的環節。簡而言之,準確、高效地定位和跟蹤視頻場景中的每一個目標在諸如監控等實際套用中有著非常重要的意義。
截至2016年5月的目標跟蹤方法通常分為兩個獨立的步驟。首先,針對待處理視頻中的每一幀分別做行人檢測。然後,根據行人檢測的結果來單獨做跟蹤。這會造成重複計算從而導致計算時間增加,影響運算速度,並且還會導致待處理視頻的目標檢測跟蹤結果不能相互最佳化從而影響檢測跟蹤的準確性。

發明內容

技術方案

根據《基於神經網路模型的目標跟蹤方法及裝置》一方面,提供了一種基於神經網路模型的目標跟蹤方法,其中所述神經網路模型包括特徵提取神經網路、第一神經網路和第二神經網路,所述目標跟蹤方法包括:
S120,將待處理視頻輸入至所述特徵提取神經網路,以提取所述待處理視頻的特徵數據;
S140,將所述待處理視頻的特徵數據輸入至所述第一神經網路,以獲得所述待處理視頻中的至少一個目標的邊界框;以及
S160,將所述待處理視頻的特徵數據和所述邊界框輸入至所述第二神經網路,從而根據所述邊界框的相似度獲得所述邊界框的標識符,以跟蹤所述待處理視頻中的所述至少一個目標,其中所述標識符用於指示所述至少一個目標。
示例性地,所述第一神經網路包括第一子神經網路和第二子神經網路,所述步驟S140包括:
S142,將所述待處理視頻的特徵數據輸入至所述第一子神經網路,以獲得所述邊界框的粗略位置;以及
S144,將所述待處理視頻的特徵數據和所述邊界框的粗略位置輸入至所述第二子神經網路,以獲得所述邊界框的準確位置和指示所述邊界框內包括所述至少一個目標的機率值。
示例性地,所述第二神經網路包括第三子神經網路和第四子神經網路,所述步驟S160包括:
將所述特徵數據和所述邊界框輸入至所述第三子神經網路,以獲得所述待處理視頻中的不同幀中的邊界框之間的外觀相似度;
根據所述外觀相似度和所述不同幀中的邊界框之間的距離計算所述待處理視頻中的所述不同幀中的邊界框之間的距離相似度;以及
將所述外觀相似度和所述距離相似度輸入至所述第四子神經網路,從而獲得所述邊界框的標識符,以跟蹤所述待處理視頻中的所述至少一個目標。
示例性地,所述第一神經網路和/或所述特徵提取神經網路包括卷積神經網路。
示例性地,所述目標跟蹤方法還包括以下步驟:
使用訓練視頻訓練所述神經網路模型,其中,在所述訓練視頻中,針對訓練目標標註了邊界框和標識符,所述標識符用於指示所述訓練目標;
其中,所述使用訓練視頻訓練所述神經網路模型包括:
S112,將所述訓練視頻輸入至所述特徵提取神經網路,以提取所述訓練視頻的特徵數據;
S114,將所述訓練視頻的特徵數據輸入至所述第一神經網路以獲得所述訓練目標的邊界框,並且根據所標註的邊界框和所述第一神經網路獲得的所述訓練目標的邊界框計算檢測損失函式值;
S116,將所述訓練視頻的特徵數據和所述第一神經網路獲得的所述訓練目標的邊界框輸入至所述第二神經網路以獲得所述訓練目標的邊界框的標識符,並根據所標註的標識符和所述第二神經網路獲得的所述訓練目標的邊界框的標識符計算跟蹤損失函式值;以及
S118,在所述檢測損失函式值和/或所述跟蹤損失函式值不滿足預設條件的情況和/或疊代次數小於第一閾值的情況下,同時調整所述特徵提取神經網路的參數以及所述第一神經網路的參數和/或所述第二神經網路的參數並且轉所述步驟S112,否則,停止對所述神經網路模型的訓練並獲得訓練好的所述神經網路模型以用於跟蹤目標。
示例性地,所述檢測損失函式值包括檢測交叉熵和檢測回歸損失函式值,所述步驟S118包括:
根據所述檢測交叉熵和所述檢測回歸損失函式值的加權和,同時調整所述特徵提取神經網路的參數和所述第一神經網路的參數。
示例性地,所述跟蹤損失函式值包括跟蹤交叉熵和跟蹤回歸損失函式值,所述步驟S118包括:
根據所述跟蹤交叉熵和所述跟蹤回歸損失函式值的加權和,同時調整所述特徵提取神經網路的參數、所述第一神經網路的參數和所述第二神經網路的參數。
示例性地,所述第二神經網路包括第三子神經網路和第四子神經網路,所述步驟S116包括:
將所述訓練視頻的特徵數據和所述第一神經網路獲得的所述訓練目標的邊界框輸入至所述第三子神經網路,以獲得所述訓練視頻的不同幀中的邊界框之間的外觀相似度;
根據所述外觀相似度和所述訓練視頻中的不同幀中的邊界框之間的距離計算所述訓練視頻的不同幀中的邊界框之間的距離相似度;
將所述外觀相似度和所述距離相似度輸入至所述第四子神經網路,以獲得所述訓練目標的邊界框的標識符;以及
根據所標註的標識符和所獲得的所述訓練目標的邊界框的標識符,計算所述跟蹤損失函式值。
示例性地,所述目標跟蹤方法還包括:
S180,根據所述待處理視頻的特徵數據、所述邊界框和所述標識符,分析所述至少一個目標的屬性和/或動作。
示例性地,所述步驟S180包括:
將所述待處理視頻的特徵數據、所述邊界框和所述標識符輸入至第一卷積神經網路,經由全連線層,輸出所述至少一個目標的屬性和/或動作。
根據《基於神經網路模型的目標跟蹤方法及裝置》另一方面,還提供了一種基於神經網路模型的目標跟蹤裝置,其中所述神經網路模型包括特徵提取神經網路、第一神經網路和第二神經網路,所述目標跟蹤裝置包括:
第一特徵提取模組,用於將待處理視頻輸入至所述特徵提取神經網路,以提取所述待處理視頻的特徵數據;
檢測模組,用於將所述待處理視頻的特徵數據輸入至所述第一神經網路,以獲得所述待處理視頻中的至少一個目標的邊界框;以及
跟蹤模組,用於將所述待處理視頻的特徵數據和所述邊界框輸入至所述第二神經網路,從而根據所述邊界框的相似度獲得所述邊界框的標識符,以跟蹤所述待處理視頻中的所述至少一個目標,其中所述標識符用於指示所述至少一個目標。
示例性地,所述第一神經網路包括第一子神經網路和第二子神經網路,所述檢測模組包括:
邊界框初定單元,用於將所述待處理視頻的特徵數據輸入至所述第一子神經網路,以獲得所述邊界框的粗略位置;以及邊界框確定單元,用於將所述待處理視頻的特徵數據和所述邊界框的粗略位置輸入至所述第二子神經網路,以獲得所述邊界框的準確位置和指示所述邊界框內包括所述至少一個目標的機率值。
示例性地,所述第二神經網路包括第三子神經網路和第四子神經網路,所述跟蹤模組包括:
外觀相似度計算單元,用於將所述待處理視頻的特徵數據和所述邊界框輸入至所述第三子神經網路,以獲得所述待處理視頻中的不同幀中的邊界框之間的外觀相似度;
距離相似度計算單元,用於根據所述外觀相似度和所述不同幀中的邊界框之間的距離計算所述待處理視頻中的所述不同幀中的邊界框之間的距離相似度;以及
標識符確定單元,用於將所述外觀相似度和所述距離相似度輸入至所述第四子神經網路,從而獲得所述邊界框的標識符,以跟蹤所述待處理視頻中的所述至少一個目標。
示例性地,所述第一神經網路和/或所述特徵提取神經網路包括卷積神經網路。
示例性地,所述目標跟蹤裝置還包括:訓練模組,用於使用訓練視頻訓練所述神經網路模型,其中,在所述訓練視頻中,針對訓練目標標註了邊界框和標識符,所述標識符用於指示所述訓練目標,所述訓練模組包括:
訓練特徵提取模組,用於將所述訓練視頻輸入至所述特徵提取神經網路,以提取所述訓練視頻的特徵數據;
檢測訓練模組,用於將所述訓練視頻的特徵數據輸入至所述第一神經網路以獲得所述訓練目標的邊界框,並且根據所標註的邊界框和所述第一神經網路獲得的所述訓練目標的邊界框計算檢測損失函式值;
跟蹤訓練模組,用於將所述訓練視頻的特徵數據和所述第一神經網路獲得的所述訓練目標的邊界框輸入至所述第二神經網路以獲得所述訓練目標的邊界框的標識符,並根據所標註的標識符和所述第二神經網路獲得的所述訓練目標的邊界框的標識符計算跟蹤損失函式值;以及
調整模組,用於在所述檢測損失函式值和/或所述跟蹤損失函式值不滿足預設條件的情況和/或疊代次數小於第一閾值的情況下,同時調整所述特徵提取神經網路的參數以及所述第一神經網路的參數和/或所述第二神經網路的參數;否則,停止對所述神經網路模型的訓練並獲得訓練好的所述神經網路模型以用於跟蹤目標。
示例性地,所述檢測損失函式值包括檢測交叉熵和檢測回歸損失函式值,所述調整模組用於根據所述檢測交叉熵和所述檢測回歸損失函式值的加權和,同時調整所述特徵提取神經網路的參數和所述第一神經網路的參數。
示例性地,所述跟蹤損失函式值包括跟蹤交叉熵和跟蹤回歸損失函式值,所述調整模組用於根據所述跟蹤交叉熵和所述跟蹤回歸損失函式值的加權和,同時調整所述特徵提取神經網路的參數、所述第一神經網路的參數和所述第二神經網路的參數。
示例性地,所述第二神經網路包括第三子神經網路和第四子神經網路,所述跟蹤訓練模組包括:
外觀相似度訓練計算單元,用於將所述訓練視頻的特徵數據和所述第一神經網路獲得的所述訓練目標的邊界框輸入至所述第三子神經網路,以獲得所述訓練視頻的不同幀中的邊界框之間的外觀相似度;
距離相似度訓練計算單元,用於根據所述外觀相似度和所述訓練視頻中的不同幀中的邊界框之間的距離計算所述訓練視頻的不同幀中的邊界框之間的距離相似度;
標識符訓練獲得單元,用於將所述外觀相似度和所述距離相似度輸入至所述第四子神經網路,以獲得所述訓練目標的邊界框的標識符;以及
跟蹤損失函式值計算單元,用於根據所標註的標識符和所獲得的所述訓練目標的邊界框的標識符,計算所述跟蹤損失函式值。
示例性地,所述目標跟蹤裝置還包括:
分析模組,用於根據所述待處理視頻的特徵數據、所述邊界框和所述標識符,分析所述至少一個目標的屬性和/或動作。
示例性地,所述分析模組用於將所述待處理視頻的特徵數據、所述邊界框和所述標識符輸入至第一卷積神經網路,經由全連線層,輸出所述至少一個目標的屬性和/或動作。

改善效果

在上述基於神經網路模型的目標跟蹤方法和裝置中,目標檢測和目標跟蹤共用視頻的相同特徵數據,並且這兩個過程互相影響、促進和最佳化,從而能夠顯著提高目標跟蹤的速度和準確性。

附圖說明

圖1示出了用於實現根據《基於神經網路模型的目標跟蹤方法及裝置》實施例的基於神經網路模型的目標跟蹤方法和裝置的示例電子設備的示意性框圖;
圖2示出了根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的基於神經網路模型的目標跟蹤方法的示意性流程圖;
圖3示出了根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的目標檢測的示意性流程圖;
圖4示出了根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的根據目標檢測結果進行目標跟蹤的示意性流程圖;
圖5示出了根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的根據目標檢測結果進行目標跟蹤的網路流的示意圖;
圖6示出了根據《基於神經網路模型的目標跟蹤方法及裝置》另一個實施例的基於神經網路模型的目標跟蹤方法的示意性流程圖;
圖7示出了根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的使用訓練視頻訓練神經網路模型的示意性流程圖;
圖8示出了根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的將訓練視頻的特徵數據和訓練目標的邊界框輸入至第二神經網路並根據訓練目標的所標註的標識符和獲得的訓練目標的邊界框的標識符計算跟蹤損失函式值的示意性流程圖;
圖9示出了根據《基於神經網路模型的目標跟蹤方法及裝置》另一實施例的基於神經網路模型的目標跟蹤方法的示意性流程圖;
圖10示出了根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的基於神經網路模型的目標跟蹤裝置的示意性框圖;
圖11示出了根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的檢測模組的示意性框圖;
圖12示出了根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的跟蹤模組的示意性框圖;
圖13示出了根據《基於神經網路模型的目標跟蹤方法及裝置》另一個實施例的基於神經網路模型的目標跟蹤裝置的示意性框圖;
圖14示出了根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的訓練模組的示意性框圖;
圖15示出了根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的跟蹤訓練模組的示意性框圖;以及
圖16示出了根據《基於神經網路模型的目標跟蹤方法及裝置》實施例的基於神經網路模型的目標跟蹤系統的示意性框圖。

技術領域

《基於神經網路模型的目標跟蹤方法及裝置》涉及圖像處理領域,更具體地涉及一種基於神經網路模型的目標跟蹤方法及裝置。

權利要求

1.一種基於神經網路模型的目標跟蹤方法,其中所述神經網路模型包括特徵提取神經網路、第一神經網路和第二神經網路,所述目標跟蹤方法包括:S120,將待處理視頻輸入至所述特徵提取神經網路,以提取所述待處理視頻的特徵數據;S140,將所述待處理視頻的特徵數據輸入至所述第一神經網路,以獲得所述待處理視頻中的至少一個目標的邊界框;以及S160,將所述待處理視頻的特徵數據和所述邊界框輸入至所述第二神經網路,從而根據所述邊界框的相似度獲得所述邊界框的標識符,以跟蹤所述待處理視頻中的所述至少一個目標,其中所述標識符用於指示所述至少一個目標。
2.如權利要求1所述的目標跟蹤方法,其中,所述第一神經網路包括第一子神經網路和第二子神經網路,所述步驟S140包括:S142,將所述待處理視頻的特徵數據輸入至所述第一子神經網路,以獲得所述邊界框的粗略位置;以及S144,將所述待處理視頻的特徵數據和所述邊界框的粗略位置輸入至所述第二子神經網路,以獲得所述邊界框的準確位置和指示所述邊界框內包括所述至少一個目標的機率值。
3.如權利要求1所述的目標跟蹤方法,其中,所述第二神經網路包括第三子神經網路和第四子神經網路,所述步驟S160包括:將所述特徵數據和所述邊界框輸入至所述第三子神經網路,以獲得所述待處理視頻中的不同幀中的邊界框之間的外觀相似度;根據所述外觀相似度和所述不同幀中的邊界框之間的距離計算所述待處理視頻中的所述不同幀中的邊界框之間的距離相似度;以及將所述外觀相似度和所述距離相似度輸入至所述第四子神經網路,從而獲得所述邊界框的標識符,以跟蹤所述待處理視頻中的所述至少一個目標。
4.如權利要求1或2所述的目標跟蹤方法,其中,所述第一神經網路和/或所述特徵提取神經網路包括卷積神經網路。
5.如權利要求1所述的目標跟蹤方法,所述目標跟蹤方法還包括以下步驟:使用訓練視頻訓練所述神經網路模型,其中,在所述訓練視頻中,針對訓練目標標註了邊界框和標識符,所述標識符用於指示所述訓練目標;其中,所述使用訓練視頻訓練所述神經網路模型包括:S112,將所述訓練視頻輸入至所述特徵提取神經網路,以提取所述訓練視頻的特徵數據;S114,將所述訓練視頻的特徵數據輸入至所述第一神經網路以獲得所述訓練目標的邊界框,並且根據所標註的邊界框和所述第一神經網路獲得的所述訓練目標的邊界框計算檢測損失函式值;S116,將所述訓練視頻的特徵數據和所述第一神經網路獲得的所述訓練目標的邊界框輸入至所述第二神經網路以獲得所述訓練目標的邊界框的標識符,並根據所標註的標識符和所述第二神經網路獲得的所述訓練目標的邊界框的標識符計算跟蹤損失函式值;以及S118,在所述檢測損失函式值和/或所述跟蹤損失函式值不滿足預設條件的情況和/或疊代次數小於第一閾值的情況下,同時調整所述特徵提取神經網路的參數以及所述第一神經網路的參數和/或所述第二神經網路的參數並且轉所述步驟S112,否則,停止對所述神經網路模型的訓練並獲得訓練好的所述神經網路模型以用於跟蹤目標。
6.如權利要求5所述的目標跟蹤方法,其中,所述檢測損失函式值包括檢測交叉熵和檢測回歸損失函式值,所述步驟S118包括:根據所述檢測交叉熵和所述檢測回歸損失函式值的加權和,同時調整所述特徵提取神經網路的參數和所述第一神經網路的參數。
7.如權利要求5所述的目標跟蹤方法,其中,所述跟蹤損失函式值包括跟蹤交叉熵和跟蹤回歸損失函式值,所述步驟S118包括:根據所述跟蹤交叉熵和所述跟蹤回歸損失函式值的加權和,同時調整所述特徵提取神經網路的參數、所述第一神經網路的參數和所述第二神經網路的參數。
8.如權利要求5所述的目標跟蹤方法,其中,所述第二神經網路包括第三子神經網路和第四子神經網路,所述步驟S116包括:將所述訓練視頻的特徵數據和所述第一神經網路獲得的所述訓練目標的邊界框輸入至所述第三子神經網路,以獲得所述訓練視頻的不同幀中的邊界框之間的外觀相似度;根據所述外觀相似度和所述訓練視頻中的不同幀中的邊界框之間的距離計算所述訓練視頻的不同幀中的邊界框之間的距離相似度;將所述外觀相似度和所述距離相似度輸入至所述第四子神經網路,以獲得所述訓練目標的邊界框的標識符;以及根據所標註的標識符和所獲得的所述訓練目標的邊界框的標識符,計算所述跟蹤損失函式值。
9.如權利要求1至3任一權利要求所述的目標跟蹤方法,所述目標跟蹤方法還包括:S180,根據所述待處理視頻的特徵數據、所述邊界框和所述標識符,分析所述至少一個目標的屬性和/或動作。
10.如權利要求9所述的目標跟蹤方法,其中,所述步驟S180進一步包括:將所述待處理視頻的特徵數據、所述邊界框和所述標識符輸入至第一卷積神經網路,經由全連線層,輸出所述至少一個目標的屬性和/或動作。
11.一種基於神經網路模型的目標跟蹤裝置,其中所述神經網路模型包括特徵提取神經網路、第一神經網路和第二神經網路,所述目標跟蹤裝置包括:第一特徵提取模組,用於將待處理視頻輸入至所述特徵提取神經網路,以提取所述待處理視頻的特徵數據;檢測模組,用於將所述待處理視頻的特徵數據輸入至所述第一神經網路,以獲得所述待處理視頻中的至少一個目標的邊界框;以及跟蹤模組,用於將所述待處理視頻的特徵數據和所述邊界框輸入至所述第二神經網路,從而根據所述邊界框的相似度獲得所述邊界框的標識符,以跟蹤所述待處理視頻中的所述至少一個目標,其中所述標識符用於指示所述至少一個目標。
12.如權利要求11所述的目標跟蹤裝置,其中,所述第一神經網路包括第一子神經網路和第二子神經網路,所述檢測模組包括:邊界框初定單元,用於將所述待處理視頻的特徵數據輸入至所述第一子神經網路,以獲得所述邊界框的粗略位置;以及邊界框確定單元,用於將所述待處理視頻的特徵數據和所述邊界框的粗略位置輸入至所述第二子神經網路,以獲得所述邊界框的準確位置和指示所述邊界框內包括所述至少一個目標的機率值。
13.如權利要求11所述的目標跟蹤裝置,其中,所述第二神經網路包括第三子神經網路和第四子神經網路,所述跟蹤模組包括:外觀相似度計算單元,用於將所述待處理視頻的特徵數據和所述邊界框輸入至所述第三子神經網路,以獲得所述待處理視頻中的不同幀中的邊界框之間的外觀相似度;距離相似度計算單元,用於根據所述外觀相似度和所述不同幀中的邊界框之間的距離計算所述待處理視頻中的所述不同幀中的邊界框之間的距離相似度;以及標識符確定單元,用於將所述外觀相似度和所述距離相似度輸入至所述第四子神經網路,從而獲得所述邊界框的標識符,以跟蹤所述待處理視頻中的所述至少一個目標。
14.如權利要求11或12所述的目標跟蹤裝置,其中,所述第一神經網路和/或所述特徵提取神經網路包括卷積神經網路。
15.如權利要求11所述的目標跟蹤裝置,所述目標跟蹤裝置還包括訓練模組,用於使用訓練視頻訓練所述神經網路模型,其中,在所述訓練視頻中,針對訓練目標標註了邊界框和標識符,所述標識符用於指示所述訓練目標,所述訓練模組包括:訓練特徵提取模組,用於將所述訓練視頻輸入至所述特徵提取神經網路,以提取所述訓練視頻的特徵數據;檢測訓練模組,用於將所述訓練視頻的特徵數據輸入至所述第一神經網路以獲得所述訓練目標的邊界框,並且根據所標註的邊界框和所述第一神經網路獲得的所述訓練目標的邊界框計算檢測損失函式值;跟蹤訓練模組,用於將所述訓練視頻的特徵數據和所述第一神經網路獲得的所述訓練目標的邊界框輸入至所述第二神經網路以獲得所述訓練目標的邊界框的標識符,並根據所標註的標識符和所述第二神經網路獲得的所述訓練目標的邊界框的標識符計算跟蹤損失函式值;以及調整模組,用於在所述檢測損失函式值和/或所述跟蹤損失函式值不滿足預設條件的情況和/或疊代次數小於第一閾值的情況下,同時調整所述特徵提取神經網路的參數以及所述第一神經網路的參數和/或所述第二神經網路的參數;否則,停止對所述神經網路模型的訓練並獲得訓練好的所述神經網路模型以用於跟蹤目標。
16.如權利要求15所述的目標跟蹤裝置,其中,所述檢測損失函式值包括檢測交叉熵和檢測回歸損失函式值,所述調整模組用於根據所述檢測交叉熵和所述檢測回歸損失函式值的加權和,同時調整所述特徵提取神經網路的參數和所述第一神經網路的參數。
17.如權利要求15所述的目標跟蹤裝置,其中,所述跟蹤損失函式值包括跟蹤交叉熵和跟蹤回歸損失函式值,所述調整模組用於根據所述跟蹤交叉熵和所述跟蹤回歸損失函式值的加權和,同時調整所述特徵提取神經網路的參數、所述第一神經網路的參數和所述第二神經網路的參數。
18.如權利要求15所述的目標跟蹤裝置,其中,所述第二神經網路包括第三子神經網路和第四子神經網路,所述跟蹤訓練模組包括:外觀相似度訓練計算單元,用於將所述訓練視頻的特徵數據和所述第一神經網路獲得的所述訓練目標的邊界框輸入至所述第三子神經網路,以獲得所述訓練視頻的不同幀中的邊界框之間的外觀相似度;距離相似度訓練計算單元,用於根據所述外觀相似度和所述訓練視頻中的不同幀中的邊界框之間的距離計算所述訓練視頻的不同幀中的邊界框之間的距離相似度;標識符訓練獲得單元,用於將所述外觀相似度和所述距離相似度輸入至所述第四子神經網路,以獲得所述訓練目標的邊界框的標識符;以及跟蹤損失函式值計算單元,用於根據所標註的標識符和所獲得的所述訓練目標的邊界框的標識符,計算所述跟蹤損失函式值。
19.如權利要求11至13任一權利要求所述的目標跟蹤裝置,其中,所述目標跟蹤裝置還包括:分析模組,用於根據所述待處理視頻的特徵數據、所述邊界框和所述標識符,分析所述至少一個目標的屬性和/或動作。
20.如權利要求19所述的目標跟蹤裝置,其中,所述分析模組用於將所述待處理視頻的特徵數據、所述邊界框和所述標識符輸入至第一卷積神經網路,經由全連線層,輸出所述至少一個目標的屬性和/或動作。

實施方式

首先,參照圖1來描述用於實現《基於神經網路模型的目標跟蹤方法及裝置》實施例的基於神經網路模型的目標跟蹤方法和裝置的示例電子設備的示意性框圖100。
如圖1所示,電子設備100包括一個或多個處理器102、一個或多個存儲裝置104、輸入裝置106和輸出裝置108,這些組件通過匯流排系統110和/或其它形式的連線機構(未示出)互連。應當注意,圖1所示的電子設備100的組件和結構只是示例性的,而非限制性的,根據需要,所述電子設備也可以具有其他組件和結構。
所述處理器102可以是中央處理單元(CPU)或者具有數據處理能力和/或指令執行能力的其它形式的處理單元,並且可以控制所述電子設備100中的其它組件以執行期望的功能。
所述存儲裝置104可以包括一個或多個電腦程式產品,所述電腦程式產品可以包括各種形式的計算機可讀存儲介質,例如易失性存儲器和/或非易失性存儲器。所述易失性存儲器例如可以包括隨機存取存儲器(RAM)和/或高速緩衝存儲器(cache)等。所述非易失性存儲器例如可以包括唯讀存儲器(ROM)、硬碟、快閃記憶體等。在所述計算機可讀存儲介質上可以存儲一個或多個電腦程式指令,處理器102可以運行所述程式指令,以實現下文所述的《基於神經網路模型的目標跟蹤方法及裝置》實施例中(由處理器實現)的計算機功能以及/或者其它期望的功能。在所述計算機可讀存儲介質中還可以存儲各種應用程式和各種數據,例如所述應用程式使用和/或產生的各種數據等。
所述輸入裝置106可以是用來接收用戶所輸入的指令以及採集數據的裝置,並且可以包括鍵盤、滑鼠、麥克風、觸控螢幕和攝像頭等中的一個或多個。
所述輸出裝置108可以向外部(例如用戶)輸出各種信息(例如圖像或聲音),並且可以包括顯示器、揚聲器等中的一個或多個。
上述輸入裝置106和輸出裝置108主要用於與用戶互動,電子設備100也可以不包括二者。
下面,將參考圖2描述根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的基於神經網路模型的目標跟蹤方法200。
神經網路(NeuralNetwork,簡寫為NN)是一種模仿動物神經網路行為特徵、進行分散式並行信息處理的算法數學模型。神經網路依靠模型的複雜程度,通過調整神經網路內部大量節點之間相互連線的關係,從而達到處理信息的目的。
在《基於神經網路模型的目標跟蹤方法及裝置》的實施例中,將神經網路模型用於視頻中的目標檢測和跟蹤。優選地,該神經網路是深度神經網路。深度神經網路能夠很好地利用大數據的信息,並且高效地在並行平台上得到很好的效果。
對視頻的目標跟蹤處理基本包括檢測和跟蹤兩個過程。檢測和跟蹤這兩個過程相輔相成。檢測的結果往往可以利用跟蹤的結果來最佳化;反之,跟蹤的結果也可以利用到最佳化的檢測的結果。因此,將檢測和跟蹤這兩個過程整合在一個框架中,共用一些視頻特徵數據,並利用結果之間的互相最佳化,能夠有效提高目標跟蹤精度並且加快視頻處理速度。根據《基於神經網路模型的目標跟蹤方法及裝置》的一個實施例,神經網路模型包括特徵提取神經網路、第一神經網路和第二神經網路。特徵提取神經網路主要用於提取視頻的特徵數據,第一神經網路主要用於接收特徵提取神經網路提取的視頻的特徵數據以進行視頻中的目標檢測,第二神經網路主要用於接收特徵提取神經網路提取的視頻的特徵數據和第一神經網路的目標檢測結果,以進行視頻中的目標跟蹤。
具體地,如圖2所示,目標跟蹤方法200包括步驟S220、步驟S240和步驟S260。
在步驟S220中,將待處理視頻輸入至特徵提取神經網路,以提取所述待處理視頻的特徵數據。
可以將待處理視頻的原始數據或經壓縮的視頻數據輸入至特徵提取神經網路。然後,利用特徵提取神經網路獲得待處理視頻的特徵數據。待處理視頻的該特徵數據可以用於輸入到第一神經網路和第二神經網路。神經網路適於處理複雜的、無法簡單地用函式處理的計算。而視頻數據本身不僅數據量大,而且數據沒有簡單的規律性,利用特徵提取神經網路可以更好地提取待處理視頻的特徵數據,以用其有效地代表待處理視頻本身。並且,將特徵提取神經網路所提取到的待處理視頻的該特徵數據輸入至第一神經網路和第二神經網路共用,可以減少重複計算,節約計算資源,提高運算速度。特徵提取神經網路可以包括卷積神經網路。卷積神經網路適於準確提取視頻的特徵數據,從而保證目標跟蹤的準確性。
在步驟S240中,將步驟S220所提取的待處理視頻的特徵數據輸入至第一神經網路,以獲得所述待處理視頻中的至少一個目標的邊界框(boundingbox)。
目標是視頻中的跟蹤對象。示例性地,在一些套用場景中,跟蹤的目標是視頻中出現的行人、車輛等。目標的邊界框用於給出該目標在視頻幀中的位置信息。例如將目標框定在邊界框內部。可選地,每個邊界框內包括一個目標。邊界框可以是矩形的,其位置可以用矩形的對頂角的位置坐標來表示。因此,邊界框可用於目標檢測。
神經網路模型的第一神經網路主要用於針對視頻進行目標檢測。在目標檢測過程中,可將視頻的每一幀的特徵數據逐一輸入至第一神經網路。第一神經網路可以包括卷積神經網路。優選地,第一神經網路是用於大規模圖像識別的深度卷積神經網路。將待處理視頻的視頻幀的特徵數據輸入至第一神經網路後,第一神經網路可以檢測視頻幀中的目標並輸出一系列與所檢測目標對應的邊界框。可以理解,視頻幀中可以包括一個或多個目標。
在步驟S260中,將步驟S220所提取的待處理視頻的特徵數據和步驟S240所獲得的邊界框輸入至第二神經網路,從而獲得邊界框的標識符,以跟蹤待處理視頻中的至少一個目標。
神經網路模型的第二神經網路主要用於針對視頻進行目標跟蹤。對於視頻,可將特徵提取神經網路中獲得的連續數幀(例如連續10幀)的視頻的特徵數據和第一神經網路中獲得的邊界框輸入至第二神經網路,第二神經網路可以根據來自第一神經網路的邊界框的相似度(例如,距離相似度以及外觀相似度)計算並輸出視頻中各個邊界框的標識符,以跟蹤所述待處理視頻中的所述至少一個目標。
標識符用於指示或標識目標。換言之,目標的標識符用於標識該目標是哪個目標,即目標的身份信息。獲得了邊界框的標識符,即可獲得邊界框內的目標是哪一個目標的信息。對於視頻的任意不同的視頻幀,如果其中的某些不同的邊界框相似度(例如,距離相似度以及外觀相似度)很大,則可以認為這些邊界框中的目標為同一目標,即標識符相同。標識了相同標識符的目標在不同視頻幀中的位置表明了視頻中該目標的行動軌跡。因此,通過第二神經網路得到的視頻中各個邊界框的標識符,可以實現對視頻中的至少一個目標的跟蹤。
在上述基於神經網路模型的目標跟蹤方法和裝置中,特徵提取神經網路所提取的視頻的特徵數據不僅為第一網路所用,還為第二神經網路所用,避免了計算開銷的浪費,提高了整個算法的計算效率,節省了計算時間。同時,目標檢測和目標跟蹤這兩個過程互相促進和影響,能夠顯著提高目標跟蹤的速度和準確性。
可選地,目標跟蹤方法200中所述的用於目標檢測的第一神經網路包括第一子神經網路和第二子神經網路。圖3示出了根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的目標檢測(如上步驟S240)的示意性流程圖。如圖3所示,目標檢測步驟S240可以包括步驟S342和S344。
在步驟S342中,將從特徵提取神經網路中得到的待處理視頻的特徵數據輸入至第一子神經網路,以獲得邊界框的粗略位置。第一子神經網路用於根據待處理視頻的特徵數據進行實時目標粗檢測並獲得邊界框的粗略位置。邊界框的粗略位置標識了目標在視頻幀中的可能位置或大概位置。第一子神經網路可以是區域建議網路(RegionProposalNetwork,簡稱RPN)。區域建議網路可以包括卷積神經網路,用於向第二子神經網路提供邊界框的粗略位置。
在步驟S344中,將待處理視頻的特徵數據和第一子神經網路獲得的邊界框的粗略位置輸入至第二子神經網路,以獲得所述邊界框的準確位置和指示所述邊界框內包括至少一個目標的機率值。
第二子神經網路可以包括三層全連線(fullyconnected)層,其可以根據待處理視頻的特徵數據和邊界框的粗略位置確定所述邊界框的準確位置並針對每個邊界框給出一個機率值。該機率值可以表示對應的邊界框內部確實包括目標的機率。該機率值可以用於後續的目標跟蹤過程,在一個示例中,目標跟蹤過程可以僅利用機率值高於預定閾值的邊界框,由此,提供更準確的跟蹤結果。
通過步驟S342和步驟S344來給出邊界框的準確位置,第一子神經網路和第二子神經網路共用特徵提取神經網路提取到的特徵數據,從而在一定計算速度下不僅能夠得到邊界框的準確位置,還能夠得到該邊界框的可信度。
可選地,目標跟蹤方法200中所述的用於目標跟蹤的第二神經網路包括第三子神經網路和第四子神經網路。圖4示出了根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的目標跟蹤(如上步驟S260)的示意性流程圖。如圖4所示,目標跟蹤步驟S260可以包括步驟S462、步驟S464和步驟S466。
在步驟S462中,將步驟220中由特徵提取神經網路所提取的待處理視頻的特徵數據和步驟240所獲得的邊界框輸入至所述第三子神經網路,以獲得所述待處理視頻中的不同幀中的邊界框之間的外觀相似度。
邊界框是第一神經網路得到的目標檢測的結果。第三子神經網路基於待處理視頻的特徵數據和目標檢測結果(以目標的邊界框表示所述檢測結果),獲得不同視頻幀中的邊界框之間的外觀相似度。邊界框的外觀相似度主要表征了邊界框中的目標的外觀差異性,例如大小差異、紋理差異、顏色差異等。其中,邊界框中目標的大小可以根據邊界框在視頻幀中所占有的像素個數來確定。
在步驟S464中,根據上述外觀相似度和待處理視頻的不同幀中的邊界框之間的距離計算待處理視頻中的不同幀中的邊界框之間的距離相似度。
距離相似度可以根據邊界框之間的外觀相似度以及邊界框在視頻幀的空間中的距離等因素來計算。視頻幀的空間是一個二維空間,可以以視頻幀中的任意一點為坐標原點將邊界框的中心作為該邊界框在該原點下的坐標位置。在一個示例中,不同幀中的邊界框之間的距離可以用不同幀中的邊界框的坐標位置之間的歐式距離來定義。一般而言,不同的邊界框在不同的視頻幀之間的距離越小、外觀相似度越大,則所述邊界框在不同幀之間的距離相似度越大那么其屬於同一目標的機率越大,即,該不同的邊界框的標識符相同的機率越大。
在步驟S466中,將外觀相似度和距離相似度輸入至第四子神經網路,從而確定邊界框的標識符,以跟蹤待處理視頻中的所述至少一個目標。
在一個示例中,第四子神經網路是網路流神經網路,其基於網路流的方法來實現其功能。下面詳細描述該方法。網路流神經網路適於進行非線性的目標跟蹤。其不僅保證了跟蹤精度,還保證了跟蹤速度。該領域普通技術人員可以理解,在此,網路流作為一種示例性方法進行描述,其不構成對《基於神經網路模型的目標跟蹤方法及裝置》的限制。
在網路流中,每個視頻幀中的邊界框即是網路流的一個頂點。網路流的邊只在不同視頻幀之間建立。邊並非一定要在相鄰的視頻幀之間建立,也可以在不相鄰的視頻幀之間建立。
如圖5中大的矩形框代表視頻幀,如圖5所示,從左至右示出了3個連續的視頻幀(應該理解的是,這裡還可以使用不連續的視頻幀;此外,3個視頻幀也只是示例性的)。每個視頻幀內包括2或3個邊界框,如圖5中大的矩形框內的小矩形框所示。換言之,每個視頻幀內檢測出了2或3個目標。特別注意,在圖5中間的大矩形框表示的視頻幀中,虛線所示的小矩形框為應檢測出但實際未能檢測出的邊界框。可以理解,該邊界框內的目標在該視頻幀中被其前方的目標所遮擋,所以在實際計算中第一神經網路未能輸出該邊界框。視頻框下面是根據視頻幀建立的網路流模型。每個頂點對應一個矩形框,頂點之間的連線是網路流的邊。即,不同視頻幀的邊界框會邊相連。如圖5中所示,基於上述情況,第二個視頻幀中只有兩個頂點。
可選地,如果兩個視頻幀的時間間隔過大,則不在二者之間建立邊。優選地,從時間上來講,可以跨越5至9幀建立邊。以建立邊的、間隔最大的幀之間的幀數是6的情況為例來說明,第1幀可以和第2幀、第3幀、第4幀、第5幀、第6幀、第7幀和第8幀來建立邊。第1幀和第8幀是間隔最大的幀,二者之間的幀間隔數是6。對建立邊的視頻幀的時間距離進行適當限定,可以有效避免網路流的圖模型過大,從而減少計算量。
在一個示例中,網路流中邊的邊權可定義如下:
W_ij=d(B_i,B_j)+ɑA(B_i,B_j)
其中B_i,B_j表示不同幀中的兩個邊界框。d()表示邊界框的距離相似度,A()表示邊界框的外觀相似度。ɑ表示用於調節距離相似度和外觀相似度之間的關係的參數值。
可以理解,邊權表示了兩個不同幀中的邊界框之間的總的相似度。根據該邊權可以給每個邊界框一個特定的標識符。邊權越大,則相似度越高,兩個邊界框標識為同一個標識符的機率越大。根據計算結果,將具有最大邊權的邊連線的邊界框標識為同一個標識符,即具有相同標識符的邊界框指示的是同一個目標,從而實現了對目標的跟蹤。
綜合外觀相似度和距離相似度兩個參數來確定邊界框的標識符,進而進行目標跟蹤,保證了目標跟蹤的準確性。
圖6示出了根據《基於神經網路模型的目標跟蹤方法及裝置》另一實施例的基於神經網路模型的目標跟蹤方法600。如圖6所示,與目標跟蹤方法200相比,目標跟蹤方法600增加了使用訓練視頻訓練神經網路模型的步驟S610。目標跟蹤方法600中的步驟S620、步驟S640、和步驟S660分別與目標跟蹤方法200中的步驟S220、步驟S240、和步驟S260相對應,為了簡潔,在此不再贅述。
神經網路模型的訓練要基於訓練視頻進行神經網路的參數的調整。在訓練視頻中,標註了目標的邊界框和標識符。可以理解,邊界框標識了訓練目標的位置。該標識符標識了訓練目標是哪一個。該標註過程可以是人工標註過程,還可以是機器標註過程。可以認為所標註的邊界框和標識符都是客觀且準確的。
通過該步驟S610,期望獲得一個神經網路模型,以利用該神經網路模型對視頻進行準確的目標跟蹤。通過該神經網路模型獲得的邊界框對應於視頻幀中的真實目標。換言之,通過該神經網路模型獲得的邊界框的標識符與實際目標是一致的。由此,該神經網路模型可以保證在其使用過程中可以獲得理想的目標跟蹤結果。
圖7示出了根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的使用訓練視頻訓練神經網路模型(步驟S610)的示意性流程圖。
在步驟S712中,將訓練視頻輸入至神經網路模型的特徵提取神經網路,以提取訓練視頻的特徵數據。
在步驟S714中,將訓練視頻的特徵數據輸入至神經網路模型的第一神經網路以獲得訓練目標的邊界框,並且根據所標註的邊界框和第一神經網路獲得的所述訓練目標的邊界框計算第一神經網路的檢測損失函式值。
可選地,第一神經網路所獲得的訓練目標的邊界框與所標註的邊界框差異越大,那么檢測損失函式值越大,這表明越需要調整特徵提取神經網路和第一神經網路的當前參數。檢測損失函式值可以包括檢測交叉熵和檢測回歸損失函式值。
在步驟S716中,將訓練視頻的特徵數據和步驟S715中第一神經網路獲得的所述訓練目標的邊界框輸入至神經網路模型的第二神經網路以獲得訓練目標的邊界框的標識符,並根據訓練目標的所標註的標識符和第二神經網路所獲得的所述訓練目標的邊界框的標識符計算跟蹤損失函式值。在一個實施例中,跟蹤損失函式值包括跟蹤交叉熵和跟蹤回歸損失函式值。
期望所獲得的標識符對應視頻幀中的實際的相應目標,以對視頻進行準確的目標跟蹤。如前所述,認為訓練視頻中所標註的標識符客觀準確地標識了視頻幀中訓練目標的位置。可選地,所獲得的標識符與所標註的標識符差異越大,那么跟蹤損失函式值越大,這表明越需要調整特徵提取神經網路和第二神經網路的當前參數,同時,為了在目標跟蹤中實現跟蹤結果對檢測結果的最佳化,還可以利用跟蹤損失函式值同時調整特徵提取神經網路的參數、第一神經網路的參數和第二神經網路的當前參數。
在步驟S718中,在檢測損失函式值和跟蹤損失函式值不滿足預設條件的情況和/或步驟S610的總疊代次數小於第一閾值的情況下,同時調整特徵提取神經網路的參數以及第一神經網路的參數和/或第二神經網路的參數並且轉步驟S712;否則,停止對神經網路模型的訓練並獲得訓練好的神經網路模型。該訓練好的神經網路模型即可用於目標跟蹤,即用於上述目標跟蹤方法600。換言之,將檢測損失函式值和跟蹤損失函式值二者均滿足預設條件以及疊代次數大於或等於第一閾值這兩個條件中的一個或二者作為步驟S610執行結束的條件。
如前所述,檢測損失函式值可以包括檢測交叉熵和檢測回歸損失函式值。示例性地,步驟S718可以包括:根據檢測交叉熵和檢測回歸損失函式值的加權和,同時調整特徵提取神經網路的參數和第一神經網路的參數。可以首先計算檢測交叉熵和檢測回歸損失函式值的加權和。然後判斷檢測交叉熵和檢測回歸損失函式值的加權和是否滿足預設條件和/或疊代次數是否滿足預設條件。例如,可以通過判斷檢測交叉熵和檢測回歸損失函式值的加權和是否小於第二閾值來確定其是否滿足預設條件。如果不滿足,那么同時調整特徵提取神經網路的參數和第一神經網路的參數,以使檢測交叉熵和檢測回歸損失函式值的加權和更小。
此外,跟蹤損失函式值可以包括跟蹤交叉熵和跟蹤回歸損失函式值。示例性地,步驟S718可以包括:根據跟蹤交叉熵和跟蹤回歸損失函式值的加權和,同時調整特徵提取神經網路的參數、第一神經網路的參數和第二神經網路的參數。可以首先計算跟蹤交叉熵和跟蹤回歸損失函式值的加權和。然後判斷跟蹤交叉熵和跟蹤回歸損失函式值的加權和是否分別滿足預設條件和/或疊代次數是否滿足預設條件。例如,可以通過判斷跟蹤交叉熵和跟蹤回歸損失函式值的加權和是否小於第三閾值來確定其是否滿足預設條件。如果不滿足,那么同時調整特徵提取神經網路的參數、第一神經網路的參數和第二神經網路的參數,以使跟蹤交叉熵和跟蹤回歸損失函式值的加權和更小。在一個實施例中,使用跟蹤損失函式值來同時調整提取神經網路的參數、第一神經網路的參數和第二神經網路的參數,可以實現用跟蹤結果對檢測結果的最佳化。例如,對於圖5所示的中間幀中的目標被遮擋的情況,利用跟蹤結果,可以實現對目標被遮擋的情況的檢測的最佳化,即可以利用被遮擋目標的跟蹤結果,獲得該目標被遮擋前後的兩幀,根據該目標在被遮擋前後兩幀中的位置L1和L2,可以對這兩個位置取距離平均值得到平均位置信息L,從而將該平均位置信息L作為該幀在被遮擋的幀中的檢測位置,以實現對檢測結果的最佳化。
如上所述,疊代次數可以作為步驟S610執行結束的一個依據。特別是經過數次疊代,檢測損失函式值和跟蹤損失函式值仍無法滿足期望要求時,疊代次數作為步驟S610結束的依據可以避免大量無謂計算,提高計算效率和速度。
對於預設條件沒有完全滿足的情況,同時調整特徵提取神經網路的參數、第一神經網路的參數和/或第二神經網路的參數。換言之,將神經網路模型作為一個整體,來調整其中的參數。然後,通過再次執行步驟S712、步驟S714和步驟S716,基於具有更新參數的特徵提取神經網路、第一神經網路和第二神經網路,重新計算新的檢測損失函式值和跟蹤損失函式值,然後再次判斷預設條件是否已經滿足,在預設條件不滿足的情況下,繼續調整提取神經網路的參數、第一神經網路的參數和/或第二神經網路的參數;在預設條件獲得滿足的情況下,停止對所述神經網路模型的訓練並獲得訓練好的所述神經網路模型以用於跟蹤目標。
總之,在步驟S610中,重複執行步驟S712、步驟S714、步驟S716和S718,直至預設條件均已經滿足,則步驟S610執行結束,此時所獲得的神經網路模型即可用於針對視頻的目標跟蹤。
在上述步驟S610中,同時對特徵提取神經網路以及用於目標檢測的第一神經網路和/或用於目標跟蹤的第二神經網路進行訓練,它們互相促進和影響。由此,能夠獲得更理想的神經網路模型,來針對視頻更好地完成目標跟蹤,顯著提高了目標跟蹤的速度和準確性。
如上所述,第二神經網路可以包括第三子神經網路和第四子神經網路。圖8示出了根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的將訓練視頻的特徵數據和第一神經網路獲得的所述訓練目標的邊界框輸入至第二神經網路並根據訓練目標的所標註的標識符和第二神經網路獲得的訓練目標的邊界框的標識符計算跟蹤損失函式值(如上步驟S716)的示意性流程圖。如圖8所示,步驟S716可以包括步驟S716a、S716b、S716c和S716d。
在步驟S716a中,將訓練視頻的特徵數據和步驟S714中第一神經網路獲得的訓練目標的邊界框輸入至第三子神經網路,以獲得訓練視頻的不同幀中的邊界框之間的外觀相似度。
可以理解,第三子神經網路的參數可以是固定的,也可以是可調的。如果屬於後者,那么可以在神經網路模型訓練的過程中,與特徵提取神經網路和第一神經網路同時調整。
在步驟S716b中,根據所述外觀相似度和所述訓練視頻中的不同幀中的邊界框之間的距離,計算訓練視頻的不同幀中的邊界框之間的距離相似度。
在步驟S716c中,將步驟S716a所計算的外觀相似度和步驟S716b所計算的距離相似度輸入至第四子神經網路,以獲得所述訓練目標的邊界框的標識符。
在步驟S716d中,根據所標註的標識符和步驟S716c所獲得的所述訓練目標的邊界框的標識符,計算第二神經網路的跟蹤損失函式值。在一個示例中,跟蹤損失函式值與所標註的標識符和所獲得的所述訓練目標的邊界框的標識符之間的差異大小成正比。
上述利用所獲得的訓練目標的標識符與所標註的訓練目標的標識符之間的差異的方法計算跟蹤損失函式值的方法,保證了跟蹤損失函式值得計算精度。根據該跟蹤損失函式值所訓練的神經網路模型能夠更準確地進行目標跟蹤。
在一個示例中,由任意監控攝像頭採集視頻,並根據《基於神經網路模型的目標跟蹤方法及裝置》的目標跟蹤方法來分析處理該視頻,以對視頻中出現的目標(例如,行人、車輛等)進行檢測和跟蹤。可選地,監控攝像頭針對目標區域以一定俯視角來採集視頻。示例性地,根據《基於神經網路模型的目標跟蹤方法及裝置》實施例的目標跟蹤方法可以在具有存儲器和處理器的設備、裝置或者系統中實現,例如伺服器。監控攝像頭可以與實現《基於神經網路模型的目標跟蹤方法及裝置》的目標跟蹤方法的設備、裝置或者系統直接連線或間接連線,例如經由網路連線。該網路可以是有線網路或無線網路。可選地,該監控攝像頭還可以與實現《基於神經網路模型的目標跟蹤方法及裝置》的目標跟蹤方法的設備、裝置或者系統集成在一起。例如,《基於神經網路模型的目標跟蹤方法及裝置》的目標跟蹤方法由一個計算處理單元來實現。可以將該計算處理單元集成到監控攝像頭內,由此,監控攝像頭所採集的視頻可以直接傳輸到計算處理單元進行後續檢測和跟蹤分析。
上述目標跟蹤方法,顯著提高了目標檢測和跟蹤的準確性。此外,該目標跟蹤方法執行速度快,進而保證了目標檢測和跟蹤的實時性。
圖9示出了根據《基於神經網路模型的目標跟蹤方法及裝置》另一實施例的基於神經網路模型的目標跟蹤方法900。與圖2所示的目標跟蹤方法200相比,該目標跟蹤方法900增加了步驟S980。
在步驟S980中,根據步驟S920所提取的待處理視頻的特徵數據、步驟S940所獲得的邊界框和步驟S960所獲得的標識符,分析所跟蹤的至少一個目標的屬性和/或動作。示例性地,所述屬性可以包括諸如年齡、性別、身高、體重和穿著等屬性信息。所述動作可以包括諸如摔倒、招手和走路等動作信息。
示例性地,可以首先將步驟S920所提取的待處理視頻的每一幀的特徵數據、步驟S940所獲得的邊界框和步驟S960所獲得的標識符輸入至第一卷積神經網路,然後經由例如兩個全連線層,以獲取幀屬性分析結果。可選地,對於多個視頻幀,可以將所有幀的幀屬性分析結果進行池化(pool),輸出最終屬性分析結果。
動作分析可以採用與屬性分析類似的方式,先後利用卷積神經網路,經由全連線層,從而獲得動作的開始幀和結束幀,進而獲得動作的類別。
在另外一個實施例中,還可以根據步驟S920所提取的待處理視頻的特徵數據、步驟S940所獲得的邊界框和步驟S960所獲得的標識符以及步驟S980獲得的屬性分析結果識別所跟蹤的目標。例如,可以將所檢測的目標與資料庫中存儲的對象進行比較,從而識別目標的具體身份。例如,資料庫中可以預存犯罪分子的相關圖像數據以及屬性信息,可以將所具有相同屬性信息的檢測到的行人與資料庫中的相關圖像數據和其它數據進行比較,以確定行人是否為在逃的犯罪分子。
這裡,基於檢測和跟蹤結果給出了一些相關的智慧型分析套用,提高了用戶體驗。在分析過程中,通過直接利用特徵提取神經網路獲得的待處理視頻的特徵數據,從而減少了計算量,提高了計算速度。
圖10示出了根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的基於神經網路模型的目標跟蹤裝置1000的示意性框圖。該神經網路模型包括特徵提取神經網路、第一神經網路和第二神經網路。如圖10所示,目標跟蹤裝置1000包括第一特徵提取模組1020、檢測模組1040和跟蹤模組1060。
第一特徵提取模組1020用於將待處理視頻輸入至所述特徵提取神經網路,以提取所述待處理視頻的特徵數據。特徵提取神經網路可以包括卷積神經網路。第一特徵提取模組1020可以由圖1所示的電子設備中的處理器102運行存儲裝置104中存儲的程式指令來實現,並且可以執行根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的目標跟蹤方法中的步驟S220。
檢測模組1040用於將所述待處理視頻的特徵數據輸入至所述第一神經網路,以獲得所述待處理視頻中的至少一個目標的邊界框。第一神經網路可以包括卷積神經網路。檢測模組1040可以由圖1所示的電子設備中的處理器102運行存儲裝置104中存儲的程式指令來實現,並且可以執行根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的目標跟蹤方法中的步驟S240。
跟蹤模組1060用於將所述待處理視頻的特徵數據和所述邊界框輸入至所述第二神經網路,從而獲得所述邊界框的標識符,以跟蹤所述待處理視頻中的所述至少一個目標,其中所述標識符用於指示所述至少一個目標。跟蹤模組1060可以由圖1所示的電子設備中的處理器102運行存儲裝置104中存儲的程式指令來實現,並且可以執行根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的目標跟蹤方法中的步驟S260。
在上述基於神經網路模型的目標跟蹤裝置1000中,目標檢測和目標跟蹤均利用視頻的相同特徵數據並且這兩個過程互相促進和最佳化,能夠顯著提高目標跟蹤的速度和準確性。
圖11示出了根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的檢測模組1040的示意性框圖。如圖11所示,所述檢測模組1040可以包括邊界框初定單元1042和邊界框確定單元1044。在此實施例中,第一神經網路包括第一子神經網路和第二子神經網路。
邊界框初定單元1042用於將所述待處理視頻的特徵數據輸入至所述第一子神經網路,以獲得所述邊界框的粗略位置。所述邊界框初定單元1042可以由圖1所示的電子設備中的處理器102運行存儲裝置104中存儲的程式指令來實現,並且可以執行根據《基於神經網路模型的目標跟蹤方法及裝置》實施例的目標跟蹤方法的步驟S342。
邊界框確定單元1044用於將所述待處理視頻的特徵數據和所述邊界框的粗略位置輸入至所述第二子神經網路,以獲得所述邊界框的準確位置和指示所述邊界框內包括所述至少一個目標的機率值。所述邊界框確定單元1044可以由圖1所示的電子設備中的處理器102運行存儲裝置104中存儲的程式指令來實現,並且可以執行根據《基於神經網路模型的目標跟蹤方法及裝置》實施例的目標跟蹤方法的步驟S344。
圖12示出了根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的跟蹤模組1060的示意性框圖。如圖12所示,所述跟蹤模組1060可以包括外觀相似度計算單元1262、距離相似度計算單元1264和標識符確定單元1266。在一個實施例中,第二神經網路包括第三子神經網路和第四子神經網路。
外觀相似度計算單元1262用於將由特徵提取神經網路提取的所述待處理視頻的特徵數據和所述第一神經網路獲得的邊界框輸入至所述第三子神經網路,以獲得所述待處理視頻中的不同幀中的邊界框之間的外觀相似度。邊界框的外觀相似度主要表征了邊界框中的目標的外觀差異性,例如大小差異、紋理差異、顏色差異等。外觀相似度計算單元1262可以由圖1所示的電子設備中的處理器102運行存儲裝置104中存儲的程式指令來實現,並且可以執行根據《基於神經網路模型的目標跟蹤方法及裝置》實施例的目標跟蹤方法的步驟S462。
距離相似度計算單元1264用於根據所述外觀相似度和所述不同幀中的邊界框之間的距離計算所述待處理視頻中的所述不同幀中的邊界框之間的距離相似度。所述距離相似度計算單元1264可以由圖1所示的電子設備中的處理器102運行存儲裝置104中存儲的程式指令來實現,並且可以執行根據《基於神經網路模型的目標跟蹤方法及裝置》實施例的目標跟蹤方法的步驟S464。
標識符確定單元1266用於將所述外觀相似度和所述距離相似度輸入至所述第四子神經網路,從而獲得所述邊界框的標識符,以跟蹤所述待處理視頻中的所述至少一個目標。在一個示例中,第四子神經網路是網路流神經網路,其基於網路流的方法來實現其功能。所述標識符確定單元1266可以由圖1所示的電子設備中的處理器102運行存儲裝置104中存儲的程式指令來實現,並且可以執行根據《基於神經網路模型的目標跟蹤方法及裝置》實施例的目標跟蹤方法的步驟S466。在一個示例中,網路流中連線不同視頻幀中的不同邊界框的邊的邊權可定義如下:
W_ij=d(B_i,B_j)+ɑA(B_i,B_j)
其中B_i,B_j表示不同幀中的兩個邊界框。d()表示邊界框的距離相似度,A()表示邊界框的外觀相似度。ɑ表示用於調節距離相似度和外觀相似度之間的關係的參數值。
可以理解,邊權表示了不同幀中的兩個邊界框之間的總的相似度。根據該邊權可以給每個邊界框一個特定的標識符。邊權越大,則相似度越高,兩個邊界框標識為同一個標識符的機率越大。根據計算結果,將具有最大邊權的邊連線的邊界框標識為同一個標識符,即具有相同標識符的邊界框指示的是同一個目標,從而實現了對目標的跟蹤。
圖13示出了根據《基於神經網路模型的目標跟蹤方法及裝置》另一個實施例的基於神經網路模型的目標跟蹤裝置1300的示意性框圖。與目標跟蹤裝置1000相比,增加了訓練模組1310。
訓練模組1310用於使用訓練視頻訓練所述神經網路模型。在訓練視頻中,針對訓練目標標註了邊界框和標識符,所述標識符用於指示所述訓練目標。所述訓練模組1310可以由圖1所示的電子設備中的處理器102運行存儲裝置104中存儲的程式指令來實現,並且可以執行根據《基於神經網路模型的目標跟蹤方法及裝置》實施例的目標跟蹤方法的步驟S610。
圖14示出了根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的訓練模組1310的示意性框圖。如圖14所示,訓練模組1310包括訓練特徵提取模組1412、檢測訓練模組1414、跟蹤訓練模組1416和調整模組1418。
訓練特徵提取模組1412用於將訓練視頻輸入至所述特徵提取神經網路,以提取所述訓練視頻的特徵數據。訓練特徵提取模組1412可以由圖1所示的電子設備中的處理器102運行存儲裝置104中存儲的程式指令來實現,並且可以執行根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的目標跟蹤方法中的步驟S712。
檢測訓練模組1414用於將所述訓練視頻的特徵數據輸入至所述第一神經網路以獲得所述訓練目標的邊界框,並且根據所標註的邊界框和所述第一神經網路獲得的所述訓練目標的邊界框計算第一神經網路的檢測損失函式值。所述檢測損失函式值可以包括檢測交叉熵和檢測回歸損失函式值。檢測訓練模組1412可以由圖1所示的電子設備中的處理器102運行存儲裝置104中存儲的程式指令來實現,並且可以執行根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的目標跟蹤方法中的步驟S714。
跟蹤訓練模組1416用於將所述訓練視頻的特徵數據和所述第一神經網路獲得的所述訓練目標的邊界框輸入至所述第二神經網路以獲得所述訓練目標的邊界框的標識符,並根據所述訓練目標的所標註的標識符和所述第二神經網路獲得的訓練目標的邊界框的標識符計算跟蹤損失函式值。在一個實施例中,跟蹤損失函式值包括跟蹤交叉熵和跟蹤回歸損失函式值。跟蹤訓練模組1416可以由圖1所示的電子設備中的處理器102運行存儲裝置104中存儲的程式指令來實現,並且可以執行根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的目標跟蹤方法中的步驟S716。
調整模組1418用於在所述檢測損失函式值和/或所述跟蹤損失函式值不滿足預設條件的情況和/或疊代次數小於第一閾值的情況下,同時調整所述特徵提取神經網路的參數以及所述第一神經網路的參數和/或所述第二神經網路的參數;否則,停止對神經網路模型的訓練並獲得訓練好的所述神經網路模型以用於跟蹤目標。調整模組1418可以由圖1所示的電子設備中的處理器102運行存儲裝置104中存儲的程式指令來實現,並且可以執行根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的目標跟蹤方法中的步驟S718。
示例性地,調整模組1418可以用於根據所述檢測交叉熵和所述檢測回歸損失函式值的加權和,同時調整所述特徵提取神經網路的參數和所述第一神經網路的參數。
示例性地,調整模組1418還可以用於根據所述跟蹤交叉熵和所述跟蹤回歸損失函式值的加權和,同時調整所述特徵提取神經網路的參數、所述第一神經網路的參數和所述第二神經網路的參數。
圖15示出了根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的跟蹤訓練模組1416的示意性框圖。如圖15所示,跟蹤訓練模組1416進一步包括外觀相似度訓練計算單元、距離相似度訓練計算單元、標識符訓練獲得單元和跟蹤損失函式值計算單元。如前所述,第二神經網路可以包括第三子神經網路和第四子神經網路。
外觀相似度訓練計算單元用於將所述訓練視頻的特徵數據和第一神經網路獲得的訓練目標的邊界框輸入至所述第三子神經網路,以獲得所述訓練視頻的不同幀中的邊界框之間的外觀相似度。外觀相似度訓練計算單元可以由圖1所示的電子設備中的處理器102運行存儲裝置104中存儲的程式指令來實現,並且可以執行根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的目標跟蹤方法中的步驟S716a。
距離相似度訓練計算單元用於根據所述外觀相似度和所述訓練視頻中的不同幀中的邊界框之間的距離計算所述訓練視頻的不同幀中的邊界框之間的距離相似度。距離相似度訓練計算單元可以由圖1所示的電子設備中的處理器102運行存儲裝置104中存儲的程式指令來實現,並且可以執行根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的目標跟蹤方法中的步驟S716b。
標識符訓練獲得單元用於將所述外觀相似度和所述距離相似度輸入至所述第四子神經網路,以獲得所述訓練目標的邊界框的標識符。標識符訓練確定單元可以由圖1所示的電子設備中的處理器102運行存儲裝置104中存儲的程式指令來實現,並且可以執行根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的目標跟蹤方法中的步驟S716c。
跟蹤損失函式值計算單元用於根據所標註的標識符和標識符訓練獲得單元所獲得的所述訓練目標的邊界框的標識符,計算所述跟蹤損失函式值。跟蹤損失函式值計算單元可以由圖1所示的電子設備中的處理器102運行存儲裝置104中存儲的程式指令來實現,並且可以執行根據《基於神經網路模型的目標跟蹤方法及裝置》一個實施例的目標跟蹤方法中的步驟S716d。
可選地,上述目標跟蹤裝置1000還可以包括分析模組(未示出),用於根據所述特徵提取神經網路提取的待處理視頻的特徵數據、所述第一神經網路獲得的邊界框和所述第二神經網路獲得的所述邊界框的標識符,分析所跟蹤的目標的屬性和/或動作。可選地,所述分析模組用於將所述待處理視頻的特徵數據、所述邊界框和所述標識符輸入至第一卷積神經網路,經由全連線層,輸出所述至少一個目標的屬性和/或動作。所述分析模組可以由圖1所示的電子設備中的處理器102運行存儲裝置104中存儲的程式指令來實現,並且可以執行根據《基於神經網路模型的目標跟蹤方法及裝置》實施例的目標跟蹤方法的步驟S980。
該領域普通技術人員通過閱讀上文關於基於神經網路模型的目標跟蹤方法的詳細描述,能夠理解上述基於神經網路模型的目標跟蹤裝置的結構、實現以及優點,因此這裡不再贅述。
該領域普通技術人員可以意識到,結合《基於神經網路模型的目標跟蹤方法及裝置》所公開的實施例描述的各示例的單元及算法步驟,能夠以電子硬體、或者計算機軟體和電子硬體的結合來實現。這些功能究竟以硬體還是軟體方式來執行,取決於技術方案的特定套用和設計約束條件。專業技術人員可以對每個特定的套用來使用不同方法來實現所描述的功能,但是這種實現不應認為超出《基於神經網路模型的目標跟蹤方法及裝置》的範圍。
圖16示出了根據《基於神經網路模型的目標跟蹤方法及裝置》實施例的目標跟蹤系統1600的示意性框圖。該目標跟蹤系統1600可以用於執行基於神經網路模型的目標跟蹤方法,所述神經網路模型包括特徵提取神經網路、第一神經網路和第二神經網路。目標跟蹤系統1600包括輸入裝置1610、存儲裝置1620、處理器1630以及輸出裝置1640。
所述輸入裝置1610用於接收用戶所輸入的操作指令以及採集數據。輸入裝置1610可以包括鍵盤、滑鼠、麥克風、觸控螢幕和攝像頭等中的一個或多個。
所述存儲裝置1620存儲用於實現根據《基於神經網路模型的目標跟蹤方法及裝置》實施例的目標跟蹤方法的相應步驟的程式代碼。
所述處理器1630用於運行所述存儲裝置1620中存儲的程式代碼,以執行根據《基於神經網路模型的目標跟蹤方法及裝置》實施例的目標跟蹤方法的相應步驟,並且用於實現根據《基於神經網路模型的目標跟蹤方法及裝置》實施例的目標跟蹤裝置中的第一特徵提取模組1020、檢測模組1040和跟蹤模組1060。
在一個實施例中,在所述程式代碼被所述處理器1630運行時使所述目標跟蹤系統1600執行以下步驟:
S220,將待處理視頻輸入至特徵提取神經網路,以提取所述待處理視頻的特徵數據。
S240,將步驟S220所提取的待處理視頻的特徵數據輸入至第一神經網路,以獲得所述待處理視頻中的至少一個目標的邊界框。
S260,將步驟S220所提取的待處理視頻的特徵數據和步驟S240所獲得的邊界框輸入至第二神經網路,從而獲得所述邊界框的標識符,以跟蹤待處理視頻中的所述至少一個目標,其中所述標識符用於指示所述至少一個目標。
示例性地,所述第一神經網路包括第一子神經網路和第二子神經網路。在所述程式代碼被所述處理器1630運行時使所述目標跟蹤系統1600執行步驟S240包括:
S342,將所述待處理視頻的特徵數據輸入至所述第一子神經網路,以獲得所述邊界框的粗略位置;以及
S344,將所述待處理視頻的特徵數據和所述邊界框的粗略位置輸入至所述第二子神經網路,以獲得所述邊界框的準確位置和指示所述邊界框內包括所述至少一個目標的機率值。
示例性地,所述第二神經網路包括第三子神經網路和第四子神經網路。在所述程式代碼被所述處理器1630運行時使所述目標跟蹤系統1600執行的步驟S260包括:
S462,將所述特徵數據和所述邊界框輸入至所述第三子神經網路,以獲得所述待處理視頻中的不同幀中的邊界框之間的外觀相似度;
S464,根據所述外觀相似度和所述不同幀中的邊界框之間的距離計算所述待處理視頻中的所述不同幀中的邊界框之間的距離相似度;以及
S466,將所述外觀相似度和所述距離相似度輸入至所述第四子神經網路,從而獲得所述邊界框的標識符,以跟蹤所述待處理視頻中的所述至少一個目標。
示例性地,所述第一神經網路和/或所述特徵提取神經網路包括卷積神經網路。
示例性地,在所述程式代碼被所述處理器1630運行時還使所述目標跟蹤系統1600執行以下步驟:
S610,使用訓練視頻訓練所述神經網路模型,其中,在所述訓練視頻中,針對訓練目標標註了邊界框和標識符,所述標識符用於指示所述訓練目標;
其中,S610,使用訓練視頻訓練所述神經網路模型包括:
S712,將所述訓練視頻輸入至所述特徵提取神經網路,以提取所述訓練視頻的特徵數據;
S714,將所述訓練視頻的特徵數據輸入至所述第一神經網路以獲得所述訓練目標的邊界框,並且根據所標註的邊界框和所述第一神經網路獲得的所述訓練目標的邊界框計算檢測損失函式值;
S716,將所述訓練視頻的特徵數據和所述第一神經網路獲得的所述訓練目標的邊界框輸入至所述第二神經網路以獲得所述訓練目標的邊界框的標識符,並根據所述訓練目標的所標註的標識符和所述第二神經網路獲得的所述訓練目標的邊界框的標識符計算跟蹤損失函式值;
S718,在所述檢測損失函式值和/或所述跟蹤損失函式值不滿足預設條件的情況和/或疊代次數小於第一閾值的情況下,同時調整所述特徵提取神經網路的參數以及所述第一神經網路的參數和/或所述第二神經網路的參數並且轉所述步驟S712,否則,停止對所述神經網路模型的訓練並獲得訓練好的所述神經網路模型以用於跟蹤目標。
示例性地,所述第二神經網路包括第三子神經網路和第四子神經網路。在所述程式代碼被所述處理器1630運行時使所述目標跟蹤系統1600執行步驟S716包括:
將所述訓練視頻的特徵數據和所述第一神經網路獲得的所述訓練目標的邊界框輸入至所述第三子神經網路,以獲得所述訓練視頻的不同幀中的邊界框之間的外觀相似度;
根據所述外觀相似度和所述訓練視頻中的不同幀中的邊界框之間的距離計算所述訓練視頻的不同幀中的邊界框之間的距離相似度;
將所述外觀相似度和所述距離相似度輸入至所述第四子神經網路,以獲得所述訓練目標的邊界框的標識符;以及
根據所標註的標識符和所獲得的所述訓練目標的邊界框的標識符,計算所述跟蹤損失函式值。
示例性地,所述檢測損失函式值包括檢測交叉熵和檢測回歸損失函式值。在所述程式代碼被所述處理器1630運行時使所述目標跟蹤系統1600執行步驟S718包括:
根據所述檢測交叉熵和所述檢測回歸損失函式值的加權和,同時調整所述特徵提取神經網路的參數和所述第一神經網路的參數。
示例性地,所述跟蹤損失函式值包括跟蹤交叉熵和跟蹤回歸損失函式值。在所述程式代碼被所述處理器1630運行時使所述目標跟蹤系統1600執行步驟S718包括:
根據所述跟蹤交叉熵和所述跟蹤回歸損失函式值的加權和,同時調整所述特徵提取神經網路的參數、所述第一神經網路的參數和所述第二神經網路的參數。
示例性地,在所述程式代碼被所述處理器1630運行時還使所述目標跟蹤系統1600執行以下步驟:
S980,根據所述待處理視頻的特徵數據、所述邊界框和所述標識符,分析所述至少一個目標的屬性和/或動作。
示例性地,在所述程式代碼被所述處理器1630運行時使所述目標跟蹤系統1600執行步驟S980包括:
將所述待處理視頻的特徵數據、所述邊界框和所述標識符輸入至第一卷積神經網路,經由全連線層,輸出所述至少一個目標的屬性和/或動作。
此外,根據《基於神經網路模型的目標跟蹤方法及裝置》實施例,還提供了一種存儲介質,在所述存儲介質上存儲了程式指令,在所述程式指令被計算機或處理器運行時用於執行《基於神經網路模型的目標跟蹤方法及裝置》實施例的目標跟蹤方法的相應步驟,並且用於實現根據《基於神經網路模型的目標跟蹤方法及裝置》實施例的目標跟蹤裝置中的相應模組。所述存儲介質例如可以包括智慧型電話的存儲卡、平板電腦的存儲部件、個人計算機的硬碟、唯讀存儲器(ROM)、可擦除可程式唯讀存儲器(EPROM)、攜帶型緊緻盤唯讀存儲器(CD-ROM)、USB存儲器、或者上述存儲介質的任意組合。所述計算機可讀存儲介質可以是一個或多個計算機可讀存儲介質的任意組合。
在一個實施例中,所述神經網路模型包括特徵提取神經網路、第一神經網路和第二神經網路。所述電腦程式指令在被計算機或處理器運行時使所述計算機或處理器執行以下步驟:
S220,將待處理視頻輸入至所述特徵提取神經網路,以提取所述待處理視頻的特徵數據;
S240,將所述待處理視頻的特徵數據輸入至所述第一神經網路,以獲得所述待處理視頻中的至少一個目標的邊界框;以及
S260,將所述待處理視頻的特徵數據和所述邊界框輸入至所述第二神經網路,從而獲得所述邊界框的標識符,以跟蹤所述待處理視頻中的所述至少一個目標,其中所述標識符用於指示所述至少一個目標。
示例性地,第一神經網路包括第一子神經網路和第二子神經網路。在所述電腦程式指令在被所述計算機或處理器運行時使計算機或處理器執行的步驟S240包括:
S342,將所述待處理視頻的特徵數據輸入至所述第一子神經網路,以獲得所述邊界框的粗略位置;以及
S344,將所述待處理視頻的特徵數據和所述邊界框的粗略位置輸入至所述第二子神經網路,以獲得所述邊界框的準確位置和指示所述邊界框內包括所述至少一個目標的機率值。
示例性地,所述第二神經網路包括第三子神經網路和第四子神經網路。在所述電腦程式指令在被所述計算機或處理器運行時使計算機或處理器執行的步驟S260包括:
S462,將所述特徵數據和所述邊界框輸入至所述第三子神經網路,以獲得所述待處理視頻中的不同幀中的邊界框之間的外觀相似度;
S464,根據所述外觀相似度和所述不同幀中的邊界框之間的距離計算所述待處理視頻中的所述不同幀中的邊界框之間的距離相似度;以及
S466,將所述外觀相似度和所述距離相似度輸入至所述第四子神經網路,從而獲得所述邊界框的標識符,以跟蹤所述待處理視頻中的所述至少一個目標。
示例性地,所述第一神經網路和/或所述特徵提取神經網路包括卷積神經網路。
示例性地,所述電腦程式指令在被計算機或處理器運行時還使所述計算機或處理器執行以下步驟:
S610,使用訓練視頻訓練所述神經網路模型,其中,在所述訓練視頻中,針對訓練目標標註了邊界框和標識符,所述標識符用於指示所述訓練目標;
其中,在所述電腦程式指令在被所述計算機或處理器運行時使計算機或處理器執行步驟S610包括:
S712,將所述訓練視頻輸入至所述特徵提取神經網路,以提取所述訓練視頻的特徵數據;
S714,將所述訓練視頻的特徵數據輸入至所述第一神經網路以獲得所述訓練目標的邊界框,並且根據所標註的邊界框和所述第一神經網路獲得的所述訓練目標的邊界框計算檢測損失函式值;
S716,將所述訓練視頻的特徵數據和所述第一神經網路獲得的所述訓練目標的邊界框輸入至所述第二神經網路以獲得所述訓練目標的邊界框的標識符,並根據所述訓練目標的所標註的標識符和所述第二神經網路獲得的所述訓練目標的邊界框的標識符計算跟蹤損失函式值;以及
S718,在所述檢測損失函式值和/或所述跟蹤損失函式值不滿足預設條件的情況和/或疊代次數小於第一閾值的情況下,同時調整所述特徵提取神經網路的參數以及所述第一神經網路的參數和/或所述第二神經網路的參數並且轉所述步驟S712,否則,停止對所述神經網路模型的訓練並獲得訓練好的所述神經網路模型以用於跟蹤目標。
示例性地,所述第二神經網路包括第三子神經網路和第四子神經網路。在所述電腦程式指令在被所述計算機或處理器運行時使計算機或處理器執行步驟S716包括:
將所述訓練視頻的特徵數據和所述第一神經網路獲得的所述訓練目標的邊界框輸入至所述第三子神經網路,以獲得所述訓練視頻的不同幀中的邊界框之間的外觀相似度;
根據所述外觀相似度和所述訓練視頻中的不同幀中的邊界框之間的距離計算所述訓練視頻的不同幀中的邊界框之間的距離相似度;
將所述外觀相似度和所述距離相似度輸入至所述第四子神經網路,以獲得所述訓練目標的邊界框的標識符;以及
根據所標註的標識符和所獲得的所述訓練目標的邊界框的標識符,計算所述跟蹤損失函式值。
示例性地,所述檢測損失函式值包括檢測交叉熵和檢測回歸損失函式值。在所述電腦程式指令在被所述計算機或處理器運行時使計算機或處理器執行步驟S718包括:
根據所述檢測交叉熵和所述檢測回歸損失函式值的加權和,同時調整所述特徵提取神經網路的參數和所述第一神經網路的參數。
示例性地,所述跟蹤損失函式值包括跟蹤交叉熵和跟蹤回歸損失函式值。在所述電腦程式指令在被所述計算機或處理器運行時使計算機或處理器執行步驟S718包括:
根據所述跟蹤交叉熵和所述跟蹤回歸損失函式值的加權和,同時調整所述特徵提取神經網路的參數、所述第一神經網路的參數和所述第二神經網路的參數。
示例性地,所述電腦程式指令在被計算機或處理器運行時還執行以下步驟:
S980,根據所述待處理視頻的特徵數據、所述邊界框和所述標識符,分析所述至少一個目標的屬性和/或動作。
示例性地,在所述電腦程式指令在被所述計算機或處理器運行時使計算機或處理器執行步驟S980包括:
將所述待處理視頻的特徵數據、所述邊界框和所述標識符輸入至第一卷積神經網路,經由全連線層,輸出所述至少一個目標的屬性和/或動作。
根據《基於神經網路模型的目標跟蹤方法及裝置》實施例的目標跟蹤裝置中的各模組可以通過根據《基於神經網路模型的目標跟蹤方法及裝置》實施例的處理器運行在存儲器中存儲的電腦程式指令來實現,或者可以在根據《基於神經網路模型的目標跟蹤方法及裝置》實施例的電腦程式產品的計算機可讀存儲介質中存儲的計算機指令被計算機運行時實現。
根據《基於神經網路模型的目標跟蹤方法及裝置》實施例的目標跟蹤方法及裝置、電子設備以及存儲介質,能夠針對視頻更好地完成目標的檢測和跟蹤。顯著提高了目標跟蹤的速度和準確性。
儘管這裡已經參考附圖描述了示例實施例,應理解上述示例實施例僅僅是示例性的,並且不意圖將《基於神經網路模型的目標跟蹤方法及裝置》的範圍限制於此。該領域普通技術人員可以在其中進行各種改變和修改,而不偏離《基於神經網路模型的目標跟蹤方法及裝置》的範圍和精神。所有這些改變和修改意在被包括在所附權利要求所要求的《基於神經網路模型的目標跟蹤方法及裝置》的範圍之內。
該領域普通技術人員可以意識到,結合《基於神經網路模型的目標跟蹤方法及裝置》所公開的實施例描述的各示例的單元及算法步驟,能夠以電子硬體、或者計算機軟體和電子硬體的結合來實現。這些功能究竟以硬體還是軟體方式來執行,取決於技術方案的特定套用和設計約束條件。專業技術人員可以對每個特定的套用來使用不同方法來實現所描述的功能,但是這種實現不應認為超出《基於神經網路模型的目標跟蹤方法及裝置》的範圍。
在《基於神經網路模型的目標跟蹤方法及裝置》所提供的幾個實施例中,應該理解到,所揭露的設備和方法,可以通過其它的方式實現。例如,以上所描述的設備實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個設備,或一些特徵可以忽略,或不執行。
在此處所提供的說明書中,說明了大量具體細節。然而,能夠理解,《基於神經網路模型的目標跟蹤方法及裝置》的實施例可以在沒有這些具體細節的情況下實踐。在一些實例中,並未詳細示出公知的方法、結構和技術,以便不模糊對《基於神經網路模型的目標跟蹤方法及裝置》的理解。
類似地,應當理解,為了精簡《基於神經網路模型的目標跟蹤方法及裝置》並幫助理解各個發明方面中的一個或多個,在對《基於神經網路模型的目標跟蹤方法及裝置》的示例性實施例的描述中,《基於神經網路模型的目標跟蹤方法及裝置》的各個特徵有時被一起分組到單個實施例、圖、或者對其的描述中。然而,並不應將該《基於神經網路模型的目標跟蹤方法及裝置》的的方法解釋成反映如下意圖:即所要求保護的《基於神經網路模型的目標跟蹤方法及裝置》要求比在每個權利要求中所明確記載的特徵更多的特徵。更確切地說,如相應的權利要求書所反映的那樣,其發明點在於可以用少於某個公開的單個實施例的所有特徵的特徵來解決相應的技術問題。因此,遵循具體實施方式的權利要求書由此明確地併入該具體實施方式,其中每個權利要求本身都作為《基於神經網路模型的目標跟蹤方法及裝置》的單獨實施例。
該領域的技術人員可以理解,除了特徵之間相互排斥之外,可以採用任何組合對《基於神經網路模型的目標跟蹤方法及裝置》(包括伴隨的權利要求、摘要和附圖)中公開的所有特徵以及如此公開的任何方法或者設備的所有過程或單元進行組合。除非另外明確陳述,《基於神經網路模型的目標跟蹤方法及裝置》(包括伴隨的權利要求、摘要和附圖)中公開的每個特徵可以由提供相同、等同或相似目的的替代特徵來代替。
此外,該領域的技術人員能夠理解,儘管在此所述的一些實施例包括其它實施例中所包括的某些特徵而不是其它特徵,但是不同實施例的特徵的組合意味著處於《基於神經網路模型的目標跟蹤方法及裝置》的範圍之內並且形成不同的實施例。例如,在權利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。
《基於神經網路模型的目標跟蹤方法及裝置》的各個部件實施例可以以硬體實現,或者以在一個或者多個處理器上運行的軟體模組實現,或者以它們的組合實現。該領域的技術人員應當理解,可以在實踐中使用微處理器或者數位訊號處理器(DSP)來實現根據《基於神經網路模型的目標跟蹤方法及裝置》實施例的目標跟蹤裝置中的一些模組的一些或者全部功能。《基於神經網路模型的目標跟蹤方法及裝置》還可以實現為用於執行這裡所描述的方法的一部分或者全部的裝置程式(例如,電腦程式和電腦程式產品)。這樣的實現《基於神經網路模型的目標跟蹤方法及裝置》的程式可以存儲在計算機可讀介質上,或者可以具有一個或者多個信號的形式。這樣的信號可以從網際網路網站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。
應該注意的是上述實施例對《基於神經網路模型的目標跟蹤方法及裝置》進行說明而不是對《基於神經網路模型的目標跟蹤方法及裝置》進行限制,並且該領域技術人員在不脫離所附權利要求的範圍的情況下可設計出替換實施例。在權利要求中,不應將位於括弧之間的任何參考符號構造成對權利要求的限制。單詞“包含”不排除存在未列在權利要求中的元件或步驟。位於元件之前的單詞“一”或“一個”不排除存在多個這樣的元件。《基於神經網路模型的目標跟蹤方法及裝置》可以藉助於包括有若干不同元件的硬體以及藉助於適當編程的計算機來實現。在列舉了若干裝置的單元權利要求中,這些裝置中的若干個可以是通過同一個硬體項來具體體現。單詞第一、第二、以及第三等的使用不表示任何順序。可將這些單詞解釋為名稱。
以上所述,僅為《基於神經網路模型的目標跟蹤方法及裝置》的具體實施方式或對具體實施方式的說明,《基於神經網路模型的目標跟蹤方法及裝置》的保護範圍並不局限於此,任何熟悉該技術領域的技術人員在《基於神經網路模型的目標跟蹤方法及裝置》揭露的技術範圍內,可輕易想到變化或替換,都應涵蓋在《基於神經網路模型的目標跟蹤方法及裝置》的保護範圍之內。《基於神經網路模型的目標跟蹤方法及裝置》的保護範圍應以權利要求的保護範圍為準。

榮譽表彰

2018年12月20日,《基於神經網路模型的目標跟蹤方法及裝置》獲得第二十屆中國專利優秀獎。

相關詞條

熱門詞條

聯絡我們