Text
                    компьютерное
зоение
СОВРЕМЕННЫЙ ПОДХОД

Computer Vision A MODERN APPROACH DAVID A. FORSYTH University of California at Berkeley JEAN PONCE University of Illinois at Urbana-Champaign Prentice Hall UPPER SADDLE RIVER, NJ 07458
Компьютерное зрение СОВРЕМЕННЫЙ ПОДХОД ДЭВИД ФОРСАЙТ Калифорнийский Университет в Беркли ЖАН ПОНС Иллинойский Университет в Урбана-Шампейн W Москва • Санкт-Петербург • Киев 2004
ББК 32.973.26-018.2.75 Ф79 УДК 681.3.07 Издательский дом “Вильямс” Зав. редакцией С.Н. Тригуб Перевод с английского А.В. Назаренко, И.Ю. Дорошенко Под редакцией А.В. Назаренко Научный консультант В.Ю. Чех По общим вопросам обращайтесь в Издательский дом “Вильямс” по адресу: info@williamspublishing.com, http://www.williamspublishing.com Форсайт, Дэвид А., Понс, Жан. Ф79 Компьютерное зрение. Современный подход.: Пер. с англ. — М.: Издательский дом “Вильямс”, 2004. — 928 с.: ил. — Парад, тит. англ. ISBN 5-8459-0542-7 (рус.) Компьютерное зрение — это одна из самых востребованных областей на современном этапе развития цифровых компьютерных технологий. Оно требуется на производстве, при управлении роботами, при автоматизации процессов, в медицинских и военных приложениях, при наблюдении со спутников и при работе с персональными компьютерами, в частности поиске цифровых изобра- жений. Книга ориентирована на широкий круг читателей, интересующихся данной областью, в первую очередь — на студентов и преподавателей технических вузов, занимающихся аналитиче- ской геометрией, компьютерной графикой, обработкой изображений и робототехникой. Книга построена в форме сборника лекций (по возможности независимых), посвященных раз- нообразным вопросам, так что ее можно использовать и как учебник по компьютерному зрению. ББК 32.973.26-018.2.75 Все названия программных продуктов являются зарегистрированными торговыми марками соагветстмук чцнх фирм. Никакая часть настоящего издания ни в каких целях не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами, будь то электронные или механические, включая фотокопирование и запись на магнитный носитель, если на это нет письменного разрешения издательства Prentice Hall, Inc. Authorized translation from the English language edition published by Prentice Hall, Ptr., Copyright © 2003 by Pear- son Education, Inc. All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means, electronic or mechanical, in- cluding photocopying, reck^ifing or by any information storage retrieval system, without permission from the Publisher. Russian language edition published by Williams Publishing House according to the Agreement with R&I Enterprises International, Copyright © 2004 ISBN 5-8459-0542-7 (pyc.) ISBN 0-13-085198-1 (англ.) © Издательский дом “Вильямс”, 2004 © by Pearson Education, Inc., 2003
Оглавление ПРЕДИСЛОВИЕ 24 Часть I Формирование изображений и модели изображений 37 1 КАМЕРЫ 39 2 ГЕОМЕТРИЧЕСКИЕ МОДЕЛИ КАМЕР 63 3 ГЕОМЕТРИЧЕСКАЯ КАЛИБРОВКА КАМЕР 87 4 РАДИОМЕТРИЯ - ИЗМЕРЕНИЕ СВЕТА 109 5 ИСТОЧНИКИ, ТЕНИ И ЗАТЕНЕНИЕ 127 6 СВЕТ 161 Часть II Первые этапы: одно изображение 207 7 ЛИНЕЙНЫЕ ФИЛЬТРЫ 209 8 ОПРЕДЕЛЕНИЕ КРАЕВ 247 9 ТЕКСТУРА 277
6 Оглавление Часть 111 Первые этапы: несколько изображений 307 10 ГЕОМЕТРИЯ НЕСКОЛЬКИХ ПРОЕКЦИЙ 309 11 СТЕРЕОЗРЕНИЕ 333 12 ОПРЕДЕЛЕНИЕ АФФИННОЙ СТРУКТУРЫ ПО ДВИЖЕНИЮ 355 13 ОПРЕДЕЛЕНИЕ ПРОЕКТИВНОЙ СТРУКТУРЫ ПО ДВИЖЕНИЮ 387 Часть IV Компьютерное зрение: средний уровень 421 14 СЕГМЕНТАЦИЯ ЧЕРЕЗ КЛАСТЕРИЗАЦИЮ 423 15 СЕГМЕНТАЦИЯ ЧЕРЕЗ ПОДБОР МОДЕЛИ 459 16 СЕГМЕНТАЦИЯ И ПОДБОР С ИСПОЛЬЗОВАНИЕМ ВЕРОЯТНОСТНЫХ МЕТОДОВ 491 17 СОПРОВОЖДЕНИЕ С ИСПОЛЬЗОВАНИЕМ ЛИНЕЙНЫХ ДИНАМИЧЕСКИХ МОДЕЛЕЙ 517 Часть V Верхний уровень компьютерного зрения: геометрические методы 549 18 ЗРЕНИЕ НА ОСНОВЕ МОДЕЛИ 551 19 ГЛАДКИЕ ПОВЕРХНОСТИ И ИХ КОНТУРЫ 585 20 АСПЕКТНЫЕ ГРАФЫ 607 21 ДАЛЬНОСТНЫЕ ДАННЫЕ 637 Часть VI Верхний уровень: вероятностные методы и методы логического вывода 671 22 ПОИСК ШАБЛОНОВ С ИСПОЛЬЗОВАНИЕМ КЛАССИФИКАТОРОВ 673 23 РАСПОЗНАВАНИЕ ЧЕРЕЗ СВЯЗЬ ШАБЛОНОВ 727 24 ГЕОМЕТРИЧЕСКИЕ ШАБЛОНЫ ЧЕРЕЗ ПРОСТРАНСТВЕННЫЕ СВЯЗИ 769 Часть VII Приложения 807 25 ПОИСК В ЦИФРОВЫХ БИБЛИОТЕКАХ 809 26 ВИЗУАЛИЗАЦИЯ НА ОСНОВЕ ИЗОБРАЖЕНИЙ 837 ЛИТЕРАТУРА 865 ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ 908
Содержание ПРЕДИСЛОВИЕ 24 Часть I Формирование изображений и модели изображений 37 1 КАМЕРЫ 39 1.1. Камеры-обскуры 40 1.1.1. Перспективная проекция 40 1.1.2. Аффинная проекция 43 1.2. Камеры с линзами 44 1.2.1. Параксиальная геометрическая оптика 46 1.2.2. Тонкие линзы 47 1.2.3. Реальные линзы 49 1.3. Человеческий глаз 52 1.4. Восприятие 54 1.4.1. ПЗС-камеры 56 1.4.2. Модели датчиков 57 1.5. Примечания 59
8 Содержание 2 ГЕОМЕТРИЧЕСКИЕ МОДЕЛИ КАМЕР 63 2.1. Элементы аналитической евклидовой геометрии 64 2.1.1. Системы координат и однородные координаты 64 2.1.2. Переход от одной системы координат к другой и строгие преобразования 67 2.2. Характеристики камер и перспективная проекция 73 2.2.1. Внутренние параметры 74 2.2.2. Внешние параметры 76 2.2.3. Описание матриц перспективной проекции 78 2.3. Аффинные камеры и уравнения аффинной проекции 79 2.3.1. Аффинные камеры 79 2.3.2. Уравнения аффинной проекции 80 2.3.3. Описание матрицы аффинной проекции 83 2.4. Примечания 83 3 ГЕОМЕТРИЧЕСКАЯ КАЛИБРОВКА КАМЕР 87 3.1. Оценка параметров по схеме наименьших квадратов 88 3.1.1. Линейные схемы наименьших квадратов 88 3.1.2. Нелинейные схемы наименьших квадратов 93 3.2. Линейный подход к калибровке камеры 96 3.2.1. Оценка проекционной матрицы 96 3.2.2. Оценка внутренних и внешних параметров 97 3.2.3. Вырожденные точечные конфигурации 98 3.3. Учет радиального искажения 99 3.3.1. Оценка проекционной матрицы 100 3.3.2. Оценка внутренних и внешних параметров 101 3.3.3. Вырожденные точечные конфигурации 102 3.4. Аналитическая фотограмметрия 103 3.5. Приложение: определение местонахождения мобильного робота 105 3.6. Примечания 107 4 РАДИОМЕТРИЯ - ИЗМЕРЕНИЕ СВЕТА 109 4.1. Свет в пространстве 109 4.1.1. Ракурс 109
Содержание 9 4.1.2. Телесный угол ПО 4.1.3. Излучение 112 4.2. Свет на поверхностях 115 4.2.1. Упрощения 115 4.2.2. Функция распределения двунаправленного отражения 115 4.2.3. Пример: радиометрия тонких линз 118 4.3. Важные частные случаи 119 4.3.1. Диффузное отражение 120 4.3.2. Отражательная способность 120 4.3.3. Ламбертовские поверхности и альбедо 121 4.3.4. Зеркальные поверхности 122 4.3.5. Ламбертовская + зеркальная модель 123 4.4. Примечания 124 5 ИСТОЧНИКИ, ТЕНИ И ЗАТЕНЕНИЕ 127 5.1. Качественная радиометрия 127 5.2. Источники света и их действие 129 5.2.1. Радиометрические свойства источников света 129 5.2.2. Точечные источники 130 5.2.3. Линейные источники 133 5.2.4. Плоские источники 134 5.3. Локальные модели затенения 136 5.3.1. Локальные модели затенения для точечных источников 136 5.3.2. Плоские источники и их тени 139 5.3.3. Естественное освещение 139 5.4. Приложение: фотометрическое стерео 140 5.4.1. Нормаль и альбедо по многим изображениям 142 5.4.2. Определение формы по нормалям 144 5.5. Взаимное отражение: глобальные модели затенения 147 5.5.1. Модель взаимного отражения 149 5.5.2. Решения для диффузного отражения 151 5.5.3. Качественное описание эффектов взаимного отражения 152 5.6. Примечания 154
10 Содержание 6 ЦВЕТ 161 6.1. Физика цвета 161 6.1.1. Радиометрия цветного света: спектральные величины 161 6.1.2. Цвет источников 162 6.1.3. Цвет поверхности 165 6.2. Человеческое восприятие цвета 166 6.2.1. Подбор цветов 167 6.2.2. Цветовые рецепторы 170 6.3. Представление цвета 172 6.3.1. Линейные цветовые пространства 172 6.3.2. Нелинейные цветовые пространства 178 6.3.3. Пространственные и временные эффекты 182 6.4. Модель цвета изображения 183 6.4.1. Камеры 183 6.4.2. Модель цвета изображения 184 6.4.3. Приложение: нахождение бликов 186 6.5. Определения цвета поверхности по цвету изображения 190 6.5.1. Человеческое восприятие цветной поверхности 191 6.5.2. Определение освещенности 192 6.5.3. Цвет поверхности согласно линейной модели конечной размерности 198 6.6. Примечания 200 Часть II Первые этапы: одно изображение 207 7 ЛИНЕЙНЫЕ ФИЛЬТРЫ 209 7.1. Линейные фильтры и свертка 209 7.1.1. Свертка 210 7.2. Линейные системы, инвариантные относительно сдвига 216 7.2.1. Дискретная свертка 216 7.2.2. Непрерывная свертка 218 7.2.3. Краевые эффекты при дискретной свертке 222 7.3. Пространственная частота и преобразование Фурье 222 7.3.1. Преобразование Фурье 223 7.4. Дискретизация и наложение 225 7.4.1. Дискретизация 225
Содержание 11 7.4.2. Наложение 230 7.4.3. Сглаживание и повторная дискретизация 231 7.5. Фильтры как шаблоны 235 7.5.1. Свертка как скалярное произведение 235 7.5.2. Смена базиса 236 7.6. Метод: нормированная корреляция и поиск модели 237 7.6.1. Управление телевизором: нахождение руки с помощью нормированной корреляции 237 7.7. Метод: масштаб и пирамиды изображений 239 7.7.1. Гауссова пирамида 240 7.7.2. Применение масштабных представлений 240 7.8. Примечания 243 8 ОПРЕДЕЛЕНИЕ КРАЕВ 247 8.1. Шум 248 8.1.1. Аддитивный стационарный гауссов шум 249 8.1.2. Почему конечная разность чувствительна к шуму 251 8.2. Оценка производных 252 8.2.1. Производная от гауссова фильтра 253 8.2.2. Чем полезно сглаживание 254 8.2.3. Выбор фильтра сглаживания 255 8.2.4. Почему для сглаживания используют гауссиан 257 8.3. Определение краев 259 8.3.1. Применение лапласиана для определения краев 260 8.3.2. Детекторы краев на основе градиентов 263 8.3.3. Метод: представление ориентации и углов 266 8.4. Примечания 272 9 ТЕКСТУРА 277 9.1. Представление текстуры 278 9.1.1. Определение структуры изображения с помощью блоков фильтров 278 9.1.2. Описание текстуры с помощью статистики выходов фильтров 283 9.2. Анализ и синтез с помощью ориентированных пирамид 286 9.2.1. Лапласова пирамида 287
12 Содержание 9,2.2. Фильтры в области пространственных частот 289 9.2.3. Ориентированные пирамиды 294 9.3. Приложение: синтез текстуры для создания изображений 296 9,3.1. Однородность 297 9.3.2. Синтез с помощью локальных моделей выборки 298 9.4. Определение формы по текстуре 300 9.4.1. Восстановление формы по текстуре для плоскостей 300 9.5. Примечания 303 Часть III Первые этапы: несколько изображений 307 10 ГЕОМЕТРИЯ НЕСКОЛЬКИХ ПРОЕКЦИЙ 309 10.1. Две проекции 310 10.1.1. Эпиполярная геометрия 310 10.1.2. Откалиброванные камеры 311 10.1.3. Слабое движение 313 10.1.4. Неоткалиброванные камеры 313 10.1.5. Слабая калибровка 314 10.2. Три проекции 317 10.2.1. Трифокальная геометрия 319 10.2.2. Откалиброванные камеры 320 10.2.3. Неоткалиброванные камеры 322 10.2.4. Оценка трифокусного тензора 324 10.3. Большее число проекций 324 10.4. Примечания 329 11 СТЕРЕОЗРЕНИЕ 333 11.1. Восстановление 334 11.1.1. Очистка изображения 336 11.2. Стереозрение человека 337 11.3. Бинокулярное совмещение изображений 341 11.3.1. Корреляция 341 11.3.2. Многошкальное согласование краев 344 11.3.3. Динамическое программирование 345 11.4. Использование большего числа камер 348
Содержание 13 11.4.1. Три камеры 348 11.4.2. Множественные камеры 349 11.5. Примечания 351 12 ОПРЕДЕЛЕНИЕ АФФИННОЙ СТРУКТУРЫ ПО ДВИЖЕНИЮ 355 12.1. Элементы аффинной геометрии 358 12.1.1. Аффинные пространства и барицентрические комбинации 358 12.1.2. Аффинные подпространства и аффинные координаты 360 12.1.3. Аффинные преобразования и аффинные проекционные модели 364 12.1.4. Аффинная форма 365 12.2. Определение аффинной структуры и движения по двум изображениям 366 12.2.1. Геометрическое восстановление сцены 366 12.2.2. Алгебраическая оценка движения 368 12.3. Определение аффинной структуры и движения по нескольким изображениям 372 12.3.1. Аффинная структура последовательности аффинных изображений 372 12.3.2. Использование факторизации для нахождения аффинной структуры по движению 373 12.4. От аффинных изображений к евклидовым 376 12.4.1. Евклидовы ограничения и откалиброванные аффинные камеры 377 12.4.2. Вычисление евклидового уточнения структуры на основе нескольких изображений 378 12.5. Сегментация аффинного движения 380 12.5.1. Ступенчатая форма информационной матрицы (с уменьшенным числом строк) 380 12.5.2. Матрица взаимодействия форм 382 12.6. Примечания 384 13 ОПРЕДЕЛЕНИЕ ПРОЕКТИВНОЙ СТРУКТУРЫ ПО ДВИЖЕНИЮ 387 13.1. Элементы проективной геометрии 388 13.1.1. Проективные пространства 389
14 Содержание 13.1.2. Проективные подпространства и проективные координаты 390 13.1.3. Аффинные и проективные пространства 393 13.1.4. Гиперплоскости и дуальность 394 13.1.5. Ангармоническое отношение 396 13.1.6. Проективные преобразования 398 13.1.7. Проективная форма 401 13.2. Определение проективной структуры и движения по бинокулярным соответствиям 401 13.2.1. Геометрическое восстановление сцены 401 13.2.2. Алгебраическая оценка движения 404 13.3. Оценка проективного движения по полилинейным условиям 405 13.3.1. Оценка движения по фундаментальным матрицам 406 13.3.2. Оценка движения по трифокусным тензорам 407 13.4. Определение проективной структуры и движения по множественным изображениям 408 13.4.1. Использование факторизации для определения проективной структуры по движению 408 13.4.2. Выравнивание пучков 411 13.5. От проективных изображений к евклидовым 412 13.6. Примечания 415 Часть IV Компьютерное зрение: средний уровень 421 14 СЕГМЕНТАЦИЯ ЧЕРЕЗ КЛАСТЕРИЗАЦИЮ 423 14.1. Что такое “сегментация” 424 14.1.1. Модельные задачи 426 14.1.2. Сегментация как кластеризация 427 14.2. Человеческое зрение: группировка и гештальт 428 14.3. Приложение: вычитание фона и определение границ кадров 433 14.3.1. Вычитание фона 434 14.3.2. Определение границ кадров 436 14.4. Сегментация изображения через кластеризацию пикселей 438 14.4.1. Сегментация с использованием простых методов кластеризации 438 14.4.2. Кластеризация и сегментация через К-средние 440
Содержание 15 14.5. Сегментация через теоретико-графовую кластеризацию 443 14.5.1. Терминология теории графов 443 14.5.2. Общая схема 444 14.5.3. Меры сходства 444 14.5.4. Собственные векторы и сегментация 448 14.5.5. Нормированные разрезы 451 14.6. Примечания 455 15 СЕГМЕНТАЦИЯ ЧЕРЕЗ ПОДБОР МОДЕЛИ 459 15.1. Преобразование Хоха 459 15.1.1. Подбор линий с помощью преобразования Хоха 461 15.1.2. Практические сложности при использовании преобразования Хоха 462 15.2. Подбор прямых 462 15.2.1. Подбор прямой по схеме наименьших квадратов 464 15.2.2. Какая точка принадлежит какой прямой 467 15.3. Подбор кривых 469 15.3.1. Неявные кривые 469 15.3.2. Параметрические кривые 472 15.4. Подбор как задача вероятностного вывода 473 15.5. Устойчивость 475 15.5.1. М-оценочная функция 475 15.5.2. RANSAC 479 15.6. Пример: использование алгоритма RANSAC для подбора фундаментальных матриц 482 15.6.1. Выражение для ошибки подбора 482 15.6.2. Соответствие как шум 483 15.6.3. Применение алгоритма RANSAC 483 15.6.4. Нахождение расстояния 485 15.6.5. Подбор фундаментальной матрицы по известным соответствиям 487 15.7. Примечания 487 16 СЕГМЕНТАЦИЯ И ПОДБОР С ИСПОЛЬЗОВАНИЕМ ВЕРОЯТНОСТНЫХ МЕТОДОВ 491 16.1. Задачи с недостающими данными, подбор и сегментация 491
г 16 Содержание 16.1.1. Задачи с недостающими данными 492 16.1.2. ОМ-алгоритм 496 16.1.3. ОМ-алгоритм в общем случае 498 16.2. ОМ-алгоритм на практике 498 16.2.1. Пример: сегментация изображения (возвращаясь к сказанному) 498 16.2.2. Пример: подбор линии с помощью ОМ-алгоритма 502 16.2.3. Пример: сегментация движения и ОМ-алгоритм 504 16.2.4. Пример: использование ОМ-алгоритма для определения посторонних значений 507 16.2.5. Пример: вычитание фона с использованием ОМ-алгоритма 508 16.2.6. Пример: ОМ-алгоритм и фундаментальная матрица 509 16.2.7. Сложности при использовании ОМ-алгоритма 509 16.3. Выбор модели: какая модель дает наилучшее соответствие 510 16.3.1. Основные идеи 511 16.3.2. AIC — информационный критерий 511 16.3.3. Методы Байеса и критерий Шварца 512 16.3.4. Длина описания 512 16.3.5. Другие методы оценки аномальности 513 16.4. Примечания 513 17 СОПРОВОЖДЕНИЕ С ИСПОЛЬЗОВАНИЕМ ЛИНЕЙНЫХ ДИНАМИЧЕСКИХ МОДЕЛЕЙ 517 17.1. Сопровождение как абстрактная задача логического вывода 519 17.1.1. Допущения о независимости 519 17.1.2. Сопровождение как задача логического вывода 520 17.1.3. Обзор 521 17.2. Линейные динамические модели 521 17.2.1. Дрейфующие точки 522 17.2.2. Постоянная скорость 522 17.2.3. Постоянное ускорение 524 17.2.4. Периодическое движение 525 17.2.5. Модели высших порядков 526 17.3. Фильтр Кальмана 526 17.3.1. Фильтр Кальмана для одномерного вектора состояния 527
Содержание 17 17.3.2. Обновление уравнений для общего вектора состояния 530 17.3.3. Реверсивное сглаживание 531 17.4. Ассоциация данных 537 17.4.1. Учет ближайших соседей 537 17.4.2. Селекция и вероятностная ассоциация данных 540 17.5. Примеры и применение 542 17.5.1. Сопровождение транспортных средств 543 17.6. Примечания 546 Часть V Верхний уровень компьютерного зрения: геометрические методы 549 18 ЗРЕНИЕ НА ОСНОВЕ МОДЕЛИ 551 18.1. Исходные допущения 552 18.1.1. Получение гипотез 553 18.2. Получение гипотез из совместимости поз 554 18.2.1. Совместимость поз для перспективных камер 556 18.2.2. Аффинная и проективная модели камеры 557 18.2.3. Линейная комбинация моделей 560 18.3. Получение гипотез через кластеризацию поз 561 18.4. Получение гипотез с использованием инвариантов 563 18.4.1. Инварианты для плоских изображений 563 18.4.2. Геометрическое хэширование 567 18.4.3. Инварианты и индексация 568 18.5. Верификация 572 18.5.1. Близость краев 572 18.5.2. Сходство текстуры, шаблона и интенсивности 574 18.6. Приложение: наложение в медицинских системах визуализации 575 18.6.1. Модели представления изображений 575 18.6.2. Применение наложения 576 18.6.3. Методы геометрического хэширования в медицинских приложениях 578 18.7. Криволинейные поверхности и выравнивание 580 18.8. Примечания 580
18 Содержание 19 ГЛАДКИЕ ПОВЕРХНОСТИ И ИХ КОНТУРЫ 585 19.1. Элементы дифференциальной геометрии 587 19.1.1. Кривые 588 19.1.2. Поверхности 594 19.2. Геометрия контуров 600 19.2.1. Затеняющий контур и контур изображения 600 19.2.2. Точки возврата и перегиба на контуре изображения 601 19.2.3. Теорема Коендеринка 603 19.3. Примечания 605 20 АСПЕКТНЫЕ ГРАФЫ 607 20.1. Визуальные события: снова обращаемся к дифференциальной геометрии 611 20.1.1. Геометрия отображения Гаусса 612 20.1.2. Асимптотические кривые 614 20.1.3. Асимптотическое сферическое отображение 615 20.1.4. Локальные визуальные события 617 20.1.5. Многообразие бикасательных лучей 619 20.1.6. Мульти локальные визуальные события 620 20.2. Расчет аспектного графа 622 20.2.1. Этап 1: Отслеживание визуальных событий 625 20.2.2. Этап 2: Построение областей 626 20.2.3. Оставшиеся этапы алгоритма 627 20.2.4. Пример 628 20.3. Аспектные графы и локализация объектов 629 20.4. Примечания 633 21 ДАЛЬНОСТНЫЕ ДАННЫЕ 637 21.1. Активные датчики расстояния 638 21.2. Сегментация дальностных данных 640 21.2.1. Элементы аналитической дифференциальной геометрии 640 21.2.2. Нахождение на дальностном изображении ступенчатых и скатообразных краев 643 21.2.3. Сегментация дальностных изображений в плоские области 650
Содержание 19 21.3. Наложение дальностных изображений и получение моделей 651 21.3.1. Кватернионы 652 21.3.2. Наложение дальностных картин с использованием итеративного метода ближайших точек 653 21.3.3. Совмещение нескольких дальностных изображений 656 21.4. Распознавание объектов 657 21.4.1. Согласование кусочно-плоских поверхностей с использованием интерпретационных деревьев 657 21.4.2. Согласование свободных поверхностей с использованием спиновых изображений 661 21.5. Примечания 667 Часть VI Верхний уровень: вероятностные методы и методы логического вывода 671 22 ПОИСК ШАБЛОНОВ С ИСПОЛЬЗОВАНИЕМ КЛАССИФИКАТОРОВ 673 22.1. Классификаторы 674 22.1.1. Использование потерь для определения решений 674 22.1.2. Методы построения классификаторов: обзор 677 22.1.3. Пример: сменный классификатор для классов с нормальным распределением 679 22.1.4. Пример: непараметрический классификатор по ближайшим соседям 680 22.1.5. Оценка и улучшение производительности 682 22.2. Построение классификаторов по гистограммам классов 684 22.2.1. Поиск пикселей кожи с использованием классификатора 684 22.2.2. Поиск лиц в предположении о независимых откликах на шаблоны 686 22.3. Выбор признаков 688 22.3.1. Анализ главных компонентов 690 22.3.2. Идентификация людей с помощью анализа главных компонентов 692 22.3.3. Канонические переменные 695 22.4. Нейронные сети 700
20 Содержание 22.4.1. Ключевые идеи 700 22.4.2. Минимизация ошибки 704 22.4.3. Когда прекратить настройку 705 22.4.4. Поиск лиц с использованием нейронных сетей 706 22.4.5. Сверточные нейронные сети 708 22.5. Машина опорных векторов 710 22.5.1. Машина опорных векторов для линейно сепарабельных наборов данных 712 22.5.2. Поиск пешеходов с использованием машины опорных векторов 715 22.6. Примечания 716 22.7. Приложение I: обратное распространение ошибки 720 22.8. Приложение И: машина опорных векторов для наборов данных, не являющихся линейно сепарабельными 724 22.9. Приложение III: использование машины опорных векторов с нелинейными ядрами 725 23 РАСПОЗНАВАНИЕ ЧЕРЕЗ СВЯЗЬ ШАБЛОНОВ 727 23.1. Поиск объектов через голосование за связи между шаблонами 728 23.1.1. Описание фрагментов изображения 728 23.1.2. Голосование и простая порождающая модель 729 23.1.3. Вероятностные модели для голосования 730 23.1.4. Голосование за связи 733 23.1.5. Голосование и трехмерные объекты 734 23.2. Рассуждения о связях с использованием вероятностных моделей и поиска 735 23.2.1. Соответствие и поиск 735 23.2.2. Пример: поиск лиц 739 23.3. Использование классификаторов для сокращения поиска 740 23.3.1. Определение приемлемых совокупностей с использованием проективных классификаторов 741 23.3.2. Пример: поиск людей и лошадей с использованием пространственных отношений 742 23.4. Метод: скрытые марковские модели 745 23.4.1. Формальные вопросы 746
Содержание 21 23.4.2. Вычисления с использованием скрытых марковских моделей 747 23.4.3. Разнообразие скрытых марковских моделей 755 23.5. Приложение: скрытые марковские модели и понимание языка жестов 758 23.5.1. Модели языка: предложения из слов 759 23.6. Приложение: поиск людей с использованием скрытых марковских моделей 762 23.7. Примечания 766 24 ГЕОМЕТРИЧЕСКИЕ ШАБЛОНЫ ЧЕРЕЗ ПРОСТРАНСТВЕННЫЕ СВЯЗИ 769 24.1. Простые связи объекта и изображения 770 24.1.1. Связи для криволинейных поверхностей 770 24.1.2. Группировка на основе классов 779 24.2. Примитивы, шаблоны и геометрический вывод 781 24.2.1. Обобщенные цилиндры как объемные примитивы 781 24.2.2. Ленты 782 24.2.3. Что можно представить с помощью лент 789 24.2.4. Связывание трехмерных и двумерных данных для цилиндров известной длины 791 24.2.5. Связывание трехмерных данных и данных образа с использованием явных геометрических соображений 793 24.3. Послесловие: распознавание объектов 798 24.3.1. Подтвержденные факты 800 24.3.2. Существующие подходы к распознаванию объектов 801 24.3.3. Ограничения 802 24.4. Примечания 803 Часть VII Приложения 807 25 ПОИСК В ЦИФРОВЫХ БИБЛИОТЕКАХ 809 25.1. Основа: организация коллекций информации 812 25.1.1. Насколько эффективна система 812 25.1.2. Чего хотят пользователи 814 25.1.3. В поисках изображений 814
25.1.4. Структурирование и навигация 816 25.2. Резюмирующее представление всего изображения 817 25.2.1. Гистограммы и коррелограммы 818 25.2.2. Текстуры и текстуры текстур 819 25.3. Представление частей изображения 823 25.3.1. Сегментация 823 25.3.2. Сравнение с шаблоном 827 25.3.3. Форма и соответствие 828 25.3.4. Кластеризация и организация коллекций 830 25.4. Видео 832 25.5. Примечания 835 26 ВИЗУАЛИЗАЦИЯ НА ОСНОВЕ ИЗОБРАЖЕНИЙ 837 26.1. Построение трехмерных моделей по последовательности изображений 838 26.1.1. Моделирование сцены по наложенным изображениям 838 26.1.2. Моделирование сцены по несовмещенным изображениям 846 26.2. Визуализация на основе переноса 849 26.2.1. Синтез аффинных проекций 850 26.2.2. Синтез евклидовых проекций 853 26.3. Световое поле 857 26.4. Примечания 860 ЛИТЕРАТУРА 865 ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ 908
Моей семье /Д. Форсайт/ Камилле и Оскару /Д. Понс/
Предисловие Компьютерное зрение — это пограничная область знаний. И как всякая погра- ничная область она интересна для изучения и непредсказуема; здесь часто нет авторитетов, на которые можно сослаться, — многие полезные идеи не имеют под собой теоретической основы, а некоторые теории бесполезны на практике; изученные области весьма различаются, и часто кажется, что всякая связь меж- ду ними отсутствует. Тем не менее, в этой книге мы попытались представить в некоторой степени упорядоченную картину этой области знаний. В нашем понимании "компьютерное зрение”, или просто “зрение” (заранее просим прощения у специалистов по зрению людей или животных) — это вид деятельности, в котором для извлечения данных применяются статистические методы и используются модели, построенные с помощью геометрии, физики и теории обучения. Таким образом, на наш взгляд компьютерное зрение осно- вывается на четком представлении о камерах и физическом процессе форми- рования изображения (часть I), получении простых выводов на основе изуче- ния набора отдельных пикселей (часть II), умении суммировать информацию, полученную из множества изображений (часть III), упорядочении группы пик- селей с целью их разделения или получения информации о форме (часть IV), распознавании объектов с помощью геометрической информации (часть V) или вероятностных методов (часть VI). Компьютерное зрение применяется довольно
Предисловие 25 широко как в относительно старых областях (например, управление мобильны- ми роботами, промышленные средства наблюдения, военные приложения), так и в сравнительно новых (взаимодействие человек/компьютер, поиск изображе- ния в цифровых библиотеках, анализ медицинских изображений и реалистич- ная передача смоделированных сцен в компьютерной графике). Некоторые из этих приложений обсуждаются в части VII. ЗАЧЕМ ИЗУЧАТЬ ЗРЕНИЕ Отличительная черта компьютерного зрения — это извлечение описаний из изображений или последовательности изображений. Это весьма полезная осо- бенность. Процесс снятия изображения обычно недеструктивен, кроме того, он достаточно прост и на сегодняшний момент недорог. Описания, необходимые пользователям, могут в большой мере зависеть от области их применения. На- пример, такой аспект компьютерного зрения, как определение структуры по движению, позволяет из серии изображений получить представление о том, что изображено на рисунке и как движется камера. В индустрии развлечений подобные методы применяются для отсеивания движения и построения трех- мерных компьютерных моделей зданий с сохранением структуры. Эти модели применяются там, где нельзя использовать настоящие здания (их поджигают, взрывают и т.п.). С помощью небольшого числа фотографий можно получить хорошие, простые, точные и удобные модели. Рассмотрим другую ситуацию: люди, желающие контролировать работу мобильных роботов. В этом случае сведения об области, где используется робот, обычно не представляют значи- тельного интереса, важно лишь местонахождение робота в этой области. Таким образом, здесь отсеивается информация о структуре и отслеживается движе- ние, что позволяет определить точное местонахождение робота. Есть еще целый ряд других важных областей применения компьютерного зрения. Это, например, работа с медицинскими изображениями: создание про- граммных систем, которые могут улучшать набор изображений, выявлять на них важные моменты или события либо визуализировать информацию, полу- ченную из изображений. Другая важная область — различные технические проверки, когда по изображениям объектов определяется, соответствуют ли объекты спецификации. Третья сфера применения компьютерного зрения — интерпретация фотографий, сделанных со спутника, как в военных целях (на- пример, может потребоваться программа, выявляющая интересные, с военной точки зрения, события в указанном регионе или определяющая вред, нанесен- ный в результате бомбардировки), так и в гражданских (какой урожай куку- рузы будет в этом году? сколько осталось тропических лесов?). Четвертая об- ласть — это упорядочение и структурирование коллекций картин. Теперь поль- зователь уже умеет находить нужную информацию в текстовых библиотеках (хотя и здесь имеется ряд сложных, нерешенных вопросов), но еще не всегда знает, что делать с библиотеками статических или движущихся изображений.
26 Предисловие Компьютерное зрение сейчас находится в особой точке своего развития. Эта тема стала популярной еще в 1960-х, но только недавно появилась возможность создания полезных компьютерных программ, использующих идеи компьютерно- го зрения, поскольку компьютеры и программы обработки изображений стали доступны большому количеству пользователей. Не так давно для получения хо- рошего цветного цифрового изображения нужно было потратить не один деся- ток тысяч долларов; сейчас для этого нужно не более нескольких сотен. Не так давно цветной принтер можно было найти только в некоторых исследователь- ских лабораториях; сейчас их используют повсеместно. Таким образом, прово- дить серьезные исследования и решать многие повседневные задачи (например, упорядочить коллекцию фотографий, создать трехмерную модель окружающего мира, управлять и вносить изменения в коллекцию видеозаписей) теперь можно с помощью методов компьютерного зрения. Наши знания по геометрии и фи- зике зрения и, что еще важнее, умение их применять в нужном направлении значительно развились. Мы уже можем решать задачи, интересующие многих людей, хотя еще не решена ни одна из действительно сложных задач, кроме того, существует множество простых задач, которые можно использовать для поддержания интеллектуальной формы людей, бьющихся над решением труд- ных задач. Итак, сейчас самое время начать изучение этого предмета! Что есть в этой книге Эта книга предназначена как для специалиста по компьютерному зрению, так и для широкого круга читателей. Она окажется полезным источником ин- формации для тех, кто работает с изображениями и робототехникой, а также занимается вычислительной геометрией, компьютерной графикой, обработкой изображений. Эта книга также будет доступна для студентов, поверхностно интересующихся зрением. В каждой главе освещается отдельный аспект дан- ного предмета, и, как видно из табл. 1, главы относительно независимы между собой. Это означает, что книгу можно читать как выборочно, так и “от корки до корки”. Материал в каждой главе подается в порядке возрастания сложности. В конце каждой главы приводятся краткие примечания, содержащие любопытные исторические сведения, и полезные замечания, относящиеся к рассматриваемо- му вопросу. В книге описаны идеи, представляющие интерес или кажущиеся перспективными, авторы попытались как можно более доступно связать теорию с реальными приложениями. При изложении материала внимание акцентирова- лось на базовых вопросах геометрии и физики изображений, а также приклад- ной статистики, поскольку именно эти области оказали огромное влияние на компьютерное зрение. Читателю, который решил изучить этот труд досконально, следует учесть, что данная книга содержит очень большой набор информации, поэтому усво- ить полученные знания за один семестр весьма сложно. Конечно, будущим (или настоящим) профессионалам в области компьютерного зрения стоит прочитать каждое слово, выполнить все упражнения и сообщить обо всех обнаруженных ошибках для исправления второго издания (которое наверняка будет велико-
Предисловие 27 ТАБЛИЦА 1. Связь между главами: читать главу будет трудно, если вы предварительно не изучите главы, указанные в графе "требуемое"; если при прочтении главы обнаружится один-два непонятных момента, скорее всего они освещены в главах, указанных в графе "полезное" Част1 * Глава Требуемое Полезное I 1: Камеры 2: Геометрические модели камер 3: Геометрическая калибровка камер 4: Радиометрия — измерение света 5: Источники, тени и затенение 6: Цвет 1 2 4, 1 5 II 7: Линейные фильтры 8: Определение краев 9: Текстура 7 7 8 III 10: Геометрия множественных проекций 11: Стереозрение 12: Аффинная структура по движению 13: Проективная структура по движению 3 10 10 12 IV 14: Сегментация посредством кластеризации 15: Сегментация посредством выбора модели 16: Сегментация на основе вероятностных методов 17: Сопровождение на основе динамических моделей 9, 6,5 14 15,10 V 18: Зрение на основе модели 19: Гладкие поверхности и их контуры 20: Аспектные графы 21: Дистанционные данные 3 2 19 20, 19, 3 VI 22: Поиск шаблонов с помощью классификаторов 23: Распознавание по связям между шаблонами 24: Геометрические шаблоны 2, 1 9, 8, 7, 6, 5 9, 8, 7, 6, 5 16, 15, 14 VII 25: Приложение: поиск в цифровых библиотеках 26: Приложение: визуализация на основе изображений 10 16, 15, 14, 6 13, 12, 11, 6, 5, 3, 2, 1 лепной книгой, о которой стоит подумать уже сейчас!). Поскольку для изучения компьютерного зрения не требуются глубокие познания в математике, здесь не нужен и слишком обширный математический аппарат. Мы попытались сделать эту книгу самодостаточной, чтобы читателям с математическим образованием на уровне выпускника инженерного вуза не приходилось обращаться к другим источникам. Математические выкладки сведены к необходимому минимуму, — в конце концов, это книга о компьютерном зрении, а не о прикладной матема-
28 Предисловие тике! — поэтому требуемые формулы включены в основной текст главы, а не вынесены в отдельные приложения. Взаимозависимость между главами сведена к минимуму, чтобы читателю, которого интересуют отдельные темы, не пришлось штудировать всю книгу. Разумеется, сделать каждую главу полностью самодостаточной невозможно, поэтому в табл. 1 показаны связи между главами. Чего нет в этой книге По компьютерному зрению доступно немало материалов, и было нелегко со- здать такой труд, который могли бы осилить простые смертные. Чтобы сделать это, пришлось урезать материал, пренебречь некоторыми темами и т.д. В самый последний момент было решено убрать целых две главы: введение в теорию ве- роятности с описанием соответствующих следствий, а также перечисление ме- тодов сопровождения объектов с нелинейной динамикой. Эти главы можно най- ти на Web-сайте книги http://www.cs.berkeley.edu/~daf/book.html. Некоторые темы мы обошли либо по собственному усмотрению, либо пото- му, что наши возможности уже были исчерпаны, о некоторых темах мы узнали слишком поздно, чтобы вставить их в книгу, а какие-то главы необходимо было сократить. Вместо подробных рассуждений по вопросам, которые представля- ют в основном исторический интерес, в конце каждой главы помещены краткие исторические примечания. Никто из нас не считает себя хорошим “археологом мысли”, так что у некоторых идей история может быть намного глубже, чем мы это показали. В книге также отсутствует подробное описание деформируемых таблиц и мозаик — две темы, которые имеют большое практическое значение; мы попытаемся ввести их во второе издание данной книги. БЛАГОДАРНОСТИ Выходу этой книги в свет мы обязаны многим людям. Несколько ано- нимных рецензентов читали черновики этой книги и сделали ценные за- мечания, за что мы чрезвычайно благодарны. Наш редактор, Алан Апт (Alan Apt), упорядочил сделанные рецензии, в чем ему весьма помог Джейк Вард (Jake Warde). Мы благодарим их обоих. Лесли Гален (Leslie Galen), Джо Альбрехт (Joe Albrecht) и Диана Пэриш (Dianne Parish) из компании Integra Technical Publishing помогли нам во многих вопросах, связанных с иллюстрациями и корректурой. Некоторые приведенные в книге изоб- ражения мы получили из Master Photos Collection IMSI, 1895 Francisco Blvd. East, San Rafael, CA 94901-5506, USA. Подготавливая библиографию, мы использовали материал по компьютерному зрению Кейта Прайса (Keith Price), который можно найти по адресу http://iris.usc.edu/Vision- Notes/bibliography/contents.html. Наши коллеги изучали как отдельные главы, так и всю книгу в целом, после чего вносили ценные и детальные предложения. Мы благодарим Кобуса Барнар- да (Kobus Barnard), Маргарет Флек (Margaret Fleck), Дэвида Кригмена (David
Предисловие 29 Kriegman), Джайтендру Малик (Jitendra Malik) и Эндрю Циссермана (Andrew Zisserman). Некоторые наши студенты также вносили предложения, выдвига- ли идеи по поводу рисунков, давали комментарии по корректуре и выполняли другую ценную работу. Мы благодарим Окан Арикан (Okan Arikan), Себастья- на Блайнда (Sebastien Blind), Марту Цепеда (Martha Cepeda), Стефана Ченни (Stephen Chenney), Френка Чо (Frank Cho), Якапа Генка (Yakup Gene), Джо- на Гаддона (John Haddon), Сергея Иоффе (Sergey Ioffe), Светлану Лазебник (Svetlana Lazebnik), Кетти Ли (Cathy Lee), Сунг-иль Пэ (Sung-il Рае), Дэвида Паркса (David Parks), Фреда Ротгангера (Fred Rothganger), Аттавис Садсенг (Attawith Sudsang) и слушателей наших курсов по компьютерному зрению при Калифорнийском университете в Беркли. Многие преподаватели в различных университетах в своих лекциях по зрению использовали наши (часто необра- ботанные) черновики этой книги. В число учебных заведений, где студентам пришлось изучать “сырой” материал, вошли Университет Карнеги-Меллона, Стэнфордский университет, Университет штата Висконсин в Мэдисоне, Кали- форнийский университет в Санта-Барбаре, Университет Южной Калифорнии и другие, о которых мы не знаем. Мы благодарны редакторам за все полез- ные комментарии, особенно хочется выделить Криса Брэглера (Chris Bregler), Чака Дайера (Chuck Dyer), Мартиала Хеберта (Martial Hebert), Дэвида Криг- мена (David Kriegman), Б.С. Маньюнат (B.S. Manjunath) и Рэма Неватья (Ram Nevatia), которые посылали нам множество подробных и полезных коммента- риев и исправлений. Книга во многом выиграла благодаря замечаниям Айдин Алалиоглу (Aydin Alalioglu), Сринивас Акелла (Srinivas Akel la), Мэри Банич (Marie Banich), Сержа Белонги (Serge Belongie), Аджиит М. Чаудхари (Ajit М. Chaudhari), Навнит Далал (Navneet Dalal), Ричарда Хартли (Richard Hart- ley), Глена Хилеи (Glen Healey), Майка Хеса (Mike Heath), Хейли Ибен (Hayley Iben), Стефани Джонквирес (Stephanie Jonquires), Тони Льюиса (Tony Lewis), Бенсона Лимкеткай (Benson Limketkai), Симона Маскела (Simon Maskell), Бра- яна Милха (Brian Milch), Тамары Миллер (Tamara Miller), Корделии Шмид (Cordelia Schmid), Бриджит (Brigitte) и Джерри Серлин (Gerry Serlin), Ила- на Шимшони (Ilan Shimshoni), Эрика де Штурлера (Eric de Sturler), Камилло Дж. Тейлор (Camillo J. Taylor), Джеффа Томпсона (Jeff Thompson), Клер Вал- лат (Claire Vallat), Даниель С. Вилкерсон (Daniel S. Wilkerson), Джинган Ю (Jingahn Yu), Хао Жанг (Hao Zhang) и Женджиоу Жанг (Zhengyou Zhang). Если вы обнаружите опечатку, пожалуйста, сообщите об этом подробно по ад- ресу daf@cs.berkeley.edu, использовав в сообщении фразу “book typo”; во втором издании мы попытаемся отблагодарить всех, кто первым обнаружит каждую опечатку. Мы благодарим П. Бесл (Р. Besl), Б. Боуфама (В. Boufama), Дж. Костерия (J. Costeira), П. Дебевека (Р. Debevec), О. Фаугераса (О. Faugeras), Я. Ген- ка (Y. Gene), М. Хеберта (М. Hebert), Д. Хьюбера (D. Huber), К. Икеучи (К. Ikeuchi), А. Е. Джонсона (А. Е. Johnson), Т. Кенеда (Т. Kanade), К. Ку- тулакоса (К. Kutulakos), М. Левоя (М. Levoy), С. Махамуда (S. Mahamud), Р. Мора (R. Mohr), X. Моравека (Н. Moravec), X. Мураса (Н. Murase), Й. Ох-
30 Предисловие ту (Y. Ohta), М. Окутами (М. Okutami), М. Поллефейса (М. Pollefeys), X. Са- йто (Н. Saito), К. Шмида (С. Schmid), С. Салливана (S. Sullivan), К. Томаси (С. Tomasi), М. Тека (М. Turk) за предоставление оригиналов некоторых ри- сунков, приведенных в этой книге. В число самых важных персон из длинного списка тех, кому должен Д. Форсайт, входят Джеральд Алансвайт (Gerald Alanthwaite), Майк Бреди (Mike Brady), Том Фейр (Tom Fair), Маргарет Флек (Margaret Fleck), Джайтендра Малик (Jitendra Malik), Джо Мунди (Joe Mundy), Майк Родд (Mike Rodd), Чарли Ротвелл (Charlie Rothwell) и Эндрю Циссерман (Andrew Zisserman). Дж. Понс выражает признательность Оливеру Фаугерасу (Olivier Faugeras), Майку Бреди (Mike Brady) и Тому Бинфорду (Tom Binford). Он также хотел бы поблагодарить за помощь Шерон Коллинз (Sharon Collins). Без нее эта книга, как и большинство его работ, возможно никогда не была бы закончена. Оба автора также хотели бы отметить огромное влияние работ Жана Коендеринка (Jan Koenderink). ВОЗМОЖНЫЕ КУРСЫ ЛЕКЦИЙ Всю книгу можно изучить за два (довольно насыщенных) семестра. Авторы предлагают изучить одну главу-приложение (возможно, главу о визуализации на основе изображений) в первом семестре, а другую — во втором. Стоит отме- тить, что полный и подробный курс необходим небольшому числу факультетов, поэтому данная книга построена так, чтобы преподаватель мог выбирать разде- лы для изучения по своему вкусу. В табл. 2-6 показаны примерные программы курсов, рассчитанных на 15-недельный семестр, хотя, естественно, преподава- тели могут перестроить приведенные программы по своему усмотрению. В табл. 2 предлагается программа односеместрового ознакомительного кур- са по компьютерному зрению для старшеклассников или первокурсников фа- культетов компьютерных наук, электротехники или иных технических либо научных дисциплин. Студенты получат довольно полное представление о ком- пьютерном зрении, включая такие области его применения, как цифровые биб- лиотеки и визуализация на основе изображений. Основные моменты геомет- рии и физики формирования изображений рассмотрены полностью, хотя самый сложный теоретический материал опущен. Уровень подготовки студентов может быть очень разным, поэтому на второй или третьей неделе им может понадо- биться изучение литературы по теории вероятности (с этой целью на web-сайте данной книги выложена соответствующая глава). Мы предлагаем перенести главы о прикладном применении на конец семестра, но, возможно, главу 20 сто- ит пройти приблизительно на десятой неделе обучения, а главу 21 — на шестой. В табл. 3 представлена программа для студентов факультетов компьютерной графики, которые желают ознакомиться с вопросами компьютерного зрения, связанными с их специальностью. Особое внимание уделяется методам, кото- рые позволяют восстановить модели объектов по информации, содержащейся в рисунках; чтобы понять освещаемые вопросы, требуются знания о камерах
Предисловие 31 ТАБЛИЦА 2. Односеместровый ознакомительный курс по компьютерному зрению для старше- классников или первокурсников факультетов компьютерных наук, электротехники или иных техни- ческих или научных дисциплин Неделя Глава Разделы Ключевые темы 1 1, 4 1.1, 4 (резюме) камеры-обскуры, радиометрическая терминология 2 5 5.1-5.5 модели локального затенения; точечные, линейные и плоские источники; фотометрическое стерео; 3 6 все цвет 4 7, 8 7.1-7.5, 8.1-8.3 линейные фильтры; сглаживание с целью подавления шумов; определение краев 5 9 все текстура как статистика выходов фильтров; синтез; восстановление формы 6 10, 11 10.1, 11 основы стереометрии; стерео 7 14 все сегментация как вид кластеризации 8 15 15.1-15.4 подбор линий, кривых; подбор как оценка максимального правдоподобия; устойчивость 9 16 16.1,16.2 скрытые значения и ОМ-алгоритм 10 17 все сопровождение с помощью фильтра Кальмана; ассоциация данных 11 2, 3 2.1, 2.2, все из 3 калибровка камер 12 18 все зрение на основе модели с использованием соответствий и калибровки камер 13 22 все сопоставление с шаблоном с помощью классификаторов 14 23 все сопоставление по связям 15 25, 26 все поиск изображений в цифровых библиотеках; визуализация на основе изображений и фильтрах, поэтому в программу включены соответствующие главы и разделы. Одним из важных вопросов в современном мире графики стало сопровожде- ние движущихся объектов, описание которого также включено в предлагаемый курс. Мы допускаем, что у студентов может быть разный уровень подготовки, поэтому в книге приводятся некоторые базовые знания из теории вероятности. В табл. 4 приведена программа для студентов, которые интересуются в ос- новном применением компьютерного зрения. Здесь выделена информация, ко- торая представляет непосредственный практический интерес. Для некоторых студентов на второй или третьей неделе может понадобиться чтение дополни- тельной литературы по теории вероятности. В табл. 5 предложена программа для студентов, изучающих познание или искусственный интеллект и желающих получить представление об основных
32 Предисловие ТАБЛИЦА 3. Курс для студентов, изучающих компьютерную графику Неделя Глава Разделы Ключевые темы 1 1, 4 1.1, 4 (резюме) камеры-обскуры, радиометрическая терминология 2 5 5.1-5.5 модели локального затенения; точечные, линейные и плоские источники; фотометрическое стерео 3 6.1-6.4 все цвет 4 7, 8 7.1-7.5, 8.1-8.3 линейные фильтры; сглаживание с целью подавления шумов; определение краев 5 9 9.1-9.3 текстура как статистика выходов фильтров; синтез 6 2, 3 2.1, 2.2, все из 3 калибровка камер 7 10, 11 10.1, 11 основы стереометрии; стерео 8 12 все аффинная структура по движению 9 13 все проективная структура по движению 10 26 все визуализация на основе изображений 11 15 все подбор; устойчивость; алгоритм RANSAC 12 16 все скрытые значения и ОМ-алгоритм 13 19 все поверхности и контуры 14 21 все дистанционные данные 15 17 все сопровождение, фильтры Кальмана и ассоциация данных понятиях компьютерного зрения. Эта программа менее нагружена, чем преды- дущие, и она допускает более слабый уровень математической подготовки. При- мерно на 2-3 неделе обучения студентам придется немного почитать о вероят- ности (например, главу на web-сайте книги). В табл. 6 показана программа для студентов факультетов прикладной мате- матики, электротехники или физики. Эта программа предполагает весьма за- груженный семестр; некоторые вопросы рассматриваются обзорно (считается, что студенты могут самостоятельно обработать значительный объем математи- ческих выкладок). В зависимости от уровня подготовки, некоторым студентам на второй или третьей неделе может понадобиться литература по теории ве- роятности. Для организации небольшого перерыва в довольно сухой и слож- ной программе мы предлагаем рассмотреть цифровые библиотеки; вместо этого можно также изучить главу по визуализации на основе изображений, или по дистанционным данным. ОБОЗНАЧЕНИЯ В книге использованы следующие обозначения: точки, прямые и плоско- сти обозначаются греческими или курсивными латинскими буквами (напри- мер, Р, Д или П). Векторы обычно обозначаются латинскими или греческими
Предисловие 33 ТАБЛИЦА 4. Курс для студентов, интересующихся применением компьютерного зрения Педеля Глава Разделы Ключевые темы I I, 4 1.1, 4 (резюме) камеры-обскуры, радиометрическая терминология 2 5, 6 5.1.5.3-5.5, 6.1—6.4 модели локального затенения; точечные, линейные и плоские источники; фотометрическое стерео; цвет: физика, человеческое восприятие, цветовые пространства 3 2, 3 все модели камер и калибровка камер 4 7, 9 все из 7; 9.1-9.3 линейные фильтры; текстура: как статистика выходов фильтров; синтез текстуры 5 10, 11 все стереометрия 6 12,13 все аффинная структура по движению; проективная структура по движению 7 13, 26 все проективная структура по движению; визуализация на основе изображений 8 14 все сегментация с помощью кластеризации; определение границ и вычитание фона 9 15 все подбор линий, кривых; устойчивость; алгоритм RANSAC 10 16 все скрытые значения и ОМ-алгоритм И 25 все поиск изображений в цифровых библиотеках 12 17 все сопровождение, фильтры Кальмана и ассоциация данных 13 18 все зрение на основе моделей 14 22 все поиск шаблонов с помощью классификаторов 15 20 все дистанционные данные полужирными буквами (например, v, Р или £), но вектор, соединяющий две точки Риф, часто будет обозначаться как PQ. Строчные буквы обычно упо- требляются для обозначения геометрических фигур на плоскости изображений (например, р, р, 3), а прописные — для объектов сцены (например, Р, П). Матрицы обозначаются рукописными латинскими буквами (например, И). Привычное трехмерное евклидово пространство будет обозначаться как Е3, векторное пространство, образованное наборами из п действительных чисел, которые подчиняются обычным законам сложения и умножения на скаляр, обозначается как Rn, а для обозначения нулевого вектора в таких простран- ствах обычно употребляется запись 0. Подобным образом, векторное простран- ство, образованное действительными матрицами mxn, обозначается как RTnxn. При т = п (квадратная матрица) символом Id обозначается единичная матри- ца, т.е. матрица п х п, диагональные элементы которой равны 1, а все осталь-
34 Предисловие ТАБЛИЦА 5. Курс для студентов, изучающих познание или искусственный интеллект Неделя Глава Разделы Ключевые темы 1 1, 4 1, 4 (резюме) камеры-обскуры; линзы; камеры и глаз; радиометрическая терминология 2 5 все модели локального затенения; точечные, линейные и плоские источники; фотометрическое стерео; взаимное отражение; определение яркости 3 6 все цвет: физика, человеческое восприятие, цветовые пространства; постоянство цвета 4 7 7.1-7.5, 7.7 линейные фильтры; выборка; масштаб 5 8 все определение краев 6 9 все текстура; представление; синтез; восстановление формы 7 10.1,10.2 все основы стереометрии 8 И все стереозрение 9 14 все сегментация с помощью кластеризации 10 15 все подбор линий, кривых; устойчивость; алгоритм RANSAC 11 16 все скрытые значения и ОМ-алгоритм 12 18 все зрение на основе модели 13 22 все поиск шаблонов с помощью классификаторов 14 23 все распознавание по связям между шаблонами 15 24 все геометрические шаблоны по пространственным отношениям ные — 0. Транспонированная матрица матрицы U размера т х п с коэффици- ентами Uij — это матрица UT, имеющая размер п х т и коэффициенты Uji. Элементы пространства R” часто отождествляются с векторами-столбцами или матрицами п х 1, например, а = {ai,a2,as)T — это транспонированная матри- ца 1 х 3 {вектор-строка), т.е. матрица 3x1 {вектор-столбец), или элемент пространства К3. Скалярное (или внутреннее) произведение двух векторов а = (гц,... ,ап)Т кЬ = (i>i,..., Ьп)т в пространстве Кп определяется следующим образом: а • Ь = dibi + • • + a,nbn. Его также можно записать в виде произведения двух матриц, т.е. а-Ь = атЬ = = Ьта. Под |а|2 = а-а мы подразумеваем квадрат евклидовой нормы вектора а, а под d — расстояние, следующее из определения Евклидовой нормы вектора в пространстве Еп, т.е. d{P,Q) — |FQ|. Для матрицы U в пространстве R7nxn через |С7| обычно будет обозначаться ее фробениусова норма, т.е. корень квад- ратный из суммы квадратов ее элементов.
Предисловие 35 ТАБЛИЦА 6. Программа для студентов факультетов прикладной математики, электротехники или физики Неделя Глава Разделы Ключевые темы 1 1, 4 все камеры, радиометрия 2 5 все модели локального затенения; точечные, линейные и плоские источники; фотометрическое стерео; взаимное отражение и примитивы затенения 3 6 все цвет: физика, человеческое восприятие, цветовые пространства, постоянство цвета 4 2, 3 все параметры и калибровка камер 5 7, 8 все линейные фильтры и определение краев 6 8, 9 все определение краев (окончание); текстура: представление, синтез, восстановление формы 7 10, 11 все стереометрия 8 12, 13 все структура по движению 9 14, 15 все сегментация с помощью кластеризации; подбор линий, кривых; устойчивость; алгоритм RANSAC 10 15, 16 все подбор (окончание); скрытые значения и ОМ-алгоритм 11 17, 25 все сопровождение; фильтры Кальмана, ассоциация данных; поиск изображений в цифровых библиотеках 12 18 все зрение на основе модели 13 19 все поверхности и их контуры 14 20 все аспектные графы 15 22 все сравнение с шаблоном Если норма вектора а равна единице, то скалярное произведение а-b равно длине (с соответствующим знаком) проекции b на а. В общем случае а • b = |а| |fe| cos#, где в — угол между двумя векторами. Из приведенного определения следу- ет, что необходимым и достаточным условием ортогональности двух векторов является равенство нулю их скалярного произведения. Векторное (или внешнее) произведение двух векторов а = (01,02, оз)г и b = (di,Ь2,Ьз)Т в пространстве К3 — это вектор (O2&3 ~ 03^2 азЬг — сцЬз СЦ#2 — 02^1
36 Предисловие Отметим, что а х Ъ — [ах]Ь, где Векторное произведение двух векторов а и b в R3 ортогонально к этим двум векторам, а необходимым и достаточным условием коллинеарности а и Ь яв- ляется равенство нулю векторного произведения а х b = 0. Если угол между векторами а и Ъ снова обозначить 0, то можно показать, что |а х Ь| = |а| |b| |sin0|. УПРАЖНЕНИЯ И РЕСУРСЫ Для выполнения упражнений, предлагаемых на протяжении всей книги, иногда могут понадобиться стандартные программы для численных расчетов по линейной алгебре, разложения сингулярных значений, а также линейных и нелинейных вычислений по методу наименьших квадратов. Значительное число таких средств предлагается в пакете MATLAB, а также в свободно рас- пространяемых библиотеках, таких как LINPACK, LAPACK и MINPACK, кото- рые можно загрузить из архива Netlib (http://itfww.netlib.org/). На web- сайте книги http://www.cs.berkeley.edu/~daf/book.html предлага- ются ссылки и на другие программы. По этому адресу также можно найти массивы данных (или ссылки на массивы) для заданий по программированию.
----------- ЧАСТЬ I ----------- Формирование изображений и модели изображений

1 Камеры Существует множество устройств формирования изображения: от глаз живот- ных до видеокамер и радиотелескопов. Не все эти устройства могут содержать линзы. Например, у первой модели камеры-обскуры (что буквально означает “темная комната”), изобретенной в XVI веке, линз не было, вместо них исполь- зовалось отверстие, которое позволяло лучам света фокусироваться на стенке или полупрозрачной пластинке и таким образом демонстрировать законы пер- спективы, которые за сто лет до этого открыл Брунеллеччи (Brunelleschi). Уже в 1550 году отверстия стали заменять все более и более усложняющимися лин- зами, а современная цифровая или фотокамера — это, по сути, камера-обскура, способная регистрировать количество света, которое попадает на каждый ма- ленький участок ее задней панели (рис. 1.1). Поверхность камеры, на которой формируется изображение, обычно пред- ставляет собой прямоугольник, а форма человеческой сетчатки намного ближе к сферической поверхности, поэтому панорамные фотоаппараты могут обору- доваться цилиндрическими чувствительными поверхностями. Помимо формы, датчики изображения имеют и другие характеристики. Они могут фиксировать изображение, дискретное в пространстве (как, например, в человеческом глазе с палочками и колбочками, 35-миллиметровых камерах с эмульсионными зер- нами и цифровых камерах с прямоугольными элементами изображений, или
40 Часть I. Формирование изображений и модели изображений Рис. 1.1. Формирование изображения на задней панели фотокамеры. Рисунок из учебника “US NAVY MANUAL OF BASIC OPTICS AND OPTICAL INSTRUMENTS", подготовленного Коми- тетом no управлению военно-морским персоналом США, перепечатан корпорацией. Dover Publications (1969) пикселями) или непрерывное (как, например, в старых телевизионных труб- ках). Сигнал, фиксируемый датчиком изображения в определенной точке своей чувствительной поверхности, может быть дискретным или непрерывным и со- стоять из одного числа (черно-белая камера), нескольких значений (например, интенсивности красного, зеленого и синего цветов для цветной камеры или реакции трех типов колбочек для человеческого глаза), большого набора чи- сел (например, реакции гиперспектральных сенсоров) или даже непрерывной функции длины волны (спектрометры). Изучению перечисленных выше харак- теристик и посвящена данная глава. 1.1. КАМЕРЫ-ОБСКУРЫ 1.1.1. Перспективная проекция Возьмем коробку, в одной из ее стенок сделаем булавкой маленькое отвер- стие, а затем заменим противоположную стенку полупрозрачной пластинкой. Если держать эту коробку перед собой в комнате со слабым освещением так, чтобы отверстие было направлено на какой-то источник света (скажем, свечу), то на полупрозрачной пластинке можно увидеть перевернутое изображение све- чи (рис. 1.2). Это изображение образуют лучи света, идущие от сцены, находя- щейся перед коробкой. Если отверстие уменьшить до точки (что, конечно же, физически невозможно), то через плоскость пластинки (или плоскость изобра- жения), отверстие и некоторую точку сцены будет проходить ровно один луч. В действительности, отверстие имеет конечный (хотя и небольшой) размер, и в каждой точке плоскости изображения собирается свет от целого конуса лу-
Глава 1. Камеры 41 Плоскость изображения Рис. 1.2. Модель формирования изображения через отверстие чей, образующих определенный телесный угол, так что эта идеализированная и чрезвычайно упрощенная геометрическая модель формирования изображения не совсем строго описывает действительность. Кроме того, настоящие каме- ры обычно оснащены линзами, что также весьма усложняет ситуацию. Тем не менее, модель точечной перспективы (ее еще называют центральной перспек- тивой), впервые предложенная Брунеллеччи в начале XV века, удобна с ма- тематической точки зрения. Несмотря на свою простоту, она часто является приемлемым приближенным описанием процесса формирования изображения. В результате перспективной проекции возникает перевернутое изображение, поэтому иногда вместо него удобно рассматривать мнимое изображение, рас- положенное в плоскости, лежащей перед отверстием на таком же расстоянии, как и реальная плоскость изображения (рис. 1.2). Это мнимое изображение не перевернуто, но во всем остальном оно точно соответствует настоящему. В за- висимости от ситуации, удобнее может быть одно или другое. На рис. 1.3, а по- казан очевидный эффект перспективной проекции: относительный размер объ- ектов зависит от расстояния до них. Например, изображения В' и С столбиков В и С кажутся одинаковыми по высоте, а в действительности столбики А и С в два раза меньше, чем В. На рис. 1.3, б иллюстрируется еще один общеиз- вестный эффект: проекции двух параллельных прямых, лежащих в некоторой плоскости П, сходятся на горизонтальной линии Н, образованной пересечени- ем плоскости изображения с плоскостью, параллельной П и проходящей через отверстие. Заметим, что прямая L на плоскости П, параллельная плоскости изображения, вообще не дает никакого изображения. Названные свойства легко доказать чисто геометрически. В то же время, часто бывает удобно (кроме того, элегантно) оперировать такими понятиями, как система отсчета, координаты и уравнения. Рассмотрим, например, систе- му координат (О, связанную с камерой-обскурой, начало координат О которой совпадает с отверстием, а векторы i и j образуют базис векторной плоскости, параллельной к плоскости изображения П', которая находится на расстоянии f от отверстия в положительном направлении вектора к (рис. 1.4). Прямая, проходящая через отверстие и перпендикулярная к П', называется оп-
42 Часть I. Формирование изображений и модели изображений Рис. 1.3. Эффекты перспективы: а) объекты, которые находятся дальше, кажутся меньшими, чем те, которые находятся ближе: расстояние d от отверстия О до плоскости, в которой лежит точка С, в два раза меньше, чем расстояние до плоскости, в которой лежат точки А и В; б) изображения параллельных прямых пересекаются на горизонтальной линии ([Hilbert and Cohn-Vossen, 1952], fig. 127). Заметим, что в случае а плоскость изображения находится за отверстием (физическая сетчатка), а в случае б — перед ним (мнимая плоскость изображения). На большинстве схем в этой главе и далее в книге фигурирует именно физическая плоскость изображения, хотя при необходимости будут использованы и мнимые изображения тической осью, а точка С, в которой она пересекается с П', называется цен- тром изображения. Эту точку можно использовать в качестве начала системы координат, связанной с плоскостью изображения, и она играет важную роль в процедурах калибровки камер. Обозначим через Р точку сцены с координатами (х, у, z), а через Р* — ее изображение с координатами z'). Так как Р' лежит в плоскости изобра- жения, то z' = f. Поскольку три точки Р, О и Р' лежат на одной прямой, то О?1 = ХОР для некоторого числа А. Отсюда следует, что
Глава 1. Камеры 43 Рис. 1.4. Для вывода уравнений перспективной проекции в этом разделе использован тот факт, что точка Р, ее изображение Р' и отверстие О лежат на одной прямой х = Хх < у' = /' = Az следовательно, (1.1) 1.1.2. Аффинная проекция Как было сказано в предыдущем разделе, точечная перспективная проекция только приблизительно описывает геометрию процесса построения изображе- ния. В этом разделе представлен ряд грубых приближений, называемых аф- финными проекционными моделями, которые иногда также могут оказаться полезными. Рассмотрим две аффинные модели: слабоперспективную и орто- гональную. Третья модель из семейства аффинных, параперспективная, пред- ставлена в главе 12. Фронтально-параллельная плоскость По определяется уравнением z = z0 (рис. 1.5). Для любой точки Р на По уравнение перспективной проекции (1.1) можно переписать как х' = —тх У1 = — -ту Г т =-----. zo (1-2)
44 Часть I. Формирование изображений и модели изображений Рис. 1.5. Слабоперспективная проекция: все линейные элементы на плоскости По проектируются с одинаковым увеличением По физическим соображениям zq должно быть отрицательным (плоскость должна находиться перед отверстием), так что коэффициент увеличения т, связанный с плоскостью По, больше нуля. Название параметра объясняется следующими соображениями: рассмотрим две точки Р и Q на плоскости По и их изображения Р' и Q' (рис. 1.5); очевидно, что векторы PQ и P'Q' парал- лельны, поэтому IF'Q'I = m|PQ|. Это выражение и представляет зависимость размера изображения от расстояния до объекта, о которой упоминалось ранее. Когда глубина сцены мала по сравнению со средним расстоянием до камеры, увеличение можно считать постоянным. Эта проекционная модель называется слабой проекцией, или масштабной ортографией. Если заранее известно, что камера постоянно остается на приблизительно одинаковом расстоянии от сцены, можно нормировать координаты изображения таким образом, чтобы т = — 1. Это будет уже ортогональная проекция, которая определяется как Причем все лучи света параллельны оси к и перпендикулярны плоскости изоб- ражения П' (рис. 1.6). Хотя слабоперспективная модель приемлема при описа- нии многих процессов формирования изображения, применение чистой ортого- нальной проекции обычно дает нереалистичные результаты. 1.2. КАМЕРЫ С ЛИНЗАМИ Большинство камер оснащены линзами. Можно назвать две основные при- чины такого технического решения. Первая — аккумуляция света, так как оди- ночный световой луч сможет достичь каждой точки на плоскости изображения
Глава 1. Камеры 45 Рис. 1.6. Ортогональная проекция. В отличие от других геометрических моделей процесса форми- рования изображения, при ортогональном проектировании элементы изображения не переворачи- ваются. Соответственно, увеличение берется отрицательным, что немного неестественно, но зато упрощает проекционные уравнения Рис. 1.7. Отражение и преломление света на границе двух однородных сред с показателями пре- ломления П1 И 712 только при идеальной точечной проекции. У реальных отверстий, конечно, есть определенный размер, так что каждая точка на плоскости изображения освеща- ется конусом световых лучей, образующих определенный телесный угол. Чем больше отверстие, тем шире конус и ярче изображение, но большие отверстия дают расплывчатое изображение. Сокращение размера отверстия повышает чет- кость изображения, но уменьшает количество света, который попадает на плос- кость изображения, следствием чего могут быть эффекты дифракции. Вторая основная причина использования линз — это удержание изображения строго в фокусе при сборе света с большой площади. Если не принимать во внимание дифракцию, интерференцию и другие фи- зические явления, то поведение линз подчиняется законам геометрической оп- тики (рис. 1.7): 1) в однородной среде свет распространяется по прямой линии (луч); 2) при отражении луча от поверхности падающий луч, отраженный луч и нормаль к отражающей поверхности лежат в одной плоскости, а сумма углов
46 Часть I. Формирование изображений и модели изображений между нормалью и двумя лучами равна 90°; 3) при переходе луча из одной сре- ды в другую происходит его преломление (т.е. луч изменяет свое направление). Согласно закону Снелла (Snell’s law), если ri — луч, падающий на границу раз- дела двух прозрачных сред с показателями преломления и П2, а т2 - отра- женный луч, то ri, г2 и нормаль к поверхности отражения лежат в одной плос- кости, а углы di и а2 между нормалью и двумя лучами связаны соотношением тц sin«i = П2 sin 02- (1.4) В этой главе эффекты отражения не рассматриваются, мы рассмотрим только преломление. Другими словами, мы сконцентрируем наше внимание на линзах, которые отличаются от используемых в оптических системах с зеркаль- ными линзами, или катадиоптрических системах (например, телескопах- рефлекторах), в которые входят как отражающие (зеркала), так и преломля- ющие элементы. Проследить за ходом лучей света через линзу проще, если углы между этими лучами и преломляющими поверхностями линз считаются небольшими. В следующем разделе описан именно такой случай. 1.2.1. Параксиальная геометрическая оптика В этом разделе рассмотрена параксиальная геометрическая оптика (или оп- тика первого порядка), где углы между всеми лучами, проходящими через линзу, и нормалью к преломляющей поверхности малы. Кроме того, мы пред- полагаем, что линзы обладают аксиальной симметрией относительно прямой, называемой оптической осью, и что все преломляющие поверхности сфериче- ские. Такая симметрия позволяет определить геометрию проекции, если рас- сматривать линзы с круглыми краями, лежащие в плоскости, которая содержит оптическую ось. Пусть луч света проходит через точку Pi на оптической оси и преломляется в точке Р сферической поверхности радиуса R, разделяющей две прозрачные среды с показателями преломления п\ и п2 (рис. 1.8). Обозначим через Р2 точку, в которой преломленный луч пересекает оптическую ось во второй раз (точки Pi и Р2 полностью симметричны), а через С — центр сферической поверхности. Пусть через ац и а2 обозначены, соответственно, углы между двумя лу- чами и прямой, соединяющей точки Р и С. Если /31 (соответственно, /32) — угол между оптической осью и прямой, соединяющей точку Pi (соответственно, точку Р2) с точкой Р, то угол между оптической осью и прямой, соединяющей точки Р и С (см. рис. 1.8), равен 7 = ai —/?1 = а2+/3г. Обозначим теперь через h расстояние от точки Р до оптической оси, а через R — радиус сферической поверхности. Если считать, что все углы малы и в первом приближении равны своим синусам и тангенсам, получим /1 i\ /1 1 \ «1 = 7 + Pi ~ h | —I-1 и а2=7 — /?2 « М--------I • \Rdij \R di I
Глава 1. Камеры 47 Рис. 1.8. Параксиальное преломление: луч света, проходящий через точку Pi, преломляется в точке его пересечения со сферической поверхностью, Р. Преломленный луч пересекается с оптической осью в точке Р2. Центр сферической поверхности находится в точке С оптической оси, а ее радиус — R. Предполагается, что углы сц, (31,а2 и малы Если записать закон Снелла для малых углов, получим уравнение параксиаль- ного преломления: П1 712 П2 — 711 71101 ~ 7Z2O2 ---1---— ------- (1.5) dl с?2 R Заметим, что отношение di к d2 зависит от R, п* и п2, но не от 61 или Ь2. Это главное упрощение, которое дает параксиальное приближение. Уравнение (1.5) справедливо и тогда, когда некоторые (или все) величины di, d2 и R становятся отрицательными, что соответствует расположению точек Pi, Р2 и С по другую сторону оптического центра. Разумеется, настоящие линзы имеют, по меньшей мере, две преломляю- щих поверхности. Соответствующие пути прохождения лучей можно построить, несколько раз применяя уравнение параксиального преломления. В следующем разделе это выполнено для тонкой линзы. 1.2.2. Тонкие линзы Рассмотрим линзу с двумя сферическими поверхностями радиуса R с пока- зателем преломления п. Допустим, что линза находится в вакууме (или, для более точного приближения, в воздухе), показатель преломления которого ра- вен 1, и что эта линза тонкая (т.е. луч, попадая на линзу и преломляясь на ее правой грани, немедленно снова преломляется на ее левой грани). Рассмотрим точку р, расположенную на расстоянии z (в отрицательном на- правлении оси отсчета) от оптической оси, и обозначим через (РО) луч, про- ходящий через эту точку и центр О линзы (рис. 1.9). Как показано в разделе упражнений, из закона Снелла и уравнения (1.5) следует, что луч (РО) не пре- ломляется и что все остальные лучи, проходящие через точку Р, тонкая линза
48 Часть I. Формирование изображений и модели изображений Рис, 1.9. Тонкая линза. Лучи, проходящие через точку О, не преломляются. Лучи, параллельные оптической оси, собираются в фокусе F* Рис. 1.10. Поле зрения камеры равно 2ф, где ф = arctg d — диаметр датчика (пленки или ПЗС- датчика), a f — фокусное расстояние камеры. Если f намного меньше d, имеем широкоугольный объектив, в котором лучи отклоняются от оптической оси больше, чем на 45°. У телеобъектива маленькое поле зрения, поэтому изображения, которые он создает, ближе к аффинным фокусирует в точке Р' на расстоянии z' по направлению луча (РО), так что 1 1 1 z z f (1.6) где f = ~ ФокУсное расстояние линзы. Заметим, что уравнения, связывающие точки Р и Р', точно такие же, как и при точечной проекции, если принять, что z' = поскольку Р и Р' лежат на луче, проходящем через центр линзы, а точки, которые находятся на рас- стоянии —z от точки О, попадают точно в фокус только тогда, когда плоскость изображения находится на расстоянии z' от точки О с другой стороны линзы, что удовлетворяет уравнению (1.6) (т.е. уравнению тонкой линзы). Устремив z —> —оо, можно показать, что f — это расстояние от центра линзы до плос- кости фокусировки изображений таких объектов, как звезды, расстояние до которых можно считать равным z — —оо. Две точки, F и F', находящиеся на расстоянии f от центра линзы на оптической оси, называются фокусами линзы.
Глава 1. Камеры 49 Рис. 1.11. Простая толстая линза с двумя сферическими поверхностями На практике объекты, входящие в определенный диапазон расстояний (ко- торый называется глубиной поля, или глубиной фокуса), попадают в область, допустимую для фокуса. Как показано в разделе упражнений, глубина поля возрастает с увеличением диафрагментарного числа линзы (т.е. отношения фокального расстояния линзы к ее диаметру). Поле зрения камеры — это часть площади кадра, которая действительно проектируется на чувствитель- ную область камеры. Оно определяется не только фокальным расстоянием, но еще зависит от эффективной площади чувствительной области (например, пло- щадь пленки, которая освещается в фотоаппарате или площадь ПЗС-датчика в цифровой камере — рис. 1.10). 1.2.3. Реальные линзы Более реалистичная модель простой оптической системы — это толстая лин- за. Уравнения, описывающие ее поведение, легко выводятся из уравнения па- раксиального преломления; они выглядят так же, как и уравнения для проекции и тонких линз, за исключением смещения (рис 1.11): если через Н и Н' обо- значить главные точки линзы, тогда уравнение (1.6) сохраняется при условии, что —z (соответственно, z') — расстояние от точки Р (соответственно, Р') до плоскости, перпендикулярной к оптической оси и проходящей через Н (соот- ветственно, Н'). В этом случае единственный непреломляющийся луч проходит вдоль оптической оси. Простые линзы имеют некоторые аберрации. Чтобы понять, почему это про- исходит, вначале напомним, что уравнение параксиального преломления (1.5) — это только приближение, справедливое при условии, что угол а между любым проходящим лучом и оптической осью системы мал, и sin а « а. Для больших углов разложение синуса в ряд Тейлора до членов третьего порядка дает такое уточнение параксиального уравнения: П1 П2 П2 — П1 — + — =-------------+ h2 di d2 R 2,d2 \R d2
50 Часть I. Формирование изображений и модели изображений Здесь через h обозначено (как и на рис. 1.8) расстояние от оптической оси до точки, в которой падающий луч пересекается с границей раздела. В частно- сти, лучи, которые попадают на границу раздела дальше от оптической оси, фокусируются ближе к границе раздела. Тот же эффект имеет место и для линз, он является причиной двух типов сферических аберраций (рис. 1.12, а). Рассмотрим точку Р на оптической оси и ее параксиальное изображение Р'. Расстояние от точки Р' до точки пересече- ния оптической оси с лучом, выходящим из точки Р и преломляемым линзой, называется продольной сферической аберрацией этого луча. Заметим, что ес- ли плоскость изображения П' поставить в точку Р, то луч пересекал бы эту плоскость на некотором расстоянии от оси, что называется поперечной сфери- ческой аберрацией луча. Все лучи, проходящие через точку Р и преломляемые линзой, при пересечении с плоскостью П' образуют пятно рассеяния с центром в точке Р. Размер этого пятна будет меняться, если двигать П' вдоль опти- ческой оси. Пятно минимального размера называется пятном наименьшего рассеяния, и (в общем случае) оно не находится в точке П'. Кроме сферической аберрации, существует еще четыре других типа первич- ных аберраций, вызванных отличием оптических явлений первого и третьего порядка, а именно: кома, астигматизм, кривизна поля изображения и дис- торсия. Точное определение этих аберраций в данной книге мы приводить не будем. Достаточно сказать, что подобно сферическим аберрациям, они ухудша- ют изображение, делая расплывчатой каждую точку объекта. Искажение дает несколько иной эффект, изменяя форму изображения в целом (рис. 1.12, б). Это вызвано тем, что в различных частях линзы фокусное расстояние немного меняется. Все упоминавшиеся ранее аберрации монохроматичны (т.е. они не зависят от преломления линзой волн различной длины). В то же время, пока- затель преломления прозрачной среды зависит от длины волны (рис. 1.12, в); из уравнения тонкой линзы (1.6) следует, что фокусное расстояние также за- висит от длины волны. Таким образом, возникает явление хроматической аберрации: преломленные лучи разной длины волны пересекают оптическую ось в разных точках (продольная хроматическая аберрация) и образуют раз- ные пятна рассеяния на одной и той же плоскости изображения (поперечная хроматическая аберрация). Аберрации можно свести к минимуму, сочетая несколько простых линз с хо- рошо подобранными формой и показателями преломления, разделенных соот- ветствующими промежутками. Такие составные линзы можно точно так же смоделировать с помощью уравнений толстой линзы. Впрочем, у них есть еще один недостаток, важный в контексте компьютерного зрения: пучок света, исхо- дящий от точек объекта, которые находятся не на оси, частично перекрывается различными диафрагмами (включая отдельные компоненты линзы), находящи- мися внутри линзы для ограничения аберраций (рис. 1.13). Это явление, кото- рое называют виньетированием, приводит к снижению яркости на периферии изображения. Виньетирование может создавать проблемы для программ авто- матического анализа изображения, но оно не настолько важно в фотографии
Глава 1. Камеры 51 Рис. 1.12. Аберрации; а) сферическая аберрация: область серого цвета — параксиальная зона, где лучи, выходящие из точки Р, пересекаются в ее параксиальном изображении Р'. Если поставить плоскость изображения ГГ в точку Р, то изображение Р* точки в этой плоскости будет выглядеть как пятно рассеяния диаметром d'. Фокальная плоскость, которая дает пятно наименьшего рас- сеяния, обозначена пунктирной линией; 6) искажение. Слева направо: номинальное изображение прямо-параллельного квадрата, подушкообразное искажение и бочкообразное искажение; в) хро- матическая аберрация: показатель преломления прозрачной среды зависит от длины волны (или цвета) падающих лучей. Здесь белый свет, проходя через призму, распадается на спектр цветов. Рисунок из руководства US NAVY MANUAL OF BASIC OPTICS AND OPTICAL INSTRUMENTS, подготовленного Комитетом no управлению военно-морским персоналом США, перепечатан- ный корпорацией Dover Publications, (1969)
52 Часть I. Формирование изображений и модели изображений Рис. 1.13. Эффект виньетирования в системе, состоящей из двух линз. Затененная часть пуч- ка никогда не попадет на вторую линзу. Дополнительные диафрагмы и промежутки еще больше усиливают виньетирование благодаря замечательной способности человеческого глаза сглаживать гради- ент яркости. Пожалуй, если уж мы заговорили о человеческом глазе, стоит рассмотреть его подробнее. 1.3. ЧЕЛОВЕЧЕСКИЙ ГЛАЗ Ниже предлагается краткий обзор анатомического строения человеческого глаза (по большей части он основан на представлении Ванделла [Wandell, 1995]). На рис. 1.14 (слева) изображено глазное яблоко в разрезе по его вер- тикальной плоскости симметрии и показаны главные части глаза: радужная оболочка и зрачок, контролирующие количество света, который проникает в глазное яблоко; роговица и хрусталик, на которых преломляется свет для создания изображения на сетчатке; и, наконец, собственно сетчатка, где образуется изображение. Несмотря на свою шарообразную форму, человеческое глазное яблоко по функциональным возможностям напоминает камеру с полем зрения 160° по ши- рине и 135° по высоте. Как и любая другая оптическая система, глаз подвержен различным видам геометрических и хроматических аберраций. Было предло- жено несколько моделей глаза, которые описываются законами геометрической оптики первого порядка. На рис. 1.14 (справа) показана, например, схемати- ческая модель глаза по Гельмольцу. Здесь имеется только три преломляю- щих поверхности с бесконечно тонкой роговицей и однородным хрусталиком. На рис. 1.14 изображен глаз, сфокусированный на бесконечности (несфокуси- рованный взгляд). Разумеется, данная модель позволяет лишь приближенно описать реальные оптические характеристики глаза Обратимся еще раз к составляющим частям глаза: роговица — это прозрач- ное, сильно изогнутое, преломляющее свет окно, через которое свет попадает в глаз до того, как он частично перекрывается цветной и непрозрачной поверх- ностью радужной оболочки. Зрачок — это отверстие в центре радужной обо-
Глава 1. Камеры 53 Рис. 1.14. Слева: основные части человеческого глаза. Перепечатано с разрешения American Society for Photogrammetry and Remote Sensing из. A.L. Nowicki, "Stereoscopy". MANUAL OF PHOTOGRAMMETRY, edited by M.M. Thompson, R.C. Eller, W.A. Radlinski, and J.L. Speert, third edition, pp. 515-536. Bethesda: American Society of Photogrammetry, (1966). Справа: схема глаза по Гельмольцу, модифицированная Лаурансом (согласно (Driscoll and Vaughan, 1978]). Расстояние от полюса роговицы до передней главной плоскости — 1,96 мм, а радиусы роговицы, передней и задней поверхностей линз — 8 мм, 10 мм и 6 мм, соответственно ломки, диаметр которого меняется от 1 до 8 мм в зависимости от освещения. При слабом освещении зрачок расширяется, чтобы увеличить энергию, кото- рая попадает на сетчатку, при нормальном освещении зрачок сужается, чтобы противостоять сферическим аберрациям в глазном яблоке и получить более четкое изображение. Преломляющая сила (аналог фокусного расстояния) глаза по большей части зависит от преломления на границе раздела воздух/роговица и хорошо регулируется изменением формы хрусталика, который аккомодирует- ся для того, чтобы удерживать объект строго в фокусе. У здорового взрослого человека она меняется от 60 (неаккомодированный глаз) до 68 диоптрий (1 ди- оптрия = 1 м-1), что соответствует изменению фокусного расстояния в пределах 15-17 мм. Сама сетчатка — это тонкая, однослойная мембрана, состоящая из двух видов фоторецепторов — палочек и колбочек, — которые реагируют на свет с длиной волны 330-730 нм (от фиолетового до красного). Существует три вида колбочек с различной спектральной чувствительностью, и это играет ключевую роль при восприятии цвета. В человеческом глазе приблизительно 100 млн палочек и 5 млн колбочек. Их распределение по поверхности сетчатки меняется: желтое пятно — это область в центре сетчатки, где концентрация колбочек особенно высока, и изображение попадает точно в фокус, если глаз фокусирует внимание на объекте (рис. 1.14). Самая высокая концентрация кол- бочек в ямке — углублении в центре желтого пятна, где она достигает значе- ния 1,6 х 105/мм2, когда расстояние между центрами двух соседних колбочек составляет всего полминуты угла зрения (рис. 1.15). И наоборот, в центре ямки нет палочек, зато их плотность растет по направлению к периферии поля зре- ния. Еще на сетчатке есть слепое пятно, в котором узел аксона соединяется с сетчаткой и образует оптический нерв.
54 Часть I. Формирование изображений и модели изображений Рис. 1.15. Распределение палочек и колбочек по сетчатке. Перепечатано из В. Wandell, FOUN- DATIONS OF VISION, Sinauer Associates, Inc., 1995 Палочки представляют собой чрезвычайно чувствительные фоторецепторы; они способны отреагировать на один фотон, но, несмотря на их большое число, палочки дают относительно мало информации о пространственном расположе- нии объекта, поскольку многие из них связаны с одним и тем же нейроном на сетчатке. Колбочки, наоборот, становятся активными при более высоком уровне освещенности, но сигнал, который подает каждая колбочка в ямке, расшиф- ровывается несколькими нейронами, что сказывается на высоком разрешении в этой области. В общем случае, область сетчатки, которая влияет на реакцию нейронов, обычно называют чувствительным полем сетчатки, хотя теперь этим словом обозначают также реальную электрическую реакцию нейронов на оптические изображения. Конечно, о человеческом глазе можно (и нужно) сказать намного больше — например, о том, как оба наши глаза согласуют свою работу и фиксируются на цели, взаимодействуют друг с другом при стереозрении и т.п. Кроме того, в этой телекамере человеческого мозга зрение только начинается, что ставит захватывающую (и по большей части еще не решенную) задачу выяснения роли различных участков нашего мозга в зрении человека. Некоторые аспекты этой проблемы обсуждаются в следующих главах. 1.4. ВОСПРИЯТИЕ Отличие камер (в сегодняшнем смысле этого слова) от переносной камеры- обскуры XVII века заключается в способности записывать изображения, кото- рые формируются на ее задней стенке. Хотя еще в Средние века было известно, что некоторые соли серебра быстро темнеют под действием солнечного света, только в 1816 году Нипс (Niepce) получил первые настоящие фотографии, под- вергнув бумагу, обработанную хлоридом серебра, действию лучей света, по-
Глава 1. Камеры 55 Рис. 1.16. Наиболее ранняя из сохранившихся фотографий, la table servie, полученная Ничипором Нипсом (Nicephore Niepce) в 1822 году. Коллекция Харлинжд-Виолетт (Harlinge-Viollet) падающих на плоскость изображения камеры-обскуры, а затем зафиксировав изображения с помощью азотной кислоты. Эти первые изображения были нега- тивами, и Нипс вскоре перешел на другие чувствительные к свету химикаты, чтобы получить позитивное изображение. Самые первые фотографии были уте- ряны, а самая первая из сохранившихся — это la table servie (накрытый стол), воспроизведенная на рис. 1.16. Нипс изобрел фотографию, а Дагерре (Daguerre) можно считать ее первым популяризатором. С 1826 года эти ученые стали работать вместе. Дагерре про- должил разрабатывать свой собственный фотографический процесс, пользуясь парами ртути для закрепления и проявления скрытого изображения, образовав- шегося на меди, покрытой йодидом серебра. Такие дагерротипы пользовались большим успехом, когда Араго (Arago) представил процесс Дагерре во Фран- цузской Академии Наук в 1839 году, через три года после смерти Нипса. Дру- гими вехами в длинной истории фотографии были: введение мокроколлоидного процесса создания негатива/позитива Легре (Legray) и Арчером (Archer) в 1850 году (фотографию требовалось создавать сразу же, но при этом оставались от- личные негативы); изобретение желатинового процесса Маддоксом (Maddox) в 1870 году (после этого процесс создания фотографии уже не требовалось вы- полнять немедленно после съемки); введение в 1889 году фотопленки (которая заменила стеклянные пластинки в большинстве современных аппаратов) Ист- маном (Eastman); изобретение кино братьями Люмьер (Lumiere) в 1895 году и цветной фотографии в 1908 году. Изобретение телевидения в 1920-х Беардом (Baird), Фансвортом (Farnsworth) и Зворыкиным (Zworykin) было, конечно, главным толчком к развитию элек- тронных сенсоров. Видикон — это общий тип телевизионной электронно- лучевой трубки. Это стеклянная колба с электронной пушкой на одном конце и плоским экраном на другом. Задняя сторона экрана покрыта тонким слоем
56 Часть I. Формирование изображений и модели изображений фоторезистора, на который наложена прозрачная пленка из положительно заря- женного металла. Это двойное покрытие представляет собой мишень. Трубку окружают фокусирующие и отклоняющие катушки, которые используются для многократного прохождения электронного пучка, выходящего из пушки, по ми- шени. Этот пучок оставляет слой электронов на мишени, компенсируя, таким образом, ее положительный заряд. Когда свет попадает на маленькую область экрана, он выбивает электроны из этого места, тем самым заряд мишени умень- шается. Проходя по этой области, электронный пучок восполняет утраченные электроны, и возникает ток, пропорциональный интенсивности падающего све- та. Затем схема видикона преобразует эти изменения силы тока в видеосигнал. 1.4.1. ПЗС-камеры Рассмотрим теперь, чем отличаются камеры на приборах с зарядовой свя- зью (ПЗС-камеры), которые были предложены в 1970 году и заменили ви- диконы в большинстве современных устройств, от портативных видеокамер, рассчитанных на широкого потребителя, до специализированных камер, пред- назначенных для применения в микроскопии или астрономии. В ПЗС-датчике используется прямоугольная решетка из узлов, где собираются электроны, по- крытая тонкой кремниевой пластинкой, для регистрации количества световой энергии, попадающей на каждый из них (рис. 1.17). Каждый узел образуется путем наращивания слоя диоксида кремния на пластинке и последующим оса- ждением на диоксид проводящей затворной структуры. Когда фотон падает на кремниевую пластинку, рождается пара электрон-дырка (имеет место фотопе- реход), и электроны попадают в потенциальную яму, полученную вследствие приложения положительного электрического потенциала к соответствующему затвору. Электроны, появляющиеся на каждом узле, собираются за фиксиро- ванный период времени Т. На данном этапе заряды, хранимые на отдельных узлах, перемещаются по- средством зарядовой связи: для перемещения зарядовых пакетов от одного узла изменяются потенциалы затворов, при этом пакеты распространяются по отдельности. Изображение считывается с прибора с зарядовой связью построч- но, каждая строка передается параллельно к регистру последовательного вы- вода, содержащему по одному элементу в каждом столбце. Между считыва- нием двух рядов регистр последовательно передает свои заряды на выходной усилитель, который генерирует сигнал, пропорциональный полученному заря- ду. Этот процесс продолжается, пока не будет считано все изображение. Он может повторяться до 30 раз за секунду (телевидение) или с намного мень- шей скоростью, предоставляя большой промежуток времени (секунды, минуты и даже часы) для сбора электронов в устройствах, работающих при низком уровне освещенности (например, астрономия). Следует отметить, что цифровая выходящая информация в большинстве ПЗС-камер преобразуется в аналого- вый видеосигнал, а лишь потом попадает в механизм захвата кадра, который создает окончательное цифровое изображение.
Глава 1. Камеры 57 Рис. 1.17. Устройство ПЗС В цветных ПЗС-камерах потребительского уровня, по сути, используются те же микросхемы, что и в черно-белых, за исключением того, что задейство- ванные строки или столбцы датчиков чувствительны к красному, зеленому или синему свету (это часто достигается с помощью фильтра, который пропускает только нужный цвет). Возможны и другие модели фильтров, например, моза- ика из блоков 2x2, состоящих из двух зеленых, одного красного и одного синего рецепторов (модель Байера). Пространственное разрешение камер на одном ПЗС, конечно, ограничено, и в высококачественных камерах применя- ется расщепитель пучка, чтобы распределять изображение по трем различным ПЗС через цветные фильтры. Затем отдельные цветные каналы оцифровыва- ются также раздельно (RGB-сигнал) или объединяются в сложный цветной видеосигнал (сигнал NTSC в США, SECAM или PAL в Европе и Японии) или в составной видеоформат, где информация о цвете и яркости разделяется. 1.4.2. Модели датчиков В этом разделе описаны черно-белые ПЗС-камеры, поскольку цветные каме- ры можно считать точно такими же, если рассмотреть каждый цветовой канал в отдельности и непосредственно учесть связанную с этим реакцию фильтров. Количество электронов I, зарегистрированных в клетке, расположенной в строке г и в столбце с схемы ПЗС, можно представить как I(r,c) = T f [ E(p,A)R(p)g(A)dpdA, JpeS(r, с)
58 Часть I. Формирование изображений и модели изображений где Т — время сбора электронов, а интеграл вычисляется по всей области клет- ки S(r, с) и диапазону длин волн, на которые ПЗС дает ненулевую реакцию. В этом интеграле Е — сила света на единицу площади и единицу длины волны (т.е. освещенность, формальное определение см. в главе 4) в точке р, R — про- странственная реакция узла, a q — квантовый выход устройства (т.е. количе- ство рождающихся электронов на единицу энергии падающего света). В общем случае, и Е, и q зависят от длины волны А, а Е и R зависят от расположения точки р в области S(r, с). Усилитель на выходе ПЗС преобразует заряд, собранный на каждом узле, в напряжение, которое можно измерить. В большинстве камер это напряже- ние затем с помощью электроники камеры преобразуется в низкочастотный1 видеосигнал, пропорциональный I. Аналоговое изображение можно еще раз преобразовать в цифровое посредством механизма захвата кадра, который про- странственно сверяет видеосигнал и квантует значение яркости в каждой точке изображения, или пикселе (от picture element — элемент изображения). Существует несколько физических явлений, для учета которых следует кор- ректировать идеальную модель камеры, приведенную выше: если источник све- та, освещающий узел сбора, настолько ярок, что заряд, накапливаемый на узле, распространяется и на соседние узлы, изображение размывается. Этого можно избежать, контролируя освещение, но остальные факторы, такие как дефекты изготовления, тепловые и квантовые эффекты, квантовый шум — неотъемлемая часть процесса создания изображения. Как будет показано дальше, эти факторы учитываются в соответствующих простых статистических моделях. Эффекты квантовой физики вносят внутреннюю неопределенность в процесс фотопере- хода на каждом узле (дробовый шум). Более точно, количество электронов, возникающих в результате этого процесса, можно обозначить случайным це- лым числом Nj(r,c), которое подчиняется закону распределения Пуассона, со средним значением /3(г,с)1(г,с), где /3(г, с) — число от 0 до 1, которое по- казывает изменение пространственной реакции и квантовый выход по всему изображению, а также подсчитывает плохие пиксели. Электроны, вылетающие из кремния в результате теплового движения, добавляются к заряду каждо- го узла сбора. Их вклад называют теневым током, и его можно обозначить случайным целым числом Ndc(t,c), среднее значение рвс(г, с) которого рас- тет с температурой. Эффект теневого тока можно контролировать охлаждением камеры. Дополнительные электроны исходят из электроники ПЗС (ток смеще- ния), и их число также можно обозначить случайной, подчиняющейся распреде- лению Пуассона, величиной Ад (г, с) со средним значением рв(г,с). Усилитель на выходе добавляет шум считывания, его можно смоделировать действитель- ным числом R (которое подчиняется распределению Гаусса) со средним значе- нием рп и среднеквадратическим отклонением сгц. Есть и другие источники неопределенности (например, эффективность пере- носа заряда), но ими часто можно пренебречь. Наконец, дискретизация анало- 'Грубо говоря, усредненный по времени или пространству; подробнее от этом — далее.
Глава 1. Камеры 59 гового напряжения механизмом захвата кадра порождает как геометрические эффекты (дрожание строк), которые можно устранить с помощью калибровки, так и шум квантования, который можно обозначить случайным числом Q(r,c), среднее значение которого равно нулю, с однородным распределением в интер- вале [— ^<5, |5] и дисперсией j4><52, где <5 — шаг квантования. Это дает такую модель цифрового сигнала D(r, с): D(r,c) — *y(Ni(r,c) + Ndc(t,c) + Ав(г,с) 4- R(r,c)) 4- Q(r,c). В приведенном выше уравнении 7 — это общий коэффициент усиления уси- лителя и камеры. Статистические свойства данной модели можно оценить с помощью радиометрической калибровки камеры: например, теневой ток можно оценить, измеряя число пробных изображений в темноте (I = 0). 1.5. ПРИМЕЧАНИЯ Отличное введение в геометрическую оптику — классический учебник [Hecht, 1987], где подробно рассматривается параксиальная оптика, а также различные аберрации, о которых вкратце упоминалось в этой главе (см. так- же [Driscoll and Vaughan, 1978]). Виньетирование проанализировано в [Horn, 1986] и [Russ, 1995]. Работа [Wandell, 1995] дает прекрасное описание процес- са образования изображения в зрительной системе человека. Схематическая модель глаза по Гельмольцу подробно описана в [Driscoll and Vaughan, 1978]. ПЗС-устройства представлены в [Boyle and Smith, 1970] и [Amelio, et al., 1970]. Научное применение ПЗС-камер в микроскопии и астрономии обсужда- ется в [Aiken, et al., 1989], [Janesick, et al., 1987], [Snyder, et al., 1993] и [Tyson, 1990]. Статистическая модель датчика, представленная в этой главе, описана согласно работе [Snyder, et al., 1993] с добавлением понятия шума квантования, взятого из [Healey and Kondepudy, 1994]. В этих двух статьях рассказывается о применении моделирования датчиков для восстановления изображений в аст- рономии и радиометрической калибровки камер в компьютерном зрении. Основные уравнения, выведенные при изложении данной главы, представ- лены в табл. 1.1. Задачи 1.1. Постройте уравнение перспективной проекции для мнимого изображе- ния, расположенного на расстоянии /' перед отверстием. 1.2. Докажите геометрически, что проекции двух параллельных прямых, ле- жащих в плоскости П, сходятся на горизонтальной прямой Н, образован- ной пересечением плоскости изображения с плоскостью, параллельной к П и проходящей через отверстие. 1.3. Докажите то же самое алгебраически, воспользовавшись уравнением перспективной проекции (1.1). Для простоты можно принять, что плос- кость П перпендикулярна к плоскости изображения.
60 Часть I. Формирование изображений и модели изображений ТАБЛИЦА 1.1. Справочная таблица: модели камер Перспективная проекция < I'C n |H x,у: координаты реального объекта (z < 0) х',у': координаты изображения f: расстояние от отверстия до чувствительной поверхности Слабо- перспективная проекция ( х' — —тх 1 у' = -ту 1 f' 1 ТП = 1 Zo х, у: координаты реального объекта х',у': координаты изображения расстояние от отверстия до чувствительной поверхности zq: глубина точки отсчета (< 0) т: коэффициент увеличения (> 0) Ортографическая проекция x' — X < y1 = У х, у: координаты реального объекта х',^: координаты изображения Закон Снелла Ш smoq = sina2 711,712: показатели преломления ai,a2: углы между лучом и нормалью Параксиальное преломление 711 712 _ n2 - П1 С?1 tf2 R Til, т12: показатели преломления <31,с?2- расстояние от точки до границы раздела R: радиус кривизны границы раздела Уравнение тонкой линзы 1 1 _ 1 z' z f z: глубина точки объекта (< 0) z': глубина точки изображения (> 0) /: фокусное расстояние 1.4. Воспользуйтесь законом Снелла и покажите, что лучи, которые проходят через оптический центр тонкой линзы, не преломляются. Выведите урав- нение тонкой линзы. Подсказка: рассмотрите луч го, проходящий через точку Р, и постройте лучи ri и г2, которые получаются при преломлении луча го на правой грани линзы и преломлении луча ri на ее левой грани.
Глава 1. Камеры 61 1.5. 1.6. 1.7. Рассмотрите камеру с тонкой линзой, плоскость изображения которой находится на расстоянии z', а плоскость точек кадра в фокусе — на рас- стоянии z. Представьте, что плоскость изображения перемещается в точ- ку z1. Покажите, что диаметр соответствующего пятна рассеяния равен I t \z — Z d'------ z где d — диаметр линзы. Воспользуйтесь этим результатом, чтобы по- казать, что глубина поля (т.е. расстояния между дальней и ближней плоскостями, на которых диаметр пятна рассеяния не превышает неко- торого порогового значения е) задается как D = 2ef z(z + /) d г2 >2 2 2’ f d -£ Z и убедитесь, что для фиксированного фокусного расстояния глубина по- ля возрастает с уменьшением диаметра линзы, т.е. с увеличением диа- фрагменного числа. Подсказка: решайте задачу для глубины z точки, изображение которой находится в фокусе на плоскости изображения в точке zf, рассматривая случаи, когда z' > z't и z' < z'. Выполните геометрическое построение изображения Р' точки Р, если заданы два фокуса F и F' тонкой линзы. Выведите уравнение толстой линзы для случая, когда у обеих сфериче- ских поверхностей линзы одинаковые радиусы кривизны.

2 Гэометрические модели камер О фундаментальных законах перспективной проекции в системе координат, центр которой соотнесен с камерой, рассказывалось в главе 1. В этой же главе говорилось об аналитическом аппарате, необходимом для установления коли- чественных связей между точками изображений, положением и ориентацией геометрических фигур, которые задаются во внешней системе координат. Дан- ная глава начинается с краткого изложения элементарных понятий аналити- ческой евклидовой геометрии, включая понятия однородных координат и мат- ричное представление геометрических преобразований. Затем будут рассмотре- ны различные физические параметры (так называемые внутренние и внешние параметры), которые связывают реальную систему координат и систему ко- ординат, соотнесенную с камерой. С помощью этих систем координат будет выведен общий вид уравнения перспективной проекции. В заключение главы представлены аффинные модели процесса формирования изображения (вклю- чая ортогональную и слабоперспективную модели, кратко описанные в главе 1), которые являются приближенным описанием перспективной точечной проекции для удаленных объектов.
64 Часть I. Формирование изображений и модели изображений Рис. 2.1. Правосторонняя система координат и координаты х, у и z точки Р 2.1. ЭЛЕМЕНТЫ АНАЛИТИЧЕСКОЙ ЕВКЛИДОВОЙ ГЕОМЕТРИИ Предполагается, что читатели немного знакомы с элементарной евклидовой геометрией и линейной алгеброй. В этом разделе речь пойдет о таких полез- ных аналитических понятиях, как системы координат, однородные координаты, матрицы вращения и т.п. 2.1.1. Системы координат и однородные координаты В главе 1 трехмерная система координат уже использовалась. В этой главе такие системы представлены немного формальнее. Предполагается использова- ние определенной системы единиц измерения, скажем, метрической, так что единица длины точно определена. Выбор точки О в физическом трехмерном пространстве Е3 и трех взаимно перпендикулярных единичных векторов г, j и к задает ортонормированную систему координат (F) как четырехвектор (О, i,j, к). Точка О — это начало координат системы (F), а г, j и к — ее базисные векторы. Мы ограничим- ся изучением правосторонних систем координат, т.е. таких, где векторы i, j и к можно изобразить пальцами правой руки, когда большой палец направлен вверх, указательный — вперед, а средний — влево (см. рис. 2.1)1. Координаты х, у и z точки Р в этой системе координат задаются как дли- ны (с соответствующим знаком) перпендикулярных проекций вектора OI^ на векторы г, J, и к (рис. 2.1, справа), где ’Это традиционный способ определения правосторонней системы координат. Один из авто- ров, левша от природы, всегда считал его немного неудобным и предпочитает определять подобные системы координат так: если смотреть вдоль оси к в направлении плоскости (г, j), то вектор г при повороте против часовой стрелки на 90° накладывается на вектор j (рис. 2.1). Левосторонние системы координат — это поворот по часовой стрелке. Такое определение одинаково удобно как для левшей, так и для правшей.
Глава 2. Геометрические модели камер 65 х — ОР • г 4 у = ОР • j <=> О? — xi + yj 4- zk. z = OP-k Вектор-столбец 6 К3 называется координатным вектором точки Р в системе (F). Аналогично мож- но задать координатный вектор, соотнесенный с любым вектором г>, использо- вав длины его проекций на базисные векторы системы (F). Разумеется, эти координаты не будут зависеть от выбора начала координат О. Рассмотрим те- перь плоскость П, произвольную точку А на плоскости П и единичный век- тор и, перпендикулярный к этой плоскости. Точки, лежащие на плоскости П, характеризуются следующим образом: АР • п = 0. В системе координат (F), где координаты точки Р — х, у и г, а координаты вектора п — а, b и с, это можно записать как О? • 71 — оа • п = 0 или ах 4- by 4- cz — d = 0, (2.1) где d = оА • п не зависит от выбора точки А на плоскости П и представля- ет собой расстояние (с соответствующим знаком) от начала координат О до плоскости П (рис. 2.2). Иногда для представления точек, векторов и плоскостей удобно пользо- ваться однородными координатами. Формально их введение будет обоснова- но немного позже, после ввода понятия аффинной и проекционной геометрии в главах 12 и 13. Уравнение (2.1) можно переписать в виде или, точнее, как П • Р = 0, ( а > b с \~dj (2-2)
66 Часть I. Формирование изображений и модели изображений Рис. 2.2. Геометрическое определение уравнения плоскости. Расстояние d от начала координат до плоскости измеряется расстоянием до точки Н, в которой вектор, перпендикулярный к плоскости П и проходящий через начало координат, пересекается с плоскостью Вектор Р называют однородным координатным вектором точки Р в системе координат (F), он получается простым добавлением единичной четвертой коор- динаты к обычному координатному вектору Р. Подобным образом, вектор П — это однородный координатный вектор плоскости П в системе координат (F), а уравнение (2.2) называется уравнением плоскости П в этой системе координат. Отметим, что вектор П определен только с точностью до масштаба, поскольку умножение этого вектора на любое ненулевое число не влияет на решения урав- нения (2.2). В дальнейшем однородные координаты всегда будут определены только с точностью до масштаба, независимо от того, описывают ли они точки или плоскости (для точек это может показаться немного нелогичным, но обос- нование такого подхода дано в главе 13). Для возврата к обычным неоднород- ным координатам точек можно просто разделить все координаты на четвертую. Основное внимание в этой главе обращено на трехмерную евклидову геомет- рию, однако описанные принципы применимы также в планиметрии: система координат (F) задается на плоскости через ее начало координат о и правосто- ронний ортонормированный базис (г, j); координаты точки р в этой системе — x = op-iny = opj, можно также определить и однородные координаты; в частности, уравнение прямой 5 на плоскости имеет такой вид: (а \ ( х b I и р = I у -dj \1 Здесь через а, b и с обозначены, соответственно, координаты единичной норма- ли к 6 в системе (F) и расстояние (с соответствующим знаком) от о до 6. Вернемся к трехмерной геометрии и покажем, что однородными координа- тами можно пользоваться для описания более сложных геометрических фигур, чем точки и плоскости. Рассмотрим в качестве примера сферу S' радиуса R, центр которой совпадает с началом координат. Необходимым и достаточным
Глава 2. Геометрические модели камер 67 условием того, что точка Р с координатами х, у и z принадлежит S, конечно, является х2 + у2 + г2 = R\ что равнозначно следующему условию2: /1 0 0 0 \ (х\ 0 10 0 У x,y,z, 1) = 0. 0 0 1 0 Z ^0 0 0 -R2/ \1J В более общем случае, поверхность второго порядка — это геометрическое место точек Р, координаты которых удовлетворяют следующему уравнению: 2 2 2 «200^ + «иоЗД 4- aozoj/ 4- aonj/z 4- aoozz 4- аю^хг 4- fliooi 4- OoioJ/ 4- aooi^ 4- aooo = 0 Можно непосредственно убедиться в том, что это равнозначно такому условию: ( 0,200 i „ 2a110 |«ioi |«100^ 5 «110 <1020 9 «Oil |<1010 PTQP = 0, где Q = 2 J 2 2 j (2.3) 2аЮ1 2 <1011 «002 2 <1001 \|<iioo |«010 |<tooi «ООО / В этом уравнении Р — однородный координатный вектор точки Р. Отметим, что Q — это симметричная матрица 4x4, определенная, как и параметры только с точностью до масштаба. 2.1.2. Переход от одной системы координат к другой и строгие преобразования Если одновременно рассматривается несколько систем координат, удобно (как это сделано в [Craig, 1989]) координатный вектор точки Р (соответственно, вектор Fv) в системе (F) обозначать через FP (соответственно, Fv); т.е. Верхние и нижние индексы перед точками, векторами и матрицами в систе- ме обозначений Крейга могут вначале показаться неудобными, но легкость их 2Любознательный читатель может спросить о прямых в пространстве Е3. Разумеется, пря- мую можно задать как пересечение двух плоскостей. В более общем случае, прямые в Е3 можно задавать с помощью координат Плюкера (Plucker coordinates), см. раздел упражнений.
68 Часть I. Формирование изображений и модели изображений Рис. 2.3. Переход от одной системы координат к другой: чистая трансляция применения станет очевидной по мере дальнейшего изложения. Рассмотрим две системы координат: (А) = (OA,iA, jA, кА) и (В) = (Ов, iB, jB, кв}. Далее в этом разделе будет показано, как ВР можно выразить через АР. Вначале предположим, что базисные векторы обеих координатных систем параллельны друг другу (т.е. iA = iB, jA = jB и kA = кв), но начала координат ОА и Ов находятся на некотором расстоянии друг от друга (рис. 2.3). В таком случае говорят, что две системы координат можно совместить чи- стой трансляцией, а поскольку ОВР = ОВОА + ОАР, тогда ВР = ар+воа. Если начала координат двух систем совпадают (т.е. ОА = Ов = О), то две си- стемы координат можно совместить чистым вращением (рис. 2.4). Определим матрицу вращения ВИ как массив чисел 3x3: (гА гв За гв ‘Зв 3 А ' 3 в г а ’ кв За кв к а 1в\ кл•jB I • кл-кв/ Отметим, что первый столбец ВИ образуют координаты вектора iA в базисе (*в,5в,^в). Подобным образом, третья строка этой матрицы — координаты вектора кв в базисе (iA,jА->кА) и т.д. В общем случае, матрицу можно записать в более компактном виде, использовав комбинацию трех векторов- столбцов или трех векторов-строк:
Глава 2. Геометрические модели камер 69 Рис. 2.4. Переход от одной системы координат к другой: чистое вращение Отсюда следует, что ВЯ. = дЯ^. Как отмечалось ранее, все эти верхние и нижние индексы вначале могут по- казаться чем-то непонятным. Чтобы все стало ясно, будет нелишним напомнить, что при переходе от одних координат к другим нижние индексы соотносятся с описываемыми объектами, тогда как верхние индексы соотносятся с система- ми координат, в которых описываются эти объекты. Например, АР обозначает координатный вектор точки Р в системе координат (A), BjA — координаты вектора jA в системе координат (В), a A1Z — это матрица вращения, которая описывает систему координат (А) в системе координат (В). Приведем пример чистого вращения. Пусть кд = кв — к, а через 0 обозна- чим такой угол, чтобы вектор iB можно было получить поворотом вектора гд по часовой стрелке на угол 0 вокруг оси к (рис. 2.5). В этом случае угол между векторами jA и jв также равен 0, тогда / COS0 sine 0 — sm0 cose 0 \ 0 0 1 (2.4) Подобные формулы можно записать для двух систем координат, которые полу- чаются одна из другой поворотом вокруг оси iA или jA (см. раздел упражне-
70 Часть I. Формирование изображений и модели изображений Рис. 2.5. Две системы координат, которые совмещаются поворотом на угол 0 вокруг их общей оси к. Как показано на правом рисунке, iA = ciB — sjD и jA = siB + cjB, где с = cosO и s = sin 0 ний). В общем случае любую матрицу вращения можно записать в виде произ- ведения трех элементарных поворотов вокруг осей i, j и к некоторой системы координат. Вернемся к описанию перехода от одних координат к другим, на этот раз при произвольной матрице вращения. Записав О? = (г д jA к а) в системе координат (В) получим вр = %RAP, поскольку очевидно, что матрица вращения равна единичной матрице. От- метим, что нижний индекс совпадает со следующим верхним индексом. Это свойство сохраняется и для более общих переходов от одних координат к дру- гим, и, после некоторой практики, его можно использовать для восстановления соответствующих формул без вывода. Матрица вращения (см. раздел упражнений) характеризуется следующими свойствами: 1) для ее обращения достаточно ее транспонировать и 2) ее детер- минант равен 1. По определению, столбцы матрицы вращения образуют пра- востороннюю ортонормированную систему координат. Из перечисленных выше свойств матрицы вращения следует, что ее строки также образуют систему координат с аналогичными свойствами. Следует отметить, что набор матриц вращения вместе с правилом умноже- ния матриц формирует группу, т.е. а) произведение двух матриц вращения так-
Глава 2. Геометрические модели камер 71 Рис. 2.6. Переход от одних координат к другим: общее строгое преобразование же будет матрицей вращения (это свойство очевидно и легко доказывается ана- литически); б) произведение матриц подчиняется ассоциативному закону — это значит, что для любых матриц вращения 71, 71' и 71" справедливо соотношение (TVR^TV1 = TZ^TZ'TZ’')-, в) существует единичный элемент, единичная матрица Id размером 3x3, которая действительно является матрицей вращения, и для лю- бой матрицы вращения 7Z справедливо: TZId — Id 7^ = 71; г) у каждой матрицы вращения 72. есть обратная матрица 71“1 = 7ZT такая, что 7Z7Z~A = 7Z-17Z = Id. Эта группа, однако, некоммутативна (т.е. для двух данных матриц вращения 71 и 71' два произведения 7171' и 7£'7£ в общем случае не равны). Если и начала координат, и базисные векторы двух систем различны, систе- мы можно совместить с помощью общих строгих преобразований (рис. 2.6), т.е. ВР = %КаР+вОа, (2-5) где д7£ и ВОА определены так же, как и ранее. Таким образом, переходы от одних координат к другим для однородных координатных векторов плоскостей и симметричных матриц, связанных с поверхностями второго порядка, описы- ваются сходными формулами (см. раздел упражнений). Однородные координаты можно использовать, чтобы переписать уравне- ние (2.5) в виде произведения матриц. Отметим вначале, что матрицы можно умножать блоками — т.е. если Л = Л11 Л12 Л21 Л22 и 23 = 23ц В12\ В?! #22 / (2-6)
72 Часть I. Формирование изображений и модели изображений Рис. 2.7. Строгое преобразование переводит точку Р в точку Р" с помощью поворота TZ и транс- ляции t, которая переводит точку Р” в Р'. В примере, показанном на рисунке, 1Z — это поворот на угол 0 вокруг оси к системы координат (F) где количество столбцов в подматрицах Лц и Л21 (соответственно, Л12 и Л22) равно количеству строк в матрицах 0ц и 012 (соответственно, 021 и 02г). то Л110Ц + Л12021 Л11012 + Л12022 Л210Ц + Л 22 021 Л21012 + Л22022 В частности, уравнение (2.6) позволяет переписать переход от одних координат к другим, заданный уравнением (2.5), в таком виде: и 0 = (0,0,0)г. Другими словами, однородные координаты позволяют записать общее правило перехода от одной системы координат к другой как произведение матрицы 4x4 и 4-вектора. Легко показать, что набор строгих преобразований, заданных уравнением (2.7), плюс оператор умножения матриц также формиру- ют группу. Строгие преобразования выражают одну систему координат через другую. В заданной системе координат (F) их можно также рассматривать как отобра- жения точек — т.е. точка Р отображается в точку Р' так, что Fp' = 'R,FP + t<‘==> I Fpt (2-8) где Tl — матрица вращения, at — элемент пространства R3 (рис. 2.7). Неслож- но показать, что набор строгих преобразований, который рассматривается как отображение пространства Е3 в само себя, плюс закон композиции опять же формирует группу. При строгих преобразованиях сохраняется расстояние
Глава 2. Геометрические модели камер 73 между двумя точками и угол между двумя векторами. В то же время, мат- рица 4x4, соотнесенная со строгими преобразованиями, зависит от выбора системы координат (F). Рассмотрим, например, поворот на угол в вокруг оси к системы коорди- нат (F). Как показано в разделе упражнений, это отображение можно предста- вить следующим образом: /cos в ~ sin в О FPf = PFР, где 1Z = I sin# cos# О \ 0 0 1 В частности, если (F') — система координат, которая получается после при- менения этого поворота к системе (F), то согласно уравнению (2.4) F Р = pFfP иР — plZ .В более общем случае, матрица, представляющая переход от одной системы координат к другой, — это матрица, обратная к отображению первой системы во вторую. Что будет, если заменить 1Z произвольной невырожденной матрицей А раз- мера 3x3? Уравнение (2.8) по-прежнему представляет отображение точек (или переход от одних координат к другим), но в этом случае длины и углы могут больше не сохраняться (или, эквивалентно, оси новой системы координат не обязательно будут ортогональны и иметь ту же единицу длины). Таким обра- зом, матрица 4x4 представляет аффинное преобразование. Если матрица 7 — произвольная несингулярная матрица 4x4, тогда это проекционное преобразование. Аффин- ные и проекционные преобразования также образуют группы (подробнее они рассмотрены в главах 12 и 13). 2.2. ХАРАКТЕРИСТИКИ КАМЕР И ПЕРСПЕКТИВНАЯ ПРОЕКЦИЯ В главе 1 было показано, что координаты х, у и z точки сцены Р, наблю- даемой через камеру-обскуру, связаны с координатами ее изображения хг и у’ перспективным уравнением (1.1). В действительности, это уравнение справед- ливо только в том случае, когда все расстояния измеряются в системе отсчета камеры, а начало координат изображения находится в ее главной точке, где ось симметрии камеры пересекается с ее чувствительной плоскостью. На практике реальная система координат и система координат камеры связаны рядом физи- ческих параметров, таких как фокусное расстояние линзы, размеры пикселей, положение главной точки, положение и ориентация камеры. Данный раздел посвящен описанию названных параметров. Будем разли- чать внутренние параметры, которые связывают систему координат камеры
74 Часть I. Формирование изображений и модели изображений Рис. 2.8. Физическая и нормированная системы координат изображения с идеальной системой координат, введенной в главе 1, и внешние параметры, связывающие систему координат камеры с фиксированной реальной системой координат, а также описывают ее положение и ориентацию в пространстве. В этой главе не учитывается то, что у камер с линзами точка попадает в фо- кус только тогда, когда ее глубина и расстояние от оптического центра камеры до ее плоскости изображения описываются уравнением тонкой линзы (1.6). Подобным образом в уравнении (1.1) не учитываются нелинейные аберрации, присущие реальным линзам. В этой главе мы также будем пренебрегать та- кими аберрациями, но в главе 3 при рассмотрении задачи оценки внутренних и внешних параметров камеры (процесс, известный под названием геометри- ческой калибровки камер) будет сказано о радиальной дисторсии. 2.2.1. Внутренние параметры С камерой можно соотнести нормированную плоскость изображения, па- раллельную ее физической чувствительной области, но расположенную на еди- ничном расстоянии от отверстия. К этой плоскости мы привяжем ее собствен- ную систему координат, начало которой будет находиться в точке С — точке пересечения плоскости с оптической осью (рис. 2.8). Уравнение перспектив- ной проекции (1.1) в этой нормированной системе координат можно записать следующим образом: х < О- <29> V = — ' Z
Глава 2. Геометрические модели камер 75 где р == (й, г>, 1)т — вектор однородных координат проекции р точки Р на нормированную плоскость изображения. Физическая и нормированная чувствительные области камеры в общем слу- чае не совпадают (рис. 2.8): физическая плоскость находится на расстоянии / 1 от отверстия3, а координаты (u, v) точки изображения р обычно выражают- ся в пикселях (а не, скажем, в метрах). Кроме того, пиксели обычно берутся прямоугольными, а не квадратными, так что у камеры появляется два допол- нительных масштабных параметра к и I, таким образом х и = к/-, z v = If-. Z (2.Ю) Скажем немного о единицах измерения: f — это расстояние, которое из- меряется, например, в метрах, а размерность пикселя — | х |, где к и I выражаются в пикселях х м-1. Параметры к, I и f не являются независимыми, их можно заменить множителями а = к/и[3 = 1/, выраженными в единицах измерения пикселей. В общем случае начало системы координат камеры находится в углу С чув- ствительной области (например, для случая, изображенного на рис. 2.8, это левый нижний угол; иногда это левый верхний угол, если координаты изобра- жения — индексы строк и столбцов пикселя), а не в ее центре; центр ПЗС- матрицы обычно не совпадает с главной точкой Со. Таким образом добавляется еще два параметра uq и г?о, которые определяют положение (в единицах из- мерения пикселей) точки Со в системе координат чувствительной области, а система (2.10) заменяется системой х и = а—Ь ио, z < У v = /3—I- w. z (2-П) Наконец, система координат камеры может быть наклонной вследствие некото- рой производственной ошибки, так что угол 0 между двумя осями изображения не будет равен 90° (но, конечно, весьма близок к этому значению). В данном случае легко показать, что уравнение (2.11) преобразуется к виду 3С этого момента будем предполагать, что камера сфокусирована на бесконечности, так что расстояние от отверстия до плоскости изображения равно фокусному расстоянию.
76 Часть I. Формирование изображений и модели изображений и = а---actgfl—Ь uq, z z /3 У t V =------------1- W- sin# z (2.12) Уравнения (2.9) и (2.12) позволяют записать правило перехода от системы коор- динат физического изображения к нормированной системе координат как плос- кое аффинное преобразование, т.е. (и V 1 ctg# /3 sin О О Объединив полученные результаты, приходим к выражению р = -Л1Р, где М = (к О (2.14) Через Р = (х, у, z, 1)т на этот раз обозначен однородный вектор координат точ- ки Р в системе координат камеры. Другими словами, однородные координаты можно использовать для представления отображения перспективной проекции матрицей Л4 размером 3x4. Отметим, что для данных камеры и механизма фиксации кадра физический размер пикселя и наклон постоянны и, в принципе, их можно измерить при изготовлении (конечно, эта информация может оказаться недоступной, если, например, неизвестна скорость оцифровки механизма фиксации кадра). В объ- ективах с переменным фокусным расстоянием меняться может не только фо- кусное расстояние, но и положение центра изображения, если оптическая ось не строго перпендикулярна к плоскости изображения. Изменение фокуса ка- меры также влияет на увеличение, так как при этом меняется расстояние от линзы до чувствительной области, но далее будет предполагаться, что камера сфокусирована на бесконечность. 2.2.2. Внешние параметры Рассмотрим случай, когда система отсчета камеры (С) отличается от реаль- ной системы отсчета (IV). Запишем, что
Глава 2. Геометрические модели камер 77 теперь сделаем замену в уравнении (2.14) и получим р=-Л4Р, где Л4 = К(Т1 t), (2.15) где Р = — это матрица вращения, t = cOw — вектор трансляции, а через Р = {wx,wy,wz, 1)г обозначен однородный вектор координат точки Р в системе координат (ГУ). Выше приведен самый общий вид уравнения перспективной проекции. Его можно использовать для определения положения оптического центра О ка- меры в реальной системе координат. Действительно, как показано в разделе упражнений, для однородного координатного вектора О справедливо ЛЮ = 0. (Интуитивно это достаточно очевидно, поскольку оптический центр — это един- ственная точка, в которой изображение не определено однозначно.) В частно- сти, если Л4 = (-4 Ь), где А — несингулярная матрица 3x3, а 6 - вектор в пространстве Ж3, то неоднородный вектор координат точки О — это про- сто —A~*b. Важно понимать, что глубина z в уравнении (2.15) не зависит от Л4 и Р, поскольку если через mf, mJ и mJ обозначить три строки матрицы Л4, то непосредственно из уравнения (2.15) следует, что z = т3 • Р. Фактически, иногда бывает удобно переписать уравнение (2.15) в эквивалентной форме 7П1 • Р 14 = ------, ТПЗ • Р т. 2 • Р V = -------. тз Р (2.16) Проекционную матрицу можно записать в явном виде как функцию ее пяти внутренних (а, /3, uq, i’o и 0) и шести внешних параметров (три угла, опреде- ляющие TZ, и три координаты вектора £). Л1 = ^arj ~ 4- uorj atx — a cig 0ty 4- Uotz^ P T T p ----r2 4- vor3 ----ty 4- votx sin в sin в I rj tz ) (2-17) где rj, rj и гз соответствуют трем строкам матрицы 7£, a tx, ty и tz — коорди- наты вектора t. Если записать матрицу 1Z как произведение трех элементарных поворотов, то векторы г» (г = 1,2,3) можно, конечно же, явно представить через три соответствующих угла.
78 Часть I. Формирование изображений и модели изображений 2.2.3. Описание матриц перспективной проекции В этом разделе описываются условия, при которых матрицу Л4 разме- ра 3 х 4 можно записать в форме (2.17). Не нарушая общности положим, что Л4 = (Л Ь), где А — матрица 3 х 3, а b — элемент пространства R3, и обозначим через а? третью строку матрицы А. Очевидно, что если Л4 — частный случай матрицы (2.17), то а% должен быть единичным вектором, поскольку он равен rj’ — последней строке матрицы вращения. Отметим, впрочем, что замена М в уравнении (2.16) величиной ХМ для некоторого произвольного А 0 не меняет соответствующие координаты изображения. На основании этого далее в книге проекционные матрицы будем считать од- нородными объектами, определенными только с точностью до масштаба, для которых каноническую форму (2.17) можно получить выбором масштабного множителя такого, что |аз| = 1. Отметим, что параметр z в уравнении (2.15) единственно правильно можно интерпретировать как глубину точки Р, если матрица М записана в указанной канонической форме. Отметим также, что число внутренних и внешних параметров камеры соответствует 11 свободным параметрам (однородной) матрицы М. Матрица 3x4, которую можно записать (с точностью до масштаба) в фор- ме (2.17) для некоторого набора внешних и внутренних параметров, — это мат- рица перспективной проекции. Она представляет практический интерес для определения ограничений, накладываемых на внутренние параметры камеры, поскольку, как отмечалось ранее, некоторые из этих параметров фиксированы и могут быть известными. В частности, матрица 3x4 — это матрица перспек- тивной проекции нулевого наклона, если ее можно переписать (с точностью до масштаба) в форме (2.17) с углом 0 — тг/2; если же данную матрицу можно пе- реписать (с точностью до масштаба) в форме (2.17) с углами 0 = тг/2 и а — (3, то это перспективная матрица с нулевым наклоном и единичным форма- том изображения. Камеру с известным ненулевым наклоном и неединичным форматом изображения можно превратить в камеру с нулевым наклоном и еди- ничным форматом изображения с помощью соответствующих преобразований координат изображений. Будет ли произвольная матрица 3x4 матрицей пер- спективной проекции? Ответ на этот вопрос дает следующая теорема. Теорема 1. Пусть М — (А Ь) — матрица 3 х 4, а аТ (i = 1,2,3) — строки матрицы А, образованной тремя крайними левыми столбцами мат- рицы М. • Необходимое и достаточное условие того, что М — матрица перспек- тивной проекции: Det(A) 0. • Необходимое и достаточное условие того, что М — матрица перспек- тивной проекции с нулевым наклоном: Det(A) 0 и (ai х аз) («2 х аз) = 0.
Глава 2. Геометрические модели камер 79 • Необходимое и достаточное условие того, что Л4 — матрица перспек- тивной проекции с нулевым наклоном и единичным форматом изобра- жения: Det(A) ^0 и (ai х аз) • (аг х аз) = О, (ai х а3) • (ai х а3) = (аг х а3) • (а2 х а3). Необходимость условий этой теоремы очевидна: согласно (2.15) А = K.7Z, т.е. определители матриц А и К. одинаковы и А — несингулярная матри- ца. Далее, с помощью простых вычислений можно показать, что строки K.7Z в уравнении (2.17) удовлетворяют условиям теоремы при различных указан- ных предположениях. Доказательство достаточности условий данной теоремы можно найти в [Faugeras, 1993], а также в упражнениях к этой главе. 2.3. АФФИННЫЕ КАМЕРЫ И УРАВНЕНИЯ АФФИННОЙ ПРОЕКЦИИ Если рельеф сцены меняется незначительно по сравнению с расстоянием от сцены до камеры, для приблизительного описания процесса формирования изображения можно использовать модели аффинной проекции. В их число входят модели ортогональной и слабоперспективной проекций, о которых говорилось в главе 1, а также параллельные и параперспективные модели, о которых речь пойдет ниже. Названия моделей объясняются в главе 12. 2.3.1. Аффинные камеры При ортогональной проекции процесс формирования изображения модели- руется как ортогональная проекция на плоскость изображения. Это разумное приближение перспективной проекции для отдаленных объектов, которые на- ходятся на приблизительно одинаковом расстоянии от камер, наблюдающих за ними. Модели параллельной проекции также относятся к ортогональным и с их помощью можно описывать объекты, расположенные не на оптической оси камеры. В этой модели рассматриваемые лучи параллельны друг другу, но не обязательно перпендикулярны к плоскости изображения. Модели слабоперспективной и параперспективной проекции — это обобще- ние моделей ортогональной и параллельной проекций, которое допускает изме- нение глубины объекта относительно наблюдающей камеры (рис. 2.9). Обозна- чим через О оптический центр этой камеры, а через Р — контрольную точку сцены; слабоперспективная проекция точки сцены Р формируется в два эта- па: вначале точка Р ортогонально проектируется в точку Р' на плоскости Пг, параллельной к плоскости изображения П' и проходящей через затем с помо- щью перспективной проекции точка Р' переводится в точку р (рис. 2.9, ввер- ху). Поскольку Пг — это фронтопараллельная плоскость, то суммарный эф- фект двух преобразований — масштабирование координат изображения. В па- раперспективной модели учитываются как искажения, связанные с тем, что контрольная точка не лежит на оптической оси камеры, так и возможные от-
80 Часть I. Формирование изображений и модели изображений Рис. 2.9. Модели аффинной проекции: слабоперспективная (вверху) и параперспективная (внизу) проекции клонения глубины (рис. 2.9, внизу): используя принятые ранее обозначения и обозначив через Д прямую, соединяющую оптический центр О с контрольной точкой R, вначале применяется параллельная проекция в направлении прямой Д для отображения точки Р в точку Р', принадлежащую плоскости Пг; за- тем используется перспективная проекция для отображения точки Пг в точку изображения р. 2.3.2. Уравнения аффинной проекции Выведем уравнение слабоперспективной проекции. Если через zr обозначить глубину контрольной точки R, то два этапа проектирования Р —> Р' —> р можно следующим образом записать в нормированной системе координат, привязанной к камере: или, в матричной форме,
Глава 2. Геометрические модели камер 81 Если ввести калибровочную матрицу камеры /С и и t, получим общий вид уравнения проекции ее внешних параметров Р где через Р, как обычно, обозначен неоднородный координатный вектор точ- ки Р во внешней системе отсчета. Наконец, отметив, что величина zr постоян- на, можем записать /С = /С2 от def где К.2 - —a ctg 6 sin0 def И Ро = о Это позволяет переписать уравнение (2.18) в таком виде: р = (2-19) р = (и, v)T — это неоднородный координатный вектор точки р, а Л4 — проек- ционная матрица 2x4 (сравните полученный результат с общим уравнением проекции (2.15)). В этом выражении матрица А размера 2 х 3 и 2-вектор Ь задаются, соответственно, такими формулами А = —/С2Т^2 и Ь = —/C2t2 + р0, zr zr где 7^2 — матрица 2x3, образованная двумя первыми строками матрицы Р, a t2 — 2-вектор, образованный двумя первыми координатами вектора t. Отметим, что в выражении для Л4 не фигурирует tzt и что <2 и р0 в этом выражении объединены: проекционная матрица не изменится, если заменить t2 на £2 + а и Ро — на Ро — ^-^2а- Эта избыточность позволяет произвольно по- ложить и0 = v0 — 0. Другими словами, положение центра изображения для слабоперспективной проекции неважно. Отметим, что значения zrt а и (3 в вы- ражении для Л4 также объединены, и что значение zr, как правило, заранее не известно, поэтому можно записать следующее:
82 Часть I. Формирование изображений и модели изображений М = (2.20) где через к и s обозначены, соответственно, формат изображения и. наклон камеры. В частности, матрица слабоперспективной проекции задаете») двумя внутренними параметрами (к и з), пятью внешними параметрами (т^и угла, определяющие 7^2> и две координаты t2) и одним структурным параметром, зависящим от сцены, — zr. Легко показать (см. раздел упражнений), что уравнения параперспективной проекции можно также записать в общей аффинной форме (2.19) с лл 1 (к ЛЛ — — | zr \0 (2.21) где через хг, уг и zr обозначены координаты контрольной точки R в нормиро- ванной системе координат камеры. Заметим, что выражение (2.21) сводится (как и следовало ожидать) к уравнению слабоперспективной проекции (2.20) при условии хг = уг = 0. Согласно уравнению (2.21) матрица параперспективной проекции задается двумя внутренними параметрами (к, з), пятью внешними параметрами (три угла, определяющие 1Z, и две координаты t2) и тремя струк- турными параметрами хг, уг и zr. На практике, в качестве контрольной точки часто берется какая-то характерная точка, проекцию которой легко наблюдать на изображении. Конечно, нельзя измерить на изображении координаты xrt уг и zr этой точки, но координаты ее проекции иг и vr доступны. Уравнение (2.21) легко переписать в виде (2.22) При такой формулировке матрица параперспективной проекции задается че- тырьмя внутренними параметрами (к, з, '«□ и т?о), пятью внешними параметрами (три угла, определяющие 7£, и две координаты t2) и единственным структурным параметром zr. Уравнения ортогональной и параллельной проекций получаются из уравне- ний слабоперспективной и параперспективной проекций, если положить зна- чение переменной zr равным некоторой фиксированной величине (на практике часто берут zr — 1) и подставить результат в выражения (2.20), (2.21) или (2.22). Если одна сцена наблюдается с помощью нескольких различных ортого- нальных (соответственно, параллельных) камер (или, что то же самое, после- довательность изображений снимается с помощью камеры с переменным фо- кусным расстоянием), становятся важными реальные коэффициенты увеличе- ния изображения, и упрощенные калибровочные матрицы, которые фигурируют в уравнениях (2.20), (2.21) или (2.22), следует заменить матрицей /С2.
Глава 2. Геометрические модели камер 83 2.3.3. Описание матрицы аффинной проекции Матрица Л4 — (Л Ь) размера 2x4, где А — произвольная матрица ранга 2 размера 2 х 3, а b — произвольный вектор в пространстве Ж2, называется мат- рицей аффинной проекции. Условие на ранг следует из того факта, что матрица первого ранга проектировала бы все точки сцены на одну линию изображения; отметив также, что матрица А, соотнесенная со слабоперспективными и пара- перспективными камерами, имеет по построению ранг 2, поскольку, согласно уравнениям (2.20), (2.21) и (2.22), ее можно записать в виде произведения двух матриц ранга 2. Как матрица слабоперспективной проекции, так и общая матрица аффин- ной проекции задается восемью независимыми параметрами. Матрицы пара- перспективной проекции, напротив, имеют 10 степеней свободы. Разумеется, матрицы слабоперспективной и параперспективной проекции являются аффин- ными. И наоборот, подсчитав параметры, можно убедиться, что должна суще- ствовать возможность записи произвольной матрицы аффинной проекции в ви- де слабоперспективной или параперспективной, хотя последнее представление не будет однозначным, если не наложить дополнительных условий. Сказанное можно сформулировать в виде следующей теоремы. Теорема 2. Матрицу аффинной проекции можно единственным об- разом (с точностью до знака) записать как общую матрицу слабопер- спективной проекции (2.20) либо как матрицу параперспективной проек- ции (2.21) или (2.22), причем k = 1 и s = 0. Доказательство этой теоремы приводится в работе [Faugeras at al., 2001] и фигурирует в одном из упражнений к данной главе. Из теоремы 2 следует, что любую аффинную проекцию можно записать как слабоперспективную или параперспективную, а также что геометрические свойства этих проекционных моделей присущи и общей аффинной проекции. Например, при слабоперспек- тивной проекции сохраняется параллельность линий (см. главу 12), а из теоре- мы 2 следует, что это свойство сохраняется также для произвольной аффинной проекции. Произвольную матрицу 2x4 всегда можно записать как матрицу параперспективной проекции с к = 1 и s = 0, однако из этого не следует, что формат изображения или его наклон не важны. 2.4. ПРИМЕЧАНИЯ В работе [Craig, 1989] предлагается детальное введение в системы координат и кинематику. Полное описание геометрических моделей камер можно найти в публикациях [Faugeras, 1993], [Hartley and Zisserman, 2000] и [Faugeras et al., 2001]. Модель параперспективной проекции была введена в компьютерное зрение в работе [Ohta, Maenobu, and Sakai, 1981], а ее свойства исследованы в [Aloimonos, 1990]. Связь между моделями параперспективной и аффинной проекции рассмотрена в книге [Basri, 1996]. Уравнения перспективной проек-
84 Часть I. Формирование изображений и модели изображений ции прямых линий в координатах Плюкера выводятся в работе [Faugeras and Papadopoulo, 1997], это уравнение также используется в одном из упражнений к данной главе. Аппарат, представленный в этой главе, используется в главе 3 для решения задачи калибровки камеры (т.е. вычисления ее внутренних и внеш- них параметров, исходя из положения изображений реперных точек). Он так- же является ключом к пониманию методов стереозрения и анализа движения, представленных в главах 10-13. Основные формулы, которые были выведены в этой главе, собраны в табл. 2.1. Задачи 2.1. Запишите формулы для матриц ^11, если (В) можно получить из (А) поворотом на угол 0 вокруг осей г а, /д и &д, соответственно. 2.2. Покажите, что матрицы вращения обладают следующими свойствами: а) обратная к матрице вращения равна транспонированной и б) ее опреде- литель равен 1. 2.3. Покажите, что набор матриц, соотнесенный со строгими преобразовани- ями, плюс правило умножения матриц составляет группу. 2.4. Пусть АТ — матрица, соотнесенная со строгим преобразованием Т в си- стеме координат (А), где . (АК \ 0 1 ) Постройте матрицу ВТ, соотнесенную с Т в системе координат (В) как функцию АТ и строгое преобразование, переводящее (А) в (В). 2.5. Покажите, что если система координат (В) получается в процессе при- менения преобразования 7 к системе координат (А), то ВР = Т~1АР. 2.6. Покажите, что поворот на угол 0 вокруг оси к в системе отсчета (В) можно представить как (cos 0 — sin 6 о\ sin# cost? 0 I . 0 0 1/ 2.7. Покажите, каким образом при переходе от одних координат к другим, ко- торый выполняется как строгое преобразование, сохраняются углы и рас- стояния. 2.8. Покажите, что когда система координат камеры наклонена и угол 0 меж- ду двумя осями изображения не равен 90°, то уравнение (2.11) переходит в уравнение (2.12). 2.9. Пусть О — однородный координатный вектор оптического центра ка- меры в некоторой системе отсчета, а Л4 — соответствующая матрица перспективной проекции. Покажите, что Л1(О) =0. 2.10. Докажите необходимость условий теоремы 1.
Глава 2. Геометрические модели камер 85 2.11. Докажите достаточность условий теоремы 1. Формулировка этой теоремы немного отличается от приведенной в работах [Faugeras, 1993] и [Неу- den, 1995], где вместо условия Det(A) Ф 0 указано условие аз -f- 0. Разумеется, из Det(A) ф 0 следует, что аз 0. 2.12. Если ЛП — однородный координатный вектор плоскости П в системе координат (А), то каким будет однородный координатный вектор ВП плоскости П в системе координат (В)? 2.13. Если AQ — симметричная матрица, соотнесенная с поверхностью второго порядка в системе координат (А), то какой будет симметричная матри- ца BQ, соотнесенная с этой поверхностью в системе координат (В)? 2.14. Докажите теорему 2. 2.15. Плюкеровские координаты прямой. Внешнее произведение двух век- торов и и v в пространстве К4 задается как (U\V2 — «2^1^ щг>з — U3U1 def U1V4 — U4V1 и A v = U2V3 — U3V2 «2^4 ” ^4^2 \U3U4 ~ U1V3J Для данной фиксированной системы координат и однородных координат- ных векторов А и В, соотнесенных с двумя точками А и В в простран- стве Е3, вектор L = А/\В называется вектором плюкеровских координат прямой, соединяющей точки А и В. а) Пусть L = (Li, L2, L3, L4, L&, L6)T. Обозначим через О начало коор- динат системы, а через Н — его проекцию на L. Определим также векторы оА и ОВ через их неоднородные координатные векторы. Покажите, что АВ = — (£3, £5, Lg)t и О А х ОВ = ОН х АВ = (£4, — £2, Li)T. Покажите, что плюкеровские координаты прямой под- чиняются квадратическому условию £1£б — L2L5 4- L3L4 — 0. б) Покажите, что смещение положения точек А и В вдоль прямой £ вли- яет только на общий масштаб вектора L. Убедитесь, что координаты Плюкера являются однородными. в) Докажите, что следующее тождество справедливо для любых векто- ров х, у, z и t в пространстве R4: (я Л у) • (z Л t) = (х • z)(y • £) — (х • t)(y • z). г) Используйте это тождество, чтобы показать, что отображение прямой с вектором плюкеровских координат £ в ее образ I с однородными
86 Часть I. Формирование изображений и модели изображений координатами I можно представить следующим образом: ((тпг л тпз)т (тпз ЛШ1)Г (mi Лтп2)т (2.23) Через mf, тп^ и тп? обозначены строки матрицы М, р — соот- ветствующий масштабный множитель. Подсказка, рассмотрите пря- мую L, соединяющую точки А и В и обозначьте через а и b проекции этих двух точек, имеющие однородные координаты а и Ь. Учтите, что точки а и b лежат на Z, следовательно, если I — однородный коорди- натный вектор этой прямой, то I а — I Ъ = 0. д) Покажите, что для данных прямой L с вектором плюкеровских коор- динат L = (L1,L2,L3)L4,L5,L6)t и точки Р с однородным коорди- натным вектором Р необходимое и достаточное условие принадлеж- ности точки Р прямой L имеет такой вид: ( 0 Ьб —L5 L4 \ гт» п гdel ~L& 0 £з —Li I £Р = 0, где £ = Lb —L3 0 Li I L4 L2 —Lx 0 / е) Покажите, что необходимое и достаточное условие принадлежности прямой L плоскости П с однородным координатным вектором П имеет такой вид: £*П = 0, / 0 где -f1 —L2 \-L3 Lx L2 0 L4 -l4 0 —Lb —L& Lz\ Lb L6 oj
3 Гэометрическая калибровка камер В этой главе рассматриваются вопросы, связанные с оценкой внутренних и внешних параметров камеры, т.е. процессом, известным как геометрическая калибровка камер. В данной книге предполагается, что камера наблюдает набор характерных элементов, таких как точки или прямые, положение ко- торых известно относительно определенной фиксированной внешней системы координат (рис. 3.1). В таком случае калибровку камеры можно смоделировать как процесс оптимизации, при котором разница между элементами наблю- даемого изображения и их теоретическими положениями (предсказанными через уравнения перспективной проекции, которые были выведены в главе 2) минимизируется относительно внешних и внутренних параметров камеры. Эта глава начинается с обзора схем наименьших квадратов, предназначен- ных для решения такого типа задач по оптимизации, затем будет представ- лено несколько линейных и нелинейных подходов к калибровке. Если камера откалибрована, то с произвольной точкой изображения можно связать строго определенный луч, проходящий через эту точку и оптический центр камеры, а также выполнить точные трехмерные измерения с помощью оцифрованных изображений. В конце главы описывается применение калибровки для опреде- ления местонахождения мобильного робота.
88 Часть I. Формирование изображений и модели изображений Рис. 3.1. Установка для калибровки камеры. В этом примере устройство калибровки состоит из трех сеток, расположенных во взаимно перпендикулярных плоскостях. Существуют и другие моде- ли, в которых фигурируют прямые или другие геометрические фигуры 3.1. ОЦЕНКА ПАРАМЕТРОВ ПО СХЕМЕ НАИМЕНЬШИХ КВАДРАТОВ Калибровка камеры состоит в оценке внутренних и внешних параметров, при которых среднеквадратическое отклонение наблюдаемых элементов изображе- ния от теоретически предсказанных становится минимальным. В этом разделе представлена группа методов оптимизации, известных под названием схем наи- меньших квадратов, которые применяются для решения задач указанного типа. Эти методы используются также и в некоторых других ситуациях, описанных в данной книге. 3.1.1. Линейные схемы наименьших квадратов Рассмотрим вначале систему р линейных уравнений с q неизвестными: UllXl + И12ГГ2 -I------h UlqXg = J/l «21^1 + «22 ^2 -I--h U2qXg = 7/2 <=> Ux = y. (3.1) , «pl 3*1 71р2'Г'2 “H * 4“ UpgXg ------ Ур В этом уравнении «12 • и = «21 «22 • U2q k«pl UP2 ' upqJ У2 \Ур/ Из линейной алгебры мы знаем, что (в общем случае)
Глава 3. Геометрическая калибровка камер 89 • если р < q, набор решений этого уравнения образует (q — р)-мерное под- пространство пространства R9; • если р = q, существует единственное решение; • если р > q, решений нет. Это утверждение справедливо, если ранг (т.е. максимальное число неза- висимых строк или столбцов) матрицы U максимален — т.е. равен min(p, q) (именно это и имелось в виду, когда мы говорили в общем случае). Если ранг меньше, чем min(p, g), то существование решений уравнения (3.1) зависит от значений у и от того, попадают ли они в область значений матрицы U (т.е. подпространство пространства Rp, натянутое на ее столбцы). Нормальные уравнения и псевдообратная матрица Далее в этом разделе рассматривается только ситуация р < q в предполо- жении, что ранг q матрицы U максимален. В данном случае точного решения нет, поэтому мы ограничимся определением вектора х, который минимизирует меру ошибки Е = ч-----1- UiqXq - yi)2 ~ |Z^C - J/|2. Мера Е пропорциональна среднеквадратической ошибке, связанной с урав- нениями, поэтому методы ее минимизации называются схемами наименьших квадратов. Теперь можно записать Е — ее, где е = Ux—y. Для нахождения вектора х, минимизирующего Е, запишем, что производные этой меры по координатам х± (г = 1,..., q) вектора х должны равняться нулю, т.е. дЕ де ---=2----- е = 0 для г=1,...,д. dxi dxi Если столбцы матрицы U — это векторы Cj = (и^,... ,umj)T (j = l,...,q), имеем 1 / X1 I c9 I • - - у / \^/ de dxt dxi = ----(XlCl 4-----Г XqCq — у) = C*. dxi В частности, при записи дЕ/dxi = 0 подразумевается, что c[(Ux — у) — 0, а наложение дополнительных условий, связанных с q координатами вектора х, дает нормальные уравнения задачи наименьших квадратов, т.е.
90 Часть I. Формирование изображений и модели изображений (т\ ^1 \ • • (W® - у) = UT(Ux - у) <=> UTUx = UTy. ст / Если ранг q матрицы U максимален, то легко показать, что матрица UTU об- ратима, а решение нормальных уравнений — ж — U^y, где W = [(L/TW)-1L/T]. Матрицу W размера q х q называют псевдообратной к U. Если матрица U квадратная и несингулярная, то совпадает с Линейные задачи наи- меньших квадратов можно решать без сложных вычислений псевдообратных матриц, используя, например, QR-разложение или разложение по сингулярным числам матрицы (более подробно см. главу 12), которые, как известно, имеют лучшее численное поведение. Однородные системы и задачи на собственные значения Рассмотрим теперь исходную задачу, если есть система из р линейных урав- нений с q неизвестными, но вектор у равен нулю, т.е. U11X1 4- U12X2 -I--Ь UlqZq = 0 «21X1 + «22^2 4----+ U24X4 = 0 (3.2) UplXl 4- Up2X2 -I--Ь UpqXq = 0 Это однородное уравнение по х (т.е. если х — решение, решением будет также и Л ж для любого А / 0). Если р = q и матрица U несингулярна, то допускает- ся существование единственного решения уравнения (3.2) ж = 0. И наоборот, если р > q, то нетривиальное (т.е. ненулевое) решение может существовать только если U сингулярна, и ее ранг строго меньше q. В таком случае ми- нимизация Е = |27ж|2 имеет смысл только тогда, когда на ж накладываются какие-то дополнительные условия, поскольку значение ж = 0 дает глобальный минимум Е в нуле. Из однородности следует, что Е(Хх) = Х2Е(х), и разум- ным будет выбор условия |ж|2 = 1, что поможет избежать тривиальных решений и даст единственный результат. Ошибку Е можно переписать как |£Уж|2 = xT(UTU)x. Матрица UTU раз- мера q х q по построению является симметричной положительной полуопре- деленной матрицей (т.е. все ее собственные значения положительны или рав- ны нулю) и может быть диагонализована в ортонормированном базисе соб- ственных векторов ei (i = 1, ...,g), соотнесенных с собственными значения- ми 0 < А1 < • • • < Ад. Таким образом, любой единичный вектор можно записать как ж = p^ei -|--к Мдвд, где р2 4-4- /х2 = 1. В частности, Е(х) - E(ei) = xT(UTU)x - е?(UTU)ei = А?д? + • + Х2р2 - Xj > > Al (mi +--------------1- /I, — 1) = 0.
Глава 3. Геометрическая калибровка камер 91 Рис. 3.2. Прямую, которая лучше всего соответствует п точкам на плоскости, можно определить как прямую 5, среднеквадратическое расстояние от которой до этих точек (на этом рисунке — среднеквадратическая длина коротких параллельных отрезков прямой, соединяющих прямую 6 с этими точками) минимально Из этого следует, что единичный вектор х, минимизирующий Е, — это соб- ственный вектор ej, соотнесенный с минимальным собственным значением матрицы UTUt а соответствующее минимальное значение Е — А?. Суще- ствуют различные способы вычисления собственных векторов и собственных значений симметричных матриц, включая преобразования Якоби и приведение к тридиагональному виду с последующим QR-разложением. Для вычисления собственных векторов и собственных значений без построения матрицы UTU можно воспользоваться также разложением по сингулярным числам. Перед тем как перейти к иллюстрации применения линейных методов наи- меньших квадратов, рассмотрим более общую задачу минимизации |Wa:|2 при условии |Уж|2 = 1, где V — матрица размера г х q (задача сводится к примене- нию однородной линейной схемы наименьших квадратов при У = Id). Вектор х и скаляр А, такие что UrUx=АУтУя, называются, соответственно, обобщенным собственным вектором и обобщен- ным собственным значением симметричных матриц UTli и VTV размера qxq. Как показано в разделе упражнений, решение этой ограниченной задачи опти- мизации — в точности единичный обобщенный собственный вектор, соотнесен- ный с минимальным обобщенным собственным значением (которое в данном случае обязательно будет положительным или равным нулю по построению). Для вычисления обобщенных собственных векторов и собственных значений пары симметричных матриц разработаны эффективные методы.
92 Часть I. Формирование изображений и модели изображений Пример 3.1. Подбор прямой по точкам на плоскости Рассмотрим п точек pi (г = 1,.... п) на плоскости с координатами (х*,у*) в неко- торой фиксированной системе координат (рис. 3.2). Как лучше всего провести прямую по этим точкам? Чтобы ответить на поставленный вопрос, сперва сле- дует определить, насколько прямая S соответствует набору точек или, что то же самое, найти некоторую функцию ошибок Е, являющуюся мерой отличия этой прямой и точек. Таким образом, самую подходящую прямую можно будет найти, минимизируя Е. В качестве функции ошибок разумным будет выбрать среднеквадратическое рас- стояние от точек до прямой (рис. 3.2). В главе 2 было показано, что уравнение прямой с единичной нормалью п — (а, Ь)т, лежащей на расстоянии d от нача- ла координат, выглядит так: ах + by — d. Действительно, легко показать, что расстояние от точки с координатами (х,у)т до этой прямой равно |ах + by — d|. Следовательно, можно использовать величину п Е(а, b, d) = ^^(axj 4- byi — d)2 1=1 в качестве функции ошибок, и задача подбора прямой сводится к минимизации Е относительно a, bud при условии a2 + b2 = 1. Дифференцируя Е по d и учитывая, что в минимуме этой функции 0 = dE/dd = -2127=1(“3'’ + byi — d), получаем: 1 " 1 " d — ax + by, где а: = — и у= — / yi, (3.3) п £=1 п 1=1 а два скаляра х и у — это координаты центра масс заданных точек. Подставив в определение Е вместо d данное выражение, получим п !х\ - х yi - у Е = lo(x* -+ b(yi — у)]2 = |£6г|2, где U = I 1=1 \^п - х уп - у Таким образом, наша исходная задача сводится к минимизации |Wn|2 относитель- но п при условии |n|2 = 1. При такой формулировке можно узнать однородную линейную задачу наименьших квадратов, решением которой является единичный собственный вектор, связанный с минимальным собственным значением матри- цы UTU размера 2x2. Вычислив а и Ь, из уравнения (3.3) можно сразу получить значение d. Легко показать, что матрица UTU равна / п 71 ' У^Д2 — пх2 y^Xiyi — пху 1=1 1=1 П Т1 J^^iyi - пху У^уг? - пу2 1=1 1=1 ‘
Глава 3. Геометрическая калибровка камер 93 т.е. матрице вторых моментов инерции точек р*. Фактически, прямая, которая луч- ше всего соответствует этим точкам (как она определена выше) — это просто их ось наименьшей инерции, определение которой дается в элементарной механике. 3.1.2. Нелинейные схемы наименьших квадратов Рассмотрим теперь общий случай: система из р уравнений с q неизвестными: .. ,хч) = О /2(х1,х2,...,х,) = 0 ^f(x}=Q (34) fp(Xl,X2,. . . ,Xq) — О Здесь через fa (i = обозначены (возможно, нелинейные) дифференци- руемые функции из BF в К при f = (Д,..., fp)T и х = (xi,..., xq)T. В общем случае, ♦ если р < д, решения образуют (q — р)-мерное подмножество К9; • если р = q, существует конечное множество решений; • если р > q, решений нет. Подчеркнем главные отличия от линейной задачи: в общем случае размер- ность множества решений при отсутствии дополнительных ограничений все еще q — р, но это множество уже не образует векторного пространства. Его структура зависит от природы функций fa. Кроме того, в случае р = q обыч- но существует конечное число решений вместо единственного решения. Точное определение общих условий, при которых семейство функций Д (i = 1,...,р) удовлетворяет предыдущему условию, в данной книге не рассматривается. От- метим также, что не существует общего метода нахождения всех решений урав- нения (3.4) в случае р — q или определения глобального минимума ошибки схемы наименьших квадратов р Е(«)Й|/(х)Г = 1=1 в случае р > q. Вместо этого далее представлен ряд итеративных методов лине- аризации данной задачи, чтобы найти хотя бы одно подходящее решение. Все эти методы основаны на разложении функций fa в ряд Тейлора в окрестности точки х. dfa dfa 9 fa(x Ч- 6х) = fa(x) Ч- 6xi----(х) Ч-----Ь 6х9-----(х) Ч- О(|<5ж|2) « Д(х) Ч- Х7Д(а;) • 5х дху дхч
94 Часть I. Формирование изображений и модели изображений Здесь 57Л(гс) = (dfi/dxi,... ,dfi/dxq)T — градиент функции fa в точке х, а членом второго порядка О(|£г|2) мы пренебрегаем. Из этого непосредственно следует, что f(x + баз) ~ f(x) + Jf(x)Sx, (3-5) где Jj (ж) — якобиан функции / — т.е. матрица р х q Jf№ = (Bfl. ' (ж) * дх± dfa. X “ (ж) dXq dfP( . (ж) .. (a?) \&Е1 дхчК Метод Ньютона: квадратные системы нелинейных уравнений Как уже упоминалось ранее, уравнение (3.4) допускает (в общем случае) конечное число решений при р = q. Хотя общего метода для нахождения всех этих решений для произвольной функции f не существует, в качестве простого итеративного алгоритма для определения одного решения можно использовать уравнение (3.5): если есть какая-то текущая оценка решения х, то далее вы- числяется возмущение ёх этой оценки, чтобы f(x + ёх) ~ О, или, согласно уравнению (3.5), Jj(x)Sx = -/(ж). Если якобиан несингулярен, то ёх легко находится как решение указанной системы q х q линейных уравнений, и этот процесс повторяется до схождения. Метод Ньютона дает быструю сходимость при приближении к решению: он обладает квадратической скоростью сходимости (т.е. ошибка на шаге k -|- 1 пропорциональна квадрату ошибки на шаге к). Если первоначальная оценка далека от решения, то метод Ньютона может оказаться ненадежным. Для уси- ления его надежности применяются различные стратегии, но в этой книге они не описаны. Метод Ньютона: системы нелинейных уравнений с дополнительными условиями При р > q нужно найти локальный минимум среднеквадратической ошиб- ки Е. Метод Ньютона можно модернизировать для такого случая, поскольку требуемый минимум соответствует нулю градиента функции ошибок. Введем функцию F(x) = -VE(x) и воспользуемся методом Ньютона для нахожде- ния требуемого минимума как решения системы q х q нелинейных уравне-
Глава 3. Геометрическая калибровка камер 95 ний F(x) = О. Дифференцирование Е дает F(x) = jJ(x)/(x), (3.6) а из дифференцирования этого выражения, в свою очередь, видно, что якобиан функции F равен Л-(х) = Jj (x)Jt(x) + £ Л(х)ЯЛ (х). (3.7) В этом уравнении Нц(х) — гессиан функций т.е. матрица вторых произ- водных размера q х q / d2fif . 02fi \ —^(я:) ... -----(х) НЛ(®) -----(х) ---J* (ж) \dxiXq дх2 / Член 6х в методе Ньютона удовлетворяет условию ^р(х)5х — — F(x). Эквива- лентно, из уравнений (3.6) и (3.7) следует, что 5х — это решение уравнения 5j(x)y/(x) + £ Л(х)НЛ(х) Зх = -J^(x)/(x). (3.8) Алгоритмы Гаусса-Ньютона и Левенберга-Макардта Метод Ньютона требует вычисления гессианов функций fi, что может ока- заться слишком сложным и/или дорогим. Ниже описаны два других подхода к нелинейным схемам наименьших квадратов, которые не требуют вычисления гессианов. Рассмотрим вначале алгоритм Гаусса-Ньютона: при этом подходе для минимизации Е снова используем разложение вектора 6х в ряд Тейлора до членов первого порядка, но на этот раз будем искать значение 6х, которое минимизирует величину Е(х 4- 8х) при данном значении х. Подстановка (3.5) в (3.4) дает такой результат: Е(х 4- <5х) = |/(ж 4- <5х)|2 ~ |/(ж) 4- Jj(х)6х|2. Обратимся повторно к выкладкам для линейной схемы наименьших квадратов и рассчитаем поправку 8х как решение уравнения J^(x)8x = — f(x) или, что то же самое (согласно определению псевдообратной матрицы), jj(x)jf(x)5x = -J}(x)f(x). (3.9) Сравнивая уравнения (3.8) и (3.9), можно заключить, что алгоритм Гаусса- Ньютона — это приближение метода Ньютона, в котором пренебрегают членом,
96 Часть I. Формирование изображений и модели изображений содержащим гессиан Такой подход справедлив, когда значения функций fa (остатки) малы, поскольку в уравнении (3.8) матрицы Н/, умножаются на эти остатки. В данном случае производительность алгоритма Гаусса-Ньютона срав- нима с производительностью метода Ньютона, который имеет (почти) квадра- тичную сходимость в окрестности решения. В то же время, если остатки очень велики, сходимость может быть медленной или вовсе отсутствовать. Если уравнение (3.9) заменить уравнением [Jf (®) + /zld]6aj = (3.10) где параметр р может варьироваться при каждой итерации, получается алго- ритм Левенберга-Макардта, распространенный в областях, связанных с ком- пьютерным зрением. Это еще одна разновидность метода Ньютона, в которой член, содержащий гессианы, считается кратным единичной матрице. Сходи- мость алгоритма Левенберга-Макардта сравнима со сходимостью другого пред- ставителя этого семейства, — алгоритма Гаусса-Ньютона, — но этот алгоритм несколько устойчивее: например, его можно использовать, когда якобиан не имеет максимального ранга и не существует его псевдообратной матрицы. 3.2. ЛИНЕЙНЫЙ ПОДХОД К КАЛИБРОВКЕ КАМЕРЫ Вернемся к задаче геометрической калибровки камер. В этом разделе бу- дем считать, что камера наблюдает калибровочную установку, и что положе- ния п точек изображения Pi (г = 1, ...,п) с известными однородными координатными векторами Pi были определены (автоматически или вручную) на сетке установки. Разделим процесс калибровки на а) вычисление матрицы перспективной проекции Л4, соотнесенной с камерой в этой системе координат, и б) оценку внутренних и внешних параметров камеры по данной матрице. О вырожденных точечных конфигурациях, для которых первый шаг этого про- цесса неосуществим, речь пойдет в разделе 3.2.3. Легко показать, что если точки pi — перспективные изображения точек Л, получается набор из п ли- нейных условий на 11 независимых коэффициентов соответствующей проекци- онной матрицы. При п > 11 эти уравнения обычно не имеют общего корня, но для эффективного построения их решения с точки зрения схемы наименьших квадратов можно использовать методы, описанные в разделе 3.1.1. 3.2.1. Оценка проекционной матрицы Допустим, что камера имеет ненулевой перекос. Согласно теореме 1 из гла- вы 2, матрица /Л несингулярная, но произвольная. Избавляясь от знаменателя в уравнении перспективной проекции (2.16), получаем {(ТП1 — и,П1з) • Р = О, (m2 — verna) • Р = 0.
Глава 3. Геометрическая калибровка камер 97 Рассмотрев все условия, связанные с п точками, получим систему 2п однород- ных линейных уравнений на двенадцать коэффициентов матрицы Л4, а имен- но Рт = 0, где ог от Р1 -«1РП -ViPf def и тп = (mi тп2 р1 к ог от рТ * п Еч с Еч С Йч о, £ С 3 & 1 1 <тп3 = 0. Если п > 6, то для вычисления минимизирующего (Pm)2 значения единичного вектора т (следовательно, и матрицы Л4) как решения задачи на собствен- ные значения можно использовать однородную линейную схему наименьших квадратов. 3.2.2. Оценка внутренних и внешних параметров После оценки проекционной матрицы М ее выражение через внутренние и внешние параметры камеры (уравнение (2.17) в главе 2) можно использовать для нахождения этих параметров: записываем Л4 = (Л Ь), где через af, а? и аз обозначены строки матрицы А, и получаем: Л1 \ «2 = oj / ^ar^ — a ctg Or J + «01*3 0 Т , т ----Г2 +ЗДГз sin# k ) где р — неизвестный масштабный коэффициент, который вводится для учета того факта, что найденная матрица М. имеет единичную фробениусову форму, поскольку |Л4| = |m| = 1. Учитывая, что строки матрицы вращения имеют единичную длину и пер- пендикулярны друг другу, непосредственно получаем р = £/|о3|, гз = ра3, ио = p2(ai • аз), k vo = р2(а2 • аз), где е = =fl. (З.П) Так как в всегда находится в положительной окрестности тг/2, имеем р2(сц х аз) = — аг2 — actg0ri, р (а2 х а3) =-----ri, sin# 21 „ I II р [ai х а3| =--------, sin# 2| . I р |а2 х а3| =--------. sin# (3.12)
98 Часть I. формирование изображений и модели изображений Отсюда следует, что (ai х а3) (аг х а3) cost* =------------------------, |ai х а3||а2 х а3| а = p2|ai х a3|sin0, /3 = р2|а2 х а3| sin0, (3.13) поскольку знак множителей а и Д обычно известен заранее, вследствие чего эти коэффициенты можно принять положительными. Теперь из второй части уравнения (3.12) можно вычислить ri и р2 sinO 1 ri =--------fa2 х a3) -------------(a2 x a3 ' /3 |a2 x a3| (3.14) r2 = r3 x Ti. Отметим, что выбрать матрицу Р можно двумя способами в зависимости от значения е. Найдем теперь параметры трансляции, использовав условие JCt = pb, откуда t = р/С-1Ь. На практике знак tz обычно известен заранее (это равнозначно тому, что известно, где находится начало координат: перед камерой или за ней), что позволяет выбрать единственное решение для калибровочных параметров. 3.2.3. Вырожденные точечные конфигурации Теперь рассмотрим вырожденные конфигурации точек Pi (г = 1,...,п), которые могут вызвать сбой в процессе калибровки камеры. Сосредоточим наше внимание на (идеальном) случае, когда заданные точки (г = 1,..., п) можно измерить с нулевой ошибкой и определим нуль-пространство матрицы Р (т.е. подпространство пространства R12, образованное векторами I, причем Р1 ~ О). Пусть I — вектор, удовлетворяющий заданным условиям. Введем векто- ры, образованные последовательными четверками его координат (т.е. А = Р = и I/ = (/g,/ioJii,ii2)T), теперь можно запи- сать, что /рТх-и1р1иУ Plp-ViPfu Р7пХ - ипР?„ {РпР - УпрТ&) (3.15) Объединение уравнений (2.16) и (3.15) дает
Глава 3. Геометрическая калибровка камер 99 Избавляясь от знаменателя и приводя подобные слагаемые, наконец, получим р[(Хтпз — mivT)Pi == О, РТ(1лтпз — m2VT)Pi = О, для i = 1,... ,п. (3.16) Как и ожидалось, вектор I, соотнесенный с Л = mi, д = т2 и I/ = тп^, представляет решение этих уравнений. Существуют ли другие решения? Рассмотрим сперва случай, когда все точки Pi (г = 1,..., п) лежат в некото- рой плоскости П — т.е. согласно уравнению (2.2), для какого-то 4-вектора П: П . = 0. Очевидно, что выбор (Л, д, 1/) в виде (11,0,0), (0,11,0), (0,0,11) или любой другой линейной комбинации этих векторов даст решение уравне- ния (3.16). Другими словами, нуль-пространство матрицы Р содержит четырех- мерное векторное пространство, образованное этими векторами и тп. На прак- тике это означает, что исходные точки Р» не обязательно должны все лежать в одной плоскости. В общем случае, для заданного ненулевого значения вектора Z, точки Р», удовлетворяющие уравнению (3.16), должны лежать на линии пересечения двух поверхностей второго порядка, которые описываются соответствующими урав- нениями. Если повнимательнее присмотреться к уравнению (3.16), можно обна- ружить, что линия пересечения плоскостей, которые описываются уравнениями тп3-Р = 0 и и Р ~ 0, принадлежит обеим поверхностям второго порядка. Мож- но показать, что линия пересечения этих двух поверхностей состоит из этой прямой и неплоской кривой третьего порядка Г, проходящей через начало ко- ординат. Неплоская кривая третьего порядка полностью определяется шестью точками, лежащими на ней, а из этого следует, что случайно выбранные семь точек не лежат на Г. Так как эта кривая проходит через начало координат, выбор п > 6 случайных точек обычно гарантирует, что ранг матрицы Р будет равен И и что проекционную матрицу можно восстановить однозначно. 3.3. УЧЕТ РАДИАЛЬНОГО ИСКАЖЕНИЯ До сих пор считалось, что рассматриваемая камера оснащена совершенными линзами. Как отмечалось в главе 1, реальные линзы обладают рядом аберра- ций. В этом разделе показано, как учитывается радиальное искажение — тип аберрации, который зависит от расстояния, отделяющего оптическую ось от рассматриваемой точки. Предположим, что центр изображения известен, поэто- му можно положить uq = vo — 0 и следующим образом смоделировать процесс проектирования: О 0\ 1/А О I МР, 0 V (3.17) где А — полиномиальная функция квадрата расстояния d2 от центра изображе- ния до точки р изображения. В большинстве приложений успешно использу-
100 Часть I. Формирование изображений и модели изображений ются полиномы малых степеней (т.е. А = 1 + Sp=i «р^2р> где q < 3), а коэф- фициенты искажения Кр (р = 1,..., q) обычно считаются малыми. Отметим, что d2 естественно выражается через нормированные координаты изображения точки р (т.е. d2 = й2 + г)2). Подстановка ид = 0 и vq — 0 в уравнение (2.13) позволяет после некоторых алгебраических преобразований переписать d2 как функцию и и v: d2 = и2 а2 V2 UV 4—- + 2— cos0. 02 (3.18) Используем уравнение (3.18) для записи А как явной функции и и v и подста- вим результат в уравнение (3.17), что даст сильно нелинейные условия на д+11 параметров камеры. Хотя все эти параметры можно найти с помощью общих нелинейных схем наименьших квадратов, представленных в следующем разде- ле, удобнее использовать двухэтапный подход к решению задачи калибровки: исключение А из уравнения (3.17) позволяет использовать линейную схему наи- меньших квадратов для оценки девяти параметров камеры. Оставшиеся q + 2 параметра рассчитываются из уравнений (3.17) и (3.18) с помощью простого нелинейного процесса. 3.3.1. Оценка проекционной матрицы С геометрической точки зрения радиальное искажение изменяет расстояние от центра изображения до точки изображения р, но не влияет на направле- ние вектора, соединяющего эти две точки. Данное утверждение — условие радиального выравнивания — было введено Тсаи ([Tsai, 1987а]). Это условие можно представить алгебраически, записав (mi РУ тз • Р ТП2 • Р \тпз Р) =Ф v(m± • Р) — и(тп2 • Р) = 0. (3.19) Для данных п исходных точек получается п линейных уравнений, содержащих восемь коэффициентов векторов mi и тпг- (viPi Qn = 0, где Q = I Рт \ип* п (3.20) Отметим сходство с предыдущим случаем. При п > 8 эта система уравнений в общем случае является переопределенной, а решение с единичной нормой можно найти с помощью линейного метода наименьших квадратов.
Глава 3. Геометрическая калибровка камер 101 3.3.2. Оценка внутренних и внешних параметров Как только оценены mi и тпг» можно, как и ранее, найти соответствующие значения ai и аг и записать Р arf — actgffr^ 4- uorj 0 Т . т ----r2 +и0Г3 sin 6 Вычислив норму и скалярное произведение векторов ai и аг, непосредственно получаем характеристическое соотношение и перекос камеры: £ _ la2l a |ai | 0,1 • 0,2 И COS0 =--------------. |ai||a2| (3-21) Использовав тот факт, что ?2 — это вторая строка матрицы вращения и, еле довательно, данный вектор имеет единичную норму, получим a = £p|ai|sin0 и /3 = ep|a2| sinfl, (3.22) где, как и прежде, е = ^1. После некоторых простых алгебраических преобра- зований получим € / 1 COS 0 \ П = ------- I --<21 ч-----0,2 I , sin# \|ai| |a2| / е г2 = -—-а2. |а2| Применение этих уравнений и соотношения г3 = п хгг позволяет восстановить матрицу вращения TL с точностью до двойной неопределенности. Можно также восстановить два параметра трансляции, записав atx — a etg 0ty\ 0 , = Р sin# J где и Ьг - первые две координаты вектора Ь, что, в свою очередь, позволяет рассчитать эти параметры tx и ty как £ /61 62COS0 = ----- I-------1------ sin# \|ai| |a2| e62 tv = • |a2| Без дополнительных условий, имея только значения mi и тпг, невозможно определить tz и абсолютный масштаб коэффициентов увеличения или зна- чение р. Чтобы оценить эти параметры, вернемся к исходным проекционным
102 Часть I. Формирование изображений и модели изображений уравнениям: перепишем левую часть уравнения (3.19) как (mi - Aum3) - Р = О, (m2 — Х-итпз) Р = 0. Здесь mi и m2 известны и, согласно уравнению (2.17), тп^ — (rj t2), где также известно гз. Подставив теперь выражение для d2 (уравнение (3.18)) в вы- ражения для а, (3 и cos# (уравнения (3.21) и (3.22)), получим 2 1 |uo2 — fai|2 d —---------------, р2 |си х а2|2 а если подставить это значение в уравнение (3.23), получится нелинейное уравнение по р, tz и параметрам искажения кр (р = 1,..., д). При доста- точном числе точек, для определения этих параметров можно использовать нелинейные схемы наименьших квадратов, которые были представлены в раз- деле 3.1.2. Эти методы итеративны и требуют начальных предположений обо всех неизвестных. Разумную оценку р и tz можно найти, применив линейную схему наименьших квадратов с начальным предположением А = 1. Подобным образом, разумным будет начальное предположение, что параметры искажения равны нулю. Как и прежде, двойной неопределенности можно избежать, если знак tz известен заранее. 3.3.3. Вырожденные точечные конфигурации Определим вырожденные точечные конфигурации, для которых векторы mi и m2 нельзя определить однозначно. При заданном векторе I в нуль- пространстве можно определить векторы А = W4)T и д = (15,1б>17,1&)т и записать O = QZ = ViP^X — uiPip. VnP?X - UnpTp, Подставляя значения щ и перегруппируем члены и избавимся от знаменате- ля, в результате РТ(чгП2Хт — mip,T)Pi = 0 для i = 1,..., п. (3.24) Решением данных уравнений (при отсутствии помех, т.е. когда все точки изоб- ражения точны) является вектор I, связанный с А = mi и д = m2. Когда все точки Pi (i = 1,..., п) лежат в некоторой плоскости П или, что то же самое, для какого-то 4-вектора П справедливо П • Рг = 0, можно выбрать (А,д) равными (П, О), (0,П) или любой линейной комбинации этих двух век- торов и построить решение уравнения (3.24). Нуль-пространство матрицы Q включает трехмерное векторное пространство, натянутое на эти векторы и I.
Глава 3. Геометрическая калибровка камер 103 Таким образом, для описанного метода калибровки нельзя использовать точки, которые лежат в одной плоскости. В результате при заданных значениях Аид, точки Р», если они лежат на поверхности второго порядка, которая описывается уравнением (3.24), об- разуют вырожденную конфигурацию. Отметим, что эта поверхность содержит четыре прямых линии, которые определяются уравнениями Л • Р = д • Р = 0, АР = mi • Р — 0, д Р = тп2 • Р ~ 0 и mi • Р — т2 • Р = 0. Следовательно, поверхность должна состоять из двух плоскостей или быть конусом, однолист- ным гиперболоидом или гиперболическим параболоидом. В любом случае, для достаточно большого числа точек с общим расположением данная задача наи- меньших квадратов допускает существование единственного решения. 3.4. АНАЛИТИЧЕСКАЯ ФОТОГРАММЕТРИЯ Во всех рассмотренных ранее методах не учитывались некоторые условия, связанные с процессом калибровки. Например, перекос камеры в разделе 3.2 считался произвольным, а не нулевым (или очень близким к нулю). В этом раз- деле описан нелинейный подход к калибровке камеры, в котором учитываются все важные условия. Этот подход пришел из фотограмметрии — инженерной области, которая занимается количественной обработкой геометрических дан- ных, полученных из одного или нескольких изображений, которые применяются в картографии, военном деле, городском планировании и т.д. На протяжении многих лет фотограмметрия основывалась на сочетании геометрических, опти- ческих и механических методов изучения трехмерных данных, получаемых из рисунков, но наступление эры компьютеров в 1950-х сделало возможным чисто вычислительный подход к этой задаче. Здесь стала широко применяться анали- тическая фотограмметрия, где внутренние параметры камеры определяют ее внутреннюю ориентацию, а внешние параметры — ее внешнюю ориентацию. Предположим снова, что наблюдаются п исходных точек Р» (г — 1,...,п), положения которых известны в какой-то внешней системе координат. Мини- мизируем среднеквадратическое расстояние от измеренного положения их изображений до положений (и,, и,), предсказанных уравнением перспектив- ной проекции по отношению к вектору параметров камеры £ = (Ci>--->Cg)T (9 > 11), который, кроме обычных внутренних и внешних параметров, может включать различные коэффициенты искажения. Ошибку метода наименьших квадратов можно записать как я«) = £[(&«) - ш)2 + (й«) - и)’], 1=1 где .^dermi^.P* der^2(€) Pi = -------- и Vi(f) = --------. т3(€)-Р* т3(€)Р«
104 Часть I. Формирование изображений и модели изображений В противоположность случаям, которые рассматривались ранее, зависимость каждого вектора ошибок от неизвестных параметров £ нелинейна. Она пред- ставляет собой комбинацию полиномиальных и тригонометрических функций. Минимизация общей ошибки, измерений включает применение нелинейных алгоритмов по схеме наименьших квадратов, которые обсуждались в раз- деле 3.1.2. Перепишем функцию ошибок согласно форме записи, введенной в этом разделе. в«) = 1/«)|2 = Е f? (О, где ( для i = 1...п. I =vi(()-vi Для методов Гаусса-Ньютона и Левенберга-Макардта, описанных в разделе 3.1.2, необходим градиент функций fj, а для метода Ньютона необходимы и их градиент, и гессиан. Здесь мы рассчитаем только градиент или якобиан /. Для сокращения выражений введем аргумент £ и определим £* = тп^ • Р», & = т2 • Pi и Zi = m3 - Pi (г = 1,..., п), так что щ = Xi/ii и v, = yi/zi. Получаем д£з df2i д£з дй{ 1 dii Xi dzi dvi 1 dyi yi dzi — I Pi) ~ й^(тз •Pi) 1 ( д d S — I ~(m2 • P0 “ ^ — (^3 • Pi) zi \ &£з &£з / Последнее выражение легко переписать в виде д^з _±(рТ °Т -“‘РП 'Т dhi "ii\oT PT -viPTJ \ / где m — вектор из пространства R12, соотнесенный с матрицей Л4, а через Згп обозначен ее якобиан относительно В результате якобиан / будет получен в следующем виде:
Глава 3. Геометрическая калибровка камер 105 Рис. 3.3. Эксперименты по калибровке. Слева: одно из 20 данных изображений; имеется сильное радиальное искажение. Вверху фотографии изображен мобильный робот с характерным светодио* дом. Справа: средняя и максимальная ошибка проектирования (в пикселях) по 20 изображениям. Программное обеспечение для калибровки и локализации любезно предоставлено Мишелем Дэ- ви (Michel Devy). Экспериментальные данные любезно предоставлены Фредом Ротгангером (Fred Rothganger) В этом выражении щ, vi, Zi и Pi зависят от рассматриваемых точек, a Jm зависит только от внутренних и внешних параметров камеры. Отметим, что этот метод требует явной параметризации матрицы Я. Подобная параметриза- ция через три элементарных поворота вокруг координатных осей упоминалась в главе 2. Вообще, существует множество параметризаций, которые можно ис- пользовать (см. раздел упражнений и главу 21). 3.5. ПРИЛОЖЕНИЕ: ОПРЕДЕЛЕНИЕ МЕСТОНАХОЖДЕНИЯ МОБИЛЬНОГО РОБОТА Методы калибровки, представленные в этой главе, могут применяться в ря- де областей, от метрологии до стереозрения и определения местонахождения объекта в задачах с использованием роботов. Ниже вкратце описан нелиней- ный подход к калибровке камеры, предложенный Дэви ([Devy, et al., 1997]), и его применение для определения местонахождения мобильного робота. В от- личие от рассмотренных методов, здесь для калибровки неподвижной каме- ры используется несколько изображений (в описанных экспериментах — 20) плоской прямоугольной сетки (рис. 3.3). Одно из этих изображений включает расположенную на земле сетку и применяется для определения внешней си- стемы координат. После ручного установления местонахождения “на глаз” на каждом рисунке определяются углы сетки с точностью до 1/10 пикселя, для чего используется параметрическая модель поверхности с градацией яркости в окрестности угла.
106 Часть I. Формирование изображений и модели изображений Геометрия изображения моделируется так же, как и в разделе 3.3, с тремя коэффициентами радиального искажения и нулевым перекосом. Калибровоч- ный алгоритм дает один набор внутренних параметров и один набор внешних параметров для каждого исходного изображения. Начальное предположение о внутренних параметрах можно получить из информации, предоставленной про- изводителями камеры и механизма фиксации кадра. Начальное предположение о внешних параметрах можно получить для каждого отдельного изображе- ния с помощью одного из алгоритмов Тсаи ([Tsai, 1987а]). Таким образом, проекционная матрица оценивается с помощью линейного метода наимень- ших квадратов путем выбора координатной оси z внешней системы координат, перпендикулярной к калибровочной сетке. Таким образом, уравнение (3.20) приобретает вид / V1X1 Q'n = 0, где Q' = \г?пх, viyi УпУп V1 —ЩХ1 Vn UnXn -uiyi —Uiyn -Ui -Un н n1 = (mn,mi2,mi4,ni2i,ni22,ni24)T- Отметим, что явное наложение условия Zi — 0 помогает избежать вырож- дения, характерного для описанных ранее алгоритмов, в которых фигурируют компланарные точки. Если известен вектор п', можно без особых трудностей рассчитать внешние параметры, при этом предполагается, что внутренние пара- метры (приблизительно) известны (см. раздел упражнений). Приняв разумные начальные предположения о внешних и внутренних параметрах, можно исполь- зовать нелинейную схему оптимизации (в данном случае алгоритм Левенберга- Макардта) для минимизации среднеквадратического расстояния между пред- сказанными и наблюдаемыми элементами изображения. На рис. 3.3 показаны результаты экспериментов, проводившихся с помощью камеры 576 х 768, оснащенной 4,5-миллиметровой линзой, и приводится график ошибок при проектировании углов сетки калибровочной модели на 20 изобра- жений. Как только камера будет откалибрована, ее можно будет использовать для отслеживания положения и ориентации мобильного робота относительно системы координат, привязанной к относительному изображению земли. У каж- дого робота есть набор инфракрасных светодиодов, имеющих индивидуальное излучение (рис. 3.3). Во время экспериментов по установлению местонахожде- ния робота на камеру ставится инфракрасный фильтр, который эффективно бло- кирует все излучения, кроме излучения светодиода заданного робота. Каждого робота можно идентифицировать с помощью простого алгоритма сравнения с шаблоном излучения, а его положение и ориентация выводятся из положения диода на изображениях и параметров камеры. Если поднять камеру на 4 м над землей, то характерная ошибка локализации в пределах всего поля зрения камеры не превышает 2 см в положении и 1° в ориентации, а максимальная ошибка может достигать 5 см и 5°.
Гпава 3. Геометрическая калибровка камер 107 3.6. ПРИМЕЧАНИЯ Линейный метод калибровки, описанный в разделе 3.2, подробно рассмотрен в работе [Faugeras, 1993]. Разновидность этого метода, в которой учтено ради- альное искажение, изложена согласно [Tsai, 1987а]. В публикации [Haralick and Shapiro, 1992] дано краткое введение в аналитическую фотограмметрию. Классикой, конечно, является Manual of Photogrammetry и новички (такие, как авторы этой книги) смогут по достоинству оценить оригинальные механиз- мы и изысканные методы, описанные в различных изданиях этого руководства ([Thompson et al., 1966], [Slama, 1980]). К фотограмметрии мы еще вернемся в главе 10 при изучении нескольких изображений. Общие методы оптимиза- ции обсуждаются, например, в работах [Luenberger, 1985], [Bertsekas, 1995] и [Heath, 2002]. Отличный обзор схем наименьших квадратов в контексте аналитической фотограмметрии можно найти в [Triggs et al., 2000]. Мето- ды наименьших квадратов допускают статистическую интерпретацию с точки зрения наибольшей вероятности, если координаты исходных точек задавались как случайные отклонения, подчиняющиеся закону нормального распределения. К такой интерпретации мы вернемся в главе 15, где будет еще раз затронута проблема подбора прямой линии, близкой к набору точек на плоскости. Задачи 3.1. Покажите, что вектор х, который минимизирует |£6г|2 при условии |Ух|2 = 1, — это единичный обобщенный собственный вектор, соотнесенный с минимальным обобщенным собственным значением симметричных матриц UTU и УГУ. Подсказка: задача эквивалентна минимизации (без дополнительных условий) ошибки Е = |г/ж|2/|Ух|2 относительно х. 3.2. Покажите, что матрица llTU размера 2 х 2 из примера в разделе 3.1.1 — это матрица вторых моментов инерции точек р, (г = 1,... ,п). 3.3. Модернизируйте метод подбора прямой из раздела 3.1.1 для решения задачи подбора плоскости по п точкам из Е3. 3.4. Выведите выражение для гессиана функций /2г-1(£) = йг(£) — щ и /2г(€) = £{(£)— Ui (г = 1,..., п), введенных в разделе 3.4. 3.5. Углы Эйлера. Покажите, что результат, полученный после одного пово- рота вокруг оси z какой-то системы координат на угол а последующего поворота вокруг оси у новой системы координат на угол (3 и последнего поворота вокруг оси z полученной системы координат на угол 7, можно представить в исходной системе координат как cos a cos (3 cos 7 — sin a sin 7 sin a cos /3 cos 7 4- cos a sin 7 — sin /3 cos 7 — cos a cos /3 sin 7 — sin a C0S7 — sin a cos Д sin7 4- cos a C0S7 sin (3 sin 7 cos a sin /3 sin a sin /3 cos/3 3.6. Формула Родригеса. Рассмотрим поворот матрицы TZ на угол 0 вокруг оси и (единичного вектора). Покажите, что TZx — cos&x + sin&u х х 4-
108 Часть I. Формирование изображений и модели изображений (1 — cos#)(u • х)и. Подсказка: при повороте проекция вектора х на на- правление и его оси не изменяется, но происходит плоский поворот на угол 0 проекции вектора х на плоскость, перпендикулярную и. 3.7. Используйте формулу Родригеса, чтобы показать, что матрица, соотне- сенная с 7£, имеет следующий вид: и2(1 — с) 4-с uv(l — с)— ws izw(l — с) 4-t’S uv(l — с) 4-ws v2(l — с) 4- с vw(l — c) — us uw(l — с) — vs vtu(l — с) 4- us w2(l — c) 4- c где c = cos 0 и s = sin 0. 3.8. Предположим, что внутренние параметры камеры известны. Покажите, как можно рассчитать ее внешние параметры, если известен вектор п', определение которого дано в разделе 3.5. Подсказка: используйте тот факт, что строки матрицы вращения имеют единичную норму. 3.9. Предположим, что камера наблюдает п исходных линий с известными координатами Плюкера. а) Покажите, что проекционную матрицу прямой А4, введенную в упраж- нениях к главе 2, можно найти с помощью линейного метода наи- меньших квадратов при условии п > 9. б) Покажите, что при известной матрице А4 можно также найти про- екционную матрицу А4, использовав для этого линейный метод наи- меньших квадратов. Подсказка: рассмотрите строки тг матрицы A-f как координатные векторы трех плоскостей П», а строки тп» матрицы А4 — как координатные векторы трех прямых, и используйте отноше- ние инцидентности между этими плоскостями и прямыми для вывода дополнительных линейных условий на векторы тп;. Упражнения 3.10. С помощью линейного метода наименьших квадратов подберите плос- кость по п точкам в R3 с координатами (х», yi, Zi)T (г = 1,..., п). 3.11. С помощью линейного метода наименьших квадратов по п точкам в R2 (xi,yi)T (i — 1,...,п) подберите коническое сечение, которое определяется уравнением ах2 + Ьху 4- су2 + dx 4- еу 4- f — 0. 3.12. Реализуйте линейный алгоритм калибровки, представленный в разде- ле 3.2. 3.13. Реализуйте введенный в разделе 3.3 алгоритм калибровки, в котором учитывается радиальное искажение. 3.14. Реализуйте нелинейный алгоритм калибровки из раздела 3.4.
4 Радиометрия — измерение света В этой главе вводится словарь определений и понятий, с помощью которых можно описать поведение света. На стр. 125 приводится резюме, в котором собраны определения основных терминов, введенных в главе. 4.1. СВЕТ В ПРОСТРАНСТВЕ Измерение света относится к области знаний, известной под названием ра- диометрии. Для того чтобы понять, как энергия от источника света переносит- ся к участку поверхности и что происходит с этой энергией при попадании ее на поверхность, необходим определенный набор величин. Для получения этого набора рассмотрим поведение света в пространстве. 4.1.1. Ракурс Если источник находится под углом к направлению распространения излу- чения, то со стороны участка поверхности, на который попадает свет от этого источника, он “кажется меньше”. Подобным образом, если участок поверхно- сти расположен под углом к направлению распространения света, он “кажется меньше” со стороны источника. Это явление связано с понятием ракурса.
110 Часть I. Формирование изображений и модели изображений Рис. 4.1. Точка на поверхности "видит” мир по направлениям, образующим полусферу с центром в этой точке; нормаль к поверхности обычно используется для формирования сферической систе- мы координат (0, ф). Обычно в задачах об излучении освещенность поверхности рассчитывается как суммарный эффект, оказываемый на эту поверхность со стороны всех направлений, поэтому направление ф = 0 можно выбирать произвольным образом Ракурс имеет большое значение, поскольку действие отдаленного источника на поверхность зависит от того, как выглядит источник со стороны поверхно- сти. Рассмотрим полусферу направлений от определенной точки поверхности (рис. 4.1). Излучение может попасть на поверхность только по этим направлени- ям. Более того, если два разных источника будут давать абсолютно одинаковое излучение по каждому из этих направлений, то они должны оказывать одинако- вое действие на поверхность — для поверхности такие источники неразличимы. Те же аргументы можно привести для участка поверхности, который виден со стороны источника. Если заменить один участок поверхности, освещаемый источником, другим, то для источника эти два различных участка поверхности будут “выглядеть” абсолютно одинаковыми — здесь имеется ввиду, что в каж- дом направлении от поверхности находится вещество с одинаковыми свойства- ми — т.е. источник не может отличить один участок от другого, следовательно, энергия каждому из них передается с одинаковой скоростью. 4.1.2. Телесный угол Действие источника на заданную полусферу направлений можно описать, введя понятие телесного угла, который образует этот источник. Телесный угол определяется по аналогии с углом на плоскости. Угол, который образует на плоскости бесконечно малый отрезок прямой dl в точке р, можно получить проектированием этого отрезка на единичную
Глава 4. Радиометрия — измерение света 111 Рис. 4.2. Вверху: угол, который образует отрезок кривой в выбранной точке, можно найти, спроек- тировав кривую на единичную окружность, центр которой находится в этой точке, а затем измерив длину проекции. Для малого отрезка угол равен d</> = (l/r)dlcos#i. Внизу: сфера, иллюстри- рующая понятие телесного угла. Маленькие окружности вокруг координатных осей позволяют представить трехмерное изображение. Бесконечно малый участок поверхности проектируется на единичную сферу с центром в требуемой точке; площадь результата — это телесный угол рассмат- риваемого участка. В данном случае участок мал, так что площадь (а следовательно, и телесный угол) равна (l/r2)dAcos0„ окружность с центром в р\ длина полученной проекции является искомым уг- лом в радианах (см. рис. 4.2). Так как отрезок прямой бесконечно мал, он образует бесконечно малый угол, который зависит от расстояния до центра окружности и от ориентации прямой: dl cos Bi аф =--------. г Угол, образованный кривой, можно найти, разбив ее на бесконечно малые от- резки и просуммировав (проинтегрировав!) соответствующие малые углы. Подобным образом, телесный угол, образованный участком поверхности в точке х, можно найти, проектируя этот участок на единичную сферу с цен- тром в ж; полученная площадь — это искомый телесный угол, который теперь измеряется в стерадианах. Телесный угол обычно обозначают символом о>. За- метим, что понятие телесного угла позволяет интуитивно почувствовать поня- тие ракурса — участки на заданной полусфере, которые “выглядят одинаково”, образуют одинаковые телесные углы.
112 Часть I. Формирование изображений и модели изображений Если площадь участка dA мала (что предполагается, когда мы говорим о бесконечно малой форме), тогда бесконечно малый телесный угол, который она образует, легко рассчитать через площадь участка и расстояние до него: , d A cos 0п d^ =-----=--. г2 Условные обозначения приведены на рис. 4.2. Телесный угол можно записать через обычные угловые координаты на сфере (см. рис. 4.2). Из рис. 4.1 и выражения для длины дуги окружности получаем, что бесконечно малые приросты (d0, d</>) по углам 0 и ф вырезают на сфере элемент телесного угла, который представляется таким выражением: duj = sin 0d0dф. Оба приведенных выражения стоит запомнить, поскольку они используются довольно часто. 4.1.3. Излучение Распределение света в пространстве — это функция положения и направ- ления. Рассмотрим, например, свет электрического фонарика с узким лучом ночью в пустой комнате — необходимо знать, откуда падает свет и в каком направлении. Эффект освещения можно представить через энергию, которая приходится на бесконечно малый участок поверхности, что выбирается в опре- деленной точке пространства с определенной ориентацией. Далее этот подход будет использован для выбора единицы измерения. Определение излучения Подходящая единица измерения распределения света в пространстве — это излучение, которое определяется как мощность (энергия за единицу времени), попадающая в определенную точку в за- данном направлении, на единичную поверхность, перпендикулярную направлению распространения света, на единицу телесного угла. Единица измерения излучения — это ватт на квадратный метр на стерадиан (Вт х м-2 х ср-1). Приведенное определение удобно для описания большинства базовых явлений в радиометрии. Маленький участок поверхности, расположен- ный по отношению к источнику во фронтальной плоскости, получает больше энергии, чем такой же участок, расположенный почти параллельно к направле- нию распространения света — энергия, которая попадает на участок, зависит как от того, насколько большим выглядит источник со стороны участка, так и от того, насколько большим выглядит участок со стороны источника. Необходи- мо помнить, что для учета этого явления поверхность при измерении излучения берется с учетом ракурса (т.е. перпендикулярно к направлению распростране- ния света).
Глава 4. Радиометрия — измерение света 113 Излучение — это функция положения и направления (хорошая модель, по- стоянно напоминающая об этом, — фонарик с узким лучом, который можно перемещать и вращать). Для данной точки Р и некоторого (возможно, нееди- ничного) вектора v излучение в точке Р в направлении v обычно обозначается через L(Pt v). Точка Р может лежать как в свободном пространстве, так и на поверхности. В последнем случае излучение в точке Р в сферических коорди- натах 6 и ф системы, ось z которой направлена вдоль нормали к поверхности, иногда обозначается через ЦР,0, ф). Вдоль прямой излучение постоянно В подавляющем большинстве задач, связанных со зрением, вполне оправда- но предположение, что свет не взаимодействует со средой, в которой распро- страняется, т.е. что система находится в вакууме. Излучение обладает очень полезным свойством: для двух точек Pi и Р2 (которые находятся в прямой ви- димости друг друга) излучение, покидающее точку Pi в направлении точки Р2, равно излучению, попадающему в точку Р2 со стороны точки Pi. Следующее доказательство может на первый взгляд показаться бессодержа- тельным, но его следует внимательно изучить, так как это — ключ к понима- нию ряда других выкладок. На рис. 4.3 показан участок поверхности, излучаю- щий в определенном направлении. Если излучение участка равно L(Pi,0,0), то энергия, которую этот участок передает бесконечно малому элементу телесного угла dw в направлении (0, ф) за время dt, равна L(Pi, 6,0)(cos0idAi)(do;) (dt). Это излучение, с учетом ракурса умноженное на площадь участка, умноженное на телесный угол, в который происходит излучение, и умноженное на время этого излучения. Рассмотрим теперь два участка, один в точке Pi с площадью cL4i, а другой в точке Р2 с площадью dA2 (см. рис. 4.3). Во избежание путаницы с угловыми системами координат, обозначим направление от точки Pi до точки Р2 как Р1Р2. Углы 01 и 02 определены на рис. 4.3. Излучение, покидающее точку Pi в направлении точки Р2, — это L(Pi, Р1Р2), а излучение, попадающее в точку Р2 со стороны Pi, — P(P2,PiP2). Из сказанного следует, что за время dt энергия, передаваемая из точки Pi в направлении точки Р2, равна d3Pi_2 — ЦР1, PiP2)(cos0id.Ai)(dw2(i)) (dt), где dcj2(1) — телесный угол, образованный участком 2 на участке 1 (энергия, излучаемая в этот телесный угол, прибывает на участок 2; вся остальная рассеивается в вакууме). Запись d3£i_2 означает, что задействованы три бес- конечно малых элемента. Из приведенного выше выражения для телесного угла
114 Часть I. Формирование изображений и модели изображений Рис. 4.3. Интенсивность света удобнее всего измерять излучением, поскольку излучение не умень- шается при распространении по прямой линии в вакууме (или на разумное расстояние в чистом воздухе). Доказательство этого следует из закона сохранения энергии следует, что , cos 62dAz ^2(1) = ---------• Таким образом, энергия, которая передается от 1 к 2, равна d3Е^2 = ЦР^Р^) (cosflicosflgX dt у / Так как средой в данном случае является вакуум, энергия не поглощается, и в 2 из 1 поступает такая же энергия, что была передана из 1 в направлении 2. Энергия, попадающая на участок 2 из 1, равна d3Sl_2 = L(P2,PlP2)(cOS02<bl2)(dWl(2)) (<Й) = Г / г> \ ( COS &2 COS Алл » л j. = ЦР2,Р1Р2) I -----5----- I dAidAzdt = \ г2 J — d3Ei-,2 = = L(Pi, Pd?) (<?t>s.e2^osgl-A dA2dA! dt. у тл J Из этого следует, что ЦР^Р^Ръ) = L(Pi, Р1Р2), поэтому вдоль прямой линии (без преград) излучение остается постоянным.
Глава 4. Радиометрия — измерение света 115 4.2. СВЕТ НА ПОВЕРХНОСТЯХ Когда свет попадает на поверхность, он может поглощаться, передавать- ся или рассеиваться; обычно имеют место все три явления. Например, свет, попадающий на кожу, может рассеиваться на тканях на различной глубине и отражаться от крови и меланина в них, может поглощаться или рассеивать- ся параллельно коже в пределах тонкого слоя жира, а затем выходить наружу в какой-то другой точке. Картина еще более усложняется способностью некоторых поверхностей по- глощать свет одной длины волны с последующим излучением света другой длины волны. Этот эффект, называемый флуоресценцией, общеизвестен: под рентгеновским излучением скорпионы излучают свет в видимом диапазоне; че- ловеческие зубы флуоресцируют бледно-голубым светом под действием ультра- фиолетового излучения (нейлоновое белье также обладает тенденцией к флу- оресценции, а вставные зубы обычно нет — по этим причинам ультрафиолет уже не используется на дискотеках); с помощью стиральных порошков, кото- рые флуоресцируют под действием ультрафиолетового излучения, одежде после стирки можно придать яркость. Кроме того, если поверхность нагреть доста- точно сильно, она будет излучать в видимом диапазоне. 4.2.1. Упрощения Разумно допустить, что все эффекты локальны, и их можно объяснить с помощью макроскопической модели без флуоресценции или излучения; назовем эту модель моделью локального взаимодействия. Это вполне ре- зонная модель для такого типа поверхностей и решений, которые обычно возникают в сфере компьютерного зрения. Перечислим характерные элементы этой модели. • Излучение, исходящее из точки, зависит только от излучения, попадаю- щего в эту точку (хотя направление излучения в точке на поверхности может измениться, будем считать, что от точки к точке оно изменяется не скачкообразно). • Считается, что весь свет, который излучает поверхность на данной длине волны, обусловлен падающим на эту поверхность светом этой же длины волны. • Считается, что поверхности не излучают сами по себе, поэтому источники света рассматриваются обособленно. 4.2.2. Функция распределения двунаправленного отражения Опишем связь между падающим и отраженным излучением. Это функция направления, по которому свет попадает на поверхность, и направления, по которому он отражается.
116 Часть I. Формирование изображений и модели изображений Плотность потока излучения Подходящая величина для описания полученной мощности — это плот- ность потока излучения, которая определяется как мощность падающего света на единицу площади без учета ракурса. Это определение означает, что на участок поверхности площадью dA, ко- торый освещается излучением Li(P, попадающим в дифференциальный элемент телесного угла du) с координатами (0£,<&), приходится плотность пото- ка излучения (l/dA)(Li(P,0i,</>i))(cos0idA)du) = Li(P, Qi, ф*) cos6idu>, Поэтому чтобы получить плотность потока излучения, нужно умножить излу- чение на коэффициент ракурса и на телесный угол. Главная особенность этой величины состоит в том, что можно вычислить всю мощность, которая попадает в точку поверхности, просуммировав плотность потока излучения по всей за- данной полусфере. Таким образом, получена естественная единица измерения поступающей мощности. ФРДО Самая общая модель локального отражения — это использование функции распределения двунаправленного отражения, для обозначения которой обыч- но применяется аббревиатура ФРДО. ФРДО определяется как отношение излучения в уходящем направлении к плотности падающего потока излучения, т.е. если бы поверхность, на дифференциальный элемент телесного угла du) с координатами 0.) которой приходится излучение Li(P,Gi,<f)i), отражала излучение LO(P, 6О, фо), то ее ФРДО имела бы такой вид: = г-Й Li(Р, Ui, фг) cos 6idu> ФРДО измеряется в обратных стерадианах (ср-1) и может иметь значение от О (в этом направлении свет не отражается) до бесконечности (единичное излуче- ние на выходе при произвольно малом падающем излучении). ФРДО на вход- ном и выходном направлениях симметрична — этот факт известен как принцип обратимости Гельмгольца.
Глава 4. Радиометрия — измерение света 117 Вычисление излучения поверхности через ее ФРДО Излучение поверхности, обусловленное потоком излучения в определенном направлении, легко найти из определения ФРДО: Ьо(Р,во,фо) = ры(0о, Фо, Gi, cos Gidu;. Излучение поверхности, обусловленное ее потоком излучения (независимо от направления потока), можно найти, просуммировав вклады света, падающего по всем направлениям: Ьо(Р,0о,фо)= I pbd(Go^o,6i^i)Li(P,6i^i)cos6idu. JQ Здесь Q — полусфера направлений падающего света. Условия на ФРДО ФРДО — это не произвольная симметричная функция четырех переменных. Предположим, что участок поверхности площадью dA освещается излучени- ем Li(P, Вт х м-2 х ср-1. Это означает, что суммарная энергия, которая попадает на поверхность за отрезок времени dt, равна Ьг(Р,в{,фд cos GiduJi^ dA dt= J Li(P, в^фд cosGi sinG^dGidфi^ dAdt. Мы приняли, что вся энергия, излучаемая с поверхности, выходит из той же точки, на которую падает излучение, и что сама поверхность энергии не гене- рирует. Следовательно, суммарная энергия, излучаемая с поверхности за этот отрезок времени, должна быть меньше или равна поступающей. Таким образом, получаем Li(P,6i, фд cos Giduii'j dAdt > LO(P, &о,фа) cos Goda>o^ dAdt. В то же время энергию, которая излучается поверхностью, можно записать как ( / / pbd(G<>^o,Gi^i)Li(P, 0i,0i) cosGiduJi cosGo(Ldo I dAdt. \JnoJni / Это значит, что, в общем случае, независимо от выбора Li для ФРДО должно быть справедливым следующее выражение: I Li(P,Gi^i) cosGidwi > I J pbd(Go,фо, Gi^i)Li{P,Gi^i) cosGidwiCosGodWo. J Qi JQoJQi Таким образом, ФРДО может быть большой для некоторых (но не всех) пар углов падения и отражения. Фактически, среднее значение должно быть доста- точно малым: на основании этого свойства можно доказать, что максимальное значение ФРДО, которая не зависит от угла, составляет 1/тг.
118 Часть I. Формирование изображений и модели изображений Рис. 4.4. Излучение объекта и плотность потока излучения изображения 4.2.3. Пример: радиометрия тонких линз Чтобы проиллюстрировать некоторые из введенных понятий, рассмотрим участок изображения 6А' с центром в точке Р', где с помощью тонкой линзы собирается свет, идущий от участка сцены ЛА с центром в точке Р (рис. 4.4), и свяжем излучение L объекта в точке Р с плотностью потока излучения Е изображения в точке Ра. Если через бы обозначить телесный угол, образован- ный ЛА (или ЛА') и центром О линзы, получится <5 A' cos а ЛА cos /3 ё A cos о / z \ Ли? = —---------- =---------следовательно, —- =------------I — J . (z'/cosct)2 (z/cosa)2 5A’ cos/3 \z' J Теперь площадь линзы диаметром d равна ^d2, и если через Я обозначить телесный угол, образованный линзой и точкой Р, получим 2 / \ тг d cosct к ( d\ „ Q _--------------= — I — 1 COS3 Ct. 4 (z/ cos a) 4 \z J Мощность 6P, излучаемую участком ЛА и попадающую на линзу, можно вы- разить через излучение L объекта: ёР = ЬПёА cos /3 = 2 ЬёА cos3 a cos 0. Мощность 5Р собирается линзой на участке 6А' плоскости изображения, и это вся мощность, которая попадает на этот участок. Таким образом, плотность 'Для краткости параметры излучения и плотности потока опущены, однако стоит помнить, что через L обозначено излучение в точке Р в направлении Р', а через Е — плотность потока излучения в точке Р'.
Глава 4. Радиометрия — измерение света 119 потока излучения изображения равна SP 7Г fd\2 SA Е =----= — I — | L----cos3 a cos /?. SA' 4 \zJ SA' Подставив в это уравнение значение SA/SA', получим (4-1) Это соотношение важно по нескольким причинам: во-первых, из него следует, что плотность потока излучения пропорциональна излучению объекта. Други- ми словами, то, что мы измеряем (Е), пропорционально тому, что нас инте- ресует (L). Во-вторых, плотность потока излучения пропорциональна площади линзы и обратно пропорциональна расстоянию от ее центра до плоскости изоб- ражения. Величина а — d/f — это относительная апертура, которая обратно пропорциональна числу /, определенному ранее. Из уравнения (4.1) следует, что если линза сфокусирована на бесконечность, то Е пропорционально а2 (в этом случае z' = /). Наконец, плотность потока излучения пропорциональ- на cos4 а и уменьшается с отклонением лучей света от оптической оси. При небольших значениях а этот эффект едва различим как для человеческого гла- за, так и для алгоритмов анализа изображения, поскольку глаза поразительно нечувствительны к гладким градиентам яркости, в то время как алгоритмы анализа обычно более восприимчивы к виньетированию — явлению, которое в большинстве случаев дает более сильный вклад, чем сцад по закону cos4 а. 4.3. ВАЖНЫЕ ЧАСТНЫЕ СЛУЧАИ Излучение — это очень “тонкая” величина, поскольку она зависит от угла. Эта универсальность иногда бывает важна — например, при описании распре- деления света в пространстве из рассмотренного выше примера с фонариком. Приведем еще один пример: зафиксируем компакт-диск и посветим фонариком на его нижнюю поверхность. Интенсивность и цвет света, отраженного от поверхности диска, очень сильно зависят от угла зрения на эту поверхность и от угла падения света. Попытайтесь провести опыт с CD самостоятельно и вы почувствуете, насколько странным может быть поведение отражающей поверх- ности, а также убедитесь насколько человеческий глаз привык к поверхностям, которые такого поведения не проявляют. Для многих поверхностей — хоро- шим примером может послужить хлопчатобумажная одежда — зависимость отраженного света от угла мала или вообще отсутствует, так что здесь очень полезной будет система величин, которые не зависят от угла.
120 Часть I. Формирование изображений и модели изображений 4.3.1. Диффузное отражение Если излучение поверхности не зависит от угла, то нет смысла описывать его с помощью величин, которые по определению зависят от направления. Под- ходящей величиной будет диффузное отражение, которое определяется как суммарная мощность, излучаемая точкой на поверхности на единицу площади по- верхности. Диффузное отражение, которое обычно обозначается как В(Р), измеряется в ваттах на квадратный метр (Вт х м-2). Чтобы найти диффузное отражение поверхности в точке, можно просуммировать излучение, уходящее с поверх- ности в этой точке по всей полусфере направлений. Следовательно, если Р — точка на поверхности с излучением Ь(Р^0,ф), то диффузное отражение в этой точке равно В(Р)= [ Ь(Р,6,ф) cos Jo где Q — это полусфера выходящих направлений, а множитель cos# превра- щает площадь с учетом ракурса в просто площадь (обратитесь еще раз к определениям); div, как и ранее, можно записать через 0 и ф. Диффузное отражение поверхности с постоянным излучением Следует запомнить один результат — связь между диффузным отражением и излучением участка поверхности, когда излучение не зависит от угла. В этом случае Lo(x, 0о,Фо) = LO(P). Теперь можно найти диффузное отраже- ние, просуммировав излучение, покидающее поверхность, по всем исходящим направлениям. В(Р) = [ LO(P) cos0dv = Jti r2* = LO(P) I I cos 6sin0dcf>d6 = Jo Jo = 7tLo(P). 4.3.2. Отражательная способность ФРДО — это “тонкая” величина, а измерения ФРДО обычно сложны, тре- буют больших затрат, и их не всегда можно повторить, так как процессы за- грязнения и старения поверхности могут сильно влиять на измерение ФРДО; например, после касания к поверхности на ней остается жир (с кончиков паль- цев) обычно в виде маленьких бороздок, которые могут действовать как линзы и вносить существенные изменения в направленное поведение поверхности. Свет, отражающийся от многих поверхностей, по большей части не зависит от угла отражения. Естественной мерой отражательных свойств поверхности в этом случае выступает отражательная способность, которая обычно обо- значается через рак и определяется так:
Глава 4. Радиометрия — измерение света 121 доля потока излучения, падающего в заданном направлении, которая отражается от поверхности независимо от направления отражения. Отражательную способность поверхности можно найти, просуммировав из- лучение, уходящее от поверхности по всем направлениям, и разделив его на плотность потока излучения в направлении падения света, что дает следующий результат: /а Л. X Jq Lo(PI @о, фо) COS 6odu)o = Ц(Р,е,.ф,)с^ё^,{ = _ f ( Lo(P,0o, фо) cos eo 1 _ Jq ( Li (P, 0i, фг ) COS Otdwi J = I Pbd(6o^o,et,$i) cos60da>0. Jq Эта величина безразмерна и принимает значения от 0 до 1. Отражательную способность можно рассчитать для любой поверхности. Для некоторых поверхностей она изменяется строго в зависимости от угла облуче- ния. Хорошим примером может послужить поверхность с мелкими симметрич- ными треугольными вырезами, черными с одной стороны и белыми с другой. Если эти вырезы достаточно малы, разумно будет воспользоваться макроскопи- ческим описанием поверхности как плоской, но с отражательной способностью, значение которой велико, если свет попадает на белые стороны, и меньше, если свет попадает на черные стороны. 4.3.3. Ламбертовские поверхности и альбедо Для некоторых поверхностей отражательная способность не зависит от направления облучения. Примеры таких поверхностей — хлопчатобумажная ткань, большинство покрытий, матовая бумага и матовые краски. Формальная модель описания — поверхность, ФРДО которой не зависит от направления отражения (а также, согласно принципу обратимости, от направления падения света). Это значит, что излучение, уходящее с поверхности, не зависит от угла. Такие поверхности называют поверхностями с идеальным рассеянием, или ламбертовскими поверхностями (в честь Иоганна Ламберта, который впервые сформулировал эту идею). Было бы естественно использовать диффузное отражение в качестве меры энергии, отражающейся от ламбертовской поверхности. Как говорилось выше, отражательная способность ламбертовских поверхностей не зависит от направ- ления. В подобных случаях отражательную способность часто называют коэф- фициентом диффузного отражения, или альбедо, и записывают как рл. Для ламбертовской поверхности с ФРДО рьа(!&о, Фо, Фг) ~ Р имеем Pd = I Pbd(&o, фо, &i, фг) COS eoda>o = Jn = I pcos0odwo = Jq
122 Часть I. Формирование изображений и модели изображений 1 cos 0О sin 6od0od(/)o = 7Гр, ИЛИ л _ pd Рфрдо — • 7Г Постарайтесь запомнить это выражение. Поскольку наше восприятие яркости соответствует (приблизительно!) мере излучения, то ламбертовские поверхности будут выглядеть почти одинаково ярко из любой точки, независимо от направления освещения. Таким образом, можно узнать, в каких случаях следует применять ламбертовское приближение. 4.3.4. Зеркальные поверхности Второй значительный класс поверхностей — это стеклянные или зеркаль- ные поверхности. Идеальный зеркальный отражатель ведет себя как идеаль- ное зеркало. Излучение, приходящее по определенному направлению, может отразиться только в зеркальном направлении, которое получается как отобра- жение направления падающего излучения относительно нормали к поверхно- сти. Обычно некоторая часть падающего излучения поглощается; на идеальной зеркальной поверхности в каждом направлении поглощается равная часть па- дающего излучения, остальное отражается в зеркальном направлении. ФРДО идеальной зеркальной поверхности имеет интересную форму (см. раздел упраж- нений), поскольку излучение, приходящее в определенном направлении, может отразиться только в одном направлении. Зеркальные лепестки Приближение идеального зеркального отражателя применимо к довольно малому числу поверхностей. Чтобы проверить, является ли плоская поверхность идеальным зеркальным отражателем, следует посмотреть, можно ли пользо- ваться ею в качестве зеркала. Хорошие зеркала чрезвычайно сложны в из- готовлении; до недавнего времени зеркала делали из полированного металла. Обычно, пока металл не будет тщательно отполирован и обработан, излуче- ние, приходящее в одном направлении, отражается по небольшому лепестку направлений вокруг зеркального направления. Это дает характерный эффект размывания. Хороший пример — плоское металлическое блюдо. В новом блюде можно увидеть искаженное изображение своего лица, но это блюдо было бы сложно использовать в качестве зеркала; в более старом блюде будет отражать- ся только набор искаженных пятен. Чем больше зеркальные лепестки, тем более темным и искаженным является зеркальное изображение (поскольку падающее излучение должно равномерно распределяться по всем направлениям отражения). Как правило, можно увидеть зеркальное отражение только относительно ярких объектов (например, источ- ников света). Таким образом, на блестящих поверхностях в зеркальном направ-
Глава 4. Радиометрия — измерение света 123 Рис. 4.5. Зеркальные поверхности обычно отражают свет по лепестку направлений вокруг зеркаль- ного направления; интенсивность отражения зависит от направления (слева). Форму этого лепестка можно описать с помощью модели Фонга через угол отклонения от зеркального направления лении от источников света видны, кроме других эффектов зеркального отра- жения, яркие пятна, которые часто называют бликами. Чтобы смоделировать форму зеркального лепестка можно воспользоваться моделью Фонга, соглас- но которой только точечные источники света отражаются зеркально (рис. 4.5). В этой модели излучение, исходящее от зеркальной поверхности, пропорцио- нально cosn(<50) = cosn(Oo—0s), где 0О ~~ угол, под которым излучение покидает поверхность, 0а — зеркальное направление, ап — параметр. Большие значе- ния п дают узкие лепестки и небольшое четкое отражение; малые значения дают широкие лепестки и крупное отраженное изображение с достаточно раз- мытыми краями. 4.3.5. Ламбертовская + зеркальная модель Относительно немногие поверхности можно считать либо идеально рассе- ивающими, либо совершенно зеркальными. ФРДО большинства поверхностей можно аппроксимировать комбинацией ламбертовской составляющей и зер- кальной, которая в основном имеет форму узкого лепестка. Обычно зеркальная составляющая оценивается через зеркальное альбедо. Опять же, поскольку отражение нельзя точно измерить, форма лепестка остается неопределенной. В этом случае излучение с поверхности в заданном направлении (поскольку теперь оно должно зависеть от направления) обычно аппроксимируется таким выражением: Ь(Р,0о,фо) = pd(P) [ Ь(Р,0^ф^со5б^ + ря(Р)Ь(Р,0в,фя)со&п(ея-6о), Jn где 6а, фа задает зеркальное направление, а ра — зеркальное альбедо. Точное значение величины зеркального излучения обычно не указывается. Использование этой модели полностью исключает из описания “слишком уз- кие” зеркальные лепестки, поскольку в подавляющем большинстве алгоритмов учитываются случайные малые имеющие оптимальную форму блики, вызван- ные источниками света. Поверхности со слишком узкими зеркальными лепест- ками (зеркала) дают очень подробные отражения. Подобным образом также исключаются “слишком широкие” лепестки, поскольку отражения, полученные с их помощью, было бы трудно идентифицировать.
124 Часть I. Формирование изображений и модели изображений 4.4. ПРИМЕЧАНИЯ В книгах [Francois Sillion, 1994] и [Nayar, Ikeuchi and Kanade, 19916] четко и понятно изложены радиометрические вычисления. Анализ отражения в тек- сте главы был достаточно поверхностным. Модель “зеркальное отражение плюс рассеяние” ввели Кук, Торренс и Спарроу ([Torrance and Sparrow, 1967], [Cook and Torrance, 1987]). Разнообразные модификации этой модели встречаются в компьютерном зрении и компьютерной графике. Модель отражения можно вывести, объединив статистическое описание неровностей поверхности и элек- тромагнитную теорию (см., например, [Beckmann and Spizzichino, 1987]) или модифицировав модель рассеяния (как в работах [Torrance and Sparrow, 1967], [Cook and Torrance, 1987]). Основное понятие, не рассмотренное в этой главе, — зеркальные блики, ко- торые дают обратное зеркальное рассеяние. Зеркальные блики обычно возни- кают на шероховатых поверхностях, причем большая часть поверхности ориен- тирована под значительным углом к макроскопической нормали к поверхности. Это приводит к появлению второго зеркального лепестка в данной области. Та- кие эффекты могут внести путаницу в алгоритмы расчета формы лепестков по отражению, если этот расчет производится достаточно строго. Обратное зер- кальное рассеяние происходит, когда свет от поверхности отражается в направ- лении источника, причиной чего обычно являются все те же зеркальные блики. Этот эффект может привести к усложнению алгоритмов вычисления формы по отражению. Некоторые модели отражательной способности, где учтены эти яв- ления, описаны в [Tagare and de Fiegueiredo, 1991]. Обычно неровные поверхности считают ламбертовскими, однако это не все- гда так, поскольку неровные поверхности часто имеют локальные эффекты за- тенения, которые приводят к достаточно сильной зависимости отраженного из- лучения от угла освещения. Например, оштукатуренная стена, если ее осве- щать почти параллельно, выглядит как мозаика из светлых и темных пятен, где грани поверхности направлены в сторону света или затенены. Если на эту же стену свет будет падать параллельно нормали, мозаика исчезнет. При опи- сании на более высоком уровне подобные эффекты обычно усредняются, чтобы отклонения неровных поверхностей от ламбертовской модели можно было счи- тать незначительными (подробнее см. [Koenderink, van Doorn, Dana and Nayar, 1999], [Nayar and Oren, 1993, 1995], [Oren and Nayar, 1995] и [Wolff, Nayar and Oren, 1998]). Еще один пример объекта, который нельзя описать посредством простой макроскопической модели поверхности, — цветочное поле. Удаленному наблю- дателю это поле может показаться “поверхностью” с достаточно странными свойствами: если смотреть на это поле по направлению нормали, то главным образом видны цветы; при взгляде по касательной будут видны и цветы, и стеб- ли, т.е. с изменением направления цвет будет сильно меняться (это явление исследовано в работе [Leung and Malik, 1997]).
ТАБЛИЦА 4.1. Справочная таблица: терминология радиометрии Тема Что необходимо знать Ракурс Большая площадь, на которую смотрят почти параллельно касатель- ной, выглядит точно так же, как и маленькая, на которую смотрят прямо. Это явление имеет большое значение, поскольку два разных приемника будут получать равное излучение от источника, если они выглядят со стороны источника абсолютно одинаково; два разных ис- точника будут одинаково действовать на приемник, если со стороны приемника они выглядят абсолютно одинаково Излучение Определение: энергия, попадающая в точку в заданном направле- нии за единицу времени на единицу площади, перпендикулярной к направлению распространения света, на единицу телесного угла. Единица измерения: Вт х м-2 х ср-1. Применение: для описания света, распространяющегося в пространстве; для отражения света от поверхности, когда оно сильно зависит от направления Плотность потока излучения Определение: суммарная падающая мощность на единицу площади поверхности. Единица измерения: Вт х м~2. Применение: для опи- сания света, падающего на поверхность Диффузное отражение Определение: суммарная мощность, исходящая из точки на поверхно- сти на единицу площади поверхности. Единица измерения: Вт хм-2. Применение: для описания света, отраженного от рассеивающей по- верхности ФРДО Определение: отношение излучения в определенном направлении к плотности потока падающего излучения. Единица измерения: ср-1. Применение: для описания отражения от всей поверхности, если от- ражение сильно зависит от направления Отража- тельная способность Определение: доля излучения, падающего в заданном направлении, которая отражается от поверхности независимо от направления отра- жения. Единица измерения: безразмерная величина. Применение: для описания отражения от поверхности, когда направление не имеет значения Альбедо Определение: отражательная способность рассеивающей поверхно- сти. Единица измерения: безразмерная величина. Применение: для описания рассеивающей поверхности Рассеивающая поверхность; ламбертовская поверхность Определение: поверхность, ФРДО которой постоянна. Примеры: хлопчатобумажная ткань; многие шероховатые поверхности; многие краски и бумага; поверхности, относительная яркость которых не за- висит от угла зрения Зеркальная поверхность Определение: поверхность, которая ведет себя как зеркало. Приме- ры: зеркала; отполированный металл Блики Определение: маленькие яркие участки поверхности, возникающие вследствие наличия зеркальной составляющей ФРДО. Примеры: ча- сто наблюдаются на пластических поверхностях, на шероховатых ме- таллических поверхностях, на некоторых красках, на блестящей тка- ни. Важная особенность: при изменении угла зрения блики переме- щаются по поверхности
126 Часть I. Формирование изображений и модели изображений Задачи 4.1. Сколько стерадиан содержит полусфера? 4.2. Доказано, что в непоглощающей среде излучение не уменьшается вдоль прямой линии (это делает его весьма удобной величиной). Покажите, что если в качестве параметра взять мощность на единицу площади с учетом ракурса (иными словами, плотность потока излучения), то эта величина будет изменяться вдоль прямой с расстоянием. Насколько существенна эта разница? 4.3. Поглощающая среда. Допустим, что наш мир представляет собой изо- тропную поглощающую среду. Хорошую простую модель такой среды можно получить, рассмотрев прямую, вдоль которой распространяется излучение. Если излучение по прямой в точке х равно Лг, то в точ- ке х 4- dx оно будет равно N — (adz). а) Покажите как изменится излучение при переходе в этой среде от одного участка поверхности к другому. б) Теперь качественно опишите распределение света в комнате, запол- ненной такой средой, для а малых и больших положительных чисел. Комната имеет форму куба, а источник света — маленький участок в центре потолка. Помните, что если а большое и положительное, то на стены комнаты попадет очень мало света. 4.4. Выведите связь между излучением сцены и плотностью потока излучения изображения для камеры-обскуры с отверстием диаметра d. 4.5. Выведите связь между излучением сцены и плотностью потока излучения изображения для сферической камеры с отверстием диаметра d. 4.6. Дайте общее определение поверхностей, которые не являются ни лам- бертовскими, ни зеркальными, используя пример внутренней стороны компакт-диска. Отметим, что довольно большое число биологических ор- ганизмов имеет голубой цвет. Назовите хотя бы две причины, по которым организму выгодно иметь неламбертовские поверхности. 4.7. Покажите, что для идеальной рассеивающей поверхности отражающая способность постоянна; покажите, что если поверхность обладает по- стоянной отражающей способностью, то это идеально рассеивающая поверхность. 4.8. Покажите, что ФРДО идеальной зеркальной поверхности равна Pbd(#o, Фо, Oi, ф{) = pe(0i){2(5(sin2 0О - sin2 {<5(<£о - <^тг)}, где pa(0i) — доля излучения, уходящего с поверхности. 4.9. Почему зеркальное отражение ярче рассеянного? 4.10. ФРДО поверхности постоянна. Какое максимально возможное значение этой константы? Допустим, известно, что поверхность поглощает 20% излучения, падающего на нее (остальное отражается); чему равна ФРДО? 4.11. Глаз реагирует на излучение. Объясните, почему нам часто кажется,что яркость ламбертовских поверхностей не зависит от угла зрения. 4.12. Покажите, что телесный угол, образованный сферой радиуса с на рас- стоянии г от центра сферы, приблизительно равен тг(^)2 при г^>е.
5 Источники, тени и затенение На степень яркости поверхности влияют два фактора: их альбедо и то, сколько света на них попадает. Модель нахождения яркости объекта обычно называют моделью затенения. Модели затенения имеют большое значение, поскольку с помощью соответствующей модели затенения можно интерпретировать значе- ния пикселей. Правильно подобрав модель затенения, можно восстанавливать объекты и их альбедо всего по нескольким изображениям. Более того, можно интерпретировать тени и объяснять их загадочное и редко замечаемое отсут- ствие на большинстве кадров, сделанных в помещении. 5.1. КАЧЕСТВЕННАЯ РАДИОМЕТРИЯ Рассмотрим, как будут выглядеть “яркие” поверхности при различном осве- щении, и как эта “яркость” зависит от локальных свойств поверхности, от формы поверхности и от освещения. Из главы 4 следует, что различные источ- ники могут оказывать одинаковое действие на поверхность. Наиболее удачный способ проанализировать этот вопрос — рассмотреть, как выглядит источник со стороны поверхности. Такая качественная радиометрия — один из тех методов, которые кажутся простыми (никакой сложной математики), но ока- зываются чрезвычайно действенными. В некоторых случаях эти методы могут
128 Часть 1. Формирование изображений и модели изображений Рис. 5.1. Геометрия для нахождения качественного радиометрического решения при рассмотрении мира с позиции участка поверхности. Хотелось бы знать, какова яркость на двух различных бес- конечно высоких стенах. В этой геометрии бесконечно высокая матовая черная стена перекрывает вид на пасмурное небо, которое представляет собой полусферу бесконечного радиуса и однородной “яркости". Справа указаны направления, по которым из соответствующих точек виден или не виден источник, полученные проектированием полусферы на круг направлений (или, что то же самое, при взгляде на нее сверху). Поскольку для каждой точки бралась одна и та же исходная полусфера, яркость должна быть одинаковой дать качественное описание “яркости”, даже не требуя определения значения этого термина. Напомним (см. раздел 4.1.1 и рис. 4.1), что участок поверхности восприни- мает окружающую среду по полусфере направлений от этого участка. Излуче- ние, попадающее на этот участок с определенного направления, проходит через точку на полусфере. Если у двух участков поверхности эти полусферы одинако- вые, то они должны облучаться одинаково независимо от внешней среды. Это значит, что любая разница в “яркости” участков с одинаковыми полусферами направлений — следствие разных свойств поверхностей. В частности, если два участка поверхности с одинаковыми БФРО (бинарная функция распределения отражения) имеют одинаковые полусферы направлений, то их излучение также будет одинаковым. В работах Ламберта проанализировано распределение “яркости” по однород- ной плоскости, на которой стоит бесконечно высокая черная стена и которая освещается пасмурным небом (см. рис. 5.1). В этом случае каждая точка на поверхности имеет одну и ту же полусферу направлений — половина этой полусферы перекрывается стеной, а другая половина “видит” однородное небо; поскольку плоскость также однородна, то “яркость” всех точек должна быть одинаковой.
Глава 5. Источники, тени и затенение 129 Рис. 5.2. Возьмем черную матовую бесконечно тонкую, полубесконечную стену на бесконечной бе- лой плоскости (как показано слева). В этой геометрии также имеется пасмурное небо бесконечного радиуса и однородной “яркости”. На рисунке показано, как определяются кривые с одинаковой “яр- костью” на плоскости. Эти кривые, изображенные справа, построены при рассмотрении плоскости сверху; стена показана жирной линией. На линии наложены обозначения полусфер направлений некоторых из изофот (кривых равной яркости). Вдоль этих линий полусфера направлений остается постоянной (что можно доказать геометрически), но при переходе между кривыми она меняется Второй пример несколько сложнее: бесконечно тонкая черная стена с беско- нечной длиной только в одном направлении, которая находится на бесконечной плоскости (рис. 5.2). Качественное описание — это определение того, как вы- глядят линии равной “яркости”. Из рис. 5.2 следует, что все точки любой пря- мой, проходящей через точку р, имеют одну и ту же полусферу направлений и поэтому должны иметь одну и ту же “яркость”. Более того, распределение “яркости” на плоскости должно быть симметричным относительно прямой, на которой стоит стена — самые яркие точки будут находиться на продолжении линии стены, а самые темные — у ее основания. 5.2. ИСТОЧНИКИ СВЕТА И ИХ ДЕЙСТВИЕ 5.2.1. Радиометрические свойства источников света Определим источник света как нечто, излучающее непосредственно гене- рируемый (а не только отражаемый) свет. Для описания источника необходимо описать излучение, исходящее от него в каждом направлении. Обычно излуче- ние, которое генерирует сам источник, рассматривают отдельно от отраженного излучения (это потому, что отраженный свет, в отличие от генерируемого света, зависит от среды).
130 Часть I. Формирование изображений и модели изображений Полностью описывать излучение, которое исходит от источника в каждом направлении, нет необходимости. Привычнее считать, что источники дают по- стоянное излучение во всех направлениях (возможно, имеется некоторое число направлений с нулевым излучением, как, например, у прожектора). Соответ- ствующей величиной в этом случае будет светимость, определяемая как энергия излучения, которая генерируется за единицу времени единицей площади излучающей поверхности. Светимость подобна плотности потока излучения, и ее можно рассчитать следующим образом: Е(Р) = I Le (Р, 6О, фо) cos 0О dw. Помимо описания светимости необходимо знать геометрию источника, силь- но влияющую на пространственное распределение света вокруг источника и на тени, которые отбрасывают объекты вблизи источника. Можно назвать две при- чины, по которым геометрия источников обычно принимается достаточно про- стой: во-первых, многие искусственные источники можно достаточно эффектив- но представить как точечные, линейные или плоские; во-вторых, даже источ- ники с простой геометрией могут производить удивительно сложные эффекты. 5.2.2. Точечные источники В качестве обычного приближения часто принимается, что источник све- та — это очень маленькая сфера, фактически точка; такие источники называют точечными. Это естественная модель, поскольку многие источники физически малы по сравнению со средой, в которой они находятся. Модель действия то- чечного источника можно вывести, представив источник как очень маленькую сферу, каждая точка которой излучает свет, а светимость по всей поверхности сферы одинакова. Пусть участок поверхности (часто называемый лоскутом) освещается сфе- рой радиуса е, которая находится на расстоянии г от него, и € С г (рис. 5.3). Предположение о том, что сфера находится на большом расстоянии от участка по сравнению с ее радиусом, почти всегда применимо к реальным источникам. Теперь телесный угол, который образует источник, равен Па. Он приблизитель- но пропорционален величине г2 Распределение освещенности, которое получается при попадании света от ис- точника на полусферу, также (грубо говоря) изменяет свой масштаб. Если сфера отдаляется, то лучи, покидающие участок поверхности и попадающие на сферу, сближаются (грубо говоря) равномерно, и освещенность изменяется незначи- тельно (в область добавляется лишь небольшое количество новых лучей; вклад
Глава 5. Источники, тени и затенение 131 Лоскут постоянного излучения, обусловленного источником Рис. 5.3. Участок поверхности “видит” отдаленную сферу небольшого радиуса; сфера освещает небольшой участок на полусфере направлений. В тексте приводятся рассуждения о масштабном поведении этого участка при отдалении сферы или ее увеличении и выводится выражение, описы- вающее поведение точечного источника этих лучей будет небольшим, поскольку они приходят в направлении, касатель- ном сфере). На границе, где б стремится к нулю, новые лучи не добавляются. Диффузное отражение, вызванное источником, можно найти интегрирова- нием излучения источника, умноженного на cos^, по элементу телесного угла. Если с стремится к нулю, то участок уменьшается и cosOi приближается к по- стоянному значению. Если р — альбедо поверхности, то из сказанного следует, что выражение для диффузного отражения, обусловленного точечным источни- ком, выглядит следующим образом: р Есозв, где Е — светимость источника, проинтегрированная по малому участку. Более точное выражение для Е нам не требуется (для его получения нужно было бы вычислить упомянутый выше интеграл).
132 Часть I. Формирование изображений и модели изображений Близлежащие точечные источники Зависимость от угла в приведенной выше формуле можно записать че- рез N(P) (единичную нормаль к поверхности) и S(P) (вектор, соединяющий точку Р с источником, длина которого равна с2Е) и найти стандартную модель близлежащего точечного источника: P<(P)N{P}S(P} РЛ( 1 г(Р)1 Это крайне удобная модель, поскольку она выражает явную связь между диф- фузным отражением и формой (член, содержащий нормаль). В этой модели S обычно называют вектором источника. Отметим, что часто (и неправильно!) в этой модели не учитывается зависимость от расстояния до источника. Точечный источник на бесконечности Солнце находится далеко от нас, поэтому члены 1/г(Р)2 и S(P) можно считать постоянными. В этом случае говорят, что точечный источник нахо- дится на бесконечности. Если все интересующие нас участки поверхности расположены близко друг к другу по сравнению с расстоянием до источника, тогда т(Р) = г0 + Дг(Р), где г0 » Дг(Р). Более того, S(P) = So + AS(P), где | So |»| AS(P) |. Получаем: N • S(P) = N • (So + AS(P)) =~ r(P)2 (ro + Ar(P))2 ~ rg Теперь и So, и го постоянны и нет смысла сохранять их в выражении в явном виде. Вместо этого можно ввести S = (1/г2)5о, и модель диффузного отраже- ния, обусловленного точечным источником, приобретает следующий вид: В(Р) = pd(P)(N • S). Вектор S называют вектором источника. Обычно в этой модели соответству- ющий вектор источника подбирают с помощью логических рассуждений, а не вычисляют его значение через светимость источника и его геометрию. Выбор модели точечного источника Точечный источник на бесконечности — это хорошая модель, например, для солнца, поскольку телесный угол, который образует солнце, мал, и его мож- но считать постоянным независимо от положения источника в поле зрения (подобная проверка доказывает, что выбранное приближение применимо). Ес- ли использовать, например, линейные датчики с неизвестным коэффициентом усиления, то можно переопределить понятие вектора источника, внеся в него интенсивность источника и неизвестный коэффициент усиления — обычно так и делается без дополнительных оговорок. Как можно ожидать из построения, модель точечного источника на бес- конечности неприменима в том случае, если расстояние между объектами
Глава 5. Источники, тени и затенение 133 имеет тот же порядок величины, что и расстояние до источника. В этом случае нельзя применять ряд приближений, в которых считается, что диффуз- ное отражение, обусловленное точечным источником, не уменьшается с увели- чением расстояния до источника. Суть проблемы несложно понять, если рассмотреть, как выглядит источник со стороны различных участков поверхности. Чем ближе находится участок к источнику, тем больше должен казаться источник (каким бы малым не был его радиус); это значит, что диффузное отражение, обусловленное источником, должно возрастать. Если источник достаточно удален — например, солнце — этим эффектом можно пренебречь, поскольку относительный размер источника не изменяется при любом разумном движении. В то же время для таких систем, как электрическая лампа в центре ком- наты, телесный угол, образуемый источником, увеличивается обратно пропор- ционально квадрату расстояния, и это значит, что диффузное отражение, обу- словленное этим источником, будет вести себя точно так же. В данном случае подходящей моделью будет точечный источник из раздела 5.2.2. Недостаток этой модели в том, что из нее следует, что диффузное отражение резко меняет- ся в пространстве, а это не соответствует реальным наблюдениям. Например, если разместить точечный источник в центре куба, то из модели следует, что диффузное отражение в углах куба будет приблизительно равно одной третьей от того, что будет в центре каждой стороны — но углы реальной комнаты никогда не бывают настолько темными. На практике в модели близлежащего точечного источника для учета этого явления принято пренебрегать членом, зависящим от расстояния — это некорректно с точки зрения радиометрии, но модель становится точнее. Объяснение такого кажущегося противоречия будет дано позднее, после рассмотрения моделей затенения. 5.2.3. Линейные источники Геометрия линейного источника — это прямая линия; в качестве нагляд- ного примера можно привести флуоресцентную лампу. Линейные источники не очень распространены в природе или в модельной среде, поэтому в данной книге они рассмотрены кратко. Основной интерес эта модель представляет в задачах по радиометрии; в частности, диффузное отражение участков, расположенных в разумной близости от линейного источника, меняется как величина, обратная расстоянию до источника (а не квадрату расстояния). Объяснение этого факта интереснее, чем само явление. Представим линейный источник как тонкий ци- линдр диаметра е. Предположим, что линейный источник имеет бесконечную длину, и рассмотрим участок, который находится во фронтальной плоскости относительно источника (рис. 5.4). На рис. 5.4 приведен внешний вид источника со стороны участка 1; теперь передвинем участок ближе и рассмотрим участок 2 — ширина области полу- сферы, соответствующей источнику, изменилась, в отличие от длины (так как длина источника бесконечна). В свою очередь, поскольку ширина приблизи- тельно равна е/r, диффузное отражение, обусловленное источником, должно
134 Часть I. Формирование изображений и модели изображений Рис. 5.4. Диффузное отражение, обусловленное линейным источником, в точках, которые располо- жены близко к источнику, уменьшается обратно пропорционально расстоянию. Слева: два участка, выходящие на бесконечно длинный узкий цилиндр с постоянной светимостью по всей поверхности и диаметром с. Справа: вид источника со стороны каждого участка, изображенный как внут- ренняя сторона полусферы направлений (вид снизу). Обратите внимание, что длина источника на этой полусфере не меняется, в отличие от ширины (меняется как с/т) уменьшаться обратно пропорционально расстоянию. Несложно видеть, что для источника, длина которого не бесконечна, рассуждения применимы до тех пор, пока участок находится на разумно близком расстоянии от источника. 5.2.4. Плоские источники Плоский источник — это плоскость, которая излучает свет. Плоские ис- точники очень важны по двум причинам. Во-первых, они достаточно часто встречаются в природе (хороший пример — пасмурное небо) и в искусственной среде (например, прямоугольные флуоресцентные лампы на потолках мно- гих предприятий). Во-вторых, исследование плоских источников позволяет объяснить различные эффекты затенения и взаимного отражения. Плоские ис- точники обычно представляют в виде участков поверхности, излучение которых не зависит от положения и направления, и описываются их светимостью. Как и для линейных источников, в данном случае можно доказать, что для точек, не слишком удаленных от источника, диффузное отражение, обуслов- ленное плоским источником, не зависит от расстояния до источника. Это про- исходит потому, что для достаточно большой (по сравнению с расстоянием до источника) поверхности, площадь, которую источник образует на какой-либо полусфере направлений, остается приблизительно той же, когда мы приближа- емся к источнику или удаляемся от него. Этим объясняется распространенность плоских источников в осветительной инженерии — они обычно дают достаточ- но однородное освещение. Для наших целей необходимо более точное описание диффузного отражения, обусловленного плоским источником, поэтому вычис- лять интеграл все же придется.
Глава 5. Источники, тени и затенение 135 Рис. 5.5. Рассеивающий источник освещает рассеивающую поверхность. Светимость источника — E(Q), требуется найти диффузное отражение участка, обусловленное данным источником. Это можно сделать с помощью преобразования интеграла от падающего излучения по поверхности в интеграл по площади источника. Такое преобразование удобно, поскольку позволяет не рассмат- ривать различные диапазоны углов для различных поверхностей. Впрочем, при таком подходе все же появляется интеграл, который обычно нельзя найти аналитически Точное диффузное отражение, обусловленное плоским источником Пусть имеется участок рассеивающей поверхности, который освещается плоским источником со светимостью E(Q) в точке источника Q. Вместо того чтобы записывать углы через координаты, введем вектор QP, идущий от Q к Р (остальные обозначения см. на рис. 5.5). Диффузное отражение поверхности можно найти, просуммировав падающее излучение по всем направлениям. Этот интеграл можно преобразовать в интеграл по источнику: B(P) = W(P) [ L.fP.Q?') cos Oi div = = pd(P) f Le(Q, Q?) cosOidiv = jq = Pd(P) J COsffi =
136 Часть I. Формирование изображений и модели изображений = Pd(P) f (-E(Q)] cosfli fcos0a^ J ПО источнику \ / \ COS0iCOS0e = pd(P) / E(Q)-----------—------dAQ. J по источнику ** ' Данное преобразование применимо, поскольку излучение вдоль прямой линии постоянно и поскольку E(Q) = (1/тг)£е(<Э). Последнее важно, так как те- перь нет необходимости выбирать подходящую сферическую систему коорди- нат. Впрочем, несмотря на преобразования, интегралы, описывающие действие плоских источников, обычно очень трудно или даже невозможно вычислить в явном виде. 5.3. ЛОКАЛЬНЫЕ МОДЕЛИ ЗАТЕНЕНИЯ Физика света дает возможность узнать, насколько яркими будут объекты (и почему), и помогает извлечь из моделей информацию об объектах. На дан- ный момент известно диффузное отражение участка, обусловленное источни- ком, но это еще не модель затенения. Излучение может попадать на участок по- верхности и другим путем (например, после отражения от других участков по- верхности); необходимо знать, какие компоненты при этом следует учитывать. Самая простая в использовании модель — это локальная модель затенения, где диффузное отражение на участке поверхности представляется как суммар- ное диффузное отражение, обусловленное только светом, который дает непо- средственно сам источник. Таким образом, предполагается, что свет не отража- ется от поверхности к поверхности, а исходит от источника, попадает на какую- то поверхность и направляется прямо в камеру. Эта модель совершенно не фи- зическая, но легко поддается анализу. Она допускает ряд алгоритмов и теорий (см. раздел 5.4). К сожалению, такая модель часто дает очень неточные пред- сказания. Более того, весьма трудно определить область ее применения. Альтернативный подход — учитывать все излучение (раздел 5.5). В такой модели рассматривается излучение, поступающее от источников и излучающих поверхностей. Это точная модель с физической точки зрения, но с ней доста- точно сложно работать. 5.3.1. Локальные модели затенения для точечных источников Локальную модель затенения для системы точечных источников можно най- ти, записав диффузное отражение, обусловленное светом, который непосред- ственно генерируется источниками. В результате В(Р)= 22 В.(Р), я£ источники, видные из Р где Вз(-Р) — диффузное отражение, обусловленное источником s. Обратите внимание, что если все источники будут точечными на бесконечности, это вы-
Глава 5. Источники, тени и затенение 137 Рис. 5.6. Тени, отбрасываемые точечным источником на плоскость, выглядят просто. Собствен- ная тень — следствие удаленности поверхности от света, а отбрасываемая тень — преграждения источника с точки зрения удаленной поверхности ражение приобретет такой вид: В(Р) = 52 Pd(P)N(P) s.. ее источники, видные из Р Таким образом, если ограничиться изучением области, где все точки видят одни и те же источники, можно сложить все векторы источников и получить один условный источник, который будет давать такой же суммарный эффект. Связь между формой и затенением здесь довольно проста: диффузное отражение — это мера одного компонента нормали к поверхности. Для точечных источников, которые находятся не на бесконечности, модель приобретает вид в € источники, видимые из Р ' ' где га(Р) — расстояние от источника до Р; присутствие этого члена означа- ет, что связь между формой и затенением сложнее, чем могло показаться на первый взгляд. Возникновение теней В локальной модели затенения тени появляются, когда участок не может видеть один или несколько источников. В этой модели точечные источники по- рождают ряд теней с четкими границами; особенно темны затененные области, откуда не виден ни один источник. Тени, отбрасываемые одним источником,
138 Часть I. Формирование изображений и модели изображений Плоский источник Затеняющий объект Рис. 5.7. Плоские источники порождают сложные тени со сглаженными границами, поскольку если смотреть на источник из точки, находящейся на участке поверхности, то он медленно скрывается за затеняющим объектом. Области, откуда источник не виден вообще, называют тенью; области, откуда видна некоторая часть источника, называют полутенью. Представьте себя лежащим на спине и смотрящим вверх. Из точки 1 вам будет виден весь источник; из точки 2 вы сможете увидеть его часть; а из точки 3 вы его не увидите могут быть четкими и черными в зависимости от размера источника и альбе- до остальных соседних поверхностей (которые могут отражать свет в эту тень и делать ее границы размытыми). В XIX веке было популярно отбрасывать та- кие тени на бумагу, а затем обводить их карандашом, в результате чего полу- чались силуэты, которые иногда еще можно увидеть в антикварных магазинах. Геометрия тени, отбрасываемой точечным источником на плоскость, анало- гична геометрии наблюдения через перспективную камеру (рис. 5.6). Любой участок поверхности будет находиться в тени, если луч, идущий от участка к источнику, проходит через объект. Это означает, что существует два вида тени: 1) собственная тень возникает, когда поверхность удалена от источника света, и луч от участка поверхности к источнику идет перпендикулярно поверх- ности; 2) отбрасываемая тень — это когда источник неожиданно исчезает за затеняющим объектом. Отметим, что тени, отбрасываемые на искривленную поверхность, могут иметь чрезвычайно сложную геометрию. Если источников много, то тени выглядят светлее (кроме тех точек, откуда не виден ни один источник), и может существовать множество качественно раз- ных областей тени (каждый источник отбрасывает свою собственную тень — некоторые точки могут видеть только один источник). Один из примеров этого явления можно наблюдать при телевизионной трансляции футбольных матчей.
Глава 5. Источники, тени и затенение 139 Поскольку стадион освещается множеством ярких отдаленных точечных источ- ников — прожекторов, равномерно распределенных по всему периметру стадио- на, — вокруг каждого игрока образуется набор равномерно окружающих его те- ней. При перемещении игрока по полю эти тени обычно становятся темнее или светлее, чаще всего потому, что освещение, обусловленное другими источника- ми и взаимным отражением в области тени, увеличивается или уменьшается. 5.3.2. Плоские источники и их тени Локальная модель затенения для системы плоских источников намного сложнее, поскольку участки могут наблюдать только часть данного источника. Если использовать терминологию с рис. 5.5, модель приобретает такой вид: = Е / = диффузное отражение источника > — вевс« источники видимая часть источника a J Г cosflqcosfl, 1 / SE(Q)-----±2-----dAQ f • аевсе источники Jвидимая часть источника з I 7ГГ ) Обычно считается, что Е постоянно по всему источнику. Плоские источники не дают темных теней с четкими границами. Это проис- ходит потому, что при перспективном рассмотрении участка источник медленно появляется из-за затеняющего объекта (вспомните лунное затмение — это точ- ная аналогия). Принято различать точки в полной тени, которые не могут видеть источник вообще, и точки в полутени, которые видят часть источника. Подавляющее большинство источников в помещении — плоские источники той или иной формы; такие явления очень легко наблюдать, поднеся руку близко к стене и посмотрев на тень, которую она отбрасывает. Будет видна темная се- редина, которая становится больше при приближении руки к стене (это тень), окруженная более светлой областью с нечеткими границами (полутень). Соот- ветствующая геометрия показана на рис. 5.7. 5.3.3. Естественное освещение Одна проблема, связанная с локальной моделью затенения, заметна сразу: данная модель предсказывает, что некоторые области тени будут относительно темными, поскольку они не видят источник. Это предсказание почти никогда не сбывается, поскольку тени освещаются светом, исходящим от других рассеива- ющих поверхностей (это явление может иметь огромное значение). В комнатах со светлыми стенами и плоскими источниками тень можно увидеть, только под- неся объект очень близко к стене или к источнику. Это происходит потому, что участок стены видит все остальные стены комнаты; до тех пор, пока объект не будет находиться слишком близко к стене, он перекрывает только небольшую часть видимой полусферы направлений каждого участка. При определенных обстоятельствах суммарное излучение, которое получает участок поверхности от других участков, почти постоянно и приблизитель-
140 Часть I. Формирование изображений и модели изображений но равномерно распределено по полусфере направлений. Это справедливо для внутренней поверхности сферы с постоянным распределением диффузного от- ражения (что следует из симметрии) и почти справедливо для внутреннего по- мещения комнаты с белыми стенами (если моделировать куб подобно сфере). В таких средах иногда можно построить модель действия остальных участ- ков, добавив к диффузному отражению каждого участка член, отвечающий за естественное освещение. Существует два способа определения этого члена. Первый: если все участки видят одинаковые части окружающего мира (на- пример, внутренняя поверхность сферы), необходимо добавить один и тот же постоянный член к диффузному отражению каждого участка. Величина этой добавки обычно просто угадывается. Второй способ: если одни участки видят большую или меньшую часть окружающего мира по сравнению с другими (когда какие-то части окружаю- щей среды частично перекрывают поле зрения участка — например, участок, который находится на дне желобка), это нужно иметь в виду, для чего пона- добится модель окружающей среды с учетом перспективы данного участка. Представим окружающую среду как большой удаленный многогранник с по- стоянным диффузным отражением, причем из некоторых участков поверхности этот многогранник виден частично (см. рис. 5.8). В результате получится, что для участков, которые видят меньшую часть окружающей среды, член, отвечающий за естественное освещение, будет меньше. Эта модель часто ока- зывается точнее, чем простое прибавление постоянного члена, отвечающего за естественное освещение. К сожалению, из данной модели намного труднее по- лучить нужную информацию (пожалуй, настолько же сложно, как и из общей модели затенения). 5.4. ПРИЛОЖЕНИЕ: ФОТОМЕТРИЧЕСКОЕ СТЕРЕО Попытаемся восстановить участок поверхности по ряду изображений, по- лученных при различном освещении. Воспользуемся ортогональной камерой и выберем систему координат таким образом, чтобы точка (х, у, z) простран- ства проектировалась в точку (х,у) изображения (описываемый метод приме- ним и для других типов камер, которые перечислены в главе 1). В этом случае, чтобы определить форму поверхности, нужно знать ее глуби- ну. Выразим поверхность как (х,у, — представление в виде участков Монга (Monge), названное так в честь французского военного инженера, впер- вые применившего его на практике (рис. 5.9). Это представление привлекает тем, что для данных координат изображения можно определить единственную точку на поверхности. Обратите внимание, что для определения размеров объ- емного тела нужно восстановить несколько участков, чтобы увидеть и обратную сторону объекта. Фотометрическое стерео — это метод, помогающий найти представление участка Монга по информации, полученной из изображения. В этот метод вхо- дит логическое выведение значения интенсивности изображения для несколь-
Глава 5. Источники, тени и затенение 141 Рис. 5.8. Естественное освещение — член, который добавляется к предсказанному диффузному отражению в локальной модели затеиения для учета эффекта диффузного отражения от отдален- ных отражающих поверхностей. Для системы наподобие внутренней поверхности сферы или куба (слева на рисунке), где из каждой точки участка видно примерно одно и то же, в модель вводится постоянный член, описывающий естественное освещение. Б более сложных системах из некоторых участков поверхности видно намного меньше, чем из других. Например, с участка на дне желобка на правом рисунке видна относительно небольшая часть окружающей среды, которую мы пред- ставляем как бесконечный многогранник с постоянной светимостью; ниже показана его полусфера видимых направлений ких различных изображений поверхности в фиксированном поле зрения при освещении различными источниками. С помощью этого метода находят высоту поверхности в точках, соответствующих каждому пикселю; в кругах специа- листов по компьютерному зрению получаемое представление часто называют картой высоты, картой глубины, или картой плотности глубины. Зафиксируем положение камеры и поверхности и осветим поверхность то- чечным источником, который находится на большом расстоянии по сравнению с размерами поверхности. Будем придерживаться локальной модели затенения и считать, что естественного освещения нет (подробнее см. ниже), так что диффузное отражение в точке Р на поверхности равно В(Р) = p(P)N(P) Si, где N — единичная нормаль к поверхности, a Si — вектор источника. В данной модели камеры для каждой точки изображения существует только одна
142 Часть I. Формирование изображений и модели изображений Рис. 5.9. Участок Монга — это представление участка поверхности как функции высоты. В об- ласти фотометрического стерео, например, считается, что участок Монга исследуется с помощью ортогональной камеры (которая проектирует точку пространства (x,y,z) в точку камеры (х,у)). Это значит, что форму поверхности можно передать как функцию положения на изображении точка Р на поверхности, т.е. вместо В(Р) можно записать В(х,у). Теперь допустим, что реакция камеры на диффузное отражение поверхности линейна, так что значение пикселя в точке (я, у) записывается как 1(х,у) = кВ(х,у) = = кр(х, y)N(x, у) Si — = 9(x,y)Vi, где к — константа, связывающая реакцию камеры с падающим излучени- ем, д(х,у) = p(x,y)N(x,у), a Vi =к8г. В этих уравнениях д(х,у) описывает поверхность, a Vi — свойства освеще- ния и камеры. Можно измерить скалярное произведение векторного поля д(х, у) и вектора Vi; при достаточном количестве таких скалярных произведений мож- но восстановить д и, следовательно, саму поверхность. 5.4.1. Нормаль и альбедо по многим изображениям Предположим, что есть п источников, для каждого из которых известно Vi. Сведем все векторы V, в известную матрицу V, где
Глава 5. Источники, тени и затенение 143 Рис. 5.10. Пять искусственных изображений сферы, полученных ортогональным способом с од- ной и той же точки зрения. Эти изображения описаны с помощью локальной модели затенения и отдаленного точечного источника. Наблюдается объемный предмет, так что единственный вид, на котором нет видимой тени, можно получить тогда, когда источник светит параллельно направ- лению взгляда. Яркость меняется при различном кодировании формы исходной поверхности Для каждой точки изображения образуем вектор »(х, у) = {Ц (х, у), I2(x, у),..., 1п(х, у)}т. Обратите внимание, что для каждой точки изображения есть один вектор; каж- дый вектор содержит все значения яркости изображения, наблюдаемые в этой точке при различных источниках. Теперь получим *(*,!/) = Vg(x,y), а д можно найти, решив эту линейную систему или, точнее, решив по одной линейной системе для каждой точки изображения. Обычно п > 3, так что удобно использовать решение по схеме наименьших квадратов. В этом есть свое преимущество: по остаточной ошибке можно проверить измерения. Сложность описанного подхода состоит в том, что значительные области по- верхности при том или ином освещении могут находиться в тени (см. рис. 5.10). Впрочем, есть простой метод работы с тенью. Если естественное освещение отсутствует, то из вектора изображения можно составить матрицу и умножить обе стороны уравнения на эту матрицу; данная операция превратит в нуль те уравнения, которые описывают точки, находящиеся в тени. Построим такую
144 Часть I. Формирование изображений и модели изображений матрицу: / Ц(х,у) О 1г(х,у) ••• 1(х,у) = 0 \ О ••• 1п(х,у) / Ti = TVg(x, у). Матрица Т обнуляет вклады затененных областей, поскольку значимые эле- менты матрицы в точках, находящихся в тени, равны нулю. Снова получаем по одной линейной системе для каждой точки изображения; решаем эту линейную систему для каждой точки и находим вектор д в этой точке. Измерение альбедо Альбедо можно получить из измерений вектора д. Поскольку N — это единичная нормаль, то |g(x, т/)| = р(х,у). Проверим наши измерения: так как альбедо принадлежит диапазону от нуля до единицы, все пиксели, где | д| больше единицы, находятся “под подозрением” — или пиксель не дает вклада, или матрица V записана неверно. На рис. 5.11 показано альбедо, найденное с помощью этого метода для изображений с рис. 5.10. Определение нормалей Нормаль к поверхности можно найти из д, так как нормаль — это следую- щий единичный вектор: На рис. 5.12 приведены значения нормали, полученные по изображениям рис. 5.10. 5.4.2. Определение формы по нормалям Поверхность можно представить в виде (я,у,/(я,?/)), так что нормаль как функция (х, у) имеет следующий вид: Чтобы найти карту глубин, нужно определить f(x,y) из измеренных значений единичной нормали. Допустим, что измеренное значение единичной нормали в какой-то точ- ке (х,у) — (а(х,у), Ъ(х,у), с(х,у)\ Тогда df _ а(х,у) df _ b(x,y) "о- - / х И ~------ — ————. дх с(х, у) ду с(х, у)'
145 Глава 5. Источники, тени и затенение Рис. 5.11. Величина векторного поля д(х,у), найденная из исходных данных рис. 5.10 и представ- ленная визуально как отражение от поверхности Рис. 5.12. Поле нормалей, найденное из исходных данных рис. 5.10
146 Часть I. Формирование изображений и модели изображений Получена еще одна возможность для проверки нашего набора данных, поскольку д2/ _ а2/ дхду дудх' Таким образом, можно ожидать, что величина ду дх будет малой в каждой точке. В принципе, она должна равняться нулю, но если оценивать частные производные численно, то вернее ожидать, что они будут просто малыми. Данная проверка называется проверкой на интегрируемость и в приложениях компьютерного зрения она всегда сводится к проверке равен- ства смешанных вторых производных. Определение формы интегрированием Будем считать, что частные производные прошли указанную выше проверку. Теперь можно восстановить поверхность с точностью до некоторой постоянной ошибки по глубине. Частные производные показывают изменение высоты по- верхности с небольшим шагом как по х, так и по у. Это значит, что теперь можно найти поверхность, просуммировав изменения высоты по какому-то пу- ти. В частности, /(х,у)=/ dl + c, Jc \дх ду) где С — это кривая, которая начинается в некоторой фиксированной точке и заканчивается в точке (x,y)t а с — константа интегрирования, которая пред- ставляет (неизвестную) высоту поверхности в начальной точке. Найденная по- верхность не зависит от выбора кривой (см. раздел упражнений). Например, можно восстановить поверхность в точке (u, v), начиная с (0,0), просуммировав производные по у вдоль прямой х = 0 до точки (0, v), а затем просуммировав производные по х вдоль прямой у = v до точки (и, и): /(u,v)= [ ^-(O,y)dy + f ~(x,v)dx + с. Jq оу Jq Ox Этот путь интегрирования принят в алгоритме 5.1. Любой другой набор путей даст аналогичный результат, хотя, пожалуй, лучше всего использовать множе- ство различных путей и усреднять полученные результаты, чтобы таким обра- зом уменьшить ошибку оценки производных. На рис. 5.13 показан результат, полученный из рис. 5.10. Еще один способ восстановления формы — выбрать функцию /(х, у), част- ные производные которой ближе всего к измеренным частным производным. Этот подход будет рассмотрен в разделе 6.5.2.
Глава 5. Источники, тени и затенение 147 Алгоритм 5.1. Фотометрическое стерео Получить много изображений с фиксированной точки наблюдения при разном освещении Определить матрицу V из информации об источнике и камере Создать массивы для альбедо, нормали (3 компонента), р (измеренное значение и q (измеренное значение Для каждой точки в массиве изображения Преобразовать значения изображения в вектор i Построить диагональную матрицу I Решить уравнение ТМд = 1г, чтобы найти д для этой точки Альбедо в этой точке равно |р| Нормаль в этой точке равна р в этой точке равно q в этой точке равно $я конец Проверить: везде ли (|е - |я)2 мало? Значение в верхнем левом углу карты высоты — нуль Для каждого пикселя в левом столбце карты высоты значение высоты = предыдущее значение высоты + соответствующее значение q конец Для каждой строки Для каждого элемента строки, кроме крайнего левого значение высоты — предыдущее значение высоты + соответствующее значение р конец конец 5.5. ВЗАИМНОЕ ОТРАЖЕНИЕ: ГЛОБАЛЬНЫЕ МОДЕЛИ ЗАТЕНЕНИЯ Локальные модели затенения могут вводить в заблуждение. В реальном ми- ре каждый участок поверхности освещается не только источниками, но еще и светом, отраженным от других участков поверхности (явление, известное как взаимное отражение). Модель, в которой учитываются эффекты взаимно- го отражения, называется глобальной моделью затенения. Взаимное отраже- ние дает ряд сложных явлений затенения, пока что недостаточно изученных. К сожалению, эти явления встречаются очень часто, и пока еще не ясно, как упростить глобальную модель затенения без потери существенных качествен- ных свойств.
148 Часть I. Формирование изображений и модели изображений Рис. 5.13. Поле высот, найденное интегрированием поля нормалей из рис. 5.12. Описание метода см. в тексте Например, на рис. 5.14 показан вид изнутри двух разных комнат. В одной комнате черные стены, и в ней находятся черные предметы; в другой стены белые, и в ней находятся белые предметы. Каждая комната освещается (при- ближенно!) удаленным точечным источником. Если считать, что интенсивность источника подобрана правильно, из локальной модели затенения следует, что эти картинки должны быть неразличимы. На самом деле, в черной комнате тени в складках многоугольников намного темнее, а их границы четче, чем в белой комнате. Это объясняется тем, что от поверхностей в черной комна- те отражается и попадает на другие поверхности меньше света (они темнее), тогда как в белой комнате другие поверхности можно считать существенны- ми источниками излучения. Сечения реакции камеры на диффузное отражение (пропорциональные диффузному отражению рассеивающих поверхностей), по- казанные на рисунке, очень сильно отличаются качественно. В черной комнате диффузное отражение на участках постоянно, как и предсказывает локальная модель затенения, тогда как в белой комнате наблюдается плавное изменение градиентов — это происходит в вогнутых углах, где стороны предметов отра- жают свет друг на друга. С помощью этого явления можно также объяснить и то, почему в комнате, которая освещается точечным источником, нет рез- ких градиентов освещения, которые предсказывает локальная модель затенения (вспомните раздел 5.2.2). Стены и пол комнаты отражают освещение в обрат- ном направлении, и поэтому освещаются углы, которые в противном случае были бы темными.
Глава 5. Источники, тени и затенение 149 Рис. 5.14. В левом столбце показаны данные, полученные в комнате с черными матовыми стенами и набором черных матовых многоугольных предметов; справа показаны данные из белой комнаты с белыми предметами. Эти изображения отличаются качественно: в черной комнате тени темнее, их границы четче, а в белой наблюдаются яркие блики в вогнутых углах. На графиках изображено сечение интенсивности изображения вдоль соответствующих прямых изображений 5.5.1. Модель взаимного отражения Несложно понять, как предсказать диффузное отражение набора участков рассеивающей поверхности. Общее диффузное отражение, излучаемое с участ- ка — это его светимость, которая равна нулю для всех поверхностей, кроме источников, плюс все диффузное отражение участка: В(Р) = Е(Р) + Вотр(Р). Что касается рассматриваемого участка, нет разницы между энергией, излуча- емой другим участком (собственная светимость или отражение). Это значит, что можно взять выражение для плоского источника и использовать его для нахождения выражения для B(Q). В частности, с учетом перспективы данного участка, участок, находящийся в точке R внешнего мира, равнозначен плоскому источнику со светимостью B(R). Это значит, что г созОрсозво Втр(Р) = pd(P) / вид(Р, Q)B(Q)---------------- dAQ = J среда 7Г dpQ = pd(P) [ Bvm(P,Q)K(P,Q)B(Q)dAQ. J среда
150 Часть I. Формирование изображений и модели изображений Рис. 5.15. Система обозначений (объяснения см. в тексте) Обозначения представлены на рис. 5.15. Далее, {1, если Р может видеть О, 0, если Р не может видеть Q. Член вид(Р, Q)K(P, Q) обычно называютядрол взаимного отражения. Под- становка в выражение для В(Р) дает такой результат: В(Р) = Е(Р) + pd(P) [ вид(Р, Q)K(P, Q)B(Q) dAQ. Jсреда В частности, решение входит в интеграл. Уравнения такого вида называют ин- тегральными уравнениями Фредгольма второго рода. Это конкретное уравнение является довольно неприятным представителем своего семейства, поскольку яд- ро взаимного отражения в общем случае не непрерывно и может иметь сингу- лярности. Решения данного уравнения могут дать достаточно хорошие модели, описывающие рассеивающие поверхности, и для читателей, серьезно интересу- ющихся компьютерной графикой, можно в этой связи порекомендовать работы [Cohen and Wallace, 1993] или [Sillion, 1994]. Здесь остается лишь отметить, что эта модель дает хорошие предсказания наблюдаемых явлений (рис. 5.16).
Глава 5. Источники, тени и затенение 151 Освещение со стороны бесконечно удаленного точечного источника в направлении, указанном стрелкой Положение Рис. 5.16. Описанная в тексте модель дает довольно точные качественные предсказания о взаим- ном отражении. Вверху показан вогнутый прямоугольный желобок, который освещается точечным источником на бесконечности, причем направление освещения параллельно одной стороне. Слева в нижнем ряду приведен ряд предсказаний о диффузном отражении для такой конфигурации. Эти предсказания расположены так, чтобы одно находилось над другим; случай р —+ 0 соответствует локальной модели затенения. Справа показана наблюдаемая интенсивность изображения для та- кой формы угла, сделанного из белой бумаги, которая дает крышеподобный градиент диффузного отражения края. Локальная модель затенения предсказывает резкий скачок на графике 5.5.2. Решения для диффузного отражения Для иллюстрации методов решения в глобальной модели затенения приве- дем схему одного из них. Разделим систему на маленькие плоские участки и будем считать, что диффузное отражение в пределах участка постоянно. Та- кое приближение разумно, поскольку при работе с маленькими участками мож- но найти точное представление. Построим теперь вектор В, который содержит значение диффузного отражения каждого участка. В частности, г-й компонент вектора В — это диффузное отражение г-го участка. Запишем диффузное отражение i-го участка, обусловленное диффузным от- ражением j-ro участка как В^(Р) = Pd(P) [ вид(Р, Q)K(P, Q) dAQBj, ./участок j
152 Часть I. Формирование изображений и модели изображений где Р — координата г-го участка, a R — координата J-ro участка. Получен- ное выражение не равно константе, поэтому необходимо усреднить его по г-му участку: = Pd(P) [ WR(P,Q)K(PtQ)dApdAQBj, '*» Jучасток i J участок j где Ai — площадь г-го участка. Если принять, что светимость каждого участка также постоянна, то получим следующую модель: Bi = Ei+ по всем j = £<+ 52 по всем j где Кц = [ Pd(P) [ Bw(P,Q)K(P,Q)dAPdAQ. Элементы этой матрицы иногда называют форм-факторами. Полученный результат — это система линейных уравнений по Bi (очень большая — размеры матрицы Kij могут достигать значения миллион на милли- он), и, как таковая, в принципе, решаема. Для эффективного, быстрого и точ- ного решения этой системы можно использовать определенные уловки, которые в данной книге не рассматриваются, но их перечень можно найти в публика- циях [Sillion, 1994] или [Cohen and Wallace, 1993]. 5.5.3. Качественное описание эффектов взаимного отражения Из диффузного отражения хотелось бы получить информацию о форме. Это относительно просто сделать с помощью локальной модели (о некоторых по- дробностях см. раздел 5.4), но данная модель не очень хорошо описывает ре- альные ситуации, и пока еще мало известно о том, насколько сильно это ска- зывается на полученной из нее информации о форме. Извлечь информацию о форме из глобальной модели затенения сложно по двум причинам. Во-первых, связь между формой и диффузным отражением усложняется зависимостью от ядра взаимного отражения. Во-вторых, почти всегда существуют поверхности, которые не видны, но их излучение попадает на объекты, находящиеся в поле зрения. Это так называемые “удаленные поверхности”, и их существование го- ворит о том, что с помощью модели взаимного отражения очень сложно учесть все излучение на сцене, поскольку некоторые излучатели не видны и мы можем не знать о них или знать недостаточно. Из сказанного следует, что качественное понимание локальных эффектов взаимного отражения имеет большое значение; таким образом можно как пре- небрегать явлениями взаимного отражения, так и использовать их. Эта тема
Глава 5. Источники, тени и затенение 153 Рис. 5.17. Маленький участок видит плоскость с синусоидальным диффузным отражением единич- ной амплитуды. У этого участка (приблизительно) синусоидальное диффузное отражение, обуслов- ленное действием этой плоскости. Амплитуду данного элемента мы будем называть приростом участка. На графике показаны численные оценки прироста по 10 углам наклона от 0 до тг/2 как функции пространственной частоты на плоскости. Прирост очень быстро уменьшается; это означает, что большие члены с высокими пространственными частотами должны быть местны- ми явлениями, а не результатом действия удаленных излучателей. По этой причине так трудно идентифицировать оконную мозаику из цветного стекла, смотря на пол у окна Пространственная частота источника в радианах на единицу длины по большей части остается открытой для исследований, но кое о чем можно сказать уже сейчас. Сглаживание и местные эффекты Во-первых, взаимное отражение обладает характерным эффектом сглажива- ния. Например, если попытаться идентифицировать оконную мозаику по изоб- ражению, которое она дает на полу, это изображение почти всегда будет пред- ставлять собой набор неразличимых цветных пятен. Данное явление лучше всего можно понять с помощью грубой модели, показанной на рис. 5.17. Гео- метрия модели — участок, фронтально смотрящий на бесконечную плоскость, которая находится на единичном расстоянии от него и имеет диффузное от- ражение sin lux. Изменять расстояние от участка до плоскости бессмысленно, поскольку решения задач на взаимное отражение инвариантны относительно изменения масштаба — это значит, что решение для участка, находящегося на вдвое большем расстоянии, можно найти, читая график со скоростью 2lu. Уча- сток достаточно мал, так что его вкладом в диффузное отражение плоскости можно пренебречь. Если участок наклонить на угол а относительно плоско- сти, его диффузное отражение будет почти периодическим, с пространственной частотой и> cos ст. Амплитуда элемента с такой частотой называется приростом участка; график прироста представлен на рис. 5.17. Одна из важных особенно- стей этого графика состоит в том, что при высоких пространственных частотах скачкообразные переходы от плоскости к участку выглядят сложнее. Это зна-
154 Часть I. Формирование изображений и модели изображений чит, что эффекты затенения с высокой пространственной частотой и большой амплитудой обычно не могут вызываться удаленными поверхностями (если они не обладают аномальной яркостью). Чрезвычайно быстрый спад амплитуды с ростом пространственной часто- ты, который наблюдается в членах, связанных с удаленными поверхностями, означает, что если наблюдать член с большой амплитудой при высокой про- странственной частоте, то вероятность того, что он является результатом действия удаленного пассивного источника, будет очень незначительна (поскольку этот эффект очень быстро сходит на нет). Явления затенения принято относить к обусловленным отражательной способностью, если они быстрые (“края”), а их динамический диапазон относительно узкий, и к обу- словленным освещением во всех остальных случаях (об этом еще будет сказано в разделе 6.5.2). Эту договоренность можно расширить. Выделим промежуточ- ный диапазон пространственных частот, на которые, по большей части, не влияет взаимное освещение от отдаленных поверхностей, поскольку в этом случае прирост очень мал. Пространственные частоты этого диапазона не мо- гут передаваться от удаленных пассивных излучателей, если эти излучатели не обладают невероятно высокой отражательной способностью. В результате пространственные частоты этого диапазона можно считать местными свой- ствами, которые могут происходить только от взаимного отражения в пределах отдельной области. Самыми замечательными местными свойствами, пожалуй, являются бли- ки — маленькие яркие участки, которые возникают главным образом на вогну- тых областях (см. рис. 5.18 и 5.19). Второе важное явление — это окрашивание, когда цветная поверхность отражает свет на другую цветную поверхность. Это довольно распространенный эффект, который люди обычно не замечают, по- ка не начинают специально обращать на него внимание. Впрочем, художники воспроизводят его довольно часто. 5.6. ПРИМЕЧАНИЯ Модели затенения в литературе по компьютерному зрению рассмотрены до- вольно несистематично. Приближением точечного источника часто злоупотреб- ляют; мы рекомендуем применять его с осторожностью и критически относить- ся к случаям, когда его используют другие. В данной книге проведена четкая грань между физическим действием источника и моделью затенения. Локальные модели затенения Большое достоинство локальных моделей затенения — простота анализа. Основная характеристика локальной модели затенения: на поверхности с посто- янным альбедо диффузное отражение участка поверхности является функцией только нормали. Это значит, что можно избежать абстрактных понятий отража- тельной способности и источника, а вместо этого просто кодировать свойства поверхности и источника посредством карты отражения. Карта страже-
Глава 5. Источники, тени и затенение 155 Освещение со стороны бесконечно удаленного точечного источника в направлении, указанном стрелкой \z Рис. 5.18. Отблески на загибающихся краях — обычное качественное следствие взаимного от- ражения. Такая ситуация показана на верхнем рисунке: вогнутый прямоугольный желобок, осве- щаемый точечным источником света на бесконечности, вектор источника которого направлен по биссектрисе угла. На графике слева представлена интенсивность, предсказанная моделью взаимно- го отражения для этой конфигурации; случай р —» 0 описывается локальной моделью затемнения. Для простоты сравнения графики выровнены. Поскольку альбедо поверхности уменьшается, по- является крышеподобная структура. На графике справа показаны наблюдения этого явления на изображении реальной сцены. Рисунок из D.A. Forsyth and A.P.Zisserman, "Mutual Illumination", Proceedings CVPR. © 1989 IEEE Положение в пикселях ния — это функция, входом которой является нормаль, а выходом — значение диффузного отражения, которое можно ожидать в точке с такой нормалью. Систематически изучать затенение в компьютерном зрении начал Хорн, вы- пустив важные статьи по определению формы в локальной модели затенения с использованием точечного источника ([Ноги, 1970, 1975]), в несколько пере- работанном виде результаты были представлены в работе [Horn, 1990]. Пред- лагаемые методы сильно критиковались (по крайней мере, отчасти из-за того, что они оказались неспособными справиться с проблемами глобальной модели затенения), поэтому их обзор мы не приводим. Заинтересованному читателю можно порекомендовать работу [Horn and Brooks, 1989], где предложен весьма удачный обзор этих методов. Форма и альбедо неоднозначны; если соответству- ющим образом изменить альбедо, поверхности различных форм будут давать одинаковые изображения ([Belhumeur, Kriegman and Yuille, 1999], [Kriegman and Belmeur, 1998]). Поскольку нормаль к поверхности — это ключевой элемент в локальных моделях затенения, такие модели обычно позволяют элегантно свя- зать затенение поверхности и ее кривизну ([Koenderink and van Doorn, 1980]).
156 Часть I. Формирование изображений и модели изображений Рис. 5.19. Отблески встречаются достаточно часто; обычно они вызваны наблюдением большой отражающей поверхности. В геометрии, показанной сверху, затененная область цилиндрической выпуклости видит плоскость, лежащую в основе, под достаточно удобным углом — если фон довольно велик, то почти половина полусферы направлений участка в основании выпуклости будет видеть плоскость. Это означает, что рядом с краем выпуклости появится значительный отблеск, находящийся в пределах отбрасываемой тени (которая, по предсказанию локальной модели, должна быть черной). С другой стороны будет еще один отблеск, что видно из набора решений, показанных слева (для удобства сравнения решения нормированы). Справа показан результат для реальной сцены. Рисунок из D.A. Forsyth and A.P.Zisserman, "Mutual Illumination", Proceedings CVPR, 1989. © 1989 IEEE Взаимное отражение К сожалению, глобальное затенение описано в литературе недостаточно, а взаимное отражение часто не рассматривается, поскольку его чрезвычайно сложно анализировать, особенно с учетом перспективы и свойств объекта, ко- торые получаются как следствие применения глобальной модели затенения. Ес- ли взаимное отражение не сильно влияет на результат применения метода, то, пожалуй, его можно игнорировать. К сожалению, показать, что метод устойчив по отношению ко взаимному отражению, достаточно трудно, поэтому данный момент обычно не рассматривается. Вопросы пространственной частоты пред- ставлены в публикации [Haddon and Forsyth, 1998а], а первоначальная идея была высказана в [Koenderink and van Doorn, 1983]. Кроме того, довольно мало известно обо всех свойствах взаимного отражения и связанного с ним затене- ния. Альтернативный подход — итеративная оценка формы с помощью модели визуализации ([Nayar, Ikeuchi and Kanade, 1991a]).
Глава 5. Источники, тени и затенение 157 Хорн первым указал на значение явлений глобального затенения ([Horn, 1997]). В работе [Koenderink and van Doorn, 1983] отмечено, что диффузное отражение в глобальной модели затенения можно найти через затенение из локальной модели, применив линейный оператор с последующим анализом ре- зультата. Иногда собственные функции этого оператора (их часто называют геометрическими модами) несут некоторую полезную информацию. В после- дующих работах ([Forsyth and Zisserman, 1989, 1990, 1991]) был продемонстри- рован ряд качественных явлений, обусловленных взаимным отражением. Фотометрическое стерео В первоначальной форме фотометрическое стерео появилось благодаря Вуд- хаму (Woodham). Существует несколько различных вариантов самой идеи ([Horn, Woodham and Silver, 1978], [Woodham, 1979, 1980, 1989, 1994]), а так- же ряд вариаций на тему фотометрического стерео. Одна интересная идея — освещать поверхность тремя источниками света разных цветов (из разных положений) и использовать цветное изображение. При правильном подборе цветов это равнозначно наличию трех изображений, так что требуемые изме- рения значительно упрощаются. Фотометрическое стерео применяется в ситуациях, когда освещение доста- точно легко контролировать, так что можно быть уверенным, что на изоб- ражении не будет естественного освещения. Ввести естественное освещение в приведенные выше формулы относительно несложно: достаточно расширить матрицу V, добавив столбец, отвечающий за естественное освещение. В этом случае д(х, у) становится четырехмерным вектором, и его четвертая координа- та — член, отвечающий за естественное освещение. Впрочем, данный метод не гарантирует, что этот член будет постоянным по всему пространству. Время от времени пришлось бы проверять, действительно ли этот член постоянен, и если нет, уточнять соответствующую модель. Фотометрическое стерео зависит только от адаптации локальной модели затенения. Для этой модели не нужна ламбертовская поверхность, которая освещается удаленным точечным источником. Фотометрическое стерео возмож- но, если диффузное отражение поверхности — известная функция нормали к поверхности, удовлетворяющей небольшому количеству условий. Это действи- тельно так, поскольку интенсивность пикселя на одном изображении определя- ет нормаль с точностью до одного параметра. Это значит, что два изображения полностью определяют нормаль. Самый простой пример — поверхность с из- вестным альбедо освещается удаленным точечным источником. Фактически, фотометрическое стерео возможно, если диффузное отражение поверхности — это функция к параметров нормали к поверхности. Интенсив- ность пикселя на одном изображении определяет нормаль с точностью до +1 параметра, а к 4-1 изображение описывает нормаль. Для успешного примене- ния этого подхода диффузное отражение должно быть задано как функция, которая подчиняется указанной арифметике (например, если диффузное от- ражение поверхности — это постоянная функция нормали к поверхности, то
158 Часть I. Формирование изображений и модели изображений никаких условий на нормаль относительно диффузного отражения наложить нельзя). Затем можно одновременно восстанавливать форму и карты отраже- ния ([Garcia-Bermejo, Diaz Pernas and Coronado, 1996], [Mukawa, 1990], [Nayar, Ikeuchi and Kanade, 1990] и [Tagare and de Figueiredo, 1992, 1993]). Альтернативные представления затенения Информацию о форме можно извлекать из затененного сигнала, а мож- но попытаться подобрать по набору различных возможных образцов. Набор возможных затенений довольно ограничен ([Belhumeur and Kriegman, 1998]) и знать структуру этого набора крайне важно, поскольку это позволяет по- нять, как сравнивать затененные изображения, и не запутаться при изменении освещения. Изменение освещения вызывает множество проблем в определении сторон и распознавании ([Adini, Moses and Ullman, 1997], [Phillips and Vardi, 1996]). Похоже, что здесь может помочь знание возможных вариантов освеще- ния ([Georghiades, Kriegman and Belhumeur, 1998, 2000], [Jacobs, Belhumeur and Barsi, 1998]). Еще одна возможность — расширить понятие качественного анализа вза- имного отражения с целью поиска элементарного затенения — образец за- тенения, которое можно считать характерным и устойчиво связанным с об- разцом формы. Например, узкие щели и глубокие отверстия на поверхностях всегда темные, а тень от цилиндра имеет характерную вытянутую форму. Таких элементов известно немного, но некоторые из них кажутся очень полезными ([Haddon and Forsyth, 1998а,Ь]). Задачи 5.1. Какую форму может приобрести тень сферы, если она отбрасывается на плоскость, а источником выступает точечный источник? 5.2. Квадратный плоский источник и квадратный затеняющий предмет парал- лельны плоскости. Источник имеет такой же размер, что и затеняющий предмет, оба расположены вертикально один над другим, а их центры находятся на одной оси. а) Какую форму будет иметь тень? б) Какую форму будет иметь внешняя граница полутени? 5.3. Квадратный плоский источник и квадратный затеняющий предмет па- раллельны плоскости. Длина источника в два раза больше длины зате- няющего предмета, они расположены вертикально один над другим, а их центры находятся на одной оси. а) Какую форму будет иметь тень? б) Какую форму будет иметь внешняя граница полутени? 5.4. Квадратный плоский источник и квадратный затеняющий предмет па- раллельны плоскости. Длина источника в два раза меньше длины зате- няющего предмета, они расположены вертикально один над другим, а их центры находятся на одной оси.
Глава 5. Источники, тени и затенение 159 а) Какую форму будет иметь тень? б) Какую форму будет иметь внешняя граница полутени? 5.5. Маленькая сфера отбрасывает тень на большую сферу. Опишите воз- можную форму ее границ. 5.6. Объясните, почему границы тени трудно использовать для определения формы, особенно если тень отбрасывается на искривленную поверхность. 5.7. Бесконечно малый участок поверхности выходит на круглый плоский источник с постоянной светимостью фронтально к оси симметрии источ- ника. Рассчитайте диффузное отражение участка, обусловленное свети- мостью источника Е(и) как функцию площади источника и расстояния от центра источника до участка. Значения соответствующих интегра- лов можно найти в таблицах (если вы справитесь сами — можете собой гордиться), это один из редких случаев, когда их можно найти аналити- чески. Считать интегралы будет легче, если записать их через косинусы. 5.8. Маленький участок видит бесконечную плоскость на единичном рассто- янии, как на рис. 5.17. Участок достаточно мал, так что он отражает на плоскость ничтожно малое количество света. Диффузное отражение плоскости В(х,у) = 1 +sin ах. Участок и плоскость параллельны друг другу. Участок перемещается параллельно плоскости. Рассмотрите его диффузное отражение в различных точках. а) Покажите, что при перемещении участка его диффузное отражение меняется периодически с изменением координаты х. 6) Зафиксируем центр участка в точке (0,0); найдите выражение в ана- литическом виде для диффузного отражения участка в этой точке как функцию а. Для этого вам понадобится таблица интегралов (ес- ли вы справитесь сами — можете гордиться). 5.9. Если смотреть днем на противоположный берег большого залива, часто бывает трудно заметить там горы; ближе к закату они видны четко. Это явление связано с рассеянием света в воздухе — большой объем воздуха можно считать источником света. Объясните, что при этом происходит. Предполагается, что воздух — это вакуум и при распространении света по прямой в вакууме энергия не поглощается. Оцените расстояния, на которых применима эта модель. 5.10. Прочитайте книгу Lynch и Livingstone, Colour and Light in Nature, Cam- bridge University Press, 1995. Упражнения 5.11. Плоский источник можно аппроксимировать как сеть точечных источни- ков. Недостаток этого приближения состоит в том, что полутень описыва- ется некорректно из-за ошибок квантования, что может сильно бросаться в глаза. а) Объясните указанный факт.
160 Часть I. Формирование изображений и модели изображений б) Опишите это явление для квадратного источника и одного затеняю- щего предмета, отбрасывающего тень на бесконечную плоскость. При стационарной геометрии вы найдете, что при увеличении количества точечных источников ошибка квантования уменьшается. в) У этого приближения есть одна неприятная особенность — изменяя геометрию при любой конечной сети, можно получить весьма боль- шую ошибку квантования. Это происходит потому, что существу- ют конфигурации источника и затеняющего предмета, которые дают большие полутени. Объясните этот факт, используя квадратный ис- точник, затеняющий предмет и отбрасывающий тень на бесконечную плоскость. 5.12. Создайте систему из нескольких черных и систему из нескольких белых предметов (вам понадобятся бумага, клей и краски) и понаблюдайте эф- фект взаимного отражения. Есть ли у вас интуитивный критерий, кото- рый помогает точно сказать по изображению, где какая система? (Если есть, можете его опубликовать; задача кажется простой, но на самом деле это не так). 5.13. (Это упражнение требует некоторых знаний по численному анализу.) Возьмите численно интегралы и восстановите рис. 5.17. Эти интегралы не очень простые: если воспользоваться координатами на бесконечной плоскости, то трудность представляет размер области; если преобразо- вать координаты в полусферу направлений участка, то на границах по- лусферы частота излучения становится бесконечной. Наилучший способ оценки этих интегралов — применение метода Монте-Карло к полусфе- ре. Рекомендуем использовать выборку по значимости, поскольку вклад в интеграл на границах намного меньше, чем на вершине. 5.14. Составьте и решите линейные уравнения для взаимного отражения на внутренней поверхности куба с маленьким квадратным источником в центре потолка. 5.15. Реализуйте схему фотометрического стерео. а) Насколько точны ее измерения (т.е. как они согласуются с известной информацией о форме)? Влияет ли на точность взаимное отражение? б) Повторимы ли эти измерения (т.е. если вы получите еще один набор изображений, возможно, при другом освещении, и определите форму по ним, то как будет отличаться новая форма от старой)? в) Сравните метод минимизации с восстановлением посредством инте- грирования; какой из них точнее и почему? Проявляется ли эта раз- ница при проведении эксперимента? г) Один из возможных способов улучшения интегрального метода — найти глубины интегрированием по многим различным путям, а затем усреднить эти глубины (будьте очень внимательными с константами). Улучшает ли это точность или повторяемость метода?
6 Цвет Цвет — это богатое и сложное явление, обычно возникающее из-за различ- ной реакции зрительной системы на свет разной длины волны (в число других причин входят давление на глазное яблоко и сны). Хотя цвет предметов кажет- ся довольно удобной характеристикой для их идентификации, на самом деле применять его с такой целью довольно трудно. 6.1. ФИЗИКА ЦВЕТА Расширим наш радиометрический словарь, чтобы описать энергию, кото- рая по-разному передается волнами различной длины, и опишем характерные особенности цветных поверхностей и цветных источников света. 6.1.1. Радиометрия цветного света: спектральные величины Все физические единицы, которые описывались ранее, можно определить повторно с дополнением на единицу длины волны и таким образом получить спектральные единицы. Это позволит описать различия в энергии, БФРО (би- нарной функции распределения отражения) или альбедо при различных длинах волн. Далее не будут рассматриваться такие взаимодействия, как флуоресцен- ция, при которой изменяется длина волны; таким образом, чтобы получить то,
162 Часть I. Формирование изображений и модели изображений что называют спектральными величинами, к определениям из главы 4 просто добавляется фраза “на единицу длины волны”. Первая спектральная величина, спектральное излучение, обычно записы- вается как Lx(x, 6, ф), а излучение в диапазоне длин волн [А, А + dA] равно Lx(x, 6, ф)(1Х. Спектральное излучение измеряется в ваттах на кубический метр на стерадиан (Вт х м~3 х ср-1 — кубические метры появились из-за допол- нительного множителя, длины волны). В задачах, где угловое распределение источника не имеет значения, удобной характеристической величиной будет спектральная светимость’, спектральная светимость измеряется в Вт х м-3. Подобным образом, спектральная БФРО — это отношение спектрально- го излучения в уходящем направлении к плотности потока спектрального излучения в падающем направлении. Поскольку БФРО определяется как отно- шение, то спектральная БФРО имеет те же единицы — ср-1. 6.1.2. Цвет источников Под созданием источника света обычно подразумевают нагревание некото- рого элемента до тех пор, пока он не начнет светиться. Рассмотрим вначале идеализированный пример такого процесса, после чего опишем спектральное распределение мощности дневного света и обсудим ряд искусственных источ- ников света. Абсолютно черное тело Тело, которое не отражает свет, обычно называют абсолютно черным те- лом’, оно является самым эффективным излучателем. Нагретое черное тело излучает в диапазоне электромагнитных волн. Стоит отметить, что спектраль- ное распределение мощности этого излучения зависит только от температуры тела. Довольно хорошее представление о черном теле можно получить, если смотреть внутрь полого куска металла через крошечное отверстие — из света, проникающего через отверстие, отразится и попадет в глаз очень малая часть. Спектральное распределение мощности горячего черного тела можно измерить, нагрев подобную полость. Если Т — это температура тела в кельвинах, h — постоянная Планка, к — постоянная Больцмана, с — скорость света, а А — длина волны, то получаем следующее выражение: °" A® (exp(/ic/fcA) - 1) * Это означает, что существует однопараметрический набор цветов, соответ- ствующий абсолютно черному излучателю (параметром является температура), и что можно говорить о цветовой температуре источника света. Под этим под- разумевают температуру абсолютно черного тела, при которой будет получаться точно такое же излучение. При относительно низких температурах абсолютно черные тела имеют красный цвет, с возрастанием температуры они становятся оранжевыми, потом бледно-желтыми и белыми (см. схему на рис. 6.9).
Глава 6. Цвет 163 Рис. 6.1. Существуют значительные различия в относительной спектральной мощности дневного света, измеренной в разное время суток и при различных условиях. На рисунке показана серия из семи различных измерений мощности дневного света, проведенных Джусси Паркиненом (Jussi Parkkinen) и Перти Сильфстен (Pertti Silfsten) при освещении образца из сульфата бария (хорошая отражающая поверхность белого цвета). Графики построены по данным, которые можно найти на сайте http://www.it.lut.fi/research/color/lutcs_database.html Солнце и небо Самым важным естественным источником света является солнце. Обычно солнце представляют как удаленную яркую точку. Известно, что солнечный свет рассеивается в воздухе. В частности, свет от солнца может рассеиваться в воздухе, попадать на поверхность и, отражаясь от нее, попадать в камеру или глаз. Это значит, что небо — это также существенный естественный источник света. Грубая геометрическая модель неба — это источник света в виде по- лусферы с постоянной светимостью. В то же время, предположение о том, что светимость везде одинакова, не совсем справедливо, поскольку небо значитель- но ярче на горизонте, чем в зените. Более естественную модель неба можно получить, предположив, что воздух излучает постоянное количество энергии на единицу объема; из этого следует, что на горизонте небо ярче, чем в зените, по- скольку луч, идущий вдоль линии горизонта, проходит больший путь по небу. Участок поверхности вне помещения в течение дня освещается как светом, идущим непосредственно от солнца, который обычно называют дневным све- том, так и солнечным светом, рассеянным в воздухе (его иногда называют небесным, или воздушным светом); на общий эффект может сильно влиять
164 Часть I. Формирование изображений и модели изображений наличие облаков или снега. Цвет дневного света меняется в зависимости от времени суток (рис. 6.1) и времени года. В настоящее время эти явления ин- тенсивно изучаются. В чистом воздухе интенсивность света, рассеянного в единице объема, зависит от частоты в четвертой степени; это значит, что свет с большой дли- ной волны до рассеяния может распространиться намного дальше, чем свет с малой длиной волны (данное явление известно под названием Релеевского рассеяния). Это объясняет следующий факт: когда солнце находится высоко в небе, то по пути от солнца до земли голубая составляющая света рассеива- ется в воздухе (солнце кажется желтым) и, отражаясь от воздуха, попадает в глаз (небо кажется голубым). Существуют также стандартные модели спек- трального излучения неба в разное время суток на разных широтах. Стоит сказать, что когда в небе присутствуют мельчайшие частички пыли, можно наблюдать удивительные вещи (а большие частички приводят к гораздо более сложным эффектам рассеяния, которые обычно можно более грубо описать с помощькшодели рассеяния Ми, о которой рассказано в (Lynch and Liv- ingston, 2001] или [Minnaert, 1993]). Один из авторов помнит яркие закаты в Йоханнесбурге, вызванные наличием в воздухе пыли от угольных отходов; имеются также сообщения о синей и даже зеленой луне, что было вызвано присутствием в воздухе вулканической пыли. Искусственное освещение Обычные искусственные источники света, как правило, бывают нескольких видов. • Лампы накаливания состоят из металлической нити, которая нагревает- ся до очень высокой температуры. Спектр приблизительно совпадает со спектром абсолютно черного тела, т.е. в большинстве случаев лампы на- каливания дают красноватый оттенок, поскольку цветовая температура источника ограничена температурой плавления рабочих элементов. • Флуоресцентные лампы работают на основе быстрых электронов, бом- бардирующих газ в трубке; это вызывает излучение в ультрафиолетовом диапазоне, что приводит к свечению фосфорного покрытия внутренней по- верхности трубки. Как правило, покрытие делается из трех или четырех слоев фосфора, что дает излучение в достаточно узком диапазоне длин волн. Большинство флуоресцентных ламп дают голубоватый свет, хотя все большее распространение получают лампы, имитирующие естествен- ное дневное освещение (рис. 6.2). • Некоторые лампы заполняются атмосферой, состоящей из смеси газооб- разных металлов и инертных газов. Свет вырабатывается электронами в атомах металлов, где происходит переход из возбужденного состояния в состояние с более низкой энергией. Для таких источников характерно сильное излучение на нескольких частотах, соответствующим отдельным переходам. Самые распространенные из ламп описанного типа — натри-
Глава 6. Цвет 165 Рис. 6.2. Существует множество моделей осветительных элементов; на трафике слева показано распределение относительной спектральной мощности двух стандартных моделей МКО (Меж- дународной комиссии по освещению): иллюминат А, который моделирует свет от 100-ваттной лампы накаливания с цветовой температурой 2800 К; и иллюминат D-65, моделирующий дневной свет. График построен на основе информации из базы данных Исследовательских лабораторий по цвету и зрению (Color and Vision Research Laboratories)(http: //www- cvrl.ucsd.edu/index.htm/ обработанной Эндрю Стокманом (Andrew Stockman) и Линдсе- ем Шарпе (Lindsey Sharpe). Справа показано распределение относительной спектральной мощности четырех различных ламп по данным корпорации Mitsubishi Electric. Обратите внимание на яркие узкие полосы, которые дает светящийся фосфор в флуоресцентной лампе. График постро- ен на основе информации, доступной на сайте http://colorpro.com/info/index.html; измерения проведены Хироаки Сигвирой (Hiroaki Sugiura) евые разрядные лампы и ртутные разрядные лампы. Натриевые раз- рядные лампы дают желтовато-оранжевый свет, который чрезвычайно эф- фективно и довольно широко применяется для освещения дорог. Ртутные лампы дают голубовато-белый свет и часто используются при освещении охраняемых объектов. Примеры спектров излучения различных ламп приведены на рис. 6.2. 6.1.3. Цвет поверхности Цвет поверхности — это результат воздействия многих механизмов, вклю- чая выборочное поглощение на различных частотах, отражение и рассеяние света лампы (подробнее см., например, [Lamb and Bourriau, 1995], [Lynch and Livingston, 2001], [Minnaert, 1993] или [Williamson and Cummins, 1983]). Как правило, эти явления объединяют и описывают общей макроскопической мо- делью БФРО, причем БФРО в этом случае обычно представляет собой сумму ламбертиана и члена зеркального приближения; далее будем использовать тер- мины спектральная отражательная способность (иногда, для краткости, — отражательная способность) или (в менее общих случаях) спектральное альбедо. На рис. 6.3 и 6.4 приведены примеры спектральной отражательной способности для ряда объектов естественного происхождения.
166 Часть I. Формирование изображений и модели изображений Рис. 6.3. Спектральное альбедо для различных естественных поверхностей, измеренные Эса Ко- ивисто (Esa Koivisto), физический факультет University of Kuopio, Финляндия. Слева приведены альбедо для природных поверхностей с указанием цвета каждой. Справа, также с указанием цветов, приведены альбедо для листьев различных цветов. Графики построены по данным, доступным на сайте http://www.it.lut.fi/research/color/lutcs_database.html На цвет света, попадающего в глаз, влияет как спектральное излучение (цвет) источника, так и спектральная отражательная способность (цвет) по- верхности. Если использовать подход “ламбертиан плюс спектральная модель”, можно записать следующее: Е(А) = рад(А)5(А) х геометрические члены + зеркальные члены, где Е(А) — спектральное диффузное отражение поверхности, pdhW — спек- тральная отражательная способность, a S(A) — спектральная плотность потока излучения. Зеркальные величины могут иметь разный цвет в зависимости от типа поверхности — т.е. теперь необходимо ввести понятие спектрального зер- кального альбедо. Цвет и зеркальное отражение Вообще, у всех металлических поверхностей есть зеркальная составляю- щая, которая зависит от длины волны — блестящая медная монета имеет желтоватый оттенок. Зеркальная составляющая непроводящих поверхностей — диэлектриков — не зависит от длины волны (например, блики на блестя- щих пластмассовых предметах всегда того же цвета, что и падающий свет). В разделе 6.4.3 рассказано о том, как эти свойства можно использовать для нахождения бликов и областей отражения, соответствующих металлическому или пластмассовому предмету. 6.2. ЧЕЛОВЕЧЕСКОЕ ВОСПРИЯТИЕ ЦВЕТА Чтобы можно было описывать цвета, вначале необходимо знать, как на них реагируют люди. Человеческое восприятие цвета — это очень сложная функция среды; свою роль играет и освещение, и память, и сам предмет, и эмоции. Самое
Глава 6. Цвет 167 Рис. 6.4. Еще несколько спектральных альбедо для естественных поверхностей, измеренных Эса Коивисто. Слева приведены альбедо для нескольких цветков красного цвета. В каждом случае ука- зано название цветка на финском языке. Справа показаны альбедо зеленых листьев, также с указа- нием финского названия. Видно, что альбедо не очень отличаются друг от друга, поскольку суще- ствует относительно немного механизмов окрашивания растений. Графики построены по данным, доступным на сайте http://www.it.lut.fi/research/color/lutcs_database.htrnl простое здесь — понять, какое спектральное излучение вызывает одинаковую реакцию людей при одних и тех же условиях (раздел 6.2.1). Напрашивается простая линейная теория подбора цветов, которая оказывается достаточно точ- ной и чрезвычайно удобной для описания цвета. Ниже, в разделе 6.2.2, кратко описан механизм, лежащий в основе передачи цвета. 6.2.1. Подбор цветов Простейший пример восприятия цвета - это когда в поле зрения попадает только два цвета на черном фоне. Проведем характерный эксперимент — будем освещать половину некоторой поверхности цветным светом — тестовым све- том (рис. 6.5). Задача: подобрать на другой половине поверхности комбинацию цветов, которая будет точно соответствовать тестовому цвету. Подбор включает в себя изменение интенсивности элементов некоторого фиксированного набо- ра основных цветов. При такой постановке задачи для подбора пары может потребоваться очень много цветов (существуют и другие методы подбора). Обозначим через Т тестовый цвет, знак равенства будет означать, что па- ра подобрана правильно, отличные от нуля весовые коэффициенты обозначим через Wi, а основные цвета — через Рг. Тогда пару можно записать в алгебра- ической форме как Т = wi Pi + W2P2 + • • . Приведенная запись означает, что тестовый свет Т совпадает с определенной комбинацией основных цветов, которая задается коэффициентами (wi,...). Ситуация упрощается, если разрешено разностное сопоставление, при кото-
168 Часть I. Формирование изображений и модели изображений Тестовый свет, Т Взвешенная смесь основных цветов Рис. 6.5. Человеческое восприятие цвета можно изучить, предложив наблюдателям смешать раз- личные цвета с целью подбора пары к тестовому свету, который показан на поверхности, разде- ленной надвое. На рисунке изображена схема такого эксперимента. Наблюдатель видит тестовый свет Т; ему предлагается комбинация из трех основных цветов, расположенная рядом с тестовым светом. Наблюдателя просят подобрать необходимую интенсивность каждого цвета, чтобы в резуль- тате эта комбинация выглядела точно так же, как и тестовый свет. Комбинацию основных цветов можно записать как wiPi + W2P2+W3P3', если комбинация соответствует цвету тестового освеще- ния, можно записать Т = wiPi + w2Pa + адз-Рз- Стоит отметить, что для большинства людей трех основных цветов оказывается достаточно, чтобы найти пару ко многим или даже всем цветам, ес- ли разрешить разностное сопоставление (т.е. когда для точного подбора соответствия определенное количество основного цвета смешивается с тестовым цветом). Некоторым людям требуется меньше основных цветов. Более того, большинство людей одинаково выбирает весовые коэффициенты при определении соответствия данному тестовому освещению ром наблюдатель имеет право добавлять некоторое количество одного из основ- ных цветов к тестовому свету, а не к подбираемому парному изображению. Алгебраически это означает, что весовые коэффициенты в вышеприведенном выражении могут иметь отрицательные значения. Трехцветность Эксперименты показывают, что для того, чтобы подобрать пару к тестово- му освещению, большинству наблюдателей достаточно трех основных цветов. Здесь нужно сделать несколько оговорок. Во-первых, должно быть разрешено разностное сопоставление; во-вторых, основные цвета должны быть незави- симыми, т.е. никакая комбинация двух основных цветов не должна давать третий основной цвет. Это называют принципом трехцветности. Данное яв- ление можно объяснить, предположив, что глаз воспринимает свет трех типов, что подтверждается недавними генетическими исследованиями ([Nathans, Pi- antanida, Eddy, Shows and Hogness, 1986a], [Nathans, Thomas and Hogness, 1986b]). При одинаковых исходных основных цветах и тестовом освещении большинство наблюдателей выбирали одинаковые комбинации основных цве- тов, которые, по их мнению, идентичны тестовому освещению. Обычно это объясняется предположением, что для большинства людей характерно воспри- ятие трех основных различных цветов. Результаты генетических исследований, похоже, также подтверждают эту точку зрения.
Глава 6. Цвет 169 Законы Грассмана При описанных выше условиях подбор пары (в достаточно точном прибли- жении) является линейным. Из этого вытекают следующие законы Грассмана. Во-первых, если смешать два тестовых цвета, смесь их пар будет парой к полученному цвету — т.е. если Та = WalPl + Wa2P2 + ШазРз И Ть = WblPl + Wb2jF*2 + "ШЬзРз, то Та + Ть = (Wai + Wbl)Pl + (wa2 + Wb2)P2 + (wa3 + Wb3)P3. Во-вторых, если для двух тестовых цветов можно найти пары с одинаковыми весовыми коэффициентами, то эти цвета являются парой друг для друга, т.е. если Та = W1P1 4- W2P2 4- W3P3 и Ть = wiPi 4- W2P2 4- W3P3, то Та = Ть. Наконец, подбор пары является линейным; если Та = wiPi 4- W2P2 4- W3P3, тогда кТа = (fcwi)Pi 4- (kw2)P2 4- (fcw3)P3 для любого неотрицательного к. Исключения При одинаковом тестовом освещении и наборе основных цветов большин- ство людей, подбирая пару, выбирают одинаковые весовые коэффициенты. Та- ким образом, трехцветность и законы Грассмана справедливы настолько же, насколько любые законы, описывающие биологические системы. Исключения из этих закономерностей наблюдаются:
170 Часть I. Формирование изображений и модели изображений • у людей с искаженным восприятием цвета вследствие ошибки на гене- тическом уровне (такие люди могут подобрать любую пару с помощью меньшего количества основных цветов); • у людей с искаженным восприятием цвета вследствие болезни нервной си- стемы (у таких людей могут проявляться различные отклонения, включая полное отсутствие чувствительности к цвету); • у некоторых пожилых людей (их выбор весовых коэффициентов отлича- ется от нормы из-за появления в глазу пигментных пятен); • при очень ярком свете (который из-за оттенка и насыщенности отличается от менее ярких вариантов того же света); • при очень темной среде (в которой механизм передачи цвета несколько отличается от наблюдаемого в более яркой среде). 6.2.2. Цветовые рецепторы Трехцветность предполагает, что существуют базовые ограничения на спо- соб восприятия цвета глазом. Одна из гипотез, удовлетворительно объясняю- щих это явление, — это предположение, что глаз имеет три различных вида рецепторов, которые служат посредниками при восприятии цвета. Каждый из этих рецепторов преобразует падающий свет в электрический сигнал, переда- ющийся посредством нервных клеток. О чувствительности рецепторов можно судить по результатам экспериментов по подбору цветовой пары. Если два те- стовых освещения с разными спектрами выглядят одинаково, значит они ока- зывают одинаковое действие на рецепторы. Принцип инвариантности Согласно принципу инвариантности рецепторы являются однотипными (т.е. их реакция может быть сильнее или слабее, но она не зависит от длины волны падающего света). Экспериментально подтвердить это можно, аккуратно отделив светочувствительные клетки друг от друга и измерив их реакцию на свет разной длины волны или на основании логических выводов из экспери- ментов по подбору цветовой пары. Вообще, инвариантность — это мощный принцип, так как она дает хорошую и простую модель человеческого восприя- тия цветного света: два цвета можно считать одинаковыми, если они вызывают одинаковую реакцию рецепторов независимо от спектрального излучения. Так как принцип подбора пары линеен, то и реакция рецепторов должна быть линейной. Запишем реакцию fc-ro типа рецептора какрд:, его чувствитель- ность — как с7>(А), свет, попадающий на рецептор, — как Е(А), а диапазон длин волн видимого света — как Л. Просуммировав реакцию на каждую отдельную длину волны падающего света, можно найти полную реакцию рецепторов: Рк= [ <Tk(X)E(X)dX. Jл
Глава 6. Цвет 171 Рис. 6.6. В человеческом глазе есть три типа цветовых рецепторов, которые обычно называют колбочками. Эти рецепторы реагируют на все фотоны однотипно, но с разной интенсивностью. На рисунке показана зависимость логарифма относительной спектральной чувствительности от длины волны для трех типов цветовых рецепторов человеческого глаза. Первые два рецептора — их иногда называют красными и зелеными колбочками, соответственно, хотя более уместным на- званием будет длинно- и средневолновые рецепторы — имеют максимумы чувствительности при довольно близких значениях длины волны. Максимум чувствительности рецепторов третьего типа (синих колбочек, или, точнее, коротковолновых рецепторов) находится совершенно на другой длине волны. Реакцию рецептора на падающий свет можно найти, сложив произведения чувстви- тельности на спектральное излучение света по всем длинам волн. Графики построены на основе информации из базы данных Исследовательских лабораторий по цвету и зрению (Color and Vi- sion Research Laboratories) (http://www-cvrl.ucsd.edu/index.htm), обработанной Эндрю Стокманом (Andrew Stockman) Палочки и колбочки Из анатомии известно, что сетчатка глаза состоит из двух типов клеток, которые реагируют на свет по-разному в зависимости от своей формы. Све- точувствительная область колбочки имеет приблизительно коническую форму, тогда как у палочек она приблизительно цилиндрическая. Колбочки играют основную роль в цветном восприятии и полностью покрывают ямку глаза. Кол- бочки менее чувствительны к свету, чем палочки, т.е. при слабом освещении цветное зрение хуже и читать уже невозможно (не хватает пространственной точности, поскольку ямка не используется).
172 Часть I. Формирование изображений и модели изображений Исследования генетики цветного зрения подтверждают предположение о су- ществовании трех типов колбочек, отличающихся своей чувствительностью (ре- цепторы одного человека могут слегка отличаться от однотипных рецепторов другого человека). Чувствительность трех различных типов рецепторов к раз- ным длинам волн можно найти, сравнивая информацию по подбору цветовой пары, представленную обычными наблюдателями, с результатами таких же экс- периментов наблюдателей с недостатком одного из типов колбочек. Найденные таким способом схемы чувствительности показаны на рис. 6.6. Три типа колбо- чек называют S-колбочками, М-колбочками и L-колбочками (так как их мак- симумы чувствительности лежат, соответственно, в коротковолновой (S), сред- неволновой (М) и длинноволновой (L) областях). Другое название — синие, зе- леные и красные колбочки — не совсем правильно, поскольку восприятие крас- ного цвета определенно не вызывается стимуляцией красных колбочек и т.д. 6.3. ПРЕДСТАВЛЕНИЕ ЦВЕТА Точное описание цвета имеет большое коммерческое значение. Многие ви- ды продукции тесно связаны со специальными цветами (например, золотые ду- ги, цвет различных популярных компьютеров или цвет коробок фотопленки), и производители готовы многое отдать, чтобы убедиться, что две различные партии товара имеют один и тот же цвет. Здесь нужна стандартная система цве- тов, поскольку простых названий цветов недостаточно: относительно немногие люди знают разнообразные названия цветов, кроме того, большинство людей по-разному трактуют названия цветов. 6.3.1. Линейные цветовые пространства Существует естественный механизм передачи цвета: нужно договориться о стандартном наборе основных цветов, а затем описывать любое цветное осве- щение тремя весовыми коэффициентами, которые бы люди выбрали в процессе описанной выше задачи подбора. В принципе, такое решение довольно просто. Для описания цвета организовывается и проводится эксперимент по подбору пары, а из него получаются весовые коэффициенты. Кроме того, если для осве- щения поверхности использовать стандартный свет, то описанный подход поз- воляет передавать цвет такой поверхности (разумеется, если все описываемые поверхности будут одинаково чистыми). Эксперимент по подбору цветовой пары целесообразно проводить при каж- дой попытке описать цвет. Например, эту схему используют в магазинах красок: вы показываете требуемый цвет и вам смешивают краски, пока не будет найдена соответствующая пара. Это делается потому, что предсказать цвет смеси кра- сок сложно из-за эффектов рассеяния. Впрочем, из законов Грассмана следует, что комбинации цветного света — по крайней мере те, что видны на обычном дисплее — смешиваются линейно-, это означает, что возможна намного более простая процедура.
Глава 6. Цвет 173 Функции подбора цвета Если цвета смешиваются линейно, можно построить простой алгоритм опре- деления весовых коэффициентов смеси основных цветов из данного фиксиро- ванного набора. Спектральное излучение источника можно считать взвешенной суммой излучений отдельных источников (причем каждый источник излуча- ет свет с единственной длиной волны). Поскольку операция подбора цвета линейна, комбинацию основных цветов, которая образует пару к взвешенной сумме отдельных источников, излучающих на одной длине волны, можно по- лучить, подбирая цвета к каждому отдельному источнику, а затем суммируя эти весовые коэффициенты. Если есть весовые коэффициенты всех основных цветов, определяющие па- ру для каждого отдельного источника (набор функций подбора света), то можно найти весовые коэффициенты цветовой пары для произвольного спек- трального излучения. Функции подбора цвета, которые далее обозначаются как /1(А), /г(А) и /з(А), получаются из набора основных цветов Pi, Р2 и Рз на основе эксперимента. Таким образом, чтобы найти пару для отдельного ис- точника излучения U\X), подбирается весовой коэффициент каждого основного цвета. Этот процесс можно записать как ЩА) = Л (A) Pi + /2(А)Р2 + /3(А)Рз (т.е. для каждой длины волны А функции Л(А), /г(А) и /з(А) дают весовые коэффициенты, необходимые для нахождения пары для отдельного источника, излучающего на этой длине волны). Источник, который обозначен как S(X), — это сумма огромного количества источников, излучающих на своей длине волны с определенной интенсивно- стью. Подберем теперь пару к основным цветам каждого отдельного источника, а затем сложим полученные весовые коэффициенты: 5(А) — W1P1+ W2P2 + W3P3 = -{У A(A)S(A)Ja} Рх + /2(А)5(А)</а}р2 + {У /3(A)S(A)dA J Рз. Общие вопросы линейных цветовых пространств Линейную систему названий цветов можно получить из определения основ- ных цветов (что подразумевает использование функций подбора цвета) или из определения функций подбора цвета, в которых используются основные цве- та. Неприятный факт: если основные цвета — это реальное освещение, то на определенной длине волны по крайней мере одна из функций подбора цвета будет отрицательной. Это не противоречит законам природы, а просто говорит о том, что для подбора некоторых видов освещения необходимо пользоваться разностным соответствием независимо от принятого набора основных цветов. Этой проблемы можно избежать, если, например, определить функции под- бора цвета, которые будут всегда положительными (при этом основные цвета
174 Часть I. Формирование изображений и модели изображений Рис. 6.7. Слева изображены функции подбора цвета для основных цветов RGB. Отрицательные значения указывают на то, что для подбора цвета на этой длине волны с основными цветами красный-зеленый-синий необходимо пользоваться разностным сопоставлением. Справа показаны функции подбора цветов для системы МКО с основными цветами X, Y и Z; эти функции все- гда положительны, но основные цвета не являются реальными. Графини построены по данным из базы данных Исследовательских лабораторий по цвету и зрению, собранной Эндрю Сток- маном (Andrew Stockman) и Линдсеем Шарпом (Lindsey Sharpe). База доступна по адресу http://www-cvrl.ucsd.edu/index.htm будут нереальными, поскольку на определенной длине волны их спектральное излучение будет отрицательным). Хотя это и кажется проблематичным — как можно составить настоящий цвет из нереальных основных цветов? — на самом деле это не так, поскольку в системах именования цветов эта схема не применяется. Как правило, произ- водится простое сравнение весовых коэффициентов, а потом делается вывод, насколько похожи цвета, а для этого достаточно знать только функции подбора цвета. Разнообразные системы именования были стандартизованы МКО (Меж- дународная комиссия по освещению — Commission International d’Ёс lairage) — организации, предназначенной для разработки подобных стандартов. Цветовое пространство XYZ согласно стандартам МКО Самым распространенным стандартом является цветовое пространство XYZ, определенное МКО. Функции подбора цвета выбраны так, чтобы они были всегда положительными; поэтому координаты любого реального цвета всегда положительны. В системе МКО определить основные цвета X, Y или Z невозможно, поскольку на некоторой длине волны значение их спектрального излучения будет отрицательным. В то же время, при данных функциях подбора цвета можно найти координаты XYZ, следовательно, описать цвет. Линейные цветовые пространства дают ряд полезных графических конструк- ций, которые намного сложнее изобразить в трех измерениях, чем в двух, по- этому принято строить сечение пространства XYZ плоскостью X + Y 4- Z = 1
Глава 6. Цвет 175 Рис. 6.8. Пространство видимых цветов (стандарт МКО) в координатах XYZ — это конус, вершина которого находится в начале координат. Как правило, для упрощения подбора цвета удобно снизить его яркость (это можно делать, поскольку восприятие цвета почти линейно) — изображенный конус разрезается плоскостью X 4- Y + Z — 1, в результате чего получается ху-пространство МКО, показанное на рис. 6.9 и 6.10 (как показано на рис. 6.8) и изображать полученную фигуру в координатах Это пространство показано на рис. 6.9 и 6.10. Еще несколько полезных кон- струкций представлено на рис. 6.11. Пространство МКО (ху) широко использу- ется в учебниках по компьютерному зрению и компьютерной графике, а также в некоторых прикладных областях, но профессионалы, работающие с цветом, обычно называют этот подход несовременным. Цветовые пространства RGB Цветовые пространства обычно предназначены для практических целей, поэтому придумано их много.Одним из линейных цветовых пространств явля- ется пространство RGB, в котором для каждого основного цвета формально определена длина волны (645,16 нм для красного, 526,32 нм для зеленого и 444,44 нм для синего; см. рис. 6.7). Неформально в системе RGB исполь- зуются все цвета, какие могут появиться на экране в качестве основных. Имеющиеся цвета обычно можно представить единичным RGB-кубом, грани которого соответствуют весовым коэффициентам красного, зеленого и синего цвета. Этот куб показан на рис. 6.12. CMY и черный цвет Как только мы начинаем рисовать, интуиция подсказывает, что основными цветами должны быть красный, желтый и синий, и что желтый можно полу- чить, смешав красный и зеленый. Это интуитивное представление неприменимо к мониторам, поскольку здесь речь идет о пигментах, которые смешиваются по
176 Часть I. Формирование изображений и модели изображений Рис. 6.9. На рисунке изображено сечение постоянной яркости стандарта МКО 1931 цветового пространства ху. Имеем две координатные оси. Кривую границы часто называют спектральной траекторией' она показывает цвет при наблюдении освещения определенной длины волны. На ри- сунке показана траектория цветов спектра излучения абсолютно черного тела при разных темпе- ратурах и спектральная траектория неба. Приблизительно в центре диаграммы есть нейтральная точка — цвет, для которого равны весовые коэффициенты трех основных цветов. В системе МКО основные цвета выбраны таким образом, чтобы эта точка была бесцветной. Как правило, цвета, которые находятся дальше от нейтральной точки, насыщеннее (так темно-красный отличается от бледно-розового) и при перемещении вокруг нейтральной точки меняется их оттенок (от красного до зеленого) разностному принципу, а не об освещении. Пигмент частично поглощает па- дающий свет, забирая некоторые составляющие, в результате чего отраженный свет приобретает определенный цвет. Таким образом, красные чернила — это на самом деле краситель, который поглощает синий и зеленый цвет, а падающий красный свет проходит сквозь краситель и отражается от бумаги. Цветовые пространства с таким типом разностного соответствия могут быть очень сложными. В простейшем случае смешивание цветов линейно (или до- статочно близко к линейному), и тогда можно пользоваться пространством CMY. В этом пространстве есть три основных цвета: cyan (сине-зеленый), ma- genta (оттенок пурпурного) и yellow (желтый). Эти основные цвета можно счи-
Глава 6. Цвет 177 Рис. 6.10. На рисунке показано сечение постоянной яркости стандарта МКО 1931 цветового пространства ху. Обозначены названия цветов. Как правило, цвета, которые находятся дальше от нейтральной точки, насыщеннее (так темно-красный отличается от бледно-розового) и при перемещении вокруг нейтральной точки меняется их оттенок (от красного до зеленого) тать результатом отнимания исходного цвета от белого; голубой — это W — R (белый — красный); пурпурный — это W — G (белый — зеленый), а желтый — это W В (белый —синий). Теперь то, как выглядят комбинации цветов, можно оценивать относительно цветового пространства RGB. Например, комбинация голубого и пурпурного цветов (W - R) + (W - G) = R + G + В - R - G = В, т.е. синий. Обратите внимание, что W + W — W, поскольку считается, что чер- нило не может повлиять на бумагу таким образом, чтобы она отражала больше света, чем чистая бумага. На практике в печатающих устройствах использу- ется по меньшей мере четыре краски (голубая, пурпурная, желтая и черная), так как комбинация цветных чернил дает плохой черный цвет, потому что до-
178 Часть I. Формирование изображений и модели изображений Рис. 6.11. Линейная модель системы цветов дает ряд полезных конструкций. Если есть два цвета с координатами МКО Ан В, то все цвета, которые можно получить из неотрицательных комбина- ций этих цветов, можно представить на отрезке прямой, соединяющем Ан В. Подобным образом, при заданных В, С и D цвета, которые получаются из их комбинаций, лежат в треугольнике, образованном тремя этими точками. Это важно при разработке мониторов — у каждого монитора есть только три цвета, и чем насыщеннее цвет каждого из них, тем больше цветов можно изоб- разить. Именно поэтому одни и те же цвета выглядят иначе на различных мониторах. Кривизна спектральной траектории — вот причина того, почему ни один набор из трех реальных основных цветов не может передать все цвета без разностного сопоставления вольно трудно достичь хорошего согласования трех красок, чтобы избежать цветного ореола вокруг текста, и потому что цветные чернила обычно дороже, чем черные. Добиться хороших результатов от процесса цветной печати все еще достаточно сложно: разные чернила значительно отличаются друг от друга по своим спектральным свойствам, у разной бумаги также разные спектральные свойства, кроме того, краски могут смешиваться нелинейно. 6.3.2. Нелинейные цветовые пространства Координаты цвета в линейном пространстве не обязательно кодируют свой- ства, принятые в языке, или важные для применения. В число полезных понятий, касающихся света, входят: оттенок — свойство цвета, которое ме- няется от красного до зеленого, насыщенность — свойство цвета, которое изменяется от красного до розового и яркость (иногда его называют светло- стью, или значением) — свойство, которое изменяется от черного до белого. Например, если нужно проверить, попадает ли цвет в особенную область красного цвета, следует закодировать непосредственно оттенок цвета. Еще одна неприятность, связанная с линейными пространствами, — это то, что координаты цвета не соответствуют человеческому пониманию топологии
Глава 6. Цвет 179 Рис. 6.12. Слева мы видим RGB-куб — пространство всех цветов, которые получаются из ком- бинаций трех основных цветов (красного, зеленого и синего — это обычно определяется цветной реакцией монитора) с весовыми коэффициентами от нуля до единицы. Представленный куб принято рассматривать вдоль его нейтральной оси — от начала координат до точки (1, 1, 1) — в этом случае виден шестиугольник, изображенный посредине. Шестиугольник кодирует оттенок (свойство, кото- рое изменяется при изменении цвета от зеленого до красного) как угол, который подбирается интуи- тивно. Справа мы видим конус, образованный этим сечением, где длина оси конуса равна значению (или яркости) цвета, угол наклона дает оттенок, а расстояние до начала координат — насыщенность цвета; принято считать, что оттенки образуют круг, в том смысле, что оттенок изменяется от красного через оранжевый до желтого, а затем до зеленого и го- лубого, синего, фиолетового и опять красного. Другой подход — это понятие о локальной связи оттенков: красный соседствует с фиолетовым и оранже- вым, оранжевый — с красным и желтым, желтый — с оранжевым и зеленым, зеленый — с желтым и голубым, голубой — с зеленым и синим, синий — с голубым и фиолетовым, а фиолетовый — с синим и красным. Каждая из этих локальных связей работает, и глобально их можно смоделировать, расположив оттенки по кругу. Это значит, что оттенок нельзя смоделировать с помощью отдельных координат линейного цветового пространства, так как у координат есть максимальное значение, которое сильно отличается от минимального. Оттенок, насыщенность и значение Обычный способ решить эту проблему — создать цветовое пространство, которое будет отражать эти связи с помощью нелинейных преобразований в пространстве RGB. Существует множество таких пространств. Одно, назы- ваемое пространством HSV (Hue-Saturation-Value — оттенок-насыщенность- значение), можно получить, направив луч зрения по центральной оси RGB- куба. Поскольку RGB — линейное пространство, то яркость, которую в про- странстве HSV называют значением, изменяется при удалении от начала ко- ординат. Можно спроектировать RGB-куб и получить двумерное пространство
180 Часть I. Формирование изображений и модели изображений с постоянным значением, а для повышения точности преобразовать его в ше- стиугольник. Это даст структуру, показанную на рис. 6.12, где оттенок опре- деляется углом, который изменяется при повороте вокруг нейтральной точки, а при удалении от нее изменяется насыщенность. Существует множество других возможных преобразований координат при переходе от одного линейного цветового пространства к другому или от линей- ного к нелинейному (хорошим справочником по этому вопросу является книга [Fairchild, 1998]). Очевидного преимущества одних координат над другими нет (особенно если эти системы отличаются только одним преобразованием), если не рассматривать вопросы кодирования, скорости передачи информации и т.п. или однородности восприятия. Равномерные цветовые пространства Как правило, точно воспроизвести цвет нельзя. Это значит, что требуется знать, заметит ли человек разницу в цвете. В общем случае полезно сравни- вать между собой небольшие различия в цвете, но опасно пытаться сравнивать большие различия, например искать ответ на вопрос: “Какая разница больше: между синим и желтым участком или между красным и зеленым?”. Можно определить едва заметную разницу, модифицируя цвет, который показывается наблюдателю, до тех пор, пока наблюдатель не заметит, что по сравнению с первоначальным вариантом цвет изменился. Если эти различия отобразить в цветовом пространстве, они сформируют границу области цветов, неотличимых от исходного цвета. Обычно едва различимые отличия образуют эллипсы. Оказывается, что в пространстве МКО (х, у) эти эллипсы довольно сильно зависят от того, в какой части пространства они расположены, как показано на рис. 6.13. Из сказанного следует, что величина отличий по координатам (х,у), которая задается как ((Аз?)2 4- (А?/)2/1/2), — это плохой показатель значения отличий в цвете (если бы это был хороший показатель, то эллипсы, представляющие неотличимые цвета, были бы кругами). В этой связи полезно ввести однород- ное цветовое пространство — пространство, в котором расстояние однозначно указывает на величину отличия двух цветов; если в таком пространстве рассто- яние не будет превышать некоторого порогового значения, человек не сможет отличить один цвет от другого. Более однородное пространство можно получить из пространства МКО XYZ, воспользовавшись проекционными преобразованиями и приведя эллипсы к симметричному виду; это даст пространство МКО (u'v'), показанное на рис. 6.14. Координаты этого пространства будут следующими: z / л = ( 4Х_______________9У \ 4 15У+ 3Z’X + 15У + ЗУ; ’ Как правило, расстояние между координатами в пространстве (ur, v') однознач- но указывает на величину отличия двух цветов. Конечно, здесь не учитывается отличие в яркости. На сегодняшний день почти универсальным и самым рас-
Глава 6. Цвет 181 Рис. 6.13. На рисунке показаны варианты подбора цветовой пары в пространстве МКО (х,у). В центре эллипса расположен цвет пробного освещения; размер эллипса показывает разброс цве- тов, которые испытатели выбирали в качестве пары для пробного цвета; граница показывает, где находятся едва различимые цвета. Для наглядности эллипсы на рисунке слева увеличены в 10 раз; справа они изображены в выбранном масштабе. Такие эллипсы называют эллипсами МакАдама (Mac Ad am ellipses). Обратите внимание, что эллипсы в верхней части фигуры больше, чем в ниж- ней, и что они меняют свою ориентацию. Это значит, что величина отличия в координатах (х, у) — плохой показатель отличия в цвете. Эллипсы построены на основе данных из [MacAdam, 1942] пространенным однородным цветовым пространством является пространство МКО LAB. Координаты цвета в пространстве LAB можно найти как нелиней- ную проекцию координат XYZ: * / У \ з £ = 116 ( ) - 16, \ / а* = 500 Здесь Хп, Yn и Zn — это координаты X, Y и Z эталонного белого участка. Пространство LAB популярно потому, что оно однородно по своей природе. В некоторых задачах необходимо знать, насколько разными два цвета будут казаться человеку, а отличия координат пространства LAB позволяют получить однозначный ответ на этот вопрос.
182 Часть I. Формирование изображений и модели изображений Рис. 6.14. На рисунке показан стандарт МКО 1976 пространства которое представля- ет собой проекцию пространства МКО (х,у). Целью было преобразование эллипсов МакАдама в однородные круги, что дало бы однородное цветовое пространство. Для того чтобы сделать про- странство более однородным, используются различные нелинейные преобразования (подробнее см. [Fairchild, 1998J) 6.3.3. Пространственные и временные эффекты Трудно предсказать, как будет выглядеть на экране сложное цветное изоб- ражение (т.е. в котором фигурирует намного больше двух цветов). Если на зрительную систему некоторое время воздействовать определенным осветите- лем, это приведет к адаптации к цвету — данный процесс известен под назва- нием хроматическая адаптация. Адаптация приводит к искажению цветовой диаграммы в том смысле, что два наблюдателя, привыкшие к разным источни- кам освещения, могут сказать, что два спектральных излучения с совершенно различными спектрами одинаковы по цвету. Причиной адаптации может быть присутствие в поле зрения участков поверхности. Другие немаловажные меха- низмы — это ассимиляция, когда окружающий цвет создает видимость того, что цвет участка поверхности смещается в сторону окружающего цвета, и кон- трастность, когда влияние окружающего цвета приводит к тому, что цвет участка поверхности отдаляется от окружающего цвета. Оказывается, что эти явления связаны с проблемой кодирования сигнала в оптическом нерве и ста- бильностью цвета (см. раздел 6.5).
Глава 6. Цвет 183 6.4. МОДЕЛЬ ЦВЕТА ИЗОБРАЖЕНИЯ Для правильной интерпретации значений цветов, которые выдает камера, необходимо понять, что делает камера и какие физические явления нужно смо- делировать. Наша модель описывает несколько довольно простых и мощных обобщающих механизмов. 6.4.1. Камеры Большая часть цветных камер содержит одно устройство формирования изображения. В каждом чувствительном элементе есть один из трех фильтров, обеспечивающий требуемую спектральную чувствительность (грубо говоря, чувствительность к синему, зеленому или красному). Эти фильтры располо- жены в виде мозаики, а для их описания используется множество различных моделей. Информация на выходе ПЗС затем обрабатывается, чтобы полно- стью восстановить красные, зеленые и синие изображения. Конечно, некоторая информация о сигнале при этом теряется; потери зависят от особенностей ка- меры и мозаики, но обычно они не влияют на качество изображения, как оно воспринимается зрителем, хотя могут сильно повлиять на различные простран- ственные расчеты, например, при определении положений краев (поскольку пространственное разрешение по интенсивности может быть не таким, каким кажется). Желательно иметь систему ПЗС-элементов и фильтров, спектральная чув- ствительность с точностью до линейного преобразования описывается функци- ей подбора цвета в пространстве МКО XYZ. Это свойство означает, что камера будет подбирать цвет точно так, как это делают люди. Похоже, что на практике этого добиться довольно трудно, поскольку опыт показывает, что большинство камер в действительности не обладают этим желаемым качеством. Элементы ПЗС — это линейные устройства. В то же время большинство пользователей привыкло к пленкам, которые сжимают входящий динамиче- ский диапазон (различия в яркости на верхнем краю диапазона уменьшаются так же, как и на нижнем). Информация на выходе линейного устройства вы- глядит слишком резкой (темные места слишком темны, а светлые — слишком светлы), так что производители применяют различные формы сжатия выхо- дящей информации. Самый распространенный способ — это гамма-коррекция. Такая форма сжатия изначально предназначалась для учета нелинейности экра- на. Обычно интенсивность на экране равна VT, где Vtn — напряжение, которое подается на электронную трубку (для экранов дисплеев у = 2,2). В боль- шинстве устройств с дисплеями напряжение на электронной трубке — это линейная функция значения в буфере кадра. Таким образом если требуется интенсивность I, то значение в буфере кадра должно быть пропорциональным . Обычно камеры допускают гамма-коррекцию, т.е. чтобы получить нуж- ную интенсивность, можно взять значение, которое дает камера, и поместить его непосредственно в буфер кадра. Это значит, что информация на выходе камеры является нелинейной функцией входящей информации.
184 Часть I. Формирование изображений и модели изображений Поступающее спектральное Реакция рецептора к-го класса рецепторов, ^(Л)р(Л) Е(Л)с1Л Спектральное альбедо, Р(Я) Рис. 6.15. Если участок идеально рассеивающей поверхности с коэффициентом спектрального рассеяния р(А) освещается светом, спектр которого — Е(Х), то спектр отраженного света будет равен р(Л)Е'(Л) (умноженное на некоторую постоянную, связанную с ориентацией поверхности, которой мы договорились пренебрегать). Следовательно, если линейный светочувствительный дат- чик к-го типа видит этот участок поверхности, то его реакцией будет рк = <jk(X)p(X)E(X)dX, где Л — это диапазон всех существенных длин волн, а crfe(A) — чувствительность к-го светочув- ствительного датчика Было время, когда ПЗС-камеры оснащались отдельной коробкой управля- ющей электроники, имевшей переключатель, который отключал нелинейные элементы; эти счастливые времена теперь уже в прошлом. Теперь соотношение входящей и выходящей информации в камере нужно калибровать, посколь- ку нелинейных элементов существует множество (см., например, [Barnard and Funt, 2002], [Holst, 1998] или [Vora, Farell, Tietz and Brainard, 1997]). Сто- ронники крайних мер иногда вносят изменения в электронику камеры, но это решение требует определенной смелости. В дальнейшем будем считать, что связь входа и выхода камеры известна и учитывается таким образом, чтобы камера казалась линейной. 6.4.2. Модель цвета изображения Цвет света, попадающего в камеру, зависит от двух факторов: во-первых, от спектральной отражающей способности той поверхности, от которой посту- пает свет, во-вторых, от спектрального излучения света, попадающего на эту поверхность. Если участок идеально рассеивающей поверхности с коэффици- ентом спектрального рассеяния р(Л) освещается светом, спектр которого 2?(А), то спектр отраженного света будет равен р(Л)Е?(А) (умноженное на некоторую постоянную, связанную с ориентацией поверхности, которой мы договорились пренебрегать). Следовательно, если линейный светочувствительный датчик к- го типа видит этот участок поверхности, то его реакцией будет Рк= [ tTk(X)p(X)E(X)dX, JA
Глава 6. Цвет 185 Рис. 6.16. Источники света могут иметь совершенно разные цвета. На рисунке цвет четырех источ- ников света (рис. 6.2) сравнивается с цветом однородного распределения спектральной мощности. Изображение построено в координатах МКО (г, у) где Л — это диапазон всех существенных длин волн, а а*; (А) — чувствитель- ность к-го светочувствительного датчика. Цвет света, падающего на поверхность, может быть разным — от голубого флуоресцентного уличного света до теплого оранжевого света, который дает лампочка накаливания, или красного цвета солнца на закате — так что цвет света, попадающего в камеру, не всегда дает точное представление о цвете рассматриваемой поверхности (рис. 6.16, 6.17, 6.18 и 6.19). Опустив подробности физических моделей, описанных в главе 5, значение пикселя камеры можем представить как С(х) = gd(x)d(x) + gs(x)s(x) + i(x). В этой модели
186 Часть I. Формирование изображений и модели изображений Рис. 6.17. При различном освещении может казаться, что поверхности имеют совершенно разные цвета. На рисунке показан цвет синего и фиолетового цветков (рис. 6.3) при освещении четырьмя различными источниками (рис. 6.2) и при однородном распределении спектральной мощности • d(x) — цвет изображения эквивалентной плоской фронтальной поверх- ности при таком же освещении; • g<i(x) — пространственно-зависимый множитель, который указывает на изменение яркости, вызванное изменением ориентации поверхности; • s(x) — цвет изображения зеркального отражения от эквивалентной плос- кой фронтальной поверхности; • да(х) — пространственно-зависимый множитель, который указывает на изменение энергии зеркального отражения; • г(а?) — множитель, который указывает на взаимное отражение цветов, пространственные изменения освещения и т.п. В первую очередь интересна информация, которую можно извлечь из цвета на локальном уровне, поэтому не будем подробно останавливаться на структуре множителей ^(гс) и г(х). Как из г(а?) можно извлечь информацию — неизвест- но; опыт показывает, что это достаточно сложно. Иногда этот множитель может быть очень малым по сравнению с другими, кроме того, он обычно медленно изменяется в пространстве. Далее удобно будет пренебрегать этим множите- лем, поэтому предположим, что он мал (или что его присутствие не оказывает критического воздействия на приведенные алгоритмы). В то же время, множи- тель 5d(x) можно рассмотреть подробно. 6.4.3. Приложение: нахождение бликов Отблески могут сильно сказываться на внешнем виде предмета. Как прави- ло, это маленькие, яркие пятна, которые называют зайчиками. Зайчики значи- тельным образом влияют на наше восприятие свойств поверхности; изобразите на рисунке маленький, похожий на зайчик, участок, и предмет покажется глян- цевым или блестящим. Часто эти блики бывают слишком яркими для камеры,
Глава 6. Цвет 187 Рис. 6.18. При различном освещении может казаться, что поверхности имеют совершенно разные цвета. На рисунке показан цвет желтого и оранжевого цветков (рис. 6.3) при освещении четырьмя различными источниками (рис. 6.2) и при однородном распределении спектральной мощности Рис. 6.19. При различном освещении может казаться, что поверхности имеют совершенно разные цвета. На рисунке показан цвет белого лепестка (рис. 6.3) и зеленого листа (рис. 6.4) при освещении четырьмя различными источниками (рис. 6.2) и при однородном распределении спектральной мощности поэтому определить цвет сложно. Впрочем, поскольку внешний вид самого отблеска достаточно строго ограничен, существует ряд эффективных схем его создания, а результат можно использовать в качестве ключа к определению формы. Динамический ряд практически доступных альбедо относительно мал. По- верхность с очень большим или очень малым альбедо создать трудно, рсвеще- ние, как правило, бывает однородным, а большинство камер по своему рабоче- му диапазону приближаются к линейным. Это значит, что очень яркие участки не могут быть результатом диффузного отражения; здесь должны фигуриро- вать либо источники (в той или иной форме — возможно, застекленное окно
188 Часть I. Формирование изображений и модели изображений с ярким светом за ним), либо блики. Более того, блики обычно малы. Следо- вательно, если искать маленькие яркие участки, то с большой вероятностью будут обнаружены именно блики ([Brelstaff and Blake, 1988]). На цветных изображениях блики на диэлектриках и проводящих веществах часто выглядят совершенно по-разному. Эта связь с проводимостью объясняет- ся тем, что электрическое поле не может проникнуть в проводник (электроны внутри проводника начинают двигаться в противоположном направлении, что- бы нейтрализовать поле), поэтому свет, попадающий на металлическую поверх- ность, либо поглощается, либо зеркально отражается от нее. Тусклые металли- ческие поверхности кажутся тусклыми из-за шероховатости поверхности, а на блестящих металлических поверхностях есть блестящие участки характерного цвета, поскольку проводник поглощает разную энергию на разных длинах волн. В то же время свет, попадающий на диэлектрик, поглощается. Многие диэлектрические поверхности можно представить в виде однородной матрицы со случайным образом вкрапленной окраской; данная модель особенно удачна для пластмасс и некоторых красок. Согласно этой модели есть две со- ставляющие отражения, которые соответствуют нашим понятиям зеркальности и рассеяния: объемное отражение, которое происходит, когда свет проникает в матрицу, попадает на различные окрашенные элементы, а затем покидает по- верхность; и поверхностное отражение, которое происходит при зеркальном отражении света от поверхности. Допустим, что окраска распределена случай- ным образом (небольшими участками, не на поверхности и т.д.) и матрица име- ет разумные размеры. Тогда составляющая, названная объемным отражением, ведет себя как составляющая спектрального альбедо, соответствующая рассе- янию, которая зависит от окраски, а поверхностная составляющая не зависит от длины волны. Допустим, что наблюдается некий диэлектрический предмет одного цвета. Далее будем считать, что множителем, отвечающим за взаимное отражение, можно пренебречь, и модель яркости пикселя камеры приобретет такой вид: р(х) = gd(x)d + gs(x)s, где в — цвет источника, d — цвет рассеянного света, дл(х) — геометрический множитель, который зависит от ориентации поверхности, gs(x) — множитель, который показывает степень зеркального отражения. Если предмет искривлен, то величина gs(x) мала на большей части поверхности и становится большей только вблизи бликов; величина gd(x) с изменением ориентации поверхности изменяется намного медленнее. Построим карту цветов, которые дает эта по- верхность в пространстве реакции датчика и посмотрим, какие структуры здесь появляются (рис. 6.20). Множитель gd(x)d дает прямую, которую можно продолжить до начала координат, поскольку она представляет все тот же вектор реакции датчика, умноженный на пространственно-зависимый коэффициент. Если есть отблеск, то будет видна вторая линия, обусловленная gs(x)s, которая в общем случае не
Глава 6. Цвет 189 Рис. 6.20. Допустим, что есть изображение отдельной однородно окрашенной поверхности. Ис- пользуемая модель отраженного света должна дать ту же гамму цветов, что и на рисунке. Считает- ся, что отраженный свет состоит из рассеянной и зеркальной составляющих, а зеркальная часть — это цвет источника света. Большинство точек на поверхности не обладают большим зеркальным отражением, а просто представляют собой более темные или более светлые варианты одного и то- го же цвета рассеивающей поверхности. В некоторых точках зеркальная составляющая намного больше, и это приводит к “излому” функции из-за прибавления к множителю, соответствующему источнику, члена, отвечающего за рассеяние. Если рассеянный свет достаточно ярок, тот или иной цветовой канал может засветиться (перенасытиться) (точка Т); подобным образом, канал может засветиться и в том случае, если будет ярким зеркальное отражение (точка S) проходит через начало координат (из-за члена, отвечающего за рассеяние). Это прямая, а не часть плоскости, так как gs(x) будет большим только в небольшой области нормалей к поверхности. Так как поверхность искривлена, это будет соответствовать небольшому участку поверхности. Множитель в этой области будет приблизительно постоянным. Ожидается, что это будет прямая, а не значение отдельного пикселя, поскольку поверхность обладает (возмож- но, узкими) зеркальными лепестками, т.е. зеркальный коэффициент — это не фиксированная величина, а некоторый диапазон значений. Эта вторая прямая может пересечь грань цветного куба и изменить свое направление. Полученная модель излома почти непосредственно дает алгоритм определе- ния блика — вначале найти модель, а затем найти линию блика. Все пиксели этой линии будут зеркальными пикселями, и можно будет легко оценить зеркальную и рассеивающую составляющие. Для повышения эффективности метода нужны гарантии, что набор пикселей описывает только один предмет.
190 Часть I. Формирование изображений и модели изображений Рис. 6.21. Линейные кластеры бликов на пластмассовых предметах можно определить с помощью рассуждений об окнах пикселей изображения. Для системы пластмассовых предметов на черном фоне окно на заднем плане дает область пикселей, которые подобны точкам в цветовом простран- стве (все пиксели имеют одинаковый цвет). Окно, расположенное вдоль тела, дает кластер точек в цветовом пространстве в виде прямой, поскольку интенсивность меняется, но цвет остается прежним. На границе блика окна дают кластеры в виде плоскостей, так как здесь точки — это взвешенные комбинации двух различных цветов (зеркального отражения и цвета предмета). На- конец, внутри области отражения окна дают объемные кластеры, так как камера засвечивается, и отражение окна может содержать как окно, определяющее границу блика, так и засвеченные точ- ки. Будет ли эта область прямой, плоскостью или объемным образованием можно легко определить при изучении собственных значений ковариантного тензора пикселей Этого можно достичь с помощью локальных окон изображения, как показано на рис. 6.21. Соображения, определяющие метод, сохраняют силу даже тогда, когда поверхность не монохроматична (например, кофейная чашка с узором), но определение полученных структур в цветовом пространстве редко освещается в литературе. 6.5. ОПРЕДЕЛЕНИЯ ЦВЕТА ПОВЕРХНОСТИ ПО ЦВЕТУ ИЗОБРАЖЕНИЯ Требуется алгоритм постоянства цвета, который из данного изображе- ния позволял бы вычесть влияние освещения и сообщить настоящий цвет рас- сматриваемой поверхности. Постоянство цвета — это интересная подзадача, которая, похоже, весьма актуальна как общая задача компьютерного зрения: по неоднозначным показателям изображения определяются некоторые внешние
Глава 6. Цвет 191 параметры, требуется использовать некоторую модель, чтобы понять значение этих параметров, и как результат нужно представление неопределенности, сле- дующей из измерений (возможно, интервалы доверия, ковариантность апосте- риорного значения или ряды репрезентативных решений). 6.5.1. Человеческое восприятие цветной поверхности Некоторое подобие алгоритма постоянства цвета имеет человеческая зри- тельная система. Люди часто не знают об этом, так что начинающие фотогра- фы иногда удивляются, почему фотографируя в помещении при флуоресцент- ном освещении, получают голубоватую сцену, а фотография той же сцены при уличном освещении может иметь теплый оранжевый оттенок. Принято отличать постоянство цвета, под которым обычно понимают незави- сящее от интенсивности описание цвета (оттенок и насыщенность) и постоян- ство освещенности, что представляет собой способность человека различать белую, серую или черную поверхность (освещенность поверхности) независимо от изменения интенсивности освещения (яркости). Постоянство цвета нельзя считать ни корректно определенным, ни обязательно необходимым понятием. Люди могут определить: • каким будет цвет поверхности при освещении белым светом (что обычно и называют цветом поверхности)', • цвет света, попадающего в глаз; эта способность помогает художникам рисовать поверхности, которые освещаются цветным светом; • а также иногда цвет света, падающего на поверхность. Всю указанную выше информацию можно получить из алгоритма постоянства цвета. Колориметрические теории из раздела 6.3 позволяют предсказать, какой цвет увидит наблюдатель, которому покажут изолированное пятно света с за- данным распределением спектральной мощности. Человеческий алгоритм по- стоянства цвета, оказывается, может дать ключ к структуре сложных сцен, т.е. предсказания колориметрических теорий могут оказаться очень неточными, ес- ли изучаемое пятно света будет частью большей и более сложной сцены. Убеди- тельный пример этого явления — демонстрации Лэнда и МакКанна ([Land and McCann, 1971]), показанные на рис. 6.22. Совсем непросто было предсказать, какие цвета увидит человек на сложной сцене ([Fairchild, 1998], [Helson, 1938а, 19386, 1934, 1940]), причем это всего лишь одна из многочисленных проблем, которые препятствуют созданию хорошей системы воспроизведения цвета. Человеческий механизм постоянства цвета исследован на удивление плохо. В основных экспериментах ([Arend and Reeves, 1986], [McCann, McKee and Taylor, 1976]) учитывались не все обстоятельства. Например, неизвестно, на- сколько устойчив механизм постоянства цвета, или до какого верхнего предела суждение о цвете остается справедливым. Иногда алгоритм постоянства цвета не срабатывает (иначе фото/киноиндустрия просто не могла бы возникнуть),
192 Часть I. Формирование изображений и модели изображений Показания фотометра Мнение аудитории — “красный” Показания фотометра Белый свет Цветной свет Мнение аудитории — “синий” Рис. 6.22. Лэнд (Land) показывал зрителям одеяло, сшитое из плоских цветных бумажных пря- моугольников (которое называют “мондрианом” за очевидное сходство с работами этого художни- ка), освещаемое тремя прожекторами с различными оттенками красного, синего и зеленого цвета, соответственно. С помощью фотометра он измерял энергию, исходящую из отдельной точки по трем различным каналам, соответствующим трем типам рецепторов человеческого глаза. Показа- ния приборов фиксировались, после чего зрителей просили назвать цвет участка. Предположим, что ответом было “красный” (слева). Затем Лэнд перемещал прожекторы, чтобы свет отражался от другого участка, который даст точно такие же показание фотометра, и снова просил зрителей назвать участок. Ответ должен был соответствовать цвету участка при освещении белым цветом, т.е. если участок в белом свете выглядит синим, то ответом должно было быть “синий” (справа). При более поздних демонстрациях Лэнд устанавливал на прожекторы клиноподобные нейтральные плотностные фильтры, так что цвет света, падающего на бумажное одеяло, можно было изменять плавно. Снова, хотя показания фотометра очень сильно отличались в разных частях одеяла, зрители видели участок таким, каким бы он был при постоянном цвете но обстоятельства, при которых это происходит, изучены еще недостаточно. Существует множество данных по восприятию освещенности поверхности при ахроматизме. Так как яркость поверхности зависит от ее ориентации и от ин- тенсивности освещения, можно было бы ожидать, что человеческий алгоритм постоянства освещенности будет неустойчивым. На самом же деле он чрезвы- чайно эффективен в широком диапазоне изменения освещения ([Jacobsen and Gilchrist, 1998]). 6.5.2. Определение освещенности Существует множество доказательств того, что человеческий механизм по- стоянства освещенности включает в себя два процесса: сравнение яркости раз- личных участков изображения и использование результатов этого сравнения для определения того, какие участки выглядят светлее, а какие темнее; затем устанавливается некий абсолютный стандарт, с которым можно сравнивать яр- кость участков (см., например, [Gilchrist, Kossyfidis, Bonato, Agostini, Cataliotto, Li, Spehar, Annan and Economou, 1999]). Рассмотрим вначале алгоритмы опреде- ления освещенности, поскольку они проще, чем алгоритмы постоянства цвета.
Глава 6. Цвет 193 Простая модель яркости изображения Излучение, попадающее в пиксель, зависит от освещения рассматриваемой поверхности, ее БФРО, положения поверхности относительно источника и ха- рактеристик камеры. Ситуация значительно упрощается, если предположить, что сцена плоская и расположена относительно камеры во фронтальной плос- кости, поверхности ламбертовские, а реакция камеры линейна по входному излучению. Такие предположения позволяют записать реакции камеры С в точ- ке X в виде произведения освещения, альбедо и константы, представляющей коэффициент усиления камеры: С(х) = кс1(х)р(х). Если взять логарифм от левой и правой частей, получим следующее: log С(х) = log кс + log 1(х) + log р(х). Теперь можно сделать новые предположения. • Во-первых, будем считать, что альбедо изменяются в пространстве быст- ро — это значит, что набор альбедо будет выглядеть как мозаика из бума- ги различных оттенков серого. Данное предположение достаточно легко обосновать: в природе встречается относительно мало примеров непрерыв- ного изменения альбедо (лучший пример — процесс созревания фруктов), наоборот, чаще всего альбедо меняется при затенении одного предме- та другим (так что можно ожидать, что эти изменения будут простран- ственно резкими). Это значит, что пространственные производные вели- чины logp(®) либо равны нулю (альбедо неизменно), либо очень большие (альбедо меняется быстро). • Во-вторых, освещение изменяется в пространстве только медленно. Это достаточно реалистичное предположение. Например, свет от точечного источника будет изменяться относительно медленно до тех пор, пока ис- точник будет очень близок. В качестве подходящего примера такого источ- ника можно привести солнце. Еще один пример: освещение в помещении также меняется очень медленно, поскольку белые стены комнат играют роль плоских источников. В то же время такое предположение нельзя при- менять для границ теней. Последние нужно рассматривать как отдельный случай и считать, что границы тени либо отсутствуют, либо известно, где они проходят. Определение освещенности по модели Алгоритмы, в которых будет использоваться приведенная выше модель, со- здать относительно просто. Самый первый алгоритм, предложенный в работе [Land and McCann, 1971], в настоящее время уже не используется. Другой
194 Часть I. Формирование изображений и модели изображений естественный подход — это продифференцировать логарифм преобразования, отбросить малые градиенты и проинтегрировать результат ([Horn, 1974]). По- скольку константа интегрирования неизвестна, можно найти только отношение освещенностей, а не абсолютное значение. Пример этого процесса для одномер- ного случая (где несложно выполнить интегрирование и дифференцирование) приведен на рис. 6.23. Описанный способ применим и в двумерном случае. Дифференцировать и сравнивать с порогом здесь также несложно: в каждой точке оценивается модуль градиента; если он не превышает некоторого порогового значения, ему присваивается нулевое значение или он отбрасывается еще как-либо. Трудно- сти начинаются при интегрировании градиентов и составлении карты логариф- ма альбедо. Значения градиентов после сравнения с порогом могут не иметь никакого отношения к градиентам изображения, поскольку смешанные вторые частные производные могут быть разными (снова возвращаемся к вопросу ин- тегрируемости; см. раздел 5.4.2). Поставленную задачу можно переформулировать как задачу минимизации: требуется выбрать такую карту логарифма альбедо, градиент которой будет бли- же всего градиенту, прошедшему сравнение с порогом. Это относительно про- стая задача, поскольку вычисление градиента изображения является линейной операцией. Координата х градиента после сравнения с порогом превращается в вектор р, а координата у — в вектор q. Вектор, описывающий логарифм аль- бедо, запишем как I. Теперь процесс нахождения производной по координате х становится линейным; значит, есть матрица Atx такая, что ЛМ является про- изводной по х некоторой функции; соответствующая матрица ЛЛУ записывается для производной по у. Задача сводится к нахождению вектора Z, который минимизирует величину Алгоритм 6.1. Определение освещенности участка изображения Построить градиент логарифма изображения Для каждого пикселя, если значение градиента не превышает порогового значения, заменить этот градиент нулем Построить логарифм альбедо, решив задачу минимизации (описана в тексте) Найти константу интегрирования Добавить константу к логарифму альбедо и восстановить освещенность по логарифму Это задача минимизации второго порядка, и ее решение можно найти с по- мощью линейного процесса. Здесь можно использовать некоторые уловки, поскольку прибавление постоянного вектора к I не влияет на производные (так
Глава 6. Цвет 195 dlgp dx после сравнения с порогом Проинтегрировать результат для получения освещенности, которая равна lg р + constant Рис. 6.23. Механизм освещенности легче всего проиллюстрировать на примере одномерного изоб- ражения. В верхнем ряду на левом графике показана величина logp(r), в центре — log/(a:), а справа — сумма этих величин, которая равна log С. Производные логарифма интенсивности изоб- ражения велики в точках изменения отражательной способности поверхности и малы только тогда, когда изменение обусловлено градиентом освещенности. Освещенность можно найти, если продиф- ференцировать логарифм интенсивности, сравнить с порогом, чтобы отсеять малые производные, и проинтегрировать, подставив недостающую константу интегрирования
196 Часть I. Формирование изображений и модели изображений что задача не имеет единственного решения). Подробнее задача минимизации исследована в разделе упражнений. Константу интегрирования можно найти из других предположений. Есть два очевидных направления: • можно предположить, что самый яркий участок имеет белый цвет; • можно предположить, что средняя освещенность остается постоянной. К чему приводят подобные предположения описано в разделе упражнений. Линейные модели конечной размерности Модель цвета изображения из раздела 6.4.2 можно записать следующим образом: С(х) = gd(x)d(x) + ga(a)s(x) + i(x). Договоримся пренебрегать членом, отвечающим за взаимное отражение г(х). В принципе, можно использовать методы из раздела 6.4.3 и построить новое изображение без бликов. Это даст величину gd(x)d(x). Предположим также, что gd(x) имеет постоянное значение, т.е. наблюдается плоская фронтальная поверхность. Полученная величина d(x) описывает систему как мозаику из плоских фронтальных рассеивающих цветных поверхностей. Предположим, что есть один источник света с постоянным цветом по всей площади изображения. Ука- занная величина содержит информацию об источнике, светочувствительном датчике и отражающей способности, причем в реальных задачах полностью избавиться от нее невозможно. Впрочем, предложенные алгоритмы могут поз- волить оценить цвет поверхности по цветам изображения при заданных системе цветных поверхностей и источнике. Величина d(x) описывает связь спектрального излучения источника, спек- трального альбедо поверхностей и чувствительности камеры. Требуется модель, учитывающая эту взаимосвязь. Напомним (раздел 6.4.2), что если участок идеально рассеивающей поверхности со спектральной отражательной способ- ностью р(А) освещается светом, спектр которого Е(Х), то спектр отраженного света будет равен р(Х)Е(Х) (умноженное на некоторую константу, связанную с ориентацией поверхности, которой мы договорились пренебрегать). Итак, если линейный светочувствительный датчик fc-ro типа видит указан- ный участок поверхности, то его реакцию можно записать следующим образом: Pk = [ afc(A)p(A)E?(A)dA, J л где Л — это диапазон всех существенных длин волн, а сгЦА) — чувствитель- ность fc-ro датчика (рис. 6.15).
Глава 6. Цвет 197 Эта реакция линейна по отражательной способности поверхности и линейна по освещению, поэтому напрашиваются линейные модели описания возможных отражательных способностей поверхностей и осветителей. Линейная модель конечной размерности описывает спектральные альбедо поверхностей и спек- тральное излучение источников как взвешенную сумму п базисных функций. Отметим, что один и тот же базис для отражательных способностей и для осветителей выбирать не обязательно. Если линейная модель конечной размерности для отражательной способно- сти поверхности является разумным описанием окружающего мира, то отража- тельную способность любой поверхности можно записать следующим образом: 71 р(А) = где 0j(A) — это базисные функции модели отражательной способности, а ве- личина rj различна для различных поверхностей. Подобным образом, если принятие линейной модели конечной размерности для осветителя обосновано, то любой осветитель можно записать следующим образом: ТП - t=l где V’i(A) ~ базисные функции модели осветителя. Если принять обе модели, то реакция датчика fc-ro типа запишется следую- щим образом: Рк = У er fc(A) e^i(A)^ dA = = etFj <Tfc(A)^(A)V'»(A)^ dA = т.п = У eirj9ijki i=l,j=l причем ожидается, что величины 9ijk = f ак(Х)фз(Х)^(Х)дХ известны, поскольку они являются параметрами используемой модели (их мож- но узнать из наблюдений; см. раздел упражнений).
198 Часть I. Формирование изображений и модели изображений 6.5.3. Цвет поверхности согласно линейной модели конечной размерности Все величины с индексами можно интерпретировать как компоненты некото- рого вектора; далее будем использовать запись р для обозначения вектора, к-я координата которого равна рь- Цвет поверхности можно передать либо прямо через вектор коэффициентов г, либо косвенно, рассчитав г, а затем определив, как будет выглядеть поверхность при белом свете. Последнее представление практичнее; помимо других достоинств, очень упрощается интерпретация ре- зультатов. Нормирование средней отражательной способности Предположим, что среднее пространственное значение отражательной спо- собности по всем кадрам постоянно и известно (например, можно предполо- жить, что среднее пространственное значение всех кадров — тусклый серый цвет). В базисе конечной размерности для отражательной способности это сред- нее можно записать следующим образом: 22»7&(А)- Если среднее значение отражательной способности постоянно, то средняя реак- ция датчика должна быть также постоянной (если процесс создания изображе- ния линеен — см. ниже), а среднюю реакцию fc-ro датчика можно записать как Рк = eiQijkTj- Если р — вектор с к~й координатой рк (используется введенная выше система обозначений), а А — матрица с координатами k,i rj9ijk, то предыдущее выражение можно переписать как р = Ле. При правильном подборе датчиков матрица А будет иметь полный ранг, т.е. можно определить осветитель е, который дает требуемое освещение, если раз- мерность линейной модели освещения совпадает с количеством датчиков. Ко- нечно, если освещение известно, то можно узнать отражательную способность поверхности в каждом пикселе или исправить изображение, чтобы оно выгля- дело так же, как при белом свете.
Глава 6. Цвет 199 Алгоритм 6.2. Постоянство цвета при известной средней отражательной способ- ности Рассчитать средний цвет изображения р По р = Де рассчитать е Получить вариант изображения при белом свете, ew Для каждого пикселя по рк — рассчитать г Заменить значение пикселя величиной = $2<=1 J=lm п Базовое предположение о том, что средняя отражательная способность — это известная константа, опасно, поскольку обычно оно даже близко не соот- ветствует истине. Например, если предположить, что средняя отражательная способность равна среднему серому цвету (распространенный выбор; см., на- пример, [Buchsbaum, 1980], [Gershon, Jepson and Tsotsos, 1986]), то зеленая лесная поляна будет представляться как набор объектов различных оттенков серого цвета, которые освещаются зеленым светом. Один из способов избежать этого заключается в том, чтобы менять среднее значение для разных типов сцен ([Gershon, Jepson and Tsotsos, 1986]), но как определить, какое среднее значение выбрать? Еще один подход — рассчитать среднее значение, которое не будет чистым пространственным средним. Например, можно усреднить цве- та, которые представлены десятью или больше пикселями, не определяя их весовые коэффициенты. Нормирование цветовой гаммы Не все возможные значения пикселей можно получить, создавая изображе- ния реальных поверхностей при освещении белым светом. Как правило, зна- чение получить невозможно, если один канал имеет большую характеристику по одному цвету и слабую по другим (например, 255 по красному каналу и 0 по зеленому и синему). Это означает, что цветовая гамма изображения (набор значений всех пикселей) несет информацию об источнике света. Если, напри- мер, наблюдается пиксель со значением (255,0,0), то источник света вероятнее всего имеет красный цвет. Если цветовая гамма изображения состоит из значений двух пикселей, ска- жем, рг ир2, тогда появляется возможность получить изображение при том же осветителе, содержащее значение tpr + (1 —t)p2 для 0 < t < 1 (поскольку цве- та на поверхности можно смешивать). Это значит, что выпуклое пространство цветовой гаммы изображения несет информацию об осветителе. Эти условия можно использовать для сужения круга предположений о цвете осветителя. Пусть G — это цветовая оболочка гаммы данного изображения, W — про- странство цветовой гаммы изображения многих поверхностей при белом свете, а Л4е — отображение изображения, полученного при осветителе е, на изобра- жение при белом свете. Тогда стоит рассматривать только те осветители, для
200 Часть I. Формирование изображений и модели изображений которых Л4е(<2) G W. Это очень удобно, если семейство Л4е имеет опреде- ленную разумную структуру (например, если величины Л4е — диагональные матрицы). Если принять линейную модель конечной размерности, то /Ле линейно зависит от е, поэтому семейство осветителей, которые удовлетворяют указан- ному выше условию, также является выпуклым. Это семейство можно получить как пересечение набора выпуклых оболочек, каждая из которых соответствует семейству отображений, причем в качестве вершины оболочки G берется неко- торая точка внутри W (или можно записать длинный набор линейных условий на е). Алгоритм 6.3. Постоянство цвета через отображение цветовой гаммы Получить цветовую гамму W многих изображений нескольких различных цветных поверхностей при освещении белым светом (выпуклая оболочка значений всех пикселей изображений) Получить цветовую гамму G изображения (выпуклая оболочка значений всех пикселей изображения) Получить каждый элемент семейства отображений осветителей /Ле, таких что /AeG € W, представляя все возможные осветители Выбрать какой-то элемент из этого семейства и применить его к каждому пикселю изображения Если указанное семейство найдено, остается только выбрать подходящий осветитель. Здесь существует множество всевозможных путей. Если, например, известно что-либо о правдоподобии отдельных осветителей, из них можно выби- рать самый правдоподобный. Если предположить, что большинство изображе- ний состоит из многих различных цветных поверхностей, придем к выбору осве- тителя, при котором цветовая гамма принимает самое большое значение. Мож- но использовать и другие условия, накладываемые на осветитель (например, у всех осветителей должна быть неотрицательная энергия на всех длинах волн), что позволит еще больше ограничить выбор ([Finlayson and Hordley, 2000]). 6.6. ПРИМЕЧАНИЯ Использование цвета в компьютерном зрении на удивление примитивно. В работе [Mollon, 1995], например, отмечается, что зрительную систему при- матов можно рассматривать как аппарат для узнавания различных фруктовых деревьев. Имеется ряд важных общих работ по применению цвета. Авторы рекомен- дуют следующие: [Hardin and Maffi, 1997], [Lamb and Bourriau, 1995], [Lynch and Livingston, 2001], [Minnaert, 1993], [Trussell, Allebach, Fairchild, Funt and Wong, 1997], [Williamson and Cummins, 1983]. Массу полезной информации содержит также публикация [Wyszecki and Stiles, 1982].
Глава 6. Цвет 201 Трехцветность и цветовые пространства До недавнего времени трехцветность не была достаточно аргументирована, хотя считается, что это обусловлено тремя различными типами светочувстви- тельных рецепторов в глазе человека. Эту идею подтверждают работы по генетике фоторецепторов (см. [Nathans, Piantanida, Eddy, Shows and Hogness, 1986a] и [Nathans, Thomasand Hogness, 19866]), хотя до окончательного объ- яснения еще далеко, поскольку можно предположить, что многие люди имеют больше трех типов фоторецепторов ([Mellon, 1995]). Существует поразительно много цветовых пространств и моделей внешне- го вида цветов. Важный вопрос здесь — не в каких координатах измеряется цвет, а как считается разность, т.е. некоторую информацию могут нести в себе системы цветовых единиц. Вообще системы единиц — не такая уж новая тема; как правило, тензор величин подбирают по эллипсам МакАдама. Сложность этого метода состоит в том, что тензор величин сильно зависит от возможности измерения разности в большом интервале с помощью интегрирования, тогда как на самом деле в большом диапазоне цветов основательно сравнить два цвета очень трудно. Еще одна проблема: весовые коэффициенты, которые наблюдатель присваивает разности, и семантическое значение разности цветов изображения — это две разные вещи. Нахождение бликов Описанный способ нахождения бликов взят из работы [Shafer, 19856] с неко- торыми усовершенствованиями из работ [Klinker, Shafer and Kanade, 1987a,6, 1990] и [Maxwell and Shafer, 2000]. Кроме того, блики можно выделить ввиду того, что они маленькие и яркие ([Brelstaff and Blake, 1988]), или из-за того, что они отличаются по цвету и перемещаются относительно фона ([Lee and Bajcsy, 1992а, 6]). Освещенность Ряд экспериментов по цветному зрению описан в работах ([Land, 1959а,6,с, 1983]). В более позднее время проводилось не очень много исследований, по- священных механизму постоянства освещенности. При обсуждении в тексте главы были использованы идеи из работы [Land and McCann, 1971]. Специа- листам по компьютерному зрению также будет полезно изучить работу [Horn, 1974]. Один из вариантов алгоритма Хорна усовершенствован Блейком ([Blake, 1985]), именно этот вариант приводится в тексте. Первоначально данный алго- ритм имел несколько иную форму ([Land and McCann, 1971]), но в таком виде его на удивление сложно анализировать (см. [Brainard and Wandell, 1986]). Методы работы с освещенностью не так широко распространены, как они того заслуживают, тем более уже доказано, что они дают полезную инфор- мацию о реальных изображениях ([Brelstaff and Blake, 1987]). Классификация освещения по альбедо с использованием простой величины градиента достаточ-
202 Часть I. Формирование изображений и модели изображений но груба и не учитывает важные ключевые моменты. Один из таких моментов состоит в том, что большие изменения должны сказываться на освещенности, как бы быстро они не происходили; другой —• что изменения цвета на границах тени отличаются от изменений цвета на границах поверхностей с разными аль- бедо. Вопрос о том, какие изменения связаны с изменением альбедо, а какие — с осветителем, можно решить (совсем несложно написать модель правдоподо- бия). Несколько попыток решения этой задачи с помощью локальной модели описаны в работах [Freeman, Pasztor and Carmichael, 2000]. Постоянство цвета Линейные модели конечной размерности для спектральной отражательной способности можно обосновать, обратившись к физике поверхностей: линии спектрального поглощения уширяются вследствие твердотельных эффектов. Основное экспериментальное подтверждение линейных моделей конечной раз- мерности для отражательной способности поверхностей ([Cohen, 1964]) — это измерение отражательной способности стандартных тестовых поверхностей и природных объектов ([Krinov, 1947]). В работе [Cohen, 1964] описаны спо- собы получения набора базисных функций, а в работе [Maloney, 1984] описан подбор взвешенных сумм этих функций, чтобы получить хорошее совпадение с модельными производными. В каждом случае объясняется высокий процент разброса данных измерений (около 99%), следовательно, линейная комбинация функций достаточно хорошо согласуется с функциями образца. В более позд- них работах [Maloney, 1986], [Cohen, 1964] векторы подбирались для большого набора данных (приведенных, например, в [Krinov, 1947]), был сделан вывод, что размерность точной модели отражательной способности поверхности будет равна пяти или шести. Линейные модели конечной размерности — важнейший инструмент для опи- сания постоянства цвета. Существует большой набор алгоритмов, которые есте- ственным образом следуют из этого метода. В некоторых алгоритмах использу- ются свойства линейных пространств ([Maloney, 1984], [Maloney and Wandell, 1986], [Wandell, 1987]). На таких поверхностях, как пластмассы, зеркальная составляющая отраженного света будет иметь тот же цвет, что и осветитель. Если можно определить области отражения от таких объектов на изображении, то цвет осветителя считается известным. Эта идея, популярная на протяжении долгого времени, в старой работе [Judd, 1940] называется “наиболее привыч- ным подходом” ([D’Zmura and Lennie, 1986], [Flock, 1984], [Klinker, Shafer and Kanade, 1987a, 6], [Lee, 1986]). Еще один распространенный подход — предпо- ложить, что средний цвет постоянен ([Buchsbaum, 1980], [Gershon, 1987]). Схема отображения цветовой гаммы изложена согласно [Forsyth, 1990]. Во- обще, этот метод интенсивно развивался ([Barnard, 2000], [Finlayson and Hord- ley, 1999, 2000]), например, изучался состав семейства отображений, связанных с изменениями освещения, Л4е- Первая работа в этой области принадлежит фон Крису (Von Kries), который предполагал, что постоянство цвета является, по сути, результатом независимых расчетов освещенности по каждому каналу,
Глава 6. Цвет 203 а это означает, что можно исправить изображение, откалибровав независимо каждый канал. Этот принцип известен под названием закона фон Криса. В по- нимании авторов этот закон сводится к предположению о том, что Л4е состоит из диагональных матриц. Было доказано, что закон фон Криса дает хорошие результаты на практике ([Finlayson, Drew and Funt, 1994a]). В настоящий мо- мент он заключается в применении линейных преобразований с последующей калибровкой результатов с помощью диагональных отображений ([Finlayson et al., 1994а,ft]). Постоянству цвета посвящено на удивление мало работ, в которых исследо- вания пространственных изменений освещения объединялись бы с решениями для цветных поверхностей, поэтому в модели цвета приходится пренебрегать рядом членов. В идеале в модели должна учитываться тень и ориентация по- верхности. Главные работы, посвященные этой чрезвычайно важной теме, — это [Barnard, Finlayson and Funt, 1997] и [Funt and Drew, 1988]. Взаимное отражение цветных поверхностей приводит к явлению, называемо- му окрашиванием, когда каждая поверхность отражает цветной свет на другие поверхности. На практике это явление встречается довольно часто. Было заме- чено, что человек может абсолютно не замечать его, большинство людей даже не осознают, что оно вообще существует. При отбрасывании лишнего цвета, вероятно, играют роль пространственные привычки. Требуется определенный опыт, чтобы не попасться на некоторые распространенные иллюзии. Пример из личных наблюдений авторов: в Южной Калифорнии у обочин дороги есть много живых изгородей из белого олеандра (темные листья и белые цветы); иногда, при ярком солнечном свете, можно увидеть изгородь с желтыми цве- тами олеандра; в этом случае наблюдатель осознает, что желтый цвет вызван отражением на белые цветы желтого света от ремонтного фургона, припарко- ванного у дороги. В приведенном примере на способность не учитывать эффект окрашивания влияют темные листья растения, которые разрушают однородную пространственную модель. Отметим также, что понятие окрашивания включа- ет понимание цвета поверхности, в котором довольно трудно разобраться (см. [Drew and Funt, 1990], [Funt and Drew, 1993] и [Funt, Drew and Ho, 1991]). Постоянство цвета можно сформулировать как обобщающую задачу ([Forsyth, 1999], [Freeman and Brainard, 1997]. Преимущество такого подхода заключает- ся в том, что по известным данным можно получить информацию о диапазоне возможных цветов поверхности. Цвет при распознавании Как будет показано в следующих главах, довольно сложно создать систему, в которой цвет предмета способствовал бы распознаванию. Доказано, что посто- янство цвета — это процесс, который должен улучшить сопоставление с данным образцом, поскольку мы имеем дело со свойствами предмета, а не со свойства- ми определенной его проекции ([Finlayson, Chatterjee and Funt, 1996], [Funt, Barnard and Martin, 1998], [Funt and Finlayson, 1995]). Здесь могут помочь од-
204 Часть I. Формирование изображений и модели изображений неродные цветовые пространства, если принять достаточно расплывчатый ар- гумент: различия в цвете стоит изучать с позиции их восприятия человеком. ЗАДАЧИ 6.1. Вместе с другом возьмите пачку цветной бумаги и сравните, какими названиями цветов вы пользуетесь. Вам понадобится большая пачка бу- маги. Часто встречаются наборы Pantone — Международный стандарт- ный каталог составных цветов (CMYK). Лучше всего начать с названий основных цветов — красный, розовый, оранжевый, желтый, зеленый, синий, фиолетовый, коричневый, белый, серый и черный, которые (плюс еще немного других названий) обладают замечательными каноническими свойствами и широко используются во всех языках (в статье [Hardin and Maffi, 1997] дается хороший современный обзор этого вопроса). Вы уви- дите, как быстро вы придете к разногласиям по поводу того, например, какой цвет называть синим, а какой — зеленым. 6.2. Выведите уравнения для преобразования из пространства RGB в МКО XYZ и обратно. Эти преобразования линейны; достаточно выписать вы- ражения для элементов линейного преобразования, численные значения функций подбора цвета искать не нужно. 6.3. Линейные цветовые пространства получаются при выборе основных цве- тов и построении функций подбора цвета для этих основных цветов. Покажите, что существует линейное преобразование координат цвета из одного линейного цветового пространства в другое; самый простой способ это сделать — записать преобразование через функции подбора цвета. 6.4. Из сказанного выше следует, что при формировании линейного цветово- го пространства выбор основных цветов может быть произвольным, но есть ограничения, касающиеся выбора функций подбора цвета. Почему? Каковы эти ограничения? 6.5. Две поверхности, цвет которых одинаков при одном освещении и раз- ный при другом, часто называют метамерами. Оптимальный цвет — это спектральная отражательная способность или излучение, значение которого равно нулю при одной длине волны и 1 — при остальных. Хотя оптимальный цвет на практике не встречается, это очень полезный (со- гласно работам Оствальда (Ostwald)) аппарат для объяснения различных явлений. а) Объясните с помощью оптимального цвета механизм метамеризма. б) Известно значение спектрального альбедо. Покажите, что существует бесконечное множество спектральных альбедо, метамерических дан- ному. в) С помощью оптимального цвета создайте поверхности, которые бу- дут выглядеть разными при одном свете (скажем, красная и зеленая) и одинаковыми при другом.
Глава 6. Цвет 205 г) С помощью оптимального цвета создайте поверхности, которые будут изменять цвет при изменении освещения (например, при освещении I поверхность 1 выглядит красной, а поверхность 2 — зеленой, а при освещении II поверхность 1 выглядит зеленой, а поверхность 2 — красной). 6.6. Нужно отобразить цветовую гамму принтера в цветовую гамму монитора. В каждой цветовой гамме есть цвета, которые не встречаются в другой. Для заданного цвета монитора, который нельзя передать точно, нужно подобрать самый близкий цвет принтера. Почему эта идея не подходит для воспроизведения изображений? Будет ли она пригодной для “бизнес- графики” (таблицы, диаграммы и т.п., которые состоят из многих раз- личных больших блоков отдельного цвета)? 6.7. Объемный цвет — явление, наблюдаемое в связи с цветными прозрачны- ми веществами, самый яркий пример — бокал вина. Окрашивание про- исходит из-за различных коэффициентов поглощения на разных длинах волн. Объясните: а) почему маленький бокал красного вина с достаточ- но насыщенным цветом (например, кагора) кажется черным и б) почему большой бокал светлого вина также кажется черным. Проведите оптиче- ский эксперимент. 6.8. (Для выполнения этого задания необходимы некоторые знания из обла- сти численного анализа.) В разделе 6.5.2 задача определения логарифма альбедо для набора поверхностей сформулирована как задача минимиза- ции величины I Л4xl - Р I2 + I Myl - q I2, где — полная производная по х от I, а Л4У — полная производная по у. а) Будем считать, что и Л4У существуют. Возьмите выражение для прямой разности (или центральной разности, или любое другое раз- ностное приближение производной) и постройте эти матрицы. Почти все элементы этой матрицы будут равны нулю. б) Задачу минимизации можно записать в виде: выбрать I, минимизирующее (Al + Ь)Т (А1 + Ь). Определите значения А и Ь и покажите, как решить эту общую зада- чу. Следует помнить, что матрица А имеет неполный ранг, поэтому обратную к ней найти нельзя. 6.9. В разделе 6.5.2 назывались два предположения, позволяющие получить константу интегрирования. а) Покажите, как с помощью этих предположений построить карту аль- бедо.
206 Часть I. Формирование изображений и модели изображений б) Для каждого предположения опишите ситуацию, когда оно не работа- ет (объясните, почему). Ваши примеры должны быть эффективными даже тогда, когда в поле зрения попадает множество плоскостей с раз- личными альбедо. 6.10. Прочитайте книгу Lamb and Bourriau, “Color: Art and Science”, изда- тельство Cambridge University Press, 1995. Упражнения 6.11. Описание спектров осветителей и поверхностей можно найти в Internet (например, http://www.it.lut.fi/research/color/lutcs_data base.html). Подберите линейную модель конечной размерности для набора осветителей и отражательных способностей поверхностей, поль- зуясь анализом главных составляющих; постройте полученную модель и сравните ваше построение с точным вариантом. Где вы допустили са- мые значительные ошибки? Почему? 6.12. Напечатайте цветное изображение на цветном струйном принтере на раз- ной бумаге и сравните картинки. Особенно полезно будет а) убедить- ся в том, что драйвер “знает”, на какой бумаге будет печатать принтер (в идеальном случае это не важно) и б) “обмануть” принтер по поводу того, на какой бумаге идет печать (т.е. печатать на простой бумаге, а в настройках указать, что печать выполняется на фотобумаге). Може- те ли вы объяснить различие в картинках? Почему фотобумагу делают глянцевой? 6.13. Подбор линейной модели конечной размерности отдельно для осветите- лей и отдельно для отражательных способностей является неправильным подходом, так как нет гарантии, что будут правильно описаны взаи- модействия (они не входят в ошибку подбора). Оказывается, что тен- зор gijk можно найти с помощью подбора, в котором не фигурируют базисные функции. Реализуйте эту процедуру (подробно описана в [Ма- rimont and Wandell, 1992]) и сравните результаты с полученными в преды- дущих упражнениях. 6.14. Постройте алгоритм постоянства цвета, пользуясь предположением о том, что среднее пространственное значение отражательной способно- сти постоянно. Воспользуйтесь линейной моделью конечной размерности. В качестве значений дгзь можно взять полученные в упражнении 3. 6.15. В использованной модели цвета поверхности взаимное отражение цветов пренебрегается. Проведите эксперимент, чтобы получить представление о возможной величине смещения цвета в результате взаимного отражения (окажется удивительно большой). Отметим, что люди редко воспринима- ют взаимное отражение как цвет поверхности. Подумайте о том, почему это происходит, руководствуясь рассуждениями о механизме постоянства светлости. 6.16. Напишите программу для поиска бликов (общий подход описан в в раз- деле 6.4.3)
--------- ЧАСТЬ II --------- Первые этапы: одно изображение

7 Линейные фильтры Изображение зебры или далматинца состоит из черных и белых пикселей, при- чем их число примерно одинаковое. Друг от друга эти два изображения от- личаются не значениями отдельных пикселей, а характерным внешним видом небольших групп пикселей. В данной главе рассказано, как можно описать внешний вид таких небольших групп пикселей. Основная стратегия, используемая при работе с изображениями, состоит в том, чтобы применять взвешенные суммы значений пикселей, используя раз- личные наборы весовых коэффициентов для поиска различных моделей изоб- ражений. Несмотря на свою простоту, этот процесс чрезвычайно полезен. Он позволяет сглаживать шумы на изображениях, определять края и другие эле- менты изображения. 7.1. ЛИНЕЙНЫЕ ФИЛЬТРЫ И СВЕРТКА Для описания многих явлений достаточно довольно простой модели. Соста- вим новый массив данных того же размера, что и изображение. Элементами этого массива будут взвешенные суммы значений пикселей, окружающих со- ответствующую точку изображения, причем набор весовых, коэффициентов всегда будет одним и тем же. Для описания другого изображения можно
210 Часть II. Первые этапы: одно изображение Рис. 7.1. Хотя на первый взгляд может показаться, что однородное локальное усреднение дает хорошую модель размывания, в действительности оно приводит к эффектам, которые обычно не встречаются при расфокусировке линзы. На данных изображениях уравниваются результаты од- нородного локального усреднения и взвешенного усреднения. Левый рисунок — это изображение травы. В центре — это же изображение, но размытое с помощью однородной локальной моде- ли, а справа — результат размывания этого изображения с помощью набора гауссовых весовых коэффициентов. Степень размывания в каждом случае приблизительно одинакова, но однородное усреднение дает набор узких вертикальных и горизонтальных полос — это явление часто назы- вают окантовкой. На рисунках в графической форме указаны весовые коэффициенты, которые использовались для размывания изображения; яркие точки соответствуют большим значениям, а темные — малым (в этом примере самое малое значение — нуль) использовать иной набор весовых коэффициентов. Пример: вычисление локаль- ного среднего значения в фиксированной области. Здесь можно усреднить все значения в пределах блока пикселей размером (2k +1) х (2/с + 1). Если на входе дано изображение то на выходе получим = (2fc+ip £ 7 u=i—fc v=j — k Весовые коэффициенты в этом примере простые (все они равны некоторой константе), но можно принять и более интересный набор весовых коэффи- циентов, например, такой, чтобы в центре значения весовых коэффициентов были большими, а с увеличением расстояния от центра быстро уменьшались. Этот набор применяется при одном из видов сглаживания, которое наблюдается в расфокусированных системах линз. Независимо от выбора весовых коэффициентов выход этой процедуры ин- вариантен относительно сдвига, т.е. значение на выходе зависит от окру- жающих пикселей, а не от их положения, и линеен, т.е. выход суммы двух изображений будет равен сумме двух выходов, полученных отдельно для каж- дого изображения. Эта процедура называется линейной фильтрацией. 7.1.1. Свертка Введем несколько новых понятий. Стандартный набор весовых коэффициен- тов, которым пользуются при линейной фильтрации, обычно называют ядром
Глава 7. Линейные фильтры 211 фильтра. Процесс применения фильтра называют сверткой. Здесь есть один нюанс: по причинам, которые мы назовем позже (в разделе 7.2.1), этот процесс удобнее записывать в неявном виде. В частности, если известно ядро филь- тра 7Y, то свертка ядра с изображением F j&crt изображение 7£. Компонент (г, j) матрицы определяется следующим образом: Rij — Hj-uJ-y Это и есть определение свертки — матрица 7Y была свернута с матрицей F, что дало Я. Повнимательнее присмотритесь к этому выражению — по сравне- нию с корреляцией “направление” фиктивной переменной и (соответственно, v) изменилось на обратное. Это важно, и если об этом забыть, при вычисле- нии будет получен неверный результат. О том, почему происходит такая смена направления, рассказано в разделе 7.2.1. Диапазон суммирования не уточняет- ся; фактически, предполагается, что суммирование проводится по достаточно большой области и и и, где учитываются все ненулевые значения. Более то- го, считается, что все неопределенные значения равны нулю; т.е. ядро можно представить как небольшой островок ненулевых значений в море нулей. Отме- тим, что свертку можно определить по-разному, но далее будет использовано определение, приведенное выше. Пример 7.1. Сглаживание через усреднение Как правило, значение пикселя изображения слабо отличается от соседних. Пусть на изображение влияет такой шум, при котором это свойство сохраняется. Напри- мер, изредка попадаются “мертвые” пиксели или пиксели, к значениям которых добавляются случайные числа с нулевым средним значением. Естественно будет попытаться уменьшить влияние этого шума, заменив каждый пиксель взвешенным средним значением его соседей, такой процесс часто называют сглаживанием. Замена каждого пикселя на невзвешенное среднее значение, рассчитанное для некоторой фиксированной области с центром в этом пикселе, равнозначна сверт- ке с ядром, которое представляет собой блок единиц, умноженных на константу. Выбор этой точки можно (и нужно) согласовать с областью суммирования. Дан- ная модель сглаживания плоха, поскольку результат ее применения не похож на изображение расфокусированной камеры (рис. 7.1). Причина ясна. Допустим, что есть изображение, каждая точка которого, кроме центральной, — это нуль, а цен- тральная — единица. Если сгладить это изображение с помощью невзвешенного среднего в каждой точке, то результат будет выглядеть как маленький яркий пря- моугольник, а это не совсем то, что дает расфокусированная камера. Хотелось бы получить такое сглаживание, при котором маленькая яркая точка превращается в симметричную круглую размытую область, которая ярче всего в центре и мед- ленно бледнеет по направлению к краям. Как показано на рис. 7.1, при таком наборе весовых коэффициентов получается намного более убедительная модель расфокусировки.
212 Часть II. Первые этапы: одно изображение Рис. 7.2. Симметричное гауссово ядро в двумерном пространстве. На рисунке выбран такой мас- штаб, чтобы сумма элементов ядра была равна единице; этот масштаб применяется довольно часто. Для данного ядра а = 1. Свертка с ядром образует взвешенное среднее, которое ориентируется на точку в центре окна свертки и на которое относительно слабо влияют точки на границе. Обратите внимание, что качественно гауссиан напоминает описание функции распределения точек при раз- мывании изображения; он обладает круговой симметрией, самая сильная реакция — в центре, а на границах она сходит на нет Пример 7.2. Сглаживание с помощью гауссиана Хорошая формальная модель размытого пятна — симметричное гауссово ядро G0(x,y) = 2^еХр ( (*2 + У2)\ \ 2а2 ) изображенное на рис. 7.2. Здесь а — это среднеквадратическое отклонение гаус- сиана, измеряемое в расстояниях между пикселями (обычно такую единицу из- мерения называют просто пикселем). Интеграл по всей области от постоянного члена равен единице, поэтому при описании сглаживания его часто опускают. Название ядра объясняется тем, что именно такой вид имеет плотность вероятно- сти для двумерной нормальной (или гауссовой) случайной переменной с заданной ковариантностью.
Глава 7. Линейные фильтры 213 Данное ядро сглаживания образует такое взвешенное среднее, для которого в цен- тре ядра весовые коэффициенты пикселей намного больше, чем на его границах. Этот подход можно обосновать качественно: сглаживание подавляет шум, под- держивая требование, чтобы пиксели были похожи на своих соседей. Уменьшая весовые коэффициенты для отдаленных пикселей, можно быть уверенным, что для них это требование будет не таким жестким. Качественный анализ приводит к таким выводам. • Если среднеквадратическое отклонение гауссиана очень мало (скажем, меньше, чем один пиксель), то сглаживание даст незначительный результат, поскольку весовые коэффициенты всех пикселей, находящихся не в центре, будут очень малыми. • Для большего среднеквадратического отклонения у соседних пикселей весовые коэффициенты при применении схемы взвешенного среднего будут больше, что в свою очередь означает, что среднее значение будет сильно стремиться к со- гласованию с соседями — это будет хорошая оценка значения пикселя, а за счет размывания исчезнет большая часть шума. • Наконец, ядро с большим среднеквадратическим отклонением приведет к тому, что вместе с шумом исчезнет и большая часть элементов изображения. Это явление проиллюстрировано на рис. 7.3. Заметно, что гауссово сглаживание эффективнее подавляет шум. При наличии конкретной задачи дискретное ядро сглаживания можно получить, построив массив 2к 4-1 х 2к 4-1, значение элемента (г, j) которого равно Я« = 2^еХР 2о-2 Обратите внимание, что если о слишком мало, то ненулевым будет только один элемент матрицы. Если же а велико, то к также должно быть большим, иначе не будет учтен вклад пикселей, которые должны входить со значительными весовыми коэффициентами. Пример 7.3. Производная и конечная разность Производные по изображению можно приблизительно описать с помощью еще одной свертки. Поскольку df = lim f(x4-€,y)-f(x,y) дх €—0 €
214 Часть II. Первые этапы: одно изображение Рис. 7.3. В верхней строке приведены изображения плоскости однородного серого цвета с допол- нительным гауссовым шумом. При таком шуме к каждому значению пикселя прибавляется случай- ная переменная с нормальным распределением и нулевым средним значением. Значения пикселей лежат в диапазоне от нуля до единицы, так что среднеквадратическое отклонение шума в первом столбце составляет приблизительно 1/20 от всего диапазона. В средней строке показан резуль- тат сглаживания соответствующего изображения из верхней строки с гауссовым фильтром, где а равно одному пикселю. Отметим раздражающую громоздкость определения; здесь есть и гауссов шум, и гауссовы фильтры, и для них имеются свои а. Для того чтобы различать данные пара- метры, можно использовать контекст, хотя это не всегда помогает, поскольку гауссовы фильтры часто (и удачно) применяются для подавления гауссова шума. Это происходит потому, что шумовые значения в каждой точке независимы, т.е. ожидаемый результат их усреднения будет средним шу- мом. В нижней строке показан результат сглаживания соответствующего изображения из верхней строки с гауссовым фильтром, о которого равна двум пикселям частную производную можно оценить как симметричную конечную разность'. dh дх Это равносильно свертке с ядром О ' -1 ► - О О О Н = 1 О 0 0 Обратите внимание, что это ядро можно интерпретировать как некоторый шаблон: оно дает болыш/ю положительную реакцию на такую конфигурацию изображения,
Глава 7. Линейные фильтры 215 Рис. 7.4. В верхней строке приведены оценки производных, полученные с помощью конечных раз- ностей. На левом рисунке показан фрагмент изображения зебры. В центре показана частная произ- водная по у, которая сильно реагирует на горизонтальные полосы и слабо на вертикальные, а спра- ва — частная производная по х, которая сильно реагирует на вертикальные полосы и слабо на гори- зонтальные. В то же время конечная разность сильно реагирует на шумы. На рисунке в центре сле- ва показан фрагмент изображения зебры; следующее изображение в этой же строке получено при прибавлении к каждому пикселю случайного числа с нулевым средним значением и нормальным распределением (ст = 0,03; самое темное значение на изображении равно 0, а самое светлое — 1), а третье изображение получено при прибавлении к каждому пикселю случайного числа с нулевым средним значением и нормальным распределением (<т = 0,09). В нижней строке показаны част- ные производные по координате х изображения, стоящего в начале строки. Обратите внимание, как сильно процесс дифференцирования подчеркивает шумы — изображения производных кажутся еще более зернистыми. На изображениях производных нейтральному серому цвету приписывается ну- левое значение, темно-серый цвет имеет отрицательное значение, а светло-серый — положительное которая положительна с одной стороны и отрицательна с другой, и большую от- рицательную реакцию на зеркальное отражение такого изображения. Как показано на рис. 7.4, конечная разность дает самую неудовлетворительную оценку производной, поскольку конечная разность сильно реагирует (т.е. дает большое значение на выходе) на быстрые изменения, характерные для шума, так как пиксели изображения стремятся быть похожими друг на друга. Например, если вы купили уцененную камеру, и некоторые ее пиксели заклинены либо на черном, либо на белом значении, то при определении конечной разности вы полу- чите в этих пикселях большие значения, поскольку они, в общем случае, силь- но отличаются от своих соседей. Таким образом, до дифференцирования стоит воспользоваться каким-то видом сглаживания; подробнее этот вопрос рассмотрен в разделах 8.1 и 8.2.
216 Часть II. Первые этапы: одно изображение 7.2. ЛИНЕЙНЫЕ СИСТЕМЫ, ИНВАРИАНТНЫЕ ОТНОСИТЕЛЬНО СДВИГА Свертка представляет результат действия большого класса систем. В част- ности, большинство систем формирования изображений имеет, в достаточно хорошем приближении, три важных свойства. • Суперпозиция. ад+5) = я(/)+ад. Реакция на сумму стимуляторов — это сумма реакций на каждый стиму- лятор. • Масштабирование. Реакцией на нуль будет нуль. Объединив это с су- перпозицией, получим, что реакция на масштабированный стимулятор — это масштабированный вариант реакции на исходный стимулятор, т.е. R(kf) = kR(f). Устройство, обладающее свойствами суперпозиции и масштабирования, линейно. • Инвариантность относительно сдвига. В системах, инвариантных от- носительно сдвига, реакция на смещенный стимулятор представляет со- бой смещение реакции на исходный стимулятор. Это означает, что если, например, изображение небольшого источника в центре камеры представ- ляет собой небольшое яркое пятно, то при смещении источника на пери- ферию будет видно то же самое небольшое пятно, только смещенное. Линейное устройство, инвариантное относительно сдвига, называют линейной системой, инвариантной относительно сдвига, или просто системой. Реакцию линейной инвариантной относительно сдвига системы на стимуля- тор можно найти с помощью свертки. Покажем, как это делается для систем с дискретным входом (векторами или матрицами) и выходом. Затем на ос- нове полученных результатов опишем поведение систем, которые оперируют непрерывными функциями (прямые и плоскости), а из этого анализа узнаем несколько полезных фактов о свертке. 7.2.1. Дискретная свертка В одномерном случае линейная система, инвариантная относительно сдви- га, получает на вход вектор и выдает вектор. Это самый простой случай, так как нужно следить за небольшим количеством индексов. От него несложно пе- рейти к двумерному случаю, когда система воспринимает матрицу и отвечает матрицей. В каждом случае мы будем считать, что входные и выходные данные имеют бесконечную размерность. Это позволяет пренебрегать незначительными эффектами, которые возникают на границах входных данных (см. раздел 7.2.3).
Глава 7. Линейные фильтры 217 Дискретная свертка для одномерного случая Дан входной вектор f. Для удобства примем, что вектор бесконечен, а индексы его координат — целые числа (т.е. существует, скажем, элемент с индексом —1). Координата i этого вектора — fc. Теперь f — это взвешенная сумма базисных элементов. Удобным базисом будет набор элементов, одна из координат которых равна единице, а остальные — нулю. Запишем е0 = ...0,0,0,1,0,0,0,... Это вектор данных с единицей на месте нулевой координаты и нулями на всех остальных местах. Определим операцию сдвига, которая смещает заданный вектор. В частности, J-й координатой вектора Shift(/, г) будет (j — г)-я коор- дината вектора /. Например, первой координатой вектора Shift(eo, 1) будет нуль. Теперь можно записать f = /iShift(eo,i)- i Запишем реакцию системы на вектор f как R(f)- Из инвариантности данной системы относительно сдвига следует, что 7?(Shift(f, к)) = Shift(7?(/), к). Более того, из ее линейности следует, что R(kf) = kR(f), а значит Й(У) = R ^52 /»Sbift(eo,t) = 7?(/iShift(eo, г)) = i = A^(Shift(eo,»)) = t = /tSbif t(/?(eo), г)). Таким образом, чтобы найти реакцию системы на любой вектор данных, нужно знать только ее реакцию на вектор ео- Это обычно называют импульсным
218 Часть II. Первые этапы: одно изображение откликом системы, или ее импульсной характеристикой. Предположим, что импульсную характеристику можно записать как д, тогда получим R(f) - 52 Asbift(p,i) = g*f. i Это определение операции (одномерного дискретного варианта свертки), кото- рая обозначена звездочкой (*). Однако данное определение не позволяет достаточно просто описать выход. Если рассмотреть J-й элемент R(f), который записывается как Ri, то должно получиться выражение Rj = 5 — г которое можно привести к форме, указанной в разделе 7.1.1. Дискретная свертка для двумерного случая Рассмотрим теперь массив значений и запишем (г, элемент матрицы D как Dij. Подходящая аналогия для импульсного отклика — реакция на такой стимулятор: ... О О О £оо= ... О 1 О ... О О О Если <7 — реакция системы на этот стимулятор, то с помощью рассуждений, подобных приведенным для одномерного случая, можно найти отклик системы на стимулятор Т7, т.е. Rij — tX,t» что записывается следующим образом: 'R, = д * *7/. 7.2.2. Непрерывная свертка Существуют линейные инвариантные относительно сдвига системы, кото- рые дают непрерывный отклик на непрерывный вход; например, линза камеры воспринимает набор лучей и выдает другой набор, причем инвариантными от- носительно сдвига можно считать многие линзы. Кратко ознакомившись с таки- ми системами, можно восполнить недостаток информации, возникающий из-за приблизительного описания непрерывной функции (значений падающего излу- чения на плоскость изображения) дискретной функцией (значением в каждом пикселе).
Глава 7. Линейные фильтры 219 Естественным будет использовать реакцию системы на довольно необычную функцию, так называемую (5-функцию, которая не является функцией в обыч- ном смысле этого слова. Рассмотрим вначале одномерный случай. Одномерный случай Из выражения для дискретной системы найдем характеристику непрерывной линейной системы, инвариантной относительно сдвига. Каждое значение дис- кретного входа можно заменить прямоугольником, окружающим данное значе- ние; это даст непрерывную функцию на выходе. Постепенно уменьшая прямо- угольники, проанализируем, что происходит при переходе к граничному значе- нию. И входом, и выходом данной системы будут одномерные функции. Запи- шем реакцию на любые входные данные f(x) как R(f); если нужно подчерк- нуть, что f — это функция, иногда пишут /?(/(аг)). Характеристика — это также функция (когда необходимо это подчеркнуть, пишут Кроме того, можно сделать акцент на линейности: R(kf) = kR(f) (для некоторой константы к) и инвариантности относительно сдвига, введя оператор сдвига Shift, следующим образом действующий на функции: Shift(/, с) = f(u - с). Воспользовавшись этим оператором сдвига, можно записать свойство инвари- антности относительно сдвига: 7?(Shif t(/, с)) = Shift (/?(/), с). Введем объемную функцию box, такую что box^x) — abs(x) > | abs{x) < | О 1 Значение функции Ьохс(е/2) не важно. Входная функция — это f(x). Постро- им равномерную решетку из точек х^, где rri+i — Xi — е. Теперь построим вектор f, i-я координата которого (обозначенная как fi)— Именно этот вектор служит для представления функции. Функцию f можно представить в виде ]Гг .AShift(b6.)irf,.T2). Возьмем это вы- ражение в качестве входных данных для линейной инвариантной относительно сдвига системы; откликом будет взвешенная сумма смещенных откликов на объемные функции. Это означает, что
220 Часть II. Первые этапы: одно изображение /iShift(boxe, Xi)) — 7?(/iShift(6oxe,Xi)) = i i = fiR(Shif t(boxe, Xi)) = t = y^/iShift ,Xi^ = = У2 /«Shift ( R i ' Итак, сказанное совпадает с рассуждениями для дискретных функций. В итоге получено выражение, напоминающее соответствующий интеграл при е —> 0. Рассмотрим теперь член Ьох€/е — 5-функцию. Пусть тогда 5-функция — это 5(х) = limde(x). Совсем не обязательно пытаться оценить эту границу, т.е. незачем знать значе- ние 5(0). Все, что следует знать об этой функции (что необходимо для линей- ных инвариантных относительно сдвига систем) — это то, что реакция системы на 5-функцию существует и является компактным носителем (т.е. равна нулю везде, кроме конечного числа интервалов конечной длины). Хороший пример 5- функции в двумерном пространстве — это очень маленький и очень яркий источник света. Если делать этот источник меньше и ярче до тех пор, пока полная энергия не станет равна константе, то в конце концов можно получить очень (но не бесконечно) малое пятно, обусловленное расфокусировкой линзы. Отметим, что 5-функция — это аналог вектора во для непрерывного случая. Сказанное означает, что выражение для отклика системы У2 /«Shift (R i ' при e —» 0 превращается в интеграл. Получаем R(f) = [ {R(6)(u - х')} /(х') dx' д(и — x'j/fx') dx', причем R(6) (которое обычно называют импульсной характеристикой систе- мы) записано как д и опущены границы интегрирования. Эти интегралы можно
Глава 7. Линейные фильтры 221 брать от —оо до оо, но если д и h — компактные носители, то область интегри- рования может быть более строгой. Эта операция также называется сверткой, и предыдущее выражение можно переписать как Свертка симметрична, т.е. (ff *7i)(x) = (h*g)(x). Свертка подчиняется ассоциативному закону: (/* (g*h)) = ((/ *g)*h). Последнее свойство означает, что можно найти одну линейную инвариантную относительно сдвига систему, которая будет вести себя как комбинация двух различных систем. Далее это пригодится при изучении шаблонов. Свертка для двумерного случая Для выполнения операции свертки в двумерном случае понадобится еще несколько новых понятий. Объемная функция теперь задается как boxt?(x, у) = Ьохе(х)Ьохе(уУ, и получаем . boxtz(x,y) de(x,y) = -- причем ^-функция — это граница функции d€(x, у) при е —> 0. И наконец, сумма состоит из большего числа слагаемых. Окончательно получаем выражение R(h)(x,y) = У У g(x-x\y-y')h(x',y‘)dxdy = (д* *h)(x,y), в котором двумя звездочками обозначена свертка в двумерном пространстве. Свертка в двумерном пространстве также симметрична, т.е. (д * *h) — (Л * *д) и ассоциативна: ((/ * *9) ♦ *Л) = (/ * *(д * *h)). Естественной моделью импульсного отклика для двумерной системы будет изображение, которое дает камера, наблюдающая очень маленький удаленный источник света (образующий очень малый телесный угол). Для реальных линз это изображение представляет собой нечеткое пятно (откуда следует второе
222 Часть II. Первые этапы: одно изображение название импульсной реакции двумерной системы — функция точечного рас- сеяния). Функцию точечного рассеяния линейной системы называют ее ядром. 7.2.3. Краевые эффекты при дискретной свертке В реальных системах нет бесконечных массивов данных. Это означает, что при вычислении свертки нужно считаться с краями изображений; на краях есть пиксели, для вычисления свертки которых нужны значения, в действительности не существующие. В таких случаях можно поступить следующим образом. • Пренебречь этими пикселями — учитываются только те пиксели, для которых известны все необходимые значения. Преимущество этого подхо- да — строгость вычислений, но существуют и недостатки: выход получа- ется меньше, чем вход. Повторная свертка может привести к достаточно сильному сокращению размеров изображения. • Дополнить изображение постоянными значениями — если рассматри- вать выход ближе к краю изображения, то степень того, насколько ре- зультат свертки зависит от изображения, снижается. Это очень удобно, поскольку изображение не сокращается, но и здесь есть свои недостат- ки — вблизи границы изображения могут возникать большие градиенты. • Дополнить изображение каким-то другим способом — например, мож- но считать изображение двойной периодичной функцией, так что если имеется изображение п х т, то (т + 1)-й столбец, необходимый для вы- полнения операции свертки, будет таким же, как и (т — 1)-й. Это может привести к появлению вблизи границы больших значений второй произ- водной1. 7.3. ПРОСТРАНСТВЕННАЯ ЧАСТОТА И ПРЕОБРАЗОВАНИЕ ФУРЬЕ В предыдущем разделе сигнал д(х, у) рассматривался как взвешенная сумма большого (или бесконечного) числа малых (или бесконечно малых) объемных функций. В этой модели делается акцент на том, что сигнал — это элемент век- торного пространства; объемные функции образуют удобный базис, а весовые коэффициенты выступают координатами в этом базисе. Теперь же требуется но- вый метод для решения двух взаимосвязанных задач (до сих пор нерешенных). • Хотя ясно, что дискретный вариант изображения не несет полной инфор- мации о сигнале, еще не определено, что именно теряется. • Сокращать изображение простым выбором каждого к-го пикселя нель- зя (при этом изображение шахматной доски может оказаться полностью ’ В зависимости от того, где взяты оси симметрии, можно задать (т + 1)-й столбец равным m-му; (т + 2)-й — равным (т — 1)-му, уменьшив, таким образом, вторую производную. — Прим, рецензента.
Глава 7. Линейные фильтры 223 белым или черным). В этой связи хотелось бы знать, как правильно со- кратить изображение. Во всех этих задачах особое внимание следует обращать на резкие переходы на изображении. Например, при сокращении изображения эти резкие пере- ходы, вероятнее всего, будут упущены, кроме того, при резких изменениях производные будут иметь большие значения. Исследовать эти явления можно с помощью смены базиса. Перейдем в базис набора синусоид и представим сигнал в виде бесконечной взвешенной суммы бесконечного числа синусоид. Это означает, что резкие переходы в сигнале будут явными, поскольку они соответствуют большому количеству высокоча- стотных синусоид в новом базисе. 7 .3.1. Преобразование Фурье Смена базиса описывается преобразованием Фурье. Это такое преобразова- ние сигнала д(х, у), при котором F(g(x, у))(и, v) = J J р(х, J/)e-2’ri(ui+t'*) dx dy. Допустим, что выполнены все условия существования данного интеграла. Для этого достаточно, чтобы все моменты д были конечными; перечень остальных возможных условий можно найти в работе [Bracewell, 1995]. Берется комплекс- ная функция от х, у и на выходе получается комплексная функция от и, v (изоб- ражения — это комплексные функции, мнимая часть которых равна нулю). Зафиксируем и и v, а затем рассмотрим преобразование в этой точке. Пред- ставленную выше экспоненту можно переписать в виде е2’r*(UI+’J»> = cos(27r(wr + vy)) -I- г sin(27r(ux + vy)). Получаем синусоиды на плоскости х, у, ориентация и частота которых задает- ся с помощью и, V. Рассмотрим, например, член, постоянный при фиксирован- ном значении их + vy (т.е. рассматриваем прямую линию на плоскости х, у, ориентация которой задается выражением tg# = v/u). Градиент этого члена перпендикулярен к прямым, для которых их + vy постоянно, а частота сину- соиды равна х/и2 г>2. Эти синусоиды часто называют пространственными гармониками-, их разнообразие проиллюстрировано на рис. 7.5. Данный интеграл можно рассматривать как скалярное произведение. При фиксированных значениях и и v он равен скалярному произведению исходной функции на синусоиду по координатам х и у. Такое сравнение очень выгодно, поскольку скалярное произведение дает проекцию одного вектора на другой. По аналогии, преобразование для конкретных и и v можно считать измере- нием количества синусоид с заданной частотой и ориентацией сигнала. Функ- ция от х и у преобразуется в функцию от и и v, значение которой в отдельной
224 Часть II. Первые этапы: одно изображение Рис. 7.5. Действительная часть элементов базиса Фурье. Значение самой яркой точки равно еди- нице, а самой темной — нулю. Рассматриваемая область — участок размером [—1,1] х [—1,1] с началом отсчета в центре изображения. Слева (и, и) = (0;0,4); в центре (и, и) = (1;2), а спра- ва (и,и) = (10,—5). Изображены синусоиды с различными частотами и ориентацией (объяснение см. в тексте) точке (u,v) — это количество определенных синусоид в исходной функции. Таким образом, преобразование Фурье действительно можно представлять как смену базиса. Линейность Преобразования Фурье линейны: у) 4- h(x, у)) = F(g(x, у)) 4- !F(h(x, у)) и = к?(д(х,у}). Обратное преобразование Фурье Иногда приходится восстанавливать сигнал по его Фурье-образу. Это другая смена базиса вида g(x,v)= JJ — ОС Фурье-пары Преобразования Фурье в неявном виде применяются во многих ситуациях; множество примеров вы найдете в книге [Bracewell, 1995], некоторые из них приведены в табл. 7.1. В последней строке этой таблицы записана теорема о свертке-, свертка сигнала — это то же, что и умножение в Фурье-пространстве (пространстве Фурье-образов). На эту теорему мы будем ссылаться в разде- ле 9.2.2.
Глава 7. Линейные фильтры 225 ТАБЛИЦА 7.1. Примеры двумерных функций и их Фурье-образов. Таблица может использоваться в обоих направлениях (после подстановки вместо u, v и ®, у соответствующих функций), поскольку применение преобразования Фурье к Фурье-образу дает исходную функцию. Наблюдательные чи- татели могут заметить, что в результате бесконечного суммирования 6-функций якобы нарушается линейность преобразования Фурье. Аккуратно проделав все вычисления (и обратив особое внима- ние на пределы), можно убедиться, что это не так (см., например, [Bracewell, 1995]). Также можно отметить, что выражение для можно получить из двух других строк таблицы Функция Фурье-образ д(х,у) /7 s(x,»)e-a'<’“+”«> dxdy —oo И ^F(g(x,y))(utv)ei2ir{ux+vv'ldudv —оо F(g(x, y))(u, v) <5(а?,у) 1 v) 0,56(х 4- а, у) 4- 0.56(х — а, у) COS 27FOU е-»г(х2+у2) e-»r(u2+t)2) box\(xt у) sin и sin v U V f(ax,by) T{f){u/a,v/b) ab И п-8 । 8 И । 8 On 1 е». «С 1 N Г8 i 8 N II 8 i 8 On 'e' 1 e 1 (f**g)(xty) f(x - а, у - Ь) e~i2w(au+bv) /(xcos0 — j/sin0,2?sin0 4- ycos0) cosO - vsin 0, usin0 4- v cos0) Фаза и амплитуда Преобразование Фурье состоит из действительной и мнимой части: F(g(x,y))(u,v) = J J д(х, у) cos(2tt(u3; + vy)) dx dy+ 4-г J J g(x,y)sin(2n(ux + vy))dxdy = = ^(р)) + г*9(Др)) = = ?ц(д) 4- г * J7(p). Комплексные функции неудобно изображать на плоскости. Один из выходов — изображать отдельно и 7v(p); другой способ — ввести понятия ампли- туды и фазы комплексной функции и изображать именно эти величины. То-
226 Часть II. Первые этапы: одно изображение Рис. 7.6. На втором изображении в каждой строке показан логарифм амплитудного спектра пер- вого изображения этой строки; на третьем изображении показан фазовый спектр, причем фаза —я- обозначена темным, а я- — светлым. Последние изображения были получены путем дополнитель- ного учета информации с амплитудного спектра. Возникающие при этом значительные шумы не сильно влияют на интерпретацию изображения в предположении, что фазовый спектр более важен при восприятии, чем амплитудный гда представление будет называться соответственно амплитудным и фазовым спектрами. Значение Фурье-образа функции в отдельной точке (и, v) зависит от функ- ции в целом, что непосредственно вытекает из определения, поскольку область интегрирования представляет собой всю область значений функции. Получаем несколько коварных нюансов. Во-первых, локальные изменения в функции (на- пример, обнуление блока точек) может привести к изменениям Фурье-образа во всех точках. Это значит, что Фурье-образом нельзя пользоваться в качестве представления (например, по Фурье-образу очень сложно определить, соответ- ствует ли изображение какому-то шаблону). Во-вторых, амплитудные спектры изображений похожи друг на друга2, т.е. амплитудный спектр изображения оказывается на удивление неинформативным (см., например, рис. 7.6). 7.4. ДИСКРЕТИЗАЦИЯ И НАЛОЖЕНИЕ Преобразования Фурье рассматриваются главным образом для того, чтобы почувствовать разницу между дискретными и непрерывными изображениями. К примеру, в ходе работы с дискретным набором пикселей часть информа- ции теряется, но какая именно? Хороший, простой пример можно получить из 2Это простое следствие того факта, что в изображениях естественного происхождения основ- ную энергию несут низкие пространственные гармоники, а основную информацию — высокие. — Прим, рецензента.
Глава 7. Линейные фильтры 227 изображения шахматной доски (рис. 7.7) — это задача изучения количества выбранных точек по отношению к функции; имея достаточно мощную модель, этот эффект можно довольно точно описать формально. 7.4.1. Дискретизация Переход от непрерывной функции (например, плотности потока излуче- ния на задней стенке камеры) к дискретному набору значений (значения пикселей, которые сообщает камера) называется дискретизацией. Построим модель, позволяющую получить точное представление о том, что теряется при дискретизации. Одномерная дискретизация При одномерной дискретизации берется функция и выдается дискретный на- бор значений. Один из примеров — выборка по однородной дискретной решетке, причем считается, что данная выборка проводится по точкам с целыми значе- ниями. Это процесс, входом которого служит какая-то функция, а выходом — вектор значений: sample1D(/(x)) = f. Опишем процесс дискретизации в предположении, что компоненты данного вектора — это значения функции f(x) в выбранных точках. Допустим, что индексы вектора могут быть отрицательными (рис. 7.8). Это означает, что г-я координата вектора f — это Двумерная дискретизация Двумерная дискретизация очень похожа на одномерную. Несмотря на то, что дискретизация может происходить на неправильной решетке (наилучший пример — это сетчатка человеческого глаза), будем считать, что выбираются точки с целыми координатами. В результате получим однородную правильную решетку, которая служит хорошей моделью большинства камер. После про- ведения выборки, изображения становятся правильными массивами конечного размера (все значения за пределами решетки равны нулю). Формально, вместо одномерной дискретизуется двумерная функция, в ре- зультате чего получаем массив данных (рис. 7.9). Допустим, что в этом мас- сиве могут быть отрицательные индексы по обеим координатам. Тогда можно записать sample2D(F(z, у)) = F, где (г, j)-fi элемент матрицы Т — это Р(тг,у7) = F(i,j). В реальных системах выбранные точки не всегда равномерно распределены в пространстве. Часто это вызвано растущим влиянием телевидения: отношение ширины телеэкрана к его высоте обычно равно 4:3. Достаточно часто камеры приспосабливаются к таким размерам путем выбора точек на немного большем
228 Часть II. Первые этапы: одно изображение Рис. 7.7. Две верхние шахматные доски — пример удачной процедуры дискретизации (успех за- висит от деталей, о которых будет сказано немного позже). Серыми кружками показана выборка; если выборка удачна, то выбранные пиксели передают особенности исходной функции. Внизу пока- заны определенно неудачные выборки — берется меньше пикселей, чем нужно в действительности. Иллюстрируются два важных явления: во-первых, удачные схемы дискретизации приводят к то- му, что информация берется с достаточной частотой; во-вторых, неудачные схемы дискретизации приводят к преобразованию высокочастотной информации в низкочастотную Рис. 7.8. При одномерной дискретизации берется функция, а выдается вектор, компоненты кото- рого представляют значения этой функции в выбранных точках. Для данного примера достаточно, чтобы выбранные точки были целыми значениями аргумента. Допускается, что вектор может быть бесконечным и иметь как положительные, так и отрицательные индексы
Глава 7. Линейные фильтры 229 Рис. 7.9. При двумерной дискретизации берется функция, а выдается матрица. Как и прежде, допускается, что эта матрица может быть бесконечной и иметь как положительные, так и отрица- тельные индексы расстоянии друг от друга по горизонтали, чем по вертикали (на жаргоне это называется неквадратными пикселями). Непрерывная модель дискретного сигнала Требуется непрерывная модель дискретного сигнала. Как правило, этой мо- делью пользуются при оценке интегралов. Преобразование Фурье, в частности, включает интегрирование произведения данной модели с комплексной экспо- нентой. Не вызывает сомнений, что значение интеграла следует искать путем сложения значений в каждой целой точке. Это значит, что нельзя описывать дискретный сигнал как функцию, которая равна нулю везде, кроме целых точек (где она приобретает значение сигнала), поскольку при таком подходе интеграл будет равен нулю.
230 Часть II. Первые этапы: одно изображение Подходящая непрерывная модель дискретного сигнала основана на одном из свойств 5-функции: Zoo /*оо а5(х)/(х) dx = a lim / d(x-t е)/(х) dx = -oo e—оо = a lim f dx = e~J—oo £ = a lim 52 bar(x,e) _ i=—oo = af (0). Здесь использован тот факт, что интеграл — это граница суммы по маленьким участкам. Подходящая непрерывная модель дискретного сигнала состоит из 5-функции в каждой целой точке с коэффициентом, соответствующим значению в этой точ- ке. Данную модель можно получить, умножив дискретный сигнал на набор 5- функций, по одной на каждую выбранную точку. В одномерном случае такая функция называется гребенчатой функцией (потому что ее график похож на гребень). Подобным образом в двумерном случае такую функцию называют щеточной функцией. Работая в двумерном пространстве и считая, что выбираются целые точки, получаем ОО оо sample2D(/) = 52 = i= — оо j=—оо {оо оо 52 52 s(x ~ у ~ • i=—ooj=—оо ) Данная функция равна нулю везде, кроме целых точек (поскольку 5-функция равна нулю везде, кроме целых точек), а ее интеграл — это сумма значений функции в этих целых точках. 7.4.2. Наложение При дискретизации часть информации теряется. Как показано в данном раз- деле, слишком медленная дискретизация приводит к неправильной передаче сигнала; элементы исходного сигнала с высокой пространственной частотой в дискретном сигнале превращаются в элементы с низкой пространственной частотой. Это явление называют наложением. Фурье-образ дискретного сигнала Дискретный сигнал задается как произведение исходного сигнала на щеточ- ную функцию. Из теоремы о свертке следует, что Фурье-образ этого произве- дения представляет собой свертку Фурье-образов двух функций. Это значит,
Глава 7. Линейные фильтры 231 Выборка сигнал Фурье Амплитудный спектр Рис. 7.10. Фурье-образ дискретного сигнала состоит из суммы элементов Фурье-образов исходного сигнала, смещенных относительно друг друга на частоту дискретизации. Возможны два варианта. Если смещенные элементы не пересекаются (как в данном случае), то исходный сигнал можно вос- становить по дискретному (просто выделяется один элемент Фурье-образа и выполняется обратное преобразование). Если же они пересекаются (как на рис. 7 11), то области пересечения складыва- ются, поэтому нельзя выделить отдельный элемент Фурье-образа, и сигналы накладываются что Фурье-образ дискретного сигнала можно найти с помощью свертки Фурье- образа сигнала с другой щеточной функцией. При свертке функции со смещенной 5-функцией получается просто смещен- ная функция (см. раздел упражнений). Это значит, что Фурье-образ дискретно- го сигнала представляет собой сумму смещенных Фурье-образов сигнала, т.е. -^(sample2D(/(x,i/))) =5’ I f(x,y) J ^2 12 6(Х~^У~ -г,у-
232 Часть II. Первые этапы: одно изображение Преобразование Фурье Амплитудный спектр Выборка Копирование-смещение Дискретный Преобразование сигнал Фурье Амплитудный спектр После пропускания через полосовой фильтр вырезается фрагмент Неточно Обратное восстановленный преобразование Амплитудный спектр Рис. 7.11. Фурье-образ дискретного сигнала состоит из суммы элементов Фурье-образов исходного сигнала, смещенных относительно друг друга на частоту дискретизации. Возможны два варианта. Если смещенные элементы не пересекаются (как на рис. 7.10), то исходный сигнал можно восста- новить по дискретному (просто выделяется один элемент Фурье-образа и выполняется обратное преобразование). Если же они пересекаются (как в данном случае), то области пересечения скла- дываются, поэтому нельзя выделить отдельный элемент Фурье-образа, и сигналы накладываются ОС = 52 г= —оо где Фурье-образ функции f(x, у) записывается как F(u,v). Если носители этих смещенных Фурье-образов сигнала не пересекаются, то можно без труда восстановить сигнал по его дискретному варианту. Берет- ся дискретный сигнал, находится его Фурье-образ, из этого преобразования выделяется один элемент и снова находится его Фурье-образ (рис. 7.10) Однако если области носителей перекрываются, сигнал восстановить невоз- можно, поскольку невозможно определить Фурье-образ сигнала в области пе- рекрывания, где разные элементы Фурье-образов складываются друг с другом. Это выражается в характерном явлении, которое часто называют наложением, когда высокие пространственные частоты становятся низкими (см. рис. 7.12, а
Глава 7. Линейные фильтры 233 256 х 256 128 х 128 64x64 32 х 32 16 х 16 Рис. 7.12. В верхней строке показаны дискретные варианты изображения решетки, полученные перемножением двух синусоид с линейно возрастающей частотой — одна по координате х, а другая — по у. Остальные изображения в серии получены с помощью повторной дискретизации при уменьшении в два раза, без сглаживания (т.е. размер следующего изображения будет 128 х 128, затем — 64 х 64, и т.д.; на рисунке все изображения приведены к одинаковому размеру). Обратите внимание на значительное наложение; высокие пространственные частоты накладываются на низ- кие, и самое маленькое изображение — это чрезвычайно отдаленное подобие большого. В нижней строке показана амплитуда Фурье-образа каждого изображения, которая для сокращения шкалы интенсивности представлена в виде логарифма. В центре находится неизменный элемент. Обратите внимание, что Фурье-образ изображения, подвергшегося повторной дискретизации, можно полу- чить путем масштабирования Фурье-образа исходного изображения с последующим клеточным разбиением. Интерференция между элементами исходного Фурье-образа приводит к тому, что вос- становить значения в некоторых точках невозможно — это основоположный механизм наложения также раздел упражнений). Такие рассуждения приводят к теореме Найкви- ста: чтобы по дискретной версии можно было восстановить исходный сигнал, частота дискретизации должна быть не менее чем в два раза больше, чем самая высокая частота сигнала. 7.4.3. Сглаживание и повторная дискретизация Из теоремы Найквиста следует, что сокращать изображение путем простой выборки каждого /г-го пикселя опасно (что подтверждается на рис. 7.12). Вместо этого следует фильтровать изображение таким образом, чтобы устранить про- странственные частоты, превышающие новую частоту дискретизации. Это мож- но сделать точно, умножив Фурье-образ изображения на двумерную полосовую функцию, которая выполняет роль низкочастотного фильтра. Эквивалентным действием была бы свертка изображения с ядром вида (sinxsiny)/(xy). Но это слишком сложно и дорого (а точнее невозможно), поскольку носитель этой функции бесконечен. Самый интересный случай — это когда требуется уменьшить ширину и вы- соту изображения в два раза. Предположим, что в дискретном изображении
234 Часть II. Первые этапы: одно изображение 256 х 256 128 х 128 64x64 32x32 16 х 16 Рис. 7.13. Вверху: варианты изображения рис. 7.12, подвергшегося повторной дискретизации, при уменьшении частоты в два раза, но теперь каждое изображение до повторной дискретизации сглаживалось гауссианом с а в один пиксель. Этот фильтр низкочастотный, т.е. он подавляет элементы с высокой пространственной частотой, уменьшая наложение. Внизу: действие низ- кочастотного фильтра легко понять по изображениям логарифма амплитуды: чтобы снизить наложение, низкочастотный фильтр подавляет элементы с высокой пространственной частотой, так что интерференция уменьшается нет наложения (если бы оно было, мы ничего не смогли бы с ним сделать; если изображение подверглось дискретизации, то все возможное наложение уже произошло, и без модели изображения можно сделать очень немного). Это означает, что Фурье-образ дискретного изображения будет состоять из набо- ра элементов определенных Фурье-образов, центры которых смещены в целые точки пространства и, v. Если подвергнуть данный сигнал повторной дискретизации, то центры этих элементов попадут в полуцелые точки пространства и, v. Это означает, что во избежание наложения следует воспользоваться фильтром, который значи- тельно уменьшает содержание исходного Фурье-образа за пределами обла- сти |п| < 1/2, |г>| < 1/2. Конечно, если уменьшить содержание сигнала внутри этой области, можно также потерять часть информации. Фурье-образ гауссиа- на — это гауссиан, а гауссиан очень быстро спадает до нуля. Следовательно, желаемого результата можно достичь, если свернуть изображение с гауссианом (или, что то же самое, умножить его Фурье-образ на гауссиан). Выбор гауссиана зависит от области применения: если <т большое, то нало- жение будет меньше (поскольку значение ядра за пределами данной области очень мало), но информация будет теряться из-за того, что ядро в данной об- ласти не плоское; подобным образом, если <т мало, то внутри области будет те- ряться меньше информации, однако наложение будет значительнее. На рис. 7.13 и 7.14 показаны результаты различного выбора а.
Глава 7. Линейные фильтры 235 256 х 256 128 х 128 64x64 32 х 32 16 х 16 Рис. 7.14. Вверху: варианты изображения рис. 7.12, подвергшегося повторной дискретизации, при уменьшении частоты в два раза, причем каждое изображение до повторной дискретизации сглажи- валось гауссианом с а в два пикселя. Этот фильтр подавляет компоненты с высокой пространствен- ной частотой сильнее, чем на рис. 7.13. Внизу: действие низкочастотного фильтра легко понять по изображениям логарифма амплитуды: чтобы снизить наложение, низкочастотный фильтр подавляет элементы с высокой пространственной частотой, так что интерференция уменьшается Выше в качестве низкочастотного фильтра использовался гауссиан, посколь- ку его реакция на высокие пространственные частоты низкая, а на низкие пространственные частоты — высокая. На самом деле гауссиан не особенно хорош в роли низкочастотного фильтра. Здесь нужен фильтр, реакция кото- рого в определенном диапазоне низких пространственных частот достаточно близка к постоянной (полоса пропускания), а для высоких пространственных частот также достаточно близка к околонулевой постоянной (полоса задержки). Можно создать низкочастотный фильтр, который будет значительно эффектив- нее гауссиана. Разработка включает в себя хорошо продуманный выбор между критериями волнистости (насколько плоской будет реакция полосы пропуска- ния и полосы задержки?) и спада (как быстро реакция снижается до нуля и как долго остается такой?). Основные этапы повторной дискретизации сведе- ны в алгоритме 7.1. Алгоритм 7.1. Повторная дискретизация при уменьшении изображения в два раза Применить к исходному изображению низкочастотный фильтр (как правило, здесь подходит гауссиан с ст от одного до двух пикселей) Создать новое изображение, размеры которого будут в два раза меньше предыдущего Присвоить значение (i, j)-ro пикселя нового изображения (2г, 2J)-My пикселю отфильтрованного изображения
236 Часть II. Первые этапы: одно изображение 7.5. ФИЛЬТРЫ КАК ШАБЛОНЫ Оказывается, что фильтры представляют собой естественный механизм по- иска простых шаблонов, поскольку сильнее всего фильтры реагируют на эле- менты, похожие на сам фильтр. Например, фильтры сглаживания производных склонны давать сильную реакцию в точках, где производная велика. В этих точ- ках ядро фильтра похоже на тот объект, который фильтр должен определить. Фильтры производных по координате х представляют собой вертикальное пят- но света, следующее за темным пятном (конфигурация, для которой характерна большая производная по х), и т.д. Очень часто фильтры, которые склонны сильно реагировать на шаблоны, сами выглядят как шаблоны (рис. 7.15). Это простое геометрическое следствие. 7.5.1. Свертка как скалярное произведение В разделе 7.1.1 было сказано, что для ядра Q некоторого линейного фильтра реакция этого фильтра на изображение 7Y записывается как Rij = Gi—u,j—vHuv- u,v Теперь рассмотрим реакцию фильтра в точке, где i и j равны нулю, а именно R = Y^g-u,-vHu,v. 11, V Эту реакцию можно найти, соотнеся элементы изображения с элементами ядра, перемножив соотнесенные элементы и просуммировав их. Можно пре- образовать изображение в вектор, а ядро фильтра — в другой вектор таким образом, что соответствующие элементы будут приходиться на одни и те же компоненты. Подставляя в нужные места нули, можно убедиться, что раз- мерность этих двух векторов одинакова. После этого процесс перемножения соответствующих элементов и их суммирование превращается в вычисление скалярного произведения. Это достаточно точная аналогия, поскольку скалярное произведение стано- вится максимальным, когда вектор, представляющий изображение, параллелен вектору, представляющему ядро фильтра. Это значит, что сильнее всего фильтр реагирует, когда встречает модель изображения, напоминающую сам фильтр. Кроме того, реакция фильтра будет сильнее в более яркой области. Теперь рассмотрим реакцию изображения на фильтр в другой точке. Суще- ственно модель не изменится. Как и прежде, можно преобразовать изображение в один вектор, а ядро фильтра — в другой, чтобы соответствующие элемен- ты приходились на одни и те же компоненты. Результатом применения этого фильтра будет скалярное произведение. Ниже описаны два основных подхода к работе со скалярным произведением.
Глава 7. Линейные фильтры 237 Рис. 7.15. Ядро фильтра выглядит так же, как и элемент, который он определяет. Слева показан гауссов фильтр сглаживания производных, который фиксирует большие изменения по координате х (темное пятно, следующее непосредственно за светлым); справа — гауссов фильтр сглаживания производных, который фиксирует большие изменения по координате у 7.5.2. Смена базиса Свертку можно представлять как скалярное произведение изображения и различных векторов в каждой точке (поскольку ядро фильтра сдвинуто в какую-то другую точку изображения). Новый вектор можно найти, преоб- разовав старый таким образом, чтобы можно было найти сумму элементов, попадающих в нужные компоненты. Это означает, что при свертке изображе- ния с фильтром результат представляется в новом базисе векторного простран- ства изображений — базисе, заданном различными смещенными вариантами фильтра. Исходными базисными элементами были векторы с нулями во всех положениях, кроме одного. Новые базисные элементы — это смещенные копии одного образца. Для многих из упоминавшихся здесь ядер описанный процесс связан с по- терей информации — по той же причине, что и снижение шума при сглажи- вании — так что коэффициенты в этом базисе избыточны. Несмотря на то, что коэффициенты могут быть избыточными, они служат полезным описани- ем структуры изображения. Такие преобразования базиса ценны при анализе текстуры. Как правило, выбирается базис, состоящий из мелких полезных эле- ментов модели. Большие значения коэффициентов базиса предполагают, что компоненты модели существуют, и текстуру можно передать, представив связь между этими компонентами, как правило, в форме вероятностной модели. 7.6. МЕТОД: НОРМИРОВАННАЯ КОРРЕЛЯЦИЯ И ПОИСК МОДЕЛИ Свертку можно представлять как сравнение фильтра с участком изображе- ния с центром в точке, реакцию которой мы рассматриваем. При таком подходе окружение изображения, соответствующее ядру фильтра, преобразуется в век-
238 Часть II. Первые этапы: одно изображение тор, который и сравнивается с ядром. Само по себе это скалярное произведение плохо помогает находить элементы, поскольку какое-то значение может быть большим просто потому, что соответствует яркому участку изображения. Про- водя аналогию с векторами, нужно знать косинус угла между вектором фильтра и вектором окружения изображения; это подразумевает вычисление квадратно- го корня из суммы квадратов значений соответствующей области изображения (элементов изображения, которые попадали бы под ядро фильтра) и деление результата на полученную величину. Если область изображения выглядит как ядро фильтра, то эта величина будет большой и положительной, а если область изображения выглядит как изображение, обратное по контрастности к ядру фильтра, — маленькой и отри- цательной. Если обратная по контрастности картинка не важна, корень квад- ратный можно не брать. Это недорогой, но эффективный метод поиска модели, который часто называют нормированной корреляцией. 7.6.1. Управление телевизором: нахождение руки с помощью нормированной корреляции Возможно создать системы, которые реагировали бы на человеческие же- сты. Например, можно было бы включать свет в комнате одним взмахом ру- ки или изменять температуру в помещении, указав пальцем на кондиционер, а каким-то другим соответствующим жестом переключить телевизор на дру- гую программу, если вас раздражает выступающий там политик. Как правило, в потребительских приложениях существуют строгие ограничения на объем возможных вычислений, т.е. важно, чтобы система распознавания жестов была простой. Однако такие системы, как правило, достаточно ограничены в своих возможностях. Управление телевизором Как правило, пользовательский интерфейс находится в определенном со- стоянии (возможно, на дисплей выведено меню) и когда происходит какое-то событие (возможно, нажатие клавиши удаленного управления), состояние ин- терфейса изменяется (скажем, высвечивается новая позиция меню), а в целом процесс продолжается. В некоторых состояниях определенные события застав- ляют систему выполнять определенные действия (можно переключить канал). Все это означает, что смена состояний — это удобная основа для создания пользовательского интерфейса. Зрение можно включить в эту схему только одним способом — возможно- стью предвидеть события. Это неплохо, поскольку существует только несколько различных видов событий, причем известно, какие события должны касаться системы в любом отдельно взятом состоянии. Итак, системе нужно только уметь определять, произошло событие (одно из небольшого числа известных) или нет. Возможность создания системы, соответствующей таким требованиям, достаточно реальна.
Глава 7. Линейные фильтры 239 Для имитации удаленного управления необходим относительно небольшой набор событий: нужны события, похожие на нажатие кнопки (например, для включения или выключения телевизора) и на поворот переключателя (напри- мер, для увеличения громкости, но и это можно сделать с помощью кнопки). Совершая предопределенные действия, можно включить телевизор и управлять меню на экране. Поиск руки В работе [Freeman, Anderson et al., 1998] разработан интерфейс, в котором телевизор включатся разжатием ладони. Это выполнимо, поскольку все, что требуется от системы, — это определить, есть ли рука в поле зрения. Более того, пользователь будет взаимодействовать с ней путем поднятия и раскрытия ладони. Поскольку пользователь, скорее всего, будет находиться на прибли- зительно постоянном расстоянии от камеры (т.е. можно считать, что размер ладони приблизительно известен, поэтому нет необходимости искать шкалу ве- личины) перед телевизором, то область, где можно искать раскрытую ладонь, относительно невелика. Поднятая рука имеет достаточно стандартную форму и ориентацию и, как правило, находится на одном и том же расстоянии от телевизора, так что из- вестно, как это должно выглядеть. Это означает, что для поиска руки можно успешно пользоваться оценкой нормированной корреляции. Любые точки кор- реляционного изображения, в которых эта оценка достаточно высока, соответ- ствуют руке. Данный метод можно применять для контроля громкости и т.п., а также для включения или выключения телевизора. Следовательно, нужно иметь представление о том, куда движется рука (при движении в одну сторону громкость увеличивается, а при движении в другую — уменьшается), а этого можно достичь сравнением настоящего положения объекта с предыдущим. Си- стема показывает значок, говорящий о ее интерпретации положения руки, так что у пользователя есть некое подобие обратной связи с системой (рис. 7.16). Заметим, что привлекательная черта такого подхода — это способность к само- настройке: когда вы ставите телевизор, вы садитесь перед ним и несколько раз показываете свою руку, чтобы дать системе возможность оценить расстояние, на котором она появляется. 7.7. МЕТОД: МАСШТАБ И ПИРАМИДЫ ИЗОБРАЖЕНИЙ При различном масштабе изображения выглядят абсолютно по-разному. На- пример, морду зебры на рис. 7.17 можно изобразить в виде отдельных волосков (которые можно закодировать с помощью реакции ориентированных фильтров, масштаб работы которых — несколько пикселей) или в виде полос зебры. В слу- чае с зеброй не хотелось бы пользоваться большими фильтрами для определе- ния полос, поскольку эти фильтры склонны к излишней точности — совсем не обязательно знать о расположении каждого волоска в полоске. Кроме того, большие фильтры неудобно создавать и они работают очень медленно. Более
240 Часть II. Первые этапы: одно изображение Рис. 7.16. Примеры системы управления телевизором Фримана. Слева показано, что “видит” те- левизор при каждом состоянии, а справа — что видит пользователь: а) телевизор выключен, но происходит процесс наблюдения за пользователем; б) раскрытая ладонь заставляет телевизор вклю- читься и показать пользователю панель интерфейса; в) значок на панели перемещается вслед за открытой ладонью пользователя; г) пользуясь этим, можно переключать каналы, перемещая изоб- ражение по экрану; д) пользователь показывает закрытую ладонь, чтобы выключить телевизор. Перепечатано из W. Freeman et al., “Computer Vision for Interactive Computer Graphics", IEEE Compuer Graphics and Applications, 1998. © 1998 IEEE практичный подход — применять маленькие фильтры к сглаженным и прошед- шим повторную дискретизацию изображениям. 7.7.1. Гауссова пирамида Пирамида изображения — это набор представлений изображения. Проис- хождение названия объясняется зрительной ассоциацией. Как правило, каждый слой пирамиды в два раза меньше по высоте и по ширине, чем предыдущий; если складывать их друг на друга, то как раз и получится пирамида. Алгоритм 7.2. Построение гауссовой пирамиды Выбрать слой с наилучшим масштабом изображения Для каждого слоя, кроме первого Получить этот слой сглаживанием предыдущего с помощью гауссиана, а затем провести его дискретизацию конец
Глава 7. Линейные фильтры 241 Рис. 7.17. Гауссова пирамида изображения, начиная с размера 512 х 512 и до 8 х 8. В верхней строке все изображения имеют один размер (так что отличаются только размеры пикселей), а в нижней части рисунка изображения приведены в соответствии с масштабом. Заметим, что если свернуть каждое изображение с фильтром фиксированного размера, это даст совершенно различные результаты. Блок пикселей размером 8x8 наилучшего масштабного уровня может содержать несколько волосков, на более грубом уровне он может содержать всю полоску, а на самом грубом уровне он содержит всю морду животного В гауссовой пирамиде каждый слой сглаживается симметричным гауссо- вым ядром и подвергается повторной дискретизации, чтобы получить следую- щий слой (рис. 7.17). Эти пирамиды удобнее всего строить, когда размерность изображения кратна двум. Самое маленькое изображение сглаживать труднее всего. Эти слои часто называют грубой шкалой изображения. Используя небольшое число обозначений, можно записать простые выраже- ния для слоев гауссовой пирамиды. Оператор снижает уровень дискретиза- ции изображения; в частности, (J, А:)-й элемент оператора S^(P) — это (2j, 2/с)-й элемент I. Уровень п пирамиды обозначен как Р(Т)п- Пользуясь этими
242 Часть II. Первые этапы: одно изображение обозначениями, получим /^GauB8ian(^)n+l = ♦ */^3aussian(7)n) = — 5'^G'CT(7:>GauBsian(^)n), где Ga обозначает линейный оператор, который превращает изображение в свертку этого изображения с гауссианом. Наилучший уровень — это ис- ходное изображение: Pg auseian (T)t = z. 7.7.2. Применение масштабных представлений Гауссовы пирамиды очень эффективны, поскольку они позволяют получать представления различных типов структуры изображения. Имеется три стан- дартных области их применения. Поиск по масштабу Многие объекты можно представить как маленькие модели изображений. Характерный пример — это изображение человеческого лица в анфас. Как пра- вило, при низком разрешении изображение лица имеет достаточно характерный вид: глаза похожи на темные углубления под темными полосами (бровями), раз- деленные более светлой полосой (зеркальное отражение от носа), а ниже нахо- дится еще одна темная полоска (рот). Существуют различные методы определе- ния изображения лица, в которых используются эти свойства (см. главу 22). Во всех этих методах предполагается, что размеры лица не выходят за рамки опре- деленных пределов. Все остальные лица находятся подбором пирамиды. Чтобы найти лицо большего размера, берутся более грубые слои, а чтобы найти лицо меньшего размера, берутся слои высшего качества. Эта уловка используется во многих различных случаях, о чем будет рассказано в последующих главах. Пространственный поиск Еще одно из приложений — это пространственный поиск, обычная тема компьютерного зрения. Как правило, есть точка одного изображения и нужно найти точку на втором изображении, которая ей соответствует. С этой пробле- мой сталкиваются в стереозрении, когда точка движется или из-за того, что движется камера, или из-за того, что она соответствует движущемуся объекту. Поиск соответствия по исходным парам изображений неэффективен, по- скольку придется разбираться с большим количеством деталей. Более удачный подход, который сейчас считается почти универсальным, — это искать соот- ветствие по более сглаженному и повторно дискретизованному изображению, а затем совершенствовать его, изучая более подробные варианты изображения. Например, можно уменьшить изображение размером 1024 х 1024 до 4 х 4, подо- брать к нему соответствие, а потом рассмотреть вариант 8x8 (так как известно приблизительное соответствие, то его несложно уточнить); затем рассматрива-
Глава 7. Линейные фильтры 243 ется вариант 16 х 16 и т.д., вплоть до версии 1024 х 1024. Такой метод поиска чрезвычайно эффективен, поскольку шаг в один пиксель в версии 4x4 равно- значен шагу в 256 пикселей в версии 1024 х 1024. Такая стратегия называется подбор от худшего к лучшему. Отслеживание особенностей Большинство особенностей, которые можно обнаружить на грубых уровнях сглаживания, связаны с большими, высококонтрастными событиями на изобра- жении, поскольку для того, чтобы особенность была заметна на грубых уров- нях, ее существование не должно противоречить большой области пикселей. Как правило, поиск на грубых уровнях дает неправильную оценку как разме- ра, так и положения этих особенностей. Например, ошибка в один пиксель на изображении грубого уровня превращается в ошибку во много пикселей на изображении мелкого масштаба. При мелком масштабе появляется множество особенностей, некоторые из них связаны с еще меньшими, низкоконтрастными событиями. Один из спо- собов улучшения набора особенностей, которые проявляются при мелком мас- штабе, — это отслеживать особенности вплоть до самого грубого масштаба и принимать только те особенности мелкого масштаба, у которых есть замет- ные предшественники на более грубых уровнях. Этот метод, который называ- ют отслеживанием особенностей, в принципе, может помочь избавиться от особенностей, обусловленных текстурой некоторых областей изображения (что часто считают шумом), и особенностей, обусловленных настоящим шумом. 7.8. ПРИМЕЧАНИЯ Мы не претендуем на исчерпывающее описание линейных систем, но не ознакомившись с идеями, изложенными в этой главе, невозможно было бы читать литературу о фильтрах в компьютерном зрении. Здесь приведен доста- точно полный перечень; более подробно об этом можно прочитать в книгах [Bracewell, 1995] и [Bracewell, 2000]. Реальные системы создания изображений и линейные инвариантные относительно сдвига системы Системы создания изображений можно считать линейными только в некото- ром приближении. Пленки не линейны — они не реагируют на слабые стимуля- торы и засвечиваются под действием слишком ярких стимуляторов, — но в ра- зумных пределах можно пользоваться линейной моделью. ПЗС-камеры линейны во всем рабочем диапазоне. Вследствие теплового шума они дают небольшую, но не нулевую реакцию на нулевой вход (вот почему астрономы охлаждают свои камеры), а под действием слишком ярких стимуляторов — засвечиваются. ПЗС-камеры часто оснащены электроникой, благодаря которой их выход более похож на поведение пленки (поскольку потребители привыкли к пленкам). Ин- вариантность относительно сдвига также приблизительна, поскольку линзам
244 Часть II. Первые этапы: одно изображение свойственно искажать реакцию на границах изображения. Некоторые линзы (например, в виде рыбьего глаза) не инвариантны относительно сдвига. Масштаб По вопросам масштабирования пространства и масштабных представлений был проведен большой объем работ. Начало было положено в работе [Witkin, 1983], а развитие идеи изложено в работе [Koenderink and van Doorn, 1986]. С тех пор вышло множество литературы (можно начать с [Haar Romeny, Flo- rack, Koenderink and Viergever, 1997] или [Nielsen, Johansen, Olsen and Weick- ert, 1999]). В главе кратко описывается современное состояние вещей, посколь- ку детальный анализ был бы слишком сложным. О пользе этих методов все еще ведутся горячие споры. Анизотропное масштабирование Еще одна сложность при составлении моделей масштабирования простран- ства связана с тем, что в процессе сглаживания симметричным гауссианом наблюдается тенденция к размыванию краев, слишком сильная, чтобы не об- ращать на нее внимания. Например, если есть изображение двух деревьев на горизонте, стоящих рядом друг с другом, то при крупном масштабе пятна, соответствующие каждому дереву, могут начать сливаться еще до того, как смажутся все мелкомасштабные пятна. Из этого следует, что точки на краях нужно сглаживать отдельно от остальных. Например, можно оценить значе- ние и ориентацию градиента: при больших градиентах можно воспользоваться ориентированным оператором сглаживания, который сильно сглаживает в пер- пендикулярном направлении, и не очень сильно — параллельно градиенту; при небольших градиентах можно воспользоваться симметричным оператором сгла- живания. Эта идея известна под названием сглаживания с сохранением краев. В современном, более формальном подходе (работа [Perona and Malik, 1990а,6]) отмечается семейство представлений масштабирования пространства, которое выступает решением уравнения диффузии дФ __ а2Ф а2Ф _ да дх2 ду2 = Х72Ф с начальными условиями Ф(ж, у, 0) = Т(х,у). Если это уравнение привести к виду дФ да = V • (с(х, у, а)Х7Ф) = = с(х, у, о-) Х?2Ф + (Vc(x, У, О')) • ^Ф)
Глава 7. Линейные фильтры 245 с теми же начальными условиями, то тогда если с(х,у,а) — 1, мы получим исходное уравнение диффузии, а если с(х, у, а) = 0, то сглаживания не про- исходит. Предположим, что с не зависит от а. Если знать, где проходят края изображения, можно создать трафарет, который будет состоять из областей (где с(х, у) = 1), изолированных от крайних участков, где с(х,у) = 0; в этом случае внутри каждой отдельной области, кроме краев, решение будет сглаженным. Несмотря на то, что о положении краев ничего не известно — в противном слу- чае задача не имела бы смысла — по величине градиента изображения можно разумно выбрать с(х,у). Если градиент большой, то с должно быть малым, и наоборот. В литературе есть очень много информации об этом методе, и если он вас интересует, начать можно с книги [Haar Romeny, 1994]. Задачи 7.1. Покажите, что вычисление невзвешенного локального среднего, т.е. опе- рация вида U = i + fc v=j + fc = (2*4-1)» S ' u=i~kv^j~k является сверткой. Каким будет ядро этой свертки? 7.2. Запишите для изображения, которое состоит из всех нулей с един- ственной единицей в центре. Покажите, что свертка этого изображения с ядром ^=2^еХр 2<т2 (которое представляет собой дискретный гауссиан) дает размытое пятно с круговой симметрией. 7.3. Покажите, что свертка изображения с дискретным раздельным двумер- ным ядром фильтра эквивалентна свертке с двумя одномерными ядра- ми. Оцените число операций для изображения размера N х N и яд- ра (2к + 1) х (2k + 1). 7.4. Покажите, что свертка функции с ^-функцией дает исходную функцию. Теперь покажите, что свертка функции со смещенной (5-функцией сдви- гает функцию. 7.5. Свертка изображения с ядром вида (sin resin у)/(гг?/) невозможна, по- скольку у этой функции бесконечный носитель. Почему нельзя най- ти Фурье-образ изображения, умножить его на объемную функцию и применить обратное преобразование Фурье? (Подсказка-, подумайте о носителе.) 7.6. При наложении высокие пространственные частоты превращаются в низ- кие. Объясните, почему происходят следующие явления. а) В старых вестернах, когда показывают движущийся вагон, часто ка- жется, что колеса остаются неподвижными или движутся в обратную
246 Часть II. Первые этапы: одно изображение сторону (например, вагон движется слева направо, а колеса вращают- ся против часовой стрелки). б) Белые блузки с тонкими темными полосками часто приводят к воз- никновению мерцающего набора цветов на телеэкране. в) На изображениях, полученных методом лучевого зондирования, мягкие тени, порожденные плоскими источниками, выглядят как мозаика. Упражнения 7.7. Один из способов получить гауссово ядро — это свернуть постоянное ядро само с собой много раз. Сравните этот метод с оценкой гауссова ядра. а) Сколько раз нужно повторить свертку, чтобы получить хорошее при- ближение? (Нужно определиться с тем, что такое хорошее приближе- ние, построить график зависимости качества изображения от числа проведенных сверток). б) Есть ли в этом методе какие-то преимущества? (Подсказка: не каж- дый компьютер оснащен устройством для выполнения операций с пла- вающей запятой.) 7.8. Напишите программу, которая строит гауссову пирамиду изображения. 7.9. Дискретное гауссово ядро должно накладываться, поскольку ядро содер- жит элементы с достаточно высокой пространственной частотой. Предпо- ложим, что ядро дискретизовалось на бесконечной решетке. С уменьше- нием среднеквадратического отклонения энергия наложения возрастает. Постройте график зависимости энергии наложения от среднеквадрати- ческого отклонения гауссова ядра в пикселях. Теперь предположим, что гауссово ядро задано на решетке 7x7. Если энергия наложения бу- дет того же порядка величины, что и ошибка, вызванная прерыванием гауссиана, то какое самое маленькое среднеквадратическое отклонение можно показать на этой решетке?
8 Определение краев Резкое изменение яркости изображения интересно по нескольким причинам. Во-первых, такие резкие изменения чаще всего возникают на границах объ- ектов — это может быть изображение светлого предмета на темном фоне или темного предмета на светлом фоне. Во-вторых, резкие изменения яркости ча- сто бывают следствием изменения отражательной способности на достаточно характерных структурах — как полосы на зебре или пятна на леопарде. Нако- нец, к резким изменениям яркости изображения также часто приводят резкие изменения ориентации поверхности. Точки изображения, в которых яркость изменяется особенно сильно, часто называют краями, или краевыми точками. Требуется связать краевые точки с границами предметов или другими значащими элементами. При этом сложно точно определить изменения, которые стоит выделять, — можно ли определять границу предмета по голубому небу, которое просвечивается сквозь листья? Как правило, сложно выделить края, имеющие определенное семантическое значение, поскольку для этого необходима информация более высокого уровня. Тем не менее, опыт создания зрительных систем подсказывает, что изучение краев необходимо и полезно, поэтому стоит знать, где эти края проходят.
248 Часть II. Первые этапы: одно изображение Рис. 8.1. В верхней строке приведены три примера реализации случайного процесса стационарного аддитивного гауссова шума. Чтобы показать как положительные, так и отрицательные значения шума, яркость изображений была увеличена на половину всего диапазона. Среднеквадратическое отклонение шума составляет, соответственно (слева направо), 1/256, 4/256 и 16/256 от полной яркости. Это приблизительно соответствует нулю, двум и пяти битам для камеры, выходное раз- решение которой равно восемь битов на пиксель. В нижней строке показана сумма этого шума и изображения. В каждом случае отрицательным значениям или значениям, выходящим из задан- ного диапазона, присваивалось, соответственно, нулевое или максимальное значение 8.1. ШУМ Основная проблема задачи определения краев — это шумы изображения. Детекторы краев построены таким образом, что дают большой выход при рез- ких изменениях, а одна из причин возникновения резких изменений — это прибавление к пикселям посторонних значений (поскольку шумы в разных пик- селях, как правило, не коррелируют, т.е. могут очень сильно отличаться друг от друга). Как показано в разделе 7.3, использовать метод оценки производных изображения с помощью конечной разности невозможно именно из-за шума. Исходя из этого наблюдения, шумы изображения стоит изучить более глубоко.
Глава 8. Определение краев 249 Термином шум обычно обозначают такие данные, из которых невозмож- но (или неизвестно как, или ненужно) извлечь информацию; все остальное называется сигналом. Неправильно считать, что шум не содержит никакой ин- формации — с его помощью, например, можно оценить температуру камеры, обработав изображения, полученные в темной комнате с закрытой линзой. Бо- лее того, поскольку без модели шума сказать о шуме что-то существенное нельзя, будет неверным считать, что шум не моделируется. Вообще, шум — это все то, чем не желают пользоваться, и в этом заключается его суть. 8.1.1. Аддитивный стационарный гауссов шум В модели аддитивного стационарного гауссова шума к каждому пиксе- лю прибавляется значение, которое выбирается на основе гауссова распределе- ния вероятностей. Почти всегда среднее значение этого распределения равно нулю. В качестве параметра этой модели используется среднеквадратическое отклонение. Модель предназначена для описания теплового шума в камерах и иллюстрируется на рис. 8.1. Реакция линейного фильтра на аддитивный гауссов шум Предположим, что дан дискретный линейный фильтр с ядром Q, и подей- ствуем им на шум изображения J\f, представляющий собой стационарный ад- дитивный гауссов шум со средним значением р и среднеквадратическим откло- нением ст. Реакция фильтра в некоторой точке i,j будет следующей: RWt.1 =Y,Gi-UJ-.Nu,v. u,v Поскольку шум стационарен и рассчитываемые величины не зависят от выбора точки, для простоты можно считать, что i и j равны нулю и таким образом из- бавиться от индексов. Предположим, что носитель ядра конечен, так что вклад дает только некоторое подмножество случайных переменных; запишем это под- множество как по,о,Математическое ожидаемое этой характеристики будет следующим: /оо {7?(X)}p(Wo,o, • •, Nr,.)dN0,0... dNr,„ = •оо NU,vP(Nu,v)dNu,v Данный результат можно получить после замены переменных и интегрирова- ния по всем переменным, отсутствующим во всех членах суммы. Поскольку все NUjV — независимые нормально распределенные случайные величины со средним значением р, получаем такой результат: E[R(Ar)\ = p^Gi-uj-v. u,v
250 Часть II. Первые этапы: одно изображение Несложно найти и дисперсию шумовой характеристики. Определим величину е[{Я(ЛОм-е[Я(лом1П или, что то же самое, величину У ~ E[^(A/')i)J]}2p(No.o, - - -, №,e)dNo,o. • • dNr,s. Это, в свою очередь, можно представить в таком виде: У |£ G-u,-v(Nu,v - Д)| р(ЛГо,о, - - •, M-JdNo.o... dNr,a. Данное выражение можно разложить на сумму интегралов двух типов. Члены вида у G\_V(NU,V - rfp(No,o, - - •, Nr,s)dN0,0... dNr,s (для произвольных и и v) можно проинтегрировать без особого труда, посколь- ку все NUtV независимы; интеграл будет равен a2G^_и _v, где а — среднеквад- ратическое отклонение случайного процесса. Члены вида У G—U'-vG-a'-biNu,» — p)(Na,b — p)p(No,o,..., AV,s)<iA/o,o . - • dNr,a (для произвольных и, v и а, Ъ) дают нули, опять же потому, что все составля- ющие шума независимы. Теперь получаем следующее выражение: в [{Я(ЛО,.> - ЧВДу]}2] = S £ Gi,v. Недостатки модели аддитивного стационарного гауссова шума При буквальном рассмотрении модель аддитивного стационарного гауссова шума оказывается плохой моделью шума изображения. Во-первых, эта модель допускает существование положительных (и, что более тревожно, отрицатель- ных!) значений пикселей произвольной величины. Впрочем, при правильном вы- боре среднеквадратического отклонения для обычных камер, снимающих вне помещения или при дневном освещении, это не представляет большой пробле- мы, поскольку такие значения пикселей вряд ли появятся на практике. При восстановлении изображения с шумами проблемным пикселям присваивается, соответственно, нулевое или максимальное значение. Во-вторых, шумовые значения совершенно независимы, т.е. в этой модели не учитывается возможность существования групп пикселей, реакция которых скоррелирована, возможно, из-за особенностей электроники камеры или из-за тепловых пятен в интегральной схеме камеры. Эту проблему решить немного
Глава 8. Определение краев 251 сложнее, поскольку модели шума, описывающие данное явление, достаточно сложны с аналитической точки зрения. Наконец, эта модель не описывает “мертвые" пиксели (пиксели, которые при любых обстоятельствах не да- ют никакой реакции на падающее излучение или постоянно перенасыщены). “Мертвые” пиксели встречаются тогда, когда среднеквадратическое отклонение достаточно велико и существует некоторое пороговое значение отображаемых пикселей, при этом среднеквадратическое отклонение может быть настолько большим, что остальную часть изображения описать невозможно. Решающее преимущество модели аддитивного гауссова шума — это простота оценки ре- акции фильтров на смоделированные таким образом случайные процессы. Это, в свою очередь, помогает оценить, насколько эффективно фильтр реагирует на сигнал и не воспринимает шум. 8.1.2. Почему конечная разность чувствительна к шуму Изучение реакции линейных фильтров на аддитивный стационарный гаус- сов шум требует более глубокого взгляда на реакцию конечной разности на шум. Предположим, что имеется изображение стационарного гауссова шума с нулевым средним значением; рассмотрим дисперсию характеристики филь- тра конечной разности, который последовательно оценивает производные. Для оценки первой производной воспользуемся ядром О О 1 -1 . О О Теперь вторая производная — это просто первая производная от первой произ- водной, так что ядро будет выглядеть так: О 0 0 1-21. 0 0 0 Теперь можно убедиться, что, согласно этой схеме, коэффициенты ядра к-и производной можно взять из (fc + 1)-й строки треугольника Паскаля. Средняя реакция каждого из этих фильтров производных на гауссов шум равна нулю, но дисперсия этой характеристики быстро возрастает; для fc-й производной это сумма квадратов (к + 1)-й строки треугольника Паскаля, умноженная на среднеквадратическое отклонение. Иллюстрирует данный результат рис. 8.2. Есть и другое объяснение. Согласно табл. 7.1, дифференцирование функ- ции — это то же самое, что и умножение ее Фурье-образа на частотную со- ставляющую; это означает, что компоненты с высокой пространственной часто- той очень усиливаются за счет низкочастотных составляющих. Это интуитивно понятно — при дифференцировании функции постоянные члены превращаются в нуль, тогда как амплитуда производной от синусоиды возрастает с часто- той. Более того, именно из-за этого свойства нас интересуют производные:
252 Часть II. Первые этапы: одно изображение Рис. 8.2. По причинам, описанным в разделе 8.1.2, конечная разность может существенно подчерк- нуть гауссов шум. Слева вверху приведено изображение гауссова шума с нулевым средним зна- чением и среднеквадратическим отклонением, составляющим 4/256 от всего диапазона. В центре вверху показана оценка методом конечной разности третьей производной по х, а справа вверху — шестой производной по х. В каждом случае для центрирования изображения ко всем значениям прибавлялась половина диапазона (таким образом показаны отклонения как в положительную, так и в отрицательную сторону). Все изображения приведены в одной яркостной шкале; при изобра- жении шестой производной некоторые значения вышли за пределы этой шкалы. На графике внизу показаны среднеквадратические отклонения изображений шума для первых восьми производных (для оценки использовался метод на основе треугольников Паскаля) резкие изменения (которые приводят к высоким пространственным частотам) дают большие производные. 8.2. ОЦЕНКА ПРОИЗВОДНЫХ Как показано на рис. 7.4, простые фильтры конечной разности имеют силь- ную реакцию на шум, так что применение двух фильтров конечной разности (по одному для каждой координаты) — это плохой способ оценки градиента. Один из способов решения этой проблемы заключается в том, чтобы сгладить изображение, а затем продифференцировать его (хотя можно также сглаживать производные). На практике изображение почти всегда сглаживается гауссовым фильтром; фактически, сглаживается оператор конечной разности. Рассмотрим вначале этот метод, а затем обсудим, чем полезно сглаживание и почему гаус- сиан считается хорошим фильтром для сглаживания.
Глава 8. Определение краев 253 Рис. 8.3. Сглаживание стационарного аддитивного гауссова шума дает сигнал, в котором значения пикселей стремятся все больше и больше походить на своих соседей. Это происходит приблизитель- но на уровне ядра фильтра, поскольку источником корреляции является ядро фильтра. На рисунке показан шум, сглаженный с помощью последовательно увеличивающихся гауссовых ядер. Серые пиксели имеют нулевое значение, более темные — отрицательное, а более светлые — положитель- ное. Ядра в верхнем левом углу каждого изображения определяют пространственный масштаб ядра (яркость ядра, представляющего собой гауссиан, нормирована таким образом, чтобы центральный пиксель был белым, а крайние пиксели — черными). Из рисунка видно, что сглаженный шум по виду приближается к естественной текстуре 8.2.1. Производная от гауссова фильтра Сглаживание изображения с последующим его дифференцированием анало- гично его свертке с производной ядра сглаживания. Легче всего это увидеть, рассмотрев непрерывную свертку. Во-первых, дифференцирование линейно и инвариантно относительно сдви- га. Это означает, что есть некоторое ядро (его точный вид пока не конкре- тизируется), которое выполняет дифференцирование. Если известна функ- ция 1(х,у), то 01 дх — К(д/дх) * */• Теперь нужно взять производную от сглаженной функции. Запишем ядро сверт- ки при сглаживании как S. Напомним, что свертка подчиняется ассоциативно- му закону, т.е. (^(з/Эх) * *(5' **/)) = (Х(а/ах) * *S) **/=( — I ♦ */. Если сглаживающей функцией является гауссиан, можно записать следующее выражение:
254 Часть II. Первые этапы: одно изображение Рис. 8.4. Производные гауссовых фильтров меньше реагируют на шум, чем фильтры конечной разности. На изображении вверху слева показан фрагмент изображения зебры; вверху в центре показано то же изображение, подверженное стационарному аддитивному гауссову шуму с нулевым средним значением и а — 0,03 (значения пикселей принадлежат диапазону от 0 до 1). Вверху справа показано то же изображение, подверженное стационарному аддитивному гауссову шуму с нулевым средним значением и а — 0,09. Во второй строке показаны частные производные по координате х для каждого изображения, в каждом случае оцененные с помощью производной от гауссова фильтра с а в один пиксель. Обратите внимание на то, как сглаживание способствует снижению влияния шума т.е. необходима только свертка с производной гауссиана, а не свертка с последу- ющим дифференцированием. Результат сглаживания намного меньше реагирует на шум, чем оценка производных (рис. 8.4). 8.2.2. Чем полезно сглаживание В общем случае любое изменение значения отражается на целом блоке пик- селей. Например, контуры предмета могут превратиться в длинную цепочку точек, в которых производная изображения будет большой. Во многих моделях шума большие производные изображения, обусловленные шумом, являются, по сути, локальными событиями. Это означает, что сглаживание продифферен- цированного изображения — это некоторое объединение искомых изменений и подавление эффекта шума. Альтернативная интерпретация: искомые измене- ния не будут подавляться при сглаживании, при котором подавляются шумовые эффекты. Существует еще одно объяснение того, чем полезно сглаживание. Предполо- жим, что изображение с шумами было сглажено, а затем продифференцирова- но. Во-первых, ядро сглаживания снижает дисперсию шума, поскольку обычно стараются применять положительные ядра сглаживания, для которых 22^ = 1, а это означает, что UV
Глава 8. Определение краев 255 Во-вторых, стремление пикселей быть похожими на своих соседей возрастает: если взять стационарный аддитивный гауссов шум и сгладить его, то значе- ния пикселей в полученном сигнале больше не будут независимыми. По сути в этом и состоит сглаживание — вспомните, что сглаживание было введено как способ предсказания значения пикселя по значениям соседних с ним пик- селей. В то же время, если пиксели стремятся быть похожими на соседние, то производные должны быть меньше (поскольку они показывают то, насколько пиксели отличаются от соседних с ними). Попробуем рассуждать с позиции пространственных частот. Можно пока- зать, что энергия стационарного аддитивного гауссова шума одинакова для всех частот. Если не пытаться улучшить данную ситуацию, то карта величи- ны градиента, вероятнее всего, будет содержать случайные большие значения, обусловленные шумом. Фильтрация с помощью гауссова фильтра подавляет эти высокие пространственные частоты, как это было при повторной выборке (раздел 7.4.3). Имеются и практические сферы применения сглаженного шума. Как пока- зано на рис. 8.3, сглаженный шум напоминает некую естественную текстуру, поэтому сглаженные шумы широко используются в компьютерной графике в ка- честве источника текстур (см. работы [Ebert, Musgrave, Peachey, Worley and Perlin, 1998] и [Perlin, 1985]). 8.2.3. Выбор фильтра сглаживания Фильтр сглаживания можно подобрать, взяв модель краев и воспользовав- шись некоторым набором критериев для выбора фильтра, который лучше всего реагирует на данную модель. Эту задачу сложно сформулировать для двумер- ного случая, поскольку края в двумерном пространстве могут оказаться ис- кривленными. Условно выбор фильтра сглаживания состоит в формулировании одномерной задачи с последующим применением ротационно-симметричного ва- рианта двумерного фильтра. Одномерный фильтр следует искать, исходя из модели краев. Общепринятая модель — это ступенчатая функция с неизвестными весовыми коэффициентами при наличии стационарного аддитивного гауссова шума, которая задается как край(х) = AU(x) 4- п(х), где О, если х < О 1, если х > О (значение £7(0) не существенно). Величину А обычно называют контрастом края. Для одномерной задачи определение величины градиента эквивалент- но вычислению квадрата реакции производной. Поэтому обычно ищут фильтр оценки производной, а не сглаживающий фильтр (который затем можно вос- становить по фильтру оценки производной). t/(x) =
256 Часть II. Первые этапы: одно изображение Рис. 8.Б. Масштаб (т.е. ст) гауссиана, которым пользуются при выводе гауссова фильтра, сильно влияет на результат. На трех рисунках показаны оценки производной по х для изображения го- ловы зебры, полученного с помощью производной от гауссова фильтра с ст (слева направо) в один пиксель, три пикселя и семь пикселей. Обратите внимание, что на изображении с более мелким масштабом видны отдельные волоски, при среднем масштабе исчезают усы животного, а при самом грубом масштабе исчезают мелкие полосы на морде В работе [Саппу, 1986] описан метод выбора фильтра оценки производной с помощью непрерывной модели оптимального подбора трех критериев. • Отношение сигнал/шум — фильтр должен сильнее реагировать на край при х = 0, чем на шум. • Локализация — реакция фильтра должна достигать максимального зна- чения при приближении к х = 0. • Низкий уровень ложных совпадений — характеристика должна иметь только один максимум в разумной близости от х = 0. Когда непрерывный фильтр найден, его следует дискретизовать. Назван- ные критерии можно комбинировать множеством различных способов, что дает множество различных фильтров. Замечено, что оптимальные фильтры сгла- живания, полученные при многих комбинациях этих критериев, очень сильно напоминают гауссианы — это интуитивно понятно, поскольку в фильтре сгла- живания для центральных пикселей весовые коэффициенты должны быть боль- ше, чем для удаленных, как и у гауссиана. На практике оптимальные фильтры сглаживания часто заменяют гауссианами без каких-либо особых потерь. Выбор а для оценки производной часто называют выбором масштаба сгла- живания. Реакция фильтра производной сильно зависит от масштаба. Предпо- ложим, что имеется узкая линия на постоянном фоне (на рисунке — усы зебры). Сглаживание при масштабе, меньшем, чем ширина линии, означает, что будут различимы начало и конец линии. Если ширина фильтра намного больше, то линия сглаживается до уровня фона и фильтр на нее не реагирует (рис. 8.5).
Глава 8. Определение краев 257 8.2.4. Почему для сглаживания используют гауссиан Хотя гауссиан не является единственным возможным ядром размывания, он удобен, поскольку обладает рядом важных особенностей. Во-первых, если выполнить свертку гауссиана с гауссианом, получим еще один гауссиан: Следовательно, можно получить сильно сглаженное изображение, повторно сгладив уже сглаженное изображение. Это очень важное свойство, поскольку дискретная свертка может оказаться слишком трудоемкой операцией (особенно при большом ядре фильтра), а обычно нужны варианты изображения с различ- ной степенью сглаживания. Эффекти вность Рассмотрим свертку изображения с гауссовым ядром с ст в один пиксель. Хо- тя гауссово ядро ненулевое по всей бесконечной области, большую часть этой области заполняют (благодаря экспоненциальной форме) чрезвычайно малые значения. Для а в один пиксель точки за пределами целочисленной решет- ки 5 х 5 с центром в начале координат имеют значения меньше, чем е~4 = 0,0184, а точки за пределами целочисленной решетки 7 х 7 с центром в на- чале координат имеют значения меньше, чем е-9 = 0,0001234. Это означает, что вкладом этих точек можно пренебречь и представить дискретный гауссиан как небольшой массив (5x5 или 7 х 7, в зависимости от желания и согласно количеству битов, которым описывается ядро). Однако если а равна 10 пикселей, может понадобиться массив 50 х 50, а то и больше. Подсчитав количество операций, можно убедиться, что свертка изоб- ражения разумных размеров с массивом 50 х 50 представляет собой довольно непривлекательную перспективу. Альтернатива — повторная свертка с намного меньшим ядром — гораздо эффективнее, поскольку уже не нужно запоминать промежуточные значения каждого пикселя. Это объясняется тем, что сгла- женное изображение в некоторой степени избыточно (большинство пикселей содержит немалую часть значений своих соседей). Следовательно, некоторы- ми пикселями можно пренебречь. Таким образом, получается довольно эффек- тивная стратегия: сглаживание, подвыборка, сглаживание, подвыборка и т.д. В результате имеем изображение, содержащее ту же информацию, что и силь- но сглаженное изображение, но при этом оно намного меньше, и его легче получить. Подробнее этот метод рассмотрен в разделе 7.7.1. Центральная предельная теорема Гауссиан обладает еще одним важным свойством, которое здесь не доказы- вается, но проиллюстрировано на рис. 8.6. Для семейства функций, представля- ющих практический интерес, многократная свертка любого члена этого семей- ства функций с самим собой дает гауссиан. Вместе с ассоциативностью свертки это предполагает, что если выбирать различные ядра сглаживания и многократ-
258 Часть II. Первые этапы: одно изображение Рис. 8.6. В центральной предельной теореме утверждается, что многократная свертка положи- тельного ядра с самим собой в результате дает ядро, которое будет гауссианом. На графике это продемонстрировано для одномерной свертки; треугольник — это свертка прямоугольной функции с самой собой; каждая последующая функция получается при свертке предыдущей с самой собой но применять их к изображению, то результат будет таким же, как если бы изображение сглаживали с помощью гауссиана. Гауссианы можно разделять Наконец, изотропный гауссиан можно факторизовать следующим образом: Ч 2<г2,М кк/2?<7 Ч и получить произведение двух одномерных гауссианов. В общем случае, функ- ция f(x,y), которая раскладывается на f(x,y) — g(x)h(y), называется тен- зорным произведением. Обычно ядра фильтров, которые являются тензорными произведениями, называют разделяющимися ядрами. Данное свойство крайне полезно. В частности, свертка с разделяющимся ядром фильтра эквивалентна свертке с двумя одномерными ядрами — по направлению х и по направлению у (см. раздел упражнений). Разделяющимися являются и многие другие ядра. Разделяющиеся ядра фильтров дают дискретные представления, которые также можно разделять. В частности, если 7Y — дискретное разделяющееся ядро фильтра, то существу-
Глава 8. Определение краев 259 ют векторы f и д, такие что Hij = fi91- Это свойство можно определить с помощью методов численной линейной ал- гебры, поскольку ранг матрицы Н должен равняться единице. В коммерческих пакетах для выполнения сверток перед применением ядра к изображению его часто проверяют на разделяемость. Это выгодно в тех случаях, когда ядро оказывается неразделяемым. Многие ядра можно выгодно аппроксимировать суммой разделяемых ядер. Если число ядер мало, то такая аппроксимация поз- воляет хорошо сэкономить на свертках. Эта стратегия особенно привлекательна тогда, когда необходимо свернуть изображение со многими различными филь- трами; в таком случае стараются представить каждое из этих ядер как взвешен- ную сумму разделяемых ядер, которые являются тензорными произведениями небольшого количества базисных элементов. После этого можно сворачивать изображения с базисными элементами, а затем формировать различные взве- шенные суммы с целью свертки изображения с различными фильтрами. Наложение в передискретизованных гауссианах Исследование наложения позволяет глубже изучить доступные параметры сглаживания. Любое практически используемое гауссово ядро является дис- кретным приближением гауссиана, дискретизованного по сетке в один пиксель. Это означает, что для того чтобы исходное ядро можно было восстановить по его дискретному приближению, оно не должно содержать элементов с простран- ственной частотой, превышающей 0,5 пиксель-1. Для гауссиана это невозмож- но, поскольку его Фурье-преобразование также является гауссианом, следова- тельно, имеет неограниченную полосу частот. Все, что можно сделать, — при- нять, что энергия в накладываемом сигнале не должна превышать некоторого порогового значения — здесь, в свою очередь, подразумевается, что существует минимальное значение ст, доступное для фильтра сглаживания на дискретной сетке (для значений меньших, чем этот минимум, фильтр сглаживания накла- дывается плохо; см. раздел упражнений). 8.3. ОПРЕДЕЛЕНИЕ КРАЕВ В обоих основных методах определения краев края моделируются как рез- кие изменения яркости. В первом методе используется то, что самые быстрые изменения происходят при исчезновении двумерного аналога второй производ- ной (раздел 8.3.1). Этот подход представляет лишь историческую ценность и на практике уже не применяется. Альтернативный метод состоит в явном поиске точек, в которых градиент достигает экстремума (раздел 8.3.2).
260 Часть II. Первые этапы: одно изображение Рис. 8.7. Лапласиан гауссова ядра фильтра, показанный здесь для а в один пиксель, можно счи- тать результатом вычитания центрального пикселя из взвешенного среднего значения окружения (отсюда следует аналогия с нерезкой маскировкой, описанной в тексте). Достаточно часто это ядро заменяют разницей двух гауссианов — один с маленьким значением а, а другой — с большим значением а 8.3.1. Применение лапласиана для определения краев В одномерном случае вторая производная сигнала равна нулю, если значение первой производной достигает экстремума. Это означает, что для того, чтобы найти большие перепады, нужно искать там, где вторая производная равна ну- лю. Этот метод применим и в двумерном случае. Теперь остается только найти подходящий аналог второй производной. Он должен быть инвариантным отно- сительно поворотов. Несложно показать, что этим требованиям удовлетворяет лапласиан. Лапласиан двумерной функции — это величина (V2/)(x.!,) = g + g. Естественно, прежде чем действовать на изображение лапласианом, изображе- ние необходимо сгладить. Отметим, что лапласиан — это линейный оператор (если вы в этом не уверены, проверьте), т.е. действие лапласиана равносильно свертке изображения с неким ядром (которое обозначают К^ъ). Из ассоциа-
Глава 8. Определение краев 261 Рис. 8.8. Переходы через нуль лапласиана гауссиана при различном масштабе и различных по- роговых значениях градиента. В каждом столбце показан фиксированный масштаб при пороговом значении величины градиента t, возрастающем сверху вниз (в два раза при переходе к следующему изображению). В каждом ряду показано фиксированное значение t при масштабе, увеличивающем- ся за каждый шаг в два раза от ст в один пиксель до ст в восемь пикселей. Отметим, что края на изображениях с мелким масштабом и низким пороговым значением несут большое количество информации, которая может быть полезной в зависимости от того, интересуют ли нас волоски на носу зебры. С увеличением масштаба количество деталей уменьшается; при увеличении порогового значения выпадают мелкие участки краев. Ни при одном масштабе или пороговом значении не по- лучаются очертания головы зебры; во всех случаях есть реакция на полосы, хотя при увеличении масштаба узкие полоски вверху морды неразличимы тивности свертки следует, что {KV2 ♦ *(GCT * */)) = (KV2 * *GO) **I = (V2Ga) * */. Это важно, поскольку, как и для первой производной, сглаживание с последую- щим применением лапласиана равнозначно свертке изображения с лапласианом ядра, которое применялось при сглаживании. Ядро, которое получается в ре- зультате таких действий, показано на рис. 8.7. Эти рассуждения приводят к простому и представляющему большое истори- ческое значение методу определения краев, проиллюстрированному на рис. 8.8.
262 Часть II. Первые этапы: одно изображение Рис. 8.9. Переходы через нуль лапласиана гауссовых данных могут странно вести себя в углах. Во-первых, при прямом угле переход через нуль выпячивается (но проходит через вершину). Это явление возникает не из-за оцифровки (или квантования), оно также встречается и в непрерыв- ном случае. В углах, где сходятся три или больше линий, контуры ведут себя необычно, детали зависят от структуры алгоритма обозначения контура — в результате действий этого алгоритма (имеющегося, кстати, в Matlab) возникают причудливые петли. Это явление можно свести к мини- муму, тщательно разработав процесс обозначения контура, который должен включать достаточно подробную модель построения вершин Проводится свертка изображения с лапласианом гауссиана в определенном масштабе и отмечаются точки, в которых функция равна нулю, — переходы через нуль. Далее следует проверить, действительно ли в этих точках градиент достаточно велик. Изначально этот метод был предложен в работе [Marr and Hildreth, 1980]. Реакция лапласиана гауссова фильтра положительна с одной стороны края и отрицательна с другой. Это значит, что прибавление некоторой части этой реакции к исходному изображению дает картину, на которой края четче, а детали увидеть намного легче. Впервые это наблюдение было использовано в развивающемся фотографическом методе, который называется нерезкой мас- кировкой (чтобы на ярких участках размытого позитива лучше были видны детали, от значения яркости отнимается локальное среднее значение в этой области). Приблизительно того же результата можно достичь, если отфиль- тровать изображение с помощью разницы гауссианов, умножить результат на небольшую константу и прибавить полученное значение к исходному изобра- жению. Теперь разница между двумя гауссовыми ядрами похожа на лапласиан гауссова ядра, и довольно часто одно заменяют другим. Это значит, что при нерезкой маскировке слагаемое, соответствующее краю, прибавляется к исход- ному изображению. Ныне определение краев с помощью лапласиана гауссиана не пользуется популярностью. Поскольку лапласиан гауссова фильтра не ориентирован, его характеристика состоит из перпендикулярной и параллельной к краю состав- ляющих. Это означает, что на углах, где меняется направление параллельной
Глава 8. Определение краев 263 Рис. 8.10. Величину градиента можно оценить путем сглаживания изображения с последующим его дифференцированием. Это равнозначно свертке с производной ядра сглаживания. Степень сгла- живания влияет на величину градиента; на этом рисунке показана величина градиента для изоб- ражения зебры при различном масштабе. В центре величина градиента была оценена с помощью производных гауссиана с <т = 1 пиксель; справа величина градиента была оценена с помощью производных гауссиана с а = 2 пикселя. Отметим, что большие значения градиента дают широкие полосы составляющей, возникают некоторые проблемы. Границы острых углов обозна- чаются очень неточно, а в трехгранных и более сложных углах это создает большие трудности для правильной записи топологии углов, как показано на рис. 8.9. Во-вторых, параллельные компоненты фильтра склонны реагировать на шум, а не только на края; это означает, что переход через нуль не обяза- тельно точно указывает на край. 8.3.2. Детекторы краев на основе градиентов В детекторах краев на основе градиентов оценивается величина градиента (почти всегда с помощью гауссиана в качестве фильтра сглаживания), и эта оценка используется для определения положения краевых точек. Как правило, величина градиента может быть большой вдоль широких полос на изобра- жении (рис. 8.10). Однако контуры объектов — это обычно кривые, поэтому хотелось бы получить кривую, составленную из наиболее характерных точек этой полосы. Естественным кажется подход поиска точек, в которых величина градиента максимальна в направлении, перпендикулярном к краю. При таком подходе перпендикулярность направления к краю можно оценить по направлению гра- диента (рис. 8.11). Такие рассуждения приводят к алгоритму 8.1. Большинство программ поиска краев действуют согласно этому алгоритму, хотя все еще продолжаются жаркие дискуссии о необходимости точного следования всем его этапам.
264 Часть II. Первые этапы: одно изображение Алгоритм 8.1. Определение краев на основе градиентов Оценить градиент изображения Из этой оценки найти величину градиента Найти точки изображения, в которых значение величины градиента максимально в направлении, перпендикулярном к краю, и велико по модулю; эти точки являются краевыми точками Немаксимальное подавление При известных оценках величины градиента нужно найти краевые точки. Как и ранее, точного объективного определения нет, придется руководствовать- ся здравым смыслом и интуицией. Величину градиента можно рассматривать как цепь невысоких холмов. Локальные экстремумы дают отдельные точки — по аналогии с вершинами холмов. Самый лучший критерий — разрезать гради- ент на маленькие участки вдоль направления градиента, которое должно быть перпендикулярным к краю, и отметить точки участка, в которых эта величина максимальна. В результате получится ряд точек вдоль вершин изначальной це- пи холмов; этот процесс называется немаксимальным подавлением (рис. 8.12). Алгоритм 8.2. Немаксимальное подавление Пока есть непроверенные точки с большим значением градиента Найти начальную точку, которая является локальным максимумом в направ- лении, перпендикулярном градиенту, исключая уже проверенные точки Пока возможно, расширяем цепь, проходящую через текущую точку, для этого: 1) предсказываем набор последующих точек с помощью направления, перпендикулярного градиенту 2) находим точку (если такая есть) локального максимума в направлении градиента 3) проверяем, является ли величина градиента в максимуме достаточно большой 4) отмечаем, что эта точка и ее окружение уже проверены фиксируем следующую точку, которая становится текущей конец конец
Глава 8. Определение краев 265 Рис. 8.11. Величина градиента обычно больше в направлении вдоль широких полос на изображе- нии. Как правило, эти полосы группируют в кривые, отображающие краевые точки. Проше всего это сделать, разрезав полосу перпендикулярно к ее направлению и найдя пик. В качестве на- правления, по которому следует резать полосу, берется направление градиента. На рисунке слева показана полоса с большой величиной градиента; на рисунке в центре показано соответствующее направление разреза; на рисунке справа показан пик в этом направлении Рис. 8.12. При немаксимальном подавлении получают точки, в которых величина градиента мак- симальна вдоль направления градиента. На рисунке слева показано, как восстанавливается ве- личина градиента. Точками изображена сетка пикселей. Рассмотрим пиксель q и попытаемся опре- делить, максимален ли градиент в этой точке; вектор градиента, проходящий через q, не проходит ни через один из удобных пикселей как справа, так и слева от него, поэтому выполняют интерпо- ляцию и находят величину градиента в точках риг; если величина в точке q больше, чем в этих двух точках, то q является краевой точкой. Как правило, значения величины восстанавливаются путем линейной интерполяции, при которой для определения значения в этих точках использу- ются пиксели слева и справа от р и г, соответственно. Справа изображено, как определяются кандидаты на следующую краевую точку при условии, что q — краевая точка; соответствующее направление поиска — это перпендикуляр к градиенту, так что точки s и t следует рассматривать как следующие краевые точки. Отметим, что, в принципе, не нужно ограничиваться пикселями сетки изображения, поскольку известно, где предположительно находится край между s и t. Сле- довательно, снова можно провести интерполяцию, чтобы найти значение градиента в точках, не принадлежащих сетке
266 Часть II. Первые этапы: одно изображение Следование по краю Как правило, ожидается, что краевые точки будут расположены вдоль кри- вой по цепочке. Перечислим важные этапы немаксимального подавления: • определить, является ли данная точка краевой; • если это так, найти следующую краевую точку. После обдумывания этих этапов несложно выделить все цепочки краевых точек. Находим первую краевую точку, отмечаем ее, продлеваем все цепи, проходящие через эту точку, отмечая все точки на этих цепях, и делаем то же самое для всех неотмеченных краевых точек. Два основных этапа очень просты. Предположим пока, что края следует отмечать по положениям пикселей (а не по какому-то более мелкому делению сетки пикселей). Определить, является ли величина градиента в данном пиксе- ле максимальной, можно, сравнивая ее со значениями в точках справа и слева по направлению градиента (рис. 8.11). Это функция расстояния вдоль направ- ления градиента; как правило, на следующем шаге выполняется переход вправо на следующую строку (или столбец) пикселей и влево на предыдущий, чтобы определить, больше ли величина градиента в данном пикселе (рис. 8.12). Век- тор градиента обычно не проходит через следующий пиксель, поэтому проводят интерполяцию, чтобы определить значение градиента в интересующих точках; интерполяция, как правило, линейна. Если пиксель оказывается краевой точкой, то следующую краевую точку кривой можно угадать, сделав шаг перпендикулярно градиенту. В общем случае этот шаг не заканчивается на пикселе; естественная реакция — рассмотреть соседние пиксели, находящиеся вблизи от этого направления (см. рис. 8.12). Такой подход дает набор кривых, которые можно представить, изобразив их на черном или белом фоне (рис. 8.13, 8.14 и 8.15). Гистерезис Слишком многие из полученных кривых позволяют разумно описать грани- цы объекта. Частично это вызвано тем, что максимумы величины градиента отмечались вне зависимости от того, насколько велико значение этого макси- мума. Чаще применяют пороговую проверку, чтобы убедиться, что максимум превышает некую нижнюю границу. Это, в свою очередь, приводит к разрыву кривой края (см. рис. 8.13-8.15). В данном случае обычно применяется концеп- ция гистерезиса', есть два пороговых значения, и в начале цепи используется большее, а затем, следуя по ней, меньшее. Эта уловка помогает улучшить по- лученный результат (см. раздел упражнений). 8.3.3. Метод: представление ориентации и углов Хорошо известно, что определять края на углах сложно, поскольку здесь предположение о том, что для оценки ориентации градиента достаточно оце- нить частные производные по х и у, не срабатывает. В острых или неудачно
Глава 8. Определение краев 267 Рис. 8.13. Краевые точки, отмеченные на сетке пикселей для изображения вверху. Краевые точки слева получены с помощью гауссова фильтра сглаживания при а в один пиксель; чтобы определить, является ли точка краевой, величина градиента проверялась при высоком пороговом значении. Кра- евые точки в центре получены с помощью гауссова фильтра сглаживания при а в четыре пикселя; чтобы определить, является ли точка краевой, величина градиента проверялась при высоком поро- говом значении. Краевые точки справа получены с помощью гауссова фильтра сглаживания при <т в четыре пикселя; чтобы определить, является ли точка краевой, величина градиента проверялась при низком пороговом значении. При мелком масштабе мелкие детали с высокой контрастностью приводят к возникновению краевых точек, которые исчезают при более грубом масштабе. При высоком пороговом значении кривые краевых точек часто прерываются, поскольку величина гради- ента опускается ниже порогового значения; при низком пороговом значении появляется множество новых неоднозначных краевых точек расположенных углах эти оценки частных производных обычно оказываются неверными, поскольку их носитель будет пересекать угол. Существует множе- ство специальных детекторов краев на углах, в которых ищутся области изоб- ражения с сильными колебаниями градиента (рис. 8.16). В более общем случае достаточно полезное описание области изображения дает статистика градиента в этой области. Окна изображения условно можно разделить на четыре каче- ственных типа: • с гладкой выборкой, когда уровень яркости приблизительно равен кон- станте; • со ступенчатой выборкой, где в пределах окна есть резкие изменения яркости изображения вдоль одного направления; • с анизотропной текстурой, где в пределах окна есть несколько мелких линий (например, волосы или шерсть); • с изотропной текстурой, где в пределах окна есть какая-либо двумерная текстура (скажем, пятна или угол).
268 Часть II. Первые этапы: одно изображение Рис. 8.14. Краевые точки, отмеченные на сетке пикселей для изображения вверху. Краевые точки слева получены с помощью гауссова фильтра сглаживания при а в один пиксель; чтобы определить, является ли точка краевой, величина градиента проверялась при высоком пороговом значении. Кра- евые точки в центре получены с помощью гауссова фильтра сглаживания при а в четыре пикселя; чтобы определить, является ли точка краевой, величина градиента проверялась при высоком поро- говом значении. Краевые точки справа получены с помощью гауссова фильтра сглаживания при а в четыре пикселя; чтобы определить, является ли точка краевой, величина градиента проверялась при низком пороговом значении. При мелком масштабе мелкие детали с высокой контрастностью приводят к возникновению краевых точек, которые исчезают при более грубом масштабе. При высоком пороговом значении кривые краевых точек часто прерываются, поскольку величина гради- ента опускается ниже порогового значения; при низком пороговом значении появляется множество новых неоднозначных краевых точек Все эти ситуации соответствуют различным типам поведения градиента изоб- ражения. В окнах с гладкой выборкой вектор градиента короткий; в окнах со ступенчатой выборкой существует небольшое количество длинных векторов градиента, которые все направлены в одну сторону; в окнах с анизотропной текстурой существует множество векторов градиента, указывающих по двум направлениям; а в окнах с изотропной текстурой вектор градиента колеблется. Эти различия можно довольно легко изобразить, посмотрев на колебания ориентации в пределах окна. В частности, матрица н = £{(V/)(W)T}» окно
Глава 8. Определение краев 269 Рис. 8.15. Краевые точки, отмеченные на сетке пикселей для изображения вверху. Краевые точки слева получены с помощью гауссова фильтра сглаживания при а в один пиксель; чтобы определить, является ли точка краевой, величина градиента проверялась при высоком пороговом значении. Кра- евые точки в центре получены с помощью гауссова фильтра сглаживания при а в четыре пикселя; чтобы определить, является ли точка краевой, величина градиента проверялась при высоком поро- говом значении. Краевые точки справа получены с помощью гауссова фильтра сглаживания при а в четыре пикселя; чтобы определить, является ли точка краевой, величина градиента проверялась при низком пороговом значении. При мелком масштабе мелкие детали с высокой контрастностью приводят к возникновению краевых точек, которые исчезают при более грубом масштабе. При высоком пороговом значении кривые краевых точек часто прерываются, поскольку величина гради- ента опускается ниже порогового значения; при низком пороговом значении появляется множество новых неоднозначных краевых точек dG, ду 8G, ду хорошо описывает поведение ориентации в пределах окна. В окне с гладкой вы- боркой оба собственных значения этой матрицы малы, поскольку малы все эле- менты. В окне со ступенчатой выборкой можно ожидать, что одно собственное значение, связанное с градиентами края, будет большим, а другое — малым, так как несколько градиентов направлены в другие стороны. В окне с анизотроп-
270 Часть II. Первые этапы: одно изображение Рис. 8.16. Изображение дерева Джошуа (Joshua tree) (слева) и его ориентация, показанная в виде векторов, наложенных на изображение (справа). Ориентация накладывается на изображение в фор- ме маленьких векторов. Отметим, что вокруг углов и в текстурных областях вектор ориентации сильно колеблется ной текстурой можно ожидать такие же собственные значения, за исключением того, что большое значение будет еще больше, поскольку краев, вносящих свой вклад, будет больше. Наконец, в окне с изотропной текстурой оба собственных значения будут большими. Поведение этой матрицы легче всего понять, построив эллипсы (х,у)т'Н~1(х,у) = € для некоторой малой константы е. Эти эллипсы накладываются на окна изоб- ражения. Их главная и малая оси направлены вдоль собственных векторов матрицы 7Y, а длина главной и малой осей соответствует величине собствен- ных значений; это означает, что большой круг соответствует окну с изотропной текстурой, а узкий вытянутый эллипс указывает на окно со ступенчатой выбор- кой (как на рис. 8.17 и 8.18). Таким образом, углы можно обозначать, отмечая точки, в которых площадь этих эллипсов имеет экстремальное и большое значе- ние. Точность локализации, предлагаемая этим методом, ограничена размером окна и поведением градиента. Более точной локализации можно достичь за счет более подробной модели искомого угла (см., например, работы [Harris and Stephens, 19881 или [Schmid, Mohr and Bauckhage, 2000]).
Глава 8. Определение краев 271 Рис. 8.17. Поле ориентаций элемента изображения дерева Джошуа. Слева ориентация показана в виде векторов, наложенных на изображение. Ориентация сравнивалась с порогом, и слишком ма- ленькие значения градиента отбрасывались. На рисунке справа показаны эллипсы (см. объяснение в тексте) для окна размером 3x3 пикселя Рис. 8.18. Поле ориентаций элемента изображения дерева Джошуа. Слева ориентация показана в виде векторов, наложенных на изображение. Ориентация сравнивалась с порогом, и слишком ма- ленькие значения градиента отбрасывались. На рисунке справа показаны эллипсы (см. объяснение в тексте) для окна размером 5x5 пикселей
272 Часть II. Первые этапы: одно изображение 8.4. ПРИМЕЧАНИЯ Тема определения краев освещается во многих работах. Самая первая из известных авторам публикаций — это [Julez, 1959]. Если вы хотите ознако- миться с ранней литературой более подробно, следует начать с обзорных работ [Davis, 1975]; [Herskovits and Binford, 1970]; [Horn, 1971] и [Hueckel, 1971] (где описано моделирование краев и определение модели). Определение краев — тема непрекращающихся споров, многие из которых оказываются неинформативными. В данной главе только очерчены контуры про- блемы. Существует множество критериев оптимизации детекторов края и до- статочно “оптимальные” детекторы. Ключевой среди этой литературы считает- ся работа [Саппу, 1986]; также следует обратить внимание на работы [Deriche, 1987] и [Spacek, 1986]. Подробное и доступное изложение основных вопросов содержит учебник [Faugeras, 1993]. В конце прошлого века большинство схем сводилось к сглаживанию изображения посредством ядер, очень похожих на гауссиан, с последующим измерением градиента. Границы объекта не следует отождествлять с резкими изменениями зна- чений на изображении. Во-первых, в наихудшей ситуации объекты могут не очень отличаться по цвету от фона. Во-вторых, на объекты часто наклады- вается текстура или отметки, которые имеют собственные края, и их бывает настолько много, что часто сложно отыскать среди них значимые участки границ объекта. Наконец, края, не имеющие никакого отношения к границам объектов, могут возникать благодаря теням и т.п. Назовем несколько способов избежать этих трудностей. В некоторых ситуациях есть возможность управлять освещением; если мож- но выбирать освещение, то с помощью тщательного подбора можно достичь огромной разницы в цвете и устранить тени. Затем, установив большие пара- метры сглаживания и высокое пороговое значение контрастности, можно убе- диться, что края, обусловленные текстурой, сглажены и больше не выделя- ются. Этот метод сомнителен, поскольку трудно подобрать нужные параметры сглаживания и пороговые значения, а текстура не только мешает, но и несет определенную информацию. Существуют другие способы борьбы с неприятными различиями между кра- ями и границами объектов. Во-первых, можно работать над усовершенствовани- ем детекторов края. Такой подход широко освещается в литературе по вопросам определения положения, топологии углов и т.п. Авторы склоняются к мысли, что в этой области весьма часты повторные открытия. Начать изучение мож- но с работ [Bergholm, 1987], [Deriche, 1990], [Elder and Zucker, 1998], [Fleck, 1992a], [Kube and Perona, 1996], [Olson, 1998], [Perona and Malik, 1990a,6] или [Torre and Poggio, 1986]. Во-вторых, можно полностью отрицать пользу от детекторов краев. Такой подход развился из наблюдения, что на некоторых этапах определения краев, особенно при немаксимальном подавлении, отбрасывается информация, кото- рую чрезвычайно сложно восстановить. Это происходит вследствие принятия
Глава 8. Определение краев 273 важного решения — проверять результат с помощью порогового значения. Вза- мен предлагается сохранять эту информацию в “неявном” (терминология из области теории вероятностей) виде. Изучив эти доводы, авторы сошлись на мнении не принимать данную точку зрения, поскольку на сегодняшний день нет практических механизмов обработки неявной информации. Наконец, определение краев можно рассматривать как вопрос, связанный со всеми элементами структуры системы — фаталистическая позиция, состоящая в том, что почти у каждого процесса визуализации имеются свои трудности, а правильный подход к этой проблеме состоит в том, чтобы понять, как инте- грируется визуальная информация и построить систему, толерантную к такой интеграции. Хотя это выглядит как заметание мусора под коврик (а именно: непонятно, как можно создать такую структуру), авторы считают этот путь наиболее привлекательным и постоянно его обсуждают. Все детекторы краев плохо ведут себя в углах; различны только детали по- ведения. Переход лапласиана гауссиана через нуль хорошо рассмотрен в работе [Berzins, 1984]. Плохое поведение гауссиана породило два направления в лите- ратуре: 1) что не так? 2) как с этим бороться? Существует множество хитроум- ных детекторов углов, главным образом построенных на наблюдении, что углы обладают довольно хорошими точечными элементами, подходящими для алго- ритмов определения соответствий и широко используемых в таких областях, как стереопсис, реконструкция или восстановление по движению. Это дает достаточно подробные практические знания о возможности локализации с по- мощью детекторов углов (см., например, [Schmid, Mohr and Bauckhage, 2000]). Еще одно направление в литературе — определять, насколько хорошо рабо- тают детекторы краев. Можно изучать точность локализации (см., например, [Kakarala and Hero, 1992], [Lyvers and Mitchell, 1988]) или устойчивость ([Cho, Meer and Cabrera, 1997, 1998]); можно проводить аналогии с человеческими способностями (работы [Bowyer, Kranenburg and Dougherty, 1999], [Dougherty and Bowyer, 1998], [Heath, Sarkar, Sanocki and Bowter, 1997]) или сравнивать схемы в контексте конкретных задач, таких как восстановление структуры по движению ([Shin, Goldgof and Bowyer, 1998]) или распознавание ([Shin, Goldgof and Bowyer, 1999]). Некоторые недостатки свойственны всем детекторам краев (например, поведение в углах рассматривается в работе [Fleck, 19926]). Края, на которые реагируют детекторы краев, иногда называют ступенча- тыми краями, поскольку для них характерно скачкообразное изменение значе- ний, которое иногда моделируют в виде ступенек. Изучается множество других видов краев. Самый распространенный пример — это крышеподобный край, который состоит из растущего сегмента, соединенного со спадающим, что до- вольно похоже на следствие взаимного отражения (рис. 5.16). Другим следстви- ем взаимного отражения является комбинация ступенчатого и крышеподобного краев. Найти эти элементы можно, применив, по сути, те же действия, что бы- ли описаны выше (найти “оптимальный” фильтр и выполнить немаксимальное подавление), см. [Саппу, 1986], [Perona and Malik, 1990а,Ь]. На практике это делается редко, чему есть два объяснения. Во-первых, в теории (и на практи-
274 Часть II. Первые этапы: одно изображение ке) нет удобного базиса для принятых моделей. Какие именно составные края следует искать? Простой ответ — те, для которых легко найти оптимальный фильтр — самый неудовлетворительный. Во-вторых, семантика крышеподобнйх и более сложных составных краев еще неопределеннее, чем для ступенчатых краев. Кроме того, неизвестно, что делать с крышеподобным краем после того, как он будет найден. Края сложно определить и трудно найти, но задачи с выходом схемы опре- деления краев решаются. Крышеподобные края точно так же трудно определить и сложно найти; к тому же ни одна задача с выходом схемы детекторов кры- шеподобных краев не была решена. Реальная проблема заключается в том, что не существует надежного механизма предсказания того, что стоит искать. Гра- ницы этой очень сложной задачи будут очерчены далее. ЗАДАЧИ 8.1. Все значения пикселей на изображении Т размером 500 х 500 пиксе- лей — независимые нормально распределенные случайные числа с нуле- вым средним значением и единичным среднеквадратическим отклонени- ем. Оцените количество пикселей, значения которых больше 3, причем абсолютное значение производной по х оценивается с помощью правой разности (т.е. |Д+1 j - 4 J). 8.2. Все значения пикселей на изображении Т размером 500 х 500 пиксе- лей — независимые нормально распределенные случайные числа с нуле- вым средним значением и единичным среднеквадратическим отклонени- ем. Изображение Т свернуто с ядром G размером 2fc +1 х 2fc +1 . Какова будет ковариантность значений пикселей в результате свертки? Есть два способа решения: в специальном базисе (например, в точках, которые больше, чем 2к + 1, либо по координате х, либо по у, значения обя- зательно независимы) или в базисе, образованном быстро спадающими векторами. Значения пикселей на границе не важны. 8.3. Камера выдает целые значения от 0 до 255. Пространственное разреше- ние камеры — 1024 х 768 пикселей, и она делает 30 кадров в секунду. Камеру устанавливают таким образом, чтобы при отсутствии шума она выдавала постоянное значение 128. Выходные данные подвержены шу- му, который моделируется стационарным аддитивным гауссовым процес- сом с нулевым средним значением и среднеквадратическим отклонением, равным 1. Сколько придется ждать, чтобы по модели шума можно было предсказать, что появятся пиксели с отрицательными значениями? Под- сказка’. стоит использовать логарифмирование, поскольку прямая оцен- ка ехр(—1282/2) даст 0; фокус состоит в том, что нужно пренебречь большими положительными и большими отрицательными логарифмами. 8.4. В разделе 8.3.1 говорилось, что чувствительный двумерный аналог од- номерной второй производной должен быть инвариантным относительно вращения. Почему?
Глава 8. Определение краев 275 Упражнения 8.5. Почему нужно проверять величину градиента при переходах через нуль лапласиана изображения? Назовите типы краев, для которых эта провер- ка очень важна. 8.6. Лапласиан гауссиана похож на разницу между двумя гауссианами при различном масштабе. Сравните эти два ядра для различных значений двух масштабов. Какой выбор даст хорошую аппроксимацию? Насколько существенна ошибка аппроксимации при определении края с помощью метода переходов через нуль? 8.7. Получите реализацию детектора края Кэнни (Саппу) (можно поискать на домашней странице данной книги; реализация также есть в пакете MAT- LAB) и создайте ряд изображений, иллюстрирующих действие порогов контрастности и масштаба на обнаруживаемые края. Насколько сложно настроить детектор на обнаружение только границ объектов? Можете ли вы представить области применения, где это будет несложно? 8.8. Эффект гистерезиса детекторов краев, в которых он реализуется, доста- точно просто свести на нет — по сути, для одного значения устанавли- ваются меньший и больший пороги. Воспользуйтесь этой хитростью для сравнения поведения детектора краев с гистерезисом и без него. а) Что вы будете делать с результатами работы детектора краев? Иногда полезны связанные цепочки краевых точек. Важна ли здесь помощь гистерезиса? б) Подавление шума: часто хочется заставить детектор краев игнори- ровать некоторые краевые точки и отмечать другие. Считается, что края полезны при высокой контрастности (это действительно так). Насколько уверенно можно пользоваться гистерезисом для подавле- ния низкоконтрастных краев, не нарушая высококонтрастные края?

9 Текстура Текстура — это широко распространенное явление, которое легко распознать, но которому сложно дать определение. Как правило, относится эффект к тек- стуре или нет, — зависит от масштаба, при котором он рассматривается. Ли- сток, занимающий почти все изображение, — это объект, но листва дерева — это текстура. Источников текстуры множество. Во-первых, изображения, со- стоящие из большого количества мелких предметов, лучше всего считать тек- стурой. В качестве примеров можно назвать траву, листву деревьев, гравий, шерсть, щетину. Во-вторых, многие поверхности покрыты правильными узора- ми, которые выглядят как большое количество мелких предметов. Примеры: пятна на шкуре животных, как у гепарда или леопарда; полосы, как у тигра или зебры; узоры на коре деревьев, древесине и коже. С текстурой обычно связаны три основные задачи. • Сегментация текстуры — это задача, которая состоит в разбиении изоб- ражения на участки с постоянной текстурой. Сегментация текстуры вклю- чает в себя как представление текстуры, так и вычисление базиса, в ко- тором будут определяться границы сегментов. В данной главе будет рас- смотрено только представление текстуры (раздел 9.1); в главах 14 и 16 будет рассказано о том, как с помощью этого представления проводить сегментацию текстурированных изображений.
278 Часть II. Первые этапы: одно изображение ЛЛ л М’т'М* чг^-*^*^** Рис. 9.1. Примеры текстуры для экспериментов — людям предлагается описать внешний вид раз- личных текстур. Обратите внимание, что примеры включают достаточно стилизованные элементы, повторяющиеся в определенном порядке. Перепечатано из J. Malik and Р. Perona, "A computa- tional model of texture segmentation”, IEEE Conference on Computer Vision and Pattern Recognition, 1989. © 1989 IEEE • Синтез текстуры служит для создания больших текстурных областей из маленьких элементов изображений. Это делается с помощью пробных изображений, по которым строятся вероятностные модели текстуры, а за- тем эти вероятностные модели применяются для создания изображений с текстурой. Существует множество способов построения вероятностных моделей; три удачных современных метода описаны в разделе 9.3. • Определение формы по текстуре состоит в восстановлении ориентации поверхности или ее формы по текстуре изображения. Это можно сделать, допустив, что текстура “выглядит одинаково” в различных точках поверх- ности, т.е. изменение структуры от одной точки к другой может быть ключом к форме поверхности. В разделе 9.4 описаны основные положе- ния этой (достаточно технической) отрасли знаний. 9.1. ПРЕДСТАВЛЕНИЕ ТЕКСТУРЫ Текстура изображения обычно включает упорядоченные узоры, состоящие из правильных элементов (которые иногда называют те кетонами). Например, одна из текстур на рис. 9.1 состоит из треугольников. Другая текстура на этом рисунке состоит из стрелочек. Естественный способ представления текстуры — это найти текстоны и описать их расположение. Недостаток описанного метода заключается в том, что нет известного кано- нического набора текстонов, т.е. не ясно, что следует искать. Вместо того, чтобы искать узоры на уровне стрелочек и треугольников, можно искать еще более простые элементы — скажем, точки и полосочки — и рассуждать об их про- странственном расположении. Преимущество такого метода состоит в том, что простые элементы узора нетрудно найти с помощью фильтрации изображения. 9.1.1. Определение структуры изображения с помощью блоков фильтров В разделе 7.5 говорилось, что свертка изображения с линейным фильтром представляет изображение в другом базисе. Преимущество преобразования изображения в новый базис, которое дает его свертка с фильтром, состоит в том, что этот процесс выявляет структуру изображения. Это происходит бла-
Глава 9. Текстура 279 Рис. 9.2. Типичные текстурированные изображения. Человеческое восприятие и распознавание таких материалов, как шерсть, трава, листва и вода тесно связано с текстурой (какой будет поверх- ность, изображенная на рисунке слева, если ее коснуться пальцами? мокрая или сухая? и т.д.). Обратите внимание, сколько информации о виде растений, их форме и т.п. можно получить из текстуры на рисунке справа. Эти примеры текстуры также состоят из довольно стилизованых эле- ментов, создающих впечатление некоторого узора годаря тому, что реакция фильтра сильнее тогда, когда узор изображения на каком-либо участке похож на ядро фильтра, и слабее в противном случае. Таким образом можно представить текстуру изображения в виде реакции на- бора фильтров. Набор различных фильтров должен состоять из серий узоров — как правило, пятен и полос — при определенной последовательности масштабов (чтобы, например, можно было определять размер этих пятен или полос). Зна- чение каждой точки полученного изображения будет описывать “пятнистость” (“полосатость” и т.д.) в соответствующей точке изображения при определен- ном масштабе. Несмотря на то, что на данный момент такой подход является сильно избыточным, он дает представление структуры (ее “пятнистости”, “по- лосатости” и т.д.), которое оказалось очень полезным. Следует отметить, что фильтры пятен полезны благодаря сильной реакции на небольшие участки, которые отличаются от соседних (например, это может быть либо одна сторона края, либо пятно). Еще одна привлекательная черта — фильтры пятен могут определять неориентированную структуру. Фильтры по- лос, с другой стороны, ориентированы и лучше реагируют на ориентированную структуру.
280 Часть II. Первые этапы: одно изображение Рис. 9.3. Набор из восьми фильтров, которые используются для разложения изображения на серию характеристик. Масштаб фильтров представлен таким образом: нуль обозначен нейтрально серым цветом, более светлые значения положительны, а более темные — отрицательны. Представ- лены два отдельных пятна и шесть полос (набор фильтров аналогичен использованному в работе [Malik and Perona, 1990]) Выделение пятен и полос с помощью взвешенных сумм гауссианов Какими фильтрами стоит пользоваться? Ответа на этот вопрос нет. Точнее, могут подойти многие ответы. По аналогии с процессами, происходящими в ко- ре головного мозга человека, обычно берется по меньшей мере один фильтр пятен и набор ориентированных фильтров полос для различных направлений, масштабов и фаз. Фазой полосы называют фазу поперечного сечения пер- пендикулярно полосе, которую определяют по аналогии с фазой синусоиды (например, если поперечное сечение проходит через нуль в начале координат, фаза равна 0°). Один из способов получить требуемый фильтр — это найти взвешенную разность гауссовых фильтров при различных масштабах; именно этот метод применялся для получения рис. 9.3. Перечислим элементы фильтров приведен- ного примера. • Пятно, которое задается взвешенной суммой трех концентрических сим- метричных гауссианов с весовыми коэффициентами 1; —2 и 1, причем соответствующие дисперсии равны 0,62; 1 и 1,6. • Другое пятно, которое задается взвешенной суммой двух концентриче- ских симметричных гауссианов с весовыми коэффициентами 1 и —1, при- чем соответствующие дисперсии равны 0,71 и 1,14. • Набор ориентированных полос, состоящий из взвешенной суммы трех ориентированных гауссианов, которые расходятся в разные стороны. Су- ществует шесть вариантов таких полос; каждая из них представляет собой
Глава 9. Текстура 281 Рис. 9.4. Вверху показано изображение бабочки с мелким масштабом, а ниже — результат дей- ствия на это изображение каждого из фильтров (рис. 9.3). Результаты представлены как абсолют- ные значения на выходе, более светлые пиксели указывают на более сильную реакцию; изображе- ния расположены согласно порядку фильтров на верхнем рисунке повернутую под некоторым углом горизонтальную полосу. Весовые коэф- фициенты полос равны —1; 2 и —1, причем дисперсия у них отличается по осям х и у, все ах равны 2, а все ау равны 1. Центры полос расположены на оси у в точках (0,1); (0,0) и (0, —1). Следует понимать, что выбор фильтра почти всегда происходит интуитив- но. Опыт подсказывает, что фильтр должен состоять из набора пятен и полос различного масштаба и направления (что и представляет собой данный набор), но очень мало причин верить, что оптимизируя выбор фильтра, можно достичь серьезного улучшения. На рис. 9.4 и 9.5 показано абсолютное значение реакции блока фильтров на заданное изображение бабочки. Обратите внимание, что несмотря на то, что фильтры полос не выступают абсолютно надежными детекторами полос (поскольку фильтр полос при определенной ориентации реагирует на полосы различного размера и направления), данные с фильтра неплохо передают ин- формацию об изображении. Вообще говоря, фильтры полос сильно реагируют на ориентированные полосы и слабо — на другие узоры, а фильтры пятен реа- гируют на отдельные пятна.
282 Часть II. Первые этапы: одно изображение Рис. 9.5. Исходное изображение бабочки и реакция фильтров (рис. 9.3) при более грубом мас- штабе, чем на рис. 9.4. Обратите внимание, что ориентированные полосы дают реакцию на усики, края крыльев и полосы на крыльях; тот факт, что наблюдается реакция на одну полосу, вовсе не означает, что не будет реакции на другую, но величина реакции говорит об ориентации полосы на изображении Сколько нужно фильтров и с какой ориентацией? Точно неизвестно, какое количество фильтров будет “самым лучшим” для хороших текстурных алгоритмов. В работе [Регопа, 1995] исследовано, сколько масштабов и направлений стоит применять в ряде систем; число масштабов ко- леблется от четырех до одиннадцати и число направлений — от двух до восем- надцати. Количество направлений меняется в зависимости от задачи и не имеет большого значения, по крайней мере, до тех пор, пока используется около шести направлений. Как правило, фильтрами “пятен” выступают гауссианы, а фильтры “полос” определяются дифференцированием ориентированных гауссианов. Подобным образом, не особо выгодно пользоваться более сложными набо- рами фильтров, чем основная комбинация фильтров пятен и полос. В этом есть тонкий момент: применение большего числа фильтров приводит к более подроб- ному (и более перегруженному) описанию изображения; кроме того, придется находить свертку изображения со всеми этими фильтрами, что само по себе достаточно недешево. Единственное, как можно упростить процесс, — постро- ить пирамиду, чтобы контролировать объем лишней информации, с которой приходится иметь дело.
Глава 9. Текстура 283 9.1.2. Описание текстуры с помощью статистики выходов фильтров Набор отфильтрованных изображений сам по себе не является описанием текстуры, поскольку еще требуется описание общего распределения элементов текстуры. Например, поле желтых цветов может состоять из множества малень- ких желтых пятен с вертикальными зелеными полосками; зебра может состоять из черных полос на белом фоне. Неявно предполагается, что масштаб тексту- ры описан. Маленькое окно изображения поля желтых цветов может вмещать только один цветок; для изображения зебры оно может состоять из однородного черного или белого участков. Подобным образом, слишком большое окно может содержать не только нужную текстуру, но и фон. Обратите внимание, что здесь есть два масштаба: во-первых, масштаб фильтров, а во-вторых — масштаб, при котором рассматривается распределение фильтров. Предположим, что известен размер значимого окна изображения, для кото- рого нужно описать текстуру. Характерное описание состоит из набора стати- стических данных с выходов фильтров для этого окна. Выходные данные обыч- но возводят в квадрат (помимо всего прочего, это позволяет подсчитать число черных полос, следующих за белыми, и число белых, следующих за черными). Например, на рис. 9.6 показано возможное представление через вертикальную и горизонтальную текстуры. Это представление было получено путем отбора с выходов фильтров вертикальных (или горизонтальных) полос и возведения их в квадрат. Затем результат сглаживался при более грубом масштабе. Это сглаживание эквивалентно оценке среднего значения возведенных в квадрат выходов фильтров для определенного окна. Наконец, сглаженные данные по- падают в классификатор, который собственно и дает представление текстуры. На рис. 9.6 текстура относится к одному из четырех классов по такому прин- ципу: большое значение выходов вертикального либо горизонтального фильтра, обоих или ни одного из них. Выбор статистики То, какую статистику следует собирать, зависит в некоторой степени от опи- сываемого объекта. Однако работа над синтезом текстуры налагает некоторые ограничения на выбор соответствующей модели, поэтому данная тема подробно рассмотрена в разделе 9.3. Предположим, что масштаб окна, по которому нуж- но собрать статистику, установлен (один из путей — найти среднее значение квадрата выходов фильтра для ряда фильтров; см. работу [Malik and Perona, 1989]). Затем окно описывается вектором значений, каждое из которых — это квадрат средней по окну реакции определенного фильтра. С помощью этого ме- тода можно отличить, например, пятнистые окна — те, в которых будет высокой средняя реакция фильтров пятен, — от полосатых окон, где высокой будет сред- няя реакция фильтров полос. Этот метод проиллюстрирован на рис. 9.6, правда там набор фильтров несколько богаче. Альтернативный подход — вычислять среднее значение и среднеквадрати- ческое отклонение выходов фильтров по всему окну и пользоваться результа-
284 Часть II. Первые этапы: одно изображение Вертикальный фильтр Горизонтальный фильтр Квадрат отклика Сглаженное среднее Классификация Рис. 9.6. Предположительное представление текстуры через выходы фильтров. Количество филь- тров значительно уменьшено (два фильтра производных, один вертикальный и один горизонталь- ный). Слева показано исходное изображение; обратите внимание, что его составляющие можно корректно описать как горизонтальную, вертикальную и с неопределенной ориентацией. Слева в центре показаны возведенные в квадрат выходы фильтров (переходы от черного к белому учи- тываются так же, как и от белого к черному). Значения приведены к одинаковому линейному масштабу, причем более светлые точки указывают на более сильную реакцию. В центре справа показано сглаженное изображение (которое можно интерпретировать как среднее значение квадра- та реакции по малому окну). Средняя реакция на вертикальные полосы сильнее на вертикальной карте, а на горизонтальные полосы — на горизонтальной карте. Наконец, эти два изображения сравнивались с порогом, их комбинация показана на рисунке справа (черные значения не относят- ся ни к вертикальным, ни к горизонтальным; темно-серые значения горизонтальны; светло-серые — вертикальны; а белые значения относятся и к тем, и к другим) тами этих вычислений для построения характеристического вектора (см. [Ма and Manjunath, 1996]). Такое представление текстуры можно использовать для восстановления окон изображения на основе примеров (рис. 9.7). Аналогичным способом на спутниковых изображениях по текстуре определяют, обозначает ли данная область жилой массив или сельскохозяйственные угодья. Это означает, что если подобрать текстуру, то на спутниковом изображении можно найти все изображения, скажем, сельскохозяйственных угодий. Отметим, что две тексту* ры с совершенно различными характеристическими векторами могут оказаться очень похожими; этого можно избежать, изменив способ измерения разницы характеристических векторов.
Глава 9. Текстура 285 Область запроса Области, для которых найдено соответствие Области, для которых соответствие найдено с использованием модифицированной метрики подобия Рис. 9.7. Текстуру можно представить средним значением и среднеквадратическим отклонением выходов фильтров, взятых по окну. Если пользоваться набором различных фильтров, будет получен вектор значений, описывающих окно; у пятнистой текстуры будет большое среднее значение на выходе фильтров пятен, у полосатой текстуры — большое среднее значение на выходе фильтров полос и т.д. Это означает, что окно изображения можно сравнить с другими, вычислив длину характеристического вектора. В качестве подобной длины можно использовать обычное евклидово расстояние (рис. слева), хотя несколько модифицировав эту меру, результаты можно значительно улучшить (рис. справа). Перепечатано из W.Y. Ma and B.S. Manjunath, “Texture Features and Learning similarity”, Proceedings IEEE Conference on Computer Vision and Pattern Recognition, 1996. (c) 1996 IEEE Ни само no себе среднее значение, ни среднее значение плюс среднеквадра- тическое отклонение не являются идеальным представлением, поскольку связь между характеристиками фильтров может быть существенной. Например, пред- ставьте себе текстуру, состоящую из небольших пятен, расположенных ряда- ми, — так выглядит сверху, скажем, капустное поле. При подобной текстуре фильтр мелких пятен будет давать сильную реакцию, но реакции фильтров коррелируют и фильтр больших полос дает значительную реакцию там же, где и фильтр мелких пятен. Если текстура состоит из множества больших по- лос, разбросанных на фоне мелких пятен, фильтр мелких пятен, как и фильтр
286 Часть II. Первые этапы: одно изображение больших полос, будет давать сильную реакцию, но эти реакции могут не корре- лировать. Можно попытаться записать ковариантность выходов фильтров (на- пример, для того же капустного поля), но для точной оценки понадобилось бы учесть слишком много членов. Вместо этого обычно определяют несколько ковариантных членов, необходимых для конкретной задачи. Выбор масштаба Еще один вопрос, с которым обычно сталкиваются на практике, — это вы- бор масштаба для описания текстуры. Как правило, выбирают небольшое окно с центром в требуемой точке, а затем увеличивают размер этого окна до тех пор, пока увеличение размеров окна перестанет приводить к значительным из- менениям. Например, представьте себе выбор пикселя на изображении зебры. В пределах очень маленького окна вокруг этого пикселя значение яркости по- стоянно (например, черное). Если немного увеличить окно, то он будет вклю- чать область резкого перехода и несколько черных и белых пикселей. Если окно будет еще больше и в него будут попадать несколько полос, то последующее увеличение окна не даст никаких существенных изменений — это будет просто большое полосатое окно. Оценить момент, когда следует прекратить расширение окна, позволяет по- лярность. Определим вначале доминирующую ориентацию окна — среднее направление градиента. Теперь для каждого вектора градиента найдем скаляр- ное произведение вектора градиента и доминирующей ориентации. Затем вы- числим среднее сглаженное значение положительных скалярных произведений и сглаженное среднее значение модуля отрицательных скалярных произведений и найдем их разность. Это даст величину градиентов в данной области в на- правлении доминирующей ориентации (положительные скалярные произведе- ния) относительно направления, противоположного доминирующей ориентации (отрицательные скалярные произведения). Эту величину можно измерить для произвольного масштаба окна. Как пра- вило, так и делают для ряда окон различных размеров, а затем, начиная с са- мого мелкого масштаба и далее в порядке возрастания, отмечают, когда при изменении масштаба полярность изменяться не будет. Заметим, что в некото- рых случаях этот критерий может быть неоднозначным. Например, возьмем фотографию зебры с очень высоким разрешением. Если начать с довольно ма- ленького окна (которое может содержать один волосок), то этот критерий опре- делит масштаб, при котором окно будет содержать несколько волосков. Если же начать с немного большего окна, содержащего много волосков, то этот же критерий определит масштаб, охватывающий несколько полос. 9.2. АНАЛИЗ И СИНТЕЗ С ПОМОЩЬЮ ОРИЕНТИРОВАННЫХ ПИРАМИД Для описания текстуры с помощью статистических данных блока филь- тров необходима свертка изображения с несколькими фильтрами при несколь- ких масштабах. Существует множество способов систематического выполнения
Глава 9. Текстура 287 этой операции, некоторые из них описаны в данном разделе. Если читателям этот вопрос не интересен, они могут переходить к разделу 9.3. Процесс свертки изображения с блоком фильтров называется анализом; свертку изображения с блоком ориентированных фильтров иногда (и, по мне- нию авторов, достаточно неточно) называют анализом ориентации или пред- ставлением ориентации. Примером анализа изображения с помощью блока фильтров (в данном случае — фильтров сглаживания) является гауссова пи- рамида (раздел 7.7.1). Гауссова пирамида перебирает масштаб систематически, проводя повторную выборку изображения после его сглаживания. Это означа- ет, что следующий по величине масштаб получить легче, поскольку лишняя информация не обрабатывается. Факт