class Blob – объект Blob#
Объект blob – это attrtuple, возвращаемый методом Image.find_blobs(). Каждый блоб представляет собой связную область пикселей, которая соответствовала одному или нескольким цветовым порогам, переданным в find_blobs(). Объект объединяет в себе ограничивающую рамку блоба, центроид, количество пикселей, периметр, ориентацию, метрики плотности площади, набор сработавших порогов, повёрнутый прямоугольник минимальной площади и опциональные гистограммы проекций X/Y.
Поля доступны по имени атрибута (blob.x) или по индексу (blob[0]). У объекта нет публичного конструктора.
- class image.blob#
Чтобы создать этот объект, вызовите
Image.find_blobs().Ограничивающая рамка и центроид#
- x#
Координата x верхнего левого угла ограничивающей рамки в пикселях. Целое число. Индекс
[0].
- y#
Координата y верхнего левого угла ограничивающей рамки в пикселях. Целое число. Индекс
[1].
- w#
Ширина ограничивающей рамки в пикселях. Целое число. Индекс
[2].
- h#
Высота ограничивающей рамки в пикселях. Целое число. Индекс
[3].
- cx#
Координата x центроида (среднее по пикселям блоба), округлённая до целого. Целое число. Индекс
[4].
- cy#
Координата y центроида (среднее по пикселям блоба), округлённая до целого. Целое число. Индекс
[5].
- cxf#
Координата x центроида как субпиксельное число с плавающей точкой. Индекс
[16].
- cyf#
Координата y центроида как субпиксельное число с плавающей точкой. Индекс
[17].
- rect#
Кортеж из 4 элементов
(x, y, w, h)для ограничивающей рамки. Подходит для прямой передачи в методы рисования/обрезки, такие какImage.draw_rectangle()илиImage.crop(). Индекс[22].
Дескрипторы формы#
- pixels#
Количество пикселей, из которых состоит этот блоб. Целое число. Индекс
[6].
- area#
Площадь ограничивающей рамки, выровненной по осям (
w * h). Целое число. Индекс[19].
- density#
pixels / area– доля ограничивающей рамки, заполненная блобом. Число с плавающей точкой в диапазоне 0.0 – 1.0. Сплошной прямоугольник приближается к1.0; тонкая диагональная линия приближается к0.0. Индекс[20].
- perimeter#
Количество пикселей на внешнем периметре блоба. Целое число. Индекс
[10].
- roundness#
Отношение малой оси к большой оси блоба, вычисленное по его моментам второго порядка. Число с плавающей точкой в диапазоне 0.0 – 1.0;
1.0– идеальный круг,0.0– линия. Индекс[11].
- elongation#
1.0 - roundness– значение в диапазоне 0.0 – 1.0, где0.0– идеальный круг, а1.0– линия. Индекс[18].
- compactness#
(pixels * 4 * pi) / (perimeter * perimeter). У круга наименьший периметр для заданной площади, поэтому эта метрика равна1.0для идеального круга и уменьшается по мере того, как блоб становится более неправильным или вытянутым. Число с плавающей точкой. Индекс[21].
- rotation#
Ориентация блоба в радианах, вычисленная по его моментам второго порядка. Число с плавающей точкой в диапазоне от 0 до pi (ось симметрична, поэтому направление неоднозначно за пределами pi). Наиболее точна для вытянутых блобов – для почти круглых блобов значение становится зашумлённым. Индекс
[7].
Метаданные порога / слияния#
- code#
32-битная битовая карта, в которой установлен один бит для каждого цветового порога (переданного в
Image.find_blobs()), которому соответствовал этот блоб. При одном порогеcode == 1. При объединённых многоцветных блобах (merge=True) может быть установлено более одного бита. Индекс[8].
- count#
Количество исходных блобов, объединённых в этот.
1приmerge=False; может быть больше приmerge=True. Индекс[9].
Углы#
- corners#
Кортеж из 4 целочисленных кортежей
(x, y)для четырёх крайних углов блоба, отсортированных по часовой стрелке начиная с верхнего левого угла. Это углы, выведенные из контура (точки на границе блоба, наиболее удалённые от центроида вдоль четырёх диагоналей). Индекс[14].
- min_corners#
Кортеж из 4 целочисленных кортежей
(x, y)для четырёх углов повёрнутого ограничивающего прямоугольника блоба минимальной площади. В сочетании сrotationони дают вам наиболее плотное прилегание вокруг блоба. Индекс[15].
Гистограммы проекций#
- x_hist_bins#
Список целочисленных счётчиков для гистограммы проекции блоба по оси X (столбцы). Заполняется только тогда, когда
find_blobs(...)вызывается сx_hist_bins_max> 0; в противном случае пуст. Индекс[12].
- y_hist_bins#
Список целочисленных счётчиков для гистограммы проекции блоба по оси Y (строки). Заполняется только тогда, когда
find_blobs(...)вызывается сy_hist_bins_max> 0; в противном случае пуст. Индекс[13].