私は3D画像スキャン(形状:335x306x306
、合計要素:31368060
)を持っています。同じサイズのマスクされたイメージを返すために同じサイズ。Python:3Dブールで3D配列をインデックスし、同じサイズの3D配列を返します。
Iは単にインデックスようにマスクを持つ配列:
masked_image = image_pix[mask]
Iマスク= 1標準行メジャー(Cスタイル)によって順序付けされた画像の画素値の1次元配列を取得(hereの説明のとおり)。マスキングのために6953600要素しかありません。
インデックスを持たない場合、この1Dアレイを3Dアレイに再形成するにはどうすればよいですか?私はマスクのインデックスを使って、マスクされた値を3D配列に反復的に取り込むことができることを認識していますが、forループに依存しないより洗練された(そして計算効率の良い)ソリューションが望まれます。
あなたはコピーを行う必要が変更されていない、あなたの 'image_pix'が必要な場合:' masked_image = image_pix.copy() '。 – MSeifert