- •2.Задачі комп’ютерної графіки
- •3. Поняття візуалізації, обробки та розпізнавання
- •6.Фізична і психофізіологічна природа кольору
- •7.Поняття колірного тону, насиченості, яскравості, світлоти, хроматичного та ахроматичного кольорів та видимого спектру світла
- •8.Адитивна колірна модель rgb, характеристика, структура та області застосування
- •9) Субтрактивна колірна модель cmy(k), характеристика, структура та області застосування
- •10) Порівняльна характеристика колірних моделей rgb та cmyk
- •11) 12) Колірна модель hsb(hsv), характеристика, структура та області застосування
- •13) Колірна модель hls, характеристика, структура та області застосування
- •14) Растрові зображення та їх основні характеристики
- •15.Розкрийте суть процесу растрового розгорнення в реальному часі.
- •16.Розкрийте суть процесу растрового розгорнення груповим кодуванням.
- •17.Розкрийте суть процесу растрового розгорнення клітинним кодуванням.
- •18.Розкрийте суть процесу растрового розгорнення із застосуванням буферу кадру.
- •19.Основні формати растрових зображень
- •20.Координатний метод перетворення координат.
- •21.Методи й алгоритми двовимірної графіки.Оперіції зсуву,повороту та масштабування.
- •22.Алгоритми виведення ліній.
- •23. Поясніть суть кривих Без’є та області їх застосування
- •24. Поясніть суть кривих nurbs та області їх застосування
- •26.Алгоритм зафарбовування фігур математичним описом контуру
- •27.Розкрийте поняття стилю лінії в двовимірній графіці та пера
- •28. Розкрийте суть методу виведення стилю «товстих» ліній
- •29. Обробка растрових зображень. Масштабування
- •30. Колірна корекція растрових зображень. Змішування каналів
- •32.Колірна корекція растрових зображень. Hls-Корекція.
- •33. Фільтрація растрових зображень.
- •34.Палітризація растрових зображень.
- •36. Дефекти растрових зображень та їхнє усунення.
- •37. Основи тривимірної графіки. Перетворення тривимірних координат. Зсув.
- •38.Основи тривимірної графіки. Перетворення тривимірних координат. Масштабування
- •39.Основи тривимірної графіки. Перетворення тривимірних координат. Повороти
- •40. Поняття проекції та світових координат
- •41. Екранні координати
- •42. Аналітична модель опису тривимірних поверхонь
- •43. Полігональні моделі опису тривимірних поверхонь
- •44.Вексельна модель опису тривимірних поверхонь
- •45)Каркасна візуалізація тривимірних поверхонь
- •46) Візуалізація тривимірних поверхонь з видаленням невидимих точок
- •47) Метод візуалізації тривимірних поверхонь шляхом зафарбовування поверхонь
- •48) Метод візуалізації тривимірних поверхонь шляхом імітації гладких поверхонь полігональної моделі
- •49) Імітація дрібних деталей і мікрорельєфу. Поняття текстури
- •50) Освітлення і тіні в тривимірному моделюванні
- •51)Метод трасування променів
26.Алгоритм зафарбовування фігур математичним описом контуру
Фігурою будемо вважати плоский геометричний об'єкт, що складається з ліній контуру і точок заповнення, що містяться усередині контуру. Графічне виведення фігур поділяється на дві задачі: виведення контуру і виведення точок заповнення. Оскільки контур являє собою лінію, то виведення контуру проводиться на основі алгоритмів виведення ліній. У залежності від складності контуру, це можуть бути відрізки прямих, кривих або довільна послідовність сусідніх пікселів.Для виведення точок заповнення відомі методи, що розділяються в залежності від використання контуру на два типи:
алгоритми зафарбовування від внутрішньої точки до границь довільного контуру;
алгоритми, що використовують математичний опис контуру.
Розглянемо алгоритми зафарбовування довільного контуру, який вже намальовано у растрі. Спочатку визначаються координати довільного пікселя. що знаходиться усередині обкресленого контуру фігури. Колір цього пікселя змінюємо на потрібний колір заповнення. Потім виконується аналіз кольорів усіх сусідніх пікселів. Якщо колір деякого сусіднього пікселя не дорівнює кольору границі або кольору- заповнення, то колір цього пікселя змінюється на колір заповнення. Потім аналізується колір пікселів, сусідніх з попередніми. І так далі, поки всередині контуру всі пікселі не перефарбуються в колір заповнення. Пікселі контуру утворюють границю, за яку не можна виходити в ході послідовного перебору всіх сусідніх пікселів.
Основна область застосування алгоритмів зафарбовування довільного контуру — растрові графічні редактори {Paint, Adobe Photoshop і ін.), де процес обробки зображення (зокрема, завдання початкової точки), контролюється людиною. Для використання в програмах, які виконують растеризацію векторних зображень, такі алгоритми занадто повільні і не забезпечують стовідсоткової гарантії правильного зафарбовування всього контуру. Алгоритми заповнення. застосовувані для таких цілей, використовують математичний опис контуру.
Математичним описом контуру фігури може служити рівняння y=f(x) для контуру окружності, еліпса або іншої кривої. Для багатокутника (полігона) контур задається множиною координат вершин (xi,yi). Можливі й інші форми опису контуру. Загальним для розглянутих нижче алгоритмів є те, шо для генерації точок заповнення не потрібні попередньо сформовані в растрі пікселі границі контуру фігури. Контур може взагалі не малюватися в растрі ні до, ні після заповнення.
27.Розкрийте поняття стилю лінії в двовимірній графіці та пера
28. Розкрийте суть методу виведення стилю «товстих» ліній
Для опису різних по виду зображень на основі ліній використовують терміни стиль ліній і перо. Термін перо іноді робить більш зрозумілою суть алгоритму виведення ліній для деяких стилів — особливо для товстих ліній. Наприктад, якщо для тонкої безупинної лінії перо відповідає одному пікселю. то для товстих ліній перо можна уявити собі як фігуру або відрізок лінії, що сковзає уздовж осі. залишаючи за собою слід.
Такий підхід до розробки алгоритмів виведення товстих ліній має переваги і недоліки. Перевага в простоті — можна майже без змін використовувати уже відомі ефективні алгоритми для обчислення координат точок лінії осі.
Недолік— неефективність для деяких форм пера. Для пер, що відповідають фігурам із заповненням, кількість тактів роботи алгоритму пропорційна квадрату товщини лінії. При цьому робиться багато зайвої роботи — більшість пікселів багаторазово зафарбовується в тих самих точках.
Такі алгоритми більш ефективні для пер у вигляді відрізків ліній. У цьому випадку будь-який піксель малюється тільки один раз. Але тут важливий нахил зображуваної лінії. Ширина пера залежить від нахилу. Зауважимо наприклад, що горизонтальне перо не може малювати товсту горизонтальну лінію.
Для виведення товстих ліній за допомогою пера — відрізка лінії найчастіше використовуються відрізки горизонтальної або вертикальної лінії, рідше — діагональні відрізки під кутом 45 градусів. Доцільність використання такого способу визначається великою швидкістю виведення горизонтальних і вертикальних відрізків прямої. При цьому, щоб мінімізувати кількість тактів виведення, товсті лінії, які ближчі за нахилом до вертикальних, малюють горизонтальним пером, а лінії, що ближче за нахилом до горизонталі, малюють вертикальним пером.
У сучасних програмах, які здійснюють растеризацію векторних зображень, для малювання товстих ліній використовують алгоритми заповнення фігур.
Основний недолік такого підходу — гострі кути, особливо помітні, якщо ланки ламаної розташовані під малим кутом один до одного. У багатьох програмах векторної графіки використовують удосконалені алгоритми, що забезпечують згладжування гострих кутів дугами окружностей.
Незважаючи на те, що описаний спосіб побудови ліній вимагає значно більшого обсягу обчислень (необхідно обчислити координати точок полігона і виконати алгоритм його заповнення), і, отже, має меншу швидкість виведення зображення, він одержав велике поширення в сучасних графічних пакетах, оскільки значно більш гнучкий, дозволяє легко масштабувати лінії, змінювати їхню товщину, змінювати роздільну здатність растра (наприклад, при виведенні зображення на друк). При цьому якість відображення лінії, її «гладкість», якість стикування ланок лінії не зменшується.