ShirleyMaxx/VirtualMarker

TypeError: cannot pickle '_io.BufferedReader' object

Opened this issue · 2 comments

Hi!When I run ‘reference.py’, I receive the following error. My CUDA version is 11.3, not 10.1. Is this the reason for the error? What should I do?

===> Start inferencing...
0%| | 0/80 [00:00<?, ?it/s]Traceback (most recent call last):
File "", line 1, in
0%| | 0/80 [00:07<?, ?it/s]
Traceback (most recent call last):
File "main/inference.py", line 357, in
File "D:\ProgramData\anaconda3\envs\marker\lib\multiprocessing\spawn.py", line 116, in spawn_main
main(args)
File "main/inference.py", line 350, in main
exitcode = _main(fd, parent_sentinel)
File "D:\ProgramData\anaconda3\envs\marker\lib\multiprocessing\spawn.py", line 126, in _main
inferencer.infer(epoch=0)
File "main/inference.py", line 115, in infer
self = reduction.pickle.load(from_parent)
EOFError: Ran out of input
for i, meta in enumerate(tqdm(self.demo_dataloader, dynamic_ncols=True)):
File "D:\ProgramData\anaconda3\envs\marker\lib\site-packages\tqdm\std.py", line 1182, in iter
for obj in iterable:
File "D:\ProgramData\anaconda3\envs\marker\lib\site-packages\torch\utils\data\dataloader.py", line 352, in iter
return self._get_iterator()
File "D:\ProgramData\anaconda3\envs\marker\lib\site-packages\torch\utils\data\dataloader.py", line 294, in _get_iterator
return _MultiProcessingDataLoaderIter(self)
File "D:\ProgramData\anaconda3\envs\marker\lib\site-packages\torch\utils\data\dataloader.py", line 801, in init
w.start()
File "D:\ProgramData\anaconda3\envs\marker\lib\multiprocessing\process.py", line 121, in start
self._popen = self._Popen(self)
File "D:\ProgramData\anaconda3\envs\marker\lib\multiprocessing\context.py", line 224, in _Popen
return _default_context.get_context().Process._Popen(process_obj)
File "D:\ProgramData\anaconda3\envs\marker\lib\multiprocessing\context.py", line 327, in _Popen
return Popen(process_obj)
File "D:\ProgramData\anaconda3\envs\marker\lib\multiprocessing\popen_spawn_win32.py", line 93, in init
reduction.dump(process_obj, to_child)
File "D:\ProgramData\anaconda3\envs\marker\lib\multiprocessing\reduction.py", line 60, in dump
ForkingPickler(file, protocol).dump(obj)
TypeError: cannot pickle '_io.BufferedReader' object

Hi, the error seems to suggest there might be an issue with the input file you provided. Would using the input.mp4 file provided in the repository also result in this issue?

I have the same problem even though I have used the input.mp4 file. Can you give me a solution?