xiexh20 / behave-dataset

Code to access BEHAVE dataset, CVPR'22
https://virtualhumans.mpi-inf.mpg.de/behave/
Other
141 stars 6 forks source link

Editing animation of person+object interaction #17

Closed anjugopinath closed 1 year ago

anjugopinath commented 1 year ago

I would like to combine the person and object point clouds into a single point cloud.

I tried using the open3d library in the behave_demo.py file:

import open3d as o3d pcd = o3d.geometry.PointCloud() pcd.points = o3d.utility.Vector3dVector(fit_meshes_local) #where fit_meshes_local is at line 67 in behave_demo.py o3d.io.write_point_cloud("/combined.ply", pcd)

But, I get an error RuntimeError: Unable to cast Python instance to C++ type (compile in debug mode for details) since open3d expects dimensions of (N,3) which I don't know how to convert to.

I tried using the concatenate function from psbody.mesh. That too did not work.

Or alternatively, is it possible to load the individual point clouds into a software like Maya or Blender such that the interaction between the two point clouds is retained?

My end goal is to be able to edit the animation in Maya/Blender.

anjugopinath commented 1 year ago

In other words,

I want to use one of these - Maya/Blender/Unity. I want to import a sequence of point clouds and edit it. Say the sequence is numbered from 1 to N. So each item (say item 1) has two different point clouds (one for the person and one for the object the person is interacting with). And for each item , I want to be able to load both the point clouds ... and be able to edit each of them individually. And finally, create an animation from this edited sequence

xiexh20 commented 1 year ago

Hi, I think it should be possible to load them in Blender(I never used other software but I guess they are the same). The human and object point clouds are simply two different .ply files. You can simple load them from blender, and select the one that you want to change for editing.