ОПТИКО-ЭЛЕКТРОННОЕ УСТРОЙСТВО ДЛЯ ТРЁХМЕРНОГО ВОСПРИЯТИЯ С ОПТИКО-ЭЛЕКТРОННЫМ ДАТЧИКОМ С ТРАНСФОКАТОРОМ

Полезная модель относится к вычислительной технике и робототехнике и может быть использована для обнаружения, вычисления параметров (в том числе и для трехмерного (пространственного) в декартовой системе координат) и последующего распознавания объектов рабочей сцены и предназначено для установки на мобильные подвижные объекты, такие как транспортные роботы и подвижные робототехнические платформы для транспортировки грузов внутри складских помещений и на местности, выполнения задач дистанционного обнаружения и распознавания объектов.
Известна стерео система технического зрения (пат. №8649940 США, Method and stereo vision system for managing the unloading of an agricultural material from a vehicle, опубл. 11 февраля 2014, заявка 13/419818, 14 марта 2012, Bonefas, Zachary), состоящая из процессора обработки изображений, двух оптико-электронных датчиков, недостатком которой является низкая точность, обусловленная вариантом построения стереосистемы из двух оптико-электронных датчиков широкого обзора, погрешность которой (погрешность вычисления координат объектов этой системой технического зрения) зависит от расстояния между оптико-электронными датчиками и, кроме того, ограничена разрешающей способностью оптико-электронных датчиков.
Известно мульти видеокамерная система технического зрения (пат. США №8643724, опубл. 4 февраля 2014, Multi-camera vision system for a vehicle), состоящая из трех оптико-электронных датчиков (ОЭД), закрепленных на соответствующих позициях, поля наблюдения первого и третьего оптико-электронные датчики взаимноперекрываются, а поле зрения второго ОЭД перекрывается с полем зрения третьего ОЭД, в результате, по словам авторов, обеспечивается возможность неперекрывающегося наблюдения объектов контроля. Недостатком устройства также является низкая точность потенциального (система 8643724 не включает модулей для вычисления) вычисления трехмерных координат объектов.
Известно также оптико-электронное устройство, установленное на мобильном роботе (пат. США №5219264, опубл. 15 января 1993), состоящее из ОЭД на базе прибора с зарядовой связью, закрепленного на манипуляторе и процессорного модуля. Недостатком является отсутствие возможности трехмерной реконструкции рабочей сцены вследствие отсутствия возможности бинокулярного восприятия по изображениям с единственного ОЭД (для трехмерного восприятия необходимо не менее двух ОЭД, взаимное положение которых в пространстве известно).
Наиболее близким к предлагаемой полезной модели является автономный мобильный робот для сбора дикоросов и способ управления им (пат. РФ. 2424892, опубл. 14.07.2009, RU (11) 2424892 (13) C2), недостатком которого является низкая точность вычисления трехмерных координат объектов, обусловленная особенностями расположения бинокулярной пары видеодатчиков (в терминологии авторов заявки это блок «вертикального зрения») и особенностями назначения робота - вычисления характеристик и распознавания дикорастущих близко расположенных к роботу растений, тогда как для далеко расположенных объектов погрешность измерений будет значительной.
Технической задачей полезной модели является повышение точности вычисления координат объектов и измерения их геометрических характеристик в пространстве.
Задача решается тем, что в известное устройство введены системная шина (СШ), первый оптико-электронный датчик (ОЭД), содержащий первый объектив и первый приемник изображения (ПИ), второй оптико-электронный датчик, содержащий второй объектив и второй приемник изображения (ПИ), система ориентации ОЭД, контроллер ориентации, первый контроллер ввода изображения, второй контроллер ввода изображения, модуль расчета характерных особенностей, модуль сегментации, модуль фильтрации, модуль сопоставления особенностей, модуль обнаружения движения, модуль формирования объектов, модуль уточнения координат объектов, модуль выбора калибровочного объекта, модуль сопоставления объектов, модуль вычисления трехмерных координат, модуль расчета калибровочных параметров, модуль идентификации объектов, коммуникационный контроллер, вычислитель, оперативное запоминающее устройство (ОЗУ), причем вход-выход первого приемника изображения является входом-выходом первого ОЭД и подключен первому входу-выходу первого контроллера ввода изображения, второй вход-выход которого подключен к четвертому входу выходу системной шины, вход-выход второго приемника изображения является входом-выходом второго ОЭД и подключен первому входу-выходу второго контроллера ввода изображения, второй вход-выход которого подключен к второму входу выходу системной шины, вход системы ориентации ОЭД подключен к выходу контроллера ориентации, вход-выход которого подключен к первому входу-выходу системной шины, вход-выход модуля расчета характерных особенностей подключен к третьему входу-выходу СШ, вход-выход модуля сегментации подключен к шестому входу-выходу СШ, вход-выход ОЗУ подключен к пятому входу-выходу СШ, вход-выход модуля фильтрации подключен к восьмому входу-выходу СШ, вход-выход модуля сопоставления особенностей подключен к седьмому входу-выходу СШ, вход-выход модуля обнаружения движения подключен к девятому входу-выходу СШ, вход-выход модуля вычисления трехмерных координат подключен к десятому входу-выходу СШ, вход-выход модуля формирования объектов подключен к одиннадцатому входу-выходу СШ, вход-выход модуля выбора калибровочного объекта подключен к восемнадцатому входу-выходу СШ, вход-выход модуля сопоставления объектов подключен к тринадцатому входу-выходу СШ, вход-выход модуля уточнения собственных координат подключен к двенадцатому входу-выходу СШ, вход-выход модуля расчета калибровочных параметров подключен к пятнадцатому входу-выходу СШ, вход-выход модуля идентификации объектов подключен к четырнадцатому входу-выходу СШ, вход-выход вычислителя подключен к шестнадцатому входу-выходу СШ, первый вход-выход коммуникационного контроллера подключен к семнадцатому входу-выходу СШ, второй вход-выход коммуникационного контроллера является входом-выходом всего устройства и предназначен для приема и передачи данных и команд.
Сущность изобретения поясняется чертежом, где на фиг. 1 показана структурная схема устройства.
Устройство содержит (фиг. 1) системную шину 100, первый оптико-электронный датчик 120, содержащий первый объектив 1 и первый приемник 2 изображения (ПИ), второй оптико-электронный датчик 340, содержащий второй объектив 3 и второй приемник изображения 4, систему ориентации ОЭД 5, контроллер ориентации 6, первый контроллер ввода изображения 7, второй контроллер ввода изображения 8, модуль расчета характерных особенностей 9, модуль сегментации 11, модуль фильтрации 13, модуль сопоставления особенностей 14, модуль обнаружения движения 15, модуль формирования объектов 18, модуль вычисления трехмерных координат 17, модуль выбора калибровочного объекта 19, модуль сопоставления объектов 20, модуль уточнения собственных координат объектов 21, модуль расчета калибровочных параметров 23, модуль идентификации объектов 24, коммуникационный контроллер 26, вычислитель 25, оперативное запоминающее устройство (ОЗУ) 12, причем вход-выход первого приемника изображения 2 является входом-выходом первого ОЭД 120 и подключен первому входу-выходу первого контроллера ввода изображения 7, второй вход-выход контроллера ввода изображения 7 подключен к четвертому входу выходу системной шины 100, вход-выход второго приемника изображения 3 является входом-выходом второго ОЭД 340 и подключен первому входу-выходу второго контроллера ввода изображения 8, второй вход-выход второго контроллера ввода изображения 8 подключен к второму входу выходу системной шины 100, вход системы ориентации ОЭД 5 подключен к выходу контроллера ориентации 6, вход-выход контроллера ориентации 6 подключен к первому входу-выходу системной шины 100, вход-выход модуля расчета характерных особенностей 9 подключен к третьему входу-выходу СШ 100, вход-выход модуля сегментации 11 подключен к шестому входу-выходу СШ 100, вход-выход ОЗУ 12 подключен к пятому входу-выходу СШ 100, вход-выход модуля фильтрации 13 подключен к восьмому входу-выходу СШ 100, вход-выход модуля сопоставления особенностей 14 подключен к седьмому входу-выходу СШ 100, вход-выход модуля обнаружения движения 15 подключен к девятому входу-выходу СШ 100, вход-выход модуля вычисления трехмерных координат 17 подключен к десятому входу-выходу СШ 100, вход-выход модуля формирования объектов 18 подключен к одиннадцатому входу-выходу СШ 100, вход-выход модуля выбора калибровочного объекта 19 подключен к восемнадцатому входу-выходу СШ 100, вход-выход модуля сопоставления объектов 20 подключен к тринадцатому входу-выходу СШ 100, вход-выход модуля уточнения собственных координат 21 подключен к двенадцатому входу-выходу СШ 100, вход-выход модуля расчета калибровочных параметров 23 подключен к пятнадцатому входу-выходу СШ 100, вход-выход модуля идентификации объектов 24 подключен к четырнадцатому входу-выходу СШ 100, вход-выход вычислителя 25 подключен к шестнадцатому входу-выходу СШ 100, первый вход-выход коммуникационного контроллера 26 подключен к семнадцатому входу-выходу СШ 100, второй вход-выход коммуникационного контроллера 26 является входом-выходом всего устройства и предназначен для приема и передачи данных и команд.
Устройство работает следующим образом. Устройство работает в двух режимах - основном, в котором оно выполняет функции измерения трехмерных координат объектов и идентификации объектов, и в режиме калибровки, в котором минимизируются возникающие с течением времени погрешности.
Рассмотрим более подробно процесс функционирования в каждом из режимов. Общим процессом у обоих режимов является процесс получения изображения. Оптическое излучение фокусируется первым и вторым объективами 1 и 3 на соответственно первый и второй приемники изображения 2 и 4, которые преобразуют излучение в электрический сигнал, характеризующий яркость каждого пиксела. Далее с входов-выходов первого 2 и второго 4 приемников изображения изображения (здесь и далее под изображениями в множественном числе подразумеваются изображения с первого 2 и второго 4 приемников изображения, слова «кадр изображения», «изображение», «кадр» носят одинаковый смысл) передаются на первые входы-выходы первого 7 и второго 8 контроллеров ввода изображений. Затем первый 7 и второй 8 контроллеры ввода изображения производят аналого-цифровое преобразование каждого пиксела изображения для их представления в цифровой форме, после чего со вторых входов-выходов первого 7 и второго 8 контроллеров ввода изображения кадры изображения поступают соответственно на второй и четвертый входы-выходы системной шины 100 и далее с пятого входа-выхода системной шины 100 записываются через вход-выход ОЗУ 12 в ОЗУ 12. Первый 7 и второй 8 контроллеры ввода изображения могут быть реализованы, например, по схеме, представленной в [Пат. №2295153 РФ, МКИ G09K 32/00. Корректирующее устройство ввода изображения в ЭВМ [Текст] / М.И. Труфанов, Д.В. Титов. - №2005120848; заявлено 4.07.2005; опубл. 10.03.2007, Бюл. №7. - 6 с].
Модуль фильтрации 13 через свой вход-выход и далее восьмой вход-выход СШ 100 и далее через пятый вход-выход СШ 100 и вход-выход ОЗУ 12 считывает изображения из ОЗУ 12, уменьшает в режиме обработки скользящим окном (подробно представлено, например, в [Адаптивные системы технического зрения / В.Н. Гридин, В.С. Титов, М.И. Труфанов; Центр информационных технологий в проектировании РАН. 18 ВК 978-5-02-025391-9. - М.: Наука, 2009. - 441 с.]) влияние случайных помех на изображении и записывает через свой вход-выход, восьмой вход-выход СШ 100, пятый вход-выход СШ 100 и вход-выход ОЗУ 12 исправленные изображения в ОЗУ 12, в результате в ОЗУ 12 сформированы два кадра изображения (с первого 2 и второго 4 приемников изображений) с пониженным уровнем шума и систематических искажений. Дальнейшее функционирование устройства в основном режиме и режиме калибровки различается.
В основном режиме модуль сегментации 11 осуществляет декомпозицию изображения на отдельные локальные сегменты. Для этого изображения считываются из ОЗУ 12 через вход-выход ОЗУ 12, пятый вход-выход СЩ 100, шестой вход-выход СШ 100 и вход-выход модуля сегментации 11 и подаются в модуль сегментации 11 где они согласно способу [Пат. №2365998, МПК G06T9/00. Способ формирования панорамных изображений [Текст] / Е.И. Бугаенко, М.И. Труфанов, П.А. Сорокин - №2006144943 заявл. 18.12.2006; опубл. 27.08.09, Бюл. №24. - 14 с] сегментируются на отдельные обособленные области по цветоконтрастным характеристикам.
Одновременно с этим модуль расчета характерных особенностей 9 обнаруживает на разных кадрах изображений (здесь и далее, если не указано иное, под разными кадрами понимаются два кадра, один из которых, получен с первого ОЭД 120, а второй со второго ОЭД 340), записанных после фильтрации модулем фильтрации 13 в ОЗУ 12 считанных из ОЗУ 12 через его (ОЗУ 12) вход-выход на пятый вход-выход СШ 100 и далее на третий вход-выход СШ 100 и далее на вход-выход модуля расчета характерных особенностей 9 рассчитывает так называемые характерные особенности [см. например, Lowe, D.G. Object recognition from local scale-invariant features [Text.] // In Proceedings of the 7th International Conference on Computer Vision, Kerkyra, Greece, 1999, P. 1150-1157. Lindeberg, T. Feature Detection with Automatic Scale Selection [Text] // International Journal of Computer Vision, v. 30 n. 2, Nov. 1998, P. 79-116.], которые представляют собой уникальные в локальной области объекты (точечные, линейные, площадные) затем использующиеся для сопоставления одних и тех же объектов на разных кадрах. Параметры характерных особенностей записываются в ОЗУ 12. Для этого модуль расчета характерных особенностей 9 со своего входа-выхода передает их на третий вход-выход СШ 100, далее на пятый вход-выход СШ 100 и далее на вход-выход ОЗУ 12.
Сопоставление особенностей производит модуль сопоставления особенностей 14. Для этого набор параметров характерных особенностей, записанный в ОЗУ 12, считывается через вход-выход ОЗУ 12, пятый вход-выход СШ 100, седьмой вход-выход СШ 100, вход-выход модуля сопоставления особенностей 14 модулем сопоставления особенностей 14. Модуль сопоставления особенностей на основе выявления пар наиболее близких особенностей на разных кадрах «привязывает» характерные особенности на разных кадрах для последующего расчета трехмерных координат по диспарантности двумерных координат характерных особенностей (см, например, [Адаптивные системы технического зрения / В.Н. Гридин, В.С. Титов, М.И. Труфанов; Центр информационных технологий в проектировании РАН. ISBN 978-5-02-025391-9. - М.: Наука, 2009. - 441 с]. Сопоставленные особенности записываются в ОЗУ 12 для чего они передаются из входа-выхода модуля сопоставления особенностей 14 на седьмой вход-выход СШ 100, далее на пятый вход-выход СШ 100 и далее на вход-выход ОЗУ 12.
Совокупность параметров сегментов и параметров сопоставленных особенностей из ОЗУ 12 через его вход-выход, пятый вход-выход СШ 100, одиннадцатый вход-выход СШ 100, и свой вход-выход считывает модуль формирования объектов 18, принимающий решение о принадлежности выделенных сегментов одному или разным объектам. В результате обработки модуль формирования объектов 18 записывает в ОЗУ 12 через свой вход-выход, одиннадцатый вход-выход СШ 100, пятый вход выход СШ 100 и вход-выход ОЗУ 12 параметры объектов (параметры включают в себя набор характерных особенностей, сегментов и двумерных координат на каждом кадре), которые считываются через вход-выход ОЗУ 12, далее пятый вход-выход СШ 100, десятый вход-выход СШ 100, вход-выход модуля вычисления трехмерных координат 17 модулем вычисления трехмерных координат объектов 17 для определения пространственного положения характерных особенностей и границ объектов. После чего модуль расчета трехмерных координат через свой вход-выход, далее десятый вход-выход СШ 100, далее пятый вход-выход СШ 100 и вход-выход ОЗУ 12 записывает трехмерные координаты объектов в ОЗУ 12. Таким образом, после указанных действий в ОЗУ 12 находятся описания трехмерных объектов, найденных на рабочей сцене.
В зависимости от конечной цели функционирования мобильного робота данные описания найденных трехмерных объектов могут быть переданы в модуль сопоставления объектов 20, позволяющий сопоставить текущий и найденный ранее объект (первый случай, описываемый далее), а также в модуль идентификации объектов 24 для распознавания (второй случай). В первом случае параметры всех объектов, найденных на предыдущих кадрах считываются модулем сопоставления объектов 20 из ОЗУ 12 через вход-выход ОЗУ 12, пятый вход-выход СШ 100, тринадцатый вход-выход СШ 100 и вход-выход модуля сопоставления объектов 20. Модуль сопоставления объектов 20 на основе координат текущего анализируемого и ранее найденных на предыдущих кадрах объектов по близости параметров и близости координат объектов вычисляет наиболее похожий объект предыдущего кадра (как правило смещение объектов от кадра происходит незначительно, что позволяет в качестве основного критерия использовать близость координат), в результате чего в ОЗУ 12 сохраняется траектория движения каждого объекта рабочей сцены. Траектории объектов могут быть использованы для распознавания объектов или для передачи на вышестоящую обработку. В случае передачи траекторий на вышестоящую обработку они из ОЗУ 12 через его вход-выход, далее на пятый вход-выход, далее на семнадцатый вход-выход, далее на первый вход-выход коммуникационного контроллера 26 поступают на коммуникационный контроллер 26,который со своего второго-входа выхода передает их из описываемого устройства для дальнейшего использования. Во втором случае модуль идентификации объектов 24 считывает через свой вход-выход, 14 вход-выход СШ 100, пятый вход-выход СШ 100, вход-выход ОЗУ 12 из ОЗУ 12 параметры объектов и на основе сравнения с эталонным описанием распознаваемого объекта осуществляет его распознавание.
Процессом функционирования всего устройства и синхронизацией отдельных модулей управляет вычислитель 25 на базе сигнального процессора. Для этого он через свой вход-выход подает на шестнадцатый вход выход СШ 100 управляющие команды. При необходимости получения увеличенного изображения анализируемого объекта вычислитель 25 через свой вход-выход на шестнадцатый вход-выход СШ 100, далее через первый вход-выход СШ 100 на вход-выход контроллера ориентации 6 подает команду на контроллер ориентации 6 для изменения фокусного расстояния и изменения ориентации второго ОЭД 340 со вторым объективом 3, которая далее передается с выхода контроллера ориентации 6 на вход системы ориентации ОЭД 5 и исполняется системой ориентации ОЭД 5. После получения увеличенного изображения объекта параметры второго ОЭД 340 возвращают в исходное состояние.
Модуль уточнения собственных координат 21 предназначен для уточнения собственных координат описываемого устройства (за начало системы координат принято положение центральной точки плоскости изображения первого приемника изображения 2) посредством решения обратной задачи трехмерного восприятия - нахождения собственных трехмерных координат по множеству трехмерных координат известных объектов рабочей сцены. Для этого модуль уточнения собственных координат 21 через свой вход-выход, двенадцатый вход-выход СШ 100, пятый вход-выход СШ 100 и вход-выход ОЗУ 12 считывает трехмерные координаты множества неподвижных объектов и уточняет (вычисляет) собственные координаты. Неподвижность объектов определяет модуль обнаружения движения 15, который определяет, двигается ли анализируемый объект посредством сравнения его координат и сравнения его изображения на текущих и предыдущих кадрах. Для этого модуль обнаружения движения считывает из ОЗУ 12 через свой вход-выход, девятый вход-выход СШ 100, пятый вход-выход СШ 100 и вход-выход ОЗУ 12 координаты и изображения области объекта и принимает решение о наличии или отсутствии движения объекта. Модуль обнаружения движения 15 может быть реализован и функционировать, например, как представлено в [Пат. №2337501РФ, МКИ H04N 1/409, G06K 9/46, G06T 9/20. Способ компенсации размытости изображения движущихся объектов и устройство для его реализации [Текст] / С.В. Дегтярев, В.С. Титов, М.И. Труфанов, В.С. Яковлева. - №2006146536/09 заявлено 27.12.2006; опубл. 27.10.08, Бюл. №. - 40 с].
Коммуникационный контроллер 26 обеспечивает прием команд для и передачу данных об объектах. Для этого он через свой второй вход-выход получает или передает данные и команды от вышестоящего устройства, а затем через свой первый вход-выход и далее семнадцатый вход выход СШ 100, шестнадцатый вход-выход СШ 100 и вход-выход вычислителя 25 передает команды и данные, а вычислитель 25 в свою очередь записывает необходимые данные в ОЗУ 12 через свой вход-выход, шестнадцатый вход-выход СШ 100, пятый вход-выход СШ 100 и вход-выход ОЗУ 12.
Для устранения погрешностей, возникающих вследствие изменения фокусного расстояния и ориентации видеодатчика введен режим калибровки, рассмотрим работу устройства в этом режиме.
В режиме калибровки согласно методу [Пат. №2250498 РФ, МКИ G06K 9/32. Способ автоматической адаптивной трехмерной калибровки бинокулярной системы технического зрения и устройство для его реализации [Текст] / С.В. Дегтярев, В.С Титов, М.И. Труфанов. - №2003105497/09; заявлено 25.02.2003; опубл. 20.04.2005, Бюл. №11. - 15 с, Пат. №2289111 РФ, МКИ G01M 11. Способ адаптивной калибровки радиальной дисторсии оптической подсистемы системы технического зрения [Текст] / С.В. Дегтярев, В.С. Титов, М.И. Труфанов. - №2004104494/09; заявлено 16.02.2004; опубл. 10.12.2006, Бюл. №34. - 10 с.] производится приведение бинокулярной системы из первого ОЭД 120 и второго ОЭД 340 в такое состояние, при котором главные оптические оси указанных оптико-электронных датчиков взаимнопараллельны, а фокусные расстояния взаимноравны. Отметим, что первый ОЭД 120 является ОЭД с фиксированным и неизменяемым фокусным расстоянием, а второй ОЭД 340 является ОЭД с изменяемым фокусным расстоянием, причем таким, что значением фокусного расстояния первого ОЭД 120 входит в диапазон значений второго ОЭД 340.
Калибровка осуществляется только при неподвижном положении робота, на котором установлено рассматриваемое оптико-электронное устройство по неподвижному объекту. Принятие решения о наличии или отсутствии движения объектов рабочей сцены осуществляет модуль обнаружения движения 15 согласно рассмотренной выше процедуре.
Выбор калибровочного объекта осуществляется модулем выбора калибровочного объекта 19. Критериями выбора объектов являются: неподвижность объекта, достаточная удаленность, наличие четко выраженных характерных особенностей (граней, углов, точек). Указанные критерии вычисляет модуль выбора калибровочного объекта 19. Для этого он последовательно считывает из ОЗУ 12 через вход-выход ОЗУ 12, пятый вход-выход СШ 100 и далее восемнадцатый вход-выход СШ 100 и свой вход-выход изображения и параметры всех объектов рабочей сцены и на основе указанных критериев вычисляет значением функции, определяющий наиболее пригодный объект, который будет использоваться в качестве калибровочного. Параметры калибровочного объекта и его изображения передаются из ОЗУ 12 через вход-выход ОЗУ 12 на пятый вход выход СШ 100, далее на пятнадцатый вход-выход СШ 100, на вход-выход модуля расчета калибровочных параметров 23 в модуль расчета калибровочных параметров 23.
На основе анализа изображения калибровочного объекта модуль расчета калибровочных параметров 23 вычисляет параметры положения второго ОЭД 340 и передает их через свой вход-выход, пятнадцатый вход-выход, шестнадцатый вход-выход, вход-выход вычислителя 25 в вычислитель 25 для того, чтобы вычислитель 25 дал команду контроллеру ориентации 6 на приведение вычисленных параметров и фокусного расстояния к заданным значениям. После калибровки устройство переходит в основной режим работы, рассмотренный выше.
Полезная модель позволяет повысить точности вычисления координат объектов и измерения их геометрических характеристик в пространстве.