Sdílet prostřednictvím


Přístup k datům ve snímku těla

Tento článek popisuje data obsažená v základním rámečku a funkce pro přístup k datům.

Probíráme následující funkce:

Klíčové součásti rámce těla

Každý rámec těla obsahuje kolekci struktur těla, 2D mapování indexu těla a vstupní zachycení, které vygenerovalo tento výsledek.

Součásti základního rámce

Přístup ke kolekci struktur textu

V jednom zachycení může být zjištěno více těl. Počet těl můžete dotazovat voláním funkce k4abt_frame_get_num_bodies().

size_t num_bodies = k4abt_frame_get_num_bodies(body_frame);

Pomocí funkcí k4abt_frame_get_body_id() a k4abt_frame_get_body_skeleton() můžete iterovat jednotlivé indexy těla a najít ID těla a informace o společné poloze/orientaci.

for (size_t i = 0; i < num_bodies; i++)
{
    k4abt_skeleton_t skeleton;
    k4abt_frame_get_body_skeleton(body_frame, i, &skeleton);
    uint32_t id = k4abt_frame_get_body_id(body_frame, i);
}

Přístup k mapě základního indexu

Pomocí funkce k4abt_frame_get_body_index_map() získáte přístup k mapě indexu těla. Podrobné vysvětlení mapy indexu těla najdete v mapě indexu těla. Pokud už není potřeba, nezapomeňte mapu indexu těla uvolnit.

k4a_image_t body_index_map = k4abt_frame_get_body_index_map(body_frame);
...  // Do your work with the body index map
k4a_image_release(body_index_map);

Přístup ke vstupnímu zachytávání

Sledování těla je asynchronní rozhraní API. Původní zachycení již mohlo být vydáno v době, kdy se výsledek rozbalí. Pomocí funkce k4abt_frame_get_capture() zadejte dotaz na vstupní zachytávání použité ke generování tohoto výsledku sledování textu. Počet odkazů pro k4a_capture_t se zvýší při každém zavolání této funkce. Funkci k4a_capture_release() použijte v případě, že už záznam nepotřebujete.

k4a_capture_t input_capture = k4abt_frame_get_capture(body_frame);
... // Do your work with the input capture
k4a_capture_release(input_capture);

Další kroky