-
|
Dear ViSP Community, I recently discovered the ViSP platform and have been impressed by its clean architecture and the quality of its visual servoing modules. Your IBVS implementation has served as an excellent baseline for my work, where I am developing a general purpose IBVS control law in Python for industrial applications. However, my current setup exposes a challenging configuration in which the standard formulations of ViSP appears to struggle. Since I have not yet been able to resolve this, I was hoping to draw on the expertise of the community to better understand how such cases are typically handled. Application Context
The current system performs well for pure translational displacements for the metallic part (≤0.2 mm error). However, pure rotation around the TCP z-axis (i.e., in-plane rotation of the part) consistently fails: the image error decreases but the robot converges to an incorrect pose. Here are some results showcasing the systems behaviour: The absolute error between the achieved TCP pose and target TCP pose is significant in x, y and z-positions. The error in the z-rotation decreases, but so does the y-rotation and the algorithm is stuck in a local minima. I get similar results for running my algorithm on a single ArUco marker, which is slightly larger compared to the metallic part:
aruco.mov
out.movMy Question
Any guidance or recommendations you might have would be extremely valuable. |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 2 replies
-
|
Dear aarist, Here are some suggestions to solve your issues :
|
Beta Was this translation helpful? Give feedback.
-
|
Perfect understanding, wonderful! As for 5), I would suggest you look at: As for a smoothing strategy, nothing is implemented in ViSP since we are not used with working in "quite poor" conditions (due to the fact that your object is very small in the image), leading to a low conditioning of the system and a high sensibility to image noise. But feel free to implement your strategy, it is a good idea that should just decrease the time-to-convergence and exponential decrease of the error. I also feel that using the moments as suggested in 5) should fix, at least in part, the influence of noise thanks to their averaging effect.
All the best! François. |
Beta Was this translation helpful? Give feedback.





















Dear aarist,
Here are some suggestions to solve your issues :