Delen via


Quickstart: Afbeeldingsanalyse

In dit artikel wordt uitgelegd hoe u een eenvoudig script voor het taggen van afbeeldingen instelt met behulp van de REST API voor afbeeldingsanalyse of clientbibliotheken. De Analyze Image-service biedt ai-algoritmen voor het verwerken van afbeeldingen en het retourneren van informatie over hun visuele functies. Volg deze stappen om een pakket te installeren in uw toepassing en de voorbeeldcode uit te proberen.

Gebruik de clientbibliotheek afbeeldingsanalyse voor C# om een afbeelding voor inhoudstags te analyseren. Deze quickstart definieert een methode, AnalyzeImageUrldie gebruikmaakt van het clientobject om een externe afbeelding te analyseren en de resultaten af te drukken.

Referentiedocumentatie | Broncode van bibliotheek | Pakket (NuGet) | Voorbeelden

Tip

U kunt ook een lokale afbeelding analyseren. Zie de ComputerVisionClient-methoden, zoals AnalyzeImageInStreamAsync. Of bekijk de voorbeeldcode op GitHub voor scenario's met betrekking tot lokale afbeeldingen.

Tip

De Analyze Image-API kan veel andere bewerkingen uitvoeren dan het genereren van afbeeldingstags. Zie de handleiding voor het analyseren van afbeeldingen voor voorbeelden waarin alle beschikbare functies worden weergegeven.

Vereisten

  • Een Azure-abonnement. U kunt er gratis een maken.
  • De Visual Studio IDE of de huidige versie van .NET Core.
  • Zodra u uw Azure-abonnement hebt, maakt u een Computer Vision-resource in Azure Portal om uw sleutel en eindpunt op te halen. Nadat de app is geïmplementeerd, selecteert u Ga naar resource.
    • U hebt de sleutel en het eindpunt nodig van de resource die u maakt om uw toepassing te verbinden met de Azure AI Vision-service.
    • U kunt de gratis prijscategorie (F0) gebruiken om de service uit te proberen, en later upgraden naar een betaalde laag voor productie.

Omgevingsvariabelen maken

In dit voorbeeld schrijft u uw referenties naar omgevingsvariabelen op de lokale computer waarop de toepassing wordt uitgevoerd.

Ga naar de Azure Portal. Als de resource die u hebt gemaakt in de sectie Vereisten is geïmplementeerd, selecteert u Ga naar de resource onder Volgende stappen. U vindt uw sleutel en eindpunt onder Resourcebeheer op de pagina Sleutels en Eindpunt. Uw resourcesleutel is niet hetzelfde als uw Azure-abonnements-id.

Als u de omgevingsvariabele voor uw sleutel en eindpunt wilt instellen, opent u een consolevenster en volgt u de instructies voor uw besturingssysteem en ontwikkelomgeving.

  • Als u de VISION_KEY omgevingsvariabele wilt instellen, vervangt u deze door <your_key> een van de sleutels voor uw resource.
  • Als u de VISION_ENDPOINT omgevingsvariabele wilt instellen, vervangt <your_endpoint> u het eindpunt voor uw resource.

Belangrijk

Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.

Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.

setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>

Nadat u de omgevingsvariabelen hebt toegevoegd, moet u mogelijk alle actieve programma's die de omgevingsvariabelen lezen, met inbegrip van het consolevenster, opnieuw opstarten.

Afbeelding analyseren

  1. Maak een nieuwe C#-toepassing.

    Maak met behulp van Visual Studio een nieuwe .NET Core-toepassing.

    De clientbibliotheek installeren

    Nadat u een nieuw project hebt gemaakt, installeert u de clientbibliotheek door met de rechtermuisknop op de projectoplossing in Solution Explorer te klikken en NuGet-pakketten beheren te selecteren. Selecteer in de package manager die wordt geopend de optie Bladeren, schakel Include prerelease in en zoek naar Microsoft.Azure.CognitiveServices.Vision.ComputerVision. Selecteer versie 7.0.0 en vervolgens Installeren.

  2. Open vanuit de projectmap het bestand Program.cs in uw favoriete editor of IDE. Plak de volgende code:

    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();
            }
        }
    }
    

    Belangrijk

    Vergeet niet de sleutel uit uw code te verwijderen wanneer u klaar bent, en maak deze sleutel nooit openbaar. Gebruik voor productie een veilige manier om uw referenties op te slaan en te openen, zoals Azure Key Vault. Zie Beveiliging van Azure AI-services voor meer informatie.

  3. De toepassing uitvoeren

    Voer de toepassing uit door boven in het IDE-venster op de knop Fouten opsporen te klikken.


Uitvoer

De uitvoer van uw bewerking moet eruitzien als in het volgende voorbeeld.

----------------------------------------------------------
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

Resources opschonen

Als u een Azure AI-servicesabonnement wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.

In deze quickstart hebt u geleerd hoe u de clientbibliotheek voor afbeeldingsanalyse installeert en eenvoudige aanroepen voor afbeeldingsanalyse uitvoert. Hierna vindt u meer informatie over de functies van de Afbeeldingsanalyse-API.

Gebruik de clientbibliotheek voor Afbeeldingsanalyse voor Python om een externe afbeelding voor inhoudstags te analyseren.

Tip

U kunt ook een lokale afbeelding analyseren. Zie de ComputerVisionClientOperationsMixin-methoden , zoals analyze_image_in_stream. Of bekijk de voorbeeldcode op GitHub voor scenario's met betrekking tot lokale afbeeldingen.

Tip

De Analyze Image-API kan veel andere bewerkingen uitvoeren dan het genereren van afbeeldingstags. Zie de handleiding voor het analyseren van afbeeldingen voor voorbeelden waarin alle beschikbare functies worden weergegeven.

Referentiedocumentatie | Broncode bibliotheek | Package (PiPy) | Voorbeelden

Vereisten

  • Een Azure-abonnement. U kunt er gratis een maken.
  • Python 3.x.
    • Uw Python-installatie moet pip bevatten. U kunt controleren of pip is geïnstalleerd door op de opdrachtregel uit te voeren pip --version . Haal pip op door de nieuwste versie van Python te installeren.
  • Zodra u uw Azure-abonnement hebt, maakt u een Computer Vision-resource in Azure Portal om uw sleutel en eindpunt op te halen. Nadat de app is geïmplementeerd, selecteert u Ga naar resource.
    • U hebt de sleutel en het eindpunt nodig van de resource die u maakt om uw toepassing te verbinden met de Azure AI Vision-service.
    • U kunt de gratis prijscategorie (F0) gebruiken om de service uit te proberen, en later upgraden naar een betaalde laag voor productie.

Omgevingsvariabelen maken

In dit voorbeeld schrijft u uw referenties naar omgevingsvariabelen op de lokale computer waarop de toepassing wordt uitgevoerd.

Ga naar de Azure Portal. Als de resource die u hebt gemaakt in de sectie Vereisten is geïmplementeerd, selecteert u Ga naar de resource onder Volgende stappen. U vindt uw sleutel en eindpunt onder Resourcebeheer op de pagina Sleutels en Eindpunt. Uw resourcesleutel is niet hetzelfde als uw Azure-abonnements-id.

Als u de omgevingsvariabele voor uw sleutel en eindpunt wilt instellen, opent u een consolevenster en volgt u de instructies voor uw besturingssysteem en ontwikkelomgeving.

  • Als u de VISION_KEY omgevingsvariabele wilt instellen, vervangt u deze door <your_key> een van de sleutels voor uw resource.
  • Als u de VISION_ENDPOINT omgevingsvariabele wilt instellen, vervangt <your_endpoint> u het eindpunt voor uw resource.

Belangrijk

Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.

Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.

setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>

Nadat u de omgevingsvariabelen hebt toegevoegd, moet u mogelijk alle actieve programma's die de omgevingsvariabelen lezen, met inbegrip van het consolevenster, opnieuw opstarten.

Afbeelding analyseren

  1. Installeer de clientbibliotheek.

    U kunt de clientbibliotheek installeren met:

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

    Installeer ook de Pillow-bibliotheek.

    pip install pillow
    
  2. Maak een nieuwe Python-toepassing.

    Maak een nieuw Python-bestand. U kunt deze bijvoorbeeld een naam quickstart-file.py.

  3. Open quickstart-file.py in een teksteditor of IDE en plak de volgende code.

    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. Voer de toepassing uit met behulp van de python opdracht in het quickstart-bestand.

    python quickstart-file.py
    

Uitvoer

De uitvoer van de bewerking moet eruitzien als in het volgende voorbeeld.

===== 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 AI Vision quickstart.

Resources opschonen

Als u een Azure AI-servicesabonnement wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.

Volgende stap

In deze quickstart hebt u geleerd hoe u de clientbibliotheek voor afbeeldingsanalyse installeert en eenvoudige aanroepen voor afbeeldingsanalyse uitvoert. Hierna vindt u meer informatie over de functies van de Analyze Image-API.

Gebruik de clientbibliotheek voor afbeeldingsanalyse voor Java om een externe afbeelding te analyseren voor tags, tekstbeschrijving, gezichten, inhoud voor volwassenen en meer.

Tip

U kunt ook een lokale afbeelding analyseren. Zie de ComputerVision-methoden , zoals AnalyzeImage. Of bekijk de voorbeeldcode op GitHub voor scenario's met betrekking tot lokale afbeeldingen.

Tip

De Analyze Image-API kan veel andere bewerkingen uitvoeren dan het genereren van afbeeldingstags. Zie de handleiding voor het analyseren van afbeeldingen voor voorbeelden waarin alle beschikbare functies worden weergegeven.

Referentiedocumentatie | Broncode bibliotheek |Artefact (Maven) | Voorbeelden

Vereisten

  • Een Azure-abonnement. U kunt er gratis een maken.
  • De huidige versie van de Java Development Kit (JDK).
  • Het hulpprogramma Gradle of een andere afhankelijkheidsbeheerder.
  • Zodra u uw Azure-abonnement hebt, maakt u een Computer Vision-resource in Azure Portal om uw sleutel en eindpunt op te halen. Nadat de app is geïmplementeerd, selecteert u Ga naar resource.
    • U hebt de sleutel en het eindpunt nodig van de resource die u maakt om uw toepassing te verbinden met de Azure AI Vision-service.
    • U kunt de gratis prijscategorie (F0) gebruiken om de service uit te proberen, en later upgraden naar een betaalde laag voor productie.

Omgevingsvariabelen maken

In dit voorbeeld schrijft u uw referenties naar omgevingsvariabelen op de lokale computer waarop de toepassing wordt uitgevoerd.

Ga naar de Azure Portal. Als de resource die u hebt gemaakt in de sectie Vereisten is geïmplementeerd, selecteert u Ga naar de resource onder Volgende stappen. U vindt uw sleutel en eindpunt onder Resourcebeheer op de pagina Sleutels en Eindpunt. Uw resourcesleutel is niet hetzelfde als uw Azure-abonnements-id.

Als u de omgevingsvariabele voor uw sleutel en eindpunt wilt instellen, opent u een consolevenster en volgt u de instructies voor uw besturingssysteem en ontwikkelomgeving.

  • Als u de VISION_KEY omgevingsvariabele wilt instellen, vervangt u deze door <your_key> een van de sleutels voor uw resource.
  • Als u de VISION_ENDPOINT omgevingsvariabele wilt instellen, vervangt <your_endpoint> u het eindpunt voor uw resource.

Belangrijk

Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.

Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.

setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>

Nadat u de omgevingsvariabelen hebt toegevoegd, moet u mogelijk alle actieve programma's die de omgevingsvariabelen lezen, met inbegrip van het consolevenster, opnieuw opstarten.

Afbeelding analyseren

  1. Maak een nieuw Gradle-project.

    Maak in een consolevenster (zoals cmd, PowerShell of Bash) een nieuwe map voor de app, en navigeer naar deze map.

    mkdir myapp && cd myapp
    

    Voer de opdracht gradle init uit vanuit uw werkmap. Met deze opdracht maakt u essentiële buildbestanden voor Gradle, waaronder build.gradle.kts, die tijdens runtime wordt gebruikt om uw toepassing te maken en te configureren.

    gradle init --type basic
    

    Wanneer u wordt gevraagd om een DSL te kiezen, selecteert u Kotlin.

  2. Installeer de clientbibliotheek.

    Deze quickstart maakt gebruik van de Gradle-afhankelijkheidsmanager. U vindt de clientbibliotheek en informatie voor andere afhankelijkheidsbeheerders in de Maven Central Repository.

    Zoek build.gradle.kts en open het met uw favoriete IDE of teksteditor. Kopieer en plak vervolgens de volgende buildconfiguratie in het bestand. Deze configuratie definieert het project als een Java-toepassing waarvan het toegangspunt de klasse ImageAnalysisQuickstartis. De Azure AI Vision-bibliotheek wordt geïmporteerd.

    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. Maak een Java-bestand.

    Voer de volgende opdracht uit vanuit uw werkmap om een projectbronmap te maken:

    mkdir -p src/main/java
    

    Navigeer naar de nieuwe map en maak een bestand met de naam ImageAnalysisQuickstart.java.

  4. Open ImageAnalysisQuickstart.java in de gewenste editor of IDE en plak de volgende code.

    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. Ga terug naar de hoofdmap van het project en bouw vervolgens de app met:

    gradle build
    

    Voer deze uit met de volgende opdracht:

    gradle run
    

Uitvoer

De uitvoer van de bewerking moet eruitzien als in het volgende voorbeeld.

Azure AI 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

Resources opschonen

Als u een Azure AI-servicesabonnement wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.

Volgende stap

In deze quickstart hebt u geleerd hoe u de clientbibliotheek voor afbeeldingsanalyse installeert en eenvoudige aanroepen voor afbeeldingsanalyse uitvoert. Hierna vindt u meer informatie over de functies van de Analyze Image-API.

Gebruik de clientbibliotheek voor Afbeeldingsanalyse voor JavaScript om een externe afbeelding voor inhoudstags te analyseren.

Tip

U kunt ook een lokale afbeelding analyseren. Zie de ComputerVisionClient-methoden , zoals describeImageInStream. Of bekijk de voorbeeldcode op GitHub voor scenario's met betrekking tot lokale afbeeldingen.

Tip

De Analyze Image-API kan veel andere bewerkingen uitvoeren dan het genereren van afbeeldingstags. Zie de handleiding voor het analyseren van afbeeldingen voor voorbeelden waarin alle beschikbare functies worden weergegeven.

Referentiedocumentatiepakket (npm) | -voorbeelden |

Vereisten

  • Een Azure-abonnement. U kunt er gratis een maken.
  • De huidige versie van Node.js.
  • Zodra u uw Azure-abonnement hebt, maakt u een Computer Vision-resource in Azure Portal om uw sleutel en eindpunt op te halen. Nadat de app is geïmplementeerd, selecteert u Ga naar resource.
    • U hebt de sleutel en het eindpunt nodig van de resource die u maakt om uw toepassing te verbinden met de Azure AI Vision-service.
    • U kunt de gratis prijscategorie (F0) gebruiken om de service uit te proberen, en later upgraden naar een betaalde laag voor productie.

Omgevingsvariabelen maken

In dit voorbeeld schrijft u uw referenties naar omgevingsvariabelen op de lokale computer waarop de toepassing wordt uitgevoerd.

Ga naar de Azure Portal. Als de resource die u hebt gemaakt in de sectie Vereisten is geïmplementeerd, selecteert u Ga naar de resource onder Volgende stappen. U vindt uw sleutel en eindpunt onder Resourcebeheer op de pagina Sleutels en Eindpunt. Uw resourcesleutel is niet hetzelfde als uw Azure-abonnements-id.

Als u de omgevingsvariabele voor uw sleutel en eindpunt wilt instellen, opent u een consolevenster en volgt u de instructies voor uw besturingssysteem en ontwikkelomgeving.

  • Als u de VISION_KEY omgevingsvariabele wilt instellen, vervangt u deze door <your_key> een van de sleutels voor uw resource.
  • Als u de VISION_ENDPOINT omgevingsvariabele wilt instellen, vervangt <your_endpoint> u het eindpunt voor uw resource.

Belangrijk

Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.

Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.

setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>

Nadat u de omgevingsvariabelen hebt toegevoegd, moet u mogelijk alle actieve programma's die de omgevingsvariabelen lezen, met inbegrip van het consolevenster, opnieuw opstarten.

Afbeelding analyseren

  1. Een nieuwe Node.js-toepassing maken

    Maak in een consolevenster (zoals cmd, PowerShell of Bash) een nieuwe map voor de app, en navigeer naar deze map.

    mkdir myapp && cd myapp
    

    Voer de npm init opdracht uit om een knooppunttoepassing te maken met een package.json-bestand .

    npm init
    

    De clientbibliotheek installeren

    Installeer het ms-rest-azure en @azure/cognitiveservices-computervision npm-pakket:

    npm install @azure/cognitiveservices-computervision
    

    Installeer ook de asynchrone module:

    npm install async
    

    Het package.json-bestand van uw app wordt bijgewerkt met de afhankelijkheden.

    Maak een nieuw bestand index.js.

  2. Open index.js in een teksteditor en plak de volgende code.

    '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. Voer de toepassing uit met de opdracht node in uw quickstart-bestand.

    node index.js
    

Uitvoer

De uitvoer van de bewerking moet eruitzien als in het volgende voorbeeld.

-------------------------------------------------
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.

Resources opschonen

Als u een Azure AI-servicesabonnement wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.

Volgende stap

In deze quickstart hebt u geleerd hoe u de clientbibliotheek voor afbeeldingsanalyse installeert en eenvoudige aanroepen voor afbeeldingsanalyse uitvoert. Hierna vindt u meer informatie over de functies van de Analyze Image-API.

Gebruik de REST API voor afbeeldingsanalyse om een afbeelding voor tags te analyseren.

Tip

De Analyze Image-API kan veel andere bewerkingen uitvoeren dan het genereren van afbeeldingstags. Zie de handleiding voor het analyseren van afbeeldingen voor voorbeelden waarin alle beschikbare functies worden weergegeven.

Notitie

In deze quickstart wordt gebruik gemaakt van cURL-opdrachten om de REST API aan te roepen. U kunt de REST API ook aanroepen met behulp van een programmeertaal. Zie de GitHub-voorbeelden voor voorbeelden in C#, Python, Java en JavaScript.

Vereisten

  • Een Azure-abonnement. U kunt er gratis een maken.
  • Zodra u uw Azure-abonnement hebt, maakt u een Computer Vision-resource in Azure Portal om uw sleutel en eindpunt op te halen. Nadat de app is geïmplementeerd, selecteert u Ga naar resource.
    • U hebt de sleutel en het eindpunt nodig van de resource die u maakt om uw toepassing te verbinden met de Azure AI Vision-service.
    • U kunt de gratis prijscategorie (F0) gebruiken om de service uit te proberen, en later upgraden naar een betaalde laag voor productie.
  • cURL geïnstalleerd.

Een afbeelding analyseren

Als u een afbeelding voor verschillende visuele functies wilt analyseren, voert u de volgende stappen uit:

  1. Kopieer de volgende opdracht naar een teksteditor.

    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. Breng waar nodig de volgende wijzigingen in de opdracht aan:

    1. Vervang de waarde door <yourKey> de sleutel uit uw Computer Vision-resource.
    2. Vervang het eerste deel van de aanvraag-URL (westcentralus.api.cognitive.microsoft.com) door uw eigen eindpunt-URL.

      Notitie

      Nieuwe resources die zijn gemaakt na 1 juli 2019, hebben aangepaste subdomeinnamen. Zie Aangepaste subdomeinnamen voor Azure AI-services voor meer informatie en een volledige lijst met regionale eindpunten.

    3. Wijzig eventueel de afbeeldings-URL in de aanvraagtekst (https://learn.microsoft.com/azure/ai-services/computer-vision/media/quickstarts/presentation.png) naar de URL van een andere afbeelding die u wilt analyseren.
  3. Open een opdrachtpromptvenster.

  4. Plak de bewerkte curl opdracht uit de teksteditor in het opdrachtpromptvenster en voer de opdracht uit.

Het antwoord bekijken

Er wordt een geslaagd antwoord geretourneerd in JSON-indeling. De voorbeeldtoepassing parseert en geeft een geslaagd antwoord weer in het opdrachtpromptvenster dat vergelijkbaar is met het volgende voorbeeld:

{
   "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"
}

Volgende stap

In deze quickstart hebt u geleerd hoe u eenvoudige aanroepen voor afbeeldingsanalyse kunt maken met behulp van de REST API. Hierna vindt u meer informatie over de functies van de Analyze Image-API.