Aggiungere o rimuovere fotocamere da usare con l'estensione Video Indexer di Azure AI per l'analisi in tempo reale - Anteprima

L'estensione Video Indexer di Azure AI per l'analisi in tempo reale consente di connettere fotocamere per informazioni dettagliate video live. Questa guida illustra come connettere e rimuovere fotocamere usando l'estensione.

Importante

Prima di iniziare, è necessario avere già l'estensione Video Indexer di Azure AI per l'analisi in tempo reale distribuita nell'ambiente Azure. Se non l'hai distribuito, vedi l'articolo Gestisci le estensioni di Azure Video Indexer di Intelligenza Artificiale per l'analisi in tempo reale per istruzioni sulla creazione e gestione dell'estensione.

L'analisi in tempo reale di Video Indexer può funzionare con o senza l'estensione Operazioni di Azure IoT (AIO ). Per altre informazioni su AIO, vedere Distribuire operazioni IoT di Azure in un cluster Kubernetes abilitato per Arc.

Scaricare il file di script vi_cli.sh

# Download the script
curl -fsSL -o vi_cli.sh https://raw.githubusercontent.com/Azure-Samples/azure-video-indexer-samples/refs/heads/live-private-preview/VideoIndexerEnabledByArc/live/vi_cli.sh

# Make it executable
chmod +x ./vi_cli.sh

# View help
./vi_cli.sh -h

# For the first time using the script, please run this command:
./vi_cli.sh check dependencies

Usare la CLI in tempo reale

Lo vi_cli.sh script fornisce un set completo di comandi per gestire le risorse di Video Indexer e AIO. È possibile interagire con lo script in tre modi diversi:

  • Modalità interattiva (-it)
    • Guida l'utente tramite l'input dei parametri
    • Richieste di valori obbligatori
    • Ideale per principianti
  • Argomenti della riga di comando
    • Specificare tutti i parametri nel comando
    • Adatto per l'automazione
    • Richiede conoscere i nomi dei parametri
  • Variabili di ambiente
    • Impostare i parametri comuni una sola volta
    • Riduce la lunghezza del comando

Variabili di ambiente disponibili

export VI_CLUSTER_NAME=""
export VI_CLUSTER_RESOURCE_GROUP=""
export VI_ACCOUNT_NAME=""
export VI_ACCOUNT_RESOURCE_GROUP=""

È possibile combinare gli approcci. Per esempio:

export VI_CLUSTER_NAME="<cluster-name>"
./vi_cli.sh create camera --cameraName "<camera-name>" -it

Comandi disponibili

Comando Descrizione Esempio di utilizzo
check dependencies Convalida e installa gli strumenti necessari ./vi_cli.sh check dependencies
create camera Crea una nuova fotocamera con set di impostazioni di analisi facoltativo ./vi_cli.sh create camera -it
create aep Crea un profilo di connessione della fotocamera (solo AIO) ./vi_cli.sh create aep -y (solo AIO)
create asset Crea le impostazioni di gestione dei flussi (solo AIO) ./vi_cli.sh create asset -y (solo AIO)
create preset Crea un set di impostazioni di analisi per l'elaborazione video ./vi_cli.sh create preset --presetName "<name>"
delete camera Rimuove una fotocamera e le relative risorse associate ./vi_cli.sh delete camera -y --cameraId "<id>"
delete preset Rimuove una configurazione predefinita di analisi ./vi_cli.sh delete preset -y --presetId "<id>"
upgrade extension Aggiorna la configurazione dell'estensione ./vi_cli.sh upgrade extension -it
show cameras Elenca tutte le fotocamere registrate ./vi_cli.sh show cameras -y
show presets Elenca tutti i set di impostazioni di analisi disponibili ./vi_cli.sh show presets -y
show token Recupera il token di accesso corrente ./vi_cli.sh show token -y
show extension Visualizza le impostazioni correnti dell'estensione ./vi_cli.sh show extension -it
show account Mostra i dettagli dell'account Video Indexer ./vi_cli.sh show account -it

Opzioni di comando

Option Descrizione Obbligatorio
-y, --yes Ignorare le richieste di conferma No
-h, --help Mostra assistenza e esempi di comando No
-it, --interactive Abilitare l'input dei parametri interattivi No
-aio, --aio-enabled Abilitare l'integrazione di Operazioni di Azure IoT No
-live, --live-enabled Abilitare la funzionalità di streaming live No
-media, --media-enabled Abilitare la funzionalità file multimediali No
--clusterName Nome del cluster Sì ¹
--clusterResourceGroup Gruppo di risorse del cluster Sì ¹
--accountName Nome dell'account Video Indexer Sì ¹
--accountResourceGroup Gruppo di risorse dell'account Video Indexer Sì ¹
--cameraName Nome della fotocamera Sì ¹
--cameraAddress Indirizzo RTSP della fotocamera Sì ¹
--presetName Nome del set di impostazioni No
--presetId ID del set di impostazioni Sì ¹
--cameraId ID della fotocamera Sì ¹
--cameraDescription Descrizione della fotocamera No
--cameraStreamingEnabled Abilitare lo streaming per la fotocamera No
--cameraRecordingEnabled Abilitare la registrazione per la fotocamera No
--cameraUsername Nome utente per l'autenticazione della fotocamera (solo AIO) No
--cameraPassword Password per l'autenticazione della fotocamera (solo AIO) No

¹ Obbligatorio per la maggior parte dei comandi a meno che non si usi la modalità interattiva (-it)

Annotazioni

Per accedere alla modalità interattiva, usare il -it flag con qualsiasi comando che richiede i parametri necessari.

Convalida dei prerequisiti

Lo script convalida automaticamente:

  • Dipendenze obbligatorie (az, jq, curl)
  • Versione dell'interfaccia della riga di comando di Azure (>= 2.64.0)
  • Estensioni dell'interfaccia della riga di comando di Azure necessarie (azure-iot-ops, connectedk8s, k8s-extension, customlocation)
  • Token e accesso di Azure validi
  • Registrazione del provider di risorse di Azure

Gestire l'estensione Video Indexer

Mostra le impostazioni correnti dell'estensione:

./vi_cli.sh show extension -it

Aggiornare le impostazioni correnti dell'estensione:

./vi_cli.sh upgrade extension -it

Questo comando in modalità interattiva chiede di:

  • Abilitare lo streaming live? (vero/falso)
  • Abilitare File multimediali? (vero/falso)

Aggiornare le impostazioni dell'estensione (abilitare sia file multimediali che modalità live):

./vi_cli.sh upgrade extension \
--clusterName "<your-cluster-name>" \
--clusterResourceGroup "<your-cluster-resource-group>" \
--accountName "<your-account-name>" \
--accountResourceGroup "<your-account-resource-group>" \
--live-enabled \
--media-enabled

Collegare le fotocamere all'estensione VI

Per connettere una fotocamera all'estensione Video Indexer di Azure AI (VI) per l'analisi in tempo reale, è necessario scaricare il file di script vi_cli.sh e quindi eseguirlo con i parametri necessari. Lo script consente di connettere le fotocamere all'estensione VI, abilitando le funzionalità di analisi video in tempo reale.

Scegliere quindi una delle opzioni per connettere le fotocamere, selezionare il metodo preferito:

  • Connettere le fotocamere a VI e ad Operazioni di Azure IoT (AIO) contemporaneamente.
  • Collegare le fotocamere solo a VI.

Annotazioni

Quando si connettono fotocamere all'estensione, assicurarsi di non superare il limite specificato di fotocamere. Il numero di fotocamere supportate in un'unica estensione dipende dalla GPU usata e dalle funzionalità in esecuzione sulla fotocamera.

Scenario \ GPU Fotocamere per GPU A10 Fotocamere per GPU V100 Fotocamere per GPU A100 Fotocamere per GPU H100
Streaming + Registrazione + Informazioni dettagliate 6 2 8 11
Streaming e informazioni dettagliate 7 2 11 12
Solo approfondimenti 7 2 16 16
Limite rigido 8 4 16 16

Connettere una fotocamera con AIO

La connessione delle fotocamere al sistema VI tramite AIO richiede prima di tutto di configurare le fotocamere pertinenti affinché funzionino con AIO e poi creare gli asset AIO richiesti e i profili degli endpoint degli asset. Usare il comando seguente per creare una fotocamera con integrazione AIO completa.

./vi_cli.sh create camera -aio -y \
--cameraName "<camera-name>" \
--cameraAddress "<rtsp-camera-address>" \
--presetName "<preset-name>" \
--cameraUsername "<optional-username>" \
--cameraPassword "<optional-password>" \
--clusterName "<cluster-name>" \
--clusterResourceGroup "<cluster-resource-group>" \
--accountName "<account-name>" \
--accountResourceGroup "<account-resource-group>"

Il comando precedente esegue automaticamente i passaggi seguenti:

  1. Crea un profilo di endpoint delle risorse in AIO
  2. Crea un asset in AIO per la gestione dei flussi
  3. Crea un set di impostazioni video in Video Indexer
  4. Crea una fotocamera in Video Indexer
  5. Collega tutti i componenti per un'operazione senza interruzioni

Creare una fotocamera

Esistono due modi consigliati per creare una fotocamera:

  • Usare la modalità interattiva

    ./vi_cli.sh create camera -it
    

    La modalità interattiva è l'opzione più semplice. Lo script illustra l'immissione di tutti i parametri obbligatori.

  • Usare parametri precompilati

    ./vi_cli.sh create camera --cameraName "<camera-name>" --clusterName "<cluster-name>"
    

Creare una fotocamera con un set di impostazioni

Per abilitare l'analisi video automatica sulla fotocamera, includere il --presetName parametro durante la creazione della fotocamera. Lo script crea automaticamente un set di impostazioni che rileva:

  • Persone nel flusso video
  • Veicoli nel flusso video
./vi_cli.sh create camera -y \
--cameraName "<camera-name>" \
--cameraAddress "<rtsp-camera-address>" \
--presetName "<preset-name>" \
--clusterName "<cluster-name>" \
--clusterResourceGroup "<cluster-resource-group>" \
--accountName "<account-name>" \
--accountResourceGroup "<account-resource-group>"

Disconnettere una fotocamera senza AIO

Per eliminare una fotocamera, seguire questa procedura:

  1. Ottenere l'ID della fotocamera

    ./vi_cli.sh show cameras -y \
    --clusterName "<cluster-name>" \
    --clusterResourceGroup "<cluster-resource-group>" \
    --accountName "<account-name>" \
    --accountResourceGroup "<account-resource-group>"
    
  2. Eliminare usando l'ID della fotocamera

    ./vi_cli.sh delete camera -y \
    --cameraId "<camera-id>" \
    --clusterName "<cluster-name>" \
    --clusterResourceGroup "<cluster-resource-group>" \
    --accountName "<account-name>" \
    --accountResourceGroup "<account-resource-group>"
    

Rimuovere una fotocamera con integrazione AIO

Per rimuovere una fotocamera e tutti i relativi componenti associati:

./vi_cli.sh delete camera -aio -y \
--cameraId "<camera-id>" \
--clusterName "<cluster-name>" \
--clusterResourceGroup "<cluster-resource-group>" \
--accountName "<account-name>" \
--accountResourceGroup "<account-resource-group>"

Il comando rimuove:

  • Profilo asset dell'endpoint di AIO
  • Configurazione delle risorse di AIO
  • Telecamera di Video Indexer

Tutti i componenti vengono eliminati nell'ordine corretto per garantire la rimozione pulita.

Altri comandi

Ecco alcuni altri comandi che è possibile usare con lo script vi_cli.sh:

Elencare tutte le fotocamere

./vi_cli.sh show cameras -y \
--clusterName "<cluster-name>" \
--clusterResourceGroup "<cluster-resource-group>" \
--accountName "<account-name>" \
--accountResourceGroup "<account-resource-group>"

Elencare i set di impostazioni

./vi_cli.sh show presets -y \
--clusterName "<cluster-name>" \
--clusterResourceGroup "<cluster-resource-group>" \
--accountName "<account-name>" \
--accountResourceGroup "<account-resource-group>"

Mostra token di accesso

./vi_cli.sh show token -y \
--clusterName "<cluster-name>" \
--clusterResourceGroup "<cluster-resource-group>" \
--accountName "<account-name>" \
--accountResourceGroup "<account-resource-group>"

Mostra i dettagli dell'account

./vi_cli.sh show account -y \
--accountName "<account-name>" \
--accountResourceGroup "<account-resource-group>"