跳至主要内容

模擬環境與 SDG 生成

實體錄製的主要成本為人力:單次示範約需數十秒,而達成穩定訓練結果所需的集數可達數十次,其間尚須進行工件復位與問題集數的重錄。

模擬環境針對此一成本結構提供替代方案:操作者完成一次示範後,平台自動生成整批帶有變化的訓練資料。

備註

定位說明 模擬環境並非實體錄製的替代方案。兩條路線產出的資料集格式相同,最終匯入同一條訓練主線,實務上多數導入案例會同時採用。

一、硬體需求​

硬體是否需要
相機不需要,影像由模擬環境算繪
Leader Arm(操作端)需要
Follower Arm(執行端)不需要,該端為虛擬

模擬環境所省去者為 Follower Arm 與實體相機。示範動作仍須由操作者帶動實體 Leader Arm 完成,模擬環境將執行端與影像來源一併置換為虛擬。

模擬資料中的影像全數由模擬環境算繪,為固定的兩路配置——Wrist Camera(手腕)與 Top Camera(俯瞰),與實體錄製的建議配置一致。此部分已預先設定,無須自行擺位或命名;實體相機是否接上,均不影響模擬資料的內容,模擬頁的硬體就緒檢查亦不檢查相機。

警告

首次使用前須先建置環境 模擬環境不隨安裝流程佈署,首次使用前須取得原始碼並建置容器映像檔,步驟詳見選配:模擬環境建置。

二、虛實對齊:輔助計算偏移量​

進入模擬環境後的第一項作業,為使虛擬 Follower 對齊實體 Leader。

必要性​

操作者所帶動者為實體 Leader Arm,畫面中同步動作者為虛擬手臂。兩者的物理基礎不同:實體手臂具有組裝公差與安裝基準的差異,虛擬手臂則為依模型檔建構的理想幾何。因此即使兩者均處於正確狀態,同一姿勢所對應的關節角度讀值仍不會完全相同,此一差值即為偏移量。

警告

與手臂校準的區別 手臂校準的目的為使實體手臂的讀值對應物理現實,屬硬體設定的基礎作業;輔助計算偏移量的目的則為使虛擬 Follower 對齊實體 Leader,僅在使用模擬環境時適用。

操作步驟​

功能位於模擬環境設定的「輔助計算偏移量」分頁,流程為準備姿勢、計算差值、確認差值三個步驟。

步驟一:準備零點位置。 將 Leader 手臂移動至零點位置,並於後續 10 秒內保持靜止。畫面提示為「確認雙臂到位並靜止後,按『下一步』或靜止 3 秒後開始計算」。

步驟二:計算差值。 系統於 10 秒內持續讀取兩臂的關節角度差值,取平均值作為偏移量,畫面即時顯示已取樣筆數與剩餘秒數。由於採計平均值,取樣期間手臂須保持靜止;若手仍扶持手臂或手臂因重力下沉,讀值將持續飄移,所得平均值不對應任何實際姿勢。

步驟三:確認差值。 畫面列出 joint1 至 joint5 五個關節的計算結果,各列包含「計算值(平均)」與「微調後差值」兩欄,後者為可編輯欄位並預先填入計算值。確認後點選「將此差值寫入設定檔」。若需重新計算可點選「重新錄製」;「還原」則將手動微調的部分退回計算值。

確認計算結果

一般情況下無須修改「微調後差值」,直接沿用計算值即可。該欄位開放編輯是為了處理目視驗收時仍存在殘餘偏差的情況,屬例外處理而非常規步驟。

驗收方式​

寫入設定檔後,帶動實體 Leader 並觀察畫面中的虛擬手臂,兩者的姿勢應呈現一致。若虛擬手臂持續偏離一固定角度,代表本步驟未正確完成,須重新執行。此一目視確認決定了後續所有模擬資料的正確性。

三、模擬環境設定​

環境設定的分頁除偏移量計算外,尚包含以下四項:

分頁設定內容
方塊目標物件的位置隨機範圍(x/y/z/z 旋轉)
盒子容器的位置與姿態隨機範圍(x/y/z/三軸旋轉)
俯視攝影機相機的位置與旋轉,以及各軸的隨機範圍
機械手臂各關節的偏移量,欄位依機型而異

隨機範圍​

隨機範圍為 SDG 的核心設定,亦為最易設定失當的項目。

其作用為:每次生成資料時,平台於指定範圍內隨機選取物件的擺放位置。若範圍設定為 ±5 公分,則生成的一百集資料將涵蓋物件散佈於 10 公分見方區域內的一百種情況。

設定結果
範圍過窄(趨近於零)生成的各集近乎相同,等同於單集的重複複製,實質涵蓋的情況僅有一種
範圍適當涵蓋實際運作時的變化程度,模型得以學習依物件位置調整動作
範圍過寬物件被置於手臂無法到達或相機無法涵蓋的位置,產生大量失敗樣本,成功率將明顯下降

設定原則為以實際上線時的變化程度為準,可略為寬鬆,但不得超出手臂的工作範圍。建議的作法為量測工件於實際運作中可能的最大偏移距離,並以該距離作為設定依據。

俯視攝影機的隨機範圍​

相機分頁除位置與旋轉外,亦提供隨機範圍設定。此項設定的目的與物件不同:其作用為使模型在相機角度存在小幅差異時仍能辨識物件。對於後續需部署至多台主機的情境,此項設定具有實質價值,因各工站的相機安裝位置不可能完全一致。

惟此項設定應較物件保守。相機隨機範圍過大將產生物件不在畫面內的無效資料。

四、虛擬錄製​

環境設定完成後,錄製的操作方式與實體錄製相近,控制列同樣提供開始、重試、下一回合與完成。示範品質判準於此完全適用。

差異在於錄製完成後的處理。實體錄製於點選「完成」後即寫入資料集,模擬錄製則提供四個選項:

選項用途
播放錄製畫面重播本次示範以確認品質
Mimic 模擬生成進入生成階段,以本次示範產生整批資料
匯出資料集僅將本次示範匯出為資料集,不執行生成
重新錄製重新進行示範
警告

生成前應先播放確認 兩條路線的成本結構不同。實體錄製中,單集品質不佳的影響範圍為該集;模擬生成中,該次示範為後續整批資料的母版,示範中的猶豫、修正與路徑偏差將被完整複製至每一集生成結果。

因此,進入生成階段前應先播放確認示範品質。

若前次工作階段未完成即離開,下次進入模擬環境時平台將提示「找到上次的工作階段」並標示該次錄製的名稱,詢問是否從中斷處繼續:

找到上次的工作階段

此處提供的選項與錄製完成後相同——播放錄製畫面、Mimic 模擬生成、匯出資料集——另加上「重新開始」。因此中斷後無須重錄示範,可直接由生成階段接續;惟選擇「重新開始」將捨棄前次示範。

五、訓練資料生成​

選擇「Mimic 模擬生成」後進入「訓練資料生成」設定畫面,需設定兩項參數:

產生資料集數量(範圍 1~500):預計生成的訓練資料集數,直接決定訓練資料量。

同步訓練設備數量(範圍 1~16):同時執行的模擬實例數量。此參數不影響資料內容,僅影響生成速度。設定值應依主機的運算資源決定;若超出主機負荷,各實例將互相競爭資源,總時間反而增加。建議由中間值起始,觀察生成速度後再行調整。

生成過程的監控指標​

訓練資料生成進行中

啟動後,畫面上方顯示進度列,包含四項指標:

指標意義
成功已成功生成的集數與目標集數
成功率成功數佔已嘗試模擬次數的百分比
模擬累計嘗試的模擬次數
PROGRESS完成度百分比

其中成功率為主要的判讀依據。平台於每次模擬後檢查該次動作是否確實完成任務,未完成者不納入資料集。因此成功率偏低並非執行錯誤,而是反映環境設定的合理性:

成功率表現可能成因處理方式
明顯偏低隨機範圍設定過寬,部分物件位置超出手臂可達範圍縮小方塊與盒子的隨機範圍
幾乎為零虛實對齊未正確完成,或示範本身未完成任務重新執行偏移量計算,並重播示範確認
接近滿分但生成緩慢範圍可能設定過窄可考慮放寬以取得更多變化

上圖即為第一種情況:已嘗試 250 次模擬僅成功 15 集,成功率 6%。此時應中止並檢討隨機範圍,而非任其跑完——生成一集成功資料需嘗試十餘次,整批的時間成本將數倍於設定合理時。

觀察到成功率異常時,建議點選「終止流程」並修正設定後重新執行,而非等待該批次完成。

生成流程的四個階段​

畫面右側的 Pipeline 以縱向流程顯示目前執行的階段,已完成者標示綠色勾選,進行中者以高亮標示(上圖為第三階段「產生訓練資料集」):

Joint → IK 格式轉換 → 產生 Mimic 標注資料集 → 產生訓練資料集 → IK → Joint 格式轉換

使用者無須理解各階段的技術細節,惟知悉流程由四個階段構成有助於判讀進度:進度條於階段切換時將呈現短暫停滯,此為正常現象。

六、匯出與併入訓練主線​

生成完成後,平台提供三個選項:播放訓練資料、匯出資料集與重新產生訓練資料。建議先抽查數集生成結果再行匯出。

匯出時平台將執行 HDF5 → LeRobot 格式轉換。轉換完成後,該批資料與實體錄製的產出格式完全相同,可於訓練頁直接選用,亦可於資料工具中與實體資料集合併為單一資料集。

七、Sim-to-Real 落差​

模擬環境無法完整複製真實世界的物理條件,此一落差稱為 Sim-to-Real Gap,為模擬資料的本質限制。

模擬環境通常無法還原的項目包括:真實的光影變化與反光、物件表面的摩擦與滑動特性、夾爪抓取時的微小形變,以及實體手臂的機械間隙與抖動。因此純以模擬資料訓練所得的模型,於真實環境中的表現通常會有所折損。

實務上的兩種補償作法:

其一,採用混合資料集。 以模擬資料構成資料量的主體,並合併數集實體示範,使模型涵蓋真實環境的特徵。此為成本最低且效果最直接的作法。

其二,將變化條件納入隨機範圍。 光線、相機角度與物件位置的隨機化,其目的即在於降低模型對單一條件的依賴。

無論採用何種作法,上線前均須於實體硬體上完成一次推論驗證。


下一步: 資料集管理.