Change size of a binary image

1 vue (au cours des 30 derniers jours)
Andrii
Andrii le 20 Fév 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?

Réponse acceptée

Image Analyst
Image Analyst le 20 Fév 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 commentaires
Andrii
Andrii le 20 Fév 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 le 21 Fév 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?

Connectez-vous pour commenter.

Plus de réponses (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by