一種基于圖片對象表征的地點識別方法及相關設備與流程
1.本技術涉及人工智能技術領域,尤其涉及一種基于圖片對象表征的地點識別方法及相關設備。
背景技術:
2.近年來,隨著數據科學技術爆炸式的發展,基于圖片的地點識別作為其技術路線的一個重要分支,在學界與業界均受到廣泛關注,尤其在眾多保險行業,相似地點圖片的檢索,對于異常案件的判斷具有重要意義。
3.地點識別,也稱為基于圖像的定位,是指獲取一個當前圖像,然后在預先構建的環境地圖中進行查,獲取一個最相似的參考圖像,根據所述參考圖像對應的地理位置來識別當前圖像對應的地理位置。目前,基于圖片的地點識別技術主要有三種分支,一種是基于全局的特征描述,一種是基于局部的特征描述,還有一種是融合全局和局部的特征描述,但上述方法的通用性較差。而在實際應用中,地點的識別往往通過標志建筑物、具有區分度的物體及其相互位置來判斷,而上述方法在視角變換或者物體遮擋時,導致特征描述不準確,進而影響地點識別的精度。
技術實現要素:
4.本技術實施例的目的在于提出一種基于圖片對象表征的地點識別方法及相關設備,以解決相關技術中地點識別特征描述不準確導致識別精度較低的技術問題。
5.為了解決上述技術問題,本技術實施例提供一種基于圖片對象表征的地點識別方法,采用了如下所述的技術方案:
6.獲取待識別圖片,將所述待識別圖片輸入訓練好的目標檢測模型中,其中,所述目標檢測模型包括特征提取模塊、對象解碼模塊、相對位置解碼模塊和輸出模塊;
7.通過所述特征提取模塊獲取所述待識別圖片的圖像特征向量和位置編碼向量,并將所述圖像特征向量和所述位置編碼向量進行融合,得到融合特征向量;
8.將所述融合特征向量輸入所述對象解碼模塊,得到對象表征向量和對象絕對位置向量,并計算所述對象表征向量的置信度;
9.將所述對象表征向量和所述對象絕對位置輸入所述相對位置解碼模塊,得到相對位置對象表征,并根據所述置信度優化所述相對位置對象表征得到優化對象表征;
10.將所述相對位置對象表征和所述優化對象表征輸入所述輸出模塊進行融合,得到對象完整特征;
11.將所述對象完整特征與預設參考數據庫中的參考圖片的參考對象特征進行匹配,獲得目標參考圖片,基于所述目標參考圖片的地理位置確定待識別圖片的地點。
12.進一步的,所述通過所述特征提取模塊獲取所述待識別圖片的圖像特征向量和位置編碼向量的步驟包括:
13.通過所述特征提取模塊提取所述待識別圖片每個子區域的子區域特征,根據各所
述子區域特征得到所述圖像特征向量;
14.根據各所述子區域之間的位置關系,對每個所述子區域特征的位置進行編碼,得到位置編碼向量。
15.進一步的,所述對象解碼模塊包括對象嵌入層、對象注意力層和解耦線性層,所述將所述融合特征向量輸入所述對象解碼模塊,得到對象表征向量和對象絕對位置向量的步驟包括:
16.將訓練得到的對象編碼輸入所述對象嵌入層,生成對象查詢向量;
17.將所述融合特征向量和所述對象查詢向量輸入所述對象注意力層,得到對象全局特征;
18.通過所述解耦線性層對所述對象全局特征進行解耦計算,得到對象表征向量和對象絕對位置向量。
19.進一步的,所述相對位置解碼模塊包括位置嵌入層和位置注意力層,所述將所述對象表征向量和所述對象絕對位置輸入所述相對位置解碼模塊,計算得到相對位置對象表征的步驟包括:
20.根據所述對象絕對位置向量計算得到相對位置矩陣;
21.將訓練好的位置編碼輸入所述位置嵌入層,得到位置查詢向量;
22.將所述位置查詢向量、所述對象表征向量和所述相對位置矩陣輸入所述位置注意力層進行注意力計算,得到相對位置對象表征。
23.進一步的,所述根據所述置信度優化所述相對位置對象表征得到優化對象表征的步驟包括:
24.根據所述位置查詢向量和所述對象絕對位置向量得到所述對象表征向量的特征權重;
25.使用所述置信度對所述特征權重進行調整;
26.基于調整后的所述特征權重對所述對象表征向量進行注意力計算,得到優化對象表征。
27.進一步的,在所述將所述待識別圖片輸入訓練好的目標檢測模型中的步驟之前還包括:
28.獲取圖像數據集,基于所述圖像數據集得到圖像訓練集和圖像驗證集,所述圖像數據集包括每個圖像對應的圖像標簽;
29.將所述圖像訓練集輸入預構建的初始目標檢測模型中,輸出預測識別結果;
30.基于所述預測識別結果對所述初始目標檢測模型進行迭代更新,直至模型收斂,得到待驗證模型;
31.將所述圖像驗證集輸入所述待驗證模型中進行驗證,得到驗證結果,在所述驗證結果大于等于預設閾值時,確定所述待驗證模型為所述目標檢測模型。
32.進一步的,所述基于所述預測識別結果對所述初始目標檢測模型進行迭代更新,直至模型收斂的步驟包括:
33.基于所述預測識別結果計算損失函數;
34.基于所述損失函數調整所述初始目標檢測模型的模型參數,繼續進行迭代訓練,直至模型收斂。
35.為了解決上述技術問題,本技術實施例還提供一種基于圖片對象表征的地點識別裝置,采用了如下所述的技術方案:
36.獲取模塊,用于獲取待識別圖片,將所述待識別圖片輸入訓練好的目標檢測模型中,其中,所述目標檢測模型包括特征提取模塊、對象解碼模塊、相對位置解碼模塊和輸出模塊;
37.特征提取模塊,用于通過所述特征提取模塊獲取所述待識別圖片的圖像特征向量和位置編碼向量,并將所述圖像特征向量和所述位置編碼向量進行融合,得到融合特征向量;
38.對象解碼模塊,用于將所述融合特征向量輸入所述對象解碼模塊,得到對象表征向量和對象絕對位置向量,并計算所述對象表征向量的置信度;
39.相對位置解碼模塊,用于將所述對象表征向量和所述對象絕對位置輸入所述相對位置解碼模塊,得到相對位置對象表征,并根據所述置信度優化所述相對位置對象表征得到優化對象表征;
40.輸出模塊,用于將所述相對位置對象表征和所述優化對象表征輸入所述輸出模塊進行融合,得到對象完整特征;
41.匹配模塊,用于將所述對象完整特征與預設參考數據庫中的參考圖片的參考對象特征進行匹配,獲得目標參考圖片,基于所述目標參考圖片的地理位置確定待識別圖片的地點。
42.為了解決上述技術問題,本技術實施例還提供一種計算機設備,采用了如下所述的技術方案:
43.該計算機設備包括存儲器和處理器,所述存儲器中存儲有計算機可讀指令,所述處理器執行所述計算機可讀指令時實現如上所述的基于圖片對象表征的地點識別方法的步驟。
44.為了解決上述技術問題,本技術實施例還提供一種計算機可讀存儲介質,采用了如下所述的技術方案:
45.所述計算機可讀存儲介質上存儲有計算機可讀指令,所述計算機可讀指令被處理器執行時實現如上所述的基于圖片對象表征的地點識別方法的步驟。
46.與現有技術相比,本技術實施例主要有以下有益效果:
47.本技術通過獲取待識別圖片,將待識別圖片輸入訓練好的目標檢測模型中,其中,目標檢測模型包括特征提取模塊、對象解碼模塊、相對位置解碼模塊和輸出模塊;通過特征提取模塊獲取待識別圖片的圖像特征向量和位置編碼向量,并將圖像特征向量和位置編碼向量進行融合,得到融合特征向量;將融合特征向量輸入對象解碼模塊,得到對象表征向量和對象絕對位置向量,并計算對象表征向量的置信度;將對象表征向量和對象絕對位置輸入相對位置解碼模塊,得到相對位置對象表征,并根據置信度優化相對位置對象表征得到優化對象表征;將相對位置對象表征和優化對象表征輸入輸出模塊進行融合,得到對象完整特征;將對象完整特征與預設參考數據庫中的參考圖片的參考對象特征進行匹配,獲得目標參考圖片,基于目標參考圖片的地理位置確定待識別圖片的地點;本技術通過將圖像特征向量和位置編碼向量進行融合得到的融合特征向量進行解碼解耦,得到對象表征向量和對象絕對位置向量,再根據對象表征向量和對象絕對位置向量得到相對位置對象表征,
并使用置信度優化相對位置對象表征得到優化對象表征,融合優化對象表征和相對位置對象表征得到對象完整特征,可以獲取到圖片中對象的完整特征信息,使得特征表達更加豐富,也更加準確,進一步提高地點識別的精度,魯棒性更強。
附圖說明
48.為了更清楚地說明本技術中的方案,下面將對本技術實施例描述中所需要使用的附圖作一個簡單介紹,顯而易見地,下面描述中的附圖是本技術的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
49.圖1是本技術可以應用于其中的示例性系統架構圖;
50.圖2是根據本技術的基于圖片對象表征的地點識別方法的一個實施例的流程圖;
51.圖3是根據本技術的基于圖片對象表征的地點識別裝置的一個實施例的結構示意圖;
52.圖4是根據本技術的計算機設備的一個實施例的結構示意圖。
具體實施方式
53.除非另有定義,本文所使用的所有的技術和科學術語與屬于本技術的技術領域的技術人員通常理解的含義相同;本文中在申請的說明書中所使用的術語只是為了描述具體的實施例的目的,不是旨在于限制本技術;本技術的說明書和權利要求書及上述附圖說明中的術語“包括”和“具有”以及它們的任何變形,意圖在于覆蓋不排他的包含。本技術的說明書和權利要求書或上述附圖中的術語“第一”、“第二”等是用于區別不同對象,而不是用于描述特定順序。
54.在本文中提及“實施例”意味著,結合實施例描述的特定特征、結構或特性可以包含在本技術的至少一個實施例中。在說明書中的各個位置出現該短語并不一定均是指相同的實施例,也不是與其它實施例互斥的獨立的或備選的實施例。本領域技術人員顯式地和隱式地理解的是,本文所描述的實施例可以與其它實施例相結合。
55.為了使本技術領域的人員更好地理解本技術方案,下面將結合附圖,對本技術實施例中的技術方案進行清楚、完整地描述。
56.本技術提供了一種基于圖片對象表征的地點識別方法,涉及人工智能,可以應用于如圖1所示的系統架構100中,系統架構100可以包括終端設備101、102、103,網絡104和服務器105。網絡104用以在終端設備101、102、103和服務器105之間提供通信鏈路的介質。網絡104可以包括各種連接類型,例如有線、無線通信鏈路或者光纖電纜等等。
57.用戶可以使用終端設備101、102、103通過網絡104與服務器105交互,以接收或發送消息等。終端設備101、102、103上可以安裝有各種通訊客戶端應用,例如網頁瀏覽器應用、購物類應用、搜索類應用、即時通信工具、郵箱客戶端、社交平臺軟件等。
58.終端設備101、102、103可以是具有顯示屏并且支持網頁瀏覽的各種電子設備,包括但不限于智能手機、平板電腦、電子書閱讀器、mp3播放器(moving picture experts group audio layer iii,動態影像專家壓縮標準音頻層面3)、mp4(moving picture experts group audio layer iv,動態影像專家壓縮標準音頻層面4)播放器、膝上型便攜計算機和臺式計算機等等。
59.服務器105可以是提供各種服務的服務器,例如對終端設備101、102、103上顯示的頁面提供支持的后臺服務器。
60.需要說明的是,本技術實施例所提供的基于圖片對象表征的地點識別方法一般由服務器/終端設備執行,相應地,基于圖片對象表征的地點識別裝置一般設置于服務器/終端設備中。
61.應該理解,圖1中的終端設備、網絡和服務器的數目僅僅是示意性的。根據實現需要,可以具有任意數目的終端設備、網絡和服務器。
62.繼續參考圖2,示出了根據本技術的基于圖片對象表征的地點識別方法的一個實施例的流程圖,包括以下步驟:
63.步驟s201,獲取待識別圖片,將待識別圖片輸入訓練好的目標檢測模型中,其中,目標檢測模型包括特征提取模塊、對象解碼模塊、相對位置解碼模塊和輸出模塊。
64.在本實施例中,將獲取到的待識別圖片輸入訓練好的目標檢測模型中,經過目標檢測模型中的特征提取模塊、對象解碼模塊、相對位置解碼模塊和輸出模塊,依次進行處理,可以輸出地點識別結果。
65.步驟s202,通過特征提取模塊獲取待識別圖片的圖像特征向量和位置編碼向量,并將圖像特征向量和位置編碼向量進行融合,得到融合特征向量。
66.在本實施例中,通過特征提取模塊提取待識別圖片的圖像特征,得到圖像特征向量,并對圖像特征進行位置編碼,得到待識別圖片對應的位置編碼向量。其中,特征提取模塊可以使用骨干網絡提取法、卷積神經網絡cnn提取法或者基于transformer的深度學習網絡提取法進行特征提取,在此并不做限制。
67.將圖像特征向量和位置編碼向量進行融合,得到融合特征向量vfp,包括:將圖像特征向量進行展平,采用位置編碼向量進行特征補充,得到融合特征向量,例如,可以將位置編碼向量嵌入到圖像特征向量中,將圖像特征向量與位置編碼向量進行相加,或者將圖像特征向量與位置編碼向量進行拼接,得到融合特征向量。
68.在本實施例中,上述通過特征提取模塊獲取待識別圖片的圖像特征向量和位置編碼向量的步驟包括:
69.通過特征提取模塊提取待識別圖片每個子區域的子區域特征,根據各子區域特征得到圖像特征向量;
70.根據各子區域之間的位置關系,對每個子區域特征的位置進行編碼,得到位置編碼向量。
71.其中,可以采用骨干網絡提取法提取待識別圖片的每個子區域的圖像特征,骨干網絡提取法主要是通過使用類似殘差網絡resnet、vgg等骨干特征提取網絡直接生成特定尺寸大小的特征圖。
72.對每個子區域的圖像特征進行提取,得到每個子區域對應的子區域特征vf,將各個子區域特征進行拼接得到待識別圖片的圖像特征向量,該圖像特征向量包含有待識別圖片豐富的語義信息和準確的位置信息。
73.根據各個子區域之間的位置關系對相應的子區域特征進行位置編碼,得到位置編碼向量。其中,位置編碼方式為固定位置編碼,位置編碼向量維度和子區域特征數量相同,可以將位置編碼向量設置為可學習參數,在目標檢測模型訓練過程中,通過學習獲取不同
子區域特征之間的位置關系。
74.本實施例通過對待識別圖片每個子區域進行特征提取,并根據子區域之間的位置關系進行位置編碼,使融合圖像特征向量和位置編碼向量得到的融合特征向量既含有圖像信息又含有位置信息,圖像信息更為完整。
75.步驟s203,將融合特征向量輸入對象解碼模塊,得到對象表征向量和對象絕對位置向量,并計算對象表征向量的置信度。
76.在本實施例中,目標檢測模型進行訓練的過程中,為了控制整個模型處理過程的計算量,加快收斂速度,預先設置模型提取對象的數量為第一預設數量on,則相應的預設對象解碼個數的超參數為on。
77.將融合特征向量輸入對象解碼模塊解碼為對象特征向量,對象的描述包括兩部分,一個是對對象本身進行描述,一個是對對象位置進行描述,則對象特征向量也包括兩部分,一個是通過對對象本身進行描述的對象表征向量,另一個是通過對對象位置進行描述的對象絕對位置向量。其中,對象包括但不限于標志性建筑物、物體、植物等。
78.在本實施例中,對象解碼模塊包括對象嵌入層、對象注意力層和解耦線性層,則將融合特征向量輸入對象解碼模塊進行解碼處理,包括:
79.將訓練得到的對象編碼輸入對象嵌入層,生成對象查詢向量;
80.將融合特征向量和對象查詢向量輸入對象注意力層進行注意力計算,得到對象全局特征;
81.通過解耦線性層對對象全局特征進行解耦計算,得到對象表征向量和對象絕對位置向量。
82.在本實施例中,對象編碼ol是訓練完成得到的,數量為on個,將on個對象編碼ol輸入對象嵌入層,生成on個對象查詢向量q1(query)向量,并將融合特征向量vfp作為v1(value)向量和k1(key)向量,與對象查詢向量組成qkv矩陣向量輸入對象注意力層進行注意力計算,預測出對象全局特征of,對象全局特征of的數量也為on個。其中,對象全局特征of可以實現將整個圖像信息貫穿上下文。
83.注意力計算公式如下:
[0084][0085]
將on個對象全局特征of輸入解耦線性層進行解耦計算,得到對象表征向量ovf和對象絕對位置向量opf,具體的,解耦線性層包括對象表征線性層和位置表征線性層,將對象全局特征of分別輸入對象表征線性層和位置表征線性層,分別預測出on個對象表征向量ovf和on個對象絕對位置向量opf。
[0086]
應當理解的是,在模型訓練過程中,預設對象解碼個數的超參數為on,對象編碼ol通過隨機初始化得到,隨著模型的訓練,會形成具有抽象意義的權重特征,在本實施例中,模型訓練完成后,得到訓練完成的對象編碼ol,作為對象解碼模塊對象注意力層注意力計算的權重。
[0087]
計算每個對象表征向量ovf的置信度oc,置信度高表示對象存在且位置比較準確,置信度低表示可能沒有對象或者即便有對象也存在較大的位置偏差。
[0088]
置信度oc表示預測邊框內有無對象的概率,并不預測對象屬于哪個類別,置信度
oc的計算公式如下:
[0089][0090]
其中,pr(object)表示預測邊框內存在對象的概率,有對象存在則為1,無對象存在,則為0;表示預測邊框與對象真實邊框的iou(intersection over union,交并比),體現了預測邊框與真實邊框的接近程度。
[0091]
在本實施例中,將融合特征向量進行注意力計算之后進行解耦,將圖片的圖像特征和位置特征分開處理,可以提高特征處理效率,獲取更為精確的特征描述,進而提高后續的識別準確度。
[0092]
步驟s204,將對象表征向量和對象絕對位置輸入相對位置解碼模塊,得到相對位置對象表征,并根據置信度優化相對位置對象表征得到優化對象表征。
[0093]
在本實施例中,通過位置關系構建對象之間的關系。對象絕對位置向量opf是形狀為on*c的特征矩陣,通過公式求得相對位置矩陣opfr,oprf是形狀為on*on*c特征矩陣,公式如下:
[0094]
opfr
i,j
=f(opfi,opfj)
[0095]
其中,opfi表示第i個對象絕對位置向量opf,opfj表示第j個對象絕對位置向量opf,opfr
i,j
為第i個對象絕對位置向量opf的相對位置矩陣;f(x)的形式可以根據實際情況選擇,例如,做差、求和或者直接拼接等。
[0096]
通過相對位置解碼模塊根據相對位置矩陣構建對象之間的關系,對于對象i,使用相對位置解碼模塊解碼以獲得相對位置對象表征。
[0097]
在本實施例中,相對位置解碼模塊包括位置嵌入層和位置注意力層,將訓練好的位置編碼輸入位置嵌入層,得到位置查詢向量q2,將位置查詢向量q2、對象表征向量ovf和相對位置矩陣opfr輸入位置注意力層進行注意力計算,得到相對位置對象表征。
[0098]
其中,在目標檢測模型訓練過程中,預設位置解碼個數超參數為pn,超參數pn與超參數on相適應。通過pn個先驗位置編碼對相對位置解碼模塊進行訓練,得到訓練完成后的位置編碼pl,訓練完成后的位置編碼pl可以作為位置注意力層注意力計算的權重特征。
[0099]
將訓練好的位置編碼pl輸入位置嵌入層進行嵌入操作,得到pn個位置查詢向量q2,使用相對位置矩陣opfr
i,j
作為k向量k2,對象表征向量ovfi作為v向量v2,經過位置注意力層進行注意力計算,得到對象i的相對位置對象表征orvi,數量為pn個。
[0100]
在步驟s203中,對提取到的每個對象的對象表征向量ovf進行了置信度計算,使用置信度oc對相對位置對象表征orvi的特征權重進行調整。應當理解,特征權重使用置信度oc調整后的特征權重
[0101]
根據調整后的權重對對象i對象表征向量ovfi進行注意力計算,得到優化對象特征ovi,計算公式如下:
[0102][0103]
本實施例中,通過置信度oc調整對象表征向量,得到優化對象特征ovi,可以使得優化對象特征更為可靠,特征描述也更加準確。
[0104]
步驟s205,將相對位置對象表征和優化對象表征輸入輸出模塊進行融合,得到對象完整特征。
[0105]
在本實施例中,將相對位置對象表征orvi和優化對象特征ovi進行融合,得到增強后的對象完整特征。其中,融合操作可以是將相對位置對象表征orvi和優化對象特征ovi進行相加,或者將相對位置對象表征orvi和優化對象特征ovi進行拼接。
[0106]
步驟s206,將對象完整特征與預設參考數據庫中的參考圖片的參考對象特征進行匹配,獲得目標參考圖片,基于目標參考圖片的地理位置確定待識別圖片的地點。
[0107]
地點識別是基于獲取到的待識別圖片,在預先構建的參考數據庫中進行查,匹配到最相似的參考圖片作為目標參考圖片,目標參考圖片對應的地理位置即為待識別圖片的地點。
[0108]
目標檢測模型可以訪問參考數據庫,參考數據庫包括多個參考圖片的參考對象特征,每個參考圖片的參考對象特征對應一個或多個地理位置,其中,參考對象特征可以預先進行獲取,存儲在參考數據庫中。目標檢測模型輸出對象完整特征后訪問參考數據庫,比較對象完整特征和參考對象特征。
[0109]
在本實施例中,選擇置信度oc大于等于預設閾值t的對象完整特征進行參考數據庫匹配,具體的,確定置信度oc大于等于預設閾值t的對象完整特征包括:確定置信度oc大于等于預設閾值t的對象表征向量ovfi,作為目標對象表征向量;根據目標對象表征向量確定目標優化對象表征,進而確定目標對象完整特征;將目標對象完整特征與參考對象特征進行比較,得到比較結果,并基于比較結果確定待識別圖片的地點。
[0110]
其中,將目標對象完整特征與參考對象特征進行比較,得到比較結果,并基于比較結果確定待識別圖片的地點,包括:計算目標對象完整特征與參考對象特征之間的相似度,將相似度按照從大到小進行排序,相似度最大的參考對象特征對應的地理位置即為待識別圖片的地點。
[0111]
需要強調的是,為進一步保證參考圖片的私密和安全性,上述參考圖片還可以存儲于一區塊鏈的節點中。
[0112]
本技術所指區塊鏈是分布式數據存儲、點對點傳輸、共識機制、加密算法等計算機技術的新型應用模式。區塊鏈(blockchain),本質上是一個去中心化的數據庫,是一串使用密碼學方法相關聯產生的數據塊,每一個數據塊中包含了一批次網絡交易的信息,用于驗證其信息的有效性(防偽)和生成下一個區塊。區塊鏈可以包括區塊鏈底層平臺、平臺產品服務層以及應用服務層等。
[0113]
本技術通過將圖像特征向量和位置編碼向量得到的融合特征向量,解碼融合特征向量得到對象表征向量和對象絕對位置向量,再對對象表征向量和對象絕對位置向量進行解碼,得到相對位置對象表征,融合優化后的相對位置對象表征得到對象完整特征,可以獲取待識別圖片中對象的完整特征信息,特征表達更加豐富,也更加準確,進一步提高地點識別的精度,魯棒性更強。
[0114]
在本實施例的一些可選的實現方式中,在上述將待識別圖片輸入訓練好的目標檢測模型中的步驟之前還包括:
[0115]
獲取圖像數據集,基于圖像數據集得到圖像訓練集和圖像驗證集,圖像數據集包括每個圖像對應的圖像標簽;
[0116]
將圖像訓練集輸入預構建的初始目標檢測模型中,輸出預測識別結果;
[0117]
基于預測識別結果對初始目標檢測模型進行迭代更新,直至模型收斂,得到待驗證模型;
[0118]
將圖像驗證集輸入待驗證模型中進行驗證,得到驗證結果,在驗證結果大于等于預設閾值時,確定待驗證模型為目標檢測模型。
[0119]
圖像數據集包括多張圖像和每張圖像對應的圖像標簽,其中,圖像標簽包括圖像中對象的位置和對應的地理位置。
[0120]
獲取到圖像數據集后,對圖像數據集進行數據預處理,數據預處理包括數據清洗和圖像增強,數據清洗為剔除無效圖像(無效圖像可以為受損的圖像,也可以為圖像標簽錯標注或漏標注的圖像),并將圖像統一為相同的尺寸,還可以對剔除無效圖像后剩余的圖像進行圖像增強,包括隨機翻轉、折疊和形變操作,或者加入噪聲操作等,以此來擴充數據集,提高模型的泛化性以及精度。
[0121]
數據預處理后按照預設比例,例如圖像訓練集:圖像驗證集=8:2,將圖像數據集劃分為圖像訓練集和圖像驗證集。將圖像訓練集輸入預構建的初始目標檢測模型中進行訓練,輸出預測識別結果,圖像訓練集在模型中進行處理的過程見步驟s202至步驟s205,在此不再贅述。
[0122]
基于預測識別結果計算損失函數,損失函數包括位置損失和地點識別損失,位置損失和地點識別損失加權求和得到損失函數。其中,位置損失為根據預測邊框和真實邊框的交集面積和并集面積的比值得到的損失,即iou損失;地點識別損失為真實邊框集合和預測邊框集合的二分匹配排列的損失,如hungarian損失,二分匹配排列使用hungarian匈牙利算法(hungarian algorithm)實現。
[0123]
根據損失函數調整模型參數,繼續進行迭代訓練,模型訓練到一定程度,此時,模型的性能達到最優狀態,損失函數無法繼續下降,即收斂。判斷收斂的方式即為只需要計算前后兩輪迭代中的損失函數,若損失函數仍在變化,則可以繼續選擇圖像訓練集輸入至目標檢測模型中繼續進行迭代訓練;若損失函數沒有顯著變化,則可認為模型收斂,此時確定目標檢測模型訓練完成,則停止訓練,并輸出最終的目標檢測模型。
[0124]
在本實施例中,基于損失函數調整模型參數,可以提升模型訓練速度,同時保證訓練得到的模型的識別準確度。
[0125]
在模型收斂之后,得到待驗證模型,對待驗證模型進行驗證,將圖像驗證集輸入待驗證模型中,輸出地點識別結果;根據地點識別結果計算識別準確率;若識別準確率大于等于預設閾值,輸出待驗證模型作為目標檢測模型;若識別準確率小于預設閾值,更新訓練數據集,重新訓練目標檢測模型。
[0126]
本技術實施例可以基于人工智能技術對相關的數據進行獲取和處理。其中,人工智能(artificial intelligence,ai)是利用數字計算機或者數字計算機控制的機器模擬、延伸和擴展人的智能,感知環境、獲取知識并使用知識獲得最佳結果的理論、方法、技術及應用系統。
[0127]
人工智能基礎技術一般包括如傳感器、專用人工智能芯片、云計算、分布式存儲、大數據處理技術、操作/交互系統、機電一體化等技術。人工智能軟件技術主要包括計算機視覺技術、機器人技術、生物識別技術、語音處理技術、自然語言處理技術以及機器學習/深
度學習等幾大方向。
[0128]
本技術可用于眾多通用或專用的計算機系統環境或配置中。例如:個人計算機、服務器計算機、手持設備或便攜式設備、平板型設備、多處理器系統、基于微處理器的系統、置頂盒、可編程的消費電子設備、網絡pc、小型計算機、大型計算機、包括以上任何系統或設備的分布式計算環境等等。本技術可以在由計算機執行的計算機可執行指令的一般上下文中描述,例如程序模塊。一般地,程序模塊包括執行特定任務或實現特定抽象數據類型的例程、程序、對象、組件、數據結構等等。也可以在分布式計算環境中實踐本技術,在這些分布式計算環境中,由通過通信網絡而被連接的遠程處理設備來執行任務。在分布式計算環境中,程序模塊可以位于包括存儲設備在內的本地和遠程計算機存儲介質中。
[0129]
本領域普通技術人員可以理解實現上述實施例方法中的全部或部分流程,是可以通過計算機可讀指令來指令相關的硬件來完成,該計算機可讀指令可存儲于一計算機可讀取存儲介質中,該程序在執行時,可包括如上述各方法的實施例的流程。其中,前述的存儲介質可為磁碟、光盤、只讀存儲記憶體(read-only memory,rom)等非易失性存儲介質,或隨機存儲記憶體(random access memory,ram)等。
[0130]
應該理解的是,雖然附圖的流程圖中的各個步驟按照箭頭的指示依次顯示,但是這些步驟并不是必然按照箭頭指示的順序依次執行。除非本文中有明確的說明,這些步驟的執行并沒有嚴格的順序限制,其可以以其他的順序執行。而且,附圖的流程圖中的至少一部分步驟可以包括多個子步驟或者多個階段,這些子步驟或者階段并不必然是在同一時刻執行完成,而是可以在不同的時刻執行,其執行順序也不必然是依次進行,而是可以與其他步驟或者其他步驟的子步驟或者階段的至少一部分輪流或者交替地執行。
[0131]
進一步參考圖3,作為對上述圖2所示方法的實現,本技術提供了一種基于圖片對象表征的地點識別裝置的一個實施例,該裝置實施例與圖2所示的方法實施例相對應,該裝置具體可以應用于各種電子設備中。
[0132]
如圖3所示,本實施例所述的基于圖片對象表征的地點識別裝置300包括:獲取模塊301、特征提取模塊302、對象解碼模塊303、相對位置解碼模塊304、輸出模塊305以及匹配模塊306。其中:
[0133]
獲取模塊301用于獲取待識別圖片,將所述待識別圖片輸入訓練好的目標檢測模型中,其中,所述目標檢測模型包括特征提取模塊、對象解碼模塊、相對位置解碼模塊和輸出模塊;
[0134]
特征提取模塊302用于通過所述特征提取模塊獲取所述待識別圖片的圖像特征向量和位置編碼向量,并將所述圖像特征向量和所述位置編碼向量進行融合,得到融合特征向量;
[0135]
對象解碼模塊303用于將所述融合特征向量輸入所述對象解碼模塊,得到對象表征向量和對象絕對位置向量,并計算所述對象表征向量的置信度;
[0136]
相對位置解碼模塊304用于將所述對象表征向量和所述對象絕對位置輸入所述相對位置解碼模塊,得到相對位置對象表征,并根據所述置信度優化所述相對位置對象表征得到優化對象表征;
[0137]
輸出模塊305用于將所述相對位置對象表征和所述優化對象表征輸入所述輸出模塊進行融合,得到對象完整特征;
[0138]
匹配模塊306用于將所述對象完整特征與預設參考數據庫中的參考圖片的參考對象特征進行匹配,獲得目標參考圖片,基于目標參考圖片的地理位置確定待識別圖片的地點。
[0139]
需要強調的是,為進一步保證參考圖片的私密和安全性,上述參考圖片還可以存儲于一區塊鏈的節點中。
[0140]
基于上述基于圖片對象表征的地點識別裝置,通過將圖像特征向量和位置編碼向量進行融合得到的融合特征向量進行解碼解耦,得到對象表征向量和對象絕對位置向量,再根據對象表征向量和對象絕對位置向量得到相對位置對象表征,并使用置信度優化相對位置對象表征得到優化對象表征,融合優化對象表征和相對位置對象表征得到對象完整特征,可以獲取到圖片中對象的完整特征信息,使得特征表達更加豐富,也更加準確,進一步提高地點識別的精度,魯棒性更強。
[0141]
在本實施例中,特征提取模塊302進一步用于:
[0142]
通過所述特征提取模塊提取所述待識別圖片每個子區域的子區域特征,根據各所述子區域特征得到所述圖像特征向量;
[0143]
根據各所述子區域之間的位置關系,對每個所述子區域特征的位置進行編碼,得到位置編碼向量。
[0144]
通過對待識別圖片每個子區域進行特征提取,并根據子區域之間的位置關系進行位置編碼,使融合圖像特征向量和位置編碼向量得到的融合特征向量既含有圖像信息又含有位置信息,圖像信息更為完整。
[0145]
在本實施例中,對象解碼模塊303包括對象嵌入子模塊、對象注意力計算子模塊和解耦子模塊,其中:
[0146]
對象嵌入子模塊用于將訓練得到的對象編碼輸入所述對象嵌入層,生成對象查詢向量;
[0147]
對象注意力計算子模塊用于將所述融合特征向量和所述對象查詢向量輸入所述對象注意力層進行注意力計算,得到對象全局特征;
[0148]
解耦子模塊用于通過所述解耦線性層對所述對象全局特征進行解耦計算,得到對象表征向量和對象絕對位置向量。
[0149]
通過將融合特征向量進行注意力計算之后進行解耦,將圖片的圖像特征和位置特征分開處理,可以提高特征處理效率,獲取更為精確的特征描述,進而提高后續的識別準確度。
[0150]
在本實施例中,相對位置解碼模塊304包括計算子模塊、位置嵌入子模塊和位置注意力計算子模塊,其中:
[0151]
計算子模塊用于根據所述對象絕對位置向量計算得到相對位置矩陣;
[0152]
位置嵌入子模塊用于將訓練好的位置編碼輸入所述位置嵌入層,得到位置查詢向量;
[0153]
位置注意力計算子模塊用于將所述位置查詢向量、所述對象表征向量和所述相對位置矩陣輸入所述位置注意力層進行注意力計算,得到相對位置對象表征。
[0154]
在本實施例的一些可選的實現方式中,相對位置解碼模塊304還包括優化子模塊,用于:
[0155]
根據所述位置查詢向量和所述對象絕對位置向量得到所述對象表征向量的特征權重;
[0156]
使用所述置信度對所述特征權重進行調整;
[0157]
基于調整后的所述特征權重對所述對象表征向量進行注意力計算,得到優化對象表征。
[0158]
通過置信度oc調整對象表征向量,得到優化對象特征ovi,可以使得優化對象特征更為可靠,特征描述也更加準確。
[0159]
在一些可選的實現方式中,上述基于圖片對象表征的地點識別裝置還包括訓練模塊、更新模塊以及驗證模塊,其中:
[0160]
獲取模塊還用于獲取圖像數據集,基于所述圖像數據集得到圖像訓練集和圖像驗證集,所述圖像數據集包括每個圖像對應的圖像標簽;
[0161]
訓練模塊用于將所述圖像訓練集輸入預構建的初始目標檢測模型中,輸出預測識別結果;
[0162]
更新模塊用于基于所述預測識別結果對所述初始目標檢測模型進行迭代更新,直至模型收斂,得到待驗證模型;
[0163]
驗證模塊用于將所述圖像驗證集輸入所述待驗證模型中進行驗證,得到驗證結果,在所述驗證結果大于等于預設閾值時,確定所述待驗證模型為所述目標檢測模型。
[0164]
本實施例通過訓練目標檢測模型,可以簡化目標檢測流程,提高目標檢測效率。
[0165]
在本實施例中,更新模塊包括損失計算子模塊和調整子模塊,其中:
[0166]
損失計算子模塊用于基于所述預測識別結果計算損失函數;
[0167]
調整子模塊用于基于所述損失函數調整所述初始目標檢測模型的模型參數,繼續進行迭代訓練,直至模型收斂。
[0168]
基于損失函數調整模型參數,可以提升模型訓練速度,同時保證訓練得到的模型的識別準確度。
[0169]
為解決上述技術問題,本技術實施例還提供計算機設備。具體請參閱圖4,圖4為本實施例計算機設備基本結構框圖。
[0170]
所述計算機設備4包括通過系統總線相互通信連接存儲器41、處理器42、網絡接口43。需要指出的是,圖中僅示出了具有組件41-43的計算機設備4,但是應理解的是,并不要求實施所有示出的組件,可以替代的實施更多或者更少的組件。其中,本技術領域技術人員可以理解,這里的計算機設備是一種能夠按照事先設定或存儲的指令,自動進行數值計算和/或信息處理的設備,其硬件包括但不限于微處理器、專用集成電路(application specific integrated circuit,asic)、可編程門陣列(field-programmable gate array,fpga)、數字處理器(digital signal processor,dsp)、嵌入式設備等。
[0171]
所述計算機設備可以是桌上型計算機、筆記本、掌上電腦及云端服務器等計算設備。所述計算機設備可以與用戶通過鍵盤、鼠標、遙控器、觸摸板或聲控設備等方式進行人機交互。
[0172]
所述存儲器41至少包括一種類型的可讀存儲介質,所述可讀存儲介質包括閃存、硬盤、多媒體卡、卡型存儲器(例如,sd或dx存儲器等)、隨機訪問存儲器(ram)、靜態隨機訪問存儲器(sram)、只讀存儲器(rom)、電可擦除可編程只讀存儲器(eeprom)、可編程只讀存
儲器(prom)、磁性存儲器、磁盤、光盤等。在一些實施例中,所述存儲器41可以是所述計算機設備4的內部存儲單元,例如該計算機設備4的硬盤或內存。在另一些實施例中,所述存儲器41也可以是所述計算機設備4的外部存儲設備,例如該計算機設備4上配備的插接式硬盤,智能存儲卡(smart media card,smc),安全數字(secure digital,sd)卡,閃存卡(flash card)等。當然,所述存儲器41還可以既包括所述計算機設備4的內部存儲單元也包括其外部存儲設備。本實施例中,所述存儲器41通常用于存儲安裝于所述計算機設備4的操作系統和各類應用軟件,例如基于圖片對象表征的地點識別方法的計算機可讀指令等。此外,所述存儲器41還可以用于暫時地存儲已經輸出或者將要輸出的各類數據。
[0173]
所述處理器42在一些實施例中可以是中央處理器(central processing unit,cpu)、控制器、微控制器、微處理器、或其他數據處理芯片。該處理器42通常用于控制所述計算機設備4的總體操作。本實施例中,所述處理器42用于運行所述存儲器41中存儲的計算機可讀指令或者處理數據,例如運行所述基于圖片對象表征的地點識別方法的計算機可讀指令。
[0174]
所述網絡接口43可包括無線網絡接口或有線網絡接口,該網絡接口43通常用于在所述計算機設備4與其他電子設備之間建立通信連接。
[0175]
本實施例通過處理器執行存儲在存儲器的計算機可讀指令時實現如上述實施例基于圖片對象表征的地點識別方法的步驟,通過將圖像特征向量和位置編碼向量進行融合得到的融合特征向量進行解碼解耦,得到對象表征向量和對象絕對位置向量,再根據對象表征向量和對象絕對位置向量得到相對位置對象表征,并使用置信度優化相對位置對象表征得到優化對象表征,融合優化對象表征和相對位置對象表征得到對象完整特征,可以獲取到圖片中對象的完整特征信息,使得特征表達更加豐富,也更加準確,進一步提高地點識別的精度,魯棒性更強。
[0176]
本技術還提供了另一種實施方式,即提供一種計算機可讀存儲介質,所述計算機可讀存儲介質存儲有計算機可讀指令,所述計算機可讀指令可被至少一個處理器執行,以使所述至少一個處理器執行如上述的基于圖片對象表征的地點識別方法的步驟,通過將圖像特征向量和位置編碼向量進行融合得到的融合特征向量進行解碼解耦,得到對象表征向量和對象絕對位置向量,再根據對象表征向量和對象絕對位置向量得到相對位置對象表征,并使用置信度優化相對位置對象表征得到優化對象表征,融合優化對象表征和相對位置對象表征得到對象完整特征,可以獲取到圖片中對象的完整特征信息,使得特征表達更加豐富,也更加準確,進一步提高地點識別的精度,魯棒性更強。
[0177]
通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到上述實施例方法可借助軟件加必需的通用硬件平臺的方式來實現,當然也可以通過硬件,但很多情況下前者是更佳的實施方式。基于這樣的理解,本技術的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟件產品的形式體現出來,該計算機軟件產品存儲在一個存儲介質(如rom/ram、磁碟、光盤)中,包括若干指令用以使得一臺終端設備(可以是手機,計算機,服務器,空調器,或者網絡設備等)執行本技術各個實施例所述的方法。
[0178]
顯然,以上所描述的實施例僅僅是本技術一部分實施例,而不是全部的實施例,附圖中給出了本技術的較佳實施例,但并不限制本技術的專利范圍。本技術可以以許多不同的形式來實現,相反地,提供這些實施例的目的是使對本技術的公開內容的理解更加透徹
全面。盡管參照前述實施例對本技術進行了詳細的說明,對于本領域的技術人員來而言,其依然可以對前述各具體實施方式所記載的技術方案進行修改,或者對其中部分技術特征進行等效替換。凡是利用本技術說明書及附圖內容所做的等效結構,直接或間接運用在其他相關的技術領域,均同理在本技術專利保護范圍之內。
