Class: Google::Cloud::Vision::Annotation::SafeSearch

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

Overview

# SafeSearch

A set of features pertaining to the image, computed by various computer vision methods over safe-search verticals (for example, adult, spoof, medical, violence).

Examples:

require "google/cloud/vision"

vision = Google::Cloud::Vision.new

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

safe_search = image.safe_search
safe_search.spoof? #=> false
safe_search.spoof #=> "VERY_UNLIKELY"

Constant Summary collapse

POSITIVE_RATINGS =
%i(POSSIBLE LIKELY VERY_LIKELY)

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeSafeSearch

Returns a new instance of SafeSearch.



49
50
51
# File 'lib/google/cloud/vision/annotation/safe_search.rb', line 49

def initialize
  @grpc = nil
end

Instance Attribute Details

#grpcObject



45
46
47
# File 'lib/google/cloud/vision/annotation/safe_search.rb', line 45

def grpc
  @grpc
end

Class Method Details

.from_grpc(grpc) ⇒ Object



146
147
148
# File 'lib/google/cloud/vision/annotation/safe_search.rb', line 146

def self.from_grpc grpc
  new.tap { |f| f.instance_variable_set :@grpc, grpc }
end

Instance Method Details

#adultObject

Adult likelihood rating. Possible values are ‘VERY_UNLIKELY`, `UNLIKELY`, `POSSIBLE`, `LIKELY`, and `VERY_LIKELY`.



56
57
58
# File 'lib/google/cloud/vision/annotation/safe_search.rb', line 56

def adult
  @grpc.adult
end

#adult?Boolean

Adult likelihood. Returns ‘true` if #adult is `POSSIBLE`, `LIKELY`, or `VERY_LIKELY`.

Returns:

  • (Boolean)


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

def adult?
  POSITIVE_RATINGS.include? adult
end

#inspectObject



140
141
142
# File 'lib/google/cloud/vision/annotation/safe_search.rb', line 140

def inspect
  "#<SafeSearch #{self}>"
end

#medicalObject

Medical likelihood rating. Possible values are ‘VERY_UNLIKELY`, `UNLIKELY`, `POSSIBLE`, `LIKELY`, and `VERY_LIKELY`.



90
91
92
# File 'lib/google/cloud/vision/annotation/safe_search.rb', line 90

def medical
  @grpc.medical
end

#medical?Boolean

Medical likelihood. Returns ‘true` if #medical is `POSSIBLE`, `LIKELY`, or `VERY_LIKELY`.

Returns:

  • (Boolean)


100
101
102
# File 'lib/google/cloud/vision/annotation/safe_search.rb', line 100

def medical?
  POSITIVE_RATINGS.include? medical
end

#spoofObject

Spoof likelihood rating. Possible values are ‘VERY_UNLIKELY`, `UNLIKELY`, `POSSIBLE`, `LIKELY`, and `VERY_LIKELY`.



73
74
75
# File 'lib/google/cloud/vision/annotation/safe_search.rb', line 73

def spoof
  @grpc.spoof
end

#spoof?Boolean

Spoof likelihood. Returns ‘true` if #spoof is `POSSIBLE`, `LIKELY`, or `VERY_LIKELY`.

Returns:

  • (Boolean)


83
84
85
# File 'lib/google/cloud/vision/annotation/safe_search.rb', line 83

def spoof?
  POSITIVE_RATINGS.include? spoof
end

#to_hHash

Converts object to a hash. All keys will be symbolized.

Returns:

  • (Hash)


126
127
128
129
# File 'lib/google/cloud/vision/annotation/safe_search.rb', line 126

def to_h
  { adult: adult?, spoof: spoof?, medical: medical?,
    violence: violence? }
end

#to_sObject



132
133
134
135
136
137
# File 'lib/google/cloud/vision/annotation/safe_search.rb', line 132

def to_s
  tmplt = "(adult?: %s, spoof?: %s, medical?: %s, " \
            "violence?: %s)"
  format tmplt, adult?.inspect, spoof?.inspect, medical?.inspect,
         violence?.inspect
end

#violenceObject

Violence likelihood rating. Possible values are ‘VERY_UNLIKELY`, `UNLIKELY`, `POSSIBLE`, `LIKELY`, and `VERY_LIKELY`.



107
108
109
# File 'lib/google/cloud/vision/annotation/safe_search.rb', line 107

def violence
  @grpc.violence
end

#violence?Boolean

Violence likelihood. Returns ‘true` if #violence is `POSSIBLE`, `LIKELY`, or `VERY_LIKELY`.

Returns:

  • (Boolean)


117
118
119
# File 'lib/google/cloud/vision/annotation/safe_search.rb', line 117

def violence?
  POSITIVE_RATINGS.include? violence
end