Channel mixer: each output channel is a weighted sum of the R/G/B inputs (a 3×3 weights string). Classic moves include red/cyan swaps, custom black-and-white weights, and pseudo-infrared tones.

Module:Color grading · Task type:color_grade_mixer

Ports

Inputs

PortTypeRequired
inImage / cv::Mat✓

Outputs

PortTypeRequired
outcv::Mat✓

Parameters

参数类型默认值范围 / 选项说明
m_rrfloat1[-2, 2]
m_rgfloat0[-2, 2]
m_rbfloat0[-2, 2]
m_grfloat0[-2, 2]
m_ggfloat1[-2, 2]
m_gbfloat0[-2, 2]
m_brfloat0[-2, 2]
m_bgfloat0[-2, 2]
m_bbfloat1[-2, 2]

Example graph

A minimal runnable pipeline (read → process → write). Drag it into GraphStudio or open via --open; replace data/test.png with a real path.

{
  "version": "2.0",
  "tasks": [
    {
      "id": "read",
      "type": "opencv_image_read",
      "params": {
        "file_path": "data/test.png"
      }
    },
    {
      "id": "node",
      "type": "color_grade_mixer",
      "params": {
        "m_rr": 1,
        "m_rg": 0,
        "m_rb": 0,
        "m_gr": 0,
        "m_gg": 1,
        "m_gb": 0,
        "m_br": 0,
        "m_bg": 0,
        "m_bb": 1
      }
    },
    {
      "id": "save",
      "type": "opencv_image_write",
      "params": {
        "file_path": "out_out.png"
      }
    }
  ],
  "edges": [
    {
      "from": "read",
      "from_port": "out",
      "to": "node",
      "to_port": "in"
    },
    {
      "from": "node",
      "from_port": "out",
      "to": "save",
      "to_port": "in"
    }
  ]
}

Part of the GraphStudio node guide series; parameters reflect the latest release.