Change size of a binary image

2 visualizaciones (últimos 30 días)
Andrii
Andrii el 20 de Feb. de 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?

Respuesta aceptada

Image Analyst
Image Analyst el 20 de Feb. de 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 comentarios
Andrii
Andrii el 20 de Feb. de 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 el 21 de Feb. de 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?

Iniciar sesión para comentar.

Más respuestas (0)

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by