Обновление до FindFace Multi 1.2
Совет
Если вы используете наш продукт FindFace Security, развернутый в Ubuntu 18.04, сначала обновите его до FindFace Multi 1.0, а затем до FindFace Multi 1.2.
Для обновления FindFace Multi с ранних версий до версии 1.2 выполните следующие действия:
Откройте файл конфигурации
/etc/findface-security/config.py
(/etc/ffsecurity/config.py
). Сохраните для последующего использования значения следующих параметров:EXTERNAL_ADDRESS
,SECRET_KEY
,VIDEO_DETECTOR_TOKEN
,ROUTER_URL
.sudo vi /etc/findface-security/config.py EXTERNAL_ADDRESS = "http://172.20.77.58" ... # use pwgen -sncy 50 1|tr "'" "." to generate your own unique key SECRET_KEY = 'c8b533847bbf7142102de1349d33a1f6' FFSECURITY = { 'VIDEO_DETECTOR_TOKEN': '381b0f4a20495227d04185ab02f5085f', ... 'ROUTER_URL': 'http://172.20.77.58', ... }
В FindFace Multi 1.2 мы значительно усовершенствовали внутреннюю структуру сущности
report
(отчет). Однако у модернизированной сущности отсутствует обратная совместимость с более ранними версиями продукта. Перед обновлением обязательно загрузите все нужные вам отчеты с вкладки Отчеты. Позже, в обновленной системе, вы сможете использовать их в качестве образцов для воссоздания ранее существовавших отчетов.Остановите сервис
findface-security
.sudo systemctl stop findface-security*.service
Создайте резервную копию базы данных векторов признаков на основе Tarantool в любой выбранной директории, например,
/etc/findface_dump
.Совет
Подробнее см. Резервное копирование и восстановление FindFace Multi и всех данных.
sudo mkdir -p /etc/findface_dump cd /etc/findface_dump sudo findface-storage-api-dump -config /etc/findface-sf-api.ini
Установите apt-репозиторий с версией FindFace Multi, используя консольный инсталлятор согласно инструкции в этом разделе.
Совет
На этапе установки моделей нейронных сетей (
APT repository doesn’t include recognition models. Do you want to install them now?
) используйте один из следующих вариантов:Выберите
No
Выберите
Yes
и оставьте выбранными все модели нейронных сетей. ВведитеDone
Чтобы решить, какой вариант подходит вам лучше всего, ознакомьтесь с комментариями к шагу № 9.
Установите NATS, добавьте этот сервис в автозагрузку и запустите.
Важно
Пропустите этот шаг при обновлении с FindFace Multi 1.1.
sudo apt install -y nats-server sudo systemctl enable nats-server sudo systemctl restart nats-server
Установите из репозитория сервисы FindFace Multi в соответствии со своей архитектурной схемой.
CPU-версия:
sudo apt update sudo apt install findface-security findface-security-ui findface-extraction-api findface-ntls findface-sf-api findface-tarantool-server findface-upload findface-video-manager findface-video-worker-cpu findface-counter findface-liveness-api
GPU-версия:
sudo apt update sudo apt install findface-security findface-security-ui findface-extraction-api-gpu findface-ntls findface-sf-api findface-tarantool-server findface-upload findface-video-manager findface-video-worker-gpu findface-counter findface-liveness-api
Важно
Для работы FindFace Multi на GPU требуется предварительная установка драйверов NVIDIA.
Важно
В какой-то момент вам будет предложено выбрать, какую версию конфигурационного файла
findface-security
использовать. Выберите вариантInstall the packages maintainer’s version
(использовать версию из пакета). Сделайте то же самое, если аналогичное сообщение появилось для другого компонента (findface-extraction-api
,findface-video-worker
и т. д.). Во всех случаях имеет смысл предпочесть более новую версию файла конфигурации.Откройте файл конфигурации
/etc/findface-security/config.py
и вставьте в него сохраненные значения параметровEXTERNAL_ADDRESS
,SECRET_KEY
,VIDEO_DETECTOR_TOKEN
иROUTER_URL
. Заполните разделDATABASES
по аналогии:’PORT’: 5439, ‘USER’: ‘ntech’, ‘PASSWORD’: ‘9T3g1nXy9yx3y8MIGm9fbef3dia8UTc’
(пароль из/etc/pgbouncer/userlist.txt
).sudo vi /etc/findface-security/config.py ... # Database is used by FindFace Security to store cameras, # camera groups, watchlists and so on. Only PostgreSQL is supported. DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'DISABLE_SERVER_SIDE_CURSORS': True, 'NAME': 'ffsecurity', 'PORT': 5439, 'USER': 'ntech', 'PASSWORD': '9T3g1nXy9yx3y8MIGm9fbef3dia8UTc3', } } ... # Use pwgen -sncy 50 1|tr "'" "." to generate your own unique key SECRET_KEY = '002231ccb690586f4d33e98322c591bb' ... SERVICE_EXTERNAL_ADDRESS = 'http://172.20.77.58' # EXTERNAL_ADDRESS is used to access objects created inside FFSecurity via external links. EXTERNAL_ADDRESS = 'http://172.20.77.58' ... # findface-video-worker authorization token 'VIDEO_DETECTOR_TOKEN': '8977e1b0067d43f6c908d0bf60363255', ... # findface-video-worker face posting address, # it must be set to either FFSecurity EXTERNAL_ADDRESS (by default) # or findface-facerouter url (in some specific cases) 'ROUTER_URL': 'http://127.0.0.1:80',
Откройте старую версию файла конфигурации
findface-ntls
, доступную по адресу/etc/findface-ntls.cfg.dpkg-old
, и сравните ее с новой версией/etc/findface-ntls.cfg
. Перенесите все пользовательские параметры из старой версии в новую. Сделайте то же самое для других компонентов, например, дляfindface-extract-api
проверьте/etc/findface-extract-api.ini.ucf-old
на соответствие/etc/findface-extract-api.ini
и т. д.sudo vi /etc/findface-ntls.cfg.dpkg-old sudo vi /etc/findface-ntls.cfg sudo vi /etc/findface-extraction-api.ini.ucf-old sudo vi /etc/findface-extraction-api.ini ...
Важно
Имейте в виду, что новая версия файла конфигурации
findface-extraction-api
по умолчанию содержит модельliveness.colombo
, которая отсутствовала в прежних версиях продукта. Это может потенциально привести к сбою системы. Существуют следующие способы предотвратить сбой:Восстановите для параметра
face_liveness
предыдущее значение:liveness.alleyn.v2.cpu.fnk
/liveness.alleyn.v2.gpu.fnk
Установите модель
liveness.colombo.cpu.fnk
/liveness.colombo.gpu.fnk
на шаге №5
Откройте новую версию файла конфигурации
/etc/findface-video-worker-cpu.ini
(/etc/findface-video-worker-gpu.ini
). В разделеstreamer
установитеtracks = true
иtracks_last = true
, чтобы рамки с объектами на видеостене гарантированно отображались правильно.sudo vi /etc/findface-video-worker-cpu.ini sudo vi /etc/findface-video-worker-gpu.ini [streamer] #------------------------------ ... ## use tracks instead detects for streamer ## type:bool env:CFG_STREAMER_TRACKS longopt:--streamer-tracks tracks = true ## use tracks with lastFrameId=currentFrameId (.tracks must be true) ## type:bool env:CFG_STREAMER_TRACKS_LAST longopt:--streamer-tracks-last tracks_last = true
Перезагрузите сервисы.
sudo systemctl restart findface-ntls findface-extraction-api findface-video-worker* findface-video-manager findface-sf-api findface-counter findface-liveness-api
Измените структуру базы данных Tarantool с помощью файла
tnt_schema.lua
из FindFace Multi.sudo findface-security make_tnt_schema | sudo tee /etc/findface-security/tnt_schema.lua
Остановите шарды
findface-tarantool-server
. Удалите данные из каталогов, соответствующих активным шардам.sudo systemctl stop 'tarantool@*' sudo rm /opt/ntech/var/lib/tarantool/shard-*/{index,snapshots,xlogs}/*
Перейдите в директорию с файлами конфигурации Tarantool
/etc/tarantool/instances.available/
. Проверьте, содержит ли каждый файл конфигурацииshard-*.lua
командуdofile
и определенияmeta_indexes
иmeta_scheme
, как показано в примере ниже.sudo vi /etc/tarantool/instances.available/shard-*.lua ... dofile("/etc/findface-security/tnt_schema.lua") ... FindFace.start("127.0.0.1", 8101, { license_ntls_server="127.0.0.1:3133", meta_indexes=meta_indexes, meta_scheme = meta_scheme })
Перезапустите шарды
findface-tarantool-server
.TNT=$(ls /etc/tarantool/instances.enabled/ | cut -c 7,8,9) for i in $TNT; do sudo systemctl restart tarantool@shard-$i.service ; done
Восстановите базу данных Tarantool из резервной копии.
cd /etc/findface_dump for x in *.json; do sudo findface-storage-api-restore -config /etc/findface-sf-api.ini < "$x"; done
Перенесите схему базы данных из FindFace Multi в PostgreSQL, заново создайте предустановленные пользовательские роли и первого администратора.
sudo findface-security migrate sudo findface-security create_groups sudo findface-security create_default_user
Перезапустите сервисы
findface-security
иnginx
.sudo systemctl restart findface-security.service nginx.service
Воссоздайте ранее существовавшие отчеты.
Важно
Следующие вкладки были усовершенствованы и переименованы в FindFace Multi 1.2:
Досье превратились в Карточки
Эпизоды переименованы в Эпизоды -> Люди
Персоны превратились в Кластеры
Важно
Настоятельно рекомендуется отключить автоматическое обновление Ubuntu, чтобы сохранить совместимость FindFace Multi со средой установки. В этом случае вы сможете обновлять ОС вручную, контролируя процесс обновления отдельных пакетов.
Для отключения автоматического обновления Ubuntu выполните следующие команды:
sudo apt-get remove unattended-upgrades
sudo systemctl stop apt-daily.timer
sudo systemctl disable apt-daily.timer
sudo systemctl disable apt-daily.service
sudo systemctl daemon-reload
Примечание
Вы можете дополнительно развернуть Видеомагнитофон. См. Пошаговое развертывание функционала Видеомагнитофон.