Python/Numpy的梯度去歪包装程序的HCP版本
项目描述
gradunwarp
gradunwarp是一个Python/Numpy包,用于去歪扭曲的体积(由于梯度场不均匀性)。目前,它可以去除西门子数据。
它从一个“不再积极维护”的gradunwarp包中分支出来。
这个分支包含WU-Minn人类连接组项目联盟(HCP)为HCP最小预处理管道使用所做的更改。
安装
为所有用户安装
您可以使用以下命令在大多数基于Ubuntu或Debian的发行版中安装必要的先决条件
sudo apt install python3-numpy python3-pip
为了方便,可以从中这里下载最新的gradunwarp tarball。
首先,提取gradunwarp tarball,然后cd
到它创建的文件夹中。然后执行
sudo pip3 install -r requirements.txt
sudo pip3 install .
仅使用用户权限安装
如果您在机器上没有超级用户权限,可以使用pip install的--user
开关而不是使用sudo
pip3 install -r requirements.txt --user
pip3 install . --user
如果您使用--user
开关,您需要将/home/<username>/.local/bin
添加到您的PATH
环境变量中,用<username>
替换您的用户名。
使用虚拟环境安装
您可以选择将gradunwarp安装到Python虚拟环境中,以避免与现有的Python设置发生冲突。如果尚未安装Python虚拟环境模块,则可能需要运行以下命令。
sudo apt install python3-venv
在运行以下命令之前。
首先,提取gradunwarp tarball,然后cd
到它创建的文件夹中。然后执行
python3 -m venv gradunwarp.build
source gradunwarp.build/bin/activate
pip install -r requirements.txt
pip install .
deactivate
命令deactivate
确保您的Python环境设置回到之前的状态。
安装完成后,您可以通过添加以下内容来使用gradunwarp:
source "$PATH_TO_INSTALLATION"/gradunwarp.build/bin/activate
到您的脚本中,其中"$PATH_TO_INSTALLATION"
应替换为您安装gradunwarp的路径。注意,您可能需要在脚本中运行gradunwarp后,使用deactivate
虚拟环境来使用其他环境。
使用Python2虚拟环境安装
使用Python2的安装方法与上面Python3的略有不同。
如上所述,提取gradunwarp的tar包,然后使用cd
进入创建的文件夹。然后执行:
virtualenv -p python2 gradunwarp.build
source gradunwarp.build/bin/activate
pip install -r requirements.txt
pip install .
deactivate
注意,使用的是virtualenv
而不是venv
。
此虚拟环境可以像上面Python3中描述的那样使用。
依赖项
- Python (>=2.7或3.x)
- Numpy
- Scipy
- Numpy开发包(如果单独提供),用于编译用C编写的外部模块
- nibabel(Python2.7的2.0或更高版本,Python3.x的3.2.1或更高版本)
nibabel的依赖项
用法
骨架
gradient_unwarp.py infile outfile manufacturer -g <coefficient file> [optional arguments]
典型用法
gradient_unwarp.py sonata.mgh testoutson.mgh siemens -g coeff_Sonata.grad --fovmin -.15 --fovmax .15 --numpoints 40
gradient_unwarp.py avanto.mgh testoutava.mgh siemens -g coeff_AS05.grad -n
位置参数
输入文件(Nifti或MGH格式)后跟输出文件名(具有Nifti或MGH扩展名--.nii/.nii.gz/.mgh/.mgz)后跟厂商名称。
必需选项
-c <coef_file>
-g <grad_file>
使用-g
选项指定从厂商获取的系数文件,用于类型为.grad
的文件。
或者,如果拥有.coef
文件,可以使用-c
指定。
这两个选项是互斥的。
其他选项
-n : If you want to suppress the jacobian intensity correction
-w : if the volume is to be warped rather than unwarped
--fovmin <fovmin> : a float argument which specifies the minimum extent of the grid where spherical harmonics are evaluated. (in meters). Default is -.3
--fovmax <fovmax> : a float argument which specifies the maximum extent of the grid where spherical harmonics are evaluated. (in meters). Default is .3
--numpoints <numpoints> : an int argument which specifies the number of points in the grid. (in each direction). Default is 60
--interp_order <order of interpolation> : takes values from 1 to 4. 1 means the interpolation is going to be linear which is a faster method but not as good as higher order interpolations.
--help : display help
内存考虑
gradunwarp由于执行了多次密集的球谐计算和插值,因此往往需要大量的内存。例如,它使用了一个2GB内存、2.2GHz双核系统大约85%的内存来对256^3体积进行去扭曲,使用了40^3球谐网格。(整个去扭曲通常需要4到5分钟)
一些想法
- 如果可能,请使用较低分辨率的体积
- 在具有更多内存的计算机上运行gradunwarp
- 使用-numpoints来减少网格大小。-fovmin和-fovmax可以用来将网格移至您的数据范围附近。
- 使用非压缩源体积。即.mgh和.nii而不是.mgz/.nii.gz
- 较新版本的Python、numpy和scipy
HCP新增功能
- 逐片处理
- x-y翻转错误修复
- 在64位系统中强制输出32位
- 修改以兼容Python3
许可证
请参阅发行版中的Copying.md文件。
信用
- Jon Polimeni - gradunwarp遵循他的原始MATLAB代码
- Karl Helmer - 项目负责人
- Nibabel团队
关于变更历史的说明
为HCP所做的某些代码库更改是在此代码尚未分叉到其自己的存储库时进行的。当时,此修改后的梯度去扭曲代码被嵌入到HCP管道存储库的src/gradient_unwarping
子目录中。
这些更改的历史(提交注释、变更日志等)尚未迁移到此存储库。该HCP管道存储库将保留该历史。
要获取在梯度解缠绕代码分离之前的HCP Pipelines仓库的最新版本,检索提交 2e06194921638394c7c0ffd90805fdf06051449a
。为此,在克隆HCP Pipelines仓库后,使用
$ git checkout 2e06194921638394c7c0ffd90805fdf06051449a
项目详情
nipy_gradunwarp-1.2.2.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | fffc8c9c6b7ffc3f6735544989ae50d6251b7eb9536b5ca56c152d6dd01195c3 |
|
MD5 | 7251be73be3b9908a0db845539f8e87f |
|
BLAKE2b-256 | 31a050ca374646e27456d66cf966229fb9af53119706848acae51bec3db7eec9 |
nipy_gradunwarp-1.2.2-cp312-cp312-win_amd64.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 7105b1160b4ae01c33883fce9e2445c0fff4a598fdef07cfeca08fa881c54883 |
|
MD5 | 985df4291d1774f228acfa4473593e4b |
|
BLAKE2b-256 | d468950e961986bc03bd67defc2527458cf9c96b64ae859d2a39044e4b6df003 |
nipy_gradunwarp-1.2.2-cp312-cp312-musllinux_1_2_x86_64.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 9f6da06bfc938874a2ec89a4270f791ec626243457892628e650357662e967c2 |
|
MD5 | cf0080bb3bf1e962bee486f0704efdc1 |
|
BLAKE2b-256 | 77dcf7b36973c162492986680b4b8b7d0f2d3bfef4048f611f011aac1485ad1b |
nipy_gradunwarp-1.2.2-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 5cfa2504445e4771084efe2395db849075d95ee408271e0fe658c48d96d2921d |
|
MD5 | 3bfdc165de0a140f46d7a981784e30eb |
|
BLAKE2b-256 | 095e49044009051927b89f8a8c74f85b3d535ae91ca038b72edef7389cfab25d |
nipy_gradunwarp-1.2.2-cp312-cp312-macosx_10_13_x86_64.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 1ec506ee96ceea88f480d05c685bcbccb78fe6690695772ca8c36a66d3ee6e48 |
|
MD5 | 3c7589921266f90f8c5c44011bc4f563 |
|
BLAKE2b-256 | b2da7c820ff13c776e0fbf7dfb1c45401afefcce6b1489da33a94862be0d77fe |
nipy_gradunwarp-1.2.2-cp311-cp311-win_amd64.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 9dd02294f2163d6162048f82de25da497fd91b6b06a191aa1e183b6f44af1222 |
|
MD5 | 91f53263877b467aaaa595888d54e85c |
|
BLAKE2b-256 | 0bdcbdb0ae3e396990604fa2d123e91cffa0435ff7b2dd0e5d02a2df2b0038e7 |
nipy_gradunwarp-1.2.2-cp311-cp311-musllinux_1_2_x86_64.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 36fb36a7ccbdaf2164c37720f14d7b2eeb07a20f7c6e0b0bd615e9e8850d11e2 |
|
MD5 | 2d90f72ff9f70f8d94be88670e299e70 |
|
BLAKE2b-256 | f090cbcc64068cfb8bb842caee6b035f8626b1437b38076a53647755ff859baf |
哈希值 for nipy_gradunwarp-1.2.2-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 79cd6d458be0989975cae022d07695f25756aeea04ee95e1cfe0e6312430f20e |
|
MD5 | 6ebd100bc884ba6eaf5ba20a840b161f |
|
BLAKE2b-256 | 2f11a750448c2a90385d99e38ae5da0daab185e6871b15e435bff06499cf1ac1 |
哈希值 for nipy_gradunwarp-1.2.2-cp311-cp311-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | ee0a7bab93474ce20130a732bdb483b6d5ffde07b8d32ba7f7fcfdeed1e34669 |
|
MD5 | 52e1842fc4f8104f2db4c144f2ef68d6 |
|
BLAKE2b-256 | 16f3d3bf7a9f24d0000317748146cef7fe52c34607f9970bbaf74b00fa3212e1 |
哈希值 for nipy_gradunwarp-1.2.2-cp310-cp310-win_amd64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 196845692b9b01ee01da7ba7a0657618e16be8499e1c94816da3907e31351d51 |
|
MD5 | a94e413a431ba626ef4fc94ee5e40633 |
|
BLAKE2b-256 | afb761de78e971f7f143ae3acc3ea8c595d9aa98a41b988b8992dab6768f457a |
哈希值 for nipy_gradunwarp-1.2.2-cp310-cp310-musllinux_1_2_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | e837632a245c7d3811ebf70464c17d4091f6cf6da17816a440914727a9480d3f |
|
MD5 | 2a065fe01054432efb1d5542e75e4c13 |
|
BLAKE2b-256 | 4aeb399cddc5a156e32019976745c7207d81b4c7275b7102e8b29729bf97bf2d |
哈希值 for nipy_gradunwarp-1.2.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 1f52ce64055d62eeb4a7a2c7f244d420323c419e3df8824d2499f3e9fa82c694 |
|
MD5 | 4fcc47822f1864650b171e51f4303f69 |
|
BLAKE2b-256 | 437ab9fc82b1e72297ab41ada3a4277639c4197f6033f0107bdb5c6fcfdbc9ff |
哈希值 for nipy_gradunwarp-1.2.2-cp310-cp310-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | c99e84e42df51c95edd54260a2171c16ad89089396167c478075155e7610cc69 |
|
MD5 | ca6230ff27d24ef43669526e77fe42af |
|
BLAKE2b-256 | a4d65b90d46dfeae1626e4bfb0926fc82ed3149dc1b7511ccf00920eee60488b |
哈希值 for nipy_gradunwarp-1.2.2-cp39-cp39-win_amd64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 4238660ab984af8ba90e585a43ffdb59ab805930cc4374bce41eb9ae44e41e98 |
|
MD5 | 869f5103056c2d4b77d339525e8bf69b |
|
BLAKE2b-256 | a46370e75bd0a6969cd5ef1eb30ed54f5c1e318d773f8ad1d7825516048d5527 |
哈希值 for nipy_gradunwarp-1.2.2-cp39-cp39-musllinux_1_2_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 3e51206dcc2ba2a1299f2fd7c0ff9966f0c137a0b63257a2c024ddd61c64f3e1 |
|
MD5 | b4ab4806ecf6f3989d0444e3c116d532 |
|
BLAKE2b-256 | 23b65f41cba4f4853a6da043ecb9ed16f8b06a016c8deb6181f5781a6b91e2e6 |
哈希值 for nipy_gradunwarp-1.2.2-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | a5493995e804aad3cbd8027b4bc98917e4bafe9690d5c9e18b27385cff5bc982 |
|
MD5 | 1b6df343462d5a235823fdcfac67eefc |
|
BLAKE2b-256 | ad8ec17b4c5a335a6a382c1d8755fdff1166883ae3d89a675c43d14f00addbf3 |
哈希值 for nipy_gradunwarp-1.2.2-cp39-cp39-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 004141574e716d67155dae6399b787751902194dc02252b274628792cc81ab64 |
|
MD5 | cf88164b723c9218ccd2a97c66f85ec7 |
|
BLAKE2b-256 | a4af7f321593cd8b12225f2eed51578362037d6dc3728a834e322cb3f3ce0355 |
哈希值 for nipy_gradunwarp-1.2.2-cp38-cp38-win_amd64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 2fa5b8235b77b32a3dc135f5d5b2e363c9a962c0df78241018aa9c190433cd42 |
|
MD5 | e4f3f1142b6c9746f6ae4c610406aa57 |
|
BLAKE2b-256 | ac01dd1a1e953ec9ee0bd23710156d609b5fd06344f8d1ee22a22bedb2d63d50 |
哈希值 for nipy_gradunwarp-1.2.2-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 7a4de198c29315ad46a4ae00f9007b51757acad64a0718bd45e7c3e1b7877e1a |
|
MD5 | 909235a8cc129620b71c5a0b8c460c2a |
|
BLAKE2b-256 | c60a4ff157cc3825d94fab9bf6f5c33f6d28a0b4254366a43dab2fa1f2bc9ecf |
哈希值 用于 nipy_gradunwarp-1.2.2-cp38-cp38-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 21e4a6095b8a98bdfd9ed6fb9a129b100808c76c4903c41839bca42b009c1ab6 |
|
MD5 | f5860633c8b8dd9495c12f6e50d862ed |
|
BLAKE2b-256 | 352acb098c5638aaed2006d71ab75ec4cff1894c09fa4428bf2dcd90d08837df |
哈希值 用于 nipy_gradunwarp-1.2.2-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 1284e9f79ed573758e83d2694ef09ff83b57ba92f1ef74337c51657494698c22 |
|
MD5 | bb1a40a648cfbd80909a2137b406a3d6 |
|
BLAKE2b-256 | e654fb56215a5f69b92a96011547310e756cad2100825ba0c5bcf12b349c35d9 |
哈希值 用于 nipy_gradunwarp-1.2.2-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 330d91c36608e7abb98a7f41a73685f4f53c1cee8288ff03a59035d44ad81f02 |
|
MD5 | f489d1a37136b64985ec854e8cc46e7d |
|
BLAKE2b-256 | 7e527209dfcd26eaa08a67958c382930dd6cac43dc45d96ce84aeb6e9b37c995 |