А ведь не обязательно полностью до точечки.. ;-)
Мозг-то вычисляет без вопросов, но мы-то можем спросить: Мозг, а ты уверен, что там три фигуры на белом фоне, а не пять?
Мозг не задает вопросов, потому что руководствуется какими-то априорными предположениями. Например принципом Оккама: зачем выдумывать пять сложных фигур, когда то же самое можно описать тремя простыми?
В случае сидящего кота делается предположение, что кот должен сидеть на чем-то, и объект с подходящими границами (под котом) находится в той же экспозиции, что и кот. А объект, просвечивающийся сквозь кота, наверняка находится в другой экспозиции. И так далее. Но, вообще говоря, возможны ситуации, когда однозначно разделить объекты по экспозициям не удастся.
В общем, сначала надо научить компутер видеть, что изображено на нормальных фотках, и только потом можно думать, как адаптировать эти алгоритмы на мультиэкспозицию.
Именно! У мозга очень большая фора именно в знании объектов сцены, и возможности моделировать их вариации. И даже при этом, даже если предположить, что бот будет анализировать логичность сцены (!), все равно неоднозначность остается. Например, два человека могут находиться в одном кадре, если бот не будет знать, что они жили в разных столетиях, или никогда не встречались в одном месте.. ;-)
Всё верно.
Вот я и писал, что единственный известный мне метод решения - это обучаемая нейронная сеть. В ней процессы синтеза и анализа происходят параллельно. И она предварительно обучается на распознование лиц, котов, холодильников и прочих предметов...
Это идеальный для данной задачи вариант, заставить бота понять, что за реальные объекты есть в сцене, как они взаиморасположены, как освещены, с тем, чтоб он их мог потом "чисто" отрендерить обратно, уже в разные кадры. Для этого бот должен оперировать сущностями не "цвет точки", или "замкнутый яркостный полигон", но именно "ветка дерева", "кот", "кухонная мебель". При этом второй кадр будет восприниматься как "мусор" только на этапе распознавания. Если объекты будут распознаны с большой степенью достоверности, то и участки, наиболее пострадавшие от мусора, могут быть легко "додуманы", то есть смоделированы, исходя из свойств распознанного объекта. Только для этого бот должен иметь те же представления об объектах, какие имеет мозг смотрящего на сцену человека, а именно изображения многих вариаций подобных однотипных объектов. Это посложнее будет, чем просто найти кота в сцене (еще и не зная, что он там есть ;-)), но и правильно определить положение его суставов, складок кожи, положения ворсинок шерсти, и т.д. Задача, хоть и сложная, но imho, решаемая. Пускай не теперь именно, но в принципе.
Но часто ведь для решения прикладных задач не нужны именно идеальные решения.. Можно ведь и частично автоматизировать процесс. Например, разложить изображение на кучу полигонов по цвету (подобное можно сделать в Macromedia Flash ("Trace bitmap command")). Потом только нужно уже вручную разделить полигоны между сценами. После такого разделения уже будет делом техники провести коррекцию цветов в пересекающихся полигонах. Для простоты эксперимента можно несколько поднять контрастность изображения, чем уменьшить количество цветов, а значит, и количество полигонов. Предположительно, можно для ручного разделения использовать укрупненные полигоны низкого разрешения, впоследствии наполняя обе полу-сцены деталями уже в автоматическом режиме, на основании общего цветового фона уже разделенных участков сцен (наверняка были немного разные условия освещения, глубина тени, границы черного и белого в полусценах (?)). И добавлять мелкие полигоны уже высокого разрешения в пограничных областях крупных объектов, следуя их контурам. Например: полигоны листьев дерева из одной сцены, примерно совпадающие по размеру и цвету, повторяющиеся только в области очертаний дерева с кроной из сцены1, уж наверняка не принадлежат сцене2..
То есть, можно и не распознавать объекты автоматом, но сделать это руками. Почти руками.
При этом степень этого "почти" будет зависеть от ИИ, который будет работать с детализацией контуров.