第1坑:坑爹的minAreaRect()返回值(cv-2.4.11)
这里作一个简要的minAreaRect()的测试报告吧。小白可以看这个,不过还是建议自己去试试就知道其size.width和size.height、angle各指什么了。
- 测试方法 - 用鼠标随意画一个轨迹,用该点集作为<strong>minAreaRect</strong>的输入,输出为一个RotatedRect对象。
其实就如上图所示,这里讲解一下:
- 当Rect左倾斜,则长的一边认为是height,且angle的绝对值为竖直方向与height的夹角(锐角)(图①);当Rect右倾斜,长的一边认为是width,angle的绝对值为width与水平方向的夹角(锐角)(图②)。
- 好,有人问了,有没有可能画出这样的轨迹: Rect左倾斜的状态下(如图①),<strong><u>并且</u></strong>height短于width呢?图样,这时minAreaRect()就认为是右倾斜了。
- 那知道了这些能做什么呢? 至少我可以做:写一个点与RotatedRect(或由此得来的ellipse)的位置关系了:-) try it!