rotate an image segment without background
显示 更早的评论
I have a BW image. I just want to rotate the polygon in the image. (The polygon rotates about its centroid.) But when I do, the background also rotates and more black pixels are added by default also the size of the polygon is changing. I want all the background as white. Any help is appreciated.


1 个评论
Image Analyst
2018-2-10
Do you already HAVE the centroid? If so, give it to us so we can give you the code. Otherwise imrotate() will just rotate around the center of the image, not around the center of the shape. If you don't have it, then use regionprops() to ask for it, and if you can't do that, let us know and we'll show you. And remember (x,y) equals (column, row), not (row, column).
回答(1 个)
Instead of performing the rotation on BW, apply it to ~BW. Then take the complement of that result,
result = ~rotationFunction(~BW, angle);
类别
在 帮助中心 和 File Exchange 中查找有关 Geometric Transformation and Image Registration 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!