Matlab 图像转极坐标系

摘要:
实心环imgVP1=翻转;%水平翻转polarVP1=polarVolinPlot;%调用函数空心环[m,n,~]=大小;%对于i=m:m+300forj=1:nimgVP2=[2552555],填充中空部分;endendimgVP2=翻转;polarVP2=polarVolinPlot;函数[polarImg]=polarImg%polarImg Rimg0=双倍;Gimg0=双倍;Bimg0=双;[m,n]=尺寸;%原始图纸坐标[t,r]=网格;M=2*M;N=2*N;[NA,MA]=网格;T=atan2;R=sqrt;%变换坐标Rpolar=interp2;Gpolar=interp2;B极性=interp2;polarImg=uint8;polarImg=旋转;%如果M˂NpolarImg=improp,则图像剪辑;elsepolarImg=imcrop;结束---------------------

实心圆环

imgVP1=flip(imgVP1,1);  % 水平翻转

polarVP1=polarVolinPlot(imgVP1); % 调用函数
空心圆环

[m,n,~]=size(imgVP2);

% 填充空心部分

for i=m:m+300

    for j=1:n

        imgVP2(i,j,:)=[255,255,255];

    end

end

imgVP2=flip(imgVP2,1);

polarVP2=polarVolinPlot(imgVP2);
 

function [polarImg] = polarImg(img0)
% polarImg
Rimg0=double(img0(:,:,1));
Gimg0=double(img0(:,:,2));
Bimg0=double(img0(:,:,3));
[m,n]=size(Rimg0);
%原图坐标
[t,r]=meshgrid(linspace(-pi,pi,n),1:m);
M=2*m;N=2*n;
[NA,MA]=meshgrid((1:N)-n-0.5,(1:M)-m-0.5);
T=atan2(NA,MA);
R=sqrt(MA.^2+NA.^2);%变换坐标
Rpolar=interp2(t,r,Rimg0,T,R,'linear',0);
Gpolar=interp2(t,r,Gimg0,T,R,'linear',0);
Bpolar=interp2(t,r,Bimg0,T,R,'linear',0);
polarImg=uint8(cat(3,Rpolar,Gpolar,Bpolar));
polarImg=imrotate(polarImg, -90);
% 图片裁剪
if M<N
polarImg = imcrop(polarImg,[0,(N-M)/2,M,M]);
else
polarImg = imcrop(polarImg,[0,(M-N)/2,N,N]);
end
end
--------------------- 

免责声明:文章转载自《Matlab 图像转极坐标系》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Tushare Pro接口介绍RAID10和RAID01的区别下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

极坐标系 下的 牛顿第二定律

在 一个 极坐标系 里,  可以这样 来 描述 牛顿第二定律, 如图,  图中 是一个 极坐标系,  质点 从 A 点 运动到 C 点,   极角 的 变化量 就是 ⊿θ  ,   极径 的 变化量  ⊿ρ = BC 。    其中  OA = OB,  AH 垂直于 OB,  AB 间 的 弧 记为  弧AB,   AB 间 的 线段 仍然 称为 AB ...