安装SCRICIT-IMAGE¶
您应该如何安装 scikit-image
取决于您的需求和技能:
最简单的解决方案: scientific Python distribution 。
如果您可以安装Python包并在虚拟环境中工作:
简单的解决方案,但有陷阱: system package manager (Yum,APT,...)。
You're looking to contribute to scikit-image _.
支持的平台¶
X86处理器上的Windows 64位
X86处理器上的Mac OS X
X86处理器上的Linux 64位
有关其他平台的信息,请参阅 other platforms 。
版本检查¶
来看看是否 scikit-image
已安装,或者要检查安装是否成功,请在Python外壳或Jupyter笔记本中运行以下命令:
import skimage
print(skimage.__version__)
或者,从命令行执行以下操作:
python -c "import skimage; print(skimage.__version__)"
(试一试 python3
如果 python
是不成功的。)
如果出现以下情况,您将看到版本号 scikit-image
已安装,否则将显示错误消息。
科学 Python 发行版¶
在一次安装中,这些组件就为您提供了Python, scikit-image
和它所依赖的类库,以及其他有用的科学包。它们安装在一个隔离的环境中,因此不会与任何现有的已安装程序冲突。
缺点是安装可能很大,而且您可能无法获得最新版本 scikit-image
。
我们推荐以下发行版之一:
在使用 scikit-image
文档,请确保它适用于您已安装的版本(请参见 Version check (见上文)。
通过pip和conda安装¶
这些仅安装 scikit-image
及其依赖项;pip可以选择包含相关的包。
皮普¶
Pip安装的先决条件:您可以使用系统的命令行来安装包,并使用 virtual environment (任何 several )。
虽然可以在没有虚拟环境的情况下使用pip,但不建议这样做:虚拟环境创建了一个干净的Python环境,该环境不会干扰任何现有的系统安装,可以很容易地删除,并且只包含您的应用程序需要的包版本。它们有助于避免常见的挑战,称为 dependency hell 。
要安装当前的 scikit-image
您至少需要安装Python3.6。如果您的Python版本较旧,pip会找到最新的兼容版本。
# Update pip
python -m pip install -U pip
# Install scikit-image
python -m pip install -U scikit-image
以包括一组其他科学的可扩展的Python包 scikit-image
的功能,例如并行处理,您可以安装该程序包 scikit-image[optional]
:
python -m pip install -U scikit-image[optional]
警告
请不要使用命令 sudo
和 pip
一起作为 pip
可能会覆盖可能需要您重新安装操作系统的关键系统库。
孔达¶
Minconda是Anaconda包的基本版本;您需要安装像这样的包 scikit-image
你自己。与Anaconda一样,它安装了Python并提供虚拟环境。
conda-forge _,与最新维护的Conda渠道
scikit-image
套餐
一旦设置了Conda环境,您就可以安装 scikit-image
使用以下命令:
conda install scikit-image
系统包管理器¶
使用包管理器 (yum
, apt-get
(等)要安装 scikit-image
或其他Python包不是您的最佳选择:
你可能会得到一个更老的版本。
您可能希望在包管理器之外进行更新并添加新的包,这会给您留下与在没有虚拟环境的情况下使用pip时相同的依赖冲突。
由于操作系统使用的是Python,因此存在额外的风险,因此如果您在系统范围内更改了Python(以超级用户身份安装或使用sudo),则可能会破坏操作系统。
正在下载所有演示数据集¶
我们的示例中使用的一些数据是在线托管的,并且不是按照上面解释的过程默认安装的。数据在第一次呼叫时下载一次,但这需要互联网连接。如果您希望下载所有演示数据集以便能够脱机工作,则可以运行以下命令:
python -c 'from skimage.data import download_all; download_all()'
或致电 download_all()
在您最喜欢的交互式Python环境中(IPython、Jupyter笔记本等)。
其他平台¶
我们仍然支持x86处理器上的Windows 32位,但强烈要求切换到Windows 64位。
不支持的平台包括:
32位x86处理器上的Linux。
32位ARM处理器上的Linux(运行Raspbian的Raspberry PI):
虽然我们不正式支持此发行版,但我们建议用户 piwheels 和他们的 scikit-image's specific page 。
您可能需要安装列出的其他系统依赖项 imagecodecs 。看见 issue 4721 。
64位ARM处理器(NVIDIA Jetson)上的Linux:
跟上对话内容 issue 4705 。
尽管这些平台缺乏官方支持,但许多核心开发者都有使用它们的经验,可以帮助解决问题。
如果要在不受支持的平台上安装,请尝试 building from source 。
告诉我们你还想看哪些平台 scikit-image
在……上面!我们非常感兴趣的是如何 scikit-image
vbl.取得 used 。
如果你想打包的话 scikit-image
对于尚不受支持的平台, reach out on GitHub 。
其他帮助¶
如果您仍有问题,请通过
我们的 mailing list
我们的 chat channel
为了建议对这些说明进行更改, please open an issue on GitHub 。
安装SCRICKIT-供投稿者使用的映像¶
我们假设您的计算机上已经配置了默认的Python环境,并且您想要安装 scikit-image
在它里面。
我们还对您的系统做了一些假设:
您已经设置了一个C编译器。
您已经设置了一个C++编译器。
您正在运行的版本与我们的系统兼容,如我们的 setup.py file 。
您已经将git存储库克隆到一个名为
scikit-image
。您已经设置了 upstream 远程指向我们的存储库和 origin 指着你的叉子。
该目录包含以下文件:
scikit-image
├── asv.conf.json
├── azure-pipelines.yml
├── benchmarks
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.txt
├── CONTRIBUTORS.txt
├── doc
├── INSTALL.rst
├── LICENSE.txt
├── Makefile
├── MANIFEST.in
├── README.md
├── RELEASE.txt
├── requirements
├── requirements.txt
├── setup.cfg
├── setup.py
├── skimage
├── TODO.txt
├── tools
└── viewer_examples
假定下面的所有命令都是从 scikit-image
包含上述文件的目录。
生成环境设置¶
一旦克隆了SCRICKIT-IMAGE存储库的分支,就应该设置一个为SCRICIT-IMAGE量身定制的Python开发环境。您可以选择您选择的环境管理员。下面我们为两位受欢迎的环境管理器提供指导: venv
(基于PIP)和 conda
( Python 或迷你)。
林荫大道¶
在使用时 venv
,您可能会发现以下bash命令很有用:
# Create a virtualenv named ``skimage-dev``
python -m venv skimage-dev
# Activate it. On Linux and MacOS:
source skimage-dev/bin/activate
# Install all development and runtime dependencies of scikit-image
pip install -r <(cat requirements/*.txt)
# Build and install scikit-image from source
pip install -e . -vv
# Test your installation
pytest skimage
在Windows上,请使用 skimage-dev\Scripts\activate
在激活步骤上。
孔达¶
在使用Conda进行开发时,我们建议添加Conda-Forge通道,以获得许多依赖项的最新版本。我们使用的一些依赖项(用于测试和文档编制)在默认的Anaconda通道中不可用。请跟官员走 conda-forge installation instructions 在你开始之前。
# Create a conda environment named ``skimage-dev``
conda create --name skimage-dev
# Activate it
conda activate skimage-dev
# Install major development and runtime dependencies of scikit-image
conda install `for i in requirements/{default,build,test}.txt; do echo -n " --file $i "; done`
# Install scikit-image from source
pip install -e . -vv
# Test your installation
pytest skimage
正在更新安装¶
在更新安装时,通常需要重新编译已更改的子模块。请使用以下命令执行此操作:
# Grab the latest source
git checkout master
git pull upstream master
# Update the installation
pip install -e . -vv
测试¶
scikit-image
拥有广泛的测试套件,可确保在您的系统上正确执行。在合并Pull请求之前,测试套件必须通过,并且应该添加测试以涵盖对代码库的任何修改。
我们使用 pytest 测试框架,测试位于不同的 skimage/submodule/tests
文件夹。
我们的测试要求如下:
pytest>=5.2.0
pytest-cov>=2.7.0
pytest-localserver
pytest-faulthandler
flake8
codecov
pooch>=1.3.0
使用以下命令运行所有测试:
pytest skimage
或针对特定子模块的测试:
pytest skimage/morphology
或来自特定文件的测试:
pytest skimage/morphology/tests/test_grey.py
或该文件中的单个测试:
pytest skimage/morphology/tests/test_grey.py::test_3d_fallback_black_tophat
使用 --doctest-modules
来运行文档测试。例如,使用以下命令运行所有测试和所有文档测试:
pytest --doctest-modules skimage
测试阶段的警告¶
Scikit-Image试图在其开发版本中捕获所有警告,以确保不会遗漏来自依赖项的关键警告。这可能会导致某些测试失败,如果您正在构建带有在发布时未测试的依赖项版本的SCRICKIT-IMAGE。要禁用警告失败,请导出环境变量 SKIMAGE_TEST_STRICT_WARNINGS
值为 0 或 False 并运行测试:
export SKIMAGE_TEST_STRICT_WARNINGS=False
pytest --pyargs skimage
特定于平台的说明¶
Windows
如果您遇到错误 Error:unable to find vcvarsall.bat
这意味着您的计算机没有推荐的适用于Python的编译器。您可以从下载并安装Windows编译器 here 或使用 MinGW compilers 。如果使用 MinGW ,请确保正确配置 distutils
通过修改(或创建,如果不存在)配置文件 distutils.cfg
(例如,位于 C:\Python26\Lib\distutils\distutils.cfg
)包含::
[build]
compiler=mingw32
我们的文档中包含了针对Windows的编译过程 setup of Azure Pipelines (持续整合服务)。
Debian和Ubuntu
安装合适的编译器:
sudo apt-get install build-essential
完整的需求列表¶
构建要求
Cython>=0.29.21,!=0.29.18
wheel
# numpy 1.18.0 breaks builds on MacOSX
# https://github.com/numpy/numpy/pull/15194
numpy>=1.16.5,!=1.18.0
运行时要求
numpy>=1.16.5
scipy>=1.0.1
matplotlib>=2.0.0,!=3.0.0
networkx>=2.0
pillow>=4.3.0,!=7.1.0,!=7.1.1
imageio>=2.3.0
tifffile>=2019.7.26
PyWavelets>=1.1.1
测试要求
pytest>=5.2.0
pytest-cov>=2.7.0
pytest-localserver
pytest-faulthandler
flake8
codecov
pooch>=1.3.0
文件要求
sphinx>=1.8,<=2.4.4
sphinx-gallery>=0.7.0,!=0.8.0
numpydoc>=1.0
sphinx-copybutton
pytest-runner
scikit-learn
matplotlib>=3.0.1
dask[array]>=0.15.0,!=2.17.0
# cloudpickle is necessary to provide the 'processes' scheduler for dask
cloudpickle>=0.2.1
pandas>=0.23.0
seaborn>=0.7.1
pooch>=1.3.0
tifffile>=2020.5.30
myst-parser
ipywidgets
plotly>=4.14.0
kaleido
可选要求
您可以使用 scikit-image
具有上面列出的基本要求,但某些功能仅在安装了以下产品时才可用:
SimpleITK
astropy>=3.1.2
qtpy
pyamg
dask[array]>=1.0.0,!=2.17.0
# cloudpickle is necessary to provide the 'processes' scheduler for dask
cloudpickle>=0.2.1
# Keep pooch version in synch with the one hard coded in
# skimage/data/__init__.py
pooch>=1.3.0
额外规定
为了方便起见,我们已经包含了这些要求,但并不能在我们支持的平台上通过PyPI广泛安装。因此,我们将它们保存在单独的列表中,以供社区中更高级的成员安装。
imread>=0.5.1,!=0.7.2
帮助安装贡献者¶
看见 Additional help 上面。