Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Kaedah untuk merealisasikan pengiktirafan pintar dan klasifikasi label gambar menggunakan antara muka storan awan PHP dan Qiniu

Kaedah untuk merealisasikan pengiktirafan pintar dan klasifikasi label gambar menggunakan antara muka storan awan PHP dan Qiniu

WBOY
WBOYasal
2023-07-05 11:33:11645semak imbas

Satu kaedah menggunakan antara muka storan awan PHP dan Qiniu untuk merealisasikan pengecaman pintar dan klasifikasi label imej

Dalam beberapa tahun kebelakangan ini, dengan perkembangan pesat teknologi kecerdasan buatan, bidang pengecaman imej juga telah mencapai kemajuan yang ketara. Menggunakan pembelajaran mesin dan algoritma pembelajaran mendalam, kami boleh membenarkan komputer memahami dan menganalisis kandungan imej secara bijak, dengan itu mencapai pengiktirafan pintar dan klasifikasi label imej. Artikel ini akan memperkenalkan cara menggunakan antara muka storan awan PHP dan Qiniu untuk melaksanakan fungsi ini, dan memberikan contoh kod yang sepadan.

Pertama, kita perlu membuat akaun di Qiniu Cloud Storage (https://www.qiniu.com/) dan mendapatkan AccessKey dan SecretKey akaun untuk mengakses API Qiniu Cloud Storage.

Seterusnya, kita perlu menggunakan SDK yang disediakan oleh Qiniu Cloud Storage untuk mengendalikan imej. Dalam PHP, anda boleh menggunakan SDK Storan Awan Qiniu yang disediakan secara rasmi (https://developer.qiniu.com/sdk/php) untuk berinteraksi dengan Storan Awan Qiniu.

Berikut ialah contoh kod ringkas yang menunjukkan cara menggunakan antara muka PHP dan Storan Awan Qiniu untuk memuat naik imej, dan memanggil API pengecaman imej Qiniu Cloud Storage untuk mendapatkan klasifikasi teg imej:

<?php

require 'autoload.php'; // 导入七牛云存储的PHP SDK

use QiniuStorageUploadManager;
use QiniuAuth;

// 需要填写七牛云存储的AccessKey和SecretKey
$accessKey = 'your-access-key';
$secretKey = 'your-secret-key';

// 初始化Auth对象
$auth = new Auth($accessKey, $secretKey);

// 需要上传的图片文件路径
$filePath = './path/to/your/image.jpg';

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

// 初始化UploadManager对象
$uploadMgr = new UploadManager();

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

if ($err !== null) {
    // 上传图片失败
    echo 'Upload failed:', $err->message();
} else {
    // 上传图片成功
    $imageKey = $ret['key'];
    
    // 调用七牛云存储的图像识别API,获取图片的标签分类
    $url = 'http://ai.qiniuapi.com/v1/ai/predict';
    $data = ['url' => 'your-image-url', 'model' => 'img_tag'];

    $headers = [
        'Content-Type:application/json',
        'Authorization:Qiniu ' . $auth->signRequest($url, null, 'POST', $headers, json_encode($data))
    ];

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
    curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));

    $response = curl_exec($ch);
    curl_close($ch);

    // 解析返回的结果
    $result = json_decode($response, true);

    // 获取图片的标签分类
    $labels = isset($result['result']) ? $result['result'] : [];

    // 输出图片的标签分类
    echo 'Image labels:', implode(', ', $labels);
}

Dalam kod di atas, kita Mula-mula memulakan objek Auth menggunakan AccessKey dan SecretKey, dan kemudian menjana Token muat naik. Kemudian, panggil kaedah putFile objek UploadManager untuk memuat naik fail imej ke Storan Awan Qiniu dan dapatkan hasil muat naik.

Seterusnya, kami membina permintaan HTTP dan memanggil API pengecaman imej bagi Storan Awan Qiniu. API menerima URL imej dan nama model sebagai parameter dan mengembalikan hasil pengelasan label imej. Kami menggunakan perpustakaan curl untuk menghantar permintaan HTTP Apa yang perlu diperhatikan ialah pengepala permintaan perlu ditandatangani berdasarkan AccessKey dan SecretKey.

Akhir sekali, kami menghuraikan hasil pulangan API, mendapatkan klasifikasi label imej dan mengeluarkan hasilnya.

Melalui contoh kod di atas, kita dapat melihat bahawa tidak rumit untuk menggunakan antara muka storan awan PHP dan Qiniu untuk merealisasikan pengecaman pintar dan klasifikasi label imej. Dengan memuat naik imej ke Storan Awan Qiniu dan kemudian memanggil API pengecaman imej Storan Awan Qiniu, kami boleh mendapatkan maklumat klasifikasi label imej dengan mudah, memberikan lebih banyak kemungkinan untuk pemprosesan imej dan aplikasi seterusnya.

Atas ialah kandungan terperinci Kaedah untuk merealisasikan pengiktirafan pintar dan klasifikasi label gambar menggunakan antara muka storan awan PHP dan Qiniu. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn