(1)Ubuntu下打开激光雷达和相机,教程见前文,并录制数据bag。(ps:一定要激光雷达和相机的频率的一致!一定一定!)

(2)拍摄单目相机棋盘格图像,用MATLAB工具箱标定,获取相机的内参。(ps:传统的相机标定方法,标定板要留白边!)

(3)将数据bag中的激光雷达数据和相机数据分割出来。

代码如下:
bag→.pcd

#include <pcl_ros/point_cloud.h>
#include <ros/ros.h>
#include <sensor_msgs/PointCloud2.h>
#include <string>
#include <iostream>
using namespace std;
int num = 1;void lidar_callback(const sensor_msgs::PointCloud2ConstPtr &in_cloud_msg) {// 1.Msg to pointcloudpcl::PointCloud<pcl::PointXYZI> rawCloudIn;pcl::fromROSMsg(*in_cloud_msg, rawCloudIn);string pcdpath = "";//保存.pcd文件路径std::string str=std::to_string(num);//pcdpath += std::to_string(count++);if(str.size()==1){pcdpath+="000"+str+".pcd";}else if(str.size()==2){pcdpath+="00"+str+".pcd";}else if(str.size()==3){pcdpath+="0"+str+".pcd";}else{pcdpath+=str+".pcd";}num++;pcl::io::savePCDFileASCII(pcdpath, rawCloudIn);
}int main(int argc, char **argv) {ros::init(argc, argv, "GroundPlaneFit");ros::NodeHandle nh;ros::Subscriber lidar_sub = nh.subscribe("/velodyne_points", 1, lidar_callback); //订阅激光雷达点云ros::spin();return 0;
}

bag→.jpg

import roslib
import rosbag
import rospy
import cv2
from sensor_msgs.msg import Image
from cv_bridge import CvBridge
from cv_bridge import CvBridgeErrorpath = ''#保存.jpg文件路径class ImageCreator():def __init__(self):self.bridge = CvBridge()with rosbag.Bag('/home/fmc/497/data /2020-11-26-22-01-54.bag', 'r') as bag:#录制好的bag的路径  count = 1for topic, msg, t in bag.read_messages():if topic == "/pylon_camera_node/image_raw": try:cv_image = self.bridge.imgmsg_to_cv2(msg, "bgr8")except CvBridgeError as e:print(e)if len(str(count)) == 1:image_name =  '000' + str(count) + ".jpg"  elif len(str(count)) == 2:image_name = '00' + str(count) + ".jpg"elif len(str(count)) == 3:image_name = '0' + str(count) + ".jpg"elif len(str(count)) == 4:image_name = str(count) + ".jpg"count += 1cv2.imwrite(path + image_name, cv_image)  if __name__ == '__main__':try:image_creator = ImageCreator()except rospy.ROSInterruptException:pass

https://blog.csdn.net/qq_27339501/article/details/110224436

数据bag中的激光雷达数据和相机数据分割出来相关推荐

  1. mysql数据表中取几列_MySQL查询数据表中数据记录(包括多表查询)

    MySQL查询数据表中数据记录(包括多表查询) 转自:http://www.baike369.com/content/?id=5355 在MySQL中创建数据库的目的是为了使用其中的数据. 使用sel ...

  2. 不动产测绘数据入库_不动产数据整合中房地信息与各类测绘数据关联入库方法研究...

    2018 年 5 月 测绘与空间地理信息 GEOMATICS & SPATIAL INFORMATION TECHNOLOGY Vol.41 ꎬ No.5 May ꎬ 2018 收稿日期 : ...

  3. pb 如何判断数据窗口中是否有某个字段_怎么判断数据窗口中某个字段存在重复的数据...

    今天写代码的是碰到上面的问题,头都大了,刚开始的时候是把这个列的所以的字段都存储在数组中,拼接成一个字符串,然后对改字符串进行写代码,即使这样要写这样的代码还是有点麻烦的.后来问下了同事,没想到,下面 ...

  4. mysql怎么查找删除重复数据_Mysql中如何查找并删除重复数据

    考试系统中做了一个用户导入试题功能,导致用户导入了很多重复的试题,我需要查询及删除一下重复的记录,于是有了这篇文章. (一)单个字段 1.查找表中多余的重复记录,根据(question_title)字 ...

  5. vue使用ajax提交数据,vue中使用ajax请求 data的数据问题

    问题描述 v件览客需和下于有快都业视的事一房望站是有ue中使用ajax请求 data的数据抖要支圈者器说是事天开的.年后编定功口小发还问题 问题出现的朋不功事做时次功好来多这开制的请一例农在环境背景及 ...

  6. ppt扇形图怎么显示数据_PPT中如何用半圆型饼图体现数据百分比

    本教程适用版本:WPS Office 2019 PC版点此使用 我们日常在制作PPT时,为了更好的突出数据,经常会添加各种图表,圆形饼图就是其中一种.但有时我们的数据用半圆型饼图就可以体现了,那么这种 ...

  7. 中livechart显示大数据_Servlet中利用jdbc加载显示数据

    基本分层思路是 已经完成查询所有新闻的方法在DAO中 最后将数据返回 现在我们去service中完成代码,先准备一个接口 编写一个实现类 编写代码,在Service中只会出现Dao的东西 然后在我们之 ...

  8. vuex获取php数据,Nuxt中如何使用Vuex-Store异步获取数据

    Nuxt持发秀事应差互过来商类如处.,到图近就这是一个基于Vue.js的通用型框架,它集成了使用Vue开发的绝大数组件/框架到二新,为都础过过发等宗和发制数事前理业待很理断到屏能击示和站公下图以使箭分 ...

  9. h5select动态加载数据_HTML5+中动态构建列表并填充数据

    部分代码参考demo----<历史上的今天>. 感谢作者的分享,愿好人一生平安,虽然只有两个页面,但是通过这个示例让我学会了5+中如何动态构建列表并填充数据,非常实用. html部分: 历 ...

  10. java中json数据_Java中json的使用 解析json数据

    1.java提取json嵌套多层的数据 json数据为: { "res": [{ "name": "0", "text" ...

最新文章

  1. python爬虫scrapy框架教程_Python爬虫教程-30-Scrapy 爬虫框架介绍
  2. 计算机科学与技术专业导论_教育部最新公布!西安工业大学新增4个本科专业!...
  3. 5.解决UltraEdit在无网线情况下连接不到虚拟机上的问题,回环网卡设置
  4. MFC中的动态创建与运行时识别
  5. 重要的数据结构--队列(C语言实现)
  6. Linux进阶之补充知识篇
  7. Python学习笔记_Day4_集合
  8. 用旧电脑安装黑群晖系统
  9. 雅虎历任CEO的错误
  10. 如何使用自訂 Segue 實現視圖轉場動畫
  11. 图片颜色和相机的一些基本知识
  12. Maya2011下载 (破解正式版)
  13. Python 使用UDP 协议实现内网瘫痪 网吧网络瘫痪
  14. 专访天冕科技许文彬:以超5000万用户为基础,构建完善的隐私计算数据应用生态
  15. [NCTF 2018]签到题
  16. 【Web】Hexo+Butterfly+Github+Coding搭建个人博客
  17. 一.关于进制之间的转换关系
  18. TCP/IP技术回顾(3)—网际层
  19. android音量界面,android 音量调节以及媒体音量界面
  20. 小米电视android刷机,小米电视怎么刷机?小米电视刷第三方系统固件下载

热门文章

  1. bs4.FeatureNotFound: Couldn't find a tree builder with the features you requested: 的解决方法
  2. Java中数字朝着0.5的倍数取舍
  3. 安装程序未能打开日志文件_安装和启动日志错误 | Adobe Creative Suite 6、Adobe Creative Suite 5.5、Adobe Creative Suite 5...
  4. 实习成长之路: 重新认识IOC,你可能对IoC有些误会?
  5. VMware网络连接模式——桥接模式、NAT模式以及仅主机模式的介绍和区别
  6. 利用计算机模拟专家给病人,《计算机应用基础2007》复习资料
  7. html中src中的url,HTML 中的 href\src\url
  8. 侠诺虚拟服务器,简便不等于简单 侠诺PPPoE服务器功能介绍
  9. 实现了一个本地版本的在线json测试环境光-pythono
  10. matlab替换矩阵中元素的值,怎么修改矩阵中的某些元素 或者简单点说保留矩阵中的元素...