matlab:计算图像中给出两个点的程度

时间:2014-09-22 04:14:51

标签: matlab geometry

目标是旋转图像,使包含手部实例的边界框全部轴对齐。请参阅以下示例。第一个图像是原始图像,第二个图像是旋转版本,其中左手(图像中的左侧)是轴对齐的,第三个图像也是右手轴对齐的旋转版本。

The original image and the hand instances are indicated by two bounding boxes The rotated image and the left hand (in the image) is now axis aligned The rotated image and the right hand (in the image) is now axis aligned

现在给出指示手边界框的四个点,我们必须计算旋转度数。让我用左手(它在原始图像中的左侧)作为例子。假设四个点是[p1_x,p1_y],[p2_x,p2_y],[p3_x,p3_y],[p4_x,p4_y]。由[p1_x,p1_y]和[p2_x,p2_y]形成的线表示手腕,p1,p2,p3,p4是顺时针方向。因此黄线由p1_x,p1_y]和[p4_x,p4_y]形成。

我的想法是计算黄线和水平轴之间的度数。对于左手,程度约为-10,而右手程度约为-110。

我的问题是如何计算这些学位?

1 个答案:

答案 0 :(得分:1)

使用atan2d计算四象限反arctangent。对于加入[p1_x, p1_y][p4_x, p4_y]的细分受众群,请执行:

atan2d(p4_y-p1_y,p4_x-p1_x)