Savant, rámec pro analýzu videa

Vědec

savant framework

Sledovací a průzkumné systémy nejsou novinkou Není to zdaleka tak nedávné, protože tyto systémy se používají již mnoho let a vyvíjely se spolu s vylepšeními jak ve vývoji hardwaru, tak softwaru.

Před dvěma lety Trochu jsem blogoval o OpenCV, bezplatná knihovna počítačového vidění pro různé platformy (můžete zkontrolovat podrobnosti článku Na následujícím odkazu), který se mi v té době zdál nesmírně zajímavý, protože se dal implementovat na Raspberry Pi a v té době jsem měl ve zvyku testovat velké množství projektů a systémů na svém RPi.

openCV
Související článek:
OpenCV knihovna pro rozpoznávání objektů v obrazech a fotoaparátech

Důvod zmínky o tomto a snaží se neodbíhat od tématu dnešního příspěvku, je to, že si mnozí myslí, že implementace systému tohoto typu může být extrémně nákladná nebo dokonce velmi komplikovaná. Což ve skutečnosti není do určité míry, protože lze podporovat open source projekty, ale vyžaduje to určité znalosti a především trpělivost.

Proto dnes Pojďme se bavit o takovém projektu a to se mi osobně zdá velmi dobré a silné. Projekt, jehož budeme hovořit o Savant, což je framework napsaný v Pythonu a díky čemuž je NVIDIA DeepStream snadněji použitelný pro inženýry strojového učení

Savant je rámec na velmi vysoké úrovni nad DeepStream, která před vývojářem skrývá veškeré vnitřnosti Gstreameru a poskytuje praktické nástroje pro implementaci streamovacích aplikací AI v reálném životě. Používá standardní model Nvidia PeopleNet k rozpoznání lidí a jejich tváří a zejména v místech, kde platí předpisy o ochraně osobních údajů, rámec umožňuje sledování a rozmazání obličejů.

Z charakteristik který se odlišuje od Savanta je například neuvěřitelně rychlý závěr, Protože je založen na Nvidia DeepStream a poskytuje výkon na hardwaru Nvidia, který je kompatibilní s akcelerátory datových center, profesionálními deskami, stolními počítači a NVIDIA Jetson.

Další vlastností je, že má Podpora integrace OpenCV CUDA se kterými můžete aplikovat OpenCV CUDA filtry a efektivně pracovat s rastry GpuMat, aniž byste museli přetěžovat těžké snímky na CPU RAM.

Kromě toho, má streamovací API což umožňuje Savantu fungovat jako inferenční server prostřednictvím 0MQ a Apache AVRO. Tím jsou přenášená data doručena na server a spotřebována z něj pomocí adaptérů.

Z dalších charakteristik které se odlišují od Savanta:

  • Podpora Pythonu a ML.
  • Rámec je k dispozici jako kontejnery Docker pro běhové prostředí x86 a Nvidia Jetson.
  • Funguje na Edge a Core
  • Operace s nízkou latencí a kapacita, savant podporuje výhodné operace s nízkou latencí
  • Adaptéry pro přístup k různým zdrojům médií, jako je RTSP nebo video soubory
  • Umožňuje vám vytvářet potrubí pro prostředí, kde je rozhodující zpracování s ohledem na rotaci.

Co se týče implementace projektu, měli byste vědět, že Savant i jeho adaptéry jsou dodávány jako obrazy Docker. Chcete-li tedy implementovat kanál, vezmete základní obrázek, přidáte modely AI a vlastní kód s dalšími závislostmi a poté vytvoříte výsledný obrázek. Některé kanály, které nevyžadují další závislosti, lze implementovat jednoduchým přiřazením adresářů s modely a uživatelskými funkcemi v obrazu dockeru.

Pro část konfigurace prostředí Savant je nutné mít již nainstalované některé závislosti a nástroje, protože je extrémně nutné, aby byly splněny závislosti DeepStream.

Závislosti jsou:

  • git
  • git-lfs
  • kadeř
  • přístavní dělník
  • ovladače nvidia
  • Nvidia Container Toolkit

Protože proces implementace prostředí vyžaduje hodně, zvu vás pokud máte zájem, podívejte se prosím do návodu Savant Na následujícím odkazu. 


Přidat jako preferovaný zdroj v Googlu