13.9.4. Интерполяция
Одним из недостатков метода, отождествляющего точки в местах быстрого изменения яркости, является то, что диспаратность отыскивается только в таких точках. Если необходимо знать диспаратность в других точках, используется интерполяция. Как можно интерполировать гладкую поверхность по известным точкам? Это задача, которую приходится решать во многих случаях. Методы интерполяции на регулярной решетке хорошо известны. Однако здесь данные расположены вдоль заранее неизвестного контура.
Много вопросов возникает при выборе метода интерполяции. Кроме получения гладкой поверхности мы хотели бы, например, иметь уверенность в единственности решения. Кроме того, результат не должен зависеть от ориентации координатных осей. Это приводит к операторам, инвариантным относительно вращения. В выборе подходящего метода может помочь наглядная физическая аналогия. Предположим, например, что известные величины диспаратности вдоль краев представлены в виде «стенок» высотой, пропорциональной диспаратности. Стенки построены вдоль кривых, соответствующих на изображении краям. Теперь натянем на эти стенки резиновое полотно, фиксируя его на верхнем краю. Высоту этого резинового полотна можно считать искомым результатом интерполяции.
Результирующая поверхность непрерывна и не зависит от ориентации координатных осей. Она гладкая, за исключением стенок, где обычно имеют место разрывы первой производной. Резиновое полотно принимает форму, соответствующую минимуму потенциальной энергии. Для небольших растяжений эта энергия пропорциональна интегралу
Уравнение Эйлера для этой задачи сводится к уравнению Лапласа
за исключением стенок, что можно проверить с помощью вариационного исчисления.
Чтобы избежать разрывов нормали к поверхности вдоль стенки, вместо резины мы можем использовать тонкий металлический лист. Он также примет форму, минимизирующую внутреннюю энергию. Для небольших прогибов внутренняя энергия пропорциональна интегралу
Уравнение Эйлера для этой задачи дает бигармоническое уравнение
или
за исключением стенок, что можно проверить с помощью вариационного исчисления.
Эти уравнения можно решить численно, используя прямую итерационную схему.
Эти методы дают хорошие результаты для непрерывной поверхности. Трудности возникают, когда один предмет частично перекрывается другим, поскольку здесь диспаратности не непрерывны. Следовательно, необходимо разбить изображения на сегменты, соответствующие отдельным телам, на которых диспаратности непрерывны. Интерполяцию можно использовать к каждому телу по отдельности.