Гонсалес Р., Вудс Р., Эддинс С. Цифровая обработка изображений в среде Matlab (2006), страница 16
Описание файла
DJVU-файл из архива "Гонсалес Р., Вудс Р., Эддинс С. Цифровая обработка изображений в среде Matlab (2006)", который расположен в категории "". Всё это находится в предмете "системы распознавания образов" из 10 семестр (2 семестр магистратуры), которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. .
Просмотр DJVU-файла онлайн
Распознанный текст из DJVU-файла, 16 - страница
Ци4ровме изображения е МАТ/АВ Эта функция читает данные из символьной строки свсг, используя специфические комбинации параметров 1огшаС, рагаш/ча1це. В этой главе нам понадобятся форматы '/Х и '/о, которые обозначают соответственно числа с плавающей запятой и символьные строки. Параметр рагаш совпадает со словом йе11ш1Сег, если необходимо обозначить, что элементы, описанные в Хогшас, будут разделяться символами, заданными параметром на1це (обычно это пробел или запятая).
Например, пусть имеется строка » С = '12.6, х2у, х'; Чтобы считать элементы этого входа в три переменные а, Ь и с, следует дать команду » (а, Ь, с) = всггеао(С, м/1/с(%с(', 'с)е1еш1Сег', ', ') а = 12.6000 Ь = 'х2у' с = 'х' Выход а принадлежит классу йоцЬ1е: апострофы вокруг выходов х2у и х обозначают, что Ь и с являются неоднородными массивами, которые будут обсуждаться в следующем параграфе. Можно преобразовать их в символьные массивы, просто положив, » с( = сЬаг (Ь) 6 х2у и аналогичная команда выполняется для массива с. Число (и порядок) элементов в строке 1огшаС должно соответствовать числу и типу выходных переменных, стоящих в правой части равенства.
В приведенном выше примере использования функции всггеас( имеется три выходных переменных: одно число с плавающей запятой и две символьные строки. Функция всгсшр применяется при сравнении строка. Например, пусть задана М-функция я = 1пшогш(1, рагаш), которая принимает изображение Х, а параметр рагаш может иметь два значения: 'погш1' и 'погш255'. В первом случае изображение 1 следует перенормировать в интервале [О, Ц, а во втором — в интервале ~0, 255).
В обоих случаях выходное изображение должно быть класса боцЬ1е. Следующий программный фрагмент выполняет эти действия: 1 = боцЬ1е(г); 1 = 1 — ш1п(г(:)); Х = 1./шах(1(:)); 11 вСгсшр(рагаш, 'погш1') 5 = г' е1ве11 всгсшр(рагаш, 'погш255') я = 255а1; вФункция всгсир(в1,в2) сравнивает строки в1, в2 и возвращает логическую 1 (истина), если строки совпадают; в противном случае возвращается логический 0 (ложь). . Ы В.е......,..„,...н.. М-Ф и ..р 77) е1ве еттот[гвп)споив .ча1пе оХ раташ.') еж1. Сообщение об ошибке будет выдаваться в том снучае, если величина, указанная в переменной раташ, не совпадает с 'потш1' или 'попв2ББ'.
Отметим, что это сообщение будет появляться, если символы этих строк набраны заглавными буквами. Эту функцию можно модифицировать, чтобы она принимала как строчные, так и заглавные буквы, Для этого достаточно применить функцию 1онет, которая преобразует заглавные буквы в строчные. Она имеет синтаксис раташ = 1онег[раташ) Аналогично, для преобразования букв в заглавные можно воспользоваться функцией нррет: рагаш = нррет[рагаш) . 2.10.6.
Краткое введение в смешанные массивы и структуры При обращении с переменными разных типов [например, с числами и символьными строками), можно использовать т. н, смешанные массивы. В системе МАТЬАВ смешанным массивом (сеН агтоу, массив ячеек) называется многомерный массив, элементами которого являются копии других массивов, которые могут принадлежать разным классам данных. Например смешанный массив с = [1яанвв', [1 О; О 1], 31 состоит из трех элементов: символьной строки 'канва', числовой матрицы размера 2 х 2 и скаляра (обратите внимание на использование здесь фигурных скобок при задании элементов массива). Для адресации элементов смешанного массива используются целые индексы, заключенные в фигурные скобки.
Например, » с~1) апв канва » сС2]- 1 О О 1 » сСЗ1 Важная особенность смешанных массивов состоит в том, что в них хранятся именно копии соответствующих аргументов, а не указатели на эти аргументы. Например, при работе со смешанным массивом с = СА, В1 Смешанные массивы и структуры обсуждаются в 1 11.1.1. (78 Глава 2, Цифровые изображения в МАТЮКАВ где а и  — зто некоторые матрицы, которые в дальнейшем будут программно изменяться, то содержимое массива с останется неизменным. Понятие структура аналогично смешанному массиву в том смысле, что в ней допускается группирование разнородных типов данных в одной переменной. Однако в отличие от смешанных массивов, в которых индексами служат целые числа, элементы структур арестуются именами, которые называются полями.
В зависимости от конкретного приложения, использование полей повышает понимание смысла и читаемость М-функций. Например, пусть Я вЂ” это структурная переменная, в которой имеются поля с именами сваг втг1пб, шатгух и вса1аг. Тогда в предыдущем примере можно идентифицировать структуру с помощью следующих присвоений: Я.сЬаг втг1пЯ = 'Яапвв'; Я.шавг1х = ~1 О; О 11; Я.вса1аг = 3; Обратите внимание на использовании символа точка, который стоит межлу именем структуры и соответствующим полем при обращении к его содержимому. Например, задав команду Я.шавг1х, получим в ответ ) ) Я.
шатг1х апв = 1 О О 1 что согласуется с выходом соответствующего смешанного массива. Здесь очевидно преимущество использования выражения Я.шавг1х по сравнению с записью с12). Такая адресация данных может быть особенно полезна при работе с болыпим числом разнородных данных, которые должны легко распознаваться пользователем. Выводы Материалы данной главы являются фундаментом всего последующего содержания книги. С этого места читатель должен уметь считывать изображения с диска, обрабатывать их с помощью простейших операций, отображать результаты на экране и сохранять их на диске.
Главным уроком этой главы является умение комбинировать разные функций МАТЮКАВ и НзТ, а также основные приемы программирования для решения конкретных задач, расширяющих возможности этих стандартных функций. На самом деле, эти примеры служат моделью представления новых материалов в следующих главах. Сочетая стандартные функции и новый программный код, можно получить прототипы решений для весьма широкого спектра задач, которые возникают в области цифровой обработки изображений. ГЛАВА 3 ПРЕОБРАЗОВАНИЯ ЯРКОСТИ ИЗОБРАЖЕНИЙ И ПРОСТРАНСТВЕННАЯ ФИЛЬТРАЦИЯ Введение Термин пространственная область относится к плоскости изображения в целом, и методы из этой категории основываются на прямых манипуляциях с пикселами изображений.
В этой главе наше внимание будет сконцентрировано на двух важных группах методов обработки пространственной области: преобразования яркости (полутоновой градации) и пространственная фильтрация. Вторая группа также иногда называется обработкой окрестностей или пространственной фильтрацией. В следующих параграфах развиваются представления о технологиях обработки изображений из этих двух групп, которые будут иллюстрироваться функциями МАТьАВ. Для лучшей согласованности разных тем большинство примеров этой главы направлено на улучшение конкретных изображений. Такое введение в пространственную обработку изображений является вполне продуктивным, поскольку визуальное оценивание качества изображений является, с одной стороны, достаточно субъективным, а с другой стороны — привлекательным для начинающих исследователей в данной области. Однако, как будет видно из всего содержания книги, такой подход является достаточно общим, и он широко применяется во многих других областях цифровой обработки изображений.
3.1. Некоторые основы Как уже отмечалось, техника обработки пространственной области оперирует напрямую с пикселами изображения. Процессы в пространственной области, обсуждаемые в этой главе, можно обозначить уравнением д(х, у) = ТД(х, у)), где Дх,у) — входное изображение, д(х,у) — выходное (обработанное) изображение, а Т вЂ” некоторый оператор (преобразование) над ), который определен в некоторой окрестности точки (х, у). Кроме того, оператор Т может обрабатывать последовательность изображений, например, он может суммировать К входных изображений для подавления шума.
~~~80 Глава 8. Преобразования яркости изображений и простаранствевноя фильтрация Главный подход к определению проу странственной окрестности вокруг точки ф-1 у) (х,у) состоит в использовании квадратной или прямоугольной области с центром в точке (х,у), квк показано на рис. 3.1. Центр заданной шаблонной подобласти перемещается от пиксела к пикселу, начиная, скажем, из верхнего левого угла, и на своем пути он накрывает различные окрестИзображениеЯк, у) ности. Преобразование Т применяется в каждой точке (х, у), давая в результате выл ходное (обработанное) значение д для данной точки.
В процессе вычислений испольРнс. ЗЛП Окрестность размера Зхз вокруг точки (х у) изображения зуются только пикселы внутри заданной окрестности с центром в (х, у). Далее в этой главе будут рассмотрены различные применения введенного уравнения. Несмотря на то, что это уравнение выглядит концептуально весьма просто, его численная реализация на МАТ),АВ требует внимания и аккуратности, когда необходимо учитывать возможные классы данных и диапазонов значений величин. Начало— координат 3.2.
Преобразования яркости изображений Простейшая форма преобразования Т получается, когда окрестность на рис. 3.1 имеет размер 1х1 (т. е. состоит из одного пиксела). В этом случае значение д в точке (х,у) зависит только от значения ) в этой точке, и Т становится функцией преобразования яркости (также называемой функцией градационного преобразования). Эти два термина эквивалентны применительно к монохромным (полутоновым) изображениям. При обращении с цветными изображениями термин яркость используется для обозначения цветовой компоненты изображения в конкретном цветовом пространстве (см.
гл, б). Поскольку такие преобразования зависят только от значения яркости, но не от (х, у), функцию преобразования яркости часто записывают в простой форме в = Т(г), где г обозначает яркость )", а в — яркость д в любой соответствующей точке (х, у) изображения. 3.2.1. Функция 1шай))тат, Функция 1шай3пвх является базовым инструментом пакета 1РТ при преобразо- ваниях яркости полутоновых изображений. Она имеет следующий синтаксис; я = 1шайдпвх И, (1он 1п, ЬтяЬ 1в), (1он опс, ЬтяЬ опс).
йашша) На рис. 3.2 проиллюстрировано отображение с помощью этой функции исходного изображения Х в новое изображение я, при котором значения яркости в интер- вале [1он 1п, Мб)з 1п] переходят в значения интервала [1он оив, Ыя)з оцв], а значения, меньшие порога 1он 1в или болыпие порога 1оя [п, обрезаются, т. е. все, что меныпе 1оя 1п, отображается в 1он 1п, а все, что болыпе Ь18Ь 1п, отображаются в Ь1яЬ [п. Входное изображение может иметь класс и1пс8, ц[пс16 или с)оцЫе, а класс выходного изображения совпадает с классом входного.