Code Monkey home page Code Monkey logo

deepmulticap's People

Contributors

dsaurus avatar y-zheng18 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

deepmulticap's Issues

AttributeError: 'Namespace' object has no attribute 'schedule'

when I run train.sh ,there is a problem,can you tell me how to solve it
Traceback (most recent call last):
File "apps/train_dmc.py", line 162, in
train(opt)
File "apps/train_dmc.py", line 153, in train
lr = adjust_learning_rate(optimizerG, epoch, lr, opt.schedule, opt.gamma)
AttributeError: 'Namespace' object has no attribute 'schedule'

Trimesh Runtime Error

I've been trying to run a training session by following the instructions given. The Dataloader returns a timeout exception. After some tracing, it turns out the code halts in the following line in DMCDataset.py
inside = mesh.contains(sample_points)

when I replaced it with the following line, the training runs properly but it assumes all the sampling points are valid which is not correct:
inside=np.ones(sample_points.shape[0]).astype(np.bool8)

what could be the correct solution for that issue?

SMPL code

Hello! How can I find the code of fitting SMPL-X models through 3D KeyPoints estimated from multi-view video by a light-weight total capture method? Thanks so much!!

AttributeError: 'function' object has no attribute 'var'

您好感谢开源这么优秀的工作,我在跑你的程序的时候报错
Traceback (most recent call last):
File "render_smpl.py", line 97, in
render_smpl_global_normal(args.dataroot, args.obj_path, args.faces_path, res, args.yaw_list, args.flip_y, args.flip_normal)
File "render_smpl.py", line 50, in render_smpl_global_normal
camera = t3.Camera(res=res)
File "/workspace/DeepMultiCap/taichi_render_gpu/taichi_three/transform.py", line 111, in init
self.mask = ti.Vector.var(3, ti.f32, self.res)
AttributeError: 'function' object has no attribute 'var'

module 'numpy' has no attribute 'bool' when run demo

when I run demo by the following code, I got error module 'numpy' has no attribute 'bool'

sh render_two.sh
sh demo.sh

the detail error is the following

np.bool was a deprecated alias for the builtin bool. To avoid this error in existing code, use bool by itself. Doing this will not modify any behavior and is safe. If you specifically wanted the numpy scalar type, use np.bool_ here.
The aliases was originally deprecated in NumPy 1.20; for more details and guidance see the original release note at:
https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations

The two individuals are separated in the merged 3D model when Multi-Person reconstruction

Hi, Thanks for your great works.

I can reproduce the result by the demo in the repository.

But I found an issue after I merged the two meshes into one mesh.
As the following image shows, two persons are separated.
image

The two individuals in the input image are interacting and connected. However, in the merged 3D model, the two individuals are separated.

I merged the two .obj files which are generated in the demo of this repository with the following code

import torch
import pytorch3d.io as p3dio
from pytorch3d.structures import Meshes

# Load the two .obj files
mesh1_data = p3dio.load_obj("results/dmc_demo/inference_eval_20_0_0.obj")
mesh2_data = p3dio.load_obj("results/dmc_demo/inference_eval_20_1_0.obj")

# Extract vertices and faces from the loaded data
mesh1_verts, mesh1_faces, _ = mesh1_data
mesh2_verts, mesh2_faces, _ = mesh2_data

# Concatenate vertices
merged_verts = torch.cat([mesh1_verts, mesh2_verts], dim=0)

# Concatenate faces
num_verts_mesh1 = len(mesh1_verts)
mesh2_faces_idx = mesh2_faces.verts_idx + num_verts_mesh1
merged_faces = torch.cat([mesh1_faces.verts_idx, mesh2_faces_idx], dim=0)

# Create a new Meshes object with merged vertices and faces
merged_mesh = Meshes(verts=[merged_verts], faces=[merged_faces])

# Save the merged mesh as a new .obj file
p3dio.save_obj("merged_mesh.obj", verts=merged_mesh.verts_list()[0], faces=merged_mesh.faces_list()[0])

Is there some way to improve the result when multi-person are interactive with each other?

Regards and Thanks

problem when voxelizes the SMPL mesh.

Thank you for sharing the code.

I had found some problem in trimesh voxelization with binvox.

There are cases where the function 'mesh.voxelized' does not terminate.

image

Is there the way to address this problem?

Thank you.

Question about your attention module

Hi,

In DMCNet, You firstly use Hourglass to extract multi-level features, then you fuse these features from differnt views by attention module.

However, the code shows below indicates you discard all the low level features and only uses the last level. Which is different from the original implentation of PIFu. Is it right?

def attention(self, feat, feature_fusion):
    att_feat = torch.zeros_like(feat[-1:])
    num_views = self.num_views
    
    for view in range(num_views):
        att_feat[-1, :, view] = feat[-1, :, view]  ## Only use the last level ?
    att_feat = att_feat.permute(0, 1, 4, 2, 3).contiguous().reshape(-1, num_views, feat.shape[3])
    att_feat, = feature_fusion(att_feat)
    _, B, V, D, N = feat.shape
    att_feat = att_feat.reshape(-1, B, N, V, D).permute(0, 1, 3, 4, 2)
    return att_feat

Question about the attention block.

Thanks for sharing the code of the paper. I have a question about the code in line 234-237.

geo_feature = torch.cat(geo_feature, dim=0)

``
geo_feature = torch.cat(geo_feature, dim=0)
print('attention input shape:{0}'.format(geo_feature.shape))

[4, 1, 4, 320, 5000]

if self.opt.coarse_part:
geo_feature = self.attention(geo_feature, self.feature_fusion)
# [1, 1, 4, 320, 5000]
print('attention output shape:{0}'.format(geo_feature.shape))
``
the shape[0] of geo_feature is become from 4 to1, but geo_feature.shape[0] is level number, it is not the viewr number become one.
Any one can help me understand the probelem?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.