gpt4 book ai didi

java - 在 Google Vision API 中使用 Java 时如何修复 "Error: Invalid GCS Path Specified"?

转载 作者:太空宇宙 更新时间:2023-11-04 09:26:52 25 4
gpt4 key购买 nike

我目前正在 Vision API 文档中关注此示例:found here


import com.google.cloud.vision.v1.*;
import com.google.cloud.vision.v1.Feature.Type;
import java.io.File;
import java.io.IOException;
import java.io.PrintStream;
import java.util.ArrayList;
import java.util.List;

public class VisionApiTest {
public static void main(String... args) throws Exception {

PrintStream stream = new PrintStream(new File("src/test.txt"));

detectTextGcs("https://www.w3.org/TR/SVGTiny12/examples/textArea01.png", stream);
}

public static void detectTextGcs(String gcsPath, PrintStream out) throws Exception, IOException {
List<AnnotateImageRequest> requests = new ArrayList<>();

ImageSource imgSource = ImageSource.newBuilder().setGcsImageUri(gcsPath).build();
Image img = Image.newBuilder().setSource(imgSource).build();
Feature feat = Feature.newBuilder().setType(Type.TEXT_DETECTION).build();
AnnotateImageRequest request =
AnnotateImageRequest.newBuilder().addFeatures(feat).setImage(img).build();
requests.add(request);

try (ImageAnnotatorClient client = ImageAnnotatorClient.create()) {
BatchAnnotateImagesResponse response = client.batchAnnotateImages(requests);
List<AnnotateImageResponse> responses = response.getResponsesList();

for (AnnotateImageResponse res : responses) {
if (res.hasError()) {
out.printf("Error: %s\n", res.getError().getMessage());
return;
}

// For full list of available annotations, see http://g.co/cloud/vision/docs
for (EntityAnnotation annotation : res.getTextAnnotationsList()) {
out.printf("Text: %s\n", annotation.getDescription());
out.printf("Position : %s\n", annotation.getBoundingPoly());
}
}
}
}
}

将 gcsPath 字符串传递到示例中的 detectorTextGcs 方法后,出现错误:“错误:指定的 GCS 路径无效:https://www.w3.org/TR/SVGTiny12/examples/textArea01.png

我期望 PrintStream 对象将图片中保存的文本写入文件,该文本将是“明天,和\n明天,和\n明天;等等等等......”。在上面提到的 Vision API 文档页面上尝试 API 后,它工作正常,但在 IntelliJ 中不行。

非常感谢任何帮助。谢谢。 (如果这不是一个措辞良好的问题,请原谅我,这是我第一次发帖)

最佳答案

我确实找到了问题所在。问题出在 detectorGcsText() 方法的第 3 行中。

 ImageSource imgSource = imageSource.newBuilder().setGcsImageUri(gcsPath).build();

如果您想使用常规 HTTP URI,则必须使用 setImageUri(path) 而不是 setGcsImageUri(gcsPath)

感谢大家的帮助!

关于java - 在 Google Vision API 中使用 Java 时如何修复 "Error: Invalid GCS Path Specified"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57577709/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com