- Модуль: faceid
- Путь к файлу: ~/bitrix/modules/faceid/lib/faceid.php
- Класс: BitrixFaceIdFaceId
- Вызов: FaceId::identifyInternal
static function identifyInternal($binaryImageContent, $operation, $service)
{
$handler = new Http;
$params = array(
'image' => base64_encode($binaryImageContent)
);
if ($service !== null)
{
$params['service'] = $service;
}
$response = $handler->query($operation, $params);
$result = array('found' => false, 'msg' => '');
if ($response['success'])
{
$result = $response['result'];
}
// update balance
if (isset($response['status']['balance']))
{
$currentBalance = (int) $response['status']['balance'];
BitrixMainConfigOption::set('faceid', 'balance', $currentBalance);
}
// continue with faces
if ($result['found'])
{
$newItems = array();
foreach ($result['items'] as $item)
{
$newItem = array();
// face id
$meta = explode(':', $item['meta']);
$newItem['face_id'] = intval($meta[1]);
// confidence
$newItem['confidence'] = $item['confidence'];
$newItem['x'] = $item['x'];
$newItem['y'] = $item['y'];
$newItem['width'] = $item['width'];
$newItem['height'] = $item['height'];
$newItems[] = $newItem;
}
$response['result']['items'] = $newItems;
}
return $response;
}