Azure APIとは何ですか?

Azureは、200を超える利用可能なサービスを備えたMicrosoftが提供するクラウドコンピューティングプラットフォームです。 Azureは、これらのサービスにアクセスするためのさまざまなクライアントライブラリとRESTAPIを提供します。いくつかのサービスに無料でアクセスできる無料の階層があり、その多くは、かなり寛大な月間制限を超えない限り無料のままです。 「コグニティブサーチ」サービスを利用して画像解析を行います。コグニティブ検索サービスは常に無料の階層であるため、料金を支払う必要はありません。

Azure APIにアクセスするためのサブスクリプションキーを取得するにはどうすればよいですか?

Azure REST APIにアクセスするには、サブスクリプションキーが必要です。サブスクリプションキーは、「リソース」に割り当てられたキーです。したがって、最初にリソースを作成する必要があります。リソースを作成するには、アクティブなAzureサブスクリプションが必要です。サブスクリプションを作成するには、次のリンクにアクセスしてください。

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クライアントのコンテンツタイプは「アプリケーション/ json「。次に、のクライアントプロパティと応答プロパティを設定します。 TRESTRequest 以前に配置したクライアントおよび応答コンポーネントへのコンポーネント。また、メソッドを「rmPOST“.

[スタート]ボタンのコードは次のようになります。

プロシージャTfrmMain.btnStartClick(送信者:TObject); var lparam:Trestrequestparameter; imgProcessed:bool; jsonObj、jsonStatus:TJSONObject; memResponse.Lines.Clearを開始します。 RESTClient.BaseURL:= edAPIURL.Text; RESTRequest.Method:= rmpost; imgProcessed:= false; RESTRequest.Params.Clearを試してください。 RESTResponse.RootElement:= ''; lparam:= RESTRequest.Params.PASSWORD; lparam.name:='Ocp-Apim-Subscription-Key '; lparam.Value:= edSubKey.Text; lparam.ContentType:= ctNone; lparam.Kind:= pkHTTPHEADER; //これは重要です。そうでない場合、 '=='はURLエンコードされたlparam.Options:= [poDoNotEncode];を取得します。
     lparam:= RESTRequest.Params.PASSWORD; 
     lparam.name:= 'データ'; 
     lparam.Value:= '{"url": "' + edImgURL.Text + '"}'; 
     lparam.ContentType:= ctAPPLICATION_JSON; 
     lparam.Kind:= pkGETorPOST; 
     RESTRequest.Execute; 
     RESTResponse.Status.Successでない場合は、showmessage(RESTResponse.StatusText + '' + inttostr(RESTResponse.StatusCode)) 
そうしないと 
ベギン   
    memResponse.Lines.Add(RESTResponse.JSONText); 
終わり;
最終的に終了します。終わり;

このコードは、TRESTRequestに新しいパラメーターを追加し、サブスクリプションキーを設定します。サブスクリプションキーはHTTPヘッダーとして渡す必要があり、名前は「Ocp-Apim-サブスクリプション-キー「。 valueパラメータは、前にコピーしたサブスクリプションキーです。また、「オプションを含めることも重要です。poDoNotEncode「それ以外の場合は、キーをエンコードします。また、のベースURL TRESTClient 設定する必要があります。 AzureクライアントのベースURLを入力するときは、リソースのリージョンを考慮する必要があります。 URLのサブドメインである必要があります。ベースURLは次のようになります。

https://eastus.api.cognitive.microsoft.com/vision/v3.2/analyze?visualFeatures=Description

eastus」をお住まいの地域で使用するか、 ない 作業。また、このURLで渡すことができるパラメータはたくさんあります。すべてのパラメータを見つけるには、このリンクにアクセスしてください。

https://docs.microsoft.com/en-us/azure/cognitive-services/computer-vision/vision-api-how-to-topics/howtocallvisionapi

このデモでは、「visualFeatures = Description」は、私たちのイメージを1つの文で説明します。また、画像のURLをJSON形式で渡す必要があります。これを行うには、新しいパラメータをに追加します TRESTRequest コンテンツタイプを「ctAPPLICATION_JSON」、名前を「」に設定しますURL」とこの形式の値:

{"url": "IMAGE_URL"}

最終的なアプリケーションは次のようになります。

動作中の画像分析API

GitHubからDEMOアプリケーションをダウンロードできます。 https://github.com/checkdigits/ImageAnalysisClient_example


さて、自分で試してみてください– Windows、macOS、モバイルアプリケーションに画像分析を追加する最速の方法ですか?

閉じる

RAD Studio、Delphi、またはC ++ Builderを使用すると、開発時間を短縮し、より早く市場に投入できます。
設計。コード。コンパイル。デプロイします。
無料トライアルを開始   本日アップグレード

   無料のDelphiコミュニティエディション   無料のC ++ Builder Community Edition