DetectFaceRequest.php 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233
  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. * DetectFace请求参数结构体
  21. *
  22. * @method integer getMaxFaceNum() 获取最多处理的人脸数目。默认值为1(仅检测图片中面积最大的那张人脸),最大值为120。
  23. 此参数用于控制处理待检测图片中的人脸个数,值越小,处理速度越快。
  24. * @method void setMaxFaceNum(integer $MaxFaceNum) 设置最多处理的人脸数目。默认值为1(仅检测图片中面积最大的那张人脸),最大值为120。
  25. 此参数用于控制处理待检测图片中的人脸个数,值越小,处理速度越快。
  26. * @method integer getMinFaceSize() 获取人脸长和宽的最小尺寸,单位为像素。
  27. 默认为34。建议不低于34。
  28. 低于MinFaceSize值的人脸不会被检测。
  29. * @method void setMinFaceSize(integer $MinFaceSize) 设置人脸长和宽的最小尺寸,单位为像素。
  30. 默认为34。建议不低于34。
  31. 低于MinFaceSize值的人脸不会被检测。
  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 getNeedFaceAttributes() 获取是否需要返回人脸属性信息(FaceAttributesInfo)。0 为不需要返回,1 为需要返回。默认为 0。
  51. 非 1 值均视为不需要返回,此时 FaceAttributesInfo 不具备参考意义。
  52. 最多返回面积最大的 5 张人脸属性信息,超过 5 张人脸(第 6 张及以后的人脸)的 FaceAttributesInfo 不具备参考意义。
  53. 提取人脸属性信息较为耗时,如不需要人脸属性信息,建议关闭此项功能,加快人脸检测速度。
  54. * @method void setNeedFaceAttributes(integer $NeedFaceAttributes) 设置是否需要返回人脸属性信息(FaceAttributesInfo)。0 为不需要返回,1 为需要返回。默认为 0。
  55. 非 1 值均视为不需要返回,此时 FaceAttributesInfo 不具备参考意义。
  56. 最多返回面积最大的 5 张人脸属性信息,超过 5 张人脸(第 6 张及以后的人脸)的 FaceAttributesInfo 不具备参考意义。
  57. 提取人脸属性信息较为耗时,如不需要人脸属性信息,建议关闭此项功能,加快人脸检测速度。
  58. * @method integer getNeedQualityDetection() 获取是否开启质量检测。0 为关闭,1 为开启。默认为 0。
  59. 非 1 值均视为不进行质量检测。
  60. 最多返回面积最大的 30 张人脸质量分信息,超过 30 张人脸(第 31 张及以后的人脸)的 FaceQualityInfo不具备参考意义。
  61. 建议:人脸入库操作建议开启此功能。
  62. * @method void setNeedQualityDetection(integer $NeedQualityDetection) 设置是否开启质量检测。0 为关闭,1 为开启。默认为 0。
  63. 非 1 值均视为不进行质量检测。
  64. 最多返回面积最大的 30 张人脸质量分信息,超过 30 张人脸(第 31 张及以后的人脸)的 FaceQualityInfo不具备参考意义。
  65. 建议:人脸入库操作建议开启此功能。
  66. * @method string getFaceModelVersion() 获取人脸识别服务所用的算法模型版本。
  67. 目前入参支持 “2.0”和“3.0“ 两个输入。
  68. 2020年4月2日开始,默认为“3.0”,之前使用过本接口的账号若未填写本参数默认为“2.0”。
  69. 2020年11月26日后开通服务的账号仅支持输入“3.0”。
  70. 不同算法模型版本对应的人脸识别算法不同,新版本的整体效果会优于旧版本,建议使用“3.0”版本。
  71. * @method void setFaceModelVersion(string $FaceModelVersion) 设置人脸识别服务所用的算法模型版本。
  72. 目前入参支持 “2.0”和“3.0“ 两个输入。
  73. 2020年4月2日开始,默认为“3.0”,之前使用过本接口的账号若未填写本参数默认为“2.0”。
  74. 2020年11月26日后开通服务的账号仅支持输入“3.0”。
  75. 不同算法模型版本对应的人脸识别算法不同,新版本的整体效果会优于旧版本,建议使用“3.0”版本。
  76. * @method integer getNeedRotateDetection() 获取是否开启图片旋转识别支持。0为不开启,1为开启。默认为0。本参数的作用为,当图片中的人脸被旋转且图片没有exif信息时,如果不开启图片旋转识别支持则无法正确检测、识别图片中的人脸。若您确认图片包含exif信息或者您确认输入图中人脸不会出现被旋转情况,请不要开启本参数。开启后,整体耗时将可能增加数百毫秒。
  77. * @method void setNeedRotateDetection(integer $NeedRotateDetection) 设置是否开启图片旋转识别支持。0为不开启,1为开启。默认为0。本参数的作用为,当图片中的人脸被旋转且图片没有exif信息时,如果不开启图片旋转识别支持则无法正确检测、识别图片中的人脸。若您确认图片包含exif信息或者您确认输入图中人脸不会出现被旋转情况,请不要开启本参数。开启后,整体耗时将可能增加数百毫秒。
  78. */
  79. class DetectFaceRequest extends AbstractModel
  80. {
  81. /**
  82. * @var integer 最多处理的人脸数目。默认值为1(仅检测图片中面积最大的那张人脸),最大值为120。
  83. 此参数用于控制处理待检测图片中的人脸个数,值越小,处理速度越快。
  84. */
  85. public $MaxFaceNum;
  86. /**
  87. * @var integer 人脸长和宽的最小尺寸,单位为像素。
  88. 默认为34。建议不低于34。
  89. 低于MinFaceSize值的人脸不会被检测。
  90. */
  91. public $MinFaceSize;
  92. /**
  93. * @var string 图片 base64 数据,base64 编码后大小不可超过5M。
  94. jpg格式长边像素不可超过4000,其他格式图片长边像素不可超2000。
  95. 支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
  96. */
  97. public $Image;
  98. /**
  99. * @var string 图片的 Url 。对应图片 base64 编码后大小不可超过5M。
  100. jpg格式长边像素不可超过4000,其他格式图片长边像素不可超2000。
  101. Url、Image必须提供一个,如果都提供,只使用 Url。
  102. 图片存储于腾讯云的Url可保障更高下载速度和稳定性,建议图片存储于腾讯云。
  103. 非腾讯云存储的Url速度和稳定性可能受一定影响。
  104. 支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
  105. */
  106. public $Url;
  107. /**
  108. * @var integer 是否需要返回人脸属性信息(FaceAttributesInfo)。0 为不需要返回,1 为需要返回。默认为 0。
  109. 非 1 值均视为不需要返回,此时 FaceAttributesInfo 不具备参考意义。
  110. 最多返回面积最大的 5 张人脸属性信息,超过 5 张人脸(第 6 张及以后的人脸)的 FaceAttributesInfo 不具备参考意义。
  111. 提取人脸属性信息较为耗时,如不需要人脸属性信息,建议关闭此项功能,加快人脸检测速度。
  112. */
  113. public $NeedFaceAttributes;
  114. /**
  115. * @var integer 是否开启质量检测。0 为关闭,1 为开启。默认为 0。
  116. 非 1 值均视为不进行质量检测。
  117. 最多返回面积最大的 30 张人脸质量分信息,超过 30 张人脸(第 31 张及以后的人脸)的 FaceQualityInfo不具备参考意义。
  118. 建议:人脸入库操作建议开启此功能。
  119. */
  120. public $NeedQualityDetection;
  121. /**
  122. * @var string 人脸识别服务所用的算法模型版本。
  123. 目前入参支持 “2.0”和“3.0“ 两个输入。
  124. 2020年4月2日开始,默认为“3.0”,之前使用过本接口的账号若未填写本参数默认为“2.0”。
  125. 2020年11月26日后开通服务的账号仅支持输入“3.0”。
  126. 不同算法模型版本对应的人脸识别算法不同,新版本的整体效果会优于旧版本,建议使用“3.0”版本。
  127. */
  128. public $FaceModelVersion;
  129. /**
  130. * @var integer 是否开启图片旋转识别支持。0为不开启,1为开启。默认为0。本参数的作用为,当图片中的人脸被旋转且图片没有exif信息时,如果不开启图片旋转识别支持则无法正确检测、识别图片中的人脸。若您确认图片包含exif信息或者您确认输入图中人脸不会出现被旋转情况,请不要开启本参数。开启后,整体耗时将可能增加数百毫秒。
  131. */
  132. public $NeedRotateDetection;
  133. /**
  134. * @param integer $MaxFaceNum 最多处理的人脸数目。默认值为1(仅检测图片中面积最大的那张人脸),最大值为120。
  135. 此参数用于控制处理待检测图片中的人脸个数,值越小,处理速度越快。
  136. * @param integer $MinFaceSize 人脸长和宽的最小尺寸,单位为像素。
  137. 默认为34。建议不低于34。
  138. 低于MinFaceSize值的人脸不会被检测。
  139. * @param string $Image 图片 base64 数据,base64 编码后大小不可超过5M。
  140. jpg格式长边像素不可超过4000,其他格式图片长边像素不可超2000。
  141. 支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
  142. * @param string $Url 图片的 Url 。对应图片 base64 编码后大小不可超过5M。
  143. jpg格式长边像素不可超过4000,其他格式图片长边像素不可超2000。
  144. Url、Image必须提供一个,如果都提供,只使用 Url。
  145. 图片存储于腾讯云的Url可保障更高下载速度和稳定性,建议图片存储于腾讯云。
  146. 非腾讯云存储的Url速度和稳定性可能受一定影响。
  147. 支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
  148. * @param integer $NeedFaceAttributes 是否需要返回人脸属性信息(FaceAttributesInfo)。0 为不需要返回,1 为需要返回。默认为 0。
  149. 非 1 值均视为不需要返回,此时 FaceAttributesInfo 不具备参考意义。
  150. 最多返回面积最大的 5 张人脸属性信息,超过 5 张人脸(第 6 张及以后的人脸)的 FaceAttributesInfo 不具备参考意义。
  151. 提取人脸属性信息较为耗时,如不需要人脸属性信息,建议关闭此项功能,加快人脸检测速度。
  152. * @param integer $NeedQualityDetection 是否开启质量检测。0 为关闭,1 为开启。默认为 0。
  153. 非 1 值均视为不进行质量检测。
  154. 最多返回面积最大的 30 张人脸质量分信息,超过 30 张人脸(第 31 张及以后的人脸)的 FaceQualityInfo不具备参考意义。
  155. 建议:人脸入库操作建议开启此功能。
  156. * @param string $FaceModelVersion 人脸识别服务所用的算法模型版本。
  157. 目前入参支持 “2.0”和“3.0“ 两个输入。
  158. 2020年4月2日开始,默认为“3.0”,之前使用过本接口的账号若未填写本参数默认为“2.0”。
  159. 2020年11月26日后开通服务的账号仅支持输入“3.0”。
  160. 不同算法模型版本对应的人脸识别算法不同,新版本的整体效果会优于旧版本,建议使用“3.0”版本。
  161. * @param integer $NeedRotateDetection 是否开启图片旋转识别支持。0为不开启,1为开启。默认为0。本参数的作用为,当图片中的人脸被旋转且图片没有exif信息时,如果不开启图片旋转识别支持则无法正确检测、识别图片中的人脸。若您确认图片包含exif信息或者您确认输入图中人脸不会出现被旋转情况,请不要开启本参数。开启后,整体耗时将可能增加数百毫秒。
  162. */
  163. function __construct()
  164. {
  165. }
  166. /**
  167. * For internal only. DO NOT USE IT.
  168. */
  169. public function deserialize($param)
  170. {
  171. if ($param === null) {
  172. return;
  173. }
  174. if (array_key_exists("MaxFaceNum",$param) and $param["MaxFaceNum"] !== null) {
  175. $this->MaxFaceNum = $param["MaxFaceNum"];
  176. }
  177. if (array_key_exists("MinFaceSize",$param) and $param["MinFaceSize"] !== null) {
  178. $this->MinFaceSize = $param["MinFaceSize"];
  179. }
  180. if (array_key_exists("Image",$param) and $param["Image"] !== null) {
  181. $this->Image = $param["Image"];
  182. }
  183. if (array_key_exists("Url",$param) and $param["Url"] !== null) {
  184. $this->Url = $param["Url"];
  185. }
  186. if (array_key_exists("NeedFaceAttributes",$param) and $param["NeedFaceAttributes"] !== null) {
  187. $this->NeedFaceAttributes = $param["NeedFaceAttributes"];
  188. }
  189. if (array_key_exists("NeedQualityDetection",$param) and $param["NeedQualityDetection"] !== null) {
  190. $this->NeedQualityDetection = $param["NeedQualityDetection"];
  191. }
  192. if (array_key_exists("FaceModelVersion",$param) and $param["FaceModelVersion"] !== null) {
  193. $this->FaceModelVersion = $param["FaceModelVersion"];
  194. }
  195. if (array_key_exists("NeedRotateDetection",$param) and $param["NeedRotateDetection"] !== null) {
  196. $this->NeedRotateDetection = $param["NeedRotateDetection"];
  197. }
  198. }
  199. }