roboforum.ru

Технический форум по робототехнике.

Универсальное зрение для навигации - 3D-реконструкция

Ответить

Goofy » 11 май 2006, 13:25

Сергей, а у Вас есть наработки по этому алгоритму?

Сергей Мальцев » 11 май 2006, 15:05

Goofy писал(а):Сергей, а у Вас есть наработки по этому алгоритму?


Собственно, эта тема и создана с целью создать эти наработки. В общем, пока все на стадии обсуждения.

Если вас интересует эта тема, можете посмотреть наш сайт:

uni-vis.narod.ru

Можете подключится к нашему проекту.

GraphD » 11 май 2006, 15:43

Сергей Мальцев писал(а):Я бы так не считал. По моему, это совершенно другие методы, и фишка их именно в повышенном уровне сопоставления, что позволяет избавиться от неоднозначностей.

А в чем принципиальная разница между "кореляционным" и "граничным" методами?
При этом в обеих случаях будут искажатся изображения и границы соответственно на стереокадрах.
Как сопоставить искаженные границы? По-моему тут больше неоднозначностей возникает, чем при сопоставлении самих изображений, просто будет более смазанный график взаимной корреляции.
PS: по-моему будущее за кратномасштабным сопоставлением, которое требует больших выч. затрат.

Сергей Мальцев » 11 май 2006, 15:58

GraphD писал(а):А в чем принципиальная разница между "кореляционным" и "граничным" методами?
При этом в обеих случаях будут искажатся изображения и границы соответственно на стереокадрах.
Как сопоставить искаженные границы? По-моему тут больше неоднозначностей возникает, чем при сопоставлении самих изображений, просто будет более смазанный график взаимной корреляции.
PS: по-моему будущее за кратномасштабным сопоставлением, которое требует больших выч. затрат.


Читайте Форсайта с Понсом.

Корреляционные методы не предполагают выстраивания оптимального покрытия, а тупо ищут похожие фрагменты, и считают их соотвествием, в случае если найдено два и более элементов совершенно не ясно (по крайней мере для меня) что с ними делать. Если есть какие-то способы обойти это, с удовольствием рассмотрю их.

Что касается, границ, то сопоставляются как бы и не они, а сопоставляется вся совокупность интенсивности между границами.

Боюсь, что эти мои пояснения плохо понятны, поэтому лучше обратиться к первоисточникам.

По краткомасштабным сопоставлениям: имееются в виду итерационные корректировки искажений? Если да, то это поможет уменьшить искажения на разных камерах, но от неоднозначностей не избавит.

=DeaD= » 11 май 2006, 21:32

Сергей Мальцев писал(а):
=DeaD= писал(а):1. Неоднозначности будут всегда и везде.

Будут-то они будут, только в рамках корреляционного подхода ты сними ничего не сделаешь, а в рамках подхода с границами, выход есть - тот самый динамический алгоритм.

Это почему с ними ничего не сделаешь? Так же определяем наиболее похожие варианты и вперед оптимизировать... (см. ниже)

Сергей Мальцев писал(а):
2. Искажения близкорасположенных объектов? Нет, если мы конечно камеры разнесем на метр, то они будут, но чтобы вот так сильно...

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

Внимание конечно нужно акцентировать, но то что это безумная проблема - врядли, особенно при достаточно малом окне поиска.

Сергей Мальцев писал(а):
Пробовал я этот динамический алгоритм на реальных изображениях... Ничего хорошего даже близко по качеству к корелляционным методам не увидел...

Покажи результаты и алгоритм, возможно у тебя реализация была не очень хорошая.

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

Сергей Мальцев писал(а):
Моё мнение - методы по границам существенно хуже, как минимум по двум причинам:
1. Они отбрасывают существенную часть информации об изображении, которую в корреляционных методах мы теряем.

Тем не менее, остается достаточное количество информации, а именно яркость по эпиполярной линии.

Это что за зверь?

Сергей Мальцев писал(а):
2. Они создают искусственную информаци о том - есть тут граница или нет, а это всё равно что использование жесткой логики вместо нечеткой.

Не понял что за искуственность, границей считаются повышенные значения производной, не вижу в это ничего искуственного.

Искусственность в том, что вводится дискретность на этих значениях, то есть либо 0, либо 1, а это противоестественно.

Сергей Мальцев писал(а):
Можно конечно предлагать комбинированные методы, но по-моему граничный метод это существенное сужение корелляционного метода, в котором просто в связи с уменьшившимся количеством данных становится возможным применять более сложные сопоставляющие алгоритмы.

Я бы так не считал. По моему, это совершенно другие методы, и фишка их именно в повышенном уровне сопоставления, что позволяет избавиться от неоднозначностей.
Кстати о комбинированности, возможен такой вариант комбинирования: сначала сопоставлемя границы, а затем, внутри этих границ уже пытаться использовать корреляции, при этом корректируются (растягиваются или сжимаются) геометрические искажения изображения на разных камерах, используя информацию о сопоставленных границах.

Почему бы не делать наоборот? Если при корреляционном методе возникли неоднозначности - применяем динпрог для их разрешения, если же нет - оставляем всё как есть. В случае отсутствия неоднозначностей вам очевидны приемущества корреляционного метода?

Сергей Мальцев писал(а):
На самом деле можно вообще взвешенные паросочетания применять, что наверное еще более правильно, вопрос будет только в производительности таких алгоритмов и в том, насколько полезные результаты они принесут.

Что это такое?

Есть массив A[1..N][1..M] неотрицательных чисел, N<M, требуется назвать такие неповторяющиеся N целых чисел X1...XN из интервала 1..M, чтобы сумма A[i][Xi] была максимальна. В нашем случае массив A - это степени похожести границ, только еще критерий "спутанности" надо будет вводить... это степень перестановки чисел X1..XN, то есть сколько раз в неё нарушен порядок (i>j => Xi<Xj).

Сергей Мальцев писал(а):Почему я предлагаю методы работающие по границам? Два независимых автора говорят о том что у корреляионных методов есть проблемы, и бооться с ними сложно, а то и вообще невозможно.
Оба автора говорят, что методы работающие по границам лучше. Говорят они это на основе большого опыта.
Я предлагаю не изобретать велосипед и поверить авторитетам.

Можно конкретные проекты, работающие на методе динпрога и дающие достойные варианты?

PS: Я против динпрога, потому как это существенно непараллельный алгоритм и противоречащий биологическому подходу. Хотя я при решении разных задач им пользовался более чем часто :)

=DeaD= » 11 май 2006, 21:34

Сергей Мальцев писал(а):Что касается, границ, то сопоставляются как бы и не они, а сопоставляется вся совокупность интенсивности между границами.

Боюсь, что эти мои пояснения плохо понятны, поэтому лучше обратиться к первоисточникам.


Про сопоставление совокупности интенсивностей между границами - можно конкретный первоисточник, а то времени хронически мало, а хочется :)

Сергей Мальцев » 12 май 2006, 10:05

=DeaD= писал(а):
Сергей Мальцев писал(а):Что касается, границ, то сопоставляются как бы и не они, а сопоставляется вся совокупность интенсивности между границами.

Боюсь, что эти мои пояснения плохо понятны, поэтому лучше обратиться к первоисточникам.


Про сопоставление совокупности интенсивностей между границами - можно конкретный первоисточник, а то времени хронически мало, а хочется :)


Форсайт и Понс, в теме про стереовидение, где линамический алгоритм описан. Главу не помню, если нужно в понедельник скажу.

Сергей Мальцев » 12 май 2006, 11:09

//Это почему с ними ничего не сделаешь? Так же определяем наиболее похожие варианты и вперед оптимизировать... (см. ниже)
//Почему бы не делать наоборот? Если при корреляционном методе возникли неоднозначности - применяем динпрог для их разрешения, если же нет - оставляем всё как есть. В случае отсутствия неоднозначностей вам очевидны приемущества корреляционного метода?

У тебя есть представление о таком алгоритме? Я ничего конкретного пока не могу себе представить. Если чего есть, изложи.

//Внимание конечно нужно акцентировать, но то что это безумная проблема - врядли, особенно при достаточно малом окне поиска.

А эта проблема при любом окне больше пары-тройки пикслей будет проявляться. Но в принципе, с этим можно бороться в рамках корреляционного, правда, не знаю на сколько хорошо.

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

Если бы был такой проект, то мы бы эту тему вообще не поднимали, а взяли бы его за основу. А в целом, опять же ссылаюсь на авторитет авторов книг.

//Это что за зверь?

Читать там же у Форсайта.

//Искусственность в том, что вводится дискретность на этих значениях, то есть либо 0, либо 1, а это противоестественно.

Это все условно, врядли ты сможешь доказать, что живые организмы не оперируют дискретными величинами. Поэтому разговор о искуственности предлагаю оставить.

//PS: Я против динпрога, потому как это существенно непараллельный алгоритм и противоречащий биологическому подходу.

Распараллелить можно как минимум по строкам изображения. На счет противоречия биологическому подходу опять не соглашусь с тобой, не сможешь ты доказать это.

GraphD » 12 май 2006, 11:36

Сергей Мальцев писал(а):Форсайт и Понс, в теме про стереовидение, где линамический алгоритм описан. Главу не помню, если нужно в понедельник скажу.

Это та, которая "Комп-ое зрение. Совр-й подход"?
И где ее в русском эл. виде найти? А из-за одной главы 1000р за книгу выкладывать не могу.

Goofy » 12 май 2006, 12:08

Сергей Мальцев писал(а):
Goofy писал(а):Сергей, а у Вас есть наработки по этому алгоритму?


Собственно, эта тема и создана с целью создать эти наработки. В общем, пока все на стадии обсуждения.

Если вас интересует эта тема, можете посмотреть наш сайт:

uni-vis.narod.ru

Можете подключится к нашему проекту.


Мой "CV Современный подход" ещё в пути. Сам пока что реализовал  корреляционный метод.
Как минует сессия и придёт книга, активно включюсь в работу.

Сергей Мальцев » 12 май 2006, 12:42

GraphD писал(а):
Сергей Мальцев писал(а):Форсайт и Понс, в теме про стереовидение, где линамический алгоритм описан. Главу не помню, если нужно в понедельник скажу.

Это та, которая "Комп-ое зрение. Совр-й подход"?
И где ее в русском эл. виде найти? А из-за одной главы 1000р за книгу выкладывать не могу.


Да, она.
Если в Москве, то на Олимпийском можно было за 600 рублей купить, полтора года назад, сейчас не знаю как.
Там помимо этой главы еще много чего полезного.

Я постараюсь отсканить нужные страницы, но не раньше чем на следующей неделе.

=DeaD= » 12 май 2006, 12:57

Сергей Мальцев писал(а):У тебя есть представление о таком алгоритме? Я ничего конкретного пока не могу себе представить. Если чего есть, изложи.

А куда еще описывать - возник набор неоднозначностей в строке, разобрали его и всё.

Сергей Мальцев писал(а):А эта проблема при любом окне больше пары-тройки пикслей будет проявляться. Но в принципе, с этим можно бороться в рамках корреляционного, правда, не знаю на сколько хорошо.

У меня на окне в 16 пикселей вроде даже ничего было...

Сергей Мальцев писал(а):Если бы был такой проект, то мы бы эту тему вообще не поднимали, а взяли бы его за основу. А в целом, опять же ссылаюсь на авторитет авторов книг.

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

Сергей Мальцев писал(а):Это все условно, врядли ты сможешь доказать, что живые организмы не оперируют дискретными величинами. Поэтому разговор о искуственности предлагаю оставить.

А это нужно доказывать? :) Вроде всем известны принципы работы нейронных сетей, или я чего-то забыл?

Сергей Мальцев писал(а):Распараллелить можно как минимум по строкам изображения. На счет противоречия биологическому подходу опять не соглашусь с тобой, не сможешь ты доказать это.

См. выше про нейросети опять же... По строкам - согласен, но этого мало (для принципиальности, для реальности - хватит :)).

Сергей Мальцев » 12 май 2006, 13:16

//А куда еще описывать - возник набор неоднозначностей в строке,
разобрали его и всё.

Для меня алгоритм не очевиден.

//У меня на окне в 16 пикселей вроде даже ничего было...

На близких расстояниях не проверял? Может если была бы коррекция процент распознавания был бы выше.

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

Давай тогда параллельно разные подходы реализовывать. У тебя, вроде, почти все готово уже, только порядку в коде навести нужно. Разные подходы в проекте даже лучше будут. А там и посмотрим что лучше.

//А это нужно доказывать? Smile Вроде всем известны принципы работы нейронных сетей, или я чего-то забыл?

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

=DeaD= » 12 май 2006, 17:53

Прочитал про этот "замечательный динпрог" в форсайте и понсе, не впечатлило - собственно это я и делал, результаты не поражают воображение. Один только метод выбора оценки "совпадения интервалов" чего стоит - квадрат разности средней интенсивности. Ужас. Это же взять и всю информацию о текстуре выкинуть.

Сергей Мальцев » 15 май 2006, 15:18

=DeaD= писал(а):Прочитал про этот "замечательный динпрог" в форсайте и понсе, не впечатлило - собственно это я и делал, результаты не поражают воображение. Один только метод выбора оценки "совпадения интервалов" чего стоит - квадрат разности средней интенсивности. Ужас. Это же взять и всю информацию о текстуре выкинуть.


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

Что касается совпадения интервалов, то во-первых сам набор гариц содержит довольно много информации по текстуре. Во-вторых, можно в качестве меры совпадений использовать средненное значение корреляции всех пикселей интервала, при этом для каждого пиксела корреляция считается в некотором окне, вокруг него.


Rambler\'s Top100 Mail.ru counter