qianlim / pop Goto Github PK
View Code? Open in Web Editor NEWOfficial implementation of the ICCV 2021 paper: "The Power of Points for Modeling Humans in Clothing".
Home Page: https://qianlim.github.io/POP
License: Other
Official implementation of the ICCV 2021 paper: "The Power of Points for Modeling Humans in Clothing".
Home Page: https://qianlim.github.io/POP
License: Other
Hi. I am confused about the transformation matrix T. The ri
in Eq(2) is the displacement of the point on posed human body without outfits, why not add pi
directly? That is: xi=ri+pi
. Could you explain the T and how to calculate it?
For evaluation during training, the value of the "geom_featmap" seems to be reset to the most recently saved value.
Lines 193 to 195 in a05404d
(POP) siduo@siduo-NK50S5-SZ:~/下载/POP-main$ python main.py --config configs/config_demo.yaml --mode test
------------------------Loading checkpoint POP_pretrained_ReSynthdata_12outfits_epoch00400_model.pt
------------------------Test model with checkpoint at epoch 400
------------------------Eval on test data, seen outfits, unseen poses...
Loading test data...
Loading rp_alexandra_posed_006, 0 examples..
0it [00:00, ?it/s]
Data loaded, in total 0 test examples.
Evaluating...
0it [00:00, ?it/s]
Traceback (most recent call last):
File "main.py", line 354, in
main()
File "main.py", line 256, in main
test_stats = test_seen_clo(
File "/home/siduo/下载/POP-main/lib/infer.py", line 316, in test_seen_clo
test_m2s /= n_test_samples
ZeroDivisionError: division by zero
Hi, thanks for sharing this great work, I'm wondering how can i get the original meshes from which the scan point cloud is generated? Are they included somewhere in the dataset we downloaded or they are not provided? Thanks!!
Hi, thank you for sharing the code. I noticed a "no distribution" term in your license. I wonder whether I can open source my own code which is partly based on POP (for noncommercial research purpose only, of course).
Hi,
how to inference on custom data? like a single static scan. Need it be fitted to a spml-x model?
If I want to animate this scan, how to get a pose sequence like the "*.npz" file in you demo data?
Can you please give the instruction like qianlim/SCALE#6 (comment) ?
Again, thanks for your excellent work!
Hi,
Thanks for sharing your great work! I notice that the scale and translation of "scan_pc" and "body_verts" in the provided packed data are different from meshes in the original CAPE dataset. What is the scale and translation parameters you used to normalize the meshes?
Thanks!
Hi,
Thanks for your very interesting work. Could I know when will you release the code of POP? Hoping this will be soon.
Thank you very much!
Want to test with your own data set, do you need to retrain the model?
It seems like the released checkpoint is trained with different hyperparameters -
python main.py --config configs/config_demo.yaml --mode test
/home/kd/anaconda3/envs/pop/lib/python3.8/site-packages/torch/functional.py:504: UserWarning: torch.meshgrid: in an upcoming release, it will be required to pass the indexing argument. (Triggered internally at /opt/conda/conda-bld/pytorch_1695392036766/work/aten/src/ATen/native/TensorShape.cpp:3526.)
return _VF.meshgrid(tensors, **kwargs) # type: ignore[attr-defined]
------------------------Loading checkpoint POP_pretrained_CAPEdata_14outfits_epoch00400_model.pt
Traceback (most recent call last):
File "main.py", line 341, in <module>
main()
File "main.py", line 125, in main
model.load_state_dict(ckpt_loaded['model_state'])
File "/home/kd/anaconda3/envs/pop/lib/python3.8/site-packages/torch/nn/modules/module.py", line 2152, in load_state_dict
raise RuntimeError('Error(s) in loading state_dict for {}:\n\t{}'.format(
RuntimeError: Error(s) in loading state_dict for POP:
size mismatch for unet_posefeat.upconvC5.up.1.weight: copying a param with shape torch.Size([64, 384, 3, 3]) from checkpoint, the shape in current model is torch.Size([64, 256, 3, 3]).```
Hi, great work for human modeling, and I wonder to know what's mean of vtransf, I just found that: "a numpy array of shape (N_vert, 3, 3): the local-to-global transformation matrix of each vertex on the posed SMPL-X body." what's local-to-global mean and how to get it?
This file stores the name of the model and the name of the folder to be guessed.
In my understanding, the things stored in this file should be modifiable
But
When I delete the next line of seen
, or replace the in unseen
with seen
, an error will appear
I understand that there is an error. Is this file fixed?
I found that not all faces are included in this file, is this right?
What neural network do you use for this job?
hello when I run python main.py --config configs/config_demo.yaml --mode test
the following error will occur.
I tried to download this package through pip install, but the package was not found.
After I changed from chamferdist.chamferdist import ChamferDistance
to from chamferdist import ChamferDistance
, the following error occurred again.
I would like to ask how this can be corrected. Thank you very much.
Hello, it seems in the ReSynth Dataset download page, the below texts are without hyperlinks, so I cannot download demo data.
Download links:
Data_for_POP_demo: packed npz files | high-res point clouds
Line 35 in c7e045e
Thanks for sharing the code of the wonderful work!
I had tried to test the code with pre-trained weight for ReSynthedata provided in the link in Readme. With the default configuration setting, there is a dimension mismatch between the pre-trained weight and the defined network. Specifically, for unet_posefeat
defined by this module, UnetNoCond7DS
the layer upconvC5
should have input channel size as 256. However, in the pre-trained model, its dimension is 384 which yields dimension mismatch error during loading that model like below.
Is there any way to fix this?
I found the number of points is 10475, same as SMPLX, and I want to get a mesh from the pointcloud data. I use the face index from "https://github.com/vchoutas/smplx#example", but it is not suitable. How can I transfer the pointcloud to mesh. Thanks!
Hi,
In Fig 4. of the paper, you mentioned that the point clouds are rendered with surfels. Could you kindly share the code for the point rendering with surfels?
Thanks!
python main.py --config configs/config_demo.yaml --mode test ,出现
RPly: Unable to open file
Read PLY failed: unable to open file: /mnt/data2/cv610/anaconda3/envs/SCALEcode/POP/lib/../data/resynth/scans/rp_beatrice_posed_005/96_longshort_flying_eagle/00020_
------Step 1: Optimizing w.r.t. UNSEEN scan with full_gt
Traceback (most recent call last):
File "main.py", line 345, in
main()
File "main.py", line 332, in main
**model_config
File "/mnt/data2/cv610/anaconda3/envs/SCALEcode/POP/lib/infer.py", line 414, in test_unseen_clo
num_unseen_frames=num_unseen_frames
File "/mnt/data2/cv610/anaconda3/envs/SCALEcode/POP/lib/infer.py", line 187, in reconstruct
random_subsample_scan=random_subsample_scan, num_unseen_frames=num_unseen_frames)
File "/mnt/data2/cv610/anaconda3/envs/SCALEcode/POP/lib/infer.py", line 103, in model_forward_and_loss
lnormal, closest_target_normals = normal_loss(pred_normals, target_pc_n, idx_closest_gt)
File "/mnt/data2/cv610/anaconda3/envs/SCALEcode/POP/lib/losses.py", line 21, in normal_loss
target_normals_chosen = torch.gather(target_normals, dim=1, index=nearest_idx)
RuntimeError: setStorage: sizes [1, 47911, 3], strides [0, 0, 1], storage offset 0, and itemsize 4 requiring a storage size of 12 are out of bounds for storage of s
Is this a bug? Double self.upconv3
.
Line 413 in a05404d
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.