Hi, I got this image using segmentation with CNN. Is there a way I can obtain multiple images "cutting" everytime image is black? I need the blue part but separately. Thanks very much
sample

 Akzeptierte Antwort

Image Analyst
Image Analyst am 16 Okt. 2019

1 Stimme

Sum the image horizontally. Untested code:
verticalProfile = sum(rgbImage(:,:,3), 2); % Collapse across columns.
% Then find out where it's not black
nonBlackRows = verticalProfile ~= 0;
% Now find the starting and stopping points
props = regionprops(nonBlackRows, 'PixelIdxList');
% Now crop
for k = 1 : length(props)
row1 = props(k).PixelIdxList(1);
row2 = props(k).PixelIdxList(end);
imageList{k} = rgbImage(row1:row2, :, :);
end
Each image is in a cell of the cell array. They might all have different sizes.

Weitere Antworten (0)

Kategorien

Community Treasure Hunt

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

Start Hunting!

Translated by