ComfyUI Extension: ComfyUI-ultimate-openpose-estimator

Authored by westNeighbor

Created

Updated

7 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 (0)

    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)