How to recostruct ROI on an image and diaplay it?
    9 次查看(过去 30 天)
  
       显示 更早的评论
    
dear friends, I hav got a set of co ordinates of an ROI. Now i want to reconstruct the ROI on an image and display it. How can i do this? plz help....
1 个评论
  Jonas Reber
      
 2011-10-20
				of what kind are these coordinates? is it a list of all pixels in the ROI or is it the marker/vertices of a boundary polygon (e.g., 4 points for a rectangle) or else?
回答(3 个)
  Jonas Reber
      
 2011-10-20
        after having read your first question ( http://www.mathworks.com/matlabcentral/answers/18789-how-to-save-an-image-displayed) I think I understand what you try to accomplish. Since you are using imfreehand, I assume you have Image Processing Toolbox.
I have written an example code that opens an image, lets you select a ROI and saves it to a new file with transparent background. have a look at it - you should now be able to do what you are looking for:
 %%example code for Pramod Bhat from Jonas:
 % get file to be displayed
   [FileName,PathName] = uigetfile('*.*','Select the Image');
    [img, map] = imread(fullfile(PathName,FileName));
 % display image and select region
   f = figure; 
   imshow(img, map);
   roi = imfreehand(gca);
   wait(roi); 
 % get the mask
   mask = roi.createMask;
 % extract the boundarybox of the ROI
   S = regionprops(mask,'Boundingbox');
   b = floor(S(1).BoundingBox);
   % crop the interesting part of the image (bounding box)
   imgcut = img(b(2):b(2)+b(4), b(1):b(1)+b(3));
   maskcut = double(mask(b(2):b(2)+b(4), b(1):b(1)+b(3)));
 % finally, save the image
   [FileName,PathName] = uiputfile('*.png','Save the Image As');
   imgcutrgb = ind2rgb(imgcut,map);
   % note: only what is inside of your ROI will be displayed,
   % the rest is set to be transparent:
   imwrite(imgcutrgb,fullfile(PathName,FileName),'Alpha', maskcut);
0 个评论
  Image Analyst
      
      
 2012-12-24
        
      编辑:Image Analyst
      
      
 2012-12-24
  
      See my BlobsDemo http://www.mathworks.com/matlabcentral/fileexchange/?term=authorid%3A31862. It finds coins in an image, finds the bounding box of each coin, and then extracts (crops) each bounding box to its own image.
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!




