Не е лесно да научиш компютър как да вижда. Не можете просто да поставите камера на компютъра и да очаквате да вижда. Например, представете си, че някой ви хвърля топка от другия край на стаята и вие я хващате. Това изглежда просто, нали? Но в действителност това е един от най-трудните и сложни процеси, които някога сме се опитвали да разберем, камо ли да възпроизведем. По принцип това, което се случва, когато видите топката във въздуха, е, че тя първо удря ретината ви, когато извършва сложен анализ и изпраща тази информация до мозъка, където зрителната кора анализира изображението по-задълбочено. След това тази информация се предава на останалата част от мозъчната кора, която сравнява изображението с всичко, което вече знае, определя размерите на обекта и след това решава какво действие да извърши, т.е. да вдигнете ръката си и да хванете топката. Всичко това се случва за части от секундата с малко или никакво съзнателно усилие и почти никога не се проваля. Ако искате компютърът да гледа на света като човек, той ще разчита както на компютърно зрение, така и на разпознаване на изображения.

Какво е компютърно зрение?

Най-добре е да мислим за компютърното зрение като за частта от човешкия мозък, която обработва информацията, получена през очите. Това е, което дава на скенера за баркод способността да „вижда“ всички ивици на UPC етикет, това е и начинът, по който Apple използва Face ID в най-новия си модел iPhone, за да определи дали лицето, което камерата гледа, е или не, всъщност собственикът на телефона.

Компютърното зрение е неразделна част от изкуствения интелект (AI), тъй като дава на машините усещане за зрение, но не им дава присъщо разбиране за физическата вселена. За това компютърното зрение се нуждае от обучение. Най-добре е да сравните обучението на компютърно зрение с малко дете. Ако покажете на детето цифра или буква достатъчно пъти, то ще се научи да ги разпознава. Компютърното зрение работи по същия начин, тъй като в момента е в ранна детска възраст: то трябва да бъде обучено да разпознава и идентифицира определени обекти.

Въпреки че е лесно да накарате компютър да разпознае конкретно изображение, например QR код, съвсем различна е историята, когато искате той да разпознава неща в състояния, които не очакват. Ако се върнем към нашата аналогия с децата, спомената по-горе, много деца могат веднага да разпознаят букви и цифри, които са обърнати с главата надолу. Това е така, защото нашите биологични невронни мрежи са доста добри в интерпретирането на визуална информация, ако изображението, което обработваме, не изглежда точно както очакваме.

Набиращи популярност статии за AR VR:

1. Роботика с добавена реалност

2. Инфографика: Бъдещето на виртуалната реалност

3. Mario Kart в истинско превозно средство с VR!

Разпознаването на изображение обикновено включва създаване на невронна мрежа, която обработва отделните пиксели на изображението. Тези невронни мрежи се захранват с възможно най-много предварително маркирани изображения, за да ги научат как да разпознават подобни изображения.

Предизвикателства пред технологията за компютърно зрение

Въпреки че сме обсъждали колко трудно е да се създаде машина, която гледа на света като човек, най-добре е да сложим пръст върху това, което е толкова трудно.

Класификация на изображението – По принцип това е етикетиране на изображение въз основа на съдържанието на изображението. Обикновено ще има фиксиран набор от етикети и вашият модел ще трябва да предвиди етикета, който най-добре отговаря на изображението. Това е много трудно за една машина, тъй като всичко, което вижда, е поток от числа в дадено изображение.

Откриване на обекти —Това включва разпознаване на различните подизображения и изчертаване на ограничаваща рамка около всяко разпознато подизображение. Този проблем е по-труден за решаване, тъй като изисква повече корекции на координатите на изображението. Най-известният метод за откриване до момента се нарича Faster-RCNN (Регионална конволюционна невронна мрежа), който отговаря за локализирането в регионите в изображението, което трябва да бъде обработено и класифицирано.

Сегментиране на изображението —Това е процес на разделяне на изображение въз основа на присъстващите обекти, с точни граници. Има два вида сегментиране на изображения: семантично сегментиране и сегментиране на екземпляри. При семантичното сегментиране трябва да етикетирате всеки пиксел чрез обект от клас. При сегментирането на екземпляри всеки обект се класифицира по различен начин.

Надписи на изображения —Това е един от най-готините проблеми с компютърното зрение, защото има допълнителен вкус на обработка на естествен език. Това включва генериране на надпис, който е най-подходящ за вашето изображение. Надписите на изображенията са откриване на изображения плюс надписи. Откриването се извършва по същия метод Faster-RCNN, споменат по-горе. Надписите се извършват с помощта на RNN (повтаряща се невронна мрежа).

AI срещу човешкия мозък

Въпреки че през годините имаше голям напредък по отношение на компютърното зрение, хората са много по-добри в разбирането на изображенията в дългосрочен план. Просто казано, машините са твърде тесногледи в смисъл, че научават нещата, преминавайки през фиксирана категория изображения. Въпреки че може да са се учили от огромно количество изображения, което обикновено е милиони изображения, това все още не е близо до това, на което е способен човек. Това може да се отдаде на неокортекса, който е частта от мозъка, която е отговорна за разпознаването на модели, познанието, възприятието и много други функции от по-висок ред.

Въпреки че имаше някои големи пробиви в областта на изкуствения интелект, като например AlphaGo да победи световен шампион в игра Go и ботът Dota2 на Open AI победи експерти в играта Dota2. Тези неща са много нишови, т.е. Dota2 ботът е специфичен за Dota2. Човешкият мозък, от друга страна, е много общ, което означава, че използвате мозъка си за всичките си ежедневни дейности. За да се конкурираме с човешкия мозък, ще ни трябва подобен общ изкуствен интелект.

С Най-Добри Пожелания,

„Екипът на Skywell Software“