Skip to content

pose detection failure using docker can appear as a sync issue #265

Description

@carmichaelong

specifically, recently the openpose containers running the backend broke and could not find a CUDA device. restarting containers fixes this. error message:

INFO:root:Processing openpose...
--- Logging error ---
Traceback (most recent call last):
  File "/openpose/loop_openpose.py", line 15, in check_cuda_device
    _ = subprocess.check_output(["nvidia-smi"])
  File "/usr/lib/python3.6/subprocess.py", line 356, in check_output
    **kwargs).stdout
  File "/usr/lib/python3.6/subprocess.py", line 438, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['nvidia-smi']' returned non-zero exit status 255.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.6/logging/__init__.py", line 994, in emit
    msg = self.format(record)
  File "/usr/lib/python3.6/logging/__init__.py", line 840, in format
    return fmt.format(record)
  File "/usr/lib/python3.6/logging/__init__.py", line 577, in format
    record.message = record.getMessage()
  File "/usr/lib/python3.6/logging/__init__.py", line 338, in getMessage
    msg = msg % self.args
TypeError: not all arguments converted during string formatting
Call stack:
  File "/openpose/loop_openpose.py", line 105, in <module>
    check_cuda_device()
  File "/openpose/loop_openpose.py", line 20, in check_cuda_device
    logging.info("No CUDA-capable device is detected. Error:", e)
Message: 'No CUDA-capable device is detected. Error:'
Arguments: (CalledProcessError(255, ['nvidia-smi']),)
INFO:root:openpose: Pose detection failed.

However, when pose detection fails like this, the error is thrown by the video sync step:

{"error_msg": "Video synchronization failed. Verify your setup and try again. \n                    A fail-safe synchronization method is for the participant to\n                    quickly raise one hand above their shoulders, then bring it back down. \n                    Visit https://www.opencap.ai/best-pratices to learn more about \n                    data collection and https://www.opencap.ai/troubleshooting for \n                    potential causes for a failed trial.", "error_msg_dev": "Traceback (most recent call last):\n  File \"/workspace/main.py\", line 394, in main\n    synchronizeVideos(\n  File \"/workspace/utilsSync.py\", line 123, in synchronizeVideos\n    pointList, confList, nansInOutList,startEndFrameList = synchronizeVideoKeypoints(\n  File \"/workspace/utilsSync.py\", line 211, in synchronizeVideoKeypoints\n    keypointList,confidenceList = zip(*[removeOccludedSide(keys,conf,footMkrs,confidenceThreshold,visualize=False) for keys,conf in zip(keypointList,confidenceList)])\nValueError: not enough values to unpack (expected 2, got 0)\n"}

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions