Change size of a binary image

2 次查看(过去 30 天)
Hi everyone. I have a binary image with black background and white objects. Size 1638*1638. I need to add rows and columns to background thus new image size would be 1640*1640 in order to get a boundary without touched to this boundary objects. I have tried function resize, but as result the scale changed only. Is it a way to do it?

采纳的回答

Image Analyst
Image Analyst 2012-2-20
Try padarray():
mPadded = padarray(m, [1 1]);
By the way, why was touching the edge a problem? Were you calling imclearborder()? Maybe you can just not do that.
  2 个评论
Andrii
Andrii 2012-2-20
I need to simplify objects' borders. But after simplification coordinates of new border sometimes exceed image size. Thank you very much for the advise and I'll try imclearborder too.
Image Analyst
Image Analyst 2012-2-21
No, you wouldn't have posted this if you *wanted* to do imclearborder. That will get rid of things touching the border, but you added a layer of black pixels so you must NOT want things touching the border to be removed. Why don't you just post your original image and binary image and say what you want to do or measure so we can advise on the best approach? By the way, what does it mean to "simplify" an object's border and how does adding a layer of black pixels around the edge simply borders?

请先登录,再进行评论。

更多回答(0 个)

标签

Community Treasure Hunt

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

Start Hunting!

Translated by