Scikit-image
scikit-image — свободная кроссплатформенная библиотека для обработки изображений на языке Python. Она построена на массивах NumPy и интегрируется с научной экосистемой Python, предоставляя хорошо документированные реализации распространённых алгоритмов анализа изображений. Проект развивается глобальным сообществом добровольцев при организационной поддержке NumFOCUS[1]. Текущий стабильный релиз — 0.23.0, выпущенный 24 апреля 2024 года[2].
Что важно знать
| scikit-image | |
|---|---|
| Тип | Библиотека обработки изображений |
| Разработчик | Сообщество контрибьюторов (поддерживается NumFOCUS) |
| Написана на | Python, Cython и C |
| Интерфейс | Python API |
| Операционная система | Кроссплатформенная |
| Первый выпуск | 0.1 |
| Последняя версия | 0.23.0 (24 апреля 2024) |
| Состояние | Активно разрабатывается и обновляется |
| Лицензия | Бесплатное программное обеспечение с открытым исходным кодом (модифицированная лицензия BSD) |
| Сайт | scikit-image.org |
Функции
Библиотека охватывает полный цикл научной обработки изображений и включает следующие возможности:
- чтение и запись изображений в различных форматах[3]
- преобразование между цветовыми пространствами и работа с многоканальными N-мерными данными[4]
- предварительная обработка и улучшение качества снимков при помощи локальных и нелокальных фильтров[5]
- математическая морфология для изменения формы и структуры объектов[6]
- сегментация изображений (бинарная, маркерная, пороговая) для выделения смысловых областей[7]
- измерение свойств регионов (площадь, периметр, ориентация и т. д.)[8]
- извлечение признаков (форма, текстура, ключевые точки) для задач компьютерного зрения[9]
- геометрические преобразования (масштабирование, поворот, проекция)[10]
- фильтрация и восстановление изображений, включая подавление шума и повышение резкости[11]
- управление экспозицией, коррекцией гистограммы и цветовыми каналами (RGB ↔ HSV, оттенки серого)[12]
- интерактивная визуализация данных и тесная интеграция с Matplotlib[13]
Примеры использования
Ниже приведены типичные приёмы работы с библиотекой.
- Чтение и отображение изображения
from skimage import io
image = io.imread('path/to/image.jpg')
io.imshow(image)
В сочетании сmatplotlib.pyplot.show()код загружает файл в виде массива NumPy и выводит его на экран[14].
- Бинарная сегментация методом Отсу
from skimage.filters import threshold_otsu
gray = io.imread('path/to/image.jpg', as_gray=True)
thr = threshold_otsu(gray)
mask = gray > thr
Автоматический порог выделяет объект на фоне; метод широко используется для подготовки изображений к анализу.
- Обнаружение краёв по Канни
from skimage.feature import canny
edges = canny(gray, sigma=3)
Алгоритм Канни выявляет границы объектов, подавляя шум гауссовым сглаживанием и применяя гистерезисную пороговую обработку[15].
Примечания
| Правообладателем данного материала является АНО «Интернет-энциклопедия «РУВИКИ». Использование данного материала на других сайтах возможно только с согласия АНО «Интернет-энциклопедия «РУВИКИ». |


