-
Notifications
You must be signed in to change notification settings - Fork 31
Description
I’m having trouble detecting AprilTags because the detections are not consistent. Sometimes the transforms are correct, but other times they come out completely misaligned.
Currently, I’m using an IMX219 camera with the isaac_ros_argus_camera driver.
I believe the issue is that my camera is mounted with the ribbon cable pointing down, which causes the image to be rotated 180 degrees.
My main question is: what should the processing pipeline look like in order to use the camera correctly with isaac_ros_apriltag?
How should I handle calibration?
Option A:
• Take the raw driver output (isaac_ros_argus_camera) at 3280×2464 (flipped) and calibrate the camera at that resolution.
• Then rectify the image with isaac_ros_image_proc.
• During runtime: resize and flip it (using isaac_ros_image_pipeline), and finally send it to isaac_ros_apriltag.
Option B:
• Take the raw driver output (isaac_ros_argus_camera) at 3280×2464 (flipped).
• Resize to 1920×1080 (isaac_ros_image_pipeline).
• Flip using flip_mode=BOTH (isaac_ros_image_pipeline).
• Perform the calibration at this stage (resized + flipped).
• During runtime:
• Driver output at 3280×2464 (flipped) → resize to 1920×1080 (isaac_ros_image_pipeline) → flip with flip_mode=BOTH → rectify (isaac_ros_image_proc) → send to isaac_ros_apriltag.
Finally, is there any way to make isaac_ros_argus_camera output the image already flipped?
If not, what is the correct approach for calibration and the image pipeline so that the driver output is properly aligned for isaac_ros_apriltag?