Google云视API'Request Admission Denied'
Google Cloud Vision API 'Request Admission Denied'
我是 Google Cloud Vision API 的新手。我主要对账单和收据的图像进行 OCR。
有几张图片工作正常,但当我尝试其他图片时出现此错误:
Error: { [Error: Request Admission Denied.]
code: 400,
errors:
[ { message: 'Request Admission Denied.',
domain: 'global',
reason: 'badRequest' } ] }
这是我的代码:
// construct parameters
const req = new vision.Request({
image: new vision.Image('./uploads/reciept.png'),
features: [
new vision.Feature('TEXT_DETECTION', 1)
]
})
vision.annotate(req).then((res) => {
// handling response
//console.log(res.responses[0].textAnnotations);
var desc=res.responses[0].textAnnotations;
var descarr=[];
for (i = 0; i < desc.length; i++) {
descarr.push(desc[i].description);
}
我可以通过将图像另存为另一种格式并提交来解决这个问题;图像文件本身有些 "wrong"(或者至少 Google 出乎意料)。不确定您使用的语言(js?)中的图像处理,但在 Python 中它很简单:
from PIL import Image
bad_image = Image.open(open('failure.jpg', 'rb'))
bad_image.save(open('success.png', 'wb'))
有意思。我 运行 今天遇到同样的问题,使用 Google 的 Java 客户端。我阅读詹姆斯回答的方式是,他有一个失败的 JPEG 文件,但可以作为 PNG 文件使用。就我而言,我有一个失败的 PNG 文件,但可以作为 JPEG 使用。
我认为这是一个大小限制,因为我希望 JPEG 通常小于 PNG;然而,James 的经验表明情况并非如此。
我在 Google 的 Java 文档中找不到任何相关文档。由于响应是 400 错误,可能 Java 库没有正确编码图像缓冲区。
运行也是这个问题。这是一个图像大小问题。我不知道硬性限制是什么。 4MB 有效,但 9MB 无效,介于两者之间。
Best Practices 文档说图像文件大小不应超过 4 MB。根据以上回复,这可能是问题所在。
我是 Google Cloud Vision API 的新手。我主要对账单和收据的图像进行 OCR。
有几张图片工作正常,但当我尝试其他图片时出现此错误:
Error: { [Error: Request Admission Denied.]
code: 400,
errors:
[ { message: 'Request Admission Denied.',
domain: 'global',
reason: 'badRequest' } ] }
这是我的代码:
// construct parameters
const req = new vision.Request({
image: new vision.Image('./uploads/reciept.png'),
features: [
new vision.Feature('TEXT_DETECTION', 1)
]
})
vision.annotate(req).then((res) => {
// handling response
//console.log(res.responses[0].textAnnotations);
var desc=res.responses[0].textAnnotations;
var descarr=[];
for (i = 0; i < desc.length; i++) {
descarr.push(desc[i].description);
}
我可以通过将图像另存为另一种格式并提交来解决这个问题;图像文件本身有些 "wrong"(或者至少 Google 出乎意料)。不确定您使用的语言(js?)中的图像处理,但在 Python 中它很简单:
from PIL import Image
bad_image = Image.open(open('failure.jpg', 'rb'))
bad_image.save(open('success.png', 'wb'))
有意思。我 运行 今天遇到同样的问题,使用 Google 的 Java 客户端。我阅读詹姆斯回答的方式是,他有一个失败的 JPEG 文件,但可以作为 PNG 文件使用。就我而言,我有一个失败的 PNG 文件,但可以作为 JPEG 使用。
我认为这是一个大小限制,因为我希望 JPEG 通常小于 PNG;然而,James 的经验表明情况并非如此。
我在 Google 的 Java 文档中找不到任何相关文档。由于响应是 400 错误,可能 Java 库没有正确编码图像缓冲区。
运行也是这个问题。这是一个图像大小问题。我不知道硬性限制是什么。 4MB 有效,但 9MB 无效,介于两者之间。
Best Practices 文档说图像文件大小不应超过 4 MB。根据以上回复,这可能是问题所在。