140 Star 1K Fork 311

GVP肖昆 / XTDrone

 / 详情

目标检测与跟踪启动YOLO后一直在waiting for image

待办的
创建于  
2024-04-10 16:28

老师您好,我在按照教程进行目标检测与跟踪仿真实验,遇到了一些问题。
环境:ubuntu20.04(双系统),按照教程配置的PX4.1.13的版本环境。
文中提到的Noetic下编译会出现OpenCV的版本问题,我按照注里面的内容操作重新下载了opencv 3.4.14版本,
并且在cv_bridgeConfig.cmake里面进行如下修改:
图1
图2
编译Darknet_ROS还是会报错:

error “OpenCV 4.x+ requires enabled C++11 support

之后把opencv 4.2.0删除后,错误消失,但是在编译过程中,发现只是把这个包给跳过了
会有warning
然后按照流程,启动YOLO,启动PX4室外场景仿真,此时YOLO没有收到图像,而是一直在waiting for image
一直在等待接收图像

请问有人知道是怎么回事吗?

而且启动场景时,遇到了如下报错,但是可以正常启动
报错

评论 (26)

yuzuo li 创建了任务

一模一样的问题,昨晚还在看issue有没有人遇到,今天就看到了

我的环境和你一样,今天也是做到这里。我typhoon的图像接收不到,将outdoor1.launch的无人机换成iris并修改task1.launch及uav_0.yaml中的图像话题为/iris_0/stereo_camera/left/image_raw能够输出图像并识别。但是我的行人是静止的,这导致我没办法验证目标追踪环节,不知道你有没有这个问题,另外针对这个问题希望各位大佬能够指导一下。

同样的问题,我的也是行人是静止的

请问这个/iris_0/stereo_camera/left/image_raw话题是从哪里找的呢?

想问一下您outdoor1.launch的SDF文件用的是哪一个呀?

iris对应的sdf文件是iris_stereo_camera

这个话题是我把飞机改成iris之后运行仿真会发布,所以改成这个了输入图片说明
对应的task1.launch和uav_0.ymal修改了订阅的图像话题
输入图片说明
输入图片说明
行人静止问题我准备试一下语雀里面的actor行人插件配置看看能不能有运动的行人,不行的话只能回到ubuntu18.04了

行人的问题解决了。应该是outdoor1_light.world里面本身就没有运动的小人,把outdoor1.launch中的world换成outdoor1.world就可以了输入图片说明

牛啊老哥!依据你的思路成功复现出来了

请问你当时按照流程编译还是会出现opencv版本的报错吗?您是怎样解决的呢?

是的,还是会报错的,解决方案是把OpenCV4的部分库卸载掉。

好的,谢谢你

刚刚用ubuntu18.04和px4 1.11.0装了一遍,能正常获取图像了,感觉应该是px4的版本问题

我明天打算用Ubuntu18.04重新试一下,请问你的那个行人可以走动吗?

最新进展
最新进展,在GAZEBO上可以看到无人机云台图像了,但是YOLO那边还是在waiting for image

总结一下的思路:
1.如果想简单省事,最简单的办法就是换LINUX18.04版本,跟着流程把环境都搭建出来,一般没什么太大的问题
2.如果不想换,继续一条路走到底:
2.1 按照Star老哥的思路,把无人机模型换成有camera的话题发布的(如iris),并且修改相应的outdoor1.launch、task1.launch、uav_0.yaml文件(老哥发的很详细不再赘述,按图修改),地图文件换成outdoor1.world
2.2 根据老哥的启发,我思考了问题的另一种解决办法。如果不继续更换无人机模型,继续使用此无人机模型,只需要在typhoon的SDF文件加入ROStopic有关相机发布的话题,并且让YOLO订阅接收到相应话题就好,具体思路看我接下来的步骤,最终能实现基于typhoon 470 无人机的目标识别与跟踪。

哥们你用gpu加速了吗?我用gpu加速之后再进行仿真摄像头挂了,没有图像话题了

这个样子的输入图片说明

请问一下,我把无人机换成了iris,可是这个无人机没有云台,没办法进行云台控制,改怎么进行跟踪呢

关于行人插件的问题,确实是版本的问题,目前这个行人插件在20.04下存在BUG,只能在18版本下正常使用;

而针对图像识别一直收不到图像的问题,应该是两者的话题不匹配,可以使用rqt_graph来验证这一点。可以使用话题重映射来方便解决这个问题

想请教一下您,跟踪只能跟踪人吗?可不可以跟踪其他物体的,具体的代码在哪里修改呢?

输入图片说明
是修改这里的target.id吗?

跟踪什么没有本质上的区别,有不同的跟踪算法和跟踪策略。例程只是可能的一种。

至于怎么修改代码要根据你的需求对应分析,不一定就直接拿来就能用

@star 我好像是用GPU了,不知道这个怎么看。

@star 我用的笔记本电脑,显卡用的英伟达1080TI,乌邦图里面启用了英伟达和cuda

请问20.04题主到什么进度了呀,按照上面star哥的方法是可以得到和18.04下差不多的效果是吗?

登录 后才可以发表评论

状态
负责人
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
参与者(6)
Python
1
https://gitee.com/robin_shaun/XTDrone.git
git@gitee.com:robin_shaun/XTDrone.git
robin_shaun
XTDrone
XTDrone

搜索帮助