我试图找到一个曲线形状的杆在其平面上的形状,基于杆的两个垂直视图。我准备了一张图片,让我的问题更清晰。

我有杆子在平面1和2上的投影图像,我想在平面3上产生杆子的图像。我所做的是使用Matlab图像处理工具箱在视图1和2上找到杆子的中心线,然后在这些线上拟合一条曲线。然后,我根据这些拟合的曲线产生3D数据,最后将另一条曲线或椭圆拟合到最终的3D曲线。
它可以工作,但我想知道是否有更合适的解决方案,例如通过旋转视图1和2。
视图3相对于视图1(和视图2)的角度是可变的,但是视图1和视图2彼此垂直。
我们可以通过在视图1和视图2中找到杆端来找到平面3的角度,因为它将是atan(x_ end _ in _view_1/x_end_in_view_two)。基于来自第二个相机的图像,是否可以从与另一个相机成已知角度的相机的视点产生图像?
任何帮助都是非常感谢的。
发布于 2014-01-17 02:26:06
是的,可以从与另一台摄像机成已知角度的摄像机的视点产生图像。给定角度,您可以计算两个平面之间的仿射变换,并将变换应用于原始图像,以获得图像在另一个平面上的投影。
仿射变换有6个参数,由于您知道两个平面之间的角度,对于4个点(0,0),(0,1),(1,0)和(1,1),在倾斜平面(例如y轴)(忘记z坐标)后,您将知道这些点的(x,y)坐标。现在,你将有8个方程和6个未知数,因此你可以计算仿射变换,并将变换应用于完整的图像以获得投影。
https://stackoverflow.com/questions/21147188
复制相似问题