Computes the Fast Fourier Transform of an image or the Inverse Fast Fourier Transform as specified by flags.
public class FastFourierTransformCommand : RasterCommand
Public Class FastFourierTransformCommand
Inherits RasterCommand
@interface LTFastFourierTransformCommand : LTRasterCommand
public class FastFourierTransformCommand extends RasterCommand
public ref class FastFourierTransformCommand : public RasterCommand
This command is available in the Imaging Pro and above toolkits.
For more information, refer to Removing Noise.
Run the FastFourierTransformCommand on an image to apply a FFT transformation.
using Leadtools;
using Leadtools.ImageProcessing;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Core;
public void FastFourierTransformCommandExample()
{
// Load an image
RasterCodecs codecs = new RasterCodecs();
codecs.ThrowExceptionsOnInvalidImages = true;
RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, @"ImageProcessingDemo\FourierTransform.jpg"));
// Prepare the command
// Resize the image to make sure the image's dimensions are power of two.
SizeCommand sizecommand = new SizeCommand(256, 256, Leadtools.RasterSizeFlags.Bicubic);
sizecommand.Run(image);
FourierTransformInformation FTArray = new FourierTransformInformation(image);
// Apply FFT.
FastFourierTransformCommand command = new FastFourierTransformCommand(FTArray, FastFourierTransformCommandFlags.FastFourierTransform | FastFourierTransformCommandFlags.Gray);
command.Run(image);
LeadRect rcRect = new LeadRect(0, 0, image.Width / 2, image.Height / 2);
FrequencyFilterCommand FreqCommand = new FrequencyFilterCommand(FTArray, rcRect, FrequencyFilterCommandFlags.InsideX | FrequencyFilterCommandFlags.OutsideY);
FastFourierTransformCommand InvCommand = new FastFourierTransformCommand(FTArray, FastFourierTransformCommandFlags.InverseFastFourierTransform | FastFourierTransformCommandFlags.Gray | FastFourierTransformCommandFlags.Scale |
FastFourierTransformCommandFlags.Both);
InvCommand.Run(image);
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
Imports Leadtools
Imports Leadtools.ImageProcessing
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing.Core
Public Sub FastFourierTransformCommandExample()
Dim codecs As New RasterCodecs()
codecs.ThrowExceptionsOnInvalidImages = True
Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "ImageProcessingDemo\\FourierTransform.jpg"))
' Prepare the command
' Resize the image to make sure the image's dimensions are power of two.
Dim sizecommand As SizeCommand = New SizeCommand(256, 256, RasterSizeFlags.Bicubic)
sizecommand.Run(leadImage)
Dim FTArray As FourierTransformInformation = New FourierTransformInformation(leadImage)
' Apply FFT.
Dim command As FastFourierTransformCommand = New FastFourierTransformCommand(FTArray,
FastFourierTransformCommandFlags.FastFourierTransform Or
FastFourierTransformCommandFlags.Gray)
command.Run(leadImage)
Dim rcRect As LeadRect = New LeadRect(0, 0, leadImage.Width \ 2, leadImage.Height \ 2)
Dim FreqCommand As FrequencyFilterCommand = New FrequencyFilterCommand(FTArray, rcRect,
FrequencyFilterCommandFlags.InsideX Or
FrequencyFilterCommandFlags.OutsideY)
Dim InvCommand As FastFourierTransformCommand = New FastFourierTransformCommand(FTArray,
FastFourierTransformCommandFlags.InverseFastFourierTransform Or
FastFourierTransformCommandFlags.Gray Or
FastFourierTransformCommandFlags.Scale Or
FastFourierTransformCommandFlags.Both)
InvCommand.Run(leadImage)
End Sub
Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
FastFourierTransformCommand Members
Leadtools.ImageProcessing.Core Namespace
FrequencyFilterMaskCommand Class
DiscreteFourierTransformCommand Class
FourierTransformDisplayCommand Class
Leadtools.ImageProcessing.Effects.AverageCommand
Leadtools.ImageProcessing.Color.IntensityDetectCommand
Leadtools.ImageProcessing.Effects.SpatialFilterCommand
Leadtools.ImageProcessing.Effects.AddNoiseCommand
Leadtools.ImageProcessing.Effects.BinaryFilterCommand
Leadtools.ImageProcessing.Color.ChangeHueSaturationIntensityCommand
Leadtools.ImageProcessing.Color.ColorThresholdCommand
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
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document
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.