Dex-net再次复现

近期为了实现一个项目,涉及机器人抓取内容,于是决定使用伯克利大学的Dex-Net 2.0来实现物体的抓取。本机环境:Ubuntu16.04,ROS Kinetic,CUDA10.1,Python2.7(虽然官方教程说可以使用Python3.5,但是由于需要使用ROS控制实际的机器人,而且网上又说ROS只支持Python2.x,同时后期遇到相关与ROS有关的模块,Python3.5编译有点问题,故重返使用Python2.7)。如果已经有各种功能包,不用再重新下,直接在终端运行 sudo sh install.sh 命令执行dex-net下的install.sh文件中的代码.

1. 提示pip需要升级,但执行pip install --upgrade pip后并没有用,并且pip都找不到

解决: 先执行sudo gedit /usr/bin/pip 打开文件,将 from pip import main 改为 from pip._internal import main. 

2. 更改pip下载源提升下载速度

解决: 一次性: sudo pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/  numpy. 永久性: 修改 ~/.pip/pip.conf(或者创建文件),加上代码为

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple

注:pip show xxx查看pip功能包有无安装,sudo pip install --upgrade tensorflow-gpu 更新tensorflow包

3. 进入各个ros功能包目录下执行 python setup.py develop , 提示少了一些pip模块或者版本不一致,进行安装,若不执行install.sh文件,执行sudo python setup.py test时,报错AttributeError: 'module' object has no attribute  ‘learning_test’,我感觉是没按顺序安装各功能包,那么编译功能包的顺序最好是autolab_core ---》meshpy  ---》 perception ---》gqcnn ---》visualization ---》v-hacd ---》dex-net

4. 执行sudo python setup.py test,报错NameError: global name 'meshrender' is not defined。

解决:打开/etc/ld.so.conf.d/libc.conf文件,在文件末尾加入/usr/local/lib;/usr/local/lib64两句,保存后执行sudo ldconfig即可

5. 执行python examples/policy_ros.py 提示no module named cv_bridge

解决: sudo apt-get install ros-kinetic-cv-bridge

6. 需要卸载enum34、pyserial时提示,ERROR: Cannot uninstall 'pyserial'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.

解决:sudo pip install --ignore-installed pyserial,该代码执行后,会卸载原先版本而安装系统所需版本的pyserial。若是想直接卸载某模块,而不安装新版本,可尝试sudo pip uninstall --ignore-installed pyserial,涉及系统文件慎重

7. 执行sudo python setup.py test时,报错AttributeError: 'module' object has no attribute 'database_test'

解决:终端输入python,进入python环境,并执行import test.database_test,报错ImportError: No module named cv2,则安装opencv,执行sudo pip install opencv-python,若当中提示某些依赖项未安装或版本有错,则安装或替换依赖项即可。

8. 工作空间catkin_make后要记得source devel/setup.bash

 

 

不确定:

1. ImportError: /opt/ros/kinetic/lib/python2.7/dist-packages/cv2.so: undefined symbol: PyCObject_Type

Dex-net再次复现_第1张图片

2. 提示please install the python3-tk package'  ImportError: No module named '_tkinter', please install the python3-tk package;此时通过pip3 install python3-tk无效,需通过sudo apt-get install python3-tk

你可能感兴趣的:(Dex-net再次复现)