Ros【py】 注意事项(学习心得,慢慢记录,不断填坑)
1、一个python文件只能init一个node
rospy.init_node('node_name', anonymous=True)
即使python文件调用了多个python文件,也只能初始化一个(不能在调用的python文件中再init新的node),否则会报错:
rospy.exceptions.ROSException: rospy.init_node() has already been called with different arguments: ('init', ['/home/zxc/catkin_ws/src/image_trans/scripts/demo.py'], True, None, False, False)
2、ros编译包
单独编译某个包
catkin_make -DCATKIN_WHITELIST_PACKAGES="{package_name}"
编译所有包
catkin_make -DCATKIN_WHITELIST_PACKAGES=""
3、ros找到指定文件
用来导入模型权重很方便。
from rospkg import RosPack
# file_path = RosPack().get_path(<package>) + <file_name>
so_path = RosPack().get_path('camera') + '/scripts/yolosort/yolov4/libyolo_layer.so'