Vision
NAME
WWW::GCloud::API::Vision
- WWW::GCloud
implementation of Google Vision API
SYNOPSIS
use v6.e.PREVIEW;
use WWW::GCloud;
use WWW::GCloud::API::Vision;
use WWW::GCloud::API::Vision::Types;
my $gcloud = WWW::GCloud.new;
my $images = $gcloud.vision.images;
my $queue = $images.annotation-queue;
given $queue {
.project("my-project-id");
# Create a new request to OCR-annotate an image. Subsequent calls to .request will queue new requests.
.request(
:file("my-image.ext"), # Can be a PNG, TIFF, GIF.
feature => ( :type(GCVFDocument), :model<builtin/latest> ),
# If several features to be added at once:
# features => [...],
-> $request {
# Here we can do things with the request object itself.
$request.feature(GCVFLogo); # Also search the image for logos.
# If there is something special about the input config...
# $request.set-input-config(...);
# If the image is a multi-page one. .pages is an Array[UInt:D] attribute.
# $request.pages = 1,3;
}
);
}
await $queue
.start
.andthen({
say "Annotate completed."
# .result is an instance of WWW::GCloud::R::Vision::BatchAnnotateImagesResponse
});
DESCRIPTION
This module lacks complete documentation due to me not currently able to write it. Please, see some notes for WWW::GCloud framework. And look into exmaples/ where I tried to provide meaningful code to follow.
Status
This module is pre-beta, pre-anything. It is incomplete and likely not well thought out at places. But it already lets you do a lot with your storages.
If there is anything you need but it is missing then, please, consider implementing it and submitting a PR. Any other approach would barely proces any outcome for what I do apologize!
Either way, this module can be used as a reference implementation for a WWW::GGCloud
API.
COPYRIGHT
(c) 2023, Vadim Belman <[email protected]>
LICENSE
Artistic License 2.0
See the LICENSE|../../../../LICENSE file in this distribution.