OCR (読み取り) エディション
重要
要件に最も適した Read エディションを選択します。
| 入力 | 例 | エディションを読む | 利点 |
|---|---|---|---|
| 画像: 一般的な、野生の画像 | ラベル、道路標識、ポスター | イメージの OCR (バージョン 4.0) | パフォーマンスが向上した同期 API を使用して、ドキュメント以外の一般的なイメージ用に最適化されています。これにより、OCR をユーザー エクスペリエンス のシナリオに簡単に埋め込むことができます。 |
| ドキュメント: デジタルとスキャン (画像を含む) | 書籍、記事、レポート | ドキュメント インテリジェンス読み取りモデル | インテリジェントなドキュメント処理を大規模に自動化するのに役立つ非同期 API を使用して、テキストの多いスキャンおよびデジタル ドキュメント用に最適化されています。 |
Azure Vision v3.2 GA 読み取りについて
最新のAzure Vision v3.2 GA Read をお探しですか? 今後のすべての Read OCR 拡張機能は、前に示した 2 つのサービスの一部です。 Azure Vision v3.2 に対するそれ以上の更新はありません。 詳細については、「Call Azure Vision 3.2 GA Read API および Quickstart: 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 Visionリソースを作成します。 Free 価格レベル (
F0) を使用してサービスを試し、後で運用環境用の有料レベルにアップグレードできます。 - アプリケーションを Azure Vision に接続するために作成するリソースのキーとエンドポイント。
- Azure Vision リソースがデプロイされたら、Go to resource を選択します。
- 左側のウィンドウで、[ キーとエンドポイント] を選択します。
- クイックスタートの後半で使用するために、いずれかのキーと エンドポイント をコピーします。
環境変数を作成する
この例では、アプリケーションを実行するローカル コンピューター上の環境変数に資格情報を書き込みます。
Azure ポータルに移動します。 [前提条件] セクションで作成したリソースが正常にデプロイされた場合は、[次の手順] で [リソースに移動] を選択します。 キーとエンドポイントは、Face リソースの [キーとエンドポイント] ページの [リソース管理] にあります。 リソース キーが、Azure サブスクリプション ID と同じではありません。
キーとエンドポイントの環境変数を設定するには、コンソール ウィンドウを開き、オペレーティング システムと開発環境の指示に従います。
-
VISION_KEY環境変数を設定するには、<your_key>をリソースのキーのいずれかに置き換えます。 -
VISION_ENDPOINT環境変数を設定するには、<your_endpoint>をリソースのエンドポイントに置き換えます。
重要
クラウドで実行されるアプリケーションに資格情報を格納しないように、 Azure リソースの管理された ID を使用して認証をMicrosoft Entra IDすることをお勧めします。
API キーは慎重に使用してください。 API キーをコードに直接含めず、パブリックに投稿しないでください。 API キーを使用する場合は、Azure Key Vaultに安全に格納し、キーを定期的にローテーションし、ロールベースのアクセス制御とネットワーク アクセス制限を使用してAzure Key Vaultへのアクセスを制限します。 アプリで API キーを安全に使用する方法の詳細については、「Azure Key Vault を使用した
AI サービスのセキュリティの詳細については、「Authenticate requests to Azure AI サービス」を参照してください。
setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>
環境変数を追加した後、コンソール ウィンドウを含む環境変数を読み取る実行中のプログラムを再起動することが必要になる場合があります。
印刷されたテキストと手書きのテキストを読み取る
新しい C# アプリケーションを作成します。
Visual Studioを使用して、Console App (.NET Framework) プロジェクトを C#、Windows、Console 用に作成します。
新しいプロジェクトを作成したら、クライアント ライブラリをインストールします。
- ソリューション エクスプローラー でプロジェクト ソリューションを右クリックし、 Manage NuGet Packages for Solution を選択します。
- 開いたパッケージ マネージャーで、[参照] を選択します。 [ プレリリースを含める] を選択します。
-
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 サブスクリプションをクリーンアップして削除する場合は、リソースまたはリソース グループを削除できます。 リソース グループを削除すると、それに関連付けられている他のリソースも削除されます。
- Azure ポータルでリソースをクリーンアップします
Azure CLI
次の手順
このクイック スタートでは、OCR クライアント ライブラリをインストールし、Read API を使用する方法について説明しました。 次に、読み取り API 機能の詳細を確認します。
光学式文字認識 (OCR) クライアント ライブラリを使用して、リモート画像から印刷されたテキストと手書きのテキストを読み取ります。 OCR サービスは、画像内の表示テキストを読み取り、文字ストリームに変換できます。 テキスト認識の詳細については、 OCR の概要を参照してください。
ヒント
ローカル イメージからテキストを読み取ることもできます。 read_in_streamなど、 ComputerVisionClientOperationsMixin メソッドを参照 してください。 または、ローカル イメージを含むシナリオについては、GitHub のサンプル コードを参照してください。
リファレンス ドキュメント | ライブラリのソース コード | パッケージ (PiPy) | サンプル
前提 条件
- Azure サブスクリプション - 無料で作成。
- Python 3.x。
- Pythonインストールには、pipが含まれている必要があります。 pip がインストールされているかどうかを確認し、コマンド ラインで
pip --version実行できます。 最新バージョンのPythonをインストールして pip を取得します。 -
An Azure Vision を作成します。 Free 価格レベル (
F0) を使用してサービスを試し、後で運用環境用の有料レベルにアップグレードできます。 - アプリケーションを Azure Vision に接続するために作成するリソースのキーとエンドポイント。
- Azure Vision リソースがデプロイされたら、Go to resource を選択します。
- 左側のウィンドウで、[ キーとエンドポイント] を選択します。
- クイックスタートの後半で使用するために、いずれかのキーと エンドポイント をコピーします。
環境変数を作成する
この例では、アプリケーションを実行するローカル コンピューター上の環境変数に資格情報を書き込みます。
Azure ポータルに移動します。 [前提条件] セクションで作成したリソースが正常にデプロイされた場合は、[次の手順] で [リソースに移動] を選択します。 キーとエンドポイントは、Face リソースの [キーとエンドポイント] ページの [リソース管理] にあります。 リソース キーが、Azure サブスクリプション ID と同じではありません。
キーとエンドポイントの環境変数を設定するには、コンソール ウィンドウを開き、オペレーティング システムと開発環境の指示に従います。
-
VISION_KEY環境変数を設定するには、<your_key>をリソースのキーのいずれかに置き換えます。 -
VISION_ENDPOINT環境変数を設定するには、<your_endpoint>をリソースのエンドポイントに置き換えます。
重要
クラウドで実行されるアプリケーションに資格情報を格納しないように、 Azure リソースの管理された ID を使用して認証をMicrosoft Entra IDすることをお勧めします。
API キーは慎重に使用してください。 API キーをコードに直接含めず、パブリックに投稿しないでください。 API キーを使用する場合は、Azure Key Vaultに安全に格納し、キーを定期的にローテーションし、ロールベースのアクセス制御とネットワーク アクセス制限を使用してAzure Key Vaultへのアクセスを制限します。 アプリで API キーを安全に使用する方法の詳細については、「Azure Key Vault を使用した
AI サービスのセキュリティの詳細については、「Authenticate requests to 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 サブスクリプションをクリーンアップして削除する場合は、リソースまたはリソース グループを削除できます。 リソース グループを削除すると、それに関連付けられている他のリソースも削除されます。
- Azure ポータルでリソースをクリーンアップします
Azure CLI
次の手順
このクイック スタートでは、OCR クライアント ライブラリをインストールし、Read API を使用する方法について説明しました。 次に、読み取り API 機能の詳細を確認します。
光学式文字認識 (OCR) クライアント ライブラリを使用して、読み取り API で印刷されたテキストと手書きのテキストを読み取ります。 OCR サービスは、画像内の表示テキストを読み取り、文字ストリームに変換できます。 テキスト認識の詳細については、 OCR の概要を参照してください。
ヒント
ローカル イメージからテキストを読み取ることもできます。 ReadInStream などの ComputerVisionClient メソッドを参照してください。 または、ローカル イメージを含むシナリオについては、GitHub のサンプル コードを参照してください。
リファレンス ドキュメント | パッケージ (npm) | サンプル
前提 条件
- Azure サブスクリプション - 無料で作成。
- Node.jsの現在のバージョン。
-
An Azure Vision を作成します。 Free 価格レベル (
F0) を使用してサービスを試し、後で運用環境用の有料レベルにアップグレードできます。 - アプリケーションを Azure Vision に接続するために作成するリソースのキーとエンドポイント。
- Azure Vision リソースがデプロイされたら、Go to resource を選択します。
- 左側のウィンドウで、[ キーとエンドポイント] を選択します。
- クイックスタートの後半で使用するために、いずれかのキーと エンドポイント をコピーします。
環境変数を作成する
この例では、アプリケーションを実行するローカル コンピューター上の環境変数に資格情報を書き込みます。
Azure ポータルに移動します。 [前提条件] セクションで作成したリソースが正常にデプロイされた場合は、[次の手順] で [リソースに移動] を選択します。 キーとエンドポイントは、Face リソースの [キーとエンドポイント] ページの [リソース管理] にあります。 リソース キーが、Azure サブスクリプション ID と同じではありません。
キーとエンドポイントの環境変数を設定するには、コンソール ウィンドウを開き、オペレーティング システムと開発環境の指示に従います。
-
VISION_KEY環境変数を設定するには、<your_key>をリソースのキーのいずれかに置き換えます。 -
VISION_ENDPOINT環境変数を設定するには、<your_endpoint>をリソースのエンドポイントに置き換えます。
重要
クラウドで実行されるアプリケーションに資格情報を格納しないように、 Azure リソースの管理された ID を使用して認証をMicrosoft Entra IDすることをお勧めします。
API キーは慎重に使用してください。 API キーをコードに直接含めず、パブリックに投稿しないでください。 API キーを使用する場合は、Azure Key Vaultに安全に格納し、キーを定期的にローテーションし、ロールベースのアクセス制御とネットワーク アクセス制限を使用してAzure Key Vaultへのアクセスを制限します。 アプリで API キーを安全に使用する方法の詳細については、「Azure Key Vault を使用した
AI サービスのセキュリティの詳細については、「Authenticate requests to Azure AI サービス」を参照してください。
setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>
環境変数を追加した後、コンソール ウィンドウを含む環境変数を読み取る実行中のプログラムを再起動することが必要になる場合があります。
印刷されたテキストと手書きのテキストを読み取る
新しい Node.js アプリケーションを作成します。
コンソール ウィンドウで、アプリの新しいディレクトリを作成し、そこに移動します。
mkdir myapp cd myappnpm initコマンドを実行して、package.jsonファイルを含むノード アプリケーションを作成します。 プロンプトが表示されたらEnterキーを押します。npm initクライアントライブラリをインストールするには、
ms-rest-azureと npm パッケージ@azure/cognitiveservices-computervisionをインストールします。npm install ms-rest-azure npm install @azure/cognitiveservices-computervision非同期モジュールをインストールします。
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 サブスクリプションをクリーンアップして削除する場合は、リソースまたはリソース グループを削除できます。 リソース グループを削除すると、それに関連付けられている他のリソースも削除されます。
- Azure ポータルでリソースをクリーンアップします
Azure CLI
次の手順
このクイック スタートでは、OCR クライアント ライブラリをインストールし、Read API を使用する方法について説明しました。 次に、読み取り API 機能の詳細を確認します。
光学式文字認識 (OCR) REST API を使用して、印刷されたテキストと手書きのテキストを読み取ります。
メモ
このクイック スタートでは、cURL コマンドを使用して REST API を呼び出します。 また、プログラミング言語を使用して REST API を呼び出すこともできます。 C#、Python、Java、JavaScript の例については、GitHubサンプルを参照してください。
前提 条件
- Azure サブスクリプション - 無料で作成。
- cURL がインストールされています。
-
An Azure Vision を作成します。 Free 価格レベル (
F0) を使用してサービスを試し、後で運用環境用の有料レベルにアップグレードできます。 - アプリケーションを Azure Vision に接続するために作成するリソースのキーとエンドポイント。
- Azure Vision リソースがデプロイされたら、Go to resource を選択します。
- 左側のウィンドウで、[ キーとエンドポイント] を選択します。
- クイックスタートの後半で使用するために、いずれかのキーと エンドポイント をコピーします。
印刷されたテキストと手書きのテキストを読み取る
光学式文字認識 (OCR) サービスでは、画像またはドキュメント内の表示テキストを抽出し、文字ストリームに変換できます。 テキスト抽出の詳細については、 OCR の概要を参照してください。
Read API を呼び出す
サンプルを作成して実行するには、次の手順を実行します。
次のコマンドをテキスト エディターにコピーします。
必要に応じ、コマンドで次の変更を行います。
-
<key>の値をキーに置き換えます。 - 要求 URL (
https://westcentralus.api.cognitive.microsoft.com/) の最初の部分を、独自のエンドポイント URL のテキストに置き換えます。メモ
2019 年 7 月 1 日以降に作成された新しいリソースでは、カスタム サブドメイン名が使用されます。 リージョン エンドポイントの詳細と完全な一覧については、「 Foundry Tools のカスタム サブドメイン名」を参照してください。
- 必要に応じて、要求本文 (
https://learn.microsoft.com/azure/ai-services/computer-vision/media/quickstarts/presentation.png) の画像 URL を、分析する別の画像の 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'}"
応答には、値が一意の URL である Operation-Location ヘッダーが含まれます。 この 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 サブスクリプションをクリーンアップして削除する場合は、リソースまたはリソース グループを削除できます。 リソース グループを削除すると、それに関連付けられている他のリソースも削除されます。
- Azure ポータルでリソースをクリーンアップします
Azure CLI
次の手順
このクイック スタートでは、Read REST API を呼び出す方法について説明しました。 次に、読み取り API 機能の詳細を確認します。