убрать фон
- From
- Alexander Kamotsky (2:463/544.9)
- To
- Alexei Zaycev
- Date
- 2002-05-16T23:30:12Z
- Area
- RU.ALGORITHMS
Привет, Alexei Zaycev.
AZ> Есть такая задачка:
AZ> Дан набор из N черно-белых изображений (256 градаций) одинакового
AZ> размера, являющихся последовательностью кадров видеосъемки. Снимаемый
AZ> объект находится в ПОСТОЯННОМ движении, причем не только двигается, но
AZ> и меняет форму.
AZ> Требуется:
AZ> 1. Проанализировать изображения и убрать фоновое изображение, общее
AZ> для них всех (заменить на заданный цвет). 2. Скорректировать дефекты,
AZ> связанные с загрязненностью оптики, глюками освещения и т.п... Дефекты
AZ> считать постоянными для все последовательности.
Допустим есть 2 последовательных кадра. Отнимаем их попиксельно - получаем области, где объект отличается (переместился или изменил форму). Заливаем то, что не отличается заданным цветом (фон).
Да, грубо, да плохо... :-> Зато будут границы, пусть и не совсем точные.
Разумеется, если есть ограничения, например, на связность объекта, то надо это тоже использовать в алгоритме, чтоб он дырок не наделал...
AZ> Комментарий:
AZ> Задача усугубляется зашумленностью картинок и требованием к скорости.
Есть шум? Тогда перед сравнением (или после) делаем какую-нибудь фильтрацию, способную его устранить (ту же размывку, например. или дискретизацию по цвету. или уменьшить разрешение). Большая скорость? Тогда объект будет размытым - если надо чёткие границы, их просто неоткуда будет взять в этом случае (надо повышать частоту кадров). Если чёткие границы не надо, то смазанные части объекта считать шумом и см. "пункт про шум" =)
А вот насчёт корректировки дефектов, тут незнаю... Надо выписать все "и т.п." и посмотреть, что можно сделать в каждом случае (и стоит ли).
AZ> Плиз, помогите кто чем может... ;-)
Ну, чем мог -- тем помог... =)
Всего доброго, Alexei Zaycev.
--- #include <"tearline.cpp">
* Origin: (-: "ниждиро йынтарбо" (2:463/544.9)