Here are the shapes
tgt_bg # (#channels, height, width)
src_bg # (#views, #channels, height, width)
tgt_rgb # (#frames, #channels, height, width) I think this is not used in the code
src_rgb # (#views, #frames, #channels, height, width) this is the main input
poses_bounds # (1, #cameras, 17)

So #views is a subset of the cameras and #cameras is the total camera count.
#frames is only 1 for now.
For poses_bounds, it is a bit more complicated.
17 is a flattened 3x5 array with 2 additional parameters denoting the near and far plane of the camera.
What I would do is to acquire the 3x5 array with poses_bounds[..., :-2].reshape([-1, 3, 5])
The 3x5 array is the camera extrinsic matrix [R|t] concatenated with np.array([height, width, focal_length]) as its fifth column.
I am not sure if this is what you are looking for?
I pulled the image npy files directly from a larger dataset, so it would be a bit more complex to look into the processing code for that.
Another note is that my labmate and I discovered we could put torch.cuda.synchronize() before
fg_mpi = self.gen_mpi(self.mpi_net, src_imgs[:, :, 0], src_exts, src_ints, depths) and it would solve the issue.
Does this sound like a possible bug in GPU synchronization?
Thanks.