Change size of a binary image

2 views (last 30 days)
Andrii
Andrii on 20 Feb 2012
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?

Accepted Answer

Image Analyst
Image Analyst on 20 Feb 2012
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 Comments
Andrii
Andrii on 20 Feb 2012
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 on 21 Feb 2012
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?

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!