It's using imellipse that does the job for 5 region, but only the last region is displayed. How to do for each region save to array, for each array draw it out, then for each object in array draw it out. Thanks
    2 visualizzazioni (ultimi 30 giorni)
  
       Mostra commenti meno recenti
    
N = 5 ;
I = imread('13170.jpg');
im = imshow(I);
for i = 1:N
e = imellipse(gca);% now pick ROI
setColor(e, 'red');
position = wait(e);
    BW = createMask(e,im);% get BW mask for that ROI
    BW(:,:,2) = BW;
    BW(:,:,3) = BW(:,:,1);
    ROI = I;
    ROI(BW == 0) = 255;
end
figure(i)
imshow(ROI,'Border','tight');
0 Commenti
Risposta accettata
  KSSV
      
      
 il 24 Gen 2017
        clc; clear all;
N = 5 ;
I = imread('junk.jpg');
iwant = cell(N,1) ;
for i = 1:N
    im = imshow(I);
    e = imellipse(gca);% now pick ROI
    setColor(e, 'red');
    % position = wait(e);
    BW = createMask(e,im);% get BW mask for that ROI
    BW(:,:,2) = BW;
    BW(:,:,3) = BW(:,:,1);
    ROI = I;
    ROI(BW == 0) = 255;
    iwant{i} = ROI ;
end
for i = 1:N
    figure
    imshow(iwant{i},'Border','tight');
end
Più risposte (0)
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!