【技術(shù)領(lǐng)域】
本發(fā)明涉及計(jì)算機(jī)應(yīng)用技術(shù)領(lǐng)域,尤其涉及一種圖片識(shí)別方法及裝置、計(jì)算機(jī)設(shè)備及計(jì)算機(jī)可讀介質(zhì)。
背景技術(shù):
在很多應(yīng)用場(chǎng)景中,需要對(duì)圖片進(jìn)行分類(lèi),便于對(duì)圖片歸類(lèi)管理。在圖片較少的時(shí)候,可以人工手動(dòng)地對(duì)圖片進(jìn)行分類(lèi)。但是隨著網(wǎng)絡(luò)科技的發(fā)展,在網(wǎng)絡(luò)場(chǎng)景下,通常需要對(duì)成千上萬(wàn)的圖片進(jìn)行分類(lèi),手動(dòng)處理方式變得過(guò)于不切實(shí)際,因此,在網(wǎng)絡(luò)場(chǎng)景中,如何智能地對(duì)圖片進(jìn)行識(shí)別,以進(jìn)行分類(lèi)變得尤為重要。
現(xiàn)有技術(shù),可以采用卷積神經(jīng)網(wǎng)絡(luò)模型對(duì)圖片的類(lèi)別進(jìn)行識(shí)別,現(xiàn)有的卷積神經(jīng)網(wǎng)絡(luò)模型包括卷積操作和池化操作,其中池化操作包括平均池化、最大值池化和雙線性池化等等。平均池化操作將一組輸入特征向量做平均后輸出。最大值池化將一組特征向量取最大值之后輸出。雙線性池化將輸入的特征向量對(duì)自身做向量外積,得到原特征的雙線性表示并輸出。雙線性池化得到的特征表達(dá)性更強(qiáng),效果好于平均池化和最大值池化。
但是現(xiàn)有的卷積神經(jīng)網(wǎng)絡(luò)模型中的這三種池化操作都不會(huì)豐富圖片識(shí)別的粒度,導(dǎo)致現(xiàn)有技術(shù)中使用卷積神經(jīng)網(wǎng)絡(luò)模型對(duì)圖片識(shí)別的粒度較大,對(duì)圖片識(shí)別的準(zhǔn)確性較差。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供了一種圖片識(shí)別方法及裝置、計(jì)算機(jī)設(shè)備及計(jì)算機(jī)可讀介質(zhì),用于提高現(xiàn)有技術(shù)中的圖片識(shí)別的準(zhǔn)確性。
本發(fā)明提供一種圖片識(shí)別方法,所述方法包括:
獲取待識(shí)別的圖片;
根據(jù)所述待識(shí)別的圖片和預(yù)先訓(xùn)練的圖片識(shí)別模型,獲取待識(shí)別的圖片的預(yù)測(cè)類(lèi)別標(biāo)簽;所述預(yù)先訓(xùn)練的圖片識(shí)別模型采用卷積神經(jīng)網(wǎng)絡(luò)模型,且所述卷積神經(jīng)網(wǎng)絡(luò)模型中包括至少一層將通道維度由一維升階為多維的核池化層;
根據(jù)所述待識(shí)別的圖片的所述預(yù)測(cè)類(lèi)別標(biāo)簽,識(shí)別所述待識(shí)別的圖片的類(lèi)別。
進(jìn)一步可選地,如上所述的方法中,根據(jù)所述待識(shí)別的圖片和預(yù)先訓(xùn)練的圖片識(shí)別模型,獲取待識(shí)別的圖片的預(yù)測(cè)類(lèi)別標(biāo)簽之前,所述方法還包括:
采集數(shù)張已經(jīng)確定類(lèi)別的訓(xùn)練圖片,生成訓(xùn)練圖片數(shù)據(jù)庫(kù);
根據(jù)所述訓(xùn)練圖片數(shù)據(jù)庫(kù)中的數(shù)張所述訓(xùn)練圖片以及各所述訓(xùn)練圖片的類(lèi)別,訓(xùn)練所述圖片識(shí)別模型。
進(jìn)一步可選地,如上所述的方法中,根據(jù)所述訓(xùn)練圖片數(shù)據(jù)庫(kù)中的數(shù)張所述訓(xùn)練圖片以及各所述訓(xùn)練圖片的類(lèi)別,訓(xùn)練所述圖片識(shí)別模型,具體包括:
將數(shù)張所述訓(xùn)練圖片中的各所述訓(xùn)練圖片依次輸入至所述圖片識(shí)別模型中,得到對(duì)應(yīng)的所述訓(xùn)練圖片的預(yù)測(cè)類(lèi)別標(biāo)簽;
根據(jù)所述訓(xùn)練圖片的類(lèi)別,生成所述訓(xùn)練圖片的真實(shí)類(lèi)別標(biāo)簽;
根據(jù)所述訓(xùn)練圖片的預(yù)測(cè)類(lèi)別標(biāo)簽和所述訓(xùn)練圖片的真實(shí)類(lèi)別標(biāo)簽,生成所述訓(xùn)練圖片的損失函數(shù);
計(jì)算所述訓(xùn)練圖片的損失函數(shù)對(duì)所述圖片識(shí)別模型中各所述參數(shù)的導(dǎo)數(shù);
根據(jù)所述圖片識(shí)別模型中的各所述參數(shù)以及所述訓(xùn)練圖片的損失函數(shù)對(duì)各所述參數(shù)的導(dǎo)數(shù),更新所述圖片識(shí)別模型中的各所述參數(shù),從而確定本次訓(xùn)練后的所述圖片識(shí)別模型;
重復(fù)執(zhí)行上述步驟,直至數(shù)張所述訓(xùn)練圖片都對(duì)所述圖片識(shí)別模型進(jìn)行訓(xùn)練,確定本輪訓(xùn)練后的所述圖片識(shí)別模型。
進(jìn)一步可選地,如上所述的方法中,根據(jù)所述訓(xùn)練圖片數(shù)據(jù)庫(kù)中的數(shù)張所述訓(xùn)練圖片以及各所述訓(xùn)練圖片的類(lèi)別,訓(xùn)練所述圖片識(shí)別模型,具體還包括:
按照上述每一輪訓(xùn)練中所述訓(xùn)練圖片數(shù)據(jù)庫(kù)中的數(shù)張所述訓(xùn)練圖片對(duì)所述圖片識(shí)別模型的訓(xùn)練,使用所述訓(xùn)練圖片數(shù)據(jù)庫(kù)中的數(shù)張所述訓(xùn)練圖片重復(fù)對(duì)所述圖片識(shí)別模型訓(xùn)練n輪,得到最終的所述圖片識(shí)別模型。
進(jìn)一步可選地,如上所述的方法中,根據(jù)所述待識(shí)別的圖片的所述預(yù)測(cè)類(lèi)別標(biāo)簽識(shí)別所述待識(shí)別的圖片的類(lèi)別,具體包括:
根據(jù)所述待識(shí)別的圖片的所述預(yù)測(cè)類(lèi)別標(biāo)簽,獲取所述待識(shí)別的圖片對(duì)應(yīng)的概率最大的類(lèi)別;
將所述待識(shí)別的圖片對(duì)應(yīng)的概率最大的類(lèi)別作為所述待識(shí)別的圖片的類(lèi)別。
進(jìn)一步可選地,如上所述的方法中,根據(jù)所述待識(shí)別的圖片和預(yù)先訓(xùn)練的圖片識(shí)別模型,獲取待識(shí)別的圖片的預(yù)測(cè)類(lèi)別標(biāo)簽之前,所述方法還包括:
獲取所述卷積神經(jīng)網(wǎng)絡(luò)模型;
將所述卷積神經(jīng)網(wǎng)絡(luò)模型中的至少一層池化層中的通道維度由一維升階為多維,得到所述圖片識(shí)別模型。
本發(fā)明還提供一種圖片識(shí)別裝置,所述裝置包括:
獲取模塊,用于獲取待識(shí)別的圖片;
預(yù)測(cè)類(lèi)別標(biāo)簽獲取模塊,用于根據(jù)所述待識(shí)別的圖片和預(yù)先訓(xùn)練的圖片識(shí)別模型,獲取待識(shí)別的圖片的預(yù)測(cè)類(lèi)別標(biāo)簽;所述預(yù)先訓(xùn)練的圖片識(shí)別模型采用卷積神經(jīng)網(wǎng)絡(luò)模型,且所述卷積神經(jīng)網(wǎng)絡(luò)模型中包括至少一層將通道維度由一維升階為多維的核池化層;
識(shí)別模塊,用于根據(jù)所述待識(shí)別的圖片的所述預(yù)測(cè)類(lèi)別標(biāo)簽,識(shí)別所述待識(shí)別的圖片的類(lèi)別。
進(jìn)一步可選地,如上所述的裝置中,還包括:
采集模塊,用于采集數(shù)個(gè)已經(jīng)確定類(lèi)別的訓(xùn)練圖片,生成訓(xùn)練圖片數(shù)據(jù)庫(kù);
訓(xùn)練模塊,用于根據(jù)所述訓(xùn)練圖片數(shù)據(jù)庫(kù)中的數(shù)張所述訓(xùn)練圖片以及各所述訓(xùn)練圖片的類(lèi)別,訓(xùn)練所述圖片識(shí)別模型。
進(jìn)一步可選地,如上所述的裝置中,所述訓(xùn)練模塊,具體用于:
所述訓(xùn)練模塊,具體用于:
將數(shù)張所述訓(xùn)練圖片中的各所述訓(xùn)練圖片依次輸入至所述圖片識(shí)別模型中,得到對(duì)應(yīng)的所述訓(xùn)練圖片的預(yù)測(cè)類(lèi)別標(biāo)簽;
根據(jù)所述訓(xùn)練圖片的類(lèi)別,生成所述訓(xùn)練圖片的真實(shí)類(lèi)別標(biāo)簽;
根據(jù)所述訓(xùn)練圖片的預(yù)測(cè)類(lèi)別標(biāo)簽和所述訓(xùn)練圖片的真實(shí)類(lèi)別標(biāo)簽,生成所述訓(xùn)練圖片的損失函數(shù);
計(jì)算所述訓(xùn)練圖片的損失函數(shù)對(duì)所述圖片識(shí)別模型中各所述參數(shù)的導(dǎo)數(shù);
根據(jù)所述圖片識(shí)別模型中的各所述參數(shù)以及所述訓(xùn)練圖片的損失函數(shù)對(duì)各所述參數(shù)的導(dǎo)數(shù),更新所述圖片識(shí)別模型中的各所述參數(shù),從而確定本次訓(xùn)練后的所述圖片識(shí)別模型;
重復(fù)執(zhí)行上述步驟,直至數(shù)張所述訓(xùn)練圖片都對(duì)所述圖片識(shí)別模型進(jìn)行訓(xùn)練,確定本輪訓(xùn)練后的所述圖片識(shí)別模型。
進(jìn)一步可選地,如上所述的裝置中,所述訓(xùn)練模塊,具體還用于按照上述每一輪訓(xùn)練中所述訓(xùn)練圖片數(shù)據(jù)庫(kù)中的數(shù)張所述訓(xùn)練圖片對(duì)所述圖片識(shí)別模型的訓(xùn)練,使用所述訓(xùn)練圖片數(shù)據(jù)庫(kù)中的數(shù)張所述訓(xùn)練圖片重復(fù)對(duì)所述圖片識(shí)別模型訓(xùn)練n輪,得到最終的所述圖片識(shí)別模型。
進(jìn)一步可選地,如上所述的裝置中,所述識(shí)別模塊,具體用于:
根據(jù)所述待識(shí)別的圖片的所述預(yù)測(cè)類(lèi)別標(biāo)簽,獲取所述待識(shí)別的圖片對(duì)應(yīng)的概率最大的類(lèi)別;
將所述待識(shí)別的圖片對(duì)應(yīng)的概率最大的類(lèi)別作為所述待識(shí)別的圖片的類(lèi)別。
進(jìn)一步可選地,如上所述的裝置中,所述裝置還包括:
模型生成模塊,用于獲取所述卷積神經(jīng)網(wǎng)絡(luò)模型;將所述卷積神經(jīng)網(wǎng)絡(luò)模型中的至少一層池化層中的通道維度由一維升階為多維,得到所述圖片識(shí)別模型。
本發(fā)明還提供一種計(jì)算機(jī)設(shè)備,所述設(shè)備包括:
一個(gè)或多個(gè)處理器;
存儲(chǔ)器,用于存儲(chǔ)一個(gè)或多個(gè)程序,
當(dāng)所述一個(gè)或多個(gè)程序被所述一個(gè)或多個(gè)處理器執(zhí)行,使得所述一個(gè)或多個(gè)處理器實(shí)現(xiàn)如上所述的圖片識(shí)別方法。
本發(fā)明還提供一種計(jì)算機(jī)可讀介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,該程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如上所述的圖片識(shí)別方法。
本發(fā)明的圖片識(shí)別方法及裝置、計(jì)算機(jī)設(shè)備及計(jì)算機(jī)可讀介質(zhì),通過(guò)獲取待識(shí)別的圖片;根據(jù)待識(shí)別的圖片和預(yù)先訓(xùn)練的圖片識(shí)別模型,獲取待識(shí)別的圖片的預(yù)測(cè)類(lèi)別標(biāo)簽;其中預(yù)先訓(xùn)練的圖片識(shí)別模型采用卷積神經(jīng)網(wǎng)絡(luò)模型,且卷積神經(jīng)網(wǎng)絡(luò)模型中包括至少一層將通道維度由一維升階為多維的核池化層;根據(jù)待識(shí)別的圖片的預(yù)測(cè)類(lèi)別標(biāo)簽,獲取待識(shí)別的圖片的類(lèi)別。本發(fā)明通過(guò)采用上述帶有核池化層的圖片識(shí)別模型,對(duì)待識(shí)別圖片進(jìn)行識(shí)別時(shí),能夠?qū)崿F(xiàn)更加精細(xì)粒度的圖片類(lèi)別的識(shí)別,有效地提高圖片識(shí)別的準(zhǔn)確性和圖片識(shí)別的效率。
【附圖說(shuō)明】
圖1為本發(fā)明的圖片識(shí)別方法實(shí)施例一的流程圖。
圖2為本發(fā)明的圖片識(shí)別方法實(shí)施例二的流程圖。
圖3為本發(fā)明的圖片識(shí)別裝置實(shí)施例一的結(jié)構(gòu)圖。
圖4為本發(fā)明的圖片識(shí)別裝置實(shí)施例二的結(jié)構(gòu)圖。
圖5為本發(fā)明的計(jì)算機(jī)設(shè)備實(shí)施例的結(jié)構(gòu)圖。
圖6為本發(fā)明提供的一種計(jì)算機(jī)設(shè)備的示例圖。
【具體實(shí)施方式】
為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明進(jìn)行詳細(xì)描述。
圖1為本發(fā)明的圖片識(shí)別方法實(shí)施例一的流程圖。如圖1所示,本實(shí)施例的圖片識(shí)別方法,具體可以包括如下步驟:
100、獲取待識(shí)別的圖片;
101、根據(jù)待識(shí)別的圖片和預(yù)先訓(xùn)練的圖片識(shí)別模型,獲取待識(shí)別的圖片的預(yù)測(cè)類(lèi)別標(biāo)簽;其中預(yù)先訓(xùn)練的圖片識(shí)別模型采用卷積神經(jīng)網(wǎng)絡(luò)模型,且卷積神經(jīng)網(wǎng)絡(luò)模型中包括至少一層將通道維度由一維升階為多維的核池化層;
102、根據(jù)待識(shí)別的圖片的預(yù)測(cè)類(lèi)別標(biāo)簽,識(shí)別待識(shí)別的圖片的類(lèi)別。
本實(shí)施例的圖片識(shí)別方法的執(zhí)行主體為圖片識(shí)別裝置,該圖片識(shí)別裝置可以為一個(gè)實(shí)體的電子裝置,也可以為采用軟件集成的裝置。
本實(shí)施例的圖片識(shí)別方法是一種基于卷積神經(jīng)網(wǎng)絡(luò)模型的圖片識(shí)別方法,即本實(shí)施例的圖片識(shí)別模型具體采用卷積神經(jīng)網(wǎng)絡(luò)模型。但是本實(shí)施例的圖片識(shí)別模型并非是普通的卷積神經(jīng)網(wǎng)絡(luò)模型,該圖片識(shí)別模型所采用的卷積神經(jīng)網(wǎng)絡(luò)模型中包括至少一層通道維度由一維升階為多維的核池化層。通常情況下,卷積神經(jīng)網(wǎng)絡(luò)模型可以包括2-6層的池化層和多個(gè)卷積層,且池化層不會(huì)位于卷積神經(jīng)網(wǎng)絡(luò)模型中的第一層,因此,該卷積神經(jīng)網(wǎng)絡(luò)模型中的池化操作通常位于卷積操作之后,是用于對(duì)卷積操作輸出的卷積特征進(jìn)行池化操作。卷積特征可以采用長(zhǎng)、寬和通道的三維矩陣來(lái)表示。通常情況下的池化操作包括平均池化、最大值池化和雙線性池化。這幾種池化操作均不會(huì)改變通道的維度,因此現(xiàn)有的卷積神經(jīng)網(wǎng)絡(luò)模型的表達(dá)性能較差,無(wú)法對(duì)圖片進(jìn)行更加精細(xì)的粒度的分類(lèi)識(shí)別。本實(shí)施例中的將卷積神經(jīng)網(wǎng)絡(luò)中的至少一個(gè)池化層中的通道維度由一維升階為多維,該過(guò)程尤為核聚變的過(guò)程,因此將升階之后的池化層稱(chēng)之為核池化層。而卷積神經(jīng)網(wǎng)絡(luò)模型中的其它層可以保持不變。在圖片識(shí)別時(shí),由于核池化層將通道維度增加,會(huì)增加卷積神經(jīng)網(wǎng)絡(luò)中位于該核池化層之后的各層的工作量,因此,為了節(jié)省圖片識(shí)別模型對(duì)圖片的識(shí)別時(shí)間,提高圖片識(shí)別效率,當(dāng)圖片識(shí)別模型中僅包括一層核池化層時(shí),可以將該核池化層設(shè)置在對(duì)應(yīng)的卷積神經(jīng)網(wǎng)絡(luò)模型中的最后一層。本實(shí)施例中可以根據(jù)需求設(shè)置核池化層的層數(shù),核池化層的層數(shù)越多,生成的圖片識(shí)別模型的表達(dá)性能越好,識(shí)別的圖片的分類(lèi)粒度越精細(xì)。
本實(shí)施例中,根據(jù)待識(shí)別的圖片和預(yù)先訓(xùn)練的圖片識(shí)別模型,獲取的待識(shí)別的圖片的預(yù)測(cè)類(lèi)別標(biāo)簽是一個(gè)向量的形式,該向量的維度的數(shù)量表示的是識(shí)別的圖片能夠分類(lèi)的類(lèi)別的多少,向量的維度的數(shù)量可以在訓(xùn)練該圖片識(shí)別模型時(shí)確定的。也就是說(shuō),本實(shí)施例的圖片識(shí)別方法,對(duì)待識(shí)別的圖片進(jìn)行識(shí)別時(shí),僅能夠支持將待識(shí)別圖片識(shí)別為訓(xùn)練時(shí)能夠識(shí)別的各個(gè)圖片的分類(lèi)。而訓(xùn)練時(shí),可以采集所有能夠支持的、較為精細(xì)粒度的各個(gè)圖片類(lèi)別對(duì)應(yīng)的圖片,對(duì)該圖片識(shí)別模型進(jìn)行訓(xùn)練。例如在訓(xùn)練時(shí),設(shè)定的能夠支持的圖片類(lèi)別包括1000類(lèi),該1000類(lèi)中可以包括非常精細(xì)的圖片類(lèi)別。那么利用圖片識(shí)別模型識(shí)別待識(shí)別的圖片時(shí),該圖片識(shí)別模型輸出的預(yù)測(cè)類(lèi)別標(biāo)簽可以為1000維的向量;向量中每一個(gè)位置所代表的圖片的類(lèi)別是固定的,每一個(gè)位置的元素的數(shù)值表示該待識(shí)別圖片屬于該位置對(duì)應(yīng)的圖片的類(lèi)別的概率值。
本實(shí)施例中,圖片識(shí)別模型能夠支持分類(lèi)的圖片類(lèi)別越多,那么該圖片識(shí)別模型在識(shí)別圖片時(shí),輸出的預(yù)測(cè)類(lèi)別標(biāo)簽的維度越豐富,從而可以支持對(duì)較為精細(xì)粒度的圖片的識(shí)別與分類(lèi)。例如,若現(xiàn)有技術(shù)的卷積神經(jīng)網(wǎng)絡(luò)模型僅能夠?qū)в泄返膱D片識(shí)別為動(dòng)物狗的圖片分類(lèi)中;而采用本實(shí)施例的圖片識(shí)別模型,由于采用了核池化層,具有更加豐富的表達(dá)性能,從而可以實(shí)現(xiàn)對(duì)圖片中的狗的品種進(jìn)行分類(lèi),例如能夠識(shí)別某圖片中的狗的類(lèi)別為藏獒、或者牧羊犬或者貴賓犬等等,從而可以實(shí)現(xiàn)更加精細(xì)粒度的圖片類(lèi)別的識(shí)別。
本實(shí)施例的圖片識(shí)別方法,在根據(jù)待識(shí)別的圖片和預(yù)先訓(xùn)練的圖片識(shí)別模型,可以獲取到獲取待識(shí)別的圖片的預(yù)測(cè)類(lèi)別標(biāo)簽之后,可以根據(jù)待識(shí)別的圖片的預(yù)測(cè)類(lèi)別標(biāo)簽,獲取待識(shí)別的圖片的類(lèi)別。例如該步驟102“根據(jù)待識(shí)別的圖片的預(yù)測(cè)類(lèi)別標(biāo)簽,識(shí)別待識(shí)別的圖片的類(lèi)別”,具體可以包括如下步驟:
(a1)根據(jù)待識(shí)別的圖片的預(yù)測(cè)類(lèi)別標(biāo)簽,獲取待識(shí)別的圖片對(duì)應(yīng)的概率最大的類(lèi)別;
(a2)將待識(shí)別的圖片對(duì)應(yīng)的概率最大的類(lèi)別作為待識(shí)別的圖片的類(lèi)別。
由于圖片識(shí)別模型輸出的待識(shí)別的圖片的預(yù)測(cè)類(lèi)別標(biāo)簽中,每一個(gè)元素?cái)?shù)值表示的是該待識(shí)別圖片屬于該位置對(duì)應(yīng)的圖片的類(lèi)別的概率,因此可以從預(yù)測(cè)類(lèi)別標(biāo)簽中獲取待識(shí)別的圖片對(duì)應(yīng)的概率最大的類(lèi)別;可以將該概率最大的類(lèi)別作為待識(shí)別圖片的類(lèi)別;進(jìn)而可以根據(jù)識(shí)別的圖片的類(lèi)別對(duì)圖片進(jìn)行分類(lèi)。
進(jìn)一步可選地,本實(shí)施例中的圖片識(shí)別模型的生成過(guò)程,具體可以采用包括步驟:
(b1)獲取卷積神經(jīng)網(wǎng)絡(luò)模型;
(b2)將卷積神經(jīng)網(wǎng)絡(luò)模型中的至少一層池化層中的通道維度由一維升階為多維,得到圖片識(shí)別模型。
首先,可以獲取一個(gè)普通的卷積神經(jīng)網(wǎng)絡(luò)模型,然后將該卷積神經(jīng)網(wǎng)絡(luò)模型中的至少一層池化層的通道維度由一維升階為多維,從而得到本實(shí)施例的圖片識(shí)別模型。本實(shí)施例中,在將池化層的通道維度由一維升階為多維的方法,具體可以采用作向量外積的方式來(lái)實(shí)現(xiàn);或者也可以采用其他的能夠?qū)崿F(xiàn)將池化層的通道維度由一維升階為多維的方法;或者本實(shí)施例的核池化層也可以將該核池化層的輸入特征表示為原特征向量的多項(xiàng)式組合,以豐富通道的維度,并利用快速傅里葉變換對(duì)輸出特征進(jìn)行壓縮表示,并輸出;這樣,得到的輸出特征包含了原特征在更高維度上的組合信息,從而使得本實(shí)施例的圖片識(shí)別模型具有更加豐富的表達(dá)性能,能夠?qū)崿F(xiàn)更加精細(xì)粒度的圖片類(lèi)別的識(shí)別,提高圖片識(shí)別的準(zhǔn)確性和識(shí)別效率。
本實(shí)施例的圖片識(shí)別方法,通過(guò)獲取待識(shí)別的圖片;根據(jù)待識(shí)別的圖片和預(yù)先訓(xùn)練的圖片識(shí)別模型,獲取待識(shí)別的圖片的預(yù)測(cè)類(lèi)別標(biāo)簽;其中預(yù)先訓(xùn)練的圖片識(shí)別模型采用卷積神經(jīng)網(wǎng)絡(luò)模型,且卷積神經(jīng)網(wǎng)絡(luò)模型中包括至少一層將通道維度由一維升階為多維的核池化層;根據(jù)待識(shí)別的圖片的預(yù)測(cè)類(lèi)別標(biāo)簽,獲取待識(shí)別的圖片的類(lèi)別。本實(shí)施例通過(guò)采用上述帶有核池化層的圖片識(shí)別模型,對(duì)待識(shí)別圖片進(jìn)行識(shí)別時(shí),能夠?qū)崿F(xiàn)更加精細(xì)粒度的圖片類(lèi)別的識(shí)別,有效地提高圖片識(shí)別的準(zhǔn)確性和圖片識(shí)別的效率。
圖2為本發(fā)明的圖片識(shí)別方法實(shí)施例二的流程圖。如圖2所示,本實(shí)施例的圖片識(shí)別方法,在上述圖1所示實(shí)施例的技術(shù)方案的基礎(chǔ)上,在步驟101“據(jù)待識(shí)別的圖片和預(yù)先訓(xùn)練的圖片識(shí)別模型,獲取待識(shí)別的圖片的預(yù)測(cè)類(lèi)別標(biāo)簽”之前,還可以包括如下步驟:
200、采集數(shù)個(gè)已經(jīng)確定類(lèi)別的訓(xùn)練圖片,生成訓(xùn)練圖片數(shù)據(jù)庫(kù);
201、根據(jù)訓(xùn)練圖片數(shù)據(jù)庫(kù)中的數(shù)張訓(xùn)練圖片以及各訓(xùn)練圖片的類(lèi)別,訓(xùn)練圖片識(shí)別模型。
本實(shí)施例的步驟200-201是用于對(duì)圖片識(shí)別模型進(jìn)行訓(xùn)練。本實(shí)施例在訓(xùn)練圖片識(shí)別模型時(shí),首先采集數(shù)張訓(xùn)練圖片,生成圖片訓(xùn)練數(shù)據(jù)庫(kù)來(lái)對(duì)圖片識(shí)別模型進(jìn)行訓(xùn)練。本實(shí)施例的圖片訓(xùn)練數(shù)據(jù)庫(kù)中包括的圖片的類(lèi)別越多,在后續(xù)識(shí)別待識(shí)別的圖片時(shí),所能夠支持識(shí)別的圖片的類(lèi)別也越多。而且,本實(shí)施例中的圖片識(shí)別模型,由于帶有核池化層,可以支持對(duì)精細(xì)粒度的圖片類(lèi)別的圖片進(jìn)行識(shí)別,所以在訓(xùn)練時(shí),可以采用精細(xì)粒度的圖片類(lèi)別的圖片對(duì)圖片識(shí)別模型進(jìn)行訓(xùn)練。
本實(shí)施例的圖片訓(xùn)練數(shù)據(jù)庫(kù)中包括的訓(xùn)練圖片的數(shù)量越多,訓(xùn)練的圖片識(shí)別模型的參數(shù)越準(zhǔn)確,后續(xù)根據(jù)該圖片識(shí)別模型得出的預(yù)測(cè)類(lèi)別標(biāo)簽越準(zhǔn)確,對(duì)圖片的識(shí)別效率就越高。例如本實(shí)施例的圖片訓(xùn)練數(shù)據(jù)庫(kù)中可以包括20萬(wàn)-30萬(wàn)甚至更多的訓(xùn)練圖片。
例如,本實(shí)施例中,該步驟201“根據(jù)訓(xùn)練圖片數(shù)據(jù)庫(kù)中的數(shù)張訓(xùn)練圖片以及各訓(xùn)練圖片的類(lèi)別,訓(xùn)練圖片識(shí)別模型”,具體可以包括如下步驟:
(c1)將訓(xùn)練圖片數(shù)據(jù)庫(kù)中的數(shù)張訓(xùn)練圖片中的各訓(xùn)練圖片依次輸入至圖片識(shí)別模型中,得到對(duì)應(yīng)的訓(xùn)練圖片的預(yù)測(cè)類(lèi)別標(biāo)簽;
本實(shí)施例中,在訓(xùn)練圖片識(shí)別模型的過(guò)程中,圖片識(shí)別模型中的參數(shù)是不斷地變化的,即圖片識(shí)別模型是在不斷地變化。在每一次訓(xùn)練時(shí),所采用的圖片識(shí)別模型均為上一次訓(xùn)練更新后的圖片識(shí)別模型。而本實(shí)施例的圖片識(shí)別模型被初次使用時(shí)各參數(shù)采用的是預(yù)設(shè)的初始值。其中預(yù)測(cè)類(lèi)別標(biāo)簽的維度在訓(xùn)練時(shí)確定,例如若訓(xùn)練圖片數(shù)據(jù)庫(kù)中的數(shù)張訓(xùn)練圖片共包括999個(gè)分類(lèi)的圖片,則可以設(shè)置圖片識(shí)別模型輸出的預(yù)測(cè)類(lèi)別標(biāo)簽的維度為999。
(c2)根據(jù)訓(xùn)練圖片的類(lèi)別,生成訓(xùn)練圖片的真實(shí)類(lèi)別標(biāo)簽;
由于訓(xùn)練圖片的類(lèi)別是已知的,可以根據(jù)訓(xùn)練圖片的類(lèi)別,生成該訓(xùn)練圖片的類(lèi)別的真實(shí)類(lèi)別標(biāo)簽。同理,該訓(xùn)練圖片的真實(shí)類(lèi)別標(biāo)簽也為向量的形式,該向量中,僅該訓(xùn)練圖片的類(lèi)別對(duì)應(yīng)的位置的元素的數(shù)值為1,其余位置均為0。
(c3)根據(jù)訓(xùn)練圖片的預(yù)測(cè)類(lèi)別標(biāo)簽和訓(xùn)練圖片的真實(shí)類(lèi)別標(biāo)簽,生成訓(xùn)練圖片的損失函數(shù);
根據(jù)(c1)得到的訓(xùn)練圖片的預(yù)測(cè)類(lèi)別標(biāo)簽和(c2)得到的訓(xùn)練圖片的真實(shí)類(lèi)別標(biāo)簽,可以知道訓(xùn)練圖片的預(yù)測(cè)類(lèi)別標(biāo)簽與訓(xùn)練圖片的真實(shí)類(lèi)別標(biāo)簽的差距,并根據(jù)該差距生成訓(xùn)練圖片的損失函數(shù)。本實(shí)施例在訓(xùn)練圖片識(shí)別模型的過(guò)程中,要將該損失函數(shù)的值逐漸變小,從而使得訓(xùn)練的圖片識(shí)別模型越準(zhǔn)確。
(c4)計(jì)算訓(xùn)練圖片的損失函數(shù)對(duì)圖片識(shí)別模型中各參數(shù)的導(dǎo)數(shù);
(c5)根據(jù)圖片識(shí)別模型中的各參數(shù)以及訓(xùn)練圖片的損失函數(shù)對(duì)各參數(shù)的導(dǎo)數(shù),更新圖片識(shí)別模型中的各參數(shù),從而確定本次訓(xùn)練后的圖片識(shí)別模型;
(c6)重復(fù)執(zhí)行上述步驟(c1)-(c5),直至數(shù)張訓(xùn)練圖片都對(duì)所述圖片識(shí)別模型進(jìn)行訓(xùn)練,確定本輪訓(xùn)練后的圖片識(shí)別模型。
具體地,由于圖片識(shí)別模型中是包括多個(gè)參數(shù),當(dāng)輸入的訓(xùn)練圖片確定時(shí),也可以將損失函數(shù)看作是關(guān)于圖片識(shí)別模型中的參數(shù)的函數(shù),此時(shí)可以計(jì)算訓(xùn)練圖片的損失函數(shù)對(duì)圖片識(shí)別模型中各參數(shù)的導(dǎo)數(shù);對(duì)于圖片識(shí)別模型中的每一個(gè)參數(shù),在更新時(shí),可以將圖片識(shí)別模型中該參數(shù)更新為該參數(shù)減去損失函數(shù)對(duì)該參數(shù)的導(dǎo)數(shù),即每一次訓(xùn)練都對(duì)圖片識(shí)別模型進(jìn)行更新。更新完圖片識(shí)別模型之后,然后返回到步驟(c1)開(kāi)始使用下一張訓(xùn)練圖片對(duì)圖片識(shí)別模型進(jìn)行訓(xùn)練,直到步驟(c5),完成下一張訓(xùn)練圖片數(shù)據(jù)對(duì)圖片識(shí)別模型的訓(xùn)練,并再次更新圖片識(shí)別模型中的各參數(shù),從而更新圖片識(shí)別模型;依次類(lèi)推,直至訓(xùn)練圖片數(shù)據(jù)庫(kù)中的數(shù)張訓(xùn)練圖片都對(duì)圖片識(shí)別模型進(jìn)行訓(xùn)練,確定本輪訓(xùn)練后的圖片識(shí)別模型。此時(shí)得到的圖片識(shí)別模型也可以應(yīng)用于圖片識(shí)別中。
因?yàn)閾p失函數(shù)表征的是一個(gè)向梯度方向下降的值,損失函數(shù)值越大,表示圖片識(shí)別模型的對(duì)輸入的圖片進(jìn)行處理后輸出的預(yù)測(cè)類(lèi)別標(biāo)簽越不準(zhǔn)確,本實(shí)施例中通過(guò)不斷地調(diào)整損失函數(shù),使得損失函數(shù)的最終點(diǎn)的梯度為0。損失函數(shù)的值越小,表示圖片識(shí)別模型的處理結(jié)果越準(zhǔn)確。上述實(shí)施例的技術(shù)方案,在更新圖片識(shí)別模型的時(shí)候,具體是在朝著損失函數(shù)逐漸降低的方向更新。因此,通過(guò)不斷的訓(xùn)練,不斷地優(yōu)化損失函數(shù),不斷地更新圖片識(shí)別模型的參數(shù),從而不斷的更新圖片識(shí)別模型,使得最終得到的圖片識(shí)別模型能夠非常準(zhǔn)確地對(duì)圖片進(jìn)行處理,得到更加準(zhǔn)確地預(yù)測(cè)類(lèi)別標(biāo)簽。
進(jìn)一步可選地,還可以按照上述步驟(c1)-(c6)所示的每一輪訓(xùn)練中訓(xùn)練圖片數(shù)據(jù)庫(kù)中的數(shù)張訓(xùn)練圖片對(duì)圖片識(shí)別模型的訓(xùn)練,使用訓(xùn)練圖片數(shù)據(jù)庫(kù)中的數(shù)張訓(xùn)練圖片重復(fù)對(duì)圖片識(shí)別模型訓(xùn)練n輪,得到最終的圖片識(shí)別模型。例如當(dāng)圖片訓(xùn)練數(shù)據(jù)庫(kù)中包括20萬(wàn)張訓(xùn)練圖片時(shí),按照順序依次使用圖片訓(xùn)練數(shù)據(jù)庫(kù)中的20萬(wàn)張訓(xùn)練圖片對(duì)圖片識(shí)別模型進(jìn)行訓(xùn)練后,可以認(rèn)為完成一輪對(duì)圖片識(shí)別模型的訓(xùn)練;然后按照每一輪對(duì)圖片識(shí)別模型的訓(xùn)練,再使用圖片訓(xùn)練數(shù)據(jù)庫(kù)中的20萬(wàn)張訓(xùn)練圖片對(duì)圖片識(shí)別模型進(jìn)行n-1輪訓(xùn)練,可以得到最終的圖片識(shí)別模型。本實(shí)施例中,經(jīng)過(guò)多輪訓(xùn)練,可以進(jìn)一步提高訓(xùn)練得到的圖片識(shí)別模型在對(duì)圖片識(shí)別時(shí),輸出的預(yù)測(cè)類(lèi)別標(biāo)簽的準(zhǔn)確性,進(jìn)而進(jìn)一步提高基于圖片識(shí)別模型進(jìn)行圖片識(shí)別的效率。本實(shí)施例中的n可以根據(jù)實(shí)際經(jīng)驗(yàn)選取一個(gè)正整數(shù),例如該n可以為5、6或者8、10之類(lèi)的正整數(shù)。
本實(shí)施例的圖片識(shí)別方法,通過(guò)采用上述帶有核池化層的圖片識(shí)別模型,對(duì)待識(shí)別圖片進(jìn)行識(shí)別時(shí),能夠?qū)崿F(xiàn)更加精細(xì)粒度的圖片類(lèi)別的識(shí)別,有效地提高圖片識(shí)別的準(zhǔn)確性和圖片識(shí)別的效率。
圖3為本發(fā)明的圖片識(shí)別裝置實(shí)施例一的結(jié)構(gòu)圖。如圖3所示,本實(shí)施例的圖片識(shí)別裝置,具體包括:獲取模塊10、預(yù)測(cè)類(lèi)別標(biāo)簽獲取模塊11和識(shí)別模塊12。
其中獲取模塊10用于獲取待識(shí)別的圖片;
預(yù)測(cè)類(lèi)別標(biāo)簽獲取模塊11用于根據(jù)獲取模塊10獲取的待識(shí)別的圖片和預(yù)先訓(xùn)練的圖片識(shí)別模型,獲取待識(shí)別的圖片的預(yù)測(cè)類(lèi)別標(biāo)簽;預(yù)先訓(xùn)練的圖片識(shí)別模型采用卷積神經(jīng)網(wǎng)絡(luò)模型,且卷積神經(jīng)網(wǎng)絡(luò)模型中包括至少一層將通道維度由一維升階為多維的核池化層;
識(shí)別模塊12用于根據(jù)預(yù)測(cè)類(lèi)別標(biāo)簽獲取模塊11獲取的待識(shí)別的圖片的預(yù)測(cè)類(lèi)別標(biāo)簽,識(shí)別待識(shí)別的圖片的類(lèi)別。
本實(shí)施例的圖片識(shí)別裝置,通過(guò)采用上述模塊實(shí)現(xiàn)圖片識(shí)別的實(shí)現(xiàn)原理以及技術(shù)效果與上述相關(guān)方法實(shí)施例的實(shí)現(xiàn)相同,詳細(xì)可以參考上述相關(guān)方法實(shí)施例的記載,在此不再贅述。
圖4為本發(fā)明的圖片識(shí)別裝置實(shí)施例二的結(jié)構(gòu)圖。如圖4所示,本實(shí)施例的圖片識(shí)別裝置,在上述圖3所示實(shí)施例的技術(shù)方案的基礎(chǔ)上,進(jìn)一步更加詳細(xì)地介紹本發(fā)明的技術(shù)方案。
如圖4所示,本實(shí)施例的圖片識(shí)別裝置,還包括:采集模塊13和訓(xùn)練模塊14。
采集模塊13用于采集數(shù)個(gè)已經(jīng)確定類(lèi)別的訓(xùn)練圖片,生成訓(xùn)練圖片數(shù)據(jù)庫(kù);
訓(xùn)練模塊14用于根據(jù)訓(xùn)練圖片數(shù)據(jù)庫(kù)中的數(shù)張訓(xùn)練圖片以及各訓(xùn)練圖片的類(lèi)別,訓(xùn)練圖片識(shí)別模型。
對(duì)應(yīng)地,預(yù)測(cè)類(lèi)別標(biāo)簽獲取模塊11用于根據(jù)獲取模塊10獲取的待識(shí)別的圖片和訓(xùn)練模塊14預(yù)先訓(xùn)練的圖片識(shí)別模型,獲取待識(shí)別的圖片的預(yù)測(cè)類(lèi)別標(biāo)簽。
進(jìn)一步可選地,本實(shí)施例的圖片識(shí)別裝置中,訓(xùn)練模塊14具體用于:
將采集模塊13采集的訓(xùn)練圖片數(shù)據(jù)庫(kù)中的數(shù)張訓(xùn)練圖片中的各訓(xùn)練圖片依次輸入至圖片識(shí)別模型中,得到對(duì)應(yīng)的訓(xùn)練圖片的預(yù)測(cè)類(lèi)別標(biāo)簽;
根據(jù)訓(xùn)練圖片的類(lèi)別,生成訓(xùn)練圖片的真實(shí)類(lèi)別標(biāo)簽;
根據(jù)訓(xùn)練圖片的預(yù)測(cè)類(lèi)別標(biāo)簽和訓(xùn)練圖片的真實(shí)類(lèi)別標(biāo)簽,生成訓(xùn)練圖片的損失函數(shù);
計(jì)算訓(xùn)練圖片的損失函數(shù)對(duì)圖片識(shí)別模型中各參數(shù)的導(dǎo)數(shù);
根據(jù)圖片識(shí)別模型中的各參數(shù)以及訓(xùn)練圖片的損失函數(shù)對(duì)各參數(shù)的導(dǎo)數(shù),更新圖片識(shí)別模型中的各參數(shù),從而確定本次訓(xùn)練后的圖片識(shí)別模型;
重復(fù)執(zhí)行上述步驟,直至數(shù)張訓(xùn)練圖片都對(duì)圖片識(shí)別模型進(jìn)行訓(xùn)練,確定本輪訓(xùn)練后的圖片識(shí)別模型。
進(jìn)一步可選地,本實(shí)施例的圖片識(shí)別裝置中,訓(xùn)練模塊14具體還用于按照上述每一輪訓(xùn)練中訓(xùn)練圖片數(shù)據(jù)庫(kù)中的數(shù)張訓(xùn)練圖片對(duì)圖片識(shí)別模型的訓(xùn)練,使用訓(xùn)練圖片數(shù)據(jù)庫(kù)中的數(shù)張訓(xùn)練圖片重復(fù)對(duì)圖片識(shí)別模型訓(xùn)練n輪,得到最終的圖片識(shí)別模型。
進(jìn)一步可選地,本實(shí)施例的圖片識(shí)別裝置中,識(shí)別模塊12具體用于:
根據(jù)預(yù)測(cè)類(lèi)別標(biāo)簽獲取模塊11獲取的待識(shí)別的圖片的預(yù)測(cè)類(lèi)別標(biāo)簽,獲取待識(shí)別的圖片對(duì)應(yīng)的概率最大的類(lèi)別;
將待識(shí)別的圖片對(duì)應(yīng)的概率最大的類(lèi)別作為待識(shí)別的圖片的類(lèi)別。
進(jìn)一步可選地,如圖4所示,本實(shí)施例的圖片識(shí)別裝置中,還包括:
模型生成模塊15用于獲取卷積神經(jīng)網(wǎng)絡(luò)模型;將卷積神經(jīng)網(wǎng)絡(luò)模型中的至少一層池化層中的通道維度由一維升階為多維,得到圖片識(shí)別模型。
對(duì)應(yīng)地,訓(xùn)練模塊14用于根據(jù)訓(xùn)練圖片數(shù)據(jù)庫(kù)中的數(shù)張訓(xùn)練圖片以及各訓(xùn)練圖片的類(lèi)別,訓(xùn)練模型生成模塊15生成的圖片識(shí)別模型。
本實(shí)施例的圖片識(shí)別裝置,通過(guò)采用上述模塊實(shí)現(xiàn)圖片識(shí)別的實(shí)現(xiàn)原理以及技術(shù)效果與上述相關(guān)方法實(shí)施例的實(shí)現(xiàn)相同,詳細(xì)可以參考上述相關(guān)方法實(shí)施例的記載,在此不再贅述。
圖5為本發(fā)明的計(jì)算機(jī)設(shè)備實(shí)施例的結(jié)構(gòu)圖。如圖5所示,本實(shí)施例的計(jì)算機(jī)設(shè)備,包括:一個(gè)或多個(gè)處理器30,以及存儲(chǔ)器40,存儲(chǔ)器40用于存儲(chǔ)一個(gè)或多個(gè)程序,當(dāng)存儲(chǔ)器40中存儲(chǔ)的一個(gè)或多個(gè)程序被一個(gè)或多個(gè)處理器30執(zhí)行,使得一個(gè)或多個(gè)處理器30實(shí)現(xiàn)如上圖1-圖2所示實(shí)施例的圖片識(shí)別方法。圖5所示實(shí)施例中以包括多個(gè)處理器30為例。
例如,圖6為本發(fā)明提供的一種計(jì)算機(jī)設(shè)備的示例圖。圖6示出了適于用來(lái)實(shí)現(xiàn)本發(fā)明實(shí)施方式的示例性計(jì)算機(jī)設(shè)備12a的框圖。圖6顯示的計(jì)算機(jī)設(shè)備12a僅僅是一個(gè)示例,不應(yīng)對(duì)本發(fā)明實(shí)施例的功能和使用范圍帶來(lái)任何限制。
如圖6所示,計(jì)算機(jī)設(shè)備12a以通用計(jì)算設(shè)備的形式表現(xiàn)。計(jì)算機(jī)設(shè)備12a的組件可以包括但不限于:一個(gè)或者多個(gè)處理器16a,系統(tǒng)存儲(chǔ)器28a,連接不同系統(tǒng)組件(包括系統(tǒng)存儲(chǔ)器28a和處理器16a)的總線18a。
總線18a表示幾類(lèi)總線結(jié)構(gòu)中的一種或多種,包括存儲(chǔ)器總線或者存儲(chǔ)器控制器,外圍總線,圖形加速端口,處理器或者使用多種總線結(jié)構(gòu)中的任意總線結(jié)構(gòu)的局域總線。舉例來(lái)說(shuō),這些體系結(jié)構(gòu)包括但不限于工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(isa)總線,微通道體系結(jié)構(gòu)(mac)總線,增強(qiáng)型isa總線、視頻電子標(biāo)準(zhǔn)協(xié)會(huì)(vesa)局域總線以及外圍組件互連(pci)總線。
計(jì)算機(jī)設(shè)備12a典型地包括多種計(jì)算機(jī)系統(tǒng)可讀介質(zhì)。這些介質(zhì)可以是任何能夠被計(jì)算機(jī)設(shè)備12a訪問(wèn)的可用介質(zhì),包括易失性和非易失性介質(zhì),可移動(dòng)的和不可移動(dòng)的介質(zhì)。
系統(tǒng)存儲(chǔ)器28a可以包括易失性存儲(chǔ)器形式的計(jì)算機(jī)系統(tǒng)可讀介質(zhì),例如隨機(jī)存取存儲(chǔ)器(ram)30a和/或高速緩存存儲(chǔ)器32a。計(jì)算機(jī)設(shè)備12a可以進(jìn)一步包括其它可移動(dòng)/不可移動(dòng)的、易失性/非易失性計(jì)算機(jī)系統(tǒng)存儲(chǔ)介質(zhì)。僅作為舉例,存儲(chǔ)系統(tǒng)34a可以用于讀寫(xiě)不可移動(dòng)的、非易失性磁介質(zhì)(圖6未顯示,通常稱(chēng)為“硬盤(pán)驅(qū)動(dòng)器”)。盡管圖6中未示出,可以提供用于對(duì)可移動(dòng)非易失性磁盤(pán)(例如“軟盤(pán)”)讀寫(xiě)的磁盤(pán)驅(qū)動(dòng)器,以及對(duì)可移動(dòng)非易失性光盤(pán)(例如cd-rom,dvd-rom或者其它光介質(zhì))讀寫(xiě)的光盤(pán)驅(qū)動(dòng)器。在這些情況下,每個(gè)驅(qū)動(dòng)器可以通過(guò)一個(gè)或者多個(gè)數(shù)據(jù)介質(zhì)接口與總線18a相連。系統(tǒng)存儲(chǔ)器28a可以包括至少一個(gè)程序產(chǎn)品,該程序產(chǎn)品具有一組(例如至少一個(gè))程序模塊,這些程序模塊被配置以執(zhí)行本發(fā)明上述圖1-圖4各實(shí)施例的功能。
具有一組(至少一個(gè))程序模塊42a的程序/實(shí)用工具40a,可以存儲(chǔ)在例如系統(tǒng)存儲(chǔ)器28a中,這樣的程序模塊42a包括——但不限于——操作系統(tǒng)、一個(gè)或者多個(gè)應(yīng)用程序、其它程序模塊以及程序數(shù)據(jù),這些示例中的每一個(gè)或某種組合中可能包括網(wǎng)絡(luò)環(huán)境的實(shí)現(xiàn)。程序模塊42a通常執(zhí)行本發(fā)明所描述的上述圖1-圖4各實(shí)施例中的功能和/或方法。
計(jì)算機(jī)設(shè)備12a也可以與一個(gè)或多個(gè)外部設(shè)備14a(例如鍵盤(pán)、指向設(shè)備、顯示器24a等)通信,還可與一個(gè)或者多個(gè)使得用戶能與該計(jì)算機(jī)設(shè)備12a交互的設(shè)備通信,和/或與使得該計(jì)算機(jī)設(shè)備12a能與一個(gè)或多個(gè)其它計(jì)算設(shè)備進(jìn)行通信的任何設(shè)備(例如網(wǎng)卡,調(diào)制解調(diào)器等等)通信。這種通信可以通過(guò)輸入/輸出(i/o)接口22a進(jìn)行。并且,計(jì)算機(jī)設(shè)備12a還可以通過(guò)網(wǎng)絡(luò)適配器20a與一個(gè)或者多個(gè)網(wǎng)絡(luò)(例如局域網(wǎng)(lan),廣域網(wǎng)(wan)和/或公共網(wǎng)絡(luò),例如因特網(wǎng))通信。如圖所示,網(wǎng)絡(luò)適配器20a通過(guò)總線18a與計(jì)算機(jī)設(shè)備12a的其它模塊通信。應(yīng)當(dāng)明白,盡管圖中未示出,可以結(jié)合計(jì)算機(jī)設(shè)備12a使用其它硬件和/或軟件模塊,包括但不限于:微代碼、設(shè)備驅(qū)動(dòng)器、冗余處理器、外部磁盤(pán)驅(qū)動(dòng)陣列、raid系統(tǒng)、磁帶驅(qū)動(dòng)器以及數(shù)據(jù)備份存儲(chǔ)系統(tǒng)等。
處理器16a通過(guò)運(yùn)行存儲(chǔ)在系統(tǒng)存儲(chǔ)器28a中的程序,從而執(zhí)行各種功能應(yīng)用以及數(shù)據(jù)處理,例如實(shí)現(xiàn)上述實(shí)施例所示的圖片識(shí)別方法。
本發(fā)明還提供一種計(jì)算機(jī)可讀介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,該程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如上述實(shí)施例所示的圖片識(shí)別方法。
本實(shí)施例的計(jì)算機(jī)可讀介質(zhì)可以包括上述圖6所示實(shí)施例中的系統(tǒng)存儲(chǔ)器28a中的ram30a、和/或高速緩存存儲(chǔ)器32a、和/或存儲(chǔ)系統(tǒng)34a。
隨著科技的發(fā)展,計(jì)算機(jī)程序的傳播途徑不再受限于有形介質(zhì),還可以直接從網(wǎng)絡(luò)下載,或者采用其他方式獲取。因此,本實(shí)施例中的計(jì)算機(jī)可讀介質(zhì)不僅可以包括有形的介質(zhì),還可以包括無(wú)形的介質(zhì)。
本實(shí)施例的計(jì)算機(jī)可讀介質(zhì)可以采用一個(gè)或多個(gè)計(jì)算機(jī)可讀的介質(zhì)的任意組合。計(jì)算機(jī)可讀介質(zhì)可以是計(jì)算機(jī)可讀信號(hào)介質(zhì)或者計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)例如可以是——但不限于——電、磁、光、電磁、紅外線、或半導(dǎo)體的系統(tǒng)、裝置或器件,或者任意以上的組合。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的更具體的例子(非窮舉的列表)包括:具有一個(gè)或多個(gè)導(dǎo)線的電連接、便攜式計(jì)算機(jī)磁盤(pán)、硬盤(pán)、隨機(jī)存取存儲(chǔ)器(ram)、只讀存儲(chǔ)器(rom)、可擦式可編程只讀存儲(chǔ)器(eprom或閃存)、光纖、便攜式緊湊磁盤(pán)只讀存儲(chǔ)器(cd-rom)、光存儲(chǔ)器件、磁存儲(chǔ)器件、或者上述的任意合適的組合。在本文件中,計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是任何包含或存儲(chǔ)程序的有形介質(zhì),該程序可以被指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用。
計(jì)算機(jī)可讀的信號(hào)介質(zhì)可以包括在基帶中或者作為載波一部分傳播的數(shù)據(jù)信號(hào),其中承載了計(jì)算機(jī)可讀的程序代碼。這種傳播的數(shù)據(jù)信號(hào)可以采用多種形式,包括——但不限于——電磁信號(hào)、光信號(hào)或上述的任意合適的組合。計(jì)算機(jī)可讀的信號(hào)介質(zhì)還可以是計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)以外的任何計(jì)算機(jī)可讀介質(zhì),該計(jì)算機(jī)可讀介質(zhì)可以發(fā)送、傳播或者傳輸用于由指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用的程序。
計(jì)算機(jī)可讀介質(zhì)上包含的程序代碼可以用任何適當(dāng)?shù)慕橘|(zhì)傳輸,包括——但不限于——無(wú)線、電線、光纜、rf等等,或者上述的任意合適的組合。
可以以一種或多種程序設(shè)計(jì)語(yǔ)言或其組合來(lái)編寫(xiě)用于執(zhí)行本發(fā)明操作的計(jì)算機(jī)程序代碼,所述程序設(shè)計(jì)語(yǔ)言包括面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言—諸如java、smalltalk、c++,還包括常規(guī)的過(guò)程式程序設(shè)計(jì)語(yǔ)言—諸如”c”語(yǔ)言或類(lèi)似的程序設(shè)計(jì)語(yǔ)言。程序代碼可以完全地在用戶計(jì)算機(jī)上執(zhí)行、部分地在用戶計(jì)算機(jī)上執(zhí)行、作為一個(gè)獨(dú)立的軟件包執(zhí)行、部分在用戶計(jì)算機(jī)上部分在遠(yuǎn)程計(jì)算機(jī)上執(zhí)行、或者完全在遠(yuǎn)程計(jì)算機(jī)或服務(wù)器上執(zhí)行。在涉及遠(yuǎn)程計(jì)算機(jī)的情形中,遠(yuǎn)程計(jì)算機(jī)可以通過(guò)任意種類(lèi)的網(wǎng)絡(luò)——包括局域網(wǎng)(lan)或廣域網(wǎng)(wan)—連接到用戶計(jì)算機(jī),或者,可以連接到外部計(jì)算機(jī)(例如利用因特網(wǎng)服務(wù)提供商來(lái)通過(guò)因特網(wǎng)連接)。
在本發(fā)明所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的系統(tǒng),裝置和方法,可以通過(guò)其它的方式實(shí)現(xiàn)。例如,以上所描述的裝置實(shí)施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式。
所述作為分離部件說(shuō)明的單元可以是或者也可以不是物理上分開(kāi)的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來(lái)實(shí)現(xiàn)本實(shí)施例方案的目的。
另外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理單元中,也可以是各個(gè)單元單獨(dú)物理存在,也可以?xún)蓚€(gè)或兩個(gè)以上單元集成在一個(gè)單元中。上述集成的單元既可以采用硬件的形式實(shí)現(xiàn),也可以采用硬件加軟件功能單元的形式實(shí)現(xiàn)。
上述以軟件功能單元的形式實(shí)現(xiàn)的集成的單元,可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中。上述軟件功能單元存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)或處理器(processor)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述方法的部分步驟。而前述的存儲(chǔ)介質(zhì)包括:u盤(pán)、移動(dòng)硬盤(pán)、只讀存儲(chǔ)器(read-onlymemory,rom)、隨機(jī)存取存儲(chǔ)器(randomaccessmemory,ram)、磁碟或者光盤(pán)等各種可以存儲(chǔ)程序代碼的介質(zhì)。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明保護(hù)的范圍之內(nèi)。