PAI提供多种已经训练好的图像智能类模型供您使用,包括通用图像分类模型、通用图像检测模型、图像语义分割模型、图像实例分割模型、通用OCR模型、人脸相似度比对模型及前景分割模型。

ModelHub登录入口

您可以通过如下方法进入ModelHub:
  1. 登录PAI控制台
  2. 在左侧导航栏,单击模型管理及优化
  3. PAI模型管理页面,单击ModelHub页签。

通用图像分类模型

  • 模型介绍

    基于ImageNet数据集训练的图像分类模型,该模型采用ResNet,详情请参见Deep Residual Learning for Image Recognition

  • 输入格式
    输入数据为JSON格式字符串,包含image字段,对应的value为图片内容的Base 64编码。
    {
      "image": "图像文件内容的Base 64编码"
    }
  • 输出格式
    输出数据为JSON格式字符串,包含的字段如下表所示。
    字段 描述 Shape Type
    class 类别ID [] INT32
    class_name 类别名称 [] STRING
    class_probs 所有类别概率 [num_classes] Dict[STRING, FLOAT]
    request_id 请求的唯一标识 [] STRING
    success 请求是否成功 [] BOOL
    error_code 请求错误码 [] INT
    error_msg 请求错误信息 [] STRING
    输出数据的示例如下。
    {
    "class": 3,
    "class_name": "coho4",
    "class_probs": {"coho1": 4.028851974258174e-10,
              "coho2": 0.48115724325180054,
              "coho3": 5.116515922054532e-07,
              "coho4": 0.5188422446937221},
     "request_id": "9ac294a4-f387-4c48-b640-d2c6d41f****",
     "success": true
    }
  • 测试数据

    下载通用图像分类模型的测试数据

通用图像检测模型

  • 模型介绍

    模型采用Faster R-CNN,详情请参见Towards Real-Time Object Detection with Region Proposal Networks。训练数据集为COCO。

  • 输入格式
    输入数据为JSON格式字符串,包含image字段,对应的value为图片内容的Base 64编码。
    {
      "image": "图像文件内容的Base 64编码"
    }
  • 输出格式
    输出数据为JSON格式字符串,包含的字段如下表所示。
    字段 描述 Shape Type
    detection_boxes 检测到的目标框[y1, x1, y2,x2],其坐标顺序为[top, left, bottom, right] [num_detections, 4] FLOAT
    detection_scores 目标检测概率。 num_detections FLOAT
    detection_classes 目标区域类别ID。 num_detections INT
    detection_class_names 目标区域类别名称。 num_detections STRING
    request_id 请求的唯一标识。 [] STRING
    success 请求是否成功。 [] BOOL
    error_code 请求错误码。 [] INT
    error_msg 请求错误信息。 [] STRING
    输出数据的示例如下。
    {
      "detection_boxes": [[243.5308074951172, 197.69570922851562, 385.59625244140625, 247.7247772216797], [292.1929931640625, 114.28043365478516, 571.2748413085938, 165.09771728515625]],
      "detection_scores": [0.9942291975021362, 0.9940272569656372],
      "detection_classes": [1, 1],
      "detection_classe_names": ["text", "text"],
      "request_id": "9ac294a4-f387-4c48-b640-d2c6d41f****",
      "success": true
     }
  • 测试数据

    下载通用图像检测模型的测试数据

图像语义分割模型

  • 模型介绍

    模型采用DeepLab V3,详情请参见Rethinking Atrous Convolution for Semantic Image Segmentation。训练数据集为Pascal_Voc。

  • 输入格式
    输入数据为JSON格式字符串,包含image字段,对应的value为图片内容的Base 64编码。
    {
      "image": "图像文件内容的Base 64编码"
    }
  • 输出格式
    输出数据为JSON格式字符串,包含的字段如下表所示。
    字段 描述 Shape Type
    probs 分割像素点概率 [output_height, output_width] FLOAT
    preds 分割像素类别ID [output_height, output_widths] INT
    request_id 请求的唯一标识 [] STRING
    success 请求是否成功 [] BOOL
    error_code 请求错误码 [] INT
    error_msg 请求错误信息 [] STRING
    输出数据的示例如下。
    {
      "probs" : [[[0.8, 0.8], [0.6, 0.7]],[[0.8, 0.5], [0.4, 0.3]]],
      "preds" : [[1,1], [0, 0]],
       "request_id": "9ac294a4-f387-4c48-b640-d2c6d41f****",
       "success": true
    }
  • 测试数据

    下载图像语义分割模型的测试数据

图像实例分割模型

  • 模型介绍

    模型采用Mask R-CNN,详情请参见Mask R-CNN。训练数据集为COCO。

  • 输入格式
    输入数据为JSON格式字符串,包含image字段,对应的value为图片内容的Base 64编码。
    {
      "image": "图像文件内容的Base 64编码"
    }
  • 输出格式
    输出数据为JSON格式字符串,包含的字段如下表所示。
    字段 描述 Shape Type
    detection_boxes 检测到的目标框[y1, x1, y2,x2],其坐标顺序为[top, left, bottom, right] [num_detections, 4] FLOAT
    detection_scores 目标检测概率。 num_detections FLOAT
    detection_classes 目标区域类别ID。 num_detections INT
    detection_class_names 目标区域类别名称。 num_detections STRING
    detection_masks 目标区域的Mask。采用RLE编码,每个Mask对应如下两个属性:
    • size:对应Mask图像的[height, width]
    • counts:对应Mask的RLE编码数据。奇数位表示连续为False的个数,偶数位表示连续为True的个数。例如,[True False, False, True]的编码为[0,1,2,1]。 解码RLE数据后,可以根据size把Mask数据序列Reshape成一个Mask二维掩码。
    [num_detections] DICT
    request_id 请求的唯一标识。 [] STRING
    success 请求是否成功。 [] BOOL
    error_code 请求错误码。 [] INT
    error_msg 请求错误信息。 [] STRING
    输出数据的示例如下。
    {
      "detection_boxes": [[243.5308074951172, 197.69570922851562, 385.59625244140625, 247.7247772216797], [292.1929931640625, 114.28043365478516, 571.2748413085938, 165.09771728515625]],
      "detection_scores": [0.9942291975021362, 0.9940272569656372],
      "detection_classes": [1, 1],
      "detection_classe_names": ["text", "text"],
      "detection_masks": [{"counts": [398408, 11, 671, 30, 652, 44, 636], "size":[640, 480]},
                          {"counts": [398408, 11, 671, 30, 652, 44, 636], "size":[640, 480]}],
       "request_id": "9ac294a4-f387-4c48-b640-d2c6d41f****",
       "success": true
     }
  • 测试数据

    下载图像实例分割模型的测试数据

通用OCR模型

  • 模型介绍

    该模型采用PAI自研的端到端OCR模型,具有文本检测、识别的功能。

  • 输入格式
    输入数据为JSON格式字符串,包含image字段,对应的value为图片内容的Base 64编码。
    {
      "image": "图像文件内容的Base 64编码"
    }
  • 输出格式
    输出数据为JSON格式字符串,包含的字段如下表所示。
    字段 描述 Shape Type
    detection_boxes 检测到的文字框,坐标顺序 [top, left, bottom, right] [num_detections, 4] FLOAT
    detection_scores 文字检测概率。 num_detections FLOAT
    detection_classes 文字区域类别ID。 num_detections INT
    detection_class_names 文字区域类别名称。 num_detections STRING
    detection_keypoints 检测到的文字区域四个角点,每个点的坐标为(y,x) [num_detections, 4, 2] float
    detection_texts_ids 单行文字识别类别ID。 [num_detections, max_text_length] INT
    detection_texts 单行文字识别结果。 [num_detections] STRING
    detection_texts_scores 单行文字识别概率。 [num_detections] FLOAT
    request_id 请求的唯一标识。 [] STRING
    success 请求是否成功。 [] BOOL
    error_code 请求错误码。 [] INT
    error_msg 请求错误信息。 [] STRING
    输出数据的示例如下。
     {
      "detection_keypoints": [[[243.57516479492188, 198.84210205078125], [243.91038513183594, 247.62425231933594], [385.5513916015625, 246.61660766601562], [385.2197570800781, 197.79345703125]], [[292.2718200683594, 114.44700622558594], [292.2237243652344, 164.684814453125], [571.1962890625, 164.931640625], [571.2444458007812, 114.67433166503906]]], 
      "detection_boxes": [[243.5308074951172, 197.69570922851562, 385.59625244140625, 247.7247772216797], [292.1929931640625, 114.28043365478516, 571.2748413085938, 165.09771728515625]], 
      "detection_scores": [0.9942291975021362, 0.9940272569656372],
      "detection_classes": [1, 1],
      "detection_classe_names": ["text", "text"],
      "detection_texts_ids" : [[1,2,2008,12], [1,2,2008,12]],
      "detection_texts": ["这是示例", "这是示例"],
      "detection_texts_scores" : [0.88, 0.88],
      "request_id": "9ac294a4-f387-4c48-b640-d2c6d41f****",
      "success": true
     }
  • 测试数据

    下载下载通用OCR模型的测试数据

人脸相似度比对模型

  • 模型介绍

    模型采用ResNet50,详情请参见Deep Residual Learning for Image Recognition

  • 输入格式
    输入数据为JSON格式字符串,包含imagea字段和imageb字段,对应的value为图片内容的Base 64编码。如果图像包含超过一张人脸,则会返回错误。
    {
      "imagea": "图像文件内容的Base 64编码"
      "imageb": "图像文件内容的Base 64编码"
    }
  • 输出格式
    输出数据为JSON格式字符串,包含的字段如下表所示。
    字段 描述 Shape Type
    similarity 输入的imageaimageb两张人脸图像的相似度。取值为100表示二者为同一张图片,取值小于80表示二者不是同一个人。 [] INT
    request_id 请求的唯一标识。 [] STRING
    success 请求是否成功。 [] BOOL
    error_code 请求错误码。 [] INT
    error_msg 请求错误信息。 [] STRING
    输出数据的示例如下。
    {
      "request_id": "d4e4348a-6101-43d1-9203-dbe8f531****", 
      "success": true, 
      "similarity": 99
     }
  • 测试数据

前景分割模型

  • 模型介绍

    基于MobileNet训练的前景分割模型。

  • 输入格式
    输入数据是JSON格式字符串,包含图片的url字段。具体格式如下。
    {
      "input": {
        "url": "输入图片的URL"
      }
    }
  • 输出格式
    输出数据为JSON格式字符串,包含的字段如下表所示。
    字段 描述 Shape Type
    human_ratio 前景占的比例 [] STRING
    mask 前景Mask [h,w] LIST
  • 示例
    例如,为该模型输入如下测试数据。
    {"input" : {"url": "http://yq****.oss-cn-hangzhou-zmf.aliyuncs.com/tb_quality.png"}}
    系统输出的结果详见结果样例