Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing.Core
Public Sub ManualPerspectiveDeskewCommandExample()
Dim codecs As RasterCodecs = New RasterCodecs()
codecs.ThrowExceptionsOnInvalidImages = True
'Load an image
Dim image As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "PerspectiveDeskew.jpg"))
'Dim PolyPoints As List(Of LeadPoint) = New List(Of LeadPoint)()
Dim PolyPoints() As LeadPoint = New LeadPoint(4) {}
Dim MappingPoints() As LeadPoint = New LeadPoint(4) {}
'The four corners of the polygon
PolyPoints(0) = New LeadPoint(131, 193)
PolyPoints(1) = New LeadPoint(456, 151)
PolyPoints(2) = New LeadPoint(535, 282)
PolyPoints(3) = New LeadPoint(124, 354)
'Prepare the command
Dim command As ManualPerspectiveDeskewCommand = New ManualPerspectiveDeskewCommand()
command.InPoints = PolyPoints
MappingPoints(0) = New LeadPoint(0, 0)
MappingPoints(1) = New LeadPoint(610, 0)
MappingPoints(2) = New LeadPoint(610, 421)
MappingPoints(3) = New LeadPoint(0, 421)
command.MappingPoints = MappingPoints
'Apply
command.Run(image)
codecs.Save(command.OutputImage, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), image.OriginalFormat, image.BitsPerPixel)
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.Core;
public void ManualPerspectiveDeskewCommandExample()
{
RasterCodecs codecs = new RasterCodecs();
codecs.ThrowExceptionsOnInvalidImages = true;
//Load an image
RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "PerspectiveDeskew.jpg"));
LeadPoint[] PolyPoints = new LeadPoint[4];
LeadPoint[] MappingPoints = new LeadPoint[4];
//The four corners of the polygon
PolyPoints[0] = new LeadPoint(131, 193);
PolyPoints[1] = new LeadPoint(456, 151);
PolyPoints[2] = new LeadPoint(535, 282);
PolyPoints[3] = new LeadPoint(124, 354);
//Prepare the command
ManualPerspectiveDeskewCommand command = new ManualPerspectiveDeskewCommand();
command.InPoints = PolyPoints;
MappingPoints[0] = new LeadPoint(0, 0);
MappingPoints[1] = new LeadPoint(610, 0);
MappingPoints[2] = new LeadPoint(610, 421);
MappingPoints[3] = new LeadPoint(0, 421);
command.MappingPoints = MappingPoints;
//Apply
command.Run(image);
codecs.Save(command.OutputImage, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), image.OriginalFormat, image.BitsPerPixel);
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}