{
  "title": "Split and combine image channels",
  "human_url": "https://happytails.ai/en/image-tools/image-channel-splitter/",
  "agent_url": "https://happytails.ai/agents/en/image-tools/image-channel-splitter/",
  "language": "en",
  "markdown_url": "https://happytails.ai/en/image-tools/image-channel-splitter.md",
  "content": "Split and combine image channels\nExport separate red, green, blue and alpha planes. Combine edited grayscale planes into a new image.\nHow can we improve this tool?\nReport a problem or share an idea.\nPlease leave out private information. Your message and the tool name go to our team via PostHog.\nHow to use Split and combine image channels\nChoose split mode with one image, or combine mode with three or four grayscale images.\nIn combine mode, select the image to use for each channel.\nRun the tool and download the channel planes or combined PNG.\nUseful next steps\nImage to ASCII art\nReplace image color\nSeparate planes you can edit\nEach split plane is an opaque grayscale PNG. Its brightness records that channel’s original byte values, including the alpha plane.\nExplicit channel assignment\nCombined planes must be opaque grayscale images with matching dimensions. Assign the selected images to red, green, blue and alpha, or choose opaque alpha. No resizing is performed.",
  "content_format": "text/plain",
  "visibility": "public",
  "links": [
    {
      "name": "Image to ASCII art",
      "url": "https://happytails.ai/en/image-tools/image-to-ascii-art/"
    },
    {
      "name": "Replace image color",
      "url": "https://happytails.ai/en/image-tools/image-color-replacement/"
    }
  ],
  "tool": {
    "id": "image-channel-splitter",
    "category": "image-tools",
    "built": true,
    "requirements": "Files stay in this browser. Use still PNG, JPEG or WebP images, up to 20 MiB per file, 40 MiB combined and 16 million decoded pixels combined. Outputs total at most 100 MiB. Processing stops after 30 seconds. Source metadata and color profiles are not copied.",
    "implementation": {
      "fields": [
        {
          "key": "mode",
          "label": "Channel operation",
          "value": "split",
          "type": "select",
          "values": [
            "split",
            "combine"
          ],
          "labels": {
            "split": "Split channels",
            "combine": "Combine channels"
          }
        },
        {
          "key": "redIndex",
          "label": "Red plane position",
          "value": "0",
          "type": "select",
          "values": [
            "0",
            "1",
            "2",
            "3"
          ],
          "labels": {
            "0": "First selected image",
            "1": "Second selected image",
            "2": "Third selected image",
            "3": "Fourth selected image",
            "-1": "Opaque alpha"
          },
          "showWhen": {
            "mode": [
              "combine"
            ]
          }
        },
        {
          "key": "greenIndex",
          "label": "Green plane position",
          "value": "1",
          "type": "select",
          "values": [
            "0",
            "1",
            "2",
            "3"
          ],
          "labels": {
            "0": "First selected image",
            "1": "Second selected image",
            "2": "Third selected image",
            "3": "Fourth selected image",
            "-1": "Opaque alpha"
          },
          "showWhen": {
            "mode": [
              "combine"
            ]
          }
        },
        {
          "key": "blueIndex",
          "label": "Blue plane position",
          "value": "2",
          "type": "select",
          "values": [
            "0",
            "1",
            "2",
            "3"
          ],
          "labels": {
            "0": "First selected image",
            "1": "Second selected image",
            "2": "Third selected image",
            "3": "Fourth selected image",
            "-1": "Opaque alpha"
          },
          "showWhen": {
            "mode": [
              "combine"
            ]
          }
        },
        {
          "key": "alphaIndex",
          "label": "Alpha plane position",
          "value": "3",
          "type": "select",
          "values": [
            "-1",
            "0",
            "1",
            "2",
            "3"
          ],
          "labels": {
            "0": "First selected image",
            "1": "Second selected image",
            "2": "Third selected image",
            "3": "Fourth selected image",
            "-1": "Opaque alpha"
          },
          "showWhen": {
            "mode": [
              "combine"
            ]
          }
        }
      ],
      "registrationFamily": "raster-image-studio",
      "files": true,
      "input": false,
      "multiple": true,
      "accept": ".png,.jpg,.jpeg,.webp",
      "maxFileBytes": 41943040,
      "deferImagePreview": true,
      "note": "Files stay in this browser. Use still PNG, JPEG or WebP images, up to 20 MiB per file, 40 MiB combined and 16 million decoded pixels combined. Outputs total at most 100 MiB. Processing stops after 30 seconds. Source metadata and color profiles are not copied.",
      "experience": {
        "automatic": false,
        "single": false,
        "inputMaxLength": 1000000,
        "inputMode": "text",
        "label": "Your text",
        "placeholder": "Type or paste your input…",
        "help": "Up to 1,000,000 characters. Review the settings before running.",
        "action": null
      },
      "mode": "explicit",
      "interactive": false
    },
    "execution": "Browser interface",
    "api": null,
    "browser_agent": {
      "supported": true,
      "name": "run_current_tool",
      "discovery": "WebMCP on the human page in a supporting browser",
      "verification": "See audit/API-AUDIT.md; availability is not verification"
    }
  },
  "markdown": "# Split and combine image channels\n\n- Human page: https://happytails.ai/en/image-tools/image-channel-splitter/\n- Markdown: https://happytails.ai/en/image-tools/image-channel-splitter.md\n- Structured JSON: https://happytails.ai/agents/en/image-tools/image-channel-splitter/index.json\n- Visibility: public\n\n## Tool capabilities\n\n| Property | Value |\n| --- | --- |\n| Tool ID | `image-channel-splitter` |\n| Category | image-tools |\n| Implementation | Registered implementation. Registration alone is not a production-quality guarantee. |\n| Browser execution | Use the visible action or interactive controls. |\n| Browser processing | Browser; see tool notes for network behavior. |\n| HTTP API | Not callable through HTTP. |\n| Browser-agent interface | run_current_tool |\n\n### Implementation notes\n\nFiles stay in this browser. Use still PNG, JPEG or WebP images, up to 20 MiB per file, 40 MiB combined and 16 million decoded pixels combined. Outputs total at most 100 MiB. Processing stops after 30 seconds. Source metadata and color profiles are not copied.\n\n### Inputs and settings\n\nNo free-text input is required. Use the file inputs and/or settings below.\n\nAccepted browser files: `.png,.jpg,.jpeg,.webp`. Multiple files are supported.\n\nBrowser file-input limit: 41943040 bytes in total. HTTP limits can differ.\n\n| Setting | Meaning | Control type | Default | Constraints |\n| --- | --- | --- | --- | --- |\n| `mode` | Channel operation | select | \"split\" | Allowed: split, combine |\n| `redIndex` | Red plane position | select | \"0\" | Allowed: 0, 1, 2, 3 |\n| `greenIndex` | Green plane position | select | \"1\" | Allowed: 0, 1, 2, 3 |\n| `blueIndex` | Blue plane position | select | \"2\" | Allowed: 0, 1, 2, 3 |\n| `alphaIndex` | Alpha plane position | select | \"3\" | Allowed: -1, 0, 1, 2, 3 |\n\n### Browser-agent workflow\n\n1. Open the human page in a browser that supports WebMCP.\n2. Discover the interface exposed by that page; use its actual schema.\n3. Select files on the page first when the tool requires files.\n4. Call `run_current_tool` with valid input and settings.\n5. Inspect the returned result or error and the displayed output. Retrieve files from the displayed download links.\n\nCalls do not automatically copy or download results. Browser permissions still apply. Interface availability alone is not proof of successful execution.\n\n### Planning specification\n\nFiles stay in this browser. Use still PNG, JPEG or WebP images, up to 20 MiB per file, 40 MiB combined and 16 million decoded pixels combined. Outputs total at most 100 MiB. Processing stops after 30 seconds. Source metadata and color profiles are not copied.\n\nThis describes intended requirements. Use the implementation notes, interface schema and observed output to determine current support.\n\n### Complete machine-readable capability record\n\n```json\n{\n  \"id\": \"image-channel-splitter\",\n  \"category\": \"image-tools\",\n  \"built\": true,\n  \"requirements\": \"Files stay in this browser. Use still PNG, JPEG or WebP images, up to 20 MiB per file, 40 MiB combined and 16 million decoded pixels combined. Outputs total at most 100 MiB. Processing stops after 30 seconds. Source metadata and color profiles are not copied.\",\n  \"implementation\": {\n    \"fields\": [\n      {\n        \"key\": \"mode\",\n        \"label\": \"Channel operation\",\n        \"value\": \"split\",\n        \"type\": \"select\",\n        \"values\": [\n          \"split\",\n          \"combine\"\n        ],\n        \"labels\": {\n          \"split\": \"Split channels\",\n          \"combine\": \"Combine channels\"\n        }\n      },\n      {\n        \"key\": \"redIndex\",\n        \"label\": \"Red plane position\",\n        \"value\": \"0\",\n        \"type\": \"select\",\n        \"values\": [\n          \"0\",\n          \"1\",\n          \"2\",\n          \"3\"\n        ],\n        \"labels\": {\n          \"0\": \"First selected image\",\n          \"1\": \"Second selected image\",\n          \"2\": \"Third selected image\",\n          \"3\": \"Fourth selected image\",\n          \"-1\": \"Opaque alpha\"\n        },\n        \"showWhen\": {\n          \"mode\": [\n            \"combine\"\n          ]\n        }\n      },\n      {\n        \"key\": \"greenIndex\",\n        \"label\": \"Green plane position\",\n        \"value\": \"1\",\n        \"type\": \"select\",\n        \"values\": [\n          \"0\",\n          \"1\",\n          \"2\",\n          \"3\"\n        ],\n        \"labels\": {\n          \"0\": \"First selected image\",\n          \"1\": \"Second selected image\",\n          \"2\": \"Third selected image\",\n          \"3\": \"Fourth selected image\",\n          \"-1\": \"Opaque alpha\"\n        },\n        \"showWhen\": {\n          \"mode\": [\n            \"combine\"\n          ]\n        }\n      },\n      {\n        \"key\": \"blueIndex\",\n        \"label\": \"Blue plane position\",\n        \"value\": \"2\",\n        \"type\": \"select\",\n        \"values\": [\n          \"0\",\n          \"1\",\n          \"2\",\n          \"3\"\n        ],\n        \"labels\": {\n          \"0\": \"First selected image\",\n          \"1\": \"Second selected image\",\n          \"2\": \"Third selected image\",\n          \"3\": \"Fourth selected image\",\n          \"-1\": \"Opaque alpha\"\n        },\n        \"showWhen\": {\n          \"mode\": [\n            \"combine\"\n          ]\n        }\n      },\n      {\n        \"key\": \"alphaIndex\",\n        \"label\": \"Alpha plane position\",\n        \"value\": \"3\",\n        \"type\": \"select\",\n        \"values\": [\n          \"-1\",\n          \"0\",\n          \"1\",\n          \"2\",\n          \"3\"\n        ],\n        \"labels\": {\n          \"0\": \"First selected image\",\n          \"1\": \"Second selected image\",\n          \"2\": \"Third selected image\",\n          \"3\": \"Fourth selected image\",\n          \"-1\": \"Opaque alpha\"\n        },\n        \"showWhen\": {\n          \"mode\": [\n            \"combine\"\n          ]\n        }\n      }\n    ],\n    \"registrationFamily\": \"raster-image-studio\",\n    \"files\": true,\n    \"input\": false,\n    \"multiple\": true,\n    \"accept\": \".png,.jpg,.jpeg,.webp\",\n    \"maxFileBytes\": 41943040,\n    \"deferImagePreview\": true,\n    \"note\": \"Files stay in this browser. Use still PNG, JPEG or WebP images, up to 20 MiB per file, 40 MiB combined and 16 million decoded pixels combined. Outputs total at most 100 MiB. Processing stops after 30 seconds. Source metadata and color profiles are not copied.\",\n    \"experience\": {\n      \"automatic\": false,\n      \"single\": false,\n      \"inputMaxLength\": 1000000,\n      \"inputMode\": \"text\",\n      \"label\": \"Your text\",\n      \"placeholder\": \"Type or paste your input…\",\n      \"help\": \"Up to 1,000,000 characters. Review the settings before running.\",\n      \"action\": null\n    },\n    \"mode\": \"explicit\",\n    \"interactive\": false\n  },\n  \"execution\": \"Browser interface\",\n  \"api\": null,\n  \"browser_agent\": {\n    \"supported\": true,\n    \"name\": \"run_current_tool\",\n    \"discovery\": \"WebMCP on the human page in a supporting browser\",\n    \"verification\": \"See audit/API-AUDIT.md; availability is not verification\"\n  }\n}\n```\n\n## Page guide\n\nExport separate red, green, blue and alpha planes. Combine edited grayscale planes into a new image.\n\nHow can we improve this tool?\n\nReport a problem or share an idea.\n\nPlease leave out private information. Your message and the tool name go to our team via PostHog.\n\n### How to use Split and combine image channels\n\n1. Choose split mode with one image, or combine mode with three or four grayscale images.\n2. In combine mode, select the image to use for each channel.\n3. Run the tool and download the channel planes or combined PNG.\n\n## Useful next steps\n\n- [Image to ASCII art](https://happytails.ai/en/image-tools/image-to-ascii-art/) ([Markdown](https://happytails.ai/en/image-tools/image-to-ascii-art.md))\n\n- [Replace image color](https://happytails.ai/en/image-tools/image-color-replacement/) ([Markdown](https://happytails.ai/en/image-tools/image-color-replacement.md))\n\n## Separate planes you can edit\n\nEach split plane is an opaque grayscale PNG. Its brightness records that channel’s original byte values, including the alpha plane.\n\n### Explicit channel assignment\n\nCombined planes must be opaque grayscale images with matching dimensions. Assign the selected images to red, green, blue and alpha, or choose opaque alpha. No resizing is performed.\n"
}