# White balance correction

- Human page: https://happytails.ai/en/image-tools/white-balance-correction/
- Markdown: https://happytails.ai/en/image-tools/white-balance-correction.md
- Structured JSON: https://happytails.ai/agents/en/image-tools/white-balance-correction/index.json
- Visibility: public

## Tool capabilities

| Property | Value |
| --- | --- |
| Tool ID | `white-balance-correction` |
| Category | image-tools |
| Implementation | Registered implementation. Registration alone is not a production-quality guarantee. |
| Browser execution | Use the visible action or interactive controls. |
| Browser processing | Browser; see tool notes for network behavior. |
| HTTP API | Not callable through HTTP. |
| Browser-agent interface | run_current_tool |

### Implementation notes

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.

### Inputs and settings

No free-text input is required. Use the file inputs and/or settings below.

Accepted browser files: `.png,.jpg,.jpeg,.webp`. Choose one file.

Browser file-input limit: 20971520 bytes in total. HTTP limits can differ.

| Setting | Meaning | Control type | Default | Constraints |
| --- | --- | --- | --- | --- |
| `x` | Neutral patch left | number | 0 | min=0 max=16383 step=1 |
| `y` | Neutral patch top | number | 0 | min=0 max=16383 step=1 |
| `width` | Neutral patch width | number | 1 | min=1 max=16384 step=1 |
| `height` | Neutral patch height | number | 1 | min=1 max=16384 step=1 |
| `strength` | Correction strength | number | 1 | min=0 max=1 step=0.05 |

### Browser-agent workflow

1. Open the human page in a browser that supports WebMCP.
2. Discover the interface exposed by that page; use its actual schema.
3. Select files on the page first when the tool requires files.
4. Call `run_current_tool` with valid input and settings.
5. Inspect the returned result or error and the displayed output. Retrieve files from the displayed download links.

Calls do not automatically copy or download results. Browser permissions still apply. Interface availability alone is not proof of successful execution.

### Planning specification

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.

This describes intended requirements. Use the implementation notes, interface schema and observed output to determine current support.

### Complete machine-readable capability record

```json
{
  "id": "white-balance-correction",
  "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": "x",
        "label": "Neutral patch left",
        "value": 0,
        "type": "number",
        "min": 0,
        "max": 16383,
        "step": 1
      },
      {
        "key": "y",
        "label": "Neutral patch top",
        "value": 0,
        "type": "number",
        "min": 0,
        "max": 16383,
        "step": 1
      },
      {
        "key": "width",
        "label": "Neutral patch width",
        "value": 1,
        "type": "number",
        "min": 1,
        "max": 16384,
        "step": 1
      },
      {
        "key": "height",
        "label": "Neutral patch height",
        "value": 1,
        "type": "number",
        "min": 1,
        "max": 16384,
        "step": 1
      },
      {
        "key": "strength",
        "label": "Correction strength",
        "value": 1,
        "type": "number",
        "min": 0,
        "max": 1,
        "step": 0.05
      }
    ],
    "registrationFamily": "raster-image-studio",
    "files": true,
    "input": false,
    "multiple": false,
    "accept": ".png,.jpg,.jpeg,.webp",
    "maxFileBytes": 20971520,
    "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"
  }
}
```

## Page guide

Correct a color cast using a neutral reference area in your image. Adjust the strength and compare the result.

How can we improve this tool?

Report a problem or share an idea.

Please leave out private information. Your message and the tool name go to our team via PostHog.

### How to use White balance correction

1. Choose a still image.
2. Enter the position and size of an area that should be neutral gray.
3. Set the correction strength, run the tool and download the corrected PNG.

## Useful next steps

- [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))

- [Replace image color](https://happytails.ai/en/image-tools/image-color-replacement/) ([Markdown](https://happytails.ai/en/image-tools/image-color-replacement.md))

## Choose a reliable neutral patch

Coordinates begin at the top-left pixel. Use a patch that should be gray, with visible pixels and nonzero values in every color channel. Transparent pixels carry less weight.

### Know the correction limits

The tool applies gains to decoded encoded RGB and preserves alpha. It is not a camera-raw or color-managed correction. The report lists gains and pixels whose corrected channels exceed the available range.
