FaceDetailAttributesInfo.php 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342
  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\V20180301\Models;
  18. use TencentCloud\Common\AbstractModel;
  19. /**
  20. * 人脸属性信息,根据 FaceAttributesType 输入的类型,返回年龄(Age)、颜值(Beauty)
  21. 情绪(Emotion)、眼睛信息(Eye)、眉毛(Eyebrow)、性别(Gender)
  22. 头发(Hair)、帽子(Hat)、姿态(Headpose)、口罩(Mask)、嘴巴(Mouse)、胡子(Moustache)
  23. 鼻子(Nose)、脸型(Shape)、肤色(Skin)、微笑(Smile)等人脸属性信息。
  24. 若 FaceAttributesType 没有输入相关类型,则FaceDetaiAttributesInfo返回的细项不具备参考意义。
  25. *
  26. * @method integer getAge() 获取年龄 [0,65],其中65代表“65岁及以上”。
  27. FaceAttributesType 不为含Age 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  28. * @method void setAge(integer $Age) 设置年龄 [0,65],其中65代表“65岁及以上”。
  29. FaceAttributesType 不为含Age 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  30. * @method integer getBeauty() 获取美丑打分[0,100]。
  31. FaceAttributesType 不含 Beauty 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  32. * @method void setBeauty(integer $Beauty) 设置美丑打分[0,100]。
  33. FaceAttributesType 不含 Beauty 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  34. * @method AttributeItem getEmotion() 获取情绪,可识别自然、高兴、惊讶、生气、悲伤、厌恶、害怕。
  35. AttributeItem对应的Type为 —— 0:自然,1:高兴,2:惊讶,3:生气,4:悲伤,5:厌恶,6:害怕
  36. FaceAttributesType 不含Emotion 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  37. * @method void setEmotion(AttributeItem $Emotion) 设置情绪,可识别自然、高兴、惊讶、生气、悲伤、厌恶、害怕。
  38. AttributeItem对应的Type为 —— 0:自然,1:高兴,2:惊讶,3:生气,4:悲伤,5:厌恶,6:害怕
  39. FaceAttributesType 不含Emotion 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  40. * @method Eye getEye() 获取眼睛相关信息,可识别是否戴眼镜、是否闭眼、是否双眼皮和眼睛大小。
  41. FaceAttributesType 不含Eye 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  42. * @method void setEye(Eye $Eye) 设置眼睛相关信息,可识别是否戴眼镜、是否闭眼、是否双眼皮和眼睛大小。
  43. FaceAttributesType 不含Eye 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  44. * @method Eyebrow getEyebrow() 获取眉毛相关信息,可识别眉毛浓密、弯曲、长短信息。
  45. FaceAttributesType 不含Eyebrow 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  46. * @method void setEyebrow(Eyebrow $Eyebrow) 设置眉毛相关信息,可识别眉毛浓密、弯曲、长短信息。
  47. FaceAttributesType 不含Eyebrow 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  48. * @method AttributeItem getGender() 获取性别信息。
  49. AttributeItem对应的Type为 —— 0:男性,1:女性。
  50. FaceAttributesType 不含Gender 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  51. * @method void setGender(AttributeItem $Gender) 设置性别信息。
  52. AttributeItem对应的Type为 —— 0:男性,1:女性。
  53. FaceAttributesType 不含Gender 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  54. * @method Hair getHair() 获取头发信息,包含头发长度、有无刘海、头发颜色。
  55. FaceAttributesType 不含Hair 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  56. * @method void setHair(Hair $Hair) 设置头发信息,包含头发长度、有无刘海、头发颜色。
  57. FaceAttributesType 不含Hair 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  58. * @method Hat getHat() 获取帽子信息,可识别是否佩戴帽子、帽子款式、帽子颜色。
  59. FaceAttributesType 不含Hat 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  60. * @method void setHat(Hat $Hat) 设置帽子信息,可识别是否佩戴帽子、帽子款式、帽子颜色。
  61. FaceAttributesType 不含Hat 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  62. * @method HeadPose getHeadPose() 获取姿态信息,包含人脸的上下偏移、左右偏移、平面旋转信息。
  63. FaceAttributesType 不含Headpose 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  64. * @method void setHeadPose(HeadPose $HeadPose) 设置姿态信息,包含人脸的上下偏移、左右偏移、平面旋转信息。
  65. FaceAttributesType 不含Headpose 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  66. * @method AttributeItem getMask() 获取口罩佩戴信息。
  67. AttributeItem对应的Type为 —— 0: 无口罩, 1: 有口罩不遮脸,2: 有口罩遮下巴,3: 有口罩遮嘴,4: 正确佩戴口罩。
  68. FaceAttributesType 不含Mask 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  69. * @method void setMask(AttributeItem $Mask) 设置口罩佩戴信息。
  70. AttributeItem对应的Type为 —— 0: 无口罩, 1: 有口罩不遮脸,2: 有口罩遮下巴,3: 有口罩遮嘴,4: 正确佩戴口罩。
  71. FaceAttributesType 不含Mask 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  72. * @method Mouth getMouth() 获取嘴巴信息,可识别是否张嘴、嘴唇厚度。
  73. FaceAttributesType 不含 Mouth 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  74. * @method void setMouth(Mouth $Mouth) 设置嘴巴信息,可识别是否张嘴、嘴唇厚度。
  75. FaceAttributesType 不含 Mouth 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  76. * @method AttributeItem getMoustache() 获取胡子信息。
  77. AttributeItem对应的Type为 —— 0:无胡子,1:有胡子。
  78. FaceAttributesType 不含 Moustache 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  79. * @method void setMoustache(AttributeItem $Moustache) 设置胡子信息。
  80. AttributeItem对应的Type为 —— 0:无胡子,1:有胡子。
  81. FaceAttributesType 不含 Moustache 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  82. * @method AttributeItem getNose() 获取鼻子信息。
  83. AttributeItem对应的Type为 —— 0:朝天鼻,1:鹰钩鼻,2:普通,3:圆鼻头
  84. FaceAttributesType 不含 Nose 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  85. * @method void setNose(AttributeItem $Nose) 设置鼻子信息。
  86. AttributeItem对应的Type为 —— 0:朝天鼻,1:鹰钩鼻,2:普通,3:圆鼻头
  87. FaceAttributesType 不含 Nose 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  88. * @method AttributeItem getShape() 获取脸型信息。
  89. AttributeItem对应的Type为 —— 0:方脸,1:三角脸,2:鹅蛋脸,3:心形脸,4:圆脸。
  90. FaceAttributesType 不含 Shape 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  91. * @method void setShape(AttributeItem $Shape) 设置脸型信息。
  92. AttributeItem对应的Type为 —— 0:方脸,1:三角脸,2:鹅蛋脸,3:心形脸,4:圆脸。
  93. FaceAttributesType 不含 Shape 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  94. * @method AttributeItem getSkin() 获取肤色信息。
  95. AttributeItem对应的Type为 —— 0:黄色皮肤,1:棕色皮肤,2:黑色皮肤,3:白色皮肤。
  96. FaceAttributesType 不含 Skin 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  97. * @method void setSkin(AttributeItem $Skin) 设置肤色信息。
  98. AttributeItem对应的Type为 —— 0:黄色皮肤,1:棕色皮肤,2:黑色皮肤,3:白色皮肤。
  99. FaceAttributesType 不含 Skin 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  100. * @method integer getSmile() 获取微笑程度,[0,100]。
  101. FaceAttributesType 不含 Smile 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  102. * @method void setSmile(integer $Smile) 设置微笑程度,[0,100]。
  103. FaceAttributesType 不含 Smile 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  104. */
  105. class FaceDetailAttributesInfo extends AbstractModel
  106. {
  107. /**
  108. * @var integer 年龄 [0,65],其中65代表“65岁及以上”。
  109. FaceAttributesType 不为含Age 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  110. */
  111. public $Age;
  112. /**
  113. * @var integer 美丑打分[0,100]。
  114. FaceAttributesType 不含 Beauty 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  115. */
  116. public $Beauty;
  117. /**
  118. * @var AttributeItem 情绪,可识别自然、高兴、惊讶、生气、悲伤、厌恶、害怕。
  119. AttributeItem对应的Type为 —— 0:自然,1:高兴,2:惊讶,3:生气,4:悲伤,5:厌恶,6:害怕
  120. FaceAttributesType 不含Emotion 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  121. */
  122. public $Emotion;
  123. /**
  124. * @var Eye 眼睛相关信息,可识别是否戴眼镜、是否闭眼、是否双眼皮和眼睛大小。
  125. FaceAttributesType 不含Eye 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  126. */
  127. public $Eye;
  128. /**
  129. * @var Eyebrow 眉毛相关信息,可识别眉毛浓密、弯曲、长短信息。
  130. FaceAttributesType 不含Eyebrow 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  131. */
  132. public $Eyebrow;
  133. /**
  134. * @var AttributeItem 性别信息。
  135. AttributeItem对应的Type为 —— 0:男性,1:女性。
  136. FaceAttributesType 不含Gender 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  137. */
  138. public $Gender;
  139. /**
  140. * @var Hair 头发信息,包含头发长度、有无刘海、头发颜色。
  141. FaceAttributesType 不含Hair 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  142. */
  143. public $Hair;
  144. /**
  145. * @var Hat 帽子信息,可识别是否佩戴帽子、帽子款式、帽子颜色。
  146. FaceAttributesType 不含Hat 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  147. */
  148. public $Hat;
  149. /**
  150. * @var HeadPose 姿态信息,包含人脸的上下偏移、左右偏移、平面旋转信息。
  151. FaceAttributesType 不含Headpose 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  152. */
  153. public $HeadPose;
  154. /**
  155. * @var AttributeItem 口罩佩戴信息。
  156. AttributeItem对应的Type为 —— 0: 无口罩, 1: 有口罩不遮脸,2: 有口罩遮下巴,3: 有口罩遮嘴,4: 正确佩戴口罩。
  157. FaceAttributesType 不含Mask 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  158. */
  159. public $Mask;
  160. /**
  161. * @var Mouth 嘴巴信息,可识别是否张嘴、嘴唇厚度。
  162. FaceAttributesType 不含 Mouth 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  163. */
  164. public $Mouth;
  165. /**
  166. * @var AttributeItem 胡子信息。
  167. AttributeItem对应的Type为 —— 0:无胡子,1:有胡子。
  168. FaceAttributesType 不含 Moustache 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  169. */
  170. public $Moustache;
  171. /**
  172. * @var AttributeItem 鼻子信息。
  173. AttributeItem对应的Type为 —— 0:朝天鼻,1:鹰钩鼻,2:普通,3:圆鼻头
  174. FaceAttributesType 不含 Nose 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  175. */
  176. public $Nose;
  177. /**
  178. * @var AttributeItem 脸型信息。
  179. AttributeItem对应的Type为 —— 0:方脸,1:三角脸,2:鹅蛋脸,3:心形脸,4:圆脸。
  180. FaceAttributesType 不含 Shape 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  181. */
  182. public $Shape;
  183. /**
  184. * @var AttributeItem 肤色信息。
  185. AttributeItem对应的Type为 —— 0:黄色皮肤,1:棕色皮肤,2:黑色皮肤,3:白色皮肤。
  186. FaceAttributesType 不含 Skin 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  187. */
  188. public $Skin;
  189. /**
  190. * @var integer 微笑程度,[0,100]。
  191. FaceAttributesType 不含 Smile 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  192. */
  193. public $Smile;
  194. /**
  195. * @param integer $Age 年龄 [0,65],其中65代表“65岁及以上”。
  196. FaceAttributesType 不为含Age 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  197. * @param integer $Beauty 美丑打分[0,100]。
  198. FaceAttributesType 不含 Beauty 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  199. * @param AttributeItem $Emotion 情绪,可识别自然、高兴、惊讶、生气、悲伤、厌恶、害怕。
  200. AttributeItem对应的Type为 —— 0:自然,1:高兴,2:惊讶,3:生气,4:悲伤,5:厌恶,6:害怕
  201. FaceAttributesType 不含Emotion 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  202. * @param Eye $Eye 眼睛相关信息,可识别是否戴眼镜、是否闭眼、是否双眼皮和眼睛大小。
  203. FaceAttributesType 不含Eye 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  204. * @param Eyebrow $Eyebrow 眉毛相关信息,可识别眉毛浓密、弯曲、长短信息。
  205. FaceAttributesType 不含Eyebrow 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  206. * @param AttributeItem $Gender 性别信息。
  207. AttributeItem对应的Type为 —— 0:男性,1:女性。
  208. FaceAttributesType 不含Gender 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  209. * @param Hair $Hair 头发信息,包含头发长度、有无刘海、头发颜色。
  210. FaceAttributesType 不含Hair 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  211. * @param Hat $Hat 帽子信息,可识别是否佩戴帽子、帽子款式、帽子颜色。
  212. FaceAttributesType 不含Hat 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  213. * @param HeadPose $HeadPose 姿态信息,包含人脸的上下偏移、左右偏移、平面旋转信息。
  214. FaceAttributesType 不含Headpose 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  215. * @param AttributeItem $Mask 口罩佩戴信息。
  216. AttributeItem对应的Type为 —— 0: 无口罩, 1: 有口罩不遮脸,2: 有口罩遮下巴,3: 有口罩遮嘴,4: 正确佩戴口罩。
  217. FaceAttributesType 不含Mask 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  218. * @param Mouth $Mouth 嘴巴信息,可识别是否张嘴、嘴唇厚度。
  219. FaceAttributesType 不含 Mouth 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  220. * @param AttributeItem $Moustache 胡子信息。
  221. AttributeItem对应的Type为 —— 0:无胡子,1:有胡子。
  222. FaceAttributesType 不含 Moustache 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  223. * @param AttributeItem $Nose 鼻子信息。
  224. AttributeItem对应的Type为 —— 0:朝天鼻,1:鹰钩鼻,2:普通,3:圆鼻头
  225. FaceAttributesType 不含 Nose 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  226. * @param AttributeItem $Shape 脸型信息。
  227. AttributeItem对应的Type为 —— 0:方脸,1:三角脸,2:鹅蛋脸,3:心形脸,4:圆脸。
  228. FaceAttributesType 不含 Shape 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  229. * @param AttributeItem $Skin 肤色信息。
  230. AttributeItem对应的Type为 —— 0:黄色皮肤,1:棕色皮肤,2:黑色皮肤,3:白色皮肤。
  231. FaceAttributesType 不含 Skin 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  232. * @param integer $Smile 微笑程度,[0,100]。
  233. FaceAttributesType 不含 Smile 或检测超过 5 张人脸时,此参数仍返回,但不具备参考意义。
  234. */
  235. function __construct()
  236. {
  237. }
  238. /**
  239. * For internal only. DO NOT USE IT.
  240. */
  241. public function deserialize($param)
  242. {
  243. if ($param === null) {
  244. return;
  245. }
  246. if (array_key_exists("Age",$param) and $param["Age"] !== null) {
  247. $this->Age = $param["Age"];
  248. }
  249. if (array_key_exists("Beauty",$param) and $param["Beauty"] !== null) {
  250. $this->Beauty = $param["Beauty"];
  251. }
  252. if (array_key_exists("Emotion",$param) and $param["Emotion"] !== null) {
  253. $this->Emotion = new AttributeItem();
  254. $this->Emotion->deserialize($param["Emotion"]);
  255. }
  256. if (array_key_exists("Eye",$param) and $param["Eye"] !== null) {
  257. $this->Eye = new Eye();
  258. $this->Eye->deserialize($param["Eye"]);
  259. }
  260. if (array_key_exists("Eyebrow",$param) and $param["Eyebrow"] !== null) {
  261. $this->Eyebrow = new Eyebrow();
  262. $this->Eyebrow->deserialize($param["Eyebrow"]);
  263. }
  264. if (array_key_exists("Gender",$param) and $param["Gender"] !== null) {
  265. $this->Gender = new AttributeItem();
  266. $this->Gender->deserialize($param["Gender"]);
  267. }
  268. if (array_key_exists("Hair",$param) and $param["Hair"] !== null) {
  269. $this->Hair = new Hair();
  270. $this->Hair->deserialize($param["Hair"]);
  271. }
  272. if (array_key_exists("Hat",$param) and $param["Hat"] !== null) {
  273. $this->Hat = new Hat();
  274. $this->Hat->deserialize($param["Hat"]);
  275. }
  276. if (array_key_exists("HeadPose",$param) and $param["HeadPose"] !== null) {
  277. $this->HeadPose = new HeadPose();
  278. $this->HeadPose->deserialize($param["HeadPose"]);
  279. }
  280. if (array_key_exists("Mask",$param) and $param["Mask"] !== null) {
  281. $this->Mask = new AttributeItem();
  282. $this->Mask->deserialize($param["Mask"]);
  283. }
  284. if (array_key_exists("Mouth",$param) and $param["Mouth"] !== null) {
  285. $this->Mouth = new Mouth();
  286. $this->Mouth->deserialize($param["Mouth"]);
  287. }
  288. if (array_key_exists("Moustache",$param) and $param["Moustache"] !== null) {
  289. $this->Moustache = new AttributeItem();
  290. $this->Moustache->deserialize($param["Moustache"]);
  291. }
  292. if (array_key_exists("Nose",$param) and $param["Nose"] !== null) {
  293. $this->Nose = new AttributeItem();
  294. $this->Nose->deserialize($param["Nose"]);
  295. }
  296. if (array_key_exists("Shape",$param) and $param["Shape"] !== null) {
  297. $this->Shape = new AttributeItem();
  298. $this->Shape->deserialize($param["Shape"]);
  299. }
  300. if (array_key_exists("Skin",$param) and $param["Skin"] !== null) {
  301. $this->Skin = new AttributeItem();
  302. $this->Skin->deserialize($param["Skin"]);
  303. }
  304. if (array_key_exists("Smile",$param) and $param["Smile"] !== null) {
  305. $this->Smile = $param["Smile"];
  306. }
  307. }
  308. }