Opencv 计算平行平面的单应性

Opencv 计算平行平面的单应性,opencv,computer-vision,homography,Opencv,Computer Vision,Homography,我用OpenCV计算从一个平面到另一个平面的单应投影,比如说Plane1到另一个平面,叫做CenitalView 通过选择Plane1和CenitalView中的一些点来计算单应矩阵(H1) 仅仅通过这些信息,是否有可能获得第二个单应矩阵(H2),它将平行平面与平面1和相同的中心视图联系起来 恢复: 平面1->H1->CenitalView 平面2(//平面1)->H2?->CenitalView您需要知道Plane2中原点(0,0)以及x轴和y轴的位置。否则你不能 假设你绕着平面2的法线旋转平

我用OpenCV计算从一个平面到另一个平面的单应投影,比如说Plane1到另一个平面,叫做CenitalView

通过选择Plane1和CenitalView中的一些点来计算单应矩阵(H1)

仅仅通过这些信息,是否有可能获得第二个单应矩阵(H2),它将平行平面与平面1和相同的中心视图联系起来

恢复:

平面1->H1->CenitalView

平面2(//平面1)->H2?->CenitalView

您需要知道Plane2中原点(0,0)以及x轴和y轴的位置。否则你不能

假设你绕着平面2的法线旋转平面2,得到平面3,平面4


所有这些平面都是Plane1的平行平面。显然,它们在中心视图上有不同的单应矩阵。

如果你知道plane1和plane2之间的单应矩阵,这是可能的

平面1->H1->CenitalView

如果平面1->HP->平面2,则 平面2->HP^-1*H1->CenitalView


所以仅仅知道平面1和平面2是平行的是不够的,好吧。

平面1和平面2只会在z轴上不同。飞机之间只有一段距离d。这就是为什么我问这两个矩阵之间是否存在任何关系,因为它们都与CenitalView平面的平行平面有关,即已知距离d?相机的内在特性已知吗?d和相机的内在特性都已知是的。谢谢!这可能是一种方法。嗨,米卡,如果我知道平面1和平面2是平行的,那么你能给我一些关于如何计算平面1和平面2之间的单应性的线索吗?它们之间的真实距离,以及摄像机的校准参数?谢谢。@Jackypengyu您可以根据已知参数创建三维平面。然后从相机中心通过任何像素拍摄eay。这条射线将在某些坐标系中击中plane1和plane2。这样做4点,你应该能够计算出这些平面之间的单应性。