Requisito previo: Crea un almacén de videos por lotes con un índice implementado.
Busca datos del almacén de videos por lotes en la consola
Console
Abre la pestaña Almacenes del panel de Vision de Vertex AI.
Busca el extremo de índice que deseas buscar y haz clic en Buscar recursos.
Verás una lista de videos (cada uno corresponde a un activo), así como una barra de búsqueda en la parte superior. Puedes hacer clic en un video para verlo o comenzar a buscar videos.
Para comenzar a buscar, ingresa una búsqueda de texto o sube una imagen como la búsqueda. Verás una lista de clips de video en el lado derecho de la página de resultados de la búsqueda, cada uno de los cuales corresponde a un clip de video continuo en los recursos. Los clips de video se clasifican según la relevancia para la búsqueda ingresada.
Puedes usar la sección
Filtersen el lado izquierdo de la página de resultados de la búsqueda para definir mejor tu búsqueda. Cada criterio de filtro consta de una clave de esquema de datos y el valor de anotación que deseas buscar. Después de especificar los criterios de filtro, haz clic en Buscar para ejecutar la búsqueda.
Cómo buscar datos de Batch Video Warehouse con la línea de comandos
Para buscar los videos (assets) en tu corpus (corpus), propaga el searchIndexEndpoint
cuerpo de la solicitud con el contenido que deseas encontrar.
Este contenido se presenta en varios formatos:
text_queryoimage_query: Es la consulta con la que se realiza la búsqueda.criteriaopcional: Filtra los criterios en las anotaciones proporcionadas por el usuario.
En el siguiente ejemplo, considera un corpus que contiene videos de paisajes naturales.
Para recuperar todos los recursos relevantes para "atardecer en la playa" y etiquetados con la anotación "state": "California", envía la siguiente solicitud:
LÍNEA DE REST Y CMD
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- REGIONALIZED_ENDPOINT: El extremo puede incluir un prefijo que coincida con
LOCATION_ID, comoeurope-west4-. Obtén más información sobre los extremos regionalizados. - PROJECT_NUMBER: Tu Google Cloud número de proyecto.
- LOCATION_ID: La región en la que usas Vertex AI Vision. Por ejemplo:
us-central1,europe-west4. Consulta las regiones disponibles. - INDEX_ENDPOINT_ID: Es el ID del extremo del índice de destino.
Método HTTP y URL:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID:searchIndexEndpoint
Cuerpo JSON de la solicitud:
{
"text_query": "sunset at beach",
"criteria": [
{
"field": "state",
"text_array": {
"txt_values": [
"California"
]
}
}
]
}
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json y ejecuta el siguiente comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID:searchIndexEndpoint"
PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado request.json y ejecuta el siguiente comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID:searchIndexEndpoint" | Select-Object -Expand Content
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{
"searchResultItems": [
{
"asset": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID_1"
},
{
"asset": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID_2"
}
]
}
Si tienes una imagen de un atardecer en una playa, también puedes usarla como una búsqueda. Para ello, envía la siguiente solicitud (la imagen de entrada está en formato de codificación base64):
LÍNEA DE REST Y CMD
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- REGIONALIZED_ENDPOINT: El extremo puede incluir un prefijo que coincida con
LOCATION_ID, comoeurope-west4-. Obtén más información sobre los extremos regionalizados. - PROJECT_NUMBER: Tu Google Cloud número de proyecto.
- LOCATION_ID: La región en la que usas Vertex AI Vision. Por ejemplo:
us-central1,europe-west4. Consulta las regiones disponibles. - INDEX_ENDPOINT_ID: Es el ID del extremo del índice de destino.
Método HTTP y URL:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID:searchIndexEndpoint
Cuerpo JSON de la solicitud:
{
"image_query": {
"input_image": "IMAGE_BYTES"
},
"criteria": [
{
"field": "state",
"text_array": {
"txt_values": [
"California"
]
}
}
]
}
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json y ejecuta el siguiente comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID:searchIndexEndpoint"
PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado request.json y ejecuta el siguiente comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID:searchIndexEndpoint" | Select-Object -Expand Content
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{
"searchResultItems": [
{
"asset": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID_1"
},
{
"asset": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID_2"
}
]
}