PHP を使用して Baidu 人体分析 API に接続する方法を段階的に説明します
人工知能技術の継続的な発展により、人体分析技術は徐々に高度なものになってきました。アプリケーション分野でホットな話題です。 Baidu Human Analysis API は、顔検出、人体キーポイント識別、人体属性分析などの機能を実現できる、深層学習に基づく人物分析技術セットです。この記事では、PHP 言語を使用して Baidu Human Analysis API に接続し、対応するコード例を示します。
まず、Baidu AI オープン プラットフォームにアカウントを申請し、アプリケーションを作成する必要があります。アプリケーションを作成した後、コードで使用される API キーと秘密キーを取得できます。
次に、HTTP リクエストの送信を容易にするために、PHP の HTTP リクエスト ライブラリをダウンロードしてインストールする必要があります。この記事では、デモの例として Guzzle HTTP リクエスト ライブラリを使用します。 Guzzle は Composer を通じてインストールし、次のコマンドを実行できます:
composer require guzzlehttp/guzzle
インストールが完了したら、コードの記述を開始できます。まず、baidu_body_analysis.php
という名前の PHP ファイルを作成します。
ファイルでは、最初に HTTP リクエスト ライブラリと関連する名前空間を導入する必要があります。コードは次のとおりです:
<?php require 'vendor/autoload.php'; use GuzzleHttpClient; // 百度人体分析API的接口地址 $url = 'https://aip.baidubce.com/rest/2.0/image-classify/v1/body_analysis';
次に、HTTP リクエストのヘッダーを構築し、 API キーを入力し、秘密キーをヘッダーに追加し、要求された Content-Type を application/x-www-form-urlencoded
として指定します。コードは次のとおりです。
// API Key和Secret Key $apiKey = 'your_api_key'; $secretKey = 'your_secret_key'; // 构建HTTP请求的头部 $headers = [ 'Content-Type' => 'application/x-www-form-urlencoded', ]; // 添加API Key和Secret Key到头部 $headers['User-Agent'] = 'BCCS_SDK/3.0 (Windows 7 Ultimate) PHP/7.2.0'; $headers['Authorization'] = 'APPCODE your_appcode';
次に、分析する画像データと対応する構成項目を含む HTTP リクエストのパラメーターを構築する必要があります。コードは次のとおりです。
// 要分析的图片路径 $imagePath = 'your_image_path'; // 读取图片数据 $imageData = base64_encode(file_get_contents($imagePath)); // 构建HTTP请求的参数 $params = [ 'image' => $imageData, 'type' => 'complex', ];
次に、HTTP リクエスト ライブラリを使用して HTTP POST リクエストを送信し、リクエストにパラメータとヘッダーを追加して、API の URL を指定します。コードは次のとおりです。
// 创建HTTP请求客户端 $client = new Client(); // 构建请求 $response = $client->post($url, [ 'headers' => $headers, 'form_params' => $params, ]);
最後に、応答から返された人体分析結果を取得し、結果を処理します。コードは次のとおりです。
// 获取响应结果 $body = $response->getBody()->getContents(); // 解析JSON格式的响应结果 $result = json_decode($body, true); // 处理分析结果 if (isset($result['person_num'])) { $personNum = $result['person_num']; echo "人数:$personNum "; // 可以继续对其他字段进行处理 } else { // 分析失败,输出错误信息 echo "分析失败 "; echo $result['error_msg'] . " "; }
ここまでで、Baidu Human Analysis API のドッキングが完了しました。完全なコードは次のとおりです。
<?php require 'vendor/autoload.php'; use GuzzleHttpClient; // 百度人体分析API的接口地址 $url = 'https://aip.baidubce.com/rest/2.0/image-classify/v1/body_analysis'; // API Key和Secret Key $apiKey = 'your_api_key'; $secretKey = 'your_secret_key'; // 构建HTTP请求的头部 $headers = [ 'Content-Type' => 'application/x-www-form-urlencoded', ]; // 添加API Key和Secret Key到头部 $headers['User-Agent'] = 'BCCS_SDK/3.0 (Windows 7 Ultimate) PHP/7.2.0'; $headers['Authorization'] = 'APPCODE your_appcode'; // 要分析的图片路径 $imagePath = 'your_image_path'; // 读取图片数据 $imageData = base64_encode(file_get_contents($imagePath)); // 构建HTTP请求的参数 $params = [ 'image' => $imageData, 'type' => 'complex', ]; // 创建HTTP请求客户端 $client = new Client(); // 构建请求 $response = $client->post($url, [ 'headers' => $headers, 'form_params' => $params, ]); // 获取响应结果 $body = $response->getBody()->getContents(); // 解析JSON格式的响应结果 $result = json_decode($body, true); // 处理分析结果 if (isset($result['person_num'])) { $personNum = $result['person_num']; echo "人数:$personNum "; // 可以继续对其他字段进行处理 } else { // 分析失败,输出错误信息 echo "分析失败 "; echo $result['error_msg'] . " "; }
上記のコードの your_api_key
、your_secret_key
、および your_image_path
は、実際のコードに置き換える必要があることに注意してください。独自の API キー、秘密キー、および分析する画像のパス。
以上の手順で、PHP を使用して Baidu Human Analysis API に接続する操作が完了しました。独自のニーズに応じて、対応する人体解析結果を処理して表示し、より興味深いアプリケーションを実現できます。この記事があなたのお役に立てば幸いです!
以上がPHP を使用して Baidu Human Analysis API に接続する方法を段階的に説明します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。