RecognizeAirItinerary - 航空行程单识别

支持包括旅客姓名、身份证号码、电子客票号码、填开日期、填开单位等字段结构化识别输出。

接口说明

本接口适用场景

  • 阿里云航空行程单识别,是阿里云官方自研 OCR 文字识别产品,适用于识别航空行程单所包含的乘机人姓名、身份证号、电子客票号码、验证码、填开日期、销售单位代号、承运人、填开单位、票价、税费、燃油附加费等关键信息的场景。
  • 阿里云 OCR 产品基于阿里巴巴达摩院强大的 AI 技术及海量数据,历经多年沉淀打磨,具有服务稳定、操作简易、实时性高、能力全面等几大优势。
  • 本接口图片示例

本接口核心能力

分类概述
图像增强默认支持图像增强,包括图像自动旋转、畸变自动矫正、模糊图片自动增强等能力。
多类型覆盖支持模糊、光照不均、透视畸变、任意背景等低质量图像识别。
高精度识别总体识别准确率可达 98%。

如何使用本接口

步骤概述
1开通 票据凭证识别 服务。开通服务前后,您可以通过体验馆免费体验本功能识别效果。
2购买 票据凭证识别资源包。本 API 会赠送免费额度,可使用免费额度测试。您也可以不购买资源包,系统会通过“按量付费”方式按实际调用量自动扣款。
3可以参照调试页面提供的代码示例完成 API 接入开发。接入完成后,调用 API 获取识别结果。如果使用子账号调用接口,需要阿里云账号(主账号)对 RAM 账号进行授权。创建 RAM 用户的具体操作,请参考:创建 RAM 用户。文字识别服务提供一种系统授权策略,即 AliyunOCRFullAccess。具体授权操作,请参见在用户页面为 RAM 用户授权。

重要提示

类型概述
图片格式
  • 本接口支持:PNG、JPG、JPEG、BMP、GIF、TIFF、WebP、OFD、PDF 格式。
图片尺寸
  • 图片长宽需要大于 15 像素,小于 8192 像素。
  • 长宽比需要小于 50。
  • 如需达到较好识别效果,建议长宽均大于 500px。
  • 图片尺寸过小,会影响识别精度。图片内单字大小在 10-50px 内时,识别效果较好。
图片大小
  • 图片二进制文件不能超过 10MB。
  • 图片过大会影响接口响应速度,建议使用小于 1.5M 图片进行识别,且通过传图片 URL 的方式调用接口。
相关能力

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
ocr:RecognizeAirItinerary
*全部资源
*

请求参数

名称类型必填描述示例值
Urlstring
  • 本字段和 body 字段二选一,不可同时透传或同时为空。
  • 图片链接(长度不超 2048 字节,不支持 base64)。
https://img.alicdn.com/tfs/TB1hBCIcBr0gK0jSZFnXXbRRXXa-1833-785.png
bodybyte
  • 本字段和 URL 字段二选一,不可同时透传或同时为空。
  • 图片二进制文件,最大 10MB。
  • 使用 HTTP 方式调用,把图片二进制文件放到 HTTP body 中上传即可。
  • 使用 SDK 的方式调用,把图片放到 SDK 的 body 中即可。
图片二进制文件

返回参数

名称类型描述示例值
object

Schema of Response

RequestIdstring

请求唯一 ID

43A29C77-405E-4CC0-BC55-EE694AD00655
Datastring

返回数据

{ "data": { "internationalFlightSign": "国内(D)", "serialNumber": "50424498176", "passengerName": "闻一鸣", "idCardNumber": "410678199112139856", "endorsement": "Q/不得签转/变更退票收费", "fare": "1410.00", "caacDevelopmentFund": "50.00", "fuelSurcharge": "0.00", "totalAmount": "1460.00", "ticketNumber": "7813575259334", "validationCode": "9817", "promptMessage": "西安始发国际在T3国内在13", "insurance": "0.00", "agentCode": "SIA25608336893", "issueCompany": "成都携程旅行社有限公司北京分社", "issueDate": "2019-02-28", "pnrCode": "JNS20Q", "otherTaxes": "0.00", "flights": [{ "departureStation": "西安咸阳", "arrivalStation": "长春", "carrier": "东航", "flightNumber": "MU2271", "cabinClass": "M", "flightDate": "2019-02-27", "flightTime": "15:05", "seatClass": "M", "validFromDate": "", "validToDate": "", "freeBaggageAllowance": "20K" }] }, "height": 785, "orgHeight": 785, "orgWidth": 1833, "prism_keyValueInfo": [{ "key": "internationalFlightSign", "keyProb": 100, "value": "国内(D)", "valueProb": 100 }, { "key": "serialNumber", "keyProb": 100, "value": "50424498176", "valuePos": [{ "x": 1676, "y": 113 }, { "x": 1676, "y": 144 }, { "x": 1371, "y": 144 }, { "x": 1371, "y": 112 }], "valueProb": 100 }, { "key": "passengerName", "keyProb": 98, "value": "闻一鸣", "valuePos": [{ "x": 317, "y": 167 }, { "x": 317, "y": 206 }, { "x": 219, "y": 206 }, { "x": 219, "y": 167 }], "valueProb": 98 }, { "key": "idCardNumber", "keyProb": 100, "value": "410678199112139856", "valuePos": [{ "x": 878, "y": 170 }, { "x": 878, "y": 200 }, { "x": 519, "y": 202 }, { "x": 518, "y": 171 }], "valueProb": 100 }, { "key": "endorsement", "keyProb": 92, "value": "Q/不得签转/变更退票收费", "valuePos": [{ "x": 1581, "y": 161 }, { "x": 1582, "y": 216 }, { "x": 1114, "y": 218 }, { "x": 1114, "y": 164 }], "valueProb": 92 }, { "key": "fare", "keyProb": 100, "value": "1410.00", "valuePos": [{ "x": 526, "y": 572 }, { "x": 527, "y": 545 }, { "x": 712, "y": 547 }, { "x": 712, "y": 575 }], "valueProb": 100 }, { "key": "caacDevelopmentFund", "keyProb": 100, "value": "50.00", "valuePos": [{ "x": 788, "y": 576 }, { "x": 789, "y": 548 }, { "x": 935, "y": 550 }, { "x": 935, "y": 578 }], "valueProb": 100 }, { "key": "fuelSurcharge", "keyProb": 100, "value": "0.00", "valuePos": [{ "x": 1113, "y": 551 }, { "x": 1113, "y": 578 }, { "x": 989, "y": 580 }, { "x": 988, "y": 553 }], "valueProb": 100 }, { "key": "totalAmount", "keyProb": 100, "value": "1460.00", "valuePos": [{ "x": 1555, "y": 558 }, { "x": 1555, "y": 583 }, { "x": 1415, "y": 583 }, { "x": 1415, "y": 558 }], "valueProb": 100 }, { "key": "ticketNumber", "keyProb": 98, "value": "7813575259334", "valuePos": [{ "x": 263, "y": 596 }, { "x": 263, "y": 568 }, { "x": 527, "y": 573 }, { "x": 526, "y": 601 }], "valueProb": 98 }, { "key": "validationCode", "keyProb": 100, "value": "9817", "valuePos": [{ "x": 667, "y": 602 }, { "x": 668, "y": 577 }, { "x": 747, "y": 579 }, { "x": 747, "y": 603 }], "valueProb": 100 }, { "key": "promptMessage", "keyProb": 99, "value": "西安始发国际在T3国内在13", "valuePos": [{ "x": 994, "y": 641 }, { "x": 994, "y": 592 }, { "x": 1478, "y": 601 }, { "x": 1477, "y": 649 }], "valueProb": 99 }, { "key": "insurance", "keyProb": 100, "value": "0.00", "valuePos": [{ "x": 1572, "y": 614 }, { "x": 1573, "y": 590 }, { "x": 1635, "y": 591 }, { "x": 1635, "y": 616 }], "valueProb": 100 }, { "key": "agentCode", "keyProb": 100, "value": "SIA25608336893", "valuePos": [{ "x": 263, "y": 685 }, { "x": 264, "y": 631 }, { "x": 422, "y": 633 }, { "x": 421, "y": 687 }], "valueProb": 100 }, { "key": "issueCompany", "keyProb": 100, "value": "成都携程旅行社有限公司北京分社", "valuePos": [{ "x": 671, "y": 700 }, { "x": 671, "y": 650 }, { "x": 1271, "y": 661 }, { "x": 1270, "y": 710 }], "valueProb": 100 }, { "key": "issueDate", "keyProb": 100, "value": "2019-02-28", "valuePos": [{ "x": 1634, "y": 648 }, { "x": 1634, "y": 674 }, { "x": 1430, "y": 677 }, { "x": 1429, "y": 650 }], "valueProb": 100 }, { "key": "pnrCode", "keyProb": 100, "value": "JNS20Q", "valuePos": [{ "x": 335, "y": 229 }, { "x": 335, "y": 258 }, { "x": 211, "y": 259 }, { "x": 210, "y": 231 }], "valueProb": 100 }, { "key": "otherTaxes", "keyProb": 100, "value": "0.00", "valueProb": 100 }, { "key": "flights", "keyProb": 100, "value": "[{\"departureStation\":\"西安咸阳\",\"arrivalStation\":\"长春\",\"carrier\":\"东航\",\"flightNumber\":\"MU2271\",\"cabinClass\":\"M\",\"flightDate\":\"2019-02-27\",\"flightTime\":\"15:05\",\"seatClass\":\"M\",\"validFromDate\":\"\",\"validToDate\":\"\",\"freeBaggageAllowance\":\"20K\"}]", "valueProb": 100 }], "width": 1833 }
Codestring

错误码(如果识别成功,不会返回此字段)

noPermission
Messagestring

错误提示(如果识别成功,不会返回此字段)

You are not authorized to perform this operation.

返回参数说明


字段类型说明
dataobject结构化信息。
sliceRectlist检测出的子图坐标信息。
prism_keyValueInfolist结构化信息的坐标信息。
ftypeint是否为复印件(1:是,0:否)。
heightint算法矫正图片后的高度。
widthint算法矫正图片后的宽度。
orgHeightint原图的高度。
orgWidthint原图的宽度。

结构化信息(data 字段)

字段类型说明
agentCodestring销售单位代号。
caacDevelopmentFundstring民航发展基金。
endorsementstring签注。
farestring票价。
flightslist航班详单。
fuelSurchargestring燃油附加费。
idCardNumberstring有效身份证号码。
insurancestring保险费。
internationalFlightSignstring国内国际标签。
issueCompanystring填开单位。
issueDatestring填开日期。
otherTaxesstring其他税费。
passengerNamestring旅客姓名。
pnrCodestringPNR 码。
promptMessagestring提示信息。
serialNumberstring印刷序号。
ticketNumberstring电子客票号码。
totalAmountstring合计。
validationCodestring验证码。

其他税费信息(flights 字段)

字段类型说明
departureStationstring出发站。
arrivalStationstring到达站。
carrierstring承运人。
flightNumberstring航班号。
cabinClassstring舱位等级。
flightDatestring乘机日期。
flightTimestring乘机时间。
seatClassstring座位等级。
validFromDatestring客票生效日期。
validToDatestring有效截止日期。
freeBaggageAllowancestring免费行李。

结构化坐标信息(prism_keyValueInfo 字段)

字段类型说明
keystring识别出的字段名称。
keyProbint字段名称置信度。
valuestring识别出的字段名称对应的值。
valueProbint字段名称对应值的置信度。
valuePoslist字段在原图中的四个点坐标(左上、右上、右下、左下)。

示例

正常返回示例

JSON格式

{
  "RequestId": "43A29C77-405E-4CC0-BC55-EE694AD00655",
  "Data": "{ \t\"data\": { \t\t\"internationalFlightSign\": \"国内(D)\", \t\t\"serialNumber\": \"50424498176\", \t\t\"passengerName\": \"闻一鸣\", \t\t\"idCardNumber\": \"410678199112139856\", \t\t\"endorsement\": \"Q/不得签转/变更退票收费\", \t\t\"fare\": \"1410.00\", \t\t\"caacDevelopmentFund\": \"50.00\", \t\t\"fuelSurcharge\": \"0.00\", \t\t\"totalAmount\": \"1460.00\", \t\t\"ticketNumber\": \"7813575259334\", \t\t\"validationCode\": \"9817\", \t\t\"promptMessage\": \"西安始发国际在T3国内在13\", \t\t\"insurance\": \"0.00\", \t\t\"agentCode\": \"SIA25608336893\", \t\t\"issueCompany\": \"成都携程旅行社有限公司北京分社\", \t\t\"issueDate\": \"2019-02-28\", \t\t\"pnrCode\": \"JNS20Q\", \t\t\"otherTaxes\": \"0.00\", \t\t\"flights\": [{ \t\t\t\"departureStation\": \"西安咸阳\", \t\t\t\"arrivalStation\": \"长春\", \t\t\t\"carrier\": \"东航\", \t\t\t\"flightNumber\": \"MU2271\", \t\t\t\"cabinClass\": \"M\", \t\t\t\"flightDate\": \"2019-02-27\", \t\t\t\"flightTime\": \"15:05\", \t\t\t\"seatClass\": \"M\", \t\t\t\"validFromDate\": \"\", \t\t\t\"validToDate\": \"\", \t\t\t\"freeBaggageAllowance\": \"20K\" \t\t}] \t}, \t\"height\": 785, \t\"orgHeight\": 785, \t\"orgWidth\": 1833, \t\"prism_keyValueInfo\": [{ \t\t\"key\": \"internationalFlightSign\", \t\t\"keyProb\": 100, \t\t\"value\": \"国内(D)\", \t\t\"valueProb\": 100 \t}, { \t\t\"key\": \"serialNumber\", \t\t\"keyProb\": 100, \t\t\"value\": \"50424498176\", \t\t\"valuePos\": [{ \t\t\t\"x\": 1676, \t\t\t\"y\": 113 \t\t}, { \t\t\t\"x\": 1676, \t\t\t\"y\": 144 \t\t}, { \t\t\t\"x\": 1371, \t\t\t\"y\": 144 \t\t}, { \t\t\t\"x\": 1371, \t\t\t\"y\": 112 \t\t}], \t\t\"valueProb\": 100 \t}, { \t\t\"key\": \"passengerName\", \t\t\"keyProb\": 98, \t\t\"value\": \"闻一鸣\", \t\t\"valuePos\": [{ \t\t\t\"x\": 317, \t\t\t\"y\": 167 \t\t}, { \t\t\t\"x\": 317, \t\t\t\"y\": 206 \t\t}, { \t\t\t\"x\": 219, \t\t\t\"y\": 206 \t\t}, { \t\t\t\"x\": 219, \t\t\t\"y\": 167 \t\t}], \t\t\"valueProb\": 98 \t}, { \t\t\"key\": \"idCardNumber\", \t\t\"keyProb\": 100, \t\t\"value\": \"410678199112139856\", \t\t\"valuePos\": [{ \t\t\t\"x\": 878, \t\t\t\"y\": 170 \t\t}, { \t\t\t\"x\": 878, \t\t\t\"y\": 200 \t\t}, { \t\t\t\"x\": 519, \t\t\t\"y\": 202 \t\t}, { \t\t\t\"x\": 518, \t\t\t\"y\": 171 \t\t}], \t\t\"valueProb\": 100 \t}, { \t\t\"key\": \"endorsement\", \t\t\"keyProb\": 92, \t\t\"value\": \"Q/不得签转/变更退票收费\", \t\t\"valuePos\": [{ \t\t\t\"x\": 1581, \t\t\t\"y\": 161 \t\t}, { \t\t\t\"x\": 1582, \t\t\t\"y\": 216 \t\t}, { \t\t\t\"x\": 1114, \t\t\t\"y\": 218 \t\t}, { \t\t\t\"x\": 1114, \t\t\t\"y\": 164 \t\t}], \t\t\"valueProb\": 92 \t}, { \t\t\"key\": \"fare\", \t\t\"keyProb\": 100, \t\t\"value\": \"1410.00\", \t\t\"valuePos\": [{ \t\t\t\"x\": 526, \t\t\t\"y\": 572 \t\t}, { \t\t\t\"x\": 527, \t\t\t\"y\": 545 \t\t}, { \t\t\t\"x\": 712, \t\t\t\"y\": 547 \t\t}, { \t\t\t\"x\": 712, \t\t\t\"y\": 575 \t\t}], \t\t\"valueProb\": 100 \t}, { \t\t\"key\": \"caacDevelopmentFund\", \t\t\"keyProb\": 100, \t\t\"value\": \"50.00\", \t\t\"valuePos\": [{ \t\t\t\"x\": 788, \t\t\t\"y\": 576 \t\t}, { \t\t\t\"x\": 789, \t\t\t\"y\": 548 \t\t}, { \t\t\t\"x\": 935, \t\t\t\"y\": 550 \t\t}, { \t\t\t\"x\": 935, \t\t\t\"y\": 578 \t\t}], \t\t\"valueProb\": 100 \t}, { \t\t\"key\": \"fuelSurcharge\", \t\t\"keyProb\": 100, \t\t\"value\": \"0.00\", \t\t\"valuePos\": [{ \t\t\t\"x\": 1113, \t\t\t\"y\": 551 \t\t}, { \t\t\t\"x\": 1113, \t\t\t\"y\": 578 \t\t}, { \t\t\t\"x\": 989, \t\t\t\"y\": 580 \t\t}, { \t\t\t\"x\": 988, \t\t\t\"y\": 553 \t\t}], \t\t\"valueProb\": 100 \t}, { \t\t\"key\": \"totalAmount\", \t\t\"keyProb\": 100, \t\t\"value\": \"1460.00\", \t\t\"valuePos\": [{ \t\t\t\"x\": 1555, \t\t\t\"y\": 558 \t\t}, { \t\t\t\"x\": 1555, \t\t\t\"y\": 583 \t\t}, { \t\t\t\"x\": 1415, \t\t\t\"y\": 583 \t\t}, { \t\t\t\"x\": 1415, \t\t\t\"y\": 558 \t\t}], \t\t\"valueProb\": 100 \t}, { \t\t\"key\": \"ticketNumber\", \t\t\"keyProb\": 98, \t\t\"value\": \"7813575259334\", \t\t\"valuePos\": [{ \t\t\t\"x\": 263, \t\t\t\"y\": 596 \t\t}, { \t\t\t\"x\": 263, \t\t\t\"y\": 568 \t\t}, { \t\t\t\"x\": 527, \t\t\t\"y\": 573 \t\t}, { \t\t\t\"x\": 526, \t\t\t\"y\": 601 \t\t}], \t\t\"valueProb\": 98 \t}, { \t\t\"key\": \"validationCode\", \t\t\"keyProb\": 100, \t\t\"value\": \"9817\", \t\t\"valuePos\": [{ \t\t\t\"x\": 667, \t\t\t\"y\": 602 \t\t}, { \t\t\t\"x\": 668, \t\t\t\"y\": 577 \t\t}, { \t\t\t\"x\": 747, \t\t\t\"y\": 579 \t\t}, { \t\t\t\"x\": 747, \t\t\t\"y\": 603 \t\t}], \t\t\"valueProb\": 100 \t}, { \t\t\"key\": \"promptMessage\", \t\t\"keyProb\": 99, \t\t\"value\": \"西安始发国际在T3国内在13\", \t\t\"valuePos\": [{ \t\t\t\"x\": 994, \t\t\t\"y\": 641 \t\t}, { \t\t\t\"x\": 994, \t\t\t\"y\": 592 \t\t}, { \t\t\t\"x\": 1478, \t\t\t\"y\": 601 \t\t}, { \t\t\t\"x\": 1477, \t\t\t\"y\": 649 \t\t}], \t\t\"valueProb\": 99 \t}, { \t\t\"key\": \"insurance\", \t\t\"keyProb\": 100, \t\t\"value\": \"0.00\", \t\t\"valuePos\": [{ \t\t\t\"x\": 1572, \t\t\t\"y\": 614 \t\t}, { \t\t\t\"x\": 1573, \t\t\t\"y\": 590 \t\t}, { \t\t\t\"x\": 1635, \t\t\t\"y\": 591 \t\t}, { \t\t\t\"x\": 1635, \t\t\t\"y\": 616 \t\t}], \t\t\"valueProb\": 100 \t}, { \t\t\"key\": \"agentCode\", \t\t\"keyProb\": 100, \t\t\"value\": \"SIA25608336893\", \t\t\"valuePos\": [{ \t\t\t\"x\": 263, \t\t\t\"y\": 685 \t\t}, { \t\t\t\"x\": 264, \t\t\t\"y\": 631 \t\t}, { \t\t\t\"x\": 422, \t\t\t\"y\": 633 \t\t}, { \t\t\t\"x\": 421, \t\t\t\"y\": 687 \t\t}], \t\t\"valueProb\": 100 \t}, { \t\t\"key\": \"issueCompany\", \t\t\"keyProb\": 100, \t\t\"value\": \"成都携程旅行社有限公司北京分社\", \t\t\"valuePos\": [{ \t\t\t\"x\": 671, \t\t\t\"y\": 700 \t\t}, { \t\t\t\"x\": 671, \t\t\t\"y\": 650 \t\t}, { \t\t\t\"x\": 1271, \t\t\t\"y\": 661 \t\t}, { \t\t\t\"x\": 1270, \t\t\t\"y\": 710 \t\t}], \t\t\"valueProb\": 100 \t}, { \t\t\"key\": \"issueDate\", \t\t\"keyProb\": 100, \t\t\"value\": \"2019-02-28\", \t\t\"valuePos\": [{ \t\t\t\"x\": 1634, \t\t\t\"y\": 648 \t\t}, { \t\t\t\"x\": 1634, \t\t\t\"y\": 674 \t\t}, { \t\t\t\"x\": 1430, \t\t\t\"y\": 677 \t\t}, { \t\t\t\"x\": 1429, \t\t\t\"y\": 650 \t\t}], \t\t\"valueProb\": 100 \t}, { \t\t\"key\": \"pnrCode\", \t\t\"keyProb\": 100, \t\t\"value\": \"JNS20Q\", \t\t\"valuePos\": [{ \t\t\t\"x\": 335, \t\t\t\"y\": 229 \t\t}, { \t\t\t\"x\": 335, \t\t\t\"y\": 258 \t\t}, { \t\t\t\"x\": 211, \t\t\t\"y\": 259 \t\t}, { \t\t\t\"x\": 210, \t\t\t\"y\": 231 \t\t}], \t\t\"valueProb\": 100 \t}, { \t\t\"key\": \"otherTaxes\", \t\t\"keyProb\": 100, \t\t\"value\": \"0.00\", \t\t\"valueProb\": 100 \t}, { \t\t\"key\": \"flights\", \t\t\"keyProb\": 100, \t\t\"value\": \"[{\\\"departureStation\\\":\\\"西安咸阳\\\",\\\"arrivalStation\\\":\\\"长春\\\",\\\"carrier\\\":\\\"东航\\\",\\\"flightNumber\\\":\\\"MU2271\\\",\\\"cabinClass\\\":\\\"M\\\",\\\"flightDate\\\":\\\"2019-02-27\\\",\\\"flightTime\\\":\\\"15:05\\\",\\\"seatClass\\\":\\\"M\\\",\\\"validFromDate\\\":\\\"\\\",\\\"validToDate\\\":\\\"\\\",\\\"freeBaggageAllowance\\\":\\\"20K\\\"}]\", \t\t\"valueProb\": 100 \t}], \t\"width\": 1833 }",
  "Code": "noPermission",
  "Message": "You are not authorized to perform this operation."
}

错误码

访问错误中心查看更多错误码。

变更历史

变更时间变更内容概要操作
2022-11-25API 内部配置变更,不影响调用查看变更详情
2021-08-17OpenAPI 入参发生变更查看变更详情