![]()
Quadrilateral transformation and findingAForge.NET framework provides set of set of image processing classes, which Source image Quadrilateral Transformation
// define quadrilateral's corners
List<IntPoint> corners = new List<IntPoint>( );
corners.Add( new IntPoint( 99, 99 ) );
corners.Add( new IntPoint( 156, 79 ) );
corners.Add( new IntPoint( 184, 126 ) );
corners.Add( new IntPoint( 122, 150 ) );
// create filter
QuadrilateralTransformation filter =
new QuadrilateralTransformationBilinear( corners, 200, 200 );
// apply the filter
Bitmap newImage = filter.Apply( image );
Backward Quadrilateral Transformation
// define quadrilateral's corners
List<IntPoint> corners = new List<IntPoint>( );
corners.Add( new IntPoint( 99, 99 ) );
corners.Add( new IntPoint( 156, 79 ) );
corners.Add( new IntPoint( 184, 126 ) );
corners.Add( new IntPoint( 122, 150 ) );
// create filter
BackwardQuadrilateralTransformation filter =
new BackwardQuadrilateralTransformation( sourceImage, corners );
// apply the filter
Bitmap newImage = filter.Apply( image );
Quadrilateral Finder // get corners of the quadrilateral QuadrilateralFinder qf = new QuadrilateralFinder( ); List<IntPoint> corners = qf.ProcessImage( image ); Once corners are found the above mentioned classes for quadrilateral transformation can be used.
|
|||||||