Products | Support | Email a link to this topic. | Send comments on this topic. | Back to Introduction - All Topics | Help Version 19.0.6.21
|
public class ApplyMathematicalLogicCommand : Leadtools.ImageProcessing.RasterCommand, Leadtools.ImageProcessing.IRasterCommand
'Declaration
Public Class ApplyMathematicalLogicCommand Inherits Leadtools.ImageProcessing.RasterCommand Implements Leadtools.ImageProcessing.IRasterCommand
'Usage
Dim instance As ApplyMathematicalLogicCommand
public sealed class ApplyMathematicalLogicCommand : Leadtools.ImageProcessing.IRasterCommand
@interface LTApplyMathematicalLogicCommand : LTRasterCommand
public class ApplyMathematicalLogicCommand extends RasterCommand
function Leadtools.ImageProcessing.Color.ApplyMathematicalLogicCommand()
public ref class ApplyMathematicalLogicCommand : public Leadtools.ImageProcessing.RasterCommand, Leadtools.ImageProcessing.IRasterCommand
In order to speed up widely used image processing filters in LEADTOOLS, the grayscale value (master channel) of a colored image is calculated using the following formulas:
#define CalcGrayValue(r, g, b) ((L_UCHAR)(((L_UCHAR) (((2 * (L_UINT) (r)) + (5 * (L_UINT) (g)) + (L_UINT) (b) + 4) / 8)))) #define CalcGrayValue16(r, g, b) ((L_UINT16) (((2 * (L_UINT32) (r)) + (5 * (L_UINT32) (g)) + (L_UINT32) (b) + 4) / 8)) #define CalcGrayValue32(r, g, b) ((L_UINT32) (((2 * (L_UINT32) (r)) + (5 * (L_UINT32) (g)) + (L_UINT32) (b) + 4) / 8))For more information, refer to Changing Brightness and Contrast.
Run the ApplyMathematicalLogicCommand on an image.
Imports Leadtools Imports Leadtools.Codecs Imports Leadtools.ImageProcessing.Color Public Sub ApplyMathematicalLogicCommandExample() Dim codecs As New RasterCodecs() codecs.ThrowExceptionsOnInvalidImages = True Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "ImageProcessingDemo\\NaturalFruits.jpg")) ' Prepare the command Dim command As ApplyMathematicalLogicCommand = New ApplyMathematicalLogicCommand command.Factor = 151 command.Flags = ApplyMathematicalLogicCommandFlags.OperationMultiply Or ApplyMathematicalLogicCommandFlags.ValueDoNothing Or ApplyMathematicalLogicCommandFlags.ResultDoNothing ' Multiply the colors of the bitmap using a factor of 1.51 . 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 ApplyMathematicalLogicCommandExample() { // Load an image RasterCodecs codecs = new RasterCodecs(); codecs.ThrowExceptionsOnInvalidImages = true; RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, @"ImageProcessingDemo\NaturalFruits.jpg")); // Prepare the command ApplyMathematicalLogicCommand command = new ApplyMathematicalLogicCommand(); command.Factor = 151; command.Flags = ApplyMathematicalLogicCommandFlags.OperationMultiply | ApplyMathematicalLogicCommandFlags.ValueDoNothing | ApplyMathematicalLogicCommandFlags.ResultDoNothing; // Multiply the colors of the bitmap using a factor of 1.51 . 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 ApplyMathematicalLogicCommandExample() { // 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 ApplyMathematicalLogicCommand command = new ApplyMathematicalLogicCommand(); command.Factor = 151; command.Flags = ApplyMathematicalLogicCommandFlags.OperationMultiply | ApplyMathematicalLogicCommandFlags.ValueDoNothing | ApplyMathematicalLogicCommandFlags.ResultDoNothing; // Multiply the colors of the bitmap using a factor of 1.51 . 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 ApplyMathematicalLogicCommandExample(RasterImage image, Stream outStream) { // Prepare the command ApplyMathematicalLogicCommand command = new ApplyMathematicalLogicCommand(); command.Factor = 151; command.Flags = ApplyMathematicalLogicCommandFlags.OperationMultiply | ApplyMathematicalLogicCommandFlags.ValueDoNothing | ApplyMathematicalLogicCommandFlags.ResultDoNothing; // Multiply the colors of the bitmap using a factor of 1.51 . 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 ApplyMathematicalLogicCommandExample(ByVal image As RasterImage, ByVal outStream As Stream) ' Prepare the command Dim command As ApplyMathematicalLogicCommand = New ApplyMathematicalLogicCommand() command.Factor = 151 command.Flags = ApplyMathematicalLogicCommandFlags.OperationMultiply Or ApplyMathematicalLogicCommandFlags.ValueDoNothing Or _ ApplyMathematicalLogicCommandFlags.ResultDoNothing ' Multiply the colors of the bitmap using a factor of 1.51 . command.Run(image) ' Save result image Dim codecs As RasterCodecs = New RasterCodecs() codecs.Save(image, outStream, RasterImageFormat.Jpeg, 24) image.Dispose() End Sub
ApplyMathematicalLogicCommand Members
Leadtools.ImageProcessing.Color Namespace
Flags for ApplyMathematicalLogicCommand
Changing Brightness and Contrast
Correcting Colors
Leadtools.ImageProcessing.Effects.CombineCommand
ChangeIntensityCommand Class
GammaCorrectCommand Class
ChangeContrastCommand Class
HistogramContrastCommand Class
StretchIntensityCommand Class
RemapIntensityCommand Class
ChangeHueCommand Class
ChangeSaturationCommand Class
HistogramEqualizeCommand Class
Leadtools.ImageProcessing.FillCommand
HistogramCommand Class
Leadtools.ImageProcessing.Core.WindowLevelCommand
AdjustTintCommand Class
Leadtools.ImageProcessing.Core.HalfToneCommand