How do I transform image data recorded in polar coordinates so that I can view the image in MATLAB 7.0 (R14)?

4 次查看(过去 30 天)

采纳的回答

MathWorks Support Team
编辑:MathWorks Support Team 2023-4-1
The ability to transform image data recorded in polar coordinates automatically is not present in the Image Processing Toolbox.
The following example will perform the conversion on data in the attached im2.mat file. Please download the attached file and place it in your working directory:
load im2.mat
[nrows, ncols] = size(im2);
increment = 0.0818;
startAngle = 4.0433;
%prepare matrices containing the polar coordinate data
rho = repmat([1:nrows]',1,ncols);
theta = repmat([startAngle:increment:startAngle + increment*(ncols-1)],nrows,1);
%convert the polar coordinates to cartesian
[x,y] = pol2cart(theta,rho);
%use ffgrid to prepare the data
[zz, xx, yy] = ffgrid(x, y, im2, 1, 1);
%use griddata to produce the final image
Z = griddata(x,y,im2,xx,yy');
imagesc(Z)
This procedure requires FFGRID and BIN, two functions which can be downloaded from Matlab Central, at:
Note that MathWorks does not guarantee or warrant the use or content of these submissions. Any questions, issues, or complaints should be directed to the contributing author.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Images 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by