CreatePersonRequest.php 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258
  1. <?php
  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. namespace TencentCloud\Iai\V20200303\Models;
  18. use TencentCloud\Common\AbstractModel;
  19. /**
  20. * CreatePerson请求参数结构体
  21. *
  22. * @method string getGroupId() 获取待加入的人员库ID,取值为创建人员库接口中的GroupId
  23. * @method void setGroupId(string $GroupId) 设置待加入的人员库ID,取值为创建人员库接口中的GroupId
  24. * @method string getPersonName() 获取人员名称。[1,60]个字符,可修改,可重复。
  25. * @method void setPersonName(string $PersonName) 设置人员名称。[1,60]个字符,可修改,可重复。
  26. * @method string getPersonId() 获取人员ID,单个腾讯云账号下不可修改,不可重复。支持英文、数字、-%@#&_,长度限制64B。
  27. * @method void setPersonId(string $PersonId) 设置人员ID,单个腾讯云账号下不可修改,不可重复。支持英文、数字、-%@#&_,长度限制64B。
  28. * @method integer getGender() 获取0代表未填写,1代表男性,2代表女性。
  29. * @method void setGender(integer $Gender) 设置0代表未填写,1代表男性,2代表女性。
  30. * @method array getPersonExDescriptionInfos() 获取人员描述字段内容,key-value。[0,60]个字符,可修改,可重复。
  31. * @method void setPersonExDescriptionInfos(array $PersonExDescriptionInfos) 设置人员描述字段内容,key-value。[0,60]个字符,可修改,可重复。
  32. * @method string getImage() 获取图片 base64 数据,base64 编码后大小不可超过5M。
  33. jpg格式长边像素不可超过4000,其他格式图片长边像素不可超2000。
  34. 支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
  35. * @method void setImage(string $Image) 设置图片 base64 数据,base64 编码后大小不可超过5M。
  36. jpg格式长边像素不可超过4000,其他格式图片长边像素不可超2000。
  37. 支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
  38. * @method string getUrl() 获取图片的 Url 。对应图片 base64 编码后大小不可超过5M。
  39. jpg格式长边像素不可超过4000,其他格式图片长边像素不可超2000。
  40. Url、Image必须提供一个,如果都提供,只使用 Url。
  41. 图片存储于腾讯云的Url可保障更高下载速度和稳定性,建议图片存储于腾讯云。
  42. 非腾讯云存储的Url速度和稳定性可能受一定影响。
  43. 支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
  44. * @method void setUrl(string $Url) 设置图片的 Url 。对应图片 base64 编码后大小不可超过5M。
  45. jpg格式长边像素不可超过4000,其他格式图片长边像素不可超2000。
  46. Url、Image必须提供一个,如果都提供,只使用 Url。
  47. 图片存储于腾讯云的Url可保障更高下载速度和稳定性,建议图片存储于腾讯云。
  48. 非腾讯云存储的Url速度和稳定性可能受一定影响。
  49. 支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
  50. * @method integer getUniquePersonControl() 获取此参数用于控制判断 Image 或 Url 中图片包含的人脸,是否在人员库中已有疑似的同一人。
  51. 如果判断为已有相同人在人员库中,则不会创建新的人员,返回疑似同一人的人员信息。
  52. 如果判断没有,则完成创建人员。
  53. 0: 不进行判断,无论是否有疑似同一人在库中均完成入库;
  54. 1:较低的同一人判断要求(百一误识别率);
  55. 2: 一般的同一人判断要求(千一误识别率);
  56. 3: 较高的同一人判断要求(万一误识别率);
  57. 4: 很高的同一人判断要求(十万一误识别率)。
  58. 默认 0。
  59. 注: 要求越高,则疑似同一人的概率越小。不同要求对应的误识别率仅为参考值,您可以根据实际情况调整。
  60. * @method void setUniquePersonControl(integer $UniquePersonControl) 设置此参数用于控制判断 Image 或 Url 中图片包含的人脸,是否在人员库中已有疑似的同一人。
  61. 如果判断为已有相同人在人员库中,则不会创建新的人员,返回疑似同一人的人员信息。
  62. 如果判断没有,则完成创建人员。
  63. 0: 不进行判断,无论是否有疑似同一人在库中均完成入库;
  64. 1:较低的同一人判断要求(百一误识别率);
  65. 2: 一般的同一人判断要求(千一误识别率);
  66. 3: 较高的同一人判断要求(万一误识别率);
  67. 4: 很高的同一人判断要求(十万一误识别率)。
  68. 默认 0。
  69. 注: 要求越高,则疑似同一人的概率越小。不同要求对应的误识别率仅为参考值,您可以根据实际情况调整。
  70. * @method integer getQualityControl() 获取图片质量控制。
  71. 0: 不进行控制;
  72. 1:较低的质量要求,图像存在非常模糊,眼睛鼻子嘴巴遮挡至少其中一种或多种的情况;
  73. 2: 一般的质量要求,图像存在偏亮,偏暗,模糊或一般模糊,眉毛遮挡,脸颊遮挡,下巴遮挡,至少其中三种的情况;
  74. 3: 较高的质量要求,图像存在偏亮,偏暗,一般模糊,眉毛遮挡,脸颊遮挡,下巴遮挡,其中一到两种的情况;
  75. 4: 很高的质量要求,各个维度均为最好或最多在某一维度上存在轻微问题;
  76. 默认 0。
  77. 若图片质量不满足要求,则返回结果中会提示图片质量检测不符要求。
  78. * @method void setQualityControl(integer $QualityControl) 设置图片质量控制。
  79. 0: 不进行控制;
  80. 1:较低的质量要求,图像存在非常模糊,眼睛鼻子嘴巴遮挡至少其中一种或多种的情况;
  81. 2: 一般的质量要求,图像存在偏亮,偏暗,模糊或一般模糊,眉毛遮挡,脸颊遮挡,下巴遮挡,至少其中三种的情况;
  82. 3: 较高的质量要求,图像存在偏亮,偏暗,一般模糊,眉毛遮挡,脸颊遮挡,下巴遮挡,其中一到两种的情况;
  83. 4: 很高的质量要求,各个维度均为最好或最多在某一维度上存在轻微问题;
  84. 默认 0。
  85. 若图片质量不满足要求,则返回结果中会提示图片质量检测不符要求。
  86. * @method integer getNeedRotateDetection() 获取是否开启图片旋转识别支持。0为不开启,1为开启。默认为0。本参数的作用为,当图片中的人脸被旋转且图片没有exif信息时,如果不开启图片旋转识别支持则无法正确检测、识别图片中的人脸。若您确认图片包含exif信息或者您确认输入图中人脸不会出现被旋转情况,请不要开启本参数。开启后,整体耗时将可能增加数百毫秒。
  87. * @method void setNeedRotateDetection(integer $NeedRotateDetection) 设置是否开启图片旋转识别支持。0为不开启,1为开启。默认为0。本参数的作用为,当图片中的人脸被旋转且图片没有exif信息时,如果不开启图片旋转识别支持则无法正确检测、识别图片中的人脸。若您确认图片包含exif信息或者您确认输入图中人脸不会出现被旋转情况,请不要开启本参数。开启后,整体耗时将可能增加数百毫秒。
  88. */
  89. class CreatePersonRequest extends AbstractModel
  90. {
  91. /**
  92. * @var string 待加入的人员库ID,取值为创建人员库接口中的GroupId
  93. */
  94. public $GroupId;
  95. /**
  96. * @var string 人员名称。[1,60]个字符,可修改,可重复。
  97. */
  98. public $PersonName;
  99. /**
  100. * @var string 人员ID,单个腾讯云账号下不可修改,不可重复。支持英文、数字、-%@#&_,长度限制64B。
  101. */
  102. public $PersonId;
  103. /**
  104. * @var integer 0代表未填写,1代表男性,2代表女性。
  105. */
  106. public $Gender;
  107. /**
  108. * @var array 人员描述字段内容,key-value。[0,60]个字符,可修改,可重复。
  109. */
  110. public $PersonExDescriptionInfos;
  111. /**
  112. * @var string 图片 base64 数据,base64 编码后大小不可超过5M。
  113. jpg格式长边像素不可超过4000,其他格式图片长边像素不可超2000。
  114. 支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
  115. */
  116. public $Image;
  117. /**
  118. * @var string 图片的 Url 。对应图片 base64 编码后大小不可超过5M。
  119. jpg格式长边像素不可超过4000,其他格式图片长边像素不可超2000。
  120. Url、Image必须提供一个,如果都提供,只使用 Url。
  121. 图片存储于腾讯云的Url可保障更高下载速度和稳定性,建议图片存储于腾讯云。
  122. 非腾讯云存储的Url速度和稳定性可能受一定影响。
  123. 支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
  124. */
  125. public $Url;
  126. /**
  127. * @var integer 此参数用于控制判断 Image 或 Url 中图片包含的人脸,是否在人员库中已有疑似的同一人。
  128. 如果判断为已有相同人在人员库中,则不会创建新的人员,返回疑似同一人的人员信息。
  129. 如果判断没有,则完成创建人员。
  130. 0: 不进行判断,无论是否有疑似同一人在库中均完成入库;
  131. 1:较低的同一人判断要求(百一误识别率);
  132. 2: 一般的同一人判断要求(千一误识别率);
  133. 3: 较高的同一人判断要求(万一误识别率);
  134. 4: 很高的同一人判断要求(十万一误识别率)。
  135. 默认 0。
  136. 注: 要求越高,则疑似同一人的概率越小。不同要求对应的误识别率仅为参考值,您可以根据实际情况调整。
  137. */
  138. public $UniquePersonControl;
  139. /**
  140. * @var integer 图片质量控制。
  141. 0: 不进行控制;
  142. 1:较低的质量要求,图像存在非常模糊,眼睛鼻子嘴巴遮挡至少其中一种或多种的情况;
  143. 2: 一般的质量要求,图像存在偏亮,偏暗,模糊或一般模糊,眉毛遮挡,脸颊遮挡,下巴遮挡,至少其中三种的情况;
  144. 3: 较高的质量要求,图像存在偏亮,偏暗,一般模糊,眉毛遮挡,脸颊遮挡,下巴遮挡,其中一到两种的情况;
  145. 4: 很高的质量要求,各个维度均为最好或最多在某一维度上存在轻微问题;
  146. 默认 0。
  147. 若图片质量不满足要求,则返回结果中会提示图片质量检测不符要求。
  148. */
  149. public $QualityControl;
  150. /**
  151. * @var integer 是否开启图片旋转识别支持。0为不开启,1为开启。默认为0。本参数的作用为,当图片中的人脸被旋转且图片没有exif信息时,如果不开启图片旋转识别支持则无法正确检测、识别图片中的人脸。若您确认图片包含exif信息或者您确认输入图中人脸不会出现被旋转情况,请不要开启本参数。开启后,整体耗时将可能增加数百毫秒。
  152. */
  153. public $NeedRotateDetection;
  154. /**
  155. * @param string $GroupId 待加入的人员库ID,取值为创建人员库接口中的GroupId
  156. * @param string $PersonName 人员名称。[1,60]个字符,可修改,可重复。
  157. * @param string $PersonId 人员ID,单个腾讯云账号下不可修改,不可重复。支持英文、数字、-%@#&_,长度限制64B。
  158. * @param integer $Gender 0代表未填写,1代表男性,2代表女性。
  159. * @param array $PersonExDescriptionInfos 人员描述字段内容,key-value。[0,60]个字符,可修改,可重复。
  160. * @param string $Image 图片 base64 数据,base64 编码后大小不可超过5M。
  161. jpg格式长边像素不可超过4000,其他格式图片长边像素不可超2000。
  162. 支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
  163. * @param string $Url 图片的 Url 。对应图片 base64 编码后大小不可超过5M。
  164. jpg格式长边像素不可超过4000,其他格式图片长边像素不可超2000。
  165. Url、Image必须提供一个,如果都提供,只使用 Url。
  166. 图片存储于腾讯云的Url可保障更高下载速度和稳定性,建议图片存储于腾讯云。
  167. 非腾讯云存储的Url速度和稳定性可能受一定影响。
  168. 支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
  169. * @param integer $UniquePersonControl 此参数用于控制判断 Image 或 Url 中图片包含的人脸,是否在人员库中已有疑似的同一人。
  170. 如果判断为已有相同人在人员库中,则不会创建新的人员,返回疑似同一人的人员信息。
  171. 如果判断没有,则完成创建人员。
  172. 0: 不进行判断,无论是否有疑似同一人在库中均完成入库;
  173. 1:较低的同一人判断要求(百一误识别率);
  174. 2: 一般的同一人判断要求(千一误识别率);
  175. 3: 较高的同一人判断要求(万一误识别率);
  176. 4: 很高的同一人判断要求(十万一误识别率)。
  177. 默认 0。
  178. 注: 要求越高,则疑似同一人的概率越小。不同要求对应的误识别率仅为参考值,您可以根据实际情况调整。
  179. * @param integer $QualityControl 图片质量控制。
  180. 0: 不进行控制;
  181. 1:较低的质量要求,图像存在非常模糊,眼睛鼻子嘴巴遮挡至少其中一种或多种的情况;
  182. 2: 一般的质量要求,图像存在偏亮,偏暗,模糊或一般模糊,眉毛遮挡,脸颊遮挡,下巴遮挡,至少其中三种的情况;
  183. 3: 较高的质量要求,图像存在偏亮,偏暗,一般模糊,眉毛遮挡,脸颊遮挡,下巴遮挡,其中一到两种的情况;
  184. 4: 很高的质量要求,各个维度均为最好或最多在某一维度上存在轻微问题;
  185. 默认 0。
  186. 若图片质量不满足要求,则返回结果中会提示图片质量检测不符要求。
  187. * @param integer $NeedRotateDetection 是否开启图片旋转识别支持。0为不开启,1为开启。默认为0。本参数的作用为,当图片中的人脸被旋转且图片没有exif信息时,如果不开启图片旋转识别支持则无法正确检测、识别图片中的人脸。若您确认图片包含exif信息或者您确认输入图中人脸不会出现被旋转情况,请不要开启本参数。开启后,整体耗时将可能增加数百毫秒。
  188. */
  189. function __construct()
  190. {
  191. }
  192. /**
  193. * For internal only. DO NOT USE IT.
  194. */
  195. public function deserialize($param)
  196. {
  197. if ($param === null) {
  198. return;
  199. }
  200. if (array_key_exists("GroupId",$param) and $param["GroupId"] !== null) {
  201. $this->GroupId = $param["GroupId"];
  202. }
  203. if (array_key_exists("PersonName",$param) and $param["PersonName"] !== null) {
  204. $this->PersonName = $param["PersonName"];
  205. }
  206. if (array_key_exists("PersonId",$param) and $param["PersonId"] !== null) {
  207. $this->PersonId = $param["PersonId"];
  208. }
  209. if (array_key_exists("Gender",$param) and $param["Gender"] !== null) {
  210. $this->Gender = $param["Gender"];
  211. }
  212. if (array_key_exists("PersonExDescriptionInfos",$param) and $param["PersonExDescriptionInfos"] !== null) {
  213. $this->PersonExDescriptionInfos = [];
  214. foreach ($param["PersonExDescriptionInfos"] as $key => $value){
  215. $obj = new PersonExDescriptionInfo();
  216. $obj->deserialize($value);
  217. array_push($this->PersonExDescriptionInfos, $obj);
  218. }
  219. }
  220. if (array_key_exists("Image",$param) and $param["Image"] !== null) {
  221. $this->Image = $param["Image"];
  222. }
  223. if (array_key_exists("Url",$param) and $param["Url"] !== null) {
  224. $this->Url = $param["Url"];
  225. }
  226. if (array_key_exists("UniquePersonControl",$param) and $param["UniquePersonControl"] !== null) {
  227. $this->UniquePersonControl = $param["UniquePersonControl"];
  228. }
  229. if (array_key_exists("QualityControl",$param) and $param["QualityControl"] !== null) {
  230. $this->QualityControl = $param["QualityControl"];
  231. }
  232. if (array_key_exists("NeedRotateDetection",$param) and $param["NeedRotateDetection"] !== null) {
  233. $this->NeedRotateDetection = $param["NeedRotateDetection"];
  234. }
  235. }
  236. }