-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Simplify camera transformations with the new Frame3d
-Feature from RoSys
#152
Conversation
I fixed the |
@pascalzauberzeug or @angelom93: you can review and test the code already (with rosys main branch). That way we could merge as soon as the 0.14.0 version of RoSys get's released. |
@rodja I already checked the code, but don't have time to test it on a robot until tuesday |
@rodja @pascalzauberzeug I tried to get this PR working on a real robot. After fixing some issues with the calibration dialog and camera card, I encountered a bigger problem. In line 210 of camera_card.py, we try to get the image position of the world coordinates, including the odometer position of the robot:
I think we need to pass the robot’s pose as
Additionally, there was a problem with the old calibration on the robot, as it seems to be incompatible with the new code. Upgrading would require us to either recalibrate all robots or create a calibration import method. |
@angelom93 Wow. Thanks for uncovering these issues. Let's dive in:
The camera pose should have already a associated frame which automatically should be used when doing the projection. At least that was true when testing in simulation. Maybe the frame is not set correctly on a real robot?
That is problematic. How much effort would it be to write such a calibration import step? Maybe that is better than recalibrating every robot? |
@rodja I don't have a new calibration file on hand, but I think it shouldn't be too hard to write a converter. When looking at calibration in 0.14.0, extrinsics is a Pose3D and before it was it's own class. |
Here is an example of a broken calibration from F13/RB36
|
@rodja The camera and projection movement are now fixed for the 3dScene with zauberzeug/rosys#183. |
Sounds good to me! |
Since the next RoSys release will fix zauberzeug/rosys#130, this PR utilizes the new
Frame3d
to get rid of hacks throughout the codebase. While at it, I fixed some typing issues, made some cleanups and extracted/renamed variables to improve readability and consistency.NOTE: this branch does only work with the RoSys main line at the moment and should only be merged after RoSys 0.14.0 has been released.
ToDos
requirements.txt