На кассе самообслуживания может использоваться визуальное распознавание товаров из каталога. Принцип работы:
- Покупатель нажимает кнопку "Каталог товаров";
- Касса требует взвесить товар на прикассовых весах;
- После получения стабильного положительного веса с весов, автоматически выполняется распознавание;
- Покупателю отображается список наиболее похожих товаров;
- Покупатель выбирает нужный товар для добавления в чек.
Настройка распознавания
В режиме формирования необходимо изменить команду кнопки "Каталог товаров" на GOODSDETECTOR_DETECT. Подробнее об изменении кнопок в режиме формирования можно прочитать в статье "Кнопки в режиме формирования чека".
[Check.FormingForm.actions.1] ; Кнопка отображения каталога для ручного выбора товара command = GOODSDETECTOR_DETECT text = formingPickList type = middle [Check.FormingForm.actions.2] ; Кнопка ввода штрих-кода вручную command = CHECK_MANUALINPUT text = formingInput [Check.FormingForm.actions.3] ; Кнопка получения электронного чека command = CHECK_INPUTCUSTOMERADDRESS text = formingElCopy
Далее необходимо включить модуль и указать сервис распознавания.
Наименование | Возможные значения | Описание | Примечание |
|---|---|---|---|
Файл /opt/sst-sco/conf/goodsdetector.ini, секция [GoodsDetector], настройки модуля визуального распознавания товаров | |||
| enable |
| Включение модуля | |
service |
по умолчанию не указан | Какой сервис используется для распознавания.
| |
disableLearning |
| Отключить обучение сервиса распознавания. Если true, то после выполнения распознавания и выбора товара данные в сервис не отправляются | |
collectLearning |
| Сбор данных. Отправлять на обучение товары, которые покупатель выбрал в каталоге товаров | |
onlyLearning |
| Только сбор данных. Отключить распознавание; отправлять на обучение товары, которые покупатель выбрал в каталоге товаров | Если значение параметра true, то кнопка "Определить товар" не отображается |
| useScale |
| Получать вес с прикассовых весов перед распознаванием. Кроме получения веса, факт взвешивания используется для определения момента, в который можно выполнить распознавание | |
| autoDetection |
| Автоматическое распознавание товара. | Если значение параметра |
| detectionDelay | числовой по умолчанию 1000 | Задержка перед вызовом распознования при получении веса для настройки Если за время, указанное в параметре, вес изменится, то таймер будет перезапущен | |
При отображении списка распознанных товаров по умолчанию не указывается наименование подкаталога. При необходимости, его можно задать, id сообщения goodsDetectorLayer. Подробнее об изменении текста в интерфейсе можно прочитать в "Язык и изменение текста".
Обучение и распознавание товаров выполняется на сервере системы распознавания товаров. На кассе осуществляется подготовка данных для отправки и обработка ответа от сервера. Данное поведение определяется комбинацией настроек кассы, указанных в таблице.
Другие комбинации значений использовать не рекомендуется.
| Режим работы | Настройки | Поведение | Примечания | ||
|---|---|---|---|---|---|
| collectLearning | disableLearning | onlyLearning | |||
| Основной режим. Отправка данных при выборе товара из предложенных системой распознавания | false | false | false | При выборе одного из распознанных товаров данные о нем будут отправлены на сервер для дообучения | |
Без обучения. Отправка данных для обучения осуществляться не будет | false | true | false | При нажатии кнопки "Определить товар" будет осуществлена попытка распознавания товара. При выборе одного из распознанных товаров данные о нем отправлены на сервер для обучения не будут | |
Фоновый сбор данных при добавлении товара из каталога (без распознавания) | false | false | true | При выборе из каталога данные товара (в том числе его фото с камеры) будут отправлены на сервер системы распознавания для обучения | Кнопка "Определить товар" не отображается |
Фоновый сбор данных при добавлении товара из каталога (с распознаванием и обучением) | true | false | false | При выборе из каталога данные товара (в том числе его фото с камеры) будут отправлены на сервер системы распознавания для обучения. При нажатии кнопки "Определить товар" будет осуществлена попытка распознавания товара. | |
Система Estesis
В системе распознавания товаров Estesis реализована возможность автоматического добавления товара, которая задается настройкой instantAddingLevel. Данная настройка устанавливает порог уровня распознавания товара, при достижении которого товар будет автоматически добавлен в чек.
Пример
При instantAddingLevel = 50:
- если от сервера получены товары с уровнями распознавания 40 и 50, то товар с уровнем 50 будет автоматически добавлен в чек;
- если от сервера получены товары с уровнями распознавания 50 и 55, то необходимо выбрать нужный товар из списка.
Настройка сервиса.
Наименование | Возможные значения | Описание |
|---|---|---|
Файл /opt/sst-sco/conf/goodsdetector.ini, секция [GoodsDetector.Estesis], настройки сервиса распознавания Estesis | ||
| url | http://адрес:порт по умолчанию не указан | Адрес сервера Estesis |
| cameraIp | ip по умолчанию 127.0.0.1 | Адрес web-камеры |
| cameraPort | порт по умолчанию 8080 | Порт web-камеры |
| instantAddingLevel | от 0 до 100 по умолчанию 0 | Порог уровня распознавания для автоматического добавления товара |
[GoodsDetector] enable = true service = estesis [GoodsDetector.Estesis] url = http://127.0.0.1:4001 cameraIp = 127.0.0.1 cameraPort = 8080 instantAddingLevel = 0
Система SmartScales
Настройка сервиса.
Наименование | Возможные значения | Описание |
|---|---|---|
Файл /opt/sst-sco/conf/goodsdetector.ini, секция [GoodsDetector.SmartScales], настройки сервиса распознавания SmartScales | ||
| cashboxId | уникальный Id SmartScales по умолчанию не указан | Уникальный идентификатор кассы в системе SmartScales |
| url | http://адрес:порт по умолчанию не указан | Адрес сервера в формате http://адрес:порт, например http://smartscales.infertech.ru:80 |
| camera |
по умолчанию камера не используется | Камера. |
| cameraResolution | Список доступных разрешений камеры | Разрешение получаемого изображения. |
[GoodsDetector] enable = true service = smartscales [GoodsDetector.SmartScales] cashboxId = <уникальный идентификатор> url = http://smartscales.infertech.ru:80
[GoodsDetector] enable = true service = smartscales [GoodsDetector.SmartScales] cashboxId = <уникальный идентификатор> url = http://smartscales.infertech.ru:80 camera = /dev/video0 cameraResolution = 1920x1080
Для работы системы распознавания SmartScales необходимо:
- Настроить секцию
[GoodsDetector.SmartScales]. - Поместить скрипт для обновления ассортимента smartscales_update.py в кассу.
Запустить скрипт:
python /<путь_до_скрипта>/smartscales_update.py
Распознавание без прикассовых весов
Распознавание можно использовать и без прикассовых весов, но покупателю необходимо самому нажимать на кнопку "Определить товар".
Этот вариант использования не очевидный для покупателя, он, как правило, не будет нажимать на кнопку "Определить товар".
Принцип работы:
- Покупатель нажимает кнопку "Каталог товаров";
- Сразу отображается каталог, сверху отображается кнопка "Определить товар";
- Покупатель располагает товар под камерой и нажимает кнопку;
- Покупателю отображается список наиболее похожих товаров;
- Покупатель выбирает товар для добавления в чек.
Для использования распознавания без весов необходимо установить настройку useScale в значение false. Кнопка "Каталог товаров" в режиме формирования при этом не меняется.
Распознавание товаров из многоуровневого каталога по штрих-коду (Artix SCO)
Поиск товаров в каталоге при распознавании выполняется по кодам, полученным от сервиса распознавания.
По умолчанию в многоуровневом каталоге указываются только коды товаров. После выполнения распознавания и выбора товара будет отправлен в сервис код выбранного товара.
Если в многоуровневом каталоге используются штрих-коды товара вместо кодов, то для корректного поиска необходимо включить настройку pickListCodesIsBarcodes. После выполнения распознавания и выбора товара будет отправлен в сервис штрих-код выбранного товара. Для отключения отправки данных используется параметр disableLearning.
| Наименование | Возможные значения | Описание |
|---|---|---|
Файл /linuxcash/cash/conf/ncash.ini.d/sstsco.ini, секция [SstSco], настройки интеграции с SCO | ||
| pickListCodesIsBarcodes |
| Расценивать коды в таблице picklist как штрих-коды |