scipy.ndimage.

binary_fill_holes#

scipy.ndimage.binary_fill_holes(входные данные, структура=None, вывод=None, origin=0, *, оси=None)[источник]#

Заполнить дыры в бинарных объектах.

Параметры:
входные данныеarray_like

N-мерный бинарный массив с дырами для заполнения

структураarray_like, необязательный

Структурирующий элемент, используемый в вычислениях; элементы большого размера делают вычисления быстрее, но могут пропускать отверстия, отделенные от фона тонкими областями. Элемент по умолчанию (с квадратной связностью, равной единице) дает интуитивный результат, где все отверстия во входных данных заполнены.

выводndarray, необязательно

Массив той же формы, что и входной, в который помещается результат. По умолчанию создаётся новый массив.

originint, кортеж из int, опционально

Позиция структурирующего элемента.

осикортеж int или None

Оси, по которым применяется фильтр. Если None, входные данные фильтруется по всем осям. Если origin Если предоставлен кортеж, его длина должна соответствовать количеству осей.

Возвращает:
выходndarray

Преобразование исходного изображения входные данные где дыры были заполнены.

Смотрите также

binary_dilation, binary_propagation, label

Примечания

Алгоритм, используемый в этой функции, заключается во вторжении в дополнение форм в входные данные от внешней границы изображения, используя бинарные расширения. Отверстия не соединены с границей и поэтому не захватываются. Результат является дополнительным подмножеством захваченной области.

Ссылки

Примеры

>>> from scipy import ndimage
>>> import numpy as np
>>> a = np.zeros((5, 5), dtype=int)
>>> a[1:4, 1:4] = 1
>>> a[2,2] = 0
>>> a
array([[0, 0, 0, 0, 0],
       [0, 1, 1, 1, 0],
       [0, 1, 0, 1, 0],
       [0, 1, 1, 1, 0],
       [0, 0, 0, 0, 0]])
>>> ndimage.binary_fill_holes(a).astype(int)
array([[0, 0, 0, 0, 0],
       [0, 1, 1, 1, 0],
       [0, 1, 1, 1, 0],
       [0, 1, 1, 1, 0],
       [0, 0, 0, 0, 0]])
>>> # Too big structuring element
>>> ndimage.binary_fill_holes(a, structure=np.ones((5,5))).astype(int)
array([[0, 0, 0, 0, 0],
       [0, 1, 1, 1, 0],
       [0, 1, 0, 1, 0],
       [0, 1, 1, 1, 0],
       [0, 0, 0, 0, 0]])