Closed loiannog closed 12 years ago
Hi Giuseppe, Could you explain why and how you would like to change the parameter "replace" at runtime? You can modify all other parameters that are described on the wiki page www.ros.org/wiki/viso2_ros in your launch files or via command line arguments (see documentation of roslaunch and rosrun).
Dear Stephan, we noticed in our system trying the algorithm even if there is a good matching that the odometry drifts when the vision system is blocked in a fixed position. A part of this behavior is due to the fact that the reference images are changed at every iteration. To avoid partially this drift it is possible to set replace=false such that the same reference image is considered. his could be a good solution even in robotics application where many times it is needed to stabilize the vehicle to a fixed position in the space and in this case we are sure that the reference image is always the same and so the option replace=false can be set. When the vehicle is moving replace=true can be set. That's why this option could be really useful. Have you tried the algorithm and noticed a drift on the position odometry too? Best regards. Giuseppe Loianno
Il giorno 05 aprile 2012 20:37, Stephan < reply@reply.github.com
ha scritto:
Hi Giuseppe, Could you explain why and how you would like to change the parameter "replace" at runtime? You can modify all other parameters that are described on the wiki page www.ros.org/wiki/viso2_ros in your launch files or via command line arguments (see documentation of roslaunch and rosrun).
Reply to this email directly or view it on GitHub: https://github.com/srv/srv_vision/issues/2#issuecomment-4982794
Hi Giuseppe, yes, we observed this drift as well. The mono odometer has a kind of detection for small movements, as it needs it for robust F-Matrix estimation. The stereo odometer however misses that feature. I would like Andreas to add this to his lib, maybe I can provide him a patch. Regarding the setting of replace=true via a ROS parameter, I think this would require reading that parameter in every iteration which may cause an extra communication with the ROS parameter server (= time lag). A ROS service that you could call to fix that parameter to true once you stopped your robot and then again to false when you start moving seems more appropriate to me. Maybe I will move to using dynamic_reconfigure for all the parameters which would support this as well. Unfortunately I have few time to work on this issue now, maybe later in May. I will keep it in mind. Thanks for the report!
Best regards, Stephan
Giuseppe, I just pushed a new version of the stereo_odometer to github. It contains a new parameter "~motion_threshold" for drift compensation. In my setup I don't see any drift anymore when the camera is fixed, setting this parameter to e.g. 5.0.
Stephan
Stephan, thank you very much for your support. I have just a question for you so that i have not to change everything in my ros node since i have done a couple of changes to adapt to my case. Which file names have you updated such that i can take just changes you did and add to my version. Thank you very much. Giuseppe
2012/7/11 Stephan < reply@reply.github.com
Giuseppe, I just pushed a new version of the stereo_odometer to github. It contains a new parameter "~motion_threshold" for drift compensation. In my setup I don't see any drift anymore when the camera is fixed, setting this parameter to e.g. 5.0.
Stephan
Reply to this email directly or view it on GitHub: https://github.com/srv/srv_vision/issues/2#issuecomment-6903557
Hi Giuseppe, please refer to the last commit on the master branch to see all changes: https://github.com/srv/srv_vision/commit/d33528d1b99f1e73d6606b0362167b19db2b2fa4 If you think your changes could be valuable to others, please feel free to submit a patch!
Regards, Stephan
On Wed, Jul 11, 2012 at 1:13 PM, loiannog reply@reply.github.com wrote:
Stephan, thank you very much for your support. I have just a question for you so that i have not to change everything in my ros node since i have done a couple of changes to adapt to my case. Which file names have you updated such that i can take just changes you did and add to my version. Thank you very much. Giuseppe
2012/7/11 Stephan < reply@reply.github.com
Giuseppe, I just pushed a new version of the stereo_odometer to github. It contains a new parameter "~motion_threshold" for drift compensation. In my setup I don't see any drift anymore when the camera is fixed, setting this parameter to e.g. 5.0.
Stephan
Reply to this email directly or view it on GitHub: https://github.com/srv/srv_vision/issues/2#issuecomment-6903557
Reply to this email directly or view it on GitHub: https://github.com/srv/srv_vision/issues/2#issuecomment-6903782
Hi Giuseppe, please note that I just renamed the stack and a containing package. To keep up with the change, just change the remote URL in your local clone to the new one (srv_vision.git => viso2.git) and run an update. The ROS wiki will take a while to get the documentation updated.
Stephan, do you think it is possible to add the option replace=true as a ros parameter to set at running time? Is it even possible to set parameters without changing those in the program? If yes in which way? Thanks Giuseppe