Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
3d 设置摄影机平面插入,使平面投影适合二维矩形_3d_Geometry_Augmented Reality - Fatal编程技术网

3d 设置摄影机平面插入,使平面投影适合二维矩形

3d 设置摄影机平面插入,使平面投影适合二维矩形,3d,geometry,augmented-reality,3d,Geometry,Augmented Reality,我有一张3D四边形(蓝色)的2D投影(绿色)图像,就像一张房间的照片,3D空间中的原始四边形是房间的地板。我知道ABCD点的2D XY位置(由用户提供) 知道3D空间中四边形的宽度、高度和内角,我想得到它的原始相机对象插入位置,它创建了这个投影。所以,据我所知,这正是AR工具包在2D图像上显示3D标记时所解决的问题,可以通过共面定位算法来解决。我使用的代码来自于forge.NET Framework(),它给出了旋转矩阵和平移向量 我的第一个困惑:我是否在以(0,0,0)为原点的世界坐标系中

我有一张3D四边形(蓝色)的2D投影(绿色)图像,就像一张房间的照片,3D空间中的原始四边形是房间的地板。我知道ABCD点的2D XY位置(由用户提供)

知道3D空间中四边形的宽度、高度和内角,我想得到它的原始相机对象插入位置,它创建了这个投影。所以,据我所知,这正是AR工具包在2D图像上显示3D标记时所解决的问题,可以通过共面定位算法来解决。我使用的代码来自于forge.NET Framework(),它给出了旋转矩阵和平移向量

我的第一个困惑:我是否在以(0,0,0)为原点的世界坐标系中获得旋转矩阵和平移向量(即,我的相机处于0,0,0位置,旋转为0,0,0)

我的第二个困惑:我在XY平面上放置了一个与原始四边形大小相同的四边形(第一幅图像上的蓝色四边形),如何变换由CoPOSIT算法生成的旋转矩阵和平移向量,以获得相机的位置和旋转,从而使屏幕上的四边形与原始2D投影匹配(第一张图上为绿色矩形)。与上一张图类似,蓝色半透明3D四边形与地板相接

  • ,第3页(复制/粘贴工作不正常,IDK原因):

    我们的目标是计算物体的旋转矩阵和平移向量 对象的旋转矩阵R是 行是相机单位向量i j k的坐标 以对象坐标系Mu Mv表示的坐标系
    Mw实际上,旋转矩阵的目的是变换 向量的对象坐标,如MMi到 相机系统在第一行图像之间显示点产品MMi i i b 矩阵和向量MMi正确地提供了 该向量位于摄像机坐标系ie的单位向量i上 MMI的坐标席X,只要MMi和 行向量i的值在这里用相同的坐标系表示 对象的坐标系

    相机似乎位于
    (0,0,0)
    的中心,并沿
    y
    轴查看

  • 如果我错了,请纠正我,但您希望对摄影机应用反转操作(按
    -平移向量
    移动摄影机,并按
    旋转向量的反转
    旋转摄影机)