Теоретична підготовка
Вступ. Мета і завдання дисципліни. Поняття і роль комп'ютерної графіки.
Колір в комп'ютерній графіці
Файлові формати зображень
Програмне забезпечення
Базові прийоми роботи
Практична підготовка
Історія КГ
Піксель-Арт
Low Poly
Графічні редактори
Векторна графіка (створення монограми, знака)
Растрова графіка (Фотомонтаж)
Анімована графіка (GIF-анімація у Photoshop)
3D графіка
Зручна програма для створення зображень у стилі Low Poly
https://www.behance.net/gallery/10543937/Image-Triangulator-App
Image Triangulator дає можливість тріангулювати будь-яке зображення. Рівень абстракції, який ви отримаєте, залежить від кількості точок, які ви накреслите. Додаток дозволить вам зберегти накреслені точки як текстовий файл, а остаточне зображення у форматі PDF. Ви можете додатково відредагувати pdf в Adobe Illustrator, оскільки вихідне зображення буде включено у нижній шар.
Завантажте бета-версії
* Оновлено 2016/11/05Photoscape — популярний графічний редактор з безліччю корисних функцій для роботи з зображеннями. Він є відмінною альтернативою класичному Фотошопу. Якщо вам часто....
Picasa — популярний фотоменеджер, головним завданням якого є перегляд, організація та редагування фотографій. Розробник, компанія Lifescape, через два роки після випуску...
ACDSee Free — дуже зручний редактор для роботи з графічними зображеннями, у тому числі і у великій кількості. Розробник — компанія ACD Systems International. Варто відразу....
Paint.NET — безкоштовний графічний редактор, призначенням якого є створення і корекція фотографій і малюнків.Програма була створена ще в 2004 році, початок проекту було...
GIMP — (абревіатура GNU Image Manipulation Program) популярний безкоштовний графічний редактор. Призначений для Windows 7, 8 і інших версій з розрядністю 32-bit і 64-bit, а...
FastStone Image Viewer — популярний сервіс для роботи з фотографіями, який нерідко називають гідною альтернативою Фотошопу. Як ви розумієте, мова йде не тільки про перегляд...
XnView – платформна програма-переглядач, що підтримує більше 50 різних форматів графічних файлів, яку можна завантажити безкоштовно. Крім підтримки великої кількості...
PhotoFiltre — це відносно простий графічний редактор, призначений для накладення на малюнки і фотографії графічних ефектів, яких у цієї програми в запасі дуже багато. За...
Inkscape — популярна програма, яка виявиться вам корисною, якщо ви створюєте художні або технічні ілюстрації у форматі векторної графіки.Мова йде як про...
Artweaver — популярний безкоштовний графічний редактор для професіоналів і щодо досвідчених користувачів подібного програмного забезпечення. Якщо...
VECTR — безкоштовний онлайн векторний редактор
Формування комп’ютерної графіки (надалі – КГ) як самостійного напрямку інформаційних технологій розпочалось в 60-х роках ХХ ст., коли Сазерленд створив спеціалізований пакет машинної графіки. Уперше відображення інформаційних даних на екрані комп’ютера в графічному вигляді було продемонстровано на початку 50-х років спеціалістами Массачусетського технологічного інституту і згодом стало використовуватися в наукових і військових дослідженнях. За цей час комп’ютерна графіка пройшла шлях від окремих експериментів до одного з найважливіших інструментів сучасності. Сьогодні комп’ютерна графіка розвивається з дуже великою швидкістю, адже нині не можна собі уявити розвиток будь-якої галузі людської діяльності, пов’язаної з наукою, чи технікою без використання КГ. Вона є багатофункціональною складовою усіх інформаційних технологій і важливою компонентою для взаємодії людини з комп’ютером.
Комп’ютерна графіка – складова всіх сучасних комп’ютерних технологій, вона привертає увагу багатьох спеціалістів із різних галузей знань – програмістів, проектувальників засобів візуалізації, інженерів, фізиків, математиків та ін. Знання основ комп’ютерної графіки необхідне кожному вченому чи інженеру.
На початку свого розвитку комп’ютерна графіка була пасивною, однак це вже забезпечувало наочну форму сприйняття інформації, а, як відомо, більшу частину інформації (до 75%) про навколишній світ людина сприймає візуально, тобто за допомогою органів зору, адже недарма говорять: „Краще раз побачити, ніж сто разів почути”. Зображення не тільки місткий, але і доступний вид інформації, оскільки для сприйняття візуальної інформації від користувача вимагається менше зусиль. Інформація, що міститься у зображеннях, є найбільш концентрованою, найлегше сприймається, запам’ятовується та найшвидше обробляється.
Під пасивною графікою мається на увазі те, що ЕОМ формує і виводить зображення на графічний пристрій під управлінням прикладних програм, без втручання користувача. Пасивний контроль означає, що система працює в пакетному режимі без діалогу з користувачем. Для модифікації вихідного зображення необхідно знову запустити пакет прикладних програм. Тому з часом виникла необхідність у розвитку діалогових систем КГ, тобто систем інтерактивної комп’ютерної графіки (ІКГ), де користувач безпосередньо зміг би оперативно вносити зміни в процесі відтворення зображення (в реальному масштабі часу). На сьогодні всі сучасні графічні програми є системами інтерактивної КГ і вони можуть відтворювати всі особливості реальних зображень.
Графіка – вид мистецтва, що включає малюнок і художнє зображення (походить від грецьк. слова “графо”, що означає “пишу, креслю, малюю”).
Комп’ютерна графіка – це галузь знань, що вивчає та розробляє методи і засоби синтезу збереження й перетворення цифрових зображень за допомогою комп’ютера та інших технічних пристроїв.
Окремо розглядають обробку інформації, пов’язану із зображеннями, яка поділяється на три основні напрямки: візуалізація, обробка і розпізнавання зображень.
Візуалізація – створення зображення на основі опису (моделі) деякого об’єкту. Існує велика кількість методів і алгоритмів візуалізації, які відрізняються між собою залежно від того, що і як має бути відображено: графік функції, діаграма, схема, карта або імітація тривимірної реальності – зображення сцен у комп’ютерних розвагах, художніх фільмах, тренажерах, в системах архітектурного проектування. Важливими і пов’язаними між собою факторами тут є: швидкість зміни кадрів, насиченість сцени об’єктами, якість зображення, врахування особливостей графічного пристрою .
Обробка зображень – це перетворення зображень (тобто вхідними даними є зображення і результат – теж зображення). Прикладами обробки зображень можуть бути підвищення контрасту, чіткості, корекція кольорів, редукція кольорів, згладжування, зменшення шумів і т.д. Матеріалами обробки можуть бути космічні знімки, скановані зображення, радіолокаційні, інфрачервоні зображення і т.д. Основними завданнями обробки зображень є покращення зображення в залежності від певного критерію (реставрація, відновлення) та спеціальне перетворення, що кардинально змінює зображення. В останньому випадку обробка зображень може бути проміжним етапом для подальшого його розпізнавання.
Наприклад, перед розпізнаванням часто необхідно виділяти контури, створювати бінарне зображення, розділяти вихідне зображення за кольорами. Методи обробки зображення можуть істотно відрізняються в залежності від того, яким чином воно отримане: синтезовано системою КГ, отримано в результаті оцифровки чорно-білої або кольорової фотографії. Основним завданням розпізнавання зображень є отримання опису зображених об’єктів. Методи та алгоритми розпізнавання розроблялися, перш за все, для забезпечення зору роботів і для систем спеціального призначення. Але останнім часом комп’ютерні системи розпізнавання зображень все частіше з’являються в повсякденній практиці, наприклад, офісні системи розпізнавання текстів чи програми векторизації .
Незважаючи на те, що для роботи з комп’ютерною графікою існує безліч типів програмного забезпечення, КГ поділяють за принципом створення на три основні види: растрову, векторну і фрактальну графіку. Вони відрізняються принципами формування зображення під час його відображення на екрані монітора або під час друку на папері.
Растрова графіка застосовується під час розробки електронних і поліграфічних видань. Ілюстрації, що виконуються засобами растрової графіки, рідко створюють вручну за допомогою комп’ютерних програм. Частіше для цієї мети сканують ілюстрації, підготовлені художником на папері, або фотографії. Останнім часом все більшої популярності набирає робота із зображеннями цифрових фото- і відеокамер. Відповідно, більшість графічних редакторів, призначених для роботи з растровими ілюстраціями, орієнтовані не стільки на створення зображення, скільки на їх обробку. В Інтернеті, в основному, використовуються растрові зображення.
Програмні засоби для роботи з векторною графікою навпаки призначені, в першу чергу, для створення ілюстрацій і в меншій мірі для їхньої обробки. Такі засоби широко використовують в рекламних агентствах, дизайнерських бюро, редакціях і видавництвах. За допомогою них можна створювати шрифти, найпростіші геометричні елементи. Існують і приклади високохудожніх творів, створених засобами векторної графіки, але вони скоріше виключення, ніж правило, оскільки художня підготовка ілюстрацій засобами векторної графіки надзвичайно складна.
Програмні засоби для роботи з фрактальною графікою призначені для автоматичної генерації зображень шляхом математичних розрахунків. Створення фрактальної художньої композиції полягає не в малюванні або оформленні, а в програмуванні. Фрактальну графіку рідко застосовують для створення друкованих або електронних документів, але її часто використовують у розважальних програмах.
2.1. Растрова графіка.
Основним елементом растрового зображення є точка. Якщо зображення екранне, то ця точка називається пікселем (елементом растру).
Із растровим зображенням безпосередньо пов’язана його роздільна здатність. Цей параметр вимірюється в кількості точок на дюйм (dots per inch – dpi ). У монітора з діагоналлю 15 дюймів розмір зображення на екрані складає приблизно 28х21 см. Знаючи, що в 1 дюймі 25,4 мм, можна обчислити, що під час роботи монітора в режимі 800х600 пікселів, роздільна здатність екранного зображення дорівнює 72 dpi.
Під час друку роздільна здатність має бути набагато вищою. Поліграфічний друк повноколірного зображення вимагає 200-300 dpi. Стандартний фотознімок розміром 10х15 см повинен містити приблизно 1000х1500 пікселів. Неважко також встановити, що всього таке зображення буде мати 1,5 млн точок, а якщо воно кольорове і на кодування кожної точки використані три байти, то звичайній кольоровій фотографії відповідає масив даних розміром понад 4 Мбайт.
Внаслідок того, що растрове зображення складається з великої кількості окремих точок, растрова графіка має два істотні недоліки, які варто враховувати під час вибору програмного засобу.
Перший недолік – великі об’єми даних при роботі з растровими зображеннями. Для активних робіт з ілюстраціями великого розміру (типу журнальної смуги) потрібні комп’ютери з винятково великими обсягами оперативної пам’яті і високопродуктивними процесорами.
Другий недолік растрової графіки – ефект пікселізації – пов’язаний з неможливістю збільшення зображення для розгляду деталей. Оскільки зображення складається з точок, то збільшення призводить до того, що точки стають більшими. Ніяких додаткових деталей при збільшенні растрового зображення розглянути не вдається, а збільшення точок растру візуально спотворює ілюстрацію і робить її “грубою”.
Рис.1 Ефект пікселізації
2.2. Векторна графіка.
Якщо в растровій графіці основним елементом зображення є точка, то у векторній графіці – лінія (при цьому неважливо, пряма це лінія чи крива).
Зрозуміло, що в растровій графіці теж існують лінії, але там вони розглядаються як комбінації точок. Для кожної точки лінії в растровій графіці відводиться одна або кілька комірок пам’яті (чим більше кольорів можуть мати точки, тим більше клітинок їм виділяється). Відповідно, чим довша растрова лінія, тим більше пам’яті вона займає. У векторній графіці об’єм пам’яті, що займає лінія, не залежить від розмірів лінії, оскільки вона представляється у вигляді формули, а точніше кажучи, у вигляді декількох параметрів. Що б не робити з цією лінією, змінюються тільки її параметри, що зберігаються в комірках пам’яті. Кількість же комірок залишається незмінним для будь-якої лінії.
Рис.2. Відмінність між растровою та векторною графікою
Лінія – це елементарний об’єкт векторної графіки. Все, що є у векторній ілюстрації, складається з ліній. Найпростіші об’єкти об’єднуються в більш складні (наприклад, об’єкт чотирикутник можна розглядати як чотири пов’язані лінії, а об’єкт куб ще більш складний: його можна розглядати або як 12 пов’язаних ліній, або як 6 пов’язаних чотирикутників ). Через такий підхід векторну графіку часто називають об’єктно-орієнтованою графікою.
Рис.3. Приклади векторних зображень
Зауважимо, що об’єкти векторної графіки зберігаються в пам’яті у вигляді набору параметрів, але на екран всі зображення однаково виводяться у вигляді точок (просто тому, що екран так влаштований). Перед виведенням на екран кожного об’єкта програма робить обчислення координат екранних точок у зображенні об’єкта. Аналогічні обчислення проводяться і під час виведення об’єктів на принтер.
Фрактальна графіка. У фрактальній графіці основним елементом є фрактал – структура, яка складається з частин, що в деякому розумінні подібні цілому. Поняття фрактала, фрактальної геометрії з’явилося в кінці 70-х років і нині має широке застосування.
Рис.4. Приклади фрак талів.
Фрактальна графіка, як і векторна – використовує обчислення, але відрізняється від неї тим, що ніякі об’єкти в пам’яті комп’ютера не зберігаються. Зображення будується на основі рівнянь (або через систему рівнянь), тому нічого, крім формули, зберігати не треба. Змінивши коефіцієнти в рівнянні, можна отримати зовсім іншу картину.
Область застосування комп’ютерної графіки не обмежується лише художніми ефектами. У всіх галузях науки, техніки, медицини, в комерційній діяльності використовуються побудови з допомогою комп’ютера: схеми, графіки, діаграми, зображення, що призначені для наглядного відображення різноманітної інформації. Конструктори, розробляючи нові моделі автомобілів та літаків, використовують тривимірні графічні об’єкти; архітектори створюють на екран монітору об’ємне зображення і т.д.
Тому можна виділити такі основні сфери застосування комп’ютерної графіки:
САПР (системи автоматизованого проектування);
ділова графіка (графічне представлення даних);
візуалізація процесів і явищ у наукових дослідженнях (комп’ютерне графічне моделювання);
медицина (комп’ютерна томографія, УЗД і т.д.);
геодезія і картографія (ГІС);
поліграфія (схеми, плакати, ілюстрації);
сфера масової інформації (графіка в Інтернеті, ілюстрації, фото);
людино-машинна взаємодія;
кінематографія (спецефекти, комп’ютерна мультиплікація);
побут (комп’ютерні ігри, графічні редактори, фотоальбоми).
Настільки широке поширення комп’ютерна графіка отримала з появою інтерактивних графічних систем, що дозволяють вести діалог з людиною. У системі ІКГ користувач сприймає на дисплеї зображення, що представляє деякий складний об’єкт, і може вносити зміни до опису (моделі) об’єкта. Такими змінами можуть бути введення і редагування окремих елементів, зміна числових значень будь-яких параметрів зображення, різні операції введення інформації на основі сприйняття зображень людиною. У даний час майже будь-яку програму можна вважати системою інтерактивної комп’ютерної графіки. Свою інтерактивність комп’ютерна графіка забезпечує завдяки зручному та чіткому інтерфейсу (взаємодії з користувачем).
Одним із завдань комп’ютерної графіки в межах організації людино-машинної взаємодії є створення зручного графічного інтерфейсу програмних систем. Зручність використання та ступінь інтерактивності програмної системи залежить від того, наскільки правильно побудовано інтерфейс користувача.
Інтерфейс користувача – сукупність засобів для обробки та відображення інформації, які максимально пристосовані для зручності користувача.
У графічних системах інтерфейс користувача реалізовується багатовіконним режимом, змінами кольору, розміру, видимості (прозорість, напівпрозорість, невидимість) вікон, їхнім розташуванням, сортуванням елементів вікон, гнучкими налаштовуваннями як самих вікон, так і окремих їхніх елементів (файли, папки, ярлики, шрифти тощо), доступністю багатокористувацьких налаштувань.
Графічний інтерфейс користувача (англ. GUI, Graphical user interface) – інтерфейс між комп’ютером і його користувачем, що використовує піктограми, меню, і вказівний засіб для вибору функцій та виконання команд. Зазвичай, можливе відкриття більше, ніж одного вікна на одному екрані.
GUI – система засобів для взаємодії користувача з комп’ютером, заснована на представленні всіх доступних користувачеві системних об’єктів і функцій у вигляді графічних компонентів екрану (вікон, значків, меню, кнопок, списків і т. п.). При цьому, на відміну від інтерфейсу командного рядка, користувач має довільний доступ (за допомогою клавіатури або пристрою координатного введення) до всіх видимих екранних об’єктів.
Вперше концепція GUI була запропонована вченими з дослідницької лабораторії Xerox PARC в 1970-х, але отримала комерційне втілення лише в продуктах корпорації Apple Computer.
Зручність використання користувацького інтерфейсу (Usability) – показник його якості, що визначає кількість зусиль, необхідних для вивчення засад роботи з програмною системою за допомогою даного інтерфейсу, її використання, підготовки вхідних даних і інтерпретації вихідних. Тобто, зручність використання виявляє міру простоти доступу користувача до функцій системи, наданих через людино-машинний (користувацький) інтерфейс.
На зручність використання користувацького інтерфейсу впливають такі чинники:
легкість навчання (чи швидко людина навчається використовувати систему);
ефективність навчання (чи швидко людина працює після навчання);
запам’ятовуваність навчання (чи легко запам’ятовується все, чому людина навчилася);
наявність помилки (чи часто людина припускається помилок у роботі);
загальна задоволеність (чи є загальне враження від співпраці з системою позитивним).
Усі ці фактори, незважаючи на неформальність, можуть бути виміряні. Для таких вимірів вибирається група типових користувачів системи, і під час її роботи вимірюються показники роботи і системи (наприклад, кількість допущених помилок), а також користувачам пропонується висловити враження від системи за допомогою опитувальних аркушів.
Тестування зручності використання користувальницького інтерфейсу, власне кажучи, не належить до класичних методів тестування програмних систем. Фахівець із тестування користувальницького інтерфейсу має поєднати у собі знання в галузі як програмної інженерії, так і з фізіології, з психології та ергономіки.
Відомі такі евристичні характеристики зручного користувацького інтерфейсу.
Сповіщення про поточний стан. Система завжди повинна повідомляти користувача про те, що вона у цей час робить, причому через розумні часові проміжки.
Близькість до реального світу. Термінологія, використана в інтерфейсі системи повинна співвідноситися з користувацьким світом, тобто це має бути термінологія проблемної області користувача, а не технічна термінологія.
Управління свободою дій. Користувачі часто вибирають окремі інтерфейсні елементи й використовують функції системи з помилкою. І тут необхідно надавати чітко визначений “аварійний вихід”, з якого можна повернутися до попереднього нормального стану.
Цілісність і стандарти. Для позначення одних і тих же об’єктів, ситуацій і дій потрібно використовувати однакові слова в усіх частинах інтерфейсу. Термінологія повідомлень в інтерфейсі повинна враховувати особливості конкретної платформи.
Допомога користувачам в розпізнаванні, діагностиці та усуненні помилок. Повідомлення про помилки мають бути написані природною мовою, а не замінюватися кодами помилок. Повідомлення про помилки мають чітко визначати суть проблеми і пропонувати її конструктивне рішення.
Запобігання помилок. Продуманий дизайн користувацького інтерфейсу, який запобігає появі помилок користувача, краще добре продуманих повідомлень про помилки. Під час проектування інтерфейсу необхідно або цілком прибрати елементи, у яких можуть бути помилки користувача, або перевіряти введене користувачем у тих елементах і повідомляти йому про потенційно можливі виникнення проблеми.
Розпізнавання, а не згадування. Під час створення інтерфейсу необхідно мінімізувати навантаження на пам’ять користувача, роблячи об’єкти, дії і опції зрозумілими, доступними та очевидними. Користувач неповинен запам’ятовувати інформацію під час переходу від одного діалогового вікна до іншого. В усіх необхідних місцях мають бути доступні контекстні інструкції з використання інтерфейсу.
Естетичний і мінімально необхідний дизайн. Вікна нічого не повинні відображати, що не стосується теми чи рідко використовується.
Допомога і документація. Попри те що, що у ідеалі краще, коли системою можна скористатися без документації, все ж таки вона необхідна – у вигляді системи допомоги. Інформація в документації мусить бути структурована в такий спосіб, щоб користувач міг легко знайти потрібний розділ, присвячений розв’язуваному ним завданню. Кожен такий орієнтований на конкретне завдання розділ повинен, крім загальної інформації, містити покрокові інструкції з виконання завдання і не бути надто довгим.
Отже, під час розробки програмного забезпечення, важливо враховувати усі вимоги до проектування інтерфейсу, що дозволить програмному продукту бути якісним та конкурентоспроможним.
З розвитком комп’ютерної галузі з’явилось багато способів побудови різноманітних графічних об’єктів, що в сукупності називають зображенням. Графічні зображення часто мають ієрархічну структуру, яка виникає в результаті процесу побудови знизу-вверх. Простіші базові графічні елементи, з яких будуються графічні об’єкти довільної складності, називаються графічними примітивами. Вони використовуються як будівельні блоки для об’єктів більш високого рівня. Графічні примітиви розглядаються як прості неподільні елементи зображення і генеруються однією окремою командою (підпрограмою). Вони можуть мати також апаратний та апаратно-програмний рівень формування. Як правило, множина примітивів містить такі елементи:
точку,
відрізок (довжина відрізка з кінцями обчислюється за формулою . Координати точки середини відрізка обчислюються з використанням рівнянь: ),
ламану лінію (замкнену і незамкнену),
трикутник,
трикутний стріп (рис. 5, а),
трикутний фен (рис. 5, б),
чотирикутник,
чотирикутний стріп (рис. 5, в),
опуклий многокутник (полігон),
коло (рівняння кола з центром в точці та радіусом обчислюється за формулою ).
Рис.5 Елементи множини примітивів:
а – трикутний стріп, б – фен, в – чотирикутний стріп
Параметри примітивів характеризують форму, розміри, місце розташування примітива. Атрибути примітивів – це властивості, які визначають їх вигляд при візуалізації, тобто спосіб зображення заданого примітиву. Для кожного типу об’єктів визначають свій набір атрибутів:
для точки – розмір та колір;
для лінії – колір, товщина і тип (лінія, яка використовується для малювання відрізків може бути суцільною, штриховою і т.д.);
для многокутників – режим контуру чи заповнення. Цей параметр вказує спосіб задання многокутників. Можна малювати тільки вершини або ребра, а можна зображати зафарбовані многокутники, при цьому контур може малюватись одним кольором, а внутрішня область заливатись іншим.
Множина видимих на екрані об’єктів, упорядкованих згідно з просторовими відношеннями (наприклад, за відношенням дальше-ближче, лівіше-правіше), разом з атрибутами елементів поверхонь (колір, текстура,оптичні властивості матеріалів) і з атрибутами оточення (рівень освітлення, туман, димка тощо) утворюють сцену.