問題タブ [nifti]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Python でボクセル サイズと対応する 3D ボリュームのアフィンを Nifti 形式で編集して保存するにはどうすればよいですか?
一部の 3D ボリュームのボクセル サイズを変更しています。pixdim
フィールドを編集して新しい を計算するにはどうすればよいaffine
ですか?
異方性の MR ボリュームがいくつかあります。ボクセル サイズは、たとえば0.5 x 0.5 x 3
mm です。0.5 x 0.5 x 0.5
そして、それらを等方性 ( mm ボクセル サイズなど) のボリュームに補間するコードがいくつかあります。問題は、ファイルを保存する必要がある場合です。アフィンを計算して、ijk 空間の高密度ボクセルをマップし、xyz 空間を参照する必要があります。それ、どうやったら出来るの?
まず、私の考えでは、古いアフィンを使用して、新しいアフィンを計算します。
たとえば、ボリューム V がボクセル サイズの256 x 256 x 20
ボクセルの形状を持ち、0.5 x 0.5 x 3
ボクセル サイズのボリューム U256 x 256 x 120
ボクセルに補間される0.5 x 0.5 x 0.5
場合。
古いアフィンで十分[255 255 19]OA = [X Y Z]
であり、新しいアフィンで十分[255 255 119]NA = [X Y Z]
ですAX=B X=inverse(A)B
。
したがって、新しいアフィンは になりますinverse([255 255 119])[X Y Z]
。ただし、逆行列は正方行列に対してのみ存在します。のようなことはありませんinverse([255 255 119])
。
set_voxel_size
そして、 python-nibabel matlab-nifti-toolbox などには機能がないようです。それはどのようにケースですか?
ボクセル サイズを明示的に変更するにはどうすればよいですか?