How to calculate the centroid of these bounding boxes which their 4 vertices are stored in cell array?

10 views (last 30 days)
M on 12 May 2022
Commented: Image Analyst on 13 May 2022
How to calculate the centroid of these bounding boxes which their 4 vertices are stored in cell array?
The attached file is xy coordinates of the 4 vertices of the boxes.
The coordinates are in the order:
(left-bottom), (right-bottom), (left-top), (right-top).where each coordinate is an (x, y) pair.. i.e([x1 , y1], [x2, y2], [x3 , y3 ], [x4 , y4 ])
There are 23 bounding box vertices stored in the file.
-Also, I need any angle represents the inclination of whole box with respect to the horizontal x-axis
The output should be 23 angle each represents one box

Matt J on 12 May 2022
centroids = cellfun(@(z) mean(cell2mat(z(:))) ,c ,'UniformOutput' ,false)
Image Analyst on 13 May 2022
I don't understand. Box sides are perfectly aligned and parallel with the x and y axes. So what do you mean by angle? Bounding boxes are not inclined to the axes. An angle can be defined by 3 points : the vertex point, and the 2 end points of rays. How are you defining your angle? A diagram would be helpful.