MicroSOF视觉图像识别PHP互动



我遵循有关如何从Microsoft Vision API获取图像标签的说明:https://learn.microsoft.com/en-us/azure/cognitive-services/computer-vision/quickstarts/php

我设法获得了有效的卷曲身体响应,看起来像这样:

{
"tags": [
    {
      "name": "person",
      "confidence": 0.98979085683822632
    },
    {
      "name": "man",
      "confidence": 0.94493889808654785
    },
    {
      "name": "outdoor",
      "confidence": 0.938492476940155
    },
    {
      "name": "window",
      "confidence": 0.89513939619064331
    }
  ]
}

我尝试使用foreach标签,但是我遇到了麻烦。

 $response = curl_exec($curl);
 $header_size = curl_getinfo($curl, CURLINFO_HEADER_SIZE);
 $body = substr($response, $header_size);
 $header = substr($response, 0, $header_size);
 $rows = explode("n", $header);
 $err = curl_error($curl);
 curl_close($curl);
 $resp = json_decode( $body, true );
 if ($err) {echo $err; } else {
     // foreach thought tags, and if tag value is above 0.9, than show/echo it, do something with it
 }

我无法回荡任何标签。我想仅显示具有高于0.9的标签名称。类似:如果标签置信度> 0.9,请回声,请对其做些事情。

您可以使用此片段(用自己的端点和订阅键替换):

<?php
$data = array("url" => "https://raw.githubusercontent.com/Microsoft/Cognitive-Face-Windows/master/Data/detection1.jpg");
$data_string = json_encode($data);
$curl = curl_init('https://<YOUR_SUBSCRIPTION-LOCATION>.api.cognitive.microsoft.com/vision/v1.0/tag');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt($curl, CURLOPT_POST,           1 );
curl_setopt($curl, CURLOPT_HTTPHEADER, array(
    'Content-Type: application/json',
    'Ocp-Apim-Subscription-Key: <YOUR-SUBSCRIPTION-KEY>'
));
$response = curl_exec($curl);

if(curl_error($curl)) {
    echo 'error:' . curl_error($curl);
}
else {
    $json_object = json_decode($response, true);
    $tags = $json_object["tags"];
    foreach($tags as $key => $value) {
        if ($value["confidence"] > 0.5) {
            echo "Tag name: ".$value["name"]." Confidence: ".$value["confidence"]."<br />";
        }
    }
}
curl_close($curl);
?>

此输出:

Tag name: person. Confidence: 0.99900645017624
Tag name: building. Confidence: 0.99334067106247
Tag name: outdoor. Confidence: 0.98552924394608
Tag name: woman. Confidence: 0.9338972568512
Tag name: glasses. Confidence: 0.87850379943848
Tag name: wearing. Confidence: 0.86172193288803
Tag name: sunglasses. Confidence: 0.67616695165634

最新更新