package com.heyu.api.baidu.request.common;


import com.heyu.api.baidu.request.BaiduOfdRequest;
import lombok.Data;


/**
 * https://console.bce.baidu.com/support/?_=1740219852952&timestamp=1740281560085#/api?product=AI&project=%E6%96%87%E5%AD%97%E8%AF%86%E5%88%AB&parent=%E9%80%9A%E7%94%A8%E5%9C%BA%E6%99%AFOCR&api=rest%2F2.0%2Focr%2Fv1%2Faccurate&method=post
 *
 *
 * 通用文字识别（高精度含位置版）
 */
@Data
public class BAccurateRequest extends BaiduOfdRequest {

    /**
     * language_type	否	string	auto_detect
     * 识别语言类型，默认为CHN_ENG
     * 可选值包括：
     * - auto_detect：自动检测语言，并识别
     * - CHN_ENG：中英文混合
     * - ENG：英文
     * - JAP：日语
     * - KOR：韩语
     * - FRE：法语
     * - SPA：西班牙语
     * - POR：葡萄牙语
     * - GER：德语
     * - ITA：意大利语
     * - RUS：俄语
     * - DAN：丹麦语
     * - DUT：荷兰语
     * - MAL：马来语
     * - SWE：瑞典语
     * - IND：印尼语
     * - POL：波兰语
     * - ROM：罗马尼亚语
     * - TUR：土耳其语
     * - GRE：希腊语
     * - HUN：匈牙利语
     * - THA：泰语
     * - VIE：越南语
     * - ARA：阿拉伯语
     * - HIN：印地语
     */
    private String languageType;


    /**
     * word/letter	表示识别语言类型为「中英文（CHN_ENG）」的情况下，英文的单字符结果是按照单词（word）维度输出还是字母（letter）维度输出，当 recognize_granularity=small 时生效
     */
    private String engGranularity = "word";


    /**
     * big/small	是否定位单字符位置，big：不定位单字符位置，默认值；small：定位单字符位置
     */
    private String recognizeGranularity = "small";

    /**
     * 是否检测图像朝向，默认不检测，即：false。朝向是指输入图像是正常方向、逆时针旋转90/180/270度。可选值包括:
     * - true：检测朝向
     * - false：不检测朝向
     * 输入非正向图片时，若想要达到较好识别效果，建议将此参数设置为“true”
     */
    private String detectDirection = "true";


    /**
     * true/false	是否返回文字外接多边形顶点位置，不支持单字位置。默认为false
     */
    private String vertexesLocation = "false";

    /**
     * 是否输出段落信息
     */
    private String paragraph = "false";


    /**
     * probability
     * true/false	是否返回识别结果中每一行的置信度
     */
    private String probability = "true";


    /**
     * 是否返回单字符置信度，默认不返回，当 recognize_granularity = small 时，参数有效。可选值包括：
     * - true：返回单字符置信度，
     * - false：不返回单字符置信度
     */
    private String charProbability = "false";


}
