Ronan0912 / ros_opentld

50 stars 47 forks source link

The GUI keeps crashing #2

Closed awesomebytes closed 11 years ago

awesomebytes commented 11 years ago

Hello!

Thank you very much for this port to ROS of the OpenTLD, I found out recently about OpenTLD and wanted to do it myself but luckily I found out this before doing duplicate work!

I've been implementing a little thing to use it and see in Rviz the tracked point using a xtion: https://github.com/awesomebytes/opentld_tracked_point_xtion It's just a hack right now to see if it works but can be very useful.

The problem is that when I leave the program running the GUI keeps crashing and respawning. The tracker still works but this happens all the time and is kind of annoying. I can't give you more data about the crashing right now cause I don't have the xtion in my hands but I wanted to know if this happened to you too. Maybe I'm doing something wrong.

By the way, I would like to be able to use the tracker with multiple streams of video / or multiple trackers on the same stream. Do you think this is hard to implement with your actual implementation? I think is just a matter of putting some new node names for every "tracking instance" and pass them around but maybe I'm missing some point there.

Ronan0912 commented 11 years ago

Hi!

Ok for the visualization of the tracker point in Rviz with a Xtion. OpenTLD can be used in a lot of robotics applications.

I noticed this problem in the GUI node when the reset button is pushed but I didn't understand why it happens (it doesn't occur every time). I tried to debug it with gdb without success ... so I put a respawn attribute in the GUI node launch file (it should have been temporary but I didn't take the time to solve the problem ...). I will try to solve it this week and I will keep you informed!

About the use of the tracker with multiple streams of video/or multiple trackers, there are two solutions : implement OpenTLD with several targets (a little complicated) or launch several tracker nodes (easier but it will take a lot of CPU resources with a 30 FPS video feed...). If you want to use multiple video streams, I suggest to use something like a ROS node which published the video stream that you have dynamically selected.

Ronan

PS : I see that you are testing the Asus Xtion, how is it compared to the Kinect?

awesomebytes commented 11 years ago

If I have time I'll try to debug it with gdb too but right now I lost too much time playing around with openTLD haha Thank you for looking into the issue, this tracker can be a huge help for doing a lot of stuff.

About the implementation, I think the first option is quite.... hardcore. The several nodes appeal more to me. If there isn't a need of a really-fast-tracking you can let that nodes run on other computers which is nice :)

I like the Asus Xtion a lot because: 1) it only needs USB power. 2) it has in-firmware calibration 3) size/weight < kinect On the other hand if you want to develop with the Microsoft libraries you can't. But that's not our case I suppose :)

2013/4/30 Ronan Chauvin notifications@github.com

Hi!

Ok for the visualization of the tracker point in Rviz with a Xtion. OpenTLD can be used in a lot of robotics applications.

I noticed this problem in the GUI node when the reset button is pushed but I didn't understand why it happens (it doesn't occur every time). I tried to debug it with gdb without success ... so I put a respawn attribute in the GUI node launch file (it should have been temporary but I didn't take the time to solve the problem ...). I will try to solve it this week and I will keep you informed!

About the use of the tracker with multiple streams of video/or multiple trackers, there are two solutions : implement OpenTLD with several targets (a little complicated) or launch several tracker nodes (easier but it will take a lot of CPU resources with a 30 FPS video feed...). If you want to use multiple video streams, I suggest to use something like a ROS node which published the video stream that you have dynamically selected.

Ronan

PS : I see that you are testing the Asus Xtion, how is it compared to the Kinect?

— Reply to this email directly or view it on GitHubhttps://github.com/Ronan0912/ros_opentld/issues/2#issuecomment-17251897 .

Ronan0912 commented 11 years ago

Hi!

I pushed a patch to resolve the GUI crashing issue. It was a threading problem. A Qt function which change the cursor shape was called in the ROS bounding box callback. In fact, all the Qt code must be called in the Qt thread ...

Try it and keep me informed ;-)

Ronan

awesomebytes commented 11 years ago

I'll need a couple of days to try it as I'm traveling right now, thanks for your effort! :) On May 3, 2013 8:01 PM, "Ronan Chauvin" notifications@github.com wrote:

Hi!

I pushed a patch to resolve the GUI crashing issue. It was a threading problem. A Qt function which change the cursor shape was called in the ROS bounding box callback. In fact, all the Qt code must be called in the Qt thread ...

Try it and keep me informed ;-)

Ronan

— Reply to this email directly or view it on GitHubhttps://github.com/Ronan0912/ros_opentld/issues/2#issuecomment-17409017 .