Нейромережу для перетворення начерків на «фотографії» запустили в браузері

Програміст із Саудівської Аравії створив браузерну реалізацію алгоритму pix2pix, що перетворює начерки користувача на зображення, створювані нейромережею, навченою на фотографіях. Під час малювання нейромережа в реальному часі перетворює кожен штрих на новий елемент зображення, а всі обчислення відбуваються на комп'ютері користувача. Поки сервіс вміє перерисовувати тільки кішок, фасади будівель і взуття, повідомляється в блозі prosthetic knowledge.


Алгоритм pix2pix був розроблений в 2016 році фахівцями з Каліфорнійського університету в Берклі. Він заснований на генеративно-змагальній нейромережі - архітектурі, яку часто застосовують у нейромережах, призначених для створення реалістичних зображень, аудіозаписів та інших об'єктів. Вона складається з двох частин, одна з яких створює зображення, а друга намагається відрізнити його від об'єктів з навчального набору еталонних зображень. В результаті, в процесі навчання обидві частини алгоритму вдосконалюються у своєму завданні і синтезовані ним зображення стають більш якісними.


Спочатку автори створили реалізацію нейромережі, яка розгортається на комп'ютері, а сторонні фахівці змогли перенести її в браузер, але в такому режимі програма приймала як вхідні дані лише завершений начерк і працювала безпосередньо на сервері, через що сервіс вже закрили. Тепер Заїд аль-Яфії (Zaid Alyafeai) з Університету нафти і копалин імені короля Фахда створив реалізацію алгоритму pix2pix, що працює в реальному часі, що використовує ресурси користувача, а також містить три моделі для різних типів об'єктів - кішок, фасадів будинків і взуття.

Для перенесення алгоритму в браузер програміст скористався бібліотекою TensorFlow.js, яка завантажує на комп'ютер користувача навчену нейросетеву модель і всі необхідні дані, а потім проводить обчислення на пристрої користувача. При виборі моделі для малювання взуття або кішок користувач просто малює предмет, і після закінчення кожної лінії нейромережа перетворює начерк на «фотографію», що відповідає цим контурам.

При малюванні фасадів будинків використовується більш складна схема. По суті, в цьому випадку відбувається операція, зворотна семантичної сегментації, при якій зображення розбивається на області, на яких знаходяться об'єкти різних типів. Наприклад, балкону та вікна на зображенні будуть відповідати різні кольори. У даному випадку користувач сам задає тип об'єкта, вибираючи різні кольори. Також у цьому режимі можна малювати не лінії, а прямокутники.

Опробувати сервіс можна на спеціальній сторінці, а його вихідний код і використані датасети опубліковані на GitHub.

Минулого року ми вирішили перевірити роботу алгоритму pix2pix на незвичайному завданні - перетворенні популярних мемів на фотореалістичні портрети. Ви можете самостійно оцінити, наскільки добре впоралася із завданням нейромережа, подивившись на результати її роботи в нашому матеріалі «Зображуючи меми».

COM_SPPAGEBUILDER_NO_ITEMS_FOUND