2012-10-17 17 views
1

我需要用Octave生成棋盘黑/白棋。 我想使用此虚拟图像进行极坐标或透视投影的直角坐标转换。 任何人都可以显示脚本?由于如何用Octave生成棋盘格?

我已经试过这样:

clear all 
close all 
clc 

img = magic(16); 

%# convert coordinates from cartesian to polar 
[r c] = size(img); 
[X Y] = meshgrid(1:c,1:r); 
[theta rho] = cart2pol(X, Y); 

figure 
subplot(121), image(img), axis square 

colormap(gray(256)) 

subplot(122), surf(theta, rho,img),axis square; 
view(0,90) 
+0

到目前为止您的解决方案是什么? – Acorbe

+1

发布“为我工作”的问题是开放式和“本地化”(意味着只对您有用)通常不会被回答,并且会被低估。当你有超过1000的声望时,包括我在内的众多黑客会更倾向于做一些符合你的规范的东西。获得声誉的最佳方式是回答其他人的问题并获得对他们的投票。 –

回答

2

这个做什么的OP一直在寻找。但这个问题在几个月前被问过!

对OP代码的轻微修改。

clear all 
close all 
clc 
%my changes start 
img = zeros(8,8); 
img(1:2:end,1:2:end)=255; 
img(2:2:end,2:2:end)=255; 
%my changes end 

%# convert coordinates from cartesian to polar 
[r c] = size(img); 
[X Y] = meshgrid(1:c,1:r); 
[theta rho] = cart2pol(X, Y); 

figure 
subplot(121), image(img), axis square 

colormap(gray(256)) 

subplot(122), surf(theta, rho,img),axis square; 
view(0,90)