本發(fā)明涉及圖像處理技術(shù)領(lǐng)域,更具體地涉及一種實(shí)例分割方法及裝置。
背景技術(shù):
物體檢測和圖像分割是兩種不同的計(jì)算機(jī)視覺基礎(chǔ)任務(wù)。物體檢測要求算法把各種物體從圖像中識別并定位出來,圖像分割要求算法把圖像的每一個像素加上類別標(biāo)注。將物體檢測和圖像分割兩者結(jié)合起來稱為實(shí)例分割,實(shí)例分割要求算法找到每一個待檢測的物體并把物體所在的像素標(biāo)注出來。
現(xiàn)有的物體分割方法(例如DeepMask、SharpMask、Instance FCN等)在對圖片中的實(shí)例(指圖片中的待分割對象,例如人、車等)進(jìn)行分割時通常包括如下步驟:首先,對待處理圖像的尺度(scale)進(jìn)行調(diào)整以形成包括多張不同尺度圖片的圖片金字塔;然后,利用神經(jīng)網(wǎng)絡(luò)(例如DeepMask網(wǎng)絡(luò))的身體網(wǎng)絡(luò)(body module)從每個調(diào)整后的圖片中提取全特征張量(full feature map),從而得到多個尺度不同的特征張量;最后,利用固定尺度的滑動窗口(fixed-size sliding window)對該多個尺度不同的特征圖進(jìn)行操作得到對應(yīng)數(shù)目的窗口特征張量,利用神經(jīng)網(wǎng)絡(luò)的頭網(wǎng)絡(luò)(head module)確定每個窗口特征張量的置信度并基于置信度完成分割操作。
現(xiàn)有的上述方法在解決實(shí)例分割時存在著兩個問題:其一,在不依靠圖片金字塔的情況下,無法解決多尺度問題,即,不能對同一輸入圖片中的不同尺度的物體同時進(jìn)行分割而只能分割出圖片中給定大小的物體;其二,由于待檢測物體之間和背景對于待檢測物體存在噪聲的原因,在待分割物體十分擁擠的圖片上分割效果表現(xiàn)不佳。
技術(shù)實(shí)現(xiàn)要素:
為了解決上述問題中的至少一個而提出了本發(fā)明。根據(jù)本發(fā)明一方面,提供了一種實(shí)例分割方法,所述實(shí)例分割方法包括:接收待處理圖像;通過第一神經(jīng)網(wǎng)絡(luò)對所述待處理圖像進(jìn)行處理以生成第一特征張量;通過第二神經(jīng)網(wǎng)絡(luò)對所述第一特征張量進(jìn)行處理以生成不同尺度的多個第二特征張量,其中每個所述第二特征張量表示相應(yīng)尺度的所述待處理圖像;以及通過第三神經(jīng)網(wǎng)絡(luò)對所述多個第二特征張量進(jìn)行處理以實(shí)現(xiàn)對所述待處理圖像的實(shí)例分割。
在本發(fā)明的一個實(shí)施例中,所述第二神經(jīng)網(wǎng)絡(luò)包括至少兩個子網(wǎng)絡(luò),每個子網(wǎng)絡(luò)用于生成一種預(yù)定尺度的所述第二特征張量。
在本發(fā)明的一個實(shí)施例中,所述子網(wǎng)絡(luò)之間是殘余連接并共享參數(shù)的,后一個子網(wǎng)絡(luò)基于前一個子網(wǎng)絡(luò)的輸出生成另一種預(yù)定尺度的所述第二特征張量。
在本發(fā)明的一個實(shí)施例中,基于所述后一個子網(wǎng)絡(luò)生成的第二特征張量的尺度小于基于所述前一個子網(wǎng)絡(luò)生成的第二特征張量的尺度。
在本發(fā)明的一個實(shí)施例中,所述子網(wǎng)絡(luò)包括卷積層和池化層。
在本發(fā)明的一個實(shí)施例中,所述通過第三神經(jīng)網(wǎng)絡(luò)對所述多個第二特征張量進(jìn)行處理以實(shí)現(xiàn)對所述待處理圖像的實(shí)例分割包括:通過所述第三神經(jīng)網(wǎng)絡(luò)的滑動窗口分別從所述多個第二特征張量中提取相應(yīng)的窗口特征張量;基于所述窗口特征張量生成所述滑動窗口中存在物體的置信度;以及基于所述置信度和所述窗口特征張量生成所述待處理圖像的實(shí)例分割。
在本發(fā)明的一個實(shí)施例中,所述通過第三神經(jīng)網(wǎng)絡(luò)對所述多個第二特征張量進(jìn)行處理以實(shí)現(xiàn)對所述待處理圖像的實(shí)例分割包括:通過所述第三神經(jīng)網(wǎng)絡(luò)的滑動窗口分別從所述多個第二特征張量中提取相應(yīng)的窗口特征張量;基于所述窗口特征張量生成所述滑動窗口中存在物體的置信度,選擇存在物體的置信度大于預(yù)定閾值的窗口特征張量作為有效窗口特征張量;基于每個所述有效窗口特征張量生成相應(yīng)的注意力矩陣,其中所述注意力矩陣包括相應(yīng)的所述有效窗口特征張量上的每一點(diǎn)位于待檢測物體所在區(qū)域內(nèi)的置信度值;將每個所述注意力矩陣廣播乘相應(yīng)的所述有效窗口特征張量以生成第三特征張量;以及基于所述第三特征張量生成所述待處理圖像的實(shí)例分割。
在本發(fā)明的一個實(shí)施例中,所述通過第三神經(jīng)網(wǎng)絡(luò)對所述多個第二特征張量進(jìn)行處理以實(shí)現(xiàn)對所述待處理圖像的實(shí)例分割包括:通過所述第三神經(jīng)網(wǎng)絡(luò)的滑動窗口分別從所述多個第二特征張量中提取相應(yīng)的窗口特征張量;基于每個所述窗口特征張量生成相應(yīng)的注意力矩陣和所述滑動窗口中存在物體的置信度,其中所述注意力矩陣包括相應(yīng)的所述窗口特征張量上的每一點(diǎn)位于待檢測物體所在區(qū)域內(nèi)的置信度值;將每個所述注意力矩陣廣播乘相應(yīng)的所述窗口特征張量以生成第三特征張量;以及基于所述第三特征張量以及所述滑動窗口中存在物體的置信度生成所述待處理圖像的實(shí)例分割。
在本發(fā)明的一個實(shí)施例中,所述注意力矩陣通過由全連接層組成的注意力生成器而生成。
在本發(fā)明的一個實(shí)施例中,所述第三神經(jīng)網(wǎng)絡(luò)中還包括上采樣層,所述上采樣層用于提高所生成的實(shí)例分割結(jié)果的分辨率。
根據(jù)本發(fā)明另一方面,提供了一種實(shí)例分割裝置,所述實(shí)例分割裝置包括:接收模塊,用于接收待處理圖像;第一神經(jīng)網(wǎng)絡(luò)模塊,用于對所述待處理圖像進(jìn)行處理以生成第一特征張量;第二神經(jīng)網(wǎng)絡(luò)模塊,用于對所述第一特征張量進(jìn)行處理以生成不同尺度的多個第二特征張量,其中每個所述第二特征張量表示相應(yīng)尺度的所述待處理圖像;以及第三神經(jīng)網(wǎng)絡(luò)模塊,用于對所述多個第二特征張量進(jìn)行處理以實(shí)現(xiàn)對所述待處理圖像的實(shí)例分割。
在本發(fā)明的一個實(shí)施例中,所述第二神經(jīng)網(wǎng)絡(luò)模塊包括至少兩個子網(wǎng)絡(luò),每個子網(wǎng)絡(luò)用于生成一種預(yù)定尺度的所述第二特征張量。
在本發(fā)明的一個實(shí)施例中,所述子網(wǎng)絡(luò)之間是殘余連接并共享參數(shù)的,后一個子網(wǎng)絡(luò)基于前一個子網(wǎng)絡(luò)的輸出生成另一種預(yù)定尺度的所述第二特征張量。
在本發(fā)明的一個實(shí)施例中,基于所述后一個子網(wǎng)絡(luò)生成的第二特征張量的尺度小于基于所述前一個子網(wǎng)絡(luò)生成的第二特征張量的尺度。
在本發(fā)明的一個實(shí)施例中,所述子網(wǎng)絡(luò)包括卷積層和池化層。
在本發(fā)明的一個實(shí)施例中,所述第三神經(jīng)網(wǎng)絡(luò)模塊進(jìn)一步用于:通過滑動窗口分別從所述多個第二特征張量中提取相應(yīng)的窗口特征張量;基于所述窗口特征張量生成所述滑動窗口中存在物體的置信度;以及基于所述置信度和所述窗口特征張量生成所述待處理圖像的實(shí)例分割。
在本發(fā)明的一個實(shí)施例中,所述第三神經(jīng)網(wǎng)絡(luò)模塊進(jìn)一步用于:通過滑動窗口分別從所述多個第二特征張量中提取相應(yīng)的窗口特征張量;基于所述窗口特征張量生成所述滑動窗口中存在物體的置信度,選擇存在物體的置信度大于預(yù)定閾值的窗口特征張量作為有效窗口特征張量;基于每個所述有效窗口特征張量生成相應(yīng)的注意力矩陣,其中所述注意力矩陣包括相應(yīng)的所述有效窗口特征張量上的每一點(diǎn)位于待檢測物體所在區(qū)域內(nèi)的置信度值;將每個所述注意力矩陣廣播乘相應(yīng)的所述有效窗口特征張量以生成第三特征張量;以及基于所述第三特征張量生成所述待處理圖像的實(shí)例分割。
在本發(fā)明的一個實(shí)施例中,所述第三神經(jīng)網(wǎng)絡(luò)模塊進(jìn)一步用于:通過滑動窗口分別從所述多個第二特征張量中提取相應(yīng)的窗口特征張量;基于每個所述窗口特征張量生成相應(yīng)的注意力矩陣和所述滑動窗口中存在物體的置信度,其中所述注意力矩陣包括相應(yīng)的所述窗口特征張量上的每一點(diǎn)位于待檢測物體所在區(qū)域內(nèi)的置信度值;將每個所述注意力矩陣廣播乘相應(yīng)的所述窗口特征張量以生成第三特征張量;以及基于所述第三特征張量以及所述滑動窗口中存在物體的置信度生成所述待處理圖像的實(shí)例分割。
在本發(fā)明的一個實(shí)施例中,所述第三神經(jīng)網(wǎng)絡(luò)模塊包括由全連接層組成的注意力生成器,所述注意力矩陣通過所述注意力生成器而生成。
在本發(fā)明的一個實(shí)施例中,所述第三神經(jīng)網(wǎng)絡(luò)模塊包括上采樣層,所述上采樣層用于提高所生成的實(shí)例分割結(jié)果的分辨率。
根據(jù)本發(fā)明又一方面,提供了一種實(shí)例分割裝置,所述實(shí)例分割裝置包括處理器、存儲器以及存儲于所述存儲器中的計(jì)算機(jī)程序,其中,所述計(jì)算機(jī)程序在被所述處理器運(yùn)行時執(zhí)行如下步驟:接收待處理圖像;通過第一神經(jīng)網(wǎng)絡(luò)對所述待處理圖像進(jìn)行處理以生成第一特征張量;通過第二神經(jīng)網(wǎng)絡(luò)對所述第一特征張量進(jìn)行處理以生成不同尺度的多個第二特征張量,其中每個所述第二特征張量表示相應(yīng)尺度的所述待處理圖像;以及通過第三神經(jīng)網(wǎng)絡(luò)對所述多個第二特征張量進(jìn)行處理以實(shí)現(xiàn)對所述待處理圖像的實(shí)例分割。
根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法及裝置基于包括新的網(wǎng)絡(luò)組件的新的網(wǎng)絡(luò)架構(gòu)同時進(jìn)行物體檢測與圖像分割,使得不需要使用圖片金字塔就能夠一次生成所有的物體分割,解決了多尺度問題,同時提高了算法的速度。
附圖說明
通過結(jié)合附圖對本發(fā)明實(shí)施例進(jìn)行更詳細(xì)的描述,本發(fā)明的上述以及其它目的、特征和優(yōu)勢將變得更加明顯。附圖用來提供對本發(fā)明實(shí)施例的進(jìn)一步理解,并且構(gòu)成說明書的一部分,與本發(fā)明實(shí)施例一起用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的限制。在附圖中,相同的參考標(biāo)號通常代表相同部件或步驟。
圖1示出用于實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法和裝置的示例電子設(shè)備的示意性框圖;
圖2示出根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法的流程圖;
圖3示出根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法的示意圖;
圖4示出根據(jù)本發(fā)明實(shí)施例的第二神經(jīng)網(wǎng)絡(luò)所包括的子網(wǎng)絡(luò)及其操作的示意圖;
圖5示出根據(jù)本發(fā)明另一實(shí)施例的實(shí)例分割方法的流程圖;
圖6示出根據(jù)本發(fā)明實(shí)施例的第三神經(jīng)網(wǎng)絡(luò)的部分操作的示意圖;
圖7示出根據(jù)本發(fā)明又一實(shí)施例的實(shí)例分割方法的流程圖;
圖8示出根據(jù)本發(fā)明實(shí)施例的實(shí)例分割裝置的示意性框圖;以及
圖9示出根據(jù)本發(fā)明實(shí)施例的實(shí)例分割系統(tǒng)的示意性框圖。
具體實(shí)施方式
為了使得本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更為明顯,下面將參照附圖詳細(xì)描述根據(jù)本發(fā)明的示例實(shí)施例。顯然,所描述的實(shí)施例僅僅是本發(fā)明的一部分實(shí)施例,而不是本發(fā)明的全部實(shí)施例,應(yīng)理解,本發(fā)明不受這里描述的示例實(shí)施例的限制?;诒景l(fā)明中描述的本發(fā)明實(shí)施例,本領(lǐng)域技術(shù)人員在沒有付出創(chuàng)造性勞動的情況下所得到的所有其它實(shí)施例都應(yīng)落入本發(fā)明的保護(hù)范圍之內(nèi)。
首先,參照圖1來描述用于實(shí)現(xiàn)本發(fā)明實(shí)施例的實(shí)例分割方法和裝置的示例電子設(shè)備100。
如圖1所示,電子設(shè)備100包括一個或多個處理器102、一個或多個存儲裝置104、輸入裝置106、輸出裝置108以及圖像傳感器110,這些組件通過總線系統(tǒng)112和/或其它形式的連接機(jī)構(gòu)(未示出)互連。應(yīng)當(dāng)注意,圖1所示的電子設(shè)備100的組件和結(jié)構(gòu)只是示例性的,而非限制性的,根據(jù)需要,所述電子設(shè)備也可以具有其他組件和結(jié)構(gòu)。
所述處理器102可以是中央處理單元(CPU)或者具有數(shù)據(jù)處理能力和/或指令執(zhí)行能力的其它形式的處理單元,并且可以控制所述電子設(shè)備100中的其它組件以執(zhí)行期望的功能。
所述存儲裝置104可以包括一個或多個計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)程序產(chǎn)品可以包括各種形式的計(jì)算機(jī)可讀存儲介質(zhì),例如易失性存儲器和/或非易失性存儲器。所述易失性存儲器例如可以包括隨機(jī)存取存儲器(RAM)和/或高速緩沖存儲器(cache)等。所述非易失性存儲器例如可以包括只讀存儲器(ROM)、硬盤、閃存等。在所述計(jì)算機(jī)可讀存儲介質(zhì)上可以存儲一個或多個計(jì)算機(jī)程序指令,處理器102可以運(yùn)行所述程序指令,以實(shí)現(xiàn)下文所述的本發(fā)明實(shí)施例中(由處理器實(shí)現(xiàn))的客戶端功能以及/或者其它期望的功能。在所述計(jì)算機(jī)可讀存儲介質(zhì)中還可以存儲各種應(yīng)用程序和各種數(shù)據(jù),例如所述應(yīng)用程序使用和/或產(chǎn)生的各種數(shù)據(jù)等。
所述輸入裝置106可以是用戶用來輸入指令的裝置,并且可以包括鍵盤、鼠標(biāo)、麥克風(fēng)和觸摸屏等中的一個或多個。
所述輸出裝置108可以向外部(例如用戶)輸出各種信息(例如圖像或聲音),并且可以包括顯示器、揚(yáng)聲器等中的一個或多個。
所述圖像傳感器110可以拍攝用戶期望的圖像(例如照片、視頻等),并且將所拍攝的圖像存儲在所述存儲裝置104中以供其它組件使用。
示例性地,用于實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法和裝置的示例電子設(shè)備可以被實(shí)現(xiàn)為諸如智能手機(jī)、平板電腦等。
下面,將參考圖2所示的根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法的流程圖以及圖3所示的根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法的示意圖描述根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法200。
在步驟S210,接收待處理圖像。
在一個實(shí)施例中,所接收的待處理圖像(如圖3的示意圖中所示的待處理圖像)為用于進(jìn)行物體檢測和圖像分割的圖像。在一個示例中,所接收的待處理圖像可以為實(shí)時采集的圖像。在其他示例中,所接收的待處理圖像也可以為來自任何源的圖像。此處,所接收的待處理圖像可以為視頻數(shù)據(jù),也可以為圖片數(shù)據(jù)。
在步驟S220,通過第一神經(jīng)網(wǎng)絡(luò)對所述待處理圖像進(jìn)行處理以生成第一特征張量。
在一個實(shí)施例中,第一神經(jīng)網(wǎng)絡(luò)可以為實(shí)例分割網(wǎng)絡(luò)架構(gòu)中的身體網(wǎng)絡(luò)(如圖3的示意圖中所示的身體網(wǎng)絡(luò)),例如Deepmask的網(wǎng)絡(luò)架構(gòu)中的身體網(wǎng)絡(luò),其例如可以包括經(jīng)典圖像分類深度神經(jīng)網(wǎng)絡(luò)的卷積部分。身體網(wǎng)絡(luò)的結(jié)構(gòu)為本領(lǐng)域普通技術(shù)人員所已知的,因此為了簡潔,此處不再贅述?;谠诓襟ES210所接收的待處理圖像,通過第一神經(jīng)網(wǎng)絡(luò)(身體網(wǎng)絡(luò))生成第一特征張量(feature map),該第一特征張量為第一神經(jīng)網(wǎng)絡(luò)對待處理圖像進(jìn)行處理后所輸出的特征張量,將其稱為第一特征張量僅是為了與后續(xù)將描述的第二特征張量、第三特征張量等相區(qū)別,并不起到任何限定作用。類似地,將第一神經(jīng)網(wǎng)絡(luò)(身體網(wǎng)絡(luò))稱為第一神經(jīng)網(wǎng)絡(luò)也僅為了與后續(xù)將描述的第二神經(jīng)網(wǎng)絡(luò)、第三神經(jīng)網(wǎng)絡(luò)等相區(qū)別,并不起到任何限定作用。
在步驟S230,通過第二神經(jīng)網(wǎng)絡(luò)對所述第一特征張量進(jìn)行處理以生成不同尺度的多個第二特征張量,其中每個所述第二特征張量表示相應(yīng)尺度的所述待處理圖像。
在一個實(shí)施例中,第二神經(jīng)網(wǎng)絡(luò)為本發(fā)明提出的新的網(wǎng)絡(luò)組件,為了與前面描述的身體網(wǎng)絡(luò)與后面將描述的頭部網(wǎng)絡(luò)相對應(yīng),可以將第二神經(jīng)網(wǎng)絡(luò)稱為脖子網(wǎng)絡(luò)(如圖3的示意圖中所示的脖子網(wǎng)絡(luò))。通過該脖子網(wǎng)絡(luò),可在不需要圖片金字塔的情況下將身體網(wǎng)絡(luò)所生成的特征張量生成不同尺度的多個(指至少兩個)特征張量,為了與身體網(wǎng)絡(luò)所生成的第一特征張量相區(qū)別(而非起到任何限定作用),將通過第二神經(jīng)網(wǎng)絡(luò)(脖子網(wǎng)絡(luò))所生成的不同尺度的多個特征張量稱為多個第二特征張量。
此處,每個第二特征張量表示一種相應(yīng)尺度的待處理圖像。例如,每個第二特征張量是為待處理圖像的大小的N倍的特征張量。在一個示例中,N為0到1之間的實(shí)數(shù)。在該示例中,可以將第二神經(jīng)網(wǎng)絡(luò)(脖子網(wǎng)絡(luò))所生成的第二特征張量看作是以任何尺度縮放的待處理圖像。在一個示例中,N也可以等于1,即第二特征張量也包括未經(jīng)任何尺度變換的待處理圖像本身,或者說在生成的多個第二特征張量中存在一個與第一特征張量完全相同的第二特征張量。基于第二神經(jīng)網(wǎng)絡(luò)所生成的多尺度特征張量,可在不需要圖片金字塔的情況下實(shí)現(xiàn)多尺度的物體分割,即對同一圖像的不同尺度的物體實(shí)例進(jìn)行分割。
在一個示例中,第二神經(jīng)網(wǎng)絡(luò)(脖子網(wǎng)絡(luò))可以包括至少兩個子網(wǎng)絡(luò),每個子網(wǎng)絡(luò)可以生成一種尺度的待處理圖像。例如,第一子網(wǎng)絡(luò)可以生成待處理圖像的二分之一大小的特征張量,第二子網(wǎng)絡(luò)可以生成第一特征張量的待處理圖像大小的特征張量,第三子網(wǎng)絡(luò)可以生成待處理圖像的八分之一大小的特征張量等等。在其他示例中,第二神經(jīng)網(wǎng)絡(luò)(脖子網(wǎng)絡(luò))所包括的子網(wǎng)絡(luò)可以生成任何期望尺度的待處理圖像。雖然在圖3中將第二神經(jīng)網(wǎng)絡(luò)(脖子網(wǎng)絡(luò))示出為包括3個子網(wǎng)絡(luò),但其僅是示例性的,第二神經(jīng)網(wǎng)絡(luò)(脖子網(wǎng)絡(luò))可以根據(jù)需要包括任意數(shù)目的子網(wǎng)絡(luò)。
在一個示例中,第二神經(jīng)網(wǎng)絡(luò)(脖子網(wǎng)絡(luò))所包括的子網(wǎng)絡(luò)之間可以是殘余連接并共享參數(shù)的,后一個子網(wǎng)絡(luò)基于前一個子網(wǎng)絡(luò)的輸出生成另一種尺度的所述第一特征張量。示例性地,基于后一個子網(wǎng)絡(luò)生成的第二特征張量的尺度小于基于前一個子網(wǎng)絡(luò)生成的第二特征張量的尺度。例如,在上一個示例中,第一子網(wǎng)絡(luò)可以生成待處理圖像的二分之一大小的特征張量,第二子網(wǎng)絡(luò)可以基于第一子網(wǎng)絡(luò)的輸出生成待處理圖像的四分之一大小的特征張量,第三子網(wǎng)絡(luò)可以基于第二子網(wǎng)絡(luò)的輸出生成待處理圖像的八分之一大小的特征張量等。這樣使得每個子網(wǎng)絡(luò)可通過相同或相似的結(jié)構(gòu)實(shí)現(xiàn)相同或相似的操作,結(jié)構(gòu)簡單,易于實(shí)現(xiàn)。
圖4示出了根據(jù)本發(fā)明實(shí)施例的第二神經(jīng)網(wǎng)絡(luò)(脖子網(wǎng)絡(luò))所包括的一個子網(wǎng)絡(luò)的示例性結(jié)構(gòu)示意圖。如圖4所示,根據(jù)本發(fā)明實(shí)施例的第二神經(jīng)網(wǎng)絡(luò)(脖子網(wǎng)絡(luò))所包括的一個子網(wǎng)絡(luò)可以包括卷積層和池化層,第一神經(jīng)網(wǎng)絡(luò)(身體網(wǎng)絡(luò))所生成的第一特征張量輸入到3×3卷積層中和池化層1中,3×3卷積層的輸出再輸入到1×1卷積層中,1×1卷積層的輸出輸入到池化層2中,池化層1和池化層2的輸出再經(jīng)組合生成第二特征張量。雖然在圖4中將卷積層示出為3×3卷積層和1×1卷積層,但其僅是示例性的,還可以采用其他尺度的卷積層。此外,圖4所示出的子網(wǎng)絡(luò)僅是一個示例,第二神經(jīng)網(wǎng)絡(luò)(脖子網(wǎng)絡(luò))所包括的子網(wǎng)絡(luò)也可以是其他任何合適的可以生成不同尺度特征張量的結(jié)構(gòu)。
現(xiàn)在回到圖2繼續(xù)描述根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法200的步驟。
在步驟S240,通過第三神經(jīng)網(wǎng)絡(luò)對所述多個第二特征張量進(jìn)行處理以實(shí)現(xiàn)對所述待處理圖像的實(shí)例分割。
在一個實(shí)施例中,第三神經(jīng)網(wǎng)絡(luò)可以為實(shí)例分割網(wǎng)絡(luò)架構(gòu)中的頭部網(wǎng)絡(luò)(如圖3的示意圖中所示的),例如Deepmask的網(wǎng)絡(luò)架構(gòu)中的頭部網(wǎng)絡(luò),其例如可以包括滑動窗口和全連接層。頭部網(wǎng)絡(luò)的結(jié)構(gòu)為本領(lǐng)域普通技術(shù)人員所已知的,因此為了簡潔,此處不再贅述。此處,將第三神經(jīng)網(wǎng)絡(luò)(頭部網(wǎng)絡(luò))稱為第三神經(jīng)網(wǎng)絡(luò)也僅為了與前面描述的第一神經(jīng)網(wǎng)絡(luò)(身體網(wǎng)絡(luò))、第二神經(jīng)網(wǎng)絡(luò)(脖子網(wǎng)絡(luò))等相區(qū)別,并不起到任何限定作用。
基于在步驟S230所生成的第二特征張量,通過第三神經(jīng)網(wǎng)絡(luò)(頭部網(wǎng)絡(luò))生成待處理圖像的實(shí)例分割。在一個示例中,通過第三神經(jīng)網(wǎng)絡(luò)對多個第二特征張量進(jìn)行處理以實(shí)現(xiàn)對待處理圖像的實(shí)例分割的步驟可以包括:通過所述第三神經(jīng)網(wǎng)絡(luò)的滑動窗口分別從所述多個第二特征張量中提取相應(yīng)的窗口特征張量;基于所述窗口特征張量生成所述滑動窗口中存在物體的置信度;以及基于所述置信度和所述窗口特征張量生成所述待處理圖像的實(shí)例分割。在該示例中,通過第三神經(jīng)網(wǎng)絡(luò)(頭部網(wǎng)絡(luò))的滑動窗口(如圖3的示意圖中所示的)從第二特征張量中提取窗口特征張量;基于窗口特征張量生成滑動窗口中存在物體的置信度;當(dāng)所述置信度大于預(yù)定閾值,即確定滑動窗口中存在物體時,生成物體的實(shí)例分割。
在另一個示例中,通過第三神經(jīng)網(wǎng)絡(luò)對多個第二特征張量進(jìn)行處理以實(shí)現(xiàn)對待處理圖像的實(shí)例分割的步驟可以包括:通過所述第三神經(jīng)網(wǎng)絡(luò)的滑動窗口分別從所述多個第二特征張量中提取相應(yīng)的窗口特征張量;基于每個所述窗口特征張量生成相應(yīng)的注意力矩陣和所述滑動窗口中存在物體的置信度,其中所述注意力矩陣包括相應(yīng)的所述窗口特征張量上的每一點(diǎn)位于待檢測物體所在區(qū)域內(nèi)的置信度值;將每個所述注意力矩陣廣播乘相應(yīng)的所述窗口特征張量以生成第三特征張量;以及基于所述第三特征張量以及所述滑動窗口中存在物體的置信度生成所述待處理圖像的實(shí)例分割。該示例將在下面結(jié)合圖5和圖6進(jìn)行描述。
在又一個示例中,通過第三神經(jīng)網(wǎng)絡(luò)對多個第二特征張量進(jìn)行處理以實(shí)現(xiàn)對待處理圖像的實(shí)例分割的步驟可以包括:通過所述第三神經(jīng)網(wǎng)絡(luò)的滑動窗口分別從所述多個第二特征張量中提取相應(yīng)的窗口特征張量;基于所述窗口特征張量生成所述滑動窗口中存在物體的置信度,選擇存在物體的置信度大于預(yù)定閾值的窗口特征張量作為有效窗口特征張量;基于每個所述有效窗口特征張量生成相應(yīng)的注意力矩陣,其中所述注意力矩陣包括相應(yīng)的所述有效窗口特征張量上的每一點(diǎn)位于待檢測物體所在區(qū)域內(nèi)的置信度值;將每個所述注意力矩陣廣播乘相應(yīng)的所述有效窗口特征張量以生成第三特征張量;以及基于所述第三特征張量生成所述待處理圖像的實(shí)例分割。該示例將在下面結(jié)合圖7進(jìn)行描述。
在一個示例中,第三神經(jīng)網(wǎng)絡(luò)(頭部網(wǎng)絡(luò))還可以包括上采樣層(如圖3的示意圖中所示的),所述上采樣層可用于提高所生成的實(shí)例分割結(jié)果的分辨率。
基于上面的描述,根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法200基于包括新的網(wǎng)絡(luò)組件(脖子網(wǎng)絡(luò))的新的網(wǎng)絡(luò)架構(gòu)(“身體-脖子-頭部”的網(wǎng)絡(luò)架構(gòu))同時進(jìn)行物體檢測與圖像分割,使得不需要使用圖片金字塔就能夠一次生成所有的物體分割,解決了多尺度問題,同時提高了算法的速度。
示例性地,根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法可以在具有存儲器和處理器的設(shè)備、裝置或者系統(tǒng)中實(shí)現(xiàn)。
根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法可以部署在個人終端處,諸如智能電話、平板電腦、個人計(jì)算機(jī)等。替代地,根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法還可以部署在服務(wù)器端(或云端)。替代地,根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法還可以分布地部署在服務(wù)器端(或云端)和個人終端處。
在其他實(shí)施例中,根據(jù)本發(fā)明的實(shí)例分割方法還可包括其他的操作,下面結(jié)合圖5進(jìn)行描述。
圖5示出了根據(jù)本發(fā)明另一實(shí)施例的實(shí)例分割方法500的示意性流程圖。如圖5所示,實(shí)例分割方法500可以包括如下步驟:
在步驟S510,接收待處理圖像。
在步驟S520,通過第一神經(jīng)網(wǎng)絡(luò)對所述待處理圖像進(jìn)行處理以生成第一特征張量。
在步驟S530,通過第二神經(jīng)網(wǎng)絡(luò)對所述第一特征張量進(jìn)行處理以生成不同尺度的多個第二特征張量,其中每個所述第二特征張量表示相應(yīng)尺度的所述待處理圖像。
此處,步驟S510、S520和S530分別與圖2中所描述的實(shí)例分割方法200的步驟S210、S220和S230類似,為了簡潔,此處不再贅述。
下面將描述的步驟S540到S570可以看作是步驟S240在圖5所示實(shí)施例中的具體細(xì)化,與圖2所示的實(shí)施例相比,圖5所示的實(shí)施例中增加了注意力機(jī)制,下面結(jié)合圖5和圖6詳細(xì)描述這些步驟。
在步驟S540,通過所述第三神經(jīng)網(wǎng)絡(luò)的滑動窗口分別從所述多個第二特征張量中提取相應(yīng)的窗口特征張量。
在步驟S550,基于每個所述窗口特征張量生成相應(yīng)的注意力矩陣和所述滑動窗口中存在物體的置信度,其中所述注意力矩陣包括相應(yīng)的所述窗口特征張量上的每一點(diǎn)位于待檢測物體所在區(qū)域內(nèi)的置信度值。
在步驟S560,將每個所述注意力矩陣廣播乘相應(yīng)的所述窗口特征張量以生成第三特征張量。
在步驟S570,基于所述第三特征張量以及所述滑動窗口中存在物體的置信度生成所述待處理圖像的實(shí)例分割。
在圖5所示的實(shí)施例中,可以首先通過第三神經(jīng)網(wǎng)絡(luò)(頭部網(wǎng)絡(luò))的滑動窗口從多個第二特征張量中的每個提取窗口特征張量。然后,對于每個窗口特征張量,生成滑動窗口中存在物體的置信度(如圖6所示的,可通過由全連接層構(gòu)成的置信度解碼器來生成置信度分?jǐn)?shù))。同時,對于每個窗口特征張量,可以將其輸入到一個由全連接層組成的注意力生成器中(如圖6所示的),由該注意力生成器生成注意力矩陣(如圖6所示的)。注意力矩陣可以包括窗口特征張量上的每一點(diǎn)位于待檢測物體所在區(qū)域內(nèi)的置信度值。用這個注意力矩陣對滑動窗口特征張量進(jìn)行廣播乘(broadcast product),可得到過濾噪聲后的特征張量(即第三特征張量)。該第三特征張量為將第一神經(jīng)網(wǎng)絡(luò)(身體網(wǎng)絡(luò))所生成的特征張量(第一特征張量)經(jīng)由第二神經(jīng)網(wǎng)絡(luò)(脖子網(wǎng)絡(luò))變?yōu)槎喑叨?第二特征張量)后、再經(jīng)由增加注意力機(jī)制的第三神經(jīng)網(wǎng)絡(luò)(頭部網(wǎng)絡(luò))生成的新的特征張量,為了與前述第一特征張量、第二特征張量相區(qū)別,稱其為第三特征張量,“第三”同樣不起到任何限定作用。
如上所述,第三特征張量為去掉了背景以及待檢測物體以外的物體產(chǎn)生的噪聲的特征張量,因此有助于第三神經(jīng)網(wǎng)絡(luò)生成更準(zhǔn)確的實(shí)例分割?;谠摰谌卣鲝埩恳约盎瑒哟翱谥写嬖谖矬w的置信度可生成待處理圖像的實(shí)例分割。如圖6中所示的,通過由全連接層構(gòu)成的掩碼解碼器生成最終的掩碼分?jǐn)?shù)張量(mask score map),與最右側(cè)的相對應(yīng)的圖片小塊相比,可知最終的實(shí)例分割非常精確。
基于上面的描述,根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法500基于包括新的網(wǎng)絡(luò)組件(脖子網(wǎng)絡(luò))的新的網(wǎng)絡(luò)架構(gòu)(“身體-脖子-頭部”的網(wǎng)絡(luò)架構(gòu))同時進(jìn)行物體檢測與圖像分割,使得不需要使用圖片金字塔就能夠一次生成所有的物體分割,解決了多尺度問題,同時提高了算法的速度。此外,在本發(fā)明的一個具體實(shí)現(xiàn)方式中,實(shí)例分割方法500通過增加注意力機(jī)制可以消除物體周圍的背景以及物體與物體之間的噪聲,從而在物體十分擁擠的圖片上也依然可以實(shí)現(xiàn)精確的實(shí)例分割。
此外,也可以將S550到S570的步驟稍作改動,形成另一種實(shí)施方式,下面結(jié)合圖7描述該實(shí)施方式。
圖7示出了根據(jù)本發(fā)明又一實(shí)施例的實(shí)例分割方法700的示意性流程圖。如圖7所示,實(shí)例分割方法700可以包括如下步驟:
在步驟S710,接收待處理圖像。
在步驟S720,通過第一神經(jīng)網(wǎng)絡(luò)對所述待處理圖像進(jìn)行處理以生成第一特征張量。
在步驟S730,通過第二神經(jīng)網(wǎng)絡(luò)對所述第一特征張量進(jìn)行處理以生成不同尺度的多個第二特征張量,其中每個所述第二特征張量表示相應(yīng)尺度的所述待處理圖像。
此處,步驟S710、S720和S730分別與圖2中所描述的實(shí)例分割方法200的步驟S210(或S510)、S220(或S520)和S230(或S530)類似,為了簡潔,此處不再贅述。
下面將描述的步驟S740到S780可以看做是步驟S240在圖7所示實(shí)施例中的具體細(xì)化,與圖2所示的實(shí)施例相比,圖7所示的實(shí)施例中增加了注意力機(jī)制,下面結(jié)合圖7詳細(xì)描述這些步驟。
在步驟S740,通過所述第三神經(jīng)網(wǎng)絡(luò)的滑動窗口分別從所述多個第二特征張量中提取相應(yīng)的窗口特征張量。
在步驟S750,基于所述窗口特征張量生成所述滑動窗口中存在物體的置信度,選擇存在物體的置信度大于預(yù)定閾值的窗口特征張量作為有效窗口特征張量。
在步驟S760,基于每個所述有效窗口特征張量生成相應(yīng)的注意力矩陣,其中所述注意力矩陣包括相應(yīng)的所述有效窗口特征張量上的每一點(diǎn)位于待檢測物體所在區(qū)域內(nèi)的置信度值。
在步驟S770,將每個所述注意力矩陣廣播乘相應(yīng)的所述有效窗口特征張量以生成第三特征張量。
在步驟S780,基于所述第三特征張量生成所述待處理圖像的實(shí)例分割。
在圖7所示的實(shí)施例中,基于從多個第二特征張量中提取的相應(yīng)的窗口特征張量,可以首先確定這些窗口特征張量中的有效窗口特征張量。示例性地,有效窗口特征張量可以定義為窗口特征張量中存在物體的置信度大于預(yù)定閾值的窗口特征張量。在一個示例中,可以基于所述窗口特征張量生成所述滑動窗口中存在物體的置信度,并且選擇置信度大于預(yù)定閾值的窗口特征張量作為有效窗口特征張量以用于生成注意力矩陣。然后,將注意力矩陣與有效窗口特征張量進(jìn)行廣播乘來生成第三特征張量,最后基于第三特征張量生成待處理圖像的示例分割。在該實(shí)施例中,先確定滑動窗口中是否存在物體,可去除不存在物體的情況,減小運(yùn)算量,提高運(yùn)算速度。
基于上面的描述,根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法700基于包括新的網(wǎng)絡(luò)組件(脖子網(wǎng)絡(luò))的新的網(wǎng)絡(luò)架構(gòu)(“身體-脖子-頭部”的網(wǎng)絡(luò)架構(gòu))同時進(jìn)行物體檢測與圖像分割,使得不需要使用圖片金字塔就能夠一次生成所有的物體分割,解決了多尺度問題,同時提高了算法的速度。此外,根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法700通過增加注意力機(jī)制可以消除背景以及物體與物體之間的噪聲,從而在物體十分擁擠的圖片上也依然可以實(shí)現(xiàn)精確的實(shí)例分割。此外,根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法700先確定有效窗口張量以用于注意力矩陣的計(jì)算,可減小運(yùn)算量,提高運(yùn)算速度。
以上示例性地描述了根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法所包括的示例性步驟流程。值得注意的是,根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法可以不包括上述的步驟全部而得以實(shí)現(xiàn)。例如,根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法500(或700)可以不包括步驟S530(或S730),且后續(xù)步驟S540(或S740)中的第二特征張量由第一特征張量代替。在這樣的實(shí)施例中的實(shí)例分割方法可僅解決背景以及物體與物體之間的噪聲問題,忽略多尺度問題,即注意力機(jī)制可用在沒有脖子網(wǎng)絡(luò)的“身體-頭部”的網(wǎng)絡(luò)架構(gòu)中。
下面結(jié)合圖8描述本發(fā)明另一方面提供的實(shí)例分割裝置。圖8示出了根據(jù)本發(fā)明實(shí)施例的實(shí)例分割裝置800的示意性框圖。
如圖8所示,根據(jù)本發(fā)明實(shí)施例的實(shí)例分割裝置800包括接收模塊810、第一神經(jīng)網(wǎng)絡(luò)模塊820、第二神經(jīng)網(wǎng)絡(luò)模塊830以及第三神經(jīng)網(wǎng)絡(luò)模塊840。所述各個模塊可分別執(zhí)行上文中結(jié)合圖2、圖5和圖7描述的實(shí)例分割方法的各個步驟/功能。以下僅對實(shí)例分割裝置800的各單元的主要功能進(jìn)行描述,而省略以上已經(jīng)描述過的細(xì)節(jié)內(nèi)容。
接收模塊810用于接收待處理圖像。第一神經(jīng)網(wǎng)絡(luò)模塊820用于對所述待處理圖像進(jìn)行處理以生成第一特征張量。第二神經(jīng)網(wǎng)絡(luò)模塊830用于對所述第一特征張量進(jìn)行處理以生成不同尺度的多個第二特征張量,其中每個所述第二特征張量表示相應(yīng)尺度的所述待處理圖像。第三神經(jīng)網(wǎng)絡(luò)模塊840用于對所述多個第二特征張量進(jìn)行處理以實(shí)現(xiàn)對所述待處理圖像的實(shí)例分割。接收模塊810、第一神經(jīng)網(wǎng)絡(luò)模塊820、第二神經(jīng)網(wǎng)絡(luò)模塊830以及第三神經(jīng)網(wǎng)絡(luò)模塊840均可以由圖1所示的電子設(shè)備中的處理器102運(yùn)行存儲裝置104中存儲的程序指令來實(shí)現(xiàn)。
在一個實(shí)施例中,第一神經(jīng)網(wǎng)絡(luò)模塊820的第一神經(jīng)網(wǎng)絡(luò)可以為實(shí)例分割網(wǎng)絡(luò)架構(gòu)中的身體網(wǎng)絡(luò),例如Deepmask的網(wǎng)絡(luò)架構(gòu)中的身體網(wǎng)絡(luò),其例如可以包括經(jīng)典圖像分類深度神經(jīng)網(wǎng)絡(luò)的卷積部分。
在一個實(shí)施例中,第二神經(jīng)網(wǎng)絡(luò)模塊830的第二神經(jīng)網(wǎng)絡(luò)為本文提出的新的網(wǎng)絡(luò)組件,為了與前面描述的身體網(wǎng)絡(luò)與后面將描述的頭部網(wǎng)絡(luò)相對應(yīng),可以將第二神經(jīng)網(wǎng)絡(luò)稱為脖子網(wǎng)絡(luò)。通過該脖子網(wǎng)絡(luò),可在不需要圖片金字塔的情況下將身體網(wǎng)絡(luò)所生成的特征張量生成不同尺度的特征張量。
在一個示例中,第二神經(jīng)網(wǎng)絡(luò)模塊830的第二神經(jīng)網(wǎng)絡(luò)(脖子網(wǎng)絡(luò))可以包括至少兩個子網(wǎng)絡(luò),每個子網(wǎng)絡(luò)可以生成一種尺度的待處理圖像。例如,第一子網(wǎng)絡(luò)可以生成待處理圖像的二分之一大小的特征張量,第二子網(wǎng)絡(luò)可以生成待處理圖像的四分之一大小的特征張量,第三子網(wǎng)絡(luò)可以生成待處理圖像的八分之一大小的特征張量等等。在其他示例中,第二神經(jīng)網(wǎng)絡(luò)模塊830的第二神經(jīng)網(wǎng)絡(luò)(脖子網(wǎng)絡(luò))所包括的子網(wǎng)絡(luò)可以生成任何期望尺度的待處理圖像。
在一個示例中,第二神經(jīng)網(wǎng)絡(luò)模塊830的第二神經(jīng)網(wǎng)絡(luò)(脖子網(wǎng)絡(luò))所包括的子網(wǎng)絡(luò)之間可以是殘余連接并共享參數(shù)的,后一個子網(wǎng)絡(luò)基于前一個子網(wǎng)絡(luò)的輸出生成另一種尺度的所述第一特征張量。示例性地,基于后一個子網(wǎng)絡(luò)生成的第二特征張量的尺度小于基于前一個子網(wǎng)絡(luò)生成的第二特征張量的尺度。例如,在上一個示例中,第一子網(wǎng)絡(luò)可以生成待處理圖像的二分之一大小的特征張量,第二子網(wǎng)絡(luò)可以基于第一子網(wǎng)絡(luò)的輸出生成待處理圖像的四分之一大小的特征張量,第三子網(wǎng)絡(luò)可以基于第二子網(wǎng)絡(luò)的輸出生成待處理圖像的八分之一大小的特征張量等。這樣使得每個子網(wǎng)絡(luò)可通過相同或相似的結(jié)構(gòu)實(shí)現(xiàn)相同或相似的操作,結(jié)構(gòu)簡單,易于實(shí)現(xiàn)。第二神經(jīng)網(wǎng)絡(luò)(脖子網(wǎng)絡(luò))所包括的子網(wǎng)絡(luò)可以包括卷積層和池化層,如圖4所示的。
在一個實(shí)施例中,第三神經(jīng)網(wǎng)絡(luò)模塊840的第三神經(jīng)網(wǎng)絡(luò)可以為實(shí)例分割網(wǎng)絡(luò)架構(gòu)中的頭部網(wǎng)絡(luò),例如Deepmask的網(wǎng)絡(luò)架構(gòu)中的頭部網(wǎng)絡(luò),其例如可以包括滑動窗口和全連接層。
在一個實(shí)施例中,第三神經(jīng)網(wǎng)絡(luò)模塊840可進(jìn)一步用于:通過所述第三神經(jīng)網(wǎng)絡(luò)的滑動窗口分別從所述多個第二特征張量中提取相應(yīng)的窗口特征張量;基于所述窗口特征張量生成所述滑動窗口中存在物體的置信度;以及基于所述置信度和所述窗口特征張量生成所述待處理圖像的實(shí)例分割。
在另一個實(shí)施例中,第三神經(jīng)網(wǎng)絡(luò)模塊840還可以用于:通過所述第三神經(jīng)網(wǎng)絡(luò)的滑動窗口分別從所述多個第二特征張量中提取相應(yīng)的窗口特征張量;基于每個所述窗口特征張量生成相應(yīng)的注意力矩陣和所述滑動窗口中存在物體的置信度,其中所述注意力矩陣包括相應(yīng)的所述窗口特征張量上的每一點(diǎn)位于待檢測物體所在區(qū)域內(nèi)的置信度值;將每個所述注意力矩陣廣播乘相應(yīng)的所述窗口特征張量以生成第三特征張量;以及基于所述第三特征張量以及所述滑動窗口中存在物體的置信度生成所述待處理圖像的實(shí)例分割。在該實(shí)施例中,第三神經(jīng)網(wǎng)絡(luò)模塊840的操作可以參考上文中結(jié)合圖5和圖6所描述的,為了簡潔,此處不再贅述。在該實(shí)施例中,第三神經(jīng)網(wǎng)絡(luò)模塊可包括由全連接層組成的注意力生成器,所述注意力矩陣通過所述注意力生成器而生成。
在又一個實(shí)施例中,第三神經(jīng)網(wǎng)絡(luò)模塊840還可以用于:通過所述第三神經(jīng)網(wǎng)絡(luò)的滑動窗口分別從所述多個第二特征張量中提取相應(yīng)的窗口特征張量;基于所述窗口特征張量生成所述滑動窗口中存在物體的置信度,選擇存在物體的置信度大于預(yù)定閾值的窗口特征張量作為有效窗口特征張量;基于每個所述有效窗口特征張量生成相應(yīng)的注意力矩陣,其中所述注意力矩陣包括相應(yīng)的所述有效窗口特征張量上的每一點(diǎn)位于待檢測物體所在區(qū)域內(nèi)的置信度值;將每個所述注意力矩陣廣播乘相應(yīng)的所述有效窗口特征張量以生成第三特征張量;以及基于所述第三特征張量生成所述待處理圖像的實(shí)例分割。在該實(shí)施例中,第三神經(jīng)網(wǎng)絡(luò)模塊840的操作可以參考上文中結(jié)合圖7所描述的,為了簡潔,此處不再贅述。在該實(shí)施例中,第三神經(jīng)網(wǎng)絡(luò)模塊可包括由全連接層組成的注意力生成器,所述注意力矩陣通過所述注意力生成器而生成。
在一個實(shí)施例中,第三神經(jīng)網(wǎng)絡(luò)模塊840的第三神經(jīng)網(wǎng)絡(luò)(頭部網(wǎng)絡(luò))還可以包括上采樣層,所述上采樣層可用于提高所生成的實(shí)例分割結(jié)果的分辨率。
基于上面的描述,根據(jù)本發(fā)明實(shí)施例的實(shí)例分割裝置基于包括新的網(wǎng)絡(luò)組件(脖子網(wǎng)絡(luò))的新的網(wǎng)絡(luò)架構(gòu)(“身體-脖子-頭部”的網(wǎng)絡(luò)架構(gòu))同時進(jìn)行物體檢測與圖像分割,使得不需要使用圖片金字塔就能夠一次生成所有的物體分割,解決了多尺度問題,同時提高了算法的速度。此外,根據(jù)本發(fā)明實(shí)施例的實(shí)例分割裝置通過增加注意力機(jī)制可以消除背景以及物體與物體之間的噪聲,從而在物體十分擁擠的圖片上也依然可以實(shí)現(xiàn)精確的實(shí)例分割。
圖9示出了根據(jù)本發(fā)明實(shí)施例的實(shí)例分割系統(tǒng)900的示意性框圖。實(shí)例分割系統(tǒng)900包括存儲裝置910以及處理器920。
其中,存儲裝置910存儲用于實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法中的相應(yīng)步驟的程序代碼。處理器920用于運(yùn)行存儲裝置910中存儲的程序代碼,以執(zhí)行根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法的相應(yīng)步驟,并且用于實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的實(shí)例分割裝置中的相應(yīng)模塊。此外,實(shí)例分割系統(tǒng)900還可以包括圖像采集裝置(未在圖8中示出),其可以用于采集待處理圖像。當(dāng)然,圖像采集裝置不是必需的,可直接接收來自其他源的待處理圖像。
在一個實(shí)施例中,在所述程序代碼被處理器920運(yùn)行時使得實(shí)例分割系統(tǒng)900執(zhí)行以下步驟:接收待處理圖像;通過第一神經(jīng)網(wǎng)絡(luò)對所述待處理圖像進(jìn)行處理以生成第一特征張量;通過第二神經(jīng)網(wǎng)絡(luò)對所述第一特征張量進(jìn)行處理以生成不同尺度的多個第二特征張量,其中每個所述第二特征張量表示相應(yīng)尺度的所述待處理圖像;以及通過第三神經(jīng)網(wǎng)絡(luò)對所述多個第二特征張量進(jìn)行處理以實(shí)現(xiàn)對所述待處理圖像的實(shí)例分割。
在一個實(shí)施例中,所述第二神經(jīng)網(wǎng)絡(luò)包括至少兩個子網(wǎng)絡(luò),每個子網(wǎng)絡(luò)用于生成一種預(yù)定尺度的所述第二特征張量。
在一個實(shí)施例中,所述子網(wǎng)絡(luò)之間是殘余連接并共享參數(shù)的,后一個子網(wǎng)絡(luò)基于前一個子網(wǎng)絡(luò)的輸出生成另一種預(yù)定尺度的所述第二特征張量。
在一個實(shí)施例中,基于所述后一個子網(wǎng)絡(luò)生成的第二特征張量的尺度小于基于所述前一個子網(wǎng)絡(luò)生成的第二特征張量的尺度。
在一個實(shí)施例中,所述子網(wǎng)絡(luò)包括卷積層和池化層。
在一個實(shí)施例中,在所述程序代碼被處理器920運(yùn)行時使得實(shí)例分割系統(tǒng)900執(zhí)行的所述通過第三神經(jīng)網(wǎng)絡(luò)對所述多個第二特征張量進(jìn)行處理以實(shí)現(xiàn)對所述待處理圖像的實(shí)例分割的步驟包括:通過所述第三神經(jīng)網(wǎng)絡(luò)的滑動窗口分別從所述多個第二特征張量中提取相應(yīng)的窗口特征張量;基于所述窗口特征張量生成所述滑動窗口中存在物體的置信度;以及基于所述置信度和所述窗口特征張量生成所述待處理圖像的實(shí)例分割。
在一個實(shí)施例中,在所述程序代碼被處理器920運(yùn)行時使得實(shí)例分割系統(tǒng)900執(zhí)行的所述通過第三神經(jīng)網(wǎng)絡(luò)對所述多個第二特征張量進(jìn)行處理以實(shí)現(xiàn)對所述待處理圖像的實(shí)例分割的步驟包括:通過所述第三神經(jīng)網(wǎng)絡(luò)的滑動窗口分別從所述多個第二特征張量中提取相應(yīng)的窗口特征張量;基于所述窗口特征張量生成所述滑動窗口中存在物體的置信度,選擇存在物體的置信度大于預(yù)定閾值的窗口特征張量作為有效窗口特征張量;基于每個所述有效窗口特征張量生成相應(yīng)的注意力矩陣,其中所述注意力矩陣包括相應(yīng)的所述有效窗口特征張量上的每一點(diǎn)位于待檢測物體所在區(qū)域內(nèi)的置信度值;將每個所述注意力矩陣廣播乘相應(yīng)的所述有效窗口特征張量以生成第三特征張量;以及基于所述第三特征張量生成所述待處理圖像的實(shí)例分割。
在一個實(shí)施例中,在所述程序代碼被處理器920運(yùn)行時使得實(shí)例分割系統(tǒng)900執(zhí)行的所述通過第三神經(jīng)網(wǎng)絡(luò)對所述多個第二特征張量進(jìn)行處理以實(shí)現(xiàn)對所述待處理圖像的實(shí)例分割的步驟包括:通過所述第三神經(jīng)網(wǎng)絡(luò)的滑動窗口分別從所述多個第二特征張量中提取相應(yīng)的窗口特征張量;基于每個所述窗口特征張量生成相應(yīng)的注意力矩陣和所述滑動窗口中存在物體的置信度,其中所述注意力矩陣包括相應(yīng)的所述窗口特征張量上的每一點(diǎn)位于待檢測物體所在區(qū)域內(nèi)的置信度值;將每個所述注意力矩陣廣播乘相應(yīng)的所述窗口特征張量以生成第三特征張量;以及基于所述第三特征張量以及所述滑動窗口中存在物體的置信度生成所述待處理圖像的實(shí)例分割。
在一個實(shí)施例中,所述注意力矩陣通過由全連接層組成的注意力生成器而生成。
在一個實(shí)施例中,所述第三神經(jīng)網(wǎng)絡(luò)中還包括上采樣層,所述上采樣層用于提高所生成的實(shí)例分割結(jié)果的分辨率。
此外,根據(jù)本發(fā)明實(shí)施例,還提供了一種存儲介質(zhì),在所述存儲介質(zhì)上存儲了程序指令,在所述程序指令被計(jì)算機(jī)或處理器運(yùn)行時用于執(zhí)行本發(fā)明實(shí)施例的實(shí)例分割方法的相應(yīng)步驟,并且用于實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的實(shí)例分割裝置中的相應(yīng)模塊。所述存儲介質(zhì)例如可以包括智能電話的存儲卡、平板電腦的存儲部件、個人計(jì)算機(jī)的硬盤、只讀存儲器(ROM)、可擦除可編程只讀存儲器(EPROM)、便攜式緊致盤只讀存儲器(CD-ROM)、USB存儲器、或者上述存儲介質(zhì)的任意組合。所述計(jì)算機(jī)可讀存儲介質(zhì)可以是一個或多個計(jì)算機(jī)可讀存儲介質(zhì)的任意組合,例如一個計(jì)算機(jī)可讀存儲介質(zhì)包含接收待處理圖像的計(jì)算機(jī)可讀的程序代碼,另一個計(jì)算機(jī)可讀存儲介質(zhì)包含通過第一神經(jīng)網(wǎng)絡(luò)生成第一特征張量的計(jì)算機(jī)可讀的程序代碼,再一個計(jì)算機(jī)可讀存儲介質(zhì)包含通過第二神經(jīng)網(wǎng)絡(luò)生成第二特征張量的計(jì)算機(jī)可讀的程序代碼,又一個計(jì)算機(jī)可讀存儲介質(zhì)包含通過第三神經(jīng)網(wǎng)絡(luò)生成待處理圖像的實(shí)例分割的計(jì)算機(jī)可讀的程序代碼。
在一個實(shí)施例中,所述計(jì)算機(jī)程序指令在被計(jì)算機(jī)運(yùn)行時可以實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的實(shí)例分割裝置的各個功能模塊,并且/或者可以執(zhí)行根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法。
在一個實(shí)施例中,所述計(jì)算機(jī)程序指令在被計(jì)算機(jī)或處理器運(yùn)行時使計(jì)算機(jī)或處理器執(zhí)行以下步驟:接收待處理圖像;通過第一神經(jīng)網(wǎng)絡(luò)對所述待處理圖像進(jìn)行處理以生成第一特征張量;通過第二神經(jīng)網(wǎng)絡(luò)對所述第一特征張量進(jìn)行處理以生成不同尺度的多個第二特征張量,其中每個所述第二特征張量表示相應(yīng)尺度的所述待處理圖像;以及通過第三神經(jīng)網(wǎng)絡(luò)對所述多個第二特征張量進(jìn)行處理以實(shí)現(xiàn)對所述待處理圖像的實(shí)例分割。
在一個實(shí)施例中,所述第二神經(jīng)網(wǎng)絡(luò)包括至少兩個子網(wǎng)絡(luò),每個子網(wǎng)絡(luò)用于生成一種預(yù)定尺度的所述第二特征張量。
在一個實(shí)施例中,所述子網(wǎng)絡(luò)之間是殘余連接并共享參數(shù)的,后一個子網(wǎng)絡(luò)基于前一個子網(wǎng)絡(luò)的輸出生成另一種預(yù)定尺度的所述第二特征張量。
在一個實(shí)施例中,基于所述后一個子網(wǎng)絡(luò)生成的第二特征張量的尺度小于基于所述前一個子網(wǎng)絡(luò)生成的第二特征張量的尺度。
在一個實(shí)施例中,所述子網(wǎng)絡(luò)包括卷積層和池化層。
在一個實(shí)施例中,所述計(jì)算機(jī)程序指令在被計(jì)算機(jī)或處理器運(yùn)行時使計(jì)算機(jī)或處理器執(zhí)行的所述通過第三神經(jīng)網(wǎng)絡(luò)對所述多個第二特征張量進(jìn)行處理以實(shí)現(xiàn)對所述待處理圖像的實(shí)例分割的步驟包括:通過所述第三神經(jīng)網(wǎng)絡(luò)的滑動窗口分別從所述多個第二特征張量中提取相應(yīng)的窗口特征張量;基于所述窗口特征張量生成所述滑動窗口中存在物體的置信度;以及基于所述置信度和所述窗口特征張量生成所述待處理圖像的實(shí)例分割。
在一個實(shí)施例中,所述計(jì)算機(jī)程序指令在被計(jì)算機(jī)或處理器運(yùn)行時使計(jì)算機(jī)或處理器執(zhí)行的所述通過第三神經(jīng)網(wǎng)絡(luò)對所述多個第二特征張量進(jìn)行處理以實(shí)現(xiàn)對所述待處理圖像的實(shí)例分割的步驟包括:通過所述第三神經(jīng)網(wǎng)絡(luò)的滑動窗口分別從所述多個第二特征張量中提取相應(yīng)的窗口特征張量;基于所述窗口特征張量生成所述滑動窗口中存在物體的置信度,選擇存在物體的置信度大于預(yù)定閾值的窗口特征張量作為有效窗口特征張量;基于每個所述有效窗口特征張量生成相應(yīng)的注意力矩陣,其中所述注意力矩陣包括相應(yīng)的所述有效窗口特征張量上的每一點(diǎn)位于待檢測物體所在區(qū)域內(nèi)的置信度值;將每個所述注意力矩陣廣播乘相應(yīng)的所述有效窗口特征張量以生成第三特征張量;以及基于所述第三特征張量生成所述待處理圖像的實(shí)例分割。
在一個實(shí)施例中,所述計(jì)算機(jī)程序指令在被計(jì)算機(jī)或處理器運(yùn)行時使計(jì)算機(jī)或處理器執(zhí)行的所述通過第三神經(jīng)網(wǎng)絡(luò)對所述多個第二特征張量進(jìn)行處理以實(shí)現(xiàn)對所述待處理圖像的實(shí)例分割的步驟包括:通過所述第三神經(jīng)網(wǎng)絡(luò)的滑動窗口分別從所述多個第二特征張量中提取相應(yīng)的窗口特征張量;基于每個所述窗口特征張量生成相應(yīng)的注意力矩陣和所述滑動窗口中存在物體的置信度,其中所述注意力矩陣包括相應(yīng)的所述窗口特征張量上的每一點(diǎn)位于待檢測物體所在區(qū)域內(nèi)的置信度值;將每個所述注意力矩陣廣播乘相應(yīng)的所述窗口特征張量以生成第三特征張量;以及基于所述第三特征張量以及所述滑動窗口中存在物體的置信度生成所述待處理圖像的實(shí)例分割。
在一個實(shí)施例中,所述注意力矩陣通過由全連接層組成的注意力生成器而生成。
在一個實(shí)施例中,所述第三神經(jīng)網(wǎng)絡(luò)中還包括上采樣層,所述上采樣層用于提高所生成的實(shí)例分割結(jié)果的分辨率。
根據(jù)本發(fā)明實(shí)施例的實(shí)例分割裝置中的各模塊可以通過根據(jù)本發(fā)明實(shí)施例的實(shí)例分割的電子設(shè)備的處理器運(yùn)行在存儲器中存儲的計(jì)算機(jī)程序指令來實(shí)現(xiàn),或者可以在根據(jù)本發(fā)明實(shí)施例的計(jì)算機(jī)程序產(chǎn)品的計(jì)算機(jī)可讀存儲介質(zhì)中存儲的計(jì)算機(jī)指令被計(jì)算機(jī)運(yùn)行時實(shí)現(xiàn)。
根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法、裝置、系統(tǒng)以及存儲介質(zhì)基于包括新的網(wǎng)絡(luò)組件(脖子網(wǎng)絡(luò))的新的網(wǎng)絡(luò)架構(gòu)(“身體-脖子-頭部”的網(wǎng)絡(luò)架構(gòu))同時進(jìn)行物體檢測與圖像分割,使得不需要使用圖片金字塔就能夠一次生成所有的物體分割,解決了多尺度問題,同時提高了算法的速度。此外,根據(jù)本發(fā)明實(shí)施例的實(shí)例分割方法、裝置、系統(tǒng)以及存儲介質(zhì)通過增加注意力機(jī)制可以消除背景以及物體與物體之間的噪聲,從而在物體十分擁擠的圖片上也依然可以實(shí)現(xiàn)精確的實(shí)例分割。
盡管這里已經(jīng)參考附圖描述了示例實(shí)施例,應(yīng)理解上述示例實(shí)施例僅僅是示例性的,并且不意圖將本發(fā)明的范圍限制于此。本領(lǐng)域普通技術(shù)人員可以在其中進(jìn)行各種改變和修改,而不偏離本發(fā)明的范圍和精神。所有這些改變和修改意在被包括在所附權(quán)利要求所要求的本發(fā)明的范圍之內(nèi)。
本領(lǐng)域普通技術(shù)人員可以意識到,結(jié)合本文中所公開的實(shí)施例描述的各示例的單元及算法步驟,能夠以電子硬件、或者計(jì)算機(jī)軟件和電子硬件的結(jié)合來實(shí)現(xiàn)。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。專業(yè)技術(shù)人員可以對每個特定的應(yīng)用來使用不同方法來實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。
在本申請所提供的幾個實(shí)施例中,應(yīng)該理解到,所揭露的設(shè)備和方法,可以通過其它的方式實(shí)現(xiàn)。例如,以上所描述的設(shè)備實(shí)施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時可以有另外的劃分方式,例如多個單元或組件可以結(jié)合或者可以集成到另一個設(shè)備,或一些特征可以忽略,或不執(zhí)行。
在此處所提供的說明書中,說明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實(shí)施例可以在沒有這些具體細(xì)節(jié)的情況下實(shí)踐。在一些實(shí)例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對本說明書的理解。
類似地,應(yīng)當(dāng)理解,為了精簡本發(fā)明并幫助理解各個發(fā)明方面中的一個或多個,在對本發(fā)明的示例性實(shí)施例的描述中,本發(fā)明的各個特征有時被一起分組到單個實(shí)施例、圖、或者對其的描述中。然而,并不應(yīng)將該本發(fā)明的方法解釋成反映如下意圖:即所要求保護(hù)的本發(fā)明要求比在每個權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如相應(yīng)的權(quán)利要求書所反映的那樣,其發(fā)明點(diǎn)在于可以用少于某個公開的單個實(shí)施例的所有特征的特征來解決相應(yīng)的技術(shù)問題。因此,遵循具體實(shí)施方式的權(quán)利要求書由此明確地并入該具體實(shí)施方式,其中每個權(quán)利要求本身都作為本發(fā)明的單獨(dú)實(shí)施例。
本領(lǐng)域的技術(shù)人員可以理解,除了特征之間相互排斥之外,可以采用任何組合對本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設(shè)備的所有過程或單元進(jìn)行組合。除非另外明確陳述,本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來代替。
此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實(shí)施例包括其它實(shí)施例中所包括的某些特征而不是其它特征,但是不同實(shí)施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實(shí)施例。例如,在權(quán)利要求書中,所要求保護(hù)的實(shí)施例的任意之一都可以以任意的組合方式來使用。
本發(fā)明的各個部件實(shí)施例可以以硬件實(shí)現(xiàn),或者以在一個或者多個處理器上運(yùn)行的軟件模塊實(shí)現(xiàn),或者以它們的組合實(shí)現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實(shí)踐中使用微處理器或者數(shù)字信號處理器(DSP)來實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的物品分析設(shè)備中的一些模塊的一些或者全部功能。本發(fā)明還可以實(shí)現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的裝置程序(例如,計(jì)算機(jī)程序和計(jì)算機(jī)程序產(chǎn)品)。這樣的實(shí)現(xiàn)本發(fā)明的程序可以存儲在計(jì)算機(jī)可讀介質(zhì)上,或者可以具有一個或者多個信號的形式。這樣的信號可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。
應(yīng)該注意的是上述實(shí)施例對本發(fā)明進(jìn)行說明而不是對本發(fā)明進(jìn)行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計(jì)出替換實(shí)施例。在權(quán)利要求中,不應(yīng)將位于括號之間的任何參考符號構(gòu)造成對權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個”不排除存在多個這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計(jì)算機(jī)來實(shí)現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個可以是通過同一個硬件項(xiàng)來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱。
以上所述,僅為本發(fā)明的具體實(shí)施方式或?qū)唧w實(shí)施方式的說明,本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。本發(fā)明的保護(hù)范圍應(yīng)以權(quán)利要求的保護(hù)范圍為準(zhǔn)。