Applies color leveling to an image. It changes the image shadows, midtones and highlights. This function is useful for pre-processing images for the purpose of improving barcode recognition results.
public class ColorLevelCommand : Leadtools.Imageprocessing.Leadtools.ImageProcessing.RasterCommand, Leadtools.Imageprocessing.Leadtools.ImageProcessing.IRasterCommand
Public Class ColorLevelCommand
Inherits Leadtools.Imageprocessing.Leadtools.ImageProcessing.RasterCommand
Implements Leadtools.Imageprocessing.Leadtools.ImageProcessing.IRasterCommand
public sealed class ColorLevelCommand : Leadtools.Imageprocessing.Leadtools.ImageProcessing.IRasterCommand
@interface LTColorLevelCommand : LTRasterCommand
public class ColorLevelCommand extends RasterCommand
function Leadtools.ImageProcessing.Color.ColorLevelCommand()
public ref class ColorLevelCommand : public Leadtools.Imageprocessing.Leadtools.ImageProcessing.RasterCommand, Leadtools.Imageprocessing.Leadtools.ImageProcessing.IRasterCommand
For more information, refer to Changing Brightness and Contrast. For more information, refer to Correcting Colors.
Run the ColorLevelCommand on an image.
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing.Color
Public Sub ColorLevelCommandExample()
Dim codecs As New RasterCodecs()
codecs.ThrowExceptionsOnInvalidImages = True
Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "IMAGE1.CMP"))
' Prepare the command
Dim blue As ColorLevelCommandData = New ColorLevelCommandData
Dim master As ColorLevelCommandData = New ColorLevelCommandData
' Specify Image levels
blue.MinimumInput = 20
blue.MaximumInput = 200
blue.MinimumOutput = 0
blue.MaximumOutput = 255
blue.Gamma = 100
' Master will cause the image to be Inversed
master.MinimumInput = 0
master.MaximumInput = 255
master.MinimumOutput = 255
master.MaximumOutput = 0
master.Gamma = 100
' Level the Blue and Master channels
Dim command As ColorLevelCommand = New ColorLevelCommand(master, Nothing, Nothing, blue, ColorLevelCommandFlags.Blue Or ColorLevelCommandFlags.Master)
command.Run(leadImage)
codecs.Save(leadImage, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), RasterImageFormat.Jpeg, 24)
End Sub
Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Color;
public void ColorLevelCommandExample()
{
// Load an image
RasterCodecs codecs = new RasterCodecs();
codecs.ThrowExceptionsOnInvalidImages = true;
RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "IMAGE1.CMP"));
// Prepare the command
ColorLevelCommandData blue = new ColorLevelCommandData();
ColorLevelCommandData master = new ColorLevelCommandData();
//Specify Image levels
blue.MinimumInput = 20;
blue.MaximumInput = 200;
blue.MinimumOutput = 0;
blue.MaximumOutput = 255;
blue.Gamma = 100;
// Master will cause the image to be Inversed
master.MinimumInput = 0;
master.MaximumInput = 255;
master.MinimumOutput = 255;
master.MaximumOutput = 0;
master.Gamma = 100;
// Level the Blue and Master channels
ColorLevelCommand command = new ColorLevelCommand(master, null, null, blue, ColorLevelCommandFlags.Blue | ColorLevelCommandFlags.Master);
command.Run(image);
codecs.Save(image, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), RasterImageFormat.Jpeg, 24);
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Color;
public async Task ColorLevelCommandExample()
{
// Load an image
RasterCodecs codecs = new RasterCodecs();
codecs.ThrowExceptionsOnInvalidImages = true;
// Load the image
string srcFileName = @"Assets\Image1.cmp";
StorageFile loadFile = await Tools.AppInstallFolder.GetFileAsync(srcFileName);
RasterImage image = await codecs.LoadAsync(LeadStreamFactory.Create(loadFile));
// Prepare the command
ColorLevelCommandData blue = new ColorLevelCommandData();
ColorLevelCommandData master = new ColorLevelCommandData();
//Specify Image levels
blue.MinimumInput = 20;
blue.MaximumInput = 200;
blue.MinimumOutput = 0;
blue.MaximumOutput = 255;
blue.Gamma = 100;
// Master will cause the image to be Inversed
master.MinimumInput = 0;
master.MaximumInput = 255;
master.MinimumOutput = 255;
master.MaximumOutput = 0;
master.Gamma = 100;
// Level the Blue and Master channels
ColorLevelCommand command = new ColorLevelCommand(master, null, null, blue, ColorLevelCommandFlags.Blue | ColorLevelCommandFlags.Master);
command.Run(image);
string destFileName = @"result.jpg";
StorageFile saveFile = await Tools.AppLocalFolder.CreateFileAsync(destFileName);
await codecs.SaveAsync(image, LeadStreamFactory.Create(saveFile), RasterImageFormat.Jpeg, 0);
}
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Color;
using Leadtools.Examples;
public void ColorLevelCommandExample(RasterImage image, Stream outStream)
{
// Prepare the command
ColorLevelCommandData blue = new ColorLevelCommandData();
ColorLevelCommandData master = new ColorLevelCommandData();
//Specify Image levels
blue.MinimumInput = 20;
blue.MaximumInput = 200;
blue.MinimumOutput = 0;
blue.MaximumOutput = 255;
blue.Gamma = 100;
// Master will cause the image to be Inversed
master.MinimumInput = 0;
master.MaximumInput = 255;
master.MinimumOutput = 255;
master.MaximumOutput = 0;
master.Gamma = 100;
// Level the Blue and Master channels
ColorLevelCommand command = new ColorLevelCommand(master, null, null, blue, ColorLevelCommandFlags.Blue | ColorLevelCommandFlags.Master);
command.Run(image);
// Save result image
RasterCodecs codecs = new RasterCodecs();
codecs.Save(image, outStream, RasterImageFormat.Jpeg, 24);
image.Dispose();
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing.Color
Public Sub ColorLevelCommandExample(ByVal image As RasterImage, ByVal outStream As Stream)
' Prepare the command
Dim blue As ColorLevelCommandData = New ColorLevelCommandData()
Dim master As ColorLevelCommandData = New ColorLevelCommandData()
'Specify Image levels
blue.MinimumInput = 20
blue.MaximumInput = 200
blue.MinimumOutput = 0
blue.MaximumOutput = 255
blue.Gamma = 100
' Master will cause the image to be Inversed
master.MinimumInput = 0
master.MaximumInput = 255
master.MinimumOutput = 255
master.MaximumOutput = 0
master.Gamma = 100
' Level the Blue and Master channels
Dim command As ColorLevelCommand = New ColorLevelCommand(master, Nothing, Nothing, blue, ColorLevelCommandFlags.Blue Or ColorLevelCommandFlags.Master)
command.Run(image)
' Save result image
Dim codecs As RasterCodecs = New RasterCodecs()
codecs.Save(image, outStream, RasterImageFormat.Jpeg, 24)
image.Dispose()
End Sub
Leadtools.ImageProcessing.Color Namespace
Changing Brightness and Contrast
Leadtools.ImageProcessing.Effects.SharpenCommand
Leadtools.ImageProcessing.Effects.MosaicCommand
Leadtools.ImageProcessing.Effects.EmbossCommand
Leadtools.ImageProcessing.Core.MedianCommand
Leadtools.ImageProcessing.Effects.AddNoiseCommand
Leadtools.ImageProcessing.Effects.SpatialFilterCommand
Leadtools.ImageProcessing.Effects.BinaryFilterCommand
Leadtools.ImageProcessing.Core.MaximumCommand
Leadtools.ImageProcessing.Core.MinimumCommand
Leadtools.ImageProcessing.Effects.OilifyCommand
Products |
Support |
Feedback: ColorLevelCommand Class - Leadtools.ImageProcessing.Color |
Introduction |
Help Version 19.0.2017.3.21
|
Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET
Your email has been sent to support! Someone should be in touch! If your matter is urgent please come back into chat.
Chat Hours:
Monday - Friday, 8:30am to 6pm ET
Thank you for your feedback!
Please fill out the form again to start a new chat.
All agents are currently offline.
Chat Hours:
Monday - Friday
8:30AM - 6PM EST
To contact us please fill out this form and we will contact you via email.