[8fb459]: / utils / __pycache__ / util.cpython-36.pyc

Download this file

31 lines (31 with data), 3.2 kB

3

ƒ’`­ã@shddlZddlZddlZddlZddlmZddlm	Z	ddd„Z
dd	d
„Zdd„Zd
d„Z
dd„ZdS)éN)Úreslice)Ú	AffineMapéÚnearestçô?cCs|tj|jjƒdd…d
ƒ}tjtj|jƒƒ|kjƒsF|j|j|ƒ|j	ƒj
ƒ}|jdd…}|jj
ƒ}	|jjƒdd…}
|dk	r |||
d|d|f}n"|dk	r´|||f}n|||
df}tj|ƒ}xJtt
||
|ƒƒD]6\}\}
}}|
||}|ddkrÞ||d8<qÞWt||	|
|||d\}}tj||ƒ}|jjƒdd…}|}tj||ddsxt||ƒtjd	ƒ|S)Nérégà?gü©ñÒMbP?)ÚorderÚmodeg{®Gáz„?)Úrtolz/Output resolutions are different than expected!)r)ÚnpÚarrayÚheaderÚ	get_zoomsÚabsÚdiagÚaffineÚallZ	set_sformÚ	get_fdataÚcopyÚshapeÚ	enumerateÚziprÚnibÚNifti1ImageÚallcloseÚprintÚwarningsÚwarn)Úniftir	r
Úin_plane_resolution_mmZslice_thickness_mmZnumber_of_slicesÚ
resolutionÚdatarrÚzoomsZ	new_zoomsÚiZn_iZres_iZ	res_new_iZn_new_iZdata_resampledZaffine_resampledÚnifti_resampledÚxÚy©r(ú../src/utils/util.pyÚresample_niftis>


 

r*cCs$||j|dd|j|dddS)NT)ÚaxisÚkeepdimsg:Œ0âŽyE>)ÚmeanÚstd)r&r+r(r(r)Únormalize_zscore5sr/c	Cs4tjj|ƒ}|jdƒddkr0tj|ƒ}t|ƒ}t|jƒdkr¤|j\}}}|j	ƒ|dd|dd…|dd|dd…fj
dddƒ}t|dd}|||fSt|jƒd	kr0|j\}}}}|j	ƒ|dd|dd…|dd|dd…fj
ddddƒ}|j||d
d
fƒ}t|dd}|||fSdS)
NÚ.rÚniirré@r)r+éé€)rr)rr)
ÚosÚpathÚbasenameÚsplitrÚloadr*ÚlenrrÚ	transposer/Úreshape)	Úfilenamer7rr%ÚnxÚnyÚnzr&Únfr(r(r)Úload_from_file_CarSON9s
B
DrBc
Cs tjj|ƒ}|jdƒdd}tjjtjj|ƒ|ƒ}t|jƒdkrZ|j\}}}	|jdƒ}nBt|jƒdkrœ|jdd…\}}}	}
|j	|
|	dddfƒ}|jdƒ}|S)
Nr0rz_segmentation.nii.gzrrrr3r4r2)r )rrrr)rrrrr3)r5r6r7r8ÚjoinÚdirnamer:rr;r<rÚzerosrrrr*rrÚto_filename)
r=r'Zx_niftiZx_nifti_resampledr7Zbasename_segZfilename_segr>r?r@rAZy_nifti_resampledZy_niftir(r(r)Úsave_to_file_nifti_CarSONPs"
rGc	CsŠtjj|ƒ}|jdƒddkr†tj|ƒ}t|ƒ}|j\}}}}|jƒ|dd|dd…|dd|dd…fj	ddddƒ}|SdS)	Nr0rr1rr2rr)r+)r5r6r7r8rr9r*rrr;r/)	r=r7rr%r>r?r@rAr&r(r(r)Úload_from_file_CarMENjs
D	rH)rrrNN)N)r5rÚnumpyrZnibabelrZdipy.align.reslicerZdipy.align.imaffinerr*r/rBrGrHr(r(r(r)Ú<module>s
,