图像识别

    接口说明

    通用物体识别

    该请求用于通用物体及场景识别,即对于输入的一张图片(可正常解码,且长宽比适宜),输出图片中的多个物体及场景标签。

    Json::Value result;
    
    std::string image;
    aip::get_file_content("/assets/sample.jpg", &image);
    
    // 调用通用物体识别
    result = client.advanced_general(image, aip::null);
    
    // 如果有可选参数
    std::map<std::string, std::string> options;
    options["baike_num"] = "5";
    
    // 带参数调用通用物体识别
    result = client.advanced_general(image, options);

    通用物体识别 请求参数详情

    参数名称 是否必选 类型 默认值 说明
    image std::string 图片数据的二进制字符串,可以使用aip::get_file_content函数获取
    baike_num std::string 0 返回百科信息的结果数,默认不返回

    通用物体识别 返回数据参数详情

    字段 是否必选 类型 说明
    log_id uint64 唯一的log id,用于问题定位
    result_num unit32 返回结果数目,及result数组中的元素个数
    result arrry(object) 标签结果数组
    +keyword string 图片中的物体或场景名称
    +score float 置信度,0-1
    +root string 识别结果的上层标签,有部分钱币、动漫、烟酒等tag无上层标签
    +baike_info object 对应识别结果的百科词条名称
    ++baike_url string 对应识别结果百度百科页面链接
    ++image_url string 对应识别结果百科图片链接
    ++description string 对应识别结果百科内容描述

    通用物体识别 返回示例

    {
      "log_id": 327863200205075661,
      "result_num": 5,
      "result": [{
        "score": 0.967622,
        "root": "公众人物",
        "baike_info": {
          "baike_url": "http://baike.baidu.com/item/%E6%96%B0%E5%9E%A3%E7%BB%93%E8%A1%A3/8035884",
          "image_url": "http://imgsrc.baidu.com/baike/pic/item/91ef76c6a7efce1b27893518a451f3deb58f6546.jpg",
          "description": "新垣结衣(Aragaki Yui),1988年6月11日出生于冲绳县那霸市。日本女演员、歌手、模特。毕业于日出高中。2001年,参加《nicola》模特比赛并获得最优秀奖。2005年,因出演现代剧《涩谷15》而作为演员出道。2006年,参演校园剧《我的老大,我的英雄》;同年,她还出版了个人首本写真集《水漾青春》。2007年,她从日出高校毕业后开始专注于演艺发展,并发表个人首张音乐专辑《天空》;同年,新垣结衣还主演了爱情片《恋空》,而她也凭借该片获得了多个电影新人奖项。2010年,主演爱情片《花水木》。2011年,主演都市剧《全开女孩》。2012年,相继参演现代剧《Legal High》、剧情片《剧场版新参者:麒麟之翼》。2013年,主演都市剧《飞翔情报室》。2014年,她主演了剧情片《黎明的沙耶》。2016年,主演爱情喜剧《逃避虽可耻但有用》,并凭借该剧获得了多个电视剧女主角奖项。2017年,主演爱情片《恋爱回旋》,凭借该片获得第60届蓝丝带奖最佳女主角;同年11月,她还凭借医疗剧《Code Blue 3》获得第94届日剧学院赏最佳女配角。"
        },
        "keyword": "新垣结衣"
      },
      {
        "score": 0.716067,
        "root": "人物-人物特写",
        "keyword": "头发"
      },
      {
        "score": 0.421281,
        "root": "商品-穿戴",
        "keyword": "围巾"
      },
      {
        "score": 0.22347,
        "root": "商品-五金",
        "keyword": "拉链"
      },
      {
        "score": 0.028031,
        "root": "商品-穿戴",
        "keyword": "脖套"
      }]
    }

    菜品识别

    该请求用于菜品识别。即对于输入的一张图片(可正常解码,且长宽比适宜),输出图片的菜品名称、卡路里信息、置信度。

    Json::Value result;
    
    std::string image;
    aip::get_file_content("/assets/sample.jpg", &image);
    
    // 调用菜品识别
    result = client.dish_detect(image, aip::null);
    
    // 如果有可选参数
    std::map<std::string, std::string> options;
    options["top_num"] = "3";
    options["filter_threshold"] = "0.7";
    options["baike_num"] = "5";
    
    // 带参数调用菜品识别
    result = client.dish_detect(image, options);

    菜品识别 请求参数详情

    参数名称 是否必选 类型 默认值 说明
    image std::string 图片数据的二进制字符串,可以使用aip::get_file_content函数获取
    top_num std::string 返回预测得分top结果数,默认为5
    filter_threshold std::string 默认0.95,可以通过该参数调节识别效果,降低非菜识别率.
    baike_num std::string 0 返回百科信息的结果数,默认不返回

    菜品识别 返回数据参数详情

    字段 是否必选 类型 说明
    log_id uint64 唯一的log id,用于问题定位
    result_num unit32 返回结果数目,及result数组中的元素个数
    result array() 菜品识别结果数组
    +name string 菜名,示例:鱼香肉丝
    +calorie float 卡路里,每100g的卡路里含量
    +probability float 识别结果中每一行的置信度值,0-1
    +baike_info object 对应识别结果的百科词条名称
    ++baike_url string 对应识别结果百度百科页面链接
    ++image_url string 对应识别结果百科图片链接
    ++description string 对应识别结果百科内容描述

    菜品识别 返回示例

    {
      "log_id": 7357081719365269362,
      "result_num": 5,
      "result": [
      {
        "calorie": "119",
        "has_calorie": true,
        "name": "酸汤鱼",
        "probability": "0.396031"
        "baike_info": {
          "baike_url": "http://baike.baidu.com/item/%E9%85%B8%E6%B1%A4%E9%B1%BC/1754055",
          "description": "酸汤鱼,是黔桂湘交界地区的一道侗族名菜,与侗族相邻的苗、水、瑶等少数民族也有相似菜肴,但其中以贵州侗族酸汤鱼最为有名,据考证此菜肴最早源于黎平县雷洞镇牙双一带。制作原料主要有鱼肉、酸汤、山仓子等香料。成菜后,略带酸味、幽香沁人、鲜嫩爽口开胃,是贵州“黔系”菜肴的代表作之一。这道菜通常先自制酸汤,之后将活鱼去掉内脏,入酸汤煮制。"
        }
      },
      {
        "calorie": "38",
        "has_calorie": true,
        "name": "原味黑鱼煲",
        "probability": "0.265432",
    
      },
      {
        "calorie": "144",
        "has_calorie": true,
        "name": "椒鱼片",
        "probability": "0.0998993"
      },
      {
        "calorie": "98",
        "has_calorie": true,
        "name": "酸菜鱼",
        "probability": "0.0701917"
      },
      {
        "calorie": "257.65",
        "has_calorie": true,
        "name": "柠檬鱼",
        "probability": "0.0471465"
      }]
    }

    车辆识别

    该请求用于检测一张车辆图片的具体车型。即对于输入的一张图片(可正常解码,且长宽比适宜),输出图片的车辆品牌及型号。

    Json::Value result;
    
    std::string image;
    aip::get_file_content("/assets/sample.jpg", &image);
    
    // 调用车辆识别
    result = client.car_detect(image, aip::null);
    
    // 如果有可选参数
    std::map<std::string, std::string> options;
    options["top_num"] = "3";
    options["baike_num"] = "5";
    
    // 带参数调用车辆识别
    result = client.car_detect(image, options);

    车辆识别 请求参数详情

    参数名称 是否必选 类型 默认值 说明
    image std::string 图片数据的二进制字符串,可以使用aip::get_file_content函数获取
    top_num std::string 返回预测得分top结果数,默认为5
    baike_num std::string 0 返回百科信息的结果数,默认不返回

    车辆识别 返回数据参数详情

    字段 是否必选 类型 说明
    log_id uint64 唯一的log id,用于问题定位
    color_result string 颜色
    result car-result() 车型识别结果数组
    +name string 车型名称,示例:宝马x6
    +score double 置信度,示例:0.5321
    +year string 年份
    +baike_info object 对应识别结果的百科词条名称
    ++baike_url string 对应识别结果百度百科页面链接
    ++image_url string 对应识别结果百科图片链接
    ++description string 对应识别结果百科内容描述
    location_result string 车在图片中的位置信息

    车辆识别 返回示例

    {
      "log_id": 4086212218842203806,
      "location_result": {
        "width": 447,
        "top": 226,
        "height": 209,
        "left": 188
      },
      "result": [{
        "baike_info": {
          "baike_url": "http://baike.baidu.com/item/%E5%B8%83%E5%8A%A0%E8%BF%AAChiron/20419512",
          "description": "布加迪Chiron是法国跑车品牌布加迪出品的豪华超跑车。配置四涡轮增压发动机,420 公里每小时,有23种颜色的选择,售价高达260万美元。"
        },
        "score": 0.98793351650238,
        "name": "布加迪Chiron",
        "year": "无年份信息"
      },
      {
        "score": 0.0021970034576952,
        "name": "奥迪RS5",
        "year": "2011-2017"
      },
      {
        "score": 0.0021096928976476,
        "name": "奥迪RS4",
        "year": "无年份信息"
      },
      {
        "score": 0.0015581247862428,
        "name": "奥迪RS7",
        "year": "2014-2016"
      },
      {
        "score": 0.00082337751518935,
        "name": "布加迪威航",
        "year": "2004-2015"
      }],
      "color_result": "颜色无法识别"
    }

    车辆检测

    传入单帧图像,检测图片中所有机动车辆,返回每辆车的类型和坐标位置,可识别小汽车、卡车、巴士、摩托车、三轮车5大类车辆,并对每类车辆分别计数,可返回含有统计值和检测框的渲染结果图,支持指定不规则区域的车辆统计。

    Json::Value result;
    
    std::string image;
    aip::get_file_content("/assets/sample.jpg", &image);
    
    // 调用车辆检测
    result = client.vehicle_detect(image, aip::null);
    
    // 如果有可选参数
    std::map<std::string, std::string> options;
    options["show"] = "false";
    options["area"] = "‘x1,y1,x2,y2,x3,y3...xn,yn'";
    
    // 带参数调用车辆检测
    result = client.vehicle_detect(image, options);

    车辆检测 请求参数详情

    参数名称 是否必选 类型 说明
    image std::string 图片数据的二进制字符串,可以使用aip::get_file_content函数获取
    show std::string 是否返回结果图(含统计值和跟踪框)。选true时返回渲染后的图片(base64),其它无效值或为空则默认false。
    area std::string 只统计该区域内的车辆数,缺省时为全图统计。
    逗号分隔,如‘x1,y1,x2,y2,x3,y3...xn,yn',按顺序依次给出每个顶点的x、y坐标(默认尾点和首点相连),形成闭合多边形区域。
    服务会做范围(顶点左边需在图像范围内)及个数校验(数组长度必须为偶数,且大于3个顶点)。只支持单个多边形区域,建议设置矩形框,即4个顶点。坐标取值不能超过图像宽度和高度,比如1280的宽度,坐标值最大到1279

    车辆检测 返回数据参数详情

    字段 是否必选 类型 说明
    vehicle_num object 检测到的车辆数目
    +car int 小汽车数量
    +truck int 卡车数量
    +bus int 巴士数量
    +motorbike int 摩托车数量
    +tricycle int 三轮车数量
    vehicle_info object[] 每个框的具体信息
    +location object 跟踪到的车辆检测框位置
    ++left int 车辆检测框左坐标
    ++top int 车辆检测框顶坐标
    ++width int 车辆检测框宽度
    ++height int 车辆检测框高度
    +ID int 车辆的ID编号
    +type string 车辆类型
    image string 结果图,含跟踪框和统计值(渲染jpg图片byte内容的base64编码,得到后先做base64解码再以字节流形式imdecode)

    车辆检测 返回示例

    未检测到任何车辆:

    {
        "vehicle_num":
        {
            "car":0,
            "truck":0,
            ...
            "tricycle":0
        },
        "vehicle_info":[]
    }

    检测到2辆小汽车、1辆卡车:

    {
        "vehicle_num":
        {
            "car":2,
            "truck":1,
    
            ...
    
            "tricycle":0
    
        },
    
        "vehicle_info":
        [
            {
                "ID":0
                "location":
                {
                    "left": 100,
                    "top": 200,
                    "width": 200,
                    "height": 400,
                 }
                "type": "car"
            },
            {
                "ID": 1
                "location":
                {
                    "left": 400,
                    "top": 200,
                    "width": 200,
                    "height": 400,
                 }
                "type": "car"
             },
             {
                "ID": 2
                "location":
                {
                    "left": 600,
                    "top": 200,
                    "width": 300,
                    "height": 400,
                 }
                "type": "truck"
             }
        ]
    }

    车辆外观损伤识别

    针对常见的小汽车车型,传入单帧图像,识别车辆外观受损部件及损伤类型,支持32种车辆部件、5大类外观损伤。同时可输出损伤的数值化结果(长宽、面积、部件占比),支持单图多种损伤的识别。

    Json::Value result;
    
    std::string image;
    aip::get_file_content("/assets/sample.jpg", &image);
    
    // 调用车辆外观损伤识别
    result = client.vehicle_damage(image, aip::null);

    车辆外观损伤识别 请求参数详情

    参数名称 是否必选 类型 说明
    image std::string 图片数据的二进制字符串,可以使用aip::get_file_content函数获取

    车辆外观损伤识别 返回数据参数详情

    字段 是否必选 类型 说明
    log_id uint32 请求标识码,随机数,唯一;用于排查问题
    result object 识别结果
    +description string 检验图片效果是否满足识别要求,包含车辆检测、图片内容过滤两部分
    1、图片符合要求时,返回very good,返回示例:"Very good【车辆局部特写图】【1.000000】"
    2、图片不符合要求时,显示检验不通过的描述信息:
    1)没检测到车辆,返回示例:"No car detected !"
    2)检测到了车辆,但图片内容未通过校验,返回描述信息【前端过滤类别】【概率值】,返回示例:"Failed【散落部件】【0.303969】"
    +damage_info object[] 部件损伤信息
    ++parts string 汽车零部件名称,共计支持32种零部件
    ++type unit32 损伤类别,共计支持5类外观损伤;无损伤则返回“正常” 。注:如果全图无损伤,则整个返回结果为空;某个部件的type为“正常”仅表示该部件无损伤
    ++probability float 概率打分
    ++numeric_info object[] 损伤的数值化输出结果,如果有多处损伤,则有多个object;损伤的部件需拍摄完整,才能输出数值化结果,否则只返回部件名称和损伤类别,不输出数值化信息
    +++length float 损伤区域的长,单位厘米
    +++width float 损伤区域的宽,单位厘米
    +++area float 损伤区域的面积,为实际面积,不是单纯的长*宽
    +++ratio float 损伤区域面积相对于部件面积的占比,= 损伤区域面积 / 部件区域面积,均为实际面积,不是单纯的长*宽

    车辆外观损伤识别 返回示例

    图片不满足识别需求,未检测到汽车:

        {
          "description":"No car detected !",
          "damage_info":[]
        }

    图片不满足识别需求,检测到汽车,但未通过图片内容校验:

        {
          "description":"Failed[散落部件][0.303969]",
          "damage_info":[]
        }

    图片满足识别需求,正常返回,不包含数值化输出结果,有两处损伤:

        {
          "description":"Very good[车辆局部特写图][1.000000]",
          "damage_info":[
          {
            "parts":前保险杠,
            "probability":89,
            "type":刮擦
          },
          {
            "parts":左前叶子板,
            "probability":74,
            "type":凹陷
          }
          ]
        }

    图片满足识别需求,正常返回,包含数值化输出结果,有两处损伤:

        {
          "description":"Very good[车辆局部特写图][1.000000]",
          "damage_info":[
          {
            "numeric_info":[
            {
              "area":3.540100097656250,
              "height":5.260000228881836,
              "ratio":0.04069080576300621,
              "width":1.139999985694885
            }
            ],
            "parts":前保险杠,
            "probability":95,
            "type":刮擦,
            "numeric_info":[
            {
              "area":2.418999910354614,
              "height":2.750,
              "ratio":0.08458041399717331,
              "width":1.460000038146973
            }
            ],
            "parts":左前叶子板,
            "probability":84,
            "type":刮擦
          }
          ]
        }

    logo商标识别

    该请求用于检测和识别图片中的品牌LOGO信息。即对于输入的一张图片(可正常解码,且长宽比适宜),输出图片中LOGO的名称、位置和置信度。当效果欠佳时,可以建立子库(在控制台创建应用并申请建库)并通过调用logo入口接口完成自定义logo入库,提高识别效果。

    Json::Value result;
    
    std::string image;
    aip::get_file_content("/assets/sample.jpg", &image);
    
    // 调用logo商标识别
    result = client.logo_search(image, aip::null);
    
    // 如果有可选参数
    std::map<std::string, std::string> options;
    options["custom_lib"] = "false";
    
    // 带参数调用logo商标识别
    result = client.logo_search(image, options);

    logo商标识别 请求参数详情

    参数名称 是否必选 类型 可选值范围 默认值 说明
    image std::string 图片数据的二进制字符串,可以使用aip::get_file_content函数获取
    custom_lib std::string true - 返回自定义库
    false - 返回自定义库+默认库的识别结果
    false 是否只使用自定义logo库的结果,默认false:返回自定义库+默认库的识别结果

    logo商标识别 返回数据参数详情

    参数 类型 是否必须 说明 示例
    log_id number 请求标识码,随机数,唯一 507499361
    result_num number 返回结果数目,即:result数组中元素个数 2
    result array 返回结果数组,每一项为一个识别出的logo -
    +location object 位置信息(左起像素位置、上起像素位置、像素宽、像素高) {"left": 100,"top":100,"width":10,"height":10}
    ++left number 左起像素位置 100
    ++top number 上起像素位置 100
    ++width number 像素宽 100
    ++height number 像素高 100
    +name string 识别的品牌名称 京东
    +probability number 分类结果置信度(0--1.0) 0.8
    +type number type=0为1千种高优商标识别结果;type=1为2万类logo库的结果;其它type为自定义logo库结果 1 (2万类的结果)

    logo商标识别 返回示例

    {
      "log_id": 843411868,
      "result_num": 1,
      "result": [
        {
          "type": 0,
          "name": "科颜氏",
          "probability": 0.99998807907104,
          "location": {
            "width": 296,
            "top": 20,
            "height": 128,
            "left": 23
          }
        }
      ]
    }

    logo商标识别—添加

    使用入库接口请先在控制台创建应用并申请建库,建库成功后方可正常使用。

    Json::Value result;
    
    std::string image;
    aip::get_file_content("/assets/sample.jpg", &image);
    
    std::string brief = "{\"name\": \"宝马\",\"code\":\"666\"}";
    
    // 调用logo商标识别—添加
    result = client.logo_add(image, brief, aip::null);

    logo商标识别—添加 请求参数详情

    参数名称 是否必选 类型 说明
    image std::string 图片数据的二进制字符串,可以使用aip::get_file_content函数获取
    brief std::string brief,检索时带回。此处要传对应的name与code字段,name长度小于100B,code长度小于150B

    logo商标识别—添加 返回数据参数详情

    参数 类型 是否必须 说明 示例
    log_id number 请求标识码,随机数,唯一 507499361
    cont_sign string 输入图片签名,可用于删除 -

    logo商标识别—添加 返回示例

    {
      "log_id": 972934653,
      "cont_sign": "217113248,419422301"
    }

    logo商标识别—删除

    使用删除接口请先在控制台创建应用并申请建库,建库成功后先调用入库接口完成logo图片入库,删除接口用户在已入库的logo图片中删除图片。

    Json::Value result;
    
    std::string image;
    aip::get_file_content("/assets/sample.jpg", &image);
    
    // 调用删除logo商标,传入参数为图片
    result = client.logo_delete_by_image(image, aip::null);
    
    Json::Value result;
    
    std::string cont_sign = "8cnn32frvrr2cd901";
    
    // 调用删除logo商标,传入参数为图片签名
    result = client.logo_delete_by_sign(cont_sign, aip::null);

    logo商标识别—删除 请求参数详情

    参数名称 是否必选 类型 说明
    image std::string 图片数据的二进制字符串,可以使用aip::get_file_content函数获取
    cont_sign std::string 图片签名(和image二选一,image优先级更高)

    logo商标识别—删除 返回数据参数详情

    参数 类型 是否必须 说明 示例
    log_id number 请求标识码,随机数,唯一 507499361

    logo商标识别—删除 返回示例

    {
      "log_id": 50488417
    }

    动物识别

    该请求用于识别一张图片。即对于输入的一张图片(可正常解码,且长宽比适宜),输出动物识别结果

    Json::Value result;
    
    std::string image;
    aip::get_file_content("/assets/sample.jpg", &image);
    
    // 调用动物识别
    result = client.animal_detect(image, aip::null);
    
    // 如果有可选参数
    std::map<std::string, std::string> options;
    options["top_num"] = "3";
    options["baike_num"] = "5";
    
    // 带参数调用动物识别
    result = client.animal_detect(image, options);

    动物识别 请求参数详情

    参数名称 是否必选 类型 默认值 说明
    image std::string 图片数据的二进制字符串,可以使用aip::get_file_content函数获取
    top_num std::string 6 返回预测得分top结果数,默认为6
    baike_num std::string 0 返回百科信息的结果数,默认不返回

    动物识别 返回数据参数详情

    参数 类型 是否必须 说明
    log_id uint64 唯一的log id,用于问题定位
    result arrry(object) 识别结果数组
    +name string 动物名称,示例:蒙古马
    +score uint32 置信度,示例:0.5321
    +baike_info object 对应识别结果的百科词条名称
    ++baike_url string 对应识别结果百度百科页面链接
    ++image_url string 对应识别结果百科图片链接
    ++description string 对应识别结果百科内容描述

    动物识别 返回示例

    {
      "log_id": 7392482912853822863,
      "result": [{
        "score": "0.993811",
        "name": "叉角羚",
        "baike_info": {
          "baike_url": "http://baike.baidu.com/item/%E5%8F%89%E8%A7%92%E7%BE%9A/801703",
          "description": "叉角羚(学名:Antilocapra americana):在角的中部角鞘有向前伸的分枝,故名。体型中等,体长1-1.5米,尾长7.5-10厘米,肩高81-104厘米,成体重36-60千克,雌体比雄体小;背面为红褐色,颈部有黑色鬃毛,腹部和臀部为白色,颊面部和颈部两侧有黑色块斑;毛被下面为绒毛,上覆以粗糙、质脆的长毛,由于某些皮肤肌的作用,能使其毛被呈不同角度,以利于保暖或散热。植食。叉角羚奔跑速度非常快,最高时速达100千米。一次跳跃可达3.5-6米。善游泳。夏季组成小群活动,冬季则集结成上百只的大群。为寻找食物和水源,一年中常进行几次迁移。性机警,视觉敏锐,能看到数千米外的物体。遇险时,臀部的白色毛能立起,向同伴告警。分布于北美洲。"
        }
      },
      {
        "score": "0.000289439",
        "name": "印度羚"
      },
      {
        "score": "0.000186248",
        "name": "藏羚羊"
      },
      {
        "score": "0.000147176",
        "name": "跳羚"
      },
      {
        "score": "0.000134434",
        "name": "驯鹿"
      },
      {
        "score": "9.86555e-05",
        "name": "高鼻羚羊"
      }]
    }

    植物识别

    该请求用于识别一张图片。即对于输入的一张图片(可正常解码,且长宽比适宜),输出植物识别结果。

    Json::Value result;
    
    std::string image;
    aip::get_file_content("/assets/sample.jpg", &image);
    
    // 调用植物识别
    result = client.plant_detect(image, aip::null);
    
    // 如果有可选参数
    std::map<std::string, std::string> options;
    options["baike_num"] = "5";
    
    // 带参数调用植物识别
    result = client.plant_detect(image, options);

    植物识别 请求参数详情

    参数名称 是否必选 类型 默认值 说明
    image std::string 图片数据的二进制字符串,可以使用aip::get_file_content函数获取
    baike_num std::string 0 返回百科信息的结果数,默认不返回

    植物识别 返回数据参数详情

    参数 类型 是否必须 说明
    log_id uint64 唯一的log id,用于问题定位
    result arrry(object) 植物识别结果数组
    +name string 植物名称,示例:吉娃莲
    +score uint32 置信度,示例:0.5321
    +baike_info object 对应识别结果的百科词条名称
    ++baike_url string 对应识别结果百度百科页面链接
    ++image_url string 对应识别结果百科图片链接
    ++description string 对应识别结果百科内容描述

    植物识别 返回示例

    {
      "log_id": 1705495792822072357,
      "result": [{
        "score": 0.99979120492935,
        "name": "莲",
        "baike_info": {
          "baike_url": "http://baike.baidu.com/item/%E8%8E%B2/2717141",
          "description": "莲(Nelumbo nucifera),又称荷、荷花、莲花、芙蕖、鞭蓉、水芙蓉、水芝、水芸、水旦、水华等,溪客、玉环是其雅称,未开的花蕾称菡萏,已开的花朵称鞭蕖,莲科,属多年生水生宿根草本植物,其地下茎称藕,能食用,叶入药,莲子为上乘补品,花可供观赏。是我国十大名花之一。是印度的国花。莲,双子叶植物,睡莲科。多年生挺水草本植物。根状茎横走,粗而肥厚,节间膨大,内有纵横通气孔道,节部缢缩。叶基生,挺出水面,盾形,直径30-90cm,波状边缘,上面深绿色,下面浅绿色。叶柄有小刺,长1-2m,挺出水面。花单生,直径10-25cm,椭圆花瓣多数,白色或粉红色;花柄长1-2m。花托在果期膨大,直径5-10cm,海绵质。坚果椭圆形和卵圆形,长1.5-2.0cm,灰褐色。种子卵圆形,长1.2-1.7cm,种皮红棕色。生于池塘、浅湖泊及稻田中。中国南北各省有自生或栽培,经济价值高。人们习惯上称种子为“莲子”、地下茎为“藕”、花托为“莲蓬”、叶为“荷叶”。"
        }
      },
      {
        "score": 0.00015144718054216,
        "name": "红睡莲"
      },
      {
        "score": 1.2172759852547e-05,
        "name": "白睡莲"
      },
      {
        "score": 6.305016540864e-06,
        "name": "延药睡莲"
      },
      {
        "score": 3.6133328649157e-06,
        "name": "华夏慈姑"
      }]
    }

    图像主体检测

    用户向服务请求检测图像中的主体位置。

    Json::Value result;
    
    std::string image;
    aip::get_file_content("/assets/sample.jpg", &image);
    
    // 调用图像主体检测
    result = client.object_detect(image, aip::null);
    
    // 如果有可选参数
    std::map<std::string, std::string> options;
    options["with_face"] = "0";
    
    // 带参数调用图像主体检测
    result = client.object_detect(image, options);

    图像主体检测 请求参数详情

    参数名称 是否必选 类型 可选值范围 默认值 说明
    image std::string 图片数据的二进制字符串,可以使用aip::get_file_content函数获取
    with_face std::string 0 - 不带人脸区域
    1 - 带人脸区域
    1 如果检测主体是人,主体区域是否带上人脸部分,0-不带人脸区域,其他-带人脸区域,裁剪类需求推荐带人脸,检索/识别类需求推荐不带人脸。默认取1,带人脸。

    图像主体检测 返回数据参数详情

    参数 类型 是否必须 说明 示例
    log_id number 唯一的log id,用于问题定位 507499361
    result object 裁剪结果 -
    +left number 表示定位位置的长方形左上顶点的水平坐标 50
    +top number 表示定位位置的长方形左上顶点的垂直坐标 60
    +width number 表示定位位置的长方形的宽度 200
    +height number 表示定位位置的长方形的高度 200

    图像主体检测 返回示例

    {
      "log_id": 895582300,
      "result": {
        "width": 486,
        "top": 76,
        "left": 134,
        "height": 394
      }
    }

    地标识别

    该请求用于识别地标,即对于输入的一张图片(可正常解码,且长宽比适宜),输出图片中的地标识别结果。

    Json::Value result;
    
    std::string image;
    aip::get_file_content("/assets/sample.jpg", &image);
    
    // 调用地标识别
    result = client.landmark(image, aip::null);

    地标识别 请求参数详情

    参数名称 是否必选 类型 说明
    image std::string 图片数据的二进制字符串,可以使用aip::get_file_content函数获取

    地标识别 返回数据参数详情

    参数 类型 是否必须 说明 示例
    log_id number 唯一的log id,用于问题定位 507499361
    result object 裁剪结果 -
    +landmark string 地标名称,无法识别则返回空字符串 狮身人面像

    地标识别 返回示例

    {
      "log_id": 3450013152046070669,
      "result":
      {
        "landmark": "狮身人面像"
      }
    }

    花卉识别

    检测用户上传的花卉图片,输出图片的花卉识别结果名称及对应的概率打分。 注意:在正式使用之前,请前往细粒度图像识别页面提交合作咨询,或者申请加入百度图像识别官方QQ群(群号:659268104),提供公司名称、appid、应用场景、所需要入库的图片量,工作人员将协助开通调用求权限。注意,工作人员协助开通权限后该接口方可使用

    Json::Value result;
    
    std::string image;
    aip::get_file_content("/assets/sample.jpg", &image);
    
    // 调用花卉识别
    result = client.flower(image, aip::null);
    
    // 如果有可选参数
    std::map<std::string, std::string> options;
    options["top_num"] = "3";
    options["baike_num"] = "5";
    
    // 带参数调用花卉识别
    result = client.flower(image, options);

    花卉识别 请求参数详情

    参数名称 是否必选 类型 默认值 说明
    image std::string 图片数据的二进制字符串,可以使用aip::get_file_content函数获取
    top_num std::string 5 返回预测得分top结果数,默认为5
    baike_num std::string 0 返回百科信息的结果数,默认不返回

    花卉识别 返回数据参数详情

    字段 是否必选 类型 说明
    log_id uint64 唯一的log id,用于问题定位
    result_num uint32 返回结果数目,及result数组中的元素个数
    result object() 标签结果数组
    +name string 花卉名称
    +score double 置信度,0-1
    +baike_info object 对应识别结果的百科词条名称
    ++baike_url string 对应识别结果百度百科页面链接
    ++image_url string 对应识别结果百科图片链接
    ++description string 对应识别结果百科内容描述

    花卉识别 返回示例

    {
      "log_id": 2233046923807801461,
      "result": [{
        "score": 0.79123616218567,
        "name": "荷花",
        "baike_info": {
          "baike_url": "http://baike.baidu.com/item/%E8%8D%B7%E8%8A%B1/158674",
          "description": "荷花(Lotus flower)属山龙眼目,莲科,是莲属二种植物的通称。又名莲花、水芙蓉等。是莲属多年生水生草本花卉。地下茎长而肥厚,有长节,叶盾圆形。花期6至9月,单生于花梗顶端,花瓣多数,嵌生在花托穴内,有红、粉红、白、紫等色,或有彩纹、镶边。坚果椭圆形,种子成卵形。荷花种类很多,分观赏和食用两大类。原产亚洲热带和温带地区,中国早在周朝就有栽培记载。荷花全身皆宝,藕和莲子能食用,莲子、根茎、藕节、荷叶、花及种子的胚芽等都可入药。其出污泥而不染之品格恒为世人称颂。“接天莲叶无穷碧,映日荷花别样红”就是对荷花之美的真实写照。荷花“中通外直,不蔓不枝,出淤泥而不染,濯清涟而不妖”的高尚品格,历来为古往今来诗人墨客歌咏绘画的题材之一。1985年5月荷花被评为中国十大名花之一。荷花是印度,越南的国花。"
        }
      },
      {
        "score": 0.16631570458412,
        "name": "莲"
      },
      {
        "score": 0.015812600031495,
        "name": "非花"
      },
      {
        "score": 0.0058604963123798,
        "name": "碗莲"
      },
      {
        "score": 0.0039983494207263,
        "name": "并蒂莲"
      }]
    }

    食材识别

    该请求用于识别果蔬类食材,即对于输入的一张图片(可正常解码,且长宽比适宜),输出图片中的果蔬食材结果。 注意:在正式使用之前,请前往细粒度图像识别页面提交合作咨询,或者申请加入百度图像识别官方QQ群(群号:659268104),提供公司名称、appid、应用场景、所需要入库的图片量,工作人员将协助开通调用求权限。注意,工作人员协助开通权限后该接口方可使用

    Json::Value result;
    
    std::string image;
    aip::get_file_content("/assets/sample.jpg", &image);
    
    // 调用食材识别
    result = client.ingredient(image, aip::null);
    
    // 如果有可选参数
    std::map<std::string, std::string> options;
    options["top_num"] = "3";
    
    // 带参数调用食材识别
    result = client.ingredient(image, options);

    食材识别 请求参数详情

    参数名称 是否必选 类型 说明
    image std::string 图片数据的二进制字符串,可以使用aip::get_file_content函数获取
    top_num std::string 返回预测得分top结果数,如果为空或小于等于0默认为5;如果大于20默认20

    食材识别 返回数据参数详情

    字段 是否必选 类型 说明
    log_id uint64 唯一的log id,用于问题定位
    result object() 识别结果
    result_num uint32 识别结果数
    +name string 图像中的食材名称
    +score double 得分,0-1

    食材识别 返回示例

    {
        "log_id": 1091287364,
        "result_num": 20,
        "result": [
            {
                "name": "非果蔬食材",
                "score": 0.99999988079071
            },
            {
                "name": "油菜",
                "score": 1.1175458780599e-8
            },
            {
                "name": "蛇果",
                "score": 7.2776291659693e-9
            },
            {
                "name": "国光苹果",
                "score": 5.6971951600815e-9
            },
            {
                "name": "海枣",
                "score": 4.2508210285064e-9
            },
            {
                "name": "琼瑶浆葡萄",
                "score": 4.1451895249622e-9
            },
            {
                "name": "京锐号辣椒",
                "score": 3.9915102334476e-9
            },
            {
                "name": "冬瓜",
                "score": 3.3611948779821e-9
            },
            {
                "name": "长江豆",
                "score": 2.9944848822794e-9
            },
            {
                "name": "黑加仑",
                "score": 2.7750137743254e-9
            },
            {
                "name": "面包果",
                "score": 2.3357531464541e-9
            },
            {
                "name": "椰子",
                "score": 1.9741890344704e-9
            },
            {
                "name": "美人瓜",
                "score": 1.9319581490151e-9
            },
            {
                "name": "莲藕",
                "score": 1.759222323372e-9
            },
            {
                "name": "黑奥林",
                "score": 1.7266311713726e-9
            },
            {
                "name": "芥菜",
                "score": 1.6180708994895e-9
            },
            {
                "name": "样芹菜",
                "score": 1.5472728653876e-9
            },
            {
                "name": "篙巴",
                "score": 1.4084827748562e-9
            },
            {
                "name": "花生",
                "score": 1.3972580870103e-9
            },
            {
                "name": "魁绿猕猴桃",
                "score": 1.3920842256709e-9
            }
        ]
    }

    红酒识别

    该服务用于识别红酒标签,即对于输入的一张图片(可正常解码,长宽比适宜,且酒标清晰可见),输出图片中的红酒名称、国家、产区、酒庄、类型、糖分、葡萄品种、酒品描述等信息。可识别数十万中外常见红酒。 注意:图片中酒标要清晰可见,示例图片如下

    注: 1、邀测的接口,不能直接在控制台调用,可通过QQ群(659268104)联系群管、或提交工单申请开通测试权限

    Json::Value result;
    
    std::string image;
    aip::get_file_content("/assets/sample.jpg", &image);
    
    // 调用红酒识别
    result = client.redwine(image, aip::null);

    红酒识别 请求参数详情

    参数名称 是否必选 类型 说明
    image std::string 图片数据的二进制字符串,可以使用aip::get_file_content函数获取

    红酒识别 返回数据参数详情

    字段 是否必选 类型 说明
    log_id uint64 请求标识码,随机数,唯一
    result dict 识别结果
    +hasdetail unit 判断是否返回详细信息(除红酒中文名之外的其他字段),含有返回1,不含有返回0
    +wineNameCn string 红酒中文名,无法识别返回空,示例:波斯塔瓦经典赤霞珠品丽珠半甜红葡萄酒
    +wineNameEn string 红酒英文名,hasdetail = 0时,表示无法识别,该字段不返回,示例:Bostavan Classic Cabernet
    +countryCn string 国家中文名,hasdetail = 0时,表示无法识别,该字段不返回,示例:摩尔多瓦
    +countryEn string 国家英文名,hasdetail = 0时,表示无法识别,该字段不返回,示例:Moldova
    +regionCn string 产区中文名,hasdetail = 0时,表示无法识别,该字段不返回,示例:波尔多
    +regionEn string 产区英文名,hasdetail = 0时,表示无法识别,该字段不返回,示例:Bordeaux
    +subRegionCn string 子产区中文名,hasdetail = 0时,表示无法识别,该字段不返回,示例:梅多克
    +subRegionEn string 子产区英文名,hasdetail = 0时,表示无法识别,该字段不返回,示例:Medoc
    +wineryCn string 酒庄中文名,hasdetail = 0时,表示无法识别,该字段不返回,示例:波斯塔瓦酒庄
    +wineryEn string 酒庄英文名,hasdetail = 0时,表示无法识别,该字段不返回,示例:Vinaria Bostavan
    +classifyByColor string 酒类型,hasdetail = 0时,表示无法识别,该字段不返回,示例:红葡萄酒
    +classifyBySugar string 糖分类型,hasdetail = 0时,表示无法识别,该字段不返回,示例:半甜型
    +color string 色泽,hasdetail = 0时,表示无法识别,该字段不返回,示例:宝石红色
    +grapeCn string 葡萄品种,可能有多种葡萄,hasdetail = 0时,表示无法识别,该字段不返回,示例:品丽珠;赤霞珠
    +grapeEn string 葡萄品种英文名,可能有多种葡萄,hasdetail = 0时,表示无法识别,该字段不返回,示例:Cabernet Franc;Cabernet Sauvignon
    +tasteTemperature string 品尝温度,hasdetail = 0时,表示无法识别,该字段不返回,示例:6-11℃
    +description string 酒品描述,hasdetail = 0时,表示无法识别,该字段不返回,示例:葡萄酒呈深宝石红色,具有香料、香草和新鲜水果的果香,酒体分明,口感畅顺,果香横溢,单宁软化程度高,让你回味无穷

    红酒识别 返回示例

    {
      "log_id": 3450013152046070669,
      "result":
      {
        "wineNameCn": "银色高地阙歌干红",
        "hasdetail":0
      }
    }

    货币识别

    识别图像中的货币类型,以纸币为主,正反面均可准确识别,接口返回货币的名称、代码、面值、年份信息;可识别各类近代常见货币,如美元、欧元、英镑、法郎、澳大利亚元、俄罗斯卢布、日元、韩元、泰铢、印尼卢比等。 注意:图片中货币要清晰可见,示例图片如下

    注: 1、邀测的接口,不能直接在控制台调用,可通过QQ群(659268104)联系群管、或提交工单申请开通测试权限

    Json::Value result;
    
    std::string image;
    aip::get_file_content("/assets/sample.jpg", &image);
    
    // 调用货币识别
    result = client.currency(image, aip::null);

    货币识别 请求参数详情

    参数名称 是否必选 类型 说明
    image std::string 图片数据的二进制字符串,可以使用aip::get_file_content函数获取

    货币识别 返回数据参数详情

    字段 是否必选 类型 说明
    log_id uint64 请求标识码,随机数,唯一
    result dict 识别结果
    +hasdetail unit 判断是否返回详细信息(除货币名称之外的其他字段),含有返回1,不含有返回0
    +currencyName string 货币名称,无法识别返回空,示例:新加坡元
    +currencyCode string 货币代码,hasdetail = 0时,表示无法识别,该字段不返回,示例:SGD
    +currencyDenomination string 货币面值,hasdetail = 0时,表示无法识别,该字段不返回,示例:50元
    +year string 货币年份,hasdetail = 0时,表示无法识别,该字段不返回,示例:2004年

    货币识别 返回示例

    {
      "log_id": 4247844653395235754,
      "result": {
        "currencyName": "美元",
        "hasdetail": 1,
        "currencyCode": "USD",
        "year": "2001年",
        "currencyDenomination": "50美元"
      }
    }
    上一篇
    快速入门
    下一篇
    错误信息