Domain name for API request: iai.tencentcloudapi.com.
This API is used to calculate the similarity of faces in two images and return the face similarity score.
If you need to judge "whether the person in the image is someone specified" in scenarios such as face login, i.e., checking whether the person in a given image is someone with a known identity, we recommend using the VerifyFace or VerifyPerson API.
SignatureMethod
parameter to TC3-HMAC-SHA256
.The following request parameter list only provides API request parameters and some common parameters. For the complete common parameter list, see Common Request Parameters.
Parameter Name | Required | Type | Description |
---|---|---|---|
Action | Yes | String | Common Params. The value used for this API: CompareFace. |
Version | Yes | String | Common Params. The value used for this API: 2020-03-03. |
Region | No | String | Common Params. This parameter is not required for this API. |
ImageA | No | String | Base64-encoded data of image A, which cannot exceed 5 MB. The long side cannot exceed 4,000 px for images in JPG format or 2,000 px for images in other formats. If there are multiple faces in the image, only the face with the largest size will be selected. PNG, JPG, JPEG, and BMP images are supported, while GIF images are not. |
ImageB | No | String | Base64-encoded data of image B, which cannot exceed 5 MB. The long side cannot exceed 4,000 px for images in JPG format or 2,000 px for images in other formats. If there are multiple faces in the image, only the face with the largest size will be selected. PNG, JPG, JPEG, and BMP images are supported, while GIF images are not. |
UrlA | No | String | URL of image A. The image cannot exceed 5 MB in size after being Base64-encoded. The long side cannot exceed 4,000 px for images in JPG format or 2,000 px for images in other formats. Either Url or Image of image A must be provided; if both are provided, only Url will be used. We recommend storing the image in Tencent Cloud, as a Tencent Cloud URL can guarantee higher download speed and stability. The download speed and stability of non-Tencent Cloud URLs may be low. If there are multiple faces in the image, only the face with the largest size will be selected. PNG, JPG, JPEG, and BMP images are supported, while GIF images are not. |
UrlB | No | String | URL of image B. The image cannot exceed 5 MB in size after being Base64-encoded. The long side cannot exceed 4,000 px for images in JPG format or 2,000 px for images in other formats. Either Url or Image of image B must be provided; if both are provided, only Url will be used. We recommend storing the image in Tencent Cloud, as a Tencent Cloud URL can guarantee higher download speed and stability. The download speed and stability of non-Tencent Cloud URLs may be low. If there are multiple faces in the image, only the face with the largest size will be selected. PNG, JPG, JPEG, and BMP images are supported, while GIF images are not. |
FaceModelVersion | No | String | Algorithm model version used by the Face Recognition service. Currently, 2.0 and 3.0 are supported.This parameter is 3.0 by default starting from April 2, 2020. If it is left empty for accounts that used this API, 2.0 will be used by default.The parameter can be set only to 3.0 for accounts that purchase the service after November 26, 2020.Different algorithm model versions correspond to different face recognition algorithms. The 3.0 version has a better overall effect than the legacy version and is recommended. |
QualityControl | No | Integer | Image quality control. 0: no control. 1: low quality requirement. The image has one or more of the following problems: extreme blurriness, covered eyes, covered nose, and covered mouth. 2: average quality requirement. The image has at least three of the following problems: excessive brightness, excessive dimness, blurriness or average blurriness, covered eyebrows, covered cheeks, and covered chin. 3: high-quality requirement. The image has one to two of the following problems: excessive brightness, excessive dimness, average blurriness, covered eyebrows, covered cheeks, and covered chin. 4: very high-quality requirement. The image is optimal in all dimensions or only has a slight problem in one dimension. Default value: 0. If the image quality does not meet the requirement, the returned result will prompt that the detected image quality is unsatisfactory. |
NeedRotateDetection | No | Integer | Whether to enable the support for rotated image recognition. 0: no; 1: yes. Default value: 0. When the face in the image is rotated and the image has no EXIF information, if this parameter is not enabled, the face in the image cannot be correctly detected and recognized. If you are sure that the input image contains EXIF information or the face in the image will not be rotated, do not enable this parameter, as the overall time consumption may increase by hundreds of milliseconds after it is enabled. |
Parameter Name | Type | Description |
---|---|---|
Score | Float | Face similarity score between two images. The returned similarity score varies by algorithm version. If you need to verify whether the faces in the two images are the same person, then the 0.1%, 0.01%, and 0.001% FARs on v3.0 correspond to scores of 40, 50, and 60, respectively. Generally, if the score is above 50, it can be judged that they are the same person. The 0.1%, 0.01%, and 0.001% FARs on v2.0 correspond to scores of 70, 80, and 90, respectively. Generally, if the score is above 80, it can be judged that they are the same person. If you need to verify whether the faces in the two images are the same person, we recommend using the VerifyFace API. |
FaceModelVersion | String | Algorithm model version used for face recognition. |
RequestId | String | The unique request ID, which is returned for each request. RequestId is required for locating a problem. |
POST / HTTP/1.1
Host: iai.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CompareFace
<Common request parameters>
{
"UrlA": "http://test.image.myqcloud.com/testA.jpg",
"UrlB": "http://test.image.myqcloud.com/testB.jpg"
}
{
"Response": {
"Score": 0.999,
"FaceModelVersion": "3.0",
"RequestId": "a8eb4545-a154-4f86-9510-57a8be9cae0c"
}
}
TencentCloud API 3.0 integrates SDKs that support various programming languages to make it easier for you to call APIs.
The following only lists the error codes related to the API business logic. For other error codes, see Common Error Codes.
Error Code | Description |
---|---|
AuthFailure.InvalidAuthorization | Authentication failed. |
FailedOperation.ConflictOperation | The operations conflict. Do not operate on the same person simultaneously. |
FailedOperation.DuplicatedGroupDescription | The custom description field must be unique in the group. |
FailedOperation.FaceQualityNotQualified | The face image quality does not meet the requirement. |
FailedOperation.FaceSizeTooSmall | The face frame size is smaller than the MinFaceSize value, and the face is filtered out. |
FailedOperation.GroupInDeletedState | The current group is being deleted. Please wait. |
FailedOperation.GroupPersonMapExist | The ID of the corresponding person is already in the group. |
FailedOperation.GroupPersonMapNotExist | The ID of the corresponding person is not in the group. |
FailedOperation.ImageDecodeFailed | Image decoding failed. |
FailedOperation.ImageDownloadError | An error occurred while downloading the image. |
FailedOperation.ImageFacedetectFailed | Face detection failed. |
FailedOperation.ImageResolutionExceed | The image resolution is too high. |
FailedOperation.ImageResolutionTooSmall | The image short edge resolution is smaller than 64. |
FailedOperation.ImageSizeExceed | The size of the Base64-encoded image cannot exceed 5 MB. |
FailedOperation.RequestTimeout | The backend service timed out. |
FailedOperation.RpcFail | The RPC call failed. |
FailedOperation.SearchFacesExceed | The number of faces searched for exceeds the limit. |
FailedOperation.ServerError | The algorithm service is exceptional. Please retry. |
FailedOperation.UnKnowError | An internal error occurred. |
InternalError | Internal error. |
InvalidParameter.InvalidParameter | Invalid parameter. |
InvalidParameterValue.AccountFaceNumExceed | The number of faces in the account exceeds the limit. |
InvalidParameterValue.DeleteFaceNumExceed | The number of faces to be deleted exceeds the limit. Every person must have at least one face image. |
InvalidParameterValue.FaceModelVersionIllegal | The algorithm model version is invalid. |
InvalidParameterValue.GroupExDescriptionsExceed | The array length of the group's custom description fields exceeds the limit. Up to 5 fields can be created. |
InvalidParameterValue.GroupExDescriptionsNameIdentical | The name of the group's custom description field must be unique. |
InvalidParameterValue.GroupExDescriptionsNameIllegal | The name of the group's custom description field contains invalid characters. It can contain only letters, - , _ , and digits. |
InvalidParameterValue.GroupExDescriptionsNameTooLong | The name of the group's custom description field exceeds the length limit. |
InvalidParameterValue.GroupFaceNumExceed | The number of faces in the group exceeds the limit. |
InvalidParameterValue.GroupIdAlreadyExist | The group ID already exists. It must be unique. |
InvalidParameterValue.GroupIdIllegal | The group ID contains invalid characters. It can contain only letters, digits, and special symbols (-%@#&_). |
InvalidParameterValue.GroupIdNotExist | The group ID does not exist. |
InvalidParameterValue.GroupIdTooLong | The group ID exceeds the length limit. |
InvalidParameterValue.GroupIdsExceed | The list of groups passed in exceeds the limit. |
InvalidParameterValue.GroupNameAlreadyExist | The group name already exists. It must be unique. |
InvalidParameterValue.GroupNameIllegal | The group name contains invalid characters. It can contain only letters, - , _ , and digits. |
InvalidParameterValue.GroupNameTooLong | The group name exceeds the length limit. |
InvalidParameterValue.GroupNumExceed | The number of groups exceeds the limit. If you need more, please contact us. |
InvalidParameterValue.GroupNumPerPersonExceed | The number of groups exceeds the limit. One person can be added to up to 100 groups. |
InvalidParameterValue.GroupTagIllegal | The group remarks field contains invalid characters. It can contain only letters, - , _ , and digits. |
InvalidParameterValue.GroupTagTooLong | The group remarks field exceeds the length limit. |
InvalidParameterValue.ImageEmpty | Empty image. |
InvalidParameterValue.LimitExceed | The number of returned results exceeds the limit. |
InvalidParameterValue.NoFaceInGroups | There are no faces in the specified group. |
InvalidParameterValue.NoFaceInPhoto | There are no faces in the image. |
InvalidParameterValue.OffsetExceed | The starting number is too large. Please check the length of the array to be requested. |
InvalidParameterValue.PersonExDescriptionInfosExceed | The array length of the person's custom description fields exceeds the limit. Up to 5 fields are allowed. |
InvalidParameterValue.PersonExDescriptionsNameIdentical | The name of the person's custom description field must be unique. |
InvalidParameterValue.PersonExDescriptionsNameIllegal | The name of the person's custom description field contains invalid characters. It can contain only letters, - , _ , and digits. |
InvalidParameterValue.PersonExDescriptionsNameTooLong | The name of the person's custom description field exceeds the length limit. |
InvalidParameterValue.PersonExistInGroup | The ID of the corresponding person is already in the group. |
InvalidParameterValue.PersonFaceNumExceed | The number of face images for the person exceeds the limit. One person can have up to 5 face images. |
InvalidParameterValue.PersonGenderIllegal | An error occurred while setting person gender. 0: empty; 1: male; 2: female. |
InvalidParameterValue.PersonIdAlreadyExist | The person ID already exists. It must be unique. |
InvalidParameterValue.PersonIdIllegal | The person ID contains invalid characters. It can contain only letters, digits, and -%@#&_. |
InvalidParameterValue.PersonIdNotExist | The person ID does not exist. |
InvalidParameterValue.PersonIdTooLong | The person ID field exceeds the length limit. |
InvalidParameterValue.PersonNameIllegal | The person name contains invalid characters. It can contain only letters, - , _ , and digits. |
InvalidParameterValue.PersonNameTooLong | The person name exceeds the length limit. |
InvalidParameterValue.QualityControlIllegal | Invalid QualityControl parameter. |
InvalidParameterValue.SearchPersonsExceed | The number of persons searched for exceeds the limit. |
InvalidParameterValue.UploadFaceNumExceed | Up to four faces can be uploaded at a time. |
InvalidParameterValue.UrlIllegal | Invalid URL format. |
LimitExceeded.ErrorFaceNumExceed | The number of faces exceeds the limit. |
MissingParameter.ErrorParameterEmpty | A required parameter is empty. |
ResourceUnavailable.Delivering | The resource is being shipped. |
ResourceUnavailable.Freeze | The account is frozen. |
ResourceUnavailable.InArrears | The account is in arrears. |
ResourceUnavailable.LowBalance | Insufficient balance. |
ResourceUnavailable.NotExist | The billing status is unknown. Please check whether the service has been activated in the console. |
ResourceUnavailable.Recover | The resource has been repossessed. |
ResourceUnavailable.StopUsing | The service has been suspended for the account. |
ResourceUnavailable.UnknownStatus | The billing status is unknown. |
ResourcesSoldOut.ChargeStatusException | The billing status is exceptional. |
UnsupportedOperation.UnknowMethod | Unknown method name. |
Was this page helpful?