RotatedRect类 详解
RotatedRect是一个存储旋转矩形的类,通常用来存储最小外包矩形函数minAreaRect( )和椭圆拟合函数fitEllipse( )返回的结果。存储的值,完全取决在于函数的返回
OpenCV中,坐标的原点在左上角,与x轴平行的方向为角度为0,逆时针旋转角度为负,顺时针旋转角度为正
minAreaRect( )函数和fitEllipse( )函数返回值不太一样
minAreaRect( )函数
角度参数angle 是矩形最下面的点(y坐标最大)P[0]发出的平行于x轴的射线,逆时针旋转,与碰到的第一个边的夹角(这个边的边长就作为width),取值范围[-90~0]。
在利用minAreaRect函数去求一个外接矩形时,函数对于矩形长和宽的选择取决于这个外接矩形的边与水平轴的角度距离,即将水平轴逆时针旋转,最先与其平行的边的长度作为宽度width,另外一条边则为height,而角度则直接取该边与水平轴的夹角。应该意识到,在minAreaRect函数中,RotatedRect的width和height的选取跟矩形的尺寸无关,并非长的就是height,短的就是width。
fitEllipse( )函数
角度参数angle 是椭圆中心center发出的平行于x轴的射线,顺时针旋转,与椭圆短轴的夹角,取值范围 [ 0 ~ 180 ]
椭圆的短轴为参数size里面的第一个参数width,长轴为参数size里面的第二个参数height。