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