Ако подхванете темата в семейството или с приятели за „машинното зрение“, може да ви изгледат странно, и разговорът евентуално да се насочи към някой филм за роботи, които са станали твърде самоуверени и съответно много опасни. За късмет, реалността изобщо не е толкова зловеща. Може би индустрията трябва да се заеме с „по-очовеченото“ описание на конкретния технологичен сегмент, защото тази бързо напредваща област има голям положителен потенциал за вградените приложения.
В същината си, машинното зрение е просто използването на информацията в едно изображение за взимане на решение какво да се направи в следващия момент с обекта в изображението. Един от най-простите примери е визуалният тест на продукт от типа „минава/отпада“ на една монтажна линия, или преди доставка. Един чест случай на използване е също прегледът на печатна платка, където изображението на мастер-платка с правилно монтирани елементи може бързо и лесно да се сравни с произвежданите платки, които се придвижват по една автоматична линия към следващия етап на производствo. Това е всъщност една безценна стъпка в качествения контрол, много полезна за намаляване на реалния брак, защото човешкото око и мозък никога не биха могли да повторят подобна операция стотици или хиляди пъти на ден.
За нуждите на машинното зрение
С увеличаването на разрешаващата способност (резолюцията) на системите за заснемане на изображение, се увеличават и възможностите на машинното зрение, тъй като стават все повече детайлите, или подробностите в изображението, които подлежат на оценка. Повечето детайли, или подмножества от информация, които трябва да се сравнят от оценяващата система, увеличават и товара върху процесора, който трябва да обработи данните и бързо да даде решение за следващите стъпки. (Минава/отпада, да се задържи, да се върне в началото на линията и пр.)
Оценяването на качеството на зеленчуците, например, е случай, в който елементарният тест на размера и минава/отпада за определяне на качеството не е оптимален, защото стандартите за различните страни са различни, и качеството на продукта варира в течение на цял един сезон. За да може да се минимизира брака за производителя и от друга страна да се поддържа доброто качество за купувачите, са нужни добре оптимизирани алгоритми за оценяване на качеството, а това е почти невъзможна задача за човешкото око и мозък.
Една компания, която се занимава с това приложение, е датската Qtechnology. Тя доставя „умни“ камери за оценка на зеленчуци с капацитет до 25 тона на час, което изисква да се анализират над 250 000 броя продукти от около 500 000 изображения. При 6.2 MB обем на всяко изображение, този конкретен случай изисква да се анализират над 2,5 терабайта данни на час от една машина, което е колосално количество информация за обработка. Трансферът на такъв обем информация по единична Gigabit Ethernet линия би отнел над 6 часа.
За решаването тази задача с по-прости алгоритми ще са нужни множество етапи и камери, осветление в машината, повече площ във фабриките и пр. Алтернативата е да се използва повече процесорна мощност, или като централизиран процесорен модул снабден с високоскоростни комуникации, или като разпределени изчислителни ресурси с умни камери, където данните се обработват в реално време в самата камера, и само резултатите от даден продукт се предават по-нататък към крайната система за механична класификация.
За да адресира различни технологии за заснемане на изображения, Qtechnology разчита на сменяеми глави с различни масиви от сензори, които се поставят на умните камери. Хиперспектралната снимаща глава, например, позволява да се извършва безразрушаващо детектиране на качеството и безопасността на храната.
При стандартните системи за машинно зрение, качеството и безопасността на храната обикновено се определят от външни физически атрибути като текстура и цвят. Хиперспектралното изобразяване предлага на хранителната промишленост възможността да се включат нови атрибути в оценката на качеството и безопасността, например химически и биологични индикатори за определяне на захарта, мазнините, влагата, броя бактерии в продуктите.
При хиперспектралното изобразяване, от всеки пиксел се получават триизмерни кубове на изображението с пространствена и спектрална информация. Повечето спектрални характеристики дават по-добро разделение на атрибутите и възможността да се окачествяват повече атрибути. Изобразителните кубове включват интензитета (на отразена или пренесена светлина) на всеки пиксел за всички получени дължини на вълната на светлината, което води до масиви информация съдържаща се във всеки куб. Това количество данни представлява експоненциално увеличение на предизвикателството пред изчислителните системи, за да се получат качествени и количествени резултати за оценка на продукта в реално време.
Използване на хетерогенни изчислителни системи
Посрещането на тези нужди от изчислителни ресурси днес и в бъдеще изисква високопроизводителна, мащабируема обработка на информацията.
Qtechnology използва в своите умни камери ускорени процесори (APU), които обединяват GPU и CPU на един кристал, като системата разтоварва интензивната обработка на данните от пикселите към графичния процесор, без голяма латентност по шината между обработващите компоненти. Това позволява на централния процесор да обслужва други прекъсвания с по-малко закъснение, което подобрява производителността в реално време на цялата система и посреща нарастващите нужди от изчислителен ресурс в съвременните системи за машинно зрение.
Събирането в едно на различни обработващи енджини върху един кристал или в една система, с цел прилагане на точната изчислителна мощност за дадена задача, е в сърцевината на хетерогенните изчислителни среди. Фондацията за хетерогенна системна архитектура (HSA) бе основана през 2012 г. специално за да помогне на индустрията да дефинира открити спецификации за процесорите и системите, които се възползват от всички обработващи елементи за подобряване на изчислителната обработка на данните. Графичният процесор е с масивно паралелна структура, която може да изпълнява едни и същи инструкции в огромни масиви данни (в случая – пиксели) едновременно, т.е. точно това, което е нужно за изпълнението на 3D игри на вашата любима игрална конзола или на компютъра. Но по съвпадение, точно от това се нуждае и машинното зрение. Производителността може допълнително да бъде увеличена при комбинирането на APU с външен, дискретен GPU в Mobile PCI Express® Module (MXM) форм фактор, което позволява на компаниите да добавят още изчислителни GPU ресурси за по-натоварващи задачи за машинно зрение.
Софтуерът е критична част от уравнението. С HSA, цялата обработваща платформа може да управлява от стандартно Linux® ядро, което изисква скромна разработваща поддръжка с пускането на всяка нова версия на ядрото. Проектът Yocto за сътрудничество на разработчиците на отворен код осигурява темплейти, инструменти и методи, за да помогне на потребителите да създават къстомизирани Linux-базирани системи за вградени продукти.
Огромната екосистемна поддръжка за x86 платформите позволява на компаниите да се възползват от библиотеки за обработка на изображения с отворен код и от трети производители, като OpenCV, Mathworks Matlab и Halcon. Инструменти за дебъгване, анализатори на латентността и профайлъри (perf, ftrace) също са широко достъпни. Машинното зрение е най-новият пример за използванеот на изчислителните ресурси на съвременните силициеви чипове за намаляване на разходите, повишаване на качеството и осигуряване на много ползи за света на милиони бизнеси и приложения. Това положително икономическо, културно и персонално въздействие става все по-широко достъпно благодарение на иновациите в индустрията и проницателното мислене на инженерите-създатели на вградени системи.