ComfyUI Extension: ComfyUI-ultimate-openpose-estimator

Authored by westNeighbor

Created

Updated

10 stars

Super fast tensorrt performance with accuate pose estimation of dwpose model, giving the detecting threshold control, plus pose image render and pose json format output. Fine control for pose plotting.

Custom Nodes (1)

README

<div align="center">

ComfyUI ultimate openpose(dwpose) estimator

python cuda trt by-nc-sa/4.0

</div> <p align="center"> <img src="assets/estimator_example_1.png" /> </p>

This is an enhancement of the project ComfyUI Dwpose TensorRT by giving control and output options. Check original project for the super fast performance.

Note: This is for tensorrt only, which is only working if you have cuda based Nvidia card

This project following the original project's license which is CC BY-NC-SA, everyone is FREE to access, use, modify and redistribute with the same license.

If you use this project for commercial purposes, please contact at [email protected] (the original project) and cc to me [email protected]

If you like the project, please give me a star! ⭐


Features

  • Giving the detecting threshold option <p align="center"> <img src="assets/estimator_example_2.png" /> </p>
  • Giving output canvas resolution adjustment
    • It will keep original picture's ratio
    • Minimum requirement for resolution_x >= 64px, for value < 64, the output pose image will be 512px
  • Giving the plot control options for body pose, face and hands
    • The default marker size value is optimized for 1024px pictures, for smaller size picture, lower the marker size value, otherwise increase the marker size value
  • Giving output options of pose keypoints and json string formats for further using, check my ultimate-openpose-editor if you need editting the pose

Installation

  • Navigate to the ComfyUI /custom_nodes directory
git clone https://github.com/westNeighbor/ComfyUI-ultimate-openpose-estimator
cd ./ComfyUI-ultimate-openpose-estimator
pip install -r requirements.txt # if you use portable version, see below

if you use portable version, install requirement accordingly, for example, I have portable in my E: disk

E:/ComfyUI_windows_portable/python_embeded/python.exe -m pip install -r requirements.txt
  • Restart ComfyUI

Building Tensorrt Engine

  1. Download the following onnx models:

  2. Build tensorrt engines for both of these models by running:

    • python export_trt.py
  3. Place the exported engines inside ComfyUI /models/tensorrt/dwpose directory

Usage

  • Insert node by Right Click -> ultimate-openpose -> Opnepose Estimator Node

Credits

  • https://github.com/yuvraj108c/ComfyUI-Dwpose-Tensorrt
  • https://github.com/IDEA-Research/DWPose
  • https://github.com/legraphista/dwpose-video

License

Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)