/
client.rb
730 lines (645 loc) · 37.5 KB
/
client.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
# frozen_string_literal: true
# Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
require 'json'
module TencentCloud
module Tiia
module V20190529
class Client < TencentCloud::Common::AbstractClient
def initialize(credential, region, profile = nil)
api_version = '2019-05-29'
api_endpoint = 'tiia.tencentcloudapi.com'
sdk_version = 'TIIA_' + File.read(File.expand_path('../VERSION', __dir__)).strip
super(credential, region, api_version, api_endpoint, sdk_version, profile)
end
# 评估输入图片在视觉上的质量,从多个方面评估,并同时给出综合的、客观的清晰度评分,和主观的美观度评分。
# >
# - 可前往 [图像处理](https://cloud.tencent.com/document/product/1590) 产品文档中查看更多产品信息。
# - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
# @param request: Request instance for AssessQuality.
# @type request: :class:`Tencentcloud::tiia::V20190529::AssessQualityRequest`
# @rtype: :class:`Tencentcloud::tiia::V20190529::AssessQualityResponse`
def AssessQuality(request)
body = send_request('AssessQuality', request.serialize)
response = JSON.parse(body)
if response['Response'].key?('Error') == false
model = AssessQualityResponse.new
model.deserialize(response['Response'])
model
else
code = response['Response']['Error']['Code']
message = response['Response']['Error']['Message']
reqid = response['Response']['RequestId']
raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
end
rescue TencentCloud::Common::TencentCloudSDKException => e
raise e
rescue StandardError => e
raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
end
# 本接口用于创建一个空的图片库,图片库主要用于存储在创建图片时提取的图片特征数据,如果图片库已存在则返回错误。不同的图片库类型对应不同的图像搜索服务类型,根据输入参数GroupType区分。
# <table>
# <th>服务类型</th><th>GroupType</th><th>功能描述</th>
# <tr>
# <td>通用图像搜索</td>
# <td>4</td>
# <td>通用图像搜索1.0版。<br>在自建图片库中搜索相同原图或相似图片集,并给出相似度打分,可支持裁剪、翻转、调色、加水印等二次编辑后的图片搜索。适用于图片版权保护、原图查询等场景。</td>
# </tr>
# <tr>
# <td rowspan="3">商品图像搜索</td>
# <td>8</td>
# <td>商品图像搜索3.0升级版(推荐)。<br>
# 在自建图库中搜索同款或相似商品,并给出相似度打分。对于服饰类商品可支持识别服饰类别、属性等信息。适用于商品分类、检索、推荐等电商场景。</td>
# </tr>
# <tr>
# <td>7</td>
# <td>商品图像搜索2.0版。<br>
# 功能和3.0升级版类似。</td>
# </tr>
# <tr>
# <td>5</td>
# <td>商品图像搜索1.0版。<br>
# 功能和3.0升级版类似。</td>
# </tr>
# <tr>
# <td>图案花纹搜索</td><td>6</td><td>图案花纹搜索1.0版。<br>
# 在自建图库中搜索相似的图案、logo、纹理等图像元素或主体,并给出相似度打分。</td>
# </tr>
# </table>
# - 可前往 [图像搜索](https://cloud.tencent.com/document/product/1589) 产品文档中查看更多产品信息。
# @param request: Request instance for CreateGroup.
# @type request: :class:`Tencentcloud::tiia::V20190529::CreateGroupRequest`
# @rtype: :class:`Tencentcloud::tiia::V20190529::CreateGroupResponse`
def CreateGroup(request)
body = send_request('CreateGroup', request.serialize)
response = JSON.parse(body)
if response['Response'].key?('Error') == false
model = CreateGroupResponse.new
model.deserialize(response['Response'])
model
else
code = response['Response']['Error']['Code']
message = response['Response']['Error']['Message']
reqid = response['Response']['RequestId']
raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
end
rescue TencentCloud::Common::TencentCloudSDKException => e
raise e
rescue StandardError => e
raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
end
# 创建图片,并添加对应图片的自定义信息。模型将在创建图片时自动提取图像特征并存储到指定的图片库中,每创建一张图片会对应提取和存储一条图片特征数据。
# >
# - 可前往 [图像搜索](https://cloud.tencent.com/document/product/1589) 产品文档中查看更多产品信息。
# @param request: Request instance for CreateImage.
# @type request: :class:`Tencentcloud::tiia::V20190529::CreateImageRequest`
# @rtype: :class:`Tencentcloud::tiia::V20190529::CreateImageResponse`
def CreateImage(request)
body = send_request('CreateImage', request.serialize)
response = JSON.parse(body)
if response['Response'].key?('Error') == false
model = CreateImageResponse.new
model.deserialize(response['Response'])
model
else
code = response['Response']['Error']['Code']
message = response['Response']['Error']['Message']
reqid = response['Response']['RequestId']
raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
end
rescue TencentCloud::Common::TencentCloudSDKException => e
raise e
rescue StandardError => e
raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
end
# 根据输入的裁剪比例,智能判断一张图片的最佳裁剪区域,确保原图的主体区域不受影响,以适应不同平台、设备的展示要求,避免简单拉伸带来的变形。
# >
# - 可前往 [图像处理](https://cloud.tencent.com/document/product/1590) 产品文档中查看更多产品信息。
# - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
# @param request: Request instance for CropImage.
# @type request: :class:`Tencentcloud::tiia::V20190529::CropImageRequest`
# @rtype: :class:`Tencentcloud::tiia::V20190529::CropImageResponse`
def CropImage(request)
body = send_request('CropImage', request.serialize)
response = JSON.parse(body)
if response['Response'].key?('Error') == false
model = CropImageResponse.new
model.deserialize(response['Response'])
model
else
code = response['Response']['Error']['Code']
message = response['Response']['Error']['Message']
reqid = response['Response']['RequestId']
raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
end
rescue TencentCloud::Common::TencentCloudSDKException => e
raise e
rescue StandardError => e
raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
end
# 删除图片。
# >
# - 可前往 [图像搜索](https://cloud.tencent.com/document/product/1589) 产品文档中查看更多产品信息。
# @param request: Request instance for DeleteImages.
# @type request: :class:`Tencentcloud::tiia::V20190529::DeleteImagesRequest`
# @rtype: :class:`Tencentcloud::tiia::V20190529::DeleteImagesResponse`
def DeleteImages(request)
body = send_request('DeleteImages', request.serialize)
response = JSON.parse(body)
if response['Response'].key?('Error') == false
model = DeleteImagesResponse.new
model.deserialize(response['Response'])
model
else
code = response['Response']['Error']['Code']
message = response['Response']['Error']['Message']
reqid = response['Response']['RequestId']
raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
end
rescue TencentCloud::Common::TencentCloudSDKException => e
raise e
rescue StandardError => e
raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
end
# 查询所有的图库信息。
# >
# - 可前往 [图像搜索](https://cloud.tencent.com/document/product/1589) 产品文档中查看更多产品信息。
# @param request: Request instance for DescribeGroups.
# @type request: :class:`Tencentcloud::tiia::V20190529::DescribeGroupsRequest`
# @rtype: :class:`Tencentcloud::tiia::V20190529::DescribeGroupsResponse`
def DescribeGroups(request)
body = send_request('DescribeGroups', request.serialize)
response = JSON.parse(body)
if response['Response'].key?('Error') == false
model = DescribeGroupsResponse.new
model.deserialize(response['Response'])
model
else
code = response['Response']['Error']['Code']
message = response['Response']['Error']['Message']
reqid = response['Response']['RequestId']
raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
end
rescue TencentCloud::Common::TencentCloudSDKException => e
raise e
rescue StandardError => e
raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
end
# 获取指定图片库中的图片列表。
# >
# - 可前往 [图像搜索](https://cloud.tencent.com/document/product/1589) 产品文档中查看更多产品信息。
# @param request: Request instance for DescribeImages.
# @type request: :class:`Tencentcloud::tiia::V20190529::DescribeImagesRequest`
# @rtype: :class:`Tencentcloud::tiia::V20190529::DescribeImagesResponse`
def DescribeImages(request)
body = send_request('DescribeImages', request.serialize)
response = JSON.parse(body)
if response['Response'].key?('Error') == false
model = DescribeImagesResponse.new
model.deserialize(response['Response'])
model
else
code = response['Response']['Error']['Code']
message = response['Response']['Error']['Message']
reqid = response['Response']['RequestId']
raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
end
rescue TencentCloud::Common::TencentCloudSDKException => e
raise e
rescue StandardError => e
raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
end
# 可对图片中厨师穿戴进行识别,支持厨师服识别,厨师帽识别,赤膊识别和口罩识别,可应用于明厨亮灶场景。
# "被优选过滤"标签值在人体优选开关开启时才会返回。
# 厨师服:厨师服定义为白色上衣
# 厨师服识别(酒店版):厨师服定义为红色,白色,黑色上衣
# |序号 | 标签名称 | 标签值 |
# | :-----| :---------- |:----------------- |
# | 1 | 厨师服识别<div style="width: 70pt"> |无厨师服、有厨师服、被优选过滤|
# | 2 | 厨师服识别(酒店版)<div style="width: 70pt"> |无厨师服、有厨师服、被优选过滤|
# | 3 | 厨师帽识别<div style="width: 70pt"> |无厨师帽、有厨师帽、被优选过滤 |
# | 4 | 赤膊识别<div style="width: 70pt"> |非赤膊、赤膊、被优选过滤|
# | 5 | 口罩识别<div style="width: 70pt"> |无口罩、有口罩、口罩不确定、被优选过滤 |
# @param request: Request instance for DetectChefDress.
# @type request: :class:`Tencentcloud::tiia::V20190529::DetectChefDressRequest`
# @rtype: :class:`Tencentcloud::tiia::V20190529::DetectChefDressResponse`
def DetectChefDress(request)
body = send_request('DetectChefDress', request.serialize)
response = JSON.parse(body)
if response['Response'].key?('Error') == false
model = DetectChefDressResponse.new
model.deserialize(response['Response'])
model
else
code = response['Response']['Error']['Code']
message = response['Response']['Error']['Message']
reqid = response['Response']['RequestId']
raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
end
rescue TencentCloud::Common::TencentCloudSDKException => e
raise e
rescue StandardError => e
raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
end
# 输入一张图片,返回AI针对一张图片是否是恶心的一系列判断值。
# 通过恶心图片识别, 可以判断一张图片是否令人恶心, 同时给出它属于的潜在类别, 让您能够过滤掉使人不愉快的图片。
# >
# - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
# @param request: Request instance for DetectDisgust.
# @type request: :class:`Tencentcloud::tiia::V20190529::DetectDisgustRequest`
# @rtype: :class:`Tencentcloud::tiia::V20190529::DetectDisgustResponse`
def DetectDisgust(request)
body = send_request('DetectDisgust', request.serialize)
response = JSON.parse(body)
if response['Response'].key?('Error') == false
model = DetectDisgustResponse.new
model.deserialize(response['Response'])
model
else
code = response['Response']['Error']['Code']
message = response['Response']['Error']['Message']
reqid = response['Response']['RequestId']
raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
end
rescue TencentCloud::Common::TencentCloudSDKException => e
raise e
rescue StandardError => e
raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
end
# 文件封识别可检测图片中是否包含符合文件封(即文件、单据、资料等的袋状包装)特征的物品,覆盖顺丰快递文件封、文件袋、档案袋等多种文件封类型,可应用于物流行业对文件快递的包装审核等场景。
# >?
# - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
# @param request: Request instance for DetectEnvelope.
# @type request: :class:`Tencentcloud::tiia::V20190529::DetectEnvelopeRequest`
# @rtype: :class:`Tencentcloud::tiia::V20190529::DetectEnvelopeResponse`
def DetectEnvelope(request)
body = send_request('DetectEnvelope', request.serialize)
response = JSON.parse(body)
if response['Response'].key?('Error') == false
model = DetectEnvelopeResponse.new
model.deserialize(response['Response'])
model
else
code = response['Response']['Error']['Code']
message = response['Response']['Error']['Message']
reqid = response['Response']['RequestId']
raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
end
rescue TencentCloud::Common::TencentCloudSDKException => e
raise e
rescue StandardError => e
raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
end
# 图像标签利用深度学习技术,可以对图片进行智能分类、物体识别等。
# 目前支持八个大类、六十多个子类、数千个标签,涵盖各种日常场景、动植物、物品、美食等。
# 图像标签提供四个版本供选择:
# • 摄像头版:针对搜索、手机摄像头照片进行优化,涵盖大量卡证、日常物品、二维码条形码。
# • 相册版:针对手机相册、网盘进行优化,去除相册和网盘中不常见的标签,针对相册常见图片类型(人像、日常活动、日常物品等)识别效果更好。
# • 网络版:针对网络图片进行优化,涵盖标签更多,满足长尾识别需求。
# • 新闻版:针对新闻、资讯、广电等行业进行优化,增加定制识别,支持万级图像标签。
# 为了方便使用、减少图片传输次数,图像标签将不同版本包装成多合一接口,实际上是多个服务,分别计费。建议在接入初期,对四个版本进行对比评估后选择合适的版本使用。
# >?
# - 图像标签已升级服务,建议使用新版接口[通用图像标签](https://cloud.tencent.com/document/product/865/75196)。
# - 图像标签摄像头版、相册版、网络版、新闻版分别按照各自的实际使用次数进行收费,例如一张图片同时使用相册版、摄像头版,则按照两次调用计费。建议测试对比后从中选择一个最合适的版本使用即可。
# >
# - 可前往 [图像标签](https://cloud.tencent.com/document/product/1588) 产品文档中查看更多产品信息。
# - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
# @param request: Request instance for DetectLabel.
# @type request: :class:`Tencentcloud::tiia::V20190529::DetectLabelRequest`
# @rtype: :class:`Tencentcloud::tiia::V20190529::DetectLabelResponse`
def DetectLabel(request)
body = send_request('DetectLabel', request.serialize)
response = JSON.parse(body)
if response['Response'].key?('Error') == false
model = DetectLabelResponse.new
model.deserialize(response['Response'])
model
else
code = response['Response']['Error']['Code']
message = response['Response']['Error']['Message']
reqid = response['Response']['RequestId']
raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
end
rescue TencentCloud::Common::TencentCloudSDKException => e
raise e
rescue StandardError => e
raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
end
# 图像标签测试接口
# >
# - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
# @param request: Request instance for DetectLabelBeta.
# @type request: :class:`Tencentcloud::tiia::V20190529::DetectLabelBetaRequest`
# @rtype: :class:`Tencentcloud::tiia::V20190529::DetectLabelBetaResponse`
def DetectLabelBeta(request)
body = send_request('DetectLabelBeta', request.serialize)
response = JSON.parse(body)
if response['Response'].key?('Error') == false
model = DetectLabelBetaResponse.new
model.deserialize(response['Response'])
model
else
code = response['Response']['Error']['Code']
message = response['Response']['Error']['Message']
reqid = response['Response']['RequestId']
raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
end
rescue TencentCloud::Common::TencentCloudSDKException => e
raise e
rescue StandardError => e
raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
end
# 通用图像标签可识别数千种常见物体或场景,覆盖日常物品、场景、动物、植物、食物、饮品、交通工具等多个大类,返回主体的标签名称和所属细分类目等。
# >
# - 可前往 [图像标签](https://cloud.tencent.com/document/product/1588) 产品文档中查看更多产品信息。
# - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
# @param request: Request instance for DetectLabelPro.
# @type request: :class:`Tencentcloud::tiia::V20190529::DetectLabelProRequest`
# @rtype: :class:`Tencentcloud::tiia::V20190529::DetectLabelProResponse`
def DetectLabelPro(request)
body = send_request('DetectLabelPro', request.serialize)
response = JSON.parse(body)
if response['Response'].key?('Error') == false
model = DetectLabelProResponse.new
model.deserialize(response['Response'])
model
else
code = response['Response']['Error']['Code']
message = response['Response']['Error']['Message']
reqid = response['Response']['RequestId']
raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
end
rescue TencentCloud::Common::TencentCloudSDKException => e
raise e
rescue StandardError => e
raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
end
# 可以识别输入的图片中是否包含不良行为,例如打架斗殴、赌博、抽烟等,可以应用于广告图、直播截图、短视频截图等审核,减少不良行为对平台内容质量的影响,维护健康向上的互联网环境。
# >
# - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
# @param request: Request instance for DetectMisbehavior.
# @type request: :class:`Tencentcloud::tiia::V20190529::DetectMisbehaviorRequest`
# @rtype: :class:`Tencentcloud::tiia::V20190529::DetectMisbehaviorResponse`
def DetectMisbehavior(request)
body = send_request('DetectMisbehavior', request.serialize)
response = JSON.parse(body)
if response['Response'].key?('Error') == false
model = DetectMisbehaviorResponse.new
model.deserialize(response['Response'])
model
else
code = response['Response']['Error']['Code']
message = response['Response']['Error']['Message']
reqid = response['Response']['RequestId']
raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
end
rescue TencentCloud::Common::TencentCloudSDKException => e
raise e
rescue StandardError => e
raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
end
# 传入一张图片,识别出图片中是否存在宠物
# >
# - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
# @param request: Request instance for DetectPet.
# @type request: :class:`Tencentcloud::tiia::V20190529::DetectPetRequest`
# @rtype: :class:`Tencentcloud::tiia::V20190529::DetectPetResponse`
def DetectPet(request)
body = send_request('DetectPet', request.serialize)
response = JSON.parse(body)
if response['Response'].key?('Error') == false
model = DetectPetResponse.new
model.deserialize(response['Response'])
model
else
code = response['Response']['Error']['Code']
message = response['Response']['Error']['Message']
reqid = response['Response']['RequestId']
raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
end
rescue TencentCloud::Common::TencentCloudSDKException => e
raise e
rescue StandardError => e
raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
end
# 本接口支持识别图片中包含的商品,能够输出商品的品类名称、类别,还可以输出商品在图片中的位置。支持一张图片多个商品的识别。
# >?
# - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
# @param request: Request instance for DetectProduct.
# @type request: :class:`Tencentcloud::tiia::V20190529::DetectProductRequest`
# @rtype: :class:`Tencentcloud::tiia::V20190529::DetectProductResponse`
def DetectProduct(request)
body = send_request('DetectProduct', request.serialize)
response = JSON.parse(body)
if response['Response'].key?('Error') == false
model = DetectProductResponse.new
model.deserialize(response['Response'])
model
else
code = response['Response']['Error']['Code']
message = response['Response']['Error']['Message']
reqid = response['Response']['RequestId']
raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
end
rescue TencentCloud::Common::TencentCloudSDKException => e
raise e
rescue StandardError => e
raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
end
# 商品识别-微信识物版,基于人工智能技术、海量训练图片、亿级商品库,可以实现全覆盖、细粒度、高准确率的商品识别和商品推荐功能。
# 本服务可以识别出图片中的主体位置、主体商品类型,覆盖亿级SKU,输出具体商品的价格、型号等详细信息。
# 客户无需自建商品库,即可快速实现商品识别、拍照搜商品等功能。
# >?
# - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
# @param request: Request instance for DetectProductBeta.
# @type request: :class:`Tencentcloud::tiia::V20190529::DetectProductBetaRequest`
# @rtype: :class:`Tencentcloud::tiia::V20190529::DetectProductBetaResponse`
def DetectProductBeta(request)
body = send_request('DetectProductBeta', request.serialize)
response = JSON.parse(body)
if response['Response'].key?('Error') == false
model = DetectProductBetaResponse.new
model.deserialize(response['Response'])
model
else
code = response['Response']['Error']['Code']
message = response['Response']['Error']['Message']
reqid = response['Response']['RequestId']
raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
end
rescue TencentCloud::Common::TencentCloudSDKException => e
raise e
rescue StandardError => e
raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
end
# 安全属性识别可对图片中人体安全防护属性进行识别,支持识别安全帽,反光衣,护目镜,工服,手套,工地安全带,口罩,抽烟,玩手机等多种属性。
# "被优选过滤"标签值在人体优选开关开启时才会返回。
# |序号 | 标签名称 | 标签值 |
# | :-----| :---------- |:----------------- |
# | 1 | 安全帽识别<div style="width: 70pt"> |无安全帽、有安全帽、被优选过滤|
# | 2 | 玩手机识别<div style="width: 70pt"> |没有电话、打电话、玩手机、被优选过滤|
# | 3 | 抽烟识别<div style="width: 70pt"> |没有抽烟、抽烟、被优选过滤 |
# | 4 | 口罩识别<div style="width: 70pt"> |无口罩、有口罩、口罩不确定、被优选过滤|
# | 5 | 工地安全带识别<div style="width: 70pt"> |无工地安全带、工地安全带、被优选过滤 |
# | 6 | 手套识别<div style="width: 70pt"> |无手套、有手套、手套不确定、被优选过滤 |
# | 7 | 工服识别<div style="width: 70pt"> |无工服、有工服、被优选过滤|
# | 8 | 护目镜识别<div style="width: 70pt"> |无护目镜、有护目镜、被优选过滤|
# | 9 | 反光衣识别<div style="width: 70pt"> |无反光衣、有反光衣、被优选过滤|
# @param request: Request instance for DetectSecurity.
# @type request: :class:`Tencentcloud::tiia::V20190529::DetectSecurityRequest`
# @rtype: :class:`Tencentcloud::tiia::V20190529::DetectSecurityResponse`
def DetectSecurity(request)
body = send_request('DetectSecurity', request.serialize)
response = JSON.parse(body)
if response['Response'].key?('Error') == false
model = DetectSecurityResponse.new
model.deserialize(response['Response'])
model
else
code = response['Response']['Error']['Code']
message = response['Response']['Error']['Message']
reqid = response['Response']['RequestId']
raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
end
rescue TencentCloud::Common::TencentCloudSDKException => e
raise e
rescue StandardError => e
raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
end
# 传入一张图片,输出清晰度提升后的图片。
# 可以消除图片有损压缩导致的噪声,和使用滤镜、拍摄失焦导致的模糊。让图片的边缘和细节更加清晰自然。
# >
# - 可前往 [图像处理](https://cloud.tencent.com/document/product/1590) 产品文档中查看更多产品信息。
# - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
# @param request: Request instance for EnhanceImage.
# @type request: :class:`Tencentcloud::tiia::V20190529::EnhanceImageRequest`
# @rtype: :class:`Tencentcloud::tiia::V20190529::EnhanceImageResponse`
def EnhanceImage(request)
body = send_request('EnhanceImage', request.serialize)
response = JSON.parse(body)
if response['Response'].key?('Error') == false
model = EnhanceImageResponse.new
model.deserialize(response['Response'])
model
else
code = response['Response']['Error']['Code']
message = response['Response']['Error']['Message']
reqid = response['Response']['RequestId']
raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
end
rescue TencentCloud::Common::TencentCloudSDKException => e
raise e
rescue StandardError => e
raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
end
# 车辆识别可对图片中车辆的车型进行识别,输出车辆的品牌(如路虎)、车系(如神行者2)、类型(如中型SUV)、颜色和车辆在图中的坐标等信息,覆盖轿车、SUV、大型客车等市面常见车,支持三千多种车辆型号。如果图片中存在多辆车,会分别输出每辆车的车型和坐标。
# >?
# - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
# @param request: Request instance for RecognizeCar.
# @type request: :class:`Tencentcloud::tiia::V20190529::RecognizeCarRequest`
# @rtype: :class:`Tencentcloud::tiia::V20190529::RecognizeCarResponse`
def RecognizeCar(request)
body = send_request('RecognizeCar', request.serialize)
response = JSON.parse(body)
if response['Response'].key?('Error') == false
model = RecognizeCarResponse.new
model.deserialize(response['Response'])
model
else
code = response['Response']['Error']['Code']
message = response['Response']['Error']['Message']
reqid = response['Response']['RequestId']
raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
end
rescue TencentCloud::Common::TencentCloudSDKException => e
raise e
rescue StandardError => e
raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
end
# 车辆识别(增强版)在车辆识别的基础上**增加了车牌识别的功能,并升级了车型识别的效果**。可对图片中车辆的车型和车牌进行同时识别,输出车辆的车牌信息,以及车辆品牌(如路虎)、车系(如神行者2)、类型(如中型SUV)、颜色和车辆在图中的坐标等信息,覆盖轿车、SUV、大型客车等市面常见车,支持三千多种车辆型号。如果图片中存在多辆车,会分别输出每辆车的车型、车牌和坐标。
# >?
# - 公共参数中的签名方式必须指定为V3版本,即配置SignatureMethod参数为TC3-HMAC-SHA256。
# @param request: Request instance for RecognizeCarPro.
# @type request: :class:`Tencentcloud::tiia::V20190529::RecognizeCarProRequest`
# @rtype: :class:`Tencentcloud::tiia::V20190529::RecognizeCarProResponse`
def RecognizeCarPro(request)
body = send_request('RecognizeCarPro', request.serialize)
response = JSON.parse(body)
if response['Response'].key?('Error') == false
model = RecognizeCarProResponse.new
model.deserialize(response['Response'])
model
else
code = response['Response']['Error']['Code']
message = response['Response']['Error']['Message']
reqid = response['Response']['RequestId']
raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
end
rescue TencentCloud::Common::TencentCloudSDKException => e
raise e
rescue StandardError => e
raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
end
# 本接口用于对一张图片,在指定图片库中检索出与之相似的图片列表。
# >
# - 可前往 [图像搜索](https://cloud.tencent.com/document/product/1589) 产品文档中查看更多产品信息。
# @param request: Request instance for SearchImage.
# @type request: :class:`Tencentcloud::tiia::V20190529::SearchImageRequest`
# @rtype: :class:`Tencentcloud::tiia::V20190529::SearchImageResponse`
def SearchImage(request)
body = send_request('SearchImage', request.serialize)
response = JSON.parse(body)
if response['Response'].key?('Error') == false
model = SearchImageResponse.new
model.deserialize(response['Response'])
model
else
code = response['Response']['Error']['Code']
message = response['Response']['Error']['Message']
reqid = response['Response']['RequestId']
raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
end
rescue TencentCloud::Common::TencentCloudSDKException => e
raise e
rescue StandardError => e
raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
end
# 本接口支持根据图库ID、物品ID、图片名称来修改图片信息(暂仅支持修改Tags)
# >
# - 可前往 [图像搜索](https://cloud.tencent.com/document/product/1589) 产品文档中查看更多产品信息。
# @param request: Request instance for UpdateImage.
# @type request: :class:`Tencentcloud::tiia::V20190529::UpdateImageRequest`
# @rtype: :class:`Tencentcloud::tiia::V20190529::UpdateImageResponse`
def UpdateImage(request)
body = send_request('UpdateImage', request.serialize)
response = JSON.parse(body)
if response['Response'].key?('Error') == false
model = UpdateImageResponse.new
model.deserialize(response['Response'])
model
else
code = response['Response']['Error']['Code']
message = response['Response']['Error']['Message']
reqid = response['Response']['RequestId']
raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
end
rescue TencentCloud::Common::TencentCloudSDKException => e
raise e
rescue StandardError => e
raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
end
end
end
end
end