Cartesian to polar image transform
imcart2pol
Converts 2D Cartesian images to polar coordinate images, i.e. "unwraps" them about an origin. The result is a rectangular image whose vertical axis is radial, and horizontal axis is circumferential. The index 1
of the radial axis is the origin of the Cartesian coordinates image.
The intent of the code is to be used to make polar coordinate modifications to a Cartesian coordinate image more simply. The intended workflow goes as follows
im_c = <from source>
im_p = im_cart2pol(im_c, ...)
<modify im_p>
im_c = im_pol2cart(im_p, size(im_c), ...)
<use im_c>
The top-level functions are im_cart2pol.m
and im_pol2cart.m
. The file test.m
contains an example of usage. Other files are helper functions. Note that im_pol2cart.m
is not intended to be used in isolation, and no guarantees are made about output.
Overall the workflow works well, even on logical images, but has artifacts with thin features. The user may select which interp2
method is used for coordinates conversion as a string argument to the top-level functions.
Usage
Please see test.m
for an example of how to use the functions. The output should look like the following image.
Acknowledgements
The code was inspired by
- ImToPolar by Prakash Manandhar
- polartrans.m by Peter Kovesi
- This answer by User swjm at Stackoverflow
Cite As
William Warriner (2024). Cartesian to polar image transform (https://github.com/wwarriner/matlab_imcart2pol), GitHub. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxTags
Acknowledgements
Inspired by: Polar To/From Rectangular Transform of Images
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
Versions that use the GitHub default branch cannot be downloaded
Version | Published | Release Notes | |
---|---|---|---|
1.0.0.1 | Update title |
|
|
1.0.0 |
|