Principy scén

Funkce HoloLens (1. generace) HoloLens 2 Imerzivní náhlavní soupravy
Principy scén ✔️

Obvyklé scénáře použití

Ilustrace běžných scénářů použití prostorového mapování: Umístění, okluze, fyzika a navigace
Běžné scénáře použití prostorového mapování: umístění, okluze, fyzika a navigace.


Mnohé ze základních scénářů pro aplikace, které jsou si vědomy povědomí o aplikacích, je možné řešit jak prostorovým mapováním, tak porozuměním scéně. Mezi tyto základní scénáře patří umístění, okluze, fyzika atd. Základním rozdílem mezi principy scény a prostorovým mapováním je kompromis maximální přesnosti a latence pro strukturování a jednoduchost. Pokud vaše aplikace vyžaduje nejnižší možnou latenci a trojúhelníčky, ke které budete mít přístup jenom vy, použijte prostorové mapování přímo. Pokud zpracováváte na vyšší úrovni, můžete zvážit přechod na model porozumění scéně, protože by vám měl poskytnout nadmnožina funkcí. Vždy budete mít přístup k nejúplnějším a nejpřesnějším možným datům prostorového mapování, protože princip scény poskytuje snímek sítě prostorového mapování v rámci reprezentace.

V následujících částech se znovu prohlédněte základní scénáře prostorového mapování v kontextu nové sady SDK pro porozumění scéně.

Umístění

Principy scény poskytují nové konstrukce navržené pro zjednodušení scénářů umístění. Scény může vypočítat primitivy s názvem SceneQuads, které popisují ploché povrchy, na které je možné umístit hologramy. SceneQuads byly navrženy pro umístění a popisují 2D plochu a poskytují rozhraní API pro umístění na tomto povrchu. Dříve bylo při použití trojúhelníkové sítě k umístění jedna z nich naskenovaná ve všech oblastech čtyřúhelníku a vyplňovat/zpracovávat otvory, aby bylo možné identifikovat dobrá umístění pro umístění objektů. U čtyřúhelníků to není vždy nutné, protože modul runtime principů scény odvodí, které čtyřúhelníkové oblasti nebyly naskenovány, a zneplatní oblasti, které nejsou součástí povrchu.

SceneQuads se zakázaným odvozováním zachycující oblasti umístění pro naskenované oblasti
Obrázek č. 1 – SceneQuads se zakázaným odvozováním, zachytávání oblastí umístění pro naskenované oblasti

Čtyřúhelníky s povoleným odvozením, umístění už není omezené na naskenované oblasti.
Obrázek č. 2 – čtyřúhelníky s povoleným odvozením, umístění už není omezené na naskenované oblasti.


Pokud má vaše aplikace v úmyslu umístit 2D nebo 3D hologramy na pevnou strukturu vašeho prostředí, je pro umístění vhodnější jednoduchost a pohodlí sceneQuads než výpočet těchto informací ze sítě prostorového mapování. Další informace o tomto tématu najdete v referenčních informacích k sadě SCENE UNDERSTANDING SDK.

Poznámka Pro starší verze kódu umístění, který závisí na síti prostorového mapování, je možné vypočítat síť prostorového mapování společně s SceneQuads nastavením nastavení EnableWorldMesh. Pokud rozhraní API pro porozumění scéně nesplňuje požadavky vaší aplikace na latenci, doporučujeme dál používat rozhraní API prostorového mapování.

Okluze

Prostorové mapování okluze zůstává nejméně latentní způsob, jak zachytit stav prostředí v reálném čase. I když to může být užitečné k zajištění okluze ve vysoce dynamických scénách, měli byste zvážit pochopení scény z několika důvodů. Pokud použijete síť prostorového mapování vygenerovanou službou Scene Understanding, můžete požadovat data z prostorového mapování, která by nebyla uložena v místní mezipaměti a nebyla dostupná z rozhraní API pro vnímání. Použití prostorového mapování pro okluzi společně s ne watertight meshy poskytne další hodnotu, konkrétně dokončování struktury nenaskenovaných místností.

Pokud vaše požadavky tolerují zvýšenou latenci principů scény, měli by vývojáři aplikací zvážit použití sítě pro pochopení vodomyslné scény a sítě prostorového mapování v souladu s plánovými reprezentacemi. To by poskytovalo scénář "nejlepší z obou světů", kdy se zjednodušené a nenásocené okluze ozářují jemnější neplanární geometrií, která poskytuje nejrealističtější možné mapy okluze.

Fyzika

Principy scén generují nenávasné sítě, které rozkládaly prostor sémantikou, konkrétně k řešení mnoha omezení fyziky, které sítě prostorového mapování zasažují. Watertight structures ensure physics ray casts always hit, and semantic decomposition allows for simpler generation of nav meshes for indoor navigation. Jak je popsáno v části o okluzi, vytvořením scény pomocí EnableSceneObjectMeshes a EnableWorldMesh se vytvoří co nejvíce fyzicky úplná síť. Vlastnost watertight sítě prostředí zabraňuje neúspěšnému přístupům k povrchům u testů. Data ze sítě zajistí interakci fyziky se všemi objekty ve scéně, a ne jenom se strukturou místnosti.

Planar meshes decomposed by semantic class are ideal constructs for navigation and path planning, easing many of the issues described in the Spatial mapping navigation overview. Objekty SceneMesh vypočítané ve scéně se skládají podle typu povrchu, což zajišťuje, že generování nav-mesh je omezené na povrchy, které je možné projít. Kvůli jednoduchosti podlahových struktur je možné dynamickou generování nav-mesh ve 3D motorech, jako je Unity, dosáhnout v závislosti na požadavcích v reálném čase.

Generování přesných navigačních sítí v současné době stále vyžaduje další zpracování, konkrétně aplikace musí pořád projektovat výstupy na podlaží, aby se zajistilo, že navigace nepřejde přes nepotřesné prvky nebo tabulky a tak dále. Nejpřesnější způsob, jak toho dosáhnout, je projektovat data ze sítě World Mesh, která se poskytují, pokud se scéna vypočítá pomocí příznaku EnableWorldMesh.

Vizualizace

I když je možné vizualizaci prostorového mapování použít pro zpětnou vazbu k prostředí v reálném čase, existuje mnoho scénářů, kdy jednoduchost planárních a nenákresných objektů poskytuje vyšší výkon nebo vizuální kvalitu. Techniky stínové projekce a uzemnění popsané pomocí prostorového mapování mohou být při promítání na planární povrchy poskytované čtyřúhelníky nebo planární a nenáročnou smísí. To platí zejména v prostředích a scénářích, kde důkladná předběžná kontrola není optimální, protože scény se odvodí a kompletní prostředí a planární předpoklady minimalizují artefakty.

Kromě toho je celkový počet povrchů vrácených prostorovým mapováním omezený interní prostorovou mezipamětí, zatímco verze sítě Prostorové mapování principů scény může přistupovat k datům prostorového mapování, která nejsou uložená v mezipaměti. Z tohoto důvodu je porozumění scéně lépe vhodné pro zachytávání reprezentací sítě pro větší prostory (například větší než jedna místnost) pro vizualizaci nebo další zpracování sítě. Světová síť vrácená pomocí EnableWorldMesh bude mít konzistentní úroveň podrobností, což může vést k důležitější vizualizaci, pokud se vykreslí jako wireframe.

Viz také

Porozumění scéně Mixed Reality vývojářům strukturovaná reprezentace prostředí vysoké úrovně, která je navržená tak, aby byl vývoj pro přehledné aplikace intuitivní. Porozumění scéně to dělá kombinací výkonu existujících prostředí runtime hybridní reality, jako jsou vysoce přesné, ale méně strukturované prostorové mapování a nové moduly runtime řízené AI. Zkombinováním těchto technologií generuje princip scény reprezentace 3D prostředí, která jsou podobná těm, která jste možná používali v architekturách, jako je Unity nebo ARKit/ARCore. Vstupní bod porozumění scéně začíná pozorovatelem scény, který volá vaše aplikace k výpočtu nové scény. V současné době může tato technologie vygenerovat 3 různé, ale související kategorie objektů:

  • Zjednodušené a nenávasné sítě prostředí, které odvodí strukturu planárních místností bez nepotřesitelných struktury
  • Oblasti roviny pro umístění, které nazýváme čtyřúhelníky
  • Snímek sítě prostorového mapování, která je zarovnána s daty čtyřúhelníků/watertightu, která se vynořuje

Síť prostorového mapování, označené planární povrchy, watertight mesh

Cílem tohoto dokumentu je poskytnout přehled scénáře a objasnit vztah, který sdílí funkce Porozumění scéně a Prostorové mapování. Pokud se chcete podívat na princip scény v akci, podívejte se na následující ukázku našeho videa Návrh Hologramy – Prostorové povědomí:

Toto video bylo pořízeno z aplikace "Návrh Hologramy" HoloLens 2. Úplné prostředí si můžete stáhnout a využívat tady.

Vývoj s porozuměním scéně

Tento článek slouží pouze k seznámení s moduly runtime a koncepty služby Scene Understanding. Pokud hledáte dokumentaci k vývoji pomocí funkce Scene Understanding, může vás zajímat následující články:

Přehled sady Scene Understanding SDK

Ukázkovou aplikaci Scene Understanding Sample si můžete stáhnout z ukázkového GitHub webu:

Ukázka principů scény

Pokud nemáte zařízení a chcete získat přístup k ukázkovým scénám, abyste si prostředí Scene Understanding vyzkoušet, jsou ve složce s ukázkovým assetem scény:

Ukázkové scény s principy scény

Sada SDK

Pokud hledáte konkrétní podrobnosti o vývoji pomocí funkce Scene Understanding, podívejte se do dokumentace s přehledem sady SCENE Understanding SDK.

Ukázka

Podpora zařízení