Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing
Imports Leadtools.ImageProcessing.Core
Public Sub FrequencyFilterConstructorExample()
Dim codecs As New RasterCodecs()
codecs.ThrowExceptionsOnInvalidImages = True
Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Master.jpg"))
' Prepare the command
' Resize the image to make sure the image's dimensions are power of two.
Dim sizeCmd As SizeCommand = New SizeCommand(256, 256, RasterSizeFlags.Bicubic)
sizeCmd.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
FreqCommand.Flags = FrequencyFilterCommandFlags.InsideX Or FrequencyFilterCommandFlags.OutsideY
FreqCommand.FourierTransformInformation = FTArray
FreqCommand.Rectangle = rcRect
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
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing;
using Leadtools.ImageProcessing.Core;
public void FrequencyFilterConstructorExample()
{
// Load an image
RasterCodecs codecs = new RasterCodecs();
codecs.ThrowExceptionsOnInvalidImages = true;
RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Master.jpg"));
// Prepare the command
// Resize the image to make sure the image's dimensions are power of two.
SizeCommand sizeCommand = new SizeCommand(256, 256, 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();
freqCommand.Flags = FrequencyFilterCommandFlags.InsideX | FrequencyFilterCommandFlags.InsideY;
freqCommand.FourierTransformInformation = ftArray;
freqCommand.Rectangle = rcRect;
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";
}
function FrequencyFilterConstructorExample()
{
var codecs = new Leadtools.Codecs.RasterCodecs();
codecs.throwExceptionsOnInvalidImages = true;
// Load the image
var srcFileName = "Assets\\Image1.cmp";
return Tools.AppInstallFolder().getFileAsync(srcFileName).then(function (loadFile) {
return codecs.loadAsync(Leadtools.LeadStreamFactory.create(loadFile));
}).then(function (image) {
// Prepare the command
with (Leadtools.ImageProcessing.Core) {
// Resize the image to make sure the image's dimensions are power of two.
var sizeCommand = new Leadtools.ImageProcessing.SizeCommand(256, 256, Leadtools.RasterSizeFlags.bicubic);
sizeCommand.run(image);
var ftArray = new FourierTransformInformation(image);
// Apply FFT.
var command = new FastFourierTransformCommand(ftArray, FastFourierTransformCommandFlags.fastFourierTransform | FastFourierTransformCommandFlags.gray);
command.run(image);
var rcRect = Leadtools.LeadRectHelper.create(0, 0, image.width / 2, image.height / 2);
var freqCommand = new FrequencyFilterCommand();
freqCommand.flags = FrequencyFilterCommandFlags.insideX | FrequencyFilterCommandFlags.insideY;
freqCommand.fourierTransformInformation = ftArray;
freqCommand.rectangle = rcRect;
var invCommand = new FastFourierTransformCommand(ftArray, FastFourierTransformCommandFlags.inverseFastFourierTransform | FastFourierTransformCommandFlags.gray | FastFourierTransformCommandFlags.scale | FastFourierTransformCommandFlags.both);
invCommand.run(image);
}
});
}
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Core;
using Leadtools.ImageProcessing;
public async Task FrequencyFilterConstructorExample()
{
// 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
// Resize the image to make sure the image's dimensions are power of two.
SizeCommand sizeCommand = new SizeCommand(256, 256, 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 = LeadRectHelper.Create(0, 0, image.Width / 2, image.Height / 2);
FrequencyFilterCommand freqCommand = new FrequencyFilterCommand();
freqCommand.Flags = FrequencyFilterCommandFlags.InsideX | FrequencyFilterCommandFlags.InsideY;
freqCommand.FourierTransformInformation = ftArray;
freqCommand.Rectangle = rcRect;
FastFourierTransformCommand invCommand = new FastFourierTransformCommand(ftArray, FastFourierTransformCommandFlags.InverseFastFourierTransform | FastFourierTransformCommandFlags.Gray | FastFourierTransformCommandFlags.Scale | FastFourierTransformCommandFlags.Both);
invCommand.Run(image);
}