Главная » Просмотр файлов » М. Ву, Т. Девис, Дж. Нейдер, Д. Шрайнер - OpenGL. Руководство по программированию (Библиотека программиста) (2006)

М. Ву, Т. Девис, Дж. Нейдер, Д. Шрайнер - OpenGL. Руководство по программированию (Библиотека программиста) (2006) (1124363), страница 64

Файл №1124363 М. Ву, Т. Девис, Дж. Нейдер, Д. Шрайнер - OpenGL. Руководство по программированию (Библиотека программиста) (2006) (М. Ву, Т. Девис, Дж. Нейдер, Д. Шрайнер - OpenGL. Руководство по программированию (Библиотека программиста) (2006)) 64 страницаМ. Ву, Т. Девис, Дж. Нейдер, Д. Шрайнер - OpenGL. Руководство по программированию (Библиотека программиста) (2006) (1124363) страница 642019-05-11СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 64)

3апрос на допустимость таблицы цветов Параметры-посредники (ргохтев) предоставляют способ, которым можно оценить, достаточно ли ресурсов в системе для сохранения таблицы цветов. Эти паРвиетрьт заносятся в аргумент СагВет команды В! СО1огтаЫе О: ° 6( РРОХУ СОЕОР ТАВСЕ; ° 6С РРОХУ Р05Т СОЙНОСОТ?ОН СОСОЙ ТАВСЕ; » 6С РЙОХУ Р05Т СОСОЙ ИАТР?Х СОСОЙ ТАВСЕ. Тогда ОрепС?. определяет, хватит ли ресурсов системы для сохранения таблицы. Если она не помещается, значения ширины, формата и компонента разрешения ?станавливаются в О. Например: В!Со1огТаще(6( РЙОХУ СО(ОЙ ТАВСЕ, 6С ЙОВ, 1824, 6( РОВ, 6( ОН5?6НЕО ВУТЕ, вы)); 1!Се(Со1огТащеРагаветег)ч(6С РРОХЧ СО(ОЙ ТАВСЕ, ОС СО(ОЙ ТАВСЕ И?отН, (ж)4(П); !т (н(етн == В) М нельзя поддержать такую таблицу Более подробно команда В16етсо1огтаЫеРагаюетег» О описана в разделе «Коканды запроса» приложения Б.

Свертки Свертки представляют собой фильтры, которые замещают каждый пиксел средневзвешенным значением его соседеи и собственно самого этого пиксела. Размытне (Ыцгг?пй) и повышение резкости (з?)агрешпя) изображений, поиск границ н корректировка контраста — вот основные примеры применения сверток. 298 Глава 8 ° Вывод пикселов, битовых образов, шрифтов и изображений На рисунке 8.15 показано, как пиксел Р„и окружающие его пикселы обрабатываются фильтром 3 х 3, чтобы получить пиксел Р'„.

Свертки — это массивы весовых значений пикселов, и оперируют они только ВСВАгпикселавии. Фильтр, известный под названием кегпе1 (ядро), является простым двухмерным массивом весовых значений. Каждый пиксел результирующего изображения создается умножением набора пикселов входного изображения на веса свертки, а результаты суммируются. Например, на рис.

8.15 в формировании пиксела Р'„принимают участие девять пикселов исходного изображения и девять элементов свертки. Рис. 8.1В. пример свертки чоЫ 81Сопчо1ог~ опг11тег2О(СЕепшп Гагдет, С) епшп т~еглаТоппат, СЫте! вил, СЕл1хе1 Ье18йд С1.епшв )оплай С1.ешпп гуре, сопзг С1.чоЫ *йладе); Определяет двухмерный фильтр свертки, где аргумент Гсппет установлен в значение 61 СОИчОЫТ10И 20. Аргумент 1лгегла1Еоплаг определяет, над какими компонентами пикселов выполняется операция свертки, он может быть одной из 38 символических констант, перечисленных для одноименного аргумента функции 81Со1о гтаь1е О. Расширение ]шад[пд 500зет 299 Ширина (геЫЙ) и высота (Ье!8]тг) указывают размеры матрицы фильтра.

Максимально допустимые ширина и высота могут быть оценены запросом 816етсопчо[ог(опРагаиегег»(). (см. раздел «команды запроса» приложения Б.) Как и для В10гаыР ! хе1з (), формат (]о!тиас) и тип (Гуре) задают способ хранения изображения ([шаде). Подобно таблицам цветов, внутренний формат фильтра определяет, какие ком- поненты пзображения подлежат обработке. Таблица 8.9 описывает связь форма- тов с компонентами пикселов.

Обозначения В„бн В, и А, представляют компо- иеиты цвета. Обозначение 1.1 соответствует значению яркости в фильтре 6С [ОН1МАИСЕ, а ]у — значению интенсивности в фильтре 6С 1ИТЕМ51ТУ. Наконец, Вд СА Ву и А; представляют ВОВА-компоненты фильтра. Таблица 8.9. Воздействие свертки на РОВА-компоненты пнкселов Оскевиой формат фильтра Результат для альфа- компонента Результат для синего компонента Результат Результат для красного для зеленого компонента компонента А, х Ау Не изменяется Не изменяется Не изменяется Не изменяется А, х Аг А, х 1( Не изменяется А, х Ау Используйте команду В1ЕпаО)е(6С СОМЧОСОТ10М 20), чтобы разрешить приме- нение двухмерной свертки.

Листинг 8.6 демонстрирует использование нескольких 3 х 3 61 СОН1ИАМСЕ фильтров для обнаружения границ в ВСВ-изображении. Смена фильтра выпол- ияется клавишами Н,! и ч, Листинг 8.6. Использование двухмерного фильтра свертки: сопчо]ц(]оп.с ектегп 6СОЬуге* геад1маве(сопят сваг*, ОС»тте(*, 6гв!те!*); 6[иву(в 'р(хе1»; 6(т(те! нтосп, Ьетапг; П Описание фнп »тра свертки 'I 6(Ива! Ьогт коптя! [З] [З] = ( (О, -1, О), ( О, 1, В ( О, В, В ] 6[(!ва! чеггтса1[3][3] ( О, О, О ( -1, 1, О ), ( В, О, О ) продолменое Р 6[ А(РНА 6( (ВМ!МАИСЕ 61 СОМ1ИАМСЕ АСРНА 6[ 1МТЕИ51ТУ 6[ 06В 6[ 06ВА В,хг! И,х [у й,х], Вг х аг Й,хат 6,х(у 6,хС, 6, х 1! 6, х 6( 6, х 6( В, х С, Вт х С, В, 1 в, .

в, В,хВ 300 Глава 8 ° Вывод пикселов, битовых образов, шрифтов и изображений Листинг З.б (продолжение) 6С!1оаС 1ар1ас!ап[3) (3) = ( ( -0.125, -9.125, -0.125 ), ( -0.125, 1.0, -9.125 ], ( -0.125, -9.125, -0.125 ) чо)о 01зрсау(чо10) ( 9161еаг(61 СОСОР ВОРЕЕМ В1Т); 91йазеегРоз21(1, 1); 910ганР!хе1з(н1ОСП, Пе!ВПС, 6( ПОВ, 6С ОМ516МЕО ВЧТЕ, рзхе1з); 91Р)азп(); ) тозе 1п1С(чозд) ( рзхе1з = геа01шайе("Овса/1еедз.а1п", ан10сп, аье!Влс); 91Р1ХЕ15СОГЕ!(6С ОМРАСК А(16ММЕМТ, 1)! 9161еагсо1аг(9.9, 0.0, 9.0, 0.9); рг)птт("Горизонтальный фильтр!а"); й(Сопчосатзопрзстегза(6С СОМЧОСОТ)ОМ 20, 6С СОИ(МАИСЕ, 61 СОИ1МАМСЕ, 6С РСОАТ, Пог)сопСа1); 91Епаьсе(61 СОМЧОСОт)ОМ 20); ) чо10 Кеуаоаге(апз1йпед слаг Кеу, зпт х, !пт у) ( зн)тсл (Кеу) ( сазе 'Ь': ргзпст("Горизонтальный фильтр!а")', 91Сопча1а11опр111ег20(6С СОМЧОСОТ10М 20, 6( СОИ1МАМСЕ, 3, 3, 6( СОИ1МАМСЕ, 6С ЕСОАТ, Паг(гапта1 ); Ьгеах; саве 'ч': рг(птт("Вертикальный фильтр!а" ); 91Сапча1ат!опР111ег20( 6( СОМЧОСОТ10М 20, 61 СОИ1МАМСЕ, 3, 3, 6С СОИ)МАИСЕ, 6С РСОАТ, чегС)сас ); Ьгеах; сазе '1': рг(птт("Фильтр Папласасп"); 91Сопчо1ит!опЕ! 11ег20(6С СОМЧОСЧТ10М 20, 6С СОИ1МАМСЕ, 3, 3, 6С СЧИ1МАМСЕ, 61 РСОАТ, 1арсасзап ); Ьгеа1с; сазе 27: /* Клавиша Езс */ ах!с(0); Ьгеах; 91аСРозтйеО!зр1ау(); ) Как и в таблицах цветов, вы можете задать фильтр свертки со значениями пикселов из буфера кадров.

Команда 91СоруСопчо1а С ! опр ! 1Се г2 0 () копирует прямо- Расширение 1шад!пд Вньзег 301 )тольник пикселов из текущего буфера 6С РЕАО ВОЕЕЕР для последующего их использования в фильтре свертки. Если 6С СОМ1МАМСЕ или 6С 1МТЕМ5?ТУ заданы Ххя внутреннего формата (!лсегпа!гогтас), для задания значения фильтра свертки используется красный компонент пиксела. го!с[ 6 1 со ру Спич о 1 и с 1 оп Е1 1 с е г 2 0(6(епшп Сагяед 61епшп тптна!Еопла.', 611пс х, 61зпс у, 61.з(хе( юЫЙ, 61л1хес Ье!яЬг); Определяет двухмерный фильтр свертки, инициализируемый пикселами из буфера кадров цвета. Аргумент Ыгяес должен быть установлен в 6С сОмндсдт10м 20, а в аргументе !псегпа!госта! должен быть указан один из внутренних форматов к1Сопно1вС1опЕ11Сег20().

Прямоугольник пикселов с левым нижним углом (х, у), шириной шЫ(Ь и высотой Ье!яЬ( читается из буфера кадров и преобразуется в указанный внутренний формат. Задание разъемных двухмерных фильтров свертки Фильтр свертки является разьемным (зерагаЫе), если он может быть представлен векторным произведением (овСег ргос[цсС) двух одномерных фильтров. Команда В15ерагав)еЕ11Сег20() используется для задания двух одномерных фильтров, представляюших разъемный двухмерный фильтр свертки. Как и для 11сопчо1ис1опе)1сег20(), внутренний формат фильтра свертки определяет то, хак обрабатываются фильтры изображения.

но д к15ерагаосеЕ11Сег20(61.епшп Гагяей 61.епвш !пгегпа!Гогтас, 61лгхе( м(ИгЬ, 61.мхе( ЬейЬг, 61.еппп1 /оппаг, 61.епшп гуре, сопзс 61ноЫ *гоге, сопзс 6).чоЫ 'со!итп) Описывает двухмерный разъемный фильтр свертки. Аргумент гагяег должен быть установлен в 6С 5ЕРАРАВСЕ 20. Внутренний формат (т(егла!гоппас) принимает те же значения, что и для 61Сопчо1иС1опЕ11Сег20(). Ширина (геЫ(Ь) задает количество пикселов в массиве строки (гоге). Аналогично, высота (Ье(яЬг) задает количество пикселов массива столбца (со!итп).

Аргументы типа (гуре) и формата (/оппаг) описывают способ хранения строки и столбпа так же, как и для В1сопно1ис)опе11сег20(). Используйте 61Епапсе(6С 5ЕРАРАВСЕ 20), чтобы разрешить применение сверток, использующих разъемный двухмерный фильтр свертки. Если заданы одновременно 6С СОМНОСОТ1ОМ 20 и 6С 5ЕРАРАВСЕ 20, параметр 6С СОМНОСОТ1ОМ 20 имеет больший приоритет. Например, вы можете построить 3 х 3 6С СОМ1МАМСЕ разъемный фильтр свертки, издав одномерные фильтры для строки и столбца. Тогда полный двухмерный фильтр был бы вычислен как векторное произведение: 1/4 — 1/2 1/41 х [-1/2 1 -1/2! = -1/2 1 — 1/2 ~. 1/4 — 1/2 1/4 ~ 302 Глава В ° Вывод пикселов, битовых образов, шрифтов и изображений Разъемные двухмерные фильтры по отношению к затратам на вычисления более эффективны, чем обычные двухмерньге фильтры свертки.

Одномерные фильтры свертки Одномерные фильтры свертки идентичны двухмерной версии за исключением того, что параметр высоты фнлътра предположительно равен единице. Однако они влияют только на спецификацию одномерных текстур (см. раздел «Одномерные текстуры» главы 9.) чоЫ к1Сопчо1и11опР111ег10(О1еппщ Гагяей О?еппш гп(егпа(рогта(, 01яге( тЫЙ, О1епшп )оппаг, ОЪеппщ гуре, сопзг О1чоЫ '(тайе)' Задает одномерный фильтр свертки. Аргумент (агапе( должен быть установлен в 6( СОМЧОСОТ10М 10. Ширина (гаЫЙ) задает количество пикселов фильтра. Аргументы тгегпа)гоппад /о»та( и гуре принимают те же значения, его и для к1сопчо1о11опР111ег20О. Массив (тале указывает на одномерное изображение, используемое в качестве фильтра свертки. Используйте ВТЕпао(е(6С СОМЧО(ОТ10М 10), чтобы разрешить применение одномерных сверток.

Вы можете захотеть использовать для фильтра свертки значения, сгенерированные из буфера кадров. Команда к1сорусопчо1ч11опР111ег10() копирует строку пикселов из текущего буфера 6 С РЕ АО ВОР Р Е Р и преобразует ее во внутренний формат ((пгегпа)раппа() лля дальнейшего применения в фильтре свертки. чоЫ В1сорусопчо1о11опг! 11ег10(ОЪепшп Гагцей О1 епшп т(««па(раппа(, О(йптх, И.'пг у, О1.язей гаЫЙ); Описывает одномерный фильтр свертки со значениями пикселов, взятыми из буфера кадров. Команда В1сорусопчо1ч11опЕ111ег10О коппрует апай пикселов, начиная с позиции (х, у), и преобразует их в указанный внутренний формат. К заданному фильтру свертки могут быть применены масштабирование и отклонение (Ъ|аз).

Значения масштаба и отклонения задаются командой В1Сопчо1и г)опРагаеетег» (). Причем никакой фиксации (с!агпр1пй) значений фильтра свертки после этого не делается. чоы я1сопчо1иг1опРзгааегег(1()(бъеппп1 гагяег, О) епит рпате, тУРератат); чоЫ В)сопчо1п11опРагааесег(1()ч(ОЪепшп Гагяес О(.еппш рпате, сопзг ТУРЕ "рагатз); Устанавливает параметры, управляющие выполнением операции свертки. Аргумент Гагяет должен быть задан одной из следующих констант: 6( СОМЧО) ОТ10М 10, 6С СОМЧОСОТ10М 20 или 6С 5ЕРАРАВСЕ 20. Имя параметра (рпате) должно быть указано как 6( СОМЧОСОТ10М ВОРОЕР МОВЕ, 61 СОМЧОСТ10М Р1СТЕР 5САСЕ или 6( СОМЧО(ОТ10М Р1(ТЕР В1А5.

Когда для рпате используется параметр 6( СОМЧОСОТ10М ВОРОЕР МОВЕ, подразумевается режим обработки границ свертки. В таком случае рогата устанавливается в 6С РЕООСЕ,ОС СОМ5ТАМТ ВОРОЕР или 6( РЕР(1САТЕ ВОРОЕР. Если рпате задан как 6( СОМЧОСОТ10М Р1СТЕР 5САСЕ или 6( СОМЧО(ОТ10й Р1(ТЕР В1А5, массив рагатз должен содержать четыре значения цвета для красного, зеленого, синего и альфа-компонентов в этой последовательности. Расширение 1гпад)пд БОЬвег 303 дз ег.

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6418
Авторов
на СтудИзбе
307
Средний доход
с одного платного файла
Обучение Подробнее