Closed
Description
Hi,
Currently, I'm using Rerun to visualize 16 pinhole cameras. When I run the script, sometimes it visualizes all 16 cameras together, sometimes it only visualizes the first 9 cameras and when I "reset viewer" using gui, it visualizes only the rest of the cameras (10-16). When I reset again, it visualizes the first 9 again, and is stuck between these two alternatives. Sometimes visualizing a totally different scene, and then visualizing the original (16-camera) scene helps to get rid of this bug and I am able to visualize 16 cameras correctly. Sometimes it does not help.
The related part of the code is following:
for camera_name in calibrations.keys():
calibration = calibrations[camera_name]
K = np.array(calibration['intrinsics_matrix'])
rr.log(f"scene/{camera_name}",
rr.Pinhole(
resolution=calibration['image_size'],
image_from_camera=K[:3, :3].flatten()
))
image_path = os.path.join(image_folder, camera_name, os.listdir(os.path.join(image_folder, camera_name))[0])
image = cv2.cvtColor(cv2.imread(image_path), cv2.COLOR_BGR2RGB)
rr.log(f"scene/{camera_name}", rr.Image(image))
translation = np.array(calibration['translation'])
R_inv = np.linalg.inv(calibration['rotation_matrix'])
center = np.matmul(R_inv, -translation)
rr.log(f"scene/{camera_name}", rr.Transform3D(mat3x3=R_inv, translation=center.flatten()))
Thanks for your help.