Computes the Discrete Fourier transform of an image or the Inverse Discrete Fourier transform as specified by the flags.
public class DiscreteFourierTransformCommand : RasterCommand
Public Class DiscreteFourierTransformCommand
Inherits Leadtools.Imageprocessing.Leadtools.ImageProcessing.RasterCommand
Implements Leadtools.Imageprocessing.Leadtools.ImageProcessing.IRasterCommand
public sealed class DiscreteFourierTransformCommand : Leadtools.Imageprocessing.Leadtools.ImageProcessing.IRasterCommand
@interface LTDiscreteFourierTransformCommand : LTRasterCommand
function Leadtools.ImageProcessing.Core.DiscreteFourierTransformCommand()
public ref class DiscreteFourierTransformCommand : public Leadtools.Imageprocessing.Leadtools.ImageProcessing.RasterCommand, Leadtools.Imageprocessing.Leadtools.ImageProcessing.IRasterCommand
This command is available in the Imaging Pro and above toolkits.
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 Removing Noise.
Run the DiscreteFourierTransformCommand on an image.
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Core;
public void DiscreteFourierTransformCommandExample()
{
// Load an image
RasterCodecs codecs = new RasterCodecs();
codecs.ThrowExceptionsOnInvalidImages = true;
RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Master.jpg"));
// Prepare the command
FourierTransformInformation FTArray = new FourierTransformInformation(image);
LeadRect rcRange = new LeadRect(0, 0, image.Width - 1, image.Height - 1);
DiscreteFourierTransformCommand command = new DiscreteFourierTransformCommand();
command.FourierTransformInformation = FTArray;
command.Range = rcRange;
command.Flags = DiscreteFourierTransformCommandFlags.DiscreteFourierTransform |
DiscreteFourierTransformCommandFlags.Gray |
DiscreteFourierTransformCommandFlags.Range |
DiscreteFourierTransformCommandFlags.InsideX |
DiscreteFourierTransformCommandFlags.InsideY;
//Apply DFT.
FourierTransformDisplayCommand disCommand = new FourierTransformDisplayCommand();
disCommand.Flags = FourierTransformDisplayCommandFlags.Log | FourierTransformDisplayCommandFlags.Magnitude;
disCommand.FourierTransformInformation = command.FourierTransformInformation;
// plot frequency magnitude
disCommand.Run(image);
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing.Core
Leadtools.Examples.Support.SetLicense()
Public Sub DiscreteFourierTransformCommandExample()
Dim codecs As New RasterCodecs()
codecs.ThrowExceptionsOnInvalidImages = True
Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Master.jpg"))
' Prepare the command
Dim FTArray As FourierTransformInformation = New FourierTransformInformation(leadImage)
Dim rcRange As LeadRect = New LeadRect(0, 0, leadImage.Width - 1, leadImage.Height - 1)
Dim command As DiscreteFourierTransformCommand = New DiscreteFourierTransformCommand
command.FourierTransformInformation = FTArray
command.Range = rcRange
command.Flags = DiscreteFourierTransformCommandFlags.DiscreteFourierTransform Or
DiscreteFourierTransformCommandFlags.Gray Or
DiscreteFourierTransformCommandFlags.Range Or
DiscreteFourierTransformCommandFlags.InsideX Or
DiscreteFourierTransformCommandFlags.InsideY
'Apply DFT.
command.Run(leadImage)
Dim disCommand As FourierTransformDisplayCommand = New FourierTransformDisplayCommand
disCommand.Flags = FourierTransformDisplayCommandFlags.Log Or FourierTransformDisplayCommandFlags.Magnitude
disCommand.FourierTransformInformation = command.FourierTransformInformation
'plot frequency magnitude
disCommand.Run(leadImage)
End Sub
Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
DiscreteFourierTransformCommand Members
Leadtools.ImageProcessing.Core Namespace
FastFourierTransformCommand Class
FourierTransformDisplayCommand Class
Leadtools.ImageProcessing.Effects.AverageCommand
Leadtools.ImageProcessing.Effects.AddNoiseCommand
Leadtools.ImageProcessing.Color.IntensityDetectCommand
Leadtools.ImageProcessing.Effects.SpatialFilterCommand
Leadtools.ImageProcessing.Effects.BinaryFilterCommand
Leadtools.ImageProcessing.Color.ChangeHueSaturationIntensityCommand
Leadtools.ImageProcessing.Color.ColorThresholdCommand
DiscreteFourierTransformCommand Class
Leadtools.ImageProcessing.Effects.DirectionEdgeStatisticalCommand
Leadtools.ImageProcessing.Effects.StatisticsInformationCommand
Leadtools.ImageProcessing.Effects.FeretsDiameterCommand
Leadtools.ImageProcessing.Effects.ObjectInformationCommand
Leadtools.ImageProcessing.Effects.RegionContourPointsCommand
Leadtools.ImageProcessing.Color.MathematicalFunctionCommand
Leadtools.ImageProcessing.SpecialEffects.RevEffectCommand
Leadtools.ImageProcessing.Color.SegmentCommand
SubtractBackgroundCommand Class
Leadtools.ImageProcessing.Effects.UserFilterCommand
Leadtools.ImageProcessing.SpecialEffects.FragmentCommand
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