![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ROS
文章平均质量分 58
不会改BUG的小萌新
计算机科学与技术专业
联系邮箱1829523645@qq.com
展开
-
ROS修改rosbag中话题的frame_id,以及发布坐标在Rviz中与点云融合显示
【代码】ROS修改rosbag中话题的frame_id,以及发布坐标在Rviz中与点云融合显示。原创 2023-02-23 21:35:49 · 1099 阅读 · 0 评论 -
关于相机与激光雷达数据采集与标定
而使用ROS包则可以直接给出投影矩阵,缺点就是需要棋盘格在图片上的x、y、skew(旋转)、size(大小)的变化需要满足他的要求才可以进行标定,所以最好直接连着相机进行标定,录rosbag可能会不满足他的条件。总结:在标定外参时,可以直接先估计一个旋转向量和平移向量,例如上面激光雷达到相机的旋转大概是沿x轴旋转90度,因此旋转向量大概是[1.57, 0, 0],在转成旋转矩阵进行微调。最近在做一个关于车路协同的项目,需要做一个路侧系统,传感器有摄像头和激光雷达。相机和激光雷达联合标定费了老半天劲。原创 2022-09-04 19:32:29 · 1270 阅读 · 0 评论 -
Livox-Mid70与相机联合标定及数据集采集
Livox-Mid70与相机联合标定及数据集采集原创 2022-07-05 17:53:59 · 1914 阅读 · 0 评论 -
古月居 ROS入门21讲 第十九讲 launch启动文件的使用方法
古月居 ROS入门21讲 第十九讲 launch启动文件的使用方法Launch文件:通过配置XML文件实现多节点的配置与启动(可自动启动Master)创建功能包cd ~/catkin_ws/srccatkin_create_pkg learning_launchcd learn_launchmkdir launch创建launch文件cd launchvim simple.launch输入以下内容<launch> <node pkg="learning_t原创 2020-11-08 17:30:59 · 1918 阅读 · 0 评论 -
古月居 ROS入门21讲 第十八讲 TF坐标系广播与监听的编程实现
古月居 ROS入门21讲 第十七讲 TF坐标系广播与监听的编程实现创建功能包cd ~/catkin_ws/srccatkin_create_pkg learning_tf roscpp rospy tf turtlesim创建TF广播器代码C++turtle_tf_broadcaster.cpp#include<ros/ros.h>#include<tf/transform_broadcaster.h>#include<turtlesim/Pose.h&原创 2020-11-08 15:21:05 · 781 阅读 · 0 评论 -
ROS melodic版本安装及问题总结
ROS melodic版本安装及问题总结安装步骤添加ROS软件源sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main"> /etc/apt/sources.list.d/ros-latest.list'添加密钥apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172原创 2020-11-07 22:39:25 · 1044 阅读 · 0 评论 -
古月居 ROS入门21讲 第十七讲 ROS中的坐标系管理系统
古月居 ROS入门21讲 第十七讲 ROS中的坐标系管理系统安装TF坐标管理系统并启动demoapt install ros-melodic-turtle-tfroslaunch turtle_tf turtle_tf_demo.launch效果如图在命令窗口下可以按上下左右键控制turtle1的移动,turtle2跟随着运动,但只是坐标的跟随,角度不跟随。使用如下命令在当前目录下生成TF树(pdf文件)rosrun tf view_framestf_echorosrun原创 2020-11-07 21:59:30 · 987 阅读 · 0 评论 -
古月居 ROS入门21讲 第十六讲 参数的使用与编程方法
古月居 ROS入门21讲 第十六讲 参数的使用与编程方法C++parameter_config.cpp#include<ros/ros.h>#include<std_srvs/Empty.h>int main(int argc,char**argv){ int red,blue,green; ros::init(argc,argv,"parameter_config"); ros::NodeHandle node; ros::par原创 2020-11-07 21:32:35 · 349 阅读 · 0 评论 -
古月居 ROS入门21讲 第十五讲 服务数据的定义与使用
古月居 ROS入门21讲 第十五讲 服务数据的定义与使用Person.srvstring nameuint8 ageuint8 sexuint8 male=1uint8 female=2---string resultC++person_server.cpp#include<ros/ros.h>#include "learning_service/Person.h"bool personCallback(learning_service::Person::Re原创 2020-11-07 21:28:04 · 298 阅读 · 0 评论 -
古月居 ROS入门21讲 第十四讲 服务器Server的编程实现
古月居 ROS入门21讲 第十四讲 服务器Server的编程实现C++turtle_command_server.cpp#include<ros/ros.h>#include<geometry_msgs/Twist.h>#include<std_srvs/Trigger.h>ros::Publisher turtle_vel_pub;bool pubCommand=false;bool commandCallback(std_srvs::Trigg原创 2020-11-07 21:14:50 · 430 阅读 · 0 评论 -
古月居 ROS入门21讲 第十三讲 客户端Client的编程实现
古月居 ROS入门21讲 第十三讲 客户端Client的编程实现C++turtle_spawn.cpp#include<ros/ros.h>#include<turtlesim/Spawn.h>int main(int argc,char**argv){ ros::init(argc,argv,"turtle_spawn"); ros::NodeHandle node; ros::service::waitForService("/spawn"原创 2020-11-07 21:11:23 · 889 阅读 · 0 评论 -
古月居 ROS入门21讲 第十二讲 话题消息的定义与使用
古月居 ROS入门21讲 第十二讲 话题消息的定义与使用Person.msgstring nameuint8 sexuint8 ageuint8 unknown=0uint8 male=1uint8 female=2c++person_publisher.cpp#include <ros/ros.h>#include "learning_topic/Person.h"int main(int argc,char**argv){ ros::init(原创 2020-11-07 21:07:43 · 809 阅读 · 1 评论 -
古月居 ROS入门21讲 第十一讲 订阅者Subscriber的编程实现
古月居 ROS入门21讲 第十一讲 订阅者Subscriber的编程实现C++pose_subscriber.cpp#include<ros/ros.h>#include "turtlesim/Pose.h"void poseCallback(const turtlesim::Pose::ConstPtr& msg){ ROS_INFO("Turtle pose: x:%0.6f,y:%0.6f",msg->x,msg->y);}int main(原创 2020-11-07 20:58:53 · 511 阅读 · 0 评论 -
古月居 ROS入门21讲 第十讲 发布者Publisher的编程实现
古月居 ROS入门21讲 第十一讲发布者Publisher的编程实现C++velocity_publisher.cpp#include<ros/ros.h>#include<geometry_msgs/Twist.h>int main(int argc,char**argv){ ros::init(argc,argv,"velocity_publisher"); ros::NodeHandle n; ros::Publisher turtle原创 2020-11-07 20:52:41 · 685 阅读 · 3 评论