Inverse Polar Transform on Images

Unwarp the circular objects appearing in images using inverse polar transform.

You are now following this Submission

This work transforms the polar coordinate representation of an image back onto an annular arc in cartesian coordinates. The result contains an interpolated image where the circular structures are converted to rectangular ones.
The function transImageInvPolar applies an inverse polar transformation to an image with circular structures. [Cx, Cy] is the center location of both of the circles, while InnerRadius is the radius for the small circular arc, while OuterRadius is for the big one. The transformation is applied starting from angle Phi0 to PhiEnd (in radians). The result IWarp is a linearized image, in which the circular elements are mapped onto linear ones. If the parameter Visualize is set to true, then the image with polar region as well as the output are plotted. The function only warps the region remaining within the torus lying within the two circles. Note that I is expected to be a gray valued image. The coordinate axis respects the mathematical convention. This is why angular mappings are also defind in the similar fashion. Yet, [Cx, Cy] are in pixel coordinates.
Usage (Parameters are illustrative only) :
fromRadius = 205.0;
toRadius = 676.0;
centerX = 802.0;
centerY = 550.0;
fromAngle = pi/2;
toAngle = pi+pi/2;
transImageInvPolar(I, centerX, centerY, fromRadius, toRadius, fromAngle, toAngle, 1)

Cite As

Tolga Birdal (2026). Inverse Polar Transform on Images (https://www.mathworks.com/matlabcentral/fileexchange/48911-inverse-polar-transform-on-images), MATLAB Central File Exchange. Retrieved .

General Information

MATLAB Release Compatibility

  • Compatible with any release

Platform Compatibility

  • Windows
  • macOS
  • Linux
Version Published Release Notes Action
1.1.0.0

Added screenshot.

1.0.0.0