live
MODEL IDrunware:controlnet-preprocess@openpose

ControlNet Preprocess OpenPose

ControlNet Preprocess OpenPose extracts a human pose skeleton from an input image for ControlNet conditioning. It is best for character and figure workflows where body posture, gesture, limb placement, and overall pose need to stay consistent across generations.

ControlNet Preprocess OpenPose

detailed-pose-estimation

Museum Interpreter Scene-Swap Pose Map$0.0038~10s
Museum Interpreter Scene-Swap Pose Map
Try in Playground
import { createClient } from '@runware/sdk'

const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()

const [result] = await client.run({
  model: 'runware:controlnet-preprocess@openpose',
  settings: {
    includeHandsAndFaceOpenPose: true
  },
  inputs: {
    image: 'https://assets.runware.ai/assets/inputs/c6e2ca5e-d6ea-48ff-813a-12ef2a46c064.jpg'
  }
})
import asyncio
import os

from runware import Runware


async def main():
    async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
        results = await client.run({
            "model": "runware:controlnet-preprocess@openpose",
            "settings": {
                "includeHandsAndFaceOpenPose": True
            },
            "inputs": {
                "image": "https://assets.runware.ai/assets/inputs/c6e2ca5e-d6ea-48ff-813a-12ef2a46c064.jpg"
            }
        })


asyncio.run(main())
curl https://api.runware.ai/v1 \
  -H "Authorization: Bearer $RUNWARE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '[
    {
      "taskType": "controlNetPreprocess",
      "taskUUID": "45670753-194f-4b5c-8210-fedcb00b9ff3",
      "model": "runware:controlnet-preprocess@openpose",
      "settings": {
        "includeHandsAndFaceOpenPose": true
      },
      "inputs": {
        "image": "https://assets.runware.ai/assets/inputs/c6e2ca5e-d6ea-48ff-813a-12ef2a46c064.jpg"
      }
    }
  ]'
runware run runware:controlnet-preprocess@openpose \
  settings.includeHandsAndFaceOpenPose=true \
  inputs.image=https://assets.runware.ai/assets/inputs/c6e2ca5e-d6ea-48ff-813a-12ef2a46c064.jpg
{
  "taskType": "controlNetPreprocess",
  "taskUUID": "45670753-194f-4b5c-8210-fedcb00b9ff3",
  "model": "runware:controlnet-preprocess@openpose",
  "settings": {
    "includeHandsAndFaceOpenPose": true
  },
  "inputs": {
    "image": "https://assets.runware.ai/assets/inputs/c6e2ca5e-d6ea-48ff-813a-12ef2a46c064.jpg"
  }
}
Response
{
  "taskType": "imageControlNetPreProcess",
  "taskUUID": "45670753-194f-4b5c-8210-fedcb00b9ff3",
  "guideImageURL": "https://im.runware.ai/image/os/a09dlim3/ws/3/ii/e6623fd3-4066-43f0-9565-595051b2ac72.jpg",
  "cost": 0.0038,
  "guideImageUUID": "e6623fd3-4066-43f0-9565-595051b2ac72",
  "inputImageUUID": "c4e1005e-3a8a-48fd-8b3c-e6f795150ae3"
}

detailed-pose-estimation

Roller Derby Roster Addition Pose Map$0.0032~8s
Roller Derby Roster Addition Pose Map
Try in Playground
import { createClient } from '@runware/sdk'

const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()

const [result] = await client.run({
  model: 'runware:controlnet-preprocess@openpose',
  settings: {
    includeHandsAndFaceOpenPose: true
  },
  inputs: {
    image: 'https://assets.runware.ai/assets/inputs/0b69ab3a-1256-4084-afb5-2e40038fd48c.jpg'
  }
})
import asyncio
import os

from runware import Runware


async def main():
    async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
        results = await client.run({
            "model": "runware:controlnet-preprocess@openpose",
            "settings": {
                "includeHandsAndFaceOpenPose": True
            },
            "inputs": {
                "image": "https://assets.runware.ai/assets/inputs/0b69ab3a-1256-4084-afb5-2e40038fd48c.jpg"
            }
        })


asyncio.run(main())
curl https://api.runware.ai/v1 \
  -H "Authorization: Bearer $RUNWARE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '[
    {
      "taskType": "controlNetPreprocess",
      "taskUUID": "3808d586-7ef3-45dc-b733-875183544914",
      "model": "runware:controlnet-preprocess@openpose",
      "settings": {
        "includeHandsAndFaceOpenPose": true
      },
      "inputs": {
        "image": "https://assets.runware.ai/assets/inputs/0b69ab3a-1256-4084-afb5-2e40038fd48c.jpg"
      }
    }
  ]'
runware run runware:controlnet-preprocess@openpose \
  settings.includeHandsAndFaceOpenPose=true \
  inputs.image=https://assets.runware.ai/assets/inputs/0b69ab3a-1256-4084-afb5-2e40038fd48c.jpg
{
  "taskType": "controlNetPreprocess",
  "taskUUID": "3808d586-7ef3-45dc-b733-875183544914",
  "model": "runware:controlnet-preprocess@openpose",
  "settings": {
    "includeHandsAndFaceOpenPose": true
  },
  "inputs": {
    "image": "https://assets.runware.ai/assets/inputs/0b69ab3a-1256-4084-afb5-2e40038fd48c.jpg"
  }
}
Response
{
  "taskType": "imageControlNetPreProcess",
  "taskUUID": "3808d586-7ef3-45dc-b733-875183544914",
  "guideImageURL": "https://im.runware.ai/image/os/a06dlim3/ws/3/ii/b4d55348-775d-4669-bb7b-41027f409bae.jpg",
  "cost": 0.0032,
  "guideImageUUID": "b4d55348-775d-4669-bb7b-41027f409bae",
  "inputImageUUID": "2af17594-f3d3-4e60-93b0-0c59f68eca8f"
}

pose-estimation

Volcanologist WPA Poster Restyle$0.0026~7s
Volcanologist WPA Poster Restyle
Try in Playground
import { createClient } from '@runware/sdk'

const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()

const [result] = await client.run({
  model: 'runware:controlnet-preprocess@openpose',
  settings: {
    includeHandsAndFaceOpenPose: false
  },
  inputs: {
    image: 'https://assets.runware.ai/assets/inputs/56b3277f-9161-4766-8283-a836c04bca3c.jpg'
  }
})
import asyncio
import os

from runware import Runware


async def main():
    async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
        results = await client.run({
            "model": "runware:controlnet-preprocess@openpose",
            "settings": {
                "includeHandsAndFaceOpenPose": False
            },
            "inputs": {
                "image": "https://assets.runware.ai/assets/inputs/56b3277f-9161-4766-8283-a836c04bca3c.jpg"
            }
        })


asyncio.run(main())
curl https://api.runware.ai/v1 \
  -H "Authorization: Bearer $RUNWARE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '[
    {
      "taskType": "controlNetPreprocess",
      "taskUUID": "dbec5301-215b-4877-89bc-dc4b2f51bbd8",
      "model": "runware:controlnet-preprocess@openpose",
      "settings": {
        "includeHandsAndFaceOpenPose": false
      },
      "inputs": {
        "image": "https://assets.runware.ai/assets/inputs/56b3277f-9161-4766-8283-a836c04bca3c.jpg"
      }
    }
  ]'
runware run runware:controlnet-preprocess@openpose \
  settings.includeHandsAndFaceOpenPose=false \
  inputs.image=https://assets.runware.ai/assets/inputs/56b3277f-9161-4766-8283-a836c04bca3c.jpg
{
  "taskType": "controlNetPreprocess",
  "taskUUID": "dbec5301-215b-4877-89bc-dc4b2f51bbd8",
  "model": "runware:controlnet-preprocess@openpose",
  "settings": {
    "includeHandsAndFaceOpenPose": false
  },
  "inputs": {
    "image": "https://assets.runware.ai/assets/inputs/56b3277f-9161-4766-8283-a836c04bca3c.jpg"
  }
}
Response
{
  "taskType": "imageControlNetPreProcess",
  "taskUUID": "dbec5301-215b-4877-89bc-dc4b2f51bbd8",
  "guideImageURL": "https://im.runware.ai/image/os/a06dlim3/ws/3/ii/c86928f2-5179-452f-8bbe-8b6ba4f72035.jpg",
  "cost": 0.0026,
  "guideImageUUID": "c86928f2-5179-452f-8bbe-8b6ba4f72035",
  "inputImageUUID": "dadd30eb-3f2c-4128-a8fd-b79e8ae0e62a"
}

pose-estimation

Motorcycle Airbag Suit Pose Map$0.0032~7s
Motorcycle Airbag Suit Pose Map
Try in Playground
import { createClient } from '@runware/sdk'

const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()

const [result] = await client.run({
  model: 'runware:controlnet-preprocess@openpose',
  settings: {
    includeHandsAndFaceOpenPose: false
  },
  inputs: {
    image: 'https://assets.runware.ai/assets/inputs/40751967-796d-49cd-9d2b-619725133647.jpg'
  }
})
import asyncio
import os

from runware import Runware


async def main():
    async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
        results = await client.run({
            "model": "runware:controlnet-preprocess@openpose",
            "settings": {
                "includeHandsAndFaceOpenPose": False
            },
            "inputs": {
                "image": "https://assets.runware.ai/assets/inputs/40751967-796d-49cd-9d2b-619725133647.jpg"
            }
        })


asyncio.run(main())
curl https://api.runware.ai/v1 \
  -H "Authorization: Bearer $RUNWARE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '[
    {
      "taskType": "controlNetPreprocess",
      "taskUUID": "f7be28d5-2fd1-4ff3-aee7-06c76e67b5ff",
      "model": "runware:controlnet-preprocess@openpose",
      "settings": {
        "includeHandsAndFaceOpenPose": false
      },
      "inputs": {
        "image": "https://assets.runware.ai/assets/inputs/40751967-796d-49cd-9d2b-619725133647.jpg"
      }
    }
  ]'
runware run runware:controlnet-preprocess@openpose \
  settings.includeHandsAndFaceOpenPose=false \
  inputs.image=https://assets.runware.ai/assets/inputs/40751967-796d-49cd-9d2b-619725133647.jpg
{
  "taskType": "controlNetPreprocess",
  "taskUUID": "f7be28d5-2fd1-4ff3-aee7-06c76e67b5ff",
  "model": "runware:controlnet-preprocess@openpose",
  "settings": {
    "includeHandsAndFaceOpenPose": false
  },
  "inputs": {
    "image": "https://assets.runware.ai/assets/inputs/40751967-796d-49cd-9d2b-619725133647.jpg"
  }
}
Response
{
  "taskType": "imageControlNetPreProcess",
  "taskUUID": "f7be28d5-2fd1-4ff3-aee7-06c76e67b5ff",
  "guideImageURL": "https://im.runware.ai/image/os/a10dlim3/ws/3/ii/11e7a4f8-c741-4bf0-92b2-9b3146a19f49.jpg",
  "cost": 0.0032,
  "guideImageUUID": "11e7a4f8-c741-4bf0-92b2-9b3146a19f49",
  "inputImageUUID": "56864f99-6372-4159-a33e-752bdb1e0582"
}