Class: Google::Cloud::Vision::Annotation::Properties

Inherits:
Object
  • Object
show all
Defined in:
lib/google/cloud/vision/annotation/properties.rb

Overview

Properties

A set of properties about an image, such as the image's dominant colors.

See Image#properties.

Examples:

require "google/cloud/vision"

vision = Google::Cloud::Vision.new

image = vision.image "path/to/logo.jpg"

properties = image.properties
properties.colors.count #=> 10

Defined Under Namespace

Classes: Color

Instance Method Summary collapse

Instance Method Details

#colorsArray<Color>

The image's dominant colors, including their corresponding scores.

Returns:

  • (Array<Color>)

    An array of the image's dominant colors.



54
55
56
57
58
59
# File 'lib/google/cloud/vision/annotation/properties.rb', line 54

def colors
  return [] unless @grpc.dominant_colors
  @colors ||= Array(@grpc.dominant_colors.colors).map do |c|
    Color.from_grpc c
  end
end

#to_aArray

Returns the object's property values as an array.

Returns:

  • (Array)


66
67
68
# File 'lib/google/cloud/vision/annotation/properties.rb', line 66

def to_a
  colors.map(&:rgb)
end

#to_hHash

Deeply converts object to a hash. All keys will be symbolized.

Returns:

  • (Hash)


75
76
77
# File 'lib/google/cloud/vision/annotation/properties.rb', line 75

def to_h
  { colors: colors.map(&:to_h) }
end