MATLABでは、「セレクタ行列」が与えられた複数の行列から選択することで、効率的な(および/またはベクトル化された)行列の埋め込み方法を探しています。例えば、等3つのソース行列MATLABでインデックスのマトリックスを使用して値を選択しますか?
M1 = [0.1, 0.2; 0.3, 0.4]
M2 = [1, 2; 3, 4]
M3 = [10, 20; 30, 40]
とインデックス
I = [1, 3; 1, 2]
IはM3
から2番目、M1
から最初のエントリを選択することによって、新たな行列M = [0.1, 20; 0.3, 4]
を生成するのマトリックス、
私は間違いなく、ネストされたループでそれを行うことができます、各エントリを通過し、値を入力しますが、より効率的な方法があると確信しています。
何M1
、M2
、M3
とM
すべての3D行列(RGB画像)がありますか? I
の各エントリは、どの行列から3ベクトルを取るべきかを示しています。もしI(1, 3) = 3
なら、(1, 3, :)
のインデックスがM
のエントリーはM3(1, 3, :)
であるはずです。