Savant, framework do analizy wideo

Nauczyli

ramowy Savant

Systemy obserwacji i rozpoznania nie są nowością Nie jest to nowość, ponieważ systemy te były używane przez wiele lat i ewoluowały wraz z ulepszeniami zarówno w zakresie sprzętu, jak i oprogramowania.

Dwa lata temu Pisałem trochę na blogu o OpenCV, bezpłatna wieloplatformowa biblioteka wizji komputerowej (możesz sprawdzić szczegóły artykułu W poniższym linku), co w tamtym czasie wydawało mi się niezwykle interesujące, ponieważ można było je zaimplementować na Raspberry Pi, a miałem w tamtym czasie zwyczaj testowania dużej liczby projektów i systemów na moim RPi.

otwórzCV
Podobne artykuł:
OpenCV biblioteka do rozpoznawania obiektów w obrazach i kamerach

Powód, dla którego o tym wspomniałem i starając się nie odbiegać od tematu dzisiejszego wpisu, jest to, że wielu uważa, że ​​wdrożenie systemu tego typu może być niezwykle kosztowne lub nawet bardzo skomplikowane. Co w rzeczywistości nie jest do pewnego momentu, ponieważ można wspierać projekty open source, ale wymaga pewnej wiedzy i przede wszystkim cierpliwości.

Dlatego dzisiaj Porozmawiajmy o takim projekcie i to osobiście wydaje się bardzo dobre i potężne. Projekt którego będziemy mówić o Savant, który jest frameworkiem napisanym w Pythonie i który sprawia, że ​​NVIDIA DeepStream jest łatwiejsza w użyciu dla inżynierów zajmujących się uczeniem maszynowym

Savant jest framework na bardzo wysokim poziomie na szczycie DeepStream, który ukrywa wszystkie elementy wewnętrzne Gstreamera przed programistą i zapewnia praktyczne narzędzia do wdrażania strumieniowych aplikacji AI w prawdziwym życiu. Wykorzystuje standardowy model Nvidia PeopleNet do wykrywania ludzi i ich twarzy a zwłaszcza w miejscach, w których obowiązują przepisy dotyczące prywatności, ramy umożliwiają śledzenie i zamazywanie twarzy.

Charakterystyka które wyróżniają się na tle Savanta to np niesamowicie szybkie wnioskowanie, Ponieważ jest oparta na Nvidia DeepStream i zapewnia wydajność na sprzęcie Nvidia, która jest kompatybilna z akceleratorami centrów danych, profesjonalnymi płytami głównymi, komputerami stacjonarnymi i NVIDIA Jetson.

Inną cechą jest to, że ma Obsługa integracji OpenCV CUDA dzięki któremu możesz zastosować filtry OpenCV CUDA i wydajnie pracować z rastrami GpuMat bez obciążania pamięci RAM procesora ciężkimi ramkami.

Poza tym, ma interfejs API przesyłania strumieniowego co pozwala Savantowi działać jako serwer wnioskowania za pośrednictwem 0MQ i Apache AVRO. Dzięki temu dane transmisyjne są dostarczane do serwera i odbierane z niego za pomocą adapterów.

Z innych cech które wyróżniają się na tle Savanta:

  • Obsługa Pythona i ML.
  • Framework jest dostępny jako kontenery Docker dla środowisk wykonawczych x86 i Nvidia Jetson.
  • Działa na Edge i Core
  • Operacje i pojemność o niskim opóźnieniu, Savant obsługuje korzystne operacje o niskim opóźnieniu
  • Adaptery umożliwiające dostęp do różnych źródeł multimediów, takich jak RTSP lub pliki wideo
  • Pozwala budować potoki dla środowisk, w których przetwarzanie uwzględniające rotację ma kluczowe znaczenie.

Jeśli chodzi o realizację projektu, warto wiedzieć, że zarówno Savant, jak i jego adaptery są dostarczane jako obrazy Dockera. Aby zaimplementować potok, bierzesz obraz podstawowy, dodajesz modele AI i niestandardowy kod z dodatkowymi zależnościami, a następnie budujesz wynikowy obraz. Niektóre potoki, które nie wymagają dodatkowych zależności, można zaimplementować, po prostu przypisując katalogi z modelami i funkcjami użytkownika w obrazie dokera.

W przypadku części konfiguracji środowiska Savant wymagane jest posiadanie już zainstalowanych niektórych zależności i narzędzi, ponieważ niezwykle konieczne jest spełnienie zależności DeepStream.

Zależności to:

  • odrzutowiec
  • git-lfs
  • curl
  • doker
  • sterowniki nvidii
  • Zestaw narzędzi kontenera Nvidia

Ponieważ proces wdrażania środowiska wymaga wiele, zapraszam jeśli jesteś zainteresowany, zapoznaj się z instrukcją Savant W poniższym linku. 


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.