HumanGaussian
HumanGaussian copied to clipboard
Why the skeleton image and the image rendered by gassian are in different camera view?
To be clear, when i use the code
viewpoint_cam = Camera(c2w = batch['c2w'][id],FoVy = batch['fovy'][id],height = batch['height'],width = batch['width']) render_pkg = render(viewpoint_cam, self.gaussian, self.pipe, renderbackground) image, viewspace_point_tensor, radii = render_pkg["render"], render_pkg["viewspace_points"], render_pkg["radii"]
I will get a image like this
However, when I use pyrender to generate image using code
self.nc.camera.yfov=batch['fovy'][id] self.scene_smplx.set_pose(self.nc, pose=batch['c2w'][id].cpu().numpy()) depth_smplx = self.renderer_smplx.render(self.scene_smplx, flags=pyrender.RenderFlags.DEPTH_ONLY)
or using MVP matrix to project 3d points to image directly using code
points = self.points3D @ mvp.T # [18, 4] points = points[:, :3] / points[:, 3:] # NDC in [-1, 1] xs = (points[:, 0] + 1) / 2 * H # [18] ys = (points[:, 1] + 1) / 2 * W # [18]
I get images like this,
It is clear that, unlike the first image, the second and third images seem to move horizontally.
Do you have any idea what is happening? thanks a lot!
Yeah, I guess this might be caused by a similar issue. Will rotate back to check this issue later.
Hi, have you solved this problem?
Hi, have you solved this problem?