我的问题的最小部分
给定:
- 绿线与红线平行和垂直(在现实世界中)
- 已知两个距离(紫色)
查找:
- 距离 x(米),从第一条绿线和红线的交点到该线上的任意点
2D 案例(已知):
给定图像中的 4 个点,表示在现实世界中具有已知边(米)和角度的多边形,我可以使用 cv2. getPerspectiveTransform() 查找 3x3 变换矩阵并使用 cv2.warpPerspective 查找图像中任意两点之间的实际距离 (m)。所以,我需要 4 个点 = 8 个独立值来找到那个变换。
我的情况:
现在,我不想要二维信息。我只想将图像中的红线映射到代表沿该线的实际长度的线。直观地说,似乎只有 2 个独立的值就足够了。我可以画更多的绿线,沿着红线获得更多的距离。应该够了吧?
我怎样才能做到这一点?映射在 2D 中似乎不是线性的(消失点可能映射到无穷大)。所以,我可能需要一个 3x3 矩阵。但是这 9 个值中有多少是独立的?