Il seguente esempio di codice mostra come rilevare le persone in un utilizzando l'API Video Intelligence.
Video Intelligence è in grado di rilevare la presenza di persone in un video e monitorare gli utenti in un segmento video o video.
Rilevamento delle persone da un file in Cloud Storage
Di seguito viene illustrato come inviare una richiesta di annotazione a Video Intelligence con la funzionalità di rilevamento persone.
REST
Invia una richiesta di annotazione video
Di seguito viene illustrato come inviare una richiesta POST al
videos:annotate
. L'esempio utilizza Google Cloud CLI per creare un token di accesso. Per
istruzioni sull'installazione di gcloud CLI, consulta
Guida rapida dell'API Video Intelligence.
Vedi anche PersonDetectionConfig
.
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
- INPUT_URI: un bucket Cloud Storage che contiene
al file a cui vuoi aggiungere un'annotazione, incluso il nome. Deve
iniziano con
gs://
.
Ad esempio:
"inputUri": "gs://cloud-samples-data/video/googlework_short.mp4"
- PROJECT_NUMBER: l'identificatore numerico del tuo progetto Google Cloud
Metodo HTTP e URL:
POST https://videointelligence.googleapis.com/v1/videos:annotate
Corpo JSON della richiesta:
{ "inputUri": "INPUT_URI", "features": ["PERSON_DETECTION"], "videoContext": { "personDetectionConfig": { "includeBoundingBoxes": true, "includePoseLandmarks": true, "includeAttributes": true } } }
Per inviare la richiesta, espandi una delle seguenti opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
Se la risposta ha esito positivo, l'API Video Intelligence restituisce name
per
operativa. Quanto sopra mostra un esempio di risposta di questo tipo, in cui:
- PROJECT_NUMBER: il numero del tuo progetto
- LOCATION_ID: la regione Cloud in cui deve essere eseguita l'annotazione
posto. Le regioni cloud supportate sono:
us-east1
,us-west1
,europe-west1
,asia-east1
. Se nessuna regione è specificata, verrà determinata una regione in base alla posizione del file video. - OPERATION_ID: l'ID dell'operazione a lunga esecuzione creata
della richiesta e fornito nella risposta quando hai avviato
operativa, ad esempio
12345...
Ottieni i risultati delle annotazioni
Per recuperare il risultato dell'operazione, effettua una richiesta GET utilizzando il metodo dell'operazione restituito dalla chiamata a videos:annotate, come mostrato in nell'esempio che segue.
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
- OPERATION_NAME: il nome dell'operazione come
restituiti dall'API Video Intelligence. Il nome dell'operazione ha il formato
projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID
- PROJECT_NUMBER: l'identificatore numerico del tuo progetto Google Cloud
Metodo HTTP e URL:
GET https://videointelligence.googleapis.com/v1/OPERATION_NAME
Per inviare la richiesta, espandi una delle seguenti opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
. Le annotazioni di rilevamento degli scatti vengono restituite come elencoshotAnnotations
.
Nota: il campo done viene restituito solo quando il valore è True.
Non è incluso nelle risposte per cui l'operazione non è stata completata.
Scarica i risultati delle annotazioni
Copia l'annotazione dall'origine al bucket di destinazione: (vedi Copiare file e oggetti)
gcloud storage cp gcs_uri gs://my-bucket
Nota: se l'URI GCS di output è fornito dall'utente, l'annotazione viene archiviata nell'URI GCS.
Java
Per autenticarti a Video Intelligence, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per autenticarti a Video Intelligence, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Per autenticarti a Video Intelligence, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Linguaggi aggiuntivi
C#: Segui le Istruzioni per la configurazione di C# Nella pagina delle librerie client e poi visita Documentazione di riferimento di Video Intelligence per .NET.
PHP Segui le Istruzioni per la configurazione dei file PHP Nella pagina delle librerie client e poi visita Documentazione di riferimento di Video Intelligence per PHP.
Rubino: Segui le Istruzioni per la configurazione di Ruby Nella pagina delle librerie client e poi visita Documentazione di riferimento di Video Intelligence per Ruby.
Rilevamento persone da un file locale
L'esempio seguente utilizza il rilevamento persone per trovare entità in un video da un file video caricato dal tuo computer locale.
REST
Invia la richiesta di processo
Per eseguire il rilevamento persone su un file video locale, esegui la codifica in base64 dei contenuti
del file video. Per informazioni su come codificare in base64 i contenuti di un
consulta l'articolo Codifica Base64. Quindi, effettua una richiesta POST
videos:annotate
. Includi i contenuti con codifica base64 nel campo inputContent
campo della richiesta e specifica la funzionalità PERSON_DETECTION
.
Di seguito è riportato un esempio di richiesta POST mediante curl. L'esempio utilizza Google Cloud CLI per creare un token di accesso. Per istruzioni sull'installazione con gcloud CLI, consulta Guida rapida dell'API Video Intelligence
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
- inputContent: File video locale in formato binario
Ad esempio: "AAAAGGZ0eXBtcDQyAAAAAGlzb21tcDQyAAGVYW1vb3YAAABsbXZoZAAAAADWvhlR1r4ZUQABX5ABCOxo AAEAAAEAAAAAAA4..." - PROJECT_NUMBER: l'identificatore numerico del tuo progetto Google Cloud
Metodo HTTP e URL:
POST https://videointelligence.googleapis.com/v1/videos:annotate
Corpo JSON della richiesta:
{ "inputUri": "Local video file in binary format", "features": ["PERSON_DETECTION"], "videoContext": { "personDetectionConfig": { "includeBoundingBoxes": true, "includePoseLandmarks": true, "includeAttributes": true } } }
Per inviare la richiesta, espandi una delle seguenti opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
Se la richiesta ha esito positivo, Video Intelligence utilizzerà name
per la tua operazione. La
riportato sopra mostra un esempio di risposta di questo tipo, dove project-number
è il numero del progetto e operation-id
è l'ID dell'operazione a lunga esecuzione creata per la richiesta.
{
"name": "us-west1.17122464255125931980"
}
Ottieni i risultati
Per recuperare il risultato dell'operazione, effettua una richiesta GET
operations
e specifica il nome dell'operazione.
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
- OPERATION_NAME: il nome dell'operazione come
restituiti dall'API Video Intelligence. Il nome dell'operazione ha il formato
projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID
- PROJECT_NUMBER: l'identificatore numerico del tuo progetto Google Cloud
Metodo HTTP e URL:
GET https://videointelligence.googleapis.com/v1/OPERATION_NAME
Per inviare la richiesta, espandi una delle seguenti opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
Java
Per autenticarti a Video Intelligence, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per autenticarti a Video Intelligence, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Per autenticarti a Video Intelligence, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Linguaggi aggiuntivi
C#: Segui le Istruzioni per la configurazione di C# Nella pagina delle librerie client e poi visita Documentazione di riferimento di Video Intelligence per .NET.
PHP Segui le Istruzioni per la configurazione dei file PHP Nella pagina delle librerie client e poi visita Documentazione di riferimento di Video Intelligence per PHP.
Rubino: Segui le Istruzioni per la configurazione di Ruby Nella pagina delle librerie client e poi visita Documentazione di riferimento di Video Intelligence per Ruby.