class AprilTag – AprilTag objektum

Az apriltag objektum egy attrtuple, amelyet az Image.find_apriltags() ad vissza. Minden példány egy dekódolt AprilTag-et ír le: határoló dobozát, alképpontos súlypontját, családját/azonosítóját, a dekóder minőségi mérőszámait, a négy észlelt sarkot, és – ha intrinsic paraméterek vannak megadva az Image.find_apriltags() függvénynek – egy 6 szabadságfokú póz-becslést a kamera koordináta-rendszerében.

A mezők attribútumnév szerint (tag.id) vagy index szerint (tag[0]) érhetők el. Az objektumnak nincs nyilvános konstruktora.

class image.apriltag

Az objektum létrehozásához hívja meg az Image.find_apriltags() függvényt.

Határoló doboz és sarkok

x

A határoló doboz bal felső x koordinátája, képpontban. Egész szám. Index: [0].

y

A határoló doboz bal felső y koordinátája, képpontban. Egész szám. Index: [1].

w

A határoló doboz szélessége, képpontban. Egész szám. Index: [2].

h

A határoló doboz magassága, képpontban. Egész szám. Index: [3].

cx

A súlypont x koordinátája, egészre kerekítve. Egész szám. Index: [4].

cy

A súlypont y koordinátája, egészre kerekítve. Egész szám. Index: [5].

cxf

A súlypont x koordinátája alképpontos lebegőpontos értékként. Index: [9].

cyf

A súlypont y koordinátája alképpontos lebegőpontos értékként. Index: [10].

corners

A tag négy észlelt sarkának (x, y) egész rendezett párokból álló 4-elemű rendezett négyese, az óramutató járásával megegyezően rendezve a bal felső saroktól kezdve. Index: [21].

area

A határoló doboz területe (w * h). Egész szám. Index: [22].

rect

A határoló doboz (x, y, w, h) 4-elemű rendezett négyese. Közvetlenül átadható rajzoló/kivágó metódusoknak, mint például az Image.draw_rectangle() vagy az Image.crop(). Index: [23].

Azonosítás

id

A tag numerikus azonosítója a családján belül. Az érvényes tartomány a családtól függ (pl. 0 – 586 a TAG36H11 esetében). Egész szám. Index: [6].

family

Numerikus családazonosító, a következők egyike:

Egész szám. Index: [7].

name

A család neve karakterláncként, pl. "TAG36H11". Index: [8].

Egyezési minőség

decision_margin

A tag egyezésének minősége a 0.0 – 1.0 tartományban, ahol az 1.0 a legjobb. Ezzel utasíthatja el az alacsony megbízhatóságú észleléseket. Lebegőpontos. Index: [12].

hamming

Azoknak a bithibáknak a száma, amelyeket a dekóder elfogadott ehhez a taghez. A család korrekciós képessége korlátozza:

  • TAG16H5 -> legfeljebb 0 bithiba

  • TAG25H9 -> legfeljebb 3 bithiba

  • TAG36H10 -> legfeljebb 3 bithiba

  • TAG36H11 -> legfeljebb 4 bithiba

A kisebb érték a jobb. Egész szám. Index: [13].

goodness

A tag képminősége a 0.0 – 1.0 tartományban, ahol az 1.0 a legjobb. A kiadott firmware-ben jelenleg mindig 0.0 (az alapul szolgáló dekóder már nem számítja ki ezt a mérőszámot). Lebegőpontos. Index: [14].

Póz-becslés

Az alábbi eltolási és forgatási mezők csak akkor töltődnek ki, ha az Image.find_apriltags() függvényt az fx, fy, cx és cy kamera-intrinsic paraméterekkel hívják meg. Intrinsic paraméterek nélkül 0.0 értékűek. A tag-et 1 egység szélesnek feltételezi, így az eltolások „tag-szélességekben” vannak megadva – szorozza meg a valós tag-mérettel a metrikus távolságok megkapásához.

x_translation

X irányú eltolás a kamerától (bal-jobb) tag-szélességekben. Lebegőpontos. Index: [15].

y_translation

Y irányú eltolás a kamerától (fel-le) tag-szélességekben. Lebegőpontos. Index: [16].

z_translation

Z irányú eltolás a kamerától (előre-hátra) tag-szélességekben. Lebegőpontos. Index: [17].

x_rotation

Forgatás az X tengely körül (pitch) radiánban. Lebegőpontos. Index: [18].

y_rotation

Forgatás az Y tengely körül (yaw) radiánban. Lebegőpontos. Index: [19].

z_rotation

Forgatás a Z tengely körül (roll) radiánban. Ugyanaz az érték, mint a rotation – duplikálva az x_rotation és y_rotation szimmetriája érdekében. Lebegőpontos. Index: [20].

rotation

A tag képsíkbeli forgatása radiánban. Megegyezik a z_rotation értékkel. Lebegőpontos. Index: [11].