All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.microsoft.ml.spark.cognitive.ComputerVisionSchemas.scala Maven / Gradle / Ivy

The newest version!
// Copyright (C) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License. See LICENSE in project root for information.

package com.microsoft.ml.spark.cognitive

// OCR Schema
import com.microsoft.ml.spark.core.schema.SparkBindings

case class DSIRResponse(requestId: String,
                        metadata: DSIRMetadata,
                        result: DSIRResult)

object DSIRResponse extends SparkBindings[DSIRResponse]

case class DSIRMetadata(width: Int, height: Int, format: String)

case class DSIRResult(celebrities: Option[Seq[DSIRCelebrity]],
                      landmarks: Option[Seq[DSIRLandmark]])

case class DSIRLandmark(name: String, confidence: Double)

case class DSIRCelebrity(name: String, faceRectangle: Rectangle, confidence: Double)

case class OCRResponse(language: String,
                       textAngle: Option[Double],
                       orientation: String,
                       regions: Seq[OCRRegion])

object OCRResponse extends SparkBindings[OCRResponse]

case class OCRRegion(boundingBox: String, lines: Seq[OCRLine])

case class OCRLine(boundingBox: String, words: Seq[OCRWord])

case class OCRWord(boundingBox: String, text: String)

case class RTResponse(status: String, recognitionResult: RTResult)

object RTResponse extends SparkBindings[RTResponse]

case class RTResult(lines: Array[RTLine])

case class RTLine(boundingBox: Array[Int], text: String, words: Array[RTWord])

case class RTWord(boundingBox: Array[Int], text: String)

case class AIResponse(categories: Option[Seq[AICategory]],
                      adult: Option[AIAdult],
                      tags: Option[Seq[AITag]],
                      description: Option[AIDescription],
                      requestId: String,
                      metadata: AIMetadata,
                      faces: Option[Seq[AIFace]],
                      color: Option[AIColor],
                      imageType: Option[AIImageType])

object AIResponse extends SparkBindings[AIResponse]

case class AICategory(name: String, score: Double, detail: Option[AIDetail])

case class AIDetail(celebrities: Option[Seq[DSIRCelebrity]],
                    landmarks: Option[Seq[DSIRLandmark]])

case class AIAdult(isAdultContent: Boolean,
                   isRacyContent: Boolean,
                   adultScore: Double,
                   racyScore: Double)

case class AITag(name: String, confidence: Double)

case class AICaption(text: String, confidence: Double)

case class AIDescription(tags: Seq[String], captions: Seq[AICaption])

case class AIMetadata(width: Int, height: Int, format: String)

case class AIFace(age: Int, gender: String, faceRectangle: Rectangle)

case class AIColor(dominantColorForeground: String,
                   dominantColorBackground: String,
                   dominantColors: Seq[String],
                   accentColor: String,
                   isBwImg: Option[Boolean])

case class AIImageType(clipArtType: Int, lineDrawingType: Int)

case class TagImagesResponse(tags: Seq[ImageTag],
                             requestId: String,
                             metaData: ImageMetadata)

object TagImagesResponse extends SparkBindings[TagImagesResponse]

case class ImageTag(name: String,
                    confidence: Double,
                    hint: Option[String])

case class ImageMetadata(width: Int,
                         height: Int,
                         format: String)

case class DescribeImageResponse(description: ImageDescription, requestID: String, metadata: ImageMetadata)

object DescribeImageResponse extends SparkBindings[DescribeImageResponse]

case class ImageDescription(tags: Seq[String], captions: Seq[ImageCaptions])

case class ImageCaptions(text: String, confidence: Double)




© 2015 - 2024 Weber Informatics LLC | Privacy Policy