Python OpenCV:查找曲率的切线并检测与另一个圆的交点

Python OpenCV:查找曲率的切线并检测与另一个圆的交点,python,opencv,image-processing,geometry,Python,Opencv,Image Processing,Geometry,我正在做一个测线软件。我可以成功地检测出轮廓线阵列的点。 现在,我正试图从中提取信息,如近似角度和中心误差(见下图) 输入图像: 输出图像: 输出图像描述: 黄色圆圈是感兴趣的区域,但以红色x轴线和检测线的交点为中心。这个圆的中心用蓝色的大圆点标出 绿线是实际输出。在用黄色圆圈裁剪图像之后,我将使用OpenCV的fitLine函数。我想这会给我宝贵的位置 我需要什么: 如上所述,我想使用fitLine方法,但由于我无法定位相交点(在x轴中间和检测到的白线之间),因此无法裁剪图像等。因此,我

我正在做一个测线软件。我可以成功地检测出轮廓线阵列的点。 现在,我正试图从中提取信息,如近似角度和中心误差(见下图)

输入图像:

输出图像:


输出图像描述:
黄色圆圈是感兴趣的区域,但以红色x轴线和检测线的交点为中心。这个圆的中心用蓝色的大圆点标出

绿线是实际输出。在用黄色圆圈裁剪图像之后,我将使用OpenCV的fitLine函数。我想这会给我宝贵的位置

我需要什么:


如上所述,我想使用fitLine方法,但由于我无法定位相交点(在x轴中间和检测到的白线之间),因此无法裁剪图像等。因此,我需要定位该点(在输出图像中以蓝色大点显示)。

我代表研究力量回答我自己的问题:

我意识到不需要圆形遮罩,因为我正在裁剪图像以找到平均曲线,但仍然设法裁剪了一个圆形区域以确保我可以

在裁剪图像以处理感兴趣的区域后,我简单地使用带有DIST_L2距离的fitLine方法。这就是我想要的。 请注意,Python的内置函数
sorted
无法按区域对轮廓进行排序