To add cost-effective image analysis to your applications, this article will walk you through Azure API, how to obtain a subscription key to access Azure API, and how to make requests to Azure REST API using an IDEソフトウェア with REST Client Feature.
Azure APIとは何ですか?
Azureは、200を超える利用可能なサービスを備えたMicrosoftが提供するクラウドコンピューティングプラットフォームです。 Azureは、これらのサービスにアクセスするためのさまざまなクライアントライブラリとRESTAPIを提供します。いくつかのサービスに無料でアクセスできる無料の階層があり、その多くは、かなり寛大な月間制限を超えない限り無料のままです。 「コグニティブサーチ」サービスを利用して画像解析を行います。コグニティブ検索サービスは常に無料の階層であるため、料金を支払う必要はありません。
Azure APIにアクセスするためのサブスクリプションキーを取得するにはどうすればよいですか?
To access the Azure REST API, we need a subscription key. A subscription key is a key assigned to a ‘resource’. So we need to create a resource first. To create a resource, you need an active Azure Subscription. Please visit this link to create a subscription:
https://azure.microsoft.com/free/cognitive-services/
Azureサブスクリプションを設定したら、コンピュータービジョンリソースを作成する必要があります。後で変更することはできないため、正しい地理的地域を選択していることを確認してください。リソースを作成するには、次のリンクにアクセスしてください。
https://portal.azure.com/#create/Microsoft.CognitiveServicesComputerVision
リソースのサブスクリプションキーを取得するには、リソースを開き、「キーとエンドポイント」に移動します。ここに、2つのキーとRESTAPI呼び出しを行うために必要な場所が表示されます。
DelphiRESTクライアントを使用してAzureREST APIにリクエストを送信するにはどうすればよいですか?
DelphiクライアントからRESTAPIを呼び出すのは簡単です。いくつかのパラメータを設定するだけで、設計時でも実行できます。デモアプリケーションを作ってみましょう。まず、これらのコンポーネントをフォーラムにドラッグアンドドロップします。
TRESTClient
TRESTRequest
TRESTResponse
また、いくつかの入力コントロールを配置して、API URL、サブスクリプションキー、および画像URLを取得します。を配置します TButton
リクエストを開始します。 RESTクライアントのコンテンツタイプは「application/json
「。次に、のクライアントプロパティと応答プロパティを設定します。 TRESTRequest
以前に配置したクライアントおよび応答コンポーネントへのコンポーネント。また、メソッドを「rmPOST
「。
[スタート]ボタンのコードは次のようになります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
procedure TfrmMain.btnStartClick(Sender: TObject); var lparam : Trestrequestparameter; imgProcessed: bool; jsonObj, jsonStatus: TJSONObject; begin memResponse.Lines.晴れ; RESTClient.BaseURL := edAPIURL.Text; RESTRequest.Method:=rmpost; imgProcessed := false; try RESTRequest.Params.晴れ; RESTResponse.RootElement := ''; lparam := RESTRequest.Params.AddItem; lparam.name := 'Ocp-Apim-Subscription-Key'; lparam.Value := edSubKey.Text; lparam.ContentType := ctNone; lparam.Kind := pkHTTPHEADER; //This one is Important otherwise the '==' will get url encoded lparam.Options := [poDoNotEncode]; lparam := RESTRequest.Params.AddItem; lparam.name := 'data'; lparam.Value := '{"url":"' + edImgURL.Text + '"}'; lparam.ContentType := ctAPPLICATION_JSON; lparam.Kind := pkGETorPOST; RESTRequest.Execute; if ない RESTResponse.Status.Success then showmessage(RESTResponse.StatusText + ' ' + inttostr(RESTResponse.StatusCode)) else begin memResponse.Lines.Add(RESTResponse.JSONText); end; finally end; end; |
このコードは、TRESTRequestに新しいパラメーターを追加し、サブスクリプションキーを設定します。サブスクリプションキーはHTTPヘッダーとして渡す必要があり、名前は「Ocp-Apim-Subscription-Key
「。 valueパラメータは、前にコピーしたサブスクリプションキーです。また、「オプションを含めることも重要です。poDoNotEncode
「それ以外の場合は、キーをエンコードします。また、のベースURL TRESTClient
設定する必要があります。 AzureクライアントのベースURLを入力するときは、リソースのリージョンを考慮する必要があります。 URLのサブドメインである必要があります。ベースURLは次のようになります。
1 |
<NS href="https://eastus.api.cognitive.microsoft.com/vision/v3.2/analyze?visualFeatures=Description" target="_blank" rel="noreferrer noopener nofollow">https://eastus.api.cognitive.microsoft.com/vision/v3.2/analyze?visualFeatures=Description</a> |
交換 "eastus
」をお住まいの地域で使用するか、 ない 作業。また、このURLで渡すことができるパラメータはたくさんあります。すべてのパラメータを見つけるには、このリンクにアクセスしてください。
このデモでは、「visualFeatures = Description
」は、私たちのイメージを1つの文で説明します。また、画像のURLをJSON形式で渡す必要があります。これを行うには、新しいパラメータをに追加します TRESTRequest
コンテンツタイプを「ctAPPLICATION_JSON
」、名前を「」に設定しますURL
」とこの形式の値:
1 |
{"url":"IMAGE_URL"} |
最終的なアプリケーションは次のようになります。
GitHubからDEMOアプリケーションをダウンロードできます。 https://github.com/checkdigits/ImageAnalysisClient_example
さて、自分で試してみてください– Windows、macOS、モバイルアプリケーションに画像分析を追加する最速の方法ですか?