订阅说明:如果要订阅,先看链接内容 看链接内容 看链接内容:订阅先看此内容
一、最大内接圆
- 最大内接圆简单的定义:圆心位于轮廓内部,且圆心到轮廓中部分点的距离一样,且半径最大。
1.1 本文检测过程
- 确定检测目标轮廓;
- 遍历轮廓内的非零点到轮廓的距离作为内接圆半径;
- 将2中半径最大的轮廓内点作为圆心,对应的半径作为最大内接圆半径。
1.2 实现检测过程 cv::pointPolygonTest
cv::pointPolygonTest函数是用来判断一个点是否在一个多边形的内部,以及距离多边形的距离,点在多边形内部距离为正,在外部为负,这样只要对整张图上所有点进行遍历,然后找到距离最大的点就可以作为内接圆的圆心,最大的距离值就是圆的半径。因此,如果该函数返回的圆心对应的距离为最大的距离时,则判定该圆心和距