williamyang1991 / Rerender_A_Video

[SIGGRAPH Asia 2023] Rerender A Video: Zero-Shot Text-Guided Video-to-Video Translation
https://www.mmlab-ntu.com/project/rerender/
Other
2.97k stars 202 forks source link

FileNotFoundError: [Errno 2] No such file or directory: 'videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_1/0002.bin' #38

Closed Kendrick-Stein closed 1 year ago

Kendrick-Stein commented 1 year ago

Thanks for publishing your great work. I would highly appreciate it if you could help me with the following problem.

I was trying to run the example code and ran into this werid problem. The first two steps went perfectly fine, but the third command line 'python rerender.py --cfg config/van_gogh_man.json -nr' simply won't work. I figured out it was trying to read the image in path "videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_1/0002.jpg" and similarly in 'videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_31/0032.jpg'. but the file simply doesn't exist there. I wonder what went wrong? Could it be in the first two steps?

terminal output No module 'xformers'. Proceeding without it. python video_blend.py videos/pexels-antoni-shkraba-8048492-540x960-25fps --beg 1 --end 101 --itv 10 --key keys --output videos/pexels-antoni-shkraba-8048492-540x960-25fps/blend.mp4 --fps 25.0 --n_proc 4 -ps /home/smbu/anaconda3/envs/rerender/lib/python3.8/site-packages/torch/functional.py:478: UserWarning: torch.meshgrid: in an upcoming release, it will be required to pass the indexing argument. (Triggered internally at /opt/conda/conda-bld/pytorch_1659484810403/work/aten/src/ATen/native/TensorShape.cpp:2894.) return _VF.meshgrid(tensors, kwargs) # type: ignore[attr-defined] /home/smbu/anaconda3/envs/rerender/lib/python3.8/site-packages/torch/functional.py:478: UserWarning: torch.meshgrid: in an upcoming release, it will be required to pass the indexing argument. (Triggered internally at /opt/conda/conda-bld/pytorch_1659484810403/work/aten/src/ATen/native/TensorShape.cpp:2894.) return _VF.meshgrid(tensors, kwargs) # type: ignore[attr-defined] /home/smbu/anaconda3/envs/rerender/lib/python3.8/site-packages/torch/functional.py:478: UserWarning: torch.meshgrid: in an upcoming release, it will be required to pass the indexing argument. (Triggered internally at /opt/conda/conda-bld/pytorch_1659484810403/work/aten/src/ATen/native/TensorShape.cpp:2894.) return _VF.meshgrid(tensors, kwargs) # type: ignore[attr-defined] /home/smbu/anaconda3/envs/rerender/lib/python3.8/site-packages/torch/functional.py:478: UserWarning: torch.meshgrid: in an upcoming release, it will be required to pass the indexing argument. (Triggered internally at /opt/conda/conda-bld/pytorch_1659484810403/work/aten/src/ATen/native/TensorShape.cpp:2894.) return _VF.meshgrid(tensors, kwargs) # type: ignore[attr-defined] videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_31/0031.jpg videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_81/0081.jpg videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_1/0001.jpg videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_31/0032.jpg Process Process-2: Traceback (most recent call last): File "/home/smbu/anaconda3/envs/rerender/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap self.run() File "/home/smbu/anaconda3/envs/rerender/lib/python3.8/multiprocessing/process.py", line 108, in run self._target(*self._args, self._kwargs) File "/home/smbu/mediadisk/Rerender_A_Video/video_blend.py", line 110, in process_sequences process_one_sequence(i, video_sequence) File "/home/smbu/mediadisk/Rerender_A_Video/video_blend.py", line 97, in process_one_sequence cmd += ' ' + g.get_cmd(j, w) File "/home/smbu/mediadisk/Rerender_A_Video/blender/guide.py", line 101, in get_cmd warped_img = flow_calc.warp(prev_img, self.flows[i - 1], File "/home/smbu/mediadisk/Rerender_A_Video/flow/flow_utils.py", line 188, in warp if len(img.shape) == 2: AttributeError: 'NoneType' object has no attribute 'shape' videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_81/0082.jpg Process Process-4: Traceback (most recent call last): File "/home/smbu/anaconda3/envs/rerender/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap self.run() File "/home/smbu/anaconda3/envs/rerender/lib/python3.8/multiprocessing/process.py", line 108, in run self._target(*self._args, *self._kwargs) File "/home/smbu/mediadisk/Rerender_A_Video/video_blend.py", line 110, in process_sequences process_one_sequence(i, video_sequence) File "/home/smbu/mediadisk/Rerender_A_Video/video_blend.py", line 97, in process_one_sequence cmd += ' ' + g.get_cmd(j, w) File "/home/smbu/mediadisk/Rerender_A_Video/blender/guide.py", line 101, in get_cmd warped_img = flow_calc.warp(prev_img, self.flows[i - 1], File "/home/smbu/mediadisk/Rerender_A_Video/flow/flow_utils.py", line 188, in warp if len(img.shape) == 2: AttributeError: 'NoneType' object has no attribute 'shape' videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_61/0061.jpg videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_1/0002.jpg Process Process-1: Traceback (most recent call last): File "/home/smbu/anaconda3/envs/rerender/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap self.run() File "/home/smbu/anaconda3/envs/rerender/lib/python3.8/multiprocessing/process.py", line 108, in run self._target(self._args, self._kwargs) File "/home/smbu/mediadisk/Rerender_A_Video/video_blend.py", line 110, in process_sequences process_one_sequence(i, video_sequence) File "/home/smbu/mediadisk/Rerender_A_Video/video_blend.py", line 97, in process_one_sequence cmd += ' ' + g.get_cmd(j, w) File "/home/smbu/mediadisk/Rerender_A_Video/blender/guide.py", line 101, in get_cmd warped_img = flow_calc.warp(prev_img, self.flows[i - 1], File "/home/smbu/mediadisk/Rerender_A_Video/flow/flow_utils.py", line 188, in warp if len(img.shape) == 2: AttributeError: 'NoneType' object has no attribute 'shape' videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_61/0062.jpg Process Process-3: Traceback (most recent call last): File "/home/smbu/anaconda3/envs/rerender/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap self.run() File "/home/smbu/anaconda3/envs/rerender/lib/python3.8/multiprocessing/process.py", line 108, in run self._target(*self._args, **self._kwargs) File "/home/smbu/mediadisk/Rerender_A_Video/video_blend.py", line 110, in process_sequences process_one_sequence(i, video_sequence) File "/home/smbu/mediadisk/Rerender_A_Video/video_blend.py", line 97, in process_one_sequence cmd += ' ' + g.get_cmd(j, w) File "/home/smbu/mediadisk/Rerender_A_Video/blender/guide.py", line 101, in get_cmd warped_img = flow_calc.warp(prev_img, self.flows[i - 1], File "/home/smbu/mediadisk/Rerender_A_Video/flow/flow_utils.py", line 188, in warp if len(img.shape) == 2: AttributeError: 'NoneType' object has no attribute 'shape' ebsynth: 3.1687724590301514 Traceback (most recent call last): File "video_blend.py", line 319, in main(args) File "video_blend.py", line 268, in main process_seq(video_sequence, i, blend_histogram, blend_gradient) File "video_blend.py", line 199, in process_seq dist1s.append(load_error(bin_a, img_shape)) File "video_blend.py", line 160, in load_error with open(bin_path, 'rb') as fp: FileNotFoundError: [Errno 2] No such file or directory: 'videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_1/0002.bin'

Kendrick-Stein commented 1 year ago

The first key frame and the following key frames look fine to me? I guess it went wrong from rendering the following frames from the first one. E.g. rendering the second frame based the first key frame does not save any pic, and when it wanted to continual the rendering process, it found out that there are no generated frames from the previous steps?

image
williamyang1991 commented 1 year ago

In your case, some images are generated but somes are not, rather than missing all images. So the Ebsynth is installed correctly but fails on some sub Processes. I'm not sure the exact reason. But when the workload is heavy or GPU is nearly out of usage, we observed similar cases occasionally. Since we are not the developer of Ebsynth, we don't know how to fix Ebsynth.

likewise, if you find 0012 missing, you can run:

python video_blend.py videos/pexels-antoni-shkraba-8048492-540x960-25fps --beg 11 --end 21 --itv 10 --key keys --output videos/pexels-antoni-shkraba-8048492-540x960-25fps/blend.mp4 --fps 25.0 --n_proc 1 -ps

And finally merge all results together into a single video.

Kendrick-Stein commented 1 year ago

I was not able to run the Ebsynth on the interval using the command you suggest. It still encountered the same problem.

Based on the output, I guess it successfully read the pic 0001, but already failed to generate 0002? Is it a correct guess?

python video_blend.py videos/pexels-antoni-shkraba-8048492-540x960-25fps --beg 1 --end 11 --itv 10 --key keys --output videos/pexels-antoni-shkraba-8048492-540x960-25fps/blend.mp4 --fps 25.0 --n_proc 1 -ps /home/smbu/anaconda3/envs/rerender/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 ../aten/src/ATen/native/TensorShape.cpp:3190.) return _VF.meshgrid(tensors, *kwargs) # type: ignore[attr-defined] videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_1/0001.jpg videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_1/0002.jpg Process Process-1: Traceback (most recent call last): File "/home/smbu/anaconda3/envs/rerender/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap self.run() File "/home/smbu/anaconda3/envs/rerender/lib/python3.8/multiprocessing/process.py", line 108, in run self._target(self._args, **self._kwargs) File "/home/smbu/mediadisk/Rerender_A_Video/video_blend.py", line 110, in process_sequences process_one_sequence(i, video_sequence) File "/home/smbu/mediadisk/Rerender_A_Video/video_blend.py", line 97, in process_one_sequence cmd += ' ' + g.get_cmd(j, w) File "/home/smbu/mediadisk/Rerender_A_Video/blender/guide.py", line 101, in get_cmd warped_img = flow_calc.warp(prev_img, self.flows[i - 1], File "/home/smbu/mediadisk/Rerender_A_Video/flow/flow_utils.py", line 188, in warp if len(img.shape) == 2: AttributeError: 'NoneType' object has no attribute 'shape' ebsynth: 2.488335132598877 Traceback (most recent call last): File "video_blend.py", line 319, in main(args) File "video_blend.py", line 268, in main process_seq(video_sequence, i, blend_histogram, blend_gradient) File "video_blend.py", line 199, in process_seq dist1s.append(load_error(bin_a, img_shape)) File "video_blend.py", line 160, in load_error with open(bin_path, 'rb') as fp: FileNotFoundError: [Errno 2] No such file or directory: 'videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_1/0002.bin'

williamyang1991 commented 1 year ago

You can set OPEN_EBSYNTH_LOG = True to print more info https://github.com/williamyang1991/Rerender_A_Video/blob/53a50831aeecc873acdd3b69e16c2e8e4dfeefb2/video_blend.py#L22

Kendrick-Stein commented 1 year ago

I was able to solve the problem by reinstalling the ebsynth! Thanks for your timely reply.

FeiiYin commented 10 months ago

Hi, my ebsynth report that

./deps/ebsynth/bin/ebsynth: /usr/lib64/libstdc++.so.6: version CXXABI_1.3.8' not found (required by ./deps/ebsynth/bin/ebsynth) 
./deps/ebsynth/bin/ebsynth: /usr/lib64/libstdc++.so.6: version GLIBCXX_3.4.21' not found (required by ./deps/ebsynth/bin/ebsynth)

But I have CXXABI_1.3.7 and GLIBCXX_3.4.19 under /usr/lib64/libstdc++.so.6. Can someone hints me on how to set the parameters during installing? Thanks in advance!

FeiiYin commented 10 months ago

Hi, my ebsynth report that

./deps/ebsynth/bin/ebsynth: /usr/lib64/libstdc++.so.6: version CXXABI_1.3.8' not found (required by ./deps/ebsynth/bin/ebsynth) 
./deps/ebsynth/bin/ebsynth: /usr/lib64/libstdc++.so.6: version GLIBCXX_3.4.21' not found (required by ./deps/ebsynth/bin/ebsynth)

But I have CXXABI_1.3.7 and GLIBCXX_3.4.19 under /usr/lib64/libstdc++.so.6. Can someone hints me on how to set the parameters during installing? Thanks in advance!

Solved! I found that the gcc of installing environment is different from that in the running environment(in Docker). Reinstalling will solve the problem.

VH12138 commented 10 months ago

I was able to solve the problem by reinstalling the ebsynth! Thanks for your timely reply.

Hi how did you reinstall?

343195246 commented 9 months ago

Please move the ebsynth.exe file and the ebsynth.dll file to . \\deps\\\ebsynth\\bin\\ path.