Комп'ютерний зір
Комп'ю́терний зір або Комп'ютерне бачення — теорія та технологія створення машин, які можуть проводити виявляння, відстежування та визначення об'єктів. Як наукова дисципліна комп'ютерний зір належить до теорії та технології створення штучних систем, які отримують інформацію у вигляді зображень. Відеодані може бути представлено у вигляді багатьох форм, таких як відеопослідовність, зображення з різних камер або тривимірними даними з медичного сканера. Як технологічна дисципліна комп'ютерний зір прагне застосувати теорії та моделі комп'ютерного зору до створення систем комп'ютерного зору. Прикладами таких систем можуть бути:
Комп'ютерний зір також може бути описаний як доповнення (але не обов'язково протилежність) біологічному зору. У біології вивчається зорове сприйняття людини і різноманітних тварин, в підсумку створюються моделі роботи таких систем в термінах фізіологічних процесів. Комп'ютерний зір, з іншого боку, вивчає і описує системи комп'ютерного зору, які виконано апаратно або програмно. Міждисциплінарний обмін між біологічним та комп'ютерним зором виявився досить продуктивним для обох наукових галузей. Підрозділи комп'ютерного зору охоплюють відтворення дій, виявлення подій, стеження, розпізнавання образів, відновлення зображень. Сучасний стан справГалузь комп'ютерного зору може бути охарактеризована як молода та різноманітна. І, хоча існують більш ранні роботи, можна сказати, що тільки з кінця 1970-х почалось інтенсивне вивчення цієї проблеми, коли комп'ютери змогли керувати обробкою великих наборів даних, таких як зображення. Однак, ці дослідження зазвичай починались з інших галузей, і, відповідно, нема стандартного формулювання проблеми комп'ютерного зору. Також, і це навіть важливіше, немає стандартного формулювання того, як треба вирішувати проблему комп'ютерного зору. Натомість існує безліч методів для вирішення різноманітних суворо визначених завдань комп'ютерного зору, де методи часто залежать від завдань і рідко коли можуть бути узагальнені для широкого кола застосування. Багато з методів та застосувань все ще перебуває на стадії ґрунтовних досліджень, але все більша кількість методів знаходить застосування в комерційних продуктах, де вони часто складають частину складнішої системи, яка може вирішувати складні завдання (наприклад, в галузі медичних зображень або вимірювання та контролю якості в процесах виробництва). У більшості практичних застосувань комп'ютерного зору комп'ютери попередньо запрограмовано для вирішення окремих завдань, але методи, що базуються на знаннях, стають все більше узагальненими. Важливою частиною в області штучного інтелекту є автоматичне планування або ухвалення рішень в системах, які можуть виконувати механічні дії, такі як пересування робота крізь деяке середовище. Цей тип обробки зазвичай потребує вхідних даних, що надаються системами комп'ютерного зору, діють як відеосенсор і надають високорівневу інформацію про середовище та роботу. Інші галузі, які іноді описуються як ті, що належать до штучного інтелекту, і які використовуються відносно комп'ютерного зору, це розпізнавання образів та навчальні методи. Внаслідок цього комп'ютерний зір іноді розглядають як частину галузі штучного інтелекту чи галузі комп'ютерних наук загалом. Фізика є іншою наукою, яка тісно пов'язана з комп'ютерним зором. Значна частина комп'ютерного зору має справу з методами, які потребують досконального розуміння процесу, в якому електромагнітне випромінювання, зазвичай в області видимого або інфрачервоного спектру, відбивається поверхнею об'єктів та вимірюється давачем зображення, щоб отримати відеодані. Цей процес ґрунтується на оптиці і фізиці твердого тіла. Складніші давачі зображення також потребують знань з квантової механіки для повного розуміння процесу формування зображення. Також різноманітні проблеми вимірювань у фізиці можна вирішити, використовуючи комп'ютерний зір (наприклад, ті, що стосуються руху в рідинах). Тому комп'ютерний зір можна розглядати як розширення фізики. Третя галузь науки, яка відіграє важливу роль, — це нейробіологія, зокрема вивчення систем біологічного зору. За останнє ХХ століття провели великі дослідження очей, нейронів та структур мозку, що стосуються обробки візуальних подразників як у людини, так і в різноманітних тварин. Це привело до грубого і водночас складного опису того, як працюють «реальні» системи зору, що допомогло розв'язати деякі задачі. Результати цих досліджень привели до створення штучних систем, що наслідують роботу і функціонування аналогічних біологічних систем на різних рівнях складності. Також деякі методи вивчення, розроблені в галузі комп'ютерного зору, зобов'язані своєму походженню біології. Ще однією галуззю, що пов'язана з комп'ютерним зором, є обробка сигналів. Багато способів обробки одномірних сигналів, зазвичай часових сигналів, можна природним шляхом розширити для обробки двовимірних чи багатовимірних сигналів в комп'ютерному зорі. Однак через своєрідну природу зображень існує багато методів, розроблених в галузі комп'ютерного зору, що не мають аналогів в області обробки одновимірних сигналів. Особливістю цих методів є їхня нелінійність, що, разом з багатовимірністю сигналу, робить відповідну підобласть в обробці сигналів частиною області комп'ютерного зору. Крім названих підходів до проблеми комп'ютерного зору, багато з досліджуваних питань можна вивчити з суто математичної точки зору. Наприклад, більшість методів базується на статистиці, оптимізаційній математиці або геометрії. Нарешті, великі роботи ведуться в області практичного застосування комп'ютерного зору, в тому, як методи, що існують, можуть бути реалізовані програмно і апаратно чи як вони можуть бути змінені з метою досягнення високої швидкості роботи без істотного збільшення споживаних ресурсів. Пов'язані областіКомп'ютерний зір, Обробка зображень, Аналіз зображень, Зір робота і Машинний зір — тісно пов'язані області. Але досі точно не визначено, чи є вони розділами однієї, ширшої галузі. При докладному аналізі може здатись, що це лише різні назви однієї і тієї ж області. Щоб не виникло плутанини, прийнято розрізняти їх як напрямки, зосереджені на певному предметі вивчення. Нижче наведено опис деяких з них, найбільш важливих. Обробка зображень і Аналіз зображень в основному зосереджені на роботі з двовимірними зображеннями, тобто як перетворити одне зображення на інше. Наприклад, попіксельні операції збільшення контрастності, операції з виділення країв, усунення шумів чи геометричні перетворення, такі як обертання зображення. Дані операції припускають, що обробка/аналіз зображення діють незалежно від вмісту самих зображень. Комп'ютерний зір зосереджується на обробці тривимірних сцен, спроєктованих на одне чи декілька зображень. Наприклад, відновлення структури чи іншої інформації про тривимірну сцену по одному чи декільком зображенням. Комп'ютерний зір часто залежить від більш чи менше складних припущень відносно того, що представлено на зображеннях. Машинний зір зосереджується на застосуванні, в основному промисловому, наприклад, автономні роботи і системи зорової перевірки та вимірювання. Це означає, що технології давачів зображення і теорії керування пов'язані з обробкою відеоданих для керування роботом і обробка даних в реальному часі здійснюється апаратно чи програмно. Також існує область, названа Візуалізацією, яка початково була пов'язана з процесом створення зображень, але іноді мала справу з обробкою та аналізом. Наприклад, рентгенографія працює з аналізом відеоданих медичного призначення. Нарешті, розпізнавання образів є областю, яка використовує різноманітні методи для отримання інформації з відеоданих, що, в основному, ґрунтуються на статистичному підході. Значна частина цієї області присвячена практичному застосуванню цих методів. Приклади застосування комп'ютерного зоруОдним з найбільш важливих застосувань є обробка зображень в медицині. Ця область характеризується отриманням інформації з відеоданих для визначення медичного діагнозу пацієнту. В більшості випадків, відеодані отримують за допомогою мікроскопії, рентгенографії, ангіографії, ультразвукових досліджень та томографії. Прикладом інформації, яка може бути отримана з таких відеоданих є виявлення пухлин, атеросклерозу чи інших злоякісних змін. Також прикладом може слугувати вимірювання розмірів органів, кровообігу тощо. Ця прикладна галузь також сприяє медичним дослідженням, наданням нової інформації, наприклад, про будову мозку чи якості медичного лікування. Іншою прикладною галуззю комп'ютерного зору є промисловість. Тут інформацію отримують для підтримки виробничого процесу. Прикладом може слугувати контроль якості, коли деталі чи кінцевий продукт автоматично перевіряють на наявність дефектів. Іншим прикладом є вимірювання положення та орієнтація деталей, які піднімає рука робота. Військове застосування є, мабуть, найбільшою областю комп'ютерного зору. Очевидним прикладом є виявлення ворожих солдатів і транспортних засобів та керування ракетами. Найбільш досконалі системи керування ракетами відправляють ракету в задану область, замість конкретної цілі, а визначення цілей відбувається тоді, коли ракета досягає заданої області, базуючись на відеоданих, що надходять. Сучасний воєнний термін, як «бойова поінформованість», припускає, що різноманітні давачі, в тому числі давачі зображення, надають великий набір інформації про поле битви, яка може бути використана для ухвалення стратегічних рішень. В цьому разі автоматичну обробку даних використовують для зменшення складності чи збільшення надійності отриманої інформації. Одними з нових галузей застосування є автономні транспортні засоби: підводні, наземні (роботи, машини), повітряні. Рівень автономності вимірюється від повністю автономних (безпілотних) до транспортних засобів, де системи, що базуються на комп'ютерному баченні, підтримують водія чи пілота в різноманітних подіях. Повністю автономні транспортні засоби використовують комп'ютерне бачення для навігації, тобто для отримання інформації про місце свого положення, для створення мапи навколишнього оточення, для визначення перешкод. Вони також можуть бути використані, наприклад, для визначених завдань знаходження лісових пожеж. Прикладом таких систем, можуть бути: система попереджувальної сигналізації про перешкоди на машинах і системи автономної посадки літаків. Деякі виробники машин демонстрували системи автономного керування автомобілем, але ця технологія все ще не досягла того рівня, коли її можна запустити в масове виробництво. Інші області застосування охоплюють:
Типові завдання комп'ютерного зоруКожна з галузей застосування комп'ютерного зору, що були описані вище, пов'язана з низкою завдань; більш чи менше гарно визначені проблеми вимірювання чи обробки можуть бути вирішені з використанням багатьох методів. Деякі приклади типових завдань комп'ютерного зору представлено нижче. РозпізнаванняКласичне завдання в комп'ютерному зорі, обробці зображень і машинному зорі — це визначення того, чи містять відеодані деякий характерний об'єкт, особливість чи активність. Це завдання може бути правильно і легко вирішено людиною, але досі не вирішено задовільно в комп'ютерному зорі в загальному випадку: випадкові об'єкти у випадкових ситуаціях. Наявні способи вирішення цього завдання придатні тільки для окремих об'єктів, таких як прості геометричні об'єкти (наприклад, багатокутники), людські обличчя, друковані чи рукописні символи, автомобілі і лише у визначених умовах, зазвичай це певне освітлення, тло і положення об'єкта відносно камери. В літературі описане різноманіття проблем розпізнавання:
Існує кілька спеціалізованих завдань, що базуються на розпізнаванні, наприклад:
РухКілька завдань, що пов'язані з оцінкою руху, в яких послідовність зображень (відеодані) обробляється для знаходження швидкості кожної точки зображення чи 3D сцени або навіть самої камери, що робить знімання. Прикладами таких завдань є:
Відновлення сцениЗадано два або більше зображення сцени або відеодані. Відновлення сцени має за мету відтворення тривимірної моделі сцени. В найпростішому випадку моделлю може бути набір точок тривимірного простору. Складніші методи відтворюють повну тривимірну модель. Відновлення зображеньЗавдання відновлення зображень — це видалення шумів (шуму давача, розмитості об'єкта, що рухається тощо). Найпростішим підходом до вирішення цього завдання є різноманітні типи фільтрів, такі як фільтри низьких чи середніх частот. Складніші методи використовують уявлення того, як повинні виглядати ті або інші ділянки зображення, і на основі цього їхнє перетворення. Більш високий рівень видалення шумів досягається протягом первинного аналізу відеоданих на наявність різноманітних структур, таких як лінії чи межі, а потім керування ходом фільтрації на основі цих даних. Системи комп'ютерного зоруВпровадження систем комп'ютерного зору дуже залежить від області їхнього застосування. Деякі системи є автономними і вирішують специфічні проблеми детектування та вимірювання, тоді як інші системи складають підсистеми більших систем, які, наприклад, можуть містити підсистеми контролю за механічними маніпуляторами, планування, інформаційні бази даних, інтерфейси людина-машина тощо. Реалізація систем комп'ютерного зору також залежить від того, є її функціональність наперед визначеною чи деякі її частини можуть бути вивчені і вдосконалені в процесі роботи. Однак існують функції, типові для багатьох систем комп'ютерного зору.
Специфікації OpenVXВосени 2014 група Khronos, що відповідає за розробку стандартів сімейства OpenGL і OpenCL, представила кінцевий варіант специфікації OpenVX 1.0, котра визначає прикладний програмний інтерфейс (API) для розробки переносних, високопродуктивних і енергоефективних застосунків і бібліотек для вирішення завдань комп'ютерного зору (виявлення, стеження і класифікація об'єктів на зображеннях і відеоданих). OpenVX надає можливість використання серії алгоритмів для розпізнавання і відстеження переміщення особи, тіла і жестів, автоматизації відеоспостереження, автоматичних систем допомоги водієві, реконструкції об'єктів та сцен, доповненої реальності, візуального огляду, робототехніки та багатьох інших застосувань. Обробка даних в OpenVX-застосунках проводиться через маніпуляцію з графом функціональних вузлів, робота з яким може бути пришвидшена за рахунок залучення графічного процесора, процесора цифрових сигналів і додаткових апаратних пристроїв, а також роздільної обробки фрагментів (tiling). Див. такожЛітература
Посилання
|