←Select platform

MaskConvolutionCommand Class

Summary

Applies various 3d effects to an image.

Syntax

C#
VB
Java
Objective-C
WinRT C#
C++
public sealed class MaskConvolutionCommand : Leadtools.Imageprocessing.Leadtools.ImageProcessing.IRasterCommand
@interface LTMaskConvolutionCommand : LTRasterCommand
public class MaskConvolutionCommand extends RasterCommand
function Leadtools.ImageProcessing.Effects.MaskConvolutionCommand()

Remarks
  • For EdgeDetection, the results are the same for opposite angles. For example, angles 0 and 180 have the same result when used with the edge detection mask.
  • When an image undergoes image convolution each pixel of the image is multiplied by a mask to create a new pixel value. The mask is an array of values that describes the weight that should be given to each of the pixels surrounding a specific pixel. The new pixel value is the result of the mask sum being divided by the mask weight. Using different masks result in different alterations of the image. The masks used in this command result in different types of edge detection.
  • As an example of the different masks, consider the following example:

  • To obtain these images, the following settings were used:

Parameters Emboss Edge ESplotch Splotch
Angle 0 0 180 0
Depth 3 3 3 3
Height 250 250 100 100
  • This command supports 12 and 16-bit grayscale and 48 and 64-bit color images. Support for 12 and 16-bit grayscale and 48 and 64-bit color images is available only in the Document/Medical toolkits.
  • This command does not support 32-bit grayscale images.
Example

Run the MaskConvolutionCommand on an image.

C#
VB
WinRT C#
Silverlight C#
Silverlight VB
Imports Leadtools 
Imports Leadtools.Codecs 
Imports Leadtools.ImageProcessing.Effects 
 
    
Public Sub MaskConvolutionCommandExample() 
   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 New MaskConvolutionCommand 
 
   ' Apply 3D emboss effect on the image, with 0 degrees as the angle of apparent light, 
   ' depth of 1.50, and height of 3 
   command.Angle = 0 
   command.Depth = 150 
   command.Height = 3 
   command.Type = MaskConvolutionCommandType.Emboss 
   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.Effects; 
 
       
public void MaskConvolutionCommandExample() 
{ 
   // 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 
   MaskConvolutionCommand command = new MaskConvolutionCommand(); 
 
   // Apply 3D emboss effect on the image, with 0 degrees as the angle of apparent light, 
   // depth of 1.50, and height of 3 
   command.Angle = 0; 
   command.Depth = 150; 
   command.Height = 3; 
   command.Type = MaskConvolutionCommandType.Emboss; 
   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.Effects; 
using Leadtools.ImageProcessing; 
 
       
public async Task MaskConvolutionCommandExample() 
{ 
   // 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 
   MaskConvolutionCommand command = new MaskConvolutionCommand(); 
 
   // Apply 3D emboss effect on the image, with 0 degrees as the angle of apparent light, 
   // depth of 1.50, and height of 3 
   command.Angle = 0; 
   command.Depth = 150; 
   command.Height = 3; 
   command.Type = MaskConvolutionCommandType.Emboss; 
   command.Run(image); 
   //Save as BMP 
   string destFileName = @"result.bmp"; 
   StorageFile saveFile = await Tools.AppLocalFolder.CreateFileAsync(destFileName); 
   await codecs.SaveAsync(image, LeadStreamFactory.Create(saveFile), RasterImageFormat.Bmp, 24); 
 
} 
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing.Effects; 
using Leadtools.Examples; 
 
public void MaskConvolutionCommandExample(RasterImage image, Stream outStream) 
{ 
   // Prepare the command 
   MaskConvolutionCommand command = new MaskConvolutionCommand(); 
   // Apply 3D emboss effect on the image, with 0 degrees as the angle of apparent light, 
   // depth of 1.50, and height of 3 
   command.Angle = 0; 
   command.Depth = 150; 
   command.Height = 3; 
   command.Type = MaskConvolutionCommandType.Emboss; 
   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.Effects 
 
Public Sub MaskConvolutionCommandExample(ByVal image As RasterImage, ByVal outStream As Stream) 
   ' Prepare the command 
   Dim command As MaskConvolutionCommand = New MaskConvolutionCommand() 
   ' Apply 3D emboss effect on the image, with 0 degrees as the angle of apparent light, 
   ' depth of 1.50, and height of 3 
   command.Angle = 0 
   command.Depth = 150 
   command.Height = 3 
   command.Type = MaskConvolutionCommandType.Emboss 
   command.Run(image) 
   ' Save result image 
   Dim codecs As RasterCodecs = New RasterCodecs() 
   codecs.Save(image, outStream, RasterImageFormat.Jpeg, 24) 
   image.Dispose() 
End Sub 

Requirements

Target Platforms

See Also

Reference

MaskConvolutionCommand Members

Leadtools.ImageProcessing.Effects Namespace

Leadtools.ImageProcessing.SpecialEffects.PlasmaCommand

EmbossCommand Class

SharpenCommand Class

Leadtools.ImageProcessing.Color.PosterizeCommand

MosaicCommand Class

AverageCommand Class

Leadtools.ImageProcessing.Core.MedianCommand

AddNoiseCommand Class

Leadtools.ImageProcessing.Color.IntensityDetectCommand

SpatialFilterCommand Class

BinaryFilterCommand Class

Leadtools.ImageProcessing.Core.MinimumCommand

Leadtools.ImageProcessing.Core.MaximumCommand

OilifyCommand Class

Leadtools.ImageProcessing.Color.SolarizeCommand

Leadtools.ImageProcessing.Core.WindowLevelCommand

Leadtools.ImageProcessing.SpecialEffects.BumpMapCommand

CubismCommand Class

Leadtools.ImageProcessing.SpecialEffects.DrawStarCommand

Leadtools.ImageProcessing.SpecialEffects.DryCommand

Leadtools.ImageProcessing.SpecialEffects.FreePlaneBendCommand

Leadtools.ImageProcessing.SpecialEffects.FreeRadialBendCommand

Leadtools.ImageProcessing.SpecialEffects.GlassEffectCommand

Leadtools.ImageProcessing.SpecialEffects.GlowCommand

Leadtools.ImageProcessing.SpecialEffects.LensFlareCommand

Leadtools.ImageProcessing.SpecialEffects.LightCommand

Leadtools.ImageProcessing.SpecialEffects.OceanCommand

Leadtools.ImageProcessing.SpecialEffects.PlaneBendCommand

Leadtools.ImageProcessing.SpecialEffects.PlaneCommand

Leadtools.ImageProcessing.Color.SampleTargetCommand

Leadtools.ImageProcessing.SpecialEffects.TunnelCommand

Leadtools.ImageProcessing.SpecialEffects.BendCommand

Leadtools.ImageProcessing.SpecialEffects.CylinderCommand

Leadtools.ImageProcessing.SpecialEffects.FreeHandShearCommand

Leadtools.ImageProcessing.SpecialEffects.FreeHandWaveCommand

Leadtools.ImageProcessing.SpecialEffects.ImpressionistCommand

Leadtools.ImageProcessing.SpecialEffects.PixelateCommand

Leadtools.ImageProcessing.SpecialEffects.PolarCommand

Leadtools.ImageProcessing.SpecialEffects.RadialBlurCommand

Leadtools.ImageProcessing.SpecialEffects.RadialWaveCommand

Leadtools.ImageProcessing.SpecialEffects.RippleCommand

Leadtools.ImageProcessing.SpecialEffects.SphereCommand

Leadtools.ImageProcessing.SpecialEffects.SwirlCommand

Leadtools.ImageProcessing.SpecialEffects.WaveCommand

Leadtools.ImageProcessing.SpecialEffects.WindCommand

Leadtools.ImageProcessing.SpecialEffects.ZoomBlurCommand

Leadtools.ImageProcessing.SpecialEffects.ZoomWaveCommand

Leadtools.ImageProcessing.SpecialEffects.ShadowCommand

Leadtools.ImageProcessing.SpecialEffects.RevEffectCommand

Leadtools.ImageProcessing.SpecialEffects.AgingCommand

Leadtools.ImageProcessing.SpecialEffects.DiceEffectCommand

Leadtools.ImageProcessing.SpecialEffects.FunctionalLightCommand

Leadtools.ImageProcessing.SpecialEffects.PuzzleEffectCommand

Leadtools.ImageProcessing.SpecialEffects.RingEffectCommand

TextureAlphaBlendCommand Class

Products | Support | Contact Us | Copyright Notices
© 1991-2017 LEAD Technologies, Inc. All Rights Reserved.
Leadtools.ImageProcessing.Effects Assembly
Click or drag to resize