Camera position in the 3-D Point Cloud Registration and Stitching example
2 ビュー (過去 30 日間)
古いコメントを表示
Hello,
I am going through the example '3-D Point Cloud Registration and Stitching'
(https://de.mathworks.com/help/vision/examples/3-d-point-cloud-registration-and-stitching.html)
and I am trying to determine the camera position in the first and second input image to then display it in the 'Initial world scene' image. But I'm having difficulties with this and would really appreciate some help on this one.
Best, Christian
0 件のコメント
回答 (1 件)
Prashant Arora
2017 年 10 月 16 日
Hi Christopher,
I believe with respect to each point cloud, the camera is located at the origin. Hence, to show the camera position in the "Initial World Scene", you can show the first camera as:
plotCamera('Location',[0 0 0],'Orientation',eye(3),'Size',0.1);
The second camera can be shown as:
camPosRel = [0 0 0 1];
camPosTransformed = camPosRel*(tform.T)';
plotCamera('Location',camPosTransformed(1:3),'Orientation',tform.T(1:3,1:3),'Size',0.1);
Moving on, you can use the "accumTform" variable instead of "tform" to transform the camera from any point cloud frame ( [0 0 0 1] is the relative position) to the "world" or "initial scene"
Prashant
1 件のコメント
Behnam Nasirian
2018 年 5 月 20 日
This answer seems to be wrong. If camPosRel = [0 0 0 1]; camPosTransformed = camPosRel*(tform.T)'; Then camPosTransformed always will equal to [0 0 0 1].
参考
カテゴリ
Help Center および File Exchange で Point Cloud Processing についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!