class Blob – obiekt Blob¶
Obiekt blob to attrtuple zwracany przez Image.find_blobs(). Każda plama (blob) reprezentuje spójny obszar pikseli, który dopasował się do jednego lub więcej progów koloru przekazanych do find_blobs(). Obiekt pakuje razem ramkę ograniczającą plamy, jej centroid, liczbę pikseli, obwód, orientację, metryki gęstości pola, zbiór progów które ją trafiły, obrócony prostokąt o minimalnym polu oraz opcjonalne histogramy projekcji X/Y.
Pola są dostępne po nazwie atrybutu (blob.x) lub po indeksie (blob[0]). Obiekt nie ma publicznego konstruktora.
- class image.blob¶
Aby utworzyć ten obiekt, wywołaj
Image.find_blobs().Ramka ograniczająca i centroid¶
- x¶
Współrzędna x lewego górnego rogu ramki ograniczającej, w pikselach. Liczba całkowita. Indeks
[0].
- y¶
Współrzędna y lewego górnego rogu ramki ograniczającej, w pikselach. Liczba całkowita. Indeks
[1].
- w¶
Szerokość ramki ograniczającej, w pikselach. Liczba całkowita. Indeks
[2].
- h¶
Wysokość ramki ograniczającej, w pikselach. Liczba całkowita. Indeks
[3].
- cx¶
Współrzędna x centroidu (średnia pikseli plamy), zaokrąglona do liczby całkowitej. Liczba całkowita. Indeks
[4].
- cy¶
Współrzędna y centroidu (średnia pikseli plamy), zaokrąglona do liczby całkowitej. Liczba całkowita. Indeks
[5].
- cxf¶
Współrzędna x centroidu jako subpikselowa liczba zmiennoprzecinkowa. Indeks
[16].
- cyf¶
Współrzędna y centroidu jako subpikselowa liczba zmiennoprzecinkowa. Indeks
[17].
- rect¶
4-elementowa krotka
(x, y, w, h)ramki ograniczającej. Nadaje się do bezpośredniego przekazania do metod rysowania/przycinania, takich jakImage.draw_rectangle()lubImage.crop(). Indeks[22].
Deskryptory kształtu¶
- pixels¶
Liczba pikseli tworzących tę plamę. Liczba całkowita. Indeks
[6].
- area¶
Pole ramki ograniczającej wyrównanej do osi (
w * h). Liczba całkowita. Indeks[19].
- density¶
pixels / area– ułamek ramki ograniczającej wypełniony przez plamę. Liczba zmiennoprzecinkowa w zakresie 0.0 – 1.0. Pełny prostokąt zbliża się do1.0; cienka przekątna linia zbliża się do0.0. Indeks[20].
- perimeter¶
Liczba pikseli na zewnętrznym obwodzie plamy. Liczba całkowita. Indeks
[10].
- roundness¶
Stosunek osi mniejszej do osi większej plamy, obliczony z jej momentów drugiego rzędu. Liczba zmiennoprzecinkowa w zakresie 0.0 – 1.0;
1.0to idealne koło,0.0to linia. Indeks[11].
- elongation¶
1.0 - roundness– wartość w zakresie 0.0 – 1.0, gdzie0.0to idealne koło, a1.0to linia. Indeks[18].
- compactness¶
(pixels * 4 * pi) / (perimeter * perimeter). Koło ma najmniejszy obwód dla danego pola, więc ta metryka wynosi1.0dla idealnego koła i maleje, gdy plama staje się bardziej nieregularna lub wydłużona. Liczba zmiennoprzecinkowa. Indeks[21].
- rotation¶
Orientacja plamy w radianach, wyprowadzona z jej momentów drugiego rzędu. Liczba zmiennoprzecinkowa w zakresie od 0 do pi (oś jest symetryczna, więc kierunek jest niejednoznaczny powyżej pi). Najdokładniejsza dla wydłużonych plam – dla niemal okrągłych plam wartość staje się zaszumiona. Indeks
[7].
Metadane progów / scalania¶
- code¶
32-bitowa mapa bitowa z jednym bitem ustawionym dla każdego progu koloru (przekazanego do
Image.find_blobs()), który ta plama dopasowała. Przy jednym progucode == 1. Przy scalonych wielokolorowych plamach (merge=True) może być ustawiony więcej niż jeden bit. Indeks[8].
- count¶
Liczba źródłowych plam scalonych w tę jedną.
1gdymerge=False; może być większa gdymerge=True. Indeks[9].
Narożniki¶
- corners¶
4-elementowa krotka krotek całkowitych
(x, y)dla czterech skrajnych narożników plamy, posortowanych zgodnie z ruchem wskazówek zegara, zaczynając od lewego górnego rogu. Są to narożniki wyprowadzone z konturu (punkty na granicy plamy najbardziej oddalone od centroidu wzdłuż czterech przekątnych). Indeks[14].
- min_corners¶
4-elementowa krotka krotek całkowitych
(x, y)dla czterech narożników obróconego prostokąta ograniczającego plamę o minimalnym polu. W połączeniu zrotationdają najściślejsze dopasowanie wokół plamy. Indeks[15].
Histogramy projekcji¶
- x_hist_bins¶
Lista liczb całkowitych dla histogramu projekcji plamy na oś X (kolumny). Wypełniana tylko gdy
find_blobs(...)jest wywoływane zx_hist_bins_max> 0; w przeciwnym razie pusta. Indeks[12].
- y_hist_bins¶
Lista liczb całkowitych dla histogramu projekcji plamy na oś Y (wiersze). Wypełniana tylko gdy
find_blobs(...)jest wywoływane zy_hist_bins_max> 0; w przeciwnym razie pusta. Indeks[13].