私はのサイズを持っている行列M
を持っているとしましょう。メッシュグリッドを使用して次のxとyのインデックスを取得したとしましょう。MATLABでインデックスベースの変換を実行するにはどうすればよいですか?
[x, y] = meshgrid(1:1024, 1:1024);
次は、(魚眼レンズやピンクッション効果を生み出すことを目標に、例えば)x
とy
にいくつかの機能を適用してみましょう。
x_new = func1(x);
y_new = func2(y);
今、私はこれらの変換インデックスマッピングで新しいマトリックスN
を作成するにはどうすれば、変換x
とy
座標、x_new
とy_new
のためのこれらの行列を使用していますか?言い換えれば、次のようなより洗練された方法がありますか?
for i = 1:1024
for j = 1:1024
N(i, j) = M(x_new(i, j), y_new(i, j));
end
end
残念ながら、私の場合は、これはあまりにも大きな配列を作成します。しかし、ありがとう! – ArKi