Info

This question is closed. Reopen it to edit or answer.

parforによるループ計算時の"out of range value"エラー

1 view (last 30 days)
佳琳 杉浦
佳琳 杉浦 on 4 Nov 2021
Closed: 佳琳 杉浦 on 8 Nov 2021
ループ関数を入れ子式に使って計算するにあたり、下のようにparforとforを併用しました。
parfor i = 1:height % heightとwidthは整数としてここより前で定義
for j = 1:width
distance(i,j) = depth.get_distance(j,i);
s = j;
s = s + 1;
end
t = i;
t = t + 1;
end
このとき、iの範囲について次のようなエラーが発生し計算できずに困っています。念のため、heightを数値に置き換えてもみましたが、変化ありませんでした。ただ、end valueの値を小さくすると、エラー内容の最後の部分が"y"から"x"に変わりました。
エラー: realsense.depth_frame/get_distance (line 16)
out of range value for argument "y"
エラー: a_trial_02 (line 20)
parfor i = 1:height
このエラーを解決するための方法をご存じの方がいましたら、ご教授ください。
  1 Comment
Atsushi Ueno
Atsushi Ueno on 4 Nov 2021
parforの問題ではないようです。細かい事は良く分かりませんが、realsense.depth_frame/get_distance関数の引数(xまたはy)の範囲を超えた為に起きるエラーの様です。その理由は画像と深度画像の位置合わせが正しく行われていない為のようです。下記のIssue #7395に同じエラーが起きる様子が動画で記録されていて分かり易いです。画像の位置の左上半分では深度情報が得られますが、右半分や下半分を超えると質問と同じエラーが出ています。

Answers (0)

Products


Release

R2017b

Community Treasure Hunt

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

Start Hunting!