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 is a cloud computing platform offered by Microsoft with more than 200 available services. Azure provides various client libraries and a REST API to access those services. There’s a free tier to get you up and running which allows you to access several services free many of which remain free as long as you don’t exceed some quite generous monthly limits. We are going to use the “Cognitive Search” service to perform Image analysis. The Cognitive Search service is an always-free tier so you should never need to pay for it.
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、モバイルアプリケーションに画像分析を追加する最速の方法ですか?
Design. Code. Compile. Deploy.
トライアル版をダウンロードいますぐアップグレード!
Delphi Community Edition(無料)C++Builder Community Edition(無料)