二维码识别

最近更新时间:2024-07-02 16:57:41

我的收藏

功能概述

图片上传时识别二维码的请求包与对象存储(Cloud Object Storage,COS)简单上传文件接口一致,只需在请求包头部增加图片处理参数 Pic-Operations,并将请求 Host 更改为数据万象域名即可。

请求语法

PUT /<ObjectKey> HTTP/1.1
Host: <BucketName-APPID>.cos.<Region>.myqcloud.com
Date: GMT Date
Authorization: Auth String
Pic-Operations: <PicOperations>
说明:
COS 简单上传文件接口,详细请参见 PUT Object 文档
Authorization: Auth String (详细请参见 请求签名 文档)。

请求内容

Pic-Operations 为 json 格式的字符串,具体参数如下:
参数名称
类型
是否必选
描述
is_pic_info
Int
是否返回原图信息,0不返回原图信息,1返回原图信息,默认为0
rules
Array
处理规则,一条规则对应一个处理结果(目前最多支持五条规则),不填则不进行图片处理
rules(json 数组)中每一项具体参数如下:
参数名称
类型
是否必选
描述
bucket
String
存储结果的目标存储桶,格式为 BucketName-APPID,如果不指定的话默认保存到当前存储桶
fileid
String
处理结果的文件路径名称,例如以/开头,则存入指定文件夹中,否则存入与原图文件相同的目录位置
rule
String
处理参数,参见数据万象图片处理 API。若按指定样式处理,则以style/开头,后加样式名,<br>例如样式名为test,则 rule 字段为style/test
使用二维码识别功能需在 rule 中添加二维码识别参数(QRcode),相关内容如下:
QRcode/cover/<mode>
参数
类型
是否必选
描述
cover
Int
二维码覆盖功能。 可为0或1。
0表示不开启二维码覆盖
1表示开启二维码覆盖
功能开启后,将对识别出的二维码覆盖上马赛克,默认值0

返回内容

响应包体具体数据内容如下:
参数名称
类型
描述
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
int
二维码坐标点

示例

请求

PUT /picture.jpg HTTP/1.1
Host: examplebucket-1250000000.cos.ap-chengdu.myqcloud.com
Date: 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 OK
x-cos-request-id: NWFjMzQ0MDZfOTBmYTUwXzZkZV8z****

<UploadResult>
<OriginalInfo>
<Key>test.jpg</Key>
<Location>xxxxxx-xxxxxxx.cos.ap-shanghai.myqcloud.com/test.jpg</Location>
</OriginalInfo>
<ProcessResults>
<Object>
<Format>JPEG</Format>
<Width>1024</Width>
<Height>768</Height>
<Size>79866</Size>
<Quality>79</Quality>
<CodeStatus>1</CodeStatus>
<QRcodeInfo>
<CodeUrl>xxxxxxxxxxxxxxxxxxxxxxxx</CodeUrl>
<CodeLocation>
<Point>450,340</Point>
<Point>450,219</Point>
<Point>572,219</Point>
<Point>571,340</Point>
</CodeLocation>
</QRcodeInfo>
<QRcodeInfo>
<CodeUrl>xxxxxxxxxxxxxxxxxxxxxxxx</CodeUrl>
<CodeLocation>
<Point>773,340</Point>
<Point>772,219</Point>
<Point>894,219</Point>
<Point>894,340</Point>
</CodeLocation>
</QRcodeInfo>
<QRcodeInfo>
<CodeUrl>xxxxxxxxxxxxxxxxxxxxxxxx</CodeUrl>
<CodeLocation>
<Point>128,340</Point>
<Point>127,219</Point>
<Point>249,219</Point>
<Point>249,340</Point>
</CodeLocation>
</QRcodeInfo>
</Object>
</ProcessResults>
</UploadResult>