OCR (Read) エディション
重要
要件に最も適した Read エディションを選択します。
| 入力 | 例 | Read エディション | 長所 |
|---|---|---|---|
| 画像: 一般的な、野生の画像 | ラベル、道路標識、ポスター | イメージの OCR (バージョン 4.0) | OCR をユーザー エクスペリエンス シナリオに簡単に埋め込むことができる、パフォーマンスが向上した同期 API を使用して、ドキュメント以外の一般的な画像用に最適化されています。 |
| ドキュメント: デジタルとスキャン (画像を含む) | 書籍、記事、レポート | ドキュメント インテリジェンス読み取りモデル | インテリジェントなドキュメント処理を大規模に自動化するために、非同期 API を使用してテキストの量が多いスキャンおよびデジタル ドキュメント用に最適化されています。 |
Azure AI Vision v3.2 GA Read について
最新の Azure AI Vision v3.2 GA Read をお探しですか? 今後のすべての OCR の読み取り拡張機能は、前述の 2 つのサービスの一部です。 Azure Vision v3.2 のそれ以上の更新はありません。 詳細については、「 Azure Vision 3.2 GA Read API の呼び出 し」と 「クイック スタート: Azure Vision v3.2 GA Read」を参照してください。
Foundry Tools Read REST API またはクライアント ライブラリで Azure Vision の使用を開始します。 Read APIは、画像からテキストを抽出し、それを構造化文字列として返す AI アルゴリズムを提供します。 以下の手順に従って、パッケージを自分のアプリケーションにインストールし、基本タスクのコード例を試してみましょう。
光学式文字認識 (OCR) クライアント ライブラリを使用して、画像から印刷されたテキストや手書きのテキストを読み取ります。 OCR サービスは、画像に映っているテキストを読み取って、文字ストリームに変換することができます。 テキスト認識の詳細については、 OCR の概要を参照してください。 このセクションのコードでは、 Foundry Tools パッケージの最新の Azure Vision を 使用します。
ヒント
ローカルの画像からテキストを抽出することもできます。 ReadInStreamAsync などの ComputerVisionClient メソッドを参照してください。 または、ローカル イメージを含むシナリオについては、 GitHub のサンプル コードを参照してください。
リファレンス ドキュメント | ライブラリのソース コード | パッケージ (NuGet) | サンプル
前提条件
- Azure サブスクリプション - 無料で作成します。
- Visual Studio IDE または .NET Core の現在のバージョン。
-
Azure AI Vision リソース。 Free 価格レベル (
F0) を使用してサービスを試用し、後から運用環境用の有料レベルにアップグレードすることができます。 - アプリケーションを Azure Vision に接続するために作成するリソースのキーとエンドポイント。
- Azure Vision リソースがデプロイされたら、[ リソースに移動] を選択します。
- 左側のウィンドウで、[ キーとエンドポイント] を選択します。
- クイックスタートの後半で使用するために、いずれかのキーと エンドポイント をコピーします。
環境変数を作成する
この例では、アプリケーションを実行しているローカル コンピューター上の環境変数に資格情報を書き込みます。
Azure Portal にアクセスします。 「前提条件」セクションで作成したリソースが正常にデプロイされた場合は、[次の手順] の [リソースに移動] を選択します。 キーとエンドポイントは、Face リソースの [キーとエンドポイント] ページの [リソース管理] で確認できます。 リソース キーは Azure サブスクリプション ID と同じではありません。
キーとエンドポイントの環境変数を設定するには、コンソール ウィンドウを開き、オペレーティング システムと開発環境の指示に従います。
-
VISION_KEY環境変数を設定するには、<your_key>をリソースのキーの 1 つに置き換えます。 -
VISION_ENDPOINT環境変数を設定するには、<your_endpoint>をリソースのエンドポイントに置き換えます。
重要
クラウドで実行されるアプリケーションに資格情報を格納しないように、 Azure リソースのマネージド ID を 使用した Microsoft Entra ID 認証をお勧めします。
API キーは慎重に使用してください。 API キーは、コード内に直接含めないようにし、絶対に公開しないでください。 API キーを使用する場合は、Azure Key Vault に安全に格納し、キーを定期的にローテーションし、ロールベースのアクセス制御とネットワーク アクセス制限を使用して Azure Key Vault へのアクセスを制限してください。 アプリで API キーを安全に使用する方法の詳細については、 Azure Key Vault での API キーに関するページを参照してください。
AI サービスのセキュリティの詳細については、「 Azure AI サービスへの要求を認証する」を参照してください。
setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>
環境変数を追加した後、実行中のプログラムのうち、環境変数を読み取るプログラム (コンソール ウィンドウを含む) の再起動が必要となる場合があります。
印刷されたテキストと手書きのテキストを読み取る
新しい C# アプリケーションを作成します。
Visual Studio を使用して、C#、Windows、Console 用のコンソール アプリ (.NET Framework) プロジェクトを作成します。
新しいプロジェクトを作成したら、クライアント ライブラリをインストールします。
- ソリューション エクスプローラーでプロジェクト ソリューションを右クリックし、[ソリューションの NuGet パッケージの管理] を選択します。
- 開いたパッケージ マネージャーで、[参照] を選択します。 [ プレリリースを含める] を選択します。
-
Microsoft.Azure.CognitiveServices.Vision.ComputerVisionを検索して選択します。 - 詳細のダイアログ ボックスで、プロジェクトを選択し、最新の安定バージョンを選択します。 次に、[インストール] を選択 します。
プロジェクト ディレクトリから、任意のエディターまたは IDE で Program.cs ファイルを開きます。 Program.csの内容を次のコードに置き換えます。
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"); private const string READ_TEXT_URL_IMAGE = "https://raw.githubusercontent.com/Azure-Samples/cognitive-services-sample-data-files/master/ComputerVision/Images/printed_text.jpg"; static void Main(string[] args) { Console.WriteLine("Azure Cognitive Services Computer Vision - .NET quickstart example"); Console.WriteLine(); ComputerVisionClient client = Authenticate(endpoint, key); // Extract text (OCR) from a URL image using the Read API ReadFileUrl(client, READ_TEXT_URL_IMAGE).Wait(); } public static ComputerVisionClient Authenticate(string endpoint, string key) { ComputerVisionClient client = new ComputerVisionClient(new ApiKeyServiceClientCredentials(key)) { Endpoint = endpoint }; return client; } public static async Task ReadFileUrl(ComputerVisionClient client, string urlFile) { Console.WriteLine("----------------------------------------------------------"); Console.WriteLine("READ FILE FROM URL"); Console.WriteLine(); // Read text from URL var textHeaders = await client.ReadAsync(urlFile); // After the request, get the operation location (operation ID) string operationLocation = textHeaders.OperationLocation; Thread.Sleep(2000); // Retrieve the URI where the extracted text will be stored from the Operation-Location header. // We only need the ID and not the full URL const int numberOfCharsInOperationId = 36; string operationId = operationLocation.Substring(operationLocation.Length - numberOfCharsInOperationId); // Extract the text ReadOperationResult results; Console.WriteLine($"Extracting text from URL file {Path.GetFileName(urlFile)}..."); Console.WriteLine(); do { results = await client.GetReadResultAsync(Guid.Parse(operationId)); } while ((results.Status == OperationStatusCodes.Running || results.Status == OperationStatusCodes.NotStarted)); // Display the found text. Console.WriteLine(); var textUrlFileResults = results.AnalyzeResult.ReadResults; foreach (ReadResult page in textUrlFileResults) { foreach (Line line in page.Lines) { Console.WriteLine(line.Text); } } Console.WriteLine(); } } }オプションの手順として、「 データの処理方法を決定する」を参照してください。 たとえば、最新の GA モデルを明示的に指定するには、次のように
ReadAsync呼び出しを編集します。 パラメータをスキップするか、"latest"を使用して最新の GA モデルを使用します。// Read text from URL with a specific model version var textHeaders = await client.ReadAsync(urlFile,null,null,"2022-04-30");アプリケーションを実行します。
- [ デバッグ ] メニューの [ デバッグの開始] を選択します。
出力
Azure Vision - .NET quickstart example
----------------------------------------------------------
READ FILE FROM URL
Extracting text from URL file printed_text.jpg...
Nutrition Facts Amount Per Serving
Serving size: 1 bar (40g)
Serving Per Package: 4
Total Fat 13g
Saturated Fat 1.5g
Amount Per Serving
Trans Fat 0g
Calories 190
Cholesterol 0mg
Calories from Fat 110
Sodium 20mg
nt Daily Values are based on Vitamin A 50%
calorie diet.
リソースをクリーンアップする
Foundry Tools サブスクリプションをクリーンアップして削除する場合は、リソースまたはリソース グループを削除できます。 リソース グループを削除すると、それに関連付けられている他のリソースも削除されます。
次のステップ
このクイックスタートでは、OCR クライアント ライブラリをインストールし、Read API を使用する方法について学習しました。 次は、Read API の機能の詳細について学習しましょう。
光学式文字認識 (OCR) クライアント ライブラリを使用して、リモート画像から印刷されたテキストや手書きのテキストを読み取ります。 OCR サービスは、画像に映っているテキストを読み取って、文字ストリームに変換することができます。 テキスト認識の詳細については、 OCR の概要を参照してください。
ヒント
また、ローカルの画像からテキストを読み取ることもできます。 read_in_streamなど、 ComputerVisionClientOperationsMixin メソッドを参照 してください。 または、ローカル イメージを含むシナリオについては、 GitHub のサンプル コードを参照してください。
リファレンス ドキュメント | ライブラリのソース コード | パッケージ (PiPy) | サンプル
前提条件
- Azure サブスクリプション - 無料で作成します。
- Python 3.x。
- Python のインストールには pip を含める必要があります。 pip がインストールされているかどうかを確認するには、コマンド ラインで
pip --versionを実行します。 最新バージョンの Python をインストールして pip を入手してください。 -
。 Free 価格レベル (
F0) を使用してサービスを試用し、後から運用環境用の有料レベルにアップグレードすることができます。 - アプリケーションを Azure Vision に接続するために作成するリソースのキーとエンドポイント。
- Azure Vision リソースがデプロイされたら、[ リソースに移動] を選択します。
- 左側のウィンドウで、[ キーとエンドポイント] を選択します。
- クイックスタートの後半で使用するために、いずれかのキーと エンドポイント をコピーします。
環境変数を作成する
この例では、アプリケーションを実行しているローカル コンピューター上の環境変数に資格情報を書き込みます。
Azure Portal にアクセスします。 「前提条件」セクションで作成したリソースが正常にデプロイされた場合は、[次の手順] の [リソースに移動] を選択します。 キーとエンドポイントは、Face リソースの [キーとエンドポイント] ページの [リソース管理] で確認できます。 リソース キーは Azure サブスクリプション ID と同じではありません。
キーとエンドポイントの環境変数を設定するには、コンソール ウィンドウを開き、オペレーティング システムと開発環境の指示に従います。
-
VISION_KEY環境変数を設定するには、<your_key>をリソースのキーの 1 つに置き換えます。 -
VISION_ENDPOINT環境変数を設定するには、<your_endpoint>をリソースのエンドポイントに置き換えます。
重要
クラウドで実行されるアプリケーションに資格情報を格納しないように、 Azure リソースのマネージド ID を 使用した Microsoft Entra ID 認証をお勧めします。
API キーは慎重に使用してください。 API キーは、コード内に直接含めないようにし、絶対に公開しないでください。 API キーを使用する場合は、Azure Key Vault に安全に格納し、キーを定期的にローテーションし、ロールベースのアクセス制御とネットワーク アクセス制限を使用して Azure Key Vault へのアクセスを制限してください。 アプリで API キーを安全に使用する方法の詳細については、 Azure Key Vault での API キーに関するページを参照してください。
AI サービスのセキュリティの詳細については、「 Azure AI サービスへの要求を認証する」を参照してください。
setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>
環境変数を追加した後、実行中のプログラムのうち、環境変数を読み取るプログラム (コンソール ウィンドウを含む) の再起動が必要となる場合があります。
印刷されたテキストと手書きのテキストを読み取る
クライアント ライブラリをインストールします。
コンソール ウィンドウで、次のコマンドを実行します。
pip install --upgrade azure-cognitiveservices-vision-computervisionPillow ライブラリをインストールします。
pip install pillow新しい Python アプリケーション ファイルを作成 quickstart-file.py。 次に、お好きなエディターまたは IDE で開きます。
quickstart-file.py の内容を次のコードに置き換えます。
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 ''' ''' OCR: Read File using the Read API, extract text - remote This example will extract text in an image, then print results, line by line. This API call can also extract handwriting style text (not shown). ''' print("===== Read File - remote =====") # Get an image with text read_image_url = "https://learn.microsoft.com/azure/ai-services/computer-vision/media/quickstarts/presentation.png" # Call API with URL and raw response (allows you to get the operation location) read_response = computervision_client.read(read_image_url, raw=True) # Get the operation location (URL with an ID at the end) from the response read_operation_location = read_response.headers["Operation-Location"] # Grab the ID from the URL operation_id = read_operation_location.split("/")[-1] # Call the "GET" API and wait for it to retrieve the results while True: read_result = computervision_client.get_read_result(operation_id) if read_result.status not in ['notStarted', 'running']: break time.sleep(1) # Print the detected text, line by line if read_result.status == OperationStatusCodes.succeeded: for text_result in read_result.analyze_result.read_results: for line in text_result.lines: print(line.text) print(line.bounding_box) print() ''' END - Read File - remote ''' print("End of Computer Vision quickstart.")オプションの手順として、「 データの処理方法を決定する」を参照してください。 たとえば、最新の GA モデルを明示的に指定するには、次のように
readステートメントを編集します。 パラメーターを省くか"latest"を使用すると、最新の GA モデルが自動的に使用されます。# Call API with URL and raw response (allows you to get the operation location) read_response = computervision_client.read(read_image_url, raw=True, model_version="2022-04-30")クイック スタート ファイルで
pythonコマンドを使用して、アプリケーションを実行します。python quickstart-file.py
出力
===== Read File - remote =====
The quick brown fox jumps
[38.0, 650.0, 2572.0, 699.0, 2570.0, 854.0, 37.0, 815.0]
Over
[184.0, 1053.0, 508.0, 1044.0, 510.0, 1123.0, 184.0, 1128.0]
the lazy dog!
[639.0, 1011.0, 1976.0, 1026.0, 1974.0, 1158.0, 637.0, 1141.0]
End of Azure Vision quickstart.
リソースをクリーンアップする
Foundry Tools サブスクリプションをクリーンアップして削除する場合は、リソースまたはリソース グループを削除できます。 リソース グループを削除すると、それに関連付けられている他のリソースも削除されます。
次のステップ
このクイックスタートでは、OCR クライアント ライブラリをインストールし、Read API を使用する方法について学習しました。 次は、Read API の機能の詳細について学習しましょう。
光学式文字認識 (OCR) クライアント ライブラリを使用し、Read API を使用して、画像内の印刷されたテキストや手書きのテキストを読み取ります。 OCR サービスは、画像に映っているテキストを読み取って、文字ストリームに変換することができます。 テキスト認識の詳細については、 OCR の概要を参照してください。
ヒント
また、ローカルの画像からテキストを読み取ることもできます。 ReadInStream などの ComputerVisionClient メソッドを参照してください。 または、ローカル イメージを含むシナリオについては、 GitHub のサンプル コードを参照してください。
リファレンス ドキュメント | パッケージ (npm) | サンプル
前提条件
- Azure サブスクリプション - 無料で作成します。
- Node.jsの現在のバージョン。
-
。 Free 価格レベル (
F0) を使用してサービスを試用し、後から運用環境用の有料レベルにアップグレードすることができます。 - アプリケーションを Azure Vision に接続するために作成するリソースのキーとエンドポイント。
- Azure Vision リソースがデプロイされたら、[ リソースに移動] を選択します。
- 左側のウィンドウで、[ キーとエンドポイント] を選択します。
- クイックスタートの後半で使用するために、いずれかのキーと エンドポイント をコピーします。
環境変数を作成する
この例では、アプリケーションを実行しているローカル コンピューター上の環境変数に資格情報を書き込みます。
Azure Portal にアクセスします。 「前提条件」セクションで作成したリソースが正常にデプロイされた場合は、[次の手順] の [リソースに移動] を選択します。 キーとエンドポイントは、Face リソースの [キーとエンドポイント] ページの [リソース管理] で確認できます。 リソース キーは Azure サブスクリプション ID と同じではありません。
キーとエンドポイントの環境変数を設定するには、コンソール ウィンドウを開き、オペレーティング システムと開発環境の指示に従います。
-
VISION_KEY環境変数を設定するには、<your_key>をリソースのキーの 1 つに置き換えます。 -
VISION_ENDPOINT環境変数を設定するには、<your_endpoint>をリソースのエンドポイントに置き換えます。
重要
クラウドで実行されるアプリケーションに資格情報を格納しないように、 Azure リソースのマネージド ID を 使用した Microsoft Entra ID 認証をお勧めします。
API キーは慎重に使用してください。 API キーは、コード内に直接含めないようにし、絶対に公開しないでください。 API キーを使用する場合は、Azure Key Vault に安全に格納し、キーを定期的にローテーションし、ロールベースのアクセス制御とネットワーク アクセス制限を使用して Azure Key Vault へのアクセスを制限してください。 アプリで API キーを安全に使用する方法の詳細については、 Azure Key Vault での API キーに関するページを参照してください。
AI サービスのセキュリティの詳細については、「 Azure AI サービスへの要求を認証する」を参照してください。
setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>
環境変数を追加した後、実行中のプログラムのうち、環境変数を読み取るプログラム (コンソール ウィンドウを含む) の再起動が必要となる場合があります。
印刷されたテキストと手書きのテキストを読み取る
新しい Node.js アプリケーションを作成します。
コンソール ウィンドウで、アプリの新しいディレクトリを作成し、そのディレクトリに移動します。
mkdir myapp cd myappnpm initコマンドを実行し、package.jsonファイルを使用して node アプリケーションを作成します。 プロンプトが表示されたら、Enter を選択します。npm initクライアント ライブラリをインストールするには、
ms-rest-azureと@azure/cognitiveservices-computervisionnpm パッケージをインストールします。npm install ms-rest-azure npm install @azure/cognitiveservices-computervisionasync モジュールをインストールします。
npm install asyncアプリの
package.jsonファイルが依存関係によって更新されます。新しいファイルを作成 してindex.jsし、テキスト エディターで開きます。
次のコードを index.js ファイルに貼り付けます。
'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 () { /** * OCR: READ PRINTED & HANDWRITTEN TEXT WITH THE READ API * Extracts text from images using OCR (optical character recognition). */ console.log('-------------------------------------------------'); console.log('READ PRINTED, HANDWRITTEN TEXT AND PDF'); console.log(); // URL images containing printed and/or handwritten text. // The URL can point to image files (.jpg/.png/.bmp) or multi-page files (.pdf, .tiff). const printedTextSampleURL = 'https://raw.githubusercontent.com/Azure-Samples/cognitive-services-sample-data-files/master/ComputerVision/Images/printed_text.jpg'; // Recognize text in printed image from a URL console.log('Read printed text from URL...', printedTextSampleURL.split('/').pop()); const printedResult = await readTextFromURL(computerVisionClient, printedTextSampleURL); printRecText(printedResult); // Perform read and await the result from URL async function readTextFromURL(client, url) { // To recognize text in a local image, replace client.read() with readTextInStream() as shown: let result = await client.read(url); // Operation ID is last path segment of operationLocation (a URL) let operation = result.operationLocation.split('/').slice(-1)[0]; // Wait for read recognition to complete // result.status is initially undefined, since it's the result of read while (result.status !== "succeeded") { await sleep(1000); result = await client.getReadResult(operation); } return result.analyzeResult.readResults; // Return the first page of result. Replace [0] with the desired page if this is a multi-page file such as .pdf or .tiff. } // Prints all text from Read result function printRecText(readResults) { console.log('Recognized text:'); for (const page in readResults) { if (readResults.length > 1) { console.log(`==== Page: ${page}`); } const result = readResults[page]; if (result.lines.length) { for (const line of result.lines) { console.log(line.words.map(w => w.text).join(' ')); } } else { console.log('No recognized text.'); } } } /** * * Download the specified file in the URL to the current local folder * */ function downloadFilesToLocal(url, localFileName) { return new Promise((resolve, reject) => { console.log('--- Downloading file to local directory from: ' + url); const request = https.request(url, (res) => { if (res.statusCode !== 200) { console.log(`Download sample file failed. Status code: ${res.statusCode}, Message: ${res.statusMessage}`); reject(); } var data = []; res.on('data', (chunk) => { data.push(chunk); }); res.on('end', () => { console.log(' ... Downloaded successfully'); fs.writeFileSync(localFileName, Buffer.concat(data)); resolve(); }); }); request.on('error', function (e) { console.log(e.message); reject(); }); request.end(); }); } /** * END - Recognize Printed & Handwritten Text */ console.log(); console.log('-------------------------------------------------'); console.log('End of quickstart.'); }, function () { return new Promise((resolve) => { resolve(); }) } ], (err) => { throw (err); }); } computerVision();オプションの手順として、「 データの処理方法を決定する」を参照してください。 たとえば、最新の GA モデルを明示的に指定するには、次のように
readステートメントを編集します。 パラメーターを省くか"latest"を使用すると、最新の GA モデルが自動的に使用されます。let result = await client.read(url,{modelVersion:"2022-04-30"});クイック スタート ファイルで
nodeコマンドを使用して、アプリケーションを実行します。node index.js
出力
-------------------------------------------------
READ PRINTED, HANDWRITTEN TEXT AND PDF
Read printed text from URL... printed_text.jpg
Recognized text:
Nutrition Facts Amount Per Serving
Serving size: 1 bar (40g)
Serving Per Package: 4
Total Fat 13g
Saturated Fat 1.5g
Amount Per Serving
Trans Fat 0g
Calories 190
Cholesterol 0mg
ories from Fat 110
Sodium 20mg
nt Daily Values are based on Vitamin A 50%
calorie diet.
-------------------------------------------------
End of quickstart.
リソースをクリーンアップする
Foundry Tools サブスクリプションをクリーンアップして削除する場合は、リソースまたはリソース グループを削除できます。 リソース グループを削除すると、それに関連付けられている他のリソースも削除されます。
次のステップ
このクイックスタートでは、OCR クライアント ライブラリをインストールし、Read API を使用する方法について学習しました。 次は、Read API の機能の詳細について学習しましょう。
光学式文字認識 (OCR) REST API を使用して、印刷されたテキストや手書きのテキストを読み取ります。
注
このクイックスタートでは、cURL コマンドを使用して REST API を呼び出します。 また、プログラミング言語を使用して REST API を呼び出すこともできます。 C#、Python、Java、JavaScript の例については、GitHub のサンプルを参照してください。
前提条件
- Azure サブスクリプション - 無料で作成します。
- cURL がインストールされています。
-
。 Free 価格レベル (
F0) を使用してサービスを試用し、後から運用環境用の有料レベルにアップグレードすることができます。 - アプリケーションを Azure Vision に接続するために作成するリソースのキーとエンドポイント。
- Azure Vision リソースがデプロイされたら、[ リソースに移動] を選択します。
- 左側のウィンドウで、[ キーとエンドポイント] を選択します。
- クイックスタートの後半で使用するために、いずれかのキーと エンドポイント をコピーします。
印刷されたテキストと手書きのテキストを読み取る
光学式文字認識 (OCR) サービスを使用すると、画像またはドキュメント内の可視テキストを抽出し、文字ストリームに変換することができます。 テキスト抽出の詳細については、 OCR の概要を参照してください。
Read API を呼び出す
このサンプルを作成して実行するには、次の手順を実行します。
テキスト エディターに次のコマンドをコピーします。
必要に応じて、コマンドに次の変更を加えます。
-
<key>の値をキーに置き換えます。 - 要求 URL (
https://westcentralus.api.cognitive.microsoft.com/) の最初の部分を独自のエンドポイント URL 内のテキストに置き換えます。注
2019 年 7 月 1 日より後に作成された新しいリソースには、カスタム サブドメイン名が使用されます。 リージョン エンドポイントの詳細と完全な一覧については、「 Foundry Tools のカスタム サブドメイン名」を参照してください。
- 必要に応じて、要求本文の画像 URL (
https://learn.microsoft.com/azure/ai-services/computer-vision/media/quickstarts/presentation.png) を、分析する別の画像の URL に変更します。
-
コマンド プロンプト ウィンドウを開きます。
テキスト エディターからコマンド プロンプト ウィンドウにコマンドを貼り付けて、コマンドを実行します。
curl -v -X POST "https://westcentralus.api.cognitive.microsoft.com/vision/v3.2/read/analyze" -H "Content-Type: application/json" -H "Ocp-Apim-Subscription-Key: <subscription key>" --data-ascii "{'url':'https://learn.microsoft.com/azure/ai-services/computer-vision/media/quickstarts/presentation.png'}"
応答には Operation-Location ヘッダーが含まれ、その値は一意の URL になります。 この URL を使用して、読み取り操作の結果に対してクエリを実行します。 URL の有効期間は 48 時間です。
必要に応じて、モデルのバージョンを指定する
オプションの手順として、「 データの処理方法を決定する」を参照してください。 たとえば、最新の GA モデルを明示的に指定するには、model-version=2022-04-30 をパラメーターとして使用します。 パラメーターを省くか model-version=latest を使用すると、最新の GA モデルが自動的に使用されます。
curl -v -X POST "https://westcentralus.api.cognitive.microsoft.com/vision/v3.2/read/analyze?model-version=2022-04-30" -H "Content-Type: application/json" -H "Ocp-Apim-Subscription-Key: <subscription key>" --data-ascii "{'url':'https://learn.microsoft.com/azure/ai-services/computer-vision/media/quickstarts/presentation.png'}"
読み取りの結果を取得する
テキスト エディターに次のコマンドをコピーします。
URL を前の手順でコピーした
Operation-Location値に置き換えます。<key>の値をキーに置き換えます。コンソール ウィンドウを開きます。
テキスト エディターからコンソール ウィンドウにコマンドを貼り付けて、コマンドを実行します。
curl -v -X GET "https://westcentralus.api.cognitive.microsoft.com/vision/v3.2/read/analyzeResults/{operationId}" -H "Ocp-Apim-Subscription-Key: {key}" --data-ascii "{body}"
結果の確認
成功応答が JSON で返されます。 サンプル アプリケーションによって成功応答が解析され、次の例のようにコンソール ウィンドウに表示されます。
{
"status": "succeeded",
"createdDateTime": "2021-04-08T21:56:17.6819115+00:00",
"lastUpdatedDateTime": "2021-04-08T21:56:18.4161316+00:00",
"analyzeResult": {
"version": "3.2",
"readResults": [
{
"page": 1,
"angle": 0,
"width": 338,
"height": 479,
"unit": "pixel",
"lines": [
{
"boundingBox": [
25,
14,
318,
14,
318,
59,
25,
59
],
"text": "NOTHING",
"appearance": {
"style": {
"name": "other",
"confidence": 0.971
}
},
"words": [
{
"boundingBox": [
27,
15,
294,
15,
294,
60,
27,
60
],
"text": "NOTHING",
"confidence": 0.994
}
]
}
]
}
]
}
}
リソースをクリーンアップする
Foundry Tools サブスクリプションをクリーンアップして削除する場合は、リソースまたはリソース グループを削除できます。 リソース グループを削除すると、それに関連付けられている他のリソースも削除されます。
次のステップ
このクイックスタートでは、Read REST API を呼び出す方法について説明しました。 次は、Read API の機能の詳細について学習しましょう。