鄭州|使用Unity創造并快速訓練數字孿生機器人( 二 )


ML-agent工具包的用法
“強化學習(RL)訓練是一個強大的機器人框架 , 而Unity ML-agent也是一個很棒的工具包 , 它使我們的數字孿生機械臂能夠學習和執行復雜的任務 。 由于競賽的時間有限 , 目標是實現一個簡單的RL“接觸”任務 , 并將生成的模型轉換為在OAK-D設備上運行推理 。 通過使用ML-agent工具包 , 機器人使用IK控制學習的最佳路徑 , 以動態接觸檢測接觸到的3D對象 。 ”Gerard Espon說道 。
為了實現這一點 , Kauda Team首先使用了spatial tiny YOLO , 這幫助他們實現了三維物體檢測 。 RL模型(PPO)使用結果檢測和IK控制點的位置作為輸入觀察 。 關于輸出動作 , IK控制點的能夠實現3軸移動 。 獎勵系統基于每一步的小懲罰和機器人接觸物體時的大獎勵(1.0)而制定 。 為了加快訓練速度 , Kauda Team利用多代理同時學習來開發虛擬spatial tiny YOLO , 其輸出動作與真實spatial tiny YOLO相同 。
當模型訓練完成后 , 他們使用OpenVino工具包將其轉換為OpenVino IR和Myriad Blob格式 , 將模型加載到OAK-D設備上并運行推理 。 最后管道中是一個spatial tiny YOLO加RL模型 。 這里他們使用了Unity插件 , 因為Unity插件能夠幫助他們在Unity中同時使用ML-Agents和OAK-D代理來比較推理 。
合成數據
管道的第一階段是3D對象檢測器 , 這是一個基于人工智能的計算機視覺和機器人任務的一個非常常見的起點 。 在案例中 , Kauda Team使用了一個預先訓練好的小型YOLO v3模型Unity感知包 , 這讓他們能夠為機器人的訓練定制類別 。 這讓Kauda Team能夠在幾分鐘內生成一個帶有自動地面真實邊界框標記的大型3D模型合成數據集 。 通常 , 收集和標記過程是非常耗時的 。 擁有生成豐富數據集的能力是一大進步 , 該數據集具有大量隨機化選項 , 擁有不同的角度、打光情況、紋理變化等 。
開發中的困難
“同步虛擬項目和現實世界項目所需的時間有時會有些偏離 。 我們認為這可以通過在未來使用ROS來解決 , 讓我們很高興的是Unity現在正式支持ROS了!”Gerard Espon說道 。

相關經驗推薦