1. 程式人生 > 其它 >Multi-View Picking程式碼復現

Multi-View Picking程式碼復現

技術標籤:ROS

Multi-View Picking: Next-best-view Reaching for Improved Grasping in Clutter論文復現


這篇paper是繼GG-CNN之後的工作,發表在ICRA2019上,本文完成了一個基於視覺的閉環抓取,相對於之前的看好了位置再去抓取有很多的好處,例如:

  1. 開始就不需要很高的檢測精度,因為相機在臂上,本來也是動態的檢測,因為可以實時的調整。
  2. 由於是動態的檢測抓取框,因此抓取的物體可以移動或者旋轉,因此可以對動態的目標進行檢測。
  3. 可以在不同的視角觀察一個物體,因此這樣可以更好的選擇抓取的位置。

接下來開始嘗試復現程式碼,本文采用的是Franka Panda和realsense D435的配合完成任務的,通訊採用的是ROS,這裡採用兩臺電腦完成,一臺安裝Ubuntu Realtime Kernel,專門用來控制franka,另一臺則是安裝Nvidia顯示卡驅動來執行Realsense。

首先是該專案的地址視訊,這裡首先安裝一些依賴

  • ROS Kinectic
  • Franka ROS
  • RealSense ROS
    在完成了安裝之後呢,就可以把後面兩個的github地址下載到你的ROS工作目錄的src下,然後是需要拿到franka的官方庫,這裡最好是買Franka的時候別人給的,因為網上的版本可能是最新的,不一定和自己的要求一致,libfranka和franka ros版本不一致將會導致報錯。

具體步驟如下:

//首先進入ROS工作空間,我這裡是
cd /home/dj/catkin_ws/src

//前面的安裝ROS直接看ROS Kinectic就好,按照流程走一便
//這裡是下載franka ros
git
clone https://github.com/frankaemika/franka_ros/tree/0.5.0 //下載RealSense,注意型號別錯了 git clone https://github.com/IntelRealSense/realsense-ros#installation-instructions //下載專案 git clone https://github.com/dougsm/mvp_grasp

這樣都下載好了,接下來就是編譯。
作者的github寫的是

Clone this repository into your ROS worksapce and run rosdep install --from-paths src --ignore-src --rosdistro=<your_rosdistro> -y and then catkin_make/catkin build.

我這裡直接報錯,然後google之後找到了解決方案

//這裡先安裝其他依賴,首先到src的上級目錄下
cd ..
//然後是
rosdep install --from-paths src --ignore-src --rosdistro=${ROS_DISTRO} -y --os=ubuntu:xenial
//這裡應該編譯直接通過,但是為了防止libfranka版本和franka ros不對應,我採用了
catkin_make -DCMAKE_BUILD_TYPE=Release -DFranka_DIR:PATH=/path/to/libfranka/build
source devel/setup.sh

這樣編譯通過後,到專案目錄下

cd src/mvp_grasp
//安裝python依賴項
pip install -r requirements.txt

這樣的過程在兩臺電腦上都要做一遍,hhh。

然後就可以開始通訊了。先寫到這裡,有時間再更…