1. Установка scikit-image
- Сначала необходимо установить язык Python. Есть два популярных способа: установщики с сайта Python.org, использующие pip, и miniforge, использующий conda.
- Установите
scikit-imageс помощью pip или conda — в зависимости от ситуации. - Или соберите пакет из исходного кода. Сделайте это, если хотите внести вклад в разработку.
1.1. Поддерживаемые платформы
- Windows 64-разрядная на процессорах x86
- macOS на процессорах x86 и ARM (M1 и др.)
- Linux 64-разрядная на процессорах x86 и ARM
Хотя мы официально не поддерживаем другие платформы, вы всё же можете попробовать собрать пакет из исходного кода.
1.2. Проверка версии
Чтобы узнать, установлен ли уже scikit-image, или проверить, успешно ли прошла установка, выполните следующую команду в оболочке Python или блокноте Jupyter:
import skimage as ski print(ski.__version__)
или в командной строке:
python -c "import skimage; print(skimage.__version__)"
(Если python не сработает, попробуйте python3.)
Если scikit-image установлен, вы увидите номер версии; в противном случае появится сообщение об ошибке.
1.3. Установка с помощью pip и conda
1.3.1. pip
Предварительное условие для установки с помощью pip: вы должны иметь возможность использовать pip в командной строке для установки пакетов.
Мы настоятельно рекомендуем использовать виртуальное окружение. Виртуальное окружение создаёт чистую среду Python, которая не влияет на существующую системную установку, легко удаляется и содержит только те версии пакетов, которые необходимы вашему приложению.
Для установки текущей версии scikit-image потребуется Python версии не ниже 3.11. Если версия Python старше, pip найдёт самую свежую совместимую версию.
# Update pip python -m pip install -U pip # Install scikit-image python -m pip install -U scikit-image
Для доступа ко всем демонстрационным наборам данных в skimage.data требуются некоторые дополнительные зависимости. Установите их с помощью:
python -m pip install -U scikit-image[data]
Чтобы установить дополнительные научные пакеты Python, расширяющие возможности scikit-image, например позволяющие выполнять параллельную обработку, используйте:
python -m pip install -U scikit-image[optional]
Предупреждение
Не используйте одновременно команду sudo и pip, так как pip может перезаписать критически важные системные библиотеки.
1.3.2. conda
Мы рекомендуем miniforge — минимальный дистрибутив, использующий conda-forge. Он устанавливает Python и предоставляет виртуальные окружения.
Настроив окружение conda, установите scikit-image с помощью:
conda install scikit-image
1.4. Системные менеджеры пакетов
Использование менеджера пакетов (apt, dnf и т. д.) для установки scikit-image или других пакетов Python — не лучший вариант, поскольку, скорее всего, вы получите устаревшую версию. Кроме того, установка других пакетов Python, недоступных через менеджер пакетов, станет сложнее.
1.5. Загрузка всех демонстрационных наборов данных
Некоторые из наших примеров изображений (в skimage.data) размещены в интернете и по умолчанию не устанавливаются. Эти изображения загружаются при первом обращении к ним. Если вы хотите загрузить все демонстрационные наборы данных, чтобы использовать их офлайн, убедитесь, что установлен pooch, а затем выполните:
python -c 'import skimage as ski; ski.data.download_all()'
1.6. Дополнительная помощь
Если у вас остались вопросы, обратитесь
- на наш форум пользователей
- на наш форум разработчиков
- в наш чат
Чтобы предложить изменение этих инструкций, создайте issue на GitHub.
2. Установка scikit-image для участников разработки
В вашей системе должны быть:
- компилятор C,
- компилятор C++ и
- версия Python, поддерживаемая
scikit-image(см. pyproject.toml).
Сначала создайте форк репозитория scikit-image на GitHub. Затем клонируйте свой форк локально и настройте удалённый репозиторий upstream, указывающий на исходный репозиторий scikit-image:
Примечание
Ниже мы используем git@github.com; если у вас не настроены ключи SSH, используйте вместо него https://github.com.
git clone git@github.com:YOURUSERNAME/scikit-image cd scikit-image git remote add upstream git@github.com:scikit-image/scikit-image
Все приведённые ниже команды выполняются из клонированного каталога scikit-image.
2.1. Настройка среды сборки
Настройте среду разработки Python для scikit-image. Здесь приведены инструкции для двух популярных менеджеров окружений: venv (pip) и conda (miniforge).
2.1.1. venv
# Create a virtualenv named ``skimage-dev`` that lives outside of the repository. # One common convention is to place it inside an ``envs`` directory under your home directory: mkdir ~/envs python -m venv ~/envs/skimage-dev # Activate it # (On Windows, use ``skimage-dev\Scripts\activate``) source ~/envs/skimage-dev/bin/activate # Install development dependencies pip install -r requirements.txt pip install -r requirements/build.txt # Install scikit-image in editable mode. In editable mode, # scikit-image will be recompiled, as necessary, on import. spin install -v
Совет
Приведённая выше команда устанавливает scikit-image в ваше окружение, благодаря чему пакет становится доступен в IDE, IPython и т. д. Это не обязательно; можно также выполнить сборку с помощью:
spin build
В этом случае библиотека не устанавливается, но становится доступна с помощью команд spin, таких как spin test, spin ipython, spin run и т. д.
2.1.2. conda
Мы рекомендуем устанавливать conda с помощью miniforge — альтернативы Anaconda, не требующей лицензионных отчислений.
После установки miniforge:
# Create a conda environment with required dependencies conda env create -f environment.yml # Activate it conda activate skimage-dev # Install scikit-image in editable mode. In editable mode, # scikit-image will be recompiled, as necessary, on import. spin install -v
Совет
Приведённая выше команда устанавливает scikit-image в ваше окружение, благодаря чему пакет становится доступен в IDE, IPython и т. д. Это не обязательно; можно также выполнить сборку с помощью:
spin build
В этом случае библиотека не устанавливается, но становится доступна с помощью команд spin, таких как spin test, spin ipython, spin run и т. д.
2.2. Тестирование
Запустите полный набор тестов:
spin test
Или запустите часть тестов:
# Run tests in a given file spin test skimage/morphology/tests/test_gray.py # Run tests in a given directory spin test skimage/morphology # Run tests matching a given expression spin test -- -k local_maxima
2.3. Создание ветки для новой функциональности
Добавляя новую функциональность, создайте для неё отдельную ветку.
Сначала получите последнюю версию исходного кода:
git switch main git pull upstream main
Создайте ветку для новой функциональности:
git switch --create my-feature-name
При установке в режиме редактирования scikit-image будет пересобираться по мере необходимости. Если вы выполняете сборку вручную, пересоберите пакет с помощью:
.. code-block:: sh
spin build
Повторные инкрементальные сборки обычно проходят без проблем, но если возникнут проблемы со сборкой, выполните полную пересборку с помощью:
spin build --clean
2.4. Примечания для отдельных платформ
Windows
Сборка scikit-image в Windows выполняется в рамках наших тестов непрерывной интеграции; этапы описаны в этом конвейере Azure.
Debian и Ubuntu
Перед компиляцией библиотеки установите необходимые компиляторы:
sudo apt-get install build-essential
2.5. Полный список требований
Требования для сборки
# Generated via tools/generate_requirements.py and pre-commit hook. # Do not edit this file; modify pyproject.toml instead. meson-python>=0.16 ninja>=1.11.1.1 Cython>=3.0.8,!=3.2.0b1 pythran>=0.16 numpy>=2.0 spin==0.13 build>=1.2.1
Требования для выполнения
# Generated via tools/generate_requirements.py and pre-commit hook. # Do not edit this file; modify pyproject.toml instead. numpy>=1.24 scipy>=1.11.4 networkx>=3.0 pillow>=10.1 imageio>=2.33,!=2.35.0 tifffile>=2022.8.12 packaging>=21 lazy-loader>=0.4
Требования для тестирования
# Generated via tools/generate_requirements.py and pre-commit hook. # Do not edit this file; modify pyproject.toml instead. numpydoc>=1.7 pooch>=1.6.0; sys_platform != "emscripten" pytest>=8.3 pytest-cov>=2.11.0 pytest-pretty pytest-localserver pytest-faulthandler pytest-doctestplus>=1.6.0
Требования для документации
# Generated via tools/generate_requirements.py and pre-commit hook. # Do not edit this file; modify pyproject.toml instead. sphinx>=8.0 sphinx-gallery[parallel]>=0.18 numpydoc>=1.7 sphinx-copybutton matplotlib>=3.7 dask[array]>=2023.2.0 pandas>=2.0 seaborn>=0.11 pooch>=1.6 tifffile>=2022.8.12 myst-parser intersphinx-registry>=0.2411.14 ipywidgets ipykernel plotly>=5.20 kaleido==0.2.1 scikit-learn>=1.2 sphinx_design>=0.5 pydata-sphinx-theme>=0.16 PyWavelets>=1.6 pytest-doctestplus>=1.6.0
Требования для разработки
# Generated via tools/generate_requirements.py and pre-commit hook. # Do not edit this file; modify pyproject.toml instead. pre-commit ipython docstub==0.3.0.post0 asv; sys_platform != "emscripten"
Требования к данным
Полный набор демонстрационных данных доступен только при установленном:
# Generated via tools/generate_requirements.py and pre-commit hook. # Do not edit this file; modify pyproject.toml instead. pooch>=1.6.0
Дополнительные требования
Для использования scikit-image достаточно перечисленных выше основных требований, но некоторые функции доступны только при установке следующих пакетов:
- Matplotlib Используется в различных функциях, например для рисования, сегментации и чтения изображений.
-
Dask Модуль
daskиспользуется для распараллеливания некоторых функций.
В некоторых случаях могут также понадобиться:
-
PyAMG Модуль
pyamgиспользуется для быстрого режимаcg_mgсегментации методом случайного блуждания. - Astropy Обеспечивает поддержку ввода-вывода FITS.
- SimpleITK Дополнительный плагин ввода-вывода, поддерживающий широкий спектр форматов, включая специализированные форматы, используемые в биомедицинской визуализации.
# Generated via tools/generate_requirements.py and pre-commit hook. # Do not edit this file; modify pyproject.toml instead. SimpleITK; sys_platform != "emscripten" scikit-learn>=1.2 pyamg>=5.2; sys_platform != "emscripten" and python_version < "3.14" astropy>=6.0 dask[array]>=2023.2.0 matplotlib>=3.7 pooch>=1.6.0; sys_platform != "emscripten" PyWavelets>=1.6
2.6. Помощь с установкой для участников разработки
См. раздел Дополнительная помощь выше.
© 2019 the scikit-image team
Licensed under the BSD 3-clause License.
https://scikit-image.org/docs/0.26.x/user_guide/install.html