Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
高级会员
注册日期: 2019-11-21
帖子: 3,006
声望力: 66 ![]() |
![]()
我正在尝试从2D图像对应关系重建3D点。我的相机已校准。测试图像是一个方格立方体,并且对应关系是手工挑选的。径向变形已消除。三角剖分后的构造似乎是错误的。 X和Y值似乎是正确的,但Z值大致相同,并且沿立方体没有区别。 3D点看起来好像沿Z轴展平了。
Z值出了什么问题?是否需要在任何点(例如在计算基本矩阵之前)将这些点归一化或从图像坐标更改? (如果这太含糊,我可以解释我的一般流程或详细说明部分内容) 更新资料 给定: x1 = P1 * X和x2 = P2 * X x1 , x2是第一和第二图像点, X是3d点。 但是,我发现x1与实际的手抓取值并不接近,而x2实际上与之接近。 我如何计算投影矩阵: P1 = [eye(3), zeros(3,1)]; P2 = K * [R, t]; 更新二 优化后的校准结果(不确定) % Focal Length: fc = [ 699.13458 701.11196 ] 卤 [ 1.05092 1.08272 ] % Principal point: cc = [ 393.51797 304.05914 ] 卤 [ 1.61832 1.27604 ] % Skew: alpha_c = [ 0.00180 ] 卤 [ 0.00042 ] => angle of pixel axes = 89.89661 卤 0.02379 degrees % Distortion: kc = [ 0.05867 -0.28214 0.00131 0.00244 0.35651 ] 卤 [ 0.01228 0.09805 0.00060 0.00083 0.22340 ] % Pixel error: err = [ 0.19975 0.23023 ] % % Note: The numerical errors are approximately three times the standard % deviations (for reference). -- K = 699.1346 1.2584 393.5180 0 701.1120 304.0591 0 0 1.0000 E = 0.3692 -0.8351 -4.0017 0.3881 -1.6743 -6.5774 4.5508 6.3663 0.2764 R = -0.9852 0.0712 -0.1561 -0.0967 -0.9820 0.1624 0.1417 -0.1751 -0.9743 t = 0.7942 -0.5761 0.1935 P1 = 1 0 0 0 0 1 0 0 0 0 1 0 P2 = -633.1409 -20.3941 -492.3047 630.6410 -24.6964 -741.7198 -182.3506 -345.0670 0.1417 -0.1751 -0.9743 0.1935 C1 = 0 0 0 1 C2 = 0.6993 -0.5883 0.4060 1.0000 % new points using cpselect %x1 input_points = 422.7500 260.2500 384.2500 238.7500 339.7500 211.7500 298.7500 186.7500 452.7500 236.2500 412.2500 214.2500 368.7500 191.2500 329.7500 165.2500 482.7500 210.2500 443.2500 189.2500 402.2500 166.2500 362.7500 143.2500 510.7500 186.7500 466.7500 165.7500 425.7500 144.2500 392.2500 125.7500 403.2500 369.7500 367.7500 345.2500 330.2500 319.7500 296.2500 297.7500 406.7500 341.2500 365.7500 316.2500 331.2500 293.2500 295.2500 270.2500 414.2500 306.7500 370.2500 281.2500 333.2500 257.7500 296.7500 232.7500 434.7500 341.2500 441.7500 312.7500 446.2500 282.2500 462.7500 311.2500 466.7500 286.2500 475.2500 252.2500 481.7500 292.7500 490.2500 262.7500 498.2500 232.7500 %x2 base_points = 393.2500 311.7500 358.7500 282.7500 319.7500 249.2500 284.2500 216.2500 431.7500 285.2500 395.7500 256.2500 356.7500 223.7500 320.2500 194.2500 474.7500 254.7500 437.7500 226.2500 398.7500 197.2500 362.7500 168.7500 511.2500 227.7500 471.2500 196.7500 432.7500 169.7500 400.2500 145.7500 388.2500 404.2500 357.2500 373.2500 326.7500 343.2500 297.2500 318.7500 387.7500 381.7500 356.2500 351.7500 323.2500 321.7500 291.7500 292.7500 390.7500 352.7500 357.2500 323.2500 320.2500 291.2500 287.2500 258.7500 427.7500 376.7500 429.7500 351.7500 431.7500 324.2500 462.7500 345.7500 463.7500 325.2500 470.7500 295.2500 491.7500 325.2500 497.7500 298.2500 504.7500 270.2500 更新三 请参阅答案以进行更正。上面计算出的答案使用了错误的变量/值。 回答: **请注意,所有参考文献均来自Hartley和Zisserman撰写的《计算机视觉中的多视图几何》。 好,所以有几个错误:
更多&回答... |
![]() |
![]() |