how to save the image

2 views (last 30 days)
FIR on 14 Feb 2013
I have the folowing code ,plz tell how to save the circled image
k is my image
function [x1 y1 r ] = circle_saptha4(k)
ok = 0;
nim = k;
while ok~=1
% figure;
pt = ginput(2)
x1 = pt(1,1);
y1 = pt(1,2);
x2 = pt(2,1);
y2 = pt(2,2);
xpt = [x1 x2];
ypt = [y1 y2];
%line(x,y); % Enablw this for draw rectangle on circle
r = sqrt((x2-x1)^2 + (y2-y1)^2)
pp=rsmak('circle',r,[x1 y1]);
% figure;
% imshow(k)
xtl = x1-r;
xtr = x1+r;
xbl = x1-r;
xbr = x1+r;
ytl = y1+r;
ytr = y1+r;
ybl = y1-r;
ybr = y1-r;
x = [xtl xtr xbr xbl xtl];
y = [ytl ytr ybr ybl ytl];
for i=1:size(k,1)
for j=1:size(k,2)
x2 = j;
y2 = i;
val = floor(sqrt((x2-x1)^2 + (y2-y1)^2));
if(val == floor(r))
nim(i,j,1) = 255;
nim(i,j,2) = 0;
nim(i,j,3) = 0;
% else
% nim(i,j,1) = k(i,j,1);
% nim(i,j,2) = k(i,j,2);
% nim(i,j,3) = k(i,j,3);
% end
ok = (menu('Do u want to draw another circle?','No','Yes')==1)
% hold on

Accepted Answer

Image Analyst
Image Analyst on 16 Feb 2013
Why not use rectangle() to draw the circles into the overlay, then use export_fig (from the File Exchange) to save the image with the circles written into the image?

More Answers (2)

Thorsten on 14 Feb 2013
imwrite(nim, 'newimage.png');
Walter Roberson
Walter Roberson on 18 Feb 2013
Edited: Walter Roberson on 18 Feb 2013
Why do you change nim after you display it?
Why do you return x1 y1 only for the newest circle, instead of for all circles? You never even displayed that newest circle on the drawing.
What is your reason for saying "I did it but it writes only 256" ? What writes only 256 ?

Sign in to comment.

dsfds on 14 May 2013
Edited: dsfds on 14 May 2013
wanna know how to how to save images to different formats in c#


Community Treasure Hunt

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

Start Hunting!

Translated by