Когда кто-то думает о полнофункциональном сервисном роботе, очень часто можно представить себе робота, выполняющего различные задачи так же, как это делают люди. Несмотря на многочисленные успехи, достигнутые различными группами во всем мире, например, в области локализации мобильных роботов, планирования маршрутов и взаимодействия роботов-человеков, когнитивное представление окружающей среды по-прежнему представляет собой проблему. Для робота понять, что стул имеет поверхность для сидения, поверхность, которая тесно связана со свойством быть стулом, но в некоторых случаях может быть использована для размещения предметов, для робота это очень сложная абстракция.
Многие работы по обнаружению объектов не учитывают характеристики высокого уровня, позволяющие понять назначение или свойства объекта.
Решая эту проблему, в данной статье предлагается проанализировать предметы мебели, выделив некоторые из их основных характеристик, в частности, предметы мебели, которые могут перемещаться или перемещаться людьми или одним и тем же роботом при выполнении своих задач, например, уборка возле или под диваном или кроватью. Мебель, прикрепленная к окружающей среде в виде шкафов или шкафов, которые не двигаются, выходят за рамки статьи. Вдоль этой работы предлагается моделировать и идентифицировать объекты по их геометрическим свойствам, т.е. горизонтальные или вертикальные плоскости, опоры и т.д.
Моделируя по отдельности каждую часть мебели, робот может в будущем сделать вывод, что плоская поверхность, подобно главной плоскости стола, имеет те же характеристики, что и горизонтальная плоскость комода, а затем предположить, что на ней можно будет размещать предметы.
За последние годы было разработано большое количество работ по обнаружению и распознаванию объектов, обычно работающих с 3D информацией, что дает роботам не только больше информации, но и увеличивает требуемую обработку. Для того, чтобы эта обработка стала возможной, были созданы новые технологии. Существуют различные способы представления 3D-данных объектов, выбор лучшего представления будет зависеть от приложения.
ПОЛУЧЕНИЕ И ХАРАКТЕРИСТИКА МОДЕЛЕЙ ДЛЯ МЕБЕЛИ
Чтобы иметь возможность идентифицировать мебель, роботу необходимо предварительно смоделировать каждый предмет мебели в помещении. На данном этапе исследования была создана конкретная модель для каждого предмета мебели, а не общая модель, однако она может быть использована позднее.
Для получения моделей есть два способа:
- получить модель из интернета,
- построить ее самостоятельно.
Данный подход требует, чтобы модель представляла собой облако точек. Из онлайн-моделей можно извлечь одну (в зависимости от формата), но вполне вероятно, что некоторые извлеченные точки соответствуют поверхностям, невидимым для робота, например, нижней стороне плоскости таблицы. Для того чтобы модель была похожа на облака точек, которые увидит робот, исследователи решили построить модели самостоятельно из нескольких облаков точек с разных точек зрения на мебель.
Создание модели
Исследователи сделали несколько снимков вокруг каждого предмета мебели. Поскольку робот был локализован в окружении, все эти изображения находились в одной системе отсчета. Небольшие ошибки в выравнивании исправляются с помощью ICP алгоритма. Затем различные виды были объединены и отсортированы вниз для получения модели облака точек мебели. Большинство методов плоскостной экстракции используют вычислительно-дорогие варианты алгоритмов. Однако быстрого анализа распределения баллов может быть достаточно. С помощью камеры, установленной в роботе, можно извлекать облака точек и преобразовывать их из опорной рамы камеры в опорную раму робота или в мировую опорную раму. В этих условиях обнаружение горизонтальных и вертикальных плоскостей на облаках точек можно упростить, проанализировав концентрацию точек, избегая сложного математического подхода.
Характеристика горизонтальных плоскостей
Первым шагом является построение гистограммы высоты. Поскольку облако точек трансформируется в базовую координатную рамку робота, в горизонтальной плоскости сконцентрируется значительное количество точек на той же высоте. Для извлечения плоскостей из гистограммы необходимо искать более высокие пики. Для нахождения выдающихся пиков сначала кривая гистограммы уменьшается с помощью алгоритма упрощения кривой, чтобы уменьшить шум в сигнале путем устранения небольших отклонений без увеличения размера бин. Затем выполняется поиск, чтобы найти более крупные пики кривой. Все точки в пределах этих пиков восстанавливаются и проецируются на плоскость пола. Затем на проекции выполняется алгоритм кластеризации для того, чтобы разделить различные плоскости, которые могут существовать на одной высоте, например, сиденья разных стульев. Однако этой информации недостаточно для их классификации роботом, так как гистограммы могут существенно изменяться во время выполнения из-за шума и частичных представлений.
Для характеристики каждой обнаруженной плоскости выделяются следующие характеристики:
- Центр - 3D точки Ориентация точек плоскости
- Определение горизонтальной или вертикальной плоскости
- Высота - Средняя высота точек
- Отклонение высоты - Стандартное отклонение высоты точки.
Площадь проектируемой плоскости
Горизонтальные плоскости мебели имеют разную высоту, площадь, и одни лучше приспособлены к математической плоскости, чем другие, например, точки от стола имеют меньшее отклонение высоты, чем точки на горизонтальной плоскости кровати. Однако для завершения моделирования мебели из облаков точек, за исключением горизонтальных плоскостей, необходимо извлечь больше информации. Иными словами, вдоль этой работы цветные или нормальные гистограммы не используются.
Характеристика вертикальных плоскостей
Для обнаружения вертикальных плоскостей такой же подход может быть применен, как и к горизонтальным плоскостям. Будет построена двухмерная гистограмма, проецирующая все 3D точки на плоскость пола, а затем подсчитывающая количество точек, лежащих на проекции с одинаковыми координатами. Все точки на вертикальной плоскости, проецируемые на плоскость пола, образуют линию на проекцию. Поэтому извлечение всех точек в этих линиях приведет к извлечению вертикальных плоскостей. Для того, чтобы сделать линии в проекции более примечательными, был применен сглаживающий фильтр, а затем морфологические операторы расширения и эрозии.
Поскольку линии в проекции не всегда прямые и их ширина может быть различной, алгоритм не дал хороших результатов. Для выделения линий выполняется алгоритм кластеризации, полученные кластеры аппроксимируются к полигонам для уменьшения их количества точек. Выпуклый корпус рассчитан на определение, исходя из его размера, если скопление является одной единственной линией или имеет две или более линий вместе, например, две стены, соединяющиеся в углу или предмет мебели, прикрепленный к стене. В этом случае линии разделяются на стыки. Точки, принадлежащие самолетам, восстанавливаются таким же образом, как и в горизонтальных плоскостях. Обнаруженные вертикальные плоскости или области будут рассматриваться как вторичные характеристики по отношению к горизонтальным областям.
Они принесут новую информацию и вместе с горизонтальными плоскостями дополнят модель мебели. Те же самые характеристики, рассчитанные для горизонтальных плоскостей, вычисляются для вертикалей. В этом случае, на основе собственных векторов и собственных значений, можно сделать деление на вертикальные плоскости и идентифицировать ножки некоторых предметов мебели, таких как столы и стулья.
Характеристика мебели
После того, как модели были созданы и их плоскости были разделены и охарактеризованы, строится график. Каждая плоскость будет узлом, а дуги будут представлять собой примыкание между двумя плоскостями. Главным узлом будет горизонтальная плоскость мебели или самая большая горизонтальная плоскость в случаях, когда их несколько. Форма узла представляет его тип, эллипсы соответствуют горизонтальным плоскостям, прямоугольники - вертикальным плоскостям, пятиугольники - мебельным опорам (ножкам). Однако, робот не может видеть все плоскости, так как они могут находиться на противоположных сторонах. Например, если робот видит заднюю плоскость, в зависимости от угла, возможно, он может видеть сиденье, но не может видеть спинку или переднюю плоскость.
На основе этих ограничений просмотра создаются подграфики, каждый из которых отображает видимые плоскости с предмета мебели с разных точек зрения.
Был представлен подход к обнаружению домашней мебели. Предлагаемый подход основан на описании геометрических сущностей различных предметов мебели. Как описано выше, основной характеристикой этих предметов мебели являются горизонтальные плоскости, а также вертикальные плоскости и ножки, которые извлекаются. Затем строится график окрестностей для того, чтобы определить правильный предмет мебели, присутствующий на сцене. Этот подход был проверен и доказал свою эффективность в таких условиях, как дом с роботом, движущимся в нем. В дальнейшей работе характеристика будет использоваться для того, чтобы позволить роботу сделать вывод о сходных свойствах геометрических сущностей, например, горизонтальных плоскостей.