class AprilTag – AprilTag objekt

Objekt apriltag je attrtuple koji vraća Image.find_apriltags(). Svaka instanca opisuje dekodirani AprilTag: njegov granični okvir, sub-pikselni centroid, obitelj/id, metrike kvalitete dekodera, četiri detektirana kuta te – kada se za Image.find_apriltags() navedu intrinzični parametri – procjenu poze sa 6 stupnjeva slobode u okviru kamere.

Poljima se pristupa po nazivu atributa (tag.id) ili po indeksu (tag[0]). Objekt nema javni konstruktor.

class image.apriltag

Pozovite Image.find_apriltags() za stvaranje ovog objekta.

Granični okvir i kutovi

x

X koordinata gornjeg lijevog kuta graničnog okvira, u pikselima. Cijeli broj. Indeks [0].

y

Y koordinata gornjeg lijevog kuta graničnog okvira, u pikselima. Cijeli broj. Indeks [1].

w

Širina graničnog okvira, u pikselima. Cijeli broj. Indeks [2].

h

Visina graničnog okvira, u pikselima. Cijeli broj. Indeks [3].

cx

X koordinata centroida, zaokružena na cijeli broj. Cijeli broj. Indeks [4].

cy

Y koordinata centroida, zaokružena na cijeli broj. Cijeli broj. Indeks [5].

cxf

X koordinata centroida kao sub-pikselni float. Indeks [9].

cyf

Y koordinata centroida kao sub-pikselni float. Indeks [10].

corners

4-torka (x, y) torki cijelih brojeva za četiri detektirana kuta oznake, poredanih u smjeru kazaljke na satu počevši od gornjeg lijevog kuta. Indeks [21].

area

Površina graničnog okvira (w * h). Cijeli broj. Indeks [22].

rect

(x, y, w, h) 4-torka graničnog okvira. Prikladna za izravno prosljeđivanje metodama za crtanje/obrezivanje kao što su Image.draw_rectangle() ili Image.crop(). Indeks [23].

Identifikacija

id

Numerički id oznake unutar njezine obitelji. Valjani raspon ovisi o obitelji (npr. 0 – 586 za TAG36H11). Cijeli broj. Indeks [6].

family

Numerički identifikator obitelji, jedan od:

Cijeli broj. Indeks [7].

name

Naziv obitelji kao niz znakova, npr. "TAG36H11". Indeks [8].

Kvaliteta podudaranja

decision_margin

Kvaliteta podudaranja oznake u rasponu 0.0 – 1.0 gdje je 1.0 najbolje. Koristite ovo za odbacivanje detekcija niske pouzdanosti. Float. Indeks [12].

hamming

Broj bitnih pogrešaka koje je dekoder prihvatio za ovu oznaku. Ograničen sposobnošću ispravljanja obitelji:

  • TAG16H5 -> do 0 bitnih pogrešaka

  • TAG25H9 -> do 3 bitne pogreške

  • TAG36H10 -> do 3 bitne pogreške

  • TAG36H11 -> do 4 bitne pogreške

Manje je bolje. Cijeli broj. Indeks [13].

goodness

Kvaliteta slike oznake u rasponu 0.0 – 1.0 gdje je 1.0 najbolje. Trenutno uvijek 0.0 u objavljenom ugrađenom programu (firmware) (osnovni dekoder više ne računa ovu metriku). Float. Indeks [14].

Procjena poze

Polja translacije i rotacije ispod popunjavaju se samo kada se Image.find_apriltags() poziva s intrinzičnim parametrima kamere fx, fy, cx i cy. Bez intrinzičnih parametara iznose 0.0. Pretpostavlja se da je oznaka široka 1 jedinicu, pa su translacije u „širinama oznake” – pomnožite stvarnom veličinom oznake kako biste dobili metričke udaljenosti.

x_translation

X translacija od kamere (lijevo-desno) u širinama oznake. Float. Indeks [15].

y_translation

Y translacija od kamere (gore-dolje) u širinama oznake. Float. Indeks [16].

z_translation

Z translacija od kamere (naprijed-natrag) u širinama oznake. Float. Indeks [17].

x_rotation

Rotacija oko X osi (nagib/pitch) u radijanima. Float. Indeks [18].

y_rotation

Rotacija oko Y osi (skretanje/yaw) u radijanima. Float. Indeks [19].

z_rotation

Rotacija oko Z osi (valjanje/roll) u radijanima. Ista vrijednost kao rotation – duplicirana radi simetrije s x_rotation i y_rotation. Float. Indeks [20].

rotation

Rotacija oznake u ravnini slike u radijanima. Jednaka z_rotation. Float. Indeks [11].