How can I make automatic crop?

1 次查看(过去 30 天)
Hello
How can I make automatic crop around core? like
.
  2 个评论
Rik
Rik 2018-6-24
Have a read here (or here for more general advice) and here. It will greatly improve your chances of getting an answer.

请先登录,再进行评论。

采纳的回答

Image Analyst
Image Analyst 2018-6-24
Why do you need to crop it?
Anyway, if you do for some reason, you can just binarize and look for the min and max row and column.
binaryImage = imbinarize(grayImage);
[rows, columns] = find(binaryImage);
row1 = min(rows);
row2 = max(rows);
col1 = min(columns);
col2 = max(columns);
croppedGrayImage = grayImage(row1:row2, col1:col2);
imshow(croppedImage);
  5 个评论
Image Analyst
Image Analyst 2018-6-24
编辑:Image Analyst 2018-6-24
Well there's the problem. You totally ignored my code in my answer, and did it your own (wrong) way. Why?
wisam kh
wisam kh 2018-6-25
I am sorry sir, I did not ignore your answer, but I tried it and did not succeed.
BW=im2bw(img,0.8);
[rows, columns] = find(BW);
row1 = min(rows);
row2 = max(rows);
col1 = min(columns);
col2 = max(columns);
croppedImage = img(row1:row2, col1:col2);
figure, imshow(croppedImage);title('crop Image');
but the problem was here: BW=im2bw(img,0.8);
that should be : BW=~im2bw(img,0.8);
Now the problem has been solved
am sorry
Thank you so much for your time and effort
I apologize to you again

请先登录,再进行评论。

更多回答(0 个)

Community Treasure Hunt

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

Start Hunting!

Translated by