Google Cloud Vision textDetection对象请求报No image present错误排查
解决Google Vision API textDetection报错"No image present"的问题
你用的第一种写法错把批量请求的参数格式用到了单图检测的textDetection方法上,这就是问题根源。
textDetection是针对单张图片的检测方法,参数不需要外层的requests数组,正确的对象结构应该直接把image字段放在顶层:
const request = { image: { source: { imageUri: `gs://${bucketName}/thumbnails/${fileName}` } } }; const [textDetection] = await client.textDetection(request);
你之前写的{ requests: [...] }是batchAnnotateImages方法的参数格式——这个方法用于批量处理多张图片,才需要把每个图片的请求项放在requests数组里。
至于第二种写法能正常运行,是因为textDetection方法支持直接传入字符串类型的GCS URI,内部会自动帮你转换成符合要求的{ image: { source: { imageUri: ... } } }结构,所以不会触发报错。
内容的提问来源于stack exchange,提问作者backwashphili
相关产品推荐
相关产品推荐

