Новые возможности подсистемы ActiveCV в SimpleUI

19.06.23

Разработка - Мобильная разработка

Задачи, которые ставятся в прикладных решениях перед ActiveCV, усложняются, поэтому требуется развитие. Теперь недостаточно просто подсвечивать штрихкоды в видеопотоке разными цветами и выводить какие то надписи– требуется распознавать объекты материального мира в целом с их свойствами. Дополнение к статье https://infostart.ru/public/1153616/.

Скачать исходный код

Наименование Файл Версия Размер
Пример прайс-чекера
.epf 12,31Kb
2
.epf 12,31Kb 2 Скачать

Появился новый детектор – multiscanner. Он работает по другому принципу, чем другие детекторы ActiveCV (ActiveCV - это подсистема Simple, которая позволяет организовать альтернативный интерфейс в дополненной реальности и выводить учетные данные в видеопоток). В других детекторах заранее готовятся списки отображаемых объектов (green_list, object_caption_list), и он потом их выводит. А тут по-другому – он захватывает объекты и все, что в объекте – штрихкоды и надписи, и генерирует события по ним, обрабатываемые уже на стороне обработчиков непрерывно.

Т.е. ему важно связать в единую сущность объект материального мира, штрихкоды (если есть в нем) в нем и текст (если есть в нем). Это нужно для того, чтобы, например, захватить табличку оборудования и прочитать поля, которые в ней, или распознать ценник/этикетку, при этом не хватать текст, который есть в кадре вообще, а только в границах объекта.

Далее для простоты рассуждений будем рассматривать пример с ценником. Будем решать задачу прайсчекера: найти ценник, определить по БД, что это за товар, вывести над ценником надпись с названием товара и ожидаемой ценой и далее попытаться найти эту цену в ценнике и если она нашлась – покрасить в зеленый ну и как-нибудь пикнуть.

Уже из постановки задачи видно, что цену и штрихкод надо искать не где попало, а внутри ценника. Поэтому – multiscanner.

 

Первый подход – сканирование всего объекта без ограничений

 

 


Допустим, нам надо распознать такой ценник. Ценники могут быть разные (с разными макетами), мы не знаем, где находится штрихкод и цена.

Если ничего не настраивать, multiscanner работает так:

  1.     Выделяет на экране объекты
  2.     По каждому объекту ищет все штрихкоды/QR и отправляет в обработчики - это бесконечный цикл, он постоянно сканирует и генерирует события 

Далее, согласно логике обработчика, объект может быть подсвечен разными цветами и выведены соответствующие надписи.

Все бы ничего, да вот беда – OCR (распознавание текста) работает медленно и притормаживает видеопоток. Пока еще устройства не такие мощные, чтобы все было плавно.

Поэтому надо стараться включать его только по необходимости.

Цикл работы с каждым ценником такой:

  1.     Найти ценник
  2.     Найти в нем штрихкод
  3.     Проверить по базе. Если есть в БД – покрасить в желтый и оправить искать цену, если нет – покрасить в синий и ничего уже не искать.
  4.     Искать цену, как только нашли – связать с объектом (ценником) результат поиска и прекратить искать цену. Выключить OCR. Покрасить ценник в зеленый цвет.

Достигается это двумя настройками:

  • Переменная CVDetectors, может быть равна barcode или ocr (если не задана, то и то, и другое). Таким образом включается общих для всех объектов режим «что искать в объекте?» - штрихкод или текст
  • Переменная object_detector_mode – задает уже для конкретного объекта что делать: ocr|barcode|stop Т.е. это имеет более высокий приоритет чем CVDetectors. 

Параметры задаются в виде JSON-массива объектов вида: [{“object_id”:<ИД Объекта>, "mode":"barcode|ocr|stop" }]

Таким образом получается, что для каждого ценника проходит цикл Штрихкод-Текст-Стоп, если задать сначала CVDetectors=barcode, а потом object_detector_mode ocr, потом stop

Также появилось еще 2 общие флага настройки:

  • CVSingleDetector – позволяет включить режим захвате в кадре только одного объекта – самого заметного. По умолчанию – до 5 объектов
  • CVSkipNested – позволяет игнорировать объекты, вложенные в другие объекты

 

 

На этом подходе реализован пример простого прайс чекера, который прикреплен к этой статье. Кстати, он реализован не как конфигурация, а как suip-файл, т.е. 1С делает файл в котором и данные о товарах и ценах и сама конфигурация. На устройстве достаточно, чтобы стоял Simple последней версии 11.55.20.

Как им пользоваться:

  1.     Открыть обработку ГенерацияПрайсЧекера.epf в УТ11/КА2/ERP2 или другой похожей конфигурации
  2.     Выбрать тип цен и выгрузить файл
  3.     Отправить на устройство любым способом – мессенджер, почта и т.д.
  4.     Открыть его как текст с помощью SimpleUI (именно открыть, не поделиться)

Ну а как это работает – на гифке - выше.

Важно! Это полностью автоматический прайсчекер, т.е. сканирует еще и цену, а это ресурсоемкая операция - плавно такое работает только на мощных телефонах, с хорошими процессорами и графическими сопроцессорами. Для более слабых девайсов можно отключить OCR в коде - вывод будет только штрихкодов и учетной информации

 


Второй подход – шаблон ценника

 

 

 


Первый подход – универсальный, сработает со всеми форматами объектов. Но можно настроить шаблон так, чтобы он искал штрихкод и считывал данные только из определенных полей. Т.е. на экране будут нарисованы поля, и оператор должен совместить изображение так, чтобы данные попадали в поля. Особенно это актуально для считывания не ценников, а всяких табличек, где есть много полей.

Шаблон рисуется в «Векторном редакторе» в Simple. Полученный файл указывается в процессе в поле mask. Все поля в векторном редакторе рисуются прямоугольниками. Они могут иметь метку (price, barcode и т.д.), могут начинаться с префикса barcode: (“barcode:<метка>”) – что говорит, что в данном поле надо сканировать штрихкод/QR.

Тут есть один нюанс, о истории борьбы с которым я написал отдельный пост: https://telegra.ph/Anons-novoj-fichi-dlya-ActiveCV-02-22

Там же есть видео, как это работает.

В двух словах: все дело в пропорциях – рамки должны быть пропорциональны объекту.

Поэтому при таком подходе в векторном редакторе сначала рисуется прямоугольник c меткой object (зарезервированное слово), а внутри него уже поля, которые надо отсканировать.

Работает это так: мультисканнер ищет объекты примерно с такими же пропорциями как object. Найдя, рисует рамки. В этих рамках он начинает сканировать то, что ему указали (либо barcode, либо текст).

 

Просто рамки

 

 

 


Если сделать шаблон, но не рисовать в нем object, а нарисовать просто одну рамку и указать его потом в процессе в mask, то тогда она будет всегда нарисована на экране и будет происходить сканирование только в этой рамке, а за ее пределами не будет. Т.е. это как бы прицел такой.

 

Фото в процессе работы ActiveCV

 

 

 

ActiveCV создавался как альтернатива традиционному экранному интерфейсу и один из его принципов – бесшовность/непрерывность. Т.е. водишь камерой и все учетные процессы происходят без необходимости куда-то  что-то переключать и нажимать.

И вот теперь, находясь в процессе ActiveCV, можно делать фото прямо из видеопотока. Т.е., например, у вас на ActiveCV сделана инвентаризация, вы считали товар и тут же сделали фото.

Это можно запускать как из обработчика (например, считали товар, послали CVCaptureImage и сделалось фото, привязалось к этому товару), так и повесить, например, на кнопку на экране. Но самое лучшее применение – делать снимок автоматом из обработчика, по какому-то событию.

За фото отвечает команда CVCaptureImage, когда она попадает в поток выполнения, происходит снимок и само фото пишется в файл, а ссылку на файл можно получить в CVCaptureResult в переменной CVCaptureFile.

Фото делается, разумеется, всего, что в данный момент попало в кадр.

Основная статья, где есть файл с комплектом разработчика, с примерами к этой статье: //infostart.ru/1c/tools/1153616/

Телеграмм-канал проекта, в котором масса всего полезного:  https://t.me/devsimpleui

Simple ActiveCV дополненная реальность Android

См. также

"Штрихкод-информер" - мобильный ТСД и прайс-чекер в смартфоне

Мобильная разработка Сканер штрих-кода Терминал сбора данных Управляемые формы Мобильная платформа 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

Сбор заказов, инвентаризация, проверка ценников, просмотр полной информации об остатках и ценах со смартфона Онлайн. Отправка данных со смартфона выполняется либо напрямую в открытую форму документа, отсканировав QR-код, либо в общую корзину учетной системы, не подходя к компьютеру. Кассир или оператор сможет просмотреть список присланных данных и загрузить в любую форму, поддерживающую работу с ТСД. Для работы с мобильным приложением требуется опубликовать HTTP-сервис из поставляемого расширения.

2880 руб.

03.12.2018    55468    141    102    

162

SALE! 25%

Что нам стоит бота построить? Нарисуем - будет жить! Графический конструктор телеграм-ботов/Telegram

Мобильная разработка Мессенджеры и боты Платформа 1С v8.3 Платные (руб)

Теперь создать telegram-бота - элементарно. Достаточно просто нарисовать блок-схему телеграм-бота, и он сразу заработает. Это возможно при использовании Графического конструктора телеграм-ботов. Это единственный конструктор ботов для telegram, чье качество и функционал подтверждены фирмой 1С, есть сертификат 1С:Совместимо. Расширение в интерактивном режиме, с помощью блок-схем, позволяет с минимальными трудозатратами создать телеграм-ботов в любой конфигурации, работающей на платформе «1С:Предприятие 8.3».

13200 9900 руб.

27.12.2021    34054    83    159    

178

"Мобильный ТСД" - инвентаризация и сбор штрихкодов для iOS и Android

Сканер штрих-кода Терминал сбора данных Мобильная разработка Монитор заказов Оптовая торговля Розничная торговля Ценообразование, анализ цен Платформа 1С v8.3 Мобильная платформа 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Управленческий учет Платные (руб)

Простой мобильный терминал сбора данных для смартфонов на iOS и Android, не требующий сложных настроек и установки дополнительных программ. Обмен между Вашей 1С и мобильным приложением осуществляется через облачный сервис и расширение конфигурации. Работает с конфигурациями УТ 11, ERP, КА2, Розница 2, Розница 3, УНФ 1.6, УНФ 3.0. Полнофункциональный демо-доступ для своей конфигурации можно запросить в настройках мобильного приложения - все необходимое придет на почту автоматически.

2000 руб.

22.04.2019    92668    524    186    

299

Склад 15 ВЕЩЕВОЙ - автоматизация складов с маркированным товаром

Логистика, склад и ТМЦ Мобильная разработка Платформа 1С v8.3 1С:Управление торговлей 10 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Программное обеспечение для автоматизации складских операций со встроенными функциями работы с маркированной продукцией. Предназначено для автоматизации всех товароучетных операций на складах, обычных и адресного хранения. «Склад 15 ВЕЩЕВОЙ» объединил в себе несколько товарных групп маркированного товара (ОБУВЬ, ОДЕЖДА, ШИНЫ, ПАРФЮМ, БАДы, ЮВЕЛИРНЫЕ ИЗДЕЛИЯ), которые чаще всего встречаются в складской логистике вместе.

33550 руб.

02.06.2023    3078    2    0    

0

Магазин 15 - приемка товара по штрихкодам или инвентаризация в торговом зале

Логистика, склад и ТМЦ Мобильная разработка Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Розничная и сетевая торговля (FMCG) Россия Платные (руб)

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

12950 руб.

30.05.2023    3502    2    0    

4

Мобильная торговля для Android

Розничная торговля WEB-интеграция Мобильная разработка Мобильная платформа Управленческий учет Платные (руб)

Сис­те­ма поддержки мо­биль­ной тор­гов­ли это про­грам­м­ный ком­плекс, раз­ра­бо­тан­ный для ав­то­ма­ти­за­ции ра­бо­ты тор­го­вых пред­ста­ви­те­лей, за­ни­ма­ю­щих­ся сбо­ром за­ка­зов на смартфонах в точ­ках роз­нич­ной тор­гов­ли, про­да­жей то­ва­ра с ко­лес и мер­чен­дай­зин­гом.

4800 руб.

19.02.2008    42210    24    24    

40

Работа с графикой в браузере (SimpleWEB). Векторный редактор

Мобильная разработка WEB-интеграция Мобильная платформа Абонемент ($m)

В SimpleWEB добавились средства для работы с графикой и отслеживание событий мыши, в онлайн редактор https://seditor.ru:1555/ добавился «Векторный редактор» на этом API. Теперь можно нарисовать схемы складов на ПК, сделать карты (*.sug-файлы) для мобильной платформы SimpleUI, выводить данные из 1С в графическом виде. Таким образом, API для работы с векторными файлами теперь есть и в веб- и в мобильной платформе, а также средства для создания и редактирования векторных файлов есть тоже в обеих платформах.

1 стартмани

20.03.2024    1679    0    informa1555    1    

41
Оставьте свое сообщение