Megosztás a következőn keresztül:


Azure AI Vision Image Analysis ügyfélkódtár JavaScripthez – 1.0.0-beta.3-s verzió

A Képelemzési szolgáltatás AI-algoritmusokat biztosít a képek feldolgozásához és a tartalommal kapcsolatos információk visszaadáshoz. Egyetlen szolgáltatáshívásban egyszerre kinyerhet egy vagy több vizualizációs funkciót a képből, beleértve a kép feliratának lekérését, a képen látható szöveg kinyerését (OCR) és az objektumok észlelését. A szolgáltatásról és a támogatott vizualizációs funkciókról további információt Képelemzés áttekintéseés a Fogalmak oldalon talál.

A Képelemzés ügyfélkódtár használatával:

  • Hitelesítés a szolgáltatáson
  • A kinyerni kívánt funkciók megadása
  • Kép feltöltése elemzéshez vagy kép URL-címének elküldése
  • Az elemzés eredményének lekérése

Termékdokumentáció | Minták | Vision Studio | API referenciadokumentációja | Csomag (npm) | SDK-forráskód

Kezdetekhez

Jelenleg támogatott környezetek

  • Node.js LTS-verziói
  • A Safari, a Chrome, az Edge és a Firefox legújabb verziói.

További részletekért tekintse meg a támogatási szabályzat.

Előfeltételek

  • Egy Azure-előfizetés.
  • Egy Computer Vision-erőforrás az Azure-előfizetésben.
    • A szolgáltatáson való hitelesítéshez szüksége lesz az erőforrás kulcsára és végpontjára.
    • Az ingyenes tarifacsomag (F0) használatával kipróbálhatja a szolgáltatást, és később frissíthet egy fizetős szintre az éles környezetben.
    • Vegye figyelembe, hogy a képelemzés Caption vagy Dense Captions funkciókkal való futtatásához az Azure-erőforrásnak az alábbi GPU-támogatott régiók egyikéből kell származnia: East US, France Central, Korea Central, North Europe, Southeast Asia, West Europevagy West US.

A @azure-rest/ai-vision-image-analysis csomag telepítése

Telepítse a JavaScript képelemzési ügyfélkódtárát a npm:

npm install @azure-rest/ai-vision-image-analysis

Böngészőtámogatás

JavaScript-csomag

Ahhoz, hogy ezt az ügyfélkódtárat a böngészőben használhassa, először egy kötegelőt kell használnia. Ennek módjáról további információt a csomagküldő dokumentációbantalál.

Főbb fogalmak

Miután inicializált egy ImageAnalysisClient, ki kell választania egy vagy több elemezni kívánt vizuális funkciót. A beállításokat a VisualFeaturesenumerálási osztály adja meg. A következő funkciók támogatottak:

  1. VisualFeatures.Caption: (Példák | minták) Egy kép tartalmát leíró, ember által olvasható mondat létrehozása.
  2. VisualFeatures.Read: (Példák | minták) Más néven optikai karakterfelismerés (OCR). Nyomtatott vagy kézzel írt szöveg kinyerve képekből.
  3. VisualFeatures.DenseCaptions: A sűrű feliratok további részleteket nyújtanak, ha egy mondatos feliratokat hoznak létre a kép legfeljebb 10 különböző régiójához, köztük a teljes képhez.
  4. VisualFeatures.Tags: A képeken megjelenő felismerhető objektumok, élőlények, tájak és műveletek ezreinek tartalomcímkék kinyerése.
  5. VisualFeatures.Objects: Objektumészlelés. Ez hasonló a címkézéshez, de a kép fizikai objektumainak észlelésére és a helyük visszaadására összpontosít.
  6. VisualFeatures.SmartCrops: A kép egy reprezentatív alrégiójának megkeresésére szolgál miniatűr-létrehozáshoz, amelynek prioritása az arcok belefoglalása.
  7. VisualFeatures.People: Keresse meg a képen szereplő személyeket, és adja vissza a tartózkodási helyét.

További információ ezekről a funkciókról: Képelemzés áttekintéseés a Fogalmak oldalon.

Támogatott képformátumok

A képelemzés az alábbi követelményeknek megfelelő képeken működik:

  • A képet JPEG, PNG, GIF, BMP, WEBP, ICO, TIFF vagy MPO formátumban kell bemutatni
  • A kép fájlméretének 20 megabájtnál (MB) kisebbnek kell lennie
  • A kép méretének 50 x 50 képpontnál nagyobbnak és 16 000 x 16 000 képpontnál kisebbnek kell lennie

ImageAnalysisClient

A ImageAnalysisClient az elsődleges felület a képelemzési szolgáltatással kommunikáló fejlesztők számára. Átjáróként szolgál, ahonnan minden interakció megtörténik a tárral.

Példák

Az ügyfél hitelesítése

Íme egy példa arra, hogyan hozhat létre ImageAnalysisClient-példányt kulcsalapú hitelesítéssel.

const key = "<your_key>";
const credential = new AzureKeyCredential(key);

const client = new ImageAnalysisClient(endpoint, credential);

const { ImageAnalysisClient } = require("@azure-rest/ai-vision-image-analysis");
const { AzureKeyCredential } = require('@azure/core-auth');

const endpoint = "<your_endpoint>";
const key = "<your_key>";
const credential = new AzureKeyCredential(key);

const client = new ImageAnalysisClient(endpoint, credential);

ImageAnalysisClient létrehozása Microsoft Entra ID hitelesítő adatokkal

Az első lépések útmutatójának legtöbb példájában ügyfél-előfizetéskulcs-hitelesítést használunk, de az [Azure Identity-kódtár][azure_identity] használatával Microsoft Entra-azonosítóval (korábban Azure Active Directory) is hitelesíthet. Az alább látható [DefaultAzureCredential][azure_identity_dac] szolgáltató vagy az Azure SDK-hoz biztosított egyéb hitelesítő adatok szolgáltatójának használatához telepítse az Azure.Identity csomagot:

npm install @azure/identity
const endpoint = "<your_endpoint>";
const credential = new DefaultAzureCredential();

const client = new ImageAnalysisClient(endpoint, credential);

Kép elemzése URL-címről

Az alábbi példa bemutatja, hogyan elemezhet egy képet a JavaScript képelemzési ügyfélkódtárával.

const imageUrl = "https://example.com/image.jpg";
const features = ["Caption", "DenseCaptions", "Objects", "People", "Read", "SmartCrops", "Tags"];

async function analyzeImageFromUrl() {
  const result = await client.path("/imageanalysis:analyze").post({
    body: {
      url: imageUrl,
    },
    queryParameters: {
      features: features,
      "smartCrops-aspect-ratios": [0.9, 1.33],
    },
    contentType: "application/json",
  });

  console.log("Image analysis result:", result.body);
}

analyzeImageFromUrl();

Kép elemzése helyi fájlból

Ebben a példában egy helyi fájl képét fogjuk elemezni a JavaScript képelemzési ügyfélkódtárával.

const fs = require("fs");

const imagePath = "./path/to/your/image.jpg";
const features = ["Caption", "DenseCaptions", "Objects", "People", "Read", "SmartCrops", "Tags"];

async function analyzeImageFromFile() {
  const imageBuffer = fs.readFileSync(imagePath);

  const result = await client.path("/imageanalysis:analyze").post({
    body: imageBuffer,
    queryParameters: {
      features: features,
      "smartCrops-aspect-ratios": [0.9, 1.33],
    },
    contentType: "application/octet-stream",
  });

  console.log("Image analysis result:", result.body);
}

analyzeImageFromFile();

Szöveg kinyerése kép URL-címéből

Ez a példa bemutatja, hogyan nyerhet ki nyomtatott vagy kézzel írt szöveget a képfájlhoz sample.jpg az ImageAnalysisClient használatával. A metódushívás egy ImageAnalysisResult objektumot ad vissza. A visszaadott objektum ReadResult tulajdonsága tartalmazza a szövegsorok listáját és az egyes szövegsorokat körülvevő határoló sokszöget. Az egyes sorokhoz a szövegsorban lévő szavak listáját és az egyes szavakat körülvevő határoló sokszöget is visszaadja.

const client: ImageAnalysisClient = createImageAnalysisClient(endpoint, credential);

const features: string[] = [
  'Read'
];

const imageUrl: string = 'https://aka.ms/azsdk/image-analysis/sample.jpg';

client.path('/imageanalysis:analyze').post({
  body: { url: imageUrl },
  queryParameters: { features: features },
  contentType: 'application/json'
}).then(result => {
  const iaResult: ImageAnalysisResultOutput = result.body as ImageAnalysisResultOutput;

  // Process the response
  if (iaResult.readResult && iaResult.readResult.blocks.length > 0) {
    iaResult.readResult.blocks.forEach(block => {
      console.log(`Detected text block: ${JSON.stringify(block)}`);
    });
  } else {
    console.log('No text blocks detected.');
  }

Hibaelhárítás

Fakitermelés

A naplózás engedélyezése segíthet a hibákról szóló hasznos információk feltárásában. A HTTP-kérések és válaszok naplójának megtekintéséhez állítsa a AZURE_LOG_LEVEL környezeti változót info. Másik lehetőségként a naplózás futásidőben is engedélyezhető a setLogLevel meghívásával a @azure/logger:

const { setLogLevel } = require("@azure/logger");

setLogLevel("info");

A naplók engedélyezésére vonatkozó részletesebb útmutatásért tekintse meg a @azure/logger csomag dokumentációit.

Következő lépések

Az ügyfélkódtárak használatát bemutató részletes példákért tekintse meg a mintákat könyvtárat.

Hozzájárulás

Ha hozzá szeretne járulni ehhez a kódtárhoz, olvassa el a közreműködői útmutatót, amelyből többet is megtudhat a kód összeállításáról és teszteléséről.