darknet移植到ROS中遇到的问题+训练自己的数据集(RTX1050)

mkidr -p catkin_ws/src
cd catkin_ws/src
git clone --recursive https://github.com/leggedrobotics/darknet_ros.git
cd ..
catkin_make -DCMAKE_BUILD_TYPE=Release

(参考https://blog.csdn.net/m0_38087936/article/details/85849748)

进不去github,需要改成

git clone https://gitclone.com/github.com/leggedrobotics/darknet_ros.git

(recursive我也不知道什么作用)

这样子darknet文件是空的,编译会失败

进入https://github.com/pjreddie/darknet/tree/508381b37fe75e0e1a01bcb2941cb0b31eb0e4c9

把单独的darknet 压缩包下载下来,移植到 darknet_ros文件夹中

再编译 就成功了。(catkin_make -DCATKIN_WHITELIST_PACKAGES="darknet_ros")

(darknet命令解释 - 张达嘛 - 博客园)

在进入到darknet文件夹,输入make,再编译; (我也不懂)

编译完成后最重要的就是三个:名为darknet的exe文件,名为libdarknet.a的静态链接库和名为libdarknet.so的动态链接库。如果直接在本地进行模型调用尝试,可以直接运行darknet这个exe文件,如果需要移植调用,则需要用到libdarknet.so这个动态链接库,这个动态链接库中只包含了src文件夹中定义的框架基础函数,没有包含examples中的高层函数,所以调用过程中需要自己去定义检测函数

./darknet detect cfg/yolov3.cfg yolov3.weights data/horses.jpg

测试一下 ,生成一个predictions.png, 环境就配成功!

在训练自己的数据集时测试时候参考:

目标检测——YOLOv3口罩人脸检测_WellTung_666的博客-CSDN博客darknet yolo训练自己的数据集(包含ros封装)_minghan13的博客-CSDN博客_darknet ros 训练

Darknet——yolo3训练自己的数据集+在ros环境下实现目标检测实战教程(二)——训练自己的权重文件_平山村小明的博客-CSDN博客

YOLOv3训练以及ROS封装 - 知乎

如何用Darknet训练自定义数据集_哔哩哔哩_bilibili

!!记得测试的时候用 ./darknet detector test .data .cfg .weights .jpg  (这个指令调用的是detector.c中的detector_test)

不要用 ./darknet detect 我会出错。

比站视频解释了好多参数的意义。设置batch_size 等。

你可能感兴趣的:(自动驾驶,人工智能,机器学习)