1// Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved.
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//    http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15package v20190529
16
17import (
18    "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common"
19    tchttp "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http"
20    "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/profile"
21)
22
23const APIVersion = "2019-05-29"
24
25type Client struct {
26    common.Client
27}
28
29// Deprecated
30func NewClientWithSecretId(secretId, secretKey, region string) (client *Client, err error) {
31    cpf := profile.NewClientProfile()
32    client = &Client{}
33    client.Init(region).WithSecretId(secretId, secretKey).WithProfile(cpf)
34    return
35}
36
37func NewClient(credential *common.Credential, region string, clientProfile *profile.ClientProfile) (client *Client, err error) {
38    client = &Client{}
39    client.Init(region).
40        WithCredential(credential).
41        WithProfile(clientProfile)
42    return
43}
44
45
46func NewAssessQualityRequest() (request *AssessQualityRequest) {
47    request = &AssessQualityRequest{
48        BaseRequest: &tchttp.BaseRequest{},
49    }
50    request.Init().WithApiInfo("tiia", APIVersion, "AssessQuality")
51    return
52}
53
54func NewAssessQualityResponse() (response *AssessQualityResponse) {
55    response = &AssessQualityResponse{
56        BaseResponse: &tchttp.BaseResponse{},
57    }
58    return
59}
60
61// 评估输入图片在视觉上的质量,从多个方面评估,并同时给出综合的、客观的清晰度评分,和主观的美观度评分。
62// >
63// - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
64func (c *Client) AssessQuality(request *AssessQualityRequest) (response *AssessQualityResponse, err error) {
65    if request == nil {
66        request = NewAssessQualityRequest()
67    }
68    response = NewAssessQualityResponse()
69    err = c.Send(request, response)
70    return
71}
72
73func NewCropImageRequest() (request *CropImageRequest) {
74    request = &CropImageRequest{
75        BaseRequest: &tchttp.BaseRequest{},
76    }
77    request.Init().WithApiInfo("tiia", APIVersion, "CropImage")
78    return
79}
80
81func NewCropImageResponse() (response *CropImageResponse) {
82    response = &CropImageResponse{
83        BaseResponse: &tchttp.BaseResponse{},
84    }
85    return
86}
87
88// 根据输入的裁剪比例,智能判断一张图片的最佳裁剪区域,确保原图的主体区域不受影响。
89//
90// 可以自动裁剪图片,适应不同平台、设备的展示要求,避免简单拉伸带来的变形。
91// >
92// - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
93func (c *Client) CropImage(request *CropImageRequest) (response *CropImageResponse, err error) {
94    if request == nil {
95        request = NewCropImageRequest()
96    }
97    response = NewCropImageResponse()
98    err = c.Send(request, response)
99    return
100}
101
102func NewDetectCelebrityRequest() (request *DetectCelebrityRequest) {
103    request = &DetectCelebrityRequest{
104        BaseRequest: &tchttp.BaseRequest{},
105    }
106    request.Init().WithApiInfo("tiia", APIVersion, "DetectCelebrity")
107    return
108}
109
110func NewDetectCelebrityResponse() (response *DetectCelebrityResponse) {
111    response = &DetectCelebrityResponse{
112        BaseResponse: &tchttp.BaseResponse{},
113    }
114    return
115}
116
117// 传入一张图片,可以识别图片中包含的人物是否为公众人物,如果是,输出人物的姓名、基本信息、脸部坐标。
118//
119// 支持识别一张图片中存在的多个人脸,针对每个人脸,会给出与之最相似的公众人物。
120// >
121// - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
122func (c *Client) DetectCelebrity(request *DetectCelebrityRequest) (response *DetectCelebrityResponse, err error) {
123    if request == nil {
124        request = NewDetectCelebrityRequest()
125    }
126    response = NewDetectCelebrityResponse()
127    err = c.Send(request, response)
128    return
129}
130
131func NewDetectDisgustRequest() (request *DetectDisgustRequest) {
132    request = &DetectDisgustRequest{
133        BaseRequest: &tchttp.BaseRequest{},
134    }
135    request.Init().WithApiInfo("tiia", APIVersion, "DetectDisgust")
136    return
137}
138
139func NewDetectDisgustResponse() (response *DetectDisgustResponse) {
140    response = &DetectDisgustResponse{
141        BaseResponse: &tchttp.BaseResponse{},
142    }
143    return
144}
145
146// 输入一张图片,返回AI针对一张图片是否是恶心的一系列判断值。
147//
148// 通过恶心图片识别, 可以判断一张图片是否令人恶心, 同时给出它属于的潜在类别, 让您能够过滤掉使人不愉快的图片。
149// >
150// - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
151func (c *Client) DetectDisgust(request *DetectDisgustRequest) (response *DetectDisgustResponse, err error) {
152    if request == nil {
153        request = NewDetectDisgustRequest()
154    }
155    response = NewDetectDisgustResponse()
156    err = c.Send(request, response)
157    return
158}
159
160func NewDetectLabelRequest() (request *DetectLabelRequest) {
161    request = &DetectLabelRequest{
162        BaseRequest: &tchttp.BaseRequest{},
163    }
164    request.Init().WithApiInfo("tiia", APIVersion, "DetectLabel")
165    return
166}
167
168func NewDetectLabelResponse() (response *DetectLabelResponse) {
169    response = &DetectLabelResponse{
170        BaseResponse: &tchttp.BaseResponse{},
171    }
172    return
173}
174
175// 图像标签利用深度学习技术、海量训练数据,可以对图片进行智能分类、物体识别等。
176//
177// 目前支持8个大类、六十多个子类、数千个标签。涵盖各种日常场景、动植物、物品、美食、卡证等。具体分类请见[图像分析常见问题功能与限制相关](https://cloud.tencent.com/document/product/865/39164)
178//
179// 图像标签提供四个版本供选择:
180//
181// • 摄像头版:针对搜索、手机摄像头照片进行优化,涵盖大量卡证、日常物品、二维码条形码。
182//
183// • 相册版:针对手机相册、网盘进行优化,去除相册和网盘中不常见的标签,针对相册常见图片类型(人像、日常活动、日常物品等)识别效果更好。
184//
185// • 网络版:针对网络图片进行优化,涵盖标签更多,满足长尾识别需求。
186//
187// • 新闻版:针对新闻、资讯、广电等行业进行优化,增加定制识别,支持万级图像标签。
188//
189// 每个产品的图像类型都有独特性,建议在接入初期,对四个版本进行对比评估后选择合适的版本使用。
190//
191// 为了方便使用、减少图片传输次数,图像标签包装成多合一接口,实际上是多个服务。
192//
193// 图像标签按照服务的实际使用数量进行收费。例如一张图片同时调用相册版、摄像头版两个服务,那么此次调用按照两次计费。
194// >
195// - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
196func (c *Client) DetectLabel(request *DetectLabelRequest) (response *DetectLabelResponse, err error) {
197    if request == nil {
198        request = NewDetectLabelRequest()
199    }
200    response = NewDetectLabelResponse()
201    err = c.Send(request, response)
202    return
203}
204
205func NewDetectMisbehaviorRequest() (request *DetectMisbehaviorRequest) {
206    request = &DetectMisbehaviorRequest{
207        BaseRequest: &tchttp.BaseRequest{},
208    }
209    request.Init().WithApiInfo("tiia", APIVersion, "DetectMisbehavior")
210    return
211}
212
213func NewDetectMisbehaviorResponse() (response *DetectMisbehaviorResponse) {
214    response = &DetectMisbehaviorResponse{
215        BaseResponse: &tchttp.BaseResponse{},
216    }
217    return
218}
219
220// 可以识别输入的图片中是否包含不良行为,例如打架斗殴、赌博、抽烟等,可以应用于广告图、直播截图、短视频截图等审核,减少不良行为对平台内容质量的影响,维护健康向上的互联网环境。
221// >
222// - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
223func (c *Client) DetectMisbehavior(request *DetectMisbehaviorRequest) (response *DetectMisbehaviorResponse, err error) {
224    if request == nil {
225        request = NewDetectMisbehaviorRequest()
226    }
227    response = NewDetectMisbehaviorResponse()
228    err = c.Send(request, response)
229    return
230}
231
232func NewDetectProductRequest() (request *DetectProductRequest) {
233    request = &DetectProductRequest{
234        BaseRequest: &tchttp.BaseRequest{},
235    }
236    request.Init().WithApiInfo("tiia", APIVersion, "DetectProduct")
237    return
238}
239
240func NewDetectProductResponse() (response *DetectProductResponse) {
241    response = &DetectProductResponse{
242        BaseResponse: &tchttp.BaseResponse{},
243    }
244    return
245}
246
247// 本接口支持识别图片中包含的商品,能够输出商品的品类名称、类别,还可以输出商品在图片中的位置。支持一张图片多个商品的识别。
248// >
249// - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
250func (c *Client) DetectProduct(request *DetectProductRequest) (response *DetectProductResponse, err error) {
251    if request == nil {
252        request = NewDetectProductRequest()
253    }
254    response = NewDetectProductResponse()
255    err = c.Send(request, response)
256    return
257}
258
259func NewDetectProductBetaRequest() (request *DetectProductBetaRequest) {
260    request = &DetectProductBetaRequest{
261        BaseRequest: &tchttp.BaseRequest{},
262    }
263    request.Init().WithApiInfo("tiia", APIVersion, "DetectProductBeta")
264    return
265}
266
267func NewDetectProductBetaResponse() (response *DetectProductBetaResponse) {
268    response = &DetectProductBetaResponse{
269        BaseResponse: &tchttp.BaseResponse{},
270    }
271    return
272}
273
274// 商品识别-微信识物版,基于人工智能技术、海量训练图片、亿级商品库,可以实现全覆盖、细粒度、高准确率的商品识别和商品推荐功能。
275// 本服务可以识别出图片中的主体位置、主体商品类型,覆盖亿级SKU,输出具体商品的价格、型号等详细信息。
276// 客户无需自建商品库,即可快速实现商品识别、拍照搜商品等功能。
277//
278// 目前“商品识别-微信识物版”为内测服务,需要申请、开通后方可使用。请在[服务开通申请表](https://cloud.tencent.com/apply/p/y1q2mnf0vdl) 中填写详细信息和需求,如果通过审核,我们将会在2个工作日内与您联系,并开通服务。
279// 内测期间,本服务免费提供最高2QPS,收费模式和标准会在正式版上线前通过站内信、短信通知客户。如果需要提升并发,请与我们联系洽谈。
280//
281// 注意:本文档为内测版本,仅适用于功能体验和测试,正式业务接入请等待正式版。正式版的输入、输出可能会与内测版存在少量差异。
282// >
283// - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
284func (c *Client) DetectProductBeta(request *DetectProductBetaRequest) (response *DetectProductBetaResponse, err error) {
285    if request == nil {
286        request = NewDetectProductBetaRequest()
287    }
288    response = NewDetectProductBetaResponse()
289    err = c.Send(request, response)
290    return
291}
292
293func NewEnhanceImageRequest() (request *EnhanceImageRequest) {
294    request = &EnhanceImageRequest{
295        BaseRequest: &tchttp.BaseRequest{},
296    }
297    request.Init().WithApiInfo("tiia", APIVersion, "EnhanceImage")
298    return
299}
300
301func NewEnhanceImageResponse() (response *EnhanceImageResponse) {
302    response = &EnhanceImageResponse{
303        BaseResponse: &tchttp.BaseResponse{},
304    }
305    return
306}
307
308// 传入一张图片,输出清晰度提升后的图片。
309//
310// 可以消除图片有损压缩导致的噪声,和使用滤镜、拍摄失焦导致的模糊。让图片的边缘和细节更加清晰自然。
311// >
312// - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
313func (c *Client) EnhanceImage(request *EnhanceImageRequest) (response *EnhanceImageResponse, err error) {
314    if request == nil {
315        request = NewEnhanceImageRequest()
316    }
317    response = NewEnhanceImageResponse()
318    err = c.Send(request, response)
319    return
320}
321
322func NewRecognizeCarRequest() (request *RecognizeCarRequest) {
323    request = &RecognizeCarRequest{
324        BaseRequest: &tchttp.BaseRequest{},
325    }
326    request.Init().WithApiInfo("tiia", APIVersion, "RecognizeCar")
327    return
328}
329
330func NewRecognizeCarResponse() (response *RecognizeCarResponse) {
331    response = &RecognizeCarResponse{
332        BaseResponse: &tchttp.BaseResponse{},
333    }
334    return
335}
336
337// 腾讯云车辆属性识别可对汽车车身及车辆属性进行检测与识别,目前支持11种车身颜色、20多种车型、300多种品牌、4000多种车系+年款的识别,同时支持对车辆的位置进行检测。如果图片中存在多辆车,会分别输出每辆车的车型和坐标。
338// >
339// - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
340func (c *Client) RecognizeCar(request *RecognizeCarRequest) (response *RecognizeCarResponse, err error) {
341    if request == nil {
342        request = NewRecognizeCarRequest()
343    }
344    response = NewRecognizeCarResponse()
345    err = c.Send(request, response)
346    return
347}
348