Inicio rápido: Análisis de imágenes

Precaución

El servicio Image Analysis 4.0 de Azure Vision in Foundry Tools está en desuso y se retirará el 25 de septiembre de 2028, después de lo cual se producirá un error en las llamadas realizadas al servicio. Se recomienda cambiar a una de las alternativas disponibles que se describen en la guía de migración.

En este artículo se explica cómo configurar un script de etiquetado de imágenes básico mediante la API REST image Analysis o las bibliotecas cliente. El servicio Analyze Image proporciona algoritmos de INTELIGENCIA ARTIFICIAL para procesar imágenes y devolver información sobre sus características visuales. Siga estos pasos para instalar un paquete en la aplicación y probar el código de ejemplo.

Use la biblioteca cliente image Analysis para C# para analizar una imagen para las etiquetas de contenido. En este inicio rápido se define un método , AnalyzeImageUrlque usa el objeto de cliente para analizar una imagen remota e imprimir los resultados.

Reference documentation | Library source code | Package (NuGet) | Samples

Propina

También puede analizar una imagen local. Consulte los métodos ComputerVisionClient , como AnalyzeImageInStreamAsync. O bien, consulte el código de ejemplo en GitHub para ver escenarios que implican imágenes locales.

Propina

Analyze Image API puede realizar muchas operaciones diferentes que no generen etiquetas de imagen. Consulte la guía de procedimientos de Análisis de imágenes para ver ejemplos que muestran todas las características disponibles.

Requisitos previos

  • Una suscripción Azure. Puede crear uno de forma gratuita.
  • La IDE de Visual Studio o la versión actual de .NET Core.
  • Una vez que tenga la suscripción de Azure, cree un recurso Computer Vision en el portal de Azure para obtener la clave y el punto de conexión. Después de implementarla, seleccione Ir al recurso.
    • Necesita la clave y el punto de conexión del recurso que cree para conectar la aplicación a Azure Vision en Foundry Tools.
    • Puede usar el plan de tarifa gratis (F0) para probar el servicio y actualizarlo más adelante a un nivel de pago para producción.

Creación de variables de entorno

En este ejemplo, escriba las credenciales en variables de entorno en el equipo local que ejecuta la aplicación.

Vaya al portal de Azure. Si el recurso que creó en la sección Requisitos previos se implementó correctamente, seleccione Ir al recurso en Pasos siguientes. Puede encontrar la clave y el punto de conexión en Administración de recursos en la página de Claves y punto de conexión del recurso Face. La clave de recurso no es la misma que el identificador de suscripción de Azure.

Para establecer la variable de entorno para la clave y el punto de conexión, abra una ventana de consola y siga las instrucciones del sistema operativo y el entorno de desarrollo.

  • Para establecer la variable de entorno VISION_KEY, reemplace <your_key> con una de las claves para su recurso.
  • Para establecer la variable de entorno VISION_ENDPOINT, reemplace <your_endpoint> con el punto de conexión para su recurso.

Importante

Se recomienda la autenticación de Microsoft Entra ID con identidades administradas para los recursos de Azure para evitar almacenar credenciales en sus aplicaciones que se ejecutan en la nube.

Use las claves de API con precaución. No incluya la clave de API directamente en el código y nunca la publique públicamente. Si usa claves de API, almacénelas de forma segura en Azure Key Vault, gire las claves periódicamente y restrinja el acceso a Azure Key Vault mediante el control de acceso basado en rol y las restricciones de acceso de red. Para obtener más información sobre el uso de claves de API de forma segura en las aplicaciones, consulte CLAVESAPI con Azure Key Vault.

Para obtener más información sobre la seguridad de los servicios de inteligencia artificial, consulte Authenticate requests to Servicios de Azure AI (Solicitudes de autenticación a Servicios de Azure AI.

setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>

Después de agregar las variables de entorno, es posible que tenga que reiniciar los programas en ejecución que leerán las variables de entorno, incluida la ventana de la consola.

Analizar imagen

  1. Cree una nueva aplicación de C#.

    Con Visual Studio, cree una nueva aplicación .NET Core.

    Instalación de la biblioteca cliente

    Después de crear un nuevo proyecto, instale la biblioteca cliente haciendo clic con el botón derecho en la solución del proyecto en el Explorador de soluciones y seleccionando Administrar paquetes NuGet. En el administrador de paquetes que abre seleccione Browse, active Include prerelease y busque Microsoft.Azure.CognitiveServices.Vision.ComputerVision. Seleccione versión 7.0.0y, a continuación, Instalar.

  2. En el directorio del proyecto, abra el archivo Program.cs en el editor o IDE que prefiera. Pegue el código siguiente:

    using System;
    using System.Collections.Generic;
    using Microsoft.Azure.CognitiveServices.Vision.ComputerVision;
    using Microsoft.Azure.CognitiveServices.Vision.ComputerVision.Models;
    using System.Threading.Tasks;
    using System.IO;
    using Newtonsoft.Json;
    using Newtonsoft.Json.Linq;
    using System.Threading;
    using System.Linq;
    
    namespace ComputerVisionQuickstart
    {
        class Program
        {
            // Add your Computer Vision key and endpoint
            static string key = Environment.GetEnvironmentVariable("VISION_KEY");
            static string endpoint = Environment.GetEnvironmentVariable("VISION_ENDPOINT");
    
            // URL image used for analyzing an image (image of puppy)
            private const string ANALYZE_URL_IMAGE = "https://raw.githubusercontent.com/Azure-Samples/cognitive-services-sample-data-files/master/ComputerVision/Images/landmark.jpg";
    
            static void Main(string[] args)
            {
                Console.WriteLine("Azure Cognitive Services Computer Vision - .NET quickstart example");
                Console.WriteLine();
    
                // Create a client
                ComputerVisionClient client = Authenticate(endpoint, key);
    
                // Analyze an image to get features and other properties.
                AnalyzeImageUrl(client, ANALYZE_URL_IMAGE).Wait();
            }
    
            /*
             * AUTHENTICATE
             * Creates a Computer Vision client used by each example.
             */
            public static ComputerVisionClient Authenticate(string endpoint, string key)
            {
                ComputerVisionClient client =
                  new ComputerVisionClient(new ApiKeyServiceClientCredentials(key))
                  { Endpoint = endpoint };
                return client;
            }
           
            public static async Task AnalyzeImageUrl(ComputerVisionClient client, string imageUrl)
            {
                Console.WriteLine("----------------------------------------------------------");
                Console.WriteLine("ANALYZE IMAGE - URL");
                Console.WriteLine();
    
                // Creating a list that defines the features to be extracted from the image. 
    
                List<VisualFeatureTypes?> features = new List<VisualFeatureTypes?>()
                {
                    VisualFeatureTypes.Tags
                };
    
                Console.WriteLine($"Analyzing the image {Path.GetFileName(imageUrl)}...");
                Console.WriteLine();
                // Analyze the URL image 
                ImageAnalysis results = await client.AnalyzeImageAsync(imageUrl, visualFeatures: features);
    
                // Image tags and their confidence score
                Console.WriteLine("Tags:");
                foreach (var tag in results.Tags)
                {
                    Console.WriteLine($"{tag.Name} {tag.Confidence}");
                }
                Console.WriteLine();
            }
        }
    }
    

    Importante

    Se recomienda la autenticación de Microsoft Entra ID con identidades administradas para los recursos de Azure para evitar almacenar credenciales en sus aplicaciones que se ejecutan en la nube.

    Use las claves de API con precaución. No incluya la clave de API directamente en el código y nunca la publique públicamente. Si usa claves de API, almacénelas de forma segura en Azure Key Vault, gire las claves periódicamente y restrinja el acceso a Azure Key Vault mediante el control de acceso basado en rol y las restricciones de acceso de red. Para obtener más información sobre el uso de claves de API de forma segura en las aplicaciones, consulte CLAVESAPI con Azure Key Vault.

    Para obtener más información sobre la seguridad de los servicios de inteligencia artificial, consulte Authenticate requests to Servicios de Azure AI (Solicitudes de autenticación a Servicios de Azure AI.

  3. Ejecución de la aplicación

    Ejecute la aplicación haciendo clic en el botón Depurar de la parte superior de la ventana del IDE.


Salida

La salida de la operación debe tener un aspecto similar al del ejemplo siguiente.

----------------------------------------------------------
ANALYZE IMAGE - URL

Analyzing the image sample16.png...

Tags:
grass 0.9957543611526489
dog 0.9939157962799072
mammal 0.9928356409072876
animal 0.9918001890182495
dog breed 0.9890419244766235
pet 0.974603533744812
outdoor 0.969241738319397
companion dog 0.906731367111206
small greek domestic dog 0.8965123891830444
golden retriever 0.8877675533294678
labrador retriever 0.8746421337127686
puppy 0.872604250907898
ancient dog breeds 0.8508287668228149
field 0.8017748594284058
retriever 0.6837497353553772
brown 0.6581960916519165

Limpieza de recursos

Si desea limpiar y quitar una suscripción a Foundry Tools, puede eliminar el recurso o el grupo de recursos. Al eliminar el grupo de recursos también se eliminan los demás recursos asociados.

En este inicio rápido, ha aprendido a instalar la biblioteca cliente image Analysis y a realizar llamadas básicas de análisis de imágenes. A continuación, obtenga más información sobre las características de Image Analysis API.

Use la biblioteca cliente image Analysis para Python para analizar una imagen remota para las etiquetas de contenido.

Propina

También puede analizar una imagen local. Vea los métodos ComputerVisionClientOperationsMixin , como analyze_image_in_stream. O bien, consulte el código sample en GitHub para ver escenarios que implican imágenes locales.

Propina

Analyze Image API puede realizar muchas operaciones diferentes que no generen etiquetas de imagen. Consulte la guía de procedimientos de Análisis de imágenes para ver ejemplos que muestran todas las características disponibles.

Reference documentation | Library source code | Package (PiPy) | Samples

Requisitos previos

  • Una suscripción Azure. Puede crear uno de forma gratuita.
  • Python 3.x.
    • La instalación de Python debe incluir pip. Puede comprobar si ha instalado pip mediante la ejecución pip --version en la línea de comandos. Obtenga pip instalando la versión más reciente de Python.
  • Una vez que tenga la suscripción de Azure, cree un recurso Computer Vision en el portal de Azure para obtener la clave y el punto de conexión. Después de implementarla, seleccione Ir al recurso.
    • Necesita la clave y el punto de conexión del recurso que cree para conectar la aplicación a Azure Vision en Foundry Tools.
    • Puede usar el plan de tarifa gratis (F0) para probar el servicio y actualizarlo más adelante a un nivel de pago para producción.

Creación de variables de entorno

En este ejemplo, escriba las credenciales en variables de entorno en el equipo local que ejecuta la aplicación.

Vaya al portal de Azure. Si el recurso que creó en la sección Requisitos previos se implementó correctamente, seleccione Ir al recurso en Pasos siguientes. Puede encontrar la clave y el punto de conexión en Administración de recursos en la página de Claves y punto de conexión del recurso Face. La clave de recurso no es la misma que el identificador de suscripción de Azure.

Para establecer la variable de entorno para la clave y el punto de conexión, abra una ventana de consola y siga las instrucciones del sistema operativo y el entorno de desarrollo.

  • Para establecer la variable de entorno VISION_KEY, reemplace <your_key> con una de las claves para su recurso.
  • Para establecer la variable de entorno VISION_ENDPOINT, reemplace <your_endpoint> con el punto de conexión para su recurso.

Importante

Se recomienda la autenticación de Microsoft Entra ID con identidades administradas para los recursos de Azure para evitar almacenar credenciales en sus aplicaciones que se ejecutan en la nube.

Use las claves de API con precaución. No incluya la clave de API directamente en el código y nunca la publique públicamente. Si usa claves de API, almacénelas de forma segura en Azure Key Vault, gire las claves periódicamente y restrinja el acceso a Azure Key Vault mediante el control de acceso basado en rol y las restricciones de acceso de red. Para obtener más información sobre el uso de claves de API de forma segura en las aplicaciones, consulte CLAVESAPI con Azure Key Vault.

Para obtener más información sobre la seguridad de los servicios de inteligencia artificial, consulte Authenticate requests to Servicios de Azure AI (Solicitudes de autenticación a Servicios de Azure AI.

setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>

Después de agregar las variables de entorno, es posible que tenga que reiniciar los programas en ejecución que leerán las variables de entorno, incluida la ventana de la consola.

Analizar imagen

  1. Instale la biblioteca cliente.

    Puede instalar la biblioteca cliente con:

    pip install --upgrade azure-cognitiveservices-vision-computervision
    

    Instale también la biblioteca Pillow.

    pip install pillow
    
  2. Cree una nueva aplicación de Python.

    Cree un nuevo archivo Python. Puede asignarle un nombre quickstart-file.py, por ejemplo.

  3. Abra quickstart-file.py en un editor de texto o IDE y pegue el código siguiente.

    from azure.cognitiveservices.vision.computervision import ComputerVisionClient
    from azure.cognitiveservices.vision.computervision.models import OperationStatusCodes
    from azure.cognitiveservices.vision.computervision.models import VisualFeatureTypes
    from msrest.authentication import CognitiveServicesCredentials
    
    from array import array
    import os
    from PIL import Image
    import sys
    import time
    
    '''
    Authenticate
    Authenticates your credentials and creates a client.
    '''
    subscription_key = os.environ["VISION_KEY"]
    endpoint = os.environ["VISION_ENDPOINT"]
    
    computervision_client = ComputerVisionClient(endpoint, CognitiveServicesCredentials(subscription_key))
    '''
    END - Authenticate
    '''
    
    '''
    Quickstart variables
    These variables are shared by several examples
    '''
    # Images used for the examples: Describe an image, Categorize an image, Tag an image, 
    # Detect faces, Detect adult or racy content, Detect the color scheme, 
    # Detect domain-specific content, Detect image types, Detect objects
    images_folder = os.path.join (os.path.dirname(os.path.abspath(__file__)), "images")
    remote_image_url = "https://raw.githubusercontent.com/Azure-Samples/cognitive-services-sample-data-files/master/ComputerVision/Images/landmark.jpg"
    '''
    END - Quickstart variables
    '''
    
    
    '''
    Tag an Image - remote
    This example returns a tag (key word) for each thing in the image.
    '''
    print("===== Tag an image - remote =====")
    # Call API with remote image
    tags_result_remote = computervision_client.tag_image(remote_image_url )
    
    # Print results with confidence score
    print("Tags in the remote image: ")
    if (len(tags_result_remote.tags) == 0):
        print("No tags detected.")
    else:
        for tag in tags_result_remote.tags:
            print("'{}' with confidence {:.2f}%".format(tag.name, tag.confidence * 100))
    print()
    '''
    END - Tag an Image - remote
    '''
    print("End of Computer Vision quickstart.")
    
  4. Ejecute la aplicación usando el comando python en su archivo de inicio.

    python quickstart-file.py
    

Salida

La salida de la operación debe tener un aspecto similar al del ejemplo siguiente.

===== Tag an image - remote =====
Tags in the remote image:
'outdoor' with confidence 99.00%
'building' with confidence 98.81%
'sky' with confidence 98.21%
'stadium' with confidence 98.17%
'ancient rome' with confidence 96.16%
'ruins' with confidence 95.04%
'amphitheatre' with confidence 93.99%
'ancient roman architecture' with confidence 92.65%
'historic site' with confidence 89.55%
'ancient history' with confidence 89.54%
'history' with confidence 86.72%
'archaeological site' with confidence 84.41%
'travel' with confidence 65.85%
'large' with confidence 61.02%
'city' with confidence 56.57%

End of Azure Vision quickstart.

Limpieza de recursos

Si desea limpiar y quitar una suscripción a Foundry Tools, puede eliminar el recurso o el grupo de recursos. Al eliminar el grupo de recursos también se eliminan los demás recursos asociados.

Paso siguiente

En este inicio rápido, ha aprendido a instalar la biblioteca cliente image Analysis y a realizar llamadas básicas de análisis de imágenes. A continuación, obtenga más información sobre las características de Analyze Image API.

Use la biblioteca cliente de Análisis de imágenes para Java para analizar una imagen remota para etiquetas, descripción de texto, caras, contenido para adultos, etc.

Propina

También puede analizar una imagen local. Vea los métodos ComputerVision , como AnalyzeImage. O bien, consulte el código sample en GitHub para ver escenarios que implican imágenes locales.

Propina

Analyze Image API puede realizar muchas operaciones diferentes que no generen etiquetas de imagen. Consulte la guía de procedimientos de Análisis de imágenes para ver ejemplos que muestran todas las características disponibles.

Reference documentation | Library source code |Artifact (Maven) | Samples

Requisitos previos

  • Una suscripción Azure. Puede crear uno de forma gratuita.
  • La versión actual del kit de desarrollo de Java (JDK).
  • La herramienta de compilación de Gradle u otro administrador de dependencias.
  • Una vez que tenga la suscripción de Azure, cree un recurso Computer Vision en el portal de Azure para obtener la clave y el punto de conexión. Después de implementarla, seleccione Ir al recurso.
    • Necesita la clave y el punto de conexión del recurso que cree para conectar la aplicación a la Azure Vision en Foundry Tools.
    • Puede usar el plan de tarifa gratis (F0) para probar el servicio y actualizarlo más adelante a un nivel de pago para producción.

Creación de variables de entorno

En este ejemplo, escriba las credenciales en variables de entorno en el equipo local que ejecuta la aplicación.

Vaya al portal de Azure. Si el recurso que creó en la sección Requisitos previos se implementó correctamente, seleccione Ir al recurso en Pasos siguientes. Puede encontrar la clave y el punto de conexión en Administración de recursos en la página de Claves y punto de conexión del recurso Face. La clave de recurso no es la misma que el identificador de suscripción de Azure.

Para establecer la variable de entorno para la clave y el punto de conexión, abra una ventana de consola y siga las instrucciones del sistema operativo y el entorno de desarrollo.

  • Para establecer la variable de entorno VISION_KEY, reemplace <your_key> con una de las claves para su recurso.
  • Para establecer la variable de entorno VISION_ENDPOINT, reemplace <your_endpoint> con el punto de conexión para su recurso.

Importante

Se recomienda la autenticación de Microsoft Entra ID con identidades administradas para los recursos de Azure para evitar almacenar credenciales en sus aplicaciones que se ejecutan en la nube.

Use las claves de API con precaución. No incluya la clave de API directamente en el código y nunca la publique públicamente. Si usa claves de API, almacénelas de forma segura en Azure Key Vault, gire las claves periódicamente y restrinja el acceso a Azure Key Vault mediante el control de acceso basado en rol y las restricciones de acceso de red. Para obtener más información sobre el uso de claves de API de forma segura en las aplicaciones, consulte CLAVESAPI con Azure Key Vault.

Para obtener más información sobre la seguridad de los servicios de inteligencia artificial, consulte Authenticate requests to Servicios de Azure AI (Solicitudes de autenticación a Servicios de Azure AI.

setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>

Después de agregar las variables de entorno, es posible que tenga que reiniciar los programas en ejecución que leerán las variables de entorno, incluida la ventana de la consola.

Analizar imagen

  1. Cree un nuevo proyecto de Gradle.

    En una ventana de consola (como cmd, PowerShell o Bash), cree un directorio para la aplicación y vaya a ella.

    mkdir myapp && cd myapp
    

    Ejecute el comando desde el gradle init directorio de trabajo. Este comando crea archivos de compilación esenciales para Gradle, incluido build.gradle.kts, que se usa en tiempo de ejecución para crear y configurar la aplicación.

    gradle init --type basic
    

    Cuando se le pida que elija un DSL, seleccione Kotlin.

  2. Instale la biblioteca cliente.

    En este inicio rápido se usa el administrador de dependencias de Gradle. Puede encontrar la biblioteca cliente e información de otros administradores de dependencias en el repositorio central de Maven.

    Busque build.gradle.kts y ábralo con su IDE o editor de texto preferidos. A continuación, copie y pegue la siguiente configuración de compilación en el archivo. Esta configuración define el proyecto como una aplicación de Java cuyo punto de entrada es la clase ImageAnalysisQuickstart. Importa la biblioteca Azure Vision.

    plugins {
        java
        application
    }
    application { 
        mainClass.set("ImageAnalysisQuickstart")
    }
    repositories {
        mavenCentral()
    }
    dependencies {
        implementation(group = "com.microsoft.azure.cognitiveservices", name = "azure-cognitiveservices-computervision", version = "1.0.9-beta")
    }
    
  3. Cree un archivo Java.

    En el directorio de trabajo, ejecute el siguiente comando para crear una carpeta de origen del proyecto:

    mkdir -p src/main/java
    

    Vaya a la nueva carpeta y cree un archivo denominado ImageAnalysisQuickstart.java.

  4. Abra ImageAnalysisQuickstart.java en el editor o IDE que prefiera y pegue el código siguiente.

    import com.microsoft.azure.cognitiveservices.vision.computervision.*;
    import com.microsoft.azure.cognitiveservices.vision.computervision.implementation.ComputerVisionImpl;
    import com.microsoft.azure.cognitiveservices.vision.computervision.models.*;
    
    import java.io.*;
    import java.nio.file.Files;
    
    import java.util.ArrayList;
    import java.util.List;
    import java.util.UUID;
    
    public class ImageAnalysisQuickstart {
    
        // Use environment variables
        static String key = System.getenv("VISION_KEY");
        static String endpoint = System.getenv("VISION_ENDPOINT");
    
        public static void main(String[] args) {
            
            System.out.println("\nAzure Cognitive Services Computer Vision - Java Quickstart Sample");
    
            // Create an authenticated Computer Vision client.
            ComputerVisionClient compVisClient = Authenticate(key, endpoint); 
    
            // Analyze local and remote images
            AnalyzeRemoteImage(compVisClient);
    
        }
    
        public static ComputerVisionClient Authenticate(String key, String endpoint){
            return ComputerVisionManager.authenticate(key).withEndpoint(endpoint);
        }
    
    
        public static void AnalyzeRemoteImage(ComputerVisionClient compVisClient) {
            /*
             * Analyze an image from a URL:
             *
             * Set a string variable equal to the path of a remote image.
             */
            String pathToRemoteImage = "https://github.com/Azure-Samples/cognitive-services-sample-data-files/raw/master/ComputerVision/Images/faces.jpg";
    
            // This list defines the features to be extracted from the image.
            List<VisualFeatureTypes> featuresToExtractFromRemoteImage = new ArrayList<>();
            featuresToExtractFromRemoteImage.add(VisualFeatureTypes.TAGS);
    
            System.out.println("\n\nAnalyzing an image from a URL ...");
    
            try {
                // Call the Computer Vision service and tell it to analyze the loaded image.
                ImageAnalysis analysis = compVisClient.computerVision().analyzeImage().withUrl(pathToRemoteImage)
                        .withVisualFeatures(featuresToExtractFromRemoteImage).execute();
    
    
                // Display image tags and confidence values.
                System.out.println("\nTags: ");
                for (ImageTag tag : analysis.tags()) {
                    System.out.printf("\'%s\' with confidence %f\n", tag.name(), tag.confidence());
                }
            }
    
            catch (Exception e) {
                System.out.println(e.getMessage());
                e.printStackTrace();
            }
        }
        // END - Analyze an image from a URL.
    
    }
    
  5. Vuelva a la carpeta raíz del proyecto y compile la aplicación con:

    gradle build
    

    Ejecútelo con el siguiente comando:

    gradle run
    

Salida

La salida de la operación debe tener un aspecto similar al del ejemplo siguiente.

Azure Vision - Java Quickstart Sample

Analyzing an image from a URL ...

Tags:
'person' with confidence 0.998895
'human face' with confidence 0.997437
'smile' with confidence 0.991973
'outdoor' with confidence 0.985962
'happy' with confidence 0.969785
'clothing' with confidence 0.961570
'friendship' with confidence 0.946441
'tree' with confidence 0.917331
'female person' with confidence 0.890976
'girl' with confidence 0.888741
'social group' with confidence 0.872044
'posing' with confidence 0.865493
'adolescent' with confidence 0.857371
'love' with confidence 0.852553
'laugh' with confidence 0.850097
'people' with confidence 0.849922
'lady' with confidence 0.844540
'woman' with confidence 0.818172
'group' with confidence 0.792975
'wedding' with confidence 0.615252
'dress' with confidence 0.517169

Limpieza de recursos

Si desea limpiar y quitar una suscripción a Foundry Tools, puede eliminar el recurso o el grupo de recursos. Al eliminar el grupo de recursos también se eliminan los demás recursos asociados.

Paso siguiente

En este inicio rápido, ha aprendido a instalar la biblioteca cliente image Analysis y a realizar llamadas básicas de análisis de imágenes. A continuación, obtenga más información sobre las características de Analyze Image API.

Use la biblioteca cliente image Analysis para JavaScript para analizar una imagen remota para etiquetas de contenido.

Propina

También puede analizar una imagen local. Vea los métodos ComputerVisionClient , como describeImageInStream. O bien, consulte el código sample en GitHub para ver escenarios que implican imágenes locales.

Propina

Analyze Image API puede realizar muchas operaciones diferentes que no generen etiquetas de imagen. Consulte la guía de procedimientos de Análisis de imágenes para ver ejemplos que muestran todas las características disponibles.

| Paquete (npm) | Ejemplos

Requisitos previos

  • Una suscripción Azure. Puede crear uno de forma gratuita.
  • La versión actual de Node.js.
  • Una vez que tenga la suscripción de Azure, cree un recurso Computer Vision en el portal de Azure para obtener la clave y el punto de conexión. Después de implementarla, seleccione Ir al recurso.
    • Necesita la clave y el punto de conexión del recurso que cree para conectar la aplicación a Azure Vision en Foundry Tools.
    • Puede usar el plan de tarifa gratis (F0) para probar el servicio y actualizarlo más adelante a un nivel de pago para producción.

Creación de variables de entorno

En este ejemplo, escriba las credenciales en variables de entorno en el equipo local que ejecuta la aplicación.

Vaya al portal de Azure. Si el recurso que creó en la sección Requisitos previos se implementó correctamente, seleccione Ir al recurso en Pasos siguientes. Puede encontrar la clave y el punto de conexión en Administración de recursos en la página de Claves y punto de conexión del recurso Face. La clave de recurso no es la misma que el identificador de suscripción de Azure.

Para establecer la variable de entorno para la clave y el punto de conexión, abra una ventana de consola y siga las instrucciones del sistema operativo y el entorno de desarrollo.

  • Para establecer la variable de entorno VISION_KEY, reemplace <your_key> con una de las claves para su recurso.
  • Para establecer la variable de entorno VISION_ENDPOINT, reemplace <your_endpoint> con el punto de conexión para su recurso.

Importante

Se recomienda la autenticación de Microsoft Entra ID con identidades administradas para los recursos de Azure para evitar almacenar credenciales en sus aplicaciones que se ejecutan en la nube.

Use las claves de API con precaución. No incluya la clave de API directamente en el código y nunca la publique públicamente. Si usa claves de API, almacénelas de forma segura en Azure Key Vault, gire las claves periódicamente y restrinja el acceso a Azure Key Vault mediante el control de acceso basado en rol y las restricciones de acceso de red. Para obtener más información sobre el uso de claves de API de forma segura en las aplicaciones, consulte CLAVESAPI con Azure Key Vault.

Para obtener más información sobre la seguridad de los servicios de inteligencia artificial, consulte Authenticate requests to Servicios de Azure AI (Solicitudes de autenticación a Servicios de Azure AI.

setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>

Después de agregar las variables de entorno, es posible que tenga que reiniciar los programas en ejecución que leerán las variables de entorno, incluida la ventana de la consola.

Analizar imagen

  1. Creación de una nueva aplicación de Node.js

    En una ventana de consola (como cmd, PowerShell o Bash), cree un directorio para la aplicación y vaya a ella.

    mkdir myapp && cd myapp
    

    Ejecute el npm init comando para crear una aplicación de nodo con un archivo package.json .

    npm init
    

    Instalación de la biblioteca cliente

    Instale el paquete npm ms-rest-azure y @azure/cognitiveservices-computervision

    npm install @azure/cognitiveservices-computervision
    

    Instale también el módulo asincrónico:

    npm install async
    

    El archivo package.json de la aplicación se actualiza con las dependencias.

    Cree un nuevo archivo, index.js.

  2. Abra index.js en un editor de texto y pegue el código siguiente.

    'use strict';
    
    const async = require('async');
    const fs = require('fs');
    const https = require('https');
    const path = require("path");
    const createReadStream = require('fs').createReadStream
    const sleep = require('util').promisify(setTimeout);
    const ComputerVisionClient = require('@azure/cognitiveservices-computervision').ComputerVisionClient;
    const ApiKeyCredentials = require('@azure/ms-rest-js').ApiKeyCredentials;
    
    /**
     * AUTHENTICATE
     * This single client is used for all examples.
     */
    const key = process.env.VISION_KEY;
    const endpoint = process.env.VISION_ENDPOINT;
    
    
    const computerVisionClient = new ComputerVisionClient(
      new ApiKeyCredentials({ inHeader: { 'Ocp-Apim-Subscription-Key': key } }), endpoint);
    /**
     * END - Authenticate
     */
    
    
    function computerVision() {
      async.series([
        async function () {
    
          /**
           * DETECT TAGS  
           * Detects tags for an image, which returns:
           *     all objects in image and confidence score.
           */
          console.log('-------------------------------------------------');
          console.log('DETECT TAGS');
          console.log();
    
          // Image of different kind of dog.
          const tagsURL = 'https://github.com/Azure-Samples/cognitive-services-sample-data-files/blob/master/ComputerVision/Images/house.jpg';
    
          // Analyze URL image
          console.log('Analyzing tags in image...', tagsURL.split('/').pop());
          const tags = (await computerVisionClient.analyzeImage(tagsURL, { visualFeatures: ['Tags'] })).tags;
          console.log(`Tags: ${formatTags(tags)}`);
    
          // Format tags for display
          function formatTags(tags) {
            return tags.map(tag => (`${tag.name} (${tag.confidence.toFixed(2)})`)).join(', ');
          }
          /**
           * END - Detect Tags
           */
          console.log();
          console.log('-------------------------------------------------');
          console.log('End of quickstart.');
    
        },
        function () {
          return new Promise((resolve) => {
            resolve();
          })
        }
      ], (err) => {
        throw (err);
      });
    }
    
    computerVision();
    
  3. Ejecute la aplicación con el comando node en su archivo de inicio rápido.

    node index.js
    

Salida

La salida de la operación debe tener un aspecto similar al del ejemplo siguiente.

-------------------------------------------------
DETECT TAGS

Analyzing tags in image... sample16.png
Tags: grass (1.00), dog (0.99), mammal (0.99), animal (0.99), dog breed (0.99), pet (0.97), outdoor (0.97), companion dog (0.91), small greek domestic dog (0.90), golden retriever (0.89), labrador retriever (0.87), puppy (0.87), ancient dog breeds (0.85), field (0.80), retriever (0.68), brown (0.66)

-------------------------------------------------
End of quickstart.

Limpieza de recursos

Si desea limpiar y quitar una suscripción a Foundry Tools, puede eliminar el recurso o el grupo de recursos. Al eliminar el grupo de recursos también se eliminan los demás recursos asociados.

Paso siguiente

En este inicio rápido, ha aprendido a instalar la biblioteca cliente image Analysis y a realizar llamadas básicas de análisis de imágenes. A continuación, obtenga más información sobre las características de Analyze Image API.

Use la API REST de análisis de imágenes para analizar una imagen para las etiquetas.

Propina

Analyze Image API puede realizar muchas operaciones diferentes que no generen etiquetas de imagen. Consulte la guía de procedimientos de Análisis de imágenes para ver ejemplos que muestran todas las características disponibles.

Nota

En este inicio rápido se usan comandos cURL para llamar a la API REST. También puede llamar a la API REST mediante un lenguaje de programación. Consulte los ejemplos de GitHub para obtener ejemplos en C#, Python, Java y JavaScript.

Requisitos previos

  • Una suscripción Azure. Puede crear uno de forma gratuita.
  • Una vez que tenga la suscripción de Azure, cree un recurso Computer Vision en el portal de Azure para obtener la clave y el punto de conexión. Después de implementarla, seleccione Ir al recurso.
    • Necesita la clave y el punto de conexión del recurso que cree para conectar la aplicación a Azure Vision en Foundry Tools.
    • Puede usar el plan de tarifa gratis (F0) para probar el servicio y actualizarlo más adelante a un nivel de pago para producción.
  • cURL instalado.

Análisis de una imagen

Para analizar una imagen para varias características visuales, siga estos pasos:

  1. Copie el comando siguiente en un editor de texto.

    curl.exe -H "Ocp-Apim-Subscription-Key: <yourKey>" -H "Content-Type: application/json" "https://westcentralus.api.cognitive.microsoft.com/vision/v3.2/analyze?visualFeatures=Tags" -d "{'url':'https://learn.microsoft.com/azure/ai-services/computer-vision/media/quickstarts/presentation.png'}"
    
  2. Realice los siguientes cambios en el comando cuando sea necesario:

    1. Reemplace el valor de <yourKey> por la clave del recurso de Computer Vision.
    2. Reemplace la primera parte de la dirección URL de solicitud (westcentralus.api.cognitive.microsoft.com) por su propia dirección URL de punto de conexión.

      Nota

      Los nuevos recursos creados después del 1 de julio de 2019 usarán nombres de subdominios personalizados. Para obtener más información y una lista completa de puntos de conexión regionales, consulte Nombres de subdominios personalizados para Las herramientas de Foundry.

    3. Opcionalmente, cambie la dirección URL de la imagen en el cuerpo de la solicitud (https://learn.microsoft.com/azure/ai-services/computer-vision/media/quickstarts/presentation.png) a la dirección URL de una imagen diferente que se va a analizar.
  3. Abra una ventana del símbolo del sistema.

  4. Pegue el comando editado curl desde el editor de texto en la ventana del símbolo del sistema y luego ejecute el comando.

Examen de la respuesta

Se devuelve una respuesta correcta en formato JSON. La aplicación de ejemplo analiza y muestra en la ventana del símbolo del sistema una respuesta satisfactoria, similar al ejemplo siguiente:

{
   "tags":[
      {
         "name":"text",
         "confidence":0.9992657899856567
      },
      {
         "name":"post-it note",
         "confidence":0.9879657626152039
      },
      {
         "name":"handwriting",
         "confidence":0.9730165004730225
      },
      {
         "name":"rectangle",
         "confidence":0.8658561706542969
      },
      {
         "name":"paper product",
         "confidence":0.8561884760856628
      },
      {
         "name":"purple",
         "confidence":0.5961999297142029
      }
   ],
   "requestId":"2788adfc-8cfb-43a5-8fd6-b3a9ced35db2",
   "metadata":{
      "height":945,
      "width":1000,
      "format":"Jpeg"
   },
   "modelVersion":"2021-05-01"
}

Paso siguiente

En este inicio rápido, ha aprendido a realizar llamadas básicas de análisis de imágenes mediante la API REST. A continuación, obtenga más información sobre las características de Analyze Image API.