本技術(shù)實施例涉及圖像處理領(lǐng)域,尤其涉及一種圖像處理方法、深度估計模型訓(xùn)練方法和電子設(shè)備。
背景技術(shù):
1、手機(jī)等電子設(shè)備在拍攝包含拍攝主體(如人物)和背景的圖像時,對背景進(jìn)行虛化通常能夠更好地突出拍攝主體,提升圖像的顯示效果。其中,能夠?qū)Ρ尘斑M(jìn)行虛化的前提是能夠正確識別出拍攝主體與背景,而拍攝主體與背景的關(guān)鍵區(qū)別之一在于兩者的深度不同,因此可以通過計算拍攝主體的深度和背景的深度較好地區(qū)分出拍攝主體與背景。
2、單目深度估計是一種基于單個攝像頭拍攝的圖像計算深度的方法,能夠較為準(zhǔn)確的確定出拍攝主體較為簡單的場景下拍攝主體以及背景的深度。然而,在拍攝主體較為復(fù)雜時,例如在運動場景中,如拍攝主體為人物和人物手中的物體,人物和人物正在拋投的物體等,由于物體與背景融合在一起,因此一般的單目深度估計可能會將物體的深度確定為與背景相同,產(chǎn)生較大誤差。
技術(shù)實現(xiàn)思路
1、為解決上述問題,本技術(shù)實施例提供了一種圖像處理方法、深度估計模型訓(xùn)練方法和電子設(shè)備,能夠提高深度計算的正確性,進(jìn)而在正確虛化圖像的中的背景,避免圖像中的主體被虛化。
2、為了達(dá)到上述目的,本技術(shù)實施例采用如下技術(shù)方案:
3、第一方面,提供一種圖像處理方法,應(yīng)用于電子設(shè)備。電子設(shè)備采集運動場景下第一圖像和第二圖像;運動場景包括運動物體,其中,運動物體包括處于運動狀態(tài)的人物,和/或處于運動狀態(tài)除人物之外的其他物體。電子設(shè)備將采集到的第一圖像和第二圖像輸入深度估計模型,得到第一圖像的第一深度。第二圖像包括在第一圖像的采集時刻之前采集到的圖像,和/或,在第一圖像的采集時刻之后采集到的圖像。深度估計模型的輸入?yún)?shù)包括圖像序列,圖像序列包括當(dāng)前幀,以及還包括當(dāng)前幀的采集時刻之前采集到的圖像和/或當(dāng)前幀的采集時刻之后采集到的圖像。深度估計模型用于基于圖像序列中每幀圖像中運動物體的運動特征輸出當(dāng)前幀的深度。電子設(shè)備基于第一深度虛化第一圖像,得到虛化后的第一圖像;虛化后的第一圖像中運動物體未被虛化。
4、本技術(shù)中,電子設(shè)備能夠獲取圖像序列中多幀圖像(第一圖像和第二圖像)中的運動特征,并基于多幀圖像的運動特征,參照第二圖像中運動物體的深度,正確得到第一圖像中運動物體的深度,有助于運動場景中運動物體的深度識別準(zhǔn)確性,進(jìn)而對第一圖像進(jìn)行正確的虛化處理。
5、在第一方面的一種可能的實現(xiàn)方式中,電子設(shè)備在識別到人物跳躍的拍攝場景之后,連續(xù)采集多張圖像。多張圖像包括多組第一圖像和第二圖像。電子設(shè)備按照多張圖像的采集順序,依次將多組第一圖像和第二圖像輸入深度估計模型,得到多張第一圖像對應(yīng)的多個第一深度。在第一圖像包括人物跳躍的情況下,在得到第一深度之后,電子設(shè)備基于第一深度之前的至少一個第一深度,和/或,第一深度之后的至少一個第一深度,修正第一圖像中人物的深度;修正之后,第一深度像中人物的深度與第一深度之前的至少一個第一深度中人物的深度和/或第一深度之后的至少一個第一深度中人物的深度一致。在人物跳躍的拍攝場景中,電子設(shè)備可以連續(xù)采集多組第一圖像和第二圖像,并相應(yīng)的生成對應(yīng)的多個第一深度。在第一圖像包括人物跳躍的情況下,電子設(shè)備能夠基于第一圖像前面和/或后面的第一圖像修正該任務(wù)的深度。修正之后,第一圖像中人物的深度與第一圖像前面和/或后面的第一圖像中人像的深度一致。如此,能夠避免常規(guī)方法中將跳躍的任務(wù)的深度識別偏小的問題。
6、在第一方面的一種可能的實現(xiàn)方式中,第一圖像和第二圖像中的其他物體是與人物接觸并隨著人物運動的物體;或者,其他物體是人物的拋投物、投擲物中的任意一種。
7、在第一方面的一種可能的實現(xiàn)方式中,深度估計模型包括運動特征提取模塊和深度計算模塊。將第一圖像和第二圖像輸入深度估計模型,運動特征提取模塊基于第一圖像和第二圖像的圖像特征提取運動特征。運動特征是第一圖像和第二圖像構(gòu)成的圖像序列中運動物體的運動特征;深度計算模塊基于運動特征,估計第一圖像的深度并輸出第一深度。由于輸入了圖像序列,深度估計模型能夠獲取到更多的圖像信息。并且,由于提取到了圖像序列中的運動特征,進(jìn)一步有助于深度估計模型正確輸出第一圖像的深度。
8、第二方面,提供一種深度估計模型的訓(xùn)練方法。方法包括:獲取訓(xùn)練樣本。訓(xùn)練樣本包括多組訓(xùn)練圖像,一組訓(xùn)練圖像包括運動場景下第一訓(xùn)練圖像以及第二訓(xùn)練圖像。第二訓(xùn)練圖像包括在第一訓(xùn)練圖像的采集時刻之前采集到的圖像,和/或,在第一訓(xùn)練圖像的采集時刻之后采集到的圖像。運動場景包括運動物體。運動物體包括處于運動狀態(tài)的人物,和/或處于運動狀態(tài)除人物之外的其他物體。基于訓(xùn)練樣本,訓(xùn)練初始模型得到深度估計模型。其中,深度估計模型的輸入?yún)?shù)包括圖像序列,圖像序列包括當(dāng)前幀,以及還包括當(dāng)前幀的采集時刻之前采集到的圖像和/或當(dāng)前幀的采集時刻之后采集到的圖像;深度估計模型用于基于圖像序列中每幀圖像中運動物體的運動特征輸出當(dāng)前幀的深度。
9、本技術(shù)使用圖像序列(第一訓(xùn)練圖像和第二訓(xùn)練圖像)訓(xùn)練初始的深度估計模型,訓(xùn)練模型獲取到圖像序列中的運動特征,并訓(xùn)練模型基于運動特征正確輸出圖像的深度。
10、在第二方面的一種可能的實現(xiàn)方式中,電子設(shè)備基于第一損失,訓(xùn)練初始深度估計模型。具體的,電子設(shè)備計算第一損失。第一損失是至少一個第二損失和第三損失的和;其中,第二損失用于計算深度估計模型輸出的運動物體的第二估計深度與第三估計深度間的差值;其中,第二估計深度是深度估計模型輸出的第二訓(xùn)練圖像對應(yīng)的估計深度中運動物體的深度;第三估計深度是基于第一估計深度計算來的深度;第一估計深度是深度估計模型輸出的第一訓(xùn)練圖像對應(yīng)的估計深度中運動物體的深度;第三損失用于計算第一訓(xùn)練圖像中運動物體的像素的深度的一致性。電子設(shè)備基于第一損失的值,訓(xùn)練初始模型得到深度估計模型。
11、在第二方面的一種可能的實現(xiàn)方式中,基于以下公式計算第二損失和第三損失:
12、
13、
14、其中,是由深度估計模型輸出的第二訓(xùn)練圖像中運動物體中的第i個像素的深度;是由深度估計模型輸出的第一訓(xùn)練圖像中運動物體中第i個像素的深度;s2是運動物體在第二訓(xùn)練圖像中的面積;s1是運動物體在第一訓(xùn)練圖像中的面積;是由深度估計模型輸出的第一訓(xùn)練圖像中運動物體中第i+1個像素的深度,i在[1,2,……,m]中依次取值,m為大于或者等于2的整數(shù)。
15、在第二方面的一種可能的實現(xiàn)方式中,電子設(shè)備將訓(xùn)練樣本輸入光流模型,光流模型獲取第一訓(xùn)練圖像和第二訓(xùn)練圖像之間的至少一個光流,并基于至少一個光流映射第一訓(xùn)練圖像輸出至少一個第一光流圖。之后,電子設(shè)備計算第四損失,第四損失用于計算至少一個第一光流圖的深度與深度估計模型輸出的第一訓(xùn)練圖像的估計深度間的一致性。最后,電子設(shè)備基于第一損失的值和第四損失的值,訓(xùn)練初始模型得到深度估計模型。電子設(shè)備使用光流模型監(jiān)督深度估計模型的輸出,訓(xùn)練深度估計模型提取到正確的運動特征。
16、在第二方面的一種可能的實現(xiàn)方式中,電子設(shè)備基于以下公式計算第四損失:
17、第四損失=o2→1|d2→1-d1|。
18、其中,d2→1是至少一個第一光流圖對應(yīng)的深度;d1是由深度估計模型估計出來的第一訓(xùn)練圖像的估計深度;o2→1是第二訓(xùn)練圖像至第一訓(xùn)練圖像之間位置發(fā)生變動的像素構(gòu)成的有效區(qū)域。
19、在第二方面的一種可能的實現(xiàn)方式中,電子設(shè)備還會計算第五損失。第五損失用于計算深度估計模型輸出的第一圖像的估計深度與第一圖像的真實深度間差值。電子設(shè)備基于第一損失的值、第四損失的值和第五損失的值,訓(xùn)練所述初始模型得到深度估計模型。
20、第三方面,本技術(shù)提供一種電子設(shè)備,該電子設(shè)備包括:存儲器、及一個或多個處理器;所述存儲器與所述處理器耦合;其中,所述存儲器用于存儲計算機(jī)程序代碼,所述計算機(jī)程序代碼包括計算機(jī)指令;當(dāng)所述計算機(jī)指令被所述處理器執(zhí)行時,使得所述電子設(shè)備執(zhí)行如第一方面任一項所述的方法。
21、第四方面,本技術(shù)提供一種芯片系統(tǒng),該芯片系統(tǒng)可以應(yīng)用于包括存儲器的電子設(shè)備。該芯片系統(tǒng)包括一個或多個接口電路和一個或多個處理器。該接口電路和處理器通過線路互聯(lián)。該接口電路用于從上述存儲器接收信號,并向處理器發(fā)送該信號,該信號包括存儲器中存儲的計算機(jī)指令。當(dāng)處理器執(zhí)行該計算機(jī)指令時,電子設(shè)備執(zhí)行如第一方面及其任一種可能的設(shè)計方式的方法。
22、第五方面,本技術(shù)提供一種計算機(jī)可讀存儲介質(zhì),該計算機(jī)可讀存儲介質(zhì)包括計算機(jī)指令。當(dāng)計算機(jī)指令在電子設(shè)備上運行時,使得該電子設(shè)備執(zhí)行如第一方面及其任一種可能的設(shè)計方式的方法。
23、第六方面,本技術(shù)提供一種計算機(jī)程序產(chǎn)品,當(dāng)計算機(jī)程序產(chǎn)品在計算機(jī)上運行時,使得計算機(jī)執(zhí)行如第一方面及其任一種可能的設(shè)計方式的方法。
24、可以理解地,上述第三方面其任一種可能的設(shè)計方式的電子設(shè)備,第四方面的芯片系統(tǒng),第五方面的計算機(jī)可讀存儲介質(zhì),第六方面的計算機(jī)程序產(chǎn)品所能達(dá)到的有益效果,可參考如第一方面、第二方面及其任一種可能的設(shè)計方式中的有益效果,此處不再贅述。