How do I translate a 2D shape to its centroid?

4 views (last 30 days)
Cai Chin
Cai Chin on 11 Dec 2020
Answered: Image Analyst on 12 Dec 2020
Hi, I am using MATLAB R2020a on a MacOS. I am attempting to translate the blue shape shown here about its centroid onto the orange shape for comparison of the morphologies of these 2 plots, but I am unsure as to how to do this:
Any suggestions would be greatly appreciated. Thanks in advance

Accepted Answer

Image Analyst
Image Analyst on 12 Dec 2020
Try this:
meanBlueX = mean(vBlue); % x
meanBlueY = mean(wBlue); % y
meanOrangeX = mean(vOrange); % x
meanOrangeY = mean(wOrange); % y
% Shift the blue by subtracting blue mean and adding in orange mean.
vBlue = vBlue -meanBlueX + meanOrangeX;
wBlue = wBlue -meanBlueY + meanOrangeY;

More Answers (0)

Community Treasure Hunt

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

Start Hunting!