应用matlab程序做标定和三维重建,为什么三维重建不行?

问题1:打印的棋盘格的第一行和最后一行宽度不足了,不是30*30mm的正方形方格了;

解决:把标定板的第一行和最后一行去掉。

问题2:在matlab标定的程序里面指定了方格的大小:

squareSize = 108; % millimeters(我猜应该是每个方格的长度,好像不是面积)

解决:修改为我打印的标定板的方格大小:squareSize = 30

squareSize确实是每个小方格的长度,见http://www.mathworks.cn/cn/help/vision/ug/find-camera-parameters-with-the-camera-calibrator.html

3ce19e850fd3b08b32d0e1d3b8ba9de3.png

问题3:这一段三维重建的坐标需要修改。怎么改?这个值是什么的值?

% Reduce the number of colors in the image to 128.

[reducedColorImage, reducedColorMap] = rgb2ind(J1, 128);

% Plot the 3D points of each color.

hFig = figure; hold on;

set(hFig, 'Position', [1 1 840   630]);

hAxes = gca;

问题4:校正前的图像本来视差不大,结果校正后的图像反而出现问题。为什么?

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐