# конспект · шаг 6 из 6
Конспект: цвет, фильтры и область интереса
RCT без потерь
| Действие | Формула выбранного соглашения |
|---|---|
| Прямой ход | Y=(R+2G+B)//4, U=B−G, V=R−G |
| Обратный ход | G=Y−(U+V)//4, R=V+G, B=U+G |
| Округление | // вниз; −11//4=−3 |
R,G,B целые; промежуточные значения могут быть отрицательными. Не обрезай разности к диапазону цвета и обеспечь разрядность суммы. RGB=(3,8,2) → (Y,U,V)=(5,−6,−5) → RGB=(3,8,2). Точный RCT не отменяет потерю коэффициентов на следующих стадиях.
Четыре шага 9/7
Разделение: e=x[::2], d=x[1::2], длина строки чётная.
d += A*(e[i]+e[i+1])
e += B*(d[i-1]+d[i])
d += C*(e[i]+e[i+1])
e += D*(d[i-1]+d[i])
A=−1,586134342059924; B=−0,052980118572961.
C=0,882911075530934; D=0,443506852043971.
K=1,230174104914001; L=e/K, H=dK.
На краю e[m]=e[m−1], d[−1]=d[0].
Обратно: e=LK, d=H/K; затем вычесть шаги D,C,B,A.
Сначала проверь полный обратный ход, потом добавляй квантование.
float и квантование дают разные источники ошибки.
Маска ROI
Поддержка коэффициента - выходные пикселы, на которые он влияет. Маску строй по обратным зависимостям, с границами и всеми уровнями. В строке 8 с порядком [L0..L3,H0..H3] для ROI={3} нужны индексы 1,2,4,5,6. При целочисленном округлении отслеживание зависимостей безопаснее одного импульса. Для двумерного разделимого примера пиксел(3,3) требует 25 пар этих индексов.
При max(abs(background))=M выбери s с 2^s>M. Помеченные значения умножаются на 2^s с сохранением знака. M=16 → s=5 → порог 32; коэффициент−2 превращается в−64. Нулевые коэффициенты остаются нулевыми.
Ловушки джокера
- Округление к нулю. Меняет обратный RCT при отрицательных суммах.
- Другая нормировка. Тот же шаг квантования означает другую точность полос.
- Пиксель равен коэффициенту. ROI должна учитывать область влияния фильтра.
- Любой сдвиг достаточен. Фон может остаться старше слабой помеченной детали.
Комментарии
Пока нет комментариев. Будь первым!
Оставить комментарий