How to plot a variable density spiral(or any other mathematical 2D- graphs ) on to a image( 512* 512, zero matrix)?
    조회 수: 6 (최근 30일)
  
       이전 댓글 표시
    
N_k = 64^2;                         % number of k-samples
t   = linspace(0,sqrt(0.5),N_k)';   % dummy variable to parameterise spiral
k_x = (1 + randn(N_k,1)/20).*t.^2.*cos(2*pi*32*t);  % spiral kx-coords
k_y = (1 + randn(N_k,1)/20).*t.^2.*sin(2*pi*32*t);  % spiral ky-coords
% show scatterplot of trajectory
figure();
z = scatter(k_x,k_y,5, 'filled'); grid off;
OUTPUT:

% now i want to plot this onto a image space for example, zeros(512x512) 
EXPECTED OUTPUT:

% basically i wanted to apply mathematical plots such as ( variable density spiral , radial spiral ) on to a kspace image matrix to sample it on those plot points.
댓글 수: 0
채택된 답변
  Ameer Hamza
      
      
 2020년 3월 6일
        Here is an way by translating and scaling the random numbers.
N_k = 64^2;                         % number of k-samples
t   = linspace(0,sqrt(0.5),N_k)';   % dummy variable to parameterise spiral
k_x = (1 + randn(N_k,1)/20).*t.^2.*cos(2*pi*32*t);  % spiral kx-coords
k_y = (1 + randn(N_k,1)/20).*t.^2.*sin(2*pi*32*t);  % spiral ky-coords
% translate and scale the numbers to make them in range [0 512] 
k_x = 256 + 300*k_x;
k_y = 256 + 300*k_y;
% show scatterplot of trajectory
img = zeros(512, 512);
fig = figure();
ax = axes();
ax.Visible = 'off';
hold(ax);
imshow(img)
scatter(ax, k_x, k_y, 3, 'w', 'filled')
댓글 수: 2
  Ameer Hamza
      
      
 2020년 3월 7일
				
      편집: Ameer Hamza
      
      
 2020년 3월 7일
  
			Yes, the general idea is the same. However, you are just converting a single pixel to white color in this case. If this is your intended result, then good; otherwise, you might consider using other functions in Matlab to draw a circle on an image with a given radius. For example check the answer here: https://www.mathworks.com/matlabcentral/answers/483147-draw-points-on-a-image or this function https://www.mathworks.com/help/vision/ref/insertshape.html
추가 답변 (0개)
참고 항목
카테고리
				Help Center 및 File Exchange에서 Image Processing Toolbox에 대해 자세히 알아보기
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

