Maison  >  Article  >  développement back-end  >  Tutoriel simple : Comment connecter PHP à l'interface de reconnaissance de définition d'image Baidu ?

Tutoriel simple : Comment connecter PHP à l'interface de reconnaissance de définition d'image Baidu ?

WBOY
WBOYoriginal
2023-08-25 13:40:511207parcourir

Tutoriel simple : Comment connecter PHP à linterface de reconnaissance de définition dimage Baidu ?

Tutoriel simple : Comment connecter PHP à l'interface de reconnaissance de définition d'image Baidu ?

Introduction :
L'interface de reconnaissance de clarté d'image Baidu est une puissante fonction de traitement d'image fournie par la plateforme ouverte Baidu AI. Grâce à cette interface, nous pouvons utiliser le puissant algorithme de Baidu AI pour juger de la clarté d'une image et en dériver un score correspondant. Ce didacticiel montrera comment utiliser le code PHP pour se connecter à l'interface de reconnaissance de clarté d'image de Baidu.

Préparation de l'environnement :

  1. Environnement de développement PHP (version requise : PHP 5.6+)
  2. Compte de plateforme ouverte Baidu AI et jeton d'accès (pour obtenir les méthodes, veuillez vous référer à la documentation officielle : https://ai.baidu.com /ai-doc /REFERENCE/Ck3dwjhhu)
  3. Fichier image (ce tutoriel prendra comme exemple un fichier image nommé "test.jpg")

Étape 1 : Obtenir l'encodage Base64 de l'image via une requête POST

<?php
    function imgToBase64($imgPath) {
        $imgInfo = getimagesize($imgPath);
        $fp = fopen($imgPath, 'rb');
        if ($fp) {
            $imgData = fread($fp, filesize($imgPath));
            $base64Data = base64_encode($imgData);
            return 'data:' . $imgInfo['mime'] . ';base64,' . $base64Data;
        } else {
            return false;
        }
    }
    
    $imgPath = 'test.jpg';
    $base64Data = imgToBase64($imgPath);
    if (!$base64Data) {
        echo '图像文件读取失败';
        exit;
    }
?>

Étape 2 : Construction des données de la requête HTTP et envoyez la requête

<?php
    $url = 'https://aip.baidubce.com/rest/2.0/image-classify/v1/clearness';
    $access_token = 'your_access_token';
    
    // 构造请求数据
    $requestData = array(
        'image' => $base64Data,
    );
    $requestBody = http_build_query($requestData);
    
    // 发送POST请求
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_POST, 1);
    curl_setopt($curl, CURLOPT_POSTFIELDS, $requestBody);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($curl, CURLOPT_HTTPHEADER, array(
        'Content-Type: application/x-www-form-urlencoded',
        'Content-Length: ' . strlen($requestBody),
        'Access-Token: ' . $access_token,
    ));
    $response = curl_exec($curl);
    curl_close($curl);
    
    // 解析响应结果
    $result = json_decode($response, true);
    if (isset($result['error_code'])) {
        echo '请求出错:' . $result['error_msg'];
        exit;
    }
    
    // 输出清晰度评分
    echo '清晰度评分:' . $result['result']['score'];
?>

Étape 3 : Exécutez le code et affichez les résultats
Enregistrez le code ci-dessus en tant que fichier PHP et assurez-vous que le bon jeton d'accès a été renseigné. Exécutez le fichier PHP dans la ligne de commande ou dans le navigateur pour obtenir le score de clarté de l'image.

Résumé :
Ce tutoriel montre comment utiliser PHP pour se connecter à l'interface de reconnaissance de clarté d'image Baidu. En utilisant cette interface, nous pouvons facilement juger de la clarté d'une image, afin d'analyser et de traiter davantage la qualité de l'image. J'espère que ce tutoriel pourra apporter une certaine aide au travail de développement de chacun en matière de traitement d'image.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn