开源项目|从0到1教您构建适用于智能汽车的目标检测系统

开源项目|从0到1教您构建适用于智能汽车的目标检测系统

简介本教程使用ROS可以控制的相机对汽车进行序列化,使用ROS发布图像数据并处理获取的图像,例如目标检测。

本文主要在本教程的后面部分介绍如何收集内容,以实现可以检测物体的小型汽车。

首先,总结以下文档的内容:要获取此项目的完整教程代码和文档,请注意下面的QR代码,并在邮件中回复数字“ 4”。

以官方帐户为背景。

本文档涉及上述文档的几乎所有内容。

这是一个全面的应用程序,您可以根据后续系列逐步学习。

如果您熟悉上述内容,您会发现本文档非常简短,但是它基于现有基础。

您现在应该已经熟悉的内容:了解CNN的工作原理;可以使用Darknet训练自己的目标检测模型。

可以使用rosserial在RT-Thread和ROS之间建立连接。

可以使用ROS发布图像信息。

下面将介绍如何使用ROS发布图像信息。

与Darknet连接以进行目标检测。

1. Darknet ROS 1.1获取源代码。

实际上,以下是ROS软件包,该软件包现在是开源的:1#& nbsp;初始化工作环境2 $& nbsp; mkdir& nbsp; catkin_workspace3 $& nbsp; cd& nbsp; catkin_workspace / src4 $ &cat; catkin_init_workspace56 ##& nbsp;下载源代码7 $  git& nbsp; clone& nbsp; --recursive& nbsp; http://github.com/leggedrobotics/darknet_ros.git源代码,我们还需要下载一些经过训练的神经网络权重,将其放在以下目录中:1 $&catkin_workspace / src / darknet_ros / darknet_ros / yolo_network_config / weights /如果您认为在国外的下载速度太慢,这里有一个国内CDN加速镜:yolov2-tiny.weights:https://wuhanshare-1252843818.cos.ap-guangzhou.myqcloud.com/yolov2-tiny.weights yolov2.weights:https:// wuhanshare-1252843818 .cos.ap-guangzhou.myqcloud.com / yolov2.weights yolov3.weights:https://wuhanshare-1252843818.cos.ap-guangzhou.myqcloud.com/yolov3.weights如果源公司de和权重已下载,我们已准备好进行编译。

1.2编译源代码为了确保Darknet可以获取摄像机数据,我们需要告诉它摄像机信息的发布位置,然后修改此文件:1 $&catkin_workspace / src / darknet_ros / darknet_ros / config / ros.yaml并放置以下主题修改发布图像的位置,例如,我将其发布在此处/ usb_cam / image_raw 1camera_reading:2& nbsp;& nbsp;& nbsp;& nbsp; topic:& / usb_cam / image_raw3& nbsp;& nbsp; queue_size:& nbsp; 1编译程序包后,在catkin_workspace目录下:1 $& nbsp; catkin_make如果一切正常,编译完成。

实际上,不需要做太多的工作。

编译之后,请记住更新环境变量,以便以后可以正常启动该程序包。

1 $ sorce& nbsp; devel / setup.bash 1.3目标检测在执行目标检测之前,我们首先启动ROS节点:1 $&rosbcore,然后启动摄像头节点:1roslaunch& usb_cam& bash。

nbsp; usb_cam-test.launch,以便可以实时查看摄像机数据,摄像机在哪里并不重要。

它可以在汽车上或计算机上。

这也是ROS的美。

只要节点发布摄影机消息,ROS都可以接收,无论摄影机在哪里。

要进行处理:接下来,我们启动Darknet节点:1 $& roslaunch& nbsp; darknet_ros& nbsp; darknet_ros.launch在下面的图片中,您可以看到有两个视频流,左边是未经处理的实时图像,右边是运行目标的测试结果:2.总结RT-Thread负责作为实时操作系统进行控制,而Linux则负责提供丰富的软件包运行算法。

将两者结合起来,相互配合以相互补充是一件好事。

3.参考文档Darknet ROS:https://github.com/leggedrobotics/darknet_ros要获取此项目的完整教程代码和文档,请遵循以下QR码,并在代码中回复编号“ 4”。

官方帐号后台的RT-Thread让IoT终端开发变得简单而快速,并且芯片的价值得以最大化。

Apache2.0协议可免费用于商业产品,而无需发布源代码,并且没有潜在的商业风险。

长按QR码,关注我们并点击“阅读原始文本”进入RT-Thread GitHub

深圳市相信过程科技有限公司❤舒先生❤欢迎您的咨询