Addition of more than one image is no not possible in for loop?
2 views (last 30 days)
Show older comments
Jhilam Mukherjee
on 12 Oct 2014
Commented: Jhilam Mukherjee
on 13 Oct 2014
I want to segment an image region grow algorithm. I have taken seed points using getpts. My code is executed. I have obtained individual images in each iteration. But I want all segmented region in one image at last iteration. But I cannot get that. Please help me to overcome this problem.
close all;
I=imread('CT6.jpg');
I=im2double(I);
I=rgb2gray(I);
figure,imshow(I);
hold on;
[y x]=getpts;
n=length(x);
hold off;
J=zeros(10,10);
for i=1:n-1
x(i)=round(x(i));
y(i)=round(y(i));
J = regiongrowing(I,x(i),y(i),0.1);
%J=(J,J);
K=imadd(J,J)
figure,imshow(J);
end
figure,imshow(J);
5 Comments
Geoff Hayes
on 13 Oct 2014
@Image Analyst - I think that Jhilam means to add/layer all images on top of one another using imadd.
Accepted Answer
Image Analyst
on 13 Oct 2014
Edited: Image Analyst
on 13 Oct 2014
Try adding J to the prior K rather than to J (itself).
if i == 1
K = double(J);
else
K = K + J;
end
imshow(K, []);
drawnow;
More Answers (1)
Image Analyst
on 12 Oct 2014
Try using subplot() instead of using figure:
close all;
I=imread('CT6.jpg');
I=im2double(I);
I=rgb2gray(I);
figure,imshow(I);
hold on;
[y x]=getpts;
n=length(x);
hold off;
subPlotRows = ceil(sqrt(n));
J=zeros(10,10);
for i=1:n-1
x(i)=round(x(i));
y(i)=round(y(i));
J = regiongrowing(I,x(i),y(i),0.1);
%J=(J,J);
K=imadd(J,J)
subplot(subPlotRows, subPlotRows, i)
imshow(J);
end
0 Comments
See Also
Categories
Find more on Image Processing Toolbox in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!