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