gpt4 book ai didi

google-app-engine - 使用 ImageServices getServingUrl 取回原始图像

转载 作者:太空宇宙 更新时间:2023-11-03 15:27:20 25 4
gpt4 key购买 nike

getServingUrl 是一种从 AppEngine 数据存储中获取图像的便捷方式,但它似乎想要自动转换图像。

例如,如果我这样做:

ServingUrlOptions servingUrlOptions = ServingUrlOptions.Builder.withBlobKey(blobKey);
String payload = "{ \"image\" : \"" + mImagesService.getServingUrl(servingUrlOptions) + "\" }";

我得到了一个尺寸调整后的图像的 URL。例如,如果我上传一张 960 x 640 的图片,默认 URL 会将我指向一张 512 x 341 的图片。

因此,您说,在 URL 中应用转换并设置 s960。这确实会返回一个 960 x 640 的图像,但它已经过转换——如果您将它与原始图像进行比较,您可以看到图像中的伪影。

由于我发现的一项技术,服务器正在适本地存储图像 here裁剪到原始尺寸:

Image image = ImagesServiceFactory.makeImageFromBlob(blobKey);
Transform noOpCrop = ImagesServiceFactory.makeCrop(0, 0, 1, 1);
image = mImagesService.applyTransform(noOpCrop, image);
LOGGER.info("Stored image " + image.getWidth() + ", " + image.getHeight());

我实际上并没有查看它是否包含原始字节,但这并不重要,因为如果我只想发回字节,我还不如直接将数据拉出来商店并将其设置为自定义图像服务 servlet 的有效负载。

写这篇文章我意识到它听起来更像是一个功能请求而不是一个问题,所以我会这样提出:有没有比通过自定义 servlet 更好的解决方案来提供原始图像?

最佳答案

您可以在生成的 URL 末尾添加 =s0 以获取原始图像。

默认情况下,如果您不添加任何参数,图像的最大尺寸将为 512 像素(与添加 =s512 相同)。您可以阅读更多关于 getServingUrl 的信息在文档和您拥有的选项中。

关于google-app-engine - 使用 ImageServices getServingUrl 取回原始图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13783324/

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