Skip to content

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

@carmichaelong

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"}

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