Split And Combine Channels
View as MarkdownSplits an image into its RGB channels, adjusts each channel's brightness, and recombines them.
Code Snippet
using (var reader = ImageReader.Create("Chicago.jpg"))
using (var channelSplitter = new RgbChannelSplitter())
using (var brightnessR = new Brightness(0.1f))
using (var brightnessG = new Brightness(-0.05f))
using (var brightnessB = new Brightness(0.2f))
using (var channelCombiner = new RgbChannelCombiner())
using (var writer = ImageWriter.Create("SplitAndCombineChannels.png"))
{
reader.Receivers.Add(channelSplitter);
channelCombiner.R = channelSplitter.R + brightnessR;
channelCombiner.G = channelSplitter.G + brightnessG;
channelCombiner.B = channelSplitter.B + brightnessB;
Pipeline.Run(channelCombiner + writer);
}
Input
Chicago.jpg
Output
SplitAndCombineChannels.png
Used APIs
- Aurigma.GraphicsMill.Codecs.ImageReader
- Aurigma.GraphicsMill.Codecs.ImageReader.Create(String)
- Aurigma.GraphicsMill.Codecs.ImageWriter
- Aurigma.GraphicsMill.Codecs.ImageWriter.Create(String)
- Aurigma.GraphicsMill.PipelineElement.Receivers
- Aurigma.GraphicsMill.RgbChannelCombiner
- Aurigma.GraphicsMill.RgbChannelCombiner.B
- Aurigma.GraphicsMill.RgbChannelCombiner.G
- Aurigma.GraphicsMill.RgbChannelCombiner.R
- Aurigma.GraphicsMill.RgbChannelSplitter
- Aurigma.GraphicsMill.RgbChannelSplitter.B
- Aurigma.GraphicsMill.RgbChannelSplitter.G
- Aurigma.GraphicsMill.RgbChannelSplitter.R
- Aurigma.GraphicsMill.Transforms.Brightness