Utgivning av Savant 0.2.7, ett ramverk för datorvision och djupinlärning

Ramverket Savant 0.2.7 Python har släppts, vilket gör det lättare att använda NVIDIA DeepStream för att lösa problem relaterade till maskininlärning. Ramverket tar hand om alla tunga lyft med GStreamer eller FFmpeg, så att du kan fokusera på att bygga optimerade utdatapipelines med deklarativ syntax (YAML) och Python-funktioner. Savant låter dig skapa pipelines som fungerar lika på acceleratorer i datacentret (NVIDIA Turing, Ampere, Hopper) och på edge-enheter (NVIDIA Jetson NX, AGX Xavier, Orin NX, AGX Orin, New Nano). Med Savant kan du enkelt bearbeta flera videoströmmar samtidigt och snabbt skapa produktionsklara videoanalyspipelines med NVIDIA TensorRT. Projektkoden distribueras under Apache 2.0-licensen.

Savant 0.2.7 är den senaste versionen av funktionsändringar i 0.2.X-grenen. Framtida utgåvor i 0.2.X-grenen kommer endast att innehålla buggfixar. Utveckling av nya funktioner kommer att utföras i 0.3.X-grenen, baserad på DeepStream 6.4. Den här grenen kommer inte att stödja Jetson Xavier-familjen av enheter eftersom NVIDIA inte stöder dem i DS 6.4.

Huvudsakliga innovationer:

  • Nya användningsfall:
    • Ett exempel på att arbeta med en detekteringsmodell baserad på RT-DETR-transformatorn;
    • CUDA efterbearbetning med CuPy för YOLOV8-Seg;
    • Ett exempel på PyTorch CUDA-integrering i Savant-pipelinen;
    • Demonstration av arbete med orienterade objekt.

    Utgivning av Savant 0.2.7, ett ramverk för datorvision och djupinlärning

  • Nya funktioner:
    • Integration med Prometheus. Pipelinen kan exportera exekveringsmått till Prometheus och Grafana för prestandaövervakning och spårning. Utvecklare kan deklarera anpassade mätvärden som exporteras tillsammans med systemmätvärden.
    • Buffertadapter - Implementerar en beständig transaktionsbuffert på disken för data som flyttas mellan adaptrar och moduler. Med dess hjälp kan du utveckla högbelastade pipelines som förbrukar resurser på ett oförutsägbart sätt och som motstår trafikutbrott. Adaptern exporterar dess element- och storleksdata till Prometheus.
    • Modellkompileringsläge. Moduler kan nu kompilera sina modeller i TensorRT utan att köra en pipeline.
    • PyFunc avstängningshändelsehanterare. Detta nya API gör att pipelineavstängningar kan hanteras på ett elegant sätt, vilket frigör resurser och meddelar tredje parts system att avstängningen har inträffat.
    • Ramfiltrering vid ingång och utgång. Som standard accepterar pipelinen alla bildrutor som innehåller videodata. Med in- och utfiltrering kan utvecklare filtrera data för att förhindra bearbetning.
    • Efterbearbetning av modellen på GPU. Med den nya funktionen kan utvecklare komma åt modellutgångstensorer direkt från GPU-minnet utan att ladda dem i CPU-minnet och bearbeta dem med CuPy, TorchVision eller OpenCV CUDA.
    • GPU-minnesrepresentationsfunktioner. I den här versionen tillhandahåller vi funktioner för att konvertera minnesbuffertar mellan OpenCV GpuMat, PyTorch GPU-tensorer och CuPy-tensorer.
    • API för att komma åt statistik om användningen av pipeline-köer. Savant låter dig lägga till köer mellan PyFuncs för att implementera parallell bearbetning och buffertbehandling. Det tillagda API:et ger utvecklare tillgång till köerna som distribueras i pipeline och låter dem fråga hur de används.

I nästa version (0.3.7) är det planerat att flytta till DeepStream 6.4 utan att utöka funktionaliteten. Tanken är att få en release som är helt kompatibel med 0.2.7, men baserad på DeepStream 6.4 och förbättrad teknik, men utan att bryta kompatibiliteten på API-nivå.

Källa: opennet.ru

Lägg en kommentar