详情页标题前

腾讯云对象存储图片二维码

详情页1

简介

文档提供关于对象存储图片二维码相关的 API 概览以及 SDK 示例代码。

API 操作描述
二维码识别 二维码识别功能可识别图片中有效二维码的位置及内容,输出图像中二维码包含的文本信息(每个二维码对应的 URL 或文本),并可对识别出的二维码添加马赛克

图片二维码

上传时识别二维码

功能说明

识别图片中有效二维码的位置及内容,输出图像中二维码包含的文本信息(每个二维码对应的 URL 或文本),并可对识别出的二维码添加马赛克。

方法原型

CosResult PutImage(const PutImageByFileReq& request, PutImageByFileResp* response);

请求示例

qcloud_cos::CosConfig config("./config.json");qcloud_cos::CosAPI cos(config);std::string bucket_name = "examplebucket-1250000000";
PicOperation pic_operation;PicRules rule1;// 处理结果的文件路径名称,如以/开头rule1.fileid = "/" + object_name + "_put_qrcode";// 二维码识别处理参数rule1.rule = "QRcode/cover/1";pic_operation.AddRule(rule1);req.SetPicOperation(pic_operation);
qcloud_cos::CosResult result = cos.GetObject(req, &resp);if (result.IsSucc()) { // 调用成功,调用 resp 的成员函数获取返回内容 std::cout << "ProcessResult: " << resp.GetUploadResult().to_string() << std::endl;} else { // 调用失败,调用 result 的成员函数获取错误信息}

参数说明

参数 参数描述 类型 是否必填
req PutImage 操作的请求 PutImageByFileReq
resp PutImage 操作的响应 PutImageByFileReq

req涉及到如下结构:

struct PicRules {  std::string bucket;  // 存储结果的目标存储桶名称,格式为 BucketName-APPID,如果不指定的话默认保存到当前存储桶  std::string fileid;  // 处理结果的文件路径名称,如以/开头,则存入指定文件夹中,否则,存入原图文件存储的同目录  std::string rule;  // 处理参数,参见对象存储图片处理API。若按指定样式处理,则以style/开头,后加样式名,如样式名为test,则 rule 字段为style/test};
class PicOperation { public: PicOperation() : is_pic_info(true) {} virtual ~PicOperation() {} void AddRule(const PicRules& rule) { rules.push_back(rule); } void TurnOffPicInfo() { is_pic_info = false; } private: boolis_pic_info; // 是否返回原图信息,0不返回原图信息,1返回原图信息,默认为0 std::vector<PicRules> rules; //处理规则,一条规则对应一个处理结果(目前支持五条规则),不填则不进行图片处理};

resp涉及到如下结构:

struct CodeLocation {  std::vector<std::string> points;  // 二维码坐标点};
struct QRcodeInfo { std::string code_url; // 二维码的内容。可能识别不出 CodeLocation code_location; // 图中识别到的二维码位置坐标
};
struct Object { std::string key; // 文件名 std::string location; // 图片路径 std::string format; // 图片格式 int width; // 图片宽度 int height; // 图片高度 int size; // 图片大小 int quality; // 图片质量 std::string etag; // 处理结果图 ETag 信息 int code_status; // 二维码识别结果。0表示未识别到二维码,1表示识别到二维码 int watermark_status; // 当 type // 为2时返回该字段,表示提取到全盲水印的可信度。 // 具体为0-100的数字,75分以上表示确定有盲水印,60-75表示疑似有盲水印,60以下可认为未提取到盲水印 std::vector<QRcodeInfo> qr_code_info; // 二维码识别结果,可能有多个};
struct ProcessResults { std::vector<Object> objects; // 可能有多个对象};
struct ImageInfo { std::string format; // 格式 int width; // 图片宽度 int height; // 图片高度 int quality; // 图片质量 std::string ave; // 图片主色调 int orientation; // 图片旋转角度};
struct UploadResult { OriginalInfo original_info; // 原图信息 ProcessResults process_result; // 图片处理结果};

下载时识别二维码

功能说明

下载图片时识别二维码。

方法原型

CosResult GetQRcode(const GetQRcodeReq& request, GetQRcodeResp* response);

请求示例

qcloud_cos::CosConfig config("./config.json");qcloud_cos::CosAPI cos(config);std::string bucket_name = "examplebucket-1250000000";
GetQRcodeReq req(bucket_name, object_name);GetQRcodeResp resp;
CosResult result = cos.GetQRcode(req, &resp);if (result.IsSucc()) { // 调用成功,调用 resp 的成员函数获取返回内容 std::cout << "ProcessResult: " << resp.GetUploadResult().to_string() << std::endl;} else { // 调用失败,调用 result 的成员函数获取错误信息}

参数说明

参数 参数描述 类型 是否必填
req GetQRcode 操作的请求 GetQRcodeReq
resp GetQRcode 操作的响应 GetQRcodeResp

req涉及到如下结构:

struct PicRules {  std::string bucket;  // 存储结果的目标存储桶名称,格式为 BucketName-APPID,如果不指定的话默认保存到当前存储桶  std::string fileid;  // 处理结果的文件路径名称,如以/开头,则存入指定文件夹中,否则,存入原图文件存储的同目录  std::string rule;  // 处理参数,参见对象存储图片处理API。若按指定样式处理,则以style/开头,后加样式名,如样式名为test,则 rule 字段为style/test};
class PicOperation { public: PicOperation() : is_pic_info(true) {} virtual ~PicOperation() {} void AddRule(const PicRules& rule) { rules.push_back(rule); } void TurnOffPicInfo() { is_pic_info = false; } private: boolis_pic_info; // 是否返回原图信息,0不返回原图信息,1返回原图信息,默认为0 std::vector<PicRules> rules; //处理规则,一条规则对应一个处理结果(目前支持五条规则),不填则不进行图片处理};

resp 涉及到如下结构:

struct CodeLocation {  std::vector<std::string> points;  // 二维码坐标点  }};
struct QRcodeInfo { std::string code_url; // 二维码的内容。可能识别不出 CodeLocation code_location; // 图中识别到的二维码位置坐标};
struct GetQRcodeResult { int code_status; // 二维码识别结果。0表示未识别到二维码,1表示识别到二维码 std::vector<QRcodeInfo> qr_code_info; // 二维码识别结果,可能有多个 std::string result_image; // 处理后的图片 base64数据,请求参数 cover 为1时返回};



对象存储官网1折活动,限时活动,即将结束,速速收藏
同尘科技腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利。同意关联立享优惠

转转请注明出处:https://www.yunxiaoer.com/145494.html

(0)
上一篇 2023年12月9日
下一篇 2023年12月9日
详情页2

相关推荐

  • 腾讯云CVM服务器快速配置 Windows 云服务器

    说明如果您是首次使用云服务器,建议您先选择轻量应用服务器(Lighthouse)来作为云服务器使用的入门途径,详情请参见 快速配置轻量应用服务器 Windows 实例。轻量应用服务器专为云开发者及云计算入门者设计,您可前往 与云服务器 CVM 对比 了解云服务器与轻量应用服务器的区别。本文主要介绍如何从零开始,以最简单的方式搭建一个 Windows 云服务器…

    2023年12月9日
  • 腾讯云对象存储同一个链接访问的文件异常

    现象描述 现象一:访问同一个链接,但访问的文件不相同。现象二:更新文件后,访问的文件还是旧文件。 可能原因 内容分发网络(Content Delivery Network,CDN)缓存没有过期。浏览器没有禁用本地缓存。访问的文件可能被劫持,导致访问的资源内容和预期的内容不一致。 处理步骤 检查 CDN 缓存是否过期 参考 CDN 缓存配置 常见问题文档,判断…

    2023年12月9日
  • 腾讯云容器服务构建测试同尘科技

    此步骤介绍如何推送单个或多个镜像至 TKE 镜像仓库,并通过 TKE 控制台使用该镜像创建 Deployment。 构建配置 1. 登录 Jenkins 后台,单击任务列表中已在 Slave pod 构建配置 步骤所创建的任务 test。如下图所示: 2. 单击左侧菜单栏中的Build with Parameters,打开“工程 test” 面板,进行以…

    2023年12月9日
  • 腾讯云容器镜像服务混合云下的多平台镜像数据同步复制同尘

    操作场景 在用户的开发运维过程中,存在需要同时用到多个容器镜像仓库的场景,这些仓库可能跨主账号、跨地域、跨国、跨平台。用户可以通过手动完成实例间的推送、分发任务,但是会存在运维成本较高、同步不及时、不便于管理等问题。基于该场景,目前 TCR 提供了同步复制功能,以及开源的镜像迁移工具。其中:实例同步功能支持用户基于规则的配置来按需同步实例的镜像,详情请参见 …

    2023年12月9日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 阿里云RDS数据库GrantAccountPrivilege – 授权账号访问数据库-云淘科技

    该接口用于授权数据库账号访问指定的数据库。 接口说明 适用引擎 RDS MySQL RDS PostgreSQL RDS SQL Server RDS MariaDB 相关功能文档 注意 使用该接口前,请仔细阅读功能文档,确保完全了解使用接口的前提条件及使用后造成的影响后,再进行操作。 RDS MySQL修改账号权限 RDS PostgreSQL数据库账号授…

    阿里云数据库 2023年12月9日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。