kitti数据集的学习(一)发布照片

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

kitti数据集刚入门,记录一下。

一、kitti数据集下载

官网下载rawdate

二、使用步骤

1.创建工作空间

roscore    //执行roscore
//再打开一个终端
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/
catkin_make
source devel/setup.bash
cd ~/catkin_ws
catkin_make
source devel/setup.bash

2.下载pkg

代码如下:

cd catkin_ws/src
catkin_create_pkg kitti_tutorial rospy
cd ..   //回到上一级
catkin_make   //遍历刚生成的资料夹

因为使用的是python,所以使用rospy。


3.在src中新建python文件

进入刚创建的文件中新建文档开始写python代码
在这里插入图片描述

在写之前首先导入OpenCV

pip install opencv-python

如果失败了,可以换源试试,下面这个是清华源

pip install opencv-python -i https://pypi.tuna.tsinghua.edu.cn/simple

上面安装失败参考这篇博客

python代码

#!/usr/bin/env python
import cv2
import os
import rospy
from sensor_msgs.msg import Image
from cv_bridge import CvBridge


DATA_PATH = '/home/lu/myfile/2011_09_26_drive_0005_sync/2011_09_26/2011_09_26_drive_0005_sync'

if __name__ == '__main__':
    rospy.init_node('kitti_node',anonymous=True)
    cam_pub = rospy.Publisher('kitti_cam',Image,queue_size=10)
    bridge = CvBridge()

    rate = rospy.Rate(10)
    while not rospy.is_shutdown():
        img = cv2.imread(os.path.join(DATA_PATH,'image_02/data/%010d.png'%0)) 
        cam_pub.publish(bridge.cv2_to_imgmsg(img,"bgr8"))
        rospy.loginfo("camera image published")
        rate.sleep()

将文件改为可执行档

roscd kitti_tutorial/src
chmod +x kitti.py

在这里插入图片描述

有关roscd的内容参考链接

运行

rosrun kitti_tutorial kitti.py

在这里插入图片描述

打开rviz

再次打开一个终端输入rviz
在这里插入图片描述
点击左下角的add并点击by topic,选择刚添加的image即可运行
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
上面只是一张图片输出的,将一张一张的图片拼接起来就是视频,代码如下:

#!/usr/bin/env python
import cv2
import os
import rospy
from sensor_msgs.msg import Image
from cv_bridge import CvBridge


DATA_PATH = '/home/lu/myfile/2011_09_26_drive_0005_sync/2011_09_26/2011_09_26_drive_0005_sync'

if __name__ == '__main__':
    frame = 0
    rospy.init_node('kitti_node',anonymous=True)
    cam_pub = rospy.Publisher('kitti_cam',Image,queue_size=10)
    bridge = CvBridge()

    rate = rospy.Rate(10)
    while not rospy.is_shutdown():
        img = cv2.imread(os.path.join(DATA_PATH,'image_02/data/%010d.png'%frame)) 
        cam_pub.publish(bridge.cv2_to_imgmsg(img,"bgr8"))
        rospy.loginfo("camera image published")
        rate.sleep()
        frame += 1
	frame %=154

总结

参考视频

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值