本發(fā)明涉及計算機視覺,具體而言,涉及一種用于機器人的圖像合成方法、裝置、設(shè)備及介質(zhì)。
背景技術(shù):
1、隨著計算機技術(shù)的發(fā)展,機器人的智能化程度越來越高,通過機器人執(zhí)行的任務(wù)多與環(huán)境的物理交互相關(guān),如開關(guān)房門、視覺引導抓取等操作,視覺傳感器捕捉到的圖像或者深度信息是機器人控制模型輸入的關(guān)鍵參數(shù)。
2、由于通過視覺傳感器捕捉到的數(shù)據(jù)量受到限制,為了獲得大量的逼真的視覺信息,一般采用如光線追蹤等顯式渲染方式進行仿真,顯式渲染的物品建模包括三維建模實體文件、色彩貼圖文件、以及法向、粗糙度等材質(zhì)紋理貼圖。
3、但是,顯式渲染為了得到良好的泛化性需要堆砌大量的模型文件,導致存儲空間消耗過大,拖慢仿真速度,仿真效率較低。
技術(shù)實現(xiàn)思路
1、本發(fā)明的目的在于,針對上述現(xiàn)有技術(shù)中的不足,提供一種用于機器人的圖像合成方法、裝置、設(shè)備及介質(zhì),以便減少顯式渲染對計算資源的消耗,提高仿真效率。
2、為實現(xiàn)上述目的,本技術(shù)實施例采用的技術(shù)方案如下:
3、第一方面,本技術(shù)實施例提供了一種用于機器人的圖像合成方法,作業(yè)機器人的作業(yè)場景包括預設(shè)靜態(tài)場景以及位于所述預設(shè)靜態(tài)場景中的目標物體,所述預設(shè)靜態(tài)場景不需要與所述作業(yè)機器人進行物理接觸,所述目標物體需要與所述作業(yè)機器人進行物理接觸,所述方法包括:
4、根據(jù)所述作業(yè)機器人上真實相機在所述預設(shè)靜態(tài)場景中的位置,采用針對所述預設(shè)靜態(tài)場景預先訓練的隱式輻射場模型,得到所述預設(shè)靜態(tài)場景的隱式渲染結(jié)果;
5、根據(jù)所述目標物體在所述預設(shè)靜態(tài)場景中的相對擺放位置,在預設(shè)仿真環(huán)境中生成所述目標物體的顯式渲染結(jié)果;
6、根據(jù)所述隱式渲染結(jié)果和所述顯式渲染結(jié)果,獲取合成圖像信息。
7、可選地,所述隱式渲染結(jié)果包括:所述作業(yè)機器人上真實相機在預設(shè)視口方向下的隱式色彩圖和隱式深度圖;
8、所述顯式渲染結(jié)果包括:與所述作業(yè)機器人上真實相機具有相同參數(shù)的虛擬相機、在所述預設(shè)視口方向下的顯式色彩圖和顯式深度圖;
9、所述根據(jù)所述隱式渲染結(jié)果和所述顯式渲染結(jié)果,獲取合成圖像信息,包括:
10、根據(jù)所述隱式色彩圖、所述隱式深度圖、所述顯式色彩圖和所述顯式深度圖,獲取所述合成圖像信息。
11、可選地,所述根據(jù)所述作業(yè)機器人上真實相機在所述預設(shè)靜態(tài)場景中的位置信息,采用針對所述預設(shè)靜態(tài)場景預先訓練的隱式輻射場模型,得到預設(shè)靜態(tài)場景的隱式渲染結(jié)果,包括:
12、獲取所述真實相機在所述預設(shè)視口方向下發(fā)射的多條光線的原點坐標和姿態(tài)角;
13、根據(jù)所述多條光線的原點坐標和姿態(tài)角,采用所述隱式輻射場模型確定所述多條光線的體密度信息和色彩信息;
14、根據(jù)所述多條光線的體密度信息和色彩信息,確定所述隱式色彩圖和所述隱式深度圖。
15、可選地,所述作業(yè)機器人包括移動底盤和機械臂,所述獲取所述真實相機在所述預設(shè)視口方向下發(fā)射的多條光線的原點坐標和姿態(tài)角,包括:
16、根據(jù)所述移動底盤的里程計和所述機械臂的正運動學方程,計算所述真實相機的相機外參;
17、根據(jù)所述真實相機的相機外參,確定所述多條光線的原點坐標和姿態(tài)角。
18、可選地,所述根據(jù)所述多條光線的體密度信息和色彩信息,確定所述隱式色彩圖和所述隱式深度圖,包括:
19、根據(jù)所述多條光線的體密度信息和色彩信息的積分,確定所述多條光線對應(yīng)像素點的隱式色彩圖;
20、根據(jù)所述多條光線的體密度信息的跳變位置,確定所述多條光線對應(yīng)像素點的隱式深度圖。
21、可選地,所述根據(jù)目標物體在所述預設(shè)靜態(tài)場景中的相對擺放位置,在預設(shè)仿真環(huán)境中生成所述目標物體的顯式渲染結(jié)果之前,所述方法還包括:
22、根據(jù)所述隱式深度圖中的深度信息,確定所述目標物體在所述預設(shè)靜態(tài)場景中的相對擺放位置。
23、可選地,所述根據(jù)目標物體在所述預設(shè)靜態(tài)場景中的相對擺放位置,在預設(shè)仿真環(huán)境中生成所述目標物體的顯式渲染結(jié)果,包括:
24、在所述預設(shè)仿真環(huán)境中生成所述預設(shè)靜態(tài)場景對應(yīng)的簡易碰撞體;
25、根據(jù)所述目標物體在所述預設(shè)靜態(tài)場景中的相對擺放位置,在所述簡易碰撞體上渲染生成所述目標物體。
26、可選地,所述根據(jù)所述隱式色彩圖、所述隱式深度圖、所述顯式色彩圖和所述顯式深度圖,獲取所述合成圖像信息,包括:
27、根據(jù)所述隱式深度圖和所述顯式深度圖中多個像素點的深度值,確定所述多個像素點的目標深度值,所述目標深度值為所述隱式深度圖中的深度值或者顯式深度圖中的深度值;
28、根據(jù)所述多個像素點的目標深度值所屬的深度圖、所述隱式色彩圖和所述顯式色彩圖中多個像素點的色彩值,確定所述多個像素點的目標色彩值,所述合成圖像信息包括:所述多個像素點的目標深度值和目標色彩值。
29、可選地,所述根據(jù)所述隱式深度圖和所述顯式深度圖中多個像素點的深度值,確定所述多個像素點的目標深度值,包括:
30、若目標像素點在所述顯式深度圖中的深度值大于或等于在所述隱式深度圖中的深度值,確定所述目標像素點的目標深度值為所述目標像素點在所述隱式深度圖中的深度值;
31、所述根據(jù)所述多個像素點的目標深度值所屬的深度圖、所述隱式色彩圖和所述顯式色彩圖中多個像素點的色彩值,確定所述多個像素點的目標色彩值,包括:
32、若所述目標像素點的目標深度值屬于所述隱式深度圖,確定所述目標像素點的目標色彩值為所述目標像素點在所述隱式色彩圖中的色彩值。
33、可選地,所述根據(jù)所述隱式深度圖和所述顯式深度圖中多個像素點的深度值,確定所述多個像素點的目標深度值,包括:
34、若目標像素點在所述顯式深度圖中的深度值小于在所述隱式深度圖中的深度值,確定所述目標像素點的目標深度值為所述目標像素點在所述顯式深度圖中的深度值;
35、所述根據(jù)所述多個像素點的目標深度值所屬的深度圖、所述隱式色彩圖和所述顯式色彩圖中多個像素點的色彩值,確定所述多個像素點的目標色彩值,包括:
36、若所述目標像素點的目標深度值屬于所述顯式深度圖,確定所述目標像素點的目標色彩值為所述目標像素點在所述顯式色彩圖中的色彩值。
37、可選地,所述根據(jù)所述隱式渲染結(jié)果和所述顯式渲染結(jié)果,獲取合成圖像信息之后,所述方法還包括:
38、根據(jù)所述合成圖像信息對所述作業(yè)機器人的視覺控制模型進行訓練;
39、將訓練得到的所述視覺控制模塊部署于所述作業(yè)機器人,以控制所述作業(yè)機器人根據(jù)所述視覺控制模塊在所述預設(shè)靜態(tài)場景中對所述目標物體進行操作。
40、第二方面,本技術(shù)實施例還提供一種用于機器人的圖像合成裝置,作業(yè)機器人的作業(yè)場景包括預設(shè)靜態(tài)場景以及位于所述預設(shè)靜態(tài)場景中的目標物體,所述預設(shè)靜態(tài)場景不需要與所述作業(yè)機器人進行物理接觸,所述目標物體需要與所述作業(yè)機器人進行物理接觸,所述裝置包括:
41、隱式渲染模塊,用于根據(jù)所述作業(yè)機器人上真實相機在所述預設(shè)靜態(tài)場景中的位置信息,采用針對所述預設(shè)靜態(tài)場景預先訓練的隱式輻射場模型,得到所述預設(shè)靜態(tài)場景的隱式渲染結(jié)果;
42、顯式渲染模塊,用于根據(jù)所述目標物體在所述預設(shè)靜態(tài)場景中的相對擺放位置,在預設(shè)仿真環(huán)境中生成所述目標物體的顯式渲染結(jié)果;
43、信息合成模塊,用于根據(jù)所述隱式渲染結(jié)果和所述顯式渲染結(jié)果,獲取合成圖像信息。
44、可選地,所述隱式渲染結(jié)果包括:所述作業(yè)機器人上真實相機在預設(shè)視口方向下的隱式色彩圖和隱式深度圖;
45、所述顯式渲染結(jié)果包括:與所述作業(yè)機器人上真實相機具有相同參數(shù)的虛擬相機、在所述預設(shè)視口方向下的顯式色彩圖和顯式深度圖;
46、所述信息合成模塊,具體用于根據(jù)所述隱式色彩圖、所述隱式深度圖、所述顯式色彩圖和所述顯式深度圖,獲取所述合成圖像信息。
47、可選地,所述隱式渲染模塊,包括:
48、光線信息獲取單元,用于獲取所述真實相機在所述預設(shè)視口方向下發(fā)射的多條光線的原點坐標和姿態(tài)角;
49、隱式輻射單元,用于根據(jù)所述多條光線的原點坐標和姿態(tài)角,采用所述隱式輻射場模型確定所述多條光線的體密度信息和色彩信息;
50、隱式信息生成單元,用于根據(jù)所述多條光線的體密度信息和色彩信息,確定所述隱式色彩圖和所述隱式深度圖。
51、可選地,所述作業(yè)機器人包括移動底盤和機械臂,所述光線信息獲取單元,具體用于根據(jù)所述移動底盤的里程計和所述機械臂的正運動學方程,計算所述真實相機的相機外參;根據(jù)所述真實相機的相機外參,確定所述多條光線的原點坐標和姿態(tài)角。
52、可選地,所述隱式信息生成單元,具體用于根據(jù)所述多條光線的體密度信息和色彩信息的積分,確定所述多條光線對應(yīng)像素點的隱式色彩圖;根據(jù)所述多條光線的體密度信息的跳變位置,確定所述多條光線對應(yīng)像素點的隱式深度圖。
53、可選地,所述顯式渲染模塊之前,所述裝置還包括:
54、擺放位置計算模塊,用于根據(jù)所述隱式深度圖中的深度信息,確定所述目標物體在所述預設(shè)靜態(tài)場景中的相對擺放位置。
55、可選地,所述顯式渲染模塊,具體用于在所述預設(shè)仿真環(huán)境中生成所述預設(shè)靜態(tài)場景對應(yīng)的簡易碰撞體;根據(jù)所述目標物體在所述預設(shè)靜態(tài)場景中的相對擺放位置,在所述簡易碰撞體上渲染生成所述目標物體。
56、可選地,所述信息合成模塊,具體用于根據(jù)所述隱式深度圖和所述顯式深度圖中多個像素點的深度值,確定所述多個像素點的目標深度值,所述目標深度值為所述隱式深度圖中的深度值或者顯式深度圖中的深度值;根據(jù)所述多個像素點的目標深度值所屬的深度圖、所述隱式色彩圖和所述顯式色彩圖中多個像素點的色彩值,確定所述多個像素點的目標色彩值,所述合成圖像信息包括:所述多個像素點的目標深度值和目標色彩值。
57、可選地,所述信息合成模塊,具體用于若目標像素點在所述顯式深度圖中的深度值大于或等于在所述隱式深度圖中的深度值,確定所述目標像素點的目標深度值為所述目標像素點在所述隱式深度圖中的深度值;若所述目標像素點的目標深度值屬于所述隱式深度圖,確定所述目標像素點的目標色彩值為所述目標像素點在所述隱式色彩圖中的色彩值。
58、可選地,所述信息合成模塊,具體用于若目標像素點在所述顯式深度圖中的深度值小于在所述隱式深度圖中的深度值,確定所述目標像素點的目標深度值為所述目標像素點在所述顯式深度圖中的深度值;若所述目標像素點的目標深度值屬于所述顯式深度圖,確定所述目標像素點的目標色彩值為所述目標像素點在所述顯式色彩圖中的色彩值。
59、可選地,所述信息合成模塊之后,所述裝置還包括:
60、模型訓練模塊,用于根據(jù)所述合成圖像信息對所述作業(yè)機器人的視覺控制模型進行訓練;
61、模型部署模塊,用于將訓練得到的所述視覺控制模塊部署于所述作業(yè)機器人,以控制所述作業(yè)機器人根據(jù)所述視覺控制模塊在所述預設(shè)靜態(tài)場景中對所述目標物體進行操作。
62、第三方面,本技術(shù)實施例還提供一種電子設(shè)備,包括:處理器、存儲介質(zhì)和總線,所述存儲介質(zhì)存儲有所述處理器可執(zhí)行的程序指令,當電子設(shè)備運行時,所述處理器與所述存儲介質(zhì)之間通過總線通信,所述處理器執(zhí)行所述程序指令,以執(zhí)行如第一方面任一項所述的用于機器人的圖像合成方法的步驟。
63、第四方面,本技術(shù)實施例還提供一種計算機可讀存儲介質(zhì),所述存儲介質(zhì)上存儲有計算機程序,所述計算機程序被處理器運行時執(zhí)行如第一方面任一項所述的用于機器人的圖像合成方法的步驟。
64、本技術(shù)的有益效果是:
65、本技術(shù)提供的用于機器人的圖像合成方法、裝置、設(shè)備及介質(zhì),通過對不需要與作業(yè)機器人進行交互的預設(shè)靜態(tài)場景進行隱式渲染得到隱式渲染結(jié)果,對需要與作業(yè)機器人進行交互的目標物體進行顯式渲染,得到顯式渲染結(jié)果,并將隱式渲染結(jié)果和顯式渲染結(jié)果進行合成,得到合成圖像信息,該方法通過結(jié)合顯式渲染和隱式渲染,將需要進行顯式渲染的內(nèi)容減少到需要與作業(yè)機器人進行交互的目標物體,減少了顯式渲染對計算資源的消耗,提高了仿真效率。