Heim > Backend-Entwicklung > PHP-Tutorial > Methode zur Objekterkennung und intelligenten Klassifizierung von Bildern mithilfe der PHP- und Qiniu-Cloud-Speicherschnittstelle

Methode zur Objekterkennung und intelligenten Klassifizierung von Bildern mithilfe der PHP- und Qiniu-Cloud-Speicherschnittstelle

王林
Freigeben: 2023-07-05 20:06:01
Original
926 Leute haben es durchsucht

Verwendung der PHP- und Qiniu-Cloud-Speicherschnittstelle zur Implementierung der Objekterkennung und intelligenten Klassifizierung von Bildern

Das Extrahieren nützlicher Informationen aus Bildern, wie z. B. Objekterkennung und intelligente Klassifizierung, ist eine wichtige Aufgabe im Bereich Computer Vision. Qiniu Cloud Storage bietet Entwicklern als Cloud-Dienstleister mit leistungsstarken Speicher- und Rechenfunktionen praktische Schnittstellen zur Erfüllung dieser Aufgaben. In diesem Artikel stellen wir vor, wie Sie mithilfe der PHP- und Qiniu-Cloud-Speicherschnittstelle eine Objekterkennung und eine intelligente Klassifizierung von Bildern implementieren.

Zuerst müssen wir ein Qiniu Cloud Storage-Konto erstellen und den Zugriffsschlüssel (Zugriffsschlüssel und Geheimschlüssel) erhalten. Diese Schlüssel werden zur Authentifizierung und Zugangskontrolle verwendet.

Als nächstes müssen wir das PHP SDK installieren, das interaktive Funktionen mit der Qiniu-Cloud-Speicherschnittstelle bereitstellt. Sie können das SDK von der offiziellen Website von Qiniu Cloud herunterladen und in Ihr Projektverzeichnis entpacken.

Im Code müssen wir zunächst das SDK einführen und den Zugriffsschlüssel konfigurieren:

require_once 'path/to/sdk/autoload.php';
use QiniuAuth;
use QiniuStorageUploadManager;

// 需要填写你的 Access Key 和 Secret Key
$accessKey = 'YOUR_ACCESS_KEY';
$secretKey = 'YOUR_SECRET_KEY';

// 构建鉴权对象
$auth = new Auth($accessKey, $secretKey);
Nach dem Login kopieren

Als nächstes können wir die Schnittstelle des SDK verwenden, um das Bild in Qiniu Cloud Storage hochzuladen und die Adresse des Bildes zu erhalten:

// 生成上传 Token
$bucket = 'YOUR_BUCKET_NAME';
$token = $auth->uploadToken($bucket);

// 要上传文件的本地路径
$filePath = 'path/to/image.jpg';

// 上传到七牛云存储
$uploadMgr = new UploadManager();
list($ret, $err) = $uploadMgr->putFile($token, null, $filePath);

// 获取上传后的图片地址
$imageUrl = $ret['key'];
Nach dem Login kopieren

Jetzt können wir die Schnittstelle von Qiniu Cloud Storage für die Bildverarbeitung nutzen. Qiniu Cloud Storage bietet eine Fülle von Bildverarbeitungsfunktionen, einschließlich Bildskalierung, Zuschneiden, Drehen usw. Hier konzentrieren wir uns auf die Durchführung der Objekterkennung und intelligenten Klassifizierung.

Zur Objekterkennung bietet Qiniu Cloud Storage KI-basierte Bildverarbeitungsfunktionen. Wir können die Schnittstelle von Qiniu Cloud Storage verwenden, um eine Anfrage zu senden, eine Objekterkennung für die hochgeladenen Bilder durchzuführen und die Erkennungsergebnisse zu erhalten:

// 构建物体检测的请求参数
$requestUrl = 'http://ai.qiniuapi.com/v1/image/realtime?detectType=3&returnLabels=1';

// 发送请求
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $requestUrl);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode(['url' => $imageUrl]));
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
$result = curl_exec($curl);
curl_close($curl);

// 解析返回的结果
$resultArray = json_decode($result, true);
$labels = $resultArray['result'][0]['labels'];

// 打印物体标签
foreach ($labels as $label) {
    echo $label['name'] . "
";
}
Nach dem Login kopieren

Für eine intelligente Klassifizierung kann Qiniu Cloud Storage auch Bilder basierend auf dem Bildinhalt intelligent klassifizieren. Wir können die Qiniu Cloud Storage-Schnittstelle verwenden, um Anfragen zu senden und Klassifizierungsergebnisse zu erhalten:

// 构建智能分类的请求参数
$requestUrl = 'http://ai.qiniuapi.com/v1/image/censor?scenes=';
$scenes = ['pulp', 'terror', 'politician', 'ads', 'live', 'sensitive'];
$requestUrl .= implode(',', $scenes);

// 发送请求
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $requestUrl);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode(['url' => $imageUrl]));
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
$result = curl_exec($curl);
curl_close($curl);

// 解析返回的结果
$resultArray = json_decode($result, true);
$censorResults = $resultArray['result'];

// 打印分类结果
foreach ($censorResults as $scene => $censorResult) {
    echo $scene . ': ' . ($censorResult['suggestion'] == 0 ? '正常' : '不确定') . "
";
}
Nach dem Login kopieren

Durch die obigen Codebeispiele können wir mithilfe von PHP und der Qiniu Cloud Storage-Schnittstelle Objekterkennung und intelligente Klassifizierung von Bildern implementieren. Sie können den Code entsprechend den tatsächlichen Anforderungen an Ihr Projekt anpassen. Ich hoffe, dieser Artikel ist hilfreich für Sie!

Das obige ist der detaillierte Inhalt vonMethode zur Objekterkennung und intelligenten Klassifizierung von Bildern mithilfe der PHP- und Qiniu-Cloud-Speicherschnittstelle. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage