kelas AprilTag -- Objek AprilTag#
Objek apriltag adalah attrtuple yang dikembalikan oleh Image.find_apriltags(). Setiap instance mendeskripsikan AprilTag yang telah didekode: kotak pembatasnya, sentroid sub-piksel, keluarga/id, metrik kualitas dekoder, empat sudut yang terdeteksi, dan -- ketika intrinsik disediakan ke Image.find_apriltags() -- estimasi pose 6-DoF dalam bingkai kamera.
Field dapat diakses dengan nama atribut (tag.id) atau dengan indeks (tag[0]). Objek tidak memiliki konstruktor publik.
- class image.apriltag#
Silakan panggil
Image.find_apriltags()untuk membuat objek ini.Kotak pembatas dan sudut#
- x#
Koordinat x kiri atas kotak pembatas, dalam piksel. Integer. Indeks
[0].
- y#
Koordinat y kiri atas kotak pembatas, dalam piksel. Integer. Indeks
[1].
- w#
Lebar kotak pembatas, dalam piksel. Integer. Indeks
[2].
- h#
Tinggi kotak pembatas, dalam piksel. Integer. Indeks
[3].
- cx#
Koordinat x sentroid, dibulatkan ke int. Integer. Indeks
[4].
- cy#
Koordinat y sentroid, dibulatkan ke int. Integer. Indeks
[5].
- cxf#
Koordinat x sentroid sebagai float sub-piksel. Indeks
[9].
- cyf#
Koordinat y sentroid sebagai float sub-piksel. Indeks
[10].
- corners#
4-tuple dari tuple integer
(x, y)untuk empat sudut tag yang terdeteksi, diurutkan searah jarum jam mulai dari sudut kiri atas. Indeks[21].
- area#
Luas kotak pembatas (
w * h). Integer. Indeks[22].
- rect#
4-tuple
(x, y, w, h)dari kotak pembatas. Cocok untuk diteruskan langsung ke metode gambar/pemangkasan sepertiImage.draw_rectangle()atauImage.crop(). Indeks[23].
Identifikasi#
- id#
Id numerik tag dalam keluarganya. Rentang valid bergantung pada keluarga (mis. 0 -- 586 untuk
TAG36H11). Integer. Indeks[6].
- family#
Pengenal keluarga numerik, salah satu dari:
Integer. Indeks
[7].
- name#
Nama keluarga sebagai string, mis.
"TAG36H11". Indeks[8].
Kualitas pencocokan#
- decision_margin#
Kualitas pencocokan tag dalam rentang 0.0 -- 1.0 di mana 1.0 adalah yang terbaik. Gunakan ini untuk menolak deteksi berkepercayaan rendah. Float. Indeks
[12].
- hamming#
Jumlah kesalahan bit yang diterima dekoder untuk tag ini. Dibatasi oleh kemampuan koreksi keluarga:
TAG16H5-> hingga 0 kesalahan bitTAG25H9-> hingga 3 kesalahan bitTAG36H10-> hingga 3 kesalahan bitTAG36H11-> hingga 4 kesalahan bit
Semakin rendah semakin baik. Integer. Indeks
[13].
- goodness#
Kualitas citra tag dalam rentang 0.0 -- 1.0 di mana 1.0 adalah yang terbaik. Saat ini selalu 0.0 dalam firmware yang dirilis (dekoder yang mendasarinya tidak lagi menghitung metrik ini). Float. Indeks
[14].
Estimasi pose#
Field translasi dan rotasi di bawah ini hanya diisi ketika
Image.find_apriltags()dipanggil dengan intrinsik kamerafx,fy,cx, dancy. Tanpa intrinsik, nilainya adalah 0.0. Tag diasumsikan memiliki lebar 1 unit, sehingga translasi dalam "lebar tag" -- kalikan dengan ukuran tag dunia nyata untuk mendapatkan jarak metrik.- x_translation#
Translasi X dari kamera (kiri-kanan) dalam lebar tag. Float. Indeks
[15].
- y_translation#
Translasi Y dari kamera (atas-bawah) dalam lebar tag. Float. Indeks
[16].
- z_translation#
Translasi Z dari kamera (depan-belakang) dalam lebar tag. Float. Indeks
[17].
- x_rotation#
Rotasi terhadap sumbu X (pitch) dalam radian. Float. Indeks
[18].
- y_rotation#
Rotasi terhadap sumbu Y (yaw) dalam radian. Float. Indeks
[19].
- z_rotation#
Rotasi terhadap sumbu Z (roll) dalam radian. Nilai yang sama dengan
rotation-- diduplikasi untuk simetri denganx_rotationdany_rotation. Float. Indeks[20].
- rotation#
Rotasi tag dalam bidang citra dalam radian. Sama dengan
z_rotation. Float. Indeks[11].