Nodes/DJZ-Nodes/Zenkai Pose Map
ComfyUI Node

Zenkai Pose Map

One seed, one random pose map

By MushroomFleet·Created 2 years ago·Updated 5 months ago· 78
Zenkai Pose Map
    • IMAGE
    pose_folder
    seed0

    If you've ever built an OpenPose ControlNet workflow, you know the annoying part isn't the ControlNet - it's sourcing the pose image. Either you run a DWPose detection node on a reference photo and pray the pose reads, or you go hunting through folders for a skeleton that fits the shot you want. Zenkai Pose Map skips all of that. It picks a random pose map out of a folder and hands it to you as an IMAGE. That's the entire job, and it does it well.

    It's part of the Zenkai family inside DJZ-Nodes, MushroomFleet's big grab-bag pack, and it's aimed at one workflow: batch generation with pose variety. Run the batch a few times, change the seed, and each run gets a different pose reference with zero effort from you.

    How it works

    The mechanism is almost embarrassingly simple, which is fine. The node lists the subfolders inside the pack's posemaps/ directory, seeds Python's random with your seed value, and does random.choice() over the image files (.jpg, .png, .jpeg) in the folder you picked. It converts the winner to RGB, normalizes it to 0–1 floats, and returns it as a batched IMAGE tensor.

    No API calls, no model downloads, no pose detection pass. If the image in that folder is already a pose map (a skeleton render, an OpenPose output, whatever), that's what you get. The repo ships exactly one folder, posemaps/jojo, with four images - so out of the box you have one dropdown entry and a four-image pool.

    The two inputs that matter

    There are only two, and you only ever touch one:

    • pose_folder - a dropdown of subfolders under posemaps/. To get more variety than the bundled "jojo" set, drop your own folder of pose images in there and restart ComfyUI.
    • seed - the only thing that changes which image you get. Same seed plus same folder always returns the same pose map.

    Output

    A single IMAGE tensor ([1, H, W, 3]). Wire it into a ControlNet Apply node paired with an OpenPose/DWPose-style control model. One honest caveat: it supplies the condition image only. Your ControlNet model still has to actually support pose conditioning - union packs vary on which conditions they cover, so check before you blame the node.

    Install

    It ships with DJZ-Nodes, so install the pack once:

    cd ComfyUI/custom_nodes
    git clone https://github.com/MushroomFleet/DJZ-Nodes
    cd DJZ-Nodes
    pip install -r requirements.txt
    

    Then restart ComfyUI. Or search "DJZ-Nodes" in ComfyUI Manager and let it do the same thing. This node itself is light - just PIL, numpy and torch - but the pack's requirements.txt drags in heavy stuff (opencv, librosa, numba, moderngl) that the other 100+ nodes use, so the install can take a while.

    Gotchas

    • Small pool trap: if your chosen pose folder has a single image, the seed does nothing and every run is the same pose. Add images or add folders.
    • It doesn't detect poses. Drop raw photos in and you'll feed the ControlNet a photo, not a skeleton. This node is a picker, not a detector - the source images are on you.
    • Because the dropdown is built by scanning the folder at startup, any new folder needs a ComfyUI restart to show up.

    For a one-shot random pose this is all you need. If your actual problem is "I want a sequence of poses for a video," that's what its sibling Zenkai Video Pose is for.

    CategoryDJZ-Nodes

    Inputs (2)

    NameTypeDefaultDescription
    pose_folderCOMBO1 options: jojo
    seedINT00–4294967295

    Outputs (1)

    NameTypeDescription
    IMAGEIMAGE