Bildklassificering i Azure

Azure Blob Storage
Azure Computer Vision
Azure Cosmos DB
Azure Event Grid
Azure Functions

Lösningsidéer

I den här artikeln beskrivs en lösningsidé. Molnarkitekten kan använda den här vägledningen för att visualisera huvudkomponenterna för en typisk implementering av den här arkitekturen. Använd den här artikeln som utgångspunkt för att utforma en välkonstruerad lösning som överensstämmer med arbetsbelastningens specifika krav.

Genom att använda Azure-tjänster, till exempel API för visuellt innehåll och Azure Functions, kan företag eliminera behovet av att hantera enskilda servrar, samtidigt som de minskar kostnaderna och använder den expertis som Microsoft redan har utvecklat med bearbetning av avbildningar med Azure AI-tjänster. Den här lösningsidén tar specifikt upp ett användningsfall för bildbearbetning. Om du har olika AI-behov bör du överväga hela sviten med Azure AI-tjänster.

Arkitektur

Diagram över en arkitektur som används för bildklassificeringsuppgifter.

Ladda ned en Visio-fil med den här lösningsidén.

Dataflöde

Det här scenariot omfattar serverdelskomponenterna i ett webb- eller mobilprogram. Data flödar genom scenariot på följande sätt:

  1. Om du lägger till nya filer (bilduppladdningar) i Blob Storage utlöses en händelse i Azure Event Grid. Uppladdningsprocessen kan orkestreras via webben eller ett mobilprogram. Du kan också ladda upp avbildningar separat till Azure Blob Storage.
  2. Event Grid skickar ett meddelande som utlöser Azure-funktionerna.
  3. Azure Functions anropar Azure AI Vision API för att analysera den nyligen uppladdade bilden. Azure AI Vision kommer åt avbildningen via blob-URL:en som tolkas av Azure Functions.
  4. Azure Functions bevarar AI Vision API-svaret i Azure Cosmos DB. Det här svaret innehåller resultatet av analysen, tillsammans med bildmetadata.
  5. Resultatet kan användas och återspeglas på webben eller på den mobila klientdelen. Observera att den här metoden hämtar resultatet av klassificeringen men inte den uppladdade bilden.

Komponenter

  • Azure AI Vision är en del av Azure AI-tjänstepaketet och används för att hämta information om varje bild.
  • Azure Functions tillhandahåller serverdels-API:et för webbprogrammet. Den här plattformen tillhandahåller även händelsebearbetning för uppladdade bilder.
  • Azure Event Grid utlöser en händelse när en ny avbildning laddas upp till Blob Storage. Avbildningen bearbetas sedan med Azure Functions.
  • Azure Blob Storage lagrar alla avbildningsfiler som laddas upp till webbprogrammet samt eventuella statiska filer som webbprogrammet använder.
  • Azure Cosmos DB lagrar metadata om varje bild som laddas upp, inklusive resultatet av bearbetningen från API för visuellt innehåll.

Alternativ

  • Azure OpenAI GPT-4 Turbo med vision (förhandsversion). GPT-4 Turbo with Vision är en multimodal modell som kan analysera bilder och svara på frågor om dem.
  • Custom Vision Service. API:et visuellt innehåll returnerar en uppsättning taxonomibaserade kategorier. Om du behöver bearbeta information som inte returneras av API:et visuellt innehåll bör du överväga Custom Vision Service, som gör att du kan skapa anpassade bildklassificerare.
  • Azure AI Search (tidigare Azure Search). Om ditt användningsfall handlar om att fråga metadata för att hitta bilder som uppfyller specifika kriterier bör du överväga att använda Azure AI Search. Azure AI-sökning integrerar arbetsflödet sömlöst.
  • Logic Apps. Om du inte behöver reagera i realtid på tillagda filer i en blob kan du överväga att använda Logic Apps. En logikapp som kan kontrollera om en fil har lagts till kan startas av upprepningsutlösaren eller skjutfönsterutlösaren.
  • Om du har bilder inbäddade i dokument använder du Azure AI Document Intelligence för att hitta dessa bilder. Med den informationen kan du extrahera och utföra ytterligare uppgifter för visuellt innehåll på de inbäddade bilderna. Använd Dokumentinformation för att samla in data om de inbäddade bilderna, till exempel sidnummer eller texttext som kan lagras tillsammans med bildernas andra metadata som tas emot via API:et visuellt innehåll.

Information om scenario

Det här scenariot är relevant för företag som behöver bearbeta bilder.

Potentiella program omfattar klassificering av bilder för en modewebbplats, analys av text och bilder för försäkringsanspråk eller förståelse av telemetridata från spelskärmskärmar. Traditionellt skulle företag behöva utveckla expertis inom maskininlärningsmodeller, träna modellerna och slutligen köra bilderna genom sin anpassade process för att få ut data ur bilderna.

Potentiella användningsfall

Den här lösningen är perfekt för detaljhandeln, spelet, finansbranschen och försäkringsbranschen. Andra relevanta användningsfall är:

  • Klassificera bilder på en modewebbplats. Bildklassificering kan användas av säljare när de laddar upp bilder av produkter på plattformen till salu. De kan sedan automatisera den efterföljande manuella taggningen. Kunderna kan också söka igenom det visuella intrycket av produkterna.

  • Klassificera telemetridata från skärmbilder av spel. Klassificeringen av videospel från skärmbilder utvecklas till ett relevant problem i sociala medier, tillsammans med visuellt innehåll. När Twitch-streamers till exempel spelar olika spel i följd kan de hoppa över att manuellt uppdatera sin ströminformation. Om dataströmsinformationen inte uppdateras kan det leda till felklassificering av strömmar i användarsökningar och kan leda till förlust av potentiell visning för både innehållsskaparna och strömningsplattformarna. När du introducerar nya spel kan en anpassad modellväg vara till hjälp för att introducera möjligheten att upptäcka nya bilder från dessa spel.

  • Klassificera bilder för försäkringsanspråk. Bildklassificering kan bidra till att minska tiden och kostnaden för anspråksbearbetning och underskrift. Det kan hjälpa till att analysera naturkatastrofskador, fordonsskador och identifiera bostads- och kommersiella fastigheter.

Nästa steg

Produktdokumentation

En guidad utbildningsväg finns i:

Använda AI-berikning med bild- och textbearbetning