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].