图像超分

最近更新时间:2023-11-06 17:01:39

我的收藏

简介

本文档提供关于数据万象图像超分的 API 概览以及 SDK 示例代码。
注意:
COS 小程序 SDK 版本需要大于等于 v1.1.1。
待处理的图片,原图大小不超过 5MB,分辨率不得超过 1920px * 1080px。
API
说明
腾讯云数据万象通过 AISuperResolution 接口对图像进行超分辨率处理,当前默认超分为宽高的 2 倍。

上传时处理

下面示例展示了如何在上传图片时自动实现图像超分。 图片上传完成后,COS 会存储原始图片和已处理过的图片。后续用户可以通过普通的下载请求获取处理结果。

示例代码

<view>
<button type="primary" bindtap="button">上传</button>
</view>
Page({
button: function () {
wx.chooseMessageFile({
count: 10,
type: 'all',
success: function (res) {
var file = res.tempFiles[0];
wxfs.readFile({
filePath: file.path,
success: function (res) {
// sdk的引入及初始化cos请参考 https://cloud.tencent.com/document/product/436/31953
cos.putObject(
{
Bucket: 'examplebucket-1250000000', // Bucket 格式:test-1250000000,必填
Region: 'COS_REGION', // Bucket所在地域,比如ap-beijing,必填
Key: file.name, // 存储在桶里的对象键(例如1.jpg,a/b/test.txt),必填
Body: res.data, // 上传文件对象,必填
Headers: {
// 通过 AISuperResolution 接口使用图像超分功能
'Pic-Operations': JSON.stringify({
is_pic_info: 1,
rules: [{ fileid: 'test.jpg', rule: 'ci-process=AISuperResolution' }]
}),
},
},
(err, data) => {
if (err) {
// 处理请求失败
console.log(err);
} else {
// 处理请求成功
console.log(data);
}
},
);
},
fail: (err) => console.error(err),
});
},
fail: (err) => console.error(err),
});
},
});

参数说明

参数名称
描述
类型
是否必选
Bucket
存储桶的名称,命名格式为 BucketName-APPID,此处填写的存储桶名称必须为此格式
String
Region
存储桶所在地域,枚举值请参见 地域和访问域名
String
Key
对象文件名,例如:folder/document.jpg
String
Body
文件内容,一般传入选择的文件file对象
File/Blob
Pic-Operations
只需填写 fileid,代表处理后的图片路径,如'test.jpg'。rule固定为ci-process=AISuperResolution
JsonString

回调函数说明

function(err, data) { ... }
参数名称
参数描述
类型
err
请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功则为空,更多详情请参见 错误码
Object
- statusCode
请求返回的 HTTP 状态码,例如200、403、404等
Number
- headers
请求返回的头部信息
Object
data
请求成功时返回的对象,如果请求发生错误,则为空
Object
- statusCode
请求返回的 HTTP 状态码,例如200、403、404等
Number
- headers
请求返回的头部信息
Object
- Response
响应结果 详情请参见 图片超分
Object

对云上数据进行图像超分

下面示例展示了如何对已存储在 COS 的图片进行图像超分操作,并将结果存入到 COS。

示例代码

<view>
<button type="primary" bindtap="button">对云上数据处理</button>
</view>
Page({
button: function () {
// sdk的引入及初始化cos请参考 https://cloud.tencent.com/document/product/436/31953
cos.request(
{
Bucket: 'examplebucket-1250000000', // Bucket 格式:test-1250000000,必填
Region: 'COS_REGION', // Bucket所在地域,比如ap-beijing,必填
Key: '1.png', // 存储在桶里的对象键(例如1.jpg,a/b/test.txt),必填
Method: 'POST', // 固定值
Action: 'image_process', // 固定值
Headers: {
// 通过 AISuperResolution 接口使用图像超分功能
'Pic-Operations': JSON.stringify({
is_pic_info: 1,
rules: [{ fileid: 'test.jpg', rule: 'ci-process=AISuperResolution' }]
}),
},
},
(err, data) => {
if (err) {
// 处理请求失败
console.log(err);
} else {
// 处理请求成功
console.log(data);
}
},
);
},
});

参数说明

参数名称
描述
类型
是否必选
Bucket
存储桶的名称,命名格式为 BucketName-APPID,此处填写的存储桶名称必须为此格式
String
Region
存储桶所在地域,枚举值请参见 地域和访问域名
String
Key
对象文件名,例如:folder/document.jpg
String
Method
固定值:POST
String
Action
固定值:image_process
String
Pic-Operations
只需填写 fileid,代表处理后的图片路径,如'test.jpg'。rule固定为ci-process=AISuperResolution
JsonString

回调函数说明

function(err, data) { ... }
参数名称
参数描述
类型
err
请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功则为空,更多详情请参见 错误码
Object
- statusCode
请求返回的 HTTP 状态码,例如200、403、404等
Number
- headers
请求返回的头部信息
Object
data
请求成功时返回的对象,如果请求发生错误,则为空
Object
- statusCode
请求返回的 HTTP 状态码,例如200、403、404等
Number
- headers
请求返回的头部信息
Object
- Response
响应结果 详情请参见 图片超分
Object

下载时使用图像超分

下面示例展示了如何下载图片时实现图像超分。

示例代码

<<view>
<button type="primary" bindtap="button">下载时处理</button>
</view>
Page({
button: function () {
// sdk的引入及初始化cos请参考 https://cloud.tencent.com/document/product/436/31953
cos.getObject(
{
Bucket: 'examplebucket-1250000000', // Bucket 格式:test-1250000000,必填
Region: 'COS_REGION', // Bucket所在地域,比如ap-beijing,必填
Key: '1.png', // 存储在桶里的对象键(例如1.jpg,a/b/test.txt),必填
Query: {
'ci-process': 'AISuperResolution', // 固定值
// 'detect-url': '', // 待处理图片url,与Key二选一传递
},
},
(err, data) => {
if (err) {
// 处理请求失败
console.log(err);
} else {
// 处理请求成功
console.log(data);
}
},
);
},
});

参数说明

cos.request 方法参数说明:
参数名称
描述
类型
是否必选
Bucket
存储桶的名称,命名格式为 BucketName-APPID,此处填写的存储桶名称必须为此格式
String
Region
存储桶所在地域,枚举值请参见 地域和访问域名
String
Method
固定值:GET
String
Key
对象文件名,例如:folder/document.jpg。
String
Query
其他请求参数
Container
Query 参数说明:
参数名称
描述
类型
是否必选
ci-process
数据万象处理能力,图像超分固定为 AISuperResolution。
String
detect-url
处理任意公网可访问的图片链接。不填写 detect-url 时,后台会默认处理 Key ,填写了 detect-url 时,后台会处理 detect-url 链接。 detect-url 示例:http://www.example.com/abc.jpg ,需要进行 UrlEncode,处理后为 http%25253A%25252F%25252Fwww.example.com%25252Fabc.jpg
String

回调函数说明

function(err, data) { ... }
参数名称
参数描述
类型
err
请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功则为空,更多详情请参见 错误码
Object
- statusCode
请求返回的 HTTP 状态码,例如200、403、404等
Number
- headers
请求返回的头部信息
Object
data
请求成功时返回的对象,如果请求发生错误,则为空
Object
- statusCode
请求返回的 HTTP 状态码,例如200、403、404等
Number
- headers
请求返回的头部信息
Object
- Response
响应结果 详情请参见 图像超分
Object

相关链接