功能描述
对象存储二维码识别功能可识别图片中有效二维码的位置及内容,输出图像中二维码包含的文本信息(每个二维码对应的 URL 或文本),并可对识别出的二维码添加马赛克。注意:本接口属于 GET 请求,为同步请求方式,需携带签名,具体签名设置请参见 请求签名。
授权说明
授权策略中 action 设置为 ci:CreateDetectQRcodeJob
。查看所有 action。
服务开通
使用该功能需提前开通数据万象,并绑定存储桶。详情请参见 绑定存储桶。
使用限制
使用该接口时,请先确认相关限制条件。详情请参见 使用限制。
请求一:上传时识别
图片上传时识别二维码的请求包与 COS 简单上传文件接口一致,只需在请求头部增加图片处理参数 Pic-Operations,并将请求 Host 更改为对象存储域名即可。
请求示例
PUT /<ObjectKey> HTTP/1.1 Host: <BucketName-APPID>.cos.<Region>.myqcloud.comDate: GMT Date Authorization: Auth String Pic-Operations: <PicOperations>
说明COS 简单上传文件接口,详细请参见 PUT Object 文档。Authorization: Auth String (详细请参见 请求签名 文档)。
请求头
此接口仅使用公共请求头部,详情请参见 公共请求头部 文档。
请求参数
此接口无请求参数。
请求体
Pic-Operations 为 json 格式的字符串,具体参数如下:
参数名称 | 描述 | 类型 | 是否必选 |
is_pic_info | 是否返回原图信息,0不返回原图信息,1返回原图信息,默认为0 | Int | 否 |
rules | 处理规则,一条规则对应一个处理结果(目前最多支持五条规则),不填则不进行图片处理 | Array | 否 |
rules(json 数组)中每一项具体参数如下:
参数名称 | 描述 | 类型 | 是否必选 |
bucket | 存储结果的目标存储桶,格式为 BucketName-APPID,如果不指定的话默认保存到当前存储桶 | String | 否 |
fileid | 处理结果的文件路径名称,例如以/ 开头,则存入指定文件夹中,否则存入与原图文件相同的目录位置 |
String | 否 |
rule | 处理参数,参见对象存储图片处理 API。若按指定样式处理,则以style/ 开头,后加样式名。例如样式名为test ,则 rule 字段为style/test |
String | 是 |
使用二维码识别功能需在 rule 中添加二维码识别参数(QRcode),相关内容如下:
QRcode/cover/<mode>
示例参数说明如下:
参数 | 描述 | 类型 | 是否必选 |
cover | 二维码覆盖功能。可为0或1。0表示不开启二维码覆盖1表示开启二维码覆盖功能开启后,将对识别出的二维码覆盖上马赛克,默认值0 | Int | 否 |
响应
响应头
此接口仅返回公共响应头部,详情请参见 公共响应头部 文档。
响应体
响应体具体数据内容如下:
参数名称 | 类型 | 描述 |
UploadResult | Container | 原图信息 |
UploadResult 节点内容:
参数名称 | 类型 | 描述 |
OriginalInfo | Container | 原图信息 |
ProcessResults | Container | 图片处理结果 |
OriginalInfo 节点内容:
节点名称 | 类型 | 描述 |
Key | String | 原图文件名 |
Location | String | 图片路径 |
ImageInfo | Container | 原图图片信息 |
ImageInfo 节点内容:
节点名称 | 类型 | 描述 |
Format | String | 格式 |
Width | Int | 图片宽度 |
Height | Int | 图片高度 |
Quality | Int | 图片质量 |
Ave | String | 图片主色调 |
Orientation | Int | 图片旋转角度 |
ProcessResults 节点内容:
节点名称 | 类型 | 描述 |
Object | Container | 每一个图片处理结果 |
Object 节点内容:
节点名称 | 类型 | 描述 |
Key | String | 文件名 |
Location | String | 图片路径 |
Format | String | 图片格式 |
Width | Int | 图片宽度 |
Height | Int | 图片高度 |
Size | Int | 图片大小 |
Quality | Int | 图片质量 |
codeStatus | Int | 二维码识别结果。0表示未识别到二维码,1表示识别到二维码 |
QRcodeInfo | Container | 二维码识别结果,可能有多个 |
QRcodeInfo 节点内容:
节点名称 | 类型 | 描述 |
codeUrl | String | 二维码的内容。可能识别不出 |
codelocation | Container | 图中识别到的二维码位置坐标 |
codelocation 节点内容:
节点名称 | 类型 | 描述 |
point | String | 二维码坐标点 |
实际案例
请求
PUT /picture.jpg HTTP/1.1 Host: examplebucket-1250000000.cos.ap-chengdu.myqcloud.comDate: Tue, 03 Apr 2018 09:06:15 GMT Authorization:XXXXXXXXXXXX
Pic-Operations: {"is_pic_info":1,"rules":[{"fileid":"test.jpg","rule":" QRcode/cover/1"}]} Content-Length: 64
[Object]
响应
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: 645 Date: Tue, 03 Apr 2018 09:06:16 GMT Status: 200 OKx-cos-request-id: NWFjMzQ0MDZfOTBmYTUwXzZkZV8z****
<UploadResult> <OriginalInfo> <Key>picture.jpg</Key> <Location>examplebucket-1250000000.cos.ap-chengdu.myqcloud.com/picture.jpg</Location> <ImageInfo> <Format>JPEG</Format> <Width>640</Width> <Height>427</Height> <Quality>100</Quality> <Ave>0xa18454</Ave> <Orientation>1</Orientation> </ImageInfo> </OriginalInfo> <ProcessResults> <Object> <Key>picture-2.jpg</Key> <Location>examplebucket-1250000000.cos.ap-chengdu.myqcloud.com/picture-2.jpg</Location> <Format>png</Format> <Width>640</Width> <Height>427</Height> <Size>463092</Size> <Quality>100</Quality> <codeStatus>1</codeStatus> <QRcodeInfo> <codeUrl>xxxxxxxxxxxxx</codeUrl> <codelocation> <point>100,100</point> <point>100,200</point> <point>200,200</point> <point>200,100</point> </codelocation> </QRcodeInfo> <codeUrl>xxxxxxxxxxxxx</codeUrl> <codelocation> <point>1000,1000</point> <point>1000,2000</point> <point>2000,2000</point> <point>2000,1000</point> </codelocation> </Object> </ProcessResults></UploadResult>
请求二:下载时识别
请求示例
GET /<ObjectKey>?ci-process=QRcode&cover=<cover> HTTP/1.1Host: <BucketName-APPID>.cos.<Region>.myqcloud.comDate: <GMT Date>Authorization: <Auth String>
说明Authorization: Auth String (详情请参见 请求签名 文档)。
请求头
此接口仅使用公共请求头部,详情请参见 公共请求头部 文档。
请求参数
参数名称 | 描述 | 是否必选 | 类型 |
ObjectKey | 对象文件名,例如 folder/sample.jpg | 是 | String |
ci-process | 万象处理能力,二维码识别固定为 QRcode | 是 | String |
cover | 二维码覆盖功能,将对识别出的二维码覆盖上马赛克。取值为0或1。0表示不开启二维码覆盖,1表示开启二维码覆盖,默认值0 | 否 | Int |
请求体
该请求无请求体。
响应
响应头
此接口仅返回公共响应头部,详情请参见 公共响应头部 文档。
响应体
该响应体返回为 application/xml 数据,包含完整节点数据的内容展示如下:
<Response> <CodeStatus>1</CodeStatus> <QRcodeInfo> <CodeUrl>xxxx</CodeUrl> <CodeLocation> <Point>xxx,xxx</Point> <Point>xxx,xxx</Point> <Point>xxx,xxx</Point> <Point>xxx,xxx</Point> </CodeLocation> </QRcodeInfo> <ResultImage> base64编码的图片 </ResultImage></Response>
具体的数据内容如下:
节点名称(关键字) | 父节点 | 描述 | 类型 |
Response | 无 | 保存结果的容器 | Container |
Response 的内容:
节点名称(关键字) | 父节点 | 描述 | 类型 |
CodeStatus | Response | 二维码识别结果。0表示未识别到二维码,1表示识别到二维码 | Int |
QRcodeInfo | Response | 二维码识别结果,可能有多个 | Container |
ResultImage | Response | 处理后的图片 base64数据,请求参数 cover 为1时返回 | String |
QRcodeInfo 节点内容:
节点名称(关键字) | 父节点 | 描述 | 类型 |
CodeUrl | QRcodeInfo | 二维码的内容。可能识别不到内容 | String |
CodeLocation | QRcodeInfo | 图中识别到的二维码位置坐标 | Container |
CodeLocation 节点内容:
节点名称(关键字) | 父节点 | 描述 | 类型 |
Point | CodeLocation | 二维码坐标点(X坐标,Y坐标) | String |
错误码
该请求操作无特殊错误信息,常见的错误信息请参见 错误码 文档。
实际案例
请求
GET /<ObjectKey>?ci-process=QRcode&cover=1 HTTP/1.1Authorization: q-sign-algorithm=sha1&q-ak=AKIDZfbOAo7cllgPvF9cXFrJD0**********&q-sign-time=1497530202;1497610202&q-key-time=1497530202;1497610202&q-header-list=&q-url-param-list=&q-signature=28e9a4986df11bed0255e97ff90500557e0ea057Host: examplebucket-1250000000.cos.ap-beijing.myqcloud.com
响应
HTTP/1.1 200 OKContent-Type: application/xmlContent-Length: 414641Date: Thu, 15 Jun 2017 12:37:29 GMTServer: tencent-cix-cos-request-id: NTk0MjdmODlfMjQ4OGY3XzYzYzhf****
<Response> <CodeStatus>1</CodeStatus> <QRcodeInfo> <CodeUrl>xxxxxxxxxxxxx</CodeUrl> <CodeLocation> <Point>100,100</Point> <Point>100,200</Point> <Point>200,200</Point> <Point>200,100</Point> </CodeLocation> </QRcodeInfo> <QRcodeInfo> <CodeUrl>xxxxxxxxxxxxx</CodeUrl> <CodeLocation> <Point>1000,1000</Point> <Point>1000,2000</Point> <Point>2000,2000</Point> <Point>2000,1000</Point> </CodeLocation> </QRcodeInfo> <ResultImage> base64编码的图片 </ResultImage></Response>
对象存储官网1折活动,限时活动,即将结束,速速收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利。同意关联立享优惠
转转请注明出处:https://www.yunxiaoer.com/145207.html