M07 · Математика рядом
Численные вычисления
Как конечный шаг меняет изображение и почему параметры численного метода требуют проверки. Начнём с маленького точного расчёта, затем посмотрим на сглаживание сетки.
Здесь — математическая опора для глав учебника: сначала маленький расчёт, затем интерактивный пример и точные определения.
Посчитаем на маленьком примере
Один шаг диффузии: соседи 0 и 0, центр 1. Какие веса не создадут выброс?
- Шаг τ = ¼
- Слишком большой шаг τ = ¾
Отрицательный центральный вес вывел результат за диапазон соседей. В этой одномерной явной схеме нужны 0≤τ≤½. Для двумерной сетки с четырьмя соседями при единичном шаге — 0≤τ≤¼. Устойчивость зависит от схемы и размерности.
Дискретизация и округление — разные ошибки
Один проверяемый шаг: в строке [0, 1, 0] центральная разность второго порядка равна . Шаг сглаживания с Δt=0,2 даёт новое центральное значение . Это точный результат одной объявленной дискретной операции. Он ещё не доказывает, что вся сетка точно повторяет непрерывное уравнение тепла.
Дискретизация заменяет непрерывную задачу конечной сеткой; truncation error измеряет ошибку выбранной формулы при точных арифметических операциях. Округление возникает из конечного представления чисел. Более мелкая сетка уменьшает не каждую ошибку: вычитание близких чисел и деление на маленький шаг могут усилить округление.
Сумма пикселей приближает интеграл только с правильным весом площади клетки. Правило прямоугольников или трапеций имеет свои условия гладкости. Значения в центрах пикселей могут представлять интеграл по площади сенсора, а не точечную выборку; надо следовать объявленной модели измерения.
Чувствительность задачи и устойчивость алгоритма
Обусловленность описывает, как изменение входных данных меняет точное решение. Устойчивость алгоритма — насколько вычисление в конечной точности сохраняет подходящую близкую задачу или контролирует ошибки. Хороший алгоритм не делает плохо обусловленную обратную задачу достоверной без дополнительной информации.
Для невырожденной матрицы . Если наименьшее сингулярное число очень мало, небольшой шум в слабом направлении может дать большой сдвиг решения. Регуляризация меняет саму задачу, добавляя контролируемое предпочтение.
Шаг диффузии ограничен устойчивостью
Для явная пятиузловая схема на квадратной сетке равна . В двумерном случае условие обеспечивает обычную устойчивость для этой линейной схемы при совместимых стандартных границах. Это условие нельзя без проверки переносить на другие stencil, размерности или нелинейную диффузию.
Неявный шаг решает линейную систему и может снять это ограничение устойчивости, но большой шаг всё ещё даёт грубую временную аппроксимацию. Устойчивость не равна точности. Показывай время или число шагов и используемую схему рядом с результатом.
Здесь каждый конечный шаг переносит значение в сторону соседей. Зафиксируй число шагов и меняй допустимое Δt; затем зафиксируй Δt и добавь шаги. Сравниваем две разные причины сглаживания, а не точное и приближённое решение. Допустимый диапазон ограничен устойчивой схемой этого примера.
Один шаг диффузии
Небольшие перепады сглаживаются потоком между соседями. Сначала сравни 0 и 1 итерацию, затем увеличь их число.
Точные значения — в разборе точки
Серая шкала 0…1: от чёрного к белому.
Точные значения — в разборе точки
Серая шкала 0…1: от чёрного к белому.
Разобрать выбранную точку
Что показывает график
При шаге не больше 1/4 новое значение — неотрицательная взвешенная сумма центра и четырёх соседей. Сглаживание не различает шум и тонкую полезную линию.
- MSE
- 0.001
- RMSE
- 0.0324
- PSNR (диапазон 0–1)
- 29.8018 dB
Параметры и подробности
Тепло: явная 4-соседняя схема, dt≤0.24, повтор границы. TV: ½||u−f||² + λΣ(√(dx²+dy²+ε²)−ε); шаг уменьшается до невозрастания энергии. Это сглаженная выпуклая TV, не Perona–Malik и не точная негладкая ROF.
Выбери точку на изображении. Стрелки перемещают её; Home и End — к краям строки. Просмотр не изменяет вычисление.
Для изменения примера нужен JavaScript и Canvas. Рассчитанные изображения доступны выше.
Решатель и остановка — часть результата
Определения и подробности
CG предназначен для симметричных положительно определённых систем; для другой матрицы нужен другой анализ или метод. Итерационный остаток помогает контролировать решение системы, но не заменяет оценку ошибки x, особенно при плохой обусловленности.
Для фильтров проверяй постоянное поле, импульс и границу; для итераций — известный минимум и небольшое эталонное решение. Сравнение требует одинаковых границ и диапазона. Остановка по бюджету должна быть подписана как достигнутый бюджет, а не как доказанная сходимость.