3DiVi Face SDK  3.21.0
 Указатель Классы Пространства имен Файлы Функции Переменные Определения типов Перечисления Элементы перечислений Свойства Группы
Класс VDT.FaceRecognition.SDK.VideoWorker

VideoWorker - интерфейсный объект для трекинга, обработки и распознавания лиц на нескольких видеопотоках. Рекомендуется использовать VideoWorker вместо Capturer для детекции лиц на видеопотоках. Если при создании VideoWorker указаны параметры matching_thread=0 и processing_thread=0, то потребляется обычная лицензия Capturer. Подробнее...

Классы

class  DatabaseElement
 Элемент базы. Если имеется несколько шаблонов для одного человека, нужно создать по одному элементу для каждого шаблона с одинаковыми person_id, но разными element_id. Подробнее...
 
class  MatchFoundCallbackData
 Данные MatchFound коллбэка. Подробнее...
 
class  Params
 Параметры конструктора VideoWorker. Подробнее...
 
class  SearchResult
 Результат поиска (для VideoWorker.MatchFoundCallback). Подробнее...
 
class  StiPersonOutdatedCallbackData
 Данные StiPersonOutdated коллбэка. Подробнее...
 
class  TemplateCreatedCallbackData
 Данные TemplateCreated коллбэка. Подробнее...
 
class  TrackingCallbackData
 Данные Tracking коллбэка. Подробнее...
 
class  TrackingLostCallbackData
 Данные TrackingLost коллбэка. Подробнее...
 

Открытые члены

delegate void TrackingCallback (int stream_id, int frame_id, RawSample[] samples, bool[] samples_weak, float[] samples_quality, Object userdata)
 Тип функции коллбэка трекинга (Tracking). Подробнее...
 
delegate void TrackingCallbackU (TrackingCallbackData data, Object userdata)
 Тип функции коллбэка трекинга (Tracking). Этот коллбэк вызывается каждый раз, когда кадр был обработан трекером. Tracking коллбэк будет вызван с frame_id = X не раньше, чем VideoWorker.addVideoFrame вернет значение X + N - 1, где N - значение, которое вернул VideoWorker.getTrackingConveyorSize. Подробнее...
 
delegate void TemplateCreatedCallback (int stream_id, int frame_id, RawSample sample, float quality, Template templ, Object userdata)
 Тип функции коллбэка создания шаблона (TemplateCreated). Подробнее...
 
delegate void TemplateCreatedCallbackU (TemplateCreatedCallbackData data, Object userdata)
 Тип функции коллбэка создания шаблона (TemplateCreated). Подробнее...
 
delegate void MatchFoundCallback (int stream_id, int frame_id, ulong person_id, ulong element_id, RawSample sample, float quality, Template templ, Recognizer.MatchResult match_result, Object userdata)
 Тип функции коллбэка распознавания (MatchFound). Подробнее...
 
delegate void MatchFoundCallbackExt (int stream_id, int frame_id, RawSample sample, float quality, Template templ, SearchResult[] search_result, Object userdata)
 Тип функции коллбэка распознавания (MatchFound). Подробнее...
 
delegate void MatchFoundCallbackU (MatchFoundCallbackData data, Object userdata)
 Тип функции коллбэка распознавания (MatchFound). Подробнее...
 
delegate void TrackingLostCallback (int stream_id, int first_frame_id, int last_frame_id, float best_quality, int best_quality_frame_id, RawSample best_quality_sample, Template best_quality_templ, Object userdata)
 Тип функции коллбэка потери трекинга лица (TrackingLost) (например, когда человек вышел из кадра). Подробнее...
 
delegate void TrackingLostCallbackU (TrackingLostCallbackData data, Object userdata)
 Тип функции коллбэка потери трекинга лица (TrackingLost) (например, когда человек вышел из кадра). Подробнее...
 
delegate void StiPersonOutdatedCallbackU (StiPersonOutdatedCallbackData data, Object userdata)
 Тип функции коллбэка StiPersonOutdated. Подробнее...
 
String getMethodName ()
 Получить имя метода используемого распознавателя. Потокобезопасный. Подробнее...
 
int getStreamsCount ()
 Получить количество видеопотоков. Потокобезопасный. Подробнее...
 
int getTrackingConveyorSize (int stream_id)
 Получить размер N конвейера трекинга. Tracking коллбэк будет вызван с frame_id = X не раньше, чем VideoWorker.addVideoFrame вернет значение X + N - 1, где N - значение, которое вернул VideoWorker.getTrackingConveyorSize. Потокобезопасный. Подробнее...
 
void setDatabase (List< DatabaseElement > elements, Recognizer.SearchAccelerationType acceleration)
 Задать / заменить базу (можно вызывать в любое время). Доступно только при ненулевом количестве потоков сравнения (matching_threads_count). Потокобезопасный. Подробнее...
 
int addVideoFrame (RawImage frame, int stream_id, long timestamp=-1)
 Подать новый кадр определенного видеопотока. Результаты трекинга и распознавания будут возвращаться асинхронно в коллбэках Tracking, MatchFound и TrackingLost. Потокобезопасный. Подробнее...
 
void addDepthFrame (DepthMapRaw depth_frame, int stream_id, long timestamp_microsec)
 Подать кадр определенного видеопотока c данными глубины. Потокобезопасный. Подробнее...
 
void resetTrackerOnStream (int stream_id)
 Сбросить состояние трекера для указанного видеопотока. Потокобезопасный. Подробнее...
 
int resetStream (int stream_id)
 Сбросить состояние работы для указанного видеопотока. В процессе происходит ожидание выполняющихся в данный момент коллбэков, поэтому не синхронизируйте вызов resetStream с кодом внутри коллбэков, иначе возможен deadlock. После возврата управления от resetStream не будет вызвано ни одного коллбэка, относящегося к предыдущим кадрам или трекам. Необходимо освободить память, выделенную для треков, track_id которых меньше возвращенного значения, так как для треков, удаленных в процессе этого сброса, TrackingLost коллбэк вызван не будет. Потокобезопасный. Подробнее...
 
void checkExceptions ()
 Исключения, выброшенные в коллбэках и внутренних потоках, будут выброшены повторно при вызове данного метода. Потокобезопасный.
 
int addTrackingCallback (TrackingCallback callback, Object userdata)
 Добавить обработчик события трекинга (Tracking). Потокобезопасный. Подробнее...
 
int addTrackingCallbackU (TrackingCallbackU callback, Object userdata)
 Добавить обработчик события трекинга (Tracking). Потокобезопасный. Подробнее...
 
int addTemplateCreatedCallback (TemplateCreatedCallback callback, Object userdata)
 Добавить обработчик события создания шаблона (TemplateCreated). Потокобезопасный. Подробнее...
 
int addTemplateCreatedCallbackU (TemplateCreatedCallbackU callback, Object userdata)
 Добавить обработчик события создания шаблона (TemplateCreated). Потокобезопасный. Подробнее...
 
int addMatchFoundCallback (MatchFoundCallback callback, Object userdata)
 Добавить обработчик события распознавания (MatchFound). Потокобезопасный. Подробнее...
 
int addMatchFoundCallbackExt (MatchFoundCallbackExt callback, Object userdata)
 Добавить обработчик события распознавания (MatchFound). Потокобезопасный. Подробнее...
 
int addMatchFoundCallbackU (MatchFoundCallbackU callback, Object userdata)
 Добавить обработчик события распознавания (MatchFound). Потокобезопасный. Подробнее...
 
int addTrackingLostCallback (TrackingLostCallback callback, Object userdata)
 Добавить обработчик события потери трекинга лица (TrackingLost). Потокобезопасный. Подробнее...
 
int addTrackingLostCallbackU (TrackingLostCallbackU callback, Object userdata)
 Добавить обработчик события потери трекинга лица (TrackingLost). Потокобезопасный. Подробнее...
 
int addStiPersonOutdatedCallbackU (StiPersonOutdatedCallbackU callback, Object userdata)
 Добавить обработчик события StiPersonOutdated. Потокобезопасный. Подробнее...
 
void removeStiPersonOutdatedCallback (int callback_id)
 Удалить обработчик события StiPersonOutdated. Потокобезопасный. Подробнее...
 
void removeTrackingCallback (int callback_id)
 Удалить обработчик события трекинга (Tracking). Потокобезопасный. Подробнее...
 
void removeTemplateCreatedCallback (int callback_id)
 Удалить обработчик события создания шаблона (TemplateCreated). Потокобезопасный. Подробнее...
 
void removeMatchFoundCallback (int callback_id)
 Удалить обработчик события распознавания (MatchFound). Потокобезопасный. Подробнее...
 
void removeTrackingLostCallback (int callback_id)
 Удалить обработчик события потери трекинга лица (TrackingLost). Потокобезопасный. Подробнее...
 
void disableProcessingOnStream (int stream_id)
 Отключить генерацию шаблонов для данного потока. Соответственно, сравнения также остановятся. Потокобезопасный. Подробнее...
 
void enableProcessingOnStream (int stream_id)
 Включить генерацию шаблонов для данного потока. Соответственно, сравнения также возобновятся. Потокобезопасный. Подробнее...
 
void disableAgeGenderEstimationOnStream (int stream_id)
 Отключить определение пола и возраста для данного потока. Потокобезопасный. Подробнее...
 
void enableAgeGenderEstimationOnStream (int stream_id)
 Включить определение пола и возраста для данного потока. Потокобезопасный. Подробнее...
 
void disableEmotionsEstimationOnStream (int stream_id)
 Отключить определение эмоций для данного потока. Потокобезопасный. Подробнее...
 
void enableEmotionsEstimationOnStream (int stream_id)
 Включить определение эмоций для данного потока. Потокобезопасный. Подробнее...
 
- Открытые члены унаследованные от VDT.FaceRecognition.SDK.IDisposableObject
virtual void Dispose ()
 Освободить внутренний объект.
 

Статические открытые данные

static ulong MATCH_NOT_FOUND_ID = ulong.MaxValue
 Специальное значение для параметров person_id и element_id в MatchFoundCallback.
 

Дополнительные унаследованные члены

- Свойства унаследованные от VDT.FaceRecognition.SDK.IDisposableObject
bool isDisposed [get]
 True если внутренний объект освобожден.
 

Подробное описание

VideoWorker - интерфейсный объект для трекинга, обработки и распознавания лиц на нескольких видеопотоках. Рекомендуется использовать VideoWorker вместо Capturer для детекции лиц на видеопотоках. Если при создании VideoWorker указаны параметры matching_thread=0 и processing_thread=0, то потребляется обычная лицензия Capturer.

Методы

void VDT.FaceRecognition.SDK.VideoWorker.addDepthFrame ( DepthMapRaw  depth_frame,
int  stream_id,
long  timestamp_microsec 
)
inline

Подать кадр определенного видеопотока c данными глубины. Потокобезопасный.

Аргументы
[in]depth_frameКадр глубины (DepthMapRaw).
[in]stream_idЦелочисленный идентификатор видеопотока (0 <= stream_id < streams_count).
[in]timestamp_microsecВременная метка кадра в микросекундах
int VDT.FaceRecognition.SDK.VideoWorker.addMatchFoundCallback ( MatchFoundCallback  callback,
Object  userdata 
)
inline

Добавить обработчик события распознавания (MatchFound). Потокобезопасный.

Предупреждения
Это устаревшая версия (см. новую VideoWorker.addMatchFoundCallbackU)
Аргументы
[in]callbackФункция коллбэка.
[in]userdataЛюбой объект. При вызове коллбэка он будет передан через аргумент userdata.
Возвращает
Целочисленный идентификатор коллбэка. Используйте его для передачи в VideoWorker.removeMatchFoundCallback, чтобы отписаться.
int VDT.FaceRecognition.SDK.VideoWorker.addMatchFoundCallbackExt ( MatchFoundCallbackExt  callback,
Object  userdata 
)
inline

Добавить обработчик события распознавания (MatchFound). Потокобезопасный.

Предупреждения
Это устаревшая версия (см. новую VideoWorker.addMatchFoundCallbackU)
Аргументы
[in]callbackФункция коллбэка.
[in]userdataЛюбой объект. При вызове коллбэка он будет передан через аргумент userdata.
Возвращает
Целочисленный идентификатор коллбэка. Используйте его для передачи в VideoWorker.removeMatchFoundCallback, чтобы отписаться.
int VDT.FaceRecognition.SDK.VideoWorker.addMatchFoundCallbackU ( MatchFoundCallbackU  callback,
Object  userdata 
)
inline

Добавить обработчик события распознавания (MatchFound). Потокобезопасный.

Аргументы
[in]callbackФункция коллбэка.
[in]userdataЛюбой объект. При вызове коллбэка он будет передан через аргумент userdata.
Возвращает
Целочисленный идентификатор коллбэка. Используйте его для передачи в VideoWorker.removeMatchFoundCallback, чтобы отписаться.
int VDT.FaceRecognition.SDK.VideoWorker.addStiPersonOutdatedCallbackU ( StiPersonOutdatedCallbackU  callback,
Object  userdata 
)
inline

Добавить обработчик события StiPersonOutdated. Потокобезопасный.

Аргументы
[in]callbackФункция коллбэка.
[in]userdataЛюбой объект. При вызове коллбэка он будет передан через аргумент userdata.
Возвращает
Целочисленный идентификатор коллбэка. Чтобы отписаться от коллбэка, передайте его в VideoWorker.removeStiPersonOutdatedCallback.
int VDT.FaceRecognition.SDK.VideoWorker.addTemplateCreatedCallback ( TemplateCreatedCallback  callback,
Object  userdata 
)
inline

Добавить обработчик события создания шаблона (TemplateCreated). Потокобезопасный.

Предупреждения
Это устаревшая версия (см. новую VideoWorker.addTemplateCreatedCallbackU)
Аргументы
[in]callbackФункция коллбэка.
[in]userdataЛюбой объект. При вызове коллбэка он будет передан через аргумент userdata.
Возвращает
Целочисленный идентификатор коллбэка. Используйте его для передачи в VideoWorker.removeTemplateCreatedCallback, чтобы отписаться.
int VDT.FaceRecognition.SDK.VideoWorker.addTemplateCreatedCallbackU ( TemplateCreatedCallbackU  callback,
Object  userdata 
)
inline

Добавить обработчик события создания шаблона (TemplateCreated). Потокобезопасный.

Аргументы
[in]callbackФункция коллбэка.
[in]userdataЛюбой объект. При вызове коллбэка он будет передан через аргумент userdata.
Возвращает
Целочисленный идентификатор коллбэка. Используйте его для передачи в VideoWorker.removeTemplateCreatedCallback, чтобы отписаться.
int VDT.FaceRecognition.SDK.VideoWorker.addTrackingCallback ( TrackingCallback  callback,
Object  userdata 
)
inline

Добавить обработчик события трекинга (Tracking). Потокобезопасный.

Предупреждения
Это устаревшая версия (см. новую VideoWorker.addTrackingCallbackU)
Аргументы
[in]callbackФункция коллбэка.
[in]userdataЛюбой объект. При вызове коллбэка он будет передан через аргумент userdata.
Возвращает
Целочисленный идентификатор коллбэка. Используйте его для передачи в VideoWorker.removeTrackingCallback, чтобы отписаться.
int VDT.FaceRecognition.SDK.VideoWorker.addTrackingCallbackU ( TrackingCallbackU  callback,
Object  userdata 
)
inline

Добавить обработчик события трекинга (Tracking). Потокобезопасный.

Аргументы
[in]callbackФункция коллбэка.
[in]userdataЛюбой объект. При вызове коллбэка он будет передан через аргумент userdata.
Возвращает
Целочисленный идентификатор коллбэка. Используйте его для передачи в VideoWorker.removeTrackingCallback, чтобы отписаться.
int VDT.FaceRecognition.SDK.VideoWorker.addTrackingLostCallback ( TrackingLostCallback  callback,
Object  userdata 
)
inline

Добавить обработчик события потери трекинга лица (TrackingLost). Потокобезопасный.

Предупреждения
Это устаревшая версия (см. новую VideoWorker.addTrackingLostCallbackU)
Аргументы
[in]callbackФункция коллбэка.
[in]userdataЛюбой объект. При вызове коллбэка он будет передан через аргумент userdata.
Возвращает
Целочисленный идентификатор коллбэка. Используйте его для передачи в VideoWorker.removeTrackingLostCallback, чтобы отписаться.
int VDT.FaceRecognition.SDK.VideoWorker.addTrackingLostCallbackU ( TrackingLostCallbackU  callback,
Object  userdata 
)
inline

Добавить обработчик события потери трекинга лица (TrackingLost). Потокобезопасный.

Аргументы
[in]callbackФункция коллбэка.
[in]userdataЛюбой объект. При вызове коллбэка он будет передан через аргумент userdata.
Возвращает
Целочисленный идентификатор коллбэка. Используйте его для передачи в VideoWorker.removeTrackingLostCallback, чтобы отписаться.
int VDT.FaceRecognition.SDK.VideoWorker.addVideoFrame ( RawImage  frame,
int  stream_id,
long  timestamp = -1 
)
inline

Подать новый кадр определенного видеопотока. Результаты трекинга и распознавания будут возвращаться асинхронно в коллбэках Tracking, MatchFound и TrackingLost. Потокобезопасный.

Аргументы
[in]frameИзображение кадра. Допустимы только цветные изображения (т.е. RawImage.FORMAT_RGB, RawImage.FORMAT_BGR, RawImage.FORMAT_YUV_NV21 и RawImage.FORMAT_YUV_NV12).
[in]stream_idЦелочисленный идентификатор видеопотока (0 <= stream_id < streams_count).
[in]timestampВременная метка кадра в микросекундах
Возвращает
Целочисленный идентификатор кадра, уникальный для этого видеопотока, который будет использоваться в коллбэках для обозначения этого кадра.
void VDT.FaceRecognition.SDK.VideoWorker.disableAgeGenderEstimationOnStream ( int  stream_id)
inline

Отключить определение пола и возраста для данного потока. Потокобезопасный.

Аргументы
[in]stream_idЦелочисленный идентификатор видеопотока (0 <= stream_id < streams_count).
void VDT.FaceRecognition.SDK.VideoWorker.disableEmotionsEstimationOnStream ( int  stream_id)
inline

Отключить определение эмоций для данного потока. Потокобезопасный.

Аргументы
[in]stream_idЦелочисленный идентификатор видеопотока (0 <= stream_id < streams_count).
void VDT.FaceRecognition.SDK.VideoWorker.disableProcessingOnStream ( int  stream_id)
inline

Отключить генерацию шаблонов для данного потока. Соответственно, сравнения также остановятся. Потокобезопасный.

Аргументы
[in]stream_idЦелочисленный идентификатор видеопотока (0 <= stream_id < streams_count).
void VDT.FaceRecognition.SDK.VideoWorker.enableAgeGenderEstimationOnStream ( int  stream_id)
inline

Включить определение пола и возраста для данного потока. Потокобезопасный.

Аргументы
[in]stream_idЦелочисленный идентификатор видеопотока (0 <= stream_id < streams_count).
void VDT.FaceRecognition.SDK.VideoWorker.enableEmotionsEstimationOnStream ( int  stream_id)
inline

Включить определение эмоций для данного потока. Потокобезопасный.

Аргументы
[in]stream_idЦелочисленный идентификатор видеопотока (0 <= stream_id < streams_count).
void VDT.FaceRecognition.SDK.VideoWorker.enableProcessingOnStream ( int  stream_id)
inline

Включить генерацию шаблонов для данного потока. Соответственно, сравнения также возобновятся. Потокобезопасный.

Аргументы
[in]stream_idЦелочисленный идентификатор видеопотока (0 <= stream_id < streams_count).
String VDT.FaceRecognition.SDK.VideoWorker.getMethodName ( )
inline

Получить имя метода используемого распознавателя. Потокобезопасный.

Возвращает
Имя метода.
int VDT.FaceRecognition.SDK.VideoWorker.getStreamsCount ( )
inline

Получить количество видеопотоков. Потокобезопасный.

Возвращает
Количество видеопотоков.
int VDT.FaceRecognition.SDK.VideoWorker.getTrackingConveyorSize ( int  stream_id)
inline

Получить размер N конвейера трекинга. Tracking коллбэк будет вызван с frame_id = X не раньше, чем VideoWorker.addVideoFrame вернет значение X + N - 1, где N - значение, которое вернул VideoWorker.getTrackingConveyorSize. Потокобезопасный.

Аргументы
[in]stream_idЦелочисленный идентификатор видеопотока (0 <= stream_id < streams_count).
Возвращает
Размер конвейера трекинга.
delegate void VDT.FaceRecognition.SDK.VideoWorker.MatchFoundCallback ( int  stream_id,
int  frame_id,
ulong  person_id,
ulong  element_id,
RawSample  sample,
float  quality,
Template  templ,
Recognizer.MatchResult  match_result,
Object  userdata 
)

Тип функции коллбэка распознавания (MatchFound).

Предупреждения
Это устаревшая версия (см. новую VideoWorker.MatchFoundCallbackFuncU)
Аргументы
[in]stream_idсм. описание в VideoWorker.MatchFoundCallbackData
[in]frame_idсм. описание в VideoWorker.MatchFoundCallbackData
[in]person_idсм. search_results в VideoWorker.MatchFoundCallbackData
[in]element_idсм. search_results в VideoWorker.MatchFoundCallbackData
[in]sampleсм. описание в VideoWorker.MatchFoundCallbackData
[in]qualityсм. описание в VideoWorker.MatchFoundCallbackData
[in]templсм. описание в VideoWorker.MatchFoundCallbackData
[in]match_resultсм. search_results в VideoWorker.MatchFoundCallbackData
[in]userdataОбъект, поданный пользователем при вызове метода VideoWorker.addMatchFoundCallback.
delegate void VDT.FaceRecognition.SDK.VideoWorker.MatchFoundCallbackExt ( int  stream_id,
int  frame_id,
RawSample  sample,
float  quality,
Template  templ,
SearchResult[]  search_result,
Object  userdata 
)

Тип функции коллбэка распознавания (MatchFound).

Предупреждения
Это устаревшая версия (см. новую VideoWorker.MatchFoundCallbackU)

Аналогичен VideoWorker.MatchFoundCallback, но возвращает все элементы с расстоянием меньше distance_threshold (но не более k ближайших элементов; величина k установлена в конфигурационном файле под тегом search_k).

При вызове после N последовательных несовпадений первый элемент в search_result будет иметь нулевое расстояние, а person_id и element_id равны VideoWorker.MATCH_NOT_FOUND_ID.

delegate void VDT.FaceRecognition.SDK.VideoWorker.MatchFoundCallbackU ( MatchFoundCallbackData  data,
Object  userdata 
)

Тип функции коллбэка распознавания (MatchFound).

Когда для отслеживаемого лица создается шаблон, он сравнивается с каждым шаблоном из базы, и если расстояние до ближайшего элемента оказывается меньше порога distance_threshold, указанного в этом элементе, то фиксируется совпадение.

MatchFoundCallbackData.search_results содержит все элементы с расстоянием меньше distance_threshold (но не более k ближайших элементов; величина k установлена в конфигурационном файле под тегом search_k).

Этот коллбэк вызывается после N последовательных совпадений с элементами, относящимися к одному и тому же человеку.

Число N может быть задано в конфигурационном файле в тэге <consecutive_match_count_for_match_found_callback>.

Гарантируется, что этот коллбэк будет вызван после как минимум одного Tracking коллбэка и перед TrackingLost коллбэком с тем же stream_id и track_id (track_id = sample.getID()).

Также, установив значение ‘1’ для тэга <not_found_match_found_callback> можно включить вызов этого коллбэка после N последовательных несовпадений (т.е. когда ближайший элемент оказывается дальше его порога distance_threshold). В этом случае match_result первого элемента в MatchFoundCallbackData.search_results будет с нулевым расстоянием, а person_id и element_id будут равны VideoWorker.MATCH_NOT_FOUND_ID.

Аргументы
[in]dataДанные MatchFound коллбэка.
[in]userdataОбъект, поданный пользователем при вызове метода VideoWorker.addMatchFoundCallbackU.
void VDT.FaceRecognition.SDK.VideoWorker.removeMatchFoundCallback ( int  callback_id)
inline

Удалить обработчик события распознавания (MatchFound). Потокобезопасный.

Аргументы
[in]callback_idИдентификатор коллбэка, полученный от VideoWorker.addMatchFoundCallback или VideoWorker.addMatchFoundCallbackExt.
void VDT.FaceRecognition.SDK.VideoWorker.removeStiPersonOutdatedCallback ( int  callback_id)
inline

Удалить обработчик события StiPersonOutdated. Потокобезопасный.

Аргументы
[in]callback_idЦелочисленный идентификатор коллбэка, полученный от VideoWorker.addStiPersonOutdatedCallbackU.
void VDT.FaceRecognition.SDK.VideoWorker.removeTemplateCreatedCallback ( int  callback_id)
inline

Удалить обработчик события создания шаблона (TemplateCreated). Потокобезопасный.

Аргументы
[in]callback_idИдентификатор коллбэка, полученный от VideoWorker.addTemplateCreatedCallback.
void VDT.FaceRecognition.SDK.VideoWorker.removeTrackingCallback ( int  callback_id)
inline

Удалить обработчик события трекинга (Tracking). Потокобезопасный.

Аргументы
[in]callback_idИдентификатор коллбэка, полученный от VideoWorker.addTrackingCallback.
void VDT.FaceRecognition.SDK.VideoWorker.removeTrackingLostCallback ( int  callback_id)
inline

Удалить обработчик события потери трекинга лица (TrackingLost). Потокобезопасный.

Аргументы
[in]callback_idИдентификатор коллбэка, полученный от VideoWorker.addTrackingLostCallback.
int VDT.FaceRecognition.SDK.VideoWorker.resetStream ( int  stream_id)
inline

Сбросить состояние работы для указанного видеопотока. В процессе происходит ожидание выполняющихся в данный момент коллбэков, поэтому не синхронизируйте вызов resetStream с кодом внутри коллбэков, иначе возможен deadlock. После возврата управления от resetStream не будет вызвано ни одного коллбэка, относящегося к предыдущим кадрам или трекам. Необходимо освободить память, выделенную для треков, track_id которых меньше возвращенного значения, так как для треков, удаленных в процессе этого сброса, TrackingLost коллбэк вызван не будет. Потокобезопасный.

Аргументы
[in]stream_idЦелочисленный идентификатор видеопотока (0 <= stream_id < streams_count).
Возвращает
Целое число track_id_threshold, означающее, что все удаленные в ходе resetStream треки имели track_id < track_id_threshold, а все новые треки будут иметь track_id >= track_id_threshold.
void VDT.FaceRecognition.SDK.VideoWorker.resetTrackerOnStream ( int  stream_id)
inline

Сбросить состояние трекера для указанного видеопотока. Потокобезопасный.

Аргументы
[in]stream_idЦелочисленный идентификатор видеопотока (0 <= stream_id < streams_count).
void VDT.FaceRecognition.SDK.VideoWorker.setDatabase ( List< DatabaseElement elements,
Recognizer.SearchAccelerationType  acceleration 
)
inline

Задать / заменить базу (можно вызывать в любое время). Доступно только при ненулевом количестве потоков сравнения (matching_threads_count). Потокобезопасный.

Аргументы
[in]elementsВектор элементов базы.
[in]accelerationТип ускорения поиска.
delegate void VDT.FaceRecognition.SDK.VideoWorker.StiPersonOutdatedCallbackU ( StiPersonOutdatedCallbackData  data,
Object  userdata 
)

Тип функции коллбэка StiPersonOutdated.

Аргументы
[in]dataДанные StiPersonOutdated коллбэка.
[in]userdataОбъект, поданный пользователем при вызове метода VideoWorker.addStiPersonOutdatedCallbackU.
delegate void VDT.FaceRecognition.SDK.VideoWorker.TemplateCreatedCallback ( int  stream_id,
int  frame_id,
RawSample  sample,
float  quality,
Template  templ,
Object  userdata 
)

Тип функции коллбэка создания шаблона (TemplateCreated).

Предупреждения
Это устаревшая версия (см. новую VideoWorker.TemplateCreatedCallbackU)
Аргументы
[in]stream_idсм. описание в VideoWorker.TemplateCreatedCallbackData
[in]frame_idсм. описание в VideoWorker.TemplateCreatedCallbackData
[in]sampleсм. описание в VideoWorker.TemplateCreatedCallbackData
[in]qualityсм. описание в VideoWorker.TemplateCreatedCallbackData
[in]templсм. описание в VideoWorker.TemplateCreatedCallbackData
[in]userdataОбъект, поданный пользователем при вызове метода VideoWorker.addTemplateCreatedCallback.
delegate void VDT.FaceRecognition.SDK.VideoWorker.TemplateCreatedCallbackU ( TemplateCreatedCallbackData  data,
Object  userdata 
)

Тип функции коллбэка создания шаблона (TemplateCreated).

Этот коллбэк вызывается каждый раз, когда в VideoWorker создается шаблон.

Гарантируется, что этот коллбэк будет вызван после как минимум одного Tracking коллбэка и перед TrackingLost коллбэком с тем же stream_id и track_id (track_id = sample.getID()).

Аргументы
[in]dataДанные TemplateCreated коллбэка.
[in]userdataОбъект, поданный пользователем при вызове метода VideoWorker.addTemplateCreatedCallbackU.
delegate void VDT.FaceRecognition.SDK.VideoWorker.TrackingCallback ( int  stream_id,
int  frame_id,
RawSample[]  samples,
bool[]  samples_weak,
float[]  samples_quality,
Object  userdata 
)

Тип функции коллбэка трекинга (Tracking).

Предупреждения
Это устаревшая версия (см. новую VideoWorker.TrackingCallbackU)
Аргументы
[in]stream_idсм. описание в VideoWorker.TrackingCallbackData
[in]frame_idсм. описание в VideoWorker.TrackingCallbackData
[in]samplesсм. описание в VideoWorker.TrackingCallbackData
[in]samples_weakсм. описание в VideoWorker.TrackingCallbackData
[in]samples_qualityсм. описание в VideoWorker.TrackingCallbackData
[in]userdataОбъект, поданный пользователем при вызове метода VideoWorker.addTrackingCallback.
delegate void VDT.FaceRecognition.SDK.VideoWorker.TrackingCallbackU ( TrackingCallbackData  data,
Object  userdata 
)

Тип функции коллбэка трекинга (Tracking). Этот коллбэк вызывается каждый раз, когда кадр был обработан трекером. Tracking коллбэк будет вызван с frame_id = X не раньше, чем VideoWorker.addVideoFrame вернет значение X + N - 1, где N - значение, которое вернул VideoWorker.getTrackingConveyorSize.

Tracking коллбэки с одинаковым stream_id вызываются в порядке возрастания значения frame_id. Поэтому если вы получили коллбэк со значениями stream_id=2 и frame_id=102 сразу после коллбэка со значениями stream_id=2 и frame_id=100, значит, кадр со значением frame_id=101 был пропущен для видеопотока 2.

Аргументы
[in]dataДанные Tracking коллбэка.
[in]userdataОбъект, поданный пользователем при вызове метода VideoWorker.addTrackingCallbackU.
delegate void VDT.FaceRecognition.SDK.VideoWorker.TrackingLostCallback ( int  stream_id,
int  first_frame_id,
int  last_frame_id,
float  best_quality,
int  best_quality_frame_id,
RawSample  best_quality_sample,
Template  best_quality_templ,
Object  userdata 
)

Тип функции коллбэка потери трекинга лица (TrackingLost) (например, когда человек вышел из кадра).

Предупреждения
Это устаревшая версия (см. новую VideoWorker.TrackingLostCallbackU).
Аргументы
[in]stream_idсм. описание в VideoWorker.TrackingLostCallbackData.
[in]first_frame_idсм. описание в VideoWorker.TrackingLostCallbackData.
[in]last_frame_idсм. описание в VideoWorker.TrackingLostCallbackData.
[in]best_qualityсм. описание в VideoWorker.TrackingLostCallbackData.
[in]best_quality_frame_idсм. описание в VideoWorker.TrackingLostCallbackData.
[in]best_quality_sampleсм. описание в VideoWorker.TrackingLostCallbackData.
[in]best_quality_templсм. описание в VideoWorker.TrackingLostCallbackData.
[in]userdataОбъект, поданный пользователем при вызове метода VideoWorker.addTrackingLostCallback.
delegate void VDT.FaceRecognition.SDK.VideoWorker.TrackingLostCallbackU ( TrackingLostCallbackData  data,
Object  userdata 
)

Тип функции коллбэка потери трекинга лица (TrackingLost) (например, когда человек вышел из кадра).

Гарантируется, что этот коллбэк будет последним для пары <stream_id, track_id> (track_id равен sample.getID() для сэмпла в любом VideoWorker коллбэке).

Т.е. после него ни один Tracking, MatchFound или TrackingLost коллбэк для видеопотока stream_id не может содержать сэмпла с этим же track_id.

Также гарантируется, что для каждой пары <stream_id, track_id>, которая была упомянута в Tracking коллбэке, будет ровно один TrackingLost коллбэк.

Аргументы
[in]dataДанные TrackingLost коллбэка.
[in]userdataОбъект, поданный пользователем при вызове метода VideoWorker.addTrackingLostCallbackU.