Лекция 4 . Цвет, квантование, фильтрация

41
Лекция Лекция 4 4 . . Цвет, квантование, Цвет, квантование, фильтрация. фильтрация. Алексей Лукин [email protected]

Upload: jon

Post on 10-Jan-2016

106 views

Category:

Documents


0 download

DESCRIPTION

Лекция 4 . Цвет, квантование, фильтрация. Алексей Лукин [email protected]. План лекции. Свет и цвет Восприятие цвета Цветовые системы Палитры и квантование цветов Кластеризация K- средних Псевдотонирование Метод диффузии ошибки Фильтрация Свертка Простейшие фильтры - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Лекция  4 . Цвет, квантование, фильтрация

Лекция Лекция 44..Цвет, квантование, Цвет, квантование, фильтрация.фильтрация.

Алексей Лукин[email protected]

Page 2: Лекция  4 . Цвет, квантование, фильтрация

План лекцииПлан лекции

Свет и цветСвет и цвет– Восприятие цветаВосприятие цвета– Цветовые системыЦветовые системы

Палитры и квантование цветовПалитры и квантование цветов– Кластеризация Кластеризация K-K-среднихсредних

ПсевдотонированиеПсевдотонирование– Метод диффузии ошибкиМетод диффузии ошибки

ФильтрацияФильтрация– СверткаСвертка– Простейшие фильтрыПростейшие фильтры

Интерполяция байеровских шаблоновИнтерполяция байеровских шаблонов Меры качества изображенийМеры качества изображений

Page 3: Лекция  4 . Цвет, квантование, фильтрация

Свет и цветСвет и цвет

Свет и его спектрСвет и его спектр380 – 470 нм – фиолетовый, синий380 – 470 нм – фиолетовый, синий

500 – 560 нм – зеленый500 – 560 нм – зеленый

560 – 590 нм – желтый, оранжевый560 – 590 нм – желтый, оранжевый

590 – 760 нм – красный590 – 760 нм – красный

Page 4: Лекция  4 . Цвет, квантование, фильтрация

Свет и цветСвет и цвет

Восприятие цветаВосприятие цвета

λ, нм(длина волны)

P

440 540 580

B

GR

(чувствительность колбочек глаза)

dPIR R )()(

dPIG G )()(

dPIB B )()(

λ

I (интенсивность)

I (λ)

Какой это цвет?

Page 5: Лекция  4 . Цвет, квантование, фильтрация

Свет и цветСвет и цвет

Цветовые системыЦветовые системы– RGB RGB и дисплеи, гамма-коррекцияи дисплеи, гамма-коррекция– Аддитивные (Аддитивные (RGB) RGB) и субтрактивные (и субтрактивные (CMYK) CMYK)

системысистемы

RGB CMY

Page 6: Лекция  4 . Цвет, квантование, фильтрация

Свет и цветСвет и цвет

Цветовые системыЦветовые системы– HSVHSV ( (Hue/Saturation/Value)Hue/Saturation/Value)

– Система Система YUV YUV и прореживание хроматических и прореживание хроматических компоненткомпонент

Page 7: Лекция  4 . Цвет, квантование, фильтрация

Свет и цветСвет и цвет

Система Система YUVYUV: разделение яркости и : разделение яркости и хроматических компонентхроматических компонент

Системы Системы CIE Lab, Luv, CIEDE2000 CIE Lab, Luv, CIEDE2000 и и равномерность восприятияравномерность восприятия

BGRY 114.0587.0299.0 BGRU 0.4360.289 --0.147

BGRV 0.100 -0.515 -0.615

Page 8: Лекция  4 . Цвет, квантование, фильтрация

Квантование цветаКвантование цвета

КвантованиеКвантование– Раньше: ограничение видеопамяти Раньше: ограничение видеопамяти → → ограничение ограничение

числа цветовчисла цветов → → программируемые палитрыпрограммируемые палитры– Теперь: уменьшение размера графических файлов, Теперь: уменьшение размера графических файлов,

другие нужды (для спецэффектов, повышение другие нужды (для спецэффектов, повышение резкости границ)резкости границ)

Палитры в видеоадаптерах и Палитры в видеоадаптерах и BMP-BMP-файлахфайлах

RGB 64 цвета 16 цветов

Page 9: Лекция  4 . Цвет, квантование, фильтрация

Квантование цветаКвантование цвета

ПалитризацияПалитризация– Равномерное Равномерное

квантованиеквантование

– По популярностиПо популярности

– Медианное сечение Медианное сечение цветового кубацветового куба

Гистограмма

Page 10: Лекция  4 . Цвет, квантование, фильтрация

Квантование цветаКвантование цвета

Метод кластеризации Метод кластеризации K-K-среднихсредних1.1. Выбрать начальное приближение палитры из Выбрать начальное приближение палитры из N N

различных цветовразличных цветов

2.2. Классифицировать все пиксели на Классифицировать все пиксели на N N кластеров кластеров по цветупо цвету

3.3. Найти средний цвет (центроиду) каждого Найти средний цвет (центроиду) каждого кластера и назначить их новыми цветами кластера и назначить их новыми цветами палитрыпалитры

4.4. Пока цвета обновляются – Пока цвета обновляются – goto 2goto 2

Page 11: Лекция  4 . Цвет, квантование, фильтрация

ПсевдотонированиеПсевдотонирование

Цель: уменьшить видимые артефакты Цель: уменьшить видимые артефакты палитризациипалитризации

RGB

16 ц

вето

в

Округление

Псевдотонирование

Page 12: Лекция  4 . Цвет, квантование, фильтрация

ПсевдотонированиеПсевдотонирование

1-й шаг – сведение к градациям серого1-й шаг – сведение к градациям серого

bluegreenredMono 11.059.03.0

Page 13: Лекция  4 . Цвет, квантование, фильтрация

ПсевдотонированиеПсевдотонирование

МетодыМетоды– ОкруглениеОкругление ]),[(],[ yxMonotruncateyxDst

Page 14: Лекция  4 . Цвет, квантование, фильтрация

ПсевдотонированиеПсевдотонирование

МетодыМетоды– Dithering Dithering (добавление шума)(добавление шума)

]),[],[(],[ yxNoiseyxSrctruncateyxDst

Белый шум – случайные числа с нулевым мат. ожиданием

Page 15: Лекция  4 . Цвет, квантование, фильтрация

ПсевдотонированиеПсевдотонирование

МетодыМетоды– Упорядоченное псевдотонированиеУпорядоченное псевдотонирование

1. Изображение разбивается на блоки2. В каждом блоке вычисляется

средняя интенсивность3. В зависимости от интенсивности

выбирается нужный шаблон4. Шаблон записывается в блок

Примеры шаблоновс разными степенями заполнения:

Page 16: Лекция  4 . Цвет, квантование, фильтрация

ПсевдотонированиеПсевдотонирование

МетодыМетоды– Диффузия ошибкиДиффузия ошибки

Идея алгоритма: ошибка, внесенная при квантовании текущего пикселя, распределяется между соседними (еще не квантованными) пикселями.Примеры видов распределения

ошибки:

e e

e 7e/16

5e/16 e/163e/16

Floyd-Steinberg

for (i=0; i<Height; i++) for (j=0; j<Width; j++) { Dest[i][j] = quantize(Src[i][j]); e = Dest[i][j] – Src[i][j]; Src[i][j+1] -= e; }

простейший

Page 17: Лекция  4 . Цвет, квантование, фильтрация

ФильтрыФильтры

Как работают фильтрыКак работают фильтры

010

121

010

6

1],[ pkKer

Коэффициенты фильтра,ядро свертки 3x3,«функция размытия точки»

-1 ≤ k ≤ 1,-1 ≤ p ≤ 1

Page 18: Лекция  4 . Цвет, квантование, фильтрация

ФильтрыФильтры

СверткаСвертка

// Обнулить изображение Dest[i][j]...// Выполнить сверткуfor (i=0; i<Height; i++) // Для каждого пикс. Dest[i][j]... for (j=0; j<Width; j++) for (k=-1; k<=1; k++) // ...превратить его в ядро свертки for (p=-1; p<=1; p++) Dest[i+k][j+p] += Src[i][j] * Ker[k][p]; // и сложить

Подводные камни:• Выход за границы массива• Выход за пределы допустимого диапазона яркости пикселей• Обработка краев.

],[],[],[ pkKerjiSrcjiDst

pk

pkKerpjkiSrcjiDst,

],[],[],[

Page 19: Лекция  4 . Цвет, квантование, фильтрация

ФильтрыФильтры

Свойства фильтровСвойства фильтров1.1. Результат фильтрации однотонного Результат фильтрации однотонного

(константного) изображения – константное (константного) изображения – константное изображение. Его цвет равенизображение. Его цвет равен

2.2. Следствие: чтобы фильтр сохранял цвет Следствие: чтобы фильтр сохранял цвет однотонных областей, нужно чтобыоднотонных областей, нужно чтобы

3.3. Следствие: если сумма коэффициентов фильтра Следствие: если сумма коэффициентов фильтра равна нулю, то он переводит однотонные равна нулю, то он переводит однотонные области в нулевые.области в нулевые.

pk

pkKerSrcDest,

],[

1],[,

pk

pkKer

Page 20: Лекция  4 . Цвет, квантование, фильтрация

Примеры фильтровПримеры фильтров

РазмытиеРазмытие (blur) (blur)

Page 21: Лекция  4 . Цвет, квантование, фильтрация

Примеры фильтровПримеры фильтров

Повышение четкости (Повышение четкости (sharpen)sharpen)

Page 22: Лекция  4 . Цвет, квантование, фильтрация

Примеры фильтровПримеры фильтров

Нахождение границ (Нахождение границ (edges)edges)

Page 23: Лекция  4 . Цвет, квантование, фильтрация

Примеры фильтровПримеры фильтров

Тиснение (Тиснение (embossing)embossing)

Page 24: Лекция  4 . Цвет, квантование, фильтрация

Примеры фильтровПримеры фильтров

Простейшее размытиеПростейшее размытие

Константное размытиеКонстантное размытие

(любой размер фильтра)(любой размер фильтра)

Гауссово размытиеГауссово размытие

(любой размер фильтра)(любой размер фильтра)

121

232

121

15

1],[ pkKer

2

22

2exp

1],[

pk

SumpkKer

SumpkKer

1],[

Page 25: Лекция  4 . Цвет, квантование, фильтрация

Примеры фильтровПримеры фильтров

Повышение резкостиПовышение резкости

Нахождение границНахождение границ

ТиснениеТиснение

121

2222

121

10

1

010

141

010

+ модуль, нормировка, применение порога…

010

101

010

+ сдвиг яркости,

нормировка…

Page 26: Лекция  4 . Цвет, квантование, фильтрация

ФильтрыФильтры

Некоторые свойства сверткиНекоторые свойства свертки

1.1. ЛинейностьЛинейность

2.2. Инвариантность к сдвигуИнвариантность к сдвигу

)()( HXconstHXconst

Пусть X и Y – изображения, H – ядро свертки

)()()( HYHXHYX

],)[(],[( 0000 jjiiHXHjjiiX

Page 27: Лекция  4 . Цвет, квантование, фильтрация

ФильтрыФильтры

Сепарабельные (разделимые) фильтрыСепарабельные (разделимые) фильтры

)()(],[ pGkFpkKer

Гауссиан – сепарабельный фильтр, т.к.

2

2

2

2

2exp

2exp

1],[

pk

SumpkGauss

Если фильтр сепарабельный, то фильтрацию можно производить быстрее:

1. Отфильтровать все столбцы одномерным фильтром F(k)

2. Отфильтровать все строки одномерным фильтром G(p)

Page 28: Лекция  4 . Цвет, квантование, фильтрация

ФильтрыФильтры

Unsharp MaskUnsharp Mask– Параметры: радиус, сила эффекта, порог Параметры: радиус, сила эффекта, порог

срабатываниясрабатывания– Идея: вычесть из изображения его размытую Идея: вычесть из изображения его размытую

копию, скомпенсировав уменьшение яркостикопию, скомпенсировав уменьшение яркости

– Переменная сила эффекта Переменная сила эффекта αα помогает избежать помогает избежать усиления шума. Обычно усиления шума. Обычно αα уменьшают при малых уменьшают при малых значениях разности значениях разности X – GX X – GX ((меньше порога меньше порога срабатывания)срабатывания)

],[],[)1(],[ jiGXjiXjiR

α контролирует силу эффекта,GX – размытая копия изображения (фильтр Гаусса)

Page 29: Лекция  4 . Цвет, квантование, фильтрация

ФильтрыФильтры

Медианный фильтрМедианный фильтр– Каждый пиксель принимает значение, Каждый пиксель принимает значение,

являющееся медианой значений пикселей в являющееся медианой значений пикселей в окрестностиокрестности

– Медиана – средний элемент в отсортированном Медиана – средний элемент в отсортированном массивемассиве

– Позволяет подавить шум (особенно, единичные Позволяет подавить шум (особенно, единичные «выпадающие» пиксели), не размывая границ«выпадающие» пиксели), не размывая границ

– Медианный фильтр нелинейный Медианный фильтр нелинейный (как доказать?)(как доказать?)

Page 30: Лекция  4 . Цвет, квантование, фильтрация

ФильтрыФильтры

Понятие о частотах в изображении и звукеПонятие о частотах в изображении и звуке– Частоты и гармонические колебания (звук)Частоты и гармонические колебания (звук)– Частоты и детали (изображение)Частоты и детали (изображение)– Постоянная составляющаяПостоянная составляющая– Действие фильтровДействие фильтров

Фильтр размытия – НЧ-фильтрФильтр размытия – НЧ-фильтр Фильтр повышения четкости – ВЧ-фильтрФильтр повышения четкости – ВЧ-фильтр Фильтр нахождения границ – ВЧ-фильтрФильтр нахождения границ – ВЧ-фильтр Фильтры и обработка звукаФильтры и обработка звука

Page 31: Лекция  4 . Цвет, квантование, фильтрация

Байеровские шаблоныБайеровские шаблоны

Постановка задачиПостановка задачи demosaicking demosaicking

фотосенсоры цифровой камерыбайеровский шаблон (мозаика)

камера demosaicking

Page 32: Лекция  4 . Цвет, квантование, фильтрация

Байеровские шаблоныБайеровские шаблоны

Простейшие подходыПростейшие подходыБилинейная интерполяцияБилинейная интерполяция

86425 4

1GGGGG

мозаика билинейнаяинтерполяция

сложныйалгоритм

Page 33: Лекция  4 . Цвет, квантование, фильтрация

Взвешенная интерполяцияВзвешенная интерполяция

Интерполяция зеленогоИнтерполяция зеленого– Адаптивность к краямАдаптивность к краям

исходноеизображение

зеленый цветв мозаике

билинейнаяинтерполяция

Kimmel

8642

886644225 EEEE

GEGEGEGEG

Page 34: Лекция  4 . Цвет, квантование, фильтрация

Метрики качестваМетрики качества

Как измерить похожесть двух Как измерить похожесть двух изображений?изображений?

исходноеизображение

результатdemosaicking

Page 35: Лекция  4 . Цвет, квантование, фильтрация

Метрики качестваМетрики качества

Среднеквадратичная ошибка Среднеквадратичная ошибка (MSE)(MSE)

Пиковое отношение сигналПиковое отношение сигнал//шум (шум (PSNR)PSNR)

N

iii yx

NMSE

1

2)(1

MSE

MPSNRdB

2

lg10

N – число пикселей

M – максимальноезначение пикселя

Page 36: Лекция  4 . Цвет, квантование, фильтрация

Метрики качестваМетрики качества

PSNR PSNR и и MSE MSE не учитывают особенности не учитывают особенности человеческого восприятия!человеческого восприятия!

Оригинал

Далее будут использованы рисунки из статьиWang, Bovik, Lu “WHY IS IMAGE QUALITY ASSESMENT SO DIFFICULT?”

Page 37: Лекция  4 . Цвет, квантование, фильтрация

Метрики качестваМетрики качества

У этих изображений одинаковые У этих изображений одинаковые PSNR PSNR с с оригиналом (примерно 25 оригиналом (примерно 25 dB)dB)

Повышена контрастность Добавлен белый гауссов шум

Page 38: Лекция  4 . Цвет, квантование, фильтрация

Метрики качестваМетрики качества

И у этих – тоже примерно 25 И у этих – тоже примерно 25 dBdB!!

Добавлен импульсный шум Размытие

Page 39: Лекция  4 . Цвет, квантование, фильтрация

Метрики качестваМетрики качества

И у этого – тоже!И у этого – тоже!

Артефакт блочности после JPEG

Page 40: Лекция  4 . Цвет, квантование, фильтрация

Метрики качестваМетрики качества

Вывод: Вывод: PSNR PSNR не всегда отражает реальный не всегда отражает реальный видимый уровень искажений.видимый уровень искажений.

Как улучшить?Как улучшить?– Использовать функцию Использовать функцию

чувствительности глаза к различным чувствительности глаза к различным частотамчастотам (CSF) (CSF)

– Использовать свойство маскировкиИспользовать свойство маскировки– Использовать равномерные к Использовать равномерные к

восприятию цветовые пространства (восприятию цветовые пространства (CIE CIE Lab, CIEDE2000)Lab, CIEDE2000)

HVS models(human visual system)

Page 41: Лекция  4 . Цвет, квантование, фильтрация

Метрики качестваМетрики качества

Contrast sensitivity function (CSF)Contrast sensitivity function (CSF)– Показывает чувствительность глаза к различным Показывает чувствительность глаза к различным

частотамчастотам

Абсцисса – пространственная частота(колебаний / градус угла обзора)