You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS Rekognition调用compareFaces报InvalidS3ObjectException求助

AWS Rekognition CompareFaces 报 InvalidS3ObjectException 的解决办法

核心问题:参数字段错误

你的代码中调用compareFaces时,S3Object配置用了Name字段,但AWS Rekognition API要求使用Key来指定S3对象路径,这是触发错误的直接原因。S3的getObject用的是Key,但Rekognition的S3Object参数同样需要用Key而非Name。

修正后的代码片段

将SourceImage和TargetImage里的Name替换为Key,如果你的S3桶没有启用版本控制,建议移除Version参数(指定latest仅在启用版本控制时有效):

$result = $rekognition->compareFaces([
    'SimilarityThreshold' => 80,
    'SourceImage' => [
        'S3Object' => [
            'Bucket' => $bucket,
            'Key' => $timeIn, // 把Name改成Key
            // 若未启用版本控制,移除Version参数
            // 'Version' => 'latest',
        ],
    ],
    'TargetImage' => [
        'S3Object' => [
            'Bucket' => $bucket,
            'Key' => $timeOut, // 把Name改成Key
            // 'Version' => 'latest',
        ],
    ],
]);

其他排查方向

  • 版本控制验证:如果确实需要指定版本,先确认S3桶已启用版本控制,且latest版本的对象存在。
  • Rekognition权限检查:确保Rekognition使用的服务角色拥有s3:GetObject权限(注意:这和你的S3客户端权限是分开的,Rekognition需要直接访问S3的权限)。
  • 对象路径一致性:检查timeIn和timeOut的路径是否和S3控制台显示的完全一致,避免空格、大小写或特殊字符导致的匹配失败。

内容的提问来源于stack exchange,提问作者Adrian C.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 21:32:50