tencentcloud-sdk-bda 1.0.200

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1789 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved.
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ module TencentCloud
18
+ module Bda
19
+ module V20200324
20
+ # 人体年龄信息。
21
+ # AttributesType 不含 Age 或检测超过 5 个人体时,此参数仍返回,但不具备参考意义。
22
+ class Age < TencentCloud::Common::AbstractModel
23
+ # @param Type: 人体年龄信息,返回值为以下集合中的一个{小孩,青年,中年,老年}。
24
+ # @type Type: String
25
+ # @param Probability: Type识别概率值,[0.0,1.0],代表判断正确的概率。如0.8则代表有Type值有80%概率正确。
26
+ # @type Probability: Float
27
+
28
+ attr_accessor :Type, :Probability
29
+
30
+ def initialize(type=nil, probability=nil)
31
+ @Type = type
32
+ @Probability = probability
33
+ end
34
+
35
+ def deserialize(params)
36
+ @Type = params['Type']
37
+ @Probability = params['Probability']
38
+ end
39
+ end
40
+
41
+ # 返回人体属性选项,此值不填则为不需要返回,可以选择的值为以下六个。
42
+ # Age、Bag、Gender、Orientation、UpperBodyCloth、LowerBodyCloth,详细的解释请看对象描述
43
+ # 需注意本接口最多返回面积最大的 5 个人体属性信息,超过 5 个人体(第 6 个及以后的人体)的人体属性不具备参考意义。
44
+ class AttributesOptions < TencentCloud::Common::AbstractModel
45
+ # @param Age: 返回年龄信息
46
+ # @type Age: Boolean
47
+ # @param Bag: 返回随身挎包信息
48
+ # @type Bag: Boolean
49
+ # @param Gender: 返回性别信息
50
+ # @type Gender: Boolean
51
+ # @param Orientation: 返回朝向信息
52
+ # @type Orientation: Boolean
53
+ # @param UpperBodyCloth: 返回上装信息
54
+ # @type UpperBodyCloth: Boolean
55
+ # @param LowerBodyCloth: 返回下装信息
56
+ # @type LowerBodyCloth: Boolean
57
+
58
+ attr_accessor :Age, :Bag, :Gender, :Orientation, :UpperBodyCloth, :LowerBodyCloth
59
+
60
+ def initialize(age=nil, bag=nil, gender=nil, orientation=nil, upperbodycloth=nil, lowerbodycloth=nil)
61
+ @Age = age
62
+ @Bag = bag
63
+ @Gender = gender
64
+ @Orientation = orientation
65
+ @UpperBodyCloth = upperbodycloth
66
+ @LowerBodyCloth = lowerbodycloth
67
+ end
68
+
69
+ def deserialize(params)
70
+ @Age = params['Age']
71
+ @Bag = params['Bag']
72
+ @Gender = params['Gender']
73
+ @Orientation = params['Orientation']
74
+ @UpperBodyCloth = params['UpperBodyCloth']
75
+ @LowerBodyCloth = params['LowerBodyCloth']
76
+ end
77
+ end
78
+
79
+ # 人体是否挎包。
80
+ # AttributesType 不含 Bag 或检测超过 5 个人体时,此参数仍返回,但不具备参考意义。
81
+ class Bag < TencentCloud::Common::AbstractModel
82
+ # @param Type: 挎包信息,返回值为以下集合中的一个{双肩包, 斜挎包, 手拎包, 无包}。
83
+ # @type Type: String
84
+ # @param Probability: Type识别概率值,[0.0,1.0],代表判断正确的概率。如0.8则代表有Type值有80%概率正确。
85
+ # @type Probability: Float
86
+
87
+ attr_accessor :Type, :Probability
88
+
89
+ def initialize(type=nil, probability=nil)
90
+ @Type = type
91
+ @Probability = probability
92
+ end
93
+
94
+ def deserialize(params)
95
+ @Type = params['Type']
96
+ @Probability = params['Probability']
97
+ end
98
+ end
99
+
100
+ # 图中检测出的人体属性信息。
101
+ class BodyAttributeInfo < TencentCloud::Common::AbstractModel
102
+ # @param Age: 人体年龄信息。
103
+ # AttributesType 不含 Age 或检测超过 5 个人体时,此参数仍返回,但不具备参考意义。
104
+ # 注意:此字段可能返回 null,表示取不到有效值。
105
+ # @type Age: :class:`Tencentcloud::Bda.v20200324.models.Age`
106
+ # @param Bag: 人体是否挎包。
107
+ # AttributesType 不含 Bag 或检测超过 5 个人体时,此参数仍返回,但不具备参考意义。
108
+ # 注意:此字段可能返回 null,表示取不到有效值。
109
+ # @type Bag: :class:`Tencentcloud::Bda.v20200324.models.Bag`
110
+ # @param Gender: 人体性别信息。
111
+ # AttributesType 不含 Gender 或检测超过 5 个人体时,此参数仍返回,但不具备参考意义。
112
+ # 注意:此字段可能返回 null,表示取不到有效值。
113
+ # @type Gender: :class:`Tencentcloud::Bda.v20200324.models.Gender`
114
+ # @param Orientation: 人体朝向信息。
115
+ # AttributesType 不含 UpperBodyCloth 或检测超过 5 个人体时,此参数仍返回,但不具备参考意义。
116
+ # 注意:此字段可能返回 null,表示取不到有效值。
117
+ # @type Orientation: :class:`Tencentcloud::Bda.v20200324.models.Orientation`
118
+ # @param UpperBodyCloth: 人体上衣属性信息。
119
+ # AttributesType 不含 Orientation 或检测超过 5 个人体时,此参数仍返回,但不具备参考意义。
120
+ # 注意:此字段可能返回 null,表示取不到有效值。
121
+ # @type UpperBodyCloth: :class:`Tencentcloud::Bda.v20200324.models.UpperBodyCloth`
122
+ # @param LowerBodyCloth: 人体下衣属性信息。
123
+ # AttributesType 不含 LowerBodyCloth 或检测超过 5 个人体时,此参数仍返回,但不具备参考意义。
124
+ # 注意:此字段可能返回 null,表示取不到有效值。
125
+ # @type LowerBodyCloth: :class:`Tencentcloud::Bda.v20200324.models.LowerBodyCloth`
126
+
127
+ attr_accessor :Age, :Bag, :Gender, :Orientation, :UpperBodyCloth, :LowerBodyCloth
128
+
129
+ def initialize(age=nil, bag=nil, gender=nil, orientation=nil, upperbodycloth=nil, lowerbodycloth=nil)
130
+ @Age = age
131
+ @Bag = bag
132
+ @Gender = gender
133
+ @Orientation = orientation
134
+ @UpperBodyCloth = upperbodycloth
135
+ @LowerBodyCloth = lowerbodycloth
136
+ end
137
+
138
+ def deserialize(params)
139
+ unless params['Age'].nil?
140
+ @Age = Age.new
141
+ @Age.deserialize(params['Age'])
142
+ end
143
+ unless params['Bag'].nil?
144
+ @Bag = Bag.new
145
+ @Bag.deserialize(params['Bag'])
146
+ end
147
+ unless params['Gender'].nil?
148
+ @Gender = Gender.new
149
+ @Gender.deserialize(params['Gender'])
150
+ end
151
+ unless params['Orientation'].nil?
152
+ @Orientation = Orientation.new
153
+ @Orientation.deserialize(params['Orientation'])
154
+ end
155
+ unless params['UpperBodyCloth'].nil?
156
+ @UpperBodyCloth = UpperBodyCloth.new
157
+ @UpperBodyCloth.deserialize(params['UpperBodyCloth'])
158
+ end
159
+ unless params['LowerBodyCloth'].nil?
160
+ @LowerBodyCloth = LowerBodyCloth.new
161
+ @LowerBodyCloth.deserialize(params['LowerBodyCloth'])
162
+ end
163
+ end
164
+ end
165
+
166
+ # 图中检测出来的人体框。
167
+ class BodyDetectResult < TencentCloud::Common::AbstractModel
168
+ # @param Confidence: 检测出的人体置信度。
169
+ # 误识率百分之十对应的阈值是0.14;误识率百分之五对应的阈值是0.32;误识率百分之二对应的阈值是0.62;误识率百分之一对应的阈值是0.81。
170
+ # 通常情况建议使用阈值0.32,可适用大多数情况。
171
+ # @type Confidence: Float
172
+ # @param BodyRect: 图中检测出来的人体框
173
+ # @type BodyRect: :class:`Tencentcloud::Bda.v20200324.models.BodyRect`
174
+ # @param BodyAttributeInfo: 图中检测出的人体属性信息。
175
+ # @type BodyAttributeInfo: :class:`Tencentcloud::Bda.v20200324.models.BodyAttributeInfo`
176
+
177
+ attr_accessor :Confidence, :BodyRect, :BodyAttributeInfo
178
+
179
+ def initialize(confidence=nil, bodyrect=nil, bodyattributeinfo=nil)
180
+ @Confidence = confidence
181
+ @BodyRect = bodyrect
182
+ @BodyAttributeInfo = bodyattributeinfo
183
+ end
184
+
185
+ def deserialize(params)
186
+ @Confidence = params['Confidence']
187
+ unless params['BodyRect'].nil?
188
+ @BodyRect = BodyRect.new
189
+ @BodyRect.deserialize(params['BodyRect'])
190
+ end
191
+ unless params['BodyAttributeInfo'].nil?
192
+ @BodyAttributeInfo = BodyAttributeInfo.new
193
+ @BodyAttributeInfo.deserialize(params['BodyAttributeInfo'])
194
+ end
195
+ end
196
+ end
197
+
198
+ # 人体框和人体关键点信息。
199
+ class BodyJointsResult < TencentCloud::Common::AbstractModel
200
+ # @param BoundBox: 图中检测出来的人体框。
201
+ # @type BoundBox: :class:`Tencentcloud::Bda.v20200324.models.BoundRect`
202
+ # @param BodyJoints: 14个人体关键点的坐标,人体关键点详见KeyPointInfo。
203
+ # @type BodyJoints: Array
204
+ # @param Confidence: 检测出的人体置信度,0-1之间,数值越高越准确。
205
+ # @type Confidence: Float
206
+
207
+ attr_accessor :BoundBox, :BodyJoints, :Confidence
208
+
209
+ def initialize(boundbox=nil, bodyjoints=nil, confidence=nil)
210
+ @BoundBox = boundbox
211
+ @BodyJoints = bodyjoints
212
+ @Confidence = confidence
213
+ end
214
+
215
+ def deserialize(params)
216
+ unless params['BoundBox'].nil?
217
+ @BoundBox = BoundRect.new
218
+ @BoundBox.deserialize(params['BoundBox'])
219
+ end
220
+ unless params['BodyJoints'].nil?
221
+ @BodyJoints = []
222
+ params['BodyJoints'].each do |i|
223
+ keypointinfo_tmp = KeyPointInfo.new
224
+ keypointinfo_tmp.deserialize(i)
225
+ @BodyJoints << keypointinfo_tmp
226
+ end
227
+ end
228
+ @Confidence = params['Confidence']
229
+ end
230
+ end
231
+
232
+ # 人体框
233
+ class BodyRect < TencentCloud::Common::AbstractModel
234
+ # @param X: 人体框左上角横坐标。
235
+ # @type X: Integer
236
+ # @param Y: 人体框左上角纵坐标。
237
+ # @type Y: Integer
238
+ # @param Width: 人体宽度。
239
+ # @type Width: Integer
240
+ # @param Height: 人体高度。
241
+ # @type Height: Integer
242
+
243
+ attr_accessor :X, :Y, :Width, :Height
244
+
245
+ def initialize(x=nil, y=nil, width=nil, height=nil)
246
+ @X = x
247
+ @Y = y
248
+ @Width = width
249
+ @Height = height
250
+ end
251
+
252
+ def deserialize(params)
253
+ @X = params['X']
254
+ @Y = params['Y']
255
+ @Width = params['Width']
256
+ @Height = params['Height']
257
+ end
258
+ end
259
+
260
+ # 人体框
261
+ class BoundRect < TencentCloud::Common::AbstractModel
262
+ # @param X: 人体框左上角横坐标。
263
+ # @type X: Integer
264
+ # @param Y: 人体框左上角纵坐标。
265
+ # @type Y: Integer
266
+ # @param Width: 人体宽度。
267
+ # @type Width: Integer
268
+ # @param Height: 人体高度。
269
+ # @type Height: Integer
270
+
271
+ attr_accessor :X, :Y, :Width, :Height
272
+
273
+ def initialize(x=nil, y=nil, width=nil, height=nil)
274
+ @X = x
275
+ @Y = y
276
+ @Width = width
277
+ @Height = height
278
+ end
279
+
280
+ def deserialize(params)
281
+ @X = params['X']
282
+ @Y = params['Y']
283
+ @Width = params['Width']
284
+ @Height = params['Height']
285
+ end
286
+ end
287
+
288
+ # 识别出的最相似候选人。
289
+ class Candidate < TencentCloud::Common::AbstractModel
290
+ # @param PersonId: 人员ID。
291
+ # @type PersonId: String
292
+ # @param TraceId: 人体轨迹ID。
293
+ # @type TraceId: String
294
+ # @param Score: 候选者的匹配得分。
295
+ # 十万人体库下,误识率百分之五对应的分数为70分;误识率百分之二对应的分数为80分;误识率百分之一对应的分数为90分。
296
+
297
+ # 二十万人体库下,误识率百分之五对应的分数为80分;误识率百分之二对应的分数为90分;误识率百分之一对应的分数为95分。
298
+
299
+ # 通常情况建议使用分数80分(保召回)。若希望获得较高精度,建议使用分数90分(保准确)。
300
+ # @type Score: Float
301
+
302
+ attr_accessor :PersonId, :TraceId, :Score
303
+
304
+ def initialize(personid=nil, traceid=nil, score=nil)
305
+ @PersonId = personid
306
+ @TraceId = traceid
307
+ @Score = score
308
+ end
309
+
310
+ def deserialize(params)
311
+ @PersonId = params['PersonId']
312
+ @TraceId = params['TraceId']
313
+ @Score = params['Score']
314
+ end
315
+ end
316
+
317
+ # CreateGroup请求参数结构体
318
+ class CreateGroupRequest < TencentCloud::Common::AbstractModel
319
+ # @param GroupName: 人体库名称,[1,60]个字符,可修改,不可重复。
320
+ # @type GroupName: String
321
+ # @param GroupId: 人体库 ID,不可修改,不可重复。支持英文、数字、-%@#&_,长度限制64B。
322
+ # @type GroupId: String
323
+ # @param Tag: 人体库信息备注,[0,40]个字符。
324
+ # @type Tag: String
325
+ # @param BodyModelVersion: 人体识别所用的算法模型版本。
326
+ # 目前入参仅支持 “1.0”1个输入。 默认为"1.0"。
327
+ # 不同算法模型版本对应的人体识别算法不同,新版本的整体效果会优于旧版本,后续我们将推出更新版本。
328
+ # @type BodyModelVersion: String
329
+
330
+ attr_accessor :GroupName, :GroupId, :Tag, :BodyModelVersion
331
+
332
+ def initialize(groupname=nil, groupid=nil, tag=nil, bodymodelversion=nil)
333
+ @GroupName = groupname
334
+ @GroupId = groupid
335
+ @Tag = tag
336
+ @BodyModelVersion = bodymodelversion
337
+ end
338
+
339
+ def deserialize(params)
340
+ @GroupName = params['GroupName']
341
+ @GroupId = params['GroupId']
342
+ @Tag = params['Tag']
343
+ @BodyModelVersion = params['BodyModelVersion']
344
+ end
345
+ end
346
+
347
+ # CreateGroup返回参数结构体
348
+ class CreateGroupResponse < TencentCloud::Common::AbstractModel
349
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
350
+ # @type RequestId: String
351
+
352
+ attr_accessor :RequestId
353
+
354
+ def initialize(requestid=nil)
355
+ @RequestId = requestid
356
+ end
357
+
358
+ def deserialize(params)
359
+ @RequestId = params['RequestId']
360
+ end
361
+ end
362
+
363
+ # CreatePerson请求参数结构体
364
+ class CreatePersonRequest < TencentCloud::Common::AbstractModel
365
+ # @param GroupId: 待加入的人员库ID。
366
+ # @type GroupId: String
367
+ # @param PersonName: 人员名称。[1,60]个字符,可修改,可重复。
368
+ # @type PersonName: String
369
+ # @param PersonId: 人员ID,单个腾讯云账号下不可修改,不可重复。
370
+ # 支持英文、数字、-%@#&_,,长度限制64B。
371
+ # @type PersonId: String
372
+ # @param Trace: 人体轨迹信息。
373
+ # @type Trace: :class:`Tencentcloud::Bda.v20200324.models.Trace`
374
+
375
+ attr_accessor :GroupId, :PersonName, :PersonId, :Trace
376
+
377
+ def initialize(groupid=nil, personname=nil, personid=nil, trace=nil)
378
+ @GroupId = groupid
379
+ @PersonName = personname
380
+ @PersonId = personid
381
+ @Trace = trace
382
+ end
383
+
384
+ def deserialize(params)
385
+ @GroupId = params['GroupId']
386
+ @PersonName = params['PersonName']
387
+ @PersonId = params['PersonId']
388
+ unless params['Trace'].nil?
389
+ @Trace = Trace.new
390
+ @Trace.deserialize(params['Trace'])
391
+ end
392
+ end
393
+ end
394
+
395
+ # CreatePerson返回参数结构体
396
+ class CreatePersonResponse < TencentCloud::Common::AbstractModel
397
+ # @param TraceId: 人员轨迹唯一标识。
398
+ # @type TraceId: String
399
+ # @param BodyModelVersion: 人体识别所用的算法模型版本。
400
+ # @type BodyModelVersion: String
401
+ # @param InputRetCode: 输入的人体轨迹图片中的合法性校验结果。
402
+ # 只有为0时结果才有意义。
403
+ # -1001: 输入图片不合法。-1002: 输入图片不能构成轨迹。
404
+ # @type InputRetCode: Integer
405
+ # @param InputRetCodeDetails: 输入的人体轨迹图片中的合法性校验结果详情。
406
+ # -1101:图片无效,-1102:url不合法。-1103:图片过大。-1104:图片下载失败。-1105:图片解码失败。-1109:图片分辨率过高。-2023:轨迹中有非同人图片。-2024: 轨迹提取失败。-2025: 人体检测失败。
407
+ # RetCode 的顺序和入参中Images 或 Urls 的顺序一致。
408
+ # @type InputRetCodeDetails: Array
409
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
410
+ # @type RequestId: String
411
+
412
+ attr_accessor :TraceId, :BodyModelVersion, :InputRetCode, :InputRetCodeDetails, :RequestId
413
+
414
+ def initialize(traceid=nil, bodymodelversion=nil, inputretcode=nil, inputretcodedetails=nil, requestid=nil)
415
+ @TraceId = traceid
416
+ @BodyModelVersion = bodymodelversion
417
+ @InputRetCode = inputretcode
418
+ @InputRetCodeDetails = inputretcodedetails
419
+ @RequestId = requestid
420
+ end
421
+
422
+ def deserialize(params)
423
+ @TraceId = params['TraceId']
424
+ @BodyModelVersion = params['BodyModelVersion']
425
+ @InputRetCode = params['InputRetCode']
426
+ @InputRetCodeDetails = params['InputRetCodeDetails']
427
+ @RequestId = params['RequestId']
428
+ end
429
+ end
430
+
431
+ # CreateSegmentationTask请求参数结构体
432
+ class CreateSegmentationTaskRequest < TencentCloud::Common::AbstractModel
433
+ # @param VideoUrl: 需要分割的视频URL,可外网访问。
434
+ # @type VideoUrl: String
435
+ # @param BackgroundImageUrl: 背景图片URL。
436
+ # 可以将视频背景替换为输入的图片。
437
+ # 如果不输入背景图片,则输出人像区域mask。
438
+ # @type BackgroundImageUrl: String
439
+ # @param Config: 预留字段,后期用于展示更多识别信息。
440
+ # @type Config: String
441
+
442
+ attr_accessor :VideoUrl, :BackgroundImageUrl, :Config
443
+
444
+ def initialize(videourl=nil, backgroundimageurl=nil, config=nil)
445
+ @VideoUrl = videourl
446
+ @BackgroundImageUrl = backgroundimageurl
447
+ @Config = config
448
+ end
449
+
450
+ def deserialize(params)
451
+ @VideoUrl = params['VideoUrl']
452
+ @BackgroundImageUrl = params['BackgroundImageUrl']
453
+ @Config = params['Config']
454
+ end
455
+ end
456
+
457
+ # CreateSegmentationTask返回参数结构体
458
+ class CreateSegmentationTaskResponse < TencentCloud::Common::AbstractModel
459
+ # @param TaskID: 任务标识ID,可以用与追溯任务状态,查看任务结果
460
+ # @type TaskID: String
461
+ # @param EstimatedProcessingTime: 预估处理时间,单位为秒
462
+ # @type EstimatedProcessingTime: Float
463
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
464
+ # @type RequestId: String
465
+
466
+ attr_accessor :TaskID, :EstimatedProcessingTime, :RequestId
467
+
468
+ def initialize(taskid=nil, estimatedprocessingtime=nil, requestid=nil)
469
+ @TaskID = taskid
470
+ @EstimatedProcessingTime = estimatedprocessingtime
471
+ @RequestId = requestid
472
+ end
473
+
474
+ def deserialize(params)
475
+ @TaskID = params['TaskID']
476
+ @EstimatedProcessingTime = params['EstimatedProcessingTime']
477
+ @RequestId = params['RequestId']
478
+ end
479
+ end
480
+
481
+ # CreateTrace请求参数结构体
482
+ class CreateTraceRequest < TencentCloud::Common::AbstractModel
483
+ # @param PersonId: 人员ID。
484
+ # @type PersonId: String
485
+ # @param Trace: 人体轨迹信息。
486
+ # @type Trace: :class:`Tencentcloud::Bda.v20200324.models.Trace`
487
+
488
+ attr_accessor :PersonId, :Trace
489
+
490
+ def initialize(personid=nil, trace=nil)
491
+ @PersonId = personid
492
+ @Trace = trace
493
+ end
494
+
495
+ def deserialize(params)
496
+ @PersonId = params['PersonId']
497
+ unless params['Trace'].nil?
498
+ @Trace = Trace.new
499
+ @Trace.deserialize(params['Trace'])
500
+ end
501
+ end
502
+ end
503
+
504
+ # CreateTrace返回参数结构体
505
+ class CreateTraceResponse < TencentCloud::Common::AbstractModel
506
+ # @param TraceId: 人员轨迹唯一标识。
507
+ # @type TraceId: String
508
+ # @param BodyModelVersion: 人体识别所用的算法模型版本。
509
+ # @type BodyModelVersion: String
510
+ # @param InputRetCode: 输入的人体轨迹图片中的合法性校验结果。
511
+ # 只有为0时结果才有意义。
512
+ # -1001: 输入图片不合法。-1002: 输入图片不能构成轨迹。
513
+ # @type InputRetCode: Integer
514
+ # @param InputRetCodeDetails: 输入的人体轨迹图片中的合法性校验结果详情。
515
+ # -1101:图片无效,-1102:url不合法。-1103:图片过大。-1104:图片下载失败。-1105:图片解码失败。-1109:图片分辨率过高。-2023:轨迹中有非同人图片。-2024: 轨迹提取失败。-2025: 人体检测失败。
516
+ # @type InputRetCodeDetails: Array
517
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
518
+ # @type RequestId: String
519
+
520
+ attr_accessor :TraceId, :BodyModelVersion, :InputRetCode, :InputRetCodeDetails, :RequestId
521
+
522
+ def initialize(traceid=nil, bodymodelversion=nil, inputretcode=nil, inputretcodedetails=nil, requestid=nil)
523
+ @TraceId = traceid
524
+ @BodyModelVersion = bodymodelversion
525
+ @InputRetCode = inputretcode
526
+ @InputRetCodeDetails = inputretcodedetails
527
+ @RequestId = requestid
528
+ end
529
+
530
+ def deserialize(params)
531
+ @TraceId = params['TraceId']
532
+ @BodyModelVersion = params['BodyModelVersion']
533
+ @InputRetCode = params['InputRetCode']
534
+ @InputRetCodeDetails = params['InputRetCodeDetails']
535
+ @RequestId = params['RequestId']
536
+ end
537
+ end
538
+
539
+ # DeleteGroup请求参数结构体
540
+ class DeleteGroupRequest < TencentCloud::Common::AbstractModel
541
+ # @param GroupId: 人体库ID。
542
+ # @type GroupId: String
543
+
544
+ attr_accessor :GroupId
545
+
546
+ def initialize(groupid=nil)
547
+ @GroupId = groupid
548
+ end
549
+
550
+ def deserialize(params)
551
+ @GroupId = params['GroupId']
552
+ end
553
+ end
554
+
555
+ # DeleteGroup返回参数结构体
556
+ class DeleteGroupResponse < TencentCloud::Common::AbstractModel
557
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
558
+ # @type RequestId: String
559
+
560
+ attr_accessor :RequestId
561
+
562
+ def initialize(requestid=nil)
563
+ @RequestId = requestid
564
+ end
565
+
566
+ def deserialize(params)
567
+ @RequestId = params['RequestId']
568
+ end
569
+ end
570
+
571
+ # DeletePerson请求参数结构体
572
+ class DeletePersonRequest < TencentCloud::Common::AbstractModel
573
+ # @param PersonId: 人员ID。
574
+ # @type PersonId: String
575
+
576
+ attr_accessor :PersonId
577
+
578
+ def initialize(personid=nil)
579
+ @PersonId = personid
580
+ end
581
+
582
+ def deserialize(params)
583
+ @PersonId = params['PersonId']
584
+ end
585
+ end
586
+
587
+ # DeletePerson返回参数结构体
588
+ class DeletePersonResponse < TencentCloud::Common::AbstractModel
589
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
590
+ # @type RequestId: String
591
+
592
+ attr_accessor :RequestId
593
+
594
+ def initialize(requestid=nil)
595
+ @RequestId = requestid
596
+ end
597
+
598
+ def deserialize(params)
599
+ @RequestId = params['RequestId']
600
+ end
601
+ end
602
+
603
+ # DescribeSegmentationTask请求参数结构体
604
+ class DescribeSegmentationTaskRequest < TencentCloud::Common::AbstractModel
605
+ # @param TaskID: 在提交分割任务成功时返回的任务标识ID。
606
+ # @type TaskID: String
607
+
608
+ attr_accessor :TaskID
609
+
610
+ def initialize(taskid=nil)
611
+ @TaskID = taskid
612
+ end
613
+
614
+ def deserialize(params)
615
+ @TaskID = params['TaskID']
616
+ end
617
+ end
618
+
619
+ # DescribeSegmentationTask返回参数结构体
620
+ class DescribeSegmentationTaskResponse < TencentCloud::Common::AbstractModel
621
+ # @param TaskStatus: 当前任务状态:
622
+ # QUEUING 排队中
623
+ # PROCESSING 处理中
624
+ # FINISHED 处理完成
625
+ # @type TaskStatus: String
626
+ # @param ResultVideoUrl: 分割后视频URL, 存储于腾讯云COS
627
+ # 注意:此字段可能返回 null,表示取不到有效值。
628
+ # @type ResultVideoUrl: String
629
+ # @param ResultVideoMD5: 分割后视频MD5,用于校验
630
+ # 注意:此字段可能返回 null,表示取不到有效值。
631
+ # @type ResultVideoMD5: String
632
+ # @param VideoBasicInformation: 视频基本信息
633
+ # 注意:此字段可能返回 null,表示取不到有效值。
634
+ # @type VideoBasicInformation: :class:`Tencentcloud::Bda.v20200324.models.VideoBasicInformation`
635
+ # @param ErrorMsg: 分割任务错误信息
636
+ # 注意:此字段可能返回 null,表示取不到有效值。
637
+ # @type ErrorMsg: String
638
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
639
+ # @type RequestId: String
640
+
641
+ attr_accessor :TaskStatus, :ResultVideoUrl, :ResultVideoMD5, :VideoBasicInformation, :ErrorMsg, :RequestId
642
+
643
+ def initialize(taskstatus=nil, resultvideourl=nil, resultvideomd5=nil, videobasicinformation=nil, errormsg=nil, requestid=nil)
644
+ @TaskStatus = taskstatus
645
+ @ResultVideoUrl = resultvideourl
646
+ @ResultVideoMD5 = resultvideomd5
647
+ @VideoBasicInformation = videobasicinformation
648
+ @ErrorMsg = errormsg
649
+ @RequestId = requestid
650
+ end
651
+
652
+ def deserialize(params)
653
+ @TaskStatus = params['TaskStatus']
654
+ @ResultVideoUrl = params['ResultVideoUrl']
655
+ @ResultVideoMD5 = params['ResultVideoMD5']
656
+ unless params['VideoBasicInformation'].nil?
657
+ @VideoBasicInformation = VideoBasicInformation.new
658
+ @VideoBasicInformation.deserialize(params['VideoBasicInformation'])
659
+ end
660
+ @ErrorMsg = params['ErrorMsg']
661
+ @RequestId = params['RequestId']
662
+ end
663
+ end
664
+
665
+ # DetectBodyJoints请求参数结构体
666
+ class DetectBodyJointsRequest < TencentCloud::Common::AbstractModel
667
+ # @param Image: 图片 base64 数据,base64 编码后大小不可超过5M。
668
+ # 支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
669
+ # @type Image: String
670
+ # @param Url: 图片的 Url 。对应图片 base64 编码后大小不可超过5M。
671
+ # Url、Image必须提供一个,如果都提供,只使用 Url。
672
+ # 图片存储于腾讯云的Url可保障更高下载速度和稳定性,建议图片存储于腾讯云。
673
+ # 非腾讯云存储的Url速度和稳定性可能受一定影响。
674
+ # 支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
675
+ # @type Url: String
676
+
677
+ attr_accessor :Image, :Url
678
+
679
+ def initialize(image=nil, url=nil)
680
+ @Image = image
681
+ @Url = url
682
+ end
683
+
684
+ def deserialize(params)
685
+ @Image = params['Image']
686
+ @Url = params['Url']
687
+ end
688
+ end
689
+
690
+ # DetectBodyJoints返回参数结构体
691
+ class DetectBodyJointsResponse < TencentCloud::Common::AbstractModel
692
+ # @param BodyJointsResults: 图中检测出的人体框和人体关键点, 包含14个人体关键点的坐标,建议根据人体框置信度筛选出合格的人体;
693
+ # @type BodyJointsResults: Array
694
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
695
+ # @type RequestId: String
696
+
697
+ attr_accessor :BodyJointsResults, :RequestId
698
+
699
+ def initialize(bodyjointsresults=nil, requestid=nil)
700
+ @BodyJointsResults = bodyjointsresults
701
+ @RequestId = requestid
702
+ end
703
+
704
+ def deserialize(params)
705
+ unless params['BodyJointsResults'].nil?
706
+ @BodyJointsResults = []
707
+ params['BodyJointsResults'].each do |i|
708
+ bodyjointsresult_tmp = BodyJointsResult.new
709
+ bodyjointsresult_tmp.deserialize(i)
710
+ @BodyJointsResults << bodyjointsresult_tmp
711
+ end
712
+ end
713
+ @RequestId = params['RequestId']
714
+ end
715
+ end
716
+
717
+ # DetectBody请求参数结构体
718
+ class DetectBodyRequest < TencentCloud::Common::AbstractModel
719
+ # @param Image: 人体图片 Base64 数据。
720
+ # 图片 base64 编码后大小不可超过5M。
721
+ # 图片分辨率不得超过 1920 * 1080 。
722
+ # 支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
723
+ # @type Image: String
724
+ # @param MaxBodyNum: 最多检测的人体数目,默认值为1(仅检测图片中面积最大的那个人体); 最大值10 ,检测图片中面积最大的10个人体。
725
+ # @type MaxBodyNum: Integer
726
+ # @param Url: 人体图片 Url 。
727
+ # Url、Image必须提供一个,如果都提供,只使用 Url。
728
+ # 图片 base64 编码后大小不可超过5M。
729
+ # 图片分辨率不得超过 1920 * 1080 。
730
+ # 图片存储于腾讯云的Url可保障更高下载速度和稳定性,建议图片存储于腾讯云。
731
+ # 非腾讯云存储的Url速度和稳定性可能受一定影响。
732
+ # 支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
733
+ # @type Url: String
734
+ # @param AttributesOptions: 是否返回年龄、性别、朝向等属性。
735
+ # 可选项有 Age、Bag、Gender、UpperBodyCloth、LowerBodyCloth、Orientation。
736
+ # 如果此参数为空则为不需要返回。
737
+ # 需要将属性组成一个用逗号分隔的字符串,属性之间的顺序没有要求。
738
+ # 关于各属性的详细描述,参见下文出参。
739
+ # 最多返回面积最大的 5 个人体属性信息,超过 5 个人体(第 6 个及以后的人体)的 BodyAttributesInfo 不具备参考意义。
740
+ # @type AttributesOptions: :class:`Tencentcloud::Bda.v20200324.models.AttributesOptions`
741
+
742
+ attr_accessor :Image, :MaxBodyNum, :Url, :AttributesOptions
743
+
744
+ def initialize(image=nil, maxbodynum=nil, url=nil, attributesoptions=nil)
745
+ @Image = image
746
+ @MaxBodyNum = maxbodynum
747
+ @Url = url
748
+ @AttributesOptions = attributesoptions
749
+ end
750
+
751
+ def deserialize(params)
752
+ @Image = params['Image']
753
+ @MaxBodyNum = params['MaxBodyNum']
754
+ @Url = params['Url']
755
+ unless params['AttributesOptions'].nil?
756
+ @AttributesOptions = AttributesOptions.new
757
+ @AttributesOptions.deserialize(params['AttributesOptions'])
758
+ end
759
+ end
760
+ end
761
+
762
+ # DetectBody返回参数结构体
763
+ class DetectBodyResponse < TencentCloud::Common::AbstractModel
764
+ # @param BodyDetectResults: 图中检测出来的人体框。
765
+ # @type BodyDetectResults: Array
766
+ # @param BodyModelVersion: 人体识别所用的算法模型版本。
767
+ # @type BodyModelVersion: String
768
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
769
+ # @type RequestId: String
770
+
771
+ attr_accessor :BodyDetectResults, :BodyModelVersion, :RequestId
772
+
773
+ def initialize(bodydetectresults=nil, bodymodelversion=nil, requestid=nil)
774
+ @BodyDetectResults = bodydetectresults
775
+ @BodyModelVersion = bodymodelversion
776
+ @RequestId = requestid
777
+ end
778
+
779
+ def deserialize(params)
780
+ unless params['BodyDetectResults'].nil?
781
+ @BodyDetectResults = []
782
+ params['BodyDetectResults'].each do |i|
783
+ bodydetectresult_tmp = BodyDetectResult.new
784
+ bodydetectresult_tmp.deserialize(i)
785
+ @BodyDetectResults << bodydetectresult_tmp
786
+ end
787
+ end
788
+ @BodyModelVersion = params['BodyModelVersion']
789
+ @RequestId = params['RequestId']
790
+ end
791
+ end
792
+
793
+ # 人体性别信息。
794
+ # AttributesType 不含 Gender 或检测超过 5 个人体时,此参数仍返回,但不具备参考意义。
795
+ class Gender < TencentCloud::Common::AbstractModel
796
+ # @param Type: 性别信息,返回值为以下集合中的一个 {男性, 女性}
797
+ # @type Type: String
798
+ # @param Probability: Type识别概率值,[0.0,1.0],代表判断正确的概率。如0.8则代表有Type值有80%概率正确。
799
+ # @type Probability: Float
800
+
801
+ attr_accessor :Type, :Probability
802
+
803
+ def initialize(type=nil, probability=nil)
804
+ @Type = type
805
+ @Probability = probability
806
+ end
807
+
808
+ def deserialize(params)
809
+ @Type = params['Type']
810
+ @Probability = params['Probability']
811
+ end
812
+ end
813
+
814
+ # GetGroupList请求参数结构体
815
+ class GetGroupListRequest < TencentCloud::Common::AbstractModel
816
+ # @param Offset: 起始序号,默认值为0。
817
+ # @type Offset: Integer
818
+ # @param Limit: 返回数量,默认值为10,最大值为1000。
819
+ # @type Limit: Integer
820
+
821
+ attr_accessor :Offset, :Limit
822
+
823
+ def initialize(offset=nil, limit=nil)
824
+ @Offset = offset
825
+ @Limit = limit
826
+ end
827
+
828
+ def deserialize(params)
829
+ @Offset = params['Offset']
830
+ @Limit = params['Limit']
831
+ end
832
+ end
833
+
834
+ # GetGroupList返回参数结构体
835
+ class GetGroupListResponse < TencentCloud::Common::AbstractModel
836
+ # @param GroupInfos: 返回的人体库信息。
837
+ # @type GroupInfos: Array
838
+ # @param GroupNum: 人体库总数量。
839
+ # @type GroupNum: Integer
840
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
841
+ # @type RequestId: String
842
+
843
+ attr_accessor :GroupInfos, :GroupNum, :RequestId
844
+
845
+ def initialize(groupinfos=nil, groupnum=nil, requestid=nil)
846
+ @GroupInfos = groupinfos
847
+ @GroupNum = groupnum
848
+ @RequestId = requestid
849
+ end
850
+
851
+ def deserialize(params)
852
+ unless params['GroupInfos'].nil?
853
+ @GroupInfos = []
854
+ params['GroupInfos'].each do |i|
855
+ groupinfo_tmp = GroupInfo.new
856
+ groupinfo_tmp.deserialize(i)
857
+ @GroupInfos << groupinfo_tmp
858
+ end
859
+ end
860
+ @GroupNum = params['GroupNum']
861
+ @RequestId = params['RequestId']
862
+ end
863
+ end
864
+
865
+ # GetPersonList请求参数结构体
866
+ class GetPersonListRequest < TencentCloud::Common::AbstractModel
867
+ # @param GroupId: 人体库ID。
868
+ # @type GroupId: String
869
+ # @param Offset: 起始序号,默认值为0。
870
+ # @type Offset: Integer
871
+ # @param Limit: 返回数量,默认值为10,最大值为1000。
872
+ # @type Limit: Integer
873
+
874
+ attr_accessor :GroupId, :Offset, :Limit
875
+
876
+ def initialize(groupid=nil, offset=nil, limit=nil)
877
+ @GroupId = groupid
878
+ @Offset = offset
879
+ @Limit = limit
880
+ end
881
+
882
+ def deserialize(params)
883
+ @GroupId = params['GroupId']
884
+ @Offset = params['Offset']
885
+ @Limit = params['Limit']
886
+ end
887
+ end
888
+
889
+ # GetPersonList返回参数结构体
890
+ class GetPersonListResponse < TencentCloud::Common::AbstractModel
891
+ # @param PersonInfos: 返回的人员信息。
892
+ # @type PersonInfos: Array
893
+ # @param PersonNum: 该人体库的人员数量。
894
+ # @type PersonNum: Integer
895
+ # @param BodyModelVersion: 人体识别所用的算法模型版本。
896
+ # @type BodyModelVersion: String
897
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
898
+ # @type RequestId: String
899
+
900
+ attr_accessor :PersonInfos, :PersonNum, :BodyModelVersion, :RequestId
901
+
902
+ def initialize(personinfos=nil, personnum=nil, bodymodelversion=nil, requestid=nil)
903
+ @PersonInfos = personinfos
904
+ @PersonNum = personnum
905
+ @BodyModelVersion = bodymodelversion
906
+ @RequestId = requestid
907
+ end
908
+
909
+ def deserialize(params)
910
+ unless params['PersonInfos'].nil?
911
+ @PersonInfos = []
912
+ params['PersonInfos'].each do |i|
913
+ personinfo_tmp = PersonInfo.new
914
+ personinfo_tmp.deserialize(i)
915
+ @PersonInfos << personinfo_tmp
916
+ end
917
+ end
918
+ @PersonNum = params['PersonNum']
919
+ @BodyModelVersion = params['BodyModelVersion']
920
+ @RequestId = params['RequestId']
921
+ end
922
+ end
923
+
924
+ # GetSummaryInfo请求参数结构体
925
+ class GetSummaryInfoRequest < TencentCloud::Common::AbstractModel
926
+
927
+
928
+ def initialize()
929
+ end
930
+
931
+ def deserialize(params)
932
+ end
933
+ end
934
+
935
+ # GetSummaryInfo返回参数结构体
936
+ class GetSummaryInfoResponse < TencentCloud::Common::AbstractModel
937
+ # @param GroupCount: 人体库总数量。
938
+ # @type GroupCount: Integer
939
+ # @param PersonCount: 人员总数量
940
+ # @type PersonCount: Integer
941
+ # @param TraceCount: 人员轨迹总数量
942
+ # @type TraceCount: Integer
943
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
944
+ # @type RequestId: String
945
+
946
+ attr_accessor :GroupCount, :PersonCount, :TraceCount, :RequestId
947
+
948
+ def initialize(groupcount=nil, personcount=nil, tracecount=nil, requestid=nil)
949
+ @GroupCount = groupcount
950
+ @PersonCount = personcount
951
+ @TraceCount = tracecount
952
+ @RequestId = requestid
953
+ end
954
+
955
+ def deserialize(params)
956
+ @GroupCount = params['GroupCount']
957
+ @PersonCount = params['PersonCount']
958
+ @TraceCount = params['TraceCount']
959
+ @RequestId = params['RequestId']
960
+ end
961
+ end
962
+
963
+ # 返回的人员库信息。
964
+ class GroupInfo < TencentCloud::Common::AbstractModel
965
+ # @param GroupName: 人体库名称。
966
+ # @type GroupName: String
967
+ # @param GroupId: 人体库ID。
968
+ # @type GroupId: String
969
+ # @param Tag: 人体库信息备注。
970
+ # @type Tag: String
971
+ # @param BodyModelVersion: 人体识别所用的算法模型版本。
972
+ # @type BodyModelVersion: String
973
+ # @param CreationTimestamp: Group的创建时间和日期 CreationTimestamp。CreationTimestamp 的值是自 Unix 纪元时间到Group创建时间的毫秒数。
974
+ # Unix 纪元时间是 1970 年 1 月 1 日星期四,协调世界时 (UTC) 。
975
+ # @type CreationTimestamp: Integer
976
+
977
+ attr_accessor :GroupName, :GroupId, :Tag, :BodyModelVersion, :CreationTimestamp
978
+
979
+ def initialize(groupname=nil, groupid=nil, tag=nil, bodymodelversion=nil, creationtimestamp=nil)
980
+ @GroupName = groupname
981
+ @GroupId = groupid
982
+ @Tag = tag
983
+ @BodyModelVersion = bodymodelversion
984
+ @CreationTimestamp = creationtimestamp
985
+ end
986
+
987
+ def deserialize(params)
988
+ @GroupName = params['GroupName']
989
+ @GroupId = params['GroupId']
990
+ @Tag = params['Tag']
991
+ @BodyModelVersion = params['BodyModelVersion']
992
+ @CreationTimestamp = params['CreationTimestamp']
993
+ end
994
+ end
995
+
996
+ # 图像坐标信息。
997
+ class ImageRect < TencentCloud::Common::AbstractModel
998
+ # @param X: 左上角横坐标。
999
+ # @type X: Integer
1000
+ # @param Y: 左上角纵坐标。
1001
+ # @type Y: Integer
1002
+ # @param Width: 人体宽度。
1003
+ # @type Width: Integer
1004
+ # @param Height: 人体高度。
1005
+ # @type Height: Integer
1006
+ # @param Label: 分割选项名称。
1007
+ # @type Label: String
1008
+
1009
+ attr_accessor :X, :Y, :Width, :Height, :Label
1010
+
1011
+ def initialize(x=nil, y=nil, width=nil, height=nil, label=nil)
1012
+ @X = x
1013
+ @Y = y
1014
+ @Width = width
1015
+ @Height = height
1016
+ @Label = label
1017
+ end
1018
+
1019
+ def deserialize(params)
1020
+ @X = params['X']
1021
+ @Y = params['Y']
1022
+ @Width = params['Width']
1023
+ @Height = params['Height']
1024
+ @Label = params['Label']
1025
+ end
1026
+ end
1027
+
1028
+ # 人体关键点信息
1029
+ class KeyPointInfo < TencentCloud::Common::AbstractModel
1030
+ # @param KeyPointType: 代表不同位置的人体关键点信息,返回值为以下集合中的一个 [头部,颈部,右肩,右肘,右腕,左肩,左肘,左腕,右髋,右膝,右踝,左髋,左膝,左踝]
1031
+ # @type KeyPointType: String
1032
+ # @param X: 人体关键点横坐标
1033
+ # @type X: Float
1034
+ # @param Y: 人体关键点纵坐标
1035
+ # @type Y: Float
1036
+
1037
+ attr_accessor :KeyPointType, :X, :Y
1038
+
1039
+ def initialize(keypointtype=nil, x=nil, y=nil)
1040
+ @KeyPointType = keypointtype
1041
+ @X = x
1042
+ @Y = y
1043
+ end
1044
+
1045
+ def deserialize(params)
1046
+ @KeyPointType = params['KeyPointType']
1047
+ @X = params['X']
1048
+ @Y = params['Y']
1049
+ end
1050
+ end
1051
+
1052
+ # 下衣属性信息
1053
+ class LowerBodyCloth < TencentCloud::Common::AbstractModel
1054
+ # @param Color: 下衣颜色信息。
1055
+ # @type Color: :class:`Tencentcloud::Bda.v20200324.models.LowerBodyClothColor`
1056
+ # @param Length: 下衣长度信息 。
1057
+ # @type Length: :class:`Tencentcloud::Bda.v20200324.models.LowerBodyClothLength`
1058
+ # @param Type: 下衣类型信息。
1059
+ # @type Type: :class:`Tencentcloud::Bda.v20200324.models.LowerBodyClothType`
1060
+
1061
+ attr_accessor :Color, :Length, :Type
1062
+
1063
+ def initialize(color=nil, length=nil, type=nil)
1064
+ @Color = color
1065
+ @Length = length
1066
+ @Type = type
1067
+ end
1068
+
1069
+ def deserialize(params)
1070
+ unless params['Color'].nil?
1071
+ @Color = LowerBodyClothColor.new
1072
+ @Color.deserialize(params['Color'])
1073
+ end
1074
+ unless params['Length'].nil?
1075
+ @Length = LowerBodyClothLength.new
1076
+ @Length.deserialize(params['Length'])
1077
+ end
1078
+ unless params['Type'].nil?
1079
+ @Type = LowerBodyClothType.new
1080
+ @Type.deserialize(params['Type'])
1081
+ end
1082
+ end
1083
+ end
1084
+
1085
+ # 下衣颜色信息
1086
+ class LowerBodyClothColor < TencentCloud::Common::AbstractModel
1087
+ # @param Type: 下衣颜色信息,返回值为以下集合中的一个{ 黑色系, 灰白色系, 彩色} 。
1088
+ # @type Type: String
1089
+ # @param Probability: Type识别概率值,[0.0,1.0],代表判断正确的概率。如0.8则代表有Type值有80%概率正确。
1090
+ # @type Probability: Float
1091
+
1092
+ attr_accessor :Type, :Probability
1093
+
1094
+ def initialize(type=nil, probability=nil)
1095
+ @Type = type
1096
+ @Probability = probability
1097
+ end
1098
+
1099
+ def deserialize(params)
1100
+ @Type = params['Type']
1101
+ @Probability = params['Probability']
1102
+ end
1103
+ end
1104
+
1105
+ # 下衣长度信息
1106
+ class LowerBodyClothLength < TencentCloud::Common::AbstractModel
1107
+ # @param Type: 下衣长度信息,返回值为以下集合中的一个,{长, 短} 。
1108
+ # @type Type: String
1109
+ # @param Probability: Type识别概率值,[0.0,1.0],代表判断正确的概率。如0.8则代表有Type值有80%概率正确。
1110
+ # @type Probability: Float
1111
+
1112
+ attr_accessor :Type, :Probability
1113
+
1114
+ def initialize(type=nil, probability=nil)
1115
+ @Type = type
1116
+ @Probability = probability
1117
+ end
1118
+
1119
+ def deserialize(params)
1120
+ @Type = params['Type']
1121
+ @Probability = params['Probability']
1122
+ end
1123
+ end
1124
+
1125
+ # 下衣类型信息
1126
+ class LowerBodyClothType < TencentCloud::Common::AbstractModel
1127
+ # @param Type: 下衣类型,返回值为以下集合中的一个 {裤子,裙子} 。
1128
+ # @type Type: String
1129
+ # @param Probability: Type识别概率值,[0.0,1.0],代表判断正确的概率。如0.8则代表有Type值有80%概率正确。
1130
+ # @type Probability: Float
1131
+
1132
+ attr_accessor :Type, :Probability
1133
+
1134
+ def initialize(type=nil, probability=nil)
1135
+ @Type = type
1136
+ @Probability = probability
1137
+ end
1138
+
1139
+ def deserialize(params)
1140
+ @Type = params['Type']
1141
+ @Probability = params['Probability']
1142
+ end
1143
+ end
1144
+
1145
+ # ModifyGroup请求参数结构体
1146
+ class ModifyGroupRequest < TencentCloud::Common::AbstractModel
1147
+ # @param GroupId: 人体库ID。
1148
+ # @type GroupId: String
1149
+ # @param GroupName: 人体库名称。
1150
+ # @type GroupName: String
1151
+ # @param Tag: 人体库信息备注。
1152
+ # @type Tag: String
1153
+
1154
+ attr_accessor :GroupId, :GroupName, :Tag
1155
+
1156
+ def initialize(groupid=nil, groupname=nil, tag=nil)
1157
+ @GroupId = groupid
1158
+ @GroupName = groupname
1159
+ @Tag = tag
1160
+ end
1161
+
1162
+ def deserialize(params)
1163
+ @GroupId = params['GroupId']
1164
+ @GroupName = params['GroupName']
1165
+ @Tag = params['Tag']
1166
+ end
1167
+ end
1168
+
1169
+ # ModifyGroup返回参数结构体
1170
+ class ModifyGroupResponse < TencentCloud::Common::AbstractModel
1171
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1172
+ # @type RequestId: String
1173
+
1174
+ attr_accessor :RequestId
1175
+
1176
+ def initialize(requestid=nil)
1177
+ @RequestId = requestid
1178
+ end
1179
+
1180
+ def deserialize(params)
1181
+ @RequestId = params['RequestId']
1182
+ end
1183
+ end
1184
+
1185
+ # ModifyPersonInfo请求参数结构体
1186
+ class ModifyPersonInfoRequest < TencentCloud::Common::AbstractModel
1187
+ # @param PersonId: 人员ID。
1188
+ # @type PersonId: String
1189
+ # @param PersonName: 人员名称。
1190
+ # @type PersonName: String
1191
+
1192
+ attr_accessor :PersonId, :PersonName
1193
+
1194
+ def initialize(personid=nil, personname=nil)
1195
+ @PersonId = personid
1196
+ @PersonName = personname
1197
+ end
1198
+
1199
+ def deserialize(params)
1200
+ @PersonId = params['PersonId']
1201
+ @PersonName = params['PersonName']
1202
+ end
1203
+ end
1204
+
1205
+ # ModifyPersonInfo返回参数结构体
1206
+ class ModifyPersonInfoResponse < TencentCloud::Common::AbstractModel
1207
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1208
+ # @type RequestId: String
1209
+
1210
+ attr_accessor :RequestId
1211
+
1212
+ def initialize(requestid=nil)
1213
+ @RequestId = requestid
1214
+ end
1215
+
1216
+ def deserialize(params)
1217
+ @RequestId = params['RequestId']
1218
+ end
1219
+ end
1220
+
1221
+ # 人体朝向信息。
1222
+ # AttributesType 不含 Orientation 或检测超过 5 个人体时,此参数仍返回,但不具备参考意义。
1223
+ class Orientation < TencentCloud::Common::AbstractModel
1224
+ # @param Type: 人体朝向信息,返回值为以下集合中的一个 {正向, 背向, 左, 右}。
1225
+ # @type Type: String
1226
+ # @param Probability: Type识别概率值,[0.0,1.0],代表判断正确的概率。如0.8则代表有Type值有80%概率正确。
1227
+ # @type Probability: Float
1228
+
1229
+ attr_accessor :Type, :Probability
1230
+
1231
+ def initialize(type=nil, probability=nil)
1232
+ @Type = type
1233
+ @Probability = probability
1234
+ end
1235
+
1236
+ def deserialize(params)
1237
+ @Type = params['Type']
1238
+ @Probability = params['Probability']
1239
+ end
1240
+ end
1241
+
1242
+ # 人员信息。
1243
+ class PersonInfo < TencentCloud::Common::AbstractModel
1244
+ # @param PersonName: 人员名称。
1245
+ # @type PersonName: String
1246
+ # @param PersonId: 人员ID。
1247
+ # @type PersonId: String
1248
+ # @param TraceInfos: 包含的人体轨迹图片信息列表。
1249
+ # @type TraceInfos: Array
1250
+
1251
+ attr_accessor :PersonName, :PersonId, :TraceInfos
1252
+
1253
+ def initialize(personname=nil, personid=nil, traceinfos=nil)
1254
+ @PersonName = personname
1255
+ @PersonId = personid
1256
+ @TraceInfos = traceinfos
1257
+ end
1258
+
1259
+ def deserialize(params)
1260
+ @PersonName = params['PersonName']
1261
+ @PersonId = params['PersonId']
1262
+ unless params['TraceInfos'].nil?
1263
+ @TraceInfos = []
1264
+ params['TraceInfos'].each do |i|
1265
+ traceinfo_tmp = TraceInfo.new
1266
+ traceinfo_tmp.deserialize(i)
1267
+ @TraceInfos << traceinfo_tmp
1268
+ end
1269
+ end
1270
+ end
1271
+ end
1272
+
1273
+ # SearchTrace请求参数结构体
1274
+ class SearchTraceRequest < TencentCloud::Common::AbstractModel
1275
+ # @param GroupId: 希望搜索的人体库ID。
1276
+ # @type GroupId: String
1277
+ # @param Trace: 人体轨迹信息。
1278
+ # @type Trace: :class:`Tencentcloud::Bda.v20200324.models.Trace`
1279
+ # @param MaxPersonNum: 单张被识别的人体轨迹返回的最相似人员数量。
1280
+ # 默认值为5,最大值为100。
1281
+ # 例,设MaxPersonNum为8,则返回Top8相似的人员信息。 值越大,需要处理的时间越长。建议不要超过10。
1282
+ # @type MaxPersonNum: Integer
1283
+ # @param TraceMatchThreshold: 出参Score中,只有超过TraceMatchThreshold值的结果才会返回。
1284
+ # 默认为0。范围[0, 100.0]。
1285
+ # @type TraceMatchThreshold: Float
1286
+
1287
+ attr_accessor :GroupId, :Trace, :MaxPersonNum, :TraceMatchThreshold
1288
+
1289
+ def initialize(groupid=nil, trace=nil, maxpersonnum=nil, tracematchthreshold=nil)
1290
+ @GroupId = groupid
1291
+ @Trace = trace
1292
+ @MaxPersonNum = maxpersonnum
1293
+ @TraceMatchThreshold = tracematchthreshold
1294
+ end
1295
+
1296
+ def deserialize(params)
1297
+ @GroupId = params['GroupId']
1298
+ unless params['Trace'].nil?
1299
+ @Trace = Trace.new
1300
+ @Trace.deserialize(params['Trace'])
1301
+ end
1302
+ @MaxPersonNum = params['MaxPersonNum']
1303
+ @TraceMatchThreshold = params['TraceMatchThreshold']
1304
+ end
1305
+ end
1306
+
1307
+ # SearchTrace返回参数结构体
1308
+ class SearchTraceResponse < TencentCloud::Common::AbstractModel
1309
+ # @param Candidates: 识别出的最相似候选人。
1310
+ # @type Candidates: Array
1311
+ # @param InputRetCode: 输入的人体轨迹图片中的合法性校验结果。
1312
+ # 只有为0时结果才有意义。
1313
+ # -1001: 输入图片不合法。-1002: 输入图片不能构成轨迹。
1314
+ # @type InputRetCode: Integer
1315
+ # @param InputRetCodeDetails: 输入的人体轨迹图片中的合法性校验结果详情。
1316
+ # -1101:图片无效,-1102:url不合法。-1103:图片过大。-1104:图片下载失败。-1105:图片解码失败。-1109:图片分辨率过高。-2023:轨迹中有非同人图片。-2024: 轨迹提取失败。-2025: 人体检测失败。
1317
+ # @type InputRetCodeDetails: Array
1318
+ # @param BodyModelVersion: 人体识别所用的算法模型版本。
1319
+ # @type BodyModelVersion: String
1320
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1321
+ # @type RequestId: String
1322
+
1323
+ attr_accessor :Candidates, :InputRetCode, :InputRetCodeDetails, :BodyModelVersion, :RequestId
1324
+
1325
+ def initialize(candidates=nil, inputretcode=nil, inputretcodedetails=nil, bodymodelversion=nil, requestid=nil)
1326
+ @Candidates = candidates
1327
+ @InputRetCode = inputretcode
1328
+ @InputRetCodeDetails = inputretcodedetails
1329
+ @BodyModelVersion = bodymodelversion
1330
+ @RequestId = requestid
1331
+ end
1332
+
1333
+ def deserialize(params)
1334
+ unless params['Candidates'].nil?
1335
+ @Candidates = []
1336
+ params['Candidates'].each do |i|
1337
+ candidate_tmp = Candidate.new
1338
+ candidate_tmp.deserialize(i)
1339
+ @Candidates << candidate_tmp
1340
+ end
1341
+ end
1342
+ @InputRetCode = params['InputRetCode']
1343
+ @InputRetCodeDetails = params['InputRetCodeDetails']
1344
+ @BodyModelVersion = params['BodyModelVersion']
1345
+ @RequestId = params['RequestId']
1346
+ end
1347
+ end
1348
+
1349
+ # SegmentCustomizedPortraitPic请求参数结构体
1350
+ class SegmentCustomizedPortraitPicRequest < TencentCloud::Common::AbstractModel
1351
+ # @param SegmentationOptions: 此参数为分割选项,请根据需要选择自己所想从图片中分割的部分。注意所有选项均为非必选,如未选择则值默认为false, 但是必须要保证多于一个选项的描述为true。
1352
+ # @type SegmentationOptions: :class:`Tencentcloud::Bda.v20200324.models.SegmentationOptions`
1353
+ # @param Image: 图片 base64 数据,base64 编码后大小不可超过5M。
1354
+ # 图片分辨率须小于2000*2000。
1355
+ # 支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
1356
+ # @type Image: String
1357
+ # @param Url: 图片的 Url 。
1358
+ # Url、Image必须提供一个,如果都提供,只使用 Url。
1359
+ # 图片分辨率须小于2000*2000 ,图片 base64 编码后大小不可超过5M。
1360
+ # 图片存储于腾讯云的Url可保障更高下载速度和稳定性,建议图片存储于腾讯云。
1361
+ # 非腾讯云存储的Url速度和稳定性可能受一定影响。
1362
+ # 支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
1363
+ # @type Url: String
1364
+
1365
+ attr_accessor :SegmentationOptions, :Image, :Url
1366
+
1367
+ def initialize(segmentationoptions=nil, image=nil, url=nil)
1368
+ @SegmentationOptions = segmentationoptions
1369
+ @Image = image
1370
+ @Url = url
1371
+ end
1372
+
1373
+ def deserialize(params)
1374
+ unless params['SegmentationOptions'].nil?
1375
+ @SegmentationOptions = SegmentationOptions.new
1376
+ @SegmentationOptions.deserialize(params['SegmentationOptions'])
1377
+ end
1378
+ @Image = params['Image']
1379
+ @Url = params['Url']
1380
+ end
1381
+ end
1382
+
1383
+ # SegmentCustomizedPortraitPic返回参数结构体
1384
+ class SegmentCustomizedPortraitPicResponse < TencentCloud::Common::AbstractModel
1385
+ # @param PortraitImage: 根据指定标签分割输出的透明背景人像图片的 base64 数据。
1386
+ # @type PortraitImage: String
1387
+ # @param MaskImage: 指定标签处理后的Mask。一个通过 Base64 编码的文件,解码后文件由 Float 型浮点数组成。这些浮点数代表原图从左上角开始的每一行的每一个像素点,每一个浮点数的值是原图相应像素点位于人体轮廓内的置信度(0-1)转化的灰度值(0-255)
1388
+ # @type MaskImage: String
1389
+ # @param ImageRects: 坐标信息。
1390
+ # 注意:此字段可能返回 null,表示取不到有效值。
1391
+ # @type ImageRects: Array
1392
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1393
+ # @type RequestId: String
1394
+
1395
+ attr_accessor :PortraitImage, :MaskImage, :ImageRects, :RequestId
1396
+
1397
+ def initialize(portraitimage=nil, maskimage=nil, imagerects=nil, requestid=nil)
1398
+ @PortraitImage = portraitimage
1399
+ @MaskImage = maskimage
1400
+ @ImageRects = imagerects
1401
+ @RequestId = requestid
1402
+ end
1403
+
1404
+ def deserialize(params)
1405
+ @PortraitImage = params['PortraitImage']
1406
+ @MaskImage = params['MaskImage']
1407
+ unless params['ImageRects'].nil?
1408
+ @ImageRects = []
1409
+ params['ImageRects'].each do |i|
1410
+ imagerect_tmp = ImageRect.new
1411
+ imagerect_tmp.deserialize(i)
1412
+ @ImageRects << imagerect_tmp
1413
+ end
1414
+ end
1415
+ @RequestId = params['RequestId']
1416
+ end
1417
+ end
1418
+
1419
+ # SegmentPortraitPic请求参数结构体
1420
+ class SegmentPortraitPicRequest < TencentCloud::Common::AbstractModel
1421
+ # @param Image: 图片 base64 数据,base64 编码后大小不可超过5M。
1422
+ # 图片分辨率须小于2000*2000。
1423
+ # 支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
1424
+ # @type Image: String
1425
+ # @param Url: 图片的 Url 。
1426
+ # Url、Image必须提供一个,如果都提供,只使用 Url。
1427
+ # 图片分辨率须小于2000*2000 ,图片 base64 编码后大小不可超过5M。
1428
+ # 图片存储于腾讯云的Url可保障更高下载速度和稳定性,建议图片存储于腾讯云。
1429
+ # 非腾讯云存储的Url速度和稳定性可能受一定影响。
1430
+ # 支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
1431
+ # @type Url: String
1432
+
1433
+ attr_accessor :Image, :Url
1434
+
1435
+ def initialize(image=nil, url=nil)
1436
+ @Image = image
1437
+ @Url = url
1438
+ end
1439
+
1440
+ def deserialize(params)
1441
+ @Image = params['Image']
1442
+ @Url = params['Url']
1443
+ end
1444
+ end
1445
+
1446
+ # SegmentPortraitPic返回参数结构体
1447
+ class SegmentPortraitPicResponse < TencentCloud::Common::AbstractModel
1448
+ # @param ResultImage: 处理后的图片 base64 数据,透明背景图
1449
+ # @type ResultImage: String
1450
+ # @param ResultMask: 一个通过 Base64 编码的文件,解码后文件由 Float 型浮点数组成。这些浮点数代表原图从左上角开始的每一行的每一个像素点,每一个浮点数的值是原图相应像素点位于人体轮廓内的置信度(0-1)转化的灰度值(0-255)
1451
+ # @type ResultMask: String
1452
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1453
+ # @type RequestId: String
1454
+
1455
+ attr_accessor :ResultImage, :ResultMask, :RequestId
1456
+
1457
+ def initialize(resultimage=nil, resultmask=nil, requestid=nil)
1458
+ @ResultImage = resultimage
1459
+ @ResultMask = resultmask
1460
+ @RequestId = requestid
1461
+ end
1462
+
1463
+ def deserialize(params)
1464
+ @ResultImage = params['ResultImage']
1465
+ @ResultMask = params['ResultMask']
1466
+ @RequestId = params['RequestId']
1467
+ end
1468
+ end
1469
+
1470
+ # 此参数为分割选项,请根据需要选择自己所想从图片中分割的部分。注意所有选项均为非必选,如未选择则值默认为false, 但是必须要保证多于一个选项的描述为true。
1471
+ class SegmentationOptions < TencentCloud::Common::AbstractModel
1472
+ # @param Background: 分割选项-背景
1473
+ # @type Background: Boolean
1474
+ # @param Hair: 分割选项-头发
1475
+ # @type Hair: Boolean
1476
+ # @param LeftEyebrow: 分割选项-左眉
1477
+ # @type LeftEyebrow: Boolean
1478
+ # @param RightEyebrow: 分割选项-右眉
1479
+ # @type RightEyebrow: Boolean
1480
+ # @param LeftEye: 分割选项-左眼
1481
+ # @type LeftEye: Boolean
1482
+ # @param RightEye: 分割选项-右眼
1483
+ # @type RightEye: Boolean
1484
+ # @param Nose: 分割选项-鼻子
1485
+ # @type Nose: Boolean
1486
+ # @param UpperLip: 分割选项-上唇
1487
+ # @type UpperLip: Boolean
1488
+ # @param LowerLip: 分割选项-下唇
1489
+ # @type LowerLip: Boolean
1490
+ # @param Tooth: 分割选项-牙齿
1491
+ # @type Tooth: Boolean
1492
+ # @param Mouth: 分割选项-口腔(不包含牙齿)
1493
+ # @type Mouth: Boolean
1494
+ # @param LeftEar: 分割选项-左耳
1495
+ # @type LeftEar: Boolean
1496
+ # @param RightEar: 分割选项-右耳
1497
+ # @type RightEar: Boolean
1498
+ # @param Face: 分割选项-面部(不包含眼、耳、口、鼻等五官及头发。)
1499
+ # @type Face: Boolean
1500
+ # @param Head: 复合分割选项-头部(包含所有的头部元素,相关装饰除外)
1501
+ # @type Head: Boolean
1502
+ # @param Body: 分割选项-身体(包含脖子)
1503
+ # @type Body: Boolean
1504
+ # @param Hat: 分割选项-帽子
1505
+ # @type Hat: Boolean
1506
+ # @param Headdress: 分割选项-头饰
1507
+ # @type Headdress: Boolean
1508
+ # @param Earrings: 分割选项-耳环
1509
+ # @type Earrings: Boolean
1510
+ # @param Necklace: 分割选项-项链
1511
+ # @type Necklace: Boolean
1512
+ # @param Belongings: 分割选项-随身物品( 例如伞、包、手机等。 )
1513
+ # @type Belongings: Boolean
1514
+
1515
+ attr_accessor :Background, :Hair, :LeftEyebrow, :RightEyebrow, :LeftEye, :RightEye, :Nose, :UpperLip, :LowerLip, :Tooth, :Mouth, :LeftEar, :RightEar, :Face, :Head, :Body, :Hat, :Headdress, :Earrings, :Necklace, :Belongings
1516
+
1517
+ def initialize(background=nil, hair=nil, lefteyebrow=nil, righteyebrow=nil, lefteye=nil, righteye=nil, nose=nil, upperlip=nil, lowerlip=nil, tooth=nil, mouth=nil, leftear=nil, rightear=nil, face=nil, head=nil, body=nil, hat=nil, headdress=nil, earrings=nil, necklace=nil, belongings=nil)
1518
+ @Background = background
1519
+ @Hair = hair
1520
+ @LeftEyebrow = lefteyebrow
1521
+ @RightEyebrow = righteyebrow
1522
+ @LeftEye = lefteye
1523
+ @RightEye = righteye
1524
+ @Nose = nose
1525
+ @UpperLip = upperlip
1526
+ @LowerLip = lowerlip
1527
+ @Tooth = tooth
1528
+ @Mouth = mouth
1529
+ @LeftEar = leftear
1530
+ @RightEar = rightear
1531
+ @Face = face
1532
+ @Head = head
1533
+ @Body = body
1534
+ @Hat = hat
1535
+ @Headdress = headdress
1536
+ @Earrings = earrings
1537
+ @Necklace = necklace
1538
+ @Belongings = belongings
1539
+ end
1540
+
1541
+ def deserialize(params)
1542
+ @Background = params['Background']
1543
+ @Hair = params['Hair']
1544
+ @LeftEyebrow = params['LeftEyebrow']
1545
+ @RightEyebrow = params['RightEyebrow']
1546
+ @LeftEye = params['LeftEye']
1547
+ @RightEye = params['RightEye']
1548
+ @Nose = params['Nose']
1549
+ @UpperLip = params['UpperLip']
1550
+ @LowerLip = params['LowerLip']
1551
+ @Tooth = params['Tooth']
1552
+ @Mouth = params['Mouth']
1553
+ @LeftEar = params['LeftEar']
1554
+ @RightEar = params['RightEar']
1555
+ @Face = params['Face']
1556
+ @Head = params['Head']
1557
+ @Body = params['Body']
1558
+ @Hat = params['Hat']
1559
+ @Headdress = params['Headdress']
1560
+ @Earrings = params['Earrings']
1561
+ @Necklace = params['Necklace']
1562
+ @Belongings = params['Belongings']
1563
+ end
1564
+ end
1565
+
1566
+ # TerminateSegmentationTask请求参数结构体
1567
+ class TerminateSegmentationTaskRequest < TencentCloud::Common::AbstractModel
1568
+ # @param TaskID: 在提交分割任务成功时返回的任务标识ID。
1569
+ # @type TaskID: String
1570
+
1571
+ attr_accessor :TaskID
1572
+
1573
+ def initialize(taskid=nil)
1574
+ @TaskID = taskid
1575
+ end
1576
+
1577
+ def deserialize(params)
1578
+ @TaskID = params['TaskID']
1579
+ end
1580
+ end
1581
+
1582
+ # TerminateSegmentationTask返回参数结构体
1583
+ class TerminateSegmentationTaskResponse < TencentCloud::Common::AbstractModel
1584
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1585
+ # @type RequestId: String
1586
+
1587
+ attr_accessor :RequestId
1588
+
1589
+ def initialize(requestid=nil)
1590
+ @RequestId = requestid
1591
+ end
1592
+
1593
+ def deserialize(params)
1594
+ @RequestId = params['RequestId']
1595
+ end
1596
+ end
1597
+
1598
+ # 人体轨迹信息
1599
+ class Trace < TencentCloud::Common::AbstractModel
1600
+ # @param Images: 人体轨迹图片 Base64 数组。
1601
+ # 数组长度最小为1最大为5。
1602
+ # 单个图片 base64 编码后大小不可超过2M。
1603
+ # 支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
1604
+ # @type Images: Array
1605
+ # @param Urls: 人体轨迹图片 Url 数组。
1606
+ # 数组长度最小为1最大为5。
1607
+ # 单个图片 base64 编码后大小不可超过2M。
1608
+ # Urls、Images必须提供一个,如果都提供,只使用 Urls。
1609
+ # 图片存储于腾讯云的Url可保障更高下载速度和稳定性,建议图片存储于腾讯云。
1610
+ # 非腾讯云存储的Url速度和稳定性可能受一定影响。
1611
+ # 支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
1612
+ # @type Urls: Array
1613
+ # @param BodyRects: 若输入的Images 和 Urls 是已经裁剪后的人体小图,则可以忽略本参数。
1614
+ # 若否,或图片中包含多个人体,则需要通过本参数来指定图片中的人体框。
1615
+ # 顺序对应 Images 或 Urls 中的顺序。
1616
+ # 当不输入本参数时,我们将认为输入图片已是经过裁剪后的人体小图,不会进行人体检测而直接进行特征提取处理。
1617
+ # @type BodyRects: Array
1618
+
1619
+ attr_accessor :Images, :Urls, :BodyRects
1620
+
1621
+ def initialize(images=nil, urls=nil, bodyrects=nil)
1622
+ @Images = images
1623
+ @Urls = urls
1624
+ @BodyRects = bodyrects
1625
+ end
1626
+
1627
+ def deserialize(params)
1628
+ @Images = params['Images']
1629
+ @Urls = params['Urls']
1630
+ unless params['BodyRects'].nil?
1631
+ @BodyRects = []
1632
+ params['BodyRects'].each do |i|
1633
+ bodyrect_tmp = BodyRect.new
1634
+ bodyrect_tmp.deserialize(i)
1635
+ @BodyRects << bodyrect_tmp
1636
+ end
1637
+ end
1638
+ end
1639
+ end
1640
+
1641
+ # 人体轨迹信息。
1642
+ class TraceInfo < TencentCloud::Common::AbstractModel
1643
+ # @param TraceId: 人体轨迹ID。
1644
+ # @type TraceId: String
1645
+ # @param BodyIds: 包含的人体轨迹图片Id列表。
1646
+ # @type BodyIds: Array
1647
+
1648
+ attr_accessor :TraceId, :BodyIds
1649
+
1650
+ def initialize(traceid=nil, bodyids=nil)
1651
+ @TraceId = traceid
1652
+ @BodyIds = bodyids
1653
+ end
1654
+
1655
+ def deserialize(params)
1656
+ @TraceId = params['TraceId']
1657
+ @BodyIds = params['BodyIds']
1658
+ end
1659
+ end
1660
+
1661
+ # 上衣属性信息
1662
+ class UpperBodyCloth < TencentCloud::Common::AbstractModel
1663
+ # @param Texture: 上衣纹理信息。
1664
+ # @type Texture: :class:`Tencentcloud::Bda.v20200324.models.UpperBodyClothTexture`
1665
+ # @param Color: 上衣颜色信息。
1666
+ # @type Color: :class:`Tencentcloud::Bda.v20200324.models.UpperBodyClothColor`
1667
+ # @param Sleeve: 上衣衣袖信息。
1668
+ # @type Sleeve: :class:`Tencentcloud::Bda.v20200324.models.UpperBodyClothSleeve`
1669
+
1670
+ attr_accessor :Texture, :Color, :Sleeve
1671
+
1672
+ def initialize(texture=nil, color=nil, sleeve=nil)
1673
+ @Texture = texture
1674
+ @Color = color
1675
+ @Sleeve = sleeve
1676
+ end
1677
+
1678
+ def deserialize(params)
1679
+ unless params['Texture'].nil?
1680
+ @Texture = UpperBodyClothTexture.new
1681
+ @Texture.deserialize(params['Texture'])
1682
+ end
1683
+ unless params['Color'].nil?
1684
+ @Color = UpperBodyClothColor.new
1685
+ @Color.deserialize(params['Color'])
1686
+ end
1687
+ unless params['Sleeve'].nil?
1688
+ @Sleeve = UpperBodyClothSleeve.new
1689
+ @Sleeve.deserialize(params['Sleeve'])
1690
+ end
1691
+ end
1692
+ end
1693
+
1694
+ # 上衣颜色信息。
1695
+ class UpperBodyClothColor < TencentCloud::Common::AbstractModel
1696
+ # @param Type: 上衣颜色信息,返回值为以下集合中的一个 {红色系, 黄色系, 绿色系, 蓝色系, 黑色系, 灰白色系。
1697
+ # @type Type: String
1698
+ # @param Probability: Type识别概率值,[0.0,1.0],代表判断正确的概率。如0.8则代表有Type值有80%概率正确。
1699
+ # @type Probability: Float
1700
+
1701
+ attr_accessor :Type, :Probability
1702
+
1703
+ def initialize(type=nil, probability=nil)
1704
+ @Type = type
1705
+ @Probability = probability
1706
+ end
1707
+
1708
+ def deserialize(params)
1709
+ @Type = params['Type']
1710
+ @Probability = params['Probability']
1711
+ end
1712
+ end
1713
+
1714
+ # 上衣衣袖信息。
1715
+ class UpperBodyClothSleeve < TencentCloud::Common::AbstractModel
1716
+ # @param Type: 上衣衣袖信息, 返回值为以下集合中的一个 {长袖, 短袖}。
1717
+ # @type Type: String
1718
+ # @param Probability: Type识别概率值,[0.0,1.0],代表判断正确的概率。如0.8则代表有Type值有80%概率正确。
1719
+ # @type Probability: Float
1720
+
1721
+ attr_accessor :Type, :Probability
1722
+
1723
+ def initialize(type=nil, probability=nil)
1724
+ @Type = type
1725
+ @Probability = probability
1726
+ end
1727
+
1728
+ def deserialize(params)
1729
+ @Type = params['Type']
1730
+ @Probability = params['Probability']
1731
+ end
1732
+ end
1733
+
1734
+ # 上衣纹理信息。
1735
+ class UpperBodyClothTexture < TencentCloud::Common::AbstractModel
1736
+ # @param Type: 上衣纹理信息,返回值为以下集合中的一个, {纯色, 格子, 大色块}。
1737
+ # @type Type: String
1738
+ # @param Probability: Type识别概率值,[0.0,1.0], 代表判断正确的概率。如0.8则代表有Type值有80%概率正确。
1739
+ # @type Probability: Float
1740
+
1741
+ attr_accessor :Type, :Probability
1742
+
1743
+ def initialize(type=nil, probability=nil)
1744
+ @Type = type
1745
+ @Probability = probability
1746
+ end
1747
+
1748
+ def deserialize(params)
1749
+ @Type = params['Type']
1750
+ @Probability = params['Probability']
1751
+ end
1752
+ end
1753
+
1754
+ # 视频基础信息
1755
+ class VideoBasicInformation < TencentCloud::Common::AbstractModel
1756
+ # @param FrameWidth: 视频宽度
1757
+ # @type FrameWidth: Integer
1758
+ # @param FrameHeight: 视频高度
1759
+ # @type FrameHeight: Integer
1760
+ # @param FramesPerSecond: 视频帧速率(FPS)
1761
+ # @type FramesPerSecond: Integer
1762
+ # @param Duration: 视频时长
1763
+ # @type Duration: Float
1764
+ # @param TotalFrames: 视频帧数
1765
+ # @type TotalFrames: Integer
1766
+
1767
+ attr_accessor :FrameWidth, :FrameHeight, :FramesPerSecond, :Duration, :TotalFrames
1768
+
1769
+ def initialize(framewidth=nil, frameheight=nil, framespersecond=nil, duration=nil, totalframes=nil)
1770
+ @FrameWidth = framewidth
1771
+ @FrameHeight = frameheight
1772
+ @FramesPerSecond = framespersecond
1773
+ @Duration = duration
1774
+ @TotalFrames = totalframes
1775
+ end
1776
+
1777
+ def deserialize(params)
1778
+ @FrameWidth = params['FrameWidth']
1779
+ @FrameHeight = params['FrameHeight']
1780
+ @FramesPerSecond = params['FramesPerSecond']
1781
+ @Duration = params['Duration']
1782
+ @TotalFrames = params['TotalFrames']
1783
+ end
1784
+ end
1785
+
1786
+ end
1787
+ end
1788
+ end
1789
+