Извлечение фона

Фон неба часто имеет нежелательный градиент, вызванный световым загрязнением, Луной, или просто ориентацией камеры по отношению к земле. Это функция получает образцы фона из большого количества участков изображения, ищет тенденцию в изменении фона и удаляет его, следуя сглаживающей функции, чтобы избежать удаления туманностей вместе с фоном.

диалог

Диалоговое окно "Извлечение фона". Слева версия с полиномиальной, а справа — с радиально-базисной (RBF) функциями.

Образцы фона могут быть выбраны автоматически с заданной плотностью (Плотность образцов), которые размещаются на изображении после нажатия кнопки Создать. Если какие-то области изображения ярче медианы на произведение коэффициента допуска (Допуск) и стандартного отклонения (σ), то в этой области образец фона не размещается. После автоматического создания, образцы также могут быть добавлены (левый клик) или удалены (правый клик) вручную.

Доступны два метода удаления градиента:

RBF

This is the most modern method. It uses the radial basis function to synthesize a sky background to remove the gradient with great flexibility. It requires a single parameter which is present in the form of a slider: Smoothing. With this value you can determine how soft or hard the transition between the sample points is calculated. A high smoothing factor makes sense for large and uniform gradients, and a correspondingly lower value for small, local gradations.

Совет

Start with the basic setting (50%) and gradually tweak for optimal results.

Теория

Radial basis functions are functions of the form \(\phi(\mathbf{x}) = \phi(\| \mathbf{x} \|)\), whereby in our case we use the Euclidean norm \(\| \mathbf{x} \| = \sqrt{x_1^2 + x_2^2}\). The function \(f\), which describes the background model, can now be expressed as a linear combination

\[f(\mathbf{x}) = \sum_i w_i \, \phi(\|\mathbf{x} - \mathbf{x_i}\|) + o\]

where \(w_i\) corresponds to the weights for the different sample points and \(o\) corresponds to a constant offset.

The requirement that the function \(f\) should pass through the sample points results in the condition

\[\begin{split}\begin{pmatrix} \phi(\mathbf{x}_1 - \mathbf{x}_1) & \phi(\mathbf{x}_1 - \mathbf{x}_2) & \dots & \phi(\mathbf{x}_1 - \mathbf{x}_N) & 1 \\ \phi(\mathbf{x}_2 - \mathbf{x}_1) & \phi(\mathbf{x}_2 - \mathbf{x}_2) & \dots & \phi(\mathbf{x}_2 - \mathbf{x}_N) & 1 \\ \vdots & \vdots & \ddots & \vdots \\ \phi(\mathbf{x}_N - \mathbf{x}_1) & \phi(\mathbf{x}_N - \mathbf{x}_2) & \dots & \phi(\mathbf{x}_N - \mathbf{x}_N) & 1 \\ 1 & 1 & \dots & 1 & 0 \end{pmatrix} \begin{pmatrix} w_1 \\ w_2 \\ \vdots \\ w_N \\ o \end{pmatrix} = \begin{pmatrix} y_1 \\ y_2 \\ \vdots \\ y_N \\ 0 \end{pmatrix} \, ,\end{split}\]

which can only be fulfilled if the matrix on the left-hand side is invertible. With the right choice of function \(\phi\) this can always be guaranteed [Wright2003].

In addition, the summand \(s \, I\) is added to the matrix on the left-hand side, where \(s\) is a smoothing parameter and \(I\) is the unit matrix. The summand causes a regularization, which results in a smoother result the larger the parameter \(s\) is. This parameter can be changed with the Smoothing parameter of the dialog box.

For the radial basis function, we use the thin-plate spline \(\phi(|\mathbf{x}|) = |\mathbf{x}|^2 \log(|\mathbf{x}|)\).

Полином

This is the original and simplest algorithm developed in Siril. Only one parameter is used in polynomial computation: the Degree order. The higher the degree, the more flexible the correction, but a too high degree can give strange results like overcorrection.

Совет

A degree 1 correction can be very useful for when you want to remove the gradient on the subs.

Теория

Polynomial functions are functions of the form

\[\begin{equation} f(x)=a_nx^n+a_{n-1}x^{n-1}+\cdots+a_2x^2+a_1x+a_0 \end{equation}.\]

In Siril, the maximum degree allowed is \(n=4\) and can be modified using the Degree order drop-down menu. Beyond this, the model is generally unstable and gives poor results.

Общие настройки

  • Подмешать шум: Используйте эту опцию, когда после удаления фона появляется вертикальное полошение. Этот намеренно привнесённый шум, используется для рандомизации ошибок квантования, предотвращая появление крупномасштабных градиентов на изображениях, таких как цветовое полошение.

  • Коррекция:

    • Вычитание: главным образом корректируются аддитивные эффекты, вызванные световым загрязнением или Луной.

    • Деление: главным образом используется для коррекции мультипликативных эффектов, как виньетирование или дифференциальное поглощение атмосферой, например. Однако такие операции должны корректироваться с помощью мастер-кадров плоского поля.

  • Вычислить фон: Будет рассчитан синтетический фон и применён выбранный тип коррекции. Модель всегда рассчитывается для загруженного в память изображения, позволяет пользователю работать итеративно.

  • Показать оригинальное изображение: Удерживайте нажатой эту кнопку, чтобы увидеть оригинальное изображение.

Изображения после предобработки могут иметь комплексный градиент фона, поскольку в ходе съёмки возможно вращение градиента. Полностью удалить градиент может быть нелегко, поскольку трудно представить его через полиномиальную функцию. В таком случае стоит рассмотреть возможность удаления градиента на субэкспозициях: на отдельном изображении градиент фона гораздо проще и обычно следует простой линейной функции (степень 1).

Совет

Good results with the RBF algorithm generally require fewer samples than with the polynomial algorithm.

См.также

Больше информации в соответствующем документе.

Командная строка Siril

subsky { -rbf | degree } [-dither] [-samples=20] [-tolerance=1.0] [-smooth=0.5]
Вычисляет синтетический градиент фона, используя либо полиномиальную функцию степени degree или радиально-базисную функцию (RBF), если указан аргумент -rbf, и вычитает градиент из изображения.
Количество и плотность образцов в горизонтальной строке и допуск для исключения ярких областей могут быть указаны опционально с помощью соответствующих аргументов. Допуск указывается в единицах медианного абсолютного отклонения (MAD): медиана + допуск * mad.
Шум, необходимый для низких динамических градиентов, может быть подмешан с помощью аргумента -dither.
Для RBF так же доступен дополнительный параметр сглаживания

Командная строка Siril

seqsubsky sequencename { -rbf | degree } [-nodither] [-samples=20] [-tolerance=1.0] [-smooth=0.5] [-prefix=]
Аналогична команде SUBSKY, но применяется к последовательности sequencename.
Подмешивание шума, необходимого для низких динамических градиентов, может быть отключено с помощью аргумента -nodither.

Название итоговой последовательности начинается с префикса "CFA_", если с помощью опции -prefix= не указан иной. В последовательности будут обработаны только выбранные изображения

Ссылка: subsky
[Wright2003]

Wright, Grady Barrett. Radial basis function interpolation: numerical and analytical developments. University of Colorado at Boulder, 2003.