多标签各向异性欧氏距离变换3d
edt的Python项目详细描述
mlaedt-3d的python说明
计算一维、二维或三维标记图像的欧几里德距离变换,该图像在单个过程中包含多个标签,并支持各向异性维度。
python安装
^ {EM1}$需要一个C++编译器
安装过程取决于从edt.pyx
派生的python绑定的edt.cpp
。edt.hpp
包含算法实现。
pip install numpy pip install edt
重新编译edt.pyx
^ {EM1}$需要Cython和C++编译器 导入后请查阅 如果出于某种原因您想使用特定的“d”函数,则可以使用 三个可选参数是cd python
cython -3 --cplus edt.pyx # generates edt.cpp
python setup.py develop # compiles edt.cpp and edt.hpp # together into a shared binary e.g. edt.cpython-36m-x86_64-linux-gnu.so
python用法
help(edt)
。edt模块包含:edt
和edtsq
,分别计算欧几里德距离和欧几里德距离的平方。这两个函数都根据馈送给它们的numpy数组的形状选择维度。支持1d、2d和3d卷。1D处理速度非常快。numpy布尔数组是专门为更快的处理而处理的。edt1d
、edt1dsq
、edt2d
、edt2dsq
、edt3d
和edt3dsq
。anisotropy
、black_border
和order
。各向异性被用于校正体素空间中的畸变,例如,如果用显微镜获得X和Y,但Z轴被更紧密地切割。black_border
允许您指定在计算像素距离时应考虑图像的边缘(它也稍微快一些)。order
允许程序员确定应该如何解释底层数组。'C'
(c顺序,xyz,row major)和'F'
(fortran顺序,zyx,column major)受支持。'C'
顺序是默认的。parallel
控制线程数。将其设置为<;=0以自动确定CPU计数。importedtimportnumpyasnp# e.g. 6nm x 6nm x 30nm for the S1 dataset by Kasthuri et al., 2014labels=np.ones(shape=(512,512,512),dtype=np.uint32,order='F')dt=edt.edt(labels,anisotropy=(6,6,30),black_border=True,order='F',parallel=1)
推荐PyPI第三方库