shunsukesaito / PIFu

This repository contains the code for the paper "PIFu: Pixel-Aligned Implicit Function for High-Resolution Clothed Human Digitization"
https://shunsukesaito.github.io/PIFu/
Other
1.77k stars 340 forks source link

TypeError: self.scene_i cannot be converted to a Python object for pickling #112

Open Yxs-160 opened 3 years ago

Yxs-160 commented 3 years ago

greate work! but i met a question when i trained data. could you hlep me? @shunsukesaito thanks

(base) I:\PIFu>python -m apps.train_shape --dataroot I:\PIFu\training_data --random_flip --random_scale --random_trans I:\PIFu\lib\data\TrainDataset.py:102: UserWarning: loadtxt: Empty input file: "I:\PIFu\training_data\val.txt" var_subjects = np.loadtxt(os.path.join(self.root, 'val.txt'), dtype=str) train data size: 180 test data size: 360 initialize network with normal Using Network: hgpifu Name: example | Epoch: 0 | 0/180 | Err: 0.247490 | LR: 0.001000 | Sigma: 5.00 | dataT: 1.74325 | netT: 1.43968 | ETA: 09:29 Name: example | Epoch: 0 | 10/180 | Err: 0.282368 | LR: 0.001000 | Sigma: 5.00 | dataT: 0.00100 | netT: 0.32667 | ETA: 01:40 Name: example | Epoch: 0 | 20/180 | Err: 0.261466 | LR: 0.001000 | Sigma: 5.00 | dataT: 0.00100 | netT: 0.31519 | ETA: 01:15 Name: example | Epoch: 0 | 30/180 | Err: 0.256328 | LR: 0.001000 | Sigma: 5.00 | dataT: 0.00200 | netT: 0.34412 | ETA: 01:04 Name: example | Epoch: 0 | 40/180 | Err: 0.246975 | LR: 0.001000 | Sigma: 5.00 | dataT: 0.00099 | netT: 0.29920 | ETA: 00:55 Name: example | Epoch: 0 | 50/180 | Err: 0.246816 | LR: 0.001000 | Sigma: 5.00 | dataT: 0.00200 | netT: 0.35509 | ETA: 00:50 Name: example | Epoch: 0 | 60/180 | Err: 0.214378 | LR: 0.001000 | Sigma: 5.00 | dataT: 0.00100 | netT: 0.31334 | ETA: 00:45 Name: example | Epoch: 0 | 70/180 | Err: 0.212197 | LR: 0.001000 | Sigma: 5.00 | dataT: 0.00100 | netT: 0.31232 | ETA: 00:40 Name: example | Epoch: 0 | 80/180 | Err: 0.201895 | LR: 0.001000 | Sigma: 5.00 | dataT: 0.00199 | netT: 0.38407 | ETA: 00:36 Name: example | Epoch: 0 | 90/180 | Err: 0.193538 | LR: 0.001000 | Sigma: 5.00 | dataT: 0.00088 | netT: 0.29990 | ETA: 00:32 Name: example | Epoch: 0 | 100/180 | Err: 0.180991 | LR: 0.001000 | Sigma: 5.00 | dataT: 0.00100 | netT: 0.32416 | ETA: 00:28 Name: example | Epoch: 0 | 110/180 | Err: 0.197863 | LR: 0.001000 | Sigma: 5.00 | dataT: 0.00096 | netT: 0.31516 | ETA: 00:24 Name: example | Epoch: 0 | 120/180 | Err: 0.201827 | LR: 0.001000 | Sigma: 5.00 | dataT: 0.00199 | netT: 0.31116 | ETA: 00:20 Name: example | Epoch: 0 | 130/180 | Err: 0.196122 | LR: 0.001000 | Sigma: 5.00 | dataT: 0.00099 | netT: 0.31522 | ETA: 00:17 Name: example | Epoch: 0 | 140/180 | Err: 0.189962 | LR: 0.001000 | Sigma: 5.00 | dataT: 0.00100 | netT: 0.34164 | ETA: 00:13 Name: example | Epoch: 0 | 150/180 | Err: 0.177161 | LR: 0.001000 | Sigma: 5.00 | dataT: 0.00099 | netT: 0.29692 | ETA: 00:10 Name: example | Epoch: 0 | 160/180 | Err: 0.187646 | LR: 0.001000 | Sigma: 5.00 | dataT: 0.00099 | netT: 0.29337 | ETA: 00:06 Name: example | Epoch: 0 | 170/180 | Err: 0.190977 | LR: 0.001000 | Sigma: 5.00 | dataT: 0.00099 | netT: 0.31621 | ETA: 00:03 calc error (test) ... 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 100/100 [00:16<00:00, 5.97it/s] eval test MSE: 0.187251 IOU: 0.617025 prec: 0.641639 recall: 0.941304 calc error (train) ... 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 100/100 [00:16<00:00, 6.02it/s] eval train MSE: 0.187251 IOU: 0.617025 prec: 0.641639 recall: 0.941304 generate mesh (test) ... 0%| | 0/1 [00:00<?, ?it/s]I :\PIFu\lib\mesh_util.py:45: FutureWarning: marching_cubes_lewiner is deprecated in favor of marching_cubes. marching_cubes_lewiner will be removed in versi on 0.19 verts, faces, normals, values = measure.marching_cubes_lewiner(sdf, 0.5) 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:07<00:00, 7.77s/it] generate mesh (train) ... 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:07<00:00, 7.77s/it] Traceback (most recent call last): File "G:\Anaconda\lib\runpy.py", line 194, in _run_module_as_main return _run_code(code, main_globals, None, File "G:\Anaconda\lib\runpy.py", line 87, in _run_code exec(code, run_globals) File "I:\PIFu\apps\train_shape.py", line 183, in train(opt) File "I:\PIFu\apps\train_shape.py", line 90, in train Traceback (most recent call last): File "", line 1, in for train_idx, train_data in enumerate(train_data_loader): File "G:\Anaconda\lib\site-packages\torch\utils\data\dataloader.py", line 355, in iter File "G:\Anaconda\lib\multiprocessing\spawn.py", line 116, in spawn_main return self._get_iterator() File "G:\Anaconda\lib\site-packages\torch\utils\data\dataloader.py", line 301, in _get_iterator exitcode = _main(fd, parent_sentinel) File "G:\Anaconda\lib\multiprocessing\spawn.py", line 126, in _main return _MultiProcessingDataLoaderIter(self) File "G:\Anaconda\lib\site-packages\torch\utils\data\dataloader.py", line 914, in init self = reduction.pickle.load(from_parent) EOFError: Ran out of input w.start() File "G:\Anaconda\lib\multiprocessing\process.py", line 121, in start self._popen = self._Popen(self) File "G:\Anaconda\lib\multiprocessing\context.py", line 224, in _Popen return _default_context.get_context().Process._Popen(process_obj) File "G:\Anaconda\lib\multiprocessing\context.py", line 327, in _Popen return Popen(process_obj) File "G:\Anaconda\lib\multiprocessing\popen_spawn_win32.py", line 93, in init reduction.dump(process_obj, to_child) File "G:\Anaconda\lib\multiprocessing\reduction.py", line 60, in dump ForkingPickler(file, protocol).dump(obj) File "stringsource", line 2, in pyembree.rtcore_scene.EmbreeScene.__reduce_cython__ TypeError: self.scene_i cannot be converted to a Python object for pickling

SuvinduG commented 2 years ago

I've been having the same error. Tried reinstalling every module twice and nothing worked. BTW I am using windows, so I don't know if you can resolve this by using linux.