Class CloudVision.AnnotateImagesFromBytes

java.lang.Object
org.apache.beam.sdk.transforms.PTransform<PCollection<ByteString>,PCollection<List<com.google.cloud.vision.v1.AnnotateImageResponse>>>
org.apache.beam.sdk.extensions.ml.CloudVision.AnnotateImagesFromBytes
All Implemented Interfaces:
Serializable, HasDisplayData
Enclosing class:
CloudVision

public static class CloudVision.AnnotateImagesFromBytes extends PTransform<PCollection<ByteString>,PCollection<List<com.google.cloud.vision.v1.AnnotateImageResponse>>>
Accepts ByteString (encoded image contents) with optional DoFn.SideInput with a Map of ImageContext to the image.
See Also:
  • Field Details

    • contextSideInput

      protected final PCollectionView<Map<ByteString,com.google.cloud.vision.v1.ImageContext>> contextSideInput
    • featureList

      protected final List<com.google.cloud.vision.v1.Feature> featureList
    • desiredRequestParallelism

      protected final int desiredRequestParallelism
  • Constructor Details

    • AnnotateImagesFromBytes

      public AnnotateImagesFromBytes(PCollectionView<Map<ByteString,com.google.cloud.vision.v1.ImageContext>> contextSideInput, List<com.google.cloud.vision.v1.Feature> featureList, long batchSize, int desiredRequestParallelism)
  • Method Details

    • mapToRequest

      public com.google.cloud.vision.v1.AnnotateImageRequest mapToRequest(ByteString input, @Nullable com.google.cloud.vision.v1.ImageContext ctx)
      Maps the ByteString with encoded image data and the optional ImageContext into an AnnotateImageRequest.
      Parameters:
      input - Input element.
      ctx - optional image context.
      Returns:
      a valid request.
    • expand

      public PCollection<List<com.google.cloud.vision.v1.AnnotateImageResponse>> expand(PCollection<ByteString> input)
      Applies all necessary transforms to call the Vision API. In order to group requests into batches, we assign keys to the requests, as GroupIntoBatches works only on KVs.
      Specified by:
      expand in class PTransform<PCollection<T>,PCollection<List<com.google.cloud.vision.v1.AnnotateImageResponse>>>