EasyMocap icon indicating copy to clipboard operation
EasyMocap copied to clipboard

Monocular Videos issue ([WinError 3] The system cannot find the path specified: '...\\output-smpl-3d\\smplmesh)

Open danzelus opened this issue 1 year ago • 2 comments

Please help me with this! what i did (windows)

conda create -n easymocap python=3.9 -y
conda activate easymocap
conda install pytorch torchvision torchaudio pytorch-cuda=11.7 -c pytorch -c nvidia
python -m pip install -r requirements.txt
conda install ffmpeg
python -m pip install pyrender
python setup.py develop --user

Then i create this folders - C:\Users\user\EasyMocap\0_input\vky\videos and i place my own video to it Next i run this: python scripts/preprocess/extract_video.py 0_input\vky --no2d

But instead working like on the video (progress bar) vid I get this my

Next i run

python apps/preprocess/extract_keypoints.py 0_input/vky --mode yolo-hrnet
testEasyMocap1: 100%|████████████████████████████████████████████████████████████████| 660/660 [08:01<00:00,  1.37it/s]

Next: python apps/demo/mocap.py 0_input/vky --work internet --ranges 1 500 1 And i get a error

...
no handl2d in 0_input/vky\images\testEasyMocap1\000498.jpg
no handr2d in 0_input/vky\images\testEasyMocap1\000498.jpg
no handl2d in 0_input/vky\images\testEasyMocap1\000499.jpg
no handr2d in 0_input/vky\images\testEasyMocap1\000499.jpg
Loading testEasyMocap1: 100%|███████████████████████████████████████████████████████| 499/499 [00:00<00:00, 659.59it/s]
[Info] Load dist with shape (1, 5)
[Info] Load Tc with shape (3, 1)
[Info] Load K with shape (3, 3)
[Info] Load RT with shape (3, 4)
[Info] Load KRT with shape (3, 4)
[Info] Load Rc with shape (3, 3)
C:\Users\user\anaconda3\envs\easymocap\lib\site-packages\torchvision\models\_utils.py:208: UserWarning: The parameter 'pretrained' is deprecated since 0.13 and may be removed in the future, please use 'weights' instead.
  warnings.warn(
C:\Users\user\anaconda3\envs\easymocap\lib\site-packages\torchvision\models\_utils.py:223: UserWarning: Arguments other than a weight enum or `None` for 'weights' are deprecated since 0.13 and may be removed in the future. The current behavior is equivalent to passing `weights=ResNet50_Weights.IMAGENET1K_V1`. You can also use `weights=ResNet50_Weights.DEFAULT` to get the most up-to-date weights.
  warnings.warn(msg)
Traceback (most recent call last):
  File "C:\Users\user\EasyMocap\apps\fit\fit.py", line 38, in <module>
    fitter.fit(body_model, dataset)
  File "c:\users\user\easymocap\easymocap\multistage\base.py", line 296, in fit
    body_params, infos = self.fit_data(data, body_model)
  File "c:\users\user\easymocap\easymocap\multistage\base.py", line 263, in fit_data
    init_module = load_object(init_func.module, init_func.args)
  File "c:\users\user\easymocap\easymocap\config\baseconfig.py", line 67, in load_object
    obj = getattr(module, name)(**extra_args, **module_args)
  File "c:\users\user\easymocap\easymocap\multistage\init_cnn.py", line 27, in __init__
    self.spin_model = SPIN(
  File "c:\users\user\easymocap\easymocap\estimator\SPIN\spin_api.py", line 270, in __init__
    checkpoint = torch.load(checkpoint)
  File "C:\Users\user\anaconda3\envs\easymocap\lib\site-packages\torch\serialization.py", line 1028, in load
    return _legacy_load(opened_file, map_location, pickle_module, **pickle_load_args)
  File "C:\Users\user\anaconda3\envs\easymocap\lib\site-packages\torch\serialization.py", line 1256, in _legacy_load
    result = unpickler.load()
  File "C:\Users\user\anaconda3\envs\easymocap\lib\site-packages\torch\serialization.py", line 1193, in persistent_load
    wrap_storage=restore_location(obj, location),
  File "C:\Users\user\anaconda3\envs\easymocap\lib\site-packages\torch\serialization.py", line 381, in default_restore_location
    result = fn(storage, location)
  File "C:\Users\user\anaconda3\envs\easymocap\lib\site-packages\torch\serialization.py", line 274, in _cuda_deserialize
    device = validate_cuda_device(location)
  File "C:\Users\user\anaconda3\envs\easymocap\lib\site-packages\torch\serialization.py", line 258, in validate_cuda_device
    raise RuntimeError('Attempting to deserialize object on a CUDA '
RuntimeError: Attempting to deserialize object on a CUDA device but torch.cuda.is_available() is False. If you are running on a CPU-only machine, please use torch.load with map_location=torch.device('cpu') to map your storages to the CPU.
Traceback (most recent call last):
  File "C:\Users\user\EasyMocap\apps\demo\mocap.py", line 394, in <module>
    workflow(args.work, args)
  File "C:\Users\user\EasyMocap\apps\demo\mocap.py", line 340, in workflow
    append_mocap_flags(path, output, cfg_data, cfg_model, cfg_exp, workflow.fit, args)
  File "C:\Users\user\EasyMocap\apps\demo\mocap.py", line 277, in append_mocap_flags
    filenames = os.listdir(outdir)
FileNotFoundError: [WinError 3] The system cannot find the path specified: '0_input/vky\\output-smpl-3d\\smplmesh'

But i have models

models

danzelus avatar Oct 11 '23 12:10 danzelus