【问题标题】:Adding tangent to curve, and the normal to the tangent. OpenCV Python将切线添加到曲线,并将法线添加到切线。 OpenCV Python
【发布时间】:2017-07-13 18:12:05
【问题描述】:

我正在尝试沿下图中的曲线添加切线,就像第二张图片中的红线一样。然后我想用切线找到切线的 90 度法线(绿线)。目标是找出不同位置的两条白线之间的距离。我使用 Python 和 OpenCV,如果有人对我如何做到这一点有任何建议,我将不胜感激。代码示例会很棒。

【问题讨论】:

  • 我在answers.opencv.org 上得到了答复。它使用 C++ 而不是 Python,但它应该可以工作。我不擅长 C++,但我会努力弄清楚。
  • 你有它为 python 工作吗??
  • 不,不幸的是,在 C++ 中不是那么好 :(
  • 我看到了你提到的代码。我也想明白了
  • 渐变组件中的 arctan(dy/dx) 应该为您提供所需的方向。切线与梯度方向成 90 度。因此,在每个像素处获取 arctan,并通过掩蔽仅从沿着您的线条的那些像素中精确值。然后,您可以选择一些点,获取方向并绘制线作为切线。

标签: python image opencv distance


【解决方案1】:

这篇文章已经很老了,但我快接近了。首先,我画了两条水平线,它们之间的距离为 2-3 个像素。然后,我计算两者与其中一条初始曲线的交点。现在你在左边的初始曲线上有两个点。然后可以计算正切(基本数学)。您计算两点的中间(基本数学)。然后可以使用这个计算出的中间点和切线来绘制法线(如果我没记错的话,还是基础数学)。现在应该有切线和法线了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-06-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-29
    • 1970-01-01
    相关资源
    最近更新 更多