類似点として、画像内のピクセルの色を考慮してください。次元3に沿って積み上げられた行列の画像の赤、緑、青のチャンネルを表す3D配列があるとします。この画像全体から「色を減算する」最も簡単な方法は(長さ3のベクトルで表されます)、赤のチャンネル、緑のチャンネルの緑の成分、青のチャンネルの青の成分から赤の色の成分が差し引かれるという意味ですか?「3次元に沿ったベクトルの行列」内の各要素からベクトルを減算する
画像AとカラーVを考えると、私たちが行うことができます。
for(i : 1:3){
A[,,i] <- A[,,i] - v[i]
}
または
A - array(rep(v,each=length(A[,,1])),dim(A))
これを行うための最善の方法は何ですか? row
とcol
のようなしかし第三次元の関数は(level
言う)がある場合、私は単に
A - v[level(A)]
を行うことができますが、このような機能か?
を参照してください 'slice.index'。 'A - v [slice.index(A、3)]' –
@alexis_lazパーフェクト。それを答えに入れることができますか? – Museful