本發明涉及計算機視覺,尤其涉及一種單張圖像的三維重建方法、裝置、設備及介質。
背景技術:
1、單目深度估計作為計算機視覺領域中的一個重要技術,主要用于從單個攝像頭捕獲的二維圖像中估計出物體的三維深度信息。單目深度估計技術在三維重建和無人機避障等實際應用場景具有重大意義。
2、現有技術中,通常采用特征點匹配方法或者預先訓練的深度學習模型,確定目標對象的三維深度信息,并根據三維深度信息確定與二維圖像對應的三維重建結果。其中,深度學習模型通過大量的二維圖像及其實際深度訓練得到。
3、但是,采用特征點匹配的方法進行深度估計,在只有一張二維圖像的情況下,能夠得到無數種可能性,從而難以準確確定二維圖像的三維重建結果。其次,通過深度學習模型進行深度估計,由于尺度不確定性,例如一輛真實轎車和一輛小型模型車,在特定的拍攝角度和放大倍數下,兩者的成像效果相同至無法分辨,導致如果使用真實轎車和小型模型車的實際深度值進行訓練,模型會難以收斂或推理結果誤差很大,因此現有的深度學習模型只能輸出相對深度值。
技術實現思路
1、本發明提供了一種單張圖像的三維重建方法、裝置、設備及介質,可以實現對二維圖像上各像素點的相對深度值進行校正,提高了三維重建結果的準確性。
2、第一方面,本發明實施例提供了一種單張圖像的三維重建方法,該方法包括:獲取拍攝目標對象得到的二維圖像,并確定與二維圖像對應的相對深度圖;對二維圖像進行平面分割,得到與所分割出的目標平面對應的平面掩碼圖,并在平面掩碼圖的各前景點中選擇至少兩個目標前景點;根據與二維圖像對應的相機位姿和相機內參,確定各目標前景點的實際深度值,并根據各實際深度值,對相對深度圖中每個像素點的相對深度值進行校正,得到與二維圖像的每個像素點分別對應的校正深度值;根據各目標前景點的像素點縱坐標和校正深度值,構建得到目標函數,并根據目標函數,對二維圖像中各像素點的校正深度值或者像素點縱坐標進行修正,得到像素點修正結果;根據像素點修正結果,得到與二維圖像對應的三維重建結果。
3、可選的,根據各實際深度值,對相對深度圖中每個像素點的相對深度值進行校正,得到與二維圖像的每個像素點分別對應的校正深度值,包括:根據各目標前景點的實際深度值、各目標前景點在相對深度圖上的待校正深度值,以及二維圖像中的每個像素點在相對深度圖上的待校正深度值,得到與二維圖像的每個像素點分別對應的校正深度值。
4、可選的,根據各目標前景點的實際深度值、各目標前景點在相對深度圖上的待校正深度值,以及二維圖像中的每個像素點在相對深度圖上的待校正深度值,得到與二維圖像的每個像素點分別對應的校正深度值,包括:在各目標前景點中獲取第一目標前景點和第二目標前景點,并獲取第一目標前景點的第一實際深度值和第二目標前景點的第二實際深度值;獲取第一目標前景點在相對深度圖上的第一待校正深度值,以及第二目標前景點在相對深度圖上的第二待校正深度值;確定當前像素點在相對深度圖上的待校正深度值與第一待校正深度值之間的第一相減結果、第二實際深度值與第一實際深度值之間的第二相減結果,以及第二待校正深度值與第一待校正深度值之間的第三相減結果;確定第二相減結果與第三相減結果之間的相除結果,并根據第一相減結果與相除結果之間的相乘結果,以及第一實際深度值,確定與當前像素點對應的校正深度值。
5、可選的,根據各目標前景點的像素點縱坐標和校正深度值,構建得到目標函數,并根據目標函數,對二維圖像中各像素點的校正深度值進行修正,得到像素點修正結果,包括:根據與各目標前景點分別對應的像素點縱坐標和校正深度值,求解預設的線性函數中包括的固定參數,得到目標線性函數;根據與二維圖像對應的相機位姿和相機內參,以及與各目標前景點分別對應的像素點縱坐標和校正深度值,求解預設的非線性函數中包括的固定參數,得到目標非線性函數;其中,目標線性函數和目標非線性函數均以像素點縱坐標為自變量,校正深度值為因變量;根據二維圖像中各像素點的像素點縱坐標,基于目標線性函數計算各像素點的第一校正深度計算值,并基于目標非線性函數計算各像素點的第二校正深度計算值;根據各像素點的第一校正深度計算值、第二校正深度計算值,對各像素點的校正深度值進行修正,得到各像素點的修正深度值。
6、可選的,根據像素點修正結果,得到與二維圖像對應的三維重建結果,包括:根據各像素點的修正深度值、像素坐標、相機位姿和相機內參,確定各像素點的三維世界坐標;根據各三維世界坐標,以及各像素點在二維圖像上的顏色,確定與二維圖像對應的三維重建結果。
7、可選的,根據各目標前景點的像素點縱坐標和校正深度值,構建得到目標函數,并根據目標函數,對二維圖像中各像素點的像素點縱坐標進行修正,得到像素點修正結果,包括:根據與各目標前景點分別對應的像素點縱坐標和校正深度值,求解預設的線性函數中包括的固定參數,得到目標線性函數,并確定與目標線性函數對應的目標反函數;其中,目標反函數以像素點縱坐標為自變量,以校正深度值為因變量;將二維圖像中各像素點的校正深度值代入至目標反函數,得到各像素點的修正像素點縱坐標。
8、可選的,根據像素點修正結果,得到與二維圖像對應的三維重建結果,包括:根據各像素點的校正深度值、修正像素點縱坐標、相機位姿和相機內參,確定各像素點的三維世界坐標;根據各三維世界坐標,以及各像素點在二維圖像上的顏色,確定與二維圖像對應的三維重建結果。
9、第二方面,本發明實施例還提供了一種單張圖像的三維重建裝置,該裝置包括:相對深度圖確定模塊,用于獲取拍攝目標對象得到的二維圖像,并確定與二維圖像對應的相對深度圖;目標前景點確定模塊,用于對二維圖像進行平面分割,得到與所分割出的目標平面對應的平面掩碼圖,并在平面掩碼圖的各前景點中選擇至少兩個目標前景點;校正深度值確定模塊,用于根據與二維圖像對應的相機位姿和相機內參,確定各目標前景點的實際深度值,并根據各實際深度值,對相對深度圖中每個像素點的相對深度值進行校正,得到與二維圖像的每個像素點分別對應的校正深度值;修正結果確定模塊,用于根據各目標前景點的像素點縱坐標和校正深度值,構建得到目標函數,并根據目標函數,對二維圖像中各像素點的校正深度值或者像素點縱坐標進行修正,得到像素點修正結果;三維重建模塊,用于根據像素點修正結果,得到與二維圖像對應的三維重建結果。
10、第三方面,本發明實施例還提供了一種電子設備,該電子設備包括:至少一個處理器;以及與至少一個處理器通信連接的存儲器;其中,存儲器存儲有可被至少一個處理器執行的計算機程序,計算機程序被至少一個處理器執行,以使至少一個處理器能夠執行本發明任一實施例提供的單張圖像的三維重建方法。
11、第四方面,本發明實施例還提供了一種計算機可讀存儲介質,計算機可讀存儲介質存儲有計算機指令,計算機指令用于使處理器執行時實現本發明任一實施例的單張圖像的三維重建方法。
12、本發明實施例的技術方案,通過各目標前景點的實際深度值和目標函數對各像素點的相對深度值進行校正,解決了現有技術直接根據相對深度值進行三維重建,導致三維重建結果不準確的問題,可以實現對二維圖像上各像素點的相對深度值進行校正,提高了三維重建結果的準確性。
13、應當理解,本部分所描述的內容并非旨在標識本發明的實施例的關鍵或重要特征,也不用于限制本發明的范圍。本發明的其它特征將通過以下的說明書而變得容易理解。