yewzijian / RPMNet

RPM-Net: Robust Point Matching using Learned Features (CVPR2020)
MIT License
344 stars 59 forks source link

TypeError: can't pickle _thread.RLock objects #20

Closed HyungJoo-Kwon closed 3 years ago

HyungJoo-Kwon commented 3 years ago

I don't know why the error is happening. Please help me.

Traceback (most recent call last): File "train.py", line 291, in main() File "train.py", line 43, in main run(train_set, val_set) File "train.py", line 253, in run for train_data in train_loader: File "C:\Users\for\anaconda3\envs\rpmnet_test\lib\site-packages\torch\utils\data\dataloader.py", line 278, in iter return _MultiProcessingDataLoaderIter(self) File "C:\Users\for\anaconda3\envs\rpmnet_test\lib\site-packages\torch\utils\data\dataloader.py", line 682, in init w.start() File "C:\Users\for\anaconda3\envs\rpmnet_test\lib\multiprocessing\process.py", line 105, in start self._popen = self._Popen(self) File "C:\Users\for\anaconda3\envs\rpmnet_test\lib\multiprocessing\context.py", line 223, in _Popen return _default_context.get_context().Process._Popen(process_obj) File "C:\Users\for\anaconda3\envs\rpmnet_test\lib\multiprocessing\context.py", line 322, in _Popen return Popen(process_obj) File "C:\Users\for\anaconda3\envs\rpmnet_test\lib\multiprocessing\popen_spawn_win32.py", line 65, in init reduction.dump(process_obj, to_child) File "C:\Users\for\anaconda3\envs\rpmnet_test\lib\multiprocessing\reduction.py", line 62, in dump ForkingPickler(file, protocol).dump(obj) TypeError: can't pickle _thread.RLock objects

Additionally, the error occurred as above.

Traceback (most recent call last): File "", line 1, in File "C:\Users\for\anaconda3\envs\rpmnet_test\lib\multiprocessing\spawn.py", line 105, in spawn_main exitcode = _main(fd) File "C:\Users\for\anaconda3\envs\rpmnet_test\lib\multiprocessing\spawn.py", line 116, in _main self = reduction.pickle.load(from_parent) EOFError: Ran out of input

yewzijian commented 3 years ago

Hi,

I'm not sure what is happening but the problem seems to be due to multiprocessing. Can you try setting num_workers=0 in the program arguments to see if you can avoid the problem?

Zi Jian

HyungJoo-Kwon commented 3 years ago

Hi Zi Jian, thanks for your reply.

num_workers=0 arguments can avoid the problem.

HyungJoo-Kwon