当前位置:网站首页>OpenCV每日函数 结构分析和形状描述符(7) 寻找多边形(轮廓)/旋转矩形交集

OpenCV每日函数 结构分析和形状描述符(7) 寻找多边形(轮廓)/旋转矩形交集

2022-06-24 07:06:00 坐望云起

一、intersectConvexConvex函数

1、函数原型

        查找两个凸多边形的交集。返回相交多边形面积的绝对值。intersectConvexConvex 不确认两个多边形都是凸的,如果不是,将返回无效结果。

float 	cv::intersectConvexConvex (InputArray p1, InputArray p2, OutputArray p12, bool handleNested=true)

2、参数详解

p1第一个轮廓
p2第二个轮廓
p12描述相交区域的输出多边形
handleNested当为真时,如果一个多边形完全包含在另一个多边形中,则找到一个交点。 如果为 false,则找不到交集。 如果多边形共享一条边或一个多边形的顶点位于另一个多边形的边上,则它们不被视为嵌套,无论handleNested 的值如何,都将找到交点。

二、rotatedRectangleIntersection函数

1、函数原型

        该函数找出两个旋转矩形之间是否有任何交集。如果存在,则也返回相交区域的顶点。

int 	cv::rotatedRectangleIntersection (const RotatedRect &rect1, const RotatedRect &rect2, OutputArray intersectingRegion)

2、参数详解

rect1第一个矩形
rect2第二个矩形
intersectingRegion相交区域顶点的输出数组。 它最多返回 8 个顶点。 存储为 std::vector<cv::Point2f> 或 cv::Mat 作为 CV_32FC2 类型的 Mx1。

3、示意图像

        以下是可能的交点的一些示例。 阴影图案表示相交区域,红色顶点由函数返回。

交叉点示例

 

原网站

版权声明
本文为[坐望云起]所创,转载请带上原文链接,感谢
https://skydance.blog.csdn.net/article/details/125424491