Szybki start: analiza obrazów

Rozpocznij pracę z interfejsem API REST analizy obrazów lub bibliotekami klienckimi, aby skonfigurować podstawowy skrypt tagowania obrazów. Usługa Analizowanie obrazów udostępnia algorytmy sztucznej inteligencji do przetwarzania obrazów i zwracania informacji na temat ich funkcji wizualnych. Wykonaj następujące kroki, aby zainstalować pakiet w aplikacji i wypróbować przykładowy kod.

Użyj biblioteki klienta Analizy obrazów dla języka C#, aby przeanalizować obraz pod kątem tagów zawartości. W tym przewodniku Szybki start zdefiniowano metodę , AnalyzeImageUrlktóra używa obiektu klienta do analizowania obrazu zdalnego i drukowania wyników.

Dokumentacja referencyjna — pakiet | kodu | źródłowego biblioteki źródłowej (NuGet)Samples |

Napiwek

Możesz również przeanalizować obraz lokalny. Zobacz metody ComputerVisionClient, takie jak AnalyzeImageInStreamAsync. Możesz też zapoznać się z przykładowym kodem w usłudze GitHub , aby zapoznać się ze scenariuszami obejmującymi obrazy lokalne.

Napiwek

Interfejs API analizowania może wykonywać wiele różnych operacji innych niż generowanie tagów obrazów. Zobacz przewodnik z instrukcjami analizy obrazów, aby zapoznać się z przykładami, które przedstawiają wszystkie dostępne funkcje.

Wymagania wstępne

  • Subskrypcja platformy Azure — utwórz bezpłatnie
  • Środowisko IDE programu Visual Studio lub bieżąca wersja platformy .NET Core.
  • Po utworzeniu subskrypcji platformy Azure utwórz zasób przetwarzanie obrazów w witrynie Azure Portal, aby uzyskać klucz i punkt końcowy. Po wdrożeniu wybierz pozycję Przejdź do zasobu.
    • Potrzebny jest klucz i punkt końcowy z utworzonego zasobu, aby połączyć aplikację z usługą Azure AI Vision.
    • Możesz użyć warstwy cenowej bezpłatna (F0), aby wypróbować usługę, a następnie uaktualnić ją do warstwy płatnej dla środowiska produkcyjnego.

Tworzenie zmiennych środowiskowych

W tym przykładzie zapisz swoje poświadczenia w zmiennych środowiskowych na komputerze lokalnym, na których jest uruchamiana aplikacja.

Przejdź do portalu Azure Portal. Jeśli zasób utworzony w sekcji Wymagania wstępne został wdrożony pomyślnie, wybierz pozycję Przejdź do zasobu w obszarze Następne kroki. Klucz i punkt końcowy można znaleźć w obszarze Zarządzanie zasobami na stronie Klucze i punkt końcowy . Klucz zasobu nie jest taki sam jak identyfikator subskrypcji platformy Azure.

Napiwek

Nie dołączaj klucza bezpośrednio do kodu i nigdy nie publikuj go publicznie. Aby uzyskać więcej opcji uwierzytelniania, takich jak usługa Azure Key Vault, zobacz artykuł Dotyczący zabezpieczeń usług Azure AI.

Aby ustawić zmienną środowiskową dla klucza i punktu końcowego, otwórz okno konsoli i postępuj zgodnie z instrukcjami dotyczącymi systemu operacyjnego i środowiska programistycznego.

  1. Aby ustawić zmienną VISION_KEY środowiskową, zastąp your-key element jednym z kluczy zasobu.
  2. Aby ustawić zmienną VISION_ENDPOINT środowiskową, zastąp your-endpoint element punktem końcowym zasobu.
setx VISION_KEY your-key
setx VISION_ENDPOINT your-endpoint

Po dodaniu zmiennych środowiskowych może być konieczne ponowne uruchomienie wszystkich uruchomionych programów, które będą odczytywać zmienne środowiskowe, w tym okno konsoli.

Analizuj obraz

  1. Utwórz nową aplikację w języku C#.

    Za pomocą programu Visual Studio utwórz nową aplikację .NET Core.

    Instalowanie biblioteki klienta

    Po utworzeniu nowego projektu zainstaluj bibliotekę klienta, klikając prawym przyciskiem myszy rozwiązanie projektu w Eksplorator rozwiązań i wybierając polecenie Zarządzaj pakietami NuGet. W otwartym menedżerze pakietów wybierz pozycję Przeglądaj, zaznacz opcję Uwzględnij wersję wstępną i wyszukaj ciąg Microsoft.Azure.CognitiveServices.Vision.ComputerVision. Wybierz wersję 7.0.0, a następnie pozycję Zainstaluj.

  2. W katalogu projektu otwórz plik Program.cs w preferowanym edytorze lub środowisku IDE. Wklej następujący kod:

    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://moderatorsampleimages.blob.core.windows.net/samples/sample16.png";
    
            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();
            }
        }
    }
    

    Ważne

    Pamiętaj, aby usunąć klucz z kodu po zakończeniu i nigdy nie publikować go publicznie. W przypadku środowiska produkcyjnego użyj bezpiecznego sposobu przechowywania i uzyskiwania dostępu do poświadczeń, takich jak usługa Azure Key Vault. Aby uzyskać więcej informacji, zobacz artykuł Dotyczący zabezpieczeń usług Azure AI.

  3. Uruchamianie aplikacji

    Uruchom aplikację, klikając przycisk Debuguj w górnej części okna IDE.


Wyjście

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

Czyszczenie zasobów

Jeśli chcesz wyczyścić i usunąć subskrypcję usług Azure AI, możesz usunąć zasób lub grupę zasobów. Usunięcie grupy zasobów powoduje również usunięcie wszelkich innych skojarzonych z nią zasobów.

Następne kroki

W tym przewodniku Szybki start przedstawiono sposób instalowania biblioteki klienta Analizy obrazów i wykonywania podstawowych wywołań analizy obrazów. Następnie dowiedz się więcej o funkcjach interfejsu API analizowania.

Użyj biblioteki klienta Analizy obrazów dla języka Python, aby przeanalizować obraz zdalny pod kątem tagów zawartości.

Napiwek

Możesz również przeanalizować obraz lokalny. Zobacz metody ComputerVisionClientOperationsMixin, takie jak analyze_image_in_stream. Możesz też zapoznać się z przykładowym kodem w usłudze GitHub , aby zapoznać się ze scenariuszami obejmującymi obrazy lokalne.

Napiwek

Interfejs API analizowania może wykonywać wiele różnych operacji innych niż generowanie tagów obrazów. Zobacz przewodnik z instrukcjami analizy obrazów, aby zapoznać się z przykładami, które przedstawiają wszystkie dostępne funkcje.

Dokumentacja referencyjna — przykłady | pakietu kodu | źródłowego biblioteki źródłowej (PiPy)Samples |

Wymagania wstępne

  • Subskrypcja platformy Azure — utwórz bezpłatnie

  • Python 3.x

    • Instalacja języka Python powinna zawierać narzędzie pip. Możesz sprawdzić, czy masz zainstalowane narzędzie pip, uruchamiając polecenie pip --version w wierszu polecenia. Pobierz narzędzie pip, instalując najnowszą wersję języka Python.
  • Po utworzeniu subskrypcji platformy Azure utwórz zasób usługi Vision w witrynie Azure Portal, aby uzyskać klucz i punkt końcowy. Po wdrożeniu wybierz pozycję Przejdź do zasobu.

    • Potrzebny jest klucz i punkt końcowy z utworzonego zasobu, aby połączyć aplikację z usługą Azure AI Vision.
    • Możesz użyć warstwy cenowej bezpłatna (F0), aby wypróbować usługę, a następnie uaktualnić ją do warstwy płatnej dla środowiska produkcyjnego.

Tworzenie zmiennych środowiskowych

W tym przykładzie zapisz swoje poświadczenia w zmiennych środowiskowych na komputerze lokalnym, na których jest uruchamiana aplikacja.

Przejdź do portalu Azure Portal. Jeśli zasób utworzony w sekcji Wymagania wstępne został wdrożony pomyślnie, wybierz pozycję Przejdź do zasobu w obszarze Następne kroki. Klucz i punkt końcowy można znaleźć w obszarze Zarządzanie zasobami na stronie Klucze i punkt końcowy . Klucz zasobu nie jest taki sam jak identyfikator subskrypcji platformy Azure.

Napiwek

Nie dołączaj klucza bezpośrednio do kodu i nigdy nie publikuj go publicznie. Aby uzyskać więcej opcji uwierzytelniania, takich jak usługa Azure Key Vault, zobacz artykuł Dotyczący zabezpieczeń usług Azure AI.

Aby ustawić zmienną środowiskową dla klucza i punktu końcowego, otwórz okno konsoli i postępuj zgodnie z instrukcjami dotyczącymi systemu operacyjnego i środowiska programistycznego.

  1. Aby ustawić zmienną VISION_KEY środowiskową, zastąp your-key element jednym z kluczy zasobu.
  2. Aby ustawić zmienną VISION_ENDPOINT środowiskową, zastąp your-endpoint element punktem końcowym zasobu.
setx VISION_KEY your-key
setx VISION_ENDPOINT your-endpoint

Po dodaniu zmiennych środowiskowych może być konieczne ponowne uruchomienie wszystkich uruchomionych programów, które będą odczytywać zmienne środowiskowe, w tym okno konsoli.

Analizuj obraz

  1. Zainstaluj bibliotekę klienta.

    Bibliotekę klienta można zainstalować za pomocą następujących funkcji:

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

    Zainstaluj również bibliotekę Pillow.

    pip install pillow
    
  2. Utwórz nową aplikację w języku Python.

    Utwórz nowy plik w języku Python — na przykład quickstart-file.py.

  3. Otwórz quickstart-file.py w edytorze tekstów lub środowisku IDE i wklej następujący kod.

    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. Uruchom aplikację, wykonując polecenie python dla pliku szybkiego startu.

    python quickstart-file.py
    

Wyjście

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

Czyszczenie zasobów

Jeśli chcesz wyczyścić i usunąć subskrypcję usług Azure AI, możesz usunąć zasób lub grupę zasobów. Usunięcie grupy zasobów powoduje również usunięcie wszelkich innych skojarzonych z nią zasobów.

Następne kroki

W tym przewodniku Szybki start przedstawiono sposób instalowania biblioteki klienta Analizy obrazów i wykonywania podstawowych wywołań analizy obrazów. Następnie dowiedz się więcej o funkcjach interfejsu API analizowania.

Biblioteka klienta Analizy obrazów umożliwia analizowanie obrazu zdalnego pod kątem tagów, opisu tekstu, twarzy, zawartości dla dorosłych i nie tylko.

Napiwek

Możesz również przeanalizować obraz lokalny. Zobacz metody ComputerVision, takie jak AnalyzeImage. Możesz też zapoznać się z przykładowym kodem w usłudze GitHub , aby zapoznać się ze scenariuszami obejmującymi obrazy lokalne.

Napiwek

Interfejs API analizowania może wykonywać wiele różnych operacji innych niż generowanie tagów obrazów. Zobacz przewodnik z instrukcjami analizy obrazów, aby zapoznać się z przykładami, które przedstawiają wszystkie dostępne funkcje.

Dokumentacja referencyjna | — artefakt kodu |źródłowego biblioteki (Maven)Przykłady |

Wymagania wstępne

  • Subskrypcja platformy Azure — utwórz bezpłatnie
  • Bieżąca wersja zestawu Java Development Kit (JDK)
  • Narzędzie kompilacji narzędzia Gradle lub inny menedżer zależności.
  • Po utworzeniu subskrypcji platformy Azure utwórz zasób usługi Vision w witrynie Azure Portal, aby uzyskać klucz i punkt końcowy. Po wdrożeniu wybierz pozycję Przejdź do zasobu.
    • Potrzebny jest klucz i punkt końcowy z utworzonego zasobu, aby połączyć aplikację z usługą Azure AI Vision.
    • Możesz użyć warstwy cenowej bezpłatna (F0), aby wypróbować usługę, a następnie uaktualnić ją do warstwy płatnej dla środowiska produkcyjnego.

Tworzenie zmiennych środowiskowych

W tym przykładzie zapisz swoje poświadczenia w zmiennych środowiskowych na komputerze lokalnym, na których jest uruchamiana aplikacja.

Przejdź do portalu Azure Portal. Jeśli zasób utworzony w sekcji Wymagania wstępne został wdrożony pomyślnie, wybierz pozycję Przejdź do zasobu w obszarze Następne kroki. Klucz i punkt końcowy można znaleźć w obszarze Zarządzanie zasobami na stronie Klucze i punkt końcowy . Klucz zasobu nie jest taki sam jak identyfikator subskrypcji platformy Azure.

Napiwek

Nie dołączaj klucza bezpośrednio do kodu i nigdy nie publikuj go publicznie. Aby uzyskać więcej opcji uwierzytelniania, takich jak usługa Azure Key Vault, zobacz artykuł Dotyczący zabezpieczeń usług Azure AI.

Aby ustawić zmienną środowiskową dla klucza i punktu końcowego, otwórz okno konsoli i postępuj zgodnie z instrukcjami dotyczącymi systemu operacyjnego i środowiska programistycznego.

  1. Aby ustawić zmienną VISION_KEY środowiskową, zastąp your-key element jednym z kluczy zasobu.
  2. Aby ustawić zmienną VISION_ENDPOINT środowiskową, zastąp your-endpoint element punktem końcowym zasobu.
setx VISION_KEY your-key
setx VISION_ENDPOINT your-endpoint

Po dodaniu zmiennych środowiskowych może być konieczne ponowne uruchomienie wszystkich uruchomionych programów, które będą odczytywać zmienne środowiskowe, w tym okno konsoli.

Analizuj obraz

  1. Utwórz nowy projekt Gradle.

    W oknie konsoli (na przykład cmd, PowerShell lub Bash) utwórz nowy katalog dla aplikacji i przejdź do niego.

    mkdir myapp && cd myapp
    

    gradle init Uruchom polecenie z katalogu roboczego. To polecenie spowoduje utworzenie podstawowych plików kompilacji dla narzędzia Gradle, w tym pliku build.gradle.kts, który jest używany w czasie wykonywania do tworzenia i konfigurowania aplikacji.

    gradle init --type basic
    

    Po wyświetleniu monitu wybierz pozycję Język DSL, a następnie Kotlin.

  2. Zainstaluj bibliotekę klienta.

    W tym przewodniku Szybki start jest używany menedżer zależności narzędzia Gradle. Bibliotekę klienta i informacje dotyczące innych menedżerów zależności można znaleźć w repozytorium centralnym programu Maven.

    Znajdź plik build.gradle.kts i otwórz go przy użyciu preferowanego środowiska IDE lub edytora tekstów. Następnie skopiuj poniższą konfigurację kompilacji. Ta konfiguracja definiuje projekt jako aplikację Java, której punktem wejścia jest klasa ImageAnalysisQuickstart. Importuje bibliotekę usługi Azure AI 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. Utwórz plik Java.

    W katalogu roboczym uruchom następujące polecenie, aby utworzyć folder źródłowy projektu:

    mkdir -p src/main/java
    

    Przejdź do nowego folderu i utwórz plik o nazwie ImageAnalysisQuickstart.java.

  4. Otwórz ImageAnalysisQuickstart.java w preferowanym edytorze lub środowisku IDE i wklej następujący kod.

    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. Wróć do folderu głównego projektu i skompiluj aplikację za pomocą polecenia:

    gradle build
    

    Następnie uruchom go za pomocą gradle run polecenia :

    gradle run
    

Wyjście

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

Czyszczenie zasobów

Jeśli chcesz wyczyścić i usunąć subskrypcję usług Azure AI, możesz usunąć zasób lub grupę zasobów. Usunięcie grupy zasobów powoduje również usunięcie wszelkich innych skojarzonych z nią zasobów.

Następne kroki

W tym przewodniku Szybki start przedstawiono sposób instalowania biblioteki klienta Analizy obrazów i wykonywania podstawowych wywołań analizy obrazów. Następnie dowiedz się więcej o funkcjach interfejsu API analizowania.

Użyj biblioteki klienta Analizy obrazów dla języka JavaScript, aby przeanalizować obraz zdalny pod kątem tagów zawartości.

Napiwek

Możesz również przeanalizować obraz lokalny. Zobacz metody ComputerVisionClient, takie jak describeImageInStream. Możesz też zapoznać się z przykładowym kodem w usłudze GitHub , aby zapoznać się ze scenariuszami obejmującymi obrazy lokalne.

Napiwek

Interfejs API analizowania może wykonywać wiele różnych operacji innych niż generowanie tagów obrazów. Zobacz przewodnik z instrukcjami analizy obrazów, aby zapoznać się z przykładami, które przedstawiają wszystkie dostępne funkcje.

Dokumentacja referencyjna — przykłady | pakietu kodu | źródłowego biblioteki źródłowej (npm)Samples |

Wymagania wstępne

  • Subskrypcja platformy Azure — utwórz bezpłatnie
  • Bieżąca wersja Node.js
  • Po utworzeniu subskrypcji platformy Azure utwórz zasób usługi Vision w witrynie Azure Portal, aby uzyskać klucz i punkt końcowy. Po wdrożeniu wybierz pozycję Przejdź do zasobu.
    • Potrzebny jest klucz i punkt końcowy z utworzonego zasobu, aby połączyć aplikację z usługą Azure AI Vision.
    • Możesz użyć warstwy cenowej bezpłatna (F0), aby wypróbować usługę, a następnie uaktualnić ją do warstwy płatnej dla środowiska produkcyjnego.

Tworzenie zmiennych środowiskowych

W tym przykładzie zapisz swoje poświadczenia w zmiennych środowiskowych na komputerze lokalnym, na których jest uruchamiana aplikacja.

Przejdź do portalu Azure Portal. Jeśli zasób utworzony w sekcji Wymagania wstępne został wdrożony pomyślnie, wybierz pozycję Przejdź do zasobu w obszarze Następne kroki. Klucz i punkt końcowy można znaleźć w obszarze Zarządzanie zasobami na stronie Klucze i punkt końcowy . Klucz zasobu nie jest taki sam jak identyfikator subskrypcji platformy Azure.

Napiwek

Nie dołączaj klucza bezpośrednio do kodu i nigdy nie publikuj go publicznie. Aby uzyskać więcej opcji uwierzytelniania, takich jak usługa Azure Key Vault, zobacz artykuł Dotyczący zabezpieczeń usług Azure AI.

Aby ustawić zmienną środowiskową dla klucza i punktu końcowego, otwórz okno konsoli i postępuj zgodnie z instrukcjami dotyczącymi systemu operacyjnego i środowiska programistycznego.

  1. Aby ustawić zmienną VISION_KEY środowiskową, zastąp your-key element jednym z kluczy zasobu.
  2. Aby ustawić zmienną VISION_ENDPOINT środowiskową, zastąp your-endpoint element punktem końcowym zasobu.
setx VISION_KEY your-key
setx VISION_ENDPOINT your-endpoint

Po dodaniu zmiennych środowiskowych może być konieczne ponowne uruchomienie wszystkich uruchomionych programów, które będą odczytywać zmienne środowiskowe, w tym okno konsoli.

Analizuj obraz

  1. Tworzenie nowej aplikacji Node.js

    W oknie konsoli (na przykład cmd, PowerShell lub Bash) utwórz nowy katalog dla aplikacji i przejdź do niego.

    mkdir myapp && cd myapp
    

    Uruchom polecenie npm init, aby utworzyć aplikację Node przy użyciu pliku package.json.

    npm init
    

    Instalowanie biblioteki klienta

    ms-rest-azure Zainstaluj pakiet i @azure/cognitiveservices-computervision npm:

    npm install @azure/cognitiveservices-computervision
    

    Zainstaluj również moduł asynchroniczny:

    npm install async
    

    Plik package.json aplikacji zostanie zaktualizowany przy użyciu zależności.

    Utwórz nowy plik index.js.

  2. Otwórz index.js w edytorze tekstów i wklej następujący kod.

    '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://moderatorsampleimages.blob.core.windows.net/samples/sample16.png';
    
          // 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. Uruchom aplikację, wykonując polecenie node dla pliku szybkiego startu.

    node index.js
    

Wyjście

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

Czyszczenie zasobów

Jeśli chcesz wyczyścić i usunąć subskrypcję usług Azure AI, możesz usunąć zasób lub grupę zasobów. Usunięcie grupy zasobów powoduje również usunięcie wszelkich innych skojarzonych z nią zasobów.

Następne kroki

W tym przewodniku Szybki start przedstawiono sposób instalowania biblioteki klienta Analizy obrazów i wykonywania podstawowych wywołań analizy obrazów. Następnie dowiedz się więcej o funkcjach interfejsu API analizowania.

Użyj interfejsu API REST analizy obrazów, aby przeanalizować obraz pod kątem tagów.

Napiwek

Interfejs API analizowania może wykonywać wiele różnych operacji innych niż generowanie tagów obrazów. Zobacz przewodnik z instrukcjami analizy obrazów, aby zapoznać się z przykładami, które przedstawiają wszystkie dostępne funkcje.

Uwaga

Ten przewodnik Szybki start używa poleceń cURL do wywoływania interfejsu API REST. Interfejs API REST można również wywołać przy użyciu języka programowania. Zobacz przykłady dotyczące usługi GitHub, aby zapoznać się z przykładami w językach C#, Python, Java i JavaScript.

Wymagania wstępne

  • Subskrypcja platformy Azure — utwórz bezpłatnie
  • Po utworzeniu subskrypcji platformy Azure utwórz zasób usługi Vision w witrynie Azure Portal, aby uzyskać klucz i punkt końcowy. Po wdrożeniu wybierz pozycję Przejdź do zasobu.
    • Będziesz potrzebować klucza i punktu końcowego z utworzonego zasobu, aby połączyć aplikację z usługą Azure AI Vision. W dalszej części przewodnika Szybki start wklejesz klucz i punkt końcowy do poniższego kodu.
    • Możesz użyć warstwy cenowej bezpłatna (F0), aby wypróbować usługę, a następnie uaktualnić ją do warstwy płatnej dla środowiska produkcyjnego.
  • Zainstalowano bibliotekę cURL

Analizowanie obrazu

Aby przeanalizować obraz pod kątem różnych funkcji wizualnych, wykonaj następujące czynności:

  1. Skopiuj następujące polecenie do edytora tekstów.

    curl.exe -H "Ocp-Apim-Subscription-Key: <subscriptionKey>" -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. W razie potrzeby wprowadź w poleceniu następujące zmiany:

    1. Zastąp wartość <subscriptionKey> kluczem.
    2. Zastąp pierwszą część adresu URL żądania (westcentralus) tekstem we własnym adresie URL punktu końcowego.

      Uwaga

      Nowe zasoby utworzone po 1 lipca 2019 r. będą używać niestandardowych nazw domen podrzędnych. Aby uzyskać więcej informacji i pełną listę regionalnych punktów końcowych, zobacz Niestandardowe nazwy poddomeny dla usług Azure AI.

    3. Opcjonalnie zmień adres URL obrazu w treści żądania (https://learn.microsoft.com/azure/ai-services/computer-vision/media/quickstarts/presentation.png) na adres URL innego obrazu do analizy.
  3. Otwórz okno wiersza polecenia.

  4. Wklej edytowane curl polecenie z edytora tekstów w oknie wiersza polecenia, a następnie uruchom polecenie.

Sprawdzanie odpowiedzi

Po pomyślnym przetworzeniu żądania zostanie zwrócona odpowiedź w formacie JSON. Przykładowa aplikacja analizuje i wyświetla pomyślną odpowiedź w oknie wiersza polecenia, podobnie jak w poniższym przykładzie:

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

Następne kroki

W tym przewodniku Szybki start przedstawiono sposób wykonywania podstawowych wywołań analizy obrazów przy użyciu interfejsu API REST. Następnie dowiedz się więcej o funkcjach interfejsu API analizowania.