How to crop an portion fro image
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
I have a code below
clc
clear all
close all
I = imread('rice.png');
imshow(I)
background = imopen(I,strel('disk',15));
I2 = I - background;
imshow(I2)
I3 = imadjust(I2);
imshow(I3);
level = graythresh(I3);
bw = im2bw(I3,level);
bw = bwareaopen(bw, 50);
imshow(bw)
cc = bwconncomp(bw, 4)
grain = false(size(bw));
grain(cc.PixelIdxList{50}) = true;
grain(cc.PixelIdxList{30}) = true;
grain(cc.PixelIdxList{80}) = true;
grain(cc.PixelIdxList{75}) = true;
grain(cc.PixelIdxList{70}) = true;
imshow(grain);
now want to crop the grains shown in binary image from original image ,kindly help
0 Commenti
Risposta accettata
Guillaume
il 13 Nov 2014
Use regionprops to extract all sort of information on your connected components. In particular, the Image field of the structure array returned by regionprops will contain the binary image of each grain.
props = regionprops(cc, 'Image'); %to just get the image of each grain.
%props(1).Image will be the image of the first grain,
%props(2).Image will be the image of the second grain,
%etc.
0 Commenti
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!