Разработка стенда для моделирования видеопотока

Автор: Чинь В.Т., Ткаченко В.В., Недорезов М.В.

Журнал: Труды Московского физико-технического института @trudy-mipt

Рубрика: Механика

Статья в выпуске: 2 (50) т.13, 2021 года.

Бесплатный доступ

Проектирование стенда для изучения алгоритмов определения траекторных параметров объекта по набору изображений.Использование технологии обработки изображений с помощью смарт-камер для определения параметров объекта.

Компьютерное зрение, видеопоток, смарт-камера, определение траекторных параметров

Короткий адрес: https://sciup.org/142231488

IDR: 142231488   |   DOI: 10.53815/20726759_2021_13_2_75

Текст научной статьи Разработка стенда для моделирования видеопотока

Область компьютерного зрения сегодня активно развивается благодаря появлению систем, способных в режиме реального времени обрабатывать большие объёмы видеоинформации, а. также соответствующих алгоритмов и исследований. Одной из прикладных задач области является определение траекторных параметров движущегося объекта по видеопотоку и удалённого управления объектом по полученным параметрам. Например, в [1] и [2] так решается задача, посадки дрона, на. автомобиль.

Возникает необходимость отрабатывать подобные алгоритмы в пределах лаборатории. Зачастую такая отработка ограничивается тестированием модели с использованием сгенерированного набора, синтетических изображений [3]. В данной статье предлагается совместно с компьютерным моделированием использовать для этих целей подвижный стенд с установленной на. нём системой технического зрения (СТЗ).

Для демонстрации такого подхода, в статье решаются следующие задачи:

  • 1)    Создание компьютерной модели стенда, пригодного для размещения СТЗ.

  • 2)    Подбор компонентов и разработка, стенда.

  • 3)    Подбор компонентов для системы технического зрения и её сборка.

  • 4)    Написание программного обеспечения для управления стендом и СТЗ.

  • 5)    Демонстрация возможности использования СТЗ для определения траекторных параметров.

  • 2.    Постановка задачи

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

Функциональная схема стенда представлена на рис. 1.

Рис. 1. Функциональная схема, стенда.

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

Лазерный дальномер создаёт цель для обнаружения (световое пятно). На схеме это отображено блоком «Создание объекта». Также лазерный дальномер используется для проверки точности измерения расстояния до пятна.

Блок съёмки состоит из камер и роутера, передает полученные изображения на. дисплей и вычислительный блок для идентификации объекта, и вычисления параметров. При необходимости изображения также записываются на. диск.

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

Блок отображения (компьютер или ноутбук) визуализирует сигнал, поступающий с камер, параметры объекта, (расстояние, скорость), параметры управления движением оборудования СТЗ.

Состав системы технического зрения предполагает наличие двух одинаковых камер, осуществляющих съёмку, и вычислительного блока, обрабатывающего полученные изображения, а. также каналов связи между этими элементами. Одновременная съёмка, искомого объекта двумя камерами позволяет получить его пространственные координаты.

3.    Компьютерная модель стенда3.1.    Моделирование в SolidWorks

Проектирование стенда осуществлялось по следующим критериям:

  • -    возможность движения по горизонтальной оси;

  • -    максимальная доступность используемого оборудования;

  • -    устойчивость и стабильность работы;

  • -    лёгкость сборки и замены компонентов;

  • -    компактность и простота установки.

Полученная модель в SolidWorks приведена на рис. 2.

Рис. 2. Модель стенда, в SolidWorks

В модели использованы следующие элементы (табл. 1).

Таблица!

Список оборудования

Номер

Название элементов

Количество

1

Двигатель АД 200-21

01

2

Муфта, соединительная BF-2025-8-10

01

3

Подшипник В К 12

02

4

Рельсовая направляющая СНВ GHR20 1650мм

02

5

Дальномер СЕМ LDM-20

01

6

Шариковый винт SFU 1605 1500мм

01

7

Камера N1-1752

02

8

Подставка, для двигателя и подшипники

03

9

Деревянные опоры 1650x200x50мм

02

10

Модуль опорный Hiwin RGH20CAZAH

04

11

Гайка ШВП SFU 1605

01

12

Стенд для крепления камер

01

На стенде установлены две камеры N1-1752 и далвномер СЕМ LDM-20.

Двигатель соединён с шариковым винтом SFU 1605 через соединительную муфту ВҒ-2025-8-10 (местный А). Система переходит от вращательного движения к поступательному с помощью гайки ШВП SFU 1605 (местный В). Стенд скользит по рельсовой направляющей СНВ GHR20 с помощью опорного модуля Hiwin RGH20CAZAH. Длина шарикового винта SFU 1605 составляет 1500 мм, а длина спирального участка - 1435 мм, поэтому стенд может перемещаться максимум на 1435 мм. Камеры на стенде могут быть закреплены в нескольких положениях. В табл. 2 описаны возможные положения и зависимость линейного размера слепой зоны стереосистемы от них. Рисунок 2 отображает положение с наибольшим расстоянием между камерами - 930 мм.

Т а б л и ц а 2

Зависимость размера слепой зоны от расстояния между камерами

Расстояние между камерами(мм)

Линейный размер слепой зоны (мм)

930

1570

720

1216

500

845

270

456

3.2.    Создание подвижной модели

Рис. 3. Схема, управления движением компьютерной модели

Для управления движением компьютерной модели в Lab View создано ПО, которое взаимодействует с SolidWorks через SoftMotion. Схема управления движением показана на рис. 3. На лицевой панели отображаются начальные настройки скорости и ускорения, информация о перемещении стенда и его скорости и индикаторы конечных точек. Управление движением стенда камеры осуществляется с помощью функций SoftMotion в LabView. Интерфейс модуля показан на рис. 4.

Рис. 4. Интерфейс модуля управления движением

4.    Сборка стенда

На рис. 5 показана схема управления движением стенда.

/              X /            X

Компьютер . Arduino

(LabView)       Nano

k--------------) k            J

Г               Л Г                 ^1

Драйвер к Двигатель (SMSD 4.2) (AD 200-21) k         v к______ _ J

г             X

_^ Перемещение (Стенд камеры)

у____________у

Питание ( АКИП-Б5-71/2М) 1 = 0,2-4,2А у      11=12-487     >

Рис. 5. Схема управления движением

Рис. 6. Общий вид стенда

На рис. 6 показан общий вид собранного стенда.

Компоненты СТЗ включают следующее основное оборудование:

  • -    смарт-камера N1 1752 [4] (х2);

  • -    объектив М0814-МР2 [5] (х2);

  • -    компвютер (в качестве вычислительного блока);

  • -    роутер D-Link DIR-620 [6];

  • -    блок питания N1 PS-12 для камер;

  • -    дальномер СЕМ LDM-20 [7] (для верификации результатов).

  • 5. Обработка видеопотока

Таблица 3 содержит основные характеристики выбранных камер. Важной особенностью является возможность записи на камеру программного обеспечения на LabView. Это позволяет более тонко настроить взаимодействие внутри СТЗ при выборе LabView в качестве среды разработки. В частности, имеется возможность частично или полностью выполнять обработку изображений непосредственно на камерах, существенно уменьшая объём передаваемых по сети данных.

Выбранный роутер поддерживает подключение по Wi-Fi, что упрощает подключение к камерам в процессе отладки ПО для стенда. В то же время для обеспечения больших скоростей работы, предпочтительно использовать подключение по Ethernet.

Выбранный дальномер обеспечивает измерения с погрешностью ±1.5мм на расстоянии до 10 метров, что позволяет использовать его для верификации измерений расстояния.

Т а б л и ц а 3

Характеристики камеры

Характеристика

Значение

Тип изображения

оттенки серого (8бит)

Максимальная частота съёмки

60 кадров в секунду

Максимальное разрешение

640x480 пикселей

Объём встроенной памяти

512 МБ

Объём оперативной памяти

256 МБ

Связь

2 Ethernet порта

Размер матрицы

1/3”

Тип матрицы

ПЗС

Для поиска траекторных параметров объекта по набору изображений необходимо:

  • 1)    для каждого изображения проверить, содержит ли оно искомый объект;

  • 2)    определить положение объекта на изображении;

  • 3)    определить разницу в положении объекта для синхронно снятых кадров с обеих камер.

  • 5.1.    Распознание объекта 5.2.    Определение расстояния и скорости

Для решения задач стереозрения часто выбирают схему съёмки, изображённую на рис. 7. Её особенностью является параллельность осей обеих камер, что позволяет существенно упростить вычисление координат искомого объекта.

Алгоритм обработки изображений создаётся в приложении N1 Vision Assistant. Vision Assistant работает co всеми функциями драйвера IMAQ-Vision и включает средства визуализации этапов работы алгоритма. Это упрощает и ускоряет процесс разработки и отладки алгоритма решаемой задачи для конкретной ситуации. Кроме того, приложение N1 Vision Assistant дает возможность интерактивно контролировать обработку изображения.

Для идентификации объекта используется алгоритм Pattern Matching. Он проверяет наличие заданного шаблона во всем изображении или в интересующей области.

После идентификации объекта параметры положения объекта на изображении будут определены как выходной сигнал функции Vision Assistant и использованы в программе LabView для расчёта.

Рис. 7. Схема, съёмки

Для расчёта расстояния используются две идентичные камеры Аи В, расположенные параллельно и разделённые расстоянием do.

Рис. 8. Определение расстояния до объекта.

На рис. 8 расстояние d от объекта Р до линии, соединяющей две камеры, определяется по изображениям, полученным с камер.

Зависимость расстояния d от значений do, фокусного расстояния объектива / и положения объекта на изображениях определяется следующим образом [8]:

АЕ ЕЕ      PC * ЕЕ рс = АС = -АЕ-

ВН _GH _ PC * GH PC ВС ^   ВН

АВ АС + ВС

PC * ЕЕ АЕ

+

PC * GH ВН

АЕ —ВН — / ^

^ PC

АВ * /

ЕЕ + GH

где АВ = do - расстояние между двумя камерами,

PC = d - расстояние от объекта до камер,

P - объект для наблюдения,

Е - изображение объекта P, полученное через левую камеру, G - изображение объекта P, полученное через правую камеру, / - фокусное расстояние объектива.

Рис. 9. Горизонтальное расстояние от объекта, до центра, изображения

В камерах N1 1752 используется монохромная матрица. Sony ICX424AL с форматом оптики 1/3 дюйма, 640 х 480 пикселей. Пиксель равен 7,4 мкм х 7,4 мкм. Размеры светочувствительной части датчика, составляют 4,736 мм в горизонтальном направлении и 3,552 мм в вертикальном направлении. Поэтому значения d^ и dR рассчитываются следующим образом:

dL/R — AX х 0, 0074 (мм),

где X (пиксель) - горизонтальное расстояние от объекта до центра изображения (рис. 9).

Для определения мгновенной скорости используются две пары снимков, полученных с известным промежутком по времени At:

%+At

Xt+At Xt

At

5.3.    Программная реализация

Рис. 10. Схема, программной реализации

Ключевыми особенностями программной реализации методики для тестового стенда, являются распределение ПО между элементами СТЗ и параллелвная обработка, данных с обеих камер.

На рис. 10 показана, схема, программной реализации.

Для начала, рассмотрим модули, расположенные на. смарт-камерах. Их основная функция - непрерывная съёмка, изображений с заданными параметрами и отправка, их на. вычислительный блок по Ethernet-каналу. (Обмен данными осуществляется при помощи сетевых потоков [9].) Полученные изображения можно вывести на. экран вычислительного блока.

Все остальные модули расположены на. вычислительном блоке и имеют схожую структуру. Каждый из них содержит цикл с условием. Итерация цикла, заключается в обработке сообщения из очереди и выполнении набора действий, зависящего от пришедшего сообщения. Каждый цикл имеет собственную очередь сообщений и может записывать сообщения в свою очередь и в очередь управляющего блока. (В соответствии с используемым шаблоном разработки [10], очереди сообщений представляют собой набор из текстового поля и поля данных типа. Variant [И].)

Основная функция обработчика событий - отслеживать действия пользователя.

Управляющий блок может записывать сообщения во все очереди и используется для управления работой остальных модулей.

Модули управления камерами получают изображения с камер по Ethernet-каналу и записывают их в очереди. Обработчики изображений обрабатывают полученные кадры методом геометрического соответствия, возвращая кластеры, содержащие данные распознания. (Многопоточная работа этих циклов для двух камер осуществляется с помощью предварительного клонирования пространства, данных модуля [12].) Эти кластеры обрабатываются вычислителем траекторных параметров, чтобы получить расстояние до нужного объекта и при необходимости его мгновенную скорость.

Интерфейс программы показан на. рис. 11.

Рис. 11. Интерфейс программы для управления стендом

6.    Эксперимент по определению расстояния до объекта

Был проведён эксперимент по определению расстояния до объекта в процессе движения стенда. Точность перемещения стенда при этом проверялась вручную, а точность определения расстояния до объекта контролировалась дальномером. Схема проведения замеров приведена на рис. 12.

Рис. 12. Схема проведения замеров

Рис. 13. Назначение интервалов измерения

Точность перемещения стенда определяется статистическими показателями, которые находят по результатам измерений, выполняемых в контрольных точках отдельно для положительного и отрицательного направлений движения. Контрольными точками 1, 2, 3,

..., т (рис. 13) являются границы интервалов, на которые разбивается контролируемый участок Аж.

В эксперименте производилось определение точности перемещения стенда и точности определения расстояния до объекта. Результаты при перемещении стенда на 850 мм с шагом Аж = 50 мм представлены в табл. 4. На рис. 14 приведены графики относительной погрешности. Перемещение стенда и связанные с ним параметры обозначались буквой L, а расстояние до объекта - буквой S.

Т а б л и ц а 4

Полученные результаты

Перемещение стенда

Расстояние до объекта

-^зад(мм)

L(mm)

AL(mm)

%)

Ssafl(MM)

S(mm)

AS(mm)

5S( %)

0

0

0

0

0,00

2837

2807

30

1,07

1

50

50

0

0,00

2787

2755

32

1,14

2

100

99

1

1,00

2738

2714

24

0,86

3

150

148

2

1,33

2688

2665

23

0,85

4

200

198

2

1,00

2638

2619

19

0,72

5

250

248

2

0,80

2588

2570

18

0,71

6

300

298

2

0,67

2537

2525

12

0,49

7

350

348

2

0,57

2486

2477

9

0,34

8

400

397

3

0,75

2437

2427

10

0,40

9

450

447

3

0,67

2387

2380

7

0,29

10

500

497

3

0,60

2337

2334

3

0,13

11

550

547

3

0,55

2287

2281

6

0,24

12

600

597

3

0,50

2236

2239

3

0,11

13

650

648

2

0,31

2186

2188

2

0,10

14

700

698

2

0,29

2136

2140

4

0,19

15

750

747

3

0,40

2086

2093

7

0,33

16

800

797

3

0,38

2037

2044

7

0,32

17

850

848

2

0,24

1987

1995

8

0,42

18

800

798

2

0,25

2037

2044

7

0,32

19

750

748

2

0,27

2086

2093

7

0,33

20

700

698

2

0,29

2137

2141

4

0,19

21

650

648

2

0,31

2186

2189

3

0,15

22

600

598

2

0,33

2236

2237

1

0,07

23

550

548

2

0,36

2286

2285

1

0,06

24

500

498

2

0,40

2337

2333

4

0,18

25

450

448

2

0,44

2386

2381

5

0,21

26

400

398

2

0,50

2436

2428

8

0,32

27

350

348

2

0,57

2486

2475

11

0,43

28

300

299

1

0,33

2536

2525

11

0,45

29

250

249

1

0,40

2587

2572

15

0,59

30

200

199

1

0,50

2637

2617

20

0,76

31

150

149

1

0,67

2687

2664

23

0,86

32

100

99

1

1,00

2737

2711

26

0,94

33

50

50

0

0,00

2787

2758

29

1,03

34

0

0

0

0,00

2837

2805

32

1,11

35

Средняя ошибка

1,80

0,48

Средняя ошибка

12,29

0,48

Средняя погрешность движения в эксперименте составила 1,8 мм, а средняя погрешность измерения расстояния системой технического зрения - 12,29 мм.

Рис. 14. График результатов измерения

7.    Результаты

Смоделирован и изготовлен подвижный стенд для проведения экспериментов по определению расстояния до объекта и его мгновенной скорости. Разработано программное обеспечение на LabView для управления движением стенда, получения и обработки информации с камер.

На данный момент система имеет следующие ограничения:

  • -    низкая скорость движения;

  • -    одна степень свободы;

  • -    ненадёжность используемого метода обнаружения объектов на изображении.

В то же время стенд уже допустимо использовать для экспериментов по определению расстояния до объектов. Проведённый эксперимент показал, что стенд работает стабильно, с погрешностью движения, не превышающей 3 мм. Погрешность определения расстояния до объекта в эксперименте не превышала 32 мм.

Список литературы Разработка стенда для моделирования видеопотока

  • Muskardin Т. \e.t al.}. Landing of a Fixed-wing UAV on a Mobile Ground Vehicle /7 IEEE International Conference on Robotics and Automation (ICRA). 2016. P. 1237 1242.
  • Borowczuk A. \e.t al.}. Autonomous Landing of a Multirotor Micro Air Vehicle on a High Velocity Ground Vehicle. 2016. URL: https://arxiv.org/abs/1611.07329 (10.03.2021)
  • Tsirikoglou A., Eilert.sen G., Unge.r J. A Survey of Image Synthesis Methods for Visual Machine Learning /7 Computer Graphics Forum. 2020. 39: 426-451
  • N1 17xx Smart Camera User Manual. URL: http:///4vww.ni.(x)m/pdf/manuals/372429c.pdf (10.3.2021).
  • M0814 MP2. URL: https://complitar.com/file?id 161 (10.3.2021).
  • D-Link DIR-320 User Manual. URL:https://www.dlink.ru/mn/products/5/786.html (10.3.2021).
  • LDM-20 Лазерный дальномер. URL: http://www.ccm-instrumcnts.ru/lazcrnic-dalnomc-ri/ldm-20-lazcrnyj-dalnomcr.html (10.3.2021).
  • Hartley R., Zisserman A. Multiple View Geometry in Computer Vision (2nd ed.). Cambridge : Cambridge University Press, 2004.
  • Lossless Communication with Network Streams: Components, Architecture, and Performance. URL: https://www.ni.com/ru-ru/innovations/white-papers/10/lossless-co-mmunication-with-network-streains-components-axchite.html (10.3.2021).
  • Queued Message Handler Template Documentation. URL: http://www.ni.com/tutorial/ 53391/en/ (10.3.2021).
  • Variant Data. URL: https://zone.ni.com/reference/en-XX/help/371361R-01/lvhowto/ variants/ (10.3.2021).
  • Reentrancv: Allowing Simultaneous Calls to the Same SubVI. LabVIEW 2015 Help. URL: http://zone.ni.com/reference/en-XX/help/371361M-01/lvconcepts/reentrancv/ (10.3.2021).
Еще
Статья научная