русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Построение штриховых иллюстраций и текстур


Дата добавления: 2013-12-23; просмотров: 1169; Нарушение авторских прав


Построение мозаик

Маскирование образами (текст, точка, линия)

В качестве маски можно использовать текст, точку, линию. Например рисунок на банкнотах.

Каждый фрагмент мозаики либо монотонен, либо сам является некоторым изображением.

Алгоритм:

1 Выбор примитивов (форма, размер, цвета, текстура; подбираем все элементы, которые могут понадобиться)

2 Выбор схемы размещения

○ Виды:

Нерегулярные (элементы могут накладываться друг на друга, возможны пустые места)

Регулярные (элементы не могут накладываться друг на друга)

○ Алгоритм:

■ Если участок изображения монотонен и на нём нет контуров, начинаем подбирать элемент мозаики для него (шаг 3)

■ В противном случае делим изображение на части и рекурсивно повторяем процедуру с каждой

3 Построение схемы размещения — выбираем наиболее подходящий элемент мозаики.

4 Пост-обработка (удаление лишних элементов, цветовая коррекция, размытие и др.)

Описываемые методы принимают на входе растр и обрабатывают его так, будто оно нарисовано карандашом: штрихи видно не только на микро-, но и на макроуровне.

 

● Изображение состоит из штрихов (нерегулярных отрезков переменной длины и направлений, но одного цвета и толщины)

● Яркость участков изображений определяется частотой штрихов

● Форма передаётся направлением штрихов

● Изображение текстур тоже передаётся с помощью штрихов

● Больше штрихов

 

Алгоритм:

1 Создаётся пустое изображение

2 Находится изображение-разность между текущим изображением и целевым (входным)

3 Находится точка максимального отклонения (с учётом размытия штрихов). При этом учитывается:

○ Направление, в котором возрастает разность яркости



○ Границы: если штрих пересекает некоторый объект, то его лучше направить вдоль границы

○ Нормали (в случае 3D): штрих должен лежать в плоскости нарисованной грани

Положение звёзд Случайный фактор

4 Определяется длина и направление штриха

5 Штрих рисуется и размывается

6 Переход к п.2, пока не надоест. пока не достигнем нужной степени схожести или не исчерпаем время/количество штрихов

 

<Нижеследующего, судя по лекциям, у нас не было, но на всякий случай пусть будет>

 

Штриховка может использоваться для генерации текстур. При этом текстуру может потребоваться рисовать разной яркостью. При работе со штрихованными текстурами нельзя просто повысить/понизить их яркость.

Штрихованная текстура задаётся в виде упорядоченной последовательности штрихов. Для любого штриха хранится длина, направление и координата.

Сортировка штрихов:

В зависимости от требуемой яркости текстуры рисуются только первые n штрихов (чем ярче текстура, тем больше штрихов, и наоборот).

Штрихи делятся на два класса:

● штрихи, задающие форму текстуры;

● штрихи, задающие яркость текстуры.

Требуемая текстура задаётся двумя числами (M, N). Используем, соответственно, два списка (?). В зависимости от требуемой яркости рисуем заданное количество штрихов нужной формы и яркости.

Как и любые растровые изображения, штрихованные текстуры плохо масштабируются (например, если просто растянуть такую текстуру, то все штрихи станут толстыми), поэтому для каждого масштаба нужно честно строить свою текстуру.

 

</Вышеизложенного, судя по лекциям, у нас не было, но на всякий случай пусть будет>



<== предыдущая лекция | следующая лекция ==>
Методы маскирования изображений | Лекция 1


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.004 сек.