Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Note
Azure AI-sökning är tillgängligt via Azure-portalen, REST-API:er och Azure-SDK:er. Den ligger också till grund för Foundry IQ, det hanterade kunskapsskiktet som omvandlar företagsinnehåll till återanvändbara, behörighetsmedvetna kunskapsbaser för agenter i Microsoft Foundry-portalen.
Bildanalys-färdigheten extraherar en rik uppsättning visuella egenskaper baserat på bildinnehållet. Till exempel kan du generera en bildtext från en bild, skapa taggar eller identifiera kändisar och landmärken. Denna artikel är referensdokumentationen för färdigheten Bildanalys . Se Extrahera text och information från bilder för användningsinstruktioner.
Denna färdighet använder maskininlärningsmodeller som tillhandahålls av Azure Vision i Foundry Tools. Bildanalys arbetar med bilder som uppfyller följande krav:
- Bilden måste presenteras i JPEG-, PNG-, GIF- eller BMP-format
- Bildens filstorlek måste vara mindre än 4 MB (MB)
- Bildens dimensioner måste vara större än 50 x 50 pixlar
Stödda datakällor för OCR och bildanalys är blobs i Azure Blob Storage och Azure Data Lake Storage (ADLS) Gen2, samt bildinnehåll i Microsoft OneLake. Bilder kan vara fristående filer eller inbäddade bilder i en PDF eller andra filer.
Denna färdighet implementeras med AI Image Analysis API version 3.2. Om din lösning kräver att du anropar en nyare version av tjänst-API:et, till exempel version 4.0, kan du överväga att implementera via den anpassade webb-API-färdigheten.
Note
Denna färdighet är bunden till Foundry Tools och kräver en debiterbar resurs för transaktioner som överstiger 20 dokument per indexerare och dag. Körning av inbyggda färdigheter debiteras till det befintliga standardpriset för Foundry Tools.
Dessutom är bildextraktion fakturerbar med Azure AI-sökning.
@odata.type
Microsoft.Skills.Vision.ImageAnalysisSkill
Kompetensparametrar
Parametrar är skiftlägeskänsliga.
| Parameternamn | Description |
|---|---|
defaultLanguageCode |
En sträng som indikerar vilket språk som ska återvända. Tjänsten returnerar igenkänningsresultat i ett specificerat språk. Om denna parameter inte anges är standardvärdet "en". Stödda språk inkluderar en delmängd av allmänt tillgängliga språk av Azure Vision. När ett språk nyligen introduceras med allmän tillgänglighet i Azure Vision finns det förväntad fördröjning innan de är fullt integrerade i denna färdighet. |
visualFeatures |
En array av strängar som indikerar vilka visuella funktionstyper som ska återvända. Giltiga typer av visuella egenskaper inkluderar:
defaultLanguageCode. |
details |
En array av strängar som anger vilka domänspecifika detaljer som ska returneras. Giltiga typer av visuella egenskaper inkluderar:
|
Kunskapsindata
| Indatanamn | Description |
|---|---|
image |
Komplex typ. Fungerar för närvarande endast med fältet "/document/normalized_images", som produceras av Azure blobindexer när imageAction sätts till ett annat värde än none. |
Färdighetsresultat
| Utdatanamn | Description |
|---|---|
adult |
Output är ett enskilt vuxet objekt av komplex typ, bestående av boolesk fält (isAdultContent, isGoryContent, isRacyContent) och dubbeltyppoäng (adultScore, goreScore, ). racyScore |
brands |
Output är en array av varumärkesobjekt , där objektet är en komplex typ bestående av name (sträng) och en confidence poäng (dubbel). Den returnerar också a rectangle med fyra begränsningsboxkoordinater (x, y, w, h, i pixlar) som indikerar placeringen inuti bilden. För rektangeln x är och y uppe till vänster. Nere till vänster är x, y+h. Uppe till höger är x+w, y. Nere till höger är x+w, y+h. |
categories |
Output är en array av kategoriobjekt , där varje kategoriobjekt är en komplex typ bestående av en name (sträng), score (dubbel) och valfritt detail som innehåller kändis- eller landmärkesdetaljer. Se kategoritaxonomin för hela listan över kategorinamn. En detalj är en nästlad komplex typ. En kändisdetalj består av ett namn, självförtroendepoäng och en frontstyckningsbox. En landmärkesdetalj består av ett namn och ett förtroendepoäng. |
description |
Output är ett enda beskrivningsobjekt av en komplex typ, bestående av listor av tags och caption (en array bestående av Text (sträng) och confidence (dubbel)). |
faces |
Komplex typ bestående av age, gender, och faceBoundingBox med fyra begränsningsboxkoordinater (i pixlar) som anger placering inuti bilden. Koordinaterna är top, left, width, . height |
objects |
Output är en uppsättning visuella funktionsobjekt. Varje objekt är en komplex typ, bestående av object (sträng), confidence (dubbel), rectangle (med fyra begränsningsrutor som indikerar placering i bilden) och en parent som innehåller ett objektnamn och förtroende . |
tags |
Output är en array av imageTag-objekt , där ett taggobjekt är en komplex typ bestående av name (sträng), hint (sträng) och confidence (dubbel). Tillägget av en ledtråd är sällsynt. Den genereras bara om en tagg är otydlig. Till exempel kan en bild taggad som "curling" ha en antydan till "sport" för att bättre indikera dess innehåll. |
Exempel på färdighetsdefinition
{
"description": "Extract image analysis.",
"@odata.type": "#Microsoft.Skills.Vision.ImageAnalysisSkill",
"context": "/document/normalized_images/*",
"defaultLanguageCode": "en",
"visualFeatures": [
"adult",
"brands",
"categories",
"description",
"faces",
"objects",
"tags"
],
"inputs": [
{
"name": "image",
"source": "/document/normalized_images/*"
}
],
"outputs": [
{
"name": "adult"
},
{
"name": "brands"
},
{
"name": "categories"
},
{
"name": "description"
},
{
"name": "faces"
},
{
"name": "objects"
},
{
"name": "tags"
}
]
}
Exempelindex
För enskilda objekt (såsom adult och description), kan du strukturera dem i indexet som en Collection(Edm.ComplexType) för att returnera adult och description ge utdata för alla. För mer information om att mappa utdata till indexfält, se Flattening information from complex types.
{
"fields": [
{
"name": "metadata_storage_name",
"type": "Edm.String",
"key": true,
"searchable": true,
"filterable": false,
"facetable": false,
"sortable": true
},
{
"name": "metadata_storage_path",
"type": "Edm.String",
"searchable": true,
"filterable": false,
"facetable": false,
"sortable": true
},
{
"name": "content",
"type": "Edm.String",
"sortable": false,
"searchable": true,
"filterable": false,
"facetable": false
},
{
"name": "adult",
"type": "Edm.ComplexType",
"fields": [
{
"name": "isAdultContent",
"type": "Edm.Boolean",
"searchable": false,
"filterable": true,
"facetable": true
},
{
"name": "isGoryContent",
"type": "Edm.Boolean",
"searchable": false,
"filterable": true,
"facetable": true
},
{
"name": "isRacyContent",
"type": "Edm.Boolean",
"searchable": false,
"filterable": true,
"facetable": true
},
{
"name": "adultScore",
"type": "Edm.Double",
"searchable": false,
"filterable": false,
"facetable": false
},
{
"name": "goreScore",
"type": "Edm.Double",
"searchable": false,
"filterable": false,
"facetable": false
},
{
"name": "racyScore",
"type": "Edm.Double",
"searchable": false,
"filterable": false,
"facetable": false
}
]
},
{
"name": "brands",
"type": "Collection(Edm.ComplexType)",
"fields": [
{
"name": "name",
"type": "Edm.String",
"searchable": true,
"filterable": false,
"facetable": false
},
{
"name": "confidence",
"type": "Edm.Double",
"searchable": false,
"filterable": false,
"facetable": false
},
{
"name": "rectangle",
"type": "Edm.ComplexType",
"fields": [
{
"name": "x",
"type": "Edm.Int32",
"searchable": false,
"filterable": false,
"facetable": false
},
{
"name": "y",
"type": "Edm.Int32",
"searchable": false,
"filterable": false,
"facetable": false
},
{
"name": "w",
"type": "Edm.Int32",
"searchable": false,
"filterable": false,
"facetable": false
},
{
"name": "h",
"type": "Edm.Int32",
"searchable": false,
"filterable": false,
"facetable": false
}
]
}
]
},
{
"name": "categories",
"type": "Collection(Edm.ComplexType)",
"fields": [
{
"name": "name",
"type": "Edm.String",
"searchable": true,
"filterable": false,
"facetable": false
},
{
"name": "score",
"type": "Edm.Double",
"searchable": false,
"filterable": false,
"facetable": false
},
{
"name": "detail",
"type": "Edm.ComplexType",
"fields": [
{
"name": "celebrities",
"type": "Collection(Edm.ComplexType)",
"fields": [
{
"name": "name",
"type": "Edm.String",
"searchable": true,
"filterable": false,
"facetable": false
},
{
"name": "faceBoundingBox",
"type": "Collection(Edm.ComplexType)",
"fields": [
{
"name": "x",
"type": "Edm.Int32",
"searchable": false,
"filterable": false,
"facetable": false
},
{
"name": "y",
"type": "Edm.Int32",
"searchable": false,
"filterable": false,
"facetable": false
}
]
},
{
"name": "confidence",
"type": "Edm.Double",
"searchable": false,
"filterable": false,
"facetable": false
}
]
},
{
"name": "landmarks",
"type": "Collection(Edm.ComplexType)",
"fields": [
{
"name": "name",
"type": "Edm.String",
"searchable": true,
"filterable": false,
"facetable": false
},
{
"name": "confidence",
"type": "Edm.Double",
"searchable": false,
"filterable": false,
"facetable": false
}
]
}
]
}
]
},
{
"name": "description",
"type": "Collection(Edm.ComplexType)",
"fields": [
{
"name": "tags",
"type": "Collection(Edm.String)",
"searchable": true,
"filterable": false,
"facetable": false
},
{
"name": "captions",
"type": "Collection(Edm.ComplexType)",
"fields": [
{
"name": "text",
"type": "Edm.String",
"searchable": true,
"filterable": false,
"facetable": false
},
{
"name": "confidence",
"type": "Edm.Double",
"searchable": false,
"filterable": false,
"facetable": false
}
]
}
]
},
{
"name": "faces",
"type": "Collection(Edm.ComplexType)",
"fields": [
{
"name": "age",
"type": "Edm.Int32",
"searchable": false,
"filterable": false,
"facetable": false
},
{
"name": "gender",
"type": "Edm.String",
"searchable": false,
"filterable": false,
"facetable": false
},
{
"name": "faceBoundingBox",
"type": "Collection(Edm.ComplexType)",
"fields": [
{
"name": "top",
"type": "Edm.Int32",
"searchable": false,
"filterable": false,
"facetable": false
},
{
"name": "left",
"type": "Edm.Int32",
"searchable": false,
"filterable": false,
"facetable": false
},
{
"name": "width",
"type": "Edm.Int32",
"searchable": false,
"filterable": false,
"facetable": false
},
{
"name": "height",
"type": "Edm.Int32",
"searchable": false,
"filterable": false,
"facetable": false
}
]
}
]
},
{
"name": "objects",
"type": "Collection(Edm.ComplexType)",
"fields": [
{
"name": "object",
"type": "Edm.String",
"searchable": true,
"filterable": false,
"facetable": false
},
{
"name": "confidence",
"type": "Edm.Double",
"searchable": false,
"filterable": false,
"facetable": false
},
{
"name": "rectangle",
"type": "Edm.ComplexType",
"fields": [
{
"name": "x",
"type": "Edm.Int32",
"searchable": false,
"filterable": false,
"facetable": false
},
{
"name": "y",
"type": "Edm.Int32",
"searchable": false,
"filterable": false,
"facetable": false
},
{
"name": "w",
"type": "Edm.Int32",
"searchable": false,
"filterable": false,
"facetable": false
},
{
"name": "h",
"type": "Edm.Int32",
"searchable": false,
"filterable": false,
"facetable": false
}
]
},
{
"name": "parent",
"type": "Edm.ComplexType",
"fields": [
{
"name": "object",
"type": "Edm.String",
"searchable": true,
"filterable": false,
"facetable": false
},
{
"name": "confidence",
"type": "Edm.Double",
"searchable": false,
"filterable": false,
"facetable": false
}
]
}
]
},
{
"name": "tags",
"type": "Collection(Edm.ComplexType)",
"fields": [
{
"name": "name",
"type": "Edm.String",
"searchable": true,
"filterable": false,
"facetable": false
},
{
"name": "hint",
"type": "Edm.String",
"searchable": true,
"filterable": false,
"facetable": false
},
{
"name": "confidence",
"type": "Edm.Double",
"searchable": false,
"filterable": false,
"facetable": false
}
]
}
]
}
Exempelutdata fältkartläggning
Målfältet kan vara ett komplext fält eller en samling. Indexdefinitionen specificerar alla delfält.
"outputFieldMappings": [
{
"sourceFieldName": "/document/normalized_images/*/adult",
"targetFieldName": "adult"
},
{
"sourceFieldName": "/document/normalized_images/*/brands/*",
"targetFieldName": "brands"
},
{
"sourceFieldName": "/document/normalized_images/*/categories/*",
"targetFieldName": "categories"
},
{
"sourceFieldName": "/document/normalized_images/*/description",
"targetFieldName": "description"
},
{
"sourceFieldName": "/document/normalized_images/*/faces/*",
"targetFieldName": "faces"
},
{
"sourceFieldName": "/document/normalized_images/*/objects/*",
"targetFieldName": "objects"
},
{
"sourceFieldName": "/document/normalized_images/*/tags/*",
"targetFieldName": "tags"
}
Variation av utdatafältmappningar (nästlade egenskaper)
Du kan definiera utdatafältmappningar till lägre nivå-egenskaper, som bara kändisar eller landmärken. I det här fallet, se till att ditt indexschema har ett fält som specifikt innehåller varje detalj.
"outputFieldMappings": [
{
"sourceFieldName": "/document/normalized_images/*/categories/detail/celebrities/*",
"targetFieldName": "celebrities"
},
{
"sourceFieldName": "/document/normalized_images/*/categories/detail/landmarks/*",
"targetFieldName": "landmarks"
}
Exempelindata
{
"values": [
{
"recordId": "1",
"data": {
"image": {
"data": "BASE64 ENCODED STRING OF A JPEG IMAGE",
"width": 500,
"height": 300,
"originalWidth": 5000,
"originalHeight": 3000,
"rotationFromOriginal": 90,
"contentOffset": 500,
"pageNumber": 2
}
}
}
]
}
Exempel på utdata
{
"values": [
{
"recordId": "1",
"data": {
"categories": [
{
"name": "abstract_",
"score": 0.00390625
},
{
"name": "people_",
"score": 0.83984375,
"detail": {
"celebrities": [
{
"name": "Satya Nadella",
"faceBoundingBox": [
{
"x": 273,
"y": 309
},
{
"x": 395,
"y": 309
},
{
"x": 395,
"y": 431
},
{
"x": 273,
"y": 431
}
],
"confidence": 0.999028444
}
],
"landmarks": [ ]
}
}
],
"adult": {
"isAdultContent": false,
"isRacyContent": false,
"isGoryContent": false,
"adultScore": 0.0934349000453949,
"racyScore": 0.068613491952419281,
"goreScore": 0.08928389008070282
},
"tags": [
{
"name": "person",
"confidence": 0.98979085683822632
},
{
"name": "man",
"confidence": 0.94493889808654785
},
{
"name": "outdoor",
"confidence": 0.938492476940155
},
{
"name": "window",
"confidence": 0.89513939619064331
}
],
"description": {
"tags": [
"person",
"man",
"outdoor",
"window",
"glasses"
],
"captions": [
{
"text": "Satya Nadella sitting on a bench",
"confidence": 0.48293603002174407
}
]
},
"faces": [
{
"age": 44,
"gender": "Male",
"faceBoundingBox": [
{
"x": 1601,
"y": 395
},
{
"x": 1653,
"y": 395
},
{
"x": 1653,
"y": 447
},
{
"x": 1601,
"y": 447
}
]
}
],
"objects": [
{
"rectangle": {
"x": 25,
"y": 43,
"w": 172,
"h": 140
},
"object": "person",
"confidence": 0.931
}
],
"brands":[
{
"name":"Microsoft",
"confidence": 0.903,
"rectangle":{
"x":20,
"y":97,
"w":62,
"h":52
}
}
]
}
}
]
}
Felhanteringsfall
I följande felfall extraheras inga element.
| Felkod | Description |
|---|---|
NotSupportedLanguage |
Det tillhandahållna språket stöds inte. |
InvalidImageUrl |
Bildens URL är dåligt formaterad eller inte tillgänglig. |
InvalidImageFormat |
Indata är inte en giltig bild. |
InvalidImageSize |
Inmatningsbilden är för stor. |
NotSupportedVisualFeature |
Angiven funktionstyp är inte gyldig. |
NotSupportedImage |
Icke-stödd bild, till exempel barnpornografi. |
InvalidDetails |
Ej stödd domänspecifik modell. |
Om du får felet liknande , "One or more skills are invalid. Details: Error in skill #<num>: Outputs are not supported by skill: Landmarks"kontrollera sökvägen. Både kändisar och landmärken är fastigheter under detail.
"categories":[
{
"name":"building_",
"score":0.97265625,
"detail":{
"landmarks":[
{
"name":"Forbidden City",
"confidence":0.92013400793075562
}
]