Automatically crop an image

조회 수: 2 (최근 30일)
Eliska Paulikova
Eliska Paulikova 2022년 10월 24일
댓글: Eliska Paulikova 2022년 10월 24일
Hello, I need to automatically crop the rectangular part, how can I do it?
Thank you
Thank you

채택된 답변

DGM
DGM 2022년 10월 24일
편집: DGM 2022년 10월 24일
Depending on the requirements and what the other photos look like, this might be one way, or at least a start
% this is an rgb image
inpict = imread('https://www.mathworks.com/matlabcentral/answers/uploaded_files/1167208/image.jpeg');
% make a mask that roughly selects the object
mk = rgb2gray(inpict)<200; % basic thresholding
mk = imopen(mk,strel('disk',20)); % use small features to break up background
mk = imclearborder(mk); % get rid of any framing
mk = bwareafilt(mk,1); % select only the largest remaining blob
imshow(mk)
% crop area by direct indexing
rows = any(mk,2);
cols = any(mk,1);
outpict = inpict(rows,cols,:); % this is also RGB
imshow(outpict);

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Image Processing Toolbox에 대해 자세히 알아보기

제품

Community Treasure Hunt

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

Start Hunting!

Translated by