本技術(shù)涉及終端,尤其涉及一種深度信息校正方法、電子設(shè)備及存儲介質(zhì)。
背景技術(shù):
1、三維(3dimensions,3d)傳感已經(jīng)越來越多地應(yīng)用在電子設(shè)備的各種應(yīng)用中,例如3d人臉解鎖、攝像聚焦、深度圖像采集、周圍環(huán)境探測、虛擬對象渲染等。目前通常是基于直接飛行時間測量(direct?time-of-flight,dtof)來獲取深度信息。dtof測距法的原理為基于光電探測器向被測物體發(fā)射光脈沖,并通過對發(fā)射光脈沖和反射光脈沖時間間隔的測量,直接計算目標(biāo)對象的距離,以產(chǎn)生深度信息。
2、目前,在對目標(biāo)對象進(jìn)行測距時,通常在自然環(huán)境下發(fā)射若干次數(shù)的脈沖光束以及接收發(fā)射的脈沖光束對應(yīng)的反射光束,進(jìn)而基于時間數(shù)字轉(zhuǎn)換器(time?digitalconverter,tdc)記錄發(fā)射脈沖和接收脈沖之間的時間間隔,并取出現(xiàn)頻率最高的飛行時間作為計算目標(biāo)對象深度信息的飛行時間,但是,時間數(shù)字轉(zhuǎn)換器中的單光子雪崩二極管(single?photon?avalanche?diode,spad)存在死區(qū)時間,因此會導(dǎo)致計數(shù)峰值偏移,從而影響深度信息測量的準(zhǔn)確度。
技術(shù)實(shí)現(xiàn)思路
1、本技術(shù)實(shí)施例提供一種深度信息校正方法、電子設(shè)備及存儲介質(zhì),能夠提高深度信息測量的準(zhǔn)確度。
2、第一方面,本技術(shù)實(shí)施例提供了一種深度信息校正方法,包括:響應(yīng)于深度信息的采集觸發(fā)事件,調(diào)用目標(biāo)傳感器采集目標(biāo)對象的深度信息;根據(jù)標(biāo)定曲線對采集到的深度信息進(jìn)行校正,得到校正后的深度信息。
3、在此,以下任意一個場景下可以觸發(fā)上述深度信息的采集觸發(fā)事件:鎖屏狀態(tài)下的3d人臉解鎖功能被啟動、用戶進(jìn)行拍攝時選擇背景虛化的拍攝模式、用戶使用電子設(shè)備進(jìn)行ar游戲、使用智慧眼動服務(wù)時調(diào)用tof攝像頭(或3d傳感器)來采集圖像信息、支付應(yīng)用在支付或登錄等過程中調(diào)用tof攝像頭進(jìn)行人臉識別等。
4、在此,調(diào)用目標(biāo)傳感器來采集深度信息的操作具體可以是:當(dāng)目標(biāo)傳感器為tof攝像頭時,手機(jī)可以通過攝像頭驅(qū)動來驅(qū)動tof攝像頭執(zhí)行采集深度信息的動作,當(dāng)目標(biāo)傳感器為3d傳感器時,手機(jī)可以通過傳感器驅(qū)動來驅(qū)動3d傳感器執(zhí)行采集深度信息的動作。
5、在此,上述標(biāo)定曲線可以是預(yù)先構(gòu)建且存儲在電子設(shè)備中的,用于表示peak值與因pile-up現(xiàn)象導(dǎo)致的深度信息偏差值之間的擬合關(guān)系曲線。將預(yù)先構(gòu)建好的標(biāo)定曲線存儲在電子設(shè)備中具體可以是將標(biāo)定曲線對應(yīng)的系數(shù)存儲在電子設(shè)備中。所述信號峰值為目標(biāo)傳感器獲取的光子接收事件對應(yīng)的直方圖統(tǒng)計結(jié)果的信號峰值。
6、這樣,通過在獲取深度信息后,通過在獲取直方圖統(tǒng)計結(jié)果后,根據(jù)直方圖統(tǒng)計結(jié)果的信號峰值和標(biāo)定曲線確定出對應(yīng)的深度信息偏差值,然后基于深度信息偏差值對采集到的深度信息進(jìn)行校正,由于標(biāo)定曲線是針對由于pile-up現(xiàn)象導(dǎo)致的深度信息偏差與直方圖曲線的信號峰值的關(guān)系進(jìn)行擬合而得到的關(guān)系曲線,因此,利用基于該標(biāo)定曲線確定出的深度信息偏差值對直方圖統(tǒng)計結(jié)果得到的深度信息進(jìn)行校正,就能夠有效地校正因pile-up現(xiàn)象導(dǎo)致的tdc統(tǒng)計得到的直方圖統(tǒng)計結(jié)果存在的信號峰值前移的情況,從而提高深度信息計算結(jié)果的準(zhǔn)確性,提高測距精度。
7、在一種可能的實(shí)現(xiàn)方式中,根據(jù)標(biāo)定曲線對采集到的深度信息進(jìn)行校正,得到校正后的深度信息,包括:
8、根據(jù)所述目標(biāo)傳感器的接收處理器中的像素確定與所述像素對應(yīng)的標(biāo)定曲線;
9、根據(jù)所述像素的光子接收事件對應(yīng)的直方圖統(tǒng)計結(jié)果確定信號峰值;
10、基于所述標(biāo)定曲線查找與所述信號峰值對應(yīng)的深度信息偏差值;
11、根據(jù)采集到的深度信息和深度信息偏差值計算校正后的深度信息。
12、在此,在tdc得到與計數(shù)結(jié)果對應(yīng)的直方圖統(tǒng)計結(jié)果后,就可以確定出與該直方圖統(tǒng)計結(jié)果對應(yīng)的peak值,基于標(biāo)定曲線查找出與該peak值對應(yīng)的深度信息偏差值,然后利用深度信息偏差值對直方圖統(tǒng)計結(jié)果計算得到的深度信息進(jìn)行校正,即可以得到校正后的深度信息。
13、在一種可能的實(shí)現(xiàn)方式中,所述標(biāo)定曲線為根據(jù)所述目標(biāo)接收傳感器的像素的分區(qū)對應(yīng)設(shè)置的。
14、在此,每個像素的分區(qū)設(shè)置了一條與該分區(qū)對應(yīng)的標(biāo)定曲線,該分區(qū)中的像素可以使用該標(biāo)定曲線來進(jìn)行深度信息校正。
15、在一種可能的實(shí)現(xiàn)方式中,所述根據(jù)標(biāo)定曲線對采集到的深度信息進(jìn)行校正,得到校正后的深度信息,包括:根據(jù)所述目標(biāo)傳感器的接收處理器中的像素確定所述像素的分區(qū);根據(jù)所述像素的分區(qū)確定所述標(biāo)定曲線。
16、因為不同像素之間存在不限差異,因此tdc存在不一致性,若sensor中的所有像素都使用相同的標(biāo)定曲線來進(jìn)行深度信息校正,則會照成不同像素在進(jìn)行深度信息校正后的測量準(zhǔn)確度仍會存在一定的誤差,由于同一個sensor中部分像素在相同peak值下的深度信息偏差值具有一致性,因此本技術(shù)實(shí)施例可以根據(jù)sensor中像素的深度信息偏差值的一致性情況對sensor中的像素進(jìn)行分區(qū),然后為每個分區(qū)設(shè)置一個與該分區(qū)對應(yīng)的標(biāo)定曲線,這樣在進(jìn)行深度信息校正的過程中,就可以先確定出像素所屬的分區(qū),然后根據(jù)像素所屬的分區(qū)來獲取與該分區(qū)對應(yīng)的標(biāo)定曲線,并使用與該分區(qū)對應(yīng)的標(biāo)定曲線來進(jìn)行深度信息校正,這樣能夠在提高深度信息的測量準(zhǔn)確度的同時,減少標(biāo)定過程中耗費(fèi)的時間和資源。
17、在一種可能的實(shí)現(xiàn)方式中,還包括:根據(jù)實(shí)驗數(shù)據(jù)擬合信號峰值與深度信息偏差值之間的關(guān)系曲線,得到所述標(biāo)定曲線。
18、在此,上述實(shí)驗數(shù)據(jù)可以通過將實(shí)驗所用的tof傳感器固定,并使tof傳感器平行于微距分辨率板,然后移動微距分辨率板,以采集不同距離下的直方圖數(shù)據(jù)和深度信息,然后根據(jù)采集到的不同距離下的直方圖數(shù)據(jù)和深度信息提取peak值和深度信息偏差值(tof_bias),形成上述實(shí)驗數(shù)據(jù)。
19、在一種可能的實(shí)現(xiàn)方式中,根據(jù)實(shí)驗數(shù)據(jù)擬合信號峰值與深度信息偏差值之間的關(guān)系曲線,得到所述標(biāo)定曲線,包括:基于三次曲線擬合所述信號峰值與深度信息偏差值之間的關(guān)系曲線。
20、三次曲線是一條平面代數(shù)曲線,它和一般的直線都有三個交點(diǎn)。經(jīng)過試驗,利用三次曲線來擬合peak值和深度信息偏差值的關(guān)系曲線的擬合效果最佳。
21、上述基于三次曲線擬合得到的標(biāo)定曲線的表達(dá)式為:
22、tof_bias=a*peak3+b*peak2+c*peak+d;?(1)
23、將離散的點(diǎn)代入到上述公式(1)中就可以求解出對應(yīng)的系數(shù)a、b、c、d,從而得到適用于該tof傳感器的標(biāo)定曲線。
24、在一種可能的實(shí)現(xiàn)方式中,根據(jù)實(shí)驗數(shù)據(jù)擬合信號峰值與深度信息偏差值之間的關(guān)系曲線,得到所述標(biāo)定曲線,包括:對于小于分段界點(diǎn)的信號峰值,基于三次曲線擬合所述信號峰值與深度信息偏差值之間的關(guān)系曲線;對于大于等于分段界點(diǎn)的信號峰值,基于一次曲線擬合所述信號峰值與深度信息偏差值之間的關(guān)系曲線。
25、在此,由于在進(jìn)行曲線擬合的過程中,擬合的次數(shù)越多,意味著計算更為復(fù)雜,所需要占用的計算資源就會更多,隨著peak值的增加,應(yīng)用三次曲線對peak值與深度信息偏差值的關(guān)系曲線進(jìn)行擬合的過程所需要占用的計算資源也會更多,為了節(jié)省算力,根據(jù)計算所需占用的計算資源對應(yīng)的試驗結(jié)果設(shè)置分段界點(diǎn),對于小于分段界點(diǎn)的peak值,采用三次曲線擬合peak值與深度信息偏差值的關(guān)系曲線,對于大于等于分段界點(diǎn)的peak值(即高peak值),采用一次曲線擬合peak值與深度信息偏差值的關(guān)系曲線,合并兩段曲線即得到上述標(biāo)定曲線。
26、上述基于三次曲線和一次曲線擬合得到的標(biāo)定曲線的表達(dá)式為:
27、tof_bias1=a*peak3+b*peak2+c*peak+d;tof_bias2=e*peak+f??(2)
28、將peak值小于分段界點(diǎn)的離散點(diǎn)輸入到上述第一部分的三次曲線中進(jìn)行求解,就可以求解出對應(yīng)的系數(shù)a、b、c、d,將peak值大于等于分段界點(diǎn)的離散點(diǎn)輸入到上述第二部分的一次曲線中進(jìn)行求解,就可以求解出對應(yīng)的系數(shù)e和f,從而確定出該標(biāo)定曲線對應(yīng)的所有系數(shù)。
29、在一中可能的實(shí)現(xiàn)方式中,上述根據(jù)實(shí)驗數(shù)據(jù)擬合信號峰值與深度信息偏差值之間的關(guān)系曲線,得到所述標(biāo)定曲線,包括:根據(jù)不同像素在相同信號峰值下的深度信息偏差值的一致性分布情況確定像素分區(qū);針對每個像素分區(qū),分別擬合出與分區(qū)對應(yīng)的關(guān)系曲線。
30、由于不同像素之間存在布線差異,因此無法保證tdc的一致性,因此不同像素對應(yīng)的擬合得到的標(biāo)定曲線也會存在差異,若整個sensor中所有的像素都共用同一條曲線,則會造成不同像素在進(jìn)行深度信息校正后的測量精度仍會存在差異,經(jīng)過對多個tof傳感器(模組)的sensor進(jìn)行試驗,確定同一個sensor中的部分像素的深度信息偏差值表現(xiàn)出較好的一致性,因此將深度信息偏差值分布較為一致的像素劃分在一個分區(qū)中,將sensor中的像素劃分為若干個分區(qū),同一個分區(qū)中的像素使用同一個標(biāo)定曲線進(jìn)行深度信息校正,即針對每個像素分區(qū),分別擬合出與該分區(qū)中像素對應(yīng)的關(guān)系曲線,能夠有效提高深度信息測量的準(zhǔn)確度。
31、第二方面,本技術(shù)實(shí)施例提供一種電子設(shè)備,一個或多個處理器,以及存儲器,所述存儲器與所述一個或多個處理器耦合,所述存儲器用于存儲計算機(jī)程序代碼,所述計算機(jī)程序代碼包括計算機(jī)指令,所述一個或多個處理器調(diào)用所述計算機(jī)指令以使得所述電子設(shè)備執(zhí)行如上述第一方面任一項的方法。
32、第三方面,本技術(shù)實(shí)施例提供一種計算機(jī)可讀存儲介質(zhì),所述計算機(jī)可讀存儲介質(zhì)包括指令,當(dāng)所述指令在電子設(shè)備上運(yùn)行時,使得所述電子設(shè)備執(zhí)行如上述第一方面任一項的方法。
33、第四方面,本技術(shù)實(shí)施例提供一種芯片系統(tǒng),所述芯片系統(tǒng)應(yīng)用于電子設(shè)備,所述芯片系統(tǒng)包括一個或多個處理器,所述一個或多個處理器用于調(diào)用計算機(jī)指令以使得所述電子設(shè)備執(zhí)行如第一方面任一項的方法。
34、第五方面,本技術(shù)實(shí)施例提供一種計算機(jī)程序產(chǎn)品,當(dāng)計算機(jī)程序產(chǎn)品在電子設(shè)備上運(yùn)行時,使得電子設(shè)備執(zhí)行上述第一方面任一項上述的方法。
35、可以理解的是,上述第二方面至第五方面的有益效果可以參見上述第一方面中的相關(guān)描述,在此不再贅述。