计算透视图中两点之间的距离
Calculate distance between two points in a perpective image
我想验证透视图中两点C和D(CD)的距离
照片是在我家客厅拍的。每块瓷砖的尺寸为 0.6x0.6(以米为单位)。
实际测量值:
A点和D点之间的距离(AD)= 1.8米。
A点和B点之间的距离(AB)=0.6米
图像平面坐标:
A' = (232, 613)
B' = (221, 341)
C' = (215, 189)
D' = (210, 98)
我使用交叉比率来计算 CD。
R{A', B', C', D'} = 1.316
和
R{A,B,C,D} = (AC * BD)/(AD * BC)
经过计算,CD为0.584m(而不是0.6m)
问题:
1) 我所遵循的验证 CD 的方法是否正确?
2)我应该考虑A和D之间的角度(不是90度)
3) 我应该在这里查看消失点吗?
4) 如果我们不知道现实世界中A和B之间的距离,只知道AC和AD,是否可以计算
B 和 A 或 B 和 D 之间的距离?
5) 以上计算相差0.016m,是否可以接受?
我是射影几何学的新手。如果我做错了什么,请告诉我。
- 这个方法是正确的,虽然我会用单应性代替。
- 角度无关紧要,交比是投影不变的
- 不需要。
- 是的,在估计了平面与其图像之间的单应性之后,平面上的每个距离都可以从图像中估计出来,前提是至少有一个已知的距离可以解析比例。
- "Acceptable" 是仁者见仁,智者见智,因为这取决于您的应用。 2.67% 的相对误差对于您的面食食谱来说可能没问题,但如果您是一名焊工,打算在桥上连接梁,任何超过几毫米的误差都会太大。
建议 - 测量更多点,消除非线性失真(图像上部墙底部的线看起来弯曲),估计单应性。
我想验证透视图中两点C和D(CD)的距离
照片是在我家客厅拍的。每块瓷砖的尺寸为 0.6x0.6(以米为单位)。
实际测量值:
A点和D点之间的距离(AD)= 1.8米。 A点和B点之间的距离(AB)=0.6米
图像平面坐标:
A' = (232, 613)
B' = (221, 341)
C' = (215, 189)
D' = (210, 98)
我使用交叉比率来计算 CD。
R{A', B', C', D'} = 1.316
和
R{A,B,C,D} = (AC * BD)/(AD * BC)
经过计算,CD为0.584m(而不是0.6m)
问题:
1) 我所遵循的验证 CD 的方法是否正确?
2)我应该考虑A和D之间的角度(不是90度)
3) 我应该在这里查看消失点吗?
4) 如果我们不知道现实世界中A和B之间的距离,只知道AC和AD,是否可以计算 B 和 A 或 B 和 D 之间的距离?
5) 以上计算相差0.016m,是否可以接受?
我是射影几何学的新手。如果我做错了什么,请告诉我。
- 这个方法是正确的,虽然我会用单应性代替。
- 角度无关紧要,交比是投影不变的
- 不需要。
- 是的,在估计了平面与其图像之间的单应性之后,平面上的每个距离都可以从图像中估计出来,前提是至少有一个已知的距离可以解析比例。
- "Acceptable" 是仁者见仁,智者见智,因为这取决于您的应用。 2.67% 的相对误差对于您的面食食谱来说可能没问题,但如果您是一名焊工,打算在桥上连接梁,任何超过几毫米的误差都会太大。
建议 - 测量更多点,消除非线性失真(图像上部墙底部的线看起来弯曲),估计单应性。