Оценка точности методов построения карт глубин по стереокадрам
Автор: Jirobass37 • Июнь 2, 2023 • Реферат • 693 Слов (3 Страниц) • 196 Просмотры
УДК 004.932
ОЦЕНКА ТОЧНОСТИ МЕТОДОВ ПОСТРОЕНИЯ КАРТ ГЛУБИН ПО СТЕРЕОКАДРАМ
Д.М. Батенко, студент каф. ТУ
Научный руководитель В.В. Капустин, доцент каф. ТУ, к.т.н.
Проект ГПО ТУ-2204. Методы и алгоритмы машинного зрения для навигации автономных мобильных роботов и интеллектуальных транспортных средств
г. Томск, ТУСУР, batenko2003@mail.ru
В работе приведены результаты сравнение двух методов построения карт глубин по заранее созданным стереокадрам
Ключевые слова: техническое зрение, стереокадры, карта глубин
Существуют различные методы построения карт глубин, из которых два широко распространены — Block Matching (BM) и Semi-Global Block Matching (SGBM) [1]. В данной работе было проведено сравнение точности этих двух методов построения карт глубин.
BM и SGBM являются версиями алгоритма block matching, использующего блочную сетку для вычисления смещений каждого блока изображения. Основное отличие между BM и SGBM заключается в том, что SGBM использует глобальный алгоритм для поиска наилучшего смещения блока, в то время как BM использует локальный алгоритм. Это означает, что SGBM имеет более высокую точность, но требует больше времени для вычисления. Работа проводилась с помощью рабочей установки, состоящей из камеры VAC-136-USB, параметры которой указаны в табл. 1, и платформы, по которой передвигается камера. Установка подключена к компьютеру. С помощью компьютера задается расстояние, на которое передвинется камера и записывается изображение, снятое на камеру.
Таблица 1 – Параметры камеры
Параметр | Значение |
Частота кадров, Гц | 30 |
Цветность | Чёрно-белая |
Тип (размер) матрицы | КМОП 1/3 |
Выходное разрешение матрицы, мегапикселей | 1,3 |
Разрешающая способность, ТВЛ | 800 |
Разрешение максимальное, пикселей | 1280 х 960 |
Тип объектива | C/CS-Mount |
Размер пикселя, мкм | 3,75 х 3,75 |
Для получения изображений использовалось приложение EVSCAP. В результате была выполнена съемка сцены с двух положений камеры.
Измерение дальности проводилось по формуле:
[pic 1]
Где f – фокусное расстояние объективов видеокамер, а Ip – линейный размер пикселя, B – база стереосистемы в метрах, Δn – значение смещения в пикселях.
Для оценки точности методов была создана композиция, на которой находились следующие объекты: огнетушитель, тубус и пластиковый стакан. Дальность до объектов была предварительно измерена лазерным дальномером BOSCH DLE 50 и сведена в табл. 2.
Таблица 2 – Расстояние до тестовых объектов
Объект | Расстояние, м |
Тубус | 3,2 |
Стакан | 2,8 |
Огнетушитель | 4,2 |
Далее с помощью камеры было отснято 2 кадра при смещении камеры на 25 мм и фокусном расстоянии объектива в 16 мм, после чего был создан стереокадр из имеющихся кадров, представленный на рисунке 1.
Для каждой пары изображений на языке Python [2] были написаны алгоритмы с использованием библиотеки OpenCV реализующие методы BM и SGBM [3].
Параметры, использованные в BM и SGBM:
- minDisparity – минимально возможное значение диспаратности.
- numDisparities – максимальное несоответствие минус минимальное несоответствие.
- blockSize – соответствующий размер блока.
- uniquenessRatio – если несоответствие наилучшего соответствия не лучше всех других несоответствий в диапазоне поиска, пиксель отфильтровывается.
Результаты, показывающие карты глубин для одной из пар изображений, представлены на рис. 2, 3.
[pic 2]
Рисунок 1. Совмещённый левый и правый кадры
[pic 3]
Рисунок 2. Карта глубин, построенная с помощью метода BM
В данном методе на карте BM очертания объектов различимы, но во внутренних областях огнетушителя и стакана есть пропуски. Так же не отображается столешница и плохо различим задний фон, из чего следует, что данный метод в визуальном качестве уступает SGBM. Измерение времени проводилось с помощью стандартного модуля time в Python. После загрузки необходимых изображений, добавлялась функция time.time(), после которой начинался отсчёт времени. В конце алгоритма завершалось измерение функции time.time() и на экран выводилась разница между стартом отсчёта и завершением.
...