frig писал(а):описанное выше это построение 3d карты. без распознавания объектов, без их классификации, без навигации. ну да, в пределах построения 3d карты будет работать. а дальше чего? смысл в ней какой? для навигации нужен механизм позволяющий определить место положение робота на основании того, что он видит. надобно как-то хранить эту информацию, классифицировать и выбирать. интересно как хранить 3d карту? как определить, что робот находится в определенной точке на основании 3d карты?
>без их классификации
Она будет лишь для передвигающихся объектов, таких как людей, животных, птиц, других роботов,пультов, журналов, тапочек, носков и т.д. . Потому как привязкой к хранению информации будет служить та самая матрица 14х14х14 метров, к ней будет подключена своя база с описанием всех "особых" точек на этой матрице. В особые точки будут входить края того же стола, углы стен, края картин на стенах и т.д. А человека нельзя прописать лишь в одной из подобных матриц, потому как он имеет св-во перемещаться
Тем самым общая база будет разбита на подмножества, для того, чтобы встретив объект, не перелопачивать всю накопленную за долгие годы информацию.
>без распознавания объектов
Nоже не верно. У меня просто распознавание не будет похоже на то как это работает, например у EDV. У него с течением времени алгоритм просто перестанет проворачиваться, от огромного кол-ва информации. Плюс ко всему, ему потребуется для опознавания, например человека, записать ВСЕ его телодвижения во ВСЕЙ одежде, что у него есть
У меня же распознавание будет происходить на основе большого числа особых точек, куда будет входить и информация о габаритах, полученных с помощью 3Д реконструкции. По сути распознавание у меня уже происходит, в той самой 3Д реконструкции, почти тот же принцип я буду применять в оптикал флоу и как следствие в конечном распознавании объекта.
>без навигации
Как же без навигации?? А хорошенько подумать? Что из себя представляет оптикал флоу? Он указывает на вектор движения попиксельно или сразу группы пикселей. Так вот если зная куда в какую сторону двинулся наш пиксель и на какое конкретно расстояние сдвинулся в новом кадре, при этом учитывая, что этот пиксель кусок той же стены, которая как известно не подвижна. И проанализировав все перемещения статичных(имеющие по шкале 0 баллов перемещений) пикселей/группы и пройдясь по простым формулам геометрии. Чьё изменение координат мы вычислим?? Горы или Магомета??
Добавлено спустя 4 минуты 11 секунд:>нужно оценивать както энергию связи между объектами
Сейчас это необходимо только военными роботами, остальным на данном этапе не требуется. Это им важно знать пробьёт ли их пушка бетонную стену, за которую спрятался враг. Способ оценки только один, реальный опыт на полигоне и дальнейшая запись его результатов.
Добавлено спустя 1 минуту 37 секунд:>Если роботу не навязывать изначально человеческих понятий
У людей с разных континентов, тоже стол по разному называется, суть его от этого не меняется.
Добавлено спустя 9 минут 51 секунду:Вообще я считаю зрение робота должно состоять из четырёх универасальных алгоритмов:
1. Стереозрение - тут важна точность определения расстояний, так как остальные методы будут основываться на этой информации.
2. Optical-flow - отслеживание перемещений объектов в кадре, включая своё собственное перемещение, для составления карты. У меня будет использовать информацию о расстояниях, для более точного понимания своих движений и объектов в кадре(именно по этому высокие требования к стереозрению). Сложность заключается не перепутать движение объектов в кадре с собственным(как это происходит с человеком в стоящем поезде, когда он видит двигающийся соседний поезд.)
3. Распознавание - основывается на особых точках, которые выделяются из общей массы стереозрением и optical flow. Определение этих точек происходит один раз, на этапе стереозрения, дальше их использует и оптикал флоу и распознавание.
4. Построение карты,"укладка", поиск по базе, всей информации.
Вот это и будет у меня модулем зрения.