自分のカメラデバイスでのSLAMについて

2 views (last 30 days)
圭介 川邉
圭介 川邉 on 17 Nov 2021
私は以下のサイト
参考にしてファイル名「stereoslam.m」として自分の所持しているステレオカメラでSLAMを実行しようと考えています。
Map Initialization」の項目まではエラーが生じませんでしたが「Data Management and Visualization」の項目で以下のエラーが生じます。
エラー: pointclouds.internal.pcui.validateAndParseInputsXYZC (47)
入力は空以外にする必要があります。
エラー: pcplayer/parseInputs (518)
[X, Y, Z, C, map, ptCloud] =
pointclouds.internal.pcui.validateAndParseInputsXYZC(mfilename,
varargin{:});
エラー: pcplayer/view (199)
[X,Y,Z,C,map, ptCloud] = pcplayer.parseInputs(varargin{:});
エラー: helperVisualizeMotionAndStructureStereo (41)
obj.MapPointsPlot.view(xyzPoints, color);
エラー: stereoslam (79)
mapPlot = helperVisualizeMotionAndStructureStereo(vSetKeyFrames,
mapPointSet);
私はhelperVisualizeMotionAndStructureStereo関数の「color」の値に原因があるのではないかと考えて、
実際にhelperVisualizeMotionAndStructureStereo関数の39行目の以下のコード
color = xyzPoints(:, 3);
のcolorの値を調べたところ、以下のような値が生じました。
color =
0×1 の空の single 列ベクトル
しかし私が作っている「stereoslam.m」内のワークスペースのxyzPointsは「264x3 single」と表記されているためcolorの値は3列目のすべての値の数列が得られるはずと考えています。
helperVisualizeMotionAndStructureStereo関数内である以下のxyzPoints
[xyzPoints, currPose, trajectory] = retrievePlottedData(obj, vSetKeyFrames, mapPoints);
ではなく自分のワークスペースのxyzPointsの値をいれるにはどうすればいいですか?
また私の考え方が誤っていてエラーが別の原因であるならばその原因についてどなたかに教えていただきたいです。

Answers (0)

Products


Release

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!