跳转到主内容
趣航编程网 - 趣学编程,启航技术之路!

php怎么调用腾讯云TI平台_php如何调用AI模型进行图像识别

核心难点是TI平台图像识别API默认不开放,需先在控制台开通“TI平台-模型服务”并部署对应模型(如cv_image_classification_resnet50),否则即使SecretId/SecretKey正确也会返回InvalidAction.NotFound或UnauthorizedOperation;调用时必须使用腾讯云签名v3、设置X-TX-Source等指定Header、图片base64编码后置于input.image_data字段、请求地址为https://tiia.tencentcloudapi.com、Action和Version严格匹配,且需预处理图像尺寸、通道数与压缩质量以保障识别准确率。 PHP 调用 腾讯云 TI 平台图像识别 API 的核心难点在哪 不是 PHP 本身不支持,而是 TI 平台的图像识别能力(如
RecognizeImage
)默认不开放给普通账号,必须先在控制台开通「TI 平台-模型服务」并部署对应模型(比如
cv_image_classification_resnet50
),否则调用直接返回
InvalidAction.NotFound
UnauthorizedOperation
。 很多开发者卡在第一步——以为填对 SecretId/SecretKey 就能调,结果反复 403;其实没部署服务实例,API 根本没路由可走。 怎么用 PHP 发起合法的 POST 请求调用已部署的模型服务 TI 平台要求:请求必须带
X-TX-Source
Authorization
Content-Type
三类 header,且 body 是标准 JSON,不能传 raw 图片二进制(这点和 COS 上传不同)。 图片需先 base64 编码后塞进
input.image_data
字段,不是传文件或 URL
Authorization
必须用腾讯云签名 v3(
TencentCloudAuthV3
),不能手拼字符串,得用官方
qcloud/tencent-cloud-sdk-php
或自己实现签算逻辑 请求地址形如
https://tiia.tencentcloudapi.com
,不是
ti.tencentcloudapi.com
(少个
a
就 404) 必须指定
Action=RecognizeImage
Version=2019-05-29
,版本号写错会返回
InvalidParameter.Version
示例关键片段: 立即学习 “ PHP免费学习笔记(深入) ”; 腾讯云AI代码助手 基于混元代码大模型的AI辅助编码工具 下载
$payload = json_encode([ 'Action' => 'RecognizeImage', 'Version' => '2019-05-29', 'Input' => [ 'ImageData' => base64_encode(file_get_contents('/path/to/img.jpg')) ] ]);
为什么用 cURL 比 Guzzle 更容易踩坑 因为 Guzzle 默认不校验 TLS 1.2+,而 TI 平台强制要求 TLS 1.2;同时它会自动加
Expect: 100-continue
,导致部分模型服务返回 417。 cURL 要显式设
CURLOPT_SSLVERSION => CURL_SSLVERSION_TLSv1_2
必须关掉 Expect:
CURLOPT_HTTPHEADER => ['Expect:']
别漏掉
CURLOPT_RETURNTRANSFER => true
,否则
curl_exec()
返回 null 响应体是 JSON,但错误时可能返回纯文本(如
Unauthorized
),需先检查
http_code
json_decode()
图像预处理不当会导致识别准确率断崖下跌 TI 平台的视觉模型对输入尺寸敏感:若原始图宽高比失真、或超过 4096px 边长,服务会静默裁剪或缩放,但不报错——你拿到的结果可能是识别了左上角 1/4 区域。 推荐先用 GD 或 Imagick 统一 resize 到 224×224 或 299×299(看模型文档要求),保持比例 + 填黑边 避免用
imagejpeg($im, null, 80)
直接丢质量,TI 对 JPEG 压缩伪影很敏感 灰度图必须转三通道(RGB),否则
input.image_data
解析失败,返回
InvalidParameterValue.ImageData
真正难的不是调通接口,是让那张图以模型期望的方式抵达——尺寸、编码、通道数、压缩质量,差一点,结果就不可信。

相关文章