class Mindee::Parsing::Standard::AbstractField

Base BaseField object, upon which fields and feature fields are built

def self.array_confidence(field_array)

Returns:
  • (Float) -
def self.array_confidence(field_array)
  product = 1
  field_array.each do |field|
    return 0.0 if field.confidence.nil?
    product *= field.confidence
  end
  product.to_f
end

def self.array_sum(field_array)

Returns:
  • (Float) -
def self.array_sum(field_array)
  arr_sum = 0
  field_array.each do |field|
    return 0.0 if field.value.nil?
    arr_sum += field.value
  end
  arr_sum.to_f
end

def self.float_to_string(value, min_precision = 2)

Returns:
  • (String) -

Parameters:
  • min_precision (Integer) --
  • value (Float) --
def self.float_to_string(value, min_precision = 2)
  return String.new if value.nil?
  precision = value.to_f.to_s.split('.')[1].size
  precision = [precision, min_precision].max
  format_string = "%.#{precision}f"
  format(format_string, value)
end

def initialize(prediction, page_id)

Parameters:
  • page_id (Integer, nil) --
  • prediction (Hash) --
def initialize(prediction, page_id)
  @confidence = prediction['confidence'] if prediction.key?('confidence')
  @polygon = Geometry.polygon_from_prediction(prediction['polygon']) if prediction.key?('polygon')
  @bounding_box = Geometry.get_bounding_box(@polygon) unless @polygon.nil? || @polygon.empty?
  @page_id = page_id || prediction['page_id']
end

def to_s

Returns:
  • (String) -
def to_s
  @value ? @value.to_s : ''
end