Bereitstellen einer Azure KI Vision-Ressource zur Bildklassifizierung (Teil 1)
Azure KI Vision ist eine Sammlung von Diensten, die Entwicklern dabei helfen, Anwendungen zu erstellen, die visuelle Daten verstehen und interpretieren können. Dieser und die folgenden zwei BeitrĂ€ge bieten eine kleine EinfĂŒhrung in das faszinierende Thema. FĂŒr den optimalen Einstieg empfehlen wir dir unsere Azure KI Schulungen.
Der Dienst Azure KI Vision stellt vorab trainierte Modelle bereit, um Bilder zu analysieren und Erkenntnisse und Informationen daraus zu extrahieren. Das Angebot umfasst mehrere Dienste. Dazu gehören z. B. Computer Vision, Custom Vision oder Face API. Alle verwenden fortschrittliche Machine-Learning-Algorithmen, die Entwickler dabei unterstĂŒtzten, Bilder und Videos zu analysieren und wertvolle Erkenntnisse zu gewinnen.
Azure KI Vision Funktionen:
- Generieren von Tags und Beschreibungen: mit Hilfe der mit diesem Feature verknĂŒpften Algorithmen können Entwickler passende Beschriftungen fĂŒr ein Bild bestimmen oder relevanter âTagsâ identifizieren, die sich als SchlĂŒsselwörter zur Angabe des Motivs verwenden lassen.
- Objekterkennung: hilft beim Erkennen des Vorhandenseins und der Position bestimmter Objekte im Bild
- Personenerkennung: Hilft beim Erkennen des Vorhandenseins, der Position und der Merkmale von Personen in einem Bild.
- Kategorieermittlung: hilft beim Bestimmen, welche Kategorisierung fĂŒr das Bild passend ist oder ob es bekannte SehenswĂŒrdigkeiten enthĂ€lt
- Entfernen des Hintergrunds: erkennt den Hintergrunds in einem Bild und ist in der Lage, das Bild mit transparentem Hintergrund auszugeben.
- Bildmetadaten-, Farb- und Typanalyse: hilft beim Bestimmen des Formats und der GröĂe eines Bildes sowie dessen vorherrschenden Farbpalette oder erkennt, ob ein ClipArt enthalten ist
- Moderationsbewertung: mit diesem Modell kann die KI erkennen, ob ein Bild nicht jugendfreie oder gewalttÀtige Inhalte enthÀlt
- Generierung intelligenter Miniaturansichten: mit dieser Funktion ermittelt die KI den interessantesten Bereich im Bild, um mit dieser Information eine kleinere âMiniaturversionâ zu erstellen
- Optische Zeichenerkennung: hilft beim Erkennen von Text im Bild
Entwickler können Azure KI Vision als Einzeldienstressource bereitstellen oder die Azure KI Vision-API in einer Azure KI Services-Ressource fĂŒr mehrere Dienste nutzen. Suche dazu im Azure Portal nach âAzure AI servicesâ. Hier kannst du z. B. ein âCustom Visionâ erstellen oder die Gesichtserkennungs-API nutzen. Hast du noch keinen Azure AI Service Plan erstellt, kannst du das jetzt nachholen, wie in den zurĂŒckliegenden Artikeln erlĂ€utert.
Entwickler bevorzugen meist eher die REST-API oder die unterstĂŒtzten SDKs. Zur Analyse eines Bildes lĂ€sst sich beispielsweise die REST-Methode âAnalyze Imageâ oder die entsprechende Methode im SDK der jeweiligen Programmiersprache einsetzen. Hier gibst du die visuellen Funktionen an, welche in die Analyse einflieĂen sollen. Gibst du dabei Kategorien an, kannst du auch Details zu Prominenten oder SehenswĂŒrdigkeiten einschlieĂen. Allerdings ist fĂŒr die Erkennung von Prominenten die Genehmigung durch eine https://learn.microsoft.com/en-us/azure/ai-services/cognitive-services-limited-access Richtlinie fĂŒr eingeschrĂ€nkten Zugriff erforderlich. Die folgende Methode in C# gibt ein JSON-Dokument mit den angeforderten Informationen zurĂŒck.
using Azure.AI.Vision.Common;
using Azure.AI.Vision.ImageAnalysis;
var serviceOptions = new VisionServiceOptions(
Environment.GetEnvironmentVariable("VISION_ENDPOINT"),
new AzureKeyCredential(Environment.GetEnvironmentVariable("VISION_KEY")));
using var imageSource = VisionSource.FromUrl(new Uri("<url>"));
var options = new ImageAnalysisOptions(){
Features = ImageAnalysisFeature.Caption | ImageAnalysisFeature.Text,
Language = "en",
GenderNeutralCaption = true
};
using var analyzer = new ImageAnalyzer(serviceOptions, imageSource, options); var result = analyzer.Analyze();
Du kannst Azure KI-Vision auch zum Berechnen und Erzeugen von Thumbnails verwenden. Du kannst mit Azure KI Vision Miniaturansichten mit unterschiedlichen Abmessungen (und SeitenverhĂ€ltnissen) aus einem gegeben Quellbild erstellen. ZusĂ€tzlich kannst du auch die Bildanalyse nutzen, um den interessanten Bereich des Bildes, also das Hauptmotiv zu ermitteln. Diese Option ist nĂŒtzlich, wenn sich beim inhaltsorientierten Zuschneiden auch das SeitenverhĂ€ltnis Ă€ndert. Im Allgemeinen wĂŒrde der ProzeĂ etwa so ablaufen:
- Störende Elemente: Der Azure KI Vision-Algorithmus entfernt störende Elemente aus dem Bild.
- Identifizieren des relevanten Bereichs: Der relevante Bereich (Bildbereich mit den wichtigsten Objekten) wird identifiziert.
- Zuschneiden des Bildes: Das Bild wird auf Grundlage des erkannten relevanten Bereichs zugeschnitten.
Das SeitenverhĂ€ltnis wird entsprechend den Abmessungen des Zielminiaturbilds geĂ€ndert. Die Azure KI Vision 3.2-API verwendet intelligentes Zuschneiden, um intuitive Bildminiaturansichten zu erstellen, die die wichtigsten Bereiche eines Bilds mit PrioritĂ€t auf ggf. erkannten Gesichtern enthalten. Das Feature zum Generieren von Miniaturansichten ist ĂŒber die APIs âGet Thumbnailâ (Miniaturansicht abrufen) und âGet Area of Interestâ (Relevanten Bereich abrufen) verfĂŒgbar. Du kannst diese API ĂŒber ein natives SDK oder REST aufrufen.
Bildklassifizierung Beispiel
Hast du einen Azure-AI-Service-Plan erstellt, kannst du z. B. im Browser das neue https://customvision.ai Custom Vision Portal von Microsoft aufrufen.
Melde dich hier mit einem Azure-Mandaten an, in dem du ĂŒber einen Azure-AI-Service-Plan verfĂŒgst, kannstr du mit âNEW PROJECTâ ein neues Custom-Version-Projekt starten.
Du kannst aber ebenso gut im Azure-Portal ausgehend von der Seite âAzure AI Servicesâ auf âCustom Visionâ klicken und dort ein neues âCustom Vision erstellenâ.
FĂŒr Tests eignet sich der Tarif âFee S0â. Du kannst abweichende Tarife fĂŒr Training und Vorhersage wĂ€hlen.
Noch einfacher gelingt hingegen der Einstieg in AI Vision mit dem neuen https://portal.vision.cognitive.azure.com Azure AI Vision Studio.
WĂ€hle hier beispielsweise âCreate smart-cropped imagesâ und klicke auf den Link âPlease select a resourceâ um sich mit der gewĂŒnschten Azure Subscription zu verbinden. Der Dienst steht momentan nur in âEast USâ, âWest USâ, âNorth Europeâ, âWest Europâ, âFrance Centralâ, âKorea Centralâ, und âSoutheast Asiaâ zur VerfĂŒgung.
Bei der Gelegenheit kannst du auch gleich – sofern nicht vorher geschehen – eine passende CognitiveServices-Ressource erstellen. Wir verwenden den Tarif âFree S0â.
AnschlieĂend kannst du mit Thumbnail-Erstellung eines der bereitgestellten Demo-Bilder testen oder ein eigenes Bild hochladen. Das Ergebnis sollte etwa so aussehen:
FĂŒr Entwickler eher interessant: Am oberen Bildschirmrand findest du Links zur https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/how-to/call-analyze-image-40?tabs=csharp&pivots=programming-language-csharp SDK Reference, zur Verwendung der https://centraluseuap.dev.cognitive.microsoft.com/docs/services/unified-vision-apis-public-preview-2023-02-01-preview/operations/61d65934cd35050c20f73ab6 REST-API und zu weiteren SDK-Beispielen auf https://github.com/Azure-Samples/azure-ai-vision-sdk GitHub, mit denen wir uns im nĂ€chsten Teil befassen werden.
Azure KI Vision Fazit
Azure AI Services, customvision.ai und Azure AI Vision Studio sind Dienste, die von Microsoft bereitgestellt werden, um KI-Lösungen zu entwickeln. Sie unterscheiden sich aber im Detail und Verwendungszweck.
- Azure AI Services: Azure AI Services ist eine Sammlung von KI-Diensten, die von Microsoft Azure bereitgestellt werden. Es bietet eine Vielzahl von Diensten, einschlieĂlich, aber nicht beschrĂ€nkt auf, Custom Vision. Mit Azure AI Services kannst du deine eigenen Modelle erstellen und trainieren, ohne dass du ĂŒber Data Science- oder ML-Kenntnisse verfĂŒgen musst.
- customvision.ai: Customvision.ai ist eine spezifische Plattform innerhalb der Azure AI Services, die sich auf die Erstellung von Custom Vision-Projekten konzentriert. Es ermöglicht dir, deine eigenen Bildklassifizierungs- und Objekterkennungsmodelle zu erstellen und zu trainieren.
- Azure AI Vision Studio: Azure AI Vision Studio ist ein Teil der Azure AI Services und ermöglicht es dir, benutzerdefinierte Bildbezeichnermodelle mit der neuesten Technologie von Azure zu erstellen.
Kontakt
â*â zeigt erforderliche Felder an