You are here: Start » AVL.NET » AVL.ImagePolarTransform(AvlNet.Image, AvlNet.Point2D, AvlNet.PolarSpaceType, AvlNet.PolarInterpolationMethod, AvlNet.Image)

AVL.ImagePolarTransform(AvlNet.Image, AvlNet.Point2D, AvlNet.PolarSpaceType, AvlNet.PolarInterpolationMethod, AvlNet.Image)

Transforms an image to polar or log-polar space.

Namespace:AvlNet
Assembly:AVL.NET.dll

Syntax


public static void ImagePolarTransform(
	AvlNet.Image inImage,
	AvlNet.Point2D inCenter,
	AvlNet.PolarSpaceType inOutputSpaceType,
	AvlNet.PolarInterpolationMethod inInterpolation,
	out AvlNet.Image outImage
)

Parameters

inImage
Type: AvlNet.Image
Input image
inCenter
Type: AvlNet.Point2D
Center of the coordinate system in input image
inOutputSpaceType
Type: AvlNet.PolarSpaceType
Method of transformation
inInterpolation
Type: AvlNet.PolarInterpolationMethod
Method of underlying interpolation
outImage
Type: AvlNet.Image
Output image

Description

It uses the following transformation:

\[ dst(\rho, \phi) = src(x,y), \]

where

\[ \rho = m \sqrt{x^2 + y^2} , \phi = \arctan(\frac{y}{x}), \]

for linear-polar space, and

\[ \rho = k \log{\sqrt{x^2+y^2} }, \phi = \arctan(\frac{y}{x}), \]

for log-polar space, which emulates the human "foveal vision".

Parameters \(m\) and \(k\) are chosen so that entire source image could fit into output image.

Transformation does not change image dimensions.

Examples

ImagePolarTransform performed on the sample image with inCenter = (150,150), and inOutputSpaceType Polar and LogPolar respectively.

See also