Cropping an image with coordinate values
Show older comments
I have an image with 848*1102 pixels after edge detection, and I want to crop out a part of the image accurately, so I need to use the coordinate values of the top left and bottom right points. How do I get the coordinates of these two points and crop the image?
Accepted Answer
More Answers (1)
KALYAN ACHARJYA
on 2 Jan 2023
[rows,colm]=find(image==1);
Get the indices as rows & colm
3 Comments
Image Analyst
on 2 Jan 2023
Edited: Image Analyst
on 2 Jan 2023
Then, to crop
row1 = min(rows)
row2 = max(rows)
col1 = min(colm)
col2 = max(colm)
yourImage = yourImage(row1:row2, col1:col2, :);
imshow(yourImage);
axis('on', 'image');
By the way, it may not be necessary for you to crop it unless you just want to see it bigger when you display it. Also you might want to call imclearborder to get rid of that thick white frame around it.
If you want to get rid of the thin white rectangular outline also, then let me know.
Sterne_17
on 2 Jan 2023
Categories
Find more on Image Processing Toolbox in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

