1

I have 3 images. All of which are grayscale. I want to combine these three images into one, each taking on a single R, G, or B channel.

  • Image "Red" becomes the Red channel
  • Image "Green" becomes the Green channel
  • Image "Blue" becomes the Blue channel

(again images start out in grayscale)

together these should make a single RGB image right? How would I do this in photoshop? (I'm using Photoshop 2021)

1
  • Copy and paste. You can also show and erase, or multiply and stack.
    – joojaa
    Apr 1, 2021 at 5:52

3 Answers 3

3

This is what the "Merge Channels..." feature in the Channels Panel menu is made for.

Open your three grayscale images and select "Merge Channels..." from the Channels Panel Menu:

enter image description here

Tell it you want to merge an RGB image with 3 channels and click "OK."

Finally, select which of the open files you want to map to each channel:

enter image description here

Click OK and you have a merged image. No Copy/Paste necessary.

3
  • What you're saying makes sense, however photoshop will not "activate" the merge channels button. I looked further, and if I'm not mistaken all images need to be the same size, so I cropped them down to the same size (only taking off 1 pixel from height), but the merge channels button still doesn't "activate". Here is a link to pictures to show what I mean: imgur.com/a/AskmlEN
    – Astro.nor
    Apr 2, 2021 at 7:46
  • 1
    @Astro.nor I think it's the transparency. Try flattening the images. Apr 2, 2021 at 11:41
  • Perfect! Your help has gotten it to work, thank you!
    – Astro.nor
    Apr 2, 2021 at 19:19
1

I made myself a script that converts 3 top layers to R, G and B channels, output is the 4th layer below them. Feel free to use/modify.

Input 3 layers for each channel + BG layer: enter image description here

Output: enter image description here

function main()
{
  var i;
  var channels = ['Rd  ', 'Grn ', 'Bl  '];

  // making 3 top layers invisible
  for (i = 0; i < 3; i++) {
    activeDocument.layers[i].visible = false;
  };
  // select BG layer
  activeDocument.activeLayer = activeDocument.layers[3];

  // applying layers as channels
  for (i = 0; i < 3; i++) {
    selectChannel(channels[i]);
    applyImage(activeDocument.layers[i].name)
  }

  selectChannel('RGB ');

  function selectChannel(id)
  {
    var desc = new ActionDescriptor();
    var ref = new ActionReference();
    ref.putEnumerated(charIDToTypeID('Chnl'), charIDToTypeID('Chnl'), charIDToTypeID(id));
    desc.putReference(charIDToTypeID('null'), ref);
    executeAction(charIDToTypeID('slct'), desc, DialogModes.NO);
  }

  function applyImage(layerName)
  {
    var desc = new ActionDescriptor();
    var descWith = new ActionDescriptor();
    var ref = new ActionReference();
    ref.putEnumerated(charIDToTypeID('Chnl'), charIDToTypeID('Chnl'), charIDToTypeID('RGB '));
    ref.putName(charIDToTypeID('Lyr '), layerName);
    descWith.putReference(charIDToTypeID('T   '), ref);
    descWith.putBoolean(charIDToTypeID('PrsT'), true);
    desc.putObject(charIDToTypeID('With'), charIDToTypeID('Clcl'), descWith);
    executeAction(charIDToTypeID('AppI'), desc, DialogModes.NO);
  }
}

app.activeDocument.suspendHistory("combine to channels", "main()");
0

Here is one way to do it. I assume the three images have the same dimensions.

  • Open the three grayscale images.
  • Choose the "Red" image.
  • Use Select > All (Ctrl /Cmd + A) to create a selection that covers the whole image.
  • Use Edit > Copy (Ctrl /Cmd + C) to copy the selection to clipboard.
  • Use File > New (Ctrl / Cmd + N) to create a new document. Photoshop will automatically suggest the dimensions of the selection you just copied. Make sure to set Color Mode to RGB and select the Color Profile you want (probably sRGB).
  • In the Channels panel, click the Red channel.
  • Use Edit > Paste (Ctrl /Cmd + V) to paste in the copied image.
  • Choose the "Green" image.
  • Use Select > All.
  • Use Edit > Copy.
  • Choose the RGB image.
  • In the Channels panel, click the Green channel.
  • Use Edit > Paste.
  • Choose the "Blue" image.
  • Use Select > All.
  • Use Edit > Copy.
  • Choose the RGB image.
  • In the Channels panel, click the Blue channel.
  • Use Edit > Paste.
  • Use Select > Deselect (Ctrl /Cmd + D) to remove the selection.
  • Click the RGB channel to show all three channels.
  • Optionally use Image > Adjustments > Invert (Ctrl /Cmd + I) to invert the channels.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.